@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,300i,600,700");
.ce-filterbar {
  background: #00a2ff url("../Images/geo-lines.png") center top no-repeat;
  -webkit-clip-path: polygon(1240px 875px, 0 774px, 63px 140px, 1240px 13px);
          clip-path: polygon(1240px 875px, 0 774px, 63px 140px, 1240px 13px);
  height: 875px;
  left: -105px;
  padding: 160px 90px;
  position: relative;
  top: -173px;
  width: 161%;
  z-index: 0; }
  .ce-filterbar h2 {
    color: #524d4d;
    font-family: "Source Sans Pro", sans-serif;
    font-size: 40px;
    font-style: italic;
    font-weight: 300; }
  .ce-filterbar--button {
    color: #fff;
    font-family: "Source Sans Pro", sans-serif;
    font-size: 22px;
    font-weight: 600;
    margin-right: 30px;
    opacity: .8;
    outline: 0;
    padding: 20px 0;
    text-transform: uppercase; }
    .ce-filterbar--button:hover {
      opacity: 1; }
    .ce-filterbar--button::before {
      background-size: 40px; }
    .ce-filterbar--button:last-child::before {
      background-size: 100px 50px; }
    .ce-filterbar--button-street::before, .ce-filterbar--button-ground::before, .ce-filterbar--button-building::before {
      content: '';
      padding: 15px 72px 15px 0; }
    .ce-filterbar--button-street::before {
      background: url("../Images/filter-street.png") center center no-repeat; }
    .ce-filterbar--button-ground::before {
      background: url("../Images/filter-ground.png") center center no-repeat; }
    .ce-filterbar--button-building::before {
      background: url("../Images/filter-building.png") center center no-repeat; }
    .ce-filterbar--button-all::before {
      background: url("../Images/filter-all.png") center center no-repeat;
      content: '';
      padding: 15px 130px 15px 0; }
  .ce-filterbar--kachelsection {
    height: 410px !important;
    margin-top: 15px;
    overflow-x: hidden;
    overflow-y: scroll; }
  .ce-filterbar--kachel {
    background-color: rgba(82, 77, 77, 0.4);
    float: left;
    margin-bottom: 8px;
    margin-left: 8px;
    min-height: 125px;
    padding: 0 20px;
    -webkit-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in; }
    .ce-filterbar--kachel:hover {
      background-color: #fff; }
      .ce-filterbar--kachel:hover p {
        color: #00a2ff; }
    .ce-filterbar--kachel p {
      color: #fff; }
  .ce-filterbar .grid-item {
    width: 280px; }

a .ce-filterbar--kachel::after {
  bottom: 5px;
  color: #fff;
  content: '»';
  float: right;
  font-size: 40px;
  right: 16px;
  position: absolute; }

a .ce-filterbar--kachel:hover::after {
  color: #00a2ff; }

.ce-accordion {
  border: 0 !important;
  margin: 2rem 0 1rem;
  padding: 0; }
  .ce-accordion--item {
    border: 1px solid #ececec;
    list-style: none;
    margin: 0 0 .3rem;
    padding: 0; }
  .ce-accordion--title {
    border: 0 !important;
    color: #333 !important;
    font-family: "Source Sans Pro", sans-serif;
    font-size: 18px !important;
    font-weight: 300; }
    .ce-accordion--title::before {
      font-size: 18px;
      font-weight: bold; }
  .ce-accordion--content {
    color: #333;
    font-family: "Source Sans Pro", sans-serif;
    font-size: 18px;
    font-weight: 300; }
  .ce-accordion .is-active .ce-accordion--title::before {
    color: #e2001a; }

.ce-bullets li,
.ce-bodytext li {
  color: #333;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  font-weight: 300;
  list-style: url("../Images/list-icon.png") !important;
  padding: 10px 0 10px 10px; }

.ce-div {
  border: 0;
  border-top: 1px dotted #333; }

.ce-table {
  font-family: "Source Sans Pro", sans-serif;
  font-weight: 300;
  margin: 10px 0;
  width: 100%; }
  .ce-table tr {
    border-bottom: 1px solid #ececec; }
    .ce-table tr:first-child {
      background-color: #333; }
      .ce-table tr:first-child td {
        color: #fff; }
  .ce-table td {
    color: #333;
    font-family: "Source Sans Pro", sans-serif;
    font-size: 18px;
    font-weight: 300;
    padding: 5px 10px; }

.ce-button {
  margin-right: 20px; }
  .ce-button span {
    background-color: rgba(82, 77, 77, 0.1);
    font-family: "Source Sans Pro", sans-serif;
    font-size: 18px;
    font-weight: 300;
    padding: 12px 15px;
    text-transform: uppercase;
    -webkit-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in; }
  .ce-button i::before {
    content: url("../Images/button-icon.svg");
    margin-right: 5px;
    position: relative;
    top: 18px; }
  .ce-button:hover span, .ce-button:active span {
    background-color: rgba(226, 0, 26, 0.1); }
  .ce-button:hover i::before, .ce-button:active i::before {
    content: url("../Images/button-hover-icon.svg"); }

.ce-menu {
  clear: both;
  list-style: none;
  margin-left: -45px;
  min-height: 120px; }
  .ce-menu a {
    border: 1px solid #e2001a;
    border-radius: 3px;
    float: left;
    font-size: 22px;
    margin: 5px;
    padding: 10px;
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out; }
    .ce-menu a:hover {
      background-color: #e2001a;
      color: #fff; }

@media only screen and (min-width: 376px) and (max-width: 1440px) {
  .ce-filterbar {
    -webkit-clip-path: polygon(1004px 895px, 0px 805px, 66px 139px, 1004px 36px);
            clip-path: polygon(1004px 895px, 0px 805px, 66px 139px, 1004px 36px);
    height: 900px;
    left: -83px;
    top: -278px;
    width: 120%; }
    .ce-filterbar--button {
      font-size: 18px; }
    .ce-filterbar .grid-item {
      width: 225px; } }

@media only screen and (min-width: 376px) and (max-width: 639px) {
  .ce-filterbar {
    width: 78.5%;
    left: 357px; } }

@media only screen and (max-width: 375px) {
  .ce-gallery {
    float: none !important; }
  .ce-button {
    display: block;
    margin-bottom: 15px; }
    .ce-button i {
      top: 20px; }
    .ce-button span {
      font-size: 14px;
      padding: 16px 15px; }
  .ce-div {
    clear: both;
    float: left;
    width: 335px; }
  .ce-menu {
    min-height: 420px; }
  .ce-media img {
    height: auto;
    width: 320px; }
  .ce-filterbar {
    -webkit-clip-path: none;
            clip-path: none;
    height: auto;
    padding: 200px 90px 20px 90px;
    z-index: 0; }
    .ce-filterbar--button {
      margin-bottom: 50px;
      padding: 15px 0; }
    .ce-filterbar .grid-item {
      width: 100%; }
    .ce-filterbar h2 {
      display: none; } }

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

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

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

.ce-table td,
.ce-table th {
  vertical-align: top; }

.ce-textpic,
.ce-nowrap .ce-bodytext,
.ce-gallery,
.ce-row {
  overflow: hidden; }

.ce-uploads {
  margin: 0;
  padding: 0; }
  .ce-uploads li,
  .ce-uploads div {
    overflow: hidden; }
  .ce-uploads li {
    list-style: none outside none;
    margin: 1em 0; }
  .ce-uploads img {
    float: left;
    padding-right: 1em;
    vertical-align: top; }
  .ce-uploads span {
    display: block; }

.ce-left .ce-gallery,
.ce-column {
  float: left; }

.ce-center .ce-outer {
  float: right;
  position: relative;
  right: 50%; }

.ce-center .ce-inner {
  float: right;
  position: relative;
  right: -50%; }

.ce-right .ce-gallery {
  float: right; }

.ce-gallery figure {
  display: table;
  margin: 0; }

.ce-gallery figcaption {
  caption-side: bottom;
  display: table-caption; }

.ce-gallery img {
  display: block; }

.ce-gallery iframe {
  border-width: 0; }

.ce-border img,
.ce-border iframe {
  border: 2px solid #000;
  padding: 0; }

.ce-above .ce-gallery {
  margin-bottom: 10px; }

.ce-intext.ce-right .ce-gallery,
.ce-intext.ce-left .ce-gallery {
  margin-bottom: 10px; }

.ce-intext.ce-right .ce-gallery {
  margin-left: 10px; }

.ce-intext.ce-left ol,
.ce-intext.ce-left ul {
  overflow: auto;
  padding-left: 40px; }

.ce-intext.ce-left .ce-gallery {
  margin-right: 10px; }

.ce-below .ce-gallery {
  margin-top: 10px; }

.ce-column {
  margin-right: 10px; }
  .ce-column:last-child {
    margin-right: 0; }

.ce-row {
  margin-bottom: 10px; }
  .ce-row:last-child {
    margin-bottom: 0; }

.ce-above .ce-bodytext {
  clear: both; }

#tx_indexedsearch {
  font-family: "Source Sans Pro", sans-serif;
  font-weight: 300; }
  #tx_indexedsearch td {
    padding-bottom: 10px;
    padding-right: 20px; }
  #tx_indexedsearch tr td:first-child {
    padding-right: 25px; }
  #tx_indexedsearch select,
  #tx_indexedsearch input {
    border: 0; }

.main--section #tx_indexedsearch fieldset {
  background: #00a2ff url("../Images/geo-lines.png") center top no-repeat;
  border: 0;
  -webkit-clip-path: polygon(3px 568px, 60px 0px, 1182px 70px, 1182px 440px);
          clip-path: polygon(3px 568px, 60px 0px, 1182px 70px, 1182px 440px);
  color: #fff;
  float: right;
  height: 577px;
  left: 367px;
  margin-top: -618px;
  max-width: 1180px;
  overflow: hidden;
  padding: 220px 70px 150px 150px;
  position: relative;
  width: 160%;
  z-index: 1; }

.main--section #tx_indexedsearch label {
  font-size: 27px; }

.main--section #tx_indexedsearch select,
.main--section #tx_indexedsearch input {
  border-bottom: 1px solid #fff;
  color: #fff; }

.main--section #tx_indexedsearch .tx-indexedsearch-searchbox-sword {
  background-color: transparent;
  margin-left: 15px;
  width: 70%; }

.main--section #tx_indexedsearch .tx-indexedsearch-searchbox-button {
  background-color: #fff;
  border: 2px solid #fff;
  border-radius: 3px;
  color: #00a2ff;
  font-size: 27px;
  margin-top: 25px;
  padding: 10px 35px;
  -webkit-transition: all 0.2s ease-in;
  transition: all 0.2s ease-in; }
  .main--section #tx_indexedsearch .tx-indexedsearch-searchbox-button:hover {
    background-color: transparent;
    color: #fff; }

.main--section .tx-indexedsearch-icon,
.main--section .tx-indexedsearch-percent,
.main--section .tx-indexedsearch-text-item-size,
.main--section .tx-indexedsearch-text-item-crdate,
.main--section .tx-indexedsearch-text-item-mtime,
.main--section dt.tx-indexedsearch-text-item-path {
  display: none; }

.main--section dd.tx-indexedsearch-text-item-path {
  margin-left: 0; }

.main--section .tx-indexedsearch-res {
  border-bottom: 1px solid #ececec; }

.tx-indexedsearch-searchbox-sword {
  border: 0;
  border-bottom: 1px solid #817f7f;
  color: #e2001a;
  font-size: 27px;
  outline: 0;
  padding: 5px 0;
  width: 175px; }

.header--search-form {
  margin-bottom: 90px; }
  .header--search-form form {
    clear: both; }
    .header--search-form form fieldset {
      border: 0;
      border-bottom: 1px solid #817f7f;
      float: right;
      padding: 0;
      width: 210px; }
    .header--search-form form input {
      background-color: transparent;
      border: 0;
      color: #e2001a;
      height: 40px;
      outline: 0;
      padding: 5px 0;
      text-align: right;
      width: 175px; }
      .header--search-form form input[type="submit"] {
        background: transparent url("../Images/search-icon.svg") center no-repeat;
        background-size: 85%;
        height: 25px;
        width: 25px; }

.scroll-nav--search-form form {
  clear: both; }
  .scroll-nav--search-form form fieldset {
    border: 0;
    float: right;
    padding: 0;
    width: 90%; }
    .scroll-nav--search-form form fieldset:hover, .scroll-nav--search-form form fieldset:active {
      border-bottom: 1px solid #817f7f; }
  .scroll-nav--search-form form input {
    background-color: transparent;
    border: 0;
    color: #e2001a;
    height: 40px;
    outline: 0;
    padding: 5px 0;
    text-align: left;
    width: 80%; }
    .scroll-nav--search-form form input[type="submit"] {
      background: transparent url("../Images/search-icon.svg") center no-repeat;
      background-size: 85%;
      height: 25px;
      width: 25px; }

.main--box-right .csc-mailform {
  color: #333; }
  .main--box-right .csc-mailform label {
    color: #333; }
  .main--box-right .csc-mailform input,
  .main--box-right .csc-mailform textarea {
    width: 100%; }
  .main--box-right .csc-mailform input[type="submit"] {
    background-color: #817f7f;
    color: #fff; }

.csc-mailform {
  color: #fff;
  font-family: "Source Sans Pro", sans-serif;
  font-style: italic;
  font-weight: 600; }
  .csc-mailform ol {
    list-style: none;
    margin-left: -40px; }
  .csc-mailform li {
    font-weight: 300;
    font-style: normal; }
  .csc-mailform label,
  .csc-mailform input,
  .csc-mailform textarea {
    font-family: "Source Sans Pro", sans-serif;
    font-size: 22px;
    font-weight: 300; }
  .csc-mailform input,
  .csc-mailform textarea {
    background-color: transparent;
    border: 1px solid #817f7f;
    border-radius: 3px;
    height: 55px;
    margin: 10px 0 25px 0;
    outline: 0;
    padding: 15px;
    width: 560px; }
  .csc-mailform label {
    color: #fff;
    font-weight: 600;
    margin: 15px 0; }
  .csc-mailform input {
    display: block; }
    .csc-mailform input[type="submit"] {
      background-color: #fff;
      color: #333;
      margin-top: 15px;
      -webkit-transition: all 0.2s ease-in;
      transition: all 0.2s ease-in;
      width: 260px; }
      .csc-mailform input[type="submit"]:hover {
        background-color: #00a2ff;
        border: 1px solid #00a2ff;
        color: #fff; }
  .csc-mailform textarea {
    height: 135px; }

.csc-form-4 label {
  display: block;
  margin: 0; }

.csc-form-confirmation-false {
  float: right; }
  .csc-form-confirmation-false input {
    background-color: transparent !important;
    color: #fff !important; }

.csc-form-confirmation-true {
  float: left; }

@media only screen and (min-width: 376px) and (max-width: 1440px) {
  .main--section #tx_indexedsearch fieldset {
    -webkit-clip-path: polygon(0px 463px, 50px 2px, 939px 56px, 939px 358px);
            clip-path: polygon(0px 463px, 50px 2px, 939px 56px, 939px 358px);
    height: 467px;
    left: 110px;
    margin-top: -481px;
    width: 115%; } }

@media only screen and (min-width: 376px) and (max-width: 640px) {
  .main--section #tx_indexedsearch fieldset {
    -webkit-clip-path: polygon(45px 0px, 0px 463px, 940px 375px, 940px 53px);
            clip-path: polygon(45px 0px, 0px 463px, 940px 375px, 940px 53px);
    left: 118px;
    margin-top: -478px; } }

@media only screen and (max-width: 375px) {
  .csc-mailform input,
  .csc-mailform textarea {
    width: 300px; }
  .main--section #tx_indexedsearch fieldset {
    -webkit-clip-path: polygon(680px 260px, 0 310px, 30px 15px, 680px 60px);
            clip-path: polygon(680px 260px, 0 310px, 30px 15px, 680px 60px);
    height: 320px;
    left: 32px;
    margin-top: 0;
    padding: 90px;
    width: 135%; }
  .main--section #tx_indexedsearch .tx-indexedsearch-searchbox-sword {
    width: 100%; } }

/**
 * Foundation for Sites by ZURB
 * Version 6.1.2
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
.accordion {
  list-style-type: none;
  background: #fefefe;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  border-radius: 0;
  margin-left: 0; }

.accordion-title {
  display: block;
  padding: 1.25rem 1rem;
  line-height: 1;
  font-size: 0.75rem;
  color: #e2001a;
  position: relative;
  border-bottom: 1px solid #e6e6e6; }
  .accordion-title:hover, .accordion-title:focus {
    background-color: #e6e6e6; }
  .accordion-title::before {
    content: '+';
    position: absolute;
    right: 1rem;
    top: 50%;
    margin-top: -0.5rem; }
  .is-active > .accordion-title::before {
    content: '–'; }

.accordion-content {
  padding: 1rem;
  display: none;
  border-bottom: 1px solid #e6e6e6;
  background-color: #fefefe; }

/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
   * 1. Set default font family to sans-serif.
   * 2. Prevent iOS and IE text size adjust after device orientation change,
   *    without disabling user zoom.
   */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
   * Remove default margin.
   */
body {
  margin: 0; }

/* HTML5 display definitions
     ========================================================================== */
/**
   * Correct `block` display not defined for any HTML5 element in IE 8/9.
   * Correct `block` display not defined for `details` or `summary` in IE 10/11
   * and Firefox.
   * Correct `block` display not defined for `main` in IE 11.
   */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
   * 1. Correct `inline-block` display not defined in IE 8/9.
   * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
   */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
   * Prevent modern browsers from displaying `audio` without controls.
   * Remove excess height in iOS 5 devices.
   */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
   * Address `[hidden]` styling not present in IE 8/9/10.
   * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
   */
[hidden],
template {
  display: none; }

/* Links
     ========================================================================== */
/**
   * Remove the gray background color from active links in IE 10.
   */
a {
  background-color: transparent; }

/**
   * Improve readability of focused elements when they are also in an
   * active/hover state.
   */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
     ========================================================================== */
/**
   * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
   */
abbr[title] {
  border-bottom: 1px dotted; }

/**
   * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
   */
b,
strong {
  font-weight: bold; }

/**
   * Address styling not present in Safari and Chrome.
   */
dfn {
  font-style: italic; }

/**
   * Address variable `h1` font-size and margin within `section` and `article`
   * contexts in Firefox 4+, Safari, and Chrome.
   */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
   * Address styling not present in IE 8/9.
   */
mark {
  background: #ff0;
  color: #000; }

/**
   * Address inconsistent and variable font size in all browsers.
   */
small {
  font-size: 80%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
     ========================================================================== */
/**
   * Remove border when inside `a` element in IE 8/9/10.
   */
img {
  border: 0; }

/**
   * Correct overflow not hidden in IE 9/10/11.
   */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
     ========================================================================== */
/**
   * Address margin not present in IE 8/9 and Safari.
   */
figure {
  margin: 1em 40px; }

/**
   * Address differences between Firefox and other browsers.
   */
hr {
  box-sizing: content-box;
  height: 0; }

/**
   * Contain overflow in all browsers.
   */
pre {
  overflow: auto; }

/**
   * Address odd `em`-unit font size rendering in all browsers.
   */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
     ========================================================================== */
/**
   * Known limitation: by default, Chrome and Safari on OS X allow very limited
   * styling of `select`, unless a `border` property is set.
   */
/**
   * 1. Correct color not being inherited.
   *    Known issue: affects color of disabled elements.
   * 2. Correct font properties not being inherited.
   * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
   */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
   * Address `overflow` set to `hidden` in IE 8/9/10/11.
   */
button {
  overflow: visible; }

/**
   * Address inconsistent `text-transform` inheritance for `button` and `select`.
   * All other form control elements do not inherit `text-transform` values.
   * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
   * Correct `select` style inheritance in Firefox.
   */
button,
select {
  text-transform: none; }

/**
   * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
   *    and `video` controls.
   * 2. Correct inability to style clickable `input` types in iOS.
   * 3. Improve usability and consistency of cursor style between image-type
   *    `input` and others.
   */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
   * Re-set default cursor for disabled elements.
   */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
   * Remove inner padding and border in Firefox 4+.
   */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
   * Address Firefox 4+ setting `line-height` on `input` using `!important` in
   * the UA stylesheet.
   */
input {
  line-height: normal; }

/**
   * It's recommended that you don't attempt to style these elements.
   * Firefox's implementation doesn't respect box-sizing, padding, or width.
   *
   * 1. Address box sizing set to `content-box` in IE 8/9/10.
   * 2. Remove excess padding in IE 8/9/10.
   */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
   * Fix the cursor style for Chrome's increment/decrement buttons. For certain
   * `font-size` values of the `input`, it causes the cursor style of the
   * decrement button to change from `default` to `text`.
   */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
   * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
   * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
   */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: content-box;
  /* 2 */ }

/**
   * Remove inner padding and search cancel button in Safari and Chrome on OS X.
   * Safari (but not Chrome) clips the cancel button when the search input has
   * padding (and `textfield` appearance).
   */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
   * Define consistent border, margin, and padding.
   * [NOTE] We don't enable this ruleset in Foundation, because we want the <fieldset> element to have plain styling.
   */
/* fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
  } */
/**
   * 1. Correct `color` not being inherited in IE 8/9/10/11.
   * 2. Remove padding so people aren't caught out if they zero out fieldsets.
   */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
   * Remove default vertical scrollbar in IE 8/9/10/11.
   */
textarea {
  overflow: auto; }

/**
   * Don't inherit the `font-weight` (applied by a rule above).
   * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
   */
optgroup {
  font-weight: bold; }

/* Tables
     ========================================================================== */
/**
   * Remove most spacing between table cells.
   */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"; }

html {
  font-size: 100%;
  box-sizing: border-box; }

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

body {
  padding: 0;
  margin: 0;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  background: #fefefe;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
  display: inline-block;
  vertical-align: middle; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0; }

select {
  width: 100%;
  border-radius: 0; }

#map_canvas img,
#map_canvas embed,
#map_canvas object,
.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important; }

button {
  -webkit-appearance: none;
  -moz-appearance: none;
  background: transparent;
  padding: 0;
  border: 0;
  border-radius: 0;
  line-height: 1; }

.is-visible {
  display: block !important; }

.is-hidden {
  display: none !important; }

.row {
  max-width: 75rem;
  margin-left: auto;
  margin-right: auto; }
  .row::before, .row::after {
    content: ' ';
    display: table; }
  .row::after {
    clear: both; }
  .row.collapse > .column, .row.collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row .row {
    margin-left: -0.625rem;
    margin-right: -0.625rem; }
    @media screen and (min-width: 40em) {
      .row .row {
        margin-left: -0.9375rem;
        margin-right: -0.9375rem; } }
    .row .row.collapse {
      margin-left: 0;
      margin-right: 0; }
  .row.expanded {
    max-width: none; }
    .row.expanded .row {
      margin-left: auto;
      margin-right: auto; }

.column, .columns {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  width: 100%;
  float: left; }
  @media screen and (min-width: 40em) {
    .column, .columns {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem; } }
  .column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
    float: right; }
  .column.end:last-child:last-child, .end.columns:last-child:last-child {
    float: left; }

.column.row.row, .row.row.columns {
  float: none; }
  .row .column.row.row, .row .row.row.columns {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0; }

.small-1 {
  width: 8.3333333333%; }

.small-push-1 {
  position: relative;
  left: 8.3333333333%; }

.small-pull-1 {
  position: relative;
  left: -8.3333333333%; }

.small-offset-0 {
  margin-left: 0%; }

.small-2 {
  width: 16.6666666667%; }

.small-push-2 {
  position: relative;
  left: 16.6666666667%; }

.small-pull-2 {
  position: relative;
  left: -16.6666666667%; }

.small-offset-1 {
  margin-left: 8.3333333333%; }

.small-3 {
  width: 25%; }

.small-push-3 {
  position: relative;
  left: 25%; }

.small-pull-3 {
  position: relative;
  left: -25%; }

.small-offset-2 {
  margin-left: 16.6666666667%; }

.small-4 {
  width: 33.3333333333%; }

.small-push-4 {
  position: relative;
  left: 33.3333333333%; }

.small-pull-4 {
  position: relative;
  left: -33.3333333333%; }

.small-offset-3 {
  margin-left: 25%; }

.small-5 {
  width: 41.6666666667%; }

.small-push-5 {
  position: relative;
  left: 41.6666666667%; }

.small-pull-5 {
  position: relative;
  left: -41.6666666667%; }

.small-offset-4 {
  margin-left: 33.3333333333%; }

.small-6 {
  width: 50%; }

.small-push-6 {
  position: relative;
  left: 50%; }

.small-pull-6 {
  position: relative;
  left: -50%; }

.small-offset-5 {
  margin-left: 41.6666666667%; }

.small-7 {
  width: 58.3333333333%; }

.small-push-7 {
  position: relative;
  left: 58.3333333333%; }

.small-pull-7 {
  position: relative;
  left: -58.3333333333%; }

.small-offset-6 {
  margin-left: 50%; }

.small-8 {
  width: 66.6666666667%; }

.small-push-8 {
  position: relative;
  left: 66.6666666667%; }

.small-pull-8 {
  position: relative;
  left: -66.6666666667%; }

.small-offset-7 {
  margin-left: 58.3333333333%; }

.small-9 {
  width: 75%; }

.small-push-9 {
  position: relative;
  left: 75%; }

.small-pull-9 {
  position: relative;
  left: -75%; }

.small-offset-8 {
  margin-left: 66.6666666667%; }

.small-10 {
  width: 83.3333333333%; }

.small-push-10 {
  position: relative;
  left: 83.3333333333%; }

.small-pull-10 {
  position: relative;
  left: -83.3333333333%; }

.small-offset-9 {
  margin-left: 75%; }

.small-11 {
  width: 91.6666666667%; }

.small-push-11 {
  position: relative;
  left: 91.6666666667%; }

.small-pull-11 {
  position: relative;
  left: -91.6666666667%; }

.small-offset-10 {
  margin-left: 83.3333333333%; }

.small-12 {
  width: 100%; }

.small-offset-11 {
  margin-left: 91.6666666667%; }

.small-up-1 > .column, .small-up-1 > .columns {
  width: 100%;
  float: left; }
  .small-up-1 > .column:nth-of-type(1n), .small-up-1 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-1 > .column:nth-of-type(1n+1), .small-up-1 > .columns:nth-of-type(1n+1) {
    clear: both; }
  .small-up-1 > .column:last-child, .small-up-1 > .columns:last-child {
    float: left; }

.small-up-2 > .column, .small-up-2 > .columns {
  width: 50%;
  float: left; }
  .small-up-2 > .column:nth-of-type(1n), .small-up-2 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-2 > .column:nth-of-type(2n+1), .small-up-2 > .columns:nth-of-type(2n+1) {
    clear: both; }
  .small-up-2 > .column:last-child, .small-up-2 > .columns:last-child {
    float: left; }

.small-up-3 > .column, .small-up-3 > .columns {
  width: 33.3333333333%;
  float: left; }
  .small-up-3 > .column:nth-of-type(1n), .small-up-3 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-3 > .column:nth-of-type(3n+1), .small-up-3 > .columns:nth-of-type(3n+1) {
    clear: both; }
  .small-up-3 > .column:last-child, .small-up-3 > .columns:last-child {
    float: left; }

.small-up-4 > .column, .small-up-4 > .columns {
  width: 25%;
  float: left; }
  .small-up-4 > .column:nth-of-type(1n), .small-up-4 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-4 > .column:nth-of-type(4n+1), .small-up-4 > .columns:nth-of-type(4n+1) {
    clear: both; }
  .small-up-4 > .column:last-child, .small-up-4 > .columns:last-child {
    float: left; }

.small-up-5 > .column, .small-up-5 > .columns {
  width: 20%;
  float: left; }
  .small-up-5 > .column:nth-of-type(1n), .small-up-5 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-5 > .column:nth-of-type(5n+1), .small-up-5 > .columns:nth-of-type(5n+1) {
    clear: both; }
  .small-up-5 > .column:last-child, .small-up-5 > .columns:last-child {
    float: left; }

.small-up-6 > .column, .small-up-6 > .columns {
  width: 16.6666666667%;
  float: left; }
  .small-up-6 > .column:nth-of-type(1n), .small-up-6 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-6 > .column:nth-of-type(6n+1), .small-up-6 > .columns:nth-of-type(6n+1) {
    clear: both; }
  .small-up-6 > .column:last-child, .small-up-6 > .columns:last-child {
    float: left; }

.small-up-7 > .column, .small-up-7 > .columns {
  width: 14.2857142857%;
  float: left; }
  .small-up-7 > .column:nth-of-type(1n), .small-up-7 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-7 > .column:nth-of-type(7n+1), .small-up-7 > .columns:nth-of-type(7n+1) {
    clear: both; }
  .small-up-7 > .column:last-child, .small-up-7 > .columns:last-child {
    float: left; }

.small-up-8 > .column, .small-up-8 > .columns {
  width: 12.5%;
  float: left; }
  .small-up-8 > .column:nth-of-type(1n), .small-up-8 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-8 > .column:nth-of-type(8n+1), .small-up-8 > .columns:nth-of-type(8n+1) {
    clear: both; }
  .small-up-8 > .column:last-child, .small-up-8 > .columns:last-child {
    float: left; }

.small-collapse > .column, .small-collapse > .columns {
  padding-left: 0;
  padding-right: 0; }

.small-collapse .row {
  margin-left: 0;
  margin-right: 0; }

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-left: 0.625rem;
  padding-right: 0.625rem; }

.small-centered {
  float: none;
  margin-left: auto;
  margin-right: auto; }

.small-uncentered,
.small-push-0,
.small-pull-0 {
  position: static;
  margin-left: 0;
  margin-right: 0;
  float: left; }

@media screen and (min-width: 40em) {
  .medium-1 {
    width: 8.3333333333%; }
  .medium-push-1 {
    position: relative;
    left: 8.3333333333%; }
  .medium-pull-1 {
    position: relative;
    left: -8.3333333333%; }
  .medium-offset-0 {
    margin-left: 0%; }
  .medium-2 {
    width: 16.6666666667%; }
  .medium-push-2 {
    position: relative;
    left: 16.6666666667%; }
  .medium-pull-2 {
    position: relative;
    left: -16.6666666667%; }
  .medium-offset-1 {
    margin-left: 8.3333333333%; }
  .medium-3 {
    width: 25%; }
  .medium-push-3 {
    position: relative;
    left: 25%; }
  .medium-pull-3 {
    position: relative;
    left: -25%; }
  .medium-offset-2 {
    margin-left: 16.6666666667%; }
  .medium-4 {
    width: 33.3333333333%; }
  .medium-push-4 {
    position: relative;
    left: 33.3333333333%; }
  .medium-pull-4 {
    position: relative;
    left: -33.3333333333%; }
  .medium-offset-3 {
    margin-left: 25%; }
  .medium-5 {
    width: 41.6666666667%; }
  .medium-push-5 {
    position: relative;
    left: 41.6666666667%; }
  .medium-pull-5 {
    position: relative;
    left: -41.6666666667%; }
  .medium-offset-4 {
    margin-left: 33.3333333333%; }
  .medium-6 {
    width: 50%; }
  .medium-push-6 {
    position: relative;
    left: 50%; }
  .medium-pull-6 {
    position: relative;
    left: -50%; }
  .medium-offset-5 {
    margin-left: 41.6666666667%; }
  .medium-7 {
    width: 58.3333333333%; }
  .medium-push-7 {
    position: relative;
    left: 58.3333333333%; }
  .medium-pull-7 {
    position: relative;
    left: -58.3333333333%; }
  .medium-offset-6 {
    margin-left: 50%; }
  .medium-8 {
    width: 66.6666666667%; }
  .medium-push-8 {
    position: relative;
    left: 66.6666666667%; }
  .medium-pull-8 {
    position: relative;
    left: -66.6666666667%; }
  .medium-offset-7 {
    margin-left: 58.3333333333%; }
  .medium-9 {
    width: 75%; }
  .medium-push-9 {
    position: relative;
    left: 75%; }
  .medium-pull-9 {
    position: relative;
    left: -75%; }
  .medium-offset-8 {
    margin-left: 66.6666666667%; }
  .medium-10 {
    width: 83.3333333333%; }
  .medium-push-10 {
    position: relative;
    left: 83.3333333333%; }
  .medium-pull-10 {
    position: relative;
    left: -83.3333333333%; }
  .medium-offset-9 {
    margin-left: 75%; }
  .medium-11 {
    width: 91.6666666667%; }
  .medium-push-11 {
    position: relative;
    left: 91.6666666667%; }
  .medium-pull-11 {
    position: relative;
    left: -91.6666666667%; }
  .medium-offset-10 {
    margin-left: 83.3333333333%; }
  .medium-12 {
    width: 100%; }
  .medium-offset-11 {
    margin-left: 91.6666666667%; }
  .medium-up-1 > .column, .medium-up-1 > .columns {
    width: 100%;
    float: left; }
    .medium-up-1 > .column:nth-of-type(1n), .medium-up-1 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-1 > .column:nth-of-type(1n+1), .medium-up-1 > .columns:nth-of-type(1n+1) {
      clear: both; }
    .medium-up-1 > .column:last-child, .medium-up-1 > .columns:last-child {
      float: left; }
  .medium-up-2 > .column, .medium-up-2 > .columns {
    width: 50%;
    float: left; }
    .medium-up-2 > .column:nth-of-type(1n), .medium-up-2 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-2 > .column:nth-of-type(2n+1), .medium-up-2 > .columns:nth-of-type(2n+1) {
      clear: both; }
    .medium-up-2 > .column:last-child, .medium-up-2 > .columns:last-child {
      float: left; }
  .medium-up-3 > .column, .medium-up-3 > .columns {
    width: 33.3333333333%;
    float: left; }
    .medium-up-3 > .column:nth-of-type(1n), .medium-up-3 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-3 > .column:nth-of-type(3n+1), .medium-up-3 > .columns:nth-of-type(3n+1) {
      clear: both; }
    .medium-up-3 > .column:last-child, .medium-up-3 > .columns:last-child {
      float: left; }
  .medium-up-4 > .column, .medium-up-4 > .columns {
    width: 25%;
    float: left; }
    .medium-up-4 > .column:nth-of-type(1n), .medium-up-4 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-4 > .column:nth-of-type(4n+1), .medium-up-4 > .columns:nth-of-type(4n+1) {
      clear: both; }
    .medium-up-4 > .column:last-child, .medium-up-4 > .columns:last-child {
      float: left; }
  .medium-up-5 > .column, .medium-up-5 > .columns {
    width: 20%;
    float: left; }
    .medium-up-5 > .column:nth-of-type(1n), .medium-up-5 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-5 > .column:nth-of-type(5n+1), .medium-up-5 > .columns:nth-of-type(5n+1) {
      clear: both; }
    .medium-up-5 > .column:last-child, .medium-up-5 > .columns:last-child {
      float: left; }
  .medium-up-6 > .column, .medium-up-6 > .columns {
    width: 16.6666666667%;
    float: left; }
    .medium-up-6 > .column:nth-of-type(1n), .medium-up-6 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-6 > .column:nth-of-type(6n+1), .medium-up-6 > .columns:nth-of-type(6n+1) {
      clear: both; }
    .medium-up-6 > .column:last-child, .medium-up-6 > .columns:last-child {
      float: left; }
  .medium-up-7 > .column, .medium-up-7 > .columns {
    width: 14.2857142857%;
    float: left; }
    .medium-up-7 > .column:nth-of-type(1n), .medium-up-7 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-7 > .column:nth-of-type(7n+1), .medium-up-7 > .columns:nth-of-type(7n+1) {
      clear: both; }
    .medium-up-7 > .column:last-child, .medium-up-7 > .columns:last-child {
      float: left; }
  .medium-up-8 > .column, .medium-up-8 > .columns {
    width: 12.5%;
    float: left; }
    .medium-up-8 > .column:nth-of-type(1n), .medium-up-8 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-8 > .column:nth-of-type(8n+1), .medium-up-8 > .columns:nth-of-type(8n+1) {
      clear: both; }
    .medium-up-8 > .column:last-child, .medium-up-8 > .columns:last-child {
      float: left; }
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .medium-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem; }
  .medium-centered {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .medium-uncentered,
  .medium-push-0,
  .medium-pull-0 {
    position: static;
    margin-left: 0;
    margin-right: 0;
    float: left; } }

@media screen and (min-width: 64em) {
  .large-1 {
    width: 8.3333333333%; }
  .large-push-1 {
    position: relative;
    left: 8.3333333333%; }
  .large-pull-1 {
    position: relative;
    left: -8.3333333333%; }
  .large-offset-0 {
    margin-left: 0%; }
  .large-2 {
    width: 16.6666666667%; }
  .large-push-2 {
    position: relative;
    left: 16.6666666667%; }
  .large-pull-2 {
    position: relative;
    left: -16.6666666667%; }
  .large-offset-1 {
    margin-left: 8.3333333333%; }
  .large-3 {
    width: 25%; }
  .large-push-3 {
    position: relative;
    left: 25%; }
  .large-pull-3 {
    position: relative;
    left: -25%; }
  .large-offset-2 {
    margin-left: 16.6666666667%; }
  .large-4 {
    width: 33.3333333333%; }
  .large-push-4 {
    position: relative;
    left: 33.3333333333%; }
  .large-pull-4 {
    position: relative;
    left: -33.3333333333%; }
  .large-offset-3 {
    margin-left: 25%; }
  .large-5 {
    width: 41.6666666667%; }
  .large-push-5 {
    position: relative;
    left: 41.6666666667%; }
  .large-pull-5 {
    position: relative;
    left: -41.6666666667%; }
  .large-offset-4 {
    margin-left: 33.3333333333%; }
  .large-6 {
    width: 50%; }
  .large-push-6 {
    position: relative;
    left: 50%; }
  .large-pull-6 {
    position: relative;
    left: -50%; }
  .large-offset-5 {
    margin-left: 41.6666666667%; }
  .large-7 {
    width: 58.3333333333%; }
  .large-push-7 {
    position: relative;
    left: 58.3333333333%; }
  .large-pull-7 {
    position: relative;
    left: -58.3333333333%; }
  .large-offset-6 {
    margin-left: 50%; }
  .large-8 {
    width: 66.6666666667%; }
  .large-push-8 {
    position: relative;
    left: 66.6666666667%; }
  .large-pull-8 {
    position: relative;
    left: -66.6666666667%; }
  .large-offset-7 {
    margin-left: 58.3333333333%; }
  .large-9 {
    width: 75%; }
  .large-push-9 {
    position: relative;
    left: 75%; }
  .large-pull-9 {
    position: relative;
    left: -75%; }
  .large-offset-8 {
    margin-left: 66.6666666667%; }
  .large-10 {
    width: 83.3333333333%; }
  .large-push-10 {
    position: relative;
    left: 83.3333333333%; }
  .large-pull-10 {
    position: relative;
    left: -83.3333333333%; }
  .large-offset-9 {
    margin-left: 75%; }
  .large-11 {
    width: 91.6666666667%; }
  .large-push-11 {
    position: relative;
    left: 91.6666666667%; }
  .large-pull-11 {
    position: relative;
    left: -91.6666666667%; }
  .large-offset-10 {
    margin-left: 83.3333333333%; }
  .large-12 {
    width: 100%; }
  .large-offset-11 {
    margin-left: 91.6666666667%; }
  .large-up-1 > .column, .large-up-1 > .columns {
    width: 100%;
    float: left; }
    .large-up-1 > .column:nth-of-type(1n), .large-up-1 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-1 > .column:nth-of-type(1n+1), .large-up-1 > .columns:nth-of-type(1n+1) {
      clear: both; }
    .large-up-1 > .column:last-child, .large-up-1 > .columns:last-child {
      float: left; }
  .large-up-2 > .column, .large-up-2 > .columns {
    width: 50%;
    float: left; }
    .large-up-2 > .column:nth-of-type(1n), .large-up-2 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-2 > .column:nth-of-type(2n+1), .large-up-2 > .columns:nth-of-type(2n+1) {
      clear: both; }
    .large-up-2 > .column:last-child, .large-up-2 > .columns:last-child {
      float: left; }
  .large-up-3 > .column, .large-up-3 > .columns {
    width: 33.3333333333%;
    float: left; }
    .large-up-3 > .column:nth-of-type(1n), .large-up-3 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-3 > .column:nth-of-type(3n+1), .large-up-3 > .columns:nth-of-type(3n+1) {
      clear: both; }
    .large-up-3 > .column:last-child, .large-up-3 > .columns:last-child {
      float: left; }
  .large-up-4 > .column, .large-up-4 > .columns {
    width: 25%;
    float: left; }
    .large-up-4 > .column:nth-of-type(1n), .large-up-4 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-4 > .column:nth-of-type(4n+1), .large-up-4 > .columns:nth-of-type(4n+1) {
      clear: both; }
    .large-up-4 > .column:last-child, .large-up-4 > .columns:last-child {
      float: left; }
  .large-up-5 > .column, .large-up-5 > .columns {
    width: 20%;
    float: left; }
    .large-up-5 > .column:nth-of-type(1n), .large-up-5 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-5 > .column:nth-of-type(5n+1), .large-up-5 > .columns:nth-of-type(5n+1) {
      clear: both; }
    .large-up-5 > .column:last-child, .large-up-5 > .columns:last-child {
      float: left; }
  .large-up-6 > .column, .large-up-6 > .columns {
    width: 16.6666666667%;
    float: left; }
    .large-up-6 > .column:nth-of-type(1n), .large-up-6 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-6 > .column:nth-of-type(6n+1), .large-up-6 > .columns:nth-of-type(6n+1) {
      clear: both; }
    .large-up-6 > .column:last-child, .large-up-6 > .columns:last-child {
      float: left; }
  .large-up-7 > .column, .large-up-7 > .columns {
    width: 14.2857142857%;
    float: left; }
    .large-up-7 > .column:nth-of-type(1n), .large-up-7 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-7 > .column:nth-of-type(7n+1), .large-up-7 > .columns:nth-of-type(7n+1) {
      clear: both; }
    .large-up-7 > .column:last-child, .large-up-7 > .columns:last-child {
      float: left; }
  .large-up-8 > .column, .large-up-8 > .columns {
    width: 12.5%;
    float: left; }
    .large-up-8 > .column:nth-of-type(1n), .large-up-8 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-8 > .column:nth-of-type(8n+1), .large-up-8 > .columns:nth-of-type(8n+1) {
      clear: both; }
    .large-up-8 > .column:last-child, .large-up-8 > .columns:last-child {
      float: left; }
  .large-collapse > .column, .large-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .large-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem; }
  .large-centered {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .large-uncentered,
  .large-push-0,
  .large-pull-0 {
    position: static;
    margin-left: 0;
    margin-right: 0;
    float: left; } }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .hide-for-small-only {
    display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important; } }

@media screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important; } }

@media screen and (max-width: 39.9375em) {
  .show-for-medium {
    display: none !important; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .hide-for-medium-only {
    display: none !important; } }

@media screen and (max-width: 39.9375em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important; } }

@media screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important; } }

@media screen and (max-width: 63.9375em) {
  .show-for-large {
    display: none !important; } }

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .hide-for-large-only {
    display: none !important; } }

@media screen and (max-width: 63.9375em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important; } }

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0); }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  height: auto;
  width: auto;
  overflow: visible;
  clip: auto; }

.show-for-landscape,
.hide-for-portrait {
  display: block !important; }
  @media screen and (orientation: landscape) {
    .show-for-landscape,
    .hide-for-portrait {
      display: block !important; } }
  @media screen and (orientation: portrait) {
    .show-for-landscape,
    .hide-for-portrait {
      display: none !important; } }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }
  @media screen and (orientation: landscape) {
    .hide-for-landscape,
    .show-for-portrait {
      display: none !important; } }
  @media screen and (orientation: portrait) {
    .hide-for-landscape,
    .show-for-portrait {
      display: block !important; } }

.main-nav li {
  list-style: none;
  padding: 0; }

.main-nav a {
  color: #817f7f;
  font-size: 40px;
  text-decoration: none;
  text-transform: uppercase; }
  .main-nav a:hover {
    color: #e2001a; }

.scroll-nav {
  background-color: #fff;
  box-shadow: 0 0 60px -20px rgba(0, 0, 0, 0.75);
  min-height: 65px;
  margin-left: -350px;
  max-width: 1900px;
  position: fixed;
  -webkit-transition: all 0.8s ease;
  transition: all 0.8s ease;
  top: -50%;
  width: 100%;
  z-index: 5; }
  .scroll-nav li {
    float: left;
    font-size: 27px;
    line-height: 55px;
    list-style: none;
    margin-right: 25px;
    margin-top: -8px;
    text-transform: uppercase; }
    .scroll-nav li:nth-last-child(2) {
      width: 30%; }
    .scroll-nav li:last-child {
      background: #e2001a url("../Images/navigation-rectangle.svg") center left no-repeat;
      background-size: auto 108px;
      -webkit-clip-path: polygon(248px 380px, 4px 67px, 24px 0px, 248px 0px);
              clip-path: polygon(248px 380px, 4px 67px, 24px 0px, 248px 0px);
      float: right;
      margin: -13px 0 0;
      padding: 5px 0; }
      .scroll-nav li:last-child a {
        color: #fff;
        padding: 15px 35px 15px 60px; }
  .scroll-nav a {
    color: #817f7f; }
    .scroll-nav a:hover {
      color: #e2001a; }
  .scroll-nav--logo {
    height: 50px;
    margin-top: -9px;
    width: 50px; }
  .scroll-nav--button::after {
    content: '>';
    margin-left: 15px; }

.footer-nav ul {
  padding: 0; }

.footer-nav li {
  list-style: none;
  padding: 0; }

.footer-nav a {
  color: #817f7f;
  font-size: 40px;
  text-decoration: none;
  text-transform: uppercase; }
  .footer-nav a:hover {
    color: #fff; }

.hamburger-button {
  display: none; }

@media only screen and (min-width: 376px) and (max-width: 1440px) {
  .scroll-nav {
    margin-left: -71px; } }

@media only screen and (max-width: 1355px) {
  .scroll-nav li:nth-last-child(2) {
    width: 20%; } }

@media only screen and (max-width: 1159px) {
  .scroll-nav li {
    margin-bottom: 5px;
    margin-right: 1.12rem; }
    .scroll-nav li:nth-last-child(2) {
      clear: left;
      float: left;
      margin-left: 70px; } }

@media only screen and (max-width: 1159px) {
  .scroll-nav li:nth-last-child(2) {
    display: none; } }

@media only screen and (max-width: 375px) {
  .scroll-nav {
    display: none; }
  .hamburger-button {
    background: url("../Images/mobil-nav-button.png") left top no-repeat;
    background-size: contain;
    display: inline;
    height: 200px;
    left: 0;
    position: absolute;
    top: 0;
    width: 110px;
    z-index: 5; }
  .main-nav {
    background-color: #3d3a3a;
    left: -375px;
    padding: 25px;
    position: absolute;
    top: 0;
    width: 375px; }
    .main-nav li {
      list-style: none;
      padding: 0; }
    .main-nav a {
      color: #817f7f;
      font-size: 27px;
      line-height: 55px;
      text-decoration: none;
      text-transform: uppercase; }
      .main-nav a:hover {
        color: #e2001a; } }

body {
  background: #ebebeb url("../Images/background-image.jpg") center center repeat; }

.page-wrapper {
  background-color: #fff;
  margin: auto;
  width: 1900px; }

.row {
  min-width: 1140px;
  width: 100%; }

.header--section,
.main--section,
.footer--section {
  min-width: 1160px;
  width: 100%; }

.header--section {
  background: url("../Images/header-background.png") top left no-repeat;
  color: #817f7f;
  font-size: 14px;
  z-index: 2; }
  .header--section p {
    clear: both; }

.header--box-left {
  height: 1140px;
  padding-right: 125px;
  padding-top: 75px;
  text-align: right;
  width: 724px; }

.header--logo {
  height: 80px;
  left: 7em;
  margin-bottom: 150px;
  position: relative;
  width: auto; }

.header--bdvi-logo {
  height: auto;
  margin-top: 15px;
  width: 70px; }

.main--box-left {
  border-right: 1px solid #00a2ff;
  margin-top: 40px;
  text-align: right;
  width: 315px; }
  .main--box-left p {
    margin: 0 0 10px;
    padding: 0; }

.main--box-left-mobil {
  display: none; }

.main--box-right {
  margin-left: 85px;
  margin-top: -570px; }

.main--box-top {
  margin-top: -570px;
  margin-bottom: -610px; }

.main--box-bottom {
  margin-top: -185px; }

.main--coverage-link {
  color: #e2001a;
  text-decoration: none; }
  .main--coverage-link div {
    background: url("../Images/coverage-button.png") top left no-repeat;
    height: 65px;
    left: 1250px;
    padding-top: 23px;
    position: relative;
    text-align: center;
    text-transform: uppercase;
    top: -1076px;
    width: 270px;
    z-index: 2; }

.main--section-index + .footer--section {
  margin-top: -67px; }

.footer--section {
  background: url("../Images/footer-background.png") top center no-repeat;
  color: #817f7f;
  font-size: 18px;
  margin-top: 50px;
  min-height: 300px;
  padding-bottom: 8rem;
  padding-top: 12%; }
  .footer--section .mobil {
    display: none; }

.footer--address {
  color: #fff;
  font-size: 18px; }
  .footer--address a {
    color: #fff;
    text-decoration: underline; }

.footer--copyright {
  color: #817f7f;
  font-size: 14px;
  margin-top: 3em; }

.footer--contact h2,
.footer--contact p {
  color: #fff;
  font-style: italic;
  font-weight: 300; }

.footer--contact h2 {
  font-size: 40px; }

@media only screen and (min-width: 376px) and (max-width: 1440px) {
  .page-wrapper {
    width: 1440px; }
  .row {
    min-width: 1300px;
    width: 100%; }
  .header--section,
  .main--section,
  .footer--section {
    background-position: top center;
    background-size: 1920px;
    min-width: 1440px;
    width: 100%; }
  .header--box-left {
    height: 1140px;
    padding-right: 135px;
    width: 494px; }
  .main--coverage-link div {
    left: 870px;
    top: -1085px; }
  .main--box-right {
    margin-left: 117px;
    margin-top: -690px; }
  .main--box-bottom {
    margin-top: -280px; }
  .main--section-index + .footer--section {
    margin-top: -141px; } }

@media only screen and (max-width: 375px) {
  .page-wrapper {
    margin: 0 auto;
    overflow: hidden;
    width: 375px; }
  .row {
    width: 375px; }
  .header--section,
  .main--section,
  .footer--section {
    max-width: 375px;
    min-width: 375px;
    padding: 20px;
    width: 375px; }
  .header--section {
    background: #ebebeb url("../Images/background-image.jpg") center center repeat;
    -webkit-clip-path: polygon(375px 320px, 0 280px, 0 0, 375px 0);
            clip-path: polygon(375px 320px, 0 280px, 0 0, 375px 0);
    margin-bottom: -90px; }
  .header--box-left {
    height: 280px;
    padding: 0;
    text-align: right;
    width: 100%; }
  .header--logo {
    height: auto;
    margin-bottom: 0;
    position: static;
    width: 240px; }
  .header--bdvi-logo {
    height: auto;
    margin-top: 15px;
    width: 70px; }
  .header--search-form {
    display: none; }
  .main--coverage-link {
    display: none; }
  .main--coverage img {
    left: -15%;
    position: relative; }
  .main--box-top, .main--box-bottom, .main--box-right, .main--box-left-mobil {
    clear: both;
    float: none !important;
    margin-top: 0;
    width: 335px; }
  .main--box-top {
    margin-left: 0; }
  .main--box-bottom {
    margin-top: -150px; }
  .main--box-right {
    margin-left: 0; }
  .main--box-left {
    display: none; }
  .main--box-left-mobil {
    border-top: 1px solid #00a2ff;
    clear: both;
    display: inline;
    float: left !important;
    margin-top: 30px;
    padding-top: 30px;
    text-align: left; }
  .main--section-index + .footer--section {
    margin-top: 305px; }
  .footer--section {
    background: #3d3a3a;
    margin-top: 10px;
    padding-bottom: 0;
    padding-top: 100px; }
    .footer--section div {
      width: 335px; }
      .footer--section div .footer--contact {
        left: 0; }
      .footer--section div .mobile {
        background: #333;
        -webkit-clip-path: polygon(375px 1305px, 0 1305px, 0 50px, 375px 20px);
                clip-path: polygon(375px 1305px, 0 1305px, 0 50px, 375px 20px);
        clear: both;
        display: inherit;
        float: none !important;
        left: 0;
        margin-bottom: -25px;
        margin-left: -20px;
        padding: 90px 30px 25px;
        width: 375px; }
  .medium-offset-1 {
    margin-left: 0; } }

:target {
  position: relative;
  top: -120px;
  padding-top: 120px;
  margin-bottom: -120px; }

h1 {
  color: #333;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 54px;
  font-weight: 300; }

h2 {
  color: #333;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 115px;
  font-weight: 700; }

.main--box-right h2 {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 27px;
  font-weight: 300; }

.main--box-right .main--coverage-subtitle {
  font-size: 115px;
  font-weight: 700; }

h3 {
  color: #333;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 22px;
  font-weight: 300; }

h4 {
  color: #333;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 20px;
  font-weight: 300;
  margin: 0 0 15px;
  padding-top: 0; }

p {
  color: #333;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  font-weight: 300;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto; }

a {
  color: #e2001a;
  font-family: "Source Sans Pro", sans-serif;
  font-weight: 300;
  text-decoration: none;
  -webkit-transition: all 0.2s ease-in;
  transition: all 0.2s ease-in; }

button::before {
  -webkit-transition: all 0.2s ease-in;
  transition: all 0.2s ease-in; }

li,
.ce-menu li:not {
  color: #333;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  font-weight: 300;
  padding: 10px 0 10px 10px; }

b {
  font-family: "Source Sans Pro", sans-serif;
  font-weight: 600; }

input,
textarea {
  font-family: "Source Sans Pro", sans-serif;
  font-weight: 300; }

@media only screen and (max-width: 375px) {
  h2,
  h3,
  h4,
  p,
  a {
    clear: both; }
  h1 {
    font-size: 27px; }
  h2 {
    font-size: 40px; } }

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

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

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

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

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

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../Images/ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("../Fonts/slick.eot");
  src: url("../Fonts/slick.eot?#iefix") format("embedded-opentype"), url("../Fonts/slick.woff") format("woff"), url("../Fonts/slick.ttf") format("truetype"), url("../Fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 6px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75; }

.slider,
.slick-slide {
  max-height: 570px; }

.slick-dots {
  bottom: 55px;
  margin-left: 25px;
  text-align: left;
  -webkit-transform: rotate(-5deg);
          transform: rotate(-5deg);
  width: 20%; }
  .slick-dots li button::before {
    content: url("../Images/slick-dots.svg"); }

.main--coverage {
  -webkit-clip-path: polygon(3px 568px, 60px 0px, 1182px 70px, 1182px 440px);
          clip-path: polygon(3px 568px, 60px 0px, 1182px 70px, 1182px 440px);
  float: right;
  height: 567px;
  left: 365px;
  margin-top: -600px;
  max-width: 1180px;
  overflow: hidden;
  position: relative;
  width: 160%;
  z-index: 1; }
  .main--coverage-title, .main--coverage-subtitle {
    color: #fff;
    left: 100px;
    position: absolute;
    text-shadow: 0 0 5px #524d4d; }
  .main--coverage-title {
    top: 250px; }
  .main--coverage-subtitle {
    display: inline;
    top: 230px; }

@media only screen and (min-width: 376px) and (max-width: 1440px) {
  .slick-dots {
    bottom: 145px;
    margin-left: 25px; }
  .main--coverage-title {
    top: 180px; }
  .main--coverage-subtitle {
    font-size: 85px !important;
    top: 190px; }
  .main--box-top .main--coverage {
    -webkit-clip-path: polygon(0px 463px, 50px 2px, 939px 56px, 939px 358px);
            clip-path: polygon(0px 463px, 50px 2px, 939px 56px, 939px 358px);
    left: 325px; }
  .main--box-right .main--coverage {
    -webkit-clip-path: polygon(0px 463px, 50px 2px, 939px 56px, 939px 358px);
            clip-path: polygon(0px 463px, 50px 2px, 939px 56px, 939px 358px);
    height: 467px;
    left: 108px;
    top: 120px;
    width: 115%; } }

@media only screen and (min-width: 376px) and (max-width: 640px) {
  .main--coverage-title {
    max-width: 340px;
    left: 70px;
    top: 165px; }
  .main--coverage-subtitle {
    left: 70px;
    top: 180px; }
  .main--box-top .main--coverage {
    -webkit-clip-path: polygon(45px 0px, 0px 463px, 940px 375px, 940px 53px);
            clip-path: polygon(45px 0px, 0px 463px, 940px 375px, 940px 53px);
    left: 323px;
    top: 2px; }
  .main--box-right .main--coverage {
    left: 115px; } }

@media only screen and (max-width: 375px) {
  .main--coverage {
    -webkit-clip-path: polygon(0px 0px, 0px 245px, 400px 210px, 400px 60px);
            clip-path: polygon(0px 0px, 0px 245px, 400px 210px, 400px 60px);
    float: none;
    height: 250px;
    left: -50px; }
    .main--coverage-title {
      max-width: 340px;
      left: 50px;
      top: 75px; }
    .main--coverage-subtitle {
      font-size: 40px !important;
      left: 50px;
      top: 90px; }
  .main--box-top .main--coverage {
    margin-top: 0; }
  .main--box-right .main--coverage {
    margin-top: 10px; } }

.shariff {
  margin: 4rem 0 5rem;
  padding-bottom: 2rem; }
  .shariff button {
    height: 29px;
    margin: 30px 15px 40px 0;
    width: 29px; }
  .shariff ul {
    list-style-type: none;
    padding-left: 0; }
  .shariff li {
    float: left;
    margin-right: .8rem; }
  .shariff .share_text {
    display: none; }
  .shariff .fa::after {
    content: '';
    padding-left: 2.5rem;
    padding-top: 1rem;
    -webkit-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 40px 80px; }
  .shariff .fa:hover::after {
    background-position: 0 -40px; }
  .shariff .fa-google-plus::after {
    background-image: url("../Images/icon-googleplus.png"); }
  .shariff .fa-facebook::after {
    background-image: url("../Images/icon-facebook.png"); }
  .shariff .fa-xing::after {
    background-image: url("../Images/icon-xing.png"); }
  .shariff .fa-linkedin::after {
    background-image: url("../Images/icon-linkedin.png"); }
  .shariff .fa-twitter::after {
    background-image: url("../Images/icon-twitter.png"); }

@media only screen and (max-width: 640px) {
  .shariff {
    margin: 3rem 0 2rem; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy5jc3MiLCJDb21wb25lbnRzL193ZWJmb250cy5zY3NzIiwiQ29tcG9uZW50cy9fY29udGVudGVsZW1lbnQuc2NzcyIsIlNldHRpbmdzL192YXJpYWJsZXMuc2NzcyIsIkNvbXBvbmVudHMvX2ZsdWlkLXN0eWxlZC1jb250ZW50LnNjc3MiLCJDb21wb25lbnRzL19mb3JtLnNjc3MiLCIuLi8uLi8uLi9WZW5kb3IvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uL1ZlbmRvci9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCIuLi8uLi8uLi9WZW5kb3IvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIi4uLy4uLy4uL1ZlbmRvci9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fdW5pdC5zY3NzIiwiLi4vLi4vLi4vVmVuZG9yL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi9WZW5kb3IvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Jvdy5zY3NzIiwiLi4vLi4vLi4vVmVuZG9yL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIi4uLy4uLy4uL1ZlbmRvci9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZ3V0dGVyLnNjc3MiLCIuLi8uLi8uLi9WZW5kb3IvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsIi4uLy4uLy4uL1ZlbmRvci9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MiLCIuLi8uLi8uLi9WZW5kb3IvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3NpemUuc2NzcyIsIi4uLy4uLy4uL1ZlbmRvci9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uL1ZlbmRvci9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi9WZW5kb3IvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIkNvbXBvbmVudHMvX25hdmlnYXRpb24uc2NzcyIsIkNvbXBvbmVudHMvX3BhZ2Uuc2NzcyIsIkNvbXBvbmVudHMvX3R5cGUuc2NzcyIsIi4uLy4uLy4uL1ZlbmRvci9zbGljay5qcy9zbGljay9zbGljay5zY3NzIiwiLi4vLi4vLi4vVmVuZG9yL3NsaWNrLmpzL3NsaWNrL3NsaWNrLXRoZW1lLnNjc3MiLCJDb21wb25lbnRzL19zbGljay5zY3NzIiwiQ29tcG9uZW50cy9fc2hhcmlmZi5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQix3RkFBWTtBQ0NaO0VBQ0Usd0VBQXNFO0VBQ3RFLDJFQUFrQjtVQUFsQixtRUFBa0I7RUFDbEIsY0FBYztFQUNkLGFBQWE7RUFDYixvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLFlBQVk7RUFDWixZQUFZO0VBQ1osV0FBVyxFQTRGWjtFQXJHRDtJQWFJLGVDTG9CO0lETXBCLDJDQ1V1QztJRFR2QyxnQkNzQndCO0lEckJ4QixtQkFBbUI7SUFDbkIsaUJBQWlCLEVBQ2xCO0VBbEJIO0lBcUJJLFlDbEJrQjtJRG1CbEIsMkNDRXVDO0lERHZDLGdCQ2dCc0I7SURmdEIsaUJBQWlCO0lBQ2pCLG1CQUFtQjtJQUNuQixZQUFZO0lBQ1osV0FBVztJQUNYLGdCQUFnQjtJQUNoQiwwQkFBMEIsRUFzQzNCO0lBbkVIO01BZ0NNLFdBQVcsRUFDWjtJQWpDTDtNQW9DTSxzQkFBc0IsRUFDdkI7SUFyQ0w7TUF3Q00sNEJBQTRCLEVBQzdCO0lBekNMO01BOENNLFlBQVk7TUFDWiwwQkFBMEIsRUFDM0I7SUFoREw7TUFtRE0sdUVDUW9FLEVEUHJFO0lBcERMO01BdURNLHVFQ0tvRSxFREpyRTtJQXhETDtNQTJETSx5RUNFd0UsRUREekU7SUE1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RU03RUosc0JEZXNCLEVMZ0VqQjs7QUFJQztFT2xGSixtQkFBbUI7RUFDbkIscUJBSG1CLEVQc0ZkOztBQUVEO0VPdEZKLG1CQUFtQjtFQUNuQixzQkFIbUIsRVAwRmQ7O0FBTUg7RU90RUosaUJGVnNCLEVMa0ZqQjs7QUFwQkQ7RU03RUosc0JEZXNCLEVMZ0VqQjs7QUFJQztFT2xGSixtQkFBbUI7RUFDbkIscUJBSG1CLEVQc0ZkOztBQUVEO0VPdEZKLG1CQUFtQjtFQUNuQixzQkFIbUIsRVAwRmQ7O0FBTUg7RU90RUosNEJGVnNCLEVMa0ZqQjs7QUFwQkQ7RU03RUosWURlc0IsRUxnRWpCOztBQWdCRDtFT3RFSiw0QkZWc0IsRUxrRmpCOztBQUtEO0VRbkdGLFlBQWlCO0VBQ2pCLFlWb0Z1RCxFVXZFeEQ7RVJxRkc7SVEvRkEsWUFBWSxFQUNiO0VSOEZDO0lRM0ZBLFlBQVksRUFDYjtFUjBGQztJUXZGQSxZQUFZLEVBQ2I7O0FSc0ZDO0VRbkdGLFdBQWlCO0VBQ2pCLFlWb0Z1RCxFVXZFeEQ7RVJxRkc7SVEvRkEsWUFBWSxFQUNiO0VSOEZDO0lRM0ZBLFlBQVksRUFDYjtFUjBGQztJUXZGQSxZQUFZLEVBQ2I7O0FSc0ZDO0VRbkdGLHNCQUFpQjtFQUNqQixZVm9GdUQsRVV2RXhEO0VScUZHO0lRL0ZBLFlBQVksRUFDYjtFUjhGQztJUTNGQSxZQUFZLEVBQ2I7RVIwRkM7SVF2RkEsWUFBWSxFQUNiOztBUnNGQztFUW5HRixXQUFpQjtFQUNqQixZVm9GdUQsRVV2RXhEO0VScUZHO0lRL0ZBLFlBQVksRUFDYjtFUjhGQztJUTNGQSxZQUFZLEVBQ2I7RVIwRkM7SVF2RkEsWUFBWSxFQUNiOztBUnNGQztFUW5HRixXQUFpQjtFQUNqQixZVm9GdUQsRVV2RXhEO0VScUZHO0lRL0ZBLFlBQVksRUFDYjtFUjhGQztJUTNGQSxZQUFZLEVBQ2I7RVIwRkM7SVF2RkEsWUFBWSxFQUNiOztBUnNGQztFUW5HRixzQkFBaUI7RUFDakIsWVZvRnVELEVVdkV4RDtFUnFGRztJUS9GQSxZQUFZLEVBQ2I7RVI4RkM7SVEzRkEsWUFBWSxFQUNiO0VSMEZDO0lRdkZBLFlBQVksRUFDYjs7QVJzRkM7RVFuR0Ysc0JBQWlCO0VBQ2pCLFlWb0Z1RCxFVXZFeEQ7RVJxRkc7SVEvRkEsWUFBWSxFQUNiO0VSOEZDO0lRM0ZBLFlBQVksRUFDYjtFUjBGQztJUXZGQSxZQUFZLEVBQ2I7O0FSc0ZDO0VRbkdGLGFBQWlCO0VBQ2pCLFlWb0Z1RCxFVXZFeEQ7RVJxRkc7SVEvRkEsWUFBWSxFQUNiO0VSOEZDO0lRM0ZBLFlBQVksRUFDYjtFUjBGQztJUXZGQSxZQUFZLEVBQ2I7O0FSNEZEO0VHaEhGLGdCQUFnQjtFQUNoQixpQkFBaUIsRUhnSG1COztBQURsQztFQUlJLGVBQWU7RUFDZixnQkFBZ0IsRUFDakI7O0FBR0g7RUdoSEYsdUJBRGlCO0VBRWpCLHdCQUZpQixFSDBIOEI7O0FBSTdDO0VPN0hBLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsbUJBQW1CLEVQNkhsQjs7QUFHRDs7O0VPdkhGLGlCQUFpQjtFQUNqQixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLFlBQVksRVBzSFQ7O0FJYkQ7RUovQ0U7SU03RUoscUJEZXNCLEVMZ0VqQjtFQUlDO0lPbEZKLG1CQUFtQjtJQUNuQixvQkFIbUIsRVBzRmQ7RUFFRDtJT3RGSixtQkFBbUI7SUFDbkIscUJBSG1CLEVQMEZkO0VBTUg7SU90RUosZ0JGYnNCLEVMcUZqQjtFQXBCRDtJTTdFSixzQkRlc0IsRUxnRWpCO0VBSUM7SU9sRkosbUJBQW1CO0lBQ25CLHFCQUhtQixFUHNGZDtFQUVEO0lPdEZKLG1CQUFtQjtJQUNuQixzQkFIbUIsRVAwRmQ7RUFNSDtJT3RFSiwyQkZWc0IsRUxrRmpCO0VBcEJEO0lNN0VKLFdEZXNCLEVMZ0VqQjtFQUlDO0lPbEZKLG1CQUFtQjtJQUNuQixVQUhtQixFUHNGZDtFQUVEO0lPdEZKLG1CQUFtQjtJQUNuQixXQUhtQixFUDBGZDtFQU1IO0lPdEVKLDRCRlZzQixFTGtGakI7RUFwQkQ7SU03RUosc0JEZXNCLEVMZ0VqQjtFQUlDO0lPbEZKLG1CQUFtQjtJQUNuQixxQkFIbUIsRVBzRmQ7RUFFRDtJT3RGSixtQkFBbUI7SUFDbkIsc0JBSG1CLEVQMEZkO0VBTUg7SU90RUosaUJGVnNCLEVMa0ZqQjtFQXBCRDtJTTdFSixzQkRlc0IsRUxnRWpCO0VBSUM7SU9sRkosbUJBQW1CO0lBQ25CLHFCQUhtQixFUHNGZDtFQUVEO0lPdEZKLG1CQUFtQjtJQUNuQixzQkFIbUIsRVAwRmQ7RUFNSDtJT3RFSiw0QkZWc0IsRUxrRmpCO0VBcEJEO0lNN0VKLFdEZXNCLEVMZ0VqQjtFQUlDO0lPbEZKLG1CQUFtQjtJQUNuQixVQUhtQixFUHNGZDtFQUVEO0lPdEZKLG1CQUFtQjtJQUNuQixXQUhtQixFUDBGZDtFQU1IO0lPdEVKLDRCRlZzQixFTGtGakI7RUFwQkQ7SU03RUosc0JEZXNCLEVMZ0VqQjtFQUlDO0lPbEZKLG1CQUFtQjtJQUNuQixxQkFIbUIsRVBzRmQ7RUFFRDtJT3RGSixtQkFBbUI7SUFDbkIsc0JBSG1CLEVQMEZkO0VBTUg7SU90RUosaUJGVnNCLEVMa0ZqQjtFQXBCRDtJTTdFSixzQkRlc0IsRUxnRWpCO0VBSUM7SU9sRkosbUJBQW1CO0lBQ25CLHFCQUhtQixFUHNGZDtFQUVEO0lPdEZKLG1CQUFtQjtJQUNuQixzQkFIbUIsRVAwRmQ7RUFNSDtJT3RFSiw0QkZWc0IsRUxrRmpCO0VBcEJEO0lNN0VKLFdEZXNCLEVMZ0VqQjtFQUlDO0lPbEZKLG1CQUFtQjtJQUNuQixVQUhtQixFUHNGZDtFQUVEO0lPdEZKLG1CQUFtQjtJQUNuQixXQUhtQixFUDBGZDtFQU1IO0lPdEVKLDRCRlZzQixFTGtGakI7RUFwQkQ7SU03RUosc0JEZXNCLEVMZ0VqQjtFQUlDO0lPbEZKLG1CQUFtQjtJQUNuQixxQkFIbUIsRVBzRmQ7RUFFRDtJT3RGSixtQkFBbUI7SUFDbkIsc0JBSG1CLEVQMEZkO0VBTUg7SU90RUosaUJGVnNCLEVMa0ZqQjtFQXBCRDtJTTdFSixzQkRlc0IsRUxnRWpCO0VBSUM7SU9sRkosbUJBQW1CO0lBQ25CLHFCQUhtQixFUHNGZDtFQUVEO0lPdEZKLG1CQUFtQjtJQUNuQixzQkFIbUIsRVAwRmQ7RUFNSDtJT3RFSiw0QkZWc0IsRUxrRmpCO0VBcEJEO0lNN0VKLFlEZXNCLEVMZ0VqQjtFQWdCRDtJT3RFSiw0QkZWc0IsRUxrRmpCO0VBS0Q7SVFuR0YsWUFBaUI7SUFDakIsWVZvRnVELEVVdkV4RDtJUnFGRztNUS9GQSxZQUFZLEVBQ2I7SVI4RkM7TVEzRkEsWUFBWSxFQUNiO0lSMEZDO01RdkZBLFlBQVksRUFDYjtFUnNGQztJUW5HRixXQUFpQjtJQUNqQixZVm9GdUQsRVV2RXhEO0lScUZHO01RL0ZBLFlBQVksRUFDYjtJUjhGQztNUTNGQSxZQUFZLEVBQ2I7SVIwRkM7TVF2RkEsWUFBWSxFQUNiO0VSc0ZDO0lRbkdGLHNCQUFpQjtJQUNqQixZVm9GdUQsRVV2RXhEO0lScUZHO01RL0ZBLFlBQVksRUFDYjtJUjhGQztNUTNGQSxZQUFZLEVBQ2I7SVIwRkM7TVF2RkEsWUFBWSxFQUNiO0VSc0ZDO0lRbkdGLFdBQWlCO0lBQ2pCLFlWb0Z1RCxFVXZFeEQ7SVJxRkc7TVEvRkEsWUFBWSxFQUNiO0lSOEZDO01RM0ZBLFlBQVksRUFDYjtJUjBGQztNUXZGQSxZQUFZLEVBQ2I7RVJzRkM7SVFuR0YsV0FBaUI7SUFDakIsWVZvRnVELEVVdkV4RDtJUnFGRztNUS9GQSxZQUFZLEVBQ2I7SVI4RkM7TVEzRkEsWUFBWSxFQUNiO0lSMEZDO01RdkZBLFlBQVksRUFDYjtFUnNGQztJUW5HRixzQkFBaUI7SUFDakIsWVZvRnVELEVVdkV4RDtJUnFGRztNUS9GQSxZQUFZLEVBQ2I7SVI4RkM7TVEzRkEsWUFBWSxFQUNiO0lSMEZDO01RdkZBLFlBQVksRUFDYjtFUnNGQztJUW5HRixzQkFBaUI7SUFDakIsWVZvRnVELEVVdkV4RDtJUnFGRztNUS9GQSxZQUFZLEVBQ2I7SVI4RkM7TVEzRkEsWUFBWSxFQUNiO0lSMEZDO01RdkZBLFlBQVksRUFDYjtFUnNGQztJUW5HRixhQUFpQjtJQUNqQixZVm9GdUQsRVV2RXhEO0lScUZHO01RL0ZBLFlBQVksRUFDYjtJUjhGQztNUTNGQSxZQUFZLEVBQ2I7SVIwRkM7TVF2RkEsWUFBWSxFQUNiO0VSNEZEO0lHaEhGLGdCQUFnQjtJQUNoQixpQkFBaUIsRUhnSG1CO0VBRGxDO0lBSUksZUFBZTtJQUNmLGdCQUFnQixFQUNqQjtFQUdIO0lHaEhGLHdCQURpQjtJQUVqQix5QkFGaUIsRUgwSDhCO0VBSTdDO0lPN0hBLFlBQVk7SUFDWixrQkFBa0I7SUFDbEIsbUJBQW1CLEVQNkhsQjtFQUdEOzs7SU92SEYsaUJBQWlCO0lBQ2pCLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsWUFBWSxFUHNIVCxFQUFBOztBSWJEO0VKL0NFO0lNN0VKLHFCRGVzQixFTGdFakI7RUFJQztJT2xGSixtQkFBbUI7SUFDbkIsb0JBSG1CLEVQc0ZkO0VBRUQ7SU90RkosbUJBQW1CO0lBQ25CLHFCQUhtQixFUDBGZDtFQU1IO0lPdEVKLGdCRmJzQixFTHFGakI7RUFwQkQ7SU03RUosc0JEZXNCLEVMZ0VqQjtFQUlDO0lPbEZKLG1CQUFtQjtJQUNuQixxQkFIbUIsRVBzRmQ7RUFFRDtJT3RGSixtQkFBbUI7SUFDbkIsc0JBSG1CLEVQMEZkO0VBTUg7SU90RUosMkJGVnNCLEVMa0ZqQjtFQXBCRDtJTTdFSixXRGVzQixFTGdFakI7RUFJQztJT2xGSixtQkFBbUI7SUFDbkIsVUFIbUIsRVBzRmQ7RUFFRDtJT3RGSixtQkFBbUI7SUFDbkIsV0FIbUIsRVAwRmQ7RUFNSDtJT3RFSiw0QkZWc0IsRUxrRmpCO0VBcEJEO0lNN0VKLHNCRGVzQixFTGdFakI7RUFJQztJT2xGSixtQkFBbUI7SUFDbkIscUJBSG1CLEVQc0ZkO0VBRUQ7SU90RkosbUJBQW1CO0lBQ25CLHNCQUhtQixFUDBGZDtFQU1IO0lPdEVKLGlCRlZzQixFTGtGakI7RUFwQkQ7SU03RUosc0JEZXNCLEVMZ0VqQjtFQUlDO0lPbEZKLG1CQUFtQjtJQUNuQixxQkFIbUIsRVBzRmQ7RUFFRDtJT3RGSixtQkFBbUI7SUFDbkIsc0JBSG1CLEVQMEZkO0VBTUg7SU90RUosNEJGVnNCLEVMa0ZqQjtFQXBCRDtJTTdFSixXRGVzQixFTGdFakI7RUFJQztJT2xGSixtQkFBbUI7SUFDbkIsVUFIbUIsRVBzRmQ7RUFFRDtJT3RGSixtQkFBbUI7SUFDbkIsV0FIbUIsRVAwRmQ7RUFNSDtJT3RFSiw0QkZWc0IsRUxrRmpCO0VBcEJEO0lNN0VKLHNCRGVzQixFTGdFakI7RUFJQztJT2xGSixtQkFBbUI7SUFDbkIscUJBSG1CLEVQc0ZkO0VBRUQ7SU90RkosbUJBQW1CO0lBQ25CLHNCQUhtQixFUDBGZDtFQU1IO0lPdEVKLGlCRlZzQixFTGtGakI7RUFwQkQ7SU03RUosc0JEZXNCLEVMZ0VqQjtFQUlDO0lPbEZKLG1CQUFtQjtJQUNuQixxQkFIbUIsRVBzRmQ7RUFFRDtJT3RGSixtQkFBbUI7SUFDbkIsc0JBSG1CLEVQMEZkO0VBTUg7SU90RUosNEJGVnNCLEVMa0ZqQjtFQXBCRDtJTTdFSixXRGVzQixFTGdFakI7RUFJQztJT2xGSixtQkFBbUI7SUFDbkIsVUFIbUIsRVBzRmQ7RUFFRDtJT3RGSixtQkFBbUI7SUFDbkIsV0FIbUIsRVAwRmQ7RUFNSDtJT3RFSiw0QkZWc0IsRUxrRmpCO0VBcEJEO0lNN0VKLHNCRGVzQixFTGdFakI7RUFJQztJT2xGSixtQkFBbUI7SUFDbkIscUJBSG1CLEVQc0ZkO0VBRUQ7SU90RkosbUJBQW1CO0lBQ25CLHNCQUhtQixFUDBGZDtFQU1IO0lPdEVKLGlCRlZzQixFTGtGakI7RUFwQkQ7SU03RUosc0JEZXNCLEVMZ0VqQjtFQUlDO0lPbEZKLG1CQUFtQjtJQUNuQixxQkFIbUIsRVBzRmQ7RUFFRDtJT3RGSixtQkFBbUI7SUFDbkIsc0JBSG1CLEVQMEZkO0VBTUg7SU90RUosNEJGVnNCLEVMa0ZqQjtFQXBCRDtJTTdFSixZRGVzQixFTGdFakI7RUFnQkQ7SU90RUosNEJGVnNCLEVMa0ZqQjtFQUtEO0lRbkdGLFlBQWlCO0lBQ2pCLFlWb0Z1RCxFVXZFeEQ7SVJxRkc7TVEvRkEsWUFBWSxFQUNiO0lSOEZDO01RM0ZBLFlBQVksRUFDYjtJUjBGQztNUXZGQSxZQUFZLEVBQ2I7RVJzRkM7SVFuR0YsV0FBaUI7SUFDakIsWVZvRnVELEVVdkV4RDtJUnFGRztNUS9GQSxZQUFZLEVBQ2I7SVI4RkM7TVEzRkEsWUFBWSxFQUNiO0lSMEZDO01RdkZBLFlBQVksRUFDYjtFUnNGQztJUW5HRixzQkFBaUI7SUFDakIsWVZvRnVELEVVdkV4RDtJUnFGRztNUS9GQSxZQUFZLEVBQ2I7SVI4RkM7TVEzRkEsWUFBWSxFQUNiO0lSMEZDO01RdkZBLFlBQVksRUFDYjtFUnNGQztJUW5HRixXQUFpQjtJQUNqQixZVm9GdUQsRVV2RXhEO0lScUZHO01RL0ZBLFlBQVksRUFDYjtJUjhGQztNUTNGQSxZQUFZLEVBQ2I7SVIwRkM7TVF2RkEsWUFBWSxFQUNiO0VSc0ZDO0lRbkdGLFdBQWlCO0lBQ2pCLFlWb0Z1RCxFVXZFeEQ7SVJxRkc7TVEvRkEsWUFBWSxFQUNiO0lSOEZDO01RM0ZBLFlBQVksRUFDYjtJUjBGQztNUXZGQSxZQUFZLEVBQ2I7RVJzRkM7SVFuR0Ysc0JBQWlCO0lBQ2pCLFlWb0Z1RCxFVXZFeEQ7SVJxRkc7TVEvRkEsWUFBWSxFQUNiO0lSOEZDO01RM0ZBLFlBQVksRUFDYjtJUjBGQztNUXZGQSxZQUFZLEVBQ2I7RVJzRkM7SVFuR0Ysc0JBQWlCO0lBQ2pCLFlWb0Z1RCxFVXZFeEQ7SVJxRkc7TVEvRkEsWUFBWSxFQUNiO0lSOEZDO01RM0ZBLFlBQVksRUFDYjtJUjBGQztNUXZGQSxZQUFZLEVBQ2I7RVJzRkM7SVFuR0YsYUFBaUI7SUFDakIsWVZvRnVELEVVdkV4RDtJUnFGRztNUS9GQSxZQUFZLEVBQ2I7SVI4RkM7TVEzRkEsWUFBWSxFQUNiO0lSMEZDO01RdkZBLFlBQVksRUFDYjtFUjRGRDtJR2hIRixnQkFBZ0I7SUFDaEIsaUJBQWlCLEVIZ0htQjtFQURsQztJQUlJLGVBQWU7SUFDZixnQkFBZ0IsRUFDakI7RUFHSDtJR2hIRix3QkFEaUI7SUFFakIseUJBRmlCLEVIMEg4QjtFQUk3QztJTzdIQSxZQUFZO0lBQ1osa0JBQWtCO0lBQ2xCLG1CQUFtQixFUDZIbEI7RUFHRDs7O0lPdkhGLGlCQUFpQjtJQUNqQixlQUFl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NkJ2QjRDOEI7SXVCM0M5Qix5QkFBeUI7SUFDekIsNkJBQTZCO0lBQzdCLDJCQUEyQixFQUM1QjtFQWpDTDtJQW1DTSw2QkFBNkIsRUFDOUI7RUFwQ0w7SUF5Q00sdUR2QnlCdUIsRXVCeEJ4QjtFQTFDTDtJQStDTSxxRHZCb0JxQixFdUJuQnRCO0VBaERMO0lBcURNLGlEdkJlaUIsRXVCZGxCO0VBdERMO0lBMkRNLHFEdkJVcUIsRXVCVHRCO0VBNURMO0lBaUVNLG9EdkJLb0IsRXVCSnJCOztBQUtMO0VBQ0U7SUFDRSxvQkFBb0IsRUFDckIsRUFBQSIsImZpbGUiOiJzdHlsZXMuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9U291cmNlK1NhbnMrUHJvOjMwMCwzMDBpLDYwMCw3MDBcIik7XG4uY2UtZmlsdGVyYmFyIHtcbiAgYmFja2dyb3VuZDogIzAwYTJmZiB1cmwoXCIuLi9JbWFnZXMvZ2VvLWxpbmVzLnBuZ1wiKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcbiAgY2xpcC1wYXRoOiBwb2x5Z29uKDEyNDBweCA4NzVweCwgMCA3NzRweCwgNjNweCAxNDBweCwgMTI0MHB4IDEzcHgpO1xuICBoZWlnaHQ6IDg3NXB4O1xuICBsZWZ0OiAtMTA1cHg7XG4gIHBhZGRpbmc6IDE2MHB4IDkwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMTczcHg7XG4gIHdpZHRoOiAxNjElO1xuICB6LWluZGV4OiAwOyB9XG4gIC5jZS1maWx0ZXJiYXIgaDIge1xuICAgIGNvbG9yOiAjNTI0ZDRkO1xuICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAuY2UtZmlsdGVyYmFyLS1idXR0b24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICBvcGFjaXR5OiAuODtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLmNlLWZpbHRlcmJhci0tYnV0dG9uOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAuY2UtZmlsdGVyYmFyLS1idXR0b246OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDQwcHg7IH1cbiAgICAuY2UtZmlsdGVyYmFyLS1idXR0b246bGFzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwcHggNTBweDsgfVxuICAgIC5jZS1maWx0ZXJiYXItLWJ1dHRvbi1zdHJlZXQ6OmJlZm9yZSwgLmNlLWZpbHRlcmJhci0tYnV0dG9uLWdyb3VuZDo6YmVmb3JlLCAuY2UtZmlsdGVyYmFyLS1idXR0b24tYnVpbGRpbmc6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBhZGRpbmc6IDE1cHggNzJweCAxNXB4IDA7IH1cbiAgICAuY2UtZmlsdGVyYmFyLS1idXR0b24tc3RyZWV0OjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vSW1hZ2VzL2ZpbHRlci1zdHJlZXQucG5nXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9XG4gICAgLmNlLWZpbHRlcmJhci0tYnV0dG9uLWdyb3VuZDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL0ltYWdlcy9maWx0ZXItZ3JvdW5kLnBuZ1wiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDsgfVxuICAgIC5jZS1maWx0ZXJiYXItLWJ1dHRvbi1idWlsZGluZzo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL0ltYWdlcy9maWx0ZXItYnVpbGRpbmcucG5nXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9XG4gICAgLmNlLWZpbHRlcmJhci0tYnV0dG9uLWFsbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL0ltYWdlcy9maWx0ZXItYWxsLnBuZ1wiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcGFkZGluZzogMTVweCAxMzBweCAxNXB4IDA7IH1cbiAgLmNlLWZpbHRlcmJhci0ta2FjaGVsc2VjdGlvbiB7XG4gICAgaGVpZ2h0OiA0MTBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuICAuY2UtZmlsdGVyYmFyLS1rYWNoZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODIsIDc3LCA3NywgMC40KTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICBtaW4taGVpZ2h0OiAxMjVweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbjsgfVxuICAgIC5jZS1maWx0ZXJiYXItLWthY2hlbDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgICAuY2UtZmlsdGVyYmFyLS1rYWNoZWw6aG92ZXIgcCB7XG4gICAgICAgIGNvbG9yOiAjMDBhMmZmOyB9XG4gICAgLmNlLWZpbHRlcmJhci0ta2FjaGVsIHAge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmNlLWZpbHRlcmJhciAuZ3JpZC1pdGVtIHtcbiAgICB3aWR0aDogMjgwcHg7IH1cblxuYSAuY2UtZmlsdGVyYmFyLS1rYWNoZWw6OmFmdGVyIHtcbiAgYm90dG9tOiA1cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBjb250ZW50OiAnwrsnO1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgcmlnaHQ6IDE2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG5hIC5jZS1maWx0ZXJiYXItLWthY2hlbDpob3Zlcjo6YWZ0ZXIge1xuICBjb2xvcjogIzAwYTJmZjsgfVxuXG4uY2UtYWNjb3JkaW9uIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMnJlbSAwIDFyZW07XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmNlLWFjY29yZGlvbi0taXRlbSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VjZWNlYztcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMCAwIC4zcmVtO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLmNlLWFjY29yZGlvbi0tdGl0bGUge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMzMzICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgIC5jZS1hY2NvcmRpb24tLXRpdGxlOjpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLmNlLWFjY29yZGlvbi0tY29udGVudCB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgLmNlLWFjY29yZGlvbiAuaXMtYWN0aXZlIC5jZS1hY2NvcmRpb24tLXRpdGxlOjpiZWZvcmUge1xuICAgIGNvbG9yOiAjZTIwMDFhOyB9XG5cbi5jZS1idWxsZXRzIGxpLFxuLmNlLWJvZHl0ZXh0IGxpIHtcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpc3Qtc3R5bGU6IHVybChcIi4uL0ltYWdlcy9saXN0LWljb24ucG5nXCIpICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDEwcHggMCAxMHB4IDEwcHg7IH1cblxuLmNlLWRpdiB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCAjMzMzOyB9XG5cbi5jZS10YWJsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW46IDEwcHggMDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNlLXRhYmxlIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VjZWNlYzsgfVxuICAgIC5jZS10YWJsZSB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOyB9XG4gICAgICAuY2UtdGFibGUgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAuY2UtdGFibGUgdGQge1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIHBhZGRpbmc6IDVweCAxMHB4OyB9XG5cbi5jZS1idXR0b24ge1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgLmNlLWJ1dHRvbiBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgyLCA3NywgNzcsIDAuMSk7XG4gICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgcGFkZGluZzogMTJweCAxNXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbjsgfVxuICAuY2UtYnV0dG9uIGk6OmJlZm9yZSB7XG4gICAgY29udGVudDogdXJsKFwiLi4vSW1hZ2VzL2J1dHRvbi1pY29uLnN2Z1wiKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxOHB4OyB9XG4gIC5jZS1idXR0b246aG92ZXIgc3BhbiwgLmNlLWJ1dHRvbjphY3RpdmUgc3BhbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjYsIDAsIDI2LCAwLjEpOyB9XG4gIC5jZS1idXR0b246aG92ZXIgaTo6YmVmb3JlLCAuY2UtYnV0dG9uOmFjdGl2ZSBpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IHVybChcIi4uL0ltYWdlcy9idXR0b24taG92ZXItaWNvbi5zdmdcIik7IH1cblxuLmNlLW1lbnUge1xuICBjbGVhcjogYm90aDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IC00NXB4O1xuICBtaW4taGVpZ2h0OiAxMjBweDsgfVxuICAuY2UtbWVudSBhIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTIwMDFhO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgbWFyZ2luOiA1cHg7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2Utb3V0OyB9XG4gICAgLmNlLW1lbnUgYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTIwMDFhO1xuICAgICAgY29sb3I6ICNmZmY7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzZweCkgYW5kIChtYXgtd2lkdGg6IDE0NDBweCkge1xuICAuY2UtZmlsdGVyYmFyIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMTAwNHB4IDg5NXB4LCAwcHggODA1cHgsIDY2cHggMTM5cHgsIDEwMDRweCAzNnB4KTtcbiAgICBoZWlnaHQ6IDkwMHB4O1xuICAgIGxlZnQ6IC04M3B4O1xuICAgIHRvcDogLTI3OHB4O1xuICAgIHdpZHRoOiAxMjAlOyB9XG4gICAgLmNlLWZpbHRlcmJhci0tYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgIC5jZS1maWx0ZXJiYXIgLmdyaWQtaXRlbSB7XG4gICAgICB3aWR0aDogMjI1cHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NnB4KSBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLmNlLWZpbHRlcmJhciB7XG4gICAgd2lkdGg6IDc4LjUlO1xuICAgIGxlZnQ6IDM1N3B4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzVweCkge1xuICAuY2UtZ2FsbGVyeSB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuY2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgLmNlLWJ1dHRvbiBpIHtcbiAgICAgIHRvcDogMjBweDsgfVxuICAgIC5jZS1idXR0b24gc3BhbiB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBwYWRkaW5nOiAxNnB4IDE1cHg7IH1cbiAgLmNlLWRpdiB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzNXB4OyB9XG4gIC5jZS1tZW51IHtcbiAgICBtaW4taGVpZ2h0OiA0MjBweDsgfVxuICAuY2UtbWVkaWEgaW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDMyMHB4OyB9XG4gIC5jZS1maWx0ZXJiYXIge1xuICAgIGNsaXAtcGF0aDogbm9uZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMjAwcHggOTBweCAyMHB4IDkwcHg7XG4gICAgei1pbmRleDogMDsgfVxuICAgIC5jZS1maWx0ZXJiYXItLWJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgcGFkZGluZzogMTVweCAwOyB9XG4gICAgLmNlLWZpbHRlcmJhciAuZ3JpZC1pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmNlLWZpbHRlcmJhciBoMiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNlLWFsaWduLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5jZS1hbGlnbi1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmNlLWFsaWduLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLmNlLXRhYmxlIHRkLFxuLmNlLXRhYmxlIHRoIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG4uY2UtdGV4dHBpYyxcbi5jZS1ub3dyYXAgLmNlLWJvZHl0ZXh0LFxuLmNlLWdhbGxlcnksXG4uY2Utcm93IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uY2UtdXBsb2FkcyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAuY2UtdXBsb2FkcyBsaSxcbiAgLmNlLXVwbG9hZHMgZGl2IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5jZS11cGxvYWRzIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lIG91dHNpZGUgbm9uZTtcbiAgICBtYXJnaW46IDFlbSAwOyB9XG4gIC5jZS11cGxvYWRzIGltZyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMWVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgLmNlLXVwbG9hZHMgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmNlLWxlZnQgLmNlLWdhbGxlcnksXG4uY2UtY29sdW1uIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmNlLWNlbnRlciAuY2Utb3V0ZXIge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IDUwJTsgfVxuXG4uY2UtY2VudGVyIC5jZS1pbm5lciB7XG4gIGZsb2F0OiByaWdodDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogLTUwJTsgfVxuXG4uY2UtcmlnaHQgLmNlLWdhbGxlcnkge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLmNlLWdhbGxlcnkgZmlndXJlIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1hcmdpbjogMDsgfVxuXG4uY2UtZ2FsbGVyeSBmaWdjYXB0aW9uIHtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG4gIGRpc3BsYXk6IHRhYmxlLWNhcHRpb247IH1cblxuLmNlLWdhbGxlcnkgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmNlLWdhbGxlcnkgaWZyYW1lIHtcbiAgYm9yZGVyLXdpZHRoOiAwOyB9XG5cbi5jZS1ib3JkZXIgaW1nLFxuLmNlLWJvcmRlciBpZnJhbWUge1xuICBib3JkZXI6IDJweCBzb2xpZCAjMDAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5jZS1hYm92ZSAuY2UtZ2FsbGVyeSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmNlLWludGV4dC5jZS1yaWdodCAuY2UtZ2FsbGVyeSxcbi5jZS1pbnRleHQuY2UtbGVmdCAuY2UtZ2FsbGVyeSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmNlLWludGV4dC5jZS1yaWdodCAuY2UtZ2FsbGVyeSB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi5jZS1pbnRleHQuY2UtbGVmdCBvbCxcbi5jZS1pbnRleHQuY2UtbGVmdCB1bCB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH1cblxuLmNlLWludGV4dC5jZS1sZWZ0IC5jZS1nYWxsZXJ5IHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbi5jZS1iZWxvdyAuY2UtZ2FsbGVyeSB7XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLmNlLWNvbHVtbiB7XG4gIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAuY2UtY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4uY2Utcm93IHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuY2Utcm93Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNlLWFib3ZlIC5jZS1ib2R5dGV4dCB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbiN0eF9pbmRleGVkc2VhcmNoIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgI3R4X2luZGV4ZWRzZWFyY2ggdGQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgI3R4X2luZGV4ZWRzZWFyY2ggdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgI3R4X2luZGV4ZWRzZWFyY2ggc2VsZWN0LFxuICAjdHhfaW5kZXhlZHNlYXJjaCBpbnB1dCB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbi5tYWluLS1zZWN0aW9uICN0eF9pbmRleGVkc2VhcmNoIGZpZWxkc2V0IHtcbiAgYmFja2dyb3VuZDogIzAwYTJmZiB1cmwoXCIuLi9JbWFnZXMvZ2VvLWxpbmVzLnBuZ1wiKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcbiAgYm9yZGVyOiAwO1xuICBjbGlwLXBhdGg6IHBvbHlnb24oM3B4IDU2OHB4LCA2MHB4IDBweCwgMTE4MnB4IDcwcHgsIDExODJweCA0NDBweCk7XG4gIGNvbG9yOiAjZmZmO1xuICBmbG9hdDogcmlnaHQ7XG4gIGhlaWdodDogNTc3cHg7XG4gIGxlZnQ6IDM2N3B4O1xuICBtYXJnaW4tdG9wOiAtNjE4cHg7XG4gIG1heC13aWR0aDogMTE4MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAyMjBweCA3MHB4IDE1MHB4IDE1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxNjAlO1xuICB6LWluZGV4OiAxOyB9XG5cbi5tYWluLS1zZWN0aW9uICN0eF9pbmRleGVkc2VhcmNoIGxhYmVsIHtcbiAgZm9udC1zaXplOiAyN3B4OyB9XG5cbi5tYWluLS1zZWN0aW9uICN0eF9pbmRleGVkc2VhcmNoIHNlbGVjdCxcbi5tYWluLS1zZWN0aW9uICN0eF9pbmRleGVkc2VhcmNoIGlucHV0IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5tYWluLS1zZWN0aW9uICN0eF9pbmRleGVkc2VhcmNoIC50eC1pbmRleGVkc2VhcmNoLXNlYXJjaGJveC1zd29yZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW4tbGVmdDogMTVweDtcbiAgd2lkdGg6IDcwJTsgfVxuXG4ubWFpbi0tc2VjdGlvbiAjdHhfaW5kZXhlZHNlYXJjaCAudHgtaW5kZXhlZHNlYXJjaC1zZWFyY2hib3gtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBjb2xvcjogIzAwYTJmZjtcbiAgZm9udC1zaXplOiAyN3B4O1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuICBwYWRkaW5nOiAxMHB4IDM1cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW47IH1cbiAgLm1haW4tLXNlY3Rpb24gI3R4X2luZGV4ZWRzZWFyY2ggLnR4LWluZGV4ZWRzZWFyY2gtc2VhcmNoYm94LWJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuLm1haW4tLXNlY3Rpb24gLnR4LWluZGV4ZWRzZWFyY2gtaWNvbixcbi5tYWluLS1zZWN0aW9uIC50eC1pbmRleGVkc2VhcmNoLXBlcmNlbnQsXG4ubWFpbi0tc2VjdGlvbiAudHgtaW5kZXhlZHNlYXJjaC10ZXh0LWl0ZW0tc2l6ZSxcbi5tYWluLS1zZWN0aW9uIC50eC1pbmRleGVkc2VhcmNoLXRleHQtaXRlbS1jcmRhdGUsXG4ubWFpbi0tc2VjdGlvbiAudHgtaW5kZXhlZHNlYXJjaC10ZXh0LWl0ZW0tbXRpbWUsXG4ubWFpbi0tc2VjdGlvbiBkdC50eC1pbmRleGVkc2VhcmNoLXRleHQtaXRlbS1wYXRoIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWFpbi0tc2VjdGlvbiBkZC50eC1pbmRleGVkc2VhcmNoLXRleHQtaXRlbS1wYXRoIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLm1haW4tLXNlY3Rpb24gLnR4LWluZGV4ZWRzZWFyY2gtcmVzIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlY2VjZWM7IH1cblxuLnR4LWluZGV4ZWRzZWFyY2gtc2VhcmNoYm94LXN3b3JkIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzgxN2Y3ZjtcbiAgY29sb3I6ICNlMjAwMWE7XG4gIGZvbnQtc2l6ZTogMjdweDtcbiAgb3V0bGluZTogMDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIHdpZHRoOiAxNzVweDsgfVxuXG4uaGVhZGVyLS1zZWFyY2gtZm9ybSB7XG4gIG1hcmdpbi1ib3R0b206IDkwcHg7IH1cbiAgLmhlYWRlci0tc2VhcmNoLWZvcm0gZm9ybSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgICAuaGVhZGVyLS1zZWFyY2gtZm9ybSBmb3JtIGZpZWxkc2V0IHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjODE3ZjdmO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiAyMTBweDsgfVxuICAgIC5oZWFkZXItLXNlYXJjaC1mb3JtIGZvcm0gaW5wdXQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBjb2xvcjogI2UyMDAxYTtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgd2lkdGg6IDE3NXB4OyB9XG4gICAgICAuaGVhZGVyLS1zZWFyY2gtZm9ybSBmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi9JbWFnZXMvc2VhcmNoLWljb24uc3ZnXCIpIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogODUlO1xuICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgIHdpZHRoOiAyNXB4OyB9XG5cbi5zY3JvbGwtbmF2LS1zZWFyY2gtZm9ybSBmb3JtIHtcbiAgY2xlYXI6IGJvdGg7IH1cbiAgLnNjcm9sbC1uYXYtLXNlYXJjaC1mb3JtIGZvcm0gZmllbGRzZXQge1xuICAgIGJvcmRlcjogMDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogOTAlOyB9XG4gICAgLnNjcm9sbC1uYXYtLXNlYXJjaC1mb3JtIGZvcm0gZmllbGRzZXQ6aG92ZXIsIC5zY3JvbGwtbmF2LS1zZWFyY2gtZm9ybSBmb3JtIGZpZWxkc2V0OmFjdGl2ZSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzgxN2Y3ZjsgfVxuICAuc2Nyb2xsLW5hdi0tc2VhcmNoLWZvcm0gZm9ybSBpbnB1dCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiAjZTIwMDFhO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2lkdGg6IDgwJTsgfVxuICAgIC5zY3JvbGwtbmF2LS1zZWFyY2gtZm9ybSBmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiLi4vSW1hZ2VzL3NlYXJjaC1pY29uLnN2Z1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA4NSU7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICB3aWR0aDogMjVweDsgfVxuXG4ubWFpbi0tYm94LXJpZ2h0IC5jc2MtbWFpbGZvcm0ge1xuICBjb2xvcjogIzMzMzsgfVxuICAubWFpbi0tYm94LXJpZ2h0IC5jc2MtbWFpbGZvcm0gbGFiZWwge1xuICAgIGNvbG9yOiAjMzMzOyB9XG4gIC5tYWluLS1ib3gtcmlnaHQgLmNzYy1tYWlsZm9ybSBpbnB1dCxcbiAgLm1haW4tLWJveC1yaWdodCAuY3NjLW1haWxmb3JtIHRleHRhcmVhIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWFpbi0tYm94LXJpZ2h0IC5jc2MtbWFpbGZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzgxN2Y3ZjtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4uY3NjLW1haWxmb3JtIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLmNzYy1tYWlsZm9ybSBvbCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogLTQwcHg7IH1cbiAgLmNzYy1tYWlsZm9ybSBsaSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7IH1cbiAgLmNzYy1tYWlsZm9ybSBsYWJlbCxcbiAgLmNzYy1tYWlsZm9ybSBpbnB1dCxcbiAgLmNzYy1tYWlsZm9ybSB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgLmNzYy1tYWlsZm9ybSBpbnB1dCxcbiAgLmNzYy1tYWlsZm9ybSB0ZXh0YXJlYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzgxN2Y3ZjtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgaGVpZ2h0OiA1NXB4O1xuICAgIG1hcmdpbjogMTBweCAwIDI1cHggMDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgd2lkdGg6IDU2MHB4OyB9XG4gIC5jc2MtbWFpbGZvcm0gbGFiZWwge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luOiAxNXB4IDA7IH1cbiAgLmNzYy1tYWlsZm9ybSBpbnB1dCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuY3NjLW1haWxmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW47XG4gICAgICB3aWR0aDogMjYwcHg7IH1cbiAgICAgIC5jc2MtbWFpbGZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGEyZmY7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMGEyZmY7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5jc2MtbWFpbGZvcm0gdGV4dGFyZWEge1xuICAgIGhlaWdodDogMTM1cHg7IH1cblxuLmNzYy1mb3JtLTQgbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwOyB9XG5cbi5jc2MtZm9ybS1jb25maXJtYXRpb24tZmFsc2Uge1xuICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNzYy1mb3JtLWNvbmZpcm1hdGlvbi1mYWxzZSBpbnB1dCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG5cbi5jc2MtZm9ybS1jb25maXJtYXRpb24tdHJ1ZSB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc2cHgpIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIHtcbiAgLm1haW4tLXNlY3Rpb24gI3R4X2luZGV4ZWRzZWFyY2ggZmllbGRzZXQge1xuICAgIGNsaXAtcGF0aDogcG9seWdvbigwcHggNDYzcHgsIDUwcHggMnB4LCA5MzlweCA1NnB4LCA5MzlweCAzNThweCk7XG4gICAgaGVpZ2h0OiA0NjdweDtcbiAgICBsZWZ0OiAxMTBweDtcbiAgICBtYXJnaW4tdG9wOiAtNDgxcHg7XG4gICAgd2lkdGg6IDExNSU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NnB4KSBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLm1haW4tLXNlY3Rpb24gI3R4X2luZGV4ZWRzZWFyY2ggZmllbGRzZXQge1xuICAgIGNsaXAtcGF0aDogcG9seWdvbig0NXB4IDBweCwgMHB4IDQ2M3B4LCA5NDBweCAzNzVweCwgOTQwcHggNTNweCk7XG4gICAgbGVmdDogMTE4cHg7XG4gICAgbWFyZ2luLXRvcDogLTQ3OHB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzVweCkge1xuICAuY3NjLW1haWxmb3JtIGlucHV0LFxuICAuY3NjLW1haWxmb3JtIHRleHRhcmVhIHtcbiAgICB3aWR0aDogMzAwcHg7IH1cbiAgLm1haW4tLXNlY3Rpb24gI3R4X2luZGV4ZWRzZWFyY2ggZmllbGRzZXQge1xuICAgIGNsaXAtcGF0aDogcG9seWdvbig2ODBweCAyNjBweCwgMCAzMTBweCwgMzBweCAxNXB4LCA2ODBweCA2MHB4KTtcbiAgICBoZWlnaHQ6IDMyMHB4O1xuICAgIGxlZnQ6IDMycHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiA5MHB4O1xuICAgIHdpZHRoOiAxMzUlOyB9XG4gIC5tYWluLS1zZWN0aW9uICN0eF9pbmRleGVkc2VhcmNoIC50eC1pbmRleGVkc2VhcmNoLXNlYXJjaGJveC1zd29yZCB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi4xLjJcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG4uYWNjb3JkaW9uIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uYWNjb3JkaW9uLXRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgY29sb3I6ICNlMjAwMWE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7IH1cbiAgLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcrJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbTsgfVxuICAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAn4oCTJzsgfVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtO1xuICBkaXNwbGF5OiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTsgfVxuXG4vKiEgbm9ybWFsaXplLmNzcyB2My4wLjMgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKipcbiAgICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbiAgICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcbiAgICogICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuICAgKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICAgKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gICAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4gICAqIGFuZCBGaXJlZm94LlxuICAgKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICAgKi9cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICAgKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAqL1xuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICAgKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICAgKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICAgKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4gICAqL1xuW2hpZGRlbl0sXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogTGlua3NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLyoqXG4gICAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAgICogYWN0aXZlL2hvdmVyIHN0YXRlLlxuICAgKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7IH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gICAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gICAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gICAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICAgKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAgICovXG5pbWcge1xuICBib3JkZXI6IDA7IH1cblxuLyoqXG4gICAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICAgKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gICAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICAgKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gICAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuLyogRm9ybXNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICAgKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4gICAqL1xuLyoqXG4gICAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAgICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gICAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gICAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICAgKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAzICovIH1cblxuLyoqXG4gICAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICAgKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gICAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gICAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gICAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbiAgICovXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAgICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAgICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gICAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAgICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAgICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICAgKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAgICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAgICovXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLyoqXG4gICAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAgICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICAgKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAgICovXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cblxuLyoqXG4gICAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAgICogRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbiAgICpcbiAgICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAgICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbiAgICovXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAgICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAgICogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuICAgKi9cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICAgKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAgICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAgICovXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gICAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAgICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuICAgKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICAgKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gICAqIFtOT1RFXSBXZSBkb24ndCBlbmFibGUgdGhpcyBydWxlc2V0IGluIEZvdW5kYXRpb24sIGJlY2F1c2Ugd2Ugd2FudCB0aGUgPGZpZWxkc2V0PiBlbGVtZW50IHRvIGhhdmUgcGxhaW4gc3R5bGluZy5cbiAgICovXG4vKiBmaWVsZHNldCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICBtYXJnaW46IDAgMnB4O1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbiAgfSAqL1xuLyoqXG4gICAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAgICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICAgKi9cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gICAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAgICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICAgKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAgICovXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qIFRhYmxlc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAgICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwic21hbGw9MGVtJm1lZGl1bT00MGVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZT05MGVtXCI7IH1cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5ib2R5IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbnNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbiNtYXBfY2FudmFzIGltZyxcbiNtYXBfY2FudmFzIGVtYmVkLFxuI21hcF9jYW52YXMgb2JqZWN0LFxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ucm93IHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAucm93OjpiZWZvcmUsIC5yb3c6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnJvdzo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1uLCAucm93LmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIC5yb3cgLnJvdy5jb2xsYXBzZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAucm93LmV4cGFuZGVkIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAucm93LmV4cGFuZGVkIC5yb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmNvbHVtbiwgLmNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5jb2x1bW4uZW5kOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCwgLmVuZC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLmNvbHVtbi5yb3cucm93LCAucm93LnJvdy5jb2x1bW5zIHtcbiAgZmxvYXQ6IG5vbmU7IH1cbiAgLnJvdyAuY29sdW1uLnJvdy5yb3csIC5yb3cgLnJvdy5yb3cuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5zbWFsbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMzMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogOC4zMzMzMzMzMzMzJTsgfVxuXG4uc21hbGwtcHVsbC0xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtOC4zMzMzMzMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7IH1cblxuLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMTYuNjY2NjY2NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTE2LjY2NjY2NjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlOyB9XG5cbi5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtcHVzaC0zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAyNSU7IH1cblxuLnNtYWxsLXB1bGwtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTI1JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7IH1cblxuLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMzMuMzMzMzMzMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTMzLjMzMzMzMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNDEuNjY2NjY2NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTQxLjY2NjY2NjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTsgfVxuXG4uc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLXB1c2gtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTAlOyB9XG5cbi5zbWFsbC1wdWxsLTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01MCU7IH1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclOyB9XG5cbi5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDU4LjMzMzMzMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01OC4zMzMzMzMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY2NjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDY2LjY2NjY2NjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC02Ni42NjY2NjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7IH1cblxuLnNtYWxsLTkge1xuICB3aWR0aDogNzUlOyB9XG5cbi5zbWFsbC1wdXNoLTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDc1JTsgfVxuXG4uc21hbGwtcHVsbC05IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNzUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTsgfVxuXG4uc21hbGwtMTAge1xuICB3aWR0aDogODMuMzMzMzMzMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDgzLjMzMzMzMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTEwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtODMuMzMzMzMzMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtMTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDkxLjY2NjY2NjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTExIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtOTEuNjY2NjY2NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTsgfVxuXG4uc21hbGwtMTIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclOyB9XG5cbi5zbWFsbC11cC0xID4gLmNvbHVtbiwgLnNtYWxsLXVwLTEgPiAuY29sdW1ucyB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDsgfVxuICAuc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtMiA+IC5jb2x1bW4sIC5zbWFsbC11cC0yID4gLmNvbHVtbnMge1xuICB3aWR0aDogNTAlO1xuICBmbG9hdDogbGVmdDsgfVxuICAuc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtMyA+IC5jb2x1bW4sIC5zbWFsbC11cC0zID4gLmNvbHVtbnMge1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTQgPiAuY29sdW1ucyB7XG4gIHdpZHRoOiAyNSU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC01ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTUgPiAuY29sdW1ucyB7XG4gIHdpZHRoOiAyMCU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTYgPiAuY29sdW1ucyB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI4NTclO1xuICBmbG9hdDogbGVmdDsgfVxuICAuc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtOCA+IC5jb2x1bW4sIC5zbWFsbC11cC04ID4gLmNvbHVtbnMge1xuICB3aWR0aDogMTIuNSU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5zbWFsbC1jb2xsYXBzZSAucm93IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG4uc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgfVxuXG4uc21hbGwtY2VudGVyZWQge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4uc21hbGwtdW5jZW50ZXJlZCxcbi5zbWFsbC1wdXNoLTAsXG4uc21hbGwtcHVsbC0wIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMzMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY2NjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY2NjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlOyB9XG4gIC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTsgfVxuICAubWVkaXVtLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclOyB9XG4gIC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMzMzMzMyU7IH1cbiAgLm1lZGl1bS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMzMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY2NjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQxLjY2NjY2NjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTsgfVxuICAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLm1lZGl1bS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTsgfVxuICAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7IH1cbiAgLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC5tZWRpdW0tcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7IH1cbiAgLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMzMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjY2NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTsgfVxuICAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uLCAubWVkaXVtLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uLCAubWVkaXVtLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMjAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbiwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAxNC4yODU3MTQyODU3JTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uLCAubWVkaXVtLXVwLTggPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDEyLjUlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgLm1lZGl1bS1jZW50ZXJlZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5tZWRpdW0tdW5jZW50ZXJlZCxcbiAgLm1lZGl1bS1wdXNoLTAsXG4gIC5tZWRpdW0tcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzMzMzMzMlOyB9XG4gIC5sYXJnZS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMzMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY2NjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7IH1cbiAgLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTsgfVxuICAubGFyZ2UtcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTsgfVxuICAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMzMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQxLjY2NjY2NjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlOyB9XG4gIC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7IH1cbiAgLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMzMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMzMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjY2NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTsgfVxuICAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC5sYXJnZS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclOyB9XG4gIC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMzMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMzMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjY2NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjY2NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlOyB9XG4gIC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclOyB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbiwgLmxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAyMCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTIuNSU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5sYXJnZS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgLmxhcmdlLWNlbnRlcmVkIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLmxhcmdlLXVuY2VudGVyZWQsXG4gIC5sYXJnZS1wdXNoLTAsXG4gIC5sYXJnZS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGZsb2F0OiBsZWZ0OyB9IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwZW0pIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5zaG93LWZvci1zcixcbi5zaG93LW9uLWZvY3VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApOyB9XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvOyB9XG5cbi5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4ubWFpbi1uYXYgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5tYWluLW5hdiBhIHtcbiAgY29sb3I6ICM4MTdmN2Y7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5tYWluLW5hdiBhOmhvdmVyIHtcbiAgICBjb2xvcjogI2UyMDAxYTsgfVxuXG4uc2Nyb2xsLW5hdiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCA2MHB4IC0yMHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gIG1pbi1oZWlnaHQ6IDY1cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMzUwcHg7XG4gIG1heC13aWR0aDogMTkwMHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjhzIGVhc2U7XG4gIHRvcDogLTUwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDU7IH1cbiAgLnNjcm9sbC1uYXYgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMjdweDtcbiAgICBsaW5lLWhlaWdodDogNTVweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICBtYXJnaW4tdG9wOiAtOHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAuc2Nyb2xsLW5hdiBsaTpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICB3aWR0aDogMzAlOyB9XG4gICAgLnNjcm9sbC1uYXYgbGk6bGFzdC1jaGlsZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTIwMDFhIHVybChcIi4uL0ltYWdlcy9uYXZpZ2F0aW9uLXJlY3RhbmdsZS5zdmdcIikgY2VudGVyIGxlZnQgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwOHB4O1xuICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDI0OHB4IDM4MHB4LCA0cHggNjdweCwgMjRweCAwcHgsIDI0OHB4IDBweCk7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW46IC0xM3B4IDAgMDtcbiAgICAgIHBhZGRpbmc6IDVweCAwOyB9XG4gICAgICAuc2Nyb2xsLW5hdiBsaTpsYXN0LWNoaWxkIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgcGFkZGluZzogMTVweCAzNXB4IDE1cHggNjBweDsgfVxuICAuc2Nyb2xsLW5hdiBhIHtcbiAgICBjb2xvcjogIzgxN2Y3ZjsgfVxuICAgIC5zY3JvbGwtbmF2IGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNlMjAwMWE7IH1cbiAgLnNjcm9sbC1uYXYtLWxvZ28ge1xuICAgIGhlaWdodDogNTBweDtcbiAgICBtYXJnaW4tdG9wOiAtOXB4O1xuICAgIHdpZHRoOiA1MHB4OyB9XG4gIC5zY3JvbGwtbmF2LS1idXR0b246OmFmdGVyIHtcbiAgICBjb250ZW50OiAnPic7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cblxuLmZvb3Rlci1uYXYgdWwge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5mb290ZXItbmF2IGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG4uZm9vdGVyLW5hdiBhIHtcbiAgY29sb3I6ICM4MTdmN2Y7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5mb290ZXItbmF2IGE6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5oYW1idXJnZXItYnV0dG9uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NnB4KSBhbmQgKG1heC13aWR0aDogMTQ0MHB4KSB7XG4gIC5zY3JvbGwtbmF2IHtcbiAgICBtYXJnaW4tbGVmdDogLTcxcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzNTVweCkge1xuICAuc2Nyb2xsLW5hdiBsaTpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgd2lkdGg6IDIwJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1OXB4KSB7XG4gIC5zY3JvbGwtbmF2IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjEycmVtOyB9XG4gICAgLnNjcm9sbC1uYXYgbGk6bnRoLWxhc3QtY2hpbGQoMikge1xuICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA3MHB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTU5cHgpIHtcbiAgLnNjcm9sbC1uYXYgbGk6bnRoLWxhc3QtY2hpbGQoMikge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3NXB4KSB7XG4gIC5zY3JvbGwtbmF2IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5oYW1idXJnZXItYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9JbWFnZXMvbW9iaWwtbmF2LWJ1dHRvbi5wbmdcIikgbGVmdCB0b3Agbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDExMHB4O1xuICAgIHotaW5kZXg6IDU7IH1cbiAgLm1haW4tbmF2IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2QzYTNhO1xuICAgIGxlZnQ6IC0zNzVweDtcbiAgICBwYWRkaW5nOiAyNXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDM3NXB4OyB9XG4gICAgLm1haW4tbmF2IGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgLm1haW4tbmF2IGEge1xuICAgICAgY29sb3I6ICM4MTdmN2Y7XG4gICAgICBmb250LXNpemU6IDI3cHg7XG4gICAgICBsaW5lLWhlaWdodDogNTVweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgIC5tYWluLW5hdiBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNlMjAwMWE7IH0gfVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogI2ViZWJlYiB1cmwoXCIuLi9JbWFnZXMvYmFja2dyb3VuZC1pbWFnZS5qcGdcIikgY2VudGVyIGNlbnRlciByZXBlYXQ7IH1cblxuLnBhZ2Utd3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDE5MDBweDsgfVxuXG4ucm93IHtcbiAgbWluLXdpZHRoOiAxMTQwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5oZWFkZXItLXNlY3Rpb24sXG4ubWFpbi0tc2VjdGlvbixcbi5mb290ZXItLXNlY3Rpb24ge1xuICBtaW4td2lkdGg6IDExNjBweDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmhlYWRlci0tc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL0ltYWdlcy9oZWFkZXItYmFja2dyb3VuZC5wbmdcIikgdG9wIGxlZnQgbm8tcmVwZWF0O1xuICBjb2xvcjogIzgxN2Y3ZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB6LWluZGV4OiAyOyB9XG4gIC5oZWFkZXItLXNlY3Rpb24gcCB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLmhlYWRlci0tYm94LWxlZnQge1xuICBoZWlnaHQ6IDExNDBweDtcbiAgcGFkZGluZy1yaWdodDogMTI1cHg7XG4gIHBhZGRpbmctdG9wOiA3NXB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgd2lkdGg6IDcyNHB4OyB9XG5cbi5oZWFkZXItLWxvZ28ge1xuICBoZWlnaHQ6IDgwcHg7XG4gIGxlZnQ6IDdlbTtcbiAgbWFyZ2luLWJvdHRvbTogMTUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmhlYWRlci0tYmR2aS1sb2dvIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICB3aWR0aDogNzBweDsgfVxuXG4ubWFpbi0tYm94LWxlZnQge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjMDBhMmZmO1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgd2lkdGg6IDMxNXB4OyB9XG4gIC5tYWluLS1ib3gtbGVmdCBwIHtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIHBhZGRpbmc6IDA7IH1cblxuLm1haW4tLWJveC1sZWZ0LW1vYmlsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWFpbi0tYm94LXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6IDg1cHg7XG4gIG1hcmdpbi10b3A6IC01NzBweDsgfVxuXG4ubWFpbi0tYm94LXRvcCB7XG4gIG1hcmdpbi10b3A6IC01NzBweDtcbiAgbWFyZ2luLWJvdHRvbTogLTYxMHB4OyB9XG5cbi5tYWluLS1ib3gtYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogLTE4NXB4OyB9XG5cbi5tYWluLS1jb3ZlcmFnZS1saW5rIHtcbiAgY29sb3I6ICNlMjAwMWE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAubWFpbi0tY292ZXJhZ2UtbGluayBkaXYge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL0ltYWdlcy9jb3ZlcmFnZS1idXR0b24ucG5nXCIpIHRvcCBsZWZ0IG5vLXJlcGVhdDtcbiAgICBoZWlnaHQ6IDY1cHg7XG4gICAgbGVmdDogMTI1MHB4O1xuICAgIHBhZGRpbmctdG9wOiAyM3B4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0b3A6IC0xMDc2cHg7XG4gICAgd2lkdGg6IDI3MHB4O1xuICAgIHotaW5kZXg6IDI7IH1cblxuLm1haW4tLXNlY3Rpb24taW5kZXggKyAuZm9vdGVyLS1zZWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogLTY3cHg7IH1cblxuLmZvb3Rlci0tc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL0ltYWdlcy9mb290ZXItYmFja2dyb3VuZC5wbmdcIikgdG9wIGNlbnRlciBuby1yZXBlYXQ7XG4gIGNvbG9yOiAjODE3ZjdmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogOHJlbTtcbiAgcGFkZGluZy10b3A6IDEyJTsgfVxuICAuZm9vdGVyLS1zZWN0aW9uIC5tb2JpbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm9vdGVyLS1hZGRyZXNzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMThweDsgfVxuICAuZm9vdGVyLS1hZGRyZXNzIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5mb290ZXItLWNvcHlyaWdodCB7XG4gIGNvbG9yOiAjODE3ZjdmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbi10b3A6IDNlbTsgfVxuXG4uZm9vdGVyLS1jb250YWN0IGgyLFxuLmZvb3Rlci0tY29udGFjdCBwIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4uZm9vdGVyLS1jb250YWN0IGgyIHtcbiAgZm9udC1zaXplOiA0MHB4OyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc2cHgpIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIHtcbiAgLnBhZ2Utd3JhcHBlciB7XG4gICAgd2lkdGg6IDE0NDBweDsgfVxuICAucm93IHtcbiAgICBtaW4td2lkdGg6IDEzMDBweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuaGVhZGVyLS1zZWN0aW9uLFxuICAubWFpbi0tc2VjdGlvbixcbiAgLmZvb3Rlci0tc2VjdGlvbiB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE5MjBweDtcbiAgICBtaW4td2lkdGg6IDE0NDBweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuaGVhZGVyLS1ib3gtbGVmdCB7XG4gICAgaGVpZ2h0OiAxMTQwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTM1cHg7XG4gICAgd2lkdGg6IDQ5NHB4OyB9XG4gIC5tYWluLS1jb3ZlcmFnZS1saW5rIGRpdiB7XG4gICAgbGVmdDogODcwcHg7XG4gICAgdG9wOiAtMTA4NXB4OyB9XG4gIC5tYWluLS1ib3gtcmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAxMTdweDtcbiAgICBtYXJnaW4tdG9wOiAtNjkwcHg7IH1cbiAgLm1haW4tLWJveC1ib3R0b20ge1xuICAgIG1hcmdpbi10b3A6IC0yODBweDsgfVxuICAubWFpbi0tc2VjdGlvbi1pbmRleCArIC5mb290ZXItLXNlY3Rpb24ge1xuICAgIG1hcmdpbi10b3A6IC0xNDFweDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzc1cHgpIHtcbiAgLnBhZ2Utd3JhcHBlciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMzc1cHg7IH1cbiAgLnJvdyB7XG4gICAgd2lkdGg6IDM3NXB4OyB9XG4gIC5oZWFkZXItLXNlY3Rpb24sXG4gIC5tYWluLS1zZWN0aW9uLFxuICAuZm9vdGVyLS1zZWN0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDM3NXB4O1xuICAgIG1pbi13aWR0aDogMzc1cHg7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICB3aWR0aDogMzc1cHg7IH1cbiAgLmhlYWRlci0tc2VjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogI2ViZWJlYiB1cmwoXCIuLi9JbWFnZXMvYmFja2dyb3VuZC1pbWFnZS5qcGdcIikgY2VudGVyIGNlbnRlciByZXBlYXQ7XG4gICAgY2xpcC1wYXRoOiBwb2x5Z29uKDM3NXB4IDMyMHB4LCAwIDI4MHB4LCAwIDAsIDM3NXB4IDApO1xuICAgIG1hcmdpbi1ib3R0b206IC05MHB4OyB9XG4gIC5oZWFkZXItLWJveC1sZWZ0IHtcbiAgICBoZWlnaHQ6IDI4MHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmhlYWRlci0tbG9nbyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogMjQwcHg7IH1cbiAgLmhlYWRlci0tYmR2aS1sb2dvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICB3aWR0aDogNzBweDsgfVxuICAuaGVhZGVyLS1zZWFyY2gtZm9ybSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubWFpbi0tY292ZXJhZ2UtbGluayB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubWFpbi0tY292ZXJhZ2UgaW1nIHtcbiAgICBsZWZ0OiAtMTUlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubWFpbi0tYm94LXRvcCwgLm1haW4tLWJveC1ib3R0b20sIC5tYWluLS1ib3gtcmlnaHQsIC5tYWluLS1ib3gtbGVmdC1tb2JpbCB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHdpZHRoOiAzMzVweDsgfVxuICAubWFpbi0tYm94LXRvcCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLm1haW4tLWJveC1ib3R0b20ge1xuICAgIG1hcmdpbi10b3A6IC0xNTBweDsgfVxuICAubWFpbi0tYm94LXJpZ2h0IHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubWFpbi0tYm94LWxlZnQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1haW4tLWJveC1sZWZ0LW1vYmlsIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzAwYTJmZjtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm1haW4tLXNlY3Rpb24taW5kZXggKyAuZm9vdGVyLS1zZWN0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAzMDVweDsgfVxuICAuZm9vdGVyLS1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjM2QzYTNhO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4OyB9XG4gICAgLmZvb3Rlci0tc2VjdGlvbiBkaXYge1xuICAgICAgd2lkdGg6IDMzNXB4OyB9XG4gICAgICAuZm9vdGVyLS1zZWN0aW9uIGRpdiAuZm9vdGVyLS1jb250YWN0IHtcbiAgICAgICAgbGVmdDogMDsgfVxuICAgICAgLmZvb3Rlci0tc2VjdGlvbiBkaXYgLm1vYmlsZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMzMzM7XG4gICAgICAgIGNsaXAtcGF0aDogcG9seWdvbigzNzVweCAxMzA1cHgsIDAgMTMwNXB4LCAwIDUwcHgsIDM3NXB4IDIwcHgpO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTI1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICAgICAgcGFkZGluZzogOTBweCAzMHB4IDI1cHg7XG4gICAgICAgIHdpZHRoOiAzNzVweDsgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbjp0YXJnZXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTEyMHB4O1xuICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIG1hcmdpbi1ib3R0b206IC0xMjBweDsgfVxuXG5oMSB7XG4gIGNvbG9yOiAjMzMzO1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiA1NHB4O1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbmgyIHtcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDExNXB4O1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5tYWluLS1ib3gtcmlnaHQgaDIge1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAyN3B4O1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbi5tYWluLS1ib3gtcmlnaHQgLm1haW4tLWNvdmVyYWdlLXN1YnRpdGxlIHtcbiAgZm9udC1zaXplOiAxMTVweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG5oMyB7XG4gIGNvbG9yOiAjMzMzO1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbmg0IHtcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbjogMCAwIDE1cHg7XG4gIHBhZGRpbmctdG9wOiAwOyB9XG5cbnAge1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgaHlwaGVuczogYXV0bzsgfVxuXG5hIHtcbiAgY29sb3I6ICNlMjAwMWE7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW47IH1cblxuYnV0dG9uOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluOyB9XG5cbmxpLFxuLmNlLW1lbnUgbGk6bm90IHtcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHBhZGRpbmc6IDEwcHggMCAxMHB4IDEwcHg7IH1cblxuYiB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbmlucHV0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3NXB4KSB7XG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIHAsXG4gIGEge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDI3cHg7IH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogNDBweDsgfSB9XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAuc2xpY2stbGlzdDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpY2stbGlzdC5kcmFnZ2luZyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGN1cnNvcjogaGFuZDsgfVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zbGljay10cmFjazpiZWZvcmUsIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5zbGljay1zbGlkZSBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stc2xpZGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAuc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogU2xpZGVyICovXG4uc2xpY2stbG9hZGluZyAuc2xpY2stbGlzdCB7XG4gIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiLi4vSW1hZ2VzL2FqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDsgfVxuXG4vKiBJY29ucyAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gIHNyYzogdXJsKFwiLi4vRm9udHMvc2xpY2suZW90XCIpO1xuICBzcmM6IHVybChcIi4uL0ZvbnRzL3NsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL0ZvbnRzL3NsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vRm9udHMvc2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9Gb250cy9zbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLyogQXJyb3dzICovXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpY2stcHJldjpob3ZlciwgLnNsaWNrLXByZXY6Zm9jdXMsXG4gIC5zbGljay1uZXh0OmhvdmVyLFxuICAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuc2xpY2stcHJldjpob3ZlcjpiZWZvcmUsIC5zbGljay1wcmV2OmZvY3VzOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpob3ZlcjpiZWZvcmUsXG4gICAgLnNsaWNrLW5leHQ6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLnNsaWNrLXByZXYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlLFxuICAuc2xpY2stbmV4dC5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMjU7IH1cbiAgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBvcGFjaXR5OiAwLjc1O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLnNsaWNrLXByZXYge1xuICBsZWZ0OiAtMjVweDsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAtMjVweDsgfVxuICAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oaQXCI7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIuKGklwiOyB9XG5cbi5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IC0yNXB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQge1xuICAgIGxlZnQ6IC0yNXB4O1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLihpJcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oaQXCI7IH1cblxuLyogRG90cyAqL1xuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0yNXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zbGljay1kb3RzIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlciwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgICAgICAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXI6YmVmb3JlLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXM6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgb3BhY2l0eTogMC43NTsgfVxuXG4uc2xpZGVyLFxuLnNsaWNrLXNsaWRlIHtcbiAgbWF4LWhlaWdodDogNTcwcHg7IH1cblxuLnNsaWNrLWRvdHMge1xuICBib3R0b206IDU1cHg7XG4gIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7XG4gIHdpZHRoOiAyMCU7IH1cbiAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IHVybChcIi4uL0ltYWdlcy9zbGljay1kb3RzLnN2Z1wiKTsgfVxuXG4ubWFpbi0tY292ZXJhZ2Uge1xuICBjbGlwLXBhdGg6IHBvbHlnb24oM3B4IDU2OHB4LCA2MHB4IDBweCwgMTE4MnB4IDcwcHgsIDExODJweCA0NDBweCk7XG4gIGZsb2F0OiByaWdodDtcbiAgaGVpZ2h0OiA1NjdweDtcbiAgbGVmdDogMzY1cHg7XG4gIG1hcmdpbi10b3A6IC02MDBweDtcbiAgbWF4LXdpZHRoOiAxMTgwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDE2MCU7XG4gIHotaW5kZXg6IDE7IH1cbiAgLm1haW4tLWNvdmVyYWdlLXRpdGxlLCAubWFpbi0tY292ZXJhZ2Utc3VidGl0bGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGxlZnQ6IDEwMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDVweCAjNTI0ZDRkOyB9XG4gIC5tYWluLS1jb3ZlcmFnZS10aXRsZSB7XG4gICAgdG9wOiAyNTBweDsgfVxuICAubWFpbi0tY292ZXJhZ2Utc3VidGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB0b3A6IDIzMHB4OyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc2cHgpIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIHtcbiAgLnNsaWNrLWRvdHMge1xuICAgIGJvdHRvbTogMTQ1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDI1cHg7IH1cbiAgLm1haW4tLWNvdmVyYWdlLXRpdGxlIHtcbiAgICB0b3A6IDE4MHB4OyB9XG4gIC5tYWluLS1jb3ZlcmFnZS1zdWJ0aXRsZSB7XG4gICAgZm9udC1zaXplOiA4NXB4ICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAxOTBweDsgfVxuICAubWFpbi0tYm94LXRvcCAubWFpbi0tY292ZXJhZ2Uge1xuICAgIGNsaXAtcGF0aDogcG9seWdvbigwcHggNDYzcHgsIDUwcHggMnB4LCA5MzlweCA1NnB4LCA5MzlweCAzNThweCk7XG4gICAgbGVmdDogMzI1cHg7IH1cbiAgLm1haW4tLWJveC1yaWdodCAubWFpbi0tY292ZXJhZ2Uge1xuICAgIGNsaXAtcGF0aDogcG9seWdvbigwcHggNDYzcHgsIDUwcHggMnB4LCA5MzlweCA1NnB4LCA5MzlweCAzNThweCk7XG4gICAgaGVpZ2h0OiA0NjdweDtcbiAgICBsZWZ0OiAxMDhweDtcbiAgICB0b3A6IDEyMHB4O1xuICAgIHdpZHRoOiAxMTUlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzZweCkgYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5tYWluLS1jb3ZlcmFnZS10aXRsZSB7XG4gICAgbWF4LXdpZHRoOiAzNDBweDtcbiAgICBsZWZ0OiA3MHB4O1xuICAgIHRvcDogMTY1cHg7IH1cbiAgLm1haW4tLWNvdmVyYWdlLXN1YnRpdGxlIHtcbiAgICBsZWZ0OiA3MHB4O1xuICAgIHRvcDogMTgwcHg7IH1cbiAgLm1haW4tLWJveC10b3AgLm1haW4tLWNvdmVyYWdlIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oNDVweCAwcHgsIDBweCA0NjNweCwgOTQwcHggMzc1cHgsIDk0MHB4IDUzcHgpO1xuICAgIGxlZnQ6IDMyM3B4O1xuICAgIHRvcDogMnB4OyB9XG4gIC5tYWluLS1ib3gtcmlnaHQgLm1haW4tLWNvdmVyYWdlIHtcbiAgICBsZWZ0OiAxMTVweDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzc1cHgpIHtcbiAgLm1haW4tLWNvdmVyYWdlIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMHB4IDBweCwgMHB4IDI0NXB4LCA0MDBweCAyMTBweCwgNDAwcHggNjBweCk7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgaGVpZ2h0OiAyNTBweDtcbiAgICBsZWZ0OiAtNTBweDsgfVxuICAgIC5tYWluLS1jb3ZlcmFnZS10aXRsZSB7XG4gICAgICBtYXgtd2lkdGg6IDM0MHB4O1xuICAgICAgbGVmdDogNTBweDtcbiAgICAgIHRvcDogNzVweDsgfVxuICAgIC5tYWluLS1jb3ZlcmFnZS1zdWJ0aXRsZSB7XG4gICAgICBmb250LXNpemU6IDQwcHggIWltcG9ydGFudDtcbiAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICB0b3A6IDkwcHg7IH1cbiAgLm1haW4tLWJveC10b3AgLm1haW4tLWNvdmVyYWdlIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5tYWluLS1ib3gtcmlnaHQgLm1haW4tLWNvdmVyYWdlIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4OyB9IH1cblxuLnNoYXJpZmYge1xuICBtYXJnaW46IDRyZW0gMCA1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTsgfVxuICAuc2hhcmlmZiBidXR0b24ge1xuICAgIGhlaWdodDogMjlweDtcbiAgICBtYXJnaW46IDMwcHggMTVweCA0MHB4IDA7XG4gICAgd2lkdGg6IDI5cHg7IH1cbiAgLnNoYXJpZmYgdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnNoYXJpZmYgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogLjhyZW07IH1cbiAgLnNoYXJpZmYgLnNoYXJlX3RleHQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNoYXJpZmYgLmZhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcGFkZGluZy1sZWZ0OiAyLjVyZW07XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggODBweDsgfVxuICAuc2hhcmlmZiAuZmE6aG92ZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00MHB4OyB9XG4gIC5zaGFyaWZmIC5mYS1nb29nbGUtcGx1czo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL0ltYWdlcy9pY29uLWdvb2dsZXBsdXMucG5nXCIpOyB9XG4gIC5zaGFyaWZmIC5mYS1mYWNlYm9vazo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL0ltYWdlcy9pY29uLWZhY2Vib29rLnBuZ1wiKTsgfVxuICAuc2hhcmlmZiAuZmEteGluZzo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL0ltYWdlcy9pY29uLXhpbmcucG5nXCIpOyB9XG4gIC5zaGFyaWZmIC5mYS1saW5rZWRpbjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL0ltYWdlcy9pY29uLWxpbmtlZGluLnBuZ1wiKTsgfVxuICAuc2hhcmlmZiAuZmEtdHdpdHRlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL0ltYWdlcy9pY29uLXR3aXR0ZXIucG5nXCIpOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLnNoYXJpZmYge1xuICAgIG1hcmdpbjogM3JlbSAwIDJyZW07IH0gfVxuIiwiQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Tb3VyY2UrU2FucytQcm86MzAwLDMwMGksNjAwLDcwMCcpO1xuIiwiLy89PSBGaWx0ZXItQmFyXG4uY2UtZmlsdGVyYmFyIHtcbiAgYmFja2dyb3VuZDogJGh1ZWxzbWFubi1ibHVlICRiYWNrZ3JvdW5kLWdlby1saW5lcyBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcbiAgY2xpcC1wYXRoOiBwb2x5Z29uKDEyNDBweCA4NzVweCwgMCA3NzRweCwgNjNweCAxNDBweCwgMTI0MHB4IDEzcHgpO1xuICBoZWlnaHQ6IDg3NXB4O1xuICBsZWZ0OiAtMTA1cHg7XG4gIHBhZGRpbmc6IDE2MHB4IDkwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMTczcHg7XG4gIHdpZHRoOiAxNjElO1xuICB6LWluZGV4OiAwO1xuXG5cbiAgaDIge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1saWdodGRhcms7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBmb250LXNpemU6ICRmb250LWJhc2lzLXB4LXh4bGFyZ2U7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cblxuICAmLS1idXR0b24ge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1saWdodDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgtbGFyZ2U7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgb3BhY2l0eTogLjg7XG4gICAgb3V0bGluZTogMDtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA0MHB4O1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwcHggNTBweDtcbiAgICB9XG5cbiAgICAmLXN0cmVldDo6YmVmb3JlLFxuICAgICYtZ3JvdW5kOjpiZWZvcmUsXG4gICAgJi1idWlsZGluZzo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcGFkZGluZzogMTVweCA3MnB4IDE1cHggMDtcbiAgICB9XG5cbiAgICAmLXN0cmVldDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRmaWx0ZXItc3RyZWV0O1xuICAgIH1cblxuICAgICYtZ3JvdW5kOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogJGZpbHRlci1ncm91bmQ7XG4gICAgfVxuXG4gICAgJi1idWlsZGluZzo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRmaWx0ZXItYnVpbGRpbmc7XG4gICAgfVxuXG4gICAgJi1hbGw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZmlsdGVyLWFsbDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDEzMHB4IDE1cHggMDtcbiAgICB9XG4gIH1cblxuICAmLS1rYWNoZWxzZWN0aW9uIHtcbiAgICBoZWlnaHQ6IDQxMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICB9XG5cbiAgJi0ta2FjaGVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRodWVsc21hbm4tZ3JleSwgLjQpO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgIG1pbi1oZWlnaHQ6IDEyNXB4O1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1kZWZhdWx0O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaHVlbHNtYW5uLXdoaXRlO1xuXG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICRmb250LWNvbG9yLWJsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItbGlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQtaXRlbSB7XG4gICAgd2lkdGg6IDI4MHB4O1xuICB9XG59XG5cbmEgLmNlLWZpbHRlcmJhci0ta2FjaGVsIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogNXB4O1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1saWdodDtcbiAgICBjb250ZW50OiAnwrsnO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXNpemU6ICRmb250LWJhc2lzLXB4LXh4bGFyZ2U7XG4gICAgcmlnaHQ6IDE2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1ibHVlO1xuICB9XG59XG5cbi8vPT0gQWNjb3JkaW9uLUVsZW1lbnRcbi5jZS1hY2NvcmRpb24ge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAycmVtIDAgMXJlbTtcbiAgcGFkZGluZzogMDtcblxuICAmLS1pdGVtIHtcbiAgICBib3JkZXI6ICRhY2NvcmRpb24tYm9yZGVyO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgLjNyZW07XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gICYtLXRpdGxlIHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyayAhaW1wb3J0YW50O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiAkZm9udC1iYXNpcy1weC1tZWRpdW0gIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgtbWVkaXVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG5cbiAgJi0tY29udGVudCB7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLWRhcms7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBmb250LXNpemU6ICRmb250LWJhc2lzLXB4LW1lZGl1bTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICB9XG5cbiAgLmlzLWFjdGl2ZSB7XG4gICAgLmNlLWFjY29yZGlvbi0tdGl0bGU6OmJlZm9yZSB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vPT0gTGlzdGVuXG4uY2UtYnVsbGV0cyxcbi5jZS1ib2R5dGV4dCB7XG4gIGxpIHtcbiAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyaztcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgtbWVkaXVtO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGlzdC1zdHlsZTogJGxpc3QtaWNvbi1pbWFnZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDEwcHggMCAxMHB4IDEwcHg7XG4gIH1cbn1cblxuLy89PSBUcmVubmVyXG4uY2UtZGl2IHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkdHJlbm5lci1ib3JkZXItc3R5bGU7XG59XG5cbi8vPT0gVGFiZWxsZW5cbi5jZS10YWJsZSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbjogMTBweCAwO1xuICB3aWR0aDogMTAwJTtcblxuICB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlci1zdHlsZTtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvbnQtY29sb3ItZGFyaztcblxuICAgICAgdGQge1xuICAgICAgICBjb2xvcjogJGZvbnQtY29sb3ItbGlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdGQge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiAkZm9udC1iYXNpcy1weC1tZWRpdW07XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgfVxufVxuXG5cbi8vPT0gQnV0dG9uXG4uY2UtYnV0dG9uIHtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gIHNwYW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGh1ZWxzbWFubi1ncmV5LCAuMSk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBmb250LXNpemU6ICRmb250LWJhc2lzLXB4LW1lZGl1bTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIHBhZGRpbmc6IDEycHggMTVweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWRlZmF1bHQ7XG4gIH1cblxuICBpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRidXR0b24taWNvbjtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxOHB4O1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIHNwYW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkaHVlbHNtYW5uLXJlZCwgLjEpO1xuICAgIH1cblxuICAgIGk6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAkYnV0dG9uLWljb24taG92ZXI7XG4gICAgfVxuICB9XG59XG5cblxuLy89PSBOYXZpZ2F0aW9uXG4uY2UtbWVudSB7XG4gIGNsZWFyOiBib3RoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogLTQ1cHg7XG4gIG1pbi1oZWlnaHQ6IDEyMHB4O1xuXG4gIGEge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRodWVsc21hbm4tcmVkO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6ICRmb250LWJhc2lzLXB4LWxhcmdlO1xuICAgIG1hcmdpbjogNXB4O1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLW91dDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGh1ZWxzbWFubi1yZWQ7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItbGlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8vIExhcHRvcFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzZweCkgYW5kIChtYXgtd2lkdGg6IDE0NDBweCkge1xuICAuY2UtZmlsdGVyYmFyIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMTAwNHB4IDg5NXB4LCAwcHggODA1cHgsIDY2cHggMTM5cHgsIDEwMDRweCAzNnB4KTtcbiAgICBoZWlnaHQ6IDkwMHB4O1xuICAgIGxlZnQ6IC04M3B4O1xuICAgIHRvcDogLTI3OHB4O1xuICAgIHdpZHRoOiAxMjAlO1xuXG4gICAgJi0tYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgtbWVkaXVtO1xuICAgIH1cblxuICAgIC5ncmlkLWl0ZW0ge1xuICAgICAgd2lkdGg6IDIyNXB4O1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NnB4KSBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLmNlLWZpbHRlcmJhciB7XG4gICAgd2lkdGg6IDc4LjUlO1xuICAgIGxlZnQ6IDM1N3B4O1xuICB9XG59XG5cbi8vIG1vYmlsZSBwaG9uZVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzVweCkge1xuICAuY2UtZ2FsbGVyeSB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICBpIHtcbiAgICAgIHRvcDogMjBweDtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgtc21hbGw7XG4gICAgICBwYWRkaW5nOiAxNnB4IDE1cHg7XG4gICAgfVxuICB9XG5cbiAgLmNlLWRpdiB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzNXB4O1xuICB9XG5cbiAgLmNlLW1lbnUge1xuICAgIG1pbi1oZWlnaHQ6IDQyMHB4O1xuICB9XG5cbiAgLmNlLW1lZGlhIHtcbiAgICBpbWcge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IDMyMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5jZS1maWx0ZXJiYXIge1xuICAgIGNsaXAtcGF0aDogbm9uZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMjAwcHggOTBweCAyMHB4IDkwcHg7XG4gICAgei1pbmRleDogMDtcblxuICAgICYtLWJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgIH1cblxuICAgIC5ncmlkLWl0ZW0ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vPT0gQ29sb3JzXG4kcHJpbWFyeS1jb2xvcjogI2UyMDAxYTtcbiRzZWNvbmRhcnktY29sb3I6ICMwMGEyZmY7XG5cbiRodWVsc21hbm4td2hpdGU6ICNmZmY7XG4kaHVlbHNtYW5uLXJlZDogJHByaW1hcnktY29sb3I7XG4kaHVlbHNtYW5uLWRhcmtyZWQ6ICM2ODE3MjE7XG4kaHVlbHNtYW5uLWJsdWU6ICRzZWNvbmRhcnktY29sb3I7XG4kaHVlbHNtYW5uLWxpZ2h0Z3JleTogI2VjZWNlYztcbiRodWVsc21hbm4tZ3JleTogIzUyNGQ0ZDtcbiRodWVsc21hbm4tZGVlcGdyZXk6ICMzMzM7XG4kaHVlbHNtYW5uLWRhcmtlcmdyZXk6ICM4MTdmN2Y7XG4kaHVlbHNtYW5uLWRhcmtncmV5OiAjM2QzYTNhO1xuJGh1ZWxzbWFubi12aW9sZXR0OiAjOWE0YTdlO1xuJGh1ZWxzbWFubi1yb3NlOiAjZWI4OTc3O1xuJGh1ZWxzbWFubi1kYXJrLXJvc2U6ICNkZDcwN2E7XG5cbi8vPT0gSW1hZ2VzXG4kYmFja2dyb3VuZC1pbWFnZTogI2ViZWJlYiB1cmwoJy4uL0ltYWdlcy9iYWNrZ3JvdW5kLWltYWdlLmpwZycpIGNlbnRlciBjZW50ZXIgcmVwZWF0O1xuJGJhY2tncm91bmQtZ2VvLWxpbmVzOiB1cmwoJy4uL0ltYWdlcy9nZW8tbGluZXMucG5nJyk7XG4kaGVhZGVyLWJhY2tncm91bmQ6IHVybCgnLi4vSW1hZ2VzL2hlYWRlci1iYWNrZ3JvdW5kLnBuZycpIHRvcCBsZWZ0IG5vLXJlcGVhdDtcbiRjb3ZlcmFnZS1idXR0b24tYmFja2dyb3VuZDogdXJsKCcuLi9JbWFnZXMvY292ZXJhZ2UtYnV0dG9uLnBuZycpIHRvcCBsZWZ0IG5vLXJlcGVhdDtcbiRmb290ZXItYmFja2dyb3VuZDogdXJsKCcuLi9JbWFnZXMvZm9vdGVyLWJhY2tncm91bmQucG5nJykgdG9wIGNlbnRlciBuby1yZXBlYXQ7XG5cbi8vPT0gRm9udHNcbiRmb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsIHNhbnMtc2VyaWY7XG5cbi8vPT0gRm9udC1Db2xvcnNcbiRmb250LWNvbG9yLWxpZ2h0OiAkaHVlbHNtYW5uLXdoaXRlO1xuJGZvbnQtY29sb3ItbWVkaXVtOiAkaHVlbHNtYW5uLWRhcmtlcmdyZXk7XG4kZm9udC1jb2xvci1kYXJrOiAkaHVlbHNtYW5uLWRlZXBncmV5O1xuJGZvbnQtY29sb3ItbGlnaHRkYXJrOiAkaHVlbHNtYW5uLWdyZXk7XG4kZm9udC1jb2xvci1ibHVlOiAkaHVlbHNtYW5uLWJsdWU7XG5cbi8vPT0gRm9udC1TaXplXG4kZm9udC1iYXNpcy1weC14eHh4eHhsYXJnZTogODVweDtcbiRmb250LWJhc2lzLXB4LXh4eHh4bGFyZ2U6IDExNXB4O1xuJGZvbnQtYmFzaXMtcHgteHh4eGxhcmdlOiA1NHB4O1xuJGZvbnQtYmFzaXMtcHgteHhsYXJnZTogNDBweDtcbiRmb250LWJhc2lzLXB4LXhsYXJnZTogMjdweDtcbiRmb250LWJhc2lzLXB4LWxhcmdlOiAyMnB4O1xuJGZvbnQtYmFzaXMtcHgteG1lZGl1bTogMjBweDtcbiRmb250LWJhc2lzLXB4LW1lZGl1bTogMThweDtcbiRmb250LWJhc2lzLXB4LXNtYWxsOiAxNHB4O1xuXG4vLz09IEJ1dHRvbi1Db2xvcnNcbiRidXR0b24tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJ1dHRvbi1jb2xvci1ob3ZlcjogIzY4MTcyMTtcblxuLy89PSBOYXZpZ2F0aW9uXG4kbmF2aWdhdGlvbi1ib3hzaGFkb3c6IDAgMCA2MHB4IC0yMHB4IHJnYmEoMCwgMCwgMCwgLjc1KTtcbiRuYXZpZ2F0aW9uLXJlY3RhbmdsZTogJGJ1dHRvbi1jb2xvciB1cmwoJy4uL0ltYWdlcy9uYXZpZ2F0aW9uLXJlY3RhbmdsZS5zdmcnKSBjZW50ZXIgbGVmdCBuby1yZXBlYXQ7XG4kbmF2aWdhdGlvbi1tb2JpbC1idXR0b246IHVybCgnLi4vSW1hZ2VzL21vYmlsLW5hdi1idXR0b24ucG5nJykgbGVmdCB0b3Agbm8tcmVwZWF0O1xuXG4vLz09IFNsaWNrXG4kc2xpY2stZm9udC1wYXRoOiAnLi4vRm9udHMvJztcbiRzbGljay1sb2FkZXItcGF0aDogJy4uL0ltYWdlcy8nO1xuJHNsaWNrLWRvdHM6IHVybCgnLi4vSW1hZ2VzL3NsaWNrLWRvdHMuc3ZnJyk7XG5cbi8vPT0gRmlsdGVyIGljb25cbiRmaWx0ZXItc3RyZWV0OiB1cmwoJy4uL0ltYWdlcy9maWx0ZXItc3RyZWV0LnBuZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuJGZpbHRlci1ncm91bmQ6IHVybCgnLi4vSW1hZ2VzL2ZpbHRlci1ncm91bmQucG5nJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4kZmlsdGVyLWJ1aWxkaW5nOiB1cmwoJy4uL0ltYWdlcy9maWx0ZXItYnVpbGRpbmcucG5nJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4kZmlsdGVyLWFsbDogdXJsKCcuLi9JbWFnZXMvZmlsdGVyLWFsbC5wbmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblxuLy89PSBTb2NpYWwgTWVkaWEgSWNvbnNcbiRzb2NpYWwtbWVkaWEtZ29vZ2xlcGx1czogdXJsKCcuLi9JbWFnZXMvaWNvbi1nb29nbGVwbHVzLnBuZycpO1xuJHNvY2lhbC1tZWRpYS1mYWNlYm9vazogdXJsKCcuLi9JbWFnZXMvaWNvbi1mYWNlYm9vay5wbmcnKTtcbiRzb2NpYWwtbWVkaWEteGluZzogdXJsKCcuLi9JbWFnZXMvaWNvbi14aW5nLnBuZycpO1xuJHNvY2lhbC1tZWRpYS1saW5rZWRpbjogdXJsKCcuLi9JbWFnZXMvaWNvbi1saW5rZWRpbi5wbmcnKTtcbiRzb2NpYWwtbWVkaWEtdHdpdHRlcjogdXJsKCcuLi9JbWFnZXMvaWNvbi10d2l0dGVyLnBuZycpO1xuXG4vLz09IEFuaW1hdGlvbnNcbiR0cmFuc2l0aW9uLWRlZmF1bHQ6IGFsbCAuMnMgZWFzZS1pbjtcbiR0cmFuc2l0aW9uLW5hdjogYWxsIC44cyBlYXNlO1xuXG4vLz09IEFjY29yZGlvblxuJGFjY29yZGlvbi1ib3JkZXI6IDFweCBzb2xpZCAkaHVlbHNtYW5uLWxpZ2h0Z3JleTtcblxuLy89PSBMaXN0ZW5cbiRsaXN0LWljb24taW1hZ2U6IHVybCgnLi4vSW1hZ2VzL2xpc3QtaWNvbi5wbmcnKTtcblxuLy89PSBUYWJsbGVcbiR0YWJsZS1ib3JkZXItc3R5bGU6IDFweCBzb2xpZCAkaHVlbHNtYW5uLWxpZ2h0Z3JleTtcblxuLy89PSBCdXR0b25cbiRidXR0b24taWNvbjogdXJsKCcuLi9JbWFnZXMvYnV0dG9uLWljb24uc3ZnJyk7XG4kYnV0dG9uLWljb24taG92ZXI6IHVybCgnLi4vSW1hZ2VzL2J1dHRvbi1ob3Zlci1pY29uLnN2ZycpO1xuXG4vLz0gRm9ybXVsYXJcbiRpbnB1dC1zdWJtaXQtaWNvbjogdHJhbnNwYXJlbnQgdXJsKCcuLi9JbWFnZXMvc2VhcmNoLWljb24uc3ZnJykgY2VudGVyIG5vLXJlcGVhdDtcblxuLy89PSBUcmVubmVyXG4kdHJlbm5lci1ib3JkZXItc3R5bGU6IDFweCBkb3R0ZWQgJGZvbnQtY29sb3ItZGFyaztcblxuLy89PSBNYXNrc1xuJGhlYWRlci1tYXNrLWRlZmF1bHQ6IHBvbHlnb24oM3B4IDU2OHB4LCA2MHB4IDBweCwgMTE4MnB4IDcwcHgsIDExODJweCA0NDBweCk7XG4kaGVhZGVyLW1hc2stbGFwdG9wOiBwb2x5Z29uKDBweCA0NjNweCwgNTBweCAycHgsIDkzOXB4IDU2cHgsIDkzOXB4IDM1OHB4KTtcbiRoZWFkZXItbWFzay10YWJsZXQ6IHBvbHlnb24oNDVweCAwcHgsIDBweCA0NjNweCwgOTQwcHggMzc1cHgsIDk0MHB4IDUzcHgpO1xuJGhlYWRlci1tYXNrLW1vYmlsZTogcG9seWdvbigwcHggMHB4LCAwcHggMjQ1cHgsIDQwMHB4IDIxMHB4LCA0MDBweCA2MHB4KTtcbiIsIi5jZS1hbGlnbi1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmNlLWFsaWduLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNlLWFsaWduLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jZS10YWJsZSB7XG4gIHRkLFxuICB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxufVxuXG4uY2UtdGV4dHBpYyxcbi5jZS1ub3dyYXAgLmNlLWJvZHl0ZXh0LFxuLmNlLWdhbGxlcnksXG4uY2Utcm93IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNlLXVwbG9hZHMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgbGksXG4gIGRpdiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lIG91dHNpZGUgbm9uZTtcbiAgICBtYXJnaW46IDFlbSAwO1xuICB9XG5cbiAgaW1nIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxZW07XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5jZS1sZWZ0IC5jZS1nYWxsZXJ5LFxuLmNlLWNvbHVtbiB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uY2UtY2VudGVyIHtcbiAgLmNlLW91dGVyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiA1MCU7XG4gIH1cblxuICAuY2UtaW5uZXIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IC01MCU7XG4gIH1cbn1cblxuLmNlLXJpZ2h0IC5jZS1nYWxsZXJ5IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uY2UtZ2FsbGVyeSB7XG4gIGZpZ3VyZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgZmlnY2FwdGlvbiB7XG4gICAgY2FwdGlvbi1zaWRlOiBib3R0b207XG4gICAgZGlzcGxheTogdGFibGUtY2FwdGlvbjtcbiAgfVxuXG4gIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBpZnJhbWUge1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgfVxufVxuXG4uY2UtYm9yZGVyIHtcbiAgaW1nLFxuICBpZnJhbWUge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICMwMDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4uY2UtYWJvdmUgLmNlLWdhbGxlcnkge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uY2UtaW50ZXh0IHtcbiAgJi5jZS1yaWdodCAuY2UtZ2FsbGVyeSxcbiAgJi5jZS1sZWZ0IC5jZS1nYWxsZXJ5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgJi5jZS1yaWdodCAuY2UtZ2FsbGVyeSB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIH1cblxuICAmLmNlLWxlZnQge1xuICAgIG9sLFxuICAgIHVsIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgIH1cblxuICAgIC5jZS1nYWxsZXJ5IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLmNlLWJlbG93IC5jZS1nYWxsZXJ5IHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLmNlLWNvbHVtbiB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uY2Utcm93IHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmNlLWFib3ZlIC5jZS1ib2R5dGV4dCB7XG4gIGNsZWFyOiBib3RoO1xufVxuIiwiLy89PSBJbmRleGVkIHNlYXJjaFxuI3R4X2luZGV4ZWRzZWFyY2gge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogMzAwO1xuXG4gIHRkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB9XG5cbiAgdHIgdGQ6Zmlyc3QtY2hpbGQoKSB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxuXG4gIHNlbGVjdCxcbiAgaW5wdXQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4ubWFpbi0tc2VjdGlvbiB7XG4gICN0eF9pbmRleGVkc2VhcmNoIHtcbiAgICBmaWVsZHNldCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkaHVlbHNtYW5uLWJsdWUgJGJhY2tncm91bmQtZ2VvLWxpbmVzIGNlbnRlciB0b3Agbm8tcmVwZWF0O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgY2xpcC1wYXRoOiAkaGVhZGVyLW1hc2stZGVmYXVsdDtcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1saWdodDtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGhlaWdodDogNTc3cHg7XG4gICAgICBsZWZ0OiAzNjdweDtcbiAgICAgIG1hcmdpbi10b3A6IC02MThweDtcbiAgICAgIG1heC13aWR0aDogMTE4MHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmc6IDIyMHB4IDcwcHggMTUwcHggMTUwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTYwJTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1iYXNpcy1weC14bGFyZ2U7XG4gICAgfVxuXG5cbiAgICBzZWxlY3QsXG4gICAgaW5wdXQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRodWVsc21hbm4td2hpdGU7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItbGlnaHQ7XG4gICAgfVxuXG4gICAgLnR4LWluZGV4ZWRzZWFyY2gtc2VhcmNoYm94LXN3b3JkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICB3aWR0aDogNzAlO1xuICAgIH1cblxuICAgIC50eC1pbmRleGVkc2VhcmNoLXNlYXJjaGJveC1idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGh1ZWxzbWFubi13aGl0ZTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRodWVsc21hbm4td2hpdGU7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBjb2xvcjogJGh1ZWxzbWFubi1ibHVlO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1iYXNpcy1weC14bGFyZ2U7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgcGFkZGluZzogMTBweCAzNXB4O1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tZGVmYXVsdDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogJGh1ZWxzbWFubi13aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudHgtaW5kZXhlZHNlYXJjaC1pY29uLFxuICAudHgtaW5kZXhlZHNlYXJjaC1wZXJjZW50LFxuICAudHgtaW5kZXhlZHNlYXJjaC10ZXh0LWl0ZW0tc2l6ZSxcbiAgLnR4LWluZGV4ZWRzZWFyY2gtdGV4dC1pdGVtLWNyZGF0ZSxcbiAgLnR4LWluZGV4ZWRzZWFyY2gtdGV4dC1pdGVtLW10aW1lLFxuICBkdC50eC1pbmRleGVkc2VhcmNoLXRleHQtaXRlbS1wYXRoIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgZGQudHgtaW5kZXhlZHNlYXJjaC10ZXh0LWl0ZW0tcGF0aCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAudHgtaW5kZXhlZHNlYXJjaC1yZXMge1xuICAgIGJvcmRlci1ib3R0b206ICRhY2NvcmRpb24tYm9yZGVyO1xuICB9XG59XG5cblxuLnR4LWluZGV4ZWRzZWFyY2gtc2VhcmNoYm94LXN3b3JkIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGh1ZWxzbWFubi1kYXJrZXJncmV5O1xuICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgteGxhcmdlO1xuICBvdXRsaW5lOiAwO1xuICBwYWRkaW5nOiA1cHggMDtcbiAgd2lkdGg6IDE3NXB4O1xufVxuXG5cbi8vPT0gU3VjaGZvcm11bGFyIGltIEhlYWRlclxuLmhlYWRlci0tc2VhcmNoLWZvcm0ge1xuICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuXG4gIGZvcm0ge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgZmllbGRzZXQge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRodWVsc21hbm4tZGFya2VyZ3JleTtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogMjEwcHg7XG4gICAgfVxuXG4gICAgaW5wdXQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHdpZHRoOiAxNzVweDtcblxuICAgICAgJlt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGlucHV0LXN1Ym1pdC1pY29uO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDg1JTtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy89PSBTY3JvbGwtTmF2aWdhdGlvblxuLnNjcm9sbC1uYXYtLXNlYXJjaC1mb3JtIGZvcm0ge1xuICBjbGVhcjogYm90aDtcblxuICBmaWVsZHNldCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiA5MCU7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaHVlbHNtYW5uLWRhcmtlcmdyZXk7XG4gICAgfVxuICB9XG5cbiAgaW5wdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIG91dGxpbmU6IDA7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogODAlO1xuXG4gICAgJlt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIGJhY2tncm91bmQ6ICRpbnB1dC1zdWJtaXQtaWNvbjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogODUlO1xuICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgfVxuICB9XG59XG5cblxuLy89PSBLb250YWt0Zm9ybXVsYXIgaW0gRm9vdGVyXG4ubWFpbi0tYm94LXJpZ2h0IHtcbiAgLmNzYy1tYWlsZm9ybSB7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLWRhcms7XG5cbiAgICBsYWJlbCB7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyaztcbiAgICB9XG5cbiAgICBpbnB1dCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRodWVsc21hbm4tZGFya2VyZ3JleTtcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1saWdodDtcbiAgICB9XG4gIH1cbn1cblxuXG4uY3NjLW1haWxmb3JtIHtcbiAgY29sb3I6ICRmb250LWNvbG9yLWxpZ2h0O1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgb2wge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICB9XG5cbiAgbGkge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG5cbiAgbGFiZWwsXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBmb250LXNpemU6ICRmb250LWJhc2lzLXB4LWxhcmdlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRodWVsc21hbm4tZGFya2VyZ3JleTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgaGVpZ2h0OiA1NXB4O1xuICAgIG1hcmdpbjogMTBweCAwIDI1cHggMDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgd2lkdGg6IDU2MHB4O1xuICB9XG5cbiAgbGFiZWwge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1saWdodDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbjogMTVweCAwO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJlt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRodWVsc21hbm4td2hpdGU7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyaztcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1kZWZhdWx0O1xuICAgICAgd2lkdGg6IDI2MHB4O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGh1ZWxzbWFubi1ibHVlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkaHVlbHNtYW5uLWJsdWU7XG4gICAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1saWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiAxMzVweDtcbiAgfVxufVxuXG4uY3NjLWZvcm0tNCBsYWJlbHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMFxufVxuXG4uY3NjLWZvcm0tY29uZmlybWF0aW9uLWZhbHNlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuXG4gIGlucHV0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1saWdodCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5jc2MtZm9ybS1jb25maXJtYXRpb24tdHJ1ZXtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cblxuLy8gTGFwdG9wXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NnB4KSBhbmQgKG1heC13aWR0aDogMTQ0MHB4KSB7XG4gIC5tYWluLS1zZWN0aW9uICN0eF9pbmRleGVkc2VhcmNoIGZpZWxkc2V0IHtcbiAgICBjbGlwLXBhdGg6ICRoZWFkZXItbWFzay1sYXB0b3A7XG4gICAgaGVpZ2h0OiA0NjdweDtcbiAgICBsZWZ0OiAxMTBweDtcbiAgICBtYXJnaW4tdG9wOiAtNDgxcHg7XG4gICAgd2lkdGg6IDExNSU7XG4gIH1cbn1cblxuLy8gVGFibGV0XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NnB4KSBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLm1haW4tLXNlY3Rpb24gI3R4X2luZGV4ZWRzZWFyY2ggZmllbGRzZXQge1xuICAgIGNsaXAtcGF0aDogJGhlYWRlci1tYXNrLXRhYmxldDtcbiAgICBsZWZ0OiAxMThweDtcbiAgICBtYXJnaW4tdG9wOiAtNDc4cHg7XG4gIH1cbn1cblxuLy8gbW9iaWxlIHBob25lXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3NXB4KSB7XG4gIC5jc2MtbWFpbGZvcm0ge1xuICAgIGlucHV0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIHdpZHRoOiAzMDBweDtcbiAgICB9XG4gIH1cblxuICAubWFpbi0tc2VjdGlvbiAjdHhfaW5kZXhlZHNlYXJjaCB7XG4gICAgZmllbGRzZXQge1xuICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDY4MHB4IDI2MHB4LCAwIDMxMHB4LCAzMHB4IDE1cHgsIDY4MHB4IDYwcHgpO1xuICAgICAgaGVpZ2h0OiAzMjBweDtcbiAgICAgIGxlZnQ6IDMycHg7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgcGFkZGluZzogOTBweDtcbiAgICAgIHdpZHRoOiAxMzUlO1xuICAgIH1cblxuICAgIC50eC1pbmRleGVkc2VhcmNoLXNlYXJjaGJveC1zd29yZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjEuMlxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gU2FzcyB1dGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vIEdsb2JhbCB2YXJpYWJsZXMgYW5kIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4LXZpZGVvJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZygkZmxleDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuICBAaWYgbm90ICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuICB9XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtdmlkZW87XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjY29yZGlvbiBncm91cC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgcGx1cyBhbmQgbWludXMgaWNvbnMgdG8gdGhlIHNpZGUgb2YgZWFjaCBhY2NvcmRpb24gdGl0bGUuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiBmb3JlZ3JvdW5kKCRhY2NvcmRpb24tYmFja2dyb3VuZCwgJHByaW1hcnktY29sb3IpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhbiBhY2NvcmRpb24gaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiBmb3JlZ3JvdW5kKCRhY2NvcmRpb24tYmFja2dyb3VuZCwgJHByaW1hcnktY29sb3IpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgYmFja2dyb3VuZDogJGFjY29yZGlvbi1iYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB0aXRsZSBvZiBhbiBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGluayB3aXRoaW4gYW4gYWNjb3JkaW9uIGl0ZW0uXG5AbWl4aW4gYWNjb3JkaW9uLXRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRhY2NvcmRpb24taXRlbS1wYWRkaW5nO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gIGNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tY29sb3I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxuXG4gIEBpZiAkYWNjb3JkaW9uLXBsdXNtaW51cyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAn4oCTJztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhY2NvcmRpb24gY29udGVudC4gQXBwbHkgdGhpcyB0byB0aGUgY29udGVudCBwYW5lIGJlbG93IGFuIGFjY29yZGlvbiBpdGVtJ3MgdGl0bGUuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQge1xuICBwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZztcbiAgZGlzcGxheTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbiB7XG4gIC5hY2NvcmRpb24ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250YWluZXI7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIC8vIFRoaXMgY2xhc3MgZG9lc24ndCBuZWVkIHN0eWxlcyFcbiAgfVxuXG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi10aXRsZTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBDb2xvclZhcmlhYmxlLCBRdWFsaWZ5aW5nRWxlbWVudCwgVmVuZG9yUHJlZml4XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIFByaW1hcnkgY29sb3IgZm9yIGludGVyYWN0aXZlIGNvbXBvbmVudHMgbGlrZSBsaW5rcyBhbmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJHByaW1hcnktY29sb3I6ICMyMTk5ZTggIWRlZmF1bHQ7XG5cbi8vLyBTZWNvbmRhcnkgY29sb3IsIHVzZWQgd2l0aCBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCB0aGUgYC5zZWNvbmRhcnlgIGNsYXNzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2Vjb25kYXJ5LWNvbG9yOiAjNzc3ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gaW5kaWNhdGUgYSBwb3NpdGl2ZSBzdGF0dXMgb3IgYWN0aW9uLCB1c2VkIHdpdGggdGhlIGAuc3VjY2Vzc2AgY2xhc3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWNjZXNzLWNvbG9yOiAjM2FkYjc2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gaW5kaWNhdGUgYSBjYXV0aW9uIHN0YXR1cyBvciBhY3Rpb24sIHVzZWQgd2l0aCB0aGUgYC53YXJuaW5nYCBjbGFzcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB0byBpbmRpY2F0ZSBhIG5lZ2F0aXZlIHN0YXR1cyBvciBhY3Rpb24sIHVzZWQgd2l0aCB0aGUgYC5hbGVydGAgY2xhc3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbGVydC1jb2xvcjogI2VjNTg0MCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCBtYXAgdXNlZCB0byBpdGVyYXRlIHRocm91Z2ggY29sb3JzLCB0byBnZW5lcmF0ZSBDU1MgY2xhc3NlcyB3aXRoIGxlc3MgY29kZVxuJGZvdW5kYXRpb24tY29sb3JzOiAoXG4gIHByaW1hcnk6ICRwcmltYXJ5LWNvbG9yLFxuICBzZWNvbmRhcnk6ICRzZWNvbmRhcnktY29sb3IsXG4gIHN1Y2Nlc3M6ICRzdWNjZXNzLWNvbG9yLFxuICBhbGVydDogJGFsZXJ0LWNvbG9yLFxuICB3YXJuaW5nOiAkd2FybmluZy1jb2xvcixcbikgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSAtemYtbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjpiZWZvcmUsXG4gICo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG5cbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgSWRTZWxlY3RvclxuICAjbWFwX2NhbnZhcyxcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIExvYWRzIG5vcm1hbGl6ZS5jc3MuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLXpmLW5vcm1hbGl6ZSB7XG4gIC8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuICAvKipcbiAgICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbiAgICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcbiAgICogICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuICAgKi9cblxuICBodG1sIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICAgKi9cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgLyoqXG4gICAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gICAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4gICAqIGFuZCBGaXJlZm94LlxuICAgKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICAgKi9cblxuICBhcnRpY2xlLFxuICBhc2lkZSxcbiAgZGV0YWlscyxcbiAgZmlnY2FwdGlvbixcbiAgZmlndXJlLFxuICBmb290ZXIsXG4gIGhlYWRlcixcbiAgaGdyb3VwLFxuICBtYWluLFxuICBtZW51LFxuICBuYXYsXG4gIHNlY3Rpb24sXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLyoqXG4gICAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gICAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICovXG5cbiAgYXVkaW8sXG4gIGNhbnZhcyxcbiAgcHJvZ3Jlc3MsXG4gIHZpZGVvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbiAgfVxuXG4gIC8qKlxuICAgKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICAgKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICAgKi9cblxuICBhdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAwO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbiAgICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICAgKi9cblxuICBbaGlkZGVuXSxcbiAgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvKiBMaW5rc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG5cbiAgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvKipcbiAgICogSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuICAgKiBhY3RpdmUvaG92ZXIgc3RhdGUuXG4gICAqL1xuXG4gIGE6YWN0aXZlLFxuICBhOmhvdmVyIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKipcbiAgICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICAgKi9cblxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gICAqL1xuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICAgKi9cblxuICBkZm4ge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gICAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAgICovXG5cbiAgbWFyayB7XG4gICAgYmFja2dyb3VuZDogI2ZmMDtcbiAgICBjb2xvcjogIzAwMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG5cbiAgLyoqXG4gICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG5cbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cblxuICAvKiBFbWJlZGRlZCBjb250ZW50XG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgLyoqXG4gICAqIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuICAgKi9cblxuICBpbWcge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAgICovXG5cbiAgc3ZnOm5vdCg6cm9vdCkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAvKiBHcm91cGluZyBjb250ZW50XG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgLyoqXG4gICAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuICAgKi9cblxuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMWVtIDQwcHg7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICAgKi9cblxuICBociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgaGVpZ2h0OiAwO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuICBwcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbiAgY29kZSxcbiAga2JkLFxuICBwcmUsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxuXG4gIC8qIEZvcm1zXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgLyoqXG4gICAqIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4gICAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAgICovXG5cbiAgLyoqXG4gICAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAgICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gICAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gICAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICAgKi9cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gICAgbWFyZ2luOiAwOyAvKiAzICovXG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gICAqL1xuXG4gIGJ1dHRvbiB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICAgKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICAgKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICAgKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gICAqL1xuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC8qKlxuICAgKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICAgKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAgICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICAgKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICAgKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gICAqL1xuXG4gIGJ1dHRvbixcbiAgaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG4gIGlucHV0W3R5cGU9XCJyZXNldFwiXSxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbiAgICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cbiAgfVxuXG4gIC8qKlxuICAgKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICAgKi9cblxuICBidXR0b25bZGlzYWJsZWRdLFxuICBodG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAgICovXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBpbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICAgKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAgICovXG5cbiAgaW5wdXQge1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAvKipcbiAgICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuICAgKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuICAgKlxuICAgKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuICAgKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICAgKi9cblxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgfVxuXG4gIC8qKlxuICAgKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICAgKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuICAgKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gICAqL1xuXG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8qKlxuICAgKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAgICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAgICovXG5cbiAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICAgKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gICAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAgICovXG5cbiAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbiAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAgICogW05PVEVdIFdlIGRvbid0IGVuYWJsZSB0aGlzIHJ1bGVzZXQgaW4gRm91bmRhdGlvbiwgYmVjYXVzZSB3ZSB3YW50IHRoZSA8ZmllbGRzZXQ+IGVsZW1lbnQgdG8gaGF2ZSBwbGFpbiBzdHlsaW5nLlxuICAgKi9cblxuICAvKiBmaWVsZHNldCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICBtYXJnaW46IDAgMnB4O1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbiAgfSAqL1xuXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4gICAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAgICovXG5cbiAgbGVnZW5kIHtcbiAgICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwOyAvKiAyICovXG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAgICovXG5cbiAgdGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLyoqXG4gICAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAgICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gICAqL1xuXG4gIG9wdGdyb3VwIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC8qIFRhYmxlc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gICAqL1xuXG4gIHRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICB9XG5cbiAgdGQsXG4gIHRoIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtbGludDpkaXNhYmxlIFplcm9Vbml0XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRiYXNlLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gQSBsaXN0IG9mIGNvbnZlcnRlZCB2YWx1ZXMuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgLy8gVGhpcyBpcyBiZWNhdXNlIDEwMCUgZm9udCBzaXplID0gMTZweCBpbiBtb3N0IGFsbCBicm93c2Vyc1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmICRjb3VudCA9PSAxIHtcbiAgICBAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cbi8vIENvbnZlcnRzIGEgdW5pdGxlc3MsIHBpeGVsLCBvciByZW0gdmFsdWUgdG8gZW0sIGZvciB1c2UgaW4gYnJlYWtwb2ludHMuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIC8vIFRoZW4gdGhlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBlbXNcbiAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxZW07XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4gICAgQHdhcm4gaW5zcGVjdCgkdmFsdWUpICsgJyB3YXMgcGFzc2VkIHRvIHJlbS1jYWxjKCksIHdoaWNoIGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHJlbSBpZiB1bml0cyBmb3IgJHZhbHVlIGlzIG5vdCByZW1cbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKSAqIDFyZW07XG4gIH1cblxuICAvLyBUdXJuIDByZW0gaW50byAwXG4gIEBpZiAkdmFsdWUgPT0gMHJlbSB7XG4gICAgJHZhbHVlOiAwO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBPdXRwdXRzIENTUyBjbGFzc2VzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBmb3VuZGF0aW9uLWdyaWQoXG4gICRyb3c6ICdyb3cnLFxuICAkY29sdW1uOiAnY29sdW1uJyxcbiAgJGNvbHVtbi1yb3c6ICdjb2x1bW4tcm93JyxcbiAgJHB1c2g6ICdwdXNoJyxcbiAgJHB1bGw6ICdwdWxsJyxcbiAgJGNlbnRlcjogJ2NlbnRlcmVkJyxcbiAgJHVuY2VudGVyOiAndW5jZW50ZXJlZCcsXG4gICRjb2xsYXBzZTogJ2NvbGxhcHNlJyxcbiAgJHVuY29sbGFwc2U6ICd1bmNvbGxhcHNlJyxcbiAgJG9mZnNldDogJ29mZnNldCcsXG4gICRlbmQ6ICdlbmQnLFxuICAkZXhwYW5kZWQ6ICdleHBhbmRlZCdcbikge1xuICAvLyBSb3dcbiAgLiN7JHJvd30ge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xuXG4gICAgLy8gQ29sbGFwc2luZ1xuICAgICYuI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmICYge1xuICAgICAgQGlmICRncmlkLWNvbHVtbi1ndXR0ZXIgPT0gbnVsbCB7XG4gICAgICAgIEBlYWNoICRicmVha3BvaW50LCAkZ3V0dGVyIGluICRncmlkLWNvbHVtbi1yZXNwb25zaXZlLWd1dHRlciB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV4cGFuZGVkIChmdWxsLXdpZHRoKSByb3dcbiAgICAmLiN7JGV4cGFuZGVkfSB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW5cbiAgLiN7JGNvbHVtbn0ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sO1xuXG4gICAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAgICYuI3skZW5kfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWVuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW4gcm93XG4gIC8vIFRoZSBkb3VibGUgLnJvdyBjbGFzcyBpcyBuZWVkZWQgdG8gYnVtcCB1cCB0aGUgc3BlY2lmaWNpdHlcbiAgLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBmbG9hdDogbm9uZTtcblxuICAgIC8vIFRvIHByb3Blcmx5IG5lc3QgYSBjb2x1bW4gcm93LCBwYWRkaW5nIGFuZCBtYXJnaW4gaXMgcmVtb3ZlZFxuICAgIC4jeyRyb3d9ICYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIENvbHVtbiB3aWR0aFxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoJGkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgICAgIEBpZiAkaSA8ICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygkaSk7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLSRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LSN7JG9mZnNldH0tI3skb30ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1vZmYoJG8pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJsb2NrIGdyaWRcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoJGksIFwiLiN7JGNvbHVtbn1cIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBjb2xsYXBzaW5nXG4gICAgLiN7JC16Zi1zaXplfS0jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7IEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlOyB9XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LSN7JHVuY29sbGFwc2V9IHtcbiAgICAgICRndXR0ZXI6IG51bGw7XG5cbiAgICAgIEBpZiAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHtcbiAgICAgICAgJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcjtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGdyaWQtY29sdW1uLXJlc3BvbnNpdmUtZ3V0dGVyLCAkLXpmLXNpemUpO1xuICAgICAgfVxuICAgICAgPiAuI3skY29sdW1ufSB7IEBpbmNsdWRlIGdyaWQtY29sLXVuY29sbGFwc2UoJGd1dHRlcik7IH1cbiAgICB9XG5cbiAgICAvLyBQb3NpdGlvbmluZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY2VudGVyfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoY2VudGVyKTtcbiAgICB9XG5cbiAgICAvLyBHdXR0ZXIgYWRqdXN0bWVudFxuICAgIC4jeyQtemYtc2l6ZX0tI3skdW5jZW50ZXJ9LFxuICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tMCxcbiAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LTAge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtdW5wb3M7XG4gICAgfVxuICB9XG5cbiAgQGlmICRjb2x1bW4gPT0gJ2NvbHVtbicge1xuICAgIC5jb2x1bW5zIHtcbiAgICAgIC8vIHNjc3MtbGludDpkaXNhYmxlIFBsYWNlaG9sZGVySW5FeHRlbmRcbiAgICAgIEBleHRlbmQgLmNvbHVtbjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50O1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgcm93LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gQ29sdW1uIGNvdW50IGZvciB0aGlzIHJvdy4gYG51bGxgIHdpbGwgdXNlIHRoZSBkZWZhdWx0IGNvbHVtbiBjb3VudC5cbi8vLyBAcGFyYW0ge0tleXdvcmRzfSAkYmVoYXZpb3IgW251bGxdXG4vLy8gICBNb2RpZmljYXRpb25zIHRvIHRoZSBkZWZhdWx0IGdyaWQgc3R5bGVzLiBgbmVzdGAgaW5kaWNhdGVzIHRoZSByb3cgd2lsbCBiZSBwbGFjZWQgaW5zaWRlIGFub3RoZXIgcm93LiBgY29sbGFwc2VgIGluZGljYXRlcyB0aGF0IHRoZSBjb2x1bW5zIGluc2lkZSB0aGlzIHJvdyB3aWxsIG5vdCBoYXZlIHBhZGRpbmcuIGBuZXN0IGNvbGxhcHNlYCBjb21iaW5lcyBib3RoIGJlaGF2aW9ycy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFskZ3JpZC1yb3ctd2lkdGhdIC0gTWF4aW11bSB3aWR0aCBvZiB0aGUgcm93LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGNmIFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgYSBjbGVhcmZpeC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMsIGluIGNhc2UgdGhlIHJvdyBpcyBuZXN0ZWQuXG5AbWl4aW4gZ3JpZC1yb3coXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICR3aWR0aDogJGdyaWQtcm93LXdpZHRoLFxuICAkY2Y6IHRydWUsXG4gICRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAkYmVoYXZpb3I6IC16Zi1nZXQtb3B0aW9ucygkYmVoYXZpb3IsIG5lc3QgY29sbGFwc2UpO1xuICAkbWFyZ2luOiBhdXRvO1xuXG4gIEBpZiBtYXAtZ2V0KCRiZWhhdmlvciwgbmVzdCkge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcik7XG5cbiAgICBAaWYgbWFwLWdldCgkYmVoYXZpb3IsIGNvbGxhcHNlKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIG1heC13aWR0aDogJHdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIEBpZiAkY2Yge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbnZlcnRzIHRoZSBtYXJnaW5zIG9mIGEgcm93IHRvIG5lc3QgaXQgaW5zaWRlIG9mIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtNYXB8bnVsbH0gJGd1dHRlciBbbnVsbF0gLSBHdXR0ZXIgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIHRoZSBtYXJnaW5zLiBTZXQgdG8gYG51bGxgIHRvIHJlZmVyIHRvIHRoZSByZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncy5cbkBtaXhpbiBncmlkLXJvdy1uZXN0KCRndXR0ZXI6IG51bGwpIHtcbiAgQGlmICRndXR0ZXIgIT0gbnVsbCB7XG4gICAgJG1hcmdpbjogcmVtLWNhbGMoJGd1dHRlcikgLyAyICogLTE7XG4gICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW47XG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRncmlkLWNvbHVtbi1yZXNwb25zaXZlLWd1dHRlciB7XG4gICAgICAkbWFyZ2luOiByZW0tY2FsYygkdmFsdWUpIC8gMiAqIC0xO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW47XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6IGZsb29yKCgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycykpIC8gKCRiYXJzIC0gMSkpO1xuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICAgIH1cblxuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cmVkKCRjb2xvcil9LCAje2dyZWVuKCRjb2xvcil9LCAje2JsdWUoJGNvbG9yKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmVyc2lvbj1cIjEuMVwiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMzIgMjRcIj48cG9seWdvbiBwb2ludHM9XCIwLDAgMzIsMCAxNiwyNFwiIHN0eWxlPVwiZmlsbDogI3skcmdifVwiPjwvcG9seWdvbj48L3N2Zz4nKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA1MCUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gJGkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbn1cblxuLy8vIFJldmVyc2VzIHRoZSBDU1Mgb3V0cHV0IGNyZWF0ZWQgYnkgdGhlIGBlbGVtZW50LWludmlzaWJsZSgpYCBtaXhpbi5cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogdHJ1ZSkge1xuICAkbWFwOiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuXG4gIEBpZiBub3QgJHNtYWxsIHtcbiAgICAkbWFwOiBtYXAtcmVtb3ZlKCRtYXAsIHNtYWxsKTtcbiAgfVxuXG4gIEBlYWNoICRzaXplIGluICRtYXAge1xuICAgICQtemYtc2l6ZTogJHNpemUgIWdsb2JhbDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmVtb3ZpbmcgdGhlIHBhZGRpbmcuICoqTm90ZToqKiBvbmx5IHVzZSB0aGlzIG1peGluIHdpdGhpbiBhIGJyZWFrcG9pbnQuIFRvIGNvbGxhcHNlIGEgY29sdW1uJ3MgZ3V0dGVycyBvbiBhbGwgc2NyZWVuIHNpemVzLCB1c2UgdGhlIGAkZ3V0dGVyYCBwYXJhbWV0ZXIgb2YgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiBpbnN0ZWFkLlxuQG1peGluIGdyaWQtY29sdW1uLWNvbGxhcHNlIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4vLy8gVW4tY29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmUtYWRkaW5nIHRoZSBwYWRkaW5nLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVuY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVuY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC11bmNvbGxhcHNlKCRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vIHNjc3MtbGludDpkaXNhYmxlIFplcm9Vbml0XG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogc21hbGwpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkbmV4dC1icDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJGJwKTtcblxuICAgICAgICBAaWYgJG5leHQtYnAgPT0gbnVsbCB7XG4gICAgICAgICAgJGJwLW1heDogbnVsbDtcbiAgICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiB0aGUgbWVkaWEgcXVlcnkgXCIjeyR2YWx9XCIgY2Fubm90IGJlIHVzZWQgYmVjYXVzZSAjeyRicH0gaXMgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC4nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAkYnAtbWF4OiAkbmV4dC1icDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtICgxLzE2KTtcbiAgfVxuXG4gIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgdGhlIGlucHV0IGlzIFwiMCB1cFwiXG4gIEBpZiAkYnAgPiAwZW0gb3IgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIGBvbmx5YCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pIGFuZCAobWF4LXdpZHRoOiBuKWBcbiAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogMDtcblxuICAgICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzLCBzdWJ0cmFjdCB0aGUgYnJlYWtwb2ludCB2YWx1ZSBieSBvbmUgXCJwaXhlbFwiLCBvciAxLzE2ZW0uXG4gICAgICBAaWYgJG5hbWVkIHtcbiAgICAgICAgJG1heDogJGJwLW1heDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJG1heDogJGJwO1xuICAgICAgfVxuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIiBidXQgZG9uJ3QgXCJzbWFsbCBkb3duXCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYHVwYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRicCA+IDBlbSB7XG4gICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZSkge1xuICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENvbnZlcnMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG4gIC8vIFN0b3JlIHRoZSB2YWx1ZXMgb2YgdGhlIG1hcCBhcyBhIGxpc3QsIHNvIHdlIGNhbiBhY2Nlc3MgdGhlbSB3aXRoIG50aFxuICAkdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuXG4gIC8vIEdoZXR0byBmb3IgbG9vcFxuICAkaTogMTtcbiAgJGZvdW5kOiBmYWxzZTtcbiAgQGVhY2ggJHZhbCBpbiBtYXAta2V5cygkbWFwKSB7XG4gICAgQGlmICRmb3VuZCA9PSBmYWxzZSB7XG4gICAgICBAaWYgKCRrZXkgPT0gJHZhbCkge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9XG4gICAgICAkaTogJGkgKyAxO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICRpID4gbGVuZ3RoKCRtYXApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG50aCgkdmFsdWVzLCAkaSk7XG4gIH1cbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcC4gSWYgdGhlIGNvbmZpZyBtYXAgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLiBJZiB0aGUgY29uZmlnIG1hcCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gSW5wdXQgY29uZmlnIG1hcC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4vLyBMZWdhY3kgYnJlYWtwb2ludCB2YXJpYWJsZXNcbi8vIFRoZXNlIHdpbGwgYmUgcmVtb3ZlZCBpbiA2LjJcbiRzbWFsbC11cDogbnVsbDtcbiRzbWFsbC1vbmx5OiBudWxsO1xuJG1lZGl1bS11cDogbnVsbDtcbiRtZWRpdW0tb25seTogbnVsbDtcbiRsYXJnZS11cDogbnVsbDtcbiRsYXJnZS1vbmx5OiBudWxsO1xuJHhsYXJnZS11cDogbnVsbDtcbiR4bGFyZ2Utb25seTogbnVsbDtcbiR4eGxhcmdlLXVwOiBudWxsO1xuJHh4bGFyZ2Utb25seTogbnVsbDtcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgYSBjb2x1bW4gYmFzZWQgb24gYSBudW1iZXIgb2YgZmFjdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRjb2x1bW5zXG4vLy8gICBXaWR0aCBvZiB0aGUgY29sdW1uLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBwZXJjZW50YWdlIHZhbHVlIHdpbGwgbWFrZSB0aGUgY29sdW1uIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBzaW5nbGUgZGlnaXQgd2lsbCBtYWtlIHRoZSBjb2x1bW4gc3BhbiB0aGF0IG51bWJlciBvZiBjb2x1bW5zIHdpZGUsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGNvbHVtbiBjb3VudCBvZiB0aGUgcGFyZW50IHJvdy5cbi8vLyAgIC0gQSBzdHJpbmcgb2YgdGhlIGZvcm1hdCBcInggb2YgeVwiIHdpbGwgbWFrZSBhIGNvbHVtbiB0aGF0IGlzICp4KiBjb2x1bW5zIHdpZGUsIGFzc3VtaW5nICp5KiB0b3RhbCBjb2x1bW5zIGZvciB0aGUgcGFyZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBjYWxjdWxhdGVkIHBlcmNlbnRhZ2UgdmFsdWUuXG5AZnVuY3Rpb24gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpIHtcbiAgJHdpZHRoOiAwJTtcblxuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgYW5kIGNvbHVtbiBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkY29sdW1ucykgPT0gJyUnIHtcbiAgICAgICR3aWR0aDogJGNvbHVtbnM7XG4gICAgfVxuICAgIEBlbHNlIGlmICRjb2x1bW5zIDwgMSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJGNvbHVtbnMpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKG50aCgkY29sdW1ucywgMSkgLyBudGgoJGNvbHVtbnMsIDMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpZiAkZ3V0dGVyICE9IG51bGwge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpIC8gMjtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVhY2ggJGJyZWFrcG9pbnQsICRndXR0ZXIgaW4gJGdyaWQtY29sdW1uLXJlc3BvbnNpdmUtZ3V0dGVyIHtcbiAgICAgICRwYWRkaW5nOiByZW0tY2FsYygkZ3V0dGVyKSAvIDI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG4gIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlcjtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlcjtcblxuICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbiByb3cuIFRoaXMgaXMgdGhlIGVxdWl2YWxlbnQgb2YgYWRkaW5nIGAucm93YCBhbmQgYC5jb2x1bW5gIHRvIHRoZSBzYW1lIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBXaWR0aCBvZiB0aGUgZ3V0dGVycyBvbiBlaXRoZXIgc2lkZSBvZiB0aGUgY29sdW1uIHJvdy5cbkBtaXhpbiBncmlkLWNvbHVtbi1yb3coXG4gICRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLXJvdztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGd1dHRlcjogJGd1dHRlcik7XG5cbiAgJixcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AZnVuY3Rpb24gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAcmV0dXJuIGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQG1peGluIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXIpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcm93KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1yb3dcbkBtaXhpbiBncmlkLWNvbC1yb3coXG4gICRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coJGd1dHRlcik7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIHdpZHRoIG9mIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkd2lkdGggWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCB0byBtYWtlIHRoZSBjb2x1bW4uIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1zaXplKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgd2lkdGg6IGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXNpemUoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXNpemVcbkBtaXhpbiBncmlkLWNvbC1zaXplKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBSZXBvc2l0aW9uIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwb3NpdGlvbiAtIERpcmVjdGlvbiBhbmQgYW1vdW50IHRvIG1vdmUuIFRoZSBjb2x1bW4gd2lsbCBtb3ZlIGVxdWFsIHRvIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uIGNvdW50IHNwZWNpZmllZC4gQSBwb3NpdGl2ZSBudW1iZXIgd2lsbCBwdXNoIHRoZSBjb2x1bW4gdG8gdGhlIHJpZ2h0LCB3aGlsZSBhIG5lZ2F0aXZlIG51bWJlciB3aWxsIHB1bGwgaXQgdG8gdGhlIGxlZnQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIEBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gJ251bWJlcicge1xuICAgICRvZmZzZXQ6IHBlcmNlbnRhZ2UoJHBvc2l0aW9uIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbi1wb3NpdGlvbigpLiBFbnRlciBhIHBvc2l0aXZlIG9yIG5lZ2F0aXZlIG51bWJlciwgb3IgY2VudGVyLic7XG4gIH1cbn1cblxuLy8vIFJlc2V0IGEgcG9zaXRpb24gZGVmaW5pdGlvbi5cbkBtaXhpbiBncmlkLWNvbHVtbi11bnBvc2l0aW9uIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodCBieSBgJG5gIGNvbHVtbnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBXaWR0aCB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1vZmZzZXQoJG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ3JpZC1jb2x1bW4oJG4pO1xufVxuXG4vLy8gRGlzYWJsZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGUgbGFzdCBjb2x1bW4gaW4gYSByb3cgYWxpZ25pbmcgdG8gdGhlIG9wcG9zaXRlIGVkZ2UuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZW5kIHtcbiAgLy8gVGhpcyBleHRyYSBzcGVjaWZpY2l0eSBpcyByZXF1aXJlZCBmb3IgdGhlIHByb3BlcnR5IHRvIGJlIGFwcGxpZWRcbiAgJjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXBvcygkcG9zaXRpb24pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVucG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVucG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC11bnBvcyB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVucG9zaXRpb247XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1vZmZzZXQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLW9mZnNldFxuQG1peGluIGdyaWQtY29sLW9mZigkbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoJG4pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZW5kKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1lbmRcbkBtaXhpbiBncmlkLWNvbC1lbmQge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1lbmQ7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jb2x1bW4nXSAtIFNlbGVjdG9yKHMpIHRvIHVzZSBmb3IgY2hpbGQgZWxlbWVudHMuXG5AbWl4aW4gZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY29sdW1uJ1xuKSB7XG4gICYgPiAjeyRzZWxlY3Rvcn0ge1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEvJG4pO1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG5cbiAgICAmOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKCN7JG59bisxKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gKDEvMTYpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gKDEvMTYpO1xuICAvLyB0ZXN0IGFjdHVhbCBsb3dlci1ib3VuZC1zaXplLCBpZiAwIHNldCBpdCB0byAwZW1cbiAgQGlmICRsb3dlci1ib3VuZC1zaXplID09IDAge1xuICAgICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkdXBwZXItYm91bmQtc2l6ZSA9PSBudWxsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICR1cHBlci1ib3VuZDogLXpmLWJwLXRvLWVtKCR1cHBlci1ib3VuZC1zaXplKTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gc21hbGwge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vPT0gSGF1cHRuYXZpZ2F0aW9uXG4ubWFpbi1uYXYge1xuICBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLW1lZGl1bTtcbiAgICBmb250LXNpemU6ICRmb250LWJhc2lzLXB4LXh4bGFyZ2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy89PSBTY3JvbGwtTmF2aWdhdGlvblxuLnNjcm9sbC1uYXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaHVlbHNtYW5uLXdoaXRlO1xuICBib3gtc2hhZG93OiAkbmF2aWdhdGlvbi1ib3hzaGFkb3c7XG4gIG1pbi1oZWlnaHQ6IDY1cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMzUwcHg7XG4gIG1heC13aWR0aDogMTkwMHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLW5hdjtcbiAgdG9wOiAtNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogNTtcblxuICBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiAkZm9udC1iYXNpcy1weC14bGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6IDU1cHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgbWFyZ2luLXRvcDogLThweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgJjpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkbmF2aWdhdGlvbi1yZWN0YW5nbGU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTA4cHg7XG4gICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMjQ4cHggMzgwcHgsIDRweCA2N3B4LCAyNHB4IDBweCwgMjQ4cHggMHB4KTtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbjogLTEzcHggMCAwO1xuICAgICAgcGFkZGluZzogNXB4IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGZvbnQtY29sb3ItbGlnaHQ7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMzVweCAxNXB4IDYwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLW1lZGl1bTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYtLWxvZ28ge1xuICAgIGhlaWdodDogNTBweDtcbiAgICBtYXJnaW4tdG9wOiAtOXB4O1xuICAgIHdpZHRoOiA1MHB4O1xuICB9XG5cbiAgJi0tYnV0dG9uIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnPic7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLz09IEZvb3Rlcm5hdmlnYXRpb25cbi5mb290ZXItbmF2IHtcbiAgdWwge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLW1lZGl1bTtcbiAgICBmb250LXNpemU6ICRmb250LWJhc2lzLXB4LXh4bGFyZ2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1saWdodDtcbiAgICB9XG4gIH1cbn1cblxuLmhhbWJ1cmdlci1idXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBMYXB0b3BcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc2cHgpIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIHtcbiAgLnNjcm9sbC1uYXYge1xuICAgIG1hcmdpbi1sZWZ0OiAtNzFweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzNTVweCkge1xuICAuc2Nyb2xsLW5hdiB7XG4gICAgbGk6bnRoLWxhc3QtY2hpbGQoMikge1xuICAgICAgd2lkdGg6IDIwJTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTU5cHgpIHtcbiAgLy89PSBTY3JvbGwtTmF2aWdhdGlvblxuICAuc2Nyb2xsLW5hdiB7XG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjEycmVtO1xuXG4gICAgICAmOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tbGVmdDogNzBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTU5cHgpIHtcbiAgLnNjcm9sbC1uYXYge1xuICAgIGxpOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIG1vYmlsZSBwaG9uZVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzVweCkge1xuICAvLz09IFNjcm9sbC1OYXZpZ2F0aW9uXG4gIC5zY3JvbGwtbmF2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy89PSBNZW7DvC1CdXR0b25cbiAgLmhhbWJ1cmdlci1idXR0b24ge1xuICAgIGJhY2tncm91bmQ6ICRuYXZpZ2F0aW9uLW1vYmlsLWJ1dHRvbjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMTBweDtcbiAgICB6LWluZGV4OiA1O1xuICB9XG5cbiAgLy89PSBIYXVwdG5hdmlnYXRpb25cbiAgLm1haW4tbmF2IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaHVlbHNtYW5uLWRhcmtncmV5O1xuICAgIGxlZnQ6IC0zNzVweDtcbiAgICBwYWRkaW5nOiAyNXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDM3NXB4O1xuXG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItbWVkaXVtO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1iYXNpcy1weC14bGFyZ2U7XG4gICAgICBsaW5lLWhlaWdodDogNTVweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJib2R5IHtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaW1hZ2U7XG59XG5cbi5wYWdlLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaHVlbHNtYW5uLXdoaXRlO1xuICBtYXJnaW46IGF1dG87XG4gIHdpZHRoOiAxOTAwcHg7XG59XG5cbi5yb3cge1xuICBtaW4td2lkdGg6IDExNDBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5oZWFkZXItLXNlY3Rpb24sXG4ubWFpbi0tc2VjdGlvbixcbi5mb290ZXItLXNlY3Rpb24ge1xuICBtaW4td2lkdGg6IDExNjBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cblxuLy89PSBIZWFkZXJcbi5oZWFkZXIge1xuICAmLS1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLW1lZGl1bTtcbiAgICBmb250LXNpemU6ICRmb250LWJhc2lzLXB4LXNtYWxsO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICBwIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgfVxuXG4gICYtLWJveC1sZWZ0IHtcbiAgICBoZWlnaHQ6IDExNDBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMjVweDtcbiAgICBwYWRkaW5nLXRvcDogNzVweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB3aWR0aDogNzI0cHg7XG4gIH1cblxuICAmLS1sb2dvIHtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgbGVmdDogN2VtO1xuICAgIG1hcmdpbi1ib3R0b206IDE1MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gICYtLWJkdmktbG9nbyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgd2lkdGg6IDcwcHg7XG4gIH1cbn1cblxuXG4vLz09IE1haW5cbi5tYWluIHtcbiAgJi0tYm94LWxlZnQge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRodWVsc21hbm4tYmx1ZTtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHdpZHRoOiAzMTVweDtcblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgJi0tYm94LWxlZnQtbW9iaWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmLS1ib3gtcmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiA4NXB4O1xuICAgIG1hcmdpbi10b3A6IC01NzBweDtcbiAgfVxuXG4gICYtLWJveC10b3Age1xuICAgIG1hcmdpbi10b3A6IC01NzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtNjEwcHg7XG4gIH1cblxuICAmLS1ib3gtYm90dG9tIHtcbiAgICBtYXJnaW4tdG9wOiAtMTg1cHg7XG4gIH1cblxuICAmLS1jb3ZlcmFnZSB7XG4gICAgJi1saW5rIHtcbiAgICAgIGNvbG9yOiAkaHVlbHNtYW5uLXJlZDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgZGl2IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvdmVyYWdlLWJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgICAgIGxlZnQ6IDEyNTBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDIzcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0b3A6IC0xMDc2cHg7XG4gICAgICAgIHdpZHRoOiAyNzBweDtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLS1zZWN0aW9uLWluZGV4ICsgLmZvb3Rlci0tc2VjdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogLTY3cHg7XG4gIH1cbn1cblxuXG4vLz09IEZvb3RlclxuLmZvb3RlciB7XG4gICYtLXNlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6ICRmb290ZXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGZvbnQtY29sb3ItbWVkaXVtO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgtbWVkaXVtO1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgbWluLWhlaWdodDogMzAwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDhyZW07XG4gICAgcGFkZGluZy10b3A6IDEyJTtcblxuICAgIC5tb2JpbCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYtLWFkZHJlc3Mge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1saWdodDtcbiAgICBmb250LXNpemU6ICRmb250LWJhc2lzLXB4LW1lZGl1bTtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRmb250LWNvbG9yLWxpZ2h0O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG5cbiAgJi0tY29weXJpZ2h0IHtcbiAgICBjb2xvcjogJGZvbnQtY29sb3ItbWVkaXVtO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgtc21hbGw7XG4gICAgbWFyZ2luLXRvcDogM2VtO1xuICB9XG5cbiAgJi0tY29udGFjdCB7XG4gICAgaDIsXG4gICAgcCB7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItbGlnaHQ7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgteHhsYXJnZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBMYXB0b3BcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc2cHgpIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIHtcbiAgLnBhZ2Utd3JhcHBlciB7XG4gICAgd2lkdGg6IDE0NDBweDtcbiAgfVxuXG4gIC5yb3cge1xuICAgIG1pbi13aWR0aDogMTMwMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmhlYWRlci0tc2VjdGlvbixcbiAgLm1haW4tLXNlY3Rpb24sXG4gIC5mb290ZXItLXNlY3Rpb24ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxOTIwcHg7XG4gICAgbWluLXdpZHRoOiAxNDQwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLz09IEhlYWRlclxuICAuaGVhZGVyIHtcbiAgICAmLS1ib3gtbGVmdCB7XG4gICAgICBoZWlnaHQ6IDExNDBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEzNXB4O1xuICAgICAgd2lkdGg6IDQ5NHB4O1xuICAgIH1cbiAgfVxuXG4gIC5tYWluIHtcbiAgICAmLS1jb3ZlcmFnZSB7XG4gICAgICAmLWxpbmsgZGl2IHtcbiAgICAgICAgbGVmdDogODcwcHg7XG4gICAgICAgIHRvcDogLTEwODVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ib3gtcmlnaHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDExN3B4O1xuICAgICAgbWFyZ2luLXRvcDogLTY5MHB4O1xuICAgIH1cblxuICAgICYtLWJveC1ib3R0b20ge1xuICAgICAgbWFyZ2luLXRvcDogLTI4MHB4O1xuICAgIH1cblxuICAgICYtLXNlY3Rpb24taW5kZXggKyAuZm9vdGVyLS1zZWN0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xNDFweDtcbiAgICB9XG4gIH1cbn1cblxuLy8gbW9iaWxlIHBob25lXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3NXB4KSB7XG4gIC5wYWdlLXdyYXBwZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDM3NXB4O1xuICB9XG5cbiAgLnJvdyB7XG4gICAgd2lkdGg6IDM3NXB4O1xuICB9XG5cbiAgLmhlYWRlci0tc2VjdGlvbixcbiAgLm1haW4tLXNlY3Rpb24sXG4gIC5mb290ZXItLXNlY3Rpb24ge1xuICAgIG1heC13aWR0aDogMzc1cHg7XG4gICAgbWluLXdpZHRoOiAzNzVweDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHdpZHRoOiAzNzVweDtcbiAgfVxuXG4gIC8vPT0gSGVhZGVyXG4gIC5oZWFkZXIge1xuICAgICYtLXNlY3Rpb24ge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaW1hZ2U7XG4gICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMzc1cHggMzIwcHgsIDAgMjgwcHgsIDAgMCwgMzc1cHggMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtOTBweDtcbiAgICB9XG5cbiAgICAmLS1ib3gtbGVmdCB7XG4gICAgICBoZWlnaHQ6IDI4MHB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJi0tbG9nbyB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIHdpZHRoOiAyNDBweDtcbiAgICB9XG5cbiAgICAmLS1iZHZpLWxvZ28ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIHdpZHRoOiA3MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5oZWFkZXItLXNlYXJjaC1mb3JtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cblxuICAvLz09IE1haW5cbiAgLm1haW4ge1xuICAgICYtLWNvdmVyYWdlIHtcbiAgICAgICYtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGxlZnQ6IC0xNSU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ib3gtdG9wLFxuICAgICYtLWJveC1ib3R0b20sXG4gICAgJi0tYm94LXJpZ2h0LFxuICAgICYtLWJveC1sZWZ0LW1vYmlsIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB3aWR0aDogMzM1cHg7XG4gICAgfVxuXG4gICAgJi0tYm94LXRvcCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAmLS1ib3gtYm90dG9tIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xNTBweDtcbiAgICB9XG5cbiAgICAmLS1ib3gtcmlnaHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJi0tYm94LWxlZnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLS1ib3gtbGVmdC1tb2JpbCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGh1ZWxzbWFubi1ibHVlO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAmLS1zZWN0aW9uLWluZGV4ICsgLmZvb3Rlci0tc2VjdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiAzMDVweDtcbiAgICB9XG4gIH1cblxuICAuZm9vdGVyLS1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAkaHVlbHNtYW5uLWRhcmtncmV5O1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xuXG4gICAgZGl2IHtcbiAgICAgIHdpZHRoOiAzMzVweDtcblxuICAgICAgLmZvb3Rlci0tY29udGFjdCB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC5tb2JpbGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkaHVlbHNtYW5uLWRlZXBncmV5O1xuICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMzc1cHggMTMwNXB4LCAwIDEzMDVweCwgMCA1MHB4LCAzNzVweCAyMHB4KTtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0yNXB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDkwcHggMzBweCAyNXB4O1xuICAgICAgICB3aWR0aDogMzc1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbiIsIi8vPT0gQW5rZXJsaW5rXG46dGFyZ2V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xMjBweDtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAtMTIwcHg7XG59XG5cblxuLy89PSDDnGJlcnNjaHJpZnRlblxuaDEge1xuICBjb2xvcjogJGZvbnQtY29sb3ItZGFyaztcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkZm9udC1iYXNpcy1weC14eHh4bGFyZ2U7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbmgyIHtcbiAgY29sb3I6ICRmb250LWNvbG9yLWRhcms7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgteHh4eHhsYXJnZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLm1haW4tLWJveC1yaWdodCB7XG4gIGgyIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgteGxhcmdlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cblxuICAubWFpbi0tY292ZXJhZ2Utc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgteHh4eHhsYXJnZTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG5cbmgzIHtcbiAgY29sb3I6ICRmb250LWNvbG9yLWRhcms7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgtbGFyZ2U7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbmg0IHtcbiAgY29sb3I6ICRmb250LWNvbG9yLWRhcms7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgteG1lZGl1bTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbWFyZ2luOiAwIDAgMTVweDtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cblxuLy89IEFic2F0elxucCB7XG4gIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrO1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRmb250LWJhc2lzLXB4LW1lZGl1bTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgaHlwaGVuczogYXV0bztcbn1cblxuLy89IExpbmtcbmEge1xuICBjb2xvcjogJGh1ZWxzbWFubi1yZWQ7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tZGVmYXVsdDtcbn1cbmJ1dHRvbjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tZGVmYXVsdDtcbn1cblxuLy8gPSBMaXN0ZW5cbmxpLFxuLmNlLW1lbnUgbGk6bm90IHtcbiAgY29sb3I6ICRmb250LWNvbG9yLWRhcms7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgtbWVkaXVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBwYWRkaW5nOiAxMHB4IDAgMTBweCAxMHB4O1xufVxuXG4vLz0gQm9sZFxuYiB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi8vPSBGb3JtXG5pbnB1dCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLy8gbW9iaWxlIHBob25lXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3NXB4KSB7XG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIHAsXG4gIGEge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgteGxhcmdlO1xuICB9XG5cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYmFzaXMtcHgteHhsYXJnZTtcbiAgfVxufVxuIiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIERlZmF1bHQgVmFyaWFibGVzXG5cbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xuLy8gXCJcXDIxOTBcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGkFwiXG4vLyBcIlxcMjE5MlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaSXCJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxuXG4kc2xpY2stZm9udC1wYXRoOiBcIi4vZm9udHMvXCIgIWRlZmF1bHQ7XG4kc2xpY2stZm9udC1mYW1pbHk6IFwic2xpY2tcIiAhZGVmYXVsdDtcbiRzbGljay1sb2FkZXItcGF0aDogXCIuL1wiICFkZWZhdWx0O1xuJHNsaWNrLWFycm93LWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICRzbGljay1kb3QtY29sb3IgIWRlZmF1bHQ7XG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXFwyMTkwXCIgIWRlZmF1bHQ7XG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwiXFwyMTkyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNoYXJhY3RlcjogXCJcXDIwMjJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3Qtc2l6ZTogNnB4ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC4yNSAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIHNsaWNrLWltYWdlLXVybCgkdXJsKSB7XG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhpbWFnZS11cmwpIHtcbiAgICAgICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XG4gICAgfVxufVxuXG5AZnVuY3Rpb24gc2xpY2stZm9udC11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoZm9udC11cmwpIHtcbiAgICAgICAgQHJldHVybiBmb250LXVybCgkdXJsKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XG4gICAgfVxufVxuXG4vKiBTbGlkZXIgKi9cblxuLnNsaWNrLWxpc3Qge1xuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmIHNsaWNrLWltYWdlLXVybChcImFqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICB9XG59XG5cbi8qIEljb25zICovXG5AaWYgJHNsaWNrLWZvbnQtZmFtaWx5ID09IFwic2xpY2tcIiB7XG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3RcIik7XG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cbn1cblxuLyogQXJyb3dzICovXG5cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICBmb250LXNpemU6IDBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRvcDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBjb2xvcjogJHNsaWNrLWFycm93LWNvbG9yO1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG59XG5cbi5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAtMjVweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogLTI1cHg7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IC0yNXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICByaWdodDogYXV0bztcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIERvdHMgKi9cblxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMjVweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgY29udGVudDogJHNsaWNrLWRvdC1jaGFyYWN0ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAaW1wb3J0ICdzbGljay5qcy9zbGljay9zbGljay5zY3NzJztcbkBpbXBvcnQgJ3NsaWNrLmpzL3NsaWNrL3NsaWNrLXRoZW1lLnNjc3MnO1xuXG4uc2xpZGVyLFxuLnNsaWNrLXNsaWRlIHtcbiAgbWF4LWhlaWdodDogNTcwcHg7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgYm90dG9tOiA1NXB4O1xuICBtYXJnaW4tbGVmdDogMjVweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpO1xuICB3aWR0aDogMjAlO1xuXG4gIGxpIGJ1dHRvbjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkc2xpY2stZG90cztcbiAgfVxufVxuXG4ubWFpbiB7XG4gICYtLWNvdmVyYWdlIHtcbiAgICBjbGlwLXBhdGg6ICRoZWFkZXItbWFzay1kZWZhdWx0O1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBoZWlnaHQ6IDU2N3B4O1xuICAgIGxlZnQ6IDM2NXB4O1xuICAgIG1hcmdpbi10b3A6IC02MDBweDtcbiAgICBtYXgtd2lkdGg6IDExODBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTYwJTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgJi10aXRsZSxcbiAgICAmLXN1YnRpdGxlIHtcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1saWdodDtcbiAgICAgIGxlZnQ6IDEwMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdGV4dC1zaGFkb3c6IDAgMCA1cHggJGh1ZWxzbWFubi1ncmV5O1xuICAgIH1cblxuICAgICYtdGl0bGUge1xuICAgICAgdG9wOiAyNTBweDtcbiAgICB9XG5cbiAgICAmLXN1YnRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIHRvcDogMjMwcHg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTGFwdG9wXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NnB4KSBhbmQgKG1heC13aWR0aDogMTQ0MHB4KSB7XG4gIC5zbGljay1kb3RzIHtcbiAgICBib3R0b206IDE0NXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICB9XG5cbiAgLm1haW4ge1xuICAgICYtLWNvdmVyYWdlIHtcbiAgICAgICYtdGl0bGUge1xuICAgICAgICB0b3A6IDE4MHB4O1xuICAgICAgfVxuXG4gICAgICAmLXN1YnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1iYXNpcy1weC14eHh4eHhsYXJnZSAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IDE5MHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLWJveC10b3Age1xuICAgICAgLm1haW4tLWNvdmVyYWdlIHtcbiAgICAgICAgY2xpcC1wYXRoOiAkaGVhZGVyLW1hc2stbGFwdG9wO1xuICAgICAgICBsZWZ0OiAzMjVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ib3gtcmlnaHQge1xuICAgICAgLm1haW4tLWNvdmVyYWdlIHtcbiAgICAgICAgY2xpcC1wYXRoOiAkaGVhZGVyLW1hc2stbGFwdG9wO1xuICAgICAgICBoZWlnaHQ6IDQ2N3B4O1xuICAgICAgICBsZWZ0OiAxMDhweDtcbiAgICAgICAgdG9wOiAxMjBweDtcbiAgICAgICAgd2lkdGg6IDExNSU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRhYmxldFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzZweCkgYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5tYWluIHtcbiAgICAmLS1jb3ZlcmFnZSB7XG4gICAgICAmLXRpdGxlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzNDBweDtcbiAgICAgICAgbGVmdDogNzBweDtcbiAgICAgICAgdG9wOiAxNjVweDtcbiAgICAgIH1cblxuICAgICAgJi1zdWJ0aXRsZSB7XG4gICAgICAgIGxlZnQ6IDcwcHg7XG4gICAgICAgIHRvcDogMTgwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tYm94LXRvcCB7XG4gICAgICAubWFpbi0tY292ZXJhZ2Uge1xuICAgICAgICBjbGlwLXBhdGg6ICRoZWFkZXItbWFzay10YWJsZXQ7XG4gICAgICAgIGxlZnQ6IDMyM3B4O1xuICAgICAgICB0b3A6IDJweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ib3gtcmlnaHQge1xuICAgICAgLm1haW4tLWNvdmVyYWdlIHtcbiAgICAgICAgbGVmdDogMTE1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIG1vYmlsZSBwaG9uZVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzVweCkge1xuICAubWFpbiB7XG4gICAgJi0tY292ZXJhZ2Uge1xuICAgICAgY2xpcC1wYXRoOiAkaGVhZGVyLW1hc2stbW9iaWxlO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgbGVmdDogLTUwcHg7XG5cbiAgICAgICYtdGl0bGUge1xuICAgICAgICBtYXgtd2lkdGg6IDM0MHB4O1xuICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICB0b3A6IDc1cHg7XG4gICAgICB9XG5cbiAgICAgICYtc3VidGl0bGUge1xuICAgICAgICBmb250LXNpemU6ICRmb250LWJhc2lzLXB4LXh4bGFyZ2UgIWltcG9ydGFudDtcbiAgICAgICAgbGVmdDogNTBweDtcbiAgICAgICAgdG9wOiA5MHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLWJveC10b3Age1xuICAgICAgLm1haW4tLWNvdmVyYWdlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ib3gtcmlnaHQge1xuICAgICAgLm1haW4tLWNvdmVyYWdlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5zaGFyaWZmIHtcbiAgbWFyZ2luOiA0cmVtIDAgNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG5cbiAgYnV0dG9uIHtcbiAgICBoZWlnaHQ6IDI5cHg7XG4gICAgbWFyZ2luOiAzMHB4IDE1cHggNDBweCAwO1xuICAgIHdpZHRoOiAyOXB4O1xuICB9XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAuOHJlbTtcbiAgfVxuXG4gIC5zaGFyZV90ZXh0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmZhIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBhZGRpbmctbGVmdDogMi41cmVtO1xuICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1kZWZhdWx0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNDBweCA4MHB4O1xuICAgIH1cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5mYS1nb29nbGUtcGx1cyB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJHNvY2lhbC1tZWRpYS1nb29nbGVwbHVzO1xuICAgIH1cbiAgfVxuXG4gIC5mYS1mYWNlYm9vayB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJHNvY2lhbC1tZWRpYS1mYWNlYm9vaztcbiAgICB9XG4gIH1cblxuICAuZmEteGluZyB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJHNvY2lhbC1tZWRpYS14aW5nO1xuICAgIH1cbiAgfVxuXG4gIC5mYS1saW5rZWRpbiB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJHNvY2lhbC1tZWRpYS1saW5rZWRpbjtcbiAgICB9XG4gIH1cblxuICAuZmEtdHdpdHRlciB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJHNvY2lhbC1tZWRpYS10d2l0dGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBtb2JpbGUgcGhvbmVcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLnNoYXJpZmYge1xuICAgIG1hcmdpbjogM3JlbSAwIDJyZW07XG4gIH1cbn1cbiJdfQ== */
