/*! normalize.css v4.2.0 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
/* Document
   ========================================================================== */
@import url(https://fonts.googleapis.com/css?family=Raleway:200,300,400,700,900);
@import url(https://fonts.googleapis.com/css?family=Playfair+Display:900,900i);
html {
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */ }

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

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  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
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block; }

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px; }

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  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
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0; }

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

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit; }

/**
 * 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 style in Android 4.3-.
 */
dfn {
  font-style: italic; }

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000; }

/**
 * 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
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block; }

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

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

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  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; }

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
 * 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; }

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

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

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

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

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 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 and cancel buttons in Chrome and Safari on OS X.
 */
[type="search"]::-webkit-search-cancel-button,
[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 IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block; }

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

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block; }

/**
 * Add the correct display in IE.
 */
template {
  display: none; }

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

/**
 * Set up a decent box model on the root element
 */
/* ==========================================================================
	 Base styles: opinionated defaults
	 ========================================================================== */
html {
  box-sizing: border-box;
  font-size: 10px; }

body {
  font-family: "Raleway", sans-serif;
  font-size: 16px;
  background-color: white;
  padding: 0px;
  margin: 0px; }

/**
 * Make all elements from the DOM inherit from the parent box-sizing
 * Since `*` has a specificity of 0, it does not override the `html` value
 * making all elements inheriting from the root box-sizing value
 * See: https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
 */
*, *::before, *::after {
  box-sizing: border-box; }

/**
 * Basic styles for links
 */
a {
  color: #4f4f4f;
  text-decoration: none; }
  a:focus {
    text-decoration: none; }

@font-face {
  font-family: 'iconfont';
  src: url("../fonts/iconfont.eot?bdi3ej");
  src: url("../fonts/iconfont.eot?bdi3ej#iefix") format("embedded-opentype"), url("../fonts/iconfont.ttf?bdi3ej") format("truetype"), url("../fonts/iconfont.woff?bdi3ej") format("woff"), url("../fonts/iconfont.svg?bdi3ej#iconfont") format("svg");
  font-weight: normal;
  font-style: normal; }

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'iconfont' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-big-moustache:before {
  content: "\e901"; }

.icon-scissors-and-comb:before {
  content: "\e900"; }

.icon-chevron-left:before {
  content: "\e902"; }

.icon-chevron-right:before {
  content: "\e903"; }

.icon-facebook2:before {
  content: "\e904"; }

.icon-instagram2:before {
  content: "\e905"; }

.icon-mail:before {
  content: "\e906"; }

.icon-maximize-2:before {
  content: "\e907"; }

.icon-phone:before {
  content: "\e908"; }

.icon-search:before {
  content: "\e909"; }

/**
 * Basic typography style for copy text
 */
h1, h2, h3, h4, h5, h6 {
  font-family: "Playfair Display", serif;
  font-weight: 900;
  font-style: italic;
  line-height: 1.5em;
  letter-spacing: 0.05em;
  color: #c19939; }

h1 {
  font-size: 4.8rem; }

h2 {
  font-size: 4rem; }
  @media screen and (max-width: 768px) {
    h2 {
      font-size: 2.4rem; } }

h3 {
  font-size: 3.6rem; }

h4 {
  font-size: 3rem; }

h5 {
  font-size: 2.5rem; }

h6 {
  font-size: 2rem; }

/**
 * Clear inner floats
 */
.clearfix::after {
  clear: both;
  content: '';
  display: table; }

/**
 * Main content containers
 * 1. Make the container full-width with a maximum width
 * 2. Center it in the viewport
 * 3. Leave some space on the edges, especially valuable on small screens
 */
.container {
  max-width: 1180px;
  /* 1 */
  margin-left: auto;
  /* 2 */
  margin-right: auto;
  /* 2 */
  padding-left: 20px;
  /* 3 */
  padding-right: 20px;
  /* 3 */
  width: 100%;
  /* 1 */ }

/**
 * Hide text while making it readable for screen readers
 * 1. Needed in WebKit-based browsers because of an implementation bug;
 *    See: https://code.google.com/p/chromium/issues/detail?id=457146
 */
.hide-text {
  overflow: hidden;
  padding: 0;
  /* 1 */
  text-indent: 101%;
  white-space: nowrap; }

/**
 * Hide element while making it readable for screen readers
 * Shamelessly borrowed from HTML5Boilerplate:
 * https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css#L119-L133
 */
.visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

@media screen and (max-width: 768px) {
  .sm-hidden {
    display: none !important; } }

@media screen and (max-width: 480px) {
  .xs-hidden {
    display: none !important; } }

.mar-0 {
  margin: 0px !important; }

.app-nav {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 44%; }
  .app-nav.nav-left {
    left: 0px; }
  .app-nav.nav-right {
    right: 0px; }

.nav-list {
  list-style: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-left: 0px;
  margin: 0px; }
  @media screen and (max-width: 768px) {
    .nav-list {
      display: none; } }
  .nav-list li {
    display: inline-block; }
    .nav-list li a {
      font-size: 2rem;
      font-weight: 300;
      line-height: 1em;
      color: white;
      display: block;
      padding-left: 25px;
      padding-right: 25px;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }
      @media screen and (max-width: 992px) {
        .nav-list li a {
          font-size: 1.4rem; } }
      .nav-list li a:hover {
        color: #c19939; }

.form-wrap {
  width: 100%; }
  .form-wrap .form-row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 10px;
    margin-bottom: 10px; }
    @media screen and (max-width: 992px) {
      .form-wrap .form-row {
        display: block; } }
    .form-wrap .form-row .form-col {
      width: 100%; }
      .form-wrap .form-row .form-col:first-of-type {
        margin-right: 10px; }
        @media screen and (max-width: 992px) {
          .form-wrap .form-row .form-col:first-of-type {
            margin-right: 0px; } }
      .form-wrap .form-row .form-col:last-of-type {
        margin-left: 10px; }
        @media screen and (max-width: 992px) {
          .form-wrap .form-row .form-col:last-of-type {
            margin-left: 0px; } }
      .form-wrap .form-row .form-col:only-child {
        width: 100%;
        margin-left: 0px;
        margin-right: 0px; }
      .form-wrap .form-row .form-col.form-submit {
        margin-top: 10px; }
      .form-wrap .form-row .form-col p {
        font-size: 1.3rem;
        font-weight: 400;
        font-style: normal;
        line-height: 1.6em;
        color: #545554;
        margin: 0px; }
      .form-wrap .form-row .form-col .required {
        color: #e73937; }
      .form-wrap .form-row .form-col.checkbox-col {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        padding-top: 10px; }

input[type="text"],
input[type="email"] {
  width: 100%;
  font-size: 1.4rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4em;
  color: #c19939;
  display: block;
  padding: 10px 0px 10px 15px;
  border: 2px solid #eeeeee; }

.select {
  position: relative;
  display: block;
  border: 2px solid #eeeeee; }
  .select:after {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    content: '\f107';
    font-family: "iconfont";
    font-size: 1.6rem;
    line-height: 1em;
    color: #9a9a9a; }
  .select > select {
    position: relative;
    width: 100%;
    background-color: transparent;
    font-family: "Raleway", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4em;
    color: white;
    padding: 10px 0px 10px 15px;
    border: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    z-index: 1; }
    .select > select > option {
      color: white; }
    .select > select:focus {
      text-decoration: none;
      border: none;
      outline: none; }
  .select.select-default {
    display: inline-block;
    border: none; }
    .select.select-default:after {
      right: 0px;
      color: #545554; }
    .select.select-default > select {
      color: #545554;
      padding: 10px 15px 10px 0px; }

.checkbox {
  position: relative;
  width: 20px;
  height: 20px;
  text-align: center;
  display: inline-block;
  margin-right: 5px;
  cursor: pointer; }
  .checkbox > input[type="checkbox"] {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    border: none;
    outline: none;
    box-shadow: none;
    opacity: 0;
    cursor: pointer;
    z-index: 1; }
  .checkbox > .checkbox-indicator {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    border: 2px solid #eeeeee;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; }
    .checkbox > .checkbox-indicator::after {
      content: '\f00c';
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      font-family: "iconfont";
      font-size: 1.4rem;
      line-height: 20px;
      text-align: center;
      color: white;
      display: none;
      cursor: pointer;
      z-index: 0; }
  .checkbox:hover > .checkbox-indicator {
    border-color: #c19939; }
  .checkbox > input[type="checkbox"]:checked + .checkbox-indicator {
    background-color: #c19939;
    border: 2px solid #c19939; }
    .checkbox > input[type="checkbox"]:checked + .checkbox-indicator::after {
      display: block; }

textarea {
  width: 100%;
  min-height: 180px;
  font-family: "Raleway", sans-serif;
  font-size: 1.4rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4em;
  color: #c19939;
  display: block;
  padding: 10px 0px 10px 15px;
  border: 2px solid #eeeeee;
  resize: none; }

label {
  font-size: 1.3rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1.6em;
  color: #545554; }

.btn {
  width: auto;
  background-color: transparent;
  font-size: 1.4rem;
  font-weight: 400;
  font-style: normal;
  line-height: 1em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #c19939;
  display: inline-block;
  padding: 20px 45px;
  border-radius: 30px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }
  .btn:hover {
    background-color: #c19939;
    color: white; }
  .btn.btn-warning {
    color: white;
    background-color: rgba(193, 153, 57, 0.45); }
    .btn.btn-warning:hover {
      background-color: #9a7a2d; }
  .btn.btn-success {
    color: white;
    background-color: #c19939;
    border: none; }
    .btn.btn-success:hover {
      background-color: #9a7a2d; }
  .btn.btn-submit {
    width: 100%;
    cursor: pointer; }

.columns-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-left: -10px;
  margin-right: -10px; }
  @media screen and (max-width: 480px) {
    .columns-wrap {
      width: 100%;
      display: block;
      margin-left: 0px;
      margin-right: 0px; } }
  .columns-wrap .column {
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
    background-color: transparent; }
    .columns-wrap .column.column-20 {
      max-width: 20%;
      -webkit-box-flex: -webkit-calc(100% / 5);
      -webkit-flex: -webkit-calc(100% / 5);
          -ms-flex: calc(100% / 5);
              flex: calc(100% / 5); }
      @media screen and (max-width: 992px) {
        .columns-wrap .column.column-20 {
          max-width: 33%;
          -webkit-box-flex: -webkit-calc(100% / 3);
          -webkit-flex: -webkit-calc(100% / 3);
              -ms-flex: calc(100% / 3);
                  flex: calc(100% / 3); } }
      @media screen and (max-width: 768px) {
        .columns-wrap .column.column-20 {
          max-width: 50%;
          -webkit-box-flex: -webkit-calc(100% / 2);
          -webkit-flex: -webkit-calc(100% / 2);
              -ms-flex: calc(100% / 2);
                  flex: calc(100% / 2); } }
      @media screen and (max-width: 480px) {
        .columns-wrap .column.column-20 {
          width: 100%;
          max-width: 100%;
          display: block; } }
    .columns-wrap .column.column-25 {
      max-width: 25%;
      -webkit-box-flex: -webkit-calc(100% / 4);
      -webkit-flex: -webkit-calc(100% / 4);
          -ms-flex: calc(100% / 4);
              flex: calc(100% / 4); }
      @media screen and (max-width: 992px) {
        .columns-wrap .column.column-25 {
          max-width: 33%;
          -webkit-box-flex: -webkit-calc(100% / 3);
          -webkit-flex: -webkit-calc(100% / 3);
              -ms-flex: calc(100% / 3);
                  flex: calc(100% / 3); } }
      @media screen and (max-width: 768px) {
        .columns-wrap .column.column-25 {
          max-width: 50%;
          -webkit-box-flex: -webkit-calc(100% / 2);
          -webkit-flex: -webkit-calc(100% / 2);
              -ms-flex: calc(100% / 2);
                  flex: calc(100% / 2); } }
      @media screen and (max-width: 480px) {
        .columns-wrap .column.column-25 {
          width: 100%;
          max-width: 100%;
          display: block; } }
    .columns-wrap .column.column-33 {
      max-width: 33%;
      -webkit-box-flex: -webkit-calc(100% / 3);
      -webkit-flex: -webkit-calc(100% / 3);
          -ms-flex: calc(100% / 3);
              flex: calc(100% / 3); }
      @media screen and (max-width: 992px) {
        .columns-wrap .column.column-33 {
          max-width: 50%;
          -webkit-box-flex: -webkit-calc(100% / 2);
          -webkit-flex: -webkit-calc(100% / 2);
              -ms-flex: calc(100% / 2);
                  flex: calc(100% / 2); } }
      @media screen and (max-width: 480px) {
        .columns-wrap .column.column-33 {
          width: 100%;
          max-width: 100%;
          display: block; } }
    .columns-wrap .column.column-50 {
      max-width: 50%; }
      @media screen and (max-width: 768px) {
        .columns-wrap .column.column-50 {
          width: 100%;
          max-width: 100%;
          display: block; } }

.app-header {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 160px;
  background-color: transparent;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  z-index: 100; }
  @media screen and (max-width: 768px) {
    .app-header {
      padding: 0px; } }
  .app-header.header-collapsed {
    height: 100px;
    background-color: rgba(0, 0, 0, 0.85); }
  .app-header .container {
    position: relative;
    height: 100%; }

.app-brand {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
  .app-brand a {
    width: 120px;
    display: block;
    -webkit-transition: width 0.3s;
    transition: width 0.3s; }
    .header-collapsed .app-brand a {
      width: 80px; }
    .app-brand a > img {
      max-width: 100%;
      height: auto; }

.app-main {
  background-color: white; }

.social-aside {
  position: fixed;
  left: 0px;
  top: 30%;
  z-index: 50; }
  .social-aside .aside-btn {
    position: relative;
    width: 150px;
    color: white;
    display: block;
    padding: 15px 55px 15px 15px;
    margin-bottom: 10px;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: translateX(-100px);
        -ms-transform: translateX(-100px);
            transform: translateX(-100px); }
    .social-aside .aside-btn:hover {
      -webkit-transform: translateX(0px);
          -ms-transform: translateX(0px);
              transform: translateX(0px); }
    .social-aside .aside-btn.btn-fb {
      background-color: rgba(59, 89, 152, 0.6); }
      .social-aside .aside-btn.btn-fb:hover {
        background-color: #3b5998; }
    .social-aside .aside-btn.btn-in {
      background-color: rgba(247, 119, 55, 0.6); }
      .social-aside .aside-btn.btn-in:hover {
        background-color: #f77737; }
    .social-aside .aside-btn .facebook-icon,
    .social-aside .aside-btn .instagram-icon {
      position: absolute;
      right: 0px;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 50px;
      text-align: center;
      border-left: 1px solid rgba(59, 89, 152, 0.4); }
      .social-aside .aside-btn .facebook-icon::after,
      .social-aside .aside-btn .instagram-icon::after {
        content: '\e904';
        font-family: "iconfont";
        font-size: 1.6rem; }
    .social-aside .aside-btn .instagram-icon {
      border-left: 1px solid rgba(247, 119, 55, 0.4); }
      .social-aside .aside-btn .instagram-icon::after {
        content: '\e905'; }

.hero-strip {
  position: relative;
  width: 100%;
  height: 100vh;
  background-image: url("../img/hero_bg.jpg");
  background-size: cover;
  background-position: center;
  z-index: 1; }
  .hero-strip::after {
    content: '';
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(11, 11, 11, 0.75);
    z-index: 5; }
  .hero-strip .hero-content {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    z-index: 10;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .hero-strip .hero-content {
        width: 100%; } }
    .hero-strip .hero-content h1 {
      text-align: center;
      color: white;
      z-index: 10; }
      @media screen and (max-width: 768px) {
        .hero-strip .hero-content h1 {
          font-size: 2.9rem; } }
      .hero-strip .hero-content h1 span {
        color: #c19939;
        display: block; }
      .hero-strip .hero-content h1::before {
        content: '\e900';
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
        font-family: "iconfont";
        font-size: 15rem;
        color: rgba(0, 0, 0, 0.4);
        z-index: -1; }
    .hero-strip .hero-content .btn {
      margin-top: 25px; }

.about-strip {
  position: relative;
  background-image: url("../img/pattern_bg.jpg");
  background-repeat: repeat;
  padding-top: 60px;
  padding-bottom: 60px; }
  .about-strip::before {
    content: '';
    position: absolute;
    top: -120px;
    left: 0px;
    width: 100%;
    height: 142px;
    background-image: url("../img/border_top.png");
    background-size: cover;
    background-position: center;
    z-index: 20;
    overflow: hidden; }
  .about-strip h2 {
    position: relative;
    text-align: center;
    z-index: 10; }
    .about-strip h2::before {
      content: '\e900';
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      font-family: "iconfont";
      font-size: 15rem;
      color: rgba(193, 153, 57, 0.07);
      z-index: -1; }
  .about-strip .photo-wrap {
    width: 100%;
    max-width: 300px;
    margin: 0px auto; }
    .about-strip .photo-wrap > img {
      max-width: 100%;
      height: auto;
      display: block;
      border: 8px solid white;
      border-radius: 50%; }
  .about-strip .text-wrap {
    position: relative;
    height: 100%;
    text-align: center; }
    .about-strip .text-wrap p {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      font-family: "Playfair Display", serif;
      font-size: 2.3rem;
      line-height: 1.5em;
      color: #1d1c1c;
      margin: 0px; }
      @media screen and (max-width: 768px) {
        .about-strip .text-wrap p {
          position: relative;
          top: initial;
          -webkit-transform: translateY(0%);
              -ms-transform: translateY(0%);
                  transform: translateY(0%);
          font-size: 1.6rem;
          margin: 15px 0px; } }

.pricing-strip {
  padding-top: 45px;
  padding-bottom: 100px;
  background-image: url("../img/pattern_bg.jpg");
  background-repeat: repeat; }
  .pricing-strip h2 {
    position: relative;
    text-align: center;
    z-index: 10; }
    .pricing-strip h2::before {
      content: '\e901';
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      font-family: "iconfont";
      font-size: 15rem;
      color: rgba(193, 153, 57, 0.07);
      z-index: -1; }
  .pricing-strip table {
    width: 800px;
    margin: 0px auto;
    border-collapse: collapse; }
    @media screen and (max-width: 992px) {
      .pricing-strip table {
        width: 100%;
        max-width: 100%; } }
    .pricing-strip table tr:hover {
      background-color: white; }
    .pricing-strip table td {
      font-family: "Playfair Display", serif;
      font-style: italic;
      color: #1d1c1c;
      padding: 8px 10px; }
      @media screen and (max-width: 992px) {
        .pricing-strip table td {
          font-size: 1.4rem; } }
      .pricing-strip table td.price {
        text-align: center; }

.opening-strip {
  position: relative;
  width: 100%;
  background-image: url("../img/hero_bg.jpg");
  background-size: cover;
  background-position: center;
  padding-top: 45px;
  padding-bottom: 60px;
  z-index: 1; }
  .opening-strip::after {
    content: '';
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(11, 11, 11, 0.75);
    z-index: 5; }
  .opening-strip .opening-content {
    position: relative;
    z-index: 10; }
    .opening-strip .opening-content h2 {
      text-align: center;
      margin-top: 0px;
      margin-bottom: 0px; }
    .opening-strip .opening-content .sub-heading {
      font-size: 1.8rem;
      line-height: 1.5em;
      text-align: center;
      color: white;
      margin-top: 0px;
      margin-bottom: 45px; }
      @media screen and (max-width: 768px) {
        .opening-strip .opening-content .sub-heading {
          font-size: 1.5rem; } }
  .opening-strip .opening-hours .column-day {
    text-align: center;
    padding: 25px 10px 45px 10px;
    border: 3px solid white; }
    @media screen and (max-width: 768px) {
      .opening-strip .opening-hours .column-day {
        padding: 25px 10px;
        margin: 12px 0px; } }
    .opening-strip .opening-hours .column-day h6 {
      color: white;
      margin-top: 0px;
      margin-bottom: 20px; }
    .opening-strip .opening-hours .column-day .opening-from,
    .opening-strip .opening-hours .column-day .opening-to {
      font-size: 2rem;
      font-weight: 700;
      color: #c19939;
      margin: 0px auto; }
      @media screen and (max-width: 768px) {
        .opening-strip .opening-hours .column-day .opening-from,
        .opening-strip .opening-hours .column-day .opening-to {
          display: inline-block; } }
    .opening-strip .opening-hours .column-day .opening-from::after {
      content: '-';
      font-size: 2.5rem;
      color: white;
      display: block;
      margin-top: 5px;
      margin-bottom: 5px; }
      @media screen and (max-width: 768px) {
        .opening-strip .opening-hours .column-day .opening-from::after {
          display: none; } }

.gallery-strip {
  width: 100%; }
  .gallery-strip .gallery-carousel .gallery-item img {
    max-width: 100%;
    height: auto; }
  .gallery-strip .gallery-carousel .slick-arrow {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 25px;
    height: 50px;
    font-size: 0px;
    background-color: transparent;
    border: none;
    box-shadow: none;
    cursor: pointer;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s; }
    .gallery-strip .gallery-carousel .slick-arrow:after {
      content: '';
      position: absolute;
      left: 50%;
      top: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      font-family: "iconfont";
      font-size: 5rem;
      line-height: 1em;
      text-align: center;
      color: white; }
    .gallery-strip .gallery-carousel .slick-arrow:hover::after {
      color: white; }
    .gallery-strip .gallery-carousel .slick-arrow.slick-prev {
      left: 15px;
      z-index: 10; }
      .gallery-strip .gallery-carousel .slick-arrow.slick-prev:after {
        content: '\e902'; }
    .gallery-strip .gallery-carousel .slick-arrow.slick-next {
      right: 15px; }
      .gallery-strip .gallery-carousel .slick-arrow.slick-next:after {
        content: '\e903'; }

.map-strip .map-container {
  width: 100%;
  height: 380px; }

.app-footer {
  width: 100%;
  background-color: #1d1c1c;
  color: white;
  padding-top: 35px; }
  .app-footer .social-media {
    list-style: none;
    padding-left: 0px;
    margin: 0px; }
    .app-footer .social-media li a {
      color: white; }
  .app-footer .app-address {
    line-height: 1.6em; }
  .app-footer .contact-info,
  .app-footer .social-media {
    line-height: 1.6em;
    color: white; }
    .app-footer .contact-info .contact-mail,
    .app-footer .contact-info .contact-phone,
    .app-footer .social-media .contact-mail,
    .app-footer .social-media .contact-phone {
      color: white;
      display: block; }
  .app-footer .copyright-footer {
    position: relative;
    font-size: 1.4rem;
    line-height: 2.4em;
    border-top: 1px solid #2b2929;
    margin-top: 25px; }
    .app-footer .copyright-footer .author {
      position: absolute;
      right: 0px; }


      .hero-alert {
        color: white;
        background-color: rgb(193 186 57 / 45%);
        display: inline-block;
        padding: 12px 16px;
        border-radius: 22px;
        font-size: 24px;
      }

      .hero-alert a {
        color: white !important;
      }
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInZlbmRvci9fbm9ybWFsaXplLnNjc3MiLCJiYXNlL19mb250cy5zY3NzIiwibWFpbi5jc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJhYnN0cmFjdHMvX21peGlucy5zY3NzIiwiYWJzdHJhY3RzL192YXJpYWJsZXMuc2NzcyIsImJhc2UvX3R5cG9ncmFwaHkuc2NzcyIsImJhc2UvX2hlbHBlcnMuc2NzcyIsImNvbXBvbmVudHMvX25hdmlnYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX2Zvcm1zLnNjc3MiLCJjb21wb25lbnRzL19idXR0b24uc2NzcyIsImxheW91dC9fbGF5b3V0LnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19tYWluLnNjc3MiLCJsYXlvdXQvX2Zvb3Rlci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRFQUE0RTtBQUU1RTs7OztHQUlHO0FBRUg7Z0ZBQ2dGO0FDSmhGLGlGQUFZO0FBQ1osK0VBQVk7QURLWjtFQUNFLGtCQUFpQjtFQUFHLE9BQU87RUFDM0IsMkJBQTBCO0VBQUcsT0FBTztFQUNwQywrQkFBOEI7RUFBRyxPQUFPLEVBQ3pDOztBQUVEO2dGQUNnRjtBQUVoRjs7R0FFRztBQUVIO0VBQ0UsVUFBUyxFQUNWOztBQUVEOztHQUVHO0FBRUg7Ozs7OztFQU1FLGVBQWMsRUFDZjs7QUFFRDs7O0dBR0c7QUFFSDtFQUNFLGVBQWM7RUFDZCxpQkFBZ0IsRUFDakI7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOzs7R0FHRztBQUVIOzs7RUFFTyxPQUFPO0VBQ1osZUFBYyxFQUNmOztBQUVEOztHQUVHO0FBRUg7RUFDRSxpQkFBZ0IsRUFDakI7O0FBRUQ7OztHQUdHO0FBRUg7RUFDRSx3QkFBdUI7RUFBRyxPQUFPO0VBQ2pDLFVBQVM7RUFBRyxPQUFPO0VBQ25CLGtCQUFpQjtFQUFHLE9BQU8sRUFDNUI7O0FBRUQ7OztHQUdHO0FBRUg7RUFDRSxrQ0FBaUM7RUFBRyxPQUFPO0VBQzNDLGVBQWM7RUFBRyxPQUFPLEVB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QUFhLEVBQ2I7O0FDcmJGO0VBQ0MsWUFBVztFQUNYLDBCQUF5QjtFQUN6QixhQUFZO0VBQ1osa0JBQWlCLEVBNENqQjtFQWhERDtJQU9FLGlCQUFnQjtJQUNoQixrQkFBaUI7SUFDakIsWUFBVyxFQVNYO0lBbEJGO01BY0ksYUFBWSxFQUNaO0VBZko7SUFxQkUsbUJBQWtCLEVBQ2xCO0VBdEJGOztJQTBCRSxtQkFBa0I7SUFDbEIsYUFBWSxFQU9aO0lBbENGOzs7O01BK0JHLGFBQVk7TUFDWixlQUFjLEVBQ2Q7RUFqQ0g7SUFxQ0UsbUJBQWtCO0lBQ2xCLGtCQUFpQjtJQUNqQixtQkFBa0I7SUFDbEIsOEJBQTZCO0lBQzdCLGlCQUFnQixFQU1oQjtJQS9DRjtNQTRDRyxtQkFBa0I7TUFDbEIsV0FBVSxFQUNWIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohIG5vcm1hbGl6ZS5jc3MgdjQuMi4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgYW5kIGlPUy5cbiAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG5maWdjYXB0aW9uLFxuZmlndXJlLFxubWFpbiB7IC8qIDEgKi9cbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICovXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwO1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gKi9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAqL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmF1ZGlvLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscywgLyogMSAqL1xubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIFNjcmlwdGluZ1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIaWRkZW5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIEBmb250LWZhY2UgZGVjbGFyYXRpb25zLCBpZiBhbnkuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHb29nbGUgRm9udHNcbkBpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1SYWxld2F5OjIwMCwzMDAsNDAwLDcwMCw5MDApO1xuQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVBsYXlmYWlyK0Rpc3BsYXk6OTAwLDkwMGkpO1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdpY29uZm9udCc7XG4gIHNyYzogIHVybCgnLi4vZm9udHMvaWNvbmZvbnQuZW90P2JkaTNlaicpO1xuICBzcmM6ICB1cmwoJy4uL2ZvbnRzL2ljb25mb250LmVvdD9iZGkzZWojaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgdXJsKCcuLi9mb250cy9pY29uZm9udC50dGY/YmRpM2VqJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgIHVybCgnLi4vZm9udHMvaWNvbmZvbnQud29mZj9iZGkzZWonKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL2ljb25mb250LnN2Zz9iZGkzZWojaWNvbmZvbnQnKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbltjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIGZvbnQtZmFtaWx5OiAnaWNvbmZvbnQnICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uaWNvbi1iaWctbW91c3RhY2hlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG59XG4uaWNvbi1zY2lzc29ycy1hbmQtY29tYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMFwiO1xufVxuLmljb24tY2hldnJvbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG59XG4uaWNvbi1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAzXCI7XG59XG4uaWNvbi1mYWNlYm9vazI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDRcIjtcbn1cbi5pY29uLWluc3RhZ3JhbTI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjtcbn1cbi5pY29uLW1haWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDZcIjtcbn1cbi5pY29uLW1heGltaXplLTI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbn1cbi5pY29uLXBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XG59XG4uaWNvbi1zZWFyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDlcIjtcbn1cblxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjQuMi4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIGFuZCBpT1MuXG4gKi9cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJhbGV3YXk6MjAwLDMwMCw0MDAsNzAwLDkwMCk7XG5AaW1wb3J0IHVybChodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9UGxheWZhaXIrRGlzcGxheTo5MDAsOTAwaSk7XG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDIgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovIH1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbm1haW4ge1xuICAvKiAxICovXG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmUtd2lkdGg6IDA7IH1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi8gfVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMsXG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG4vKiBTY3JpcHRpbmdcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIEhpZGRlblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyoqXG4gKiBTZXQgdXAgYSBkZWNlbnQgYm94IG1vZGVsIG9uIHRoZSByb290IGVsZW1lbnRcbiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0IEJhc2Ugc3R5bGVzOiBvcGluaW9uYXRlZCBkZWZhdWx0c1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmh0bWwge1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTBweDsgfVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6IFwiUmFsZXdheVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAwcHg7XG4gIG1hcmdpbjogMHB4OyB9XG5cbi8qKlxuICogTWFrZSBhbGwgZWxlbWVudHMgZnJvbSB0aGUgRE9NIGluaGVyaXQgZnJvbSB0aGUgcGFyZW50IGJveC1zaXppbmdcbiAqIFNpbmNlIGAqYCBoYXMgYSBzcGVjaWZpY2l0eSBvZiAwLCBpdCBkb2VzIG5vdCBvdmVycmlkZSB0aGUgYGh0bWxgIHZhbHVlXG4gKiBtYWtpbmcgYWxsIGVsZW1lbnRzIGluaGVyaXRpbmcgZnJvbSB0aGUgcm9vdCBib3gtc2l6aW5nIHZhbHVlXG4gKiBTZWU6IGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlL1xuICovXG4qLCAqOjpiZWZvcmUsICo6OmFmdGVyIHtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi8qKlxuICogQmFzaWMgc3R5bGVzIGZvciBsaW5rc1xuICovXG5hIHtcbiAgY29sb3I6ICM0ZjRmNGY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBhOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnaWNvbmZvbnQnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ljb25mb250LmVvdD9iZGkzZWpcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaWNvbmZvbnQuZW90P2JkaTNlaiNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbmZvbnQudHRmP2JkaTNlalwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbmZvbnQud29mZj9iZGkzZWpcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbmZvbnQuc3ZnP2JkaTNlaiNpY29uZm9udFwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5bY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICBmb250LWZhbWlseTogJ2ljb25mb250JyAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLmljb24tYmlnLW1vdXN0YWNoZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMVwiOyB9XG5cbi5pY29uLXNjaXNzb3JzLWFuZC1jb21iOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7IH1cblxuLmljb24tY2hldnJvbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAyXCI7IH1cblxuLmljb24tY2hldnJvbi1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwM1wiOyB9XG5cbi5pY29uLWZhY2Vib29rMjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiOyB9XG5cbi5pY29uLWluc3RhZ3JhbTI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjsgfVxuXG4uaWNvbi1tYWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA2XCI7IH1cblxuLmljb24tbWF4aW1pemUtMjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwN1wiOyB9XG5cbi5pY29uLXBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA4XCI7IH1cblxuLmljb24tc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA5XCI7IH1cblxuLyoqXG4gKiBCYXNpYyB0eXBvZ3JhcGh5IHN0eWxlIGZvciBjb3B5IHRleHRcbiAqL1xuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICBjb2xvcjogI2MxOTkzOTsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogNC44cmVtOyB9XG5cbmgyIHtcbiAgZm9udC1zaXplOiA0cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAyLjRyZW07IH0gfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMy42cmVtOyB9XG5cbmg0IHtcbiAgZm9udC1zaXplOiAzcmVtOyB9XG5cbmg1IHtcbiAgZm9udC1zaXplOiAyLjVyZW07IH1cblxuaDYge1xuICBmb250LXNpemU6IDJyZW07IH1cblxuLyoqXG4gKiBDbGVhciBpbm5lciBmbG9hdHNcbiAqL1xuLmNsZWFyZml4OjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7IH1cblxuLyoqXG4gKiBNYWluIGNvbnRlbnQgY29udGFpbmVyc1xuICogMS4gTWFrZSB0aGUgY29udGFpbmVyIGZ1bGwtd2lkdGggd2l0aCBhIG1heGltdW0gd2lkdGhcbiAqIDIuIENlbnRlciBpdCBpbiB0aGUgdmlld3BvcnRcbiAqIDMuIExlYXZlIHNvbWUgc3BhY2Ugb24gdGhlIGVkZ2VzLCBlc3BlY2lhbGx5IHZhbHVhYmxlIG9uIHNtYWxsIHNjcmVlbnNcbiAqL1xuLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTE4MHB4O1xuICAvKiAxICovXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAvKiAyICovXG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgLyogMiAqL1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIC8qIDMgKi9cbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgLyogMyAqL1xuICB3aWR0aDogMTAwJTtcbiAgLyogMSAqLyB9XG5cbi8qKlxuICogSGlkZSB0ZXh0IHdoaWxlIG1ha2luZyBpdCByZWFkYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnNcbiAqIDEuIE5lZWRlZCBpbiBXZWJLaXQtYmFzZWQgYnJvd3NlcnMgYmVjYXVzZSBvZiBhbiBpbXBsZW1lbnRhdGlvbiBidWc7XG4gKiAgICBTZWU6IGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD00NTcxNDZcbiAqL1xuLmhpZGUtdGV4dCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIC8qIDEgKi9cbiAgdGV4dC1pbmRlbnQ6IDEwMSU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLyoqXG4gKiBIaWRlIGVsZW1lbnQgd2hpbGUgbWFraW5nIGl0IHJlYWRhYmxlIGZvciBzY3JlZW4gcmVhZGVyc1xuICogU2hhbWVsZXNzbHkgYm9ycm93ZWQgZnJvbSBIVE1MNUJvaWxlcnBsYXRlOlxuICogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyNMMTE5LUwxMzNcbiAqL1xuLnZpc3VhbGx5LWhpZGRlbiB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5zbS1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC54cy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5tYXItMCB7XG4gIG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7IH1cblxuLmFwcC1uYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiA0NCU7IH1cbiAgLmFwcC1uYXYubmF2LWxlZnQge1xuICAgIGxlZnQ6IDBweDsgfVxuICAuYXBwLW5hdi5uYXYtcmlnaHQge1xuICAgIHJpZ2h0OiAwcHg7IH1cblxuLm5hdi1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBtYXJnaW46IDBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5uYXYtbGlzdCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLm5hdi1saXN0IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAubmF2LWxpc3QgbGkgYSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgICAubmF2LWxpc3QgbGkgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07IH0gfVxuICAgICAgLm5hdi1saXN0IGxpIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2MxOTkzOTsgfVxuXG4uZm9ybS13cmFwIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmZvcm0td3JhcCAuZm9ybS1yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgIC5mb3JtLXdyYXAgLmZvcm0tcm93IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5mb3JtLXdyYXAgLmZvcm0tcm93IC5mb3JtLWNvbCB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLmZvcm0td3JhcCAuZm9ybS1yb3cgLmZvcm0tY29sOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAuZm9ybS13cmFwIC5mb3JtLXJvdyAuZm9ybS1jb2w6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDsgfSB9XG4gICAgICAuZm9ybS13cmFwIC5mb3JtLXJvdyAuZm9ybS1jb2w6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAuZm9ybS13cmFwIC5mb3JtLXJvdyAuZm9ybS1jb2w6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7IH0gfVxuICAgICAgLmZvcm0td3JhcCAuZm9ybS1yb3cgLmZvcm0tY29sOm9ubHktY2hpbGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7IH1cbiAgICAgIC5mb3JtLXdyYXAgLmZvcm0tcm93IC5mb3JtLWNvbC5mb3JtLXN1Ym1pdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAgIC5mb3JtLXdyYXAgLmZvcm0tcm93IC5mb3JtLWNvbCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNmVtO1xuICAgICAgICBjb2xvcjogIzU0NTU1NDtcbiAgICAgICAgbWFyZ2luOiAwcHg7IH1cbiAgICAgIC5mb3JtLXdyYXAgLmZvcm0tcm93IC5mb3JtLWNvbCAucmVxdWlyZWQge1xuICAgICAgICBjb2xvcjogI2U3MzkzNzsgfVxuICAgICAgLmZvcm0td3JhcCAuZm9ybS1yb3cgLmZvcm0tY29sLmNoZWNrYm94LWNvbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgY29sb3I6ICNjMTk5Mzk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4IDBweCAxMHB4IDE1cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlZWVlZWU7IH1cblxuLnNlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlZWVlZWU7IH1cbiAgLnNlbGVjdDphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBjb250ZW50OiAnXFxmMTA3JztcbiAgICBmb250LWZhbWlseTogXCJpY29uZm9udFwiO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgY29sb3I6ICM5YTlhOWE7IH1cbiAgLnNlbGVjdCA+IHNlbGVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGZvbnQtZmFtaWx5OiBcIlJhbGV3YXlcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMS40ZW07XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmc6IDEwcHggMHB4IDEwcHggMTVweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgei1pbmRleDogMTsgfVxuICAgIC5zZWxlY3QgPiBzZWxlY3QgPiBvcHRpb24ge1xuICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLnNlbGVjdCA+IHNlbGVjdDpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5zZWxlY3Quc2VsZWN0LWRlZmF1bHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAuc2VsZWN0LnNlbGVjdC1kZWZhdWx0OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAwcHg7XG4gICAgICBjb2xvcjogIzU0NTU1NDsgfVxuICAgIC5zZWxlY3Quc2VsZWN0LWRlZmF1bHQgPiBzZWxlY3Qge1xuICAgICAgY29sb3I6ICM1NDU1NTQ7XG4gICAgICBwYWRkaW5nOiAxMHB4IDE1cHggMTBweCAwcHg7IH1cblxuLmNoZWNrYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuY2hlY2tib3ggPiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDBweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogMTsgfVxuICAuY2hlY2tib3ggPiAuY2hlY2tib3gtaW5kaWNhdG9yIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZWVlZWVlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzOyB9XG4gICAgLmNoZWNrYm94ID4gLmNoZWNrYm94LWluZGljYXRvcjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcZjAwYyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbmZvbnRcIjtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgei1pbmRleDogMDsgfVxuICAuY2hlY2tib3g6aG92ZXIgPiAuY2hlY2tib3gtaW5kaWNhdG9yIHtcbiAgICBib3JkZXItY29sb3I6ICNjMTk5Mzk7IH1cbiAgLmNoZWNrYm94ID4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyAuY2hlY2tib3gtaW5kaWNhdG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzE5OTM5O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNjMTk5Mzk7IH1cbiAgICAuY2hlY2tib3ggPiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIC5jaGVja2JveC1pbmRpY2F0b3I6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbnRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDE4MHB4O1xuICBmb250LWZhbWlseTogXCJSYWxld2F5XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgY29sb3I6ICNjMTk5Mzk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4IDBweCAxMHB4IDE1cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlZWVlZWU7XG4gIHJlc2l6ZTogbm9uZTsgfVxuXG5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjZlbTtcbiAgY29sb3I6ICM1NDU1NTQ7IH1cblxuLmJ0biB7XG4gIHdpZHRoOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgY29sb3I6ICNjMTk5Mzk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMjBweCA0NXB4O1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zczsgfVxuICAuYnRuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzE5OTM5O1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAuYnRuLmJ0bi13YXJuaW5nIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxOTMsIDE1MywgNTcsIDAuNDUpOyB9XG4gICAgLmJ0bi5idG4td2FybmluZzpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWE3YTJkOyB9XG4gIC5idG4uYnRuLXN1Y2Nlc3Mge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzE5OTM5O1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC5idG4uYnRuLXN1Y2Nlc3M6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzlhN2EyZDsgfVxuICAuYnRuLmJ0bi1zdWJtaXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uY29sdW1ucy13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIG1hcmdpbi1yaWdodDogLTEwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuY29sdW1ucy13cmFwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7IH0gfVxuICAuY29sdW1ucy13cmFwIC5jb2x1bW4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmNvbHVtbnMtd3JhcCAuY29sdW1uLmNvbHVtbi0yMCB7XG4gICAgICBtYXgtd2lkdGg6IDIwJTtcbiAgICAgIGZsZXg6IGNhbGMoMTAwJSAvIDUpOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgICAuY29sdW1ucy13cmFwIC5jb2x1bW4uY29sdW1uLTIwIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDMzJTtcbiAgICAgICAgICBmbGV4OiBjYWxjKDEwMCUgLyAzKTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuY29sdW1ucy13cmFwIC5jb2x1bW4uY29sdW1uLTIwIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgICBmbGV4OiBjYWxjKDEwMCUgLyAyKTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAuY29sdW1ucy13cmFwIC5jb2x1bW4uY29sdW1uLTIwIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5jb2x1bW5zLXdyYXAgLmNvbHVtbi5jb2x1bW4tMjUge1xuICAgICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgICBmbGV4OiBjYWxjKDEwMCUgLyA0KTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgLmNvbHVtbnMtd3JhcCAuY29sdW1uLmNvbHVtbi0yNSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAzMyU7XG4gICAgICAgICAgZmxleDogY2FsYygxMDAlIC8gMyk7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLmNvbHVtbnMtd3JhcCAuY29sdW1uLmNvbHVtbi0yNSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgICAgZmxleDogY2FsYygxMDAlIC8gMik7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgLmNvbHVtbnMtd3JhcCAuY29sdW1uLmNvbHVtbi0yNSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAuY29sdW1ucy13cmFwIC5jb2x1bW4uY29sdW1uLTMzIHtcbiAgICAgIG1heC13aWR0aDogMzMlO1xuICAgICAgZmxleDogY2FsYygxMDAlIC8gMyk7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC5jb2x1bW5zLXdyYXAgLmNvbHVtbi5jb2x1bW4tMzMge1xuICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICAgIGZsZXg6IGNhbGMoMTAwJSAvIDIpOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC5jb2x1bW5zLXdyYXAgLmNvbHVtbi5jb2x1bW4tMzMge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLmNvbHVtbnMtd3JhcCAuY29sdW1uLmNvbHVtbi01MCB7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLmNvbHVtbnMtd3JhcCAuY29sdW1uLmNvbHVtbi01MCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmFwcC1oZWFkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDE2MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIHotaW5kZXg6IDEwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5hcHAtaGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDBweDsgfSB9XG4gIC5hcHAtaGVhZGVyLmhlYWRlci1jb2xsYXBzZWQge1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuICAuYXBwLWhlYWRlciAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5hcHAtYnJhbmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gIC5hcHAtYnJhbmQgYSB7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuM3M7IH1cbiAgICAuaGVhZGVyLWNvbGxhcHNlZCAuYXBwLWJyYW5kIGEge1xuICAgICAgd2lkdGg6IDgwcHg7IH1cbiAgICAuYXBwLWJyYW5kIGEgPiBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5hcHAtbWFpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG5cbi5zb2NpYWwtYXNpZGUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDBweDtcbiAgdG9wOiAzMCU7XG4gIHotaW5kZXg6IDUwOyB9XG4gIC5zb2NpYWwtYXNpZGUgLmFzaWRlLWJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTVweCA1NXB4IDE1cHggMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpOyB9XG4gICAgLnNvY2lhbC1hc2lkZSAuYXNpZGUtYnRuOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpOyB9XG4gICAgLnNvY2lhbC1hc2lkZSAuYXNpZGUtYnRuLmJ0bi1mYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDU5LCA4OSwgMTUyLCAwLjYpOyB9XG4gICAgICAuc29jaWFsLWFzaWRlIC5hc2lkZS1idG4uYnRuLWZiOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNiNTk5ODsgfVxuICAgIC5zb2NpYWwtYXNpZGUgLmFzaWRlLWJ0bi5idG4taW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDcsIDExOSwgNTUsIDAuNik7IH1cbiAgICAgIC5zb2NpYWwtYXNpZGUgLmFzaWRlLWJ0bi5idG4taW46aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjc3NzM3OyB9XG4gICAgLnNvY2lhbC1hc2lkZSAuYXNpZGUtYnRuIC5mYWNlYm9vay1pY29uLFxuICAgIC5zb2NpYWwtYXNpZGUgLmFzaWRlLWJ0biAuaW5zdGFncmFtLWljb24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDBweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoNTksIDg5LCAxNTIsIDAuNCk7IH1cbiAgICAgIC5zb2NpYWwtYXNpZGUgLmFzaWRlLWJ0biAuZmFjZWJvb2staWNvbjo6YWZ0ZXIsXG4gICAgICAuc29jaWFsLWFzaWRlIC5hc2lkZS1idG4gLmluc3RhZ3JhbS1pY29uOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGU5MDQnO1xuICAgICAgICBmb250LWZhbWlseTogXCJpY29uZm9udFwiO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTsgfVxuICAgIC5zb2NpYWwtYXNpZGUgLmFzaWRlLWJ0biAuaW5zdGFncmFtLWljb24ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDI0NywgMTE5LCA1NSwgMC40KTsgfVxuICAgICAgLnNvY2lhbC1hc2lkZSAuYXNpZGUtYnRuIC5pbnN0YWdyYW0taWNvbjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxlOTA1JzsgfVxuXG4uaGVyby1zdHJpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9oZXJvX2JnLmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICB6LWluZGV4OiAxOyB9XG4gIC5oZXJvLXN0cmlwOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMHB4O1xuICAgIGxlZnQ6IDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMSwgMTEsIDExLCAwLjc1KTtcbiAgICB6LWluZGV4OiA1OyB9XG4gIC5oZXJvLXN0cmlwIC5oZXJvLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgei1pbmRleDogMTA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5oZXJvLXN0cmlwIC5oZXJvLWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgLmhlcm8tc3RyaXAgLmhlcm8tY29udGVudCBoMSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICB6LWluZGV4OiAxMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLmhlcm8tc3RyaXAgLmhlcm8tY29udGVudCBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyLjlyZW07IH0gfVxuICAgICAgLmhlcm8tc3RyaXAgLmhlcm8tY29udGVudCBoMSBzcGFuIHtcbiAgICAgICAgY29sb3I6ICNjMTk5Mzk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuaGVyby1zdHJpcCAuaGVyby1jb250ZW50IGgxOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxlOTAwJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbmZvbnRcIjtcbiAgICAgICAgZm9udC1zaXplOiAxNXJlbTtcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgICAgICAgei1pbmRleDogLTE7IH1cbiAgICAuaGVyby1zdHJpcCAuaGVyby1jb250ZW50IC5idG4ge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDsgfVxuXG4uYWJvdXQtc3RyaXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9wYXR0ZXJuX2JnLmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdDtcbiAgcGFkZGluZy10b3A6IDYwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA2MHB4OyB9XG4gIC5hYm91dC1zdHJpcDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTIwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTQycHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2JvcmRlcl90b3AucG5nXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHotaW5kZXg6IDIwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmFib3V0LXN0cmlwIGgyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHotaW5kZXg6IDEwOyB9XG4gICAgLmFib3V0LXN0cmlwIGgyOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZTkwMCc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbmZvbnRcIjtcbiAgICAgIGZvbnQtc2l6ZTogMTVyZW07XG4gICAgICBjb2xvcjogcmdiYSgxOTMsIDE1MywgNTcsIDAuMDcpO1xuICAgICAgei1pbmRleDogLTE7IH1cbiAgLmFib3V0LXN0cmlwIC5waG90by13cmFwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIG1hcmdpbjogMHB4IGF1dG87IH1cbiAgICAuYWJvdXQtc3RyaXAgLnBob3RvLXdyYXAgPiBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3JkZXI6IDhweCBzb2xpZCB3aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAuYWJvdXQtc3RyaXAgLnRleHQtd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuYWJvdXQtc3RyaXAgLnRleHQtd3JhcCBwIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMi4zcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgY29sb3I6ICMxZDFjMWM7XG4gICAgICBtYXJnaW46IDBweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLmFib3V0LXN0cmlwIC50ZXh0LXdyYXAgcCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgIG1hcmdpbjogMTVweCAwcHg7IH0gfVxuXG4ucHJpY2luZy1zdHJpcCB7XG4gIHBhZGRpbmctdG9wOiA0NXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9wYXR0ZXJuX2JnLmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdDsgfVxuICAucHJpY2luZy1zdHJpcCBoMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB6LWluZGV4OiAxMDsgfVxuICAgIC5wcmljaW5nLXN0cmlwIGgyOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZTkwMSc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbmZvbnRcIjtcbiAgICAgIGZvbnQtc2l6ZTogMTVyZW07XG4gICAgICBjb2xvcjogcmdiYSgxOTMsIDE1MywgNTcsIDAuMDcpO1xuICAgICAgei1pbmRleDogLTE7IH1cbiAgLnByaWNpbmctc3RyaXAgdGFibGUge1xuICAgIHdpZHRoOiA4MDBweDtcbiAgICBtYXJnaW46IDBweCBhdXRvO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgLnByaWNpbmctc3RyaXAgdGFibGUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgICAucHJpY2luZy1zdHJpcCB0YWJsZSB0cjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxuICAgIC5wcmljaW5nLXN0cmlwIHRhYmxlIHRkIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICBjb2xvcjogIzFkMWMxYztcbiAgICAgIHBhZGRpbmc6IDhweCAxMHB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgICAucHJpY2luZy1zdHJpcCB0YWJsZSB0ZCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07IH0gfVxuICAgICAgLnByaWNpbmctc3RyaXAgdGFibGUgdGQucHJpY2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLm9wZW5pbmctc3RyaXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaGVyb19iZy5qcGdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDQ1cHg7XG4gIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB6LWluZGV4OiAxOyB9XG4gIC5vcGVuaW5nLXN0cmlwOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMHB4O1xuICAgIGxlZnQ6IDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMSwgMTEsIDExLCAwLjc1KTtcbiAgICB6LWluZGV4OiA1OyB9XG4gIC5vcGVuaW5nLXN0cmlwIC5vcGVuaW5nLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDsgfVxuICAgIC5vcGVuaW5nLXN0cmlwIC5vcGVuaW5nLWNvbnRlbnQgaDIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMHB4OyB9XG4gICAgLm9wZW5pbmctc3RyaXAgLm9wZW5pbmctY29udGVudCAuc3ViLWhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAub3BlbmluZy1zdHJpcCAub3BlbmluZy1jb250ZW50IC5zdWItaGVhZGluZyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07IH0gfVxuICAub3BlbmluZy1zdHJpcCAub3BlbmluZy1ob3VycyAuY29sdW1uLWRheSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDI1cHggMTBweCA0NXB4IDEwcHg7XG4gICAgYm9yZGVyOiAzcHggc29saWQgd2hpdGU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgLm9wZW5pbmctc3RyaXAgLm9wZW5pbmctaG91cnMgLmNvbHVtbi1kYXkge1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDEwcHg7XG4gICAgICAgIG1hcmdpbjogMTJweCAwcHg7IH0gfVxuICAgIC5vcGVuaW5nLXN0cmlwIC5vcGVuaW5nLWhvdXJzIC5jb2x1bW4tZGF5IGg2IHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAub3BlbmluZy1zdHJpcCAub3BlbmluZy1ob3VycyAuY29sdW1uLWRheSAub3BlbmluZy1mcm9tLFxuICAgIC5vcGVuaW5nLXN0cmlwIC5vcGVuaW5nLWhvdXJzIC5jb2x1bW4tZGF5IC5vcGVuaW5nLXRvIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogI2MxOTkzOTtcbiAgICAgIG1hcmdpbjogMHB4IGF1dG87IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5vcGVuaW5nLXN0cmlwIC5vcGVuaW5nLWhvdXJzIC5jb2x1bW4tZGF5IC5vcGVuaW5nLWZyb20sXG4gICAgICAgIC5vcGVuaW5nLXN0cmlwIC5vcGVuaW5nLWhvdXJzIC5jb2x1bW4tZGF5IC5vcGVuaW5nLXRvIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAgIC5vcGVuaW5nLXN0cmlwIC5vcGVuaW5nLWhvdXJzIC5jb2x1bW4tZGF5IC5vcGVuaW5nLWZyb206OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICctJztcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5vcGVuaW5nLXN0cmlwIC5vcGVuaW5nLWhvdXJzIC5jb2x1bW4tZGF5IC5vcGVuaW5nLWZyb206OmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmdhbGxlcnktc3RyaXAge1xuICB3aWR0aDogMTAwJTsgfVxuICAuZ2FsbGVyeS1zdHJpcCAuZ2FsbGVyeS1jYXJvdXNlbCAuZ2FsbGVyeS1pdGVtIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ2FsbGVyeS1zdHJpcCAuZ2FsbGVyeS1jYXJvdXNlbCAuc2xpY2stYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7IH1cbiAgICAuZ2FsbGVyeS1zdHJpcCAuZ2FsbGVyeS1jYXJvdXNlbCAuc2xpY2stYXJyb3c6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbmZvbnRcIjtcbiAgICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAuZ2FsbGVyeS1zdHJpcCAuZ2FsbGVyeS1jYXJvdXNlbCAuc2xpY2stYXJyb3c6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5nYWxsZXJ5LXN0cmlwIC5nYWxsZXJ5LWNhcm91c2VsIC5zbGljay1hcnJvdy5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICB6LWluZGV4OiAxMDsgfVxuICAgICAgLmdhbGxlcnktc3RyaXAgLmdhbGxlcnktY2Fyb3VzZWwgLnNsaWNrLWFycm93LnNsaWNrLXByZXY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxlOTAyJzsgfVxuICAgIC5nYWxsZXJ5LXN0cmlwIC5nYWxsZXJ5LWNhcm91c2VsIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAxNXB4OyB9XG4gICAgICAuZ2FsbGVyeS1zdHJpcCAuZ2FsbGVyeS1jYXJvdXNlbCAuc2xpY2stYXJyb3cuc2xpY2stbmV4dDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGU5MDMnOyB9XG5cbi5tYXAtc3RyaXAgLm1hcC1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzODBweDsgfVxuXG4uYXBwLWZvb3RlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQxYzFjO1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmctdG9wOiAzNXB4OyB9XG4gIC5hcHAtZm9vdGVyIC5zb2NpYWwtbWVkaWEge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgbWFyZ2luOiAwcHg7IH1cbiAgICAuYXBwLWZvb3RlciAuc29jaWFsLW1lZGlhIGxpIGEge1xuICAgICAgY29sb3I6IHdoaXRlOyB9XG4gIC5hcHAtZm9vdGVyIC5hcHAtYWRkcmVzcyB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNmVtOyB9XG4gIC5hcHAtZm9vdGVyIC5jb250YWN0LWluZm8sXG4gIC5hcHAtZm9vdGVyIC5zb2NpYWwtbWVkaWEge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjZlbTtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAuYXBwLWZvb3RlciAuY29udGFjdC1pbmZvIC5jb250YWN0LW1haWwsXG4gICAgLmFwcC1mb290ZXIgLmNvbnRhY3QtaW5mbyAuY29udGFjdC1waG9uZSxcbiAgICAuYXBwLWZvb3RlciAuc29jaWFsLW1lZGlhIC5jb250YWN0LW1haWwsXG4gICAgLmFwcC1mb290ZXIgLnNvY2lhbC1tZWRpYSAuY29udGFjdC1waG9uZSB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuYXBwLWZvb3RlciAuY29weXJpZ2h0LWZvb3RlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjRlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzJiMjkyOTtcbiAgICBtYXJnaW4tdG9wOiAyNXB4OyB9XG4gICAgLmFwcC1mb290ZXIgLmNvcHlyaWdodC1mb290ZXIgLmF1dGhvciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMHB4OyB9XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIHZlcnkgYmFzaWMgc3R5bGVzLlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyoqXG4gKiBTZXQgdXAgYSBkZWNlbnQgYm94IG1vZGVsIG9uIHRoZSByb290IGVsZW1lbnRcbiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0IEJhc2Ugc3R5bGVzOiBvcGluaW9uYXRlZCBkZWZhdWx0c1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuaHRtbCB7XG5cdEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG5cdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplO1xufVxuXG5ib2R5IHtcblx0Zm9udC1mYW1pbHk6ICR0ZXh0LWZvbnQ7XG5cdGZvbnQtc2l6ZTogMTZweDtcblx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdHBhZGRpbmc6IDBweDtcblx0bWFyZ2luOiAwcHg7XG59XG5cbi8qKlxuICogTWFrZSBhbGwgZWxlbWVudHMgZnJvbSB0aGUgRE9NIGluaGVyaXQgZnJvbSB0aGUgcGFyZW50IGJveC1zaXppbmdcbiAqIFNpbmNlIGAqYCBoYXMgYSBzcGVjaWZpY2l0eSBvZiAwLCBpdCBkb2VzIG5vdCBvdmVycmlkZSB0aGUgYGh0bWxgIHZhbHVlXG4gKiBtYWtpbmcgYWxsIGVsZW1lbnRzIGluaGVyaXRpbmcgZnJvbSB0aGUgcm9vdCBib3gtc2l6aW5nIHZhbHVlXG4gKiBTZWU6IGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlL1xuICovXG4qLCAqOjpiZWZvcmUsICo6OmFmdGVyIHtcblx0QGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn0gXG5cbi8qKlxuICogQmFzaWMgc3R5bGVzIGZvciBsaW5rc1xuICovXG5hIHtcblx0Y29sb3I6ICRkYXJrLWdyZXk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHQmOmZvY3VzIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdH1cbn0iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBhcHBsaWNhdGlvbi13aWRlIFNhc3MgbWl4aW5zLlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLy8gTWl4aW4gaGVscGVyIHRvIG91dHB1dCB2ZW5kb3ItcHJlZml4ZWQgQ1NTXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGF1dGhvciBIdWdvR2lyYXVkZWxcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByb3BlcnR5IC0gVW5wcmVmaXhlZCBDU1MgcHJvcGVydHlcbi8vLyBAcGFyYW0geyp9ICR2YWx1ZSAtIFJhdyBDU1MgdmFsdWVcbi8vLyBAcGFyYW0ge0xpc3R9ICRwcmVmaXhlcyBbKCldIC0gTGlzdCBvZiBwcmVmaXhlcyB0byBvdXRwdXRcbkBtaXhpbiBwcmVmaXgoJHByb3BlcnR5LCAkdmFsdWUsICRwcmVmaXhlczogKCkpIHtcbiAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXMge1xuICAgIC0jeyRwcmVmaXh9LSN7JHByb3BlcnR5fTogJHZhbHVlO1xuICB9XG5cbiAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG59XG5cblxuLy8vIE1peGluIGhlbHBlciB0byBwcmVmaXggYEBrZXlmcmFtZXNgXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gQW5pbWF0aW9uIG5hbWVcbkBtaXhpbiBrZXlmcmFtZXMoJG5hbWUpIHtcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5cbi8vLyBGdW5jdGlvbiBoZWxwZXIgdG8gc3RyaXAgYSBzaW5nbGUgY2hhcmFjdGVyIGZyb20gYSBzdHJpbmc7IGJ5IGRlZmF1bHQsIHNpbXBseSByZW1vdmVzIHRoZSBjaGFyYWN0ZXIuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBUaGUgc3RyaW5nIHRvIGFsdGVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdG8tcmVwbGFjZSAtIFRoZSBjaGFyYWN0ZXIgdG8gY2hlY2sgZm9yLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZW1lbnQgWycnXSAtIFRoZSBjaGFyYWN0ZXIgdG8gcmVwbGFjZSB0aGUgcmVtb3ZlZCBjaGFyYWN0ZXIgd2l0aC5cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Uge1xuLy8vICAgLmZvbzphZnRlciB7XG4vLy8gICAgIGNvbnRlbnQ6IHN0ci1yZXBsYWNlKCdIZWxsby4nLCAnLicsICchJyk7XG4vLy8gICB9XG4vLy8gQGV4YW1wbGUgY3NzIC0gUmVzdWx0XG4vLy8gICAuZm9vOmFmdGVyIHtcbi8vLyAgICAgY29udGVudDogJ0hlbGxvISdcbi8vLyAgIH1cbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkdG8tcmVwbGFjZSwgJHJlcGxhY2VtZW50OicnKSB7XG4gICR0YXJnZXQtbG9jYXRpb246IHN0ci1pbmRleCgkc3RyaW5nLCAkdG8tcmVwbGFjZSk7XG4gIEBpZiAkdGFyZ2V0LWxvY2F0aW9uID09IG51bGwgeyBAcmV0dXJuICRzdHJpbmc7IH1cbiAgJHN0cmluZy13aXRob3V0LXRhcmdldDogc3RyLXNsaWNlKCRzdHJpbmcsIDEsICR0YXJnZXQtbG9jYXRpb24gLSAxKSArIHN0ci1zbGljZSgkc3RyaW5nLCAkdGFyZ2V0LWxvY2F0aW9uICsgMSk7XG4gICRzdHJpbmc6IHN0ci1pbnNlcnQoJHN0cmluZy13aXRob3V0LXRhcmdldCwgJHJlcGxhY2VtZW50LCAkdGFyZ2V0LWxvY2F0aW9uKTtcbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG5cbi8vLyBCYWNrZ3JvdW5kIGdyYWRpZW50IGhlbHBlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHN0YXJ0LWNvbG9yIC0gU3RhcnQgY29sb3Jcbi8vLyBAcGFyYW0ge0NvbG9yfSAkZW5kLWNvbG9yIC0gRW5kIGNvbG9yXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcmllbnRhdGlvbiAtIFR5cGUgb2YgZ3JhZGllbnQsIGVpdGhlciBgdmVydGljYWxgLCBgaG9yaXpvbnRhbGAgb3IgYHJhZGlhbGBcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWdyYWRpZW50KHJlZCwgYmxhY2ssICd2ZXJ0aWNhbCcpO1xuLy8vICAgfVxuLy8vIEBleGFtcGxlIGNzcyAtIFJlc3VsdFxuLy8vICAgLmZvbyB7XG4vLy8gICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmVkLCBibGFjayk7XG4vLy8gICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJlZCwgYmxhY2spO1xuLy8vICAgfVxuQG1peGluIGJhY2tncm91bmQtZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yLCAkb3JpZW50YXRpb24pIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3RhcnQtY29sb3I7XG5cbiAgICBAaWYgJG9yaWVudGF0aW9uID09ICd2ZXJ0aWNhbCcge1xuICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgICB9IEBlbHNlIGlmICRvcmllbnRhdGlvbiA9PSAnaG9yaXpvbnRhbCcge1xuICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNlbnRlciwgZWxsaXBzZSBjb3ZlciwgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGNlbnRlciwgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgICB9XG59XG5cblxuLy8vIEJhY2tncm91bmQgc2l6ZSBoZWxwZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7TGVuZ3RofSAkd2lkdGggLSBCYWNrZ3JvdW5kIHdpZHRoXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRoZWlnaHQgWyR3aWR0aF0gLSBCYWNrZ3JvdW5kIGhlaWdodFxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmZvbyB7XG4vLy8gICAgIEBpbmNsdWRlIGJhY2tncm91bmQtc2l6ZSgxMDAlKTtcbi8vLyAgIH1cbi8vLyBAZXhhbXBsZSBzY3NzIC0gUmVzdWx0XG4vLy8gICAuZm9vIHtcbi8vLyAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbi8vLyAgICAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbi8vLyAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4vLy8gICB9XG5AbWl4aW4gYmFja2dyb3VuZC1zaXplKCR3aWR0aCwgJGhlaWdodDogJHdpZHRoKSB7XG4gICAgQGluY2x1ZGUgcHJlZml4KGJhY2tncm91bmQtc2l6ZSwgJHdpZHRoICRoZWlnaHQsICd3ZWJraXQnICdtb3onKTtcbn1cblxuXG4vLy8gU2VwYXJhdGVkIGJvcmRlci1yYWRpdXMgaGVscGVyc1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICR0b3AtbGVmdC1yYWRpdXMgLSBUb3AgbGVmdCByYWRpdXNcbi8vLyBAcGFyYW0ge0xlbmd0aH0gJHRvcC1yaWdodC1yYWRpdXMgLSBUb3AgcmlnaHQgcmFkaXVzXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRib3R0b20tcmlnaHQtcmFkaXVzIC0gQm90dG9tIHJpZ2h0IHJhZGl1c1xuLy8vIEBwYXJhbSB7TGVuZ3RofSAkYm90dG9tLWxlZnQtcmFkaXVzIC0gQm90dG9tIGxlZnQgcmFkaXVzXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cy1zZXBhcmF0ZSgxcHgsIDJweCwgM3B4LCA0cHgpO1xuLy8vICAgfVxuLy8vIEBleGFtcGxlIGNzcyAtIFJlc3VsdFxuLy8vICAgLmZvbyB7XG4vLy8gICAgIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMXB4O1xuLy8vICAgICAtbW96LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDFweDtcbi8vLyAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMXB4O1xuLy8vICAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7XG4vLy8gICAgIC1tb3otYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbi8vLyAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbi8vLyAgICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4O1xuLy8vICAgICAtbW96LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzcHg7XG4vLy8gICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzcHg7XG4vLy8gICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuLy8vICAgICAtbW96LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcbi8vLyAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuLy8vICAgfVxuQG1peGluIGJvcmRlci1yYWRpdXMtc2VwYXJhdGUoJHRvcC1sZWZ0LXJhZGl1cywgJHRvcC1yaWdodC1yYWRpdXMsICRib3R0b20tcmlnaHQtcmFkaXVzLCAkYm90dG9tLWxlZnQtcmFkaXVzKSB7XG4gICAgQGluY2x1ZGUgcHJlZml4KGJvcmRlci10b3AtbGVmdC1yYWRpdXMsICR0b3AtbGVmdC1yYWRpdXMsICd3ZWJraXQnICdtb3onKTtcbiAgICBAaW5jbHVkZSBwcmVmaXgoYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMsICR0b3AtcmlnaHQtcmFkaXVzLCAnd2Via2l0JyAnbW96Jyk7XG4gICAgQGluY2x1ZGUgcHJlZml4KGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzLCAkYm90dG9tLXJpZ2h0LXJhZGl1cywgJ3dlYmtpdCcgJ21veicpO1xuICAgIEBpbmNsdWRlIHByZWZpeChib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzLCAkYm90dG9tLWxlZnQtcmFkaXVzLCAnd2Via2l0JyAnbW96Jyk7XG59XG5cblxuLy8vIEJveC1zaXppbmcgaGVscGVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHR5cGUgLSBFaXRoZXIgYGJvcmRlci1ib3hgLCBgcGFkZGluZy1ib3hgIG9yIGBjb250ZW50LWJveGBcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuLy8vICAgfVxuLy8vIEBleGFtcGxlIGNzcyAtIFJlc3VsdFxuLy8vICAgLmZvbyB7XG4vLy8gICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbi8vLyAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbi8vLyAgIH1cbkBtaXhpbiBib3gtc2l6aW5nKCR0eXBlKSB7XG4gICAgQGluY2x1ZGUgcHJlZml4KGJveC1zaXppbmcsICR0eXBlLCAnbW96Jyk7XG59XG5cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIGJsb2NrIGVsZW1lbnRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBAaW5jbHVkZSBjZW50ZXItYmxvY2s7XG4vLy8gICB9XG4vLy8gQGV4YW1wbGUgY3NzIC0gUmVzdWx0XG4vLy8gICAuZm9vIHtcbi8vLyAgICAgZGlzcGxheTogYmxvY2s7XG4vLy8gICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4vLy8gICB9XG5AbWl4aW4gY2VudGVyLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cblxuLy8vIEhvcml6b250YWxseSBhbmQgdmVydGljYWxseSBjZW50ZXJzIGJsb2NrIGVsZW1lbnRzXG4vLy8gSW1wb3J0YW50OiB5b3UgbXVzdCBoYXZlIGEgcGFyZW50IGVsZW1lbnQgd2l0aCBgcG9zaXRpb246IHJlbGF0aXZlYC5cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmZvbyB7XG4vLy8gICAgIEBpbmNsdWRlIGNlbnRlci1ib3RoO1xuLy8vICAgfVxuLy8vIEBleGFtcGxlIGNzcyAtIFJlc3VsdFxuLy8vICAgLmZvbyB7XG4vLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vLyAgICAgdG9wOiA1MCU7XG4vLy8gICAgIGxlZnQ6IDUwJTtcbi8vLyAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbi8vLyAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuLy8vICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbi8vLyAgIH1cbkBtaXhpbiBjZW50ZXItYm90aCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBAaW5jbHVkZSBwcmVmaXgodHJhbnNmb3JtLCB0cmFuc2xhdGUoLTUwJSwgLTUwJSksICd3ZWJraXQnICdtcycpO1xufVxuXG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgYmxvY2sgZWxlbWVudHMgd2l0aCBrbm93biBoZWlnaHQuXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGhlaWdodCAtIEVsZW1lbnQncyBoZWlnaHRcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBAaW5jbHVkZSBjZW50ZXItaCg0MnB4KTtcbi8vLyAgIH1cbi8vLyBAZXhhbXBsZSBjc3MgLSBSZXN1bHRcbi8vLyAgIC5mb28ge1xuLy8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLy8gICAgIHRvcDogNTAlO1xuLy8vICAgICBoZWlnaHQ6IDQycHg7XG4vLy8gICAgIG1hcmdpbi10b3A6IC0yMXB4O1xuLy8vICAgfVxuQG1peGluIGNlbnRlci1oKCRoZWlnaHQpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6IC0oJGhlaWdodCAvIDIpO1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIGJsb2NrIGVsZW1lbnRzIHdpdGggdW5rbm93biBoZWlnaHQuXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBAaW5jbHVkZSBjZW50ZXItaC0tdW5rO1xuLy8vICAgfVxuLy8vIEBleGFtcGxlIGNzcyAtIFJlc3VsdFxuLy8vICAgLmZvbyB7XG4vLy8gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vLyAgICAgdG9wOiA1MCU7XG4vLy8gICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuLy8vICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuLy8vICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4vLy8gICB9XG5AbWl4aW4gY2VudGVyLWgtLXVuayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogNTAlO1xuICAgIEBpbmNsdWRlIHByZWZpeCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLTUwJSksICd3ZWJraXQnICdtcycpO1xufVxuXG5cbi8vLyBDbGVhcmZpeCBleHRlbmRcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmZvbyB7XG4vLy8gICAgIEBleHRlbmQgJWNsZWFyZml4O1xuLy8vICAgfVxuJWNsZWFyZml4IHtcbiAgICAqem9vbTogMTtcblxuICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxufVxuXG5cbi8vLyBBZGRzIGEgdGhpbiBibGFjayBsaW5lIGFib3ZlIHRoZSBlbGVtZW50LCBhbmQgYSB0aGluIGdyYXkgbGluZSBiZWxvdyB0aGUgZWxlbWVudCwgY3JlYXRpbmcgYW4gaW5sYXkgZWZmZWN0LlxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgQGluY2x1ZGUgb3V0bGluZTtcbi8vLyAgIH1cbi8vLyBAZXhhbXBsZSBjc3MgLSBSZXN1bHRcbi8vLyAgIC5mb28ge1xuLy8vICAgICBib3gtc2hhZG93OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCAxcHggMCwgaW5zZXQgcmdiYSgwLCAwLCAwLCAwLjc1KSAwIDFweCAwO1xuLy8vICAgfVxuQG1peGluIG91dGxpbmUge1xuICAgIGJveC1zaGFkb3c6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwIDFweCAwLCBpbnNldCByZ2JhKDAsIDAsIDAsIDAuNzUpIDAgMXB4IDA7XG59XG5cblxuLy8vIEdpdmVuIHRoZSBsb2NhdGlvbiBvZiBhIHdlYmZvbnQsIHdpbGwgZ2VuZXJhdGUgYSBmb250LWZhY2UgZGVjbGFyYXRpb24gd2l0aCBtdWx0aXBsZSBmaWxlIGZvcm1hdHMuXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGZvbnQtbmFtZSAtIEZvbnQgZmFtaWx5IG5hbWVcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGZpbGUtbmFtZSAtIEZpbGUgbmFtZSAobm8gZXh0ZW5zaW9uKVxuLy8vIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkd2VpZ2h0IFtub3JtYWxdIC0gRm9udCB3ZWlnaHRcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHN0eWxlIFtub3JtYWxdIC0gRm9udCBzdHlsZVxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgQGluY2x1ZGUgZm9udC1mYWNlKCdnb3RoYW0nLCAnL2ZvbnRzL2dvdGhhbScpO1xuQG1peGluIGZvbnQtZmFjZSgkZm9udC1uYW1lLCAkZmlsZS1uYW1lLCAkd2VpZ2h0OiBub3JtYWwsICRzdHlsZTogbm9ybWFsKSB7XG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBxdW90ZSgkZm9udC1uYW1lKTtcbiAgICBzcmM6IHVybCgkZmlsZS1uYW1lICsgJy5lb3QnKTtcbiAgICBzcmM6IHVybCgkZmlsZS1uYW1lICsgJy5lb3Q/I2llZml4JykgIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgIHVybCgkZmlsZS1uYW1lICsgJy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgICB1cmwoJGZpbGUtbmFtZSArICcudHRmJykgIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgIHVybCgkZmlsZS1uYW1lICsgJy5zdmcjI3skZm9udC1uYW1lfScpICBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xuICAgIGZvbnQtc3R5bGU6ICRzdHlsZTtcbiAgfVxufVxuXG5cbi8vLyBHaXZlbiBhIGZvbnQgc2l6ZSBpbiBwaXhlbHMsIHJlcHJvZHVjZXMgdGhhdCBmb250IHNpemUgaW4gcmVtcy5cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7TGVuZ3RofSAkc2l6ZSAtIEZvbnQgc2l6ZVxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmZvbyB7XG4vLy8gICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNnB4KTtcbi8vLyAgIH1cbi8vLyBAZXhhbXBsZSBjc3MgLSBSZXN1bHRcbi8vLyAgIC5mb28ge1xuLy8vICAgICBmb250LXNpemU6IDE2cHg7XG4vLy8gICAgIGZvbnQtc2l6ZTogMXJlbTtcbi8vLyAgIH1cbkBtaXhpbiBmb250LXNpemUoJHNpemUpIHtcbiAgQGlmIHVuaXRsZXNzKCRzaXplKSB7XG4gICAgJHNpemU6ICRzaXplICogMXB4O1xuICB9XG5cbiAgZm9udC1zaXplOiAkc2l6ZTtcbiAgZm9udC1zaXplOiAoJHNpemUgLyAkYmFzZS1mb250LXNpemUpICogMXJlbTtcbn1cblxuXG4vLy8gRm9yY2VzIGJyb3dzZXJzIHRvIHVzZSBoYXJkd2FyZSBhY2NlbGVyYXRpb24gZm9yIHRyYW5zZm9ybXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmZvbyB7XG4vLy8gICAgIEBpbmNsdWRlIGhhO1xuLy8vICAgfVxuLy8vIEBleGFtcGxlIGNzcyAtIFJlc3VsdFxuLy8vICAgLmZvbyB7XG4vLy8gICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbi8vLyAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuLy8vICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuLy8vICAgfVxuQG1peGluIGhhIHtcbiAgICBAaW5jbHVkZSBwcmVmaXgodHJhbnNmb3JtLCB0cmFuc2xhdGUzZCgwLCAwLCAwKSwgJ3dlYmtpdCcgJ21zJyk7XG59XG5cblxuLy8vIFJldGluYSBpbWFnZSBtZWRpYSBxdWVyeSBoZWxwZXI7IGdpdmVuIGFuIGltYWdlIHBhdGggd2l0aCBhIDJ4LXNpemVkIHZlcnNpb24gb2YgYW4gaW1hZ2UsIHdpbGwgbG9hZCB0aGF0IGltYWdlIGFzIGEgYmFja2dyb3VuZC1pbWFnZSBvbiBoaWdoLXJlc29sdXRpb24gZGV2aWNlcy5cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkaW1hZ2UgLSBJbWFnZSBwYXRoXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICR3aWR0aCAtIEltYWdlIHdpZHRoXG4vLy8gQHBhcmFtIHtIZWlnaHR9ICRoZWlnaHQgLSBJbWFnZSBoZWlnaHRcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBAaW5jbHVkZSBpbWFnZS0yeCgnLi4vaW1hZ2VzL2ltYWdlLnBuZycsIDEwMCUsIGF1dG8pO1xuLy8vICAgfVxuQG1peGluIGltYWdlLTJ4KCRpbWFnZSwgJHdpZHRoLCAkaGVpZ2h0KSB7XG4gICAgQG1lZGlhICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMyksXG4gICAgICAgICAgIChtaW4tcmVzb2x1dGlvbjogMTI0ZHBpKSxcbiAgICAgICAgICAgKG1pbi1yZXNvbHV0aW9uOiAxLjNkcHB4KSB7XG4gICAgICAgIC8qIG9uIHJldGluYSwgdXNlIGltYWdlIHRoYXQncyBzY2FsZWQgYnkgMiAqL1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGggJGhlaWdodDtcbiAgICB9XG59XG5cblxuLy8vIEdlbmVyYXRlcyBsaW5lLWhlaWdodCB2YWx1ZXMgaW4gYm90aCBwaXhlbHMgYW5kIHJlbXMuXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodC12YWx1ZSBbMTJdIC0gSGVpZ2h0IHZhbHVlXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgQGluY2x1ZGUgbGluZS1oZWlnaHQoMTYpO1xuLy8vICAgfVxuLy8vIEBleGFtcGxlIGNzcyAtIFJlc3VsdFxuLy8vICAgLmZvbyB7XG4vLy8gICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuLy8vICAgICBsaW5lLWhlaWdodDogMXJlbTtcbi8vLyAgIH1cbkBtaXhpbiBsaW5lLWhlaWdodCgkaGVpZ2h0LXZhbHVlOiAxMikge1xuICAgIGxpbmUtaGVpZ2h0OiAkaGVpZ2h0LXZhbHVlICogMXB4OyAvL2ZhbGxiYWNrIGZvciBvbGQgYnJvd3NlcnNcbiAgICBsaW5lLWhlaWdodDogKDEgLyAoJGJhc2UtZm9udC1zaXplIC8gKCRiYXNlLWZvbnQtc2l6ZSAqIDAgKyAxKSkgKiAkaGVpZ2h0LXZhbHVlICogMXJlbSk7XG59XG5cblxuLy8vIE1lZGlhIHF1ZXJ5IGhlbHBlciBmb3IgZGVjbGFyaW5nIG1lZGlhIHF1ZXJpZXMgYnkgd2lkdGgsIGFuZCwgb3B0aW9uYWxseSwgcmF0aW8uXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge0xlbmd0aH0gJHdpZHRoIC0gTWF4LXdpZHRoXG4vLy8gQHBhcmFtIHtOdW1iZXIgfCBGYWxzZX0gJHJhdGlvIFtmYWxzZV0gLSBNaW4gZGV2aWNlIHBpeGVsIHJhdGlvXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgQGluY2x1ZGUgbXF1ZXJ5KDM1MHB4LCAyKSB7XG4vLy8gICAgICAgd2lkdGg6IDEwMCU7XG4vLy8gICAgIH1cbi8vLyAgIH1cbkBtaXhpbiBtcXVlcnkoJHdpZHRoLCAkcmF0aW86IGZhbHNlKSB7XG4gICAgQGlmICRyYXRpbyB7XG4gICAgICAgIEBtZWRpYVxuICAgICAgICAgICAgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR3aWR0aCkgYW5kICAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAkcmF0aW8pLFxuICAgICAgICAgICAgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR3aWR0aCkgYW5kICAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAkcmF0aW8pLFxuICAgICAgICAgICAgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR3aWR0aCkgYW5kICAobWluLWRldmljZS1waXhlbC1yYXRpbzogJHJhdGlvKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR3aWR0aCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy8vIE1lZGlhIHF1ZXJ5IGhlbHBlciBmb3IgZGVjbGFyaW5nIG1lZGlhIHF1ZXJpZXMgYnkgZGV2aWNlIHBpeGVsIHJhdGlvLlxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRyYXRpbyAtIE1pbiBkZXZpY2UgcGl4ZWwgcmF0aW9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBAaW5jbHVkZSBtcXVlcnktcigyKSB7XG4vLy8gICAgICAgd2lkdGg6IDEwMCU7XG4vLy8gICAgIH1cbi8vLyAgIH1cbkBtaXhpbiBtcXVlcnktcigkcmF0aW8pIHtcbiAgICBAbWVkaWFcbiAgICAgICAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86ICRyYXRpbyksXG4gICAgICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAkcmF0aW8pLFxuICAgICAgICBvbmx5IHNjcmVlbiBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86ICRyYXRpbyksXG4gICAgICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogJHJhdGlvKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuXG4vLy8gR2l2ZW4gYW4gb3BhY2l0eSB2YWx1ZSwgZ2VuZXJhdGVzIHRoYXQgdmFsdWUgYXMgd2VsbCBhcyBhIHdheSB0byBkaXNwbGF5IHRoYXQgb3BhY2l0eSB2YWx1ZSBpbiBJbnRlcm5ldCBFeHBsb3JlciA4IGFuZCA5LlxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtGbG9hdH0gJG9wYWNpdHkgLSBPcGFjaXR5XG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjUpO1xuLy8vICAgfVxuLy8vIEBleGFtcGxlIGNzcyAtIFJlc3VsdFxuLy8vICAgLmZvbyB7XG4vLy8gICAgIG9wYWNpdHk6IDAuNTtcbi8vLyAgICAgZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PSM1MClcIjtcbi8vLyAgIH1cbkBtaXhpbiBvcGFjaXR5KCRvcGFjaXR5KSB7XG4gICAgb3BhY2l0eTogJG9wYWNpdHk7XG4gICAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0jeyRvcGFjaXR5ICogMTAwfSlcIjtcbn1cblxuXG4vLy8gR2VuZXJhdGVzIHRoZSBjb2xvciBibGFjaywgd2l0aCwgb3B0aW9uYWxseSwgYSBzZXQgb3BhY2l0eS5cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7RmxvYXR9ICRvcGFjaXR5IC0gT3BhY2l0eVxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmZvbyB7XG4vLy8gICAgIGJvcmRlci1jb2xvcjogYmxhY2soMC4xKTtcbi8vLyAgIH1cbi8vLyBAZXhhbXBsZSBjc3MgLSBSZXN1bHRcbi8vLyAgIC5mb28ge1xuLy8vICAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbi8vLyAgIH1cbkBmdW5jdGlvbiBibGFjaygkb3BhY2l0eSkge1xuICAgIEByZXR1cm4gcmdiYSgwLCAwLCAwLCAkb3BhY2l0eSk7XG59XG5cblxuLy8vIEdlbmVyYXRlcyB0aGUgY29sb3Igd2hpdGUsIHdpdGgsIG9wdGlvbmFsbHksIGEgc2V0IG9wYWNpdHkuXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge0Zsb2F0fSAkb3BhY2l0eSAtIE9wYWNpdHlcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBib3JkZXItY29sb3I6IHdoaXRlKDAuMSk7XG4vLy8gICB9XG4vLy8gQGV4YW1wbGUgY3NzIC0gUmVzdWx0XG4vLy8gICAuZm9vIHtcbi8vLyAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4vLy8gICB9XG5AZnVuY3Rpb24gd2hpdGUoJG9wYWNpdHkpIHtcbiAgICBAcmV0dXJuIHJnYmEoMjU1LCAyNTUsIDI1NSwgJG9wYWNpdHkpO1xufVxuXG5cbi8vLyBTaG9ydGhhbmRpemVzIHBvc2l0aW9uIGRlY2xhcmF0aW9ucy5cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdHlwZSAtIEVpdGhlciBgcmVsYXRpdmVgLCBgYWJzb2x1dGVgIG9yIGBmaXhlZGBcbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGxlZnQgW251bGxdIC0gTGVmdCBvZmZzZXRcbi8vLyBAcGFyYW0ge0xlbmd0aH0gJHJpZ2h0IFtudWxsXSAtIFJpZ2h0IG9mZnNldFxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkdG9wIFtudWxsXSAtIFRvcCBvZmZzZXRcbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGJvdHRvbSBbbnVsbF0gLSBCb3R0b20gb2Zmc2V0XG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsICR0b3A6IDEwcHgsICRsZWZ0OiAxMHB4KTtcbi8vLyAgIH1cbi8vLyBAZXhhbXBsZSBjc3MgLSBSZXN1bHRcbi8vLyAgIC5mb28ge1xuLy8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLy8gICAgIGxlZnQ6IDEwcHg7XG4vLy8gICAgIHRvcDogMTBweDtcbi8vLyAgIH1cbkBtaXhpbiBwb3NpdGlvbigkdHlwZSwgJHRvcDogbnVsbCwgJHJpZ2h0OiBudWxsLCAkYm90dG9tOiBudWxsLCAkbGVmdDogbnVsbCkge1xuICAgIHBvc2l0aW9uOiAkdHlwZTtcbiAgICB0b3A6ICR0b3A7XG4gICAgcmlnaHQ6ICRyaWdodDtcbiAgICBib3R0b206ICRib3R0b207XG4gICAgbGVmdDogJGxlZnQ7XG59XG5cblxuLy8vIFNpemluZyBoZWxwZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7TGVuZ3RofSAkd2lkdGggLSBXaWR0aFxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkaGVpZ2h0IFskd2lkdGhdIC0gSGVpZ2h0XG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgQGluY2x1ZGUgc2l6ZSgzNTBweCk7XG4vLy8gICB9XG4vLy8gQGV4YW1wbGUgY3NzIC0gUmVzdWx0XG4vLy8gICAuZm9vIHtcbi8vLyAgICAgd2lkdGg6IDM1MHB4O1xuLy8vICAgICBoZWlnaHQ6IDM1MHB4O1xuLy8vICAgfVxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIGhlaWdodDogJGhlaWdodDtcbn1cblxuXG4vLy8gRW1ib3NzaW5nIHRleHQgc2hhZG93XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge0Zsb2F0fSAkdmFsdWUgLSBPcGFjaXR5IHZhbHVlXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgQGluY2x1ZGUgdGV4dC1zaGFkb3coMC41KTtcbi8vLyAgIH1cbi8vLyBAZXhhbXBsZSBjc3MgLSBSZXN1bHRcbi8vLyAgIC5mb28ge1xuLy8vICAgICB0ZXh0LXNoYWRvdzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAgMXB4IDA7XG4vLy8gICB9XG5AbWl4aW4gdGV4dC1zaGFkb3coJHZhbHVlKSB7XG4gICAgdGV4dC1zaGFkb3c6IHJnYmEoMjU1LCAyNTUsIDI1NSwgJHZhbHVlKSAwIDFweCAwO1xufVxuXG5cbi8vLyBBdXRvbWF0aWNhbGx5IHByZWZpeCBhbnkgdHJhbnNmb3JtXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHRyYW5zZm9ybWF0aW9uIC0gVGhlIHRyYW5zZm9ybSB0byBhcHBseVxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmZvbyB7XG4vLy8gICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVYKDEwcHgpKTtcbi8vLyAgIH1cbi8vLyBAZXhhbXBsZSBjc3MgLSBSZXN1bHRcbi8vLyAgIC5mb28ge1xuLy8vICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbi8vLyAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbi8vLyAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuLy8vICAgfVxuQG1peGluIHRyYW5zZm9ybSgkdHJhbnNmb3JtYXRpb24pe1xuICBAaW5jbHVkZSBwcmVmaXgodHJhbnNmb3JtLCAkdHJhbnNmb3JtYXRpb24sICd3ZWJraXQnICdtcycpO1xufVxuXG5cbi8vLyBUcmFuc2l0aW9uIGhlbHBlclxuLy8vIEBwYXJhbSB7VGltZX0gJHRpbWUgWzFzXSAtIER1cmF0aW9uXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR0aW1pbmctZnVuY3Rpb24gW2Vhc2UtaW4tb3V0XSAtIFRpbWluZyBmdW5jdGlvbiBvciBjdWJpYyBiZXppZXIgY3VydmVcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MsIGVhc2UtaW4pO1xuLy8vICAgfVxuLy8vIEBleGFtcGxlIGNzcyAtIFJlc3VsdFxuLy8vICAgLmZvbyB7XG4vLy8gICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbjtcbi8vLyAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbjtcbi8vLyAgIH1cbkBtaXhpbiB0cmFuc2l0aW9uKCR0aW1lOiAxcywgJHRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQpIHtcbiAgICBAaW5jbHVkZSBwcmVmaXgodHJhbnNpdGlvbiwgYWxsICR0aW1lICR0aW1pbmctZnVuY3Rpb24sICd3ZWJraXQnKTtcbn1cblxuXG4vLy8gR2VuZXJhdGVzIGEgZ3Jvdy10aGVuLXNocmluayAob3Igc2hyaW5rLXRoZW4tZ3JvdykgYW5pbWF0aW9uIHVzaW5nIHRyYW5zZm9ybShzY2FsZSkuXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge051bWJlcn0gJHNjYWxlLWNoYW5nZSBbMS4xXSAtIFRoZSBhbW91bnQgdG8gc2NhbGUgYnkuXG4vLy8gQHBhcmFtIHtMaXN0fSAkYW5pbWF0aW9uLXByb3BlcnRpZXMgLSBBbmltYXRpb24gcHJvcGVydGllcyB0byBhcHBseS5cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBAaW5jbHVkZSBzY2FsZSgwLjUsIDNzIGVhc2UgaW5maW5pdGUgYWx0ZXJuYXRlKTtcbi8vLyAgIH1cbi8vLyBAZXhhbXBsZSBjc3MgLSBSZXN1bHRcbi8vLyAgIC5mb28ge1xuLy8vICAgICAtd2Via2l0LWFuaW1hdGlvbjogXCJzY2FsZS0wLTVcIiAzcyBlYXNlIGluZmluaXRlIGFsdGVybmF0ZTtcbi8vLyAgICAgYW5pbWF0aW9uOiBcInNjYWxlLTAtNVwiIDNzIGVhc2UgaW5maW5pdGUgYWx0ZXJuYXRlO1xuLy8vICAgfVxuLy8vICAvLyAtd2Via2l0LSBwcmVmaXhlZCBAa2V5ZnJhbWVzIGFyZSBhbHNvIGdlbmVyYXRlZFxuLy8vICBAa2V5ZnJhbWVzIHNjYWxlLTAtNSB7XG4vLy8gICAgZnJvbSwgdG8ge1xuLy8vICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuLy8vICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4vLy8gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuLy8vICAgIH1cbi8vLyAgICA1MCUge1xuLy8vICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4vLy8gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuLy8vICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuLy8vICAgIH1cbi8vLyAgfVxuQG1peGluIHNjYWxlKCRzY2FsZS1jaGFuZ2U6MS4xLCAkYW5pbWF0aW9uLXByb3BlcnRpZXM6IDFzIGVhc2UtaW4tb3V0KSB7XG4gICRhbGlhczogJ3NjYWxlLScgKyBzdHItcmVwbGFjZSgkc2NhbGUtY2hhbmdlICsgJycsICcuJywgJy0nKTtcblxuICBAaW5jbHVkZSBrZXlmcmFtZXMoJGFsaWFzKXtcbiAgICAwJSwgMTAwJSB7XG4gICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMSkpO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKCRzY2FsZS1jaGFuZ2UpKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBwcmVmaXgoYW5pbWF0aW9uLCAkYWxpYXMgJGFuaW1hdGlvbi1wcm9wZXJ0aWVzLCAnd2Via2l0Jyk7XG59XG5cblxuLy8vIEdpdmVuIHR3byBvcGFjaXR5IHZhbHVlcywgYW5pbWF0ZXMgYW4gZWxlbWVudCBiZXR3ZWVuIHRob3NlIG9wYWNpdHkgdmFsdWVzLlxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmYWRlLWZyb20gWzBdIC0gVGhlIGJlZ2lubmluZyBvcGFjaXR5IHZhbHVlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZmFkZS10byBbMV0gLSBUaGUgZmluYWwgb3BhY2l0eSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRhbmltYXRpb24tcHJvcGVydGllcyBbMXMgZWFzZV0gLSBUaGUgYW5pbWF0aW9uIHByb3BlcnRpZXMgdG8gYXBwbHkuXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgQGluY2x1ZGUgZmFkZSguOCwgLjIsIDNzIGxpbmVhcik7XG4vLy8gICB9XG4vLy8gQGV4YW1wbGUgY3NzIC0gUmVzdWx0XG4vLy8gICAuZm9vIHtcbi8vLyAgICAgLXdlYmtpdC1hbmltYXRpb246IGZhZGUtMC04LTAtMiAzcyBsaW5lYXI7XG4vLy8gICAgIGFuaW1hdGlvbjogZmFkZS0wLTgtMC0yIDNzIGxpbmVhcjtcbi8vLyAgIH1cbi8vLyAvLyAodGhlIEBrZXlmcmFtZXMgYXJlIGFsc28gZ2VuZXJhdGVkIHdpdGggYSAtd2Via2l0LSB2ZW5kb3IgcHJlZml4KVxuLy8vICAgQGtleWZyYW1lcyBmYWRlLTAtOC0wLTIge1xuLy8vICAgICBmcm9tIHtcbi8vLyAgICAgICBvcGFjaXR5OiAwLjg7XG4vLy8gICAgICAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT04MClcIjtcbi8vLyAgICAgfVxuLy8vICAgICB0byB7XG4vLy8gICAgICAgb3BhY2l0eTogMC4yO1xuLy8vICAgICAgIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MjApXCI7XG4vLy8gICAgIH1cbi8vLyAgIH1cbkBtaXhpbiBmYWRlKCRmYWRlLWZyb206IDAsICRmYWRlLXRvOiAxLCAkYW5pbWF0aW9uLXByb3BlcnRpZXM6IDFzIGVhc2UpIHtcbiAgICAkYWxpYXM6IGZhZGUtICsgc3RyLXJlcGxhY2UoJGZhZGUtZnJvbSArICcnLCAnLicsICctJykgKyAnLScgKyBzdHItcmVwbGFjZSgkZmFkZS10byArICcnLCAnLicsICctJyk7XG4gICAgQGluY2x1ZGUga2V5ZnJhbWVzKCRhbGlhcyl7XG4gICAgZnJvbSB7XG4gICAgICBAaW5jbHVkZSBvcGFjaXR5KCRmYWRlLWZyb20pO1xuICAgIH1cbiAgICB0byB7XG4gICAgICBAaW5jbHVkZSBvcGFjaXR5KCRmYWRlLXRvKTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcHJlZml4KGFuaW1hdGlvbiwgJGFsaWFzICRhbmltYXRpb24tcHJvcGVydGllcywgJ3dlYmtpdCcpO1xufVxuXG5cbi8vLyBTbGlkZS1pbi1mcm9tIGNyZWF0ZXMgYW5kIGNhbGxzIGFuIGFuaW1hdGlvbiB0aGF0IHNsaWRlcyBhbiBlbGVtZW50IG9uIGEgZ2l2ZW4gYXhpcyBmb3IgYSBnaXZlbiBhbW91bnQgb2Ygc3BhY2UuIFRoZSBvZmZzZXQgaXMgbWVhc3VyZWQgaW4gdGhlIGRpc3RhbmNlIGZyb20gdGhlIGxvY2F0aW9uIHRoZSBlbGVtZW50IHdvdWxkIG5hdHVyYWxseSBmYWxsIGluLCB3ZXJlIHRyYW5zZm9ybXMgbm90IGFwcGxpZWQgdG8gaXQuXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNsaWRlLWF4aXMgW3hdIC0gVGhlIGF4aXMgb24gd2hpY2ggdG8gc2xpZGU7ICd4JyBvciAneScuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRzbGlkZS1vZmZzZXQgWy0xMDBweF0gLSBUaGUgb2Zmc2V0IGZyb20gdGhlIG5hdHVyYWwgZWxlbWVudCBwb3NpdGlvbiBmcm9tIHdoaWNoIHRvIGJlZ2luIHRoZSBhbmltYXRpb24uXG4vLy8gQHBhcmFtIHtMaXN0fSAkYW5pbWF0aW9uLXByb3BlcnRpZXMgWzNzIGVhc2Utb3V0XSAtIEFueSBhbmltYXRpb24gcHJvcGVydGllcyB0byBiZSBpbmNsdWRlZC5cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBAaW5jbHVkZSBzbGlkZS1pbi1mcm9tKHksIC0yMDBweCwgM3MgZWFzZSBhbHRlcm5hdGUgaW5maW5pdGUpO1xuLy8vICAgfVxuLy8vIEBleGFtcGxlIGNzcyAtIFJlc3VsdFxuLy8vICAgLmZvbyB7XG4vLy8gICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzbGlkZS1pbi15LS0yMDBweCAzcyBsaW5lYXIgaW5maW5pdGUgYWx0ZXJuYXRlO1xuLy8vICAgICBhbmltYXRpb246IHNsaWRlLWluLXktLTIwMHB4IDNzIGxpbmVhciBpbmZpbml0ZSBhbHRlcm5hdGU7XG4vLy8gICB9XG4vLy9cbi8vLyAvLyAodGhlIEBrZXlmcmFtZXMgYXJlIGFsc28gZ2VuZXJhdGVkIHdpdGggYSAtd2Via2l0LSB2ZW5kb3IgcHJlZml4KVxuLy8vICAgQGtleWZyYW1lcyBzbGlkZS1pbi15LS0yMDBweCB7XG4vLy8gICAgIDAlIHtcbi8vLyAgICAgICBvcGFjaXR5OiAwO1xuLy8vICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDBweCk7XG4vLy8gICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwcHgpO1xuLy8vICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwcHgpO1xuLy8vICAgICB9XG4vLy8gICAgIDc1JSB7XG4vLy8gICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4vLy8gICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbi8vLyAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4vLy8gICAgIH1cbi8vLyAgICAgMTAwJSB7XG4vLy8gICAgICAgb3BhY2l0eTogMTtcbi8vLyAgICAgfVxuLy8vICAgfVxuQG1peGluIHNsaWRlLWluLWZyb20oJHNsaWRlLWF4aXM6IHgsICRzbGlkZS1vZmZzZXQ6IC0xMDBweCwgJGFuaW1hdGlvbi1wcm9wZXJ0aWVzOiAzcyBlYXNlLW91dCkge1xuICAkc2xpZGUtc3RhcnQ6IGlmKCRzbGlkZS1heGlzID09IHgsIHRyYW5zbGF0ZVgoJHNsaWRlLW9mZnNldCksIHRyYW5zbGF0ZVkoJHNsaWRlLW9mZnNldCkpO1xuICAkc2xpZGUtZW5kOiBpZigkc2xpZGUtYXhpcyA9PSB4LCB0cmFuc2xhdGVYKDApLCB0cmFuc2xhdGVZKDApKTtcblxuICBAaW5jbHVkZSBrZXlmcmFtZXMoc2xpZGUtaW4tI3skc2xpZGUtYXhpc30tI3skc2xpZGUtb2Zmc2V0fSl7XG4gICAgMCUge1xuICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSgkc2xpZGUtc3RhcnQpO1xuICAgIH1cbiAgICA3NSUge1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCRzbGlkZS1lbmQpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMSk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcHJlZml4KGFuaW1hdGlvbiwgc2xpZGUtaW4tI3skc2xpZGUtYXhpc30tI3skc2xpZGUtb2Zmc2V0fSAkYW5pbWF0aW9uLXByb3BlcnRpZXMsICd3ZWJraXQnKTtcbn0iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBhcHBsaWNhdGlvbi13aWRlIFNhc3MgdmFyaWFibGVzLlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8vIFJlZ3VsYXIgZm9udCBmYW1pbHlcbi8vLyBAdHlwZSBMaXN0XG4kdGV4dC1mb250OiAnUmFsZXdheScsIHNhbnMtc2VyaWY7XG5cbiRoZWFkaW5nLWZvbnQ6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7XG5cbiRpY29uLWZvbnQ6ICdpY29uZm9udCc7XG5cbi8vLyBCYXNlIGZvbnQgc2l6ZSBzZXR0aW5nIGZvciBBbmR5XG4vLy8gQHR5cGUgTGVuZ3RoXG4kYmFzZS1mb250LXNpemU6IDEwcHggIWRlZmF1bHQ7XG5cbi8vLyBDb3B5IHRleHQgY29sb3Jcbi8vLyBAdHlwZSBDb2xvclxuJHRleHQtY29sb3I6ICM1NDU1NTQgIWRlZmF1bHQ7XG5cbi8vLyBNYWluIGJyYW5kIGNvbG9yXG4vLy8gQHR5cGUgQ29sb3JcbiRicmFuZC1jb2xvcjogI2MxOTkzOSAhZGVmYXVsdDtcblxuXG4vLy8gTGlnaHQgZ3JleVxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JleTogIzlhOWE5YSAhZGVmYXVsdDtcblxuLy8vIERhcmsgZ3JleVxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmV5OiAjNGY0ZjRmICFkZWZhdWx0O1xuXG4vLy8gQ29udGFpbmVyJ3MgbWF4aW11bSB3aWR0aFxuLy8vIEB0eXBlIExlbmd0aFxuJG1heC13aWR0aDogMTE4MHB4ICFkZWZhdWx0O1xuXG5cblxuXG5cbi8vLyBCcmVha3BvaW50cyBtYXBcbi8vLyBAcHJvcCB7U3RyaW5nfSBrZXlzIC0gS2V5cyBhcmUgaWRlbnRpZmllcnMgbWFwcGVkIHRvIGEgZ2l2ZW4gbGVuZ3RoXG4vLy8gQHByb3Age01hcH0gdmFsdWVzIC0gVmFsdWVzIGFyZSBhY3R1YWwgYnJlYWtwb2ludHMgZXhwcmVzc2VkIGluIHBpeGVsc1xuLy8gJGJyZWFrcG9pbnRzOiAoXG4vLyAgICdzbWFsbCc6IDMyMHB4LFxuLy8gICAnbWVkaXVtJzogNzY4cHgsXG4vLyAgICdsYXJnZSc6IDEwMjRweFxuLy8gKSAhZGVmYXVsdDtcblxuXG5cblxuLy8vIFJlbGF0aXZlIG9yIGFic29sdXRlIFVSTCB3aGVyZSBhbGwgYXNzZXRzIGFyZSBzZXJ2ZWQgZnJvbVxuLy8vIEB0eXBlIFN0cmluZ1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaGVuIHVzaW5nIGEgQ0ROXG4vLy8gICAkYmFzZS11cmw6ICdodHRwOi8vY2RuLmV4YW1wbGUuY29tL2Fzc2V0cy8nO1xuJGJhc2UtdXJsOiAnL2Fzc2V0cy8nICFkZWZhdWx0O1xuXG5cbi8vIFNpZGViYXIgd2lkdGhcbiRzaWRlYmFyLWV4cGFuZGVkOiAyNDBweDtcbiRzaWRlYmFyLWNvbmRlbnNlZDogMTIwcHg7XG4kc2lkZWJhci1jb2xsYXBzZWQ6IDUwcHg7XG5cbiRib3hlZC1wYWRkaW5nOiA0MHB4O1xuXG4vLyBIZWFkZXIgaGVpZ2h0XG4kaGVhZGVyLWhlaWdodDogNjBweDtcblxuXG4vLyBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4kc2NyZWVuLXhzLW1pbjogICAgICAgICAgICAgNDgwcHg7XG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgNzY4cHg7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgOTkycHg7XG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgMTIwMHB4O1xuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpO1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICgkc2NyZWVuLW1kLW1pbiAtIDEpO1xuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpO1xuIiwiLyoqXG4gKiBCYXNpYyB0eXBvZ3JhcGh5IHN0eWxlIGZvciBjb3B5IHRleHRcbiAqL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcblx0Zm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XG5cdGZvbnQtd2VpZ2h0OiA5MDA7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0bGluZS1oZWlnaHQ6IDEuNWVtO1xuXHRsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuXHRjb2xvcjogJGJyYW5kLWNvbG9yO1xufVxuXG5oMSB7XG5cdGZvbnQtc2l6ZTogNC44cmVtO1xufVxuXG5oMiB7XG5cdGZvbnQtc2l6ZTogNHJlbTtcblxuXHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuXHRcdGZvbnQtc2l6ZTogMi40cmVtO1xuXHR9XG59XG5cbmgzIHtcblx0Zm9udC1zaXplOiAzLjZyZW07XG59XG5cbmg0IHtcblx0Zm9udC1zaXplOiAzcmVtO1xufVxuXG5oNSB7XG5cdGZvbnQtc2l6ZTogMi41cmVtO1xufVxuXG5oNiB7XG5cdGZvbnQtc2l6ZTogMnJlbTtcbn1cblxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoaXMgZmlsZSBjb250YWlucyBDU1MgaGVscGVyIGNsYXNzZXMuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKipcbiAqIENsZWFyIGlubmVyIGZsb2F0c1xuICovXG4uY2xlYXJmaXg6OmFmdGVyIHtcblx0Y2xlYXI6IGJvdGg7XG5cdGNvbnRlbnQ6ICcnO1xuXHRkaXNwbGF5OiB0YWJsZTtcbn1cblxuLyoqXG4gKiBNYWluIGNvbnRlbnQgY29udGFpbmVyc1xuICogMS4gTWFrZSB0aGUgY29udGFpbmVyIGZ1bGwtd2lkdGggd2l0aCBhIG1heGltdW0gd2lkdGhcbiAqIDIuIENlbnRlciBpdCBpbiB0aGUgdmlld3BvcnRcbiAqIDMuIExlYXZlIHNvbWUgc3BhY2Ugb24gdGhlIGVkZ2VzLCBlc3BlY2lhbGx5IHZhbHVhYmxlIG9uIHNtYWxsIHNjcmVlbnNcbiAqL1xuLmNvbnRhaW5lciB7XG5cdG1heC13aWR0aDogJG1heC13aWR0aDsgLyogMSAqL1xuXHRtYXJnaW4tbGVmdDogYXV0bzsgLyogMiAqL1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87IC8qIDIgKi9cblx0cGFkZGluZy1sZWZ0OiAyMHB4OyAvKiAzICovXG5cdHBhZGRpbmctcmlnaHQ6IDIwcHg7IC8qIDMgKi9cblx0d2lkdGg6IDEwMCU7IC8qIDEgKi9cbiB9XG5cbi8qKlxuICogSGlkZSB0ZXh0IHdoaWxlIG1ha2luZyBpdCByZWFkYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnNcbiAqIDEuIE5lZWRlZCBpbiBXZWJLaXQtYmFzZWQgYnJvd3NlcnMgYmVjYXVzZSBvZiBhbiBpbXBsZW1lbnRhdGlvbiBidWc7XG4gKiAgICBTZWU6IGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD00NTcxNDZcbiAqL1xuLmhpZGUtdGV4dCB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBhZGRpbmc6IDA7IC8qIDEgKi9cblx0dGV4dC1pbmRlbnQ6IDEwMSU7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qKlxuICogSGlkZSBlbGVtZW50IHdoaWxlIG1ha2luZyBpdCByZWFkYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnNcbiAqIFNoYW1lbGVzc2x5IGJvcnJvd2VkIGZyb20gSFRNTDVCb2lsZXJwbGF0ZTpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2Jsb2IvbWFzdGVyL3NyYy9jc3MvbWFpbi5jc3MjTDExOS1MMTMzXG4gKi9cbi52aXN1YWxseS1oaWRkZW4geyBcblx0Ym9yZGVyOiAwO1xuXHRjbGlwOiByZWN0KDAgMCAwIDApO1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luOiAtMXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdpZHRoOiAxcHg7XG59XG5cbi5zbS1oaWRkZW4ge1xuXG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi54cy1oaWRkZW4ge1xuXG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5cblxuLm1hci0wIHtcblx0bWFyZ2luOiAwcHggIWltcG9ydGFudDtcbn0iLCIuYXBwLW5hdiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogNTAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHR3aWR0aDogNDQlO1xyXG5cclxuXHQmLm5hdi1sZWZ0IHtcclxuXHRcdGxlZnQ6IDBweDtcclxuXHR9XHJcblxyXG5cdCYubmF2LXJpZ2h0IHtcclxuXHRcdHJpZ2h0OiAwcHg7XHJcblx0fVxyXG59XHJcblxyXG4ubmF2LWxpc3Qge1xyXG5cdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nLWxlZnQ6IDBweDtcclxuXHRtYXJnaW46IDBweDtcclxuXHJcblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHRsaSB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG5cdFx0YSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogMnJlbTtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDFlbTtcclxuXHRcdFx0Y29sb3I6IHdoaXRlO1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcztcclxuXHJcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxLjRyZW07XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdGNvbG9yOiAkYnJhbmQtY29sb3I7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSBmb3JtIGNvbXBvbmVudHMuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uZm9ybS13cmFwIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHJcblx0LmZvcm0tcm93IHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdH1cclxuXHJcblx0XHQuZm9ybS1jb2wge1xyXG5cdFx0XHQvLyBtaW4td2lkdGg6IDUwJTtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblxyXG5cdFx0XHQmOmZpcnN0LW9mLXR5cGUge1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHJcblx0XHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0JjpsYXN0LW9mLXR5cGUge1xyXG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG5cclxuXHRcdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6b25seS1jaGlsZCB7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDBweDtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDBweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ji5mb3JtLXN1Ym1pdCB7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0cCB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxLjNyZW07XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRcdFx0XHRmb250LXN0eWxlOiBub3JtYWw7XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuNmVtO1xyXG5cdFx0XHRcdGNvbG9yOiAjNTQ1NTU0O1xyXG5cdFx0XHRcdG1hcmdpbjogMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQucmVxdWlyZWQge1xyXG5cdFx0XHRcdGNvbG9yOiAjZTczOTM3O1xyXG5cdFx0XHR9XHJcblxyXG5cclxuXHRcdFx0Ji5jaGVja2JveC1jb2wge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0cGFkZGluZy10b3A6IDEwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGZvbnQtc2l6ZTogMS40cmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjRlbTtcclxuXHRjb2xvcjogJGJyYW5kLWNvbG9yO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHBhZGRpbmc6IDEwcHggMHB4IDEwcHggMTVweDtcclxuXHRib3JkZXI6IDJweCBzb2xpZCAjZWVlZWVlO1xyXG59XHJcblxyXG4uc2VsZWN0IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0Ym9yZGVyOiAycHggc29saWQgI2VlZWVlZTtcclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDUwJTtcclxuXHRcdHJpZ2h0OiAyMHB4O1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdFx0Y29udGVudDogJ1xcZjEwNyc7XHJcblx0XHRmb250LWZhbWlseTogJGljb24tZm9udDtcclxuXHRcdGZvbnQtc2l6ZTogMS42cmVtO1xyXG5cdFx0bGluZS1oZWlnaHQ6IDFlbTtcclxuXHRcdGNvbG9yOiAkbGlnaHQtZ3JleTtcclxuXHR9XHJcblxyXG5cdD4gc2VsZWN0IHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRmb250LWZhbWlseTogJHRleHQtZm9udDtcclxuXHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0XHRsaW5lLWhlaWdodDogMS40ZW07XHJcblx0XHRjb2xvcjogd2hpdGU7XHJcblx0XHRwYWRkaW5nOiAxMHB4IDBweCAxMHB4IDE1cHg7XHJcblx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHRvdXRsaW5lOiBub25lO1xyXG5cdFx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG5cdFx0LW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG5cdFx0YXBwZWFyYW5jZTogbm9uZTtcclxuXHRcdHotaW5kZXg6IDE7XHJcblxyXG5cdFx0PiBvcHRpb24ge1xyXG5cdFx0XHRjb2xvcjogd2hpdGU7XHJcblx0XHR9XHJcblxyXG5cdFx0Jjpmb2N1cyB7XHJcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdFx0Ym9yZGVyOiBub25lO1xyXG5cdFx0XHRvdXRsaW5lOiBub25lO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji5zZWxlY3QtZGVmYXVsdCB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRib3JkZXI6IG5vbmU7XHJcblxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdHJpZ2h0OiAwcHg7XHJcblx0XHRcdGNvbG9yOiAjNTQ1NTU0O1xyXG5cdFx0fVxyXG5cclxuXHRcdD4gc2VsZWN0IHtcclxuXHRcdFx0Y29sb3I6ICM1NDU1NTQ7XHJcblx0XHRcdHBhZGRpbmc6IDEwcHggMTVweCAxMHB4IDBweDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5jaGVja2JveCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAyMHB4O1xyXG5cdGhlaWdodDogMjBweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdG1hcmdpbi1yaWdodDogNXB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHJcblx0PiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwcHg7XHJcblx0XHRsZWZ0OiAwcHg7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdG91dGxpbmU6IG5vbmU7XHJcblx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdHotaW5kZXg6IDE7XHJcblx0fVxyXG5cclxuXHQ+IC5jaGVja2JveC1pbmRpY2F0b3Ige1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwcHg7XHJcblx0XHRsZWZ0OiAwcHg7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdGJvcmRlcjogMnB4IHNvbGlkICNlZWVlZWU7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcztcclxuXHJcblx0XHQmOjphZnRlciB7XHJcblx0XHRcdGNvbnRlbnQ6ICdcXGYwMGMnO1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XHJcblx0XHRcdGZvbnQtZmFtaWx5OiAkaWNvbi1mb250O1xyXG5cdFx0XHRmb250LXNpemU6IDEuNHJlbTtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDIwcHg7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0Y29sb3I6IHdoaXRlO1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRcdHotaW5kZXg6IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyIHtcclxuXHJcblx0XHQ+IC5jaGVja2JveC1pbmRpY2F0b3Ige1xyXG5cdFx0XHRib3JkZXItY29sb3I6ICRicmFuZC1jb2xvcjtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdD4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyAuY2hlY2tib3gtaW5kaWNhdG9yIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvcjtcclxuXHRcdGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC1jb2xvcjtcclxuXHJcblx0XHQmOjphZnRlciB7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblxyXG59XHJcblxyXG50ZXh0YXJlYSB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWluLWhlaWdodDogMTgwcHg7XHJcblx0Zm9udC1mYW1pbHk6ICR0ZXh0LWZvbnQ7XHJcblx0Zm9udC1zaXplOiAxLjRyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRmb250LXN0eWxlOiBub3JtYWw7XHJcblx0bGluZS1oZWlnaHQ6IDEuNGVtO1xyXG5cdGNvbG9yOiAkYnJhbmQtY29sb3I7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0cGFkZGluZzogMTBweCAwcHggMTBweCAxNXB4O1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkICNlZWVlZWU7XHJcblx0cmVzaXplOiBub25lO1xyXG59XHJcblxyXG5cclxubGFiZWwge1xyXG5cdGZvbnQtc2l6ZTogMS4zcmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjZlbTtcclxuXHRjb2xvcjogJHRleHQtY29sb3I7XHJcbn1cclxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoaXMgZmlsZSBjb250YWlucyBhbGwgc3R5bGVzIHJlbGF0ZWQgdG8gdGhlIGJ1dHRvbiBjb21wb25lbnQuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5idG4ge1xuXHR3aWR0aDogYXV0bztcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGZvbnQtc2l6ZTogMS40cmVtO1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG5cdGxpbmUtaGVpZ2h0OiAxZW07XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG5cdGNvbG9yOiAkYnJhbmQtY29sb3I7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cGFkZGluZzogMjBweCA0NXB4O1xuXHRib3JkZXItcmFkaXVzOiAzMHB4O1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcztcblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtY29sb3I7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHR9XG5cblx0Ji5idG4td2FybmluZyB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRicmFuZC1jb2xvciwgMC41NSk7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYnJhbmQtY29sb3IsIDEwJSk7XG5cdFx0fVxuXHR9XG5cblx0Ji5idG4tc3VjY2VzcyB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvcjtcblx0XHRib3JkZXI6IG5vbmU7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYnJhbmQtY29sb3IsIDEwJSk7XG5cdFx0fVxuXHR9XG5cblx0Ji5idG4tc3VibWl0IHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cbn0iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgaGVhZGVyIG9mIHRoZSBzaXRlL2FwcGxpY2F0aW9uLlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmNvbHVtbnMtd3JhcCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0bWFyZ2luLWxlZnQ6IC0xMHB4O1xuXHRtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuXG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLWxlZnQ6IDBweDtcblx0XHRtYXJnaW4tcmlnaHQ6IDBweDtcblx0fVxuXG5cdC5jb2x1bW4ge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHBhZGRpbmctbGVmdDogMTBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG5cdFx0Ji5jb2x1bW4tMjAge1xuXHRcdFx0bWF4LXdpZHRoOiAyMCU7XG5cdFx0XHRmbGV4OiBjYWxjKDEwMCUgLyA1KTtcblxuXHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0XHRcdFx0bWF4LXdpZHRoOiAzMyU7XG5cdFx0XHRcdGZsZXg6IGNhbGMoMTAwJSAvIDMpO1xuXHRcdFx0fVxuXG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDUwJTtcblx0XHRcdFx0ZmxleDogY2FsYygxMDAlIC8gMik7XG5cdFx0XHR9XG5cblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYuY29sdW1uLTI1IHtcblx0XHRcdG1heC13aWR0aDogMjUlO1xuXHRcdFx0ZmxleDogY2FsYygxMDAlIC8gNCk7XG5cblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0XHRcdG1heC13aWR0aDogMzMlO1xuXHRcdFx0XHRmbGV4OiBjYWxjKDEwMCUgLyAzKTtcblx0XHRcdH1cblxuXHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcblx0XHRcdFx0bWF4LXdpZHRoOiA1MCU7XG5cdFx0XHRcdGZsZXg6IGNhbGMoMTAwJSAvIDIpO1xuXHRcdFx0fVxuXG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLmNvbHVtbi0zMyB7XG5cdFx0XHRtYXgtd2lkdGg6IDMzJTtcblx0XHRcdGZsZXg6IGNhbGMoMTAwJSAvIDMpO1xuXG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDUwJTtcblx0XHRcdFx0ZmxleDogY2FsYygxMDAlIC8gMik7XG5cdFx0XHR9XG5cblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYuY29sdW1uLTUwIHtcblx0XHRcdG1heC13aWR0aDogNTAlO1xuXG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgaGVhZGVyIG9mIHRoZSBzaXRlL2FwcGxpY2F0aW9uLlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmFwcC1oZWFkZXIge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHRvcDogMHB4O1xuXHRsZWZ0OiAwcHg7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDE2MHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0dHJhbnNpdGlvbjogYWxsIDAuM3M7XG5cdHotaW5kZXg6IDEwMDtcblxuXHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuXHRcdHBhZGRpbmc6IDBweDtcblx0fVxuXG5cdCYuaGVhZGVyLWNvbGxhcHNlZCB7XG5cdFx0aGVpZ2h0OiAxMDBweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuXHR9XG5cblx0LmNvbnRhaW5lciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxuXG59XG5cblxuLmFwcC1icmFuZCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiA1MCU7XG5cdGxlZnQ6IDUwJTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cblx0YSB7XG5cdFx0d2lkdGg6IDEyMHB4O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRyYW5zaXRpb246IHdpZHRoIDAuM3M7XG5cblx0XHQuaGVhZGVyLWNvbGxhcHNlZCAmIHtcblx0XHRcdHdpZHRoOiA4MHB4O1xuXHRcdH1cblxuXHRcdD4gaW1nIHtcblx0XHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHR9XG5cdH1cbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRoaXMgZmlsZSBjb250YWlucyBhbGwgc3R5bGVzIHJlbGF0ZWQgdG8gdGhlIG1haW4gcGFydCBvZiB0aGUgc2l0ZS9hcHBsaWNhdGlvbi5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5hcHAtbWFpbiB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcblxyXG59XHJcblxyXG4uc29jaWFsLWFzaWRlIHtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0bGVmdDogMHB4O1xyXG5cdHRvcDogMzAlO1xyXG5cdHotaW5kZXg6IDUwO1xyXG5cclxuXHQuYXNpZGUtYnRuIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHdpZHRoOiAxNTBweDtcclxuXHRcdGNvbG9yOiB3aGl0ZTtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cGFkZGluZzogMTVweCA1NXB4IDE1cHggMTVweDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcztcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpO1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcclxuXHRcdH1cclxuXHJcblx0XHQmLmJ0bi1mYiB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTksIDg5LCAxNTIsIDAuNik7XHJcblxyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDU5LCA4OSwgMTUyLCAxKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCYuYnRuLWluIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDcsIDExOSwgNTUsIDAuNik7XHJcblxyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NywgMTE5LCA1NSwgMSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQuZmFjZWJvb2staWNvbixcclxuXHRcdC5pbnN0YWdyYW0taWNvbiB7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0cmlnaHQ6IDBweDtcclxuXHRcdFx0dG9wOiA1MCU7XHJcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHRcdFx0d2lkdGg6IDUwcHg7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDU5LCA4OSwgMTUyLCAwLjQpOztcclxuXHJcblx0XHRcdCY6OmFmdGVyIHtcclxuXHRcdFx0XHRjb250ZW50OiAnXFxlOTA0JztcclxuXHRcdFx0XHRmb250LWZhbWlseTogJGljb24tZm9udDtcclxuXHRcdFx0XHRmb250LXNpemU6IDEuNnJlbTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdH1cclxuXHJcblxyXG5cdFx0Lmluc3RhZ3JhbS1pY29uIHtcclxuXHRcdFx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDI0NywgMTE5LCA1NSwgMC40KTtcclxuXHJcblx0XHRcdCY6OmFmdGVyIHtcclxuXHRcdFx0XHRjb250ZW50OiAnXFxlOTA1JztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmhlcm8tc3RyaXAge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMHZoO1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2hlcm9fYmcuanBnJyk7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcblx0ei1pbmRleDogMTtcclxuXHJcblx0Jjo6YWZ0ZXIge1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDBweDtcclxuXHRcdGxlZnQ6IDBweDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMSwgMTEsIDExLCAwLjc1KTtcclxuXHRcdHotaW5kZXg6IDU7XHJcblx0fVxyXG5cclxuXHQuaGVyby1jb250ZW50IHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogNTAlO1xyXG5cdFx0bGVmdDogNTAlO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0XHR6LWluZGV4OiAxMDtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHJcblx0XHRoMSB7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0Y29sb3I6IHdoaXRlO1xyXG5cdFx0XHR6LWluZGV4OiAxMDtcclxuXHJcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAyLjlyZW07XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdHNwYW4ge1xyXG5cdFx0XHRcdGNvbG9yOiAkYnJhbmQtY29sb3I7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6OmJlZm9yZSB7XHJcblx0XHRcdFx0Y29udGVudDogJ1xcZTkwMCc7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRcdGxlZnQ6IDUwJTtcclxuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkaWNvbi1mb250O1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMTVyZW07XHJcblx0XHRcdFx0Y29sb3I6IHRyYW5zcGFyZW50aXplKGJsYWNrLCAwLjYpO1xyXG5cdFx0XHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0LmJ0biB7XHJcblx0XHRcdG1hcmdpbi10b3A6IDI1cHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uYWJvdXQtc3RyaXAge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9wYXR0ZXJuX2JnLmpwZycpO1xyXG5cdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XHJcblx0cGFkZGluZy10b3A6IDYwcHg7XHJcblx0cGFkZGluZy1ib3R0b206IDYwcHg7XHJcblxyXG5cdCY6OmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogLTEyMHB4O1xyXG5cdFx0bGVmdDogMHB4O1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDE0MnB4O1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvYm9yZGVyX3RvcC5wbmcnKTtcclxuXHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcblx0XHR6LWluZGV4OiAyMDtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0fVxyXG5cclxuXHRoMiB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHR6LWluZGV4OiAxMDtcclxuXHJcblx0XHQmOjpiZWZvcmUge1xyXG5cdFx0XHRjb250ZW50OiAnXFxlOTAwJztcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR0b3A6IDUwJTtcclxuXHRcdFx0bGVmdDogNTAlO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG5cdFx0XHRmb250LWZhbWlseTogJGljb24tZm9udDtcclxuXHRcdFx0Zm9udC1zaXplOiAxNXJlbTtcclxuXHRcdFx0Y29sb3I6IHRyYW5zcGFyZW50aXplKCRicmFuZC1jb2xvciwgMC45Myk7XHJcblx0XHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnBob3RvLXdyYXAge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXgtd2lkdGg6IDMwMHB4O1xyXG5cdFx0bWFyZ2luOiAwcHggYXV0bztcclxuXHJcblx0XHQ+IGltZyB7XHJcblx0XHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0Ym9yZGVyOiA4cHggc29saWQgd2hpdGU7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC50ZXh0LXdyYXAge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuXHRcdHAge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0XHRcdGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xyXG5cdFx0XHRmb250LXNpemU6IDIuM3JlbTtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNWVtO1xyXG5cdFx0XHRjb2xvcjogIzFkMWMxYztcclxuXHRcdFx0bWFyZ2luOiAwcHg7XHJcblxyXG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHR0b3A6IGluaXRpYWw7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcclxuXHRcdFx0XHRmb250LXNpemU6IDEuNnJlbTtcclxuXHRcdFx0XHRtYXJnaW46IDE1cHggMHB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4ucHJpY2luZy1zdHJpcCB7XHJcblx0cGFkZGluZy10b3A6IDQ1cHg7XHJcblx0cGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3BhdHRlcm5fYmcuanBnJyk7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdDtcclxuXHJcblx0aDIge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0ei1pbmRleDogMTA7XHJcblxyXG5cdFx0Jjo6YmVmb3JlIHtcclxuXHRcdFx0Y29udGVudDogJ1xcZTkwMSc7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiA1MCU7XHJcblx0XHRcdGxlZnQ6IDUwJTtcclxuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcclxuXHRcdFx0Zm9udC1mYW1pbHk6ICRpY29uLWZvbnQ7XHJcblx0XHRcdGZvbnQtc2l6ZTogMTVyZW07XHJcblx0XHRcdGNvbG9yOiB0cmFuc3BhcmVudGl6ZSgkYnJhbmQtY29sb3IsIDAuOTMpO1xyXG5cdFx0XHR6LWluZGV4OiAtMTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHRhYmxlIHtcclxuXHRcdHdpZHRoOiA4MDBweDtcclxuXHRcdG1hcmdpbjogMHB4IGF1dG87XHJcblx0XHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG5cclxuXHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblxyXG5cdFx0dHIge1xyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHR0ZCB7XHJcblx0XHRcdGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xyXG5cdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0XHRcdGNvbG9yOiAjMWQxYzFjO1xyXG5cdFx0XHRwYWRkaW5nOiA4cHggMTBweDtcclxuXHJcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxLjRyZW07XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCYucHJpY2Uge1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLm9wZW5pbmctc3RyaXAge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9oZXJvX2JnLmpwZycpO1xyXG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG5cdHBhZGRpbmctdG9wOiA0NXB4O1xyXG5cdHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG5cdHotaW5kZXg6IDE7XHJcblxyXG5cdCY6OmFmdGVyIHtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwcHg7XHJcblx0XHRsZWZ0OiAwcHg7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTEsIDExLCAxMSwgMC43NSk7XHJcblx0XHR6LWluZGV4OiA1O1xyXG5cdH1cclxuXHJcblx0Lm9wZW5pbmctY29udGVudCB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR6LWluZGV4OiAxMDtcclxuXHJcblx0XHRoMiB7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0bWFyZ2luLXRvcDogMHB4O1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0LnN1Yi1oZWFkaW5nIHtcclxuXHRcdFx0Zm9udC1zaXplOiAxLjhyZW07XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjVlbTtcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRjb2xvcjogd2hpdGU7XHJcblx0XHRcdG1hcmdpbi10b3A6IDBweDtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogNDVweDtcclxuXHJcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxLjVyZW07XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5vcGVuaW5nLWhvdXJzIHtcclxuXHJcblx0XHQuY29sdW1uLWRheSB7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0cGFkZGluZzogMjVweCAxMHB4IDQ1cHggMTBweDtcclxuXHRcdFx0Ym9yZGVyOiAzcHggc29saWQgd2hpdGU7XHJcblxyXG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDI1cHggMTBweDtcclxuXHRcdFx0XHRtYXJnaW46IDEycHggMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRoNiB7XHJcblx0XHRcdFx0Y29sb3I6IHdoaXRlO1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDBweDtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQub3BlbmluZy1mcm9tLFxyXG5cdFx0XHQub3BlbmluZy10byB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAycmVtO1xyXG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHRcdFx0Y29sb3I6ICRicmFuZC1jb2xvcjtcclxuXHRcdFx0XHRtYXJnaW46IDBweCBhdXRvO1xyXG5cclxuXHRcdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Lm9wZW5pbmctZnJvbSB7XHJcblxyXG5cdFx0XHRcdCY6OmFmdGVyIHtcclxuXHRcdFx0XHRcdGNvbnRlbnQ6ICctJztcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMi41cmVtO1xyXG5cdFx0XHRcdFx0Y29sb3I6IHdoaXRlO1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiA1cHg7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XHJcblxyXG5cdFx0XHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5nYWxsZXJ5LXN0cmlwIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHJcblx0LmdhbGxlcnktY2Fyb3VzZWwge1xyXG5cclxuXHRcdC5nYWxsZXJ5LWl0ZW0ge1xyXG5cclxuXHRcdFx0aW1nIHtcclxuXHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0LnNsaWNrLWFycm93IHtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR0b3A6IDUwJTtcclxuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdFx0XHR3aWR0aDogMjVweDtcclxuXHRcdFx0aGVpZ2h0OiA1MHB4O1xyXG5cdFx0XHRmb250LXNpemU6IDBweDtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7XHJcblxyXG5cdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRjb250ZW50OiAnJztcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0bGVmdDogNTAlO1xyXG5cdFx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XHJcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRpY29uLWZvbnQ7XHJcblx0XHRcdFx0Zm9udC1zaXplOiA1cmVtO1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxZW07XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdGNvbG9yOiB3aGl0ZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblxyXG5cdFx0XHRcdCY6OmFmdGVyIHtcclxuXHRcdFx0XHRcdGNvbG9yOiB3aGl0ZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCYuc2xpY2stcHJldiB7XHJcblx0XHRcdFx0bGVmdDogMTVweDtcclxuXHRcdFx0XHR6LWluZGV4OiAxMDtcclxuXHJcblx0XHRcdFx0JjphZnRlciB7XHJcblx0XHRcdFx0XHRjb250ZW50OiAnXFxlOTAyJztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCYuc2xpY2stbmV4dCB7XHJcblx0XHRcdFx0cmlnaHQ6IDE1cHg7XHJcblxyXG5cdFx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdFx0Y29udGVudDogJ1xcZTkwMyc7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4ubWFwLXN0cmlwIHtcclxuXHJcblx0Lm1hcC1jb250YWluZXIge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDM4MHB4O1xyXG5cdH1cclxufSIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSBmb290ZXIgb2YgdGhlIHNpdGUvYXBwbGljYXRpb24uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYXBwLWZvb3RlciB7XG5cdHdpZHRoOiAxMDAlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMWQxYzFjO1xuXHRjb2xvcjogd2hpdGU7XG5cdHBhZGRpbmctdG9wOiAzNXB4O1xuXG5cdC5zb2NpYWwtbWVkaWEge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0cGFkZGluZy1sZWZ0OiAwcHg7XG5cdFx0bWFyZ2luOiAwcHg7XG5cblx0XHRsaSB7XG5cblx0XHRcdGEge1xuXHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cblxuXHQuYXBwLWFkZHJlc3Mge1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjZlbTtcblx0fVxuXG5cdC5jb250YWN0LWluZm8sXG5cdC5zb2NpYWwtbWVkaWEge1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjZlbTtcblx0XHRjb2xvcjogd2hpdGU7XG5cblx0XHQuY29udGFjdC1tYWlsLFxuXHRcdC5jb250YWN0LXBob25lIHtcblx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxuXG5cdC5jb3B5cmlnaHQtZm9vdGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Zm9udC1zaXplOiAxLjRyZW07XG5cdFx0bGluZS1oZWlnaHQ6IDIuNGVtO1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjMmIyOTI5O1xuXHRcdG1hcmdpbi10b3A6IDI1cHg7XG5cblx0XHQuYXV0aG9yIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHJpZ2h0OiAwcHg7XG5cdFx0fVxuXHR9XG59XG4iXX0= */
