@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,500,700,900");
html {
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

article,
aside,
footer,
header,
nav,
section {
  display: block; }

figcaption,
figure,
main {
  display: block; }

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible; }

pre {
  font-family: monospace, monospace;
  font-size: 1em; }

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; }

b,
strong {
  font-weight: inherit; }

b,
strong {
  font-weight: bolder; }

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

dfn {
  font-style: italic; }

mark {
  background-color: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

audio,
video {
  display: inline-block; }

audio:not([controls]) {
  display: none;
  height: 0; }

img {
  border-style: none; }

svg:not(:root) {
  overflow: hidden; }

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

progress {
  display: inline-block;
  vertical-align: baseline; }

textarea {
  overflow: auto; }

[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

details,
menu {
  display: block; }

summary {
  display: list-item; }

canvas {
  display: inline-block; }

template {
  display: none; }

[hidden] {
  display: none; }

@-webkit-keyframes spin {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes spin {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

html:not(.no-js) .collapse {
  display: none; }
  html:not(.no-js) .collapse.in {
    display: block; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition-property: height, visibility;
  transition-property: height, visibility;
  -webkit-transition-duration: .35s;
          transition-duration: .35s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease; }

.loading-mask {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(255, 255, 255, 0.6);
  z-index: 10; }
  .loading-mask::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 50px;
    height: 50px;
    margin: -25px 0 0 -25px;
    border: 4px solid rgba(0, 0, 0, 0.2);
    border-radius: 50%;
    border-top-color: #fff;
    -webkit-animation: spin 1s ease-in-out infinite;
            animation: spin 1s ease-in-out infinite;
    z-index: 1; }
  .loading-mask .loader {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    white-space: nowrap;
    clip: rect(0, 0, 0, 0);
    -webkit-clip-path: inset(50%);
            clip-path: inset(50%);
    border: 0; }

.todo {
  position: relative; }
  .todo::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(255, 0, 0, 0.1);
    z-index: -1; }
  .todo::after {
    content: "@todo" !important;
    position: absolute;
    bottom: 100%;
    left: 0;
    padding: 5px 10px;
    font-size: 1.6rem;
    font-weight: bold;
    text-transform: uppercase;
    color: red;
    background-color: rgba(255, 0, 0, 0.1);
    z-index: 200; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

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

html {
  min-height: 100%;
  font-size: 62.5%;
  font-size: calc(1em * .625);
  -webkit-tap-highlight-color: transparent; }
  @media (min-width: 768px) {
    html {
      height: 100%; } }

body {
  position: relative;
  height: 100%;
  font-family: "Roboto", sans-serif;
  font-size: 1.6rem;
  line-height: 1.3;
  color: #333333;
  background-color: #fff; }

a {
  color: white; }

a:visited {
  color: white; }

a:hover {
  color: white;
  text-decoration: none; }

ul > li, ol > li {
  margin: 0; }
  ul > li:hover, ol > li:hover {
    background-color: transparent; }

ul:hover {
  background-color: transparent; }

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

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

svg[class^="icon"] {
  width: 1em;
  height: 1em;
  vertical-align: -0.15em;
  fill: currentColor; }

.mobile {
  height: auto; }
  @media (max-width: 480px) {
    .mobile {
      display: block; } }
  @media (min-width: 480px) {
    .mobile {
      display: none; } }

/*doc
---
title: Colors
name: 00_Colors
category: Colors
---

```html_example
<div class="colors">
    <div class="bgcolor-primary">
        <p>Primary color</p>
    </div>
    <div class="bgcolor-primary-light">
        <p>Primary light color</p>
    </div>
    <div class="bgcolor-secondary">
        <p>Secondary color</p>
    </div>
    <div class="bgcolor-tertiary">
        <p>Tertiary color</p>
    </div>
    <div class="bgcolor-quaternary">
        <p>Quaternary color</p>
    </div>
    <div class="bgcolor-quinary">
        <p>Quinary color</p>
    </div>
    <div class="bgcolor-senary">
        <p>Senary color</p>
    </div>
    <div class="bgcolor-info">
        <p>Info color</p>
    </div>
    <div class="bgcolor-success">
        <p>Success color</p>
    </div>
    <div class="bgcolor-warning">
        <p>Warning color</p>
    </div>
    <div class="bgcolor-error">
        <p>Error color</p>
    </div>
</div>
```

*/
.colors {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%; }

.colors > div {
  position: relative;
  display: inline-block;
  width: 80px;
  height: 80px;
  margin: 0 25px 75px 0; }
  .colors > div p {
    position: absolute;
    width: 100%;
    height: 40px;
    bottom: -60px;
    left: 0px;
    text-align: center;
    vertical-align: top;
    font-weight: bold; }
  .colors > div.bgcolor-primary {
    background: #EF3340; }
    .colors > div.bgcolor-primary::before {
      content: "#EF3340";
      position: absolute;
      width: 100%;
      height: 30px;
      top: 10px;
      left: 0px;
      text-align: center;
      vertical-align: top;
      font-weight: bold; }
  .colors > div.bgcolor-primary-light {
    background: #ed404c; }
    .colors > div.bgcolor-primary-light::before {
      content: "#ed404c";
      position: absolute;
      width: 100%;
      height: 30px;
      top: 10px;
      left: 0px;
      text-align: center;
      vertical-align: top;
      font-weight: bold; }
  .colors > div.bgcolor-secondary {
    background: #2D2D2A; }
    .colors > div.bgcolor-secondary::before {
      content: "#2D2D2A";
      position: absolute;
      width: 100%;
      height: 30px;
      top: 10px;
      left: 0px;
      text-align: center;
      vertical-align: top;
      font-weight: bold; }
  .colors > div.bgcolor-tertiary {
    background: #FFFFFF; }
    .colors > div.bgcolor-tertiary::before {
      content: "#FFFFFF";
      position: absolute;
      width: 100%;
      height: 30px;
      top: 10px;
      left: 0px;
      text-align: center;
      vertical-align: top;
      font-weight: bold; }
  .colors > div.bgcolor-quaternary {
    background: #7C7C7C; }
    .colors > div.bgcolor-quaternary::before {
      content: "#7C7C7C";
      position: absolute;
      width: 100%;
      height: 30px;
      top: 10px;
      left: 0px;
      text-align: center;
      vertical-align: top;
      font-weight: bold; }
  .colors > div.bgcolor-quinary {
    background: #ee385c; }
    .colors > div.bgcolor-quinary::before {
      content: "#ee385c";
      position: absolute;
      width: 100%;
      height: 30px;
      top: 10px;
      left: 0px;
      text-align: center;
      vertical-align: top;
      font-weight: bold; }
  .colors > div.bgcolor-senary {
    background: #2898f8; }
    .colors > div.bgcolor-senary::before {
      content: "#2898f8";
      position: absolute;
      width: 100%;
      height: 30px;
      top: 10px;
      left: 0px;
      text-align: center;
      vertical-align: top;
      font-weight: bold; }
  .colors > div.bgcolor-info {
    background: #5bc0de; }
    .colors > div.bgcolor-info::before {
      content: "#5bc0de";
      position: absolute;
      width: 100%;
      height: 30px;
      top: 10px;
      left: 0px;
      text-align: center;
      vertical-align: top;
      font-weight: bold; }
  .colors > div.bgcolor-success {
    background: #5cb85c; }
    .colors > div.bgcolor-success::before {
      content: "#5cb85c";
      position: absolute;
      width: 100%;
      height: 30px;
      top: 10px;
      left: 0px;
      text-align: center;
      vertical-align: top;
      font-weight: bold; }
  .colors > div.bgcolor-warning {
    background: #f0ad4e; }
    .colors > div.bgcolor-warning::before {
      content: "#f0ad4e";
      position: absolute;
      width: 100%;
      height: 30px;
      top: 10px;
      left: 0px;
      text-align: center;
      vertical-align: top;
      font-weight: bold; }
  .colors > div.bgcolor-error {
    background: #d9534f; }
    .colors > div.bgcolor-error::before {
      content: "#d9534f";
      position: absolute;
      width: 100%;
      height: 30px;
      top: 10px;
      left: 0px;
      text-align: center;
      vertical-align: top;
      font-weight: bold; }

/*doc
---
title: Headings
name: 01_Headings
category: Text
---

```html_example
<h1>h1. Heading</h1>
<h2>h2. Heading</h2>
<h3>h3. Heading</h3>
<h4>h4. Heading</h4>
<h5>h5. Heading</h5>
<h6>h6. Heading</h6>
```

*/
/*doc
---
title: Texts
name: Texts
category: Text
---

```html_example
<p>Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nullam id dolor id nibh ultricies vehicula.</p>
<p>Cum sociis natoque penatibus et magnis dis parturient montes, <a href="#">nascetur ridiculus mus</a>. Donec ullamcorper nulla non metus auctor fringilla. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec <strong>ullamcorper nulla</strong> non metus auctor fringilla.</p>
<p>Maecenas sed diam eget risus varius blandit sit amet non magna. Donec id elit non mi porta <em>gravida at eget metus</em>. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.</p>
```

*/
/*doc
---
title: Lists
name: Lists
category: Text
---

A list of items, unordered or ordered

```html_example
<ul>
    <li>Lorem ipsum dolor sit amet</li>
    <li>Consectetur adipiscing elit</li>
    <li>Nulla volutpat aliquam velit
        <ul>
            <li>Phasellus iaculis neque</li>
            <li>Purus sodales ultricies</li>
        </ul>
    </li>
    <li>Faucibus porta lacus fringilla vel</li>
    <li>Aenean sit amet erat nunc</li>
</ul>

<ol>
    <li>Lorem ipsum dolor sit amet</li>
    <li>Consectetur adipiscing elit</li>
    <li>Nulla volutpat aliquam velit</li>
    <li>Phasellus iaculis neque</li>
    <li>Purus sodales ultricies</li>
    <li>Faucibus porta lacus fringilla vel</li>
    <li>Aenean sit amet erat nunc</li>
</ol>
```
*/
/*doc
---
title: Links
name: Links
category: Text
---
```html_example
<a>Exemple de lien</a>
```


*/
h1, h2, h3, h4, h5, h6 {
  margin: 1rem 0;
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: 0.5px; }

h1, h2, h3 {
  margin-top: 1.5rem; }

h1 {
  font-size: 4.2rem; }

h2 {
  font-size: 3.4rem; }

h3 {
  font-size: 2.2rem; }

h4 {
  font-size: 2rem; }

h5 {
  font-size: 1.8rem; }

h6 {
  font-size: 1.7rem; }

p {
  margin: 0 0 1rem; }

ul,
ol {
  margin-top: 0;
  margin-bottom: 1.5rem; }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    margin-bottom: 0; }

a {
  text-decoration: none;
  color: #333333;
  cursor: pointer; }
  a:focus {
    color: #EF3340; }
  @media (min-width: 992px) {
    a:hover {
      color: #EF3340; } }

/*

// Source Sans Pro Light
@font-face {
    @include font-face('Source Sans Pro', 'sourcesanspro', 'sourcesanspro-light-webfont', 300);
}

// Source Sans Pro Regular
@font-face {
    @include font-face('Source Sans Pro', 'sourcesanspro', 'sourcesanspro-regular-webfont', 400);
}

// Source Sans Pro Semi-Bold
@font-face {
    @include font-face('Source Sans Pro', 'sourcesanspro', 'sourcesanspro-semibold-webfont', 600);
}

// Source Sans Pro Bold
@font-face {
    @include font-face('Source Sans Pro', 'sourcesanspro', 'sourcesanspro-bold-webfont', 700);
}

*/
/*doc
---
title: Buttons
name: 03_Buttons
category: Buttons
---
The `btn` classes are designed to be used with the `<button>` element. However, you can also use these classes on `<a>` or `<input>` elements (though some browsers may apply a slightly different rendering).

When using button classes on `<a>` elements that are used to trigger in-page functionality (like collapsing content), rather than linking to new pages or sections within the current page, these links should be given a `role="button"` to appropriately convey their purpose to assistive technologies such as screen readers.

```html_example_table
<a href="#" class="btn btn--default" role="button">Link</a>

<button type="button" class="btn btn--default">Button</button>

<input type="button" value="Input" class="btn btn--default">

<input type="submit" value="Submit" class="btn btn--default">

<input type="reset" value="Reset" class="btn btn--default">
```

## Button styles

There are three styles for buttons: default, primary and secondary. Simply add the style modifier class for the desired style.

```html_example_table
<button type="button" class="btn btn--default">Button default</button>

<button type="button" class="btn btn--primary">Button primary</button>

<button type="button" class="btn btn--secondary">Button secondary</button>

<button type="button" class="btn btn--tertiary">Button tertiary</button>

<button type="button" class="btn btn--quaternary">Button quaternary</button>
```

## Button sizes

There are three 3 sizes for buttons: Large, medium (default) and small. Simply add the size modifier class for the desired size.

```html_example_table
<button type="button" class="btn btn--primary btn--lg">Button large</button>

<button type="button" class="btn btn--primary btn--sm">Button small</button>
```

## Button disabled state

Make buttons look inactive by adding the `disabled` boolean attribute to any `<button>` element.

```html_example
<button type="button" class="btn btn--primary" disabled>Disabled button</button>
```

Disabled buttons using the `<a>` element behave a bit different:
* `<a>` don’t support the disabled attribute, so you must add the `disabled` class to make it visually appear disabled.
* Some future-friendly styles are included to disable all pointer-events on anchor buttons. In browsers which support that property, you won’t see the disabled cursor at all.
* Disabled buttons should include the `aria-disabled="true"` attribute to indicate the state of the element to assistive technologies.

```html_example
<a href="#" class="btn btn--primary disabled" role="button" aria-disabled="true">Disabled link</a>
```

In addition, even in browsers that do support `pointer-events: none`, keyboard navigation remains unaffected, meaning that sighted keyboard users and users of assistive technologies will still be able to activate these links. So to be safe, add a `tabindex="-1"` attribute on these links (to prevent them from receiving keyboard focus) and use custom JavaScript to disable their functionality.

## Button link

In particular cases, you may want to use `<button>` tag but have the display and behavior of a classic link. To do that, add the `btn--link` modifier class.

```html_example
<p>Maecenas sed diam eget risus varius <button type="button" class="btn btn--link">blandit</button> sit amet non magna.</p>
```
*/
.btn, .modal-footer .action-primary,
.modal-footer .action-secondary {
  display: inline-block;
  overflow: hidden;
  vertical-align: middle;
  padding: 12px 40px;
  font-size: 1.6rem;
  line-height: 1.1;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  white-space: nowrap;
  text-transform: none;
  text-overflow: ellipsis;
  text-decoration: none;
  text-align: center;
  background-image: none;
  border: 0;
  border-radius: 5px;
  cursor: pointer;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-transition: color .15s ease-in-out, background-color .15s ease-in-out;
  transition: color .15s ease-in-out, background-color .15s ease-in-out; }
  .btn:hover, .modal-footer .action-primary:hover,
  .modal-footer .action-secondary:hover, .btn:focus, .modal-footer .action-primary:focus,
  .modal-footer .action-secondary:focus {
    text-decoration: none;
    outline: 0; }
  .btn:active, .modal-footer .action-primary:active,
  .modal-footer .action-secondary:active {
    background-image: none;
    -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
            box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn.disabled, .modal-footer .disabled.action-primary,
  .modal-footer .disabled.action-secondary, .btn[disabled], .modal-footer [disabled].action-primary,
  .modal-footer [disabled].action-secondary,
  fieldset[disabled] .btn,
  fieldset[disabled] .modal-footer .action-primary, .modal-footer
  fieldset[disabled] .action-primary,
  fieldset[disabled]
  .modal-footer .action-secondary,
  .modal-footer
  fieldset[disabled] .action-secondary {
    cursor: not-allowed;
    pointer-events: none;
    opacity: .5;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .btn .icon, .modal-footer .action-primary .icon,
  .modal-footer .action-secondary .icon {
    width: 1.5em;
    height: 1.5em;
    margin: -5px 8px -5px 0;
    vertical-align: top; }

.btn--default {
  color: #fff;
  background-color: #EF3340;
  text-transform: uppercase; }
  .btn--default:active {
    background-image: none; }
  .btn--default:hover, .btn--default:focus, .btn--default:active {
    color: #fff;
    background-color: #ef335f; }
  .btn--default.disabled, .btn--default.disabled:hover, .btn--default.disabled:focus, .btn--default.disabled:active, .btn--default[disabled], .btn--default[disabled]:hover, .btn--default[disabled]:focus, .btn--default[disabled]:active,
  fieldset[disabled] .btn--default,
  fieldset[disabled] .btn--default:hover,
  fieldset[disabled] .btn--default:focus,
  fieldset[disabled] .btn--default:active {
    background-color: #EF3340; }

.btn--primary, .modal-footer .action-primary {
  color: #fff;
  background-color: #EF3340; }
  .btn--primary:active, .modal-footer .action-primary:active {
    background-image: none; }
  .btn--primary:hover, .modal-footer .action-primary:hover, .btn--primary:focus, .modal-footer .action-primary:focus, .btn--primary:active, .modal-footer .action-primary:active {
    color: #fff;
    background-color: #f3626c; }
  .btn--primary.disabled, .modal-footer .disabled.action-primary, .btn--primary.disabled:hover, .modal-footer .disabled.action-primary:hover, .btn--primary.disabled:focus, .modal-footer .disabled.action-primary:focus, .btn--primary.disabled:active, .modal-footer .disabled.action-primary:active, .btn--primary[disabled], .modal-footer [disabled].action-primary, .btn--primary[disabled]:hover, .modal-footer [disabled].action-primary:hover, .btn--primary[disabled]:focus, .modal-footer [disabled].action-primary:focus, .btn--primary[disabled]:active, .modal-footer [disabled].action-primary:active,
  fieldset[disabled] .btn--primary,
  fieldset[disabled] .modal-footer .action-primary, .modal-footer
  fieldset[disabled] .action-primary,
  fieldset[disabled] .btn--primary:hover,
  fieldset[disabled] .modal-footer .action-primary:hover, .modal-footer
  fieldset[disabled] .action-primary:hover,
  fieldset[disabled] .btn--primary:focus,
  fieldset[disabled] .modal-footer .action-primary:focus, .modal-footer
  fieldset[disabled] .action-primary:focus,
  fieldset[disabled] .btn--primary:active,
  fieldset[disabled] .modal-footer .action-primary:active, .modal-footer
  fieldset[disabled] .action-primary:active {
    background-color: #EF3340; }

.btn--secondary {
  color: #EF3340;
  background-color: transparent;
  border: solid 2px #EF3340; }
  .btn--secondary:active {
    background-image: none; }
  .btn--secondary:hover, .btn--secondary:focus, .btn--secondary:active {
    color: #EF3340;
    background-color: transparent; }
  .btn--secondary.disabled, .btn--secondary.disabled:hover, .btn--secondary.disabled:focus, .btn--secondary.disabled:active, .btn--secondary[disabled], .btn--secondary[disabled]:hover, .btn--secondary[disabled]:focus, .btn--secondary[disabled]:active,
  fieldset[disabled] .btn--secondary,
  fieldset[disabled] .btn--secondary:hover,
  fieldset[disabled] .btn--secondary:focus,
  fieldset[disabled] .btn--secondary:active {
    background-color: transparent; }

.btn--tertiary {
  color: #fff;
  background-color: #EF3340;
  border: solid 2px #FFFFFF; }
  .btn--tertiary:active {
    background-image: none; }
  .btn--tertiary:hover, .btn--tertiary:focus, .btn--tertiary:active {
    color: #fff;
    background-color: #ef335f; }
  .btn--tertiary.disabled, .btn--tertiary.disabled:hover, .btn--tertiary.disabled:focus, .btn--tertiary.disabled:active, .btn--tertiary[disabled], .btn--tertiary[disabled]:hover, .btn--tertiary[disabled]:focus, .btn--tertiary[disabled]:active,
  fieldset[disabled] .btn--tertiary,
  fieldset[disabled] .btn--tertiary:hover,
  fieldset[disabled] .btn--tertiary:focus,
  fieldset[disabled] .btn--tertiary:active {
    background-color: #EF3340; }

.btn--quaternary {
  color: #2D2D2A;
  background-color: transparent;
  border: solid 2px #2D2D2A; }
  .btn--quaternary:active {
    background-image: none; }
  .btn--quaternary:hover, .btn--quaternary:focus, .btn--quaternary:active {
    color: #2D2D2A;
    background-color: transparent; }
  .btn--quaternary.disabled, .btn--quaternary.disabled:hover, .btn--quaternary.disabled:focus, .btn--quaternary.disabled:active, .btn--quaternary[disabled], .btn--quaternary[disabled]:hover, .btn--quaternary[disabled]:focus, .btn--quaternary[disabled]:active,
  fieldset[disabled] .btn--quaternary,
  fieldset[disabled] .btn--quaternary:hover,
  fieldset[disabled] .btn--quaternary:focus,
  fieldset[disabled] .btn--quaternary:active {
    background-color: transparent; }
  .btn--quaternary:hover {
    border: 2px solid #2D2D2A;
    background-color: rgba(255, 255, 255, 0.2); }

.btn--intervention {
  color: #fff;
  background-color: #EF3340;
  font-size: 2.5rem; }
  .btn--intervention:active {
    background-image: none; }
  .btn--intervention:hover, .btn--intervention:focus, .btn--intervention:active {
    color: #fff;
    background-color: #f3626c; }
  .btn--intervention.disabled, .btn--intervention.disabled:hover, .btn--intervention.disabled:focus, .btn--intervention.disabled:active, .btn--intervention[disabled], .btn--intervention[disabled]:hover, .btn--intervention[disabled]:focus, .btn--intervention[disabled]:active,
  fieldset[disabled] .btn--intervention,
  fieldset[disabled] .btn--intervention:hover,
  fieldset[disabled] .btn--intervention:focus,
  fieldset[disabled] .btn--intervention:active {
    background-color: #EF3340; }
  .btn--intervention a {
    font-size: 2rem; }

.btn--lg {
  padding: 15px 45px;
  font-size: 1.9rem;
  line-height: 1.1; }

.btn--sm {
  padding: 8px 25px;
  font-size: 1.6rem;
  line-height: 1.2; }

.btn--link, .modal-footer .action-secondary {
  display: inline;
  vertical-align: baseline;
  padding: 0;
  font-size: 1.7rem;
  font-weight: normal;
  line-height: 1.3;
  text-transform: none;
  text-decoration: none;
  text-align: left;
  color: #989898;
  -webkit-transition: color .1s ease-in-out;
  transition: color .1s ease-in-out;
  border-radius: 0; }
  .btn--link, .modal-footer .action-secondary, .btn--link:active, .modal-footer .action-secondary:active, .btn--link[disabled], .modal-footer [disabled].action-secondary,
  fieldset[disabled] .btn--link,
  fieldset[disabled] .modal-footer .action-secondary, .modal-footer
  fieldset[disabled] .action-secondary {
    background-color: transparent;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .btn--link:hover, .modal-footer .action-secondary:hover, .btn--link:focus, .modal-footer .action-secondary:focus, .btn--link:active, .modal-footer .action-secondary:active {
    text-decoration: none;
    color: #EF3340;
    background-color: transparent; }
  .btn--link:active, .modal-footer .action-secondary:active {
    -webkit-box-shadow: none;
            box-shadow: none; }

.page-header {
  margin-bottom: 0; }

.section-head {
  margin: 0 0 15px;
  padding: 10px 0 0; }
  .catalog-category-view .section-head,
  .catalog-product-view .section-head,
  .catalogsearch-result-index .section-head {
    min-height: 44px;
    margin: 0 0 10px;
    padding-left: 44px; }
  @media (min-width: 768px) {
    .section-head {
      margin: 30px 0;
      padding: 0; }
      .catalog-category-view .section-head,
      .catalog-product-view .section-head,
      .catalogsearch-result-index .section-head {
        min-height: inherit;
        margin: 30px 0 15px;
        padding-left: 0; } }

.section-head__title {
  display: block;
  margin: 0;
  font-size: 2.2rem;
  font-weight: 300; }
  @media (min-width: 768px) {
    .section-head__title {
      font-size: 3.4rem; } }

.section-head__infos {
  display: block;
  margin: 8px 0 0;
  font-size: 1.9rem;
  font-weight: bold;
  line-height: 1.3; }
  @media (min-width: 768px) {
    .section-head__infos {
      font-size: 2rem; } }

.section-head__status,
.section-head__date {
  display: block;
  font-size: 1.7rem;
  letter-spacing: .5px; }

.section-head__status {
  margin: 8px 0 4px; }

.headline {
  display: block;
  margin: 16px 0;
  font-size: 2rem;
  font-weight: 300;
  letter-spacing: .5px;
  line-height: 1.3;
  text-align: center; }
  .headline strong {
    font-weight: 600; }
  @media (min-width: 768px) {
    .headline {
      margin: 32px 0;
      font-size: 3.8rem;
      letter-spacing: .7px; } }
  @media (min-width: 1200px) {
    .headline strong {
      display: block; } }

.error-content {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  text-align: center; }
  .error-content li {
    list-style-type: none; }
    .error-content li:before {
      content: "- "; }
  .error-content .error-subtitle {
    font-size: 2.2rem;
    color: #EF3340; }

/*doc
---
title: Messages
name: messages
category: Forms
---
Message is used to display information to the user. This message can be an information, a success message, a warning, or a error.

```html_example
<div class="message message--info">
    Donec id elit non mi porta gravida at eget metus. Vestibulum id ligula porta felis euismod semper.
</div>

<div class="message message--success">
    Donec id elit non mi porta gravida at eget metus. Vestibulum id ligula porta felis euismod semper.
</div>

<div class="message message--warning">
    Donec id elit non mi porta gravida at eget metus. Vestibulum id ligula porta felis euismod semper.
</div>

<div class="message message--error">
    Donec id elit non mi porta gravida at eget metus. Vestibulum id ligula porta felis euismod semper.
</div>
```
*/
.messages {
  position: fixed;
  left: 0;
  bottom: 13px;
  width: 100%;
  z-index: 1; }

.message {
  padding: 15px 15px !important;
  margin: 20px 0;
  border-width: 1px;
  border-style: solid;
  border-radius: 5px; }
  .message > div {
    font-size: 15px; }
  .message ul {
    margin-bottom: 0;
    padding-left: 0;
    list-style: none; }
  .message li {
    margin: 0 0 5px; }
    .message li:last-child {
      margin: 0; }
  .message p:last-child {
    margin: 0; }
  .message a {
    font-weight: bold; }

.message--info {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1; }
  .message--info a {
    color: #245269; }

.message--success {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6; }
  .message--success a {
    color: #2b542c; }

.message--warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc; }
  .message--warning a {
    color: #66512c; }

.message--error {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1; }
  .message--error a {
    color: #843534; }

.message.success {
  background-color: #1d8d23;
  color: white;
  width: 40%;
  margin: auto;
  text-align: center; }
  .message.success > *:first-child:before {
    top: 50%; }
  @media (max-width: 480px) {
    .message.success {
      width: 80%; } }

.message.info, .message.notice {
  text-align: center;
  width: 50%;
  margin: auto;
  background-color: #fb8c00; }

.message.error {
  text-align: center;
  width: 50%;
  margin: auto;
  background-color: #d50000; }

/*doc
---
title: Tables
name: tables
category: Components
---
To add basic styling to a table, add the base class `table` to any `<table>`. It may seem super redundant, but it's to avoid conflicts with other use of the `<table>` markup.

You can add `table--responsive` class to `table`s and it will make them mobile friendly by enabling horizontal scrolling. Only applies &lt;768px. Everything above that will display normally. This isn't included with the `table` class because it will depend on the table size. Also other possibilities exist to make `<table>` mobile friendly, this one is just the more generic.

```html_example
<table class="table table--responsive">
    <thead>
        <tr>
            <th>#</th>
            <th>First</th>
            <th>Second</th>
            <th>Third</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <th scope="row">1</th>
            <td>First</td>
            <td>Second</td>
            <td>Third</td>
        </tr>
        <tr>
            <th scope="row">2</th>
            <td>First</td>
            <td>Second</td>
            <td>Third</td>
        </tr>
        <tr>
            <th scope="row">3</th>
            <td>First</td>
            <td>Second</td>
            <td>Third</td>
        </tr>
    </tbody>
</table>
```
*/
table {
  background-color: transparent;
  border-collapse: collapse; }

caption {
  padding-top: 8px;
  padding-bottom: 8px;
  text-align: left;
  color: #575757; }

th {
  text-align: left; }

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px;
  background-color: #fff; }
  .table th,
  .table td {
    padding: 8px;
    vertical-align: top;
    font-weight: 600;
    color: #333333;
    border: 1px solid #d2d2d2;
    border-width: 1px 0 0; }
  .table thead th {
    font-weight: 700;
    white-space: nowrap;
    vertical-align: bottom;
    color: #fff;
    background-color: #EF3340;
    border-color: #d2d2d2;
    border-width: 0 0 1px; }
  @media (min-width: 768px) {
    .table th,
    .table td {
      padding: 12px; } }

@media screen and (max-width: 767px) {
  .table--responsive {
    display: block;
    width: 100%;
    overflow-x: auto;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

/*doc
---
title: Forms
name: forms
category: Forms
---
Individual form controls automatically receive some global styling. All textual `<input>`, `<textarea>`, and `<select>` elements with `.form-control` are set to `width: 100%;` by default. Wrap labels and controls in .form-group for optimum spacing.

```html_example
<form>
    <div class="form-group">
        <label for="example-input">Input text</label>
        <input type="text" id="example-input" class="form-control" placeholder="Placeholder">
    </div>
    <div class="form-group">
        <label for="example-textarea">Textarea</label>
        <textarea id="example-textarea" class="form-control" rows="6"></textarea>
    </div>
</form>
```

## Selects

Select have differents styles between browsers and some styles that cannot be modified. To be able to be consistent across browsers and have a custom style, the the `select` is wrapped with a `form-control-select` class.

```html_example
<label for="example-select">Select</label>
<div class="form-control-select">
    <select id="example-select" class="form-control">
        <option>Option 1</option>
        <option>Option 2</option>
        <option>Option 3</option>
        <option>Option 4</option>
    </select>
</div>
```

To be disabled, the custom `select` require to add a `disabled` class in addition to the `disabled` attribute on the `select` itself.

```html_example
<label for="example-select">Select</label>
<div class="form-control-select disabled">
    <select id="example-select" class="form-control" disabled>
        <option>Option 1</option>
        <option>Option 2</option>
    </select>
</div>
```

## Checkbox and radio

Similar as the select, to have the same render across browsers we add the class `form-control-checkbox` for checkbox and `form-control-radio` for radio.

```html_example
<div class="form-control-checkbox">
    <input type="checkbox" id="example-checkbox-1" value="">
    <label for="example-checkbox-1">Option one</label>
</div>
```

```html_example
<div class="form-control-checkbox">
    <input type="checkbox" id="example-checkbox-2" value="" checked>
    <label for="example-checkbox-2">Option two is checked</label>
</div>
```

```html_example
<div class="form-control-checkbox">
    <input type="checkbox" id="example-checkbox-3" value="" disabled>
    <label for="example-checkbox-3">Option three is disabled</label>
</div>
```

```html_example
<div class="form-control-radio">
    <input type="radio" name="example-radio" id="example-radio-1" value="">
    <label for="example-radio-1">Option one</label>
</div>
```

```html_example
<div class="form-control-radio">
    <input type="radio" name="example-radio" id="example-radio-2" value="" checked>
    <label for="example-radio-2">Option two is checked</label>
</div>
```

```html_example
<div class="form-control-radio">
    <input type="radio" name="example-radio" id="example-radio-3" value="" disabled>
    <label for="example-radio-3">Option three is disabled</label>
</div>
```

## Form container

A form can be visually delimited for better readability.

```html_example
<div class="form-container">
    <div class="form-group">
        <label for="container-example-input">Input text</label>
        <input type="text" id="container-example-input" class="form-control">
    </div>
    <div class="form-submit">
        <button type="submit" class="btn btn--primary">Submit</button>
    </div>
</div>
```

## Validation states

There are two validation states: Success and error. To use, add `valid` or `mage-error` to any `input.form-control` element. A validation message error with the class `mage-error` can be added to give more information about the error.

It use the classes used by Magento 2 in the default scripts, so Magento 2 will add the corresponding class by itself when form validation will perform.

```html_example
<div class="form-group">
    <label for="example-input-success">Validation success</label>
    <input type="text" id="example-input-success" class="form-control valid">
</div>
<div class="form-group">
    <label for="example-input-error">Validation error</label>
    <input type="text" id="example-input-error" class="form-control mage-error">
    <div class="mage-error">Validation error message</div>
</div>
```
*/
fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0; }

legend {
  display: block;
  width: 100%;
  margin: 0 0 8px;
  padding: 0;
  font-size: 1.7rem;
  font-style: normal;
  letter-spacing: .5px;
  line-height: inherit;
  color: #575757;
  border: 0; }

label {
  display: inline-block;
  font-weight: normal; }

input[type="search"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal; }

input[type="file"] {
  display: block; }

input[type="range"] {
  display: block;
  width: 100%; }

select {
  cursor: pointer;
  border-radius: 5px; }

select[multiple],
select[size] {
  height: auto; }

output {
  display: block;
  padding-top: 7px;
  font-size: 1.6rem;
  line-height: 1.3;
  color: #333333; }

@media (min-width: 768px) {
  .form-container {
    max-width: 700px;
    margin: 0 0 32px;
    padding: 32px;
    border: 1px solid #e2e1e1;
    border-radius: 5px; } }

.form-group {
  margin-bottom: 8px; }
  @media (min-width: 768px) {
    .form-group {
      margin-bottom: 16px; } }

.form-group__nested {
  margin: 8px 0 0; }
  .form-group__nested label {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    white-space: nowrap;
    clip: rect(0, 0, 0, 0);
    -webkit-clip-path: inset(50%);
            clip-path: inset(50%);
    border: 0; }

label,
.label {
  margin: 0 0 8px;
  font-family: "Roboto", sans-serif;
  font-size: 1.7rem;
  font-weight: normal;
  font-style: normal;
  letter-spacing: .5px;
  color: #575757;
  cursor: pointer; }
  label em,
  .label em {
    font-size: 1.2rem;
    font-style: italic;
    font-weight: normal;
    text-transform: lowercase; }

.form-control {
  display: block;
  width: 100%;
  height: 40px;
  padding: 8px 16px;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1;
  color: #333333;
  background-color: #fff;
  background-image: none;
  border: 1px solid #d2d2d2;
  border-radius: 40px;
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; }
  .form-control:focus {
    border-color: #2D2D2A;
    outline: 0; }
  .form-control::-webkit-input-placeholder {
    font-family: "Roboto", sans-serif;
    color: rgba(51, 51, 51, 0.3);
    opacity: 1; }
  .form-control:-ms-input-placeholder {
    font-family: "Roboto", sans-serif;
    color: rgba(51, 51, 51, 0.3);
    opacity: 1; }
  .form-control::placeholder {
    font-family: "Roboto", sans-serif;
    color: rgba(51, 51, 51, 0.3);
    opacity: 1; }
  .form-control[disabled], .form-control[readonly],
  fieldset[disabled] .form-control {
    opacity: 0.6; }
  .form-control[disabled],
  fieldset[disabled] .form-control {
    cursor: not-allowed; }
  .form-control.valid[type="text"], .form-control.valid[type="email"], .form-control.valid[type="password"] {
    padding-right: 56px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 57 40'%3E%3Cpath fill='%2361D2B9' d='M13.3 0L57 0 57 40 0 40 13.3 0ZM39.7 13.3C39.4 13.1 39.1 13 38.7 13 38.3 13 38 13.2 37.8 13.5L29.2 23.7 24.7 18.3C24.5 18 24.1 17.8 23.8 17.8 23.4 17.8 23.1 17.9 22.8 18.1 22.5 18.3 22.4 18.7 22.3 19 22.3 19.4 22.4 19.7 22.7 20L28.1 26.6C28.4 26.9 28.8 27.1 29.2 27.1 29.2 27.1 29.2 27.1 29.2 27.1 29.2 27.1 29.2 27.1 29.3 27.1 29.3 27.1 29.3 27.1 29.4 27.1 29.5 27 29.5 27 29.6 27 29.6 27 29.6 27 29.7 27 29.9 26.9 30.1 26.8 30.3 26.6L39.8 15.2C40.3 14.7 40.3 13.8 39.7 13.3'/%3E%3C/svg%3E");
    background-position: 100% 50%;
    background-repeat: no-repeat;
    background-size: auto 100%; }
  .form-control.mage-error {
    border-color: #ee385c; }
    .form-control.mage-error:focus {
      border-color: #e0133c; }
    .form-control.mage-error[type="text"], .form-control.mage-error[type="email"], .form-control.mage-error[type="password"] {
      padding-right: 56px;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 57 40'%3E%3Cpath fill='%23EE385C' d='M13.3 0L57 0 57 40 0 40 13.3 0ZM29.5 21.5C29.5 22 29.1 22.4 28.7 22.4 28.2 22.4 27.8 22 27.8 21.5L27.8 18.9C27.8 18.4 28.2 18 28.7 18 29.1 18 29.5 18.4 29.5 18.9L29.5 21.5ZM28.7 25.4C28.2 25.4 27.8 25 27.8 24.5 27.8 24 28.2 23.6 28.7 23.6 29.1 23.6 29.5 24 29.5 24.5 29.5 25 29.1 25.4 28.7 25.4L28.7 25.4ZM37.6 27.5L29 11.2C28.9 10.9 28.5 10.9 28.3 11.2L19.7 27.5C19.6 27.9 19.8 28.2 20.1 28.2L37.2 28.2C37.5 28.2 37.7 27.9 37.6 27.5L37.6 27.5Z'/%3E%3C/svg%3E");
      background-position: 100% 50%;
      background-repeat: no-repeat;
      background-size: auto 100%; }
  .form-control.is-hidden {
    display: none; }
  @media (pointer: fine) {
    .form-control {
      font-size: 1.7rem; } }

textarea.form-control {
  height: auto;
  border-radius: 20px; }

input[type="search"] {
  -webkit-appearance: none; }

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"],
  input[type="time"],
  input[type="datetime-local"],
  input[type="month"] {
    line-height: 40px; } }

.form-control-select {
  position: relative; }
  .form-control-select .form-control {
    padding-right: 40px;
    color: #333333;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none; }
    .form-control-select .form-control::-ms-expand {
      display: none; }
    .form-control-select .form-control.active {
      color: #333333; }
  .form-control-select::after {
    content: "";
    position: absolute;
    top: 12px;
    right: 18px;
    width: 12px;
    height: 12px;
    background-color: transparent;
    border: 2px solid #333333;
    border-width: 0 2px 2px 0;
    border-radius: 2px;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    pointer-events: none;
    z-index: 1; }
  .form-control-select.disabled::after {
    opacity: .2; }
  @media (min-width: 768px) {
    .form-control-select::after {
      top: 11px;
      width: 14px;
      height: 14px;
      border-width: 0 3px 3px 0;
      border-radius: 3px; } }

.form-control-checkbox:not(:last-of-type), .form-control-radio:not(:last-of-type) {
  margin: 0 0 8px; }

.form-control-checkbox input, .form-control-radio input {
  position: absolute;
  opacity: 0;
  z-index: -1; }
  .form-control-checkbox input:checked + label::before, .form-control-radio input:checked + label::before {
    background-color: #2D2D2A;
    border-color: #2D2D2A; }
  .form-control-checkbox input:checked + label::after, .form-control-radio input:checked + label::after {
    display: block; }
  .form-control-checkbox input:disabled + label, .form-control-radio input:disabled + label {
    opacity: .6;
    cursor: not-allowed; }
  .form-control-checkbox input:disabled:not(:checked) + label::before, .form-control-radio input:disabled:not(:checked) + label::before {
    background-color: #efeeee; }

.form-control-checkbox label, .form-control-radio label {
  position: relative;
  margin: 0;
  padding: 0 0 0 24px;
  font-weight: normal;
  line-height: 20px; }
  .form-control-checkbox label::before, .form-control-radio label::before {
    content: "";
    position: absolute;
    top: 2px;
    left: 0;
    width: 16px;
    height: 16px;
    background-color: #fff;
    border: 2px solid #e3e2e2;
    -webkit-transition: background-color .1s ease-in-out, border-color .1s ease-in-out;
    transition: background-color .1s ease-in-out, border-color .1s ease-in-out; }
  .form-control-checkbox label::after, .form-control-radio label::after {
    content: "";
    position: absolute;
    top: 6px;
    left: 3px;
    display: none;
    width: 10px;
    height: 6px;
    border: 2px solid #fff;
    border-width: 0 0 2px 2px;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    z-index: 10; }

.form-control-radio input:checked + label::before {
  background-color: #2D2D2A;
  border-color: #e3e2e2; }

.form-control-radio label::before {
  border-radius: 50%; }

.form-control-radio label::after {
  content: none; }

.form-control-checkbox-hidden input:checked + label::after, .form-control-radio-hidden input:checked + label::after {
  display: none;
  margin: 0; }

.form-control-checkbox-hidden label::before, .form-control-radio-hidden label::before {
  display: none;
  margin: 0; }

.form-control-checkbox-hidden input[type="radio"], .form-control-checkbox-hidden input[type="checkbox"] {
  display: none; }

.form-control-checkbox-hidden label {
  margin: 0;
  color: white;
  font-weight: 600; }

.hidden-checkbox-button {
  margin: 0; }

.form-info_guest {
  width: 50%;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  font-weight: bold;
  letter-spacing: .8px;
  line-height: 1.3; }
  .form-info_guest .admin__legend {
    font-size: 2rem; }

.form-guest_order {
  width: 50%;
  margin-left: auto;
  margin-right: auto; }
  .form-guest_order .admin__legend {
    padding: 0 24px;
    font-size: 2.8rem;
    font-weight: bold;
    letter-spacing: .8px;
    line-height: 1.3; }
  .form-guest_order label {
    padding: 0 24px;
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: .8px;
    line-height: 1.3;
    margin-top: 10px;
    margin-left: 9%; }
  .form-guest_order #quick-search-type-id {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    text-align-last: center;
    height: 30px;
    background: transparent;
    padding: 5px;
    font-size: 16px;
    line-height: 1;
    border-radius: 40px;
    height: 34px; }
  .form-guest_order input[type=text], .form-guest_order input[type=email] {
    text-align: center;
    width: 80%;
    margin-left: auto;
    margin-right: auto; }
  .form-guest_order .control {
    text-align: center; }
  .form-guest_order .btn-form-guest {
    margin-top: 20px;
    margin-bottom: 35px;
    text-align: center; }

.form-quantity {
  position: relative; }
  .form-quantity .form-control {
    text-align: center;
    -moz-appearance: textfield; }
    .form-quantity .form-control[type="number"]::-webkit-outer-spin-button, .form-quantity .form-control[type="number"]::-webkit-inner-spin-button {
      -webkit-appearance: none;
      margin: 0; }

.form-quantity-plus,
.form-quantity-minus {
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  height: 40px;
  padding: 0;
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
  font-size: 1.2rem;
  line-height: 1;
  background-color: #2D2D2A;
  border: 0;
  border-radius: 50%;
  outline: none;
  cursor: pointer;
  -webkit-transition: background-color .15s ease-in-out;
  transition: background-color .15s ease-in-out;
  z-index: 1; }
  .form-quantity-plus:focus,
  .form-quantity-minus:focus {
    background-color: black; }
  @media (min-width: 992px) {
    .form-quantity-plus:hover,
    .form-quantity-minus:hover {
      background-color: black; } }

.form-quantity-plus {
  left: auto;
  right: 0; }
  .form-quantity-plus::before, .form-quantity-plus::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background-color: #fff;
    border-radius: 2px;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .form-quantity-plus::before {
    width: 50%;
    height: 2px; }
  .form-quantity-plus::after {
    width: 2px;
    height: 50%; }

.form-quantity-minus::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50%;
  height: 2px;
  background-color: #fff;
  border-radius: 2px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.form-submit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-top: 16px;
  text-align: right; }
  .form-submit .btn, .form-submit .modal-footer .action-primary, .modal-footer .form-submit .action-primary, .form-submit
  .modal-footer .action-secondary,
  .modal-footer .form-submit .action-secondary {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    margin: 16px 0 0; }
  @media (max-width: 767px) {
    .form-submit {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .form-submit .btn:not(.btn--link):not(.modal-footer .action-secondary), .form-submit .modal-footer .action-primary:not(.btn--link):not(.modal-footer .action-secondary), .modal-footer .form-submit .action-primary:not(.btn--link):not(.modal-footer .action-secondary), .form-submit
      .modal-footer .action-secondary:not(.btn--link):not(.modal-footer .action-secondary),
      .modal-footer .form-submit .action-secondary:not(.btn--link):not(.modal-footer .action-secondary) {
        width: 100%; }
      .form-submit .btn--link, .form-submit .modal-footer .action-secondary, .modal-footer .form-submit .action-secondary {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1; } }
  @media (min-width: 768px) {
    .form-submit {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end; }
      .form-submit .btn, .form-submit .modal-footer .action-primary, .modal-footer .form-submit .action-primary, .form-submit
      .modal-footer .action-secondary,
      .modal-footer .form-submit .action-secondary {
        margin-left: 16px; }
      .form-submit .btn--primary .btn--secondary, .form-submit .modal-footer .action-primary .btn--secondary, .modal-footer .form-submit .action-primary .btn--secondary {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1; } }

.form-help,
div.mage-error {
  display: block;
  margin: 8px 0 0 16px;
  font-size: 1.6rem;
  color: #737373; }

div.mage-error {
  color: #ee385c; }

.form-help .form-help-account {
  font-weight: 700;
  font-style: italic;
  font-size: 2.1rem;
  color: #61d2b9; }

.password-strength-meter-1 .form-strength {
  color: #d9534f; }

.password-strength-meter-2 .form-strength {
  color: #f0ad4e; }

.password-strength-meter-3 .form-strength,
.password-strength-meter-4 .form-strength {
  color: #5cb85c; }

.field.duration {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }
  .field.duration .control:nth-child(2) {
    max-width: 60px;
    margin-right: 2px; }
  .field.duration .control:last-child {
    max-width: 116px; }
  @media (max-width: 768px) {
    .field.duration {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .field.duration .label {
        width: 100%; } }

/*doc
---
title: Tooltip
name: tooltip
category: Components
---
The tooltip provide extra informations when it's hovered or clicked. It can be use in a `<label>`, for example, to give more information about the field.

The hidden text must be placed in the `aria-label` attribute.

```html_example
<button type="button" class="tooltip" aria-label="This text provide extra informations" role="tooltip">Help</button>
```
*/
.tooltip {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  margin: -5px 0 0 5px;
  padding: 0;
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
  background-color: #2D2D2A;
  border: 0;
  border-radius: 50%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 13'%3E%3Cpath fill='%23ffffff' d='M2.99 6.97C3.18 6.78 3.41 6.68 3.69 6.68 4.41 6.68 4.99 6.52 5.42 6.18 5.86 5.84 6.07 5.32 6.07 4.61 6.07 4.07 5.88 3.62 5.49 3.26 5.1 2.9 4.61 2.72 4.02 2.72 3.42 2.72 2.89 2.92 2.44 3.32 2.17 3.56 1.9 3.68 1.62 3.68 1.41 3.68 1.23 3.62 1.06 3.49 0.78 3.27 0.64 3.01 0.64 2.72 0.64 2.47 0.74 2.24 0.95 2.03 1.34 1.63 1.8 1.32 2.33 1.09 2.86 0.87 3.42 0.76 4.02 0.76 4.76 0.76 5.43 0.93 6.04 1.27 6.65 1.6 7.14 2.07 7.49 2.66 7.85 3.25 8.03 3.9 8.03 4.61 8.03 5.66 7.73 6.48 7.14 7.09 6.54 7.7 5.74 8.08 4.75 8.23 4.7 8.26 4.67 8.28 4.67 8.32L4.67 8.92C4.67 9.2 4.58 9.44 4.39 9.63 4.21 9.82 3.97 9.92 3.69 9.92 3.41 9.92 3.18 9.82 2.99 9.63 2.81 9.44 2.71 9.2 2.71 8.92L2.71 7.68C2.71 7.4 2.81 7.16 2.99 6.97ZM2.88 12.58C2.72 12.42 2.63 12.17 2.63 11.86L2.63 11.58C2.63 11.26 2.72 11.02 2.88 10.85 3.05 10.69 3.29 10.6 3.61 10.6L3.82 10.6C4.14 10.6 4.38 10.69 4.55 10.85 4.72 11.02 4.8 11.26 4.8 11.58L4.8 11.86C4.8 12.17 4.72 12.42 4.55 12.58 4.38 12.75 4.14 12.84 3.82 12.84L3.61 12.84C3.29 12.84 3.05 12.75 2.88 12.58Z'/%3E%3C/svg%3E");
  background-position: 50% 42%;
  background-repeat: no-repeat;
  background-size: auto 55%;
  cursor: pointer; }
  .tooltip::after {
    content: attr(aria-label);
    position: absolute;
    top: calc(100% + 8px);
    left: 50%;
    opacity: 0;
    width: 270px;
    padding: 8px 10px;
    font-family: "Roboto", sans-serif;
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: .5px;
    line-height: 1.1;
    text-align: center;
    color: #FFFFFF;
    background-color: #2D2D2A;
    border-radius: 3px;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    -webkit-transition: opacity .15s ease-in-out;
    transition: opacity .15s ease-in-out;
    pointer-events: none;
    z-index: 10; }
  .tooltip:focus {
    outline: none; }
    .tooltip:focus::after {
      opacity: 1; }
  @media (min-width: 992px) {
    .tooltip:hover {
      outline: none; }
      .tooltip:hover::after {
        opacity: 1; } }

.owl-carousel {
  position: relative;
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  z-index: 1; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-grab {
    cursor: -webkit-grab;
    cursor: grab; }
  .no-js .owl-carousel {
    display: block; }

.owl-stage-outer {
  position: relative;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }
  @media screen and (max-width: 470px) {
    .owl-stage-outer {
      pointer-events: none;
      z-index: 2; } }

.owl-stage {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  overflow: hidden;
  -ms-touch-action: pan-Y;
  -moz-backface-visibility: hidden; }

.owl-wrapper,
.owl-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.owl-item {
  position: relative;
  min-height: 1px;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none; }
  .owl-refresh .owl-item {
    visibility: hidden; }
  .owl-drag .owl-item {
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }

.owl-nav.disabled,
.owl-dots.disabled {
  display: none; }

.owl-prev,
.owl-next {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
  background-color: #e2e1e1;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%); }
  @media screen and (max-width: 471px) {
    .owl-prev,
    .owl-next {
      display: none; } }
  .owl-prev::before,
  .owl-next::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 16px;
    height: 2px;
    background-color: #333333;
    border-radius: 2px;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .owl-prev::after,
  .owl-next::after {
    content: "";
    position: absolute;
    top: 50%;
    left: calc(50% - 3px);
    width: 11px;
    height: 11px;
    background-color: transparent;
    border: 2px solid #333333;
    border-width: 0 2px 2px 0;
    -webkit-transform: translate(-50%, -50%) rotate(135deg);
            transform: translate(-50%, -50%) rotate(135deg); }
  .owl-prev.disabled,
  .owl-next.disabled {
    opacity: .25; }
  @media (min-width: 992px) {
    .owl-prev,
    .owl-next {
      width: 50px; } }

.owl-prev {
  left: 0;
  border-bottom-right-radius: 50%;
  border-top-right-radius: 50%; }

.owl-next {
  right: 0;
  border-bottom-left-radius: 50%;
  border-top-left-radius: 50%; }
  .owl-next::after {
    left: calc(50% + 3px);
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg); }

.owl-prev,
.owl-next,
.owl-dot {
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

/* Arrow navigation on mobile */
.gauche,
.droite {
  position: absolute !important;
  z-index: 9000 !important;
  top: 50%;
  width: 44px;
  height: 44px;
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
  background-color: white;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%); }
  @media screen and (min-width: 470px) {
    .gauche,
    .droite {
      display: none; } }
  @media screen and (max-width: 470px) {
    .gauche,
    .droite {
      pointer-events: all; } }
  .gauche::before,
  .droite::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 16px;
    height: 2px;
    background-color: #333333;
    border-radius: 2px;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .gauche::after,
  .droite::after {
    content: "";
    position: absolute;
    top: 50%;
    left: calc(50% - 3px);
    width: 11px;
    height: 11px;
    background-color: transparent;
    border: 2px solid #333333;
    border-width: 0 2px 2px 0;
    -webkit-transform: translate(-50%, -50%) rotate(135deg);
            transform: translate(-50%, -50%) rotate(135deg); }
  .gauche.disabled,
  .droite.disabled {
    opacity: .25; }
  @media (min-width: 992px) {
    .gauche,
    .droite {
      width: 50px; } }

.gauche {
  left: 0;
  border-bottom-right-radius: 50%;
  border-top-right-radius: 50%; }

.droite {
  right: 0;
  border-bottom-left-radius: 50%;
  border-top-left-radius: 50%; }
  .droite::after {
    left: calc(50% + 3px);
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg); }

@media screen and (max-width: 470px) {
  a.link-nav {
    pointer-events: none; } }

.gauche,
.droite,
.owl-dot {
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.modal-open,
._has-modal {
  overflow: hidden; }
  .modal-open .modal,
  .modal-open .modal-popup,
  .modal-open .modal-slide,
  ._has-modal .modal,
  ._has-modal .modal-popup,
  ._has-modal .modal-slide {
    overflow-x: hidden;
    overflow-y: auto; }

.modal,
.modal-popup,
.modal-slide {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  overflow: hidden;
  outline: 0;
  z-index: 220; }
  .modal .modal-dialog,
  .modal .modal-inner-wrap,
  .modal-popup .modal-dialog,
  .modal-popup .modal-inner-wrap,
  .modal-slide .modal-dialog,
  .modal-slide .modal-inner-wrap {
    -webkit-transform: translate(0, -25%);
            transform: translate(0, -25%);
    -webkit-transition: -webkit-transform .3s ease-out;
    transition: -webkit-transform .3s ease-out;
    transition: transform .3s ease-out;
    transition: transform .3s ease-out, -webkit-transform .3s ease-out; }
  .modal.show, .modal._show,
  .modal-popup.show,
  .modal-popup._show,
  .modal-slide.show,
  .modal-slide._show {
    display: block; }
    .modal.show .modal-dialog,
    .modal.show .modal-inner-wrap, .modal._show .modal-dialog,
    .modal._show .modal-inner-wrap,
    .modal-popup.show .modal-dialog,
    .modal-popup.show .modal-inner-wrap,
    .modal-popup._show .modal-dialog,
    .modal-popup._show .modal-inner-wrap,
    .modal-slide.show .modal-dialog,
    .modal-slide.show .modal-inner-wrap,
    .modal-slide._show .modal-dialog,
    .modal-slide._show .modal-inner-wrap {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }

.modal-popup,
.modal-slide {
  display: block;
  visibility: hidden; }
  .modal-popup .modal-inner-wrap,
  .modal-slide .modal-inner-wrap {
    -webkit-transition: visibility .3s ease, -webkit-transform .3s ease-out;
    transition: visibility .3s ease, -webkit-transform .3s ease-out;
    transition: transform .3s ease-out, visibility .3s ease;
    transition: transform .3s ease-out, visibility .3s ease, -webkit-transform .3s ease-out; }
  .modal-popup._show,
  .modal-slide._show {
    visibility: visible; }

.modal-dialog,
.modal-inner-wrap {
  position: relative;
  width: auto;
  margin: 80px 10px 10px; }
  @media (min-width: 480px) {
    .modal-dialog,
    .modal-inner-wrap {
      width: 460px;
      margin: 80px auto; } }
  @media (min-width: 768px) {
    .modal-dialog,
    .modal-inner-wrap {
      width: 720px;
      margin: 160px auto; } }
  @media (min-width: 992px) {
    .modal-dialog,
    .modal-inner-wrap {
      width: 880px; } }

@media (min-width: 768px) {
  .modal--xs .modal-dialog,
  .modal--xs .modal-inner-wrap {
    width: 460px; } }

@media (min-width: 992px) {
  .modal--xs .modal-dialog,
  .modal--xs .modal-inner-wrap {
    width: 460px; } }

@media (min-width: 768px) {
  .modal-popup .modal-dialog,
  .modal-popup .modal-inner-wrap {
    width: 520px; } }

@media (min-width: 992px) {
  .modal-popup .modal-dialog,
  .modal-popup .modal-inner-wrap {
    width: 520px; } }

@media (max-width: 768px) {
  .modal-popup.modal-slide {
    left: inherit; } }

@media (max-width: 768px) {
  .modal-popup.modal-slide .modal-inner-wrap {
    height: 50%;
    width: 80%;
    margin: auto;
    margin-top: 10%; } }

@media (max-width: 480px) {
  .modal-popup.modal-slide .modal-inner-wrap {
    height: 80%;
    width: 85%;
    margin: auto;
    margin-top: 10%; } }

.modal-content:not([data-role="content"]),
.modal-inner-wrap:not([data-role="content"]) {
  position: relative;
  padding: 16px;
  color: #333333;
  background-color: #fff;
  background-clip: padding-box;
  -webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  outline: 0; }
  @media (min-width: 768px) {
    .modal-content:not([data-role="content"]),
    .modal-inner-wrap:not([data-role="content"]) {
      padding: 37px; } }

.modal-header {
  margin: 0 0 32px; }

.modal-title {
  display: block;
  margin: 0 0 16px;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: .8px;
  text-transform: none;
  text-align: center; }

.modal-body,
.modal-content[data-role="content"] {
  position: relative;
  font-size: 1.7rem;
  letter-spacing: .5px;
  text-align: center; }
  .modal-body .form-group,
  .modal-content[data-role="content"] .form-group {
    padding: 0 24px;
    text-align: left; }

.modal-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin: 12px 0 0;
  text-align: center; }
  .modal-footer a,
  .modal-footer button {
    margin: 8px 0 0; }
  .modal-footer .action-secondary {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .modal-footer a,
  .modal-footer .action-secondary {
    font-size: 1.7rem;
    letter-spacing: .5px;
    color: #989898; }
    .modal-footer a:focus,
    .modal-footer .action-secondary:focus {
      color: #EF3340; }
    @media (min-width: 992px) {
      .modal-footer a:hover,
      .modal-footer .action-secondary:hover {
        color: #EF3340; } }

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

.modal-close,
.action-close {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 30px;
  height: 30px;
  padding: 0;
  line-height: 1;
  color: #2D2D2A;
  background-color: #333333;
  border: 0;
  border-radius: 50%;
  outline: 0;
  -webkit-transition: background-color .15s ease-in-out;
  transition: background-color .15s ease-in-out;
  cursor: pointer; }
  .modal-close::before, .modal-close::after,
  .action-close::before,
  .action-close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 60%;
    height: 2px;
    background-color: #2D2D2A;
    border-radius: 2px; }
  .modal-close::before,
  .action-close::before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg); }
  .modal-close::after,
  .action-close::after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg); }
  .modal-close:focus,
  .action-close:focus {
    background-color: #000; }
  @media (min-width: 992px) {
    .modal-close:hover,
    .action-close:hover {
      background-color: #000; } }
  .modal-close span,
  .action-close span {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    white-space: nowrap;
    clip: rect(0, 0, 0, 0);
    -webkit-clip-path: inset(50%);
            clip-path: inset(50%);
    border: 0; }

.modal-backdrop,
.modals-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  background-color: #333333;
  -webkit-transition: opacity .15s linear;
  transition: opacity .15s linear;
  z-index: 210; }
  .modal-backdrop.show,
  .modals-overlay.show {
    opacity: 0.75; }

.modals-overlay {
  opacity: 0.75; }

/*doc
---
title: Pagination
name: pagination
category: Navigation
---
Pagniation use microdata to help search engine to recognize it as a navigation element.

```html_example
<nav class="pagination" role="navigation">
    <ul class="pagination__list" itemscope="" itemtype="http://schema.org/SiteNavigationElement">
        <li class="pagination__item pagination__item--previous">
            <span itemprop="name">Page précédente</span>
        </li>
        <li class="pagination__item pagination__item--active">
            <span itemprop="name"><em>Page</em> 1</span>
        </li>
        <li class="pagination__item">
            <a href="#" itemprop="url">
                <span itemprop="name"><em>Page</em> 2</span>
            </a>
        </li>
        <li class="pagination__item">
            <a href="#" itemprop="url">
                <span itemprop="name"><em>Page</em> 3</span>
            </a>
        </li>
        <li class="pagination__item">
            <span>…</span>
        </li>
        <li class="pagination__item">
            <a href="#" itemprop="url">
                <span itemprop="name"><em>Page</em> 10</span>
            </a>
        </li>
        <li class="pagination__item pagination__item--next">
            <a href="#" itemprop="url">
                <span itemprop="name">Page suivante</span>
            </a>
        </li>
    </ul>
</nav>
```
*/
.pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  margin: 30px 0 0; }

.pagination__list {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.pagination__item {
  height: 30px;
  min-width: 30px;
  margin: 0 2px;
  font-size: 2rem;
  line-height: 30px;
  text-align: center; }
  .pagination__item a {
    display: block;
    width: 100%;
    height: 30px;
    font-weight: bold;
    text-decoration: none; }
  .pagination__item em {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    white-space: nowrap;
    clip: rect(0, 0, 0, 0);
    -webkit-clip-path: inset(50%);
            clip-path: inset(50%);
    border: 0; }

.pagination__item--active {
  font-weight: bold;
  color: #fff;
  background-color: #575757;
  border-radius: 30px; }

.pagination__item--previous,
.pagination__item--next {
  position: relative; }
  .pagination__item--previous a span::before,
  .pagination__item--next a span::before {
    background-color: #333333; }
  .pagination__item--previous a span::after,
  .pagination__item--next a span::after {
    border-color: #333333; }
  .pagination__item--previous a:focus span::before,
  .pagination__item--next a:focus span::before {
    background-color: #EF3340; }
  .pagination__item--previous a:focus span::after,
  .pagination__item--next a:focus span::after {
    border-color: #EF3340; }
  @media (min-width: 992px) {
    .pagination__item--previous a:hover span::before,
    .pagination__item--next a:hover span::before {
      background-color: #EF3340; }
    .pagination__item--previous a:hover span::after,
    .pagination__item--next a:hover span::after {
      border-color: #EF3340; } }
  .pagination__item--previous span,
  .pagination__item--next span {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0; }
    .pagination__item--previous span::before,
    .pagination__item--next span::before {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 16px;
      height: 2px;
      background-color: #e2e1e1;
      border-radius: 2px;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      -webkit-transition: background-color .1s ease-in-out;
      transition: background-color .1s ease-in-out; }
    .pagination__item--previous span::after,
    .pagination__item--next span::after {
      content: "";
      position: absolute;
      top: 50%;
      left: calc(50% - 3px);
      width: 11px;
      height: 11px;
      background-color: transparent;
      border: 2px solid #e2e1e1;
      border-width: 0 2px 2px 0;
      -webkit-transform: translate(-50%, -50%) rotate(135deg);
              transform: translate(-50%, -50%) rotate(135deg);
      -webkit-transition: border-color .1s ease-in-out;
      transition: border-color .1s ease-in-out; }

.pagination__item--next span::after {
  left: calc(50% + 3px);
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg); }

/*doc
---
title: Breadcrumb
name: breadcrumb
category: Navigation
---
Breadcrumb use microdata, useful for search engine optimisation. The position store in a `meta` tag need to be updated.

```html_example
<ol class="breadcrumb" itemscope="" itemtype="http://schema.org/BreadcrumbList">
    <li class="breadcrumb__item" itemscope="" itemprop="itemListElement" itemtype="http://schema.org/ListItem">
        <a href="#" itemprop="item"><span itemprop="name">Home</span></a>
        <meta itemprop="position" content="1">
    </li>
    <li class="breadcrumb__item" itemscope="" itemprop="itemListElement" itemtype="http://schema.org/ListItem">
        <a href="#" itemprop="item"><span itemprop="name">Catalogue</span></a>
        <meta itemprop="position" content="2">
    </li>
    <li class="breadcrumb__item" itemscope="" itemprop="itemListElement" itemtype="http://schema.org/ListItem">
        <a href="#" itemprop="item"><span itemprop="name">Amortisseurs</span></a>
        <meta itemprop="position" content="3">
    </li>
    <li class="breadcrumb__item" itemscope="" itemprop="itemListElement" itemtype="http://schema.org/ListItem">
        <strong itemprop="item"><span itemprop="name">Amortisseurs avant</span></strong>
        <meta itemprop="position" content="4">
    </li>
</ol>
```
*/
.breadcrumbs {
  background: white;
  position: relative;
  width: 100%;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
  margin-top: 40px;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 1%; }
  @media (min-width: 768px) {
    .breadcrumbs {
      max-width: 100%; } }
  .breadcrumbs strong,
  .breadcrumbs a {
    font-size: 2rem; }
    @media (max-width: 480px) {
      .breadcrumbs strong,
      .breadcrumbs a {
        font-size: 1.4rem; } }
  .breadcrumbs a {
    color: #2D2D2A; }
    .breadcrumbs a:hover {
      color: #EF3340;
      text-decoration: none; }
  .breadcrumbs .item {
    color: #2D2D2A;
    font-size: 1.4rem; }
  .breadcrumbs .item:not(:last-child):after {
    font-size: 4rem;
    vertical-align: middle;
    line-height: 28px;
    vertical-align: inherit; }
    @media (max-width: 480px) {
      .breadcrumbs .item:not(:last-child):after {
        font-size: 2rem;
        line-height: 16px;
        vertical-align: inherit; } }

/*doc
---
title: Blocks
name: blocks
category: Components
---
This allow to organize CMS page content in blocks with image and text. On large screens the blocks are listed tow by two.

```html_example
<div class="page-blocks">
    <div class="page-block">
        <h2 class="page-block__title">Sed posuere consectetur est at lobortis</h2>
        <div class="page-block__content">
            <div class="page-block__image">
                <img src="https://dummyimage.com/120x120/000/fff" alt="">
            </div>
            <div class="page-block__text">
                <p>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vivamus sagittis lacus
                    vel augue laoreet rutrum faucibus dolor auctor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
                    Cras mattis consectetur purus sit amet fermentum. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
            </div>
        </div>
    </div>
    <div class="page-block">
        <h2 class="page-block__title">Sed posuere consectetur est at lobortis</h2>
        <div class="page-block__content">
            <div class="page-block__image">
                <img src="https://dummyimage.com/120x120/000/fff" alt="">
            </div>
            <div class="page-block__text">
                <p>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vivamus sagittis lacus
                    vel augue laoreet rutrum faucibus dolor auctor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
                    Cras mattis consectetur purus sit amet fermentum. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
            </div>
        </div>
    </div>
    <div class="page-block">
        <h2 class="page-block__title">Sed posuere consectetur est at lobortis</h2>
        <div class="page-block__content">
            <div class="page-block__image">
                <img src="https://dummyimage.com/120x120/000/fff" alt="">
            </div>
            <div class="page-block__text">
                <p>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vivamus sagittis lacus
                    vel augue laoreet rutrum faucibus dolor auctor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
                    Cras mattis consectetur purus sit amet fermentum. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
            </div>
        </div>
    </div>
    <div class="page-block">
        <h2 class="page-block__title">Sed posuere consectetur est at lobortis</h2>
        <div class="page-block__content">
            <div class="page-block__image">
                <img src="https://dummyimage.com/120x120/000/fff" alt="">
            </div>
            <div class="page-block__text">
                <p>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vivamus sagittis lacus
                    vel augue laoreet rutrum faucibus dolor auctor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
                    Cras mattis consectetur purus sit amet fermentum. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
            </div>
        </div>
    </div>
</div>
```
*/
@media (min-width: 992px) {
  .page-blocks {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%; } }

.page-block {
  margin: 0 0 16px;
  padding: 16px;
  background-color: #efeeee; }
  .page-block:nth-child(2n) {
    margin-right: 0; }
  @media (min-width: 992px) {
    .page-block {
      width: calc(50% - 14px);
      margin: 0 24px 24px 0;
      padding: 24px;
      display: inline-block; } }

.page-block__title {
  display: block;
  margin: 0 0 16px;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: .5px;
  text-transform: none; }

.page-block__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%; }

.page-block__image {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  width: 100%;
  height: 125px;
  max-width: 120px;
  margin: 0 8px 0 0;
  display: table-cell;
  vertical-align: middle;
  text-align: center; }
  @media (min-width: 992px) {
    .page-block__image {
      margin: 0 16px 0 0;
      padding: 1%;
      background-color: white; } }

/*doc
---
title: Chapters
name: chapters
category: Components
---
This page may include anchors or links to other pages. However, this is optional.

The content can be organized into an accordion if the HTMl markup is respected according to the example below:

```html_example
<div class="page-chapters">
    <div class="page-chapters__aside">
        <button type="button" class="page-chapters__summary" data-toggle="collapse" data-target="#chapters-navigation" aria-expanded="false"
            aria-controls="chapters-navigation">Sommaire</button>
        <ul id="chapters-navigation" class="page-chapters__navigation collapse">
            <li>
                <a class="active" href="#">Maecenas faucibus mollis interdum</a>
            </li>
            <li>
                <a href="#">Maecenas faucibus mollis interdum</a>
            </li>
            <li>
                <a href="#">Maecenas faucibus mollis interdum</a>
            </li>
            <li>
                <a href="#">Maecenas faucibus mollis interdum</a>
            </li>
            <li>
                <a href="#">Maecenas faucibus mollis interdum</a>
            </li>
            <li>
                <a href="#">Maecenas faucibus mollis interdum</a>
            </li>
        </ul>
    </div>
    <div id="chapters" class="page-chapters__main" role="tablist">
        <div class="page-chapters__panel" data-collapse="group">
            <div id="chapters-head-1" class="page-chapters__panel-head" role="tab">
                <h2 class="page-chapters__panel-title">
                    <a href="#chapters-content-1" data-toggle="collapse" data-parent="#chapters" aria-expanded="true" aria-controls="chapters-content-1"
                        role="button">Duis mollis est non commodo luctus nisi erat porttitor ligula</a>
                </h2>
            </div>
            <div id="chapters-content-1" class="page-chapters__panel-content collapse in" aria-labelledby="chapters-head-1"
                aria-expanded="true" role="tabpanel">
                <div class="page-chapters__panel-text">
                    <p>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vivamus sagittis
                        lacus vel augue laoreet rutrum faucibus dolor auctor. Lorem ipsum dolor sit amet, consectetur adipiscing
                        elit. Cras mattis consectetur purus sit amet fermentum. Nullam id dolor id nibh ultricies vehicula
                        ut id elit.</p>
                </div>
            </div>
        </div>
        <div class="page-chapters__panel" data-collapse="group">
            <div id="chapters-head-2" class="page-chapters__panel-head" role="tab">
                <h2 class="page-chapters__panel-title">
                    <a href="#chapters-content-2" data-toggle="collapse" data-parent="#chapters" aria-expanded="false" aria-controls="chapters-content-2"
                        role="button">Duis mollis est non commodo luctus nisi erat porttitor ligula</a>
                </h2>
            </div>
            <div id="chapters-content-2" class="page-chapters__panel-content collapse" aria-labelledby="chapters-head-2"
                aria-expanded="false" role="tabpanel">
                <div class="page-chapters__panel-text">
                    <p>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vivamus sagittis
                        lacus vel augue laoreet rutrum faucibus dolor auctor. Lorem ipsum dolor sit amet, consectetur adipiscing
                        elit. Cras mattis consectetur purus sit amet fermentum. Nullam id dolor id nibh ultricies vehicula
                        ut id elit.</p>
                </div>
            </div>
        </div>
        <div class="page-chapters__panel" data-collapse="group">
            <div id="chapters-head-3" class="page-chapters__panel-head" role="tab">
                <h2 class="page-chapters__panel-title">
                    <a href="#chapters-content-3" data-toggle="collapse" data-parent="#chapters" aria-expanded="false" aria-controls="chapters-content-3"
                        role="button">Duis mollis est non commodo luctus nisi erat porttitor ligula</a>
                </h2>
            </div>
            <div id="chapters-content-3" class="page-chapters__panel-content collapse" aria-labelledby="chapters-head-3"
                aria-expanded="false" role="tabpanel">
                <div class="page-chapters__panel-text">
                    <p>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vivamus sagittis
                        lacus vel augue laoreet rutrum faucibus dolor auctor. Lorem ipsum dolor sit amet, consectetur adipiscing
                        elit. Cras mattis consectetur purus sit amet fermentum. Nullam id dolor id nibh ultricies vehicula
                        ut id elit.</p>
                </div>
            </div>
        </div>
    </div>
</div>
```
*/
@media (min-width: 992px) {
  .page-chapters {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%; } }

.page-chapters__aside {
  margin: 0 0 24px; }
  @media (min-width: 992px) {
    .page-chapters__aside {
      -webkit-box-flex: 1;
          -ms-flex: 1 0 auto;
              flex: 1 0 auto;
      width: 280px;
      margin: 0 32px 0 0; } }

.page-chapters__summary {
  position: relative;
  display: block;
  width: 100%;
  padding: 8px 40px 8px 16px;
  font-size: 2rem;
  font-weight: 300;
  letter-spacing: .5px;
  text-align: left;
  background-color: #efeeee;
  border: 0;
  cursor: pointer; }
  .page-chapters__summary::before, .page-chapters__summary::after {
    content: "";
    position: absolute;
    top: 21px;
    right: 16px;
    width: 11px;
    height: 2px;
    background-color: currentColor;
    border-radius: 2px;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    -webkit-transition: -webkit-transform .1s ease;
    transition: -webkit-transform .1s ease;
    transition: transform .1s ease;
    transition: transform .1s ease, -webkit-transform .1s ease; }
  .page-chapters__summary::after {
    right: 23px;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }
  .page-chapters__summary[aria-expanded="true"] {
    font-weight: bold; }
    .page-chapters__summary[aria-expanded="true"]::before {
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
    .page-chapters__summary[aria-expanded="true"]::after {
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg); }
  @media (min-width: 992px) {
    .page-chapters__summary {
      display: none; } }

.page-chapters__navigation {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
  border-top: 1px solid #e2e1e1;
  background-color: #efeeee; }
  .page-chapters__navigation a {
    position: relative;
    display: block;
    padding: 8px 16px;
    text-decoration: none;
    -webkit-transition: color .1s ease-in-out, background-color .1s ease-in-out;
    transition: color .1s ease-in-out, background-color .1s ease-in-out; }
    .page-chapters__navigation a.active {
      color: #fff;
      background-color: #EF3340; }
    .page-chapters__navigation a:focus {
      color: #fff;
      background-color: #EF3340; }
    @media (min-width: 992px) {
      .page-chapters__navigation a:hover {
        color: #fff;
        background-color: #EF3340; } }
  @media (min-width: 992px) {
    .page-chapters__navigation {
      display: block !important;
      height: auto !important;
      padding: 8px 0;
      border: 0; } }

.page-chapters__panel:not(:first-child) {
  margin: 16px 0 0; }

.page-chapters__panel-title {
  margin: 0; }
  .page-chapters__panel-title a {
    position: relative;
    display: block;
    padding: 8px 48px 8px 16px;
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: .5px;
    text-decoration: none;
    background-color: #efeeee; }
    .page-chapters__panel-title a::before, .page-chapters__panel-title a::after {
      content: "";
      position: absolute;
      top: 17px;
      right: 16px;
      width: 11px;
      height: 2px;
      background-color: currentColor;
      border-radius: 2px;
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
      -webkit-transition: -webkit-transform .1s ease;
      transition: -webkit-transform .1s ease;
      transition: transform .1s ease;
      transition: transform .1s ease, -webkit-transform .1s ease; }
    .page-chapters__panel-title a::after {
      right: 23px;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
    .page-chapters__panel-title a[aria-expanded="true"] {
      font-weight: bold; }
      .page-chapters__panel-title a[aria-expanded="true"]::before {
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg); }
      .page-chapters__panel-title a[aria-expanded="true"]::after {
        -webkit-transform: rotate(-45deg);
                transform: rotate(-45deg); }
    .page-chapters__panel-title a:focus {
      color: currentColor; }
    @media (min-width: 992px) {
      .page-chapters__panel-title a:hover {
        color: currentColor; } }
  @media (min-width: 992px) {
    .page-chapters__panel-title a {
      font-size: 2rem; } }

.page-chapters__panel-content::after {
  content: "";
  display: table;
  clear: both; }

.page-chapters__panel-text {
  margin: 8px 0 0; }
  .page-chapters__panel-text p:last-child {
    margin: 0; }

.nav-sections {
  background: #fff;
  width: 100%; }
  @media (min-width: 768px) {
    .nav-sections {
      margin-top: 25px; } }
  @media (max-width: 768px) {
    .nav-sections {
      background: #2D2D2A;
      width: calc(100% - 54px);
      padding-top: 40px; } }
  .nav-sections .logo-nav {
    display: none; }
    @media (max-width: 767px) {
      .nav-sections .logo-nav {
        display: block;
        width: 70%;
        height: auto; } }
  .nav-sections .navigation {
    background: #fff;
    text-align: center;
    border: none;
    font-size: 1.5rem;
    font-weight: 500; }
    @media (min-width: 768px) {
      .nav-sections .navigation {
        width: 100%;
        max-width: inherit; }
        .nav-sections .navigation .level0:last-child {
          margin-right: inherit; } }
    .nav-sections .navigation .ui-menu-icon,
    .nav-sections .navigation .ui-menu-item.all-category {
      display: none !important; }
    .nav-sections .navigation li:hover {
      background-color: #2D2D2A;
      color: white; }
    .nav-sections .navigation li:hover a span {
      color: white; }
    .nav-sections .navigation a:hover {
      color: white; }
    @media (min-width: 768px) {
      .nav-sections .navigation li.level-top:hover:after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 3px;
        background: #EF3340; } }
    .nav-sections .navigation .level0 > .level-top {
      text-transform: uppercase; }
      .nav-sections .navigation .level0 > .level-top:hover {
        color: white; }
    .nav-sections .navigation .level0.active > a:not(.ui-state-active) span:not(.ui-menu-icon) {
      margin-left: 0; }
    .nav-sections .navigation .navigation .level0 {
      margin: 0;
      padding-left: 0;
      padding-right: 0; }
      .nav-sections .navigation .navigation .level0 .nav-2 {
        min-width: 90px; }
    .nav-sections .navigation .level1 {
      width: 100%;
      display: block;
      white-space: nowrap;
      text-overflow: ellipsis;
      padding-left: 8px;
      padding-right: 8px;
      line-height: 2; }
      .nav-sections .navigation .level1.submenu li {
        border-left: 1px solid gray; }
    .nav-sections .navigation .level0 .submenu a:hover,
    .nav-sections .navigation .level0 .submenu a.ui-state-focus {
      background: #2D2D2A; }
    .nav-sections .navigation .level0 .submenu {
      background: #2D2D2A;
      border: none;
      margin: 0;
      padding: 0;
      width: auto;
      min-width: 100%; }
      .nav-sections .navigation .level0 .submenu li {
        padding-left: 8px;
        padding-right: 8px; }
      @media (max-width: 767px) {
        .nav-sections .navigation .level0 .submenu {
          margin-left: 30px; } }
      @media (max-width: 768px) {
        .nav-sections .navigation .level0 .submenu .active > a {
          border-color: #EF3340; } }
      @media (min-width: 768px) {
        .nav-sections .navigation .level0 .submenu .active > a {
          border: none; } }
      .nav-sections .navigation .level0 .submenu a:hover {
        background: #2D2D2A; }
      .nav-sections .navigation .level0 .submenu a {
        color: white;
        font-weight: 500;
        text-align: left;
        font-size: 1.4rem;
        padding-left: 0;
        padding-right: 0;
        padding-top: 8px;
        padding-bottom: 8px;
        margin-top: 0; }
      .nav-sections .navigation .level0 .submenu a:hover,
      .nav-sections .navigation .level0 .submenu .navigation .level0 .submenu a.ui-state-focus {
        background: #2D2D2A; }
    .nav-sections .navigation .level0.active > .level-top,
    .nav-sections .navigation .level0.has-active > .level-top {
      border-color: #EF3340;
      border-width: 100%; }
    @media (max-width: 767px) {
      .nav-sections .navigation {
        text-align: left;
        background: #2D2D2A; }
        .nav-sections .navigation a {
          color: white; }
        .nav-sections .navigation li {
          border: none;
          margin-bottom: 15px;
          color: white;
          font-weight: 500; }
          .nav-sections .navigation li:last-child {
            border: none; }
        .nav-sections .navigation .level0.active > a:not(.ui-state-active),
        .nav-sections .navigation .level0.active .all-category .ui-state-focus,
        .nav-sections .navigation .level0.active > .level-top {
          border-color: #EF3340; } }
    @media (max-width: 767px) and (min-width: 767px) {
      .nav-sections .navigation .level0.active > a:not(.ui-state-active),
      .nav-sections .navigation .level0.active .all-category .ui-state-focus,
      .nav-sections .navigation .level0.active > .level-top {
        border-color: #EF3340; } }
    @media (max-width: 767px) {
        .nav-sections .navigation span {
          color: white;
          font-weight: 500; }
        .nav-sections .navigation .level0 {
          border: none; } }

.nav-open .header.content {
  padding-top: 60px; }
  .nav-open .header.content .logo {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 100; }

@media (min-width: 768px), print {
  .navigation .level0 .submenu .submenu-reverse {
    left: 100% !important;
    right: inherit; } }

@media only screen and (max-width: 767px) {
  .nav-sections-item-title {
    display: none; }
  .nav-sections-item-content {
    margin: 0;
    overflow: hidden; } }

@media (min-width: 769px) {
  .navigation .level0 {
    margin: 0px; }
    .navigation .level0.nav-2 {
      min-width: 70px; }
  .navigation .level0.parent > .level-top {
    padding-right: 12px; } }

.homepage-section {
  text-align: center;
  background-color: #fafafa; }

.homepage-section_product {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  margin: auto;
  padding: 20px;
  padding-left: 0;
  padding-right: 0; }
  @media (max-width: 480px) {
    .homepage-section_product {
      height: 150px;
      padding: 0;
      background-image: url("../images/black-diamond-plate.png") repeat-y;
      background-color: #2D2D2A; } }
  @media (max-width: 565px) {
    .homepage-section_product {
      -ms-flex-pack: distribute;
          justify-content: space-around; } }
  .homepage-section_product .mobile {
    margin: auto;
    line-height: 150px;
    vertical-align: middle; }
  .homepage-section_product .homepage-section_product-item {
    display: inline-block;
    background-color: #fff;
    text-align: center;
    border: solid 1px #cccccc;
    border-radius: 6px;
    width: 290px;
    -webkit-box-shadow: 1px 1px rgba(0, 0, 0, 0.05);
            box-shadow: 1px 1px rgba(0, 0, 0, 0.05);
    padding: 25px 25px 30px 25px; }
    @media (max-width: 480px) {
      .homepage-section_product .homepage-section_product-item {
        display: none; } }
    .homepage-section_product .homepage-section_product-item .homepage-section_product-item-pic {
      width: 201px;
      height: auto;
      margin: auto; }
      .homepage-section_product .homepage-section_product-item .homepage-section_product-item-pic img {
        height: 201px;
        max-width: auto; }
    .homepage-section_product .homepage-section_product-item .homepage-section_product-item-title {
      margin: auto; }
      .homepage-section_product .homepage-section_product-item .homepage-section_product-item-title h3 {
        font-size: 20px;
        line-height: 25px;
        height: 50px;
        text-overflow: ellipsis;
        overflow: hidden; }
    .homepage-section_product .homepage-section_product-item .product-separation {
      width: 70%;
      margin: 20px auto;
      border: solid 1px #EF3340; }
    .homepage-section_product .homepage-section_product-item .homepage-section_product-item-subtitle {
      color: #989898;
      font-size: 16px;
      font-weight: 500;
      line-height: 20px;
      height: 100px;
      text-overflow: ellipsis;
      overflow: hidden; }
    .homepage-section_product .homepage-section_product-item .homepage-section_product-item-price {
      min-height: 47px;
      color: black;
      font-size: 20px;
      line-height: 25px;
      font-weight: 800;
      padding-top: 10px;
      padding-bottom: 60px;
      max-height: 50px; }
      .homepage-section_product .homepage-section_product-item .homepage-section_product-item-price p {
        display: none; }
      .homepage-section_product .homepage-section_product-item .homepage-section_product-item-price .price {
        font-size: 2rem; }
      .homepage-section_product .homepage-section_product-item .homepage-section_product-item-price .special-price {
        display: block; }
  @media (max-width: 565px) {
    .homepage-section_product .homepage-section_product-item:nth-last-child(3) {
      display: none; } }
  @media (max-width: 950px) {
    .homepage-section_product .homepage-section_product-item:nth-last-child(2) {
      display: none; } }
  @media (max-width: 1300px) {
    .homepage-section_product .homepage-section_product-item:nth-last-child(1) {
      display: none; } }

.content-retailers {
  width: 100%;
  height: 360px;
  text-align: center; }
  @media (max-width: 1024px) {
    .content-retailers {
      height: 906px; } }
  @media (max-width: 480px) {
    .content-retailers {
      height: 500px; } }
  .content-retailers .content-retailers-first {
    float: left;
    background-size: cover;
    height: 453px; }
  .content-retailers .content-retailers-second {
    float: right;
    background-size: cover;
    height: 453px; }
  .content-retailers .content-retailers-first,
  .content-retailers .content-retailers-second {
    position: relative;
    width: 50%;
    height: 100%;
    text-align: center;
    overflow: hidden; }
    @media (max-width: 1024px) {
      .content-retailers .content-retailers-first,
      .content-retailers .content-retailers-second {
        display: inline-block;
        width: 100%;
        height: 453px; } }
    @media (max-width: 480px) {
      .content-retailers .content-retailers-first,
      .content-retailers .content-retailers-second {
        background: url(../images/black-diamond-plate.png);
        background-color: #EF3340;
        height: 50%; } }
    .content-retailers .content-retailers-first .retailers,
    .content-retailers .content-retailers-second .retailers {
      position: absolute;
      font-size: 2.5rem;
      top: 65%;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%); }
    .content-retailers .content-retailers-first .super_test,
    .content-retailers .content-retailers-second .super_test {
      position: absolute;
      top: 30%;
      left: 50%;
      height: 52%;
      width: 45%;
      display: inline-block;
      border-radius: 6px; }
      @media (max-width: 768px) {
        .content-retailers .content-retailers-first .super_test,
        .content-retailers .content-retailers-second .super_test {
          height: 50%;
          width: 60%;
          left: 30%; } }
      @media (max-width: 480px) {
        .content-retailers .content-retailers-first .super_test,
        .content-retailers .content-retailers-second .super_test {
          height: 50%;
          width: 60%;
          left: 20%;
          border: none; } }
      .content-retailers .content-retailers-first .super_test .super_test-content,
      .content-retailers .content-retailers-second .super_test .super_test-content {
        border-radius: 6px;
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        margin: auto;
        height: 93%;
        width: 95%; }
        @media (max-width: 480px) {
          .content-retailers .content-retailers-first .super_test .super_test-content,
          .content-retailers .content-retailers-second .super_test .super_test-content {
            background-color: transparent;
            color: white;
            font-weight: 700; }
            .content-retailers .content-retailers-first .super_test .super_test-content .btn, .content-retailers .content-retailers-first .super_test .super_test-content .modal-footer .action-primary, .modal-footer .content-retailers .content-retailers-first .super_test .super_test-content .action-primary, .content-retailers .content-retailers-first .super_test .super_test-content
            .modal-footer .action-secondary,
            .modal-footer .content-retailers .content-retailers-first .super_test .super_test-content .action-secondary,
            .content-retailers .content-retailers-second .super_test .super_test-content .btn,
            .content-retailers .content-retailers-second .super_test .super_test-content .modal-footer .action-primary, .modal-footer
            .content-retailers .content-retailers-second .super_test .super_test-content .action-primary,
            .content-retailers .content-retailers-second .super_test .super_test-content
            .modal-footer .action-secondary,
            .modal-footer
            .content-retailers .content-retailers-second .super_test .super_test-content .action-secondary {
              color: white;
              border-color: white; } }
        .content-retailers .content-retailers-first .super_test .super_test-content .super_test-content-all,
        .content-retailers .content-retailers-second .super_test .super_test-content .super_test-content-all {
          height: 90%;
          width: 90%;
          margin: auto;
          padding-top: 10%;
          margin-top: -20%;
          text-align: center;
          position: relative; }
          .content-retailers .content-retailers-first .super_test .super_test-content .super_test-content-all img,
          .content-retailers .content-retailers-second .super_test .super_test-content .super_test-content-all img {
            width: 60%;
            height: auto;
            margin: auto;
            margin-bottom: 5%; }
          @media (max-width: 480px) {
            .content-retailers .content-retailers-first .super_test .super_test-content .super_test-content-all a,
            .content-retailers .content-retailers-second .super_test .super_test-content .super_test-content-all a {
              color: white; } }
          .content-retailers .content-retailers-first .super_test .super_test-content .super_test-content-all a:visited,
          .content-retailers .content-retailers-second .super_test .super_test-content .super_test-content-all a:visited {
            color: black; }
            @media (max-width: 480px) {
              .content-retailers .content-retailers-first .super_test .super_test-content .super_test-content-all a:visited,
              .content-retailers .content-retailers-second .super_test .super_test-content .super_test-content-all a:visited {
                color: white; } }
          .content-retailers .content-retailers-first .super_test .super_test-content .super_test-content-all a:hover,
          .content-retailers .content-retailers-second .super_test .super_test-content .super_test-content-all a:hover {
            color: black; }
            @media (max-width: 480px) {
              .content-retailers .content-retailers-first .super_test .super_test-content .super_test-content-all a:hover,
              .content-retailers .content-retailers-second .super_test .super_test-content .super_test-content-all a:hover {
                color: white; } }
          .content-retailers .content-retailers-first .super_test .super_test-content .super_test-content-all a:focus,
          .content-retailers .content-retailers-second .super_test .super_test-content .super_test-content-all a:focus {
            color: black; }
            @media (max-width: 480px) {
              .content-retailers .content-retailers-first .super_test .super_test-content .super_test-content-all a:focus,
              .content-retailers .content-retailers-second .super_test .super_test-content .super_test-content-all a:focus {
                color: white; } }
          @media (max-width: 480px) {
            .content-retailers .content-retailers-first .super_test .super_test-content .super_test-content-all,
            .content-retailers .content-retailers-second .super_test .super_test-content .super_test-content-all {
              padding: 0;
              margin-top: -21%; }
              .content-retailers .content-retailers-first .super_test .super_test-content .super_test-content-all img,
              .content-retailers .content-retailers-second .super_test .super_test-content .super_test-content-all img {
                width: 80%; } }

.background-image {
  position: absolute;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover; }

.homepage-section_services {
  width: 100%;
  height: 700px; }
  @media (max-width: 1024px) {
    .homepage-section_services {
      height: 1050px; } }
  .homepage-section_services .services-one,
  .homepage-section_services .services-two {
    position: relative;
    width: 50%;
    height: 100%;
    overflow: hidden;
    background-color: #2D2D2A; }
    @media (max-width: 1024px) {
      .homepage-section_services .services-one,
      .homepage-section_services .services-two {
        display: block;
        width: 100%; } }
  .homepage-section_services .services-one {
    float: left;
    background-size: cover;
    height: 700px; }
    @media (max-width: 480px) {
      .homepage-section_services .services-one {
        height: 350px; } }
    @media (max-width: 1024px) {
      .homepage-section_services .services-one {
        height: 350px;
        background-position: center; } }
  .homepage-section_services .services-two {
    float: right;
    color: #fff;
    background: url("../images/dots_top.png") no-repeat left top, url("../images/logoC.png") no-repeat right top -5%, url("../images/dots_bottom.png") repeat-x bottom;
    background-color: #2D2D2A; }
    @media (max-width: 480px) {
      .homepage-section_services .services-two {
        height: 700px; } }
    @media (max-width: 1024px) {
      .homepage-section_services .services-two {
        height: 700px; } }
    .homepage-section_services .services-two .services-two_content {
      position: absolute;
      width: 45%;
      height: 80%;
      left: 15%;
      top: 5%;
      text-align: left; }
      @media (max-width: 480px) {
        .homepage-section_services .services-two .services-two_content {
          width: 80%; } }
      .homepage-section_services .services-two .services-two_content .services-logo {
        margin-bottom: 37px;
        width: 90%;
        height: auto; }
      .homepage-section_services .services-two .services-two_content .services-descr {
        position: relative;
        line-height: 30px;
        font-size: 20px;
        font-weight: 500;
        margin-bottom: 50px; }
        .homepage-section_services .services-two .services-two_content .services-descr::after {
          content: '';
          position: absolute;
          bottom: -20px;
          left: 0px;
          width: 90px;
          height: 2px;
          background: #fff; }
      .homepage-section_services .services-two .services-two_content .services-descr_liste,
      .homepage-section_services .services-two .services-two_content .mecabam-list {
        font-weight: 200; }
      .homepage-section_services .services-two .services-two_content .mecabam-list {
        padding: 0;
        margin: -20px 0 40px 0; }
      .homepage-section_services .services-two .services-two_content .mecabam-list li {
        list-style: none;
        margin-bottom: -45px;
        padding-left: 1em;
        text-indent: -.7em; }
        .homepage-section_services .services-two .services-two_content .mecabam-list li::before {
          content: '\002022';
          color: #EF3340;
          font-size: 4em;
          vertical-align: middle; }

.homepage-enterprise {
  position: relative;
  width: 100%;
  height: 783px;
  background: url("../images/logoC.png") calc(-5% - 1%) 0 no-repeat, url("../images/dots_transparents_right.png") no-repeat right top; }
  .homepage-enterprise:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 30px;
    height: 50px;
    width: 50%;
    background: url("../images/dots_transparents_bottom.png");
    background-repeat: round; }
    @media (max-width: 1024px) {
      .homepage-enterprise:after {
        display: none; } }
  @media (max-width: 480px) {
    .homepage-enterprise {
      height: 832px; } }
  .homepage-enterprise .homepage-enterprise_one,
  .homepage-enterprise .homepage-enterprise_two {
    display: inline-block;
    position: relative;
    width: 50%;
    height: 100%; }
    .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_one-content,
    .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_one-content {
      position: absolute;
      top: 10%;
      left: 20%;
      height: 60%;
      width: 80%; }
      @media (max-width: 1024px) {
        .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_one-content,
        .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_one-content {
          width: 70%; } }
      @media (max-width: 480px) {
        .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_one-content,
        .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_one-content {
          left: 0;
          top: 5%;
          width: 100%; } }
      .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_one-content .services-logo,
      .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_one-content .services-logo {
        margin-bottom: 37px;
        width: 60%;
        height: auto; }
        @media (max-width: 480px) {
          .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_one-content .services-logo,
          .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_one-content .services-logo {
            width: 100%; } }
      .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_one-content h2,
      .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_one-content h2 {
        position: relative;
        width: 60%;
        line-height: 25px;
        font-size: 2rem;
        font-weight: 800; }
        @media (max-width: 480px) {
          .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_one-content h2,
          .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_one-content h2 {
            width: 80%;
            margin: auto; } }
        .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_one-content h2:after,
        .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_one-content h2:after {
          content: '';
          position: absolute;
          bottom: -20px;
          left: 0px;
          width: 90px;
          height: 2px;
          background: #2D2D2A; }
          @media (max-width: 1024px) {
            .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_one-content h2:after,
            .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_one-content h2:after {
              bottom: -10px; } }
      .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_one-content .services-descr,
      .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_one-content .services-descr {
        margin-top: 5%;
        margin-bottom: 30px; }
        @media (max-width: 480px) {
          .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_one-content .services-descr,
          .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_one-content .services-descr {
            width: 80%;
            margin-top: 10%;
            padding-left: 12px;
            margin-left: auto;
            margin-right: auto; } }
    @media (max-width: 480px) {
      .homepage-enterprise .homepage-enterprise_one .btn, .homepage-enterprise .homepage-enterprise_one .modal-footer .action-primary, .modal-footer .homepage-enterprise .homepage-enterprise_one .action-primary, .homepage-enterprise .homepage-enterprise_one
      .modal-footer .action-secondary,
      .modal-footer .homepage-enterprise .homepage-enterprise_one .action-secondary,
      .homepage-enterprise .homepage-enterprise_two .btn,
      .homepage-enterprise .homepage-enterprise_two .modal-footer .action-primary, .modal-footer
      .homepage-enterprise .homepage-enterprise_two .action-primary,
      .homepage-enterprise .homepage-enterprise_two
      .modal-footer .action-secondary,
      .modal-footer
      .homepage-enterprise .homepage-enterprise_two .action-secondary {
        display: block;
        width: 60%;
        margin: auto; } }
    .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--pic,
    .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--pic {
      position: absolute;
      top: 12%;
      left: 8%;
      height: 70%;
      width: 90%;
      background: url("../images/mecabam_facade.png") no-repeat;
      background-size: cover; }
      @media (max-width: 992px) {
        .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--pic,
        .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--pic {
          background-position: 60%; } }
      @media (max-width: 1024px) {
        .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--pic,
        .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--pic {
          height: 100%;
          width: 100%;
          top: 0;
          left: 0; } }
      @media (max-width: 480px) {
        .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--pic,
        .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--pic {
          display: none; } }
    .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--charte,
    .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--charte {
      position: absolute;
      display: block;
      bottom: 0;
      left: 0px;
      height: 300px;
      width: 475px;
      background: url("../images/black-diamond-plate.png") calc(-5% - 1%) 0 no-repeat, url("../images/dots_transparents_right.png") no-repeat right top;
      background-color: #EF3340;
      overflow: hidden; }
      @media (max-width: 480px) {
        .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--charte,
        .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--charte {
          height: 330px;
          left: 0;
          width: 100%;
          background-color: #2D2D2A; }
          .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--charte .btn-white,
          .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--charte .btn-white {
            margin: auto;
            display: block;
            width: 70%; } }
      @media (max-width: 1024px) {
        .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--charte,
        .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--charte {
          right: 0;
          left: inherit; } }
      .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--charte .charte_content,
      .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--charte .charte_content {
        height: 80%;
        width: 80%;
        margin-top: 6%;
        margin-left: 6%; }
        @media (max-width: 480px) {
          .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--charte .charte_content,
          .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--charte .charte_content {
            margin-left: auto;
            margin-right: auto;
            margin-top: 8%;
            width: 90%; } }
        .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--charte .charte_content h2,
        .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--charte .charte_content h2 {
          position: relative;
          width: 60%;
          font-size: 2rem;
          font-weight: 500;
          color: white;
          margin-bottom: 10%; }
          .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--charte .charte_content h2:after,
          .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--charte .charte_content h2:after {
            content: '';
            position: absolute;
            bottom: -20px;
            left: 0px;
            width: 90px;
            height: 2px;
            background: white; }
        .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--charte .charte_content .charte-descr,
        .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--charte .charte_content .charte-descr {
          color: white;
          margin-bottom: 10%;
          font-weight: 100; }
        .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--charte .charte_content .btn-white,
        .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--charte .charte_content .btn-white {
          color: white;
          border-color: white; }
          @media (max-width: 480px) {
            .homepage-enterprise .homepage-enterprise_one .homepage-enterprise_two--charte .charte_content .btn-white,
            .homepage-enterprise .homepage-enterprise_two .homepage-enterprise_two--charte .charte_content .btn-white {
              width: 100%; } }
  .homepage-enterprise .homepage-enterprise_one {
    float: left; }
    @media (max-width: 1024px) {
      .homepage-enterprise .homepage-enterprise_one {
        display: block;
        height: 60%;
        width: 100%; } }
  .homepage-enterprise .homepage-enterprise_two {
    float: right; }
    @media (max-width: 1024px) {
      .homepage-enterprise .homepage-enterprise_two {
        display: block;
        height: 40%;
        width: 100%; } }
    @media (max-width: 480px) {
      .homepage-enterprise .homepage-enterprise_two {
        background: url("../images/dots_transparents_bottom.png") no-repeat left top 12%; } }

.sidebar-main {
  padding-left: 1%; }

.action .sorter-action .sort-asc,
.modes {
  display: none; }

.sorter-action:before {
  content: ''; }

@media (max-width: 480px) {
  .toolbar-sorter {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .toolbar-sorter .sorter-label {
      margin: 0; } }

.toolbar-sorter #sorter {
  border-bottom: 1px solid #e2e1e1; }
  .toolbar-sorter #sorter:focus {
    -webkit-box-shadow: none;
            box-shadow: none; }

.brand-widget {
  width: 100%;
  overflow: hidden;
  margin-top: 60px;
  margin-bottom: 60px; }
  .brand-widget .owl-item {
    height: 170px; }
  .brand-widget .block-title {
    position: relative;
    margin: auto;
    width: 300px;
    margin-bottom: 30px;
    height: 50px;
    display: block;
    text-align: center; }
    .brand-widget .block-title strong {
      font-weight: 700;
      font-size: 3rem; }
    .brand-widget .block-title::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 34%;
      width: 90px;
      height: 2px;
      background: #EF3340; }
      @media (max-width: 991px) {
        .brand-widget .block-title::after {
          font-size: 1.6rem; } }
      @media (max-width: 480px) {
        .brand-widget .block-title::after {
          font-size: 1.1rem; } }
  .brand-widget .brand-image {
    height: 150px;
    width: 150px;
    margin: auto;
    padding: 15px;
    -webkit-box-shadow: 1px 1px 2px 2px #ccc;
            box-shadow: 1px 1px 2px 2px #ccc; }
  .brand-widget ul {
    padding: 0;
    -webkit-padding-start: 0px; }
  .brand-widget .owl-carousel .owl-loaded .owl-drag {
    margin: 0;
    padding: 0;
    padding-left: 0;
    -webkit-padding-start: 0px; }
  .brand-widget .owl-item li {
    margin-top: 9px; }
  .brand-widget .owl-left,
  .brand-widget .owl-right {
    display: inline-block;
    height: 30px;
    width: 30px;
    margin-top: 20px; }
  .brand-widget .owl-dots {
    display: none; }
  .brand-widget .brandowl-play {
    text-align: center; }
  .brand-widget .brandowl-play > a {
    font-size: 0px;
    background-color: white;
    color: transparent;
    position: relative;
    border: solid 1px #ccc;
    -webkit-transition: 2s;
    transition: 2s;
    margin-left: -5px; }
    .brand-widget .brandowl-play > a:hover {
      background-color: #EF3340; }
    .brand-widget .brandowl-play > a:before {
      content: '';
      position: absolute;
      border: solid #ccc;
      border-width: 0 3px 3px 0;
      display: inline-block;
      padding: 3px;
      top: 10px;
      left: 8px;
      transform: rotate(-45deg);
      -webkit-transform: rotate(-45deg); }
  .brand-widget .brandowl-play > a:first-of-type {
    margin-left: 0; }
    .brand-widget .brandowl-play > a:first-of-type:before {
      transform: rotate(135deg);
      -webkit-transform: rotate(135deg);
      left: 11px; }

.form.search.advanced {
  width: 60%;
  margin: auto;
  padding: 1%;
  margin-top: 5%; }
  .form.search.advanced label.label {
    text-align: left; }
  .form.search.advanced legend.legend {
    margin-left: 0;
    position: relative;
    margin-bottom: 25px; }
  .form.search.advanced .primary {
    width: 100%;
    margin-bottom: 20px; }
  .form.search.advanced input {
    border-radius: 4px; }

.search-autocomplete {
  top: 3px; }
  .search-autocomplete ul {
    border: none; }
    .search-autocomplete ul li {
      border: none; }
      .search-autocomplete ul li:hover {
        background: white; }
    .search-autocomplete ul li.selected {
      background: white; }
  .search-autocomplete .amount {
    display: none; }

.product_rent {
  margin-bottom: 20px;
  border-bottom: 1px solid #e2e1e1;
  max-width: 255px; }
  .product_rent .title {
    font-size: 2.2rem;
    border-bottom: 1px solid #e2e1e1;
    padding-bottom: 4px;
    margin-bottom: 4px; }
  .product_rent .day,
  .product_rent .week,
  .product_rent .weekend,
  .product_rent .month {
    margin-bottom: 4px; }
  .product_rent .value {
    font-weight: 500; }
  .product_rent .label {
    color: #575757; }

.instruction {
  margin-bottom: 40px;
  font-style: italic; }

body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  @media (min-width: 768px) {
    body {
      padding: 0; } }

.page-title-wrapper {
  font-size: 3rem;
  color: #EF3340;
  width: 100%;
  margin: auto;
  text-align: center;
  padding-top: 16px;
  padding-left: 1%;
  padding-bottom: 16px;
  text-shadow: 1px 1px #ccc; }
  .catalog-product-view .page-title-wrapper {
    display: none; }
  .catalog-category-view .page-title-wrapper {
    text-align: left; }

.wrapper {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }

.page-wrapper {
  max-width: 1200px;
  width: 100%;
  margin: auto; }
  @media (max-width: 1200px) {
    .page-wrapper {
      max-width: 100%;
      margin: inherit; } }

.columns .column.main {
  padding-bottom: 0;
  min-height: 400px;
  overflow: hidden; }

.container {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto; }

.page-main {
  background-color: white;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
  width: 100%;
  max-width: 100%; }

.catalog-product-view .column.main {
  margin-bottom: 140px; }

.page-footer {
  width: 100%;
  background: #2D2D2A;
  color: white; }
  .page-footer .copyright {
    color: white;
    width: 100%;
    margin-top: 40px;
    margin-left: 70px; }
    @media (max-width: 480px) {
      .page-footer .copyright {
        display: block;
        margin: auto; } }

.footer.content {
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0;
  border: none;
  position: relative; }
  @media (max-width: 480px) {
    .footer.content {
      text-align: center;
      padding-top: 10%;
      padding-bottom: 10%; } }

.footer_content {
  width: 100%;
  height: auto;
  display: block;
  position: relative; }
  .footer_content .footer_content_top {
    display: block;
    position: relative;
    height: 120px;
    padding-left: 50px;
    padding-right: 50px; }
    @media (max-width: 680px) {
      .footer_content .footer_content_top {
        padding-left: inherit;
        padding-right: inherit;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
        -ms-flex-pack: distribute;
            justify-content: space-around; } }
    @media (max-width: 480px) {
      .footer_content .footer_content_top {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; } }
    .footer_content .footer_content_top .footer_content-logo {
      height: 92px;
      width: 257px;
      float: left; }
      @media (max-width: 480px) {
        .footer_content .footer_content_top .footer_content-logo {
          float: none;
          margin: auto; } }
      .footer_content .footer_content_top .footer_content-logo .footer-logo {
        margin: auto;
        height: auto;
        max-width: 100%;
        bottom: 0; }
  @media (max-width: 480px) {
    .footer_content {
      display: block;
      width: 100%; } }
  .footer_content .footer_content-call {
    float: right;
    height: 92px;
    width: auto;
    margin-right: 10px;
    line-height: 85px;
    vertical-align: middle; }
    .footer_content .footer_content-call a {
      color: white;
      border-color: white;
      text-transform: uppercase; }
    @media (max-width: 480px) {
      .footer_content .footer_content-call {
        display: block;
        position: relative;
        width: 100%;
        margin-bottom: 20px;
        margin-right: 0; } }

.footer_content-nav {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
  width: 95%;
  height: auto;
  text-align: left;
  background-color: #2D2D2A;
  overflow: hidden; }
  .footer_content-nav ul.first-level {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: auto;
    width: 90%; }
    .footer_content-nav ul.first-level li {
      padding: 10px;
      text-transform: uppercase;
      max-width: inherit; }
      .footer_content-nav ul.first-level li a {
        display: block; }
  .footer_content-nav ul.subnav {
    width: auto;
    overflow: hidden;
    margin-top: 30px; }
    .footer_content-nav ul.subnav li {
      margin-top: 0px;
      text-transform: none;
      text-align: left;
      padding: 0px;
      font-weight: 300; }
    .footer_content-nav ul.subnav a {
      display: inline-block; }
  .footer_content-nav li {
    color: white; }
  .footer_content-nav a {
    color: white; }
    .footer_content-nav a:visited {
      color: white; }
    .footer_content-nav a:hover {
      color: white; }
  @media (max-width: 980px) {
    .footer_content-nav {
      display: none; } }

.footer_content-arrow {
  display: none;
  position: absolute;
  right: 65px;
  bottom: 19px;
  height: 25px;
  width: 23px;
  background-color: #EF3340;
  font-size: 2em;
  text-align: center;
  vertical-align: middle;
  line-height: 8px;
  cursor: pointer; }
  .footer_content-arrow i {
    border: solid white;
    border-width: 0 3px 3px 0;
    display: inline-block;
    padding: 3px; }
  .footer_content-arrow .up {
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg); }
  @media (max-width: 980px) {
    .footer_content-arrow {
      display: none; } }

#header-banderau {
  position: relative;
  height: 43px;
  width: 100%;
  padding: 10px;
  background-color: rgba(0, 0, 0, 0.03);
  text-align: center;
  color: #7C7C7C; }
  @media (max-width: 1024px) {
    #header-banderau {
      text-align: left; } }
  @media (max-width: 780px) {
    #header-banderau {
      display: none; } }
  #header-banderau .header-banderau_middle {
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    display: inline-block; }
    @media (max-width: 1080px) {
      #header-banderau .header-banderau_middle {
        left: 15px;
        -webkit-transform: inherit;
                transform: inherit; } }
    #header-banderau .header-banderau_middle a.link-header {
      color: #7C7C7C; }
      #header-banderau .header-banderau_middle a.link-header:hover {
        color: #7C7C7C; }
      #header-banderau .header-banderau_middle a.link-header:visited {
        color: #7C7C7C; }
      #header-banderau .header-banderau_middle a.link-header:focus {
        color: #7C7C7C; }
  #header-banderau .header-banderau_right {
    display: inline-block;
    position: absolute;
    right: 15px; }
  #header-banderau p {
    display: inline-block;
    margin: auto;
    font-size: 1.4rem; }

.header.content {
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  @media (min-width: 768px) {
    .header.content {
      max-width: 100%; } }
  .header.content .nav-toggle {
    line-height: 30px;
    vertical-align: middle;
    left: 10px;
    font-weight: 900;
    color: #2D2D2A; }
  .header.content .logo {
    width: 360px;
    height: 120px;
    margin: 0; }
    @media (max-width: 780px) {
      .header.content .logo {
        width: 200px;
        height: 50px;
        left: 10%;
        margin-bottom: 15px; } }
  .header.content .slogan-logo {
    position: absolute;
    top: 41%;
    left: 105%;
    width: 200px; }
    @media (max-width: 992px) {
      .header.content .slogan-logo {
        display: none; } }
  .header.content .no-a {
    color: black;
    font-weight: 700; }
    .header.content .no-a:hover {
      color: black; }
  .header.content .header_mobile-icons {
    position: absolute;
    right: 10px;
    line-height: 70px;
    vertical-align: middle;
    color: black; }
    @media (min-width: 780px) {
      .header.content .header_mobile-icons {
        display: none;
        line-height: 70px; } }
    @media (min-width: 480px) {
      .header.content .header_mobile-icons {
        line-height: 70px; } }
    .header.content .header_mobile-icons a {
      color: black; }
    .header.content .header_mobile-icons a:hover {
      color: #2D2D2A; }
    .header.content .header_mobile-icons a:focus {
      color: #2D2D2A; }
    .header.content .header_mobile-icons svg.icon {
      width: 3em;
      height: 1.6em; }
  .header.content .block-search {
    width: 250px;
    z-index: 4;
    position: absolute;
    right: 55px;
    top: 50px; }
    .header.content .block-search .control input {
      border: none; }
    .header.content .block-search #search_autocomplete {
      display: none; }
    .header.content .block-search .nested {
      display: none; }
    @media (max-width: 780px) {
      .header.content .block-search {
        display: none; } }

.header.content::before {
  display: none;
  content: ''; }

.header.content::after {
  display: none;
  content: ''; }

/*doc
---
title: General
name: general
category: Pages
---
When creating a new cms page, be sure to set the `1 column` template in order to have the correct layout applied. This is valid for all the CMS templates.

The heading will be displayed at the top of the page. Most of the time, we recommend to match the page title and the heading.
*/
.page {
  padding: 0;
  font-size: 1.7rem;
  letter-spacing: .2px; }
  .page > h1,
  .page > h2,
  .page > h3,
  .page > h4,
  .page > h5,
  .page > h6 {
    font-size: 2.2rem;
    font-weight: bold;
    letter-spacing: .5px;
    text-transform: uppercase; }
  .page > h2 {
    font-size: 2rem; }
  .page > h3 {
    font-size: 1.8rem; }
  .page > h4 {
    font-size: 1.7rem; }
  .page > h5,
  .page > h6 {
    font-size: 1.6rem; }

.homepage-section {
  margin: 0; }
  @media (min-width: 768px) {
    .homepage-section {
      margin: 0; } }

.homepage-section__title {
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
  font-size: 2rem;
  font-weight: 300;
  letter-spacing: .5px;
  text-align: center; }
  .homepage-section__title::after {
    content: '';
    position: absolute;
    bottom: -20px;
    left: calc(50% - 45px);
    width: 90px;
    height: 2px;
    background: #EF3340; }
  @media (min-width: 768px) {
    .homepage-section__title {
      margin: 0;
      font-size: 3.4rem;
      letter-spacing: .8px; } }

.homepage-cover {
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
  font-size: 2.6rem;
  font-weight: 300;
  letter-spacing: .5px;
  line-height: 1.3;
  text-align: center; }
  @media (max-width: 480px) {
    .homepage-cover {
      height: 600px;
      font-weight: 500; } }
  @media (max-width: 1200px) {
    .homepage-cover {
      height: 380px; } }
  .homepage-cover .homepage-cover_img {
    height: 100%;
    width: 100%; }
    .homepage-cover .homepage-cover_img img {
      -o-object-fit: cover;
         object-fit: cover;
      width: 100%; }
    @media (max-width: 480px) {
      .homepage-cover .homepage-cover_img {
        display: none; } }
  .homepage-cover .homepage-cover_img_mobile {
    display: none; }
    .homepage-cover .homepage-cover_img_mobile img {
      -o-object-fit: cover;
         object-fit: cover;
      width: 100%;
      height: 600px; }
    @media (max-width: 480px) {
      .homepage-cover .homepage-cover_img_mobile {
        display: block; } }
  .homepage-cover__text {
    position: absolute;
    top: 80px;
    right: 6%;
    width: 40%;
    text-align: left; }
    @media (max-width: 768px) {
      .homepage-cover__text {
        top: 5%;
        left: 15%;
        width: 80%; } }
    @media (max-width: 480px) {
      .homepage-cover__text {
        width: 80%;
        top: 10px;
        left: 1%; } }
    .homepage-cover__text h1 {
      font-weight: 600;
      font-size: 4.2rem;
      color: #EF3340;
      margin-bottom: 20px; }
      @media (max-width: 480px) {
        .homepage-cover__text h1 {
          font-size: 2.6rem; } }
    .homepage-cover__text p {
      position: relative;
      color: #333333;
      font-size: 1.8rem;
      font-weight: 400; }
      .homepage-cover__text p::after {
        content: '';
        position: absolute;
        bottom: -20px;
        left: 0px;
        width: 90px;
        height: 2px;
        background: #333333; }
        @media (max-width: 991px) {
          .homepage-cover__text p::after {
            font-size: 1.6rem; } }
        @media (max-width: 480px) {
          .homepage-cover__text p::after {
            font-size: 1.1rem; } }
    .homepage-cover__text button {
      margin-top: 40px;
      padding: 8px 20px 10px 20px;
      color: #EF3340;
      font-size: 1.6rem;
      border-radius: 5;
      border: 1px solid #EF3340;
      background-color: transparent; }

.toolbar-products {
  margin-top: 20px;
  margin-bottom: 20px;
  text-align: left; }
  .toolbar-products select {
    border: none;
    background: transparent; }
    .toolbar-products select:focus, .toolbar-products select:active, .toolbar-products select:hover, .toolbar-products select:checked {
      border: none;
      background: transparent; }
    .toolbar-products select option {
      background: transparent; }

.sidebar-main {
  margin-top: 90px; }

@media (min-width: 768px) {
  .sidebar-additional {
    padding-right: 0; } }

@media (min-width: 640px) {
  .product-item-actions .actions-primary {
    display: inherit;
    text-align: center; } }

.filter-title {
  display: none; }

@media (max-width: 768px) {
  .filter-content {
    text-align: left; } }

.filter-content .action.remove {
  display: block;
  margin-top: 16px; }

.block-content a:visited {
  color: #EF3340; }

.block-content a:hover {
  color: #EF3340; }

.block-compare {
  padding: 7%; }
  .block-compare .actions-toolbar {
    padding: 11%; }
    @media (max-width: 1800px) {
      .block-compare .actions-toolbar {
        padding: 0; } }
    .block-compare .actions-toolbar a.action {
      margin-top: 0; }
    .block-compare .actions-toolbar .compare {
      margin-bottom: 15px; }
      .block-compare .actions-toolbar .compare a, .block-compare .actions-toolbar .compare a:hover {
        background: transparent;
        border: none;
        color: white;
        font-weight: 700;
        font-size: 1.6rem; }
  .block-compare .delete:before:hover {
    color: #EF3340; }

.page-products .products-grid .product-items {
  padding-right: 2%;
  margin-left: 0; }
  @media (max-width: 768px) {
    .page-products .products-grid .product-items {
      padding-right: 0; } }

.page-products .products-grid .product-item {
  position: relative;
  background-color: white;
  padding: 2%;
  border-radius: 6px;
  border: solid 1px rgba(33, 33, 33, 0.1);
  text-align: center;
  overflow: hidden; }
  @media (max-width: 480px) {
    .page-products .products-grid .product-item {
      display: block;
      width: 100%;
      max-width: 80%;
      margin: auto;
      margin-bottom: 12px; } }
  @media (max-width: 360px) {
    .page-products .products-grid .product-item {
      max-width: 100%;
      margin: auto; } }
  .page-products .products-grid .product-item .price-box {
    height: 70px;
    margin: 25px 0 25px;
    line-height: 25px; }
    .page-products .products-grid .product-item .price-box .price-label {
      font-size: 1.2rem; }
  .page-products .products-grid .product-item .stock-on-top {
    width: 80%;
    margin: auto; }
    .page-products .products-grid .product-item .stock-on-top .out-of,
    .page-products .products-grid .product-item .stock-on-top .for-rent {
      color: rgba(46, 125, 50, 0.7);
      font-weight: 600;
      text-align: center;
      width: 100%;
      margin: auto; }
    .page-products .products-grid .product-item .stock-on-top .for-rent {
      display: block; }
  .page-products .products-grid .product-item .product-item-info {
    margin: auto;
    width: 270px; }
    .page-products .products-grid .product-item .product-item-info img {
      margin: auto;
      height: 234px;
      width: auto; }
  @media (max-width: 640px) {
    .page-products .products-grid .product-item .product-item-inner .product-item-actions {
      display: block; } }
  @media (max-width: 773px) {
    .page-products .products-grid .product-item .product-item-inner .product-item-actions .btn, .page-products .products-grid .product-item .product-item-inner .product-item-actions .modal-footer .action-primary, .modal-footer .page-products .products-grid .product-item .product-item-inner .product-item-actions .action-primary, .page-products .products-grid .product-item .product-item-inner .product-item-actions
    .modal-footer .action-secondary,
    .modal-footer .page-products .products-grid .product-item .product-item-inner .product-item-actions .action-secondary {
      width: 100%;
      margin: auto;
      padding: 12px 20px;
      text-overflow: inherit; } }
  .page-products .products-grid .product-item .product-item-inner .product-item-action-view {
    margin-top: 10px;
    margin-bottom: 15px; }
  .page-products .products-grid .product-item .product-item-inner .addcompare {
    background-color: rgba(69, 90, 100, 0.6);
    position: relative;
    display: none; }
    @media (max-width: 768px) {
      .page-products .products-grid .product-item .product-item-inner .addcompare {
        display: none; } }
    .page-products .products-grid .product-item .product-item-inner .addcompare a::before {
      font-family: 'icons-blank-theme';
      font-size: 0;
      color: transparent;
      position: absolute;
      left: -1500px;
      height: 0.1px;
      width: 0.1px; }
    .page-products .products-grid .product-item .product-item-inner .addcompare .addcompare-icon {
      color: white;
      line-height: 20px;
      vertical-align: middle; }
      .page-products .products-grid .product-item .product-item-inner .addcompare .addcompare-icon .icon-compare {
        font-family: 'icons-blank-theme';
        content: '';
        font-size: 2.5rem;
        color: white; }
  .page-products .products-grid .product-item .product-item-name {
    height: 80px;
    overflow: hidden;
    position: relative;
    margin-top: 5%;
    margin-bottom: 2%;
    text-overflow: ellipsis; }
    .page-products .products-grid .product-item .product-item-name a {
      font-size: 2rem;
      font-weight: 700;
      line-height: 25px;
      text-decoration: none; }
      .page-products .products-grid .product-item .product-item-name a:after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 15%;
        width: 70%;
        height: 3px;
        background: #EF3340; }
        @media (max-width: 991px) {
          .page-products .products-grid .product-item .product-item-name a:after {
            font-size: 1.6rem; } }
        @media (max-width: 480px) {
          .page-products .products-grid .product-item .product-item-name a:after {
            font-size: 1.1rem; } }
  .page-products .products-grid .product-item .price-box {
    height: 45px; }
    .page-products .products-grid .product-item .price-box .price {
      font-weight: 700;
      font-size: 2rem; }
    .page-products .products-grid .product-item .price-box .old-price .price {
      font-size: 1.2rem; }
  .page-products .products-grid .product-item .product-reviews-summary {
    display: block;
    margin: 0; }
    .page-products .products-grid .product-item .product-reviews-summary .reviews-actions {
      line-height: inherit;
      margin: 0;
      display: none; }
      .page-products .products-grid .product-item .product-reviews-summary .reviews-actions a.action.view, .page-products .products-grid .product-item .product-reviews-summary .reviews-actions span {
        color: black; }
      .page-products .products-grid .product-item .product-reviews-summary .reviews-actions a .action .view:visited {
        color: black; }
      .page-products .products-grid .product-item .product-reviews-summary .reviews-actions a {
        color: black; }
  .page-products .products-grid .product-item .review-block {
    display: inline-block;
    position: absolute;
    top: 0;
    left: -10px;
    overflow: hidden;
    vertical-align: middle;
    padding: 12px 40px;
    font-size: 1.6rem;
    line-height: 1.1;
    font-weight: 500;
    white-space: nowrap;
    text-transform: none;
    text-overflow: ellipsis;
    text-decoration: none;
    text-align: center;
    background-image: none;
    border: 0; }
    @media (max-width: 1440px) {
      .page-products .products-grid .product-item .review-block {
        left: -35px; } }
    @media (max-width: 768px) {
      .page-products .products-grid .product-item .review-block {
        display: none; } }

.product-reviews-summary .reviews-actions a {
  color: black; }
  .product-reviews-summary .reviews-actions a:hover {
    color: black; }

.page-products .message.info.empty {
  max-width: 400px;
  background-color: transparent;
  border-color: transparent;
  color: black; }
  @media (max-width: 480px) {
    .page-products .message.info.empty {
      width: 70%;
      max-width: 100%; } }

.pages a.next:hover,
.pages a.previous:hover {
  background-color: #EF3340;
  color: #ccc;
  font-weight: 700; }

.pages .action.next:before {
  color: #ccc; }

.pages .action.next:visited:before {
  color: #ccc; }

.pages a.page span {
  color: #2D2D2A; }

.catalogsearch-advanced-result .search.found,
.catalogsearch-advanced-result .search.summary {
  padding-left: 1%; }

@media (min-width: 768px) {
  .product.data.items > .item.title > .switch {
    height: 30px; } }

.product.data.items > .item.content {
  background: white; }
  @media (min-width: 768px) {
    .product.data.items > .item.content {
      margin-top: 42px;
      border-top: none; } }

.review-title {
  font-weight: 450; }

.review-form {
  margin: auto; }
  @media (min-width: 768px) {
    .review-form {
      margin: inherit; } }

@media (min-width: 768px) {
  .review-content {
    width: 60%; } }

.product-reviews-summary .reviews-actions a {
  font-style: italic;
  color: #ccc;
  display: none; }
  .product-reviews-summary .reviews-actions a:hover {
    color: #ccc; }

.page-layout-1column .product.media {
  width: 40%;
  padding-left: 60px; }
  @media (max-width: 768px) {
    .page-layout-1column .product.media {
      width: 100%;
      padding-left: inherit; } }

.fotorama__nav-wrap {
  margin-bottom: 20px; }
  .fotorama__nav-wrap .fotorama__nav--thumbs {
    text-align: center; }

.fotorama__stage {
  width: 500px !important; }
  @media (max-width: 1200px) {
    .fotorama__stage {
      height: auto; } }

.fotorama__stage__shaft .fotorama__grab {
  width: 500px; }

.fotorama__stage__frame {
  height: 500px;
  background: white; }

.fotorama-item {
  margin: auto; }

.fotorama__wrap {
  width: 500px;
  max-width: inherit;
  min-width: inherit; }
  @media (max-width: 768px) {
    .fotorama__wrap {
      margin: auto; } }

.gallery-placeholder {
  margin: auto; }

.fotorama--fullscreen {
  background: rgba(0, 0, 0, 0.6); }
  .fotorama--fullscreen .fotorama__stage {
    height: 500px !important;
    margin-top: 35%; }

.fotorama--fullscreen .fotorama__wrap {
  margin: auto; }

.fotorama__arr--disabled {
  opacity: 0; }

.fotorama__stage__frame .fotorama__img {
  border: 2px solid #ccc;
  height: auto;
  width: auto;
  top: 40%; }
  @media (max-width: 1115px) {
    .fotorama__stage__frame .fotorama__img {
      top: 30%; } }
  @media (max-width: 1024px) {
    .fotorama__stage__frame .fotorama__img {
      top: 30%; } }
  @media (max-width: 768px) {
    .fotorama__stage__frame .fotorama__img {
      top: 50%; } }
  @media (max-width: 480px) {
    .fotorama__stage__frame .fotorama__img {
      top: 40%; } }
  @media (max-width: 375px) {
    .fotorama__stage__frame .fotorama__img {
      top: 30%; } }

.fotorama__thumb-border {
  border: 1px solid #ccc; }

.fotorama__nav__frame--thumb {
  opacity: 0.3; }
  .fotorama__nav__frame--thumb:hover {
    opacity: 1; }

.fotorama__active {
  opacity: 1; }

.fotorama__active .fotorama__dot {
  background-color: #EF3340;
  border-color: #EF3340; }

.fotorama__dot {
  border-radius: 16px;
  height: 14px;
  width: 14px; }

.product-reviews-summary .reviews-actions a {
  font-style: italic;
  color: #ccc; }
  .product-reviews-summary .reviews-actions a:hover {
    color: #ccc; }

.product.info.detailed {
  margin-left: 60px; }
  @media (max-width: 767px) {
    .product.info.detailed {
      margin-left: 0; } }

@media (max-width: 767px) {
  .product.data.items > .item.title,
  .product.data.items > .item.content {
    margin: 0; } }

.product.data.items > .item.title > .switch {
  background: white;
  color: #424242;
  border: none; }

.product.data.items > .item.title.active > .switch {
  background: white;
  color: #424242;
  border-bottom: 2px solid #EF3340; }
  @media (max-width: 767px) {
    .product.data.items > .item.title.active > .switch {
      padding: 0;
      text-align: center; } }

.column.main .product-item.complementary-item {
  padding-left: 0;
  padding: 3%;
  width: 300px; }
  @media (max-width: 1000px) {
    .column.main .product-item.complementary-item {
      width: 210px; } }
  @media (max-width: 900px) {
    .column.main .product-item.complementary-item {
      width: 190px; } }
  @media (max-width: 767px) {
    .column.main .product-item.complementary-item {
      width: 180px; } }
  @media (max-width: 480px) {
    .column.main .product-item.complementary-item {
      width: 150px; } }

.column.main .product-items.complementary-items {
  display: block;
  margin-left: 0; }
  @media (max-width: 768px) {
    .column.main .product-items.complementary-items {
      display: inherit; } }
  .column.main .product-items.complementary-items li {
    background: white;
    margin-left: 1%;
    margin-right: 1%;
    margin-top: .5%; }

.products-grid .product-item {
  border: 1px solid #ccc;
  border-radius: 6px; }
  .products-grid .product-item .product-item-info {
    max-width: 100%;
    width: 100%; }
    .products-grid .product-item .product-item-info img {
      margin-bottom: 20px;
      margin-top: 2px;
      width: 100%;
      height: 100%; }
    .products-grid .product-item .product-item-info strong {
      height: 100px;
      overflow: hidden;
      text-overflow: ellipsis;
      position: relative; }
      .products-grid .product-item .product-item-info strong a {
        font-size: 1.7rem;
        font-weight: 600;
        height: 100px;
        overflow: hidden;
        color: #2D2D2A; }
        .products-grid .product-item .product-item-info strong a:after {
          content: '';
          height: 2px;
          width: 80%;
          bottom: 10px;
          left: 10%;
          position: absolute;
          background: #EF3340; }
    .products-grid .product-item .product-item-info .price-box {
      min-height: 22px; }
    .products-grid .product-item .product-item-info .price {
      font-size: 1.8rem;
      height: 100px;
      overflow: hidden;
      color: #2D2D2A; }
    .products-grid .product-item .product-item-info a.btn, .products-grid .product-item .product-item-info .modal-footer a.action-primary, .modal-footer .products-grid .product-item .product-item-info a.action-primary, .products-grid .product-item .product-item-info
    .modal-footer a.action-secondary,
    .modal-footer .products-grid .product-item .product-item-info a.action-secondary {
      color: white;
      width: 100%;
      text-overflow: inherit;
      padding: 12px 20px; }
      .products-grid .product-item .product-item-info a.btn:hover, .products-grid .product-item .product-item-info .modal-footer a.action-primary:hover, .modal-footer .products-grid .product-item .product-item-info a.action-primary:hover, .products-grid .product-item .product-item-info
      .modal-footer a.action-secondary:hover,
      .modal-footer .products-grid .product-item .product-item-info a.action-secondary:hover {
        color: white; }
  .products-grid .product-item a:hover, .products-grid .product-item a:visited {
    color: #2D2D2A;
    text-decoration: none; }

.name-complementary {
  font-size: 2rem;
  margin-left: 5%;
  padding-top: 30px;
  padding-bottom: 5px;
  border-bottom: solid 3px red;
  width: 250px; }
  @media (max-width: 480px) {
    .name-complementary {
      margin: auto; } }

.homepage-section.complementary {
  background: white;
  display: block; }

.homepage-section_product.complementary {
  background: white;
  padding: 0; }
  @media (max-width: 480px) {
    .homepage-section_product.complementary {
      display: block;
      height: auto;
      padding: 0;
      margin-left: inherit;
      background: inherit;
      background-color: transparent; }
      .homepage-section_product.complementary .complementary-items {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; }
      .homepage-section_product.complementary .homepage-section_product-item:nth-last-child(3) {
        display: none; }
      .homepage-section_product.complementary .homepage-section_product-item:nth-last-child(2) {
        display: none; }
      .homepage-section_product.complementary .homepage-section_product-item:nth-last-child(1) {
        display: none; } }
  .homepage-section_product.complementary .block-complementary {
    width: 100%; }
  @media (max-width: 480px) {
    .homepage-section_product.complementary .homepage-section_product-item {
      display: block; } }

.column.main .block:last-child {
  width: 100%;
  height: 100%;
  clear: both; }

.product.data.items > .item.title:not(.disabled) > .switch:active,
.product.data.items > .item.title.active > .switch,
.product.data.items > .item.title.active > .switch:focus,
.product.data.items > .item.title.active > .switch:hover {
  background: white; }

.page-layout-1column .product-info-main {
  width: 60%; }
  @media (max-width: 768px) {
    .page-layout-1column .product-info-main {
      width: 80%; } }

.product-info-main {
  position: relative;
  padding-left: 20px; }
  @media (max-width: 768px) {
    .product-info-main {
      padding: 2%; } }
  .product-info-main .product.attribute.name {
    color: #2D2D2A;
    width: 65%;
    font-weight: 600;
    font-size: 3.5rem;
    margin-bottom: 10px; }
    @media (max-width: 940px) {
      .product-info-main .product.attribute.name {
        width: 60%;
        font-size: 2.3rem; } }
    @media (max-width: 768px) {
      .product-info-main .product.attribute.name {
        width: 100%; } }
    .product-info-main .product.attribute.name strong {
      display: none; }
  .product-info-main .product.attribute.overview {
    width: 70%; }
    .product-info-main .product.attribute.overview strong {
      display: none; }
    @media (max-width: 480px) {
      .product-info-main .product.attribute.overview {
        width: 100%; } }
  .product-info-main .stock.available {
    color: rgba(46, 125, 50, 0.7); }
  .product-info-main .brand-label {
    display: block;
    float: left;
    margin-right: 20px; }
    .product-info-main .brand-label:after {
      content: '';
      height: 4px;
      width: 60px;
      position: absolute;
      background-color: #EF3340; }
  .product-info-main .brand-image {
    display: inline-block;
    position: absolute;
    right: 60px;
    top: 0; }
    @media (max-width: 768px) {
      .product-info-main .brand-image {
        display: none; } }
    .product-info-main .brand-image img {
      margin: auto;
      width: 150px;
      height: 150px; }
  .product-info-main .product-info-price {
    margin-bottom: 20px; }
  .product-info-main .price-box .price {
    color: #2D2D2A;
    font-size: 2.5rem; }
  .product-info-main .btn:visited, .product-info-main .modal-footer .action-primary:visited, .modal-footer .product-info-main .action-primary:visited, .product-info-main
  .modal-footer .action-secondary:visited,
  .modal-footer .product-info-main .action-secondary:visited {
    color: #EF3340; }
  .product-info-main .product_call-to {
    margin-top: 20px;
    margin-bottom: 20px; }
    .product-info-main .product_call-to .btn, .product-info-main .product_call-to .modal-footer .action-primary, .modal-footer .product-info-main .product_call-to .action-primary, .product-info-main .product_call-to
    .modal-footer .action-secondary,
    .modal-footer .product-info-main .product_call-to .action-secondary {
      margin: auto; }
      .product-info-main .product_call-to .btn:visited, .product-info-main .product_call-to .modal-footer .action-primary:visited, .modal-footer .product-info-main .product_call-to .action-primary:visited, .product-info-main .product_call-to
      .modal-footer .action-secondary:visited,
      .modal-footer .product-info-main .product_call-to .action-secondary:visited {
        color: #FFFFFF; }

.container-static_page {
  margin-top: 40px;
  height: 100%;
  width: 100%;
  margin: auto;
  padding: 0px; }
  @media (max-width: 768px) {
    .container-static_page {
      padding-left: 1%;
      padding-right: 1%; } }
  @media (max-width: 480px) {
    .container-static_page {
      width: 100%;
      padding: 10px; } }
  .container-static_page h1 {
    font-size: 3rem;
    color: #EF3340;
    width: 80%;
    margin: auto;
    text-align: left;
    padding-top: 16px;
    padding-bottom: 16px;
    text-shadow: 1px 1px #ccc; }
    @media (max-width: 768px) {
      .container-static_page h1 {
        width: 100%; } }
  .container-static_page h2 {
    font-size: 2.5rem;
    color: #575757;
    width: 80%;
    padding: 16px;
    margin: auto;
    text-align: left; }
    @media (max-width: 768px) {
      .container-static_page h2 {
        width: 100%; } }
  .container-static_page .simple-block_text {
    width: 100%;
    margin: auto;
    margin-bottom: 28px;
    margin-top: 40px; }
    .container-static_page .simple-block_text:after {
      content: '';
      display: block;
      clear: both; }
    .container-static_page .simple-block_text h1 {
      font-size: 3rem;
      color: #EF3340;
      width: 80%;
      margin: auto;
      text-align: left;
      padding-top: 16px;
      padding-bottom: 16px;
      text-shadow: 1px 1px #ccc; }
      @media (max-width: 768px) {
        .container-static_page .simple-block_text h1 {
          width: 100%; } }
    .container-static_page .simple-block_text h2 {
      font-size: 2.5rem;
      color: #575757;
      width: 80%;
      padding: 16px 8px;
      margin: auto;
      text-align: left; }
      @media (max-width: 768px) {
        .container-static_page .simple-block_text h2 {
          width: 100%; } }
    .container-static_page .simple-block_text p {
      font-size: 1.7rem;
      width: 80%;
      margin: auto;
      padding: 8px; }
      @media (max-width: 768px) {
        .container-static_page .simple-block_text p {
          width: 100%; } }
    .container-static_page .simple-block_text span.address {
      font-weight: 500;
      font-style: italic; }
    .container-static_page .simple-block_text a {
      color: #575757;
      font-weight: 600;
      text-decoration: underline !important; }
      .container-static_page .simple-block_text a:hover, .container-static_page .simple-block_text a:focus {
        text-decoration: underline !important;
        color: #EF3340; }
      .container-static_page .simple-block_text a:visited {
        color: #333333;
        text-decoration: underline !important; }
        .container-static_page .simple-block_text a:visited:hover {
          color: #EF3340; }
    .container-static_page .simple-block_text .wrap-left {
      width: 100%;
      margin: auto;
      margin-bottom: 30px; }
      .container-static_page .simple-block_text .wrap-left p {
        width: 100%;
        padding: 0; }
      .container-static_page .simple-block_text .wrap-left .left {
        width: 60%;
        float: left;
        padding-left: 10px;
        padding-right: 10px; }
        @media (max-width: 1100px) {
          .container-static_page .simple-block_text .wrap-left .left {
            float: none;
            width: 80%;
            margin: auto; } }
        @media (max-width: 1024px) {
          .container-static_page .simple-block_text .wrap-left .left {
            margin-bottom: 10px; } }
        @media (max-width: 480px) {
          .container-static_page .simple-block_text .wrap-left .left {
            float: none;
            width: 99%;
            margin: auto;
            margin-bottom: 10px; } }
      .container-static_page .simple-block_text .wrap-left .right {
        width: 40%;
        float: right;
        padding-left: 10px;
        padding-right: 10px; }
        @media (max-width: 1100px) {
          .container-static_page .simple-block_text .wrap-left .right {
            float: none;
            width: 80%;
            margin: auto; } }
        @media (max-width: 480px) {
          .container-static_page .simple-block_text .wrap-left .right {
            float: none;
            width: 99%;
            margin: auto; } }
    .container-static_page .simple-block_text .wrap-right {
      width: 100%;
      margin: auto;
      margin-bottom: 20px; }
      .container-static_page .simple-block_text .wrap-right .left {
        width: 60%;
        float: left;
        padding-left: 10px;
        padding-right: 10px; }
        @media (max-width: 1100px) {
          .container-static_page .simple-block_text .wrap-right .left {
            float: none;
            width: 80%;
            margin: auto;
            margin-bottom: 30px; } }
        @media (max-width: 480px) {
          .container-static_page .simple-block_text .wrap-right .left {
            float: none;
            width: 99%;
            margin: auto;
            margin-bottom: 30px; } }
        .container-static_page .simple-block_text .wrap-right .left p {
          padding-left: 0; }
      .container-static_page .simple-block_text .wrap-right .right {
        float: right;
        width: 40%; }
        @media (max-width: 1100px) {
          .container-static_page .simple-block_text .wrap-right .right {
            float: none;
            width: 80%;
            margin: auto;
            margin-top: 20px; } }
        @media (max-width: 480px) {
          .container-static_page .simple-block_text .wrap-right .right {
            float: none;
            width: 99%;
            margin: auto; } }
    .container-static_page .simple-block_text .container-block-sav {
      width: 100%;
      display: block;
      margin-top: 20px; }
      .container-static_page .simple-block_text .container-block-sav p {
        width: 100%;
        padding: 0;
        margin-bottom: 20px; }
      .container-static_page .simple-block_text .container-block-sav .container-block-sav_left {
        width: 60%;
        float: left; }
        @media (max-width: 768px) {
          .container-static_page .simple-block_text .container-block-sav .container-block-sav_left {
            float: none;
            width: 90%;
            margin: auto; } }
        .container-static_page .simple-block_text .container-block-sav .container-block-sav_left .wrap-sav {
          width: 100%;
          margin: auto;
          margin-bottom: 20px; }
          .container-static_page .simple-block_text .container-block-sav .container-block-sav_left .wrap-sav:after {
            content: '';
            display: block;
            clear: both; }
          .container-static_page .simple-block_text .container-block-sav .container-block-sav_left .wrap-sav .left {
            width: 30%;
            float: left; }
          .container-static_page .simple-block_text .container-block-sav .container-block-sav_left .wrap-sav .right {
            width: 70%;
            float: right;
            padding-left: 20px;
            padding-right: 20px; }
      .container-static_page .simple-block_text .container-block-sav .container-block-sav_right {
        width: 40%;
        float: right; }
        @media (max-width: 768px) {
          .container-static_page .simple-block_text .container-block-sav .container-block-sav_right {
            float: none;
            width: 90%;
            margin: auto; } }
        .container-static_page .simple-block_text .container-block-sav .container-block-sav_right .wrap-sav {
          width: 100%;
          margin: auto;
          margin-bottom: 20px; }
          .container-static_page .simple-block_text .container-block-sav .container-block-sav_right .wrap-sav:after {
            content: '';
            display: block;
            clear: both; }
          .container-static_page .simple-block_text .container-block-sav .container-block-sav_right .wrap-sav .left {
            width: 40%;
            float: left; }
            @media (max-width: 768px) {
              .container-static_page .simple-block_text .container-block-sav .container-block-sav_right .wrap-sav .left {
                width: 30%; } }
          .container-static_page .simple-block_text .container-block-sav .container-block-sav_right .wrap-sav .right {
            width: 60%;
            float: right;
            padding-left: 20px; }
            @media (max-width: 768px) {
              .container-static_page .simple-block_text .container-block-sav .container-block-sav_right .wrap-sav .right {
                width: 70%; } }
    .container-static_page .simple-block_text .showroom-left {
      float: left;
      width: 50%; }
      @media (max-width: 768px) {
        .container-static_page .simple-block_text .showroom-left {
          float: none;
          width: 90%;
          margin: auto; } }
      .container-static_page .simple-block_text .showroom-left .content_showroom-left {
        width: 90%;
        border: 2px solid #2D2D2A;
        text-align: center; }
        @media (max-width: 768px) {
          .container-static_page .simple-block_text .showroom-left .content_showroom-left {
            width: 100%;
            margin: auto; } }
        .container-static_page .simple-block_text .showroom-left .content_showroom-left h2 {
          text-align: center; }
        .container-static_page .simple-block_text .showroom-left .content_showroom-left .content_showroom-left-pic {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          margin-top: 10px;
          margin-bottom: 10px;
          -ms-flex-pack: distribute;
              justify-content: space-around; }
          .container-static_page .simple-block_text .showroom-left .content_showroom-left .content_showroom-left-pic img {
            height: auto;
            width: 150px; }
    .container-static_page .simple-block_text .showroom-right {
      float: right;
      width: 50%; }
      @media (max-width: 768px) {
        .container-static_page .simple-block_text .showroom-right {
          float: none;
          width: 90%;
          margin: auto;
          margin-top: 20px; } }
      .container-static_page .simple-block_text .showroom-right .content_showroom-right {
        width: 90%; }
        @media (max-width: 768px) {
          .container-static_page .simple-block_text .showroom-right .content_showroom-right {
            width: 100%;
            margin: auto; } }
        .container-static_page .simple-block_text .showroom-right .content_showroom-right .content_showroom-right-pic {
          width: 40%;
          float: left; }
        .container-static_page .simple-block_text .showroom-right .content_showroom-right .content_showroom-right-text {
          width: 60%;
          float: right; }
          .container-static_page .simple-block_text .showroom-right .content_showroom-right .content_showroom-right-text p {
            width: 80%;
            margin-left: 0; }
  .container-static_page .container-form {
    width: 60%;
    margin: auto;
    margin-top: 20px; }
    @media (max-width: 768px) {
      .container-static_page .container-form {
        width: 90%; } }
    .container-static_page .container-form input {
      border-radius: 6px; }
  .container-static_page .page-store__map {
    width: 60%;
    margin: auto;
    margin-bottom: 46px;
    text-align: center; }
    @media (max-width: 768px) {
      .container-static_page .page-store__map {
        width: 100%;
        overflow: hidden; } }
    .container-static_page .page-store__map .page-store__map-iframe #map {
      min-height: 400px;
      border-radius: 10px; }
    .container-static_page .page-store__map iframe {
      width: 100%;
      height: 400px;
      border-radius: 20px;
      border: 1px solid #ccc; }

.fieldset > .field:not(.choice) > .label {
  text-align: left; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYi9jc3Mvc3R5bGVzLmNzcyIsIndlYi9jc3MvYmFzZS9fZm9udHMuc2NzcyIsIndlYi9jc3MvdXRpbGl0aWVzL19ub3JtYWxpemUuc2NzcyIsIndlYi9jc3MvdXRpbGl0aWVzL191dGlsaXRpZXMuc2NzcyIsIndlYi9jc3MvdXRpbGl0aWVzL192YXJpYWJsZXMuc2NzcyIsIndlYi9jc3MvYmFzZS9fY29yZS5zY3NzIiwid2ViL2Nzcy9iYXNlL19jb2xvcnMuc2NzcyIsIndlYi9jc3MvYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwid2ViL2Nzcy9iYXNlL19idXR0b25zLnNjc3MiLCJ3ZWIvY3NzL2Jhc2UvX2hlYWRpbmdzLnNjc3MiLCJ3ZWIvY3NzL2NvbXBvbmVudHMvX21lc3NhZ2Uuc2NzcyIsIndlYi9jc3MvY29tcG9uZW50cy9fdGFibGVzLnNjc3MiLCJ3ZWIvY3NzL2NvbXBvbmVudHMvX2Zvcm1zLnNjc3MiLCJ3ZWIvY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIndlYi9jc3MvY29tcG9uZW50cy9fY2Fyb3VzZWwuc2NzcyIsIndlYi9jc3MvY29tcG9uZW50cy9fbW9kYWwuc2NzcyIsIndlYi9jc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwid2ViL2Nzcy9jb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWIvY3NzL2NvbXBvbmVudHMvX2Jsb2Nrcy5zY3NzIiwid2ViL2Nzcy9jb21wb25lbnRzL19jaGFwdGVycy5zY3NzIiwid2ViL2Nzcy9jb21wb25lbnRzL19uYXZpZ2F0aW9uLnNjc3MiLCJ3ZWIvY3NzL2NvbXBvbmVudHMvX3Byb2R1Y3RzLXByZXZpZXcuc2NzcyIsIndlYi9jc3MvY29tcG9uZW50cy9fcmV0YWlsZXJzLnNjc3MiLCJ3ZWIvY3NzL2NvbXBvbmVudHMvX21lY2FiYW0tc2VydmljZXMuc2NzcyIsIndlYi9jc3MvY29tcG9uZW50cy9fZW50ZXJwcmlzZS5zY3NzIiwid2ViL2Nzcy9jb21wb25lbnRzL19zaWRlYmFyLnNjc3MiLCJ3ZWIvY3NzL2NvbXBvbmVudHMvX3ZlbnVzLWJyYW5kcy5zY3NzIiwid2ViL2Nzcy9jb21wb25lbnRzL19hZHZhbmNlZC1zZWFyY2guc2NzcyIsIndlYi9jc3MvY29tcG9uZW50cy9fcXVvdGUuc2NzcyIsIndlYi9jc3MvbGF5b3V0L19sYXlvdXQuc2NzcyIsIndlYi9jc3MvbGF5b3V0L19mb290ZXIuc2NzcyIsIndlYi9jc3MvbGF5b3V0L19oZWFkZXIuc2NzcyIsIndlYi9jc3MvbGF5b3V0L19wYWdlLnNjc3MiLCJ3ZWIvY3NzL3BhZ2VzL19ob21lLWJhc2Uuc2NzcyIsIndlYi9jc3MvcGFnZXMvX2hvbWUtY292ZXIuc2NzcyIsIndlYi9jc3MvcGFnZXMvX2NhdGFsb2cuc2NzcyIsIndlYi9jc3MvcGFnZXMvX3Byb2R1Y3Quc2NzcyIsIndlYi9jc3MvcGFnZXMvX3N0YXRpYy1wYWdlcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ29CakIsa0ZBQVk7QUNWWjtFQUNJLGtCQUFpQjtFQUNqQiwyQkFBMEI7RUFDMUIsK0JBQThCLEVBRWpDOztBQU9EO0VBQ0ksVUFBUyxFQUNaOztBQUdEOzs7Ozs7RUFNSSxlQUFjLEVBQ2pCOztBQVFEOzs7RUFHSSxlQUFjLEVBQ2pCOztBQUlEO0VBQ0ksZ0NBQXVCO1VBQXZCLHdCQUF1QjtFQUN2QixVQUFTO0VBQ1Qsa0JBQWlCLEVBQ3BCOztBQUlEO0VBQ0ksa0NBQWlDO0VBQ2pDLGVBQWMsRUFDakI7O0FBUUQ7RUFDSSw4QkFBNkI7RUFDN0Isc0NBQXFDLEVBQ3hDOztBQUlEO0VBQ0ksb0JBQW1CO0VBQ25CLDJCQUEwQjtFQUMxQiwwQ0FBaUM7VUFBakMsa0NBQWlDLEVBQ3BDOztBQUdEOztFQUVJLHFCQUFvQixFQUN2Qjs7QUFHRDs7RUFFSSxvQkFBbUIsRUFDdEI7O0FBSUQ7OztFQUdJLGtDQUFpQztFQUNqQyxlQUFjLEVBQ2pCOztBQUdEO0VBQ0ksbUJBQWtCLEVBQ3JCOztBQUdEO0VBQ0ksdUJBQXNC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a0IsRUFvQnJCO0lBbEJHO01BbGFSO1FBbWFZLFlBQVc7UUFDWCxpQkFBZ0IsRUFnQnZCLEVBQUE7SUFwYkw7TUF5YWdCLGtCQUFpQjtNQUNqQixvQkFBbUIsRUFDdEI7SUEzYWI7TUErYVksWUFBVztNQUNYLGNBQWE7TUFDYixvQkFBbUI7TUFDbkIsdUJBQXNCLEVBQ3pCOztBQU9UO0VBQ0ksaUJBQWdCLEVBQ25CIiwiZmlsZSI6IndlYi9jc3Mvc3R5bGVzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzozMDAsNDAwLDUwMCw3MDAsOTAwXCIpO1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgfVxuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IH1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgbWFyZ2luOiAwOyB9XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyB9XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG5cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7IH1cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgZm9udDogaW5oZXJpdDsgfVxuXG5kZXRhaWxzLFxubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5odG1sOm5vdCgubm8tanMpIC5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgaHRtbDpub3QoLm5vLWpzKSAuY29sbGFwc2UuaW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgdmlzaWJpbGl0eTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjM1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7IH1cblxuLmxvYWRpbmctbWFzayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG4gIHotaW5kZXg6IDEwOyB9XG4gIC5sb2FkaW5nLW1hc2s6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIG1hcmdpbjogLTI1cHggMCAwIC0yNXB4O1xuICAgIGJvcmRlcjogNHB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjtcbiAgICBhbmltYXRpb246IHNwaW4gMXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgei1pbmRleDogMTsgfVxuICAubG9hZGluZy1tYXNrIC5sb2FkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgICBib3JkZXI6IDA7IH1cblxuLnRvZG8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnRvZG86OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAwLCAwLCAwLjEpO1xuICAgIHotaW5kZXg6IC0xOyB9XG4gIC50b2RvOjphZnRlciB7XG4gICAgY29udGVudDogXCJAdG9kb1wiICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHJlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMCwgMCwgMC4xKTtcbiAgICB6LWluZGV4OiAyMDA7IH1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5odG1sIHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiA2Mi41JTtcbiAgZm9udC1zaXplOiBjYWxjKDFlbSAqIC42MjUpO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGh0bWwge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbmEge1xuICBjb2xvcjogd2hpdGU7IH1cblxuYTp2aXNpdGVkIHtcbiAgY29sb3I6IHdoaXRlOyB9XG5cbmE6aG92ZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG51bCA+IGxpLCBvbCA+IGxpIHtcbiAgbWFyZ2luOiAwOyB9XG4gIHVsID4gbGk6aG92ZXIsIG9sID4gbGk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbnVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbmltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5zdmdbY2xhc3NePVwiaWNvblwiXSB7XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTAuMTVlbTtcbiAgZmlsbDogY3VycmVudENvbG9yOyB9XG5cbi5tb2JpbGUge1xuICBoZWlnaHQ6IGF1dG87IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLm1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAgIC5tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBDb2xvcnNcbm5hbWU6IDAwX0NvbG9yc1xuY2F0ZWdvcnk6IENvbG9yc1xuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImNvbG9yc1wiPlxuICAgIDxkaXYgY2xhc3M9XCJiZ2NvbG9yLXByaW1hcnlcIj5cbiAgICAgICAgPHA+UHJpbWFyeSBjb2xvcjwvcD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYmdjb2xvci1wcmltYXJ5LWxpZ2h0XCI+XG4gICAgICAgIDxwPlByaW1hcnkgbGlnaHQgY29sb3I8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJnY29sb3Itc2Vjb25kYXJ5XCI+XG4gICAgICAgIDxwPlNlY29uZGFyeSBjb2xvcjwvcD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYmdjb2xvci10ZXJ0aWFyeVwiPlxuICAgICAgICA8cD5UZXJ0aWFyeSBjb2xvcjwvcD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYmdjb2xvci1xdWF0ZXJuYXJ5XCI+XG4gICAgICAgIDxwPlF1YXRlcm5hcnkgY29sb3I8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJnY29sb3ItcXVpbmFyeVwiPlxuICAgICAgICA8cD5RdWluYXJ5IGNvbG9yPC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJiZ2NvbG9yLXNlbmFyeVwiPlxuICAgICAgICA8cD5TZW5hcnkgY29sb3I8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJnY29sb3ItaW5mb1wiPlxuICAgICAgICA8cD5JbmZvIGNvbG9yPC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJiZ2NvbG9yLXN1Y2Nlc3NcIj5cbiAgICAgICAgPHA+U3VjY2VzcyBjb2xvcjwvcD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYmdjb2xvci13YXJuaW5nXCI+XG4gICAgICAgIDxwPldhcm5pbmcgY29sb3I8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJnY29sb3ItZXJyb3JcIj5cbiAgICAgICAgPHA+RXJyb3IgY29sb3I8L3A+XG4gICAgPC9kaXY+XG48L2Rpdj5cbmBgYFxuXG4qL1xuLmNvbG9ycyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNvbG9ycyA+IGRpdiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogODBweDtcbiAgaGVpZ2h0OiA4MHB4O1xuICBtYXJnaW46IDAgMjVweCA3NXB4IDA7IH1cbiAgLmNvbG9ycyA+IGRpdiBwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJvdHRvbTogLTYwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5jb2xvcnMgPiBkaXYuYmdjb2xvci1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjRUYzMzQwOyB9XG4gICAgLmNvbG9ycyA+IGRpdi5iZ2NvbG9yLXByaW1hcnk6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIiNFRjMzNDBcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgbGVmdDogMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5jb2xvcnMgPiBkaXYuYmdjb2xvci1wcmltYXJ5LWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZWQ0MDRjOyB9XG4gICAgLmNvbG9ycyA+IGRpdi5iZ2NvbG9yLXByaW1hcnktbGlnaHQ6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIiNlZDQwNGNcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgbGVmdDogMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5jb2xvcnMgPiBkaXYuYmdjb2xvci1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQ6ICMyRDJEMkE7IH1cbiAgICAuY29sb3JzID4gZGl2LmJnY29sb3Itc2Vjb25kYXJ5OjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIjMkQyRDJBXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGxlZnQ6IDBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuY29sb3JzID4gZGl2LmJnY29sb3ItdGVydGlhcnkge1xuICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7IH1cbiAgICAuY29sb3JzID4gZGl2LmJnY29sb3ItdGVydGlhcnk6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIiNGRkZGRkZcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgbGVmdDogMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5jb2xvcnMgPiBkaXYuYmdjb2xvci1xdWF0ZXJuYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjN0M3QzdDOyB9XG4gICAgLmNvbG9ycyA+IGRpdi5iZ2NvbG9yLXF1YXRlcm5hcnk6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIiM3QzdDN0NcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgbGVmdDogMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5jb2xvcnMgPiBkaXYuYmdjb2xvci1xdWluYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjZWUzODVjOyB9XG4gICAgLmNvbG9ycyA+IGRpdi5iZ2NvbG9yLXF1aW5hcnk6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIiNlZTM4NWNcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgbGVmdDogMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5jb2xvcnMgPiBkaXYuYmdjb2xvci1zZW5hcnkge1xuICAgIGJhY2tncm91bmQ6ICMyODk4Zjg7IH1cbiAgICAuY29sb3JzID4gZGl2LmJnY29sb3Itc2VuYXJ5OjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIjMjg5OGY4XCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGxlZnQ6IDBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuY29sb3JzID4gZGl2LmJnY29sb3ItaW5mbyB7XG4gICAgYmFja2dyb3VuZDogIzViYzBkZTsgfVxuICAgIC5jb2xvcnMgPiBkaXYuYmdjb2xvci1pbmZvOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIjNWJjMGRlXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGxlZnQ6IDBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuY29sb3JzID4gZGl2LmJnY29sb3Itc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzVjYjg1YzsgfVxuICAgIC5jb2xvcnMgPiBkaXYuYmdjb2xvci1zdWNjZXNzOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIjNWNiODVjXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGxlZnQ6IDBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuY29sb3JzID4gZGl2LmJnY29sb3Itd2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2YwYWQ0ZTsgfVxuICAgIC5jb2xvcnMgPiBkaXYuYmdjb2xvci13YXJuaW5nOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIjZjBhZDRlXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGxlZnQ6IDBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuY29sb3JzID4gZGl2LmJnY29sb3ItZXJyb3Ige1xuICAgIGJhY2tncm91bmQ6ICNkOTUzNGY7IH1cbiAgICAuY29sb3JzID4gZGl2LmJnY29sb3ItZXJyb3I6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIiNkOTUzNGZcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgbGVmdDogMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBIZWFkaW5nc1xubmFtZTogMDFfSGVhZGluZ3NcbmNhdGVnb3J5OiBUZXh0XG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG48aDE+aDEuIEhlYWRpbmc8L2gxPlxuPGgyPmgyLiBIZWFkaW5nPC9oMj5cbjxoMz5oMy4gSGVhZGluZzwvaDM+XG48aDQ+aDQuIEhlYWRpbmc8L2g0PlxuPGg1Pmg1LiBIZWFkaW5nPC9oNT5cbjxoNj5oNi4gSGVhZGluZzwvaDY+XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBUZXh0c1xubmFtZTogVGV4dHNcbmNhdGVnb3J5OiBUZXh0XG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG48cD5OdWxsYW0gcXVpcyByaXN1cyBlZ2V0IHVybmEgbW9sbGlzIG9ybmFyZSB2ZWwgZXUgbGVvLiBDdW0gc29jaWlzIG5hdG9xdWUgcGVuYXRpYnVzIGV0IG1hZ25pcyBkaXMgcGFydHVyaWVudCBtb250ZXMsIG5hc2NldHVyIHJpZGljdWx1cyBtdXMuIE51bGxhbSBpZCBkb2xvciBpZCBuaWJoIHVsdHJpY2llcyB2ZWhpY3VsYS48L3A+XG48cD5DdW0gc29jaWlzIG5hdG9xdWUgcGVuYXRpYnVzIGV0IG1hZ25pcyBkaXMgcGFydHVyaWVudCBtb250ZXMsIDxhIGhyZWY9XCIjXCI+bmFzY2V0dXIgcmlkaWN1bHVzIG11czwvYT4uIERvbmVjIHVsbGFtY29ycGVyIG51bGxhIG5vbiBtZXR1cyBhdWN0b3IgZnJpbmdpbGxhLiBEdWlzIG1vbGxpcywgZXN0IG5vbiBjb21tb2RvIGx1Y3R1cywgbmlzaSBlcmF0IHBvcnR0aXRvciBsaWd1bGEsIGVnZXQgbGFjaW5pYSBvZGlvIHNlbSBuZWMgZWxpdC4gRG9uZWMgPHN0cm9uZz51bGxhbWNvcnBlciBudWxsYTwvc3Ryb25nPiBub24gbWV0dXMgYXVjdG9yIGZyaW5naWxsYS48L3A+XG48cD5NYWVjZW5hcyBzZWQgZGlhbSBlZ2V0IHJpc3VzIHZhcml1cyBibGFuZGl0IHNpdCBhbWV0IG5vbiBtYWduYS4gRG9uZWMgaWQgZWxpdCBub24gbWkgcG9ydGEgPGVtPmdyYXZpZGEgYXQgZWdldCBtZXR1czwvZW0+LiBEdWlzIG1vbGxpcywgZXN0IG5vbiBjb21tb2RvIGx1Y3R1cywgbmlzaSBlcmF0IHBvcnR0aXRvciBsaWd1bGEsIGVnZXQgbGFjaW5pYSBvZGlvIHNlbSBuZWMgZWxpdC48L3A+XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBMaXN0c1xubmFtZTogTGlzdHNcbmNhdGVnb3J5OiBUZXh0XG4tLS1cblxuQSBsaXN0IG9mIGl0ZW1zLCB1bm9yZGVyZWQgb3Igb3JkZXJlZFxuXG5gYGBodG1sX2V4YW1wbGVcbjx1bD5cbiAgICA8bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPlxuICAgIDxsaT5Db25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQ8L2xpPlxuICAgIDxsaT5OdWxsYSB2b2x1dHBhdCBhbGlxdWFtIHZlbGl0XG4gICAgICAgIDx1bD5cbiAgICAgICAgICAgIDxsaT5QaGFzZWxsdXMgaWFjdWxpcyBuZXF1ZTwvbGk+XG4gICAgICAgICAgICA8bGk+UHVydXMgc29kYWxlcyB1bHRyaWNpZXM8L2xpPlxuICAgICAgICA8L3VsPlxuICAgIDwvbGk+XG4gICAgPGxpPkZhdWNpYnVzIHBvcnRhIGxhY3VzIGZyaW5naWxsYSB2ZWw8L2xpPlxuICAgIDxsaT5BZW5lYW4gc2l0IGFtZXQgZXJhdCBudW5jPC9saT5cbjwvdWw+XG5cbjxvbD5cbiAgICA8bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPlxuICAgIDxsaT5Db25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQ8L2xpPlxuICAgIDxsaT5OdWxsYSB2b2x1dHBhdCBhbGlxdWFtIHZlbGl0PC9saT5cbiAgICA8bGk+UGhhc2VsbHVzIGlhY3VsaXMgbmVxdWU8L2xpPlxuICAgIDxsaT5QdXJ1cyBzb2RhbGVzIHVsdHJpY2llczwvbGk+XG4gICAgPGxpPkZhdWNpYnVzIHBvcnRhIGxhY3VzIGZyaW5naWxsYSB2ZWw8L2xpPlxuICAgIDxsaT5BZW5lYW4gc2l0IGFtZXQgZXJhdCBudW5jPC9saT5cbjwvb2w+XG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogTGlua3Ncbm5hbWU6IExpbmtzXG5jYXRlZ29yeTogVGV4dFxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbjxhPkV4ZW1wbGUgZGUgbGllbjwvYT5cbmBgYFxuXG5cbiovXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7IH1cblxuaDEsIGgyLCBoMyB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogNC4ycmVtOyB9XG5cbmgyIHtcbiAgZm9udC1zaXplOiAzLjRyZW07IH1cblxuaDMge1xuICBmb250LXNpemU6IDIuMnJlbTsgfVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMnJlbTsgfVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMS44cmVtOyB9XG5cbmg2IHtcbiAgZm9udC1zaXplOiAxLjdyZW07IH1cblxucCB7XG4gIG1hcmdpbjogMCAwIDFyZW07IH1cblxudWwsXG5vbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICB1bCB1bCxcbiAgdWwgb2wsXG4gIG9sIHVsLFxuICBvbCBvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzMzMzMzMztcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjRUYzMzQwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNFRjMzNDA7IH0gfVxuXG4vKlxuXG4vLyBTb3VyY2UgU2FucyBQcm8gTGlnaHRcbkBmb250LWZhY2Uge1xuICAgIEBpbmNsdWRlIGZvbnQtZmFjZSgnU291cmNlIFNhbnMgUHJvJywgJ3NvdXJjZXNhbnNwcm8nLCAnc291cmNlc2Fuc3Byby1saWdodC13ZWJmb250JywgMzAwKTtcbn1cblxuLy8gU291cmNlIFNhbnMgUHJvIFJlZ3VsYXJcbkBmb250LWZhY2Uge1xuICAgIEBpbmNsdWRlIGZvbnQtZmFjZSgnU291cmNlIFNhbnMgUHJvJywgJ3NvdXJjZXNhbnNwcm8nLCAnc291cmNlc2Fuc3Byby1yZWd1bGFyLXdlYmZvbnQnLCA0MDApO1xufVxuXG4vLyBTb3VyY2UgU2FucyBQcm8gU2VtaS1Cb2xkXG5AZm9udC1mYWNlIHtcbiAgICBAaW5jbHVkZSBmb250LWZhY2UoJ1NvdXJjZSBTYW5zIFBybycsICdzb3VyY2VzYW5zcHJvJywgJ3NvdXJjZXNhbnNwcm8tc2VtaWJvbGQtd2ViZm9udCcsIDYwMCk7XG59XG5cbi8vIFNvdXJjZSBTYW5zIFBybyBCb2xkXG5AZm9udC1mYWNlIHtcbiAgICBAaW5jbHVkZSBmb250LWZhY2UoJ1NvdXJjZSBTYW5zIFBybycsICdzb3VyY2VzYW5zcHJvJywgJ3NvdXJjZXNhbnNwcm8tYm9sZC13ZWJmb250JywgNzAwKTtcbn1cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBCdXR0b25zXG5uYW1lOiAwM19CdXR0b25zXG5jYXRlZ29yeTogQnV0dG9uc1xuLS0tXG5UaGUgYGJ0bmAgY2xhc3NlcyBhcmUgZGVzaWduZWQgdG8gYmUgdXNlZCB3aXRoIHRoZSBgPGJ1dHRvbj5gIGVsZW1lbnQuIEhvd2V2ZXIsIHlvdSBjYW4gYWxzbyB1c2UgdGhlc2UgY2xhc3NlcyBvbiBgPGE+YCBvciBgPGlucHV0PmAgZWxlbWVudHMgKHRob3VnaCBzb21lIGJyb3dzZXJzIG1heSBhcHBseSBhIHNsaWdodGx5IGRpZmZlcmVudCByZW5kZXJpbmcpLlxuXG5XaGVuIHVzaW5nIGJ1dHRvbiBjbGFzc2VzIG9uIGA8YT5gIGVsZW1lbnRzIHRoYXQgYXJlIHVzZWQgdG8gdHJpZ2dlciBpbi1wYWdlIGZ1bmN0aW9uYWxpdHkgKGxpa2UgY29sbGFwc2luZyBjb250ZW50KSwgcmF0aGVyIHRoYW4gbGlua2luZyB0byBuZXcgcGFnZXMgb3Igc2VjdGlvbnMgd2l0aGluIHRoZSBjdXJyZW50IHBhZ2UsIHRoZXNlIGxpbmtzIHNob3VsZCBiZSBnaXZlbiBhIGByb2xlPVwiYnV0dG9uXCJgIHRvIGFwcHJvcHJpYXRlbHkgY29udmV5IHRoZWlyIHB1cnBvc2UgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llcyBzdWNoIGFzIHNjcmVlbiByZWFkZXJzLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJidG4gYnRuLS1kZWZhdWx0XCIgcm9sZT1cImJ1dHRvblwiPkxpbms8L2E+XG5cbjxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi0tZGVmYXVsdFwiPkJ1dHRvbjwvYnV0dG9uPlxuXG48aW5wdXQgdHlwZT1cImJ1dHRvblwiIHZhbHVlPVwiSW5wdXRcIiBjbGFzcz1cImJ0biBidG4tLWRlZmF1bHRcIj5cblxuPGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIlN1Ym1pdFwiIGNsYXNzPVwiYnRuIGJ0bi0tZGVmYXVsdFwiPlxuXG48aW5wdXQgdHlwZT1cInJlc2V0XCIgdmFsdWU9XCJSZXNldFwiIGNsYXNzPVwiYnRuIGJ0bi0tZGVmYXVsdFwiPlxuYGBgXG5cbiMjIEJ1dHRvbiBzdHlsZXNcblxuVGhlcmUgYXJlIHRocmVlIHN0eWxlcyBmb3IgYnV0dG9uczogZGVmYXVsdCwgcHJpbWFyeSBhbmQgc2Vjb25kYXJ5LiBTaW1wbHkgYWRkIHRoZSBzdHlsZSBtb2RpZmllciBjbGFzcyBmb3IgdGhlIGRlc2lyZWQgc3R5bGUuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLS1kZWZhdWx0XCI+QnV0dG9uIGRlZmF1bHQ8L2J1dHRvbj5cblxuPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLS1wcmltYXJ5XCI+QnV0dG9uIHByaW1hcnk8L2J1dHRvbj5cblxuPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLS1zZWNvbmRhcnlcIj5CdXR0b24gc2Vjb25kYXJ5PC9idXR0b24+XG5cbjxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi0tdGVydGlhcnlcIj5CdXR0b24gdGVydGlhcnk8L2J1dHRvbj5cblxuPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLS1xdWF0ZXJuYXJ5XCI+QnV0dG9uIHF1YXRlcm5hcnk8L2J1dHRvbj5cbmBgYFxuXG4jIyBCdXR0b24gc2l6ZXNcblxuVGhlcmUgYXJlIHRocmVlIDMgc2l6ZXMgZm9yIGJ1dHRvbnM6IExhcmdlLCBtZWRpdW0gKGRlZmF1bHQpIGFuZCBzbWFsbC4gU2ltcGx5IGFkZCB0aGUgc2l6ZSBtb2RpZmllciBjbGFzcyBmb3IgdGhlIGRlc2lyZWQgc2l6ZS5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tLXByaW1hcnkgYnRuLS1sZ1wiPkJ1dHRvbiBsYXJnZTwvYnV0dG9uPlxuXG48YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tLXByaW1hcnkgYnRuLS1zbVwiPkJ1dHRvbiBzbWFsbDwvYnV0dG9uPlxuYGBgXG5cbiMjIEJ1dHRvbiBkaXNhYmxlZCBzdGF0ZVxuXG5NYWtlIGJ1dHRvbnMgbG9vayBpbmFjdGl2ZSBieSBhZGRpbmcgdGhlIGBkaXNhYmxlZGAgYm9vbGVhbiBhdHRyaWJ1dGUgdG8gYW55IGA8YnV0dG9uPmAgZWxlbWVudC5cblxuYGBgaHRtbF9leGFtcGxlXG48YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tLXByaW1hcnlcIiBkaXNhYmxlZD5EaXNhYmxlZCBidXR0b248L2J1dHRvbj5cbmBgYFxuXG5EaXNhYmxlZCBidXR0b25zIHVzaW5nIHRoZSBgPGE+YCBlbGVtZW50IGJlaGF2ZSBhIGJpdCBkaWZmZXJlbnQ6XG4qIGA8YT5gIGRvbuKAmXQgc3VwcG9ydCB0aGUgZGlzYWJsZWQgYXR0cmlidXRlLCBzbyB5b3UgbXVzdCBhZGQgdGhlIGBkaXNhYmxlZGAgY2xhc3MgdG8gbWFrZSBpdCB2aXN1YWxseSBhcHBlYXIgZGlzYWJsZWQuXG4qIFNvbWUgZnV0dXJlLWZyaWVuZGx5IHN0eWxlcyBhcmUgaW5jbHVkZWQgdG8gZGlzYWJsZSBhbGwgcG9pbnRlci1ldmVudHMgb24gYW5jaG9yIGJ1dHRvbnMuIEluIGJyb3dzZXJzIHdoaWNoIHN1cHBvcnQgdGhhdCBwcm9wZXJ0eSwgeW91IHdvbuKAmXQgc2VlIHRoZSBkaXNhYmxlZCBjdXJzb3IgYXQgYWxsLlxuKiBEaXNhYmxlZCBidXR0b25zIHNob3VsZCBpbmNsdWRlIHRoZSBgYXJpYS1kaXNhYmxlZD1cInRydWVcImAgYXR0cmlidXRlIHRvIGluZGljYXRlIHRoZSBzdGF0ZSBvZiB0aGUgZWxlbWVudCB0byBhc3Npc3RpdmUgdGVjaG5vbG9naWVzLlxuXG5gYGBodG1sX2V4YW1wbGVcbjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJidG4gYnRuLS1wcmltYXJ5IGRpc2FibGVkXCIgcm9sZT1cImJ1dHRvblwiIGFyaWEtZGlzYWJsZWQ9XCJ0cnVlXCI+RGlzYWJsZWQgbGluazwvYT5cbmBgYFxuXG5JbiBhZGRpdGlvbiwgZXZlbiBpbiBicm93c2VycyB0aGF0IGRvIHN1cHBvcnQgYHBvaW50ZXItZXZlbnRzOiBub25lYCwga2V5Ym9hcmQgbmF2aWdhdGlvbiByZW1haW5zIHVuYWZmZWN0ZWQsIG1lYW5pbmcgdGhhdCBzaWdodGVkIGtleWJvYXJkIHVzZXJzIGFuZCB1c2VycyBvZiBhc3Npc3RpdmUgdGVjaG5vbG9naWVzIHdpbGwgc3RpbGwgYmUgYWJsZSB0byBhY3RpdmF0ZSB0aGVzZSBsaW5rcy4gU28gdG8gYmUgc2FmZSwgYWRkIGEgYHRhYmluZGV4PVwiLTFcImAgYXR0cmlidXRlIG9uIHRoZXNlIGxpbmtzICh0byBwcmV2ZW50IHRoZW0gZnJvbSByZWNlaXZpbmcga2V5Ym9hcmQgZm9jdXMpIGFuZCB1c2UgY3VzdG9tIEphdmFTY3JpcHQgdG8gZGlzYWJsZSB0aGVpciBmdW5jdGlvbmFsaXR5LlxuXG4jIyBCdXR0b24gbGlua1xuXG5JbiBwYXJ0aWN1bGFyIGNhc2VzLCB5b3UgbWF5IHdhbnQgdG8gdXNlIGA8YnV0dG9uPmAgdGFnIGJ1dCBoYXZlIHRoZSBkaXNwbGF5IGFuZCBiZWhhdmlvciBvZiBhIGNsYXNzaWMgbGluay4gVG8gZG8gdGhhdCwgYWRkIHRoZSBgYnRuLS1saW5rYCBtb2RpZmllciBjbGFzcy5cblxuYGBgaHRtbF9leGFtcGxlXG48cD5NYWVjZW5hcyBzZWQgZGlhbSBlZ2V0IHJpc3VzIHZhcml1cyA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tLWxpbmtcIj5ibGFuZGl0PC9idXR0b24+IHNpdCBhbWV0IG5vbiBtYWduYS48L3A+XG5gYGBcbiovXG4uYnRuLCAubW9kYWwtZm9vdGVyIC5hY3Rpb24tcHJpbWFyeSxcbi5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmc6IDEycHggNDBweDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dDsgfVxuICAuYnRuOmhvdmVyLCAubW9kYWwtZm9vdGVyIC5hY3Rpb24tcHJpbWFyeTpob3ZlcixcbiAgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXNlY29uZGFyeTpob3ZlciwgLmJ0bjpmb2N1cywgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXByaW1hcnk6Zm9jdXMsXG4gIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnk6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5idG46YWN0aXZlLCAubW9kYWwtZm9vdGVyIC5hY3Rpb24tcHJpbWFyeTphY3RpdmUsXG4gIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnk6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsgfVxuICAuYnRuLmRpc2FibGVkLCAubW9kYWwtZm9vdGVyIC5kaXNhYmxlZC5hY3Rpb24tcHJpbWFyeSxcbiAgLm1vZGFsLWZvb3RlciAuZGlzYWJsZWQuYWN0aW9uLXNlY29uZGFyeSwgLmJ0bltkaXNhYmxlZF0sIC5tb2RhbC1mb290ZXIgW2Rpc2FibGVkXS5hY3Rpb24tcHJpbWFyeSxcbiAgLm1vZGFsLWZvb3RlciBbZGlzYWJsZWRdLmFjdGlvbi1zZWNvbmRhcnksXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLm1vZGFsLWZvb3RlciAuYWN0aW9uLXByaW1hcnksIC5tb2RhbC1mb290ZXJcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5hY3Rpb24tcHJpbWFyeSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnksXG4gIC5tb2RhbC1mb290ZXJcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5hY3Rpb24tc2Vjb25kYXJ5IHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIG9wYWNpdHk6IC41O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLmJ0biAuaWNvbiwgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXByaW1hcnkgLmljb24sXG4gIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnkgLmljb24ge1xuICAgIHdpZHRoOiAxLjVlbTtcbiAgICBoZWlnaHQ6IDEuNWVtO1xuICAgIG1hcmdpbjogLTVweCA4cHggLTVweCAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuLmJ0bi0tZGVmYXVsdCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUYzMzQwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5idG4tLWRlZmF1bHQ6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4tLWRlZmF1bHQ6aG92ZXIsIC5idG4tLWRlZmF1bHQ6Zm9jdXMsIC5idG4tLWRlZmF1bHQ6YWN0aXZlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWYzMzVmOyB9XG4gIC5idG4tLWRlZmF1bHQuZGlzYWJsZWQsIC5idG4tLWRlZmF1bHQuZGlzYWJsZWQ6aG92ZXIsIC5idG4tLWRlZmF1bHQuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tLWRlZmF1bHQuZGlzYWJsZWQ6YWN0aXZlLCAuYnRuLS1kZWZhdWx0W2Rpc2FibGVkXSwgLmJ0bi0tZGVmYXVsdFtkaXNhYmxlZF06aG92ZXIsIC5idG4tLWRlZmF1bHRbZGlzYWJsZWRdOmZvY3VzLCAuYnRuLS1kZWZhdWx0W2Rpc2FibGVkXTphY3RpdmUsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLS1kZWZhdWx0LFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi0tZGVmYXVsdDpob3ZlcixcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tLWRlZmF1bHQ6Zm9jdXMsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLS1kZWZhdWx0OmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VGMzM0MDsgfVxuXG4uYnRuLS1wcmltYXJ5LCAubW9kYWwtZm9vdGVyIC5hY3Rpb24tcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUYzMzQwOyB9XG4gIC5idG4tLXByaW1hcnk6YWN0aXZlLCAubW9kYWwtZm9vdGVyIC5hY3Rpb24tcHJpbWFyeTphY3RpdmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLmJ0bi0tcHJpbWFyeTpob3ZlciwgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXByaW1hcnk6aG92ZXIsIC5idG4tLXByaW1hcnk6Zm9jdXMsIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1wcmltYXJ5OmZvY3VzLCAuYnRuLS1wcmltYXJ5OmFjdGl2ZSwgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXByaW1hcnk6YWN0aXZlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjM2MjZjOyB9XG4gIC5idG4tLXByaW1hcnkuZGlzYWJsZWQsIC5tb2RhbC1mb290ZXIgLmRpc2FibGVkLmFjdGlvbi1wcmltYXJ5LCAuYnRuLS1wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAubW9kYWwtZm9vdGVyIC5kaXNhYmxlZC5hY3Rpb24tcHJpbWFyeTpob3ZlciwgLmJ0bi0tcHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLm1vZGFsLWZvb3RlciAuZGlzYWJsZWQuYWN0aW9uLXByaW1hcnk6Zm9jdXMsIC5idG4tLXByaW1hcnkuZGlzYWJsZWQ6YWN0aXZlLCAubW9kYWwtZm9vdGVyIC5kaXNhYmxlZC5hY3Rpb24tcHJpbWFyeTphY3RpdmUsIC5idG4tLXByaW1hcnlbZGlzYWJsZWRdLCAubW9kYWwtZm9vdGVyIFtkaXNhYmxlZF0uYWN0aW9uLXByaW1hcnksIC5idG4tLXByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAubW9kYWwtZm9vdGVyIFtkaXNhYmxlZF0uYWN0aW9uLXByaW1hcnk6aG92ZXIsIC5idG4tLXByaW1hcnlbZGlzYWJsZWRdOmZvY3VzLCAubW9kYWwtZm9vdGVyIFtkaXNhYmxlZF0uYWN0aW9uLXByaW1hcnk6Zm9jdXMsIC5idG4tLXByaW1hcnlbZGlzYWJsZWRdOmFjdGl2ZSwgLm1vZGFsLWZvb3RlciBbZGlzYWJsZWRdLmFjdGlvbi1wcmltYXJ5OmFjdGl2ZSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tLXByaW1hcnksXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAubW9kYWwtZm9vdGVyIC5hY3Rpb24tcHJpbWFyeSwgLm1vZGFsLWZvb3RlclxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmFjdGlvbi1wcmltYXJ5LFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi0tcHJpbWFyeTpob3ZlcixcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1wcmltYXJ5OmhvdmVyLCAubW9kYWwtZm9vdGVyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYWN0aW9uLXByaW1hcnk6aG92ZXIsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLS1wcmltYXJ5OmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLm1vZGFsLWZvb3RlciAuYWN0aW9uLXByaW1hcnk6Zm9jdXMsIC5tb2RhbC1mb290ZXJcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5hY3Rpb24tcHJpbWFyeTpmb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tLXByaW1hcnk6YWN0aXZlLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLm1vZGFsLWZvb3RlciAuYWN0aW9uLXByaW1hcnk6YWN0aXZlLCAubW9kYWwtZm9vdGVyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYWN0aW9uLXByaW1hcnk6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUYzMzQwOyB9XG5cbi5idG4tLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjRUYzMzQwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCAycHggI0VGMzM0MDsgfVxuICAuYnRuLS1zZWNvbmRhcnk6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4tLXNlY29uZGFyeTpob3ZlciwgLmJ0bi0tc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLS1zZWNvbmRhcnk6YWN0aXZlIHtcbiAgICBjb2xvcjogI0VGMzM0MDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnRuLS1zZWNvbmRhcnkuZGlzYWJsZWQsIC5idG4tLXNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ0bi0tc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnRuLS1zZWNvbmRhcnkuZGlzYWJsZWQ6YWN0aXZlLCAuYnRuLS1zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnRuLS1zZWNvbmRhcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnRuLS1zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzLCAuYnRuLS1zZWNvbmRhcnlbZGlzYWJsZWRdOmFjdGl2ZSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tLXNlY29uZGFyeSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tLXNlY29uZGFyeTpob3ZlcixcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tLXNlY29uZGFyeTpmb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tLXNlY29uZGFyeTphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5idG4tLXRlcnRpYXJ5IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRjMzNDA7XG4gIGJvcmRlcjogc29saWQgMnB4ICNGRkZGRkY7IH1cbiAgLmJ0bi0tdGVydGlhcnk6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4tLXRlcnRpYXJ5OmhvdmVyLCAuYnRuLS10ZXJ0aWFyeTpmb2N1cywgLmJ0bi0tdGVydGlhcnk6YWN0aXZlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWYzMzVmOyB9XG4gIC5idG4tLXRlcnRpYXJ5LmRpc2FibGVkLCAuYnRuLS10ZXJ0aWFyeS5kaXNhYmxlZDpob3ZlciwgLmJ0bi0tdGVydGlhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tLXRlcnRpYXJ5LmRpc2FibGVkOmFjdGl2ZSwgLmJ0bi0tdGVydGlhcnlbZGlzYWJsZWRdLCAuYnRuLS10ZXJ0aWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idG4tLXRlcnRpYXJ5W2Rpc2FibGVkXTpmb2N1cywgLmJ0bi0tdGVydGlhcnlbZGlzYWJsZWRdOmFjdGl2ZSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tLXRlcnRpYXJ5LFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi0tdGVydGlhcnk6aG92ZXIsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLS10ZXJ0aWFyeTpmb2N1cyxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tLXRlcnRpYXJ5OmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VGMzM0MDsgfVxuXG4uYnRuLS1xdWF0ZXJuYXJ5IHtcbiAgY29sb3I6ICMyRDJEMkE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIDJweCAjMkQyRDJBOyB9XG4gIC5idG4tLXF1YXRlcm5hcnk6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4tLXF1YXRlcm5hcnk6aG92ZXIsIC5idG4tLXF1YXRlcm5hcnk6Zm9jdXMsIC5idG4tLXF1YXRlcm5hcnk6YWN0aXZlIHtcbiAgICBjb2xvcjogIzJEMkQyQTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnRuLS1xdWF0ZXJuYXJ5LmRpc2FibGVkLCAuYnRuLS1xdWF0ZXJuYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnRuLS1xdWF0ZXJuYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnRuLS1xdWF0ZXJuYXJ5LmRpc2FibGVkOmFjdGl2ZSwgLmJ0bi0tcXVhdGVybmFyeVtkaXNhYmxlZF0sIC5idG4tLXF1YXRlcm5hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnRuLS1xdWF0ZXJuYXJ5W2Rpc2FibGVkXTpmb2N1cywgLmJ0bi0tcXVhdGVybmFyeVtkaXNhYmxlZF06YWN0aXZlLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi0tcXVhdGVybmFyeSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tLXF1YXRlcm5hcnk6aG92ZXIsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLS1xdWF0ZXJuYXJ5OmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi0tcXVhdGVybmFyeTphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idG4tLXF1YXRlcm5hcnk6aG92ZXIge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICMyRDJEMkE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyB9XG5cbi5idG4tLWludGVydmVudGlvbiB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUYzMzQwO1xuICBmb250LXNpemU6IDIuNXJlbTsgfVxuICAuYnRuLS1pbnRlcnZlbnRpb246YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4tLWludGVydmVudGlvbjpob3ZlciwgLmJ0bi0taW50ZXJ2ZW50aW9uOmZvY3VzLCAuYnRuLS1pbnRlcnZlbnRpb246YWN0aXZlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjM2MjZjOyB9XG4gIC5idG4tLWludGVydmVudGlvbi5kaXNhYmxlZCwgLmJ0bi0taW50ZXJ2ZW50aW9uLmRpc2FibGVkOmhvdmVyLCAuYnRuLS1pbnRlcnZlbnRpb24uZGlzYWJsZWQ6Zm9jdXMsIC5idG4tLWludGVydmVudGlvbi5kaXNhYmxlZDphY3RpdmUsIC5idG4tLWludGVydmVudGlvbltkaXNhYmxlZF0sIC5idG4tLWludGVydmVudGlvbltkaXNhYmxlZF06aG92ZXIsIC5idG4tLWludGVydmVudGlvbltkaXNhYmxlZF06Zm9jdXMsIC5idG4tLWludGVydmVudGlvbltkaXNhYmxlZF06YWN0aXZlLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi0taW50ZXJ2ZW50aW9uLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi0taW50ZXJ2ZW50aW9uOmhvdmVyLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi0taW50ZXJ2ZW50aW9uOmZvY3VzLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi0taW50ZXJ2ZW50aW9uOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VGMzM0MDsgfVxuICAuYnRuLS1pbnRlcnZlbnRpb24gYSB7XG4gICAgZm9udC1zaXplOiAycmVtOyB9XG5cbi5idG4tLWxnIHtcbiAgcGFkZGluZzogMTVweCA0NXB4O1xuICBmb250LXNpemU6IDEuOXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuXG4uYnRuLS1zbSB7XG4gIHBhZGRpbmc6IDhweCAyNXB4O1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuXG4uYnRuLS1saW5rLCAubW9kYWwtZm9vdGVyIC5hY3Rpb24tc2Vjb25kYXJ5IHtcbiAgZGlzcGxheTogaW5saW5lO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzk4OTg5ODtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjFzIGVhc2UtaW4tb3V0O1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIC5idG4tLWxpbmssIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnksIC5idG4tLWxpbms6YWN0aXZlLCAubW9kYWwtZm9vdGVyIC5hY3Rpb24tc2Vjb25kYXJ5OmFjdGl2ZSwgLmJ0bi0tbGlua1tkaXNhYmxlZF0sIC5tb2RhbC1mb290ZXIgW2Rpc2FibGVkXS5hY3Rpb24tc2Vjb25kYXJ5LFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi0tbGluayxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnksIC5tb2RhbC1mb290ZXJcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5hY3Rpb24tc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5idG4tLWxpbms6aG92ZXIsIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnk6aG92ZXIsIC5idG4tLWxpbms6Zm9jdXMsIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnk6Zm9jdXMsIC5idG4tLWxpbms6YWN0aXZlLCAubW9kYWwtZm9vdGVyIC5hY3Rpb24tc2Vjb25kYXJ5OmFjdGl2ZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAjRUYzMzQwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idG4tLWxpbms6YWN0aXZlLCAubW9kYWwtZm9vdGVyIC5hY3Rpb24tc2Vjb25kYXJ5OmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4ucGFnZS1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5zZWN0aW9uLWhlYWQge1xuICBtYXJnaW46IDAgMCAxNXB4O1xuICBwYWRkaW5nOiAxMHB4IDAgMDsgfVxuICAuY2F0YWxvZy1jYXRlZ29yeS12aWV3IC5zZWN0aW9uLWhlYWQsXG4gIC5jYXRhbG9nLXByb2R1Y3QtdmlldyAuc2VjdGlvbi1oZWFkLFxuICAuY2F0YWxvZ3NlYXJjaC1yZXN1bHQtaW5kZXggLnNlY3Rpb24taGVhZCB7XG4gICAgbWluLWhlaWdodDogNDRweDtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIHBhZGRpbmctbGVmdDogNDRweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuc2VjdGlvbi1oZWFkIHtcbiAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLmNhdGFsb2ctY2F0ZWdvcnktdmlldyAuc2VjdGlvbi1oZWFkLFxuICAgICAgLmNhdGFsb2ctcHJvZHVjdC12aWV3IC5zZWN0aW9uLWhlYWQsXG4gICAgICAuY2F0YWxvZ3NlYXJjaC1yZXN1bHQtaW5kZXggLnNlY3Rpb24taGVhZCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIG1hcmdpbjogMzBweCAwIDE1cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi5zZWN0aW9uLWhlYWRfX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAyLjJyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnNlY3Rpb24taGVhZF9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAzLjRyZW07IH0gfVxuXG4uc2VjdGlvbi1oZWFkX19pbmZvcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDhweCAwIDA7XG4gIGZvbnQtc2l6ZTogMS45cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuc2VjdGlvbi1oZWFkX19pbmZvcyB7XG4gICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuXG4uc2VjdGlvbi1oZWFkX19zdGF0dXMsXG4uc2VjdGlvbi1oZWFkX19kYXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLjVweDsgfVxuXG4uc2VjdGlvbi1oZWFkX19zdGF0dXMge1xuICBtYXJnaW46IDhweCAwIDRweDsgfVxuXG4uaGVhZGxpbmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxNnB4IDA7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuaGVhZGxpbmUgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5oZWFkbGluZSB7XG4gICAgICBtYXJnaW46IDMycHggMDtcbiAgICAgIGZvbnQtc2l6ZTogMy44cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC43cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLmhlYWRsaW5lIHN0cm9uZyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5lcnJvci1jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZXJyb3ItY29udGVudCBsaSB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gICAgLmVycm9yLWNvbnRlbnQgbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiLSBcIjsgfVxuICAuZXJyb3ItY29udGVudCAuZXJyb3Itc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgIGNvbG9yOiAjRUYzMzQwOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBNZXNzYWdlc1xubmFtZTogbWVzc2FnZXNcbmNhdGVnb3J5OiBGb3Jtc1xuLS0tXG5NZXNzYWdlIGlzIHVzZWQgdG8gZGlzcGxheSBpbmZvcm1hdGlvbiB0byB0aGUgdXNlci4gVGhpcyBtZXNzYWdlIGNhbiBiZSBhbiBpbmZvcm1hdGlvbiwgYSBzdWNjZXNzIG1lc3NhZ2UsIGEgd2FybmluZywgb3IgYSBlcnJvci5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwibWVzc2FnZSBtZXNzYWdlLS1pbmZvXCI+XG4gICAgRG9uZWMgaWQgZWxpdCBub24gbWkgcG9ydGEgZ3JhdmlkYSBhdCBlZ2V0IG1ldHVzLiBWZXN0aWJ1bHVtIGlkIGxpZ3VsYSBwb3J0YSBmZWxpcyBldWlzbW9kIHNlbXBlci5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwibWVzc2FnZSBtZXNzYWdlLS1zdWNjZXNzXCI+XG4gICAgRG9uZWMgaWQgZWxpdCBub24gbWkgcG9ydGEgZ3JhdmlkYSBhdCBlZ2V0IG1ldHVzLiBWZXN0aWJ1bHVtIGlkIGxpZ3VsYSBwb3J0YSBmZWxpcyBldWlzbW9kIHNlbXBlci5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwibWVzc2FnZSBtZXNzYWdlLS13YXJuaW5nXCI+XG4gICAgRG9uZWMgaWQgZWxpdCBub24gbWkgcG9ydGEgZ3JhdmlkYSBhdCBlZ2V0IG1ldHVzLiBWZXN0aWJ1bHVtIGlkIGxpZ3VsYSBwb3J0YSBmZWxpcyBldWlzbW9kIHNlbXBlci5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwibWVzc2FnZSBtZXNzYWdlLS1lcnJvclwiPlxuICAgIERvbmVjIGlkIGVsaXQgbm9uIG1pIHBvcnRhIGdyYXZpZGEgYXQgZWdldCBtZXR1cy4gVmVzdGlidWx1bSBpZCBsaWd1bGEgcG9ydGEgZmVsaXMgZXVpc21vZCBzZW1wZXIuXG48L2Rpdj5cbmBgYFxuKi9cbi5tZXNzYWdlcyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAxM3B4O1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTsgfVxuXG4ubWVzc2FnZSB7XG4gIHBhZGRpbmc6IDE1cHggMTVweCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDIwcHggMDtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAubWVzc2FnZSA+IGRpdiB7XG4gICAgZm9udC1zaXplOiAxNXB4OyB9XG4gIC5tZXNzYWdlIHVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5tZXNzYWdlIGxpIHtcbiAgICBtYXJnaW46IDAgMCA1cHg7IH1cbiAgICAubWVzc2FnZSBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAubWVzc2FnZSBwOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbjogMDsgfVxuICAubWVzc2FnZSBhIHtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4ubWVzc2FnZS0taW5mbyB7XG4gIGNvbG9yOiAjMzE3MDhmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllZGY3O1xuICBib3JkZXItY29sb3I6ICNiY2U4ZjE7IH1cbiAgLm1lc3NhZ2UtLWluZm8gYSB7XG4gICAgY29sb3I6ICMyNDUyNjk7IH1cblxuLm1lc3NhZ2UtLXN1Y2Nlc3Mge1xuICBjb2xvcjogIzNjNzYzZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RmZjBkODtcbiAgYm9yZGVyLWNvbG9yOiAjZDZlOWM2OyB9XG4gIC5tZXNzYWdlLS1zdWNjZXNzIGEge1xuICAgIGNvbG9yOiAjMmI1NDJjOyB9XG5cbi5tZXNzYWdlLS13YXJuaW5nIHtcbiAgY29sb3I6ICM4YTZkM2I7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZTM7XG4gIGJvcmRlci1jb2xvcjogI2ZhZWJjYzsgfVxuICAubWVzc2FnZS0td2FybmluZyBhIHtcbiAgICBjb2xvcjogIzY2NTEyYzsgfVxuXG4ubWVzc2FnZS0tZXJyb3Ige1xuICBjb2xvcjogI2E5NDQ0MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZGVkZTtcbiAgYm9yZGVyLWNvbG9yOiAjZWJjY2QxOyB9XG4gIC5tZXNzYWdlLS1lcnJvciBhIHtcbiAgICBjb2xvcjogIzg0MzUzNDsgfVxuXG4ubWVzc2FnZS5zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkOGQyMztcbiAgY29sb3I6IHdoaXRlO1xuICB3aWR0aDogNDAlO1xuICBtYXJnaW46IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVzc2FnZS5zdWNjZXNzID4gKjpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIHRvcDogNTAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5tZXNzYWdlLnN1Y2Nlc3Mge1xuICAgICAgd2lkdGg6IDgwJTsgfSB9XG5cbi5tZXNzYWdlLmluZm8sIC5tZXNzYWdlLm5vdGljZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDUwJTtcbiAgbWFyZ2luOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmI4YzAwOyB9XG5cbi5tZXNzYWdlLmVycm9yIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogNTAlO1xuICBtYXJnaW46IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNTAwMDA7IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFRhYmxlc1xubmFtZTogdGFibGVzXG5jYXRlZ29yeTogQ29tcG9uZW50c1xuLS0tXG5UbyBhZGQgYmFzaWMgc3R5bGluZyB0byBhIHRhYmxlLCBhZGQgdGhlIGJhc2UgY2xhc3MgYHRhYmxlYCB0byBhbnkgYDx0YWJsZT5gLiBJdCBtYXkgc2VlbSBzdXBlciByZWR1bmRhbnQsIGJ1dCBpdCdzIHRvIGF2b2lkIGNvbmZsaWN0cyB3aXRoIG90aGVyIHVzZSBvZiB0aGUgYDx0YWJsZT5gIG1hcmt1cC5cblxuWW91IGNhbiBhZGQgYHRhYmxlLS1yZXNwb25zaXZlYCBjbGFzcyB0byBgdGFibGVgcyBhbmQgaXQgd2lsbCBtYWtlIHRoZW0gbW9iaWxlIGZyaWVuZGx5IGJ5IGVuYWJsaW5nIGhvcml6b250YWwgc2Nyb2xsaW5nLiBPbmx5IGFwcGxpZXMgJmx0Ozc2OHB4LiBFdmVyeXRoaW5nIGFib3ZlIHRoYXQgd2lsbCBkaXNwbGF5IG5vcm1hbGx5LiBUaGlzIGlzbid0IGluY2x1ZGVkIHdpdGggdGhlIGB0YWJsZWAgY2xhc3MgYmVjYXVzZSBpdCB3aWxsIGRlcGVuZCBvbiB0aGUgdGFibGUgc2l6ZS4gQWxzbyBvdGhlciBwb3NzaWJpbGl0aWVzIGV4aXN0IHRvIG1ha2UgYDx0YWJsZT5gIG1vYmlsZSBmcmllbmRseSwgdGhpcyBvbmUgaXMganVzdCB0aGUgbW9yZSBnZW5lcmljLlxuXG5gYGBodG1sX2V4YW1wbGVcbjx0YWJsZSBjbGFzcz1cInRhYmxlIHRhYmxlLS1yZXNwb25zaXZlXCI+XG4gICAgPHRoZWFkPlxuICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGg+IzwvdGg+XG4gICAgICAgICAgICA8dGg+Rmlyc3Q8L3RoPlxuICAgICAgICAgICAgPHRoPlNlY29uZDwvdGg+XG4gICAgICAgICAgICA8dGg+VGhpcmQ8L3RoPlxuICAgICAgICA8L3RyPlxuICAgIDwvdGhlYWQ+XG4gICAgPHRib2R5PlxuICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggc2NvcGU9XCJyb3dcIj4xPC90aD5cbiAgICAgICAgICAgIDx0ZD5GaXJzdDwvdGQ+XG4gICAgICAgICAgICA8dGQ+U2Vjb25kPC90ZD5cbiAgICAgICAgICAgIDx0ZD5UaGlyZDwvdGQ+XG4gICAgICAgIDwvdHI+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aCBzY29wZT1cInJvd1wiPjI8L3RoPlxuICAgICAgICAgICAgPHRkPkZpcnN0PC90ZD5cbiAgICAgICAgICAgIDx0ZD5TZWNvbmQ8L3RkPlxuICAgICAgICAgICAgPHRkPlRoaXJkPC90ZD5cbiAgICAgICAgPC90cj5cbiAgICAgICAgPHRyPlxuICAgICAgICAgICAgPHRoIHNjb3BlPVwicm93XCI+MzwvdGg+XG4gICAgICAgICAgICA8dGQ+Rmlyc3Q8L3RkPlxuICAgICAgICAgICAgPHRkPlNlY29uZDwvdGQ+XG4gICAgICAgICAgICA8dGQ+VGhpcmQ8L3RkPlxuICAgICAgICA8L3RyPlxuICAgIDwvdGJvZHk+XG48L3RhYmxlPlxuYGBgXG4qL1xudGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgfVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6IDhweDtcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICM1NzU3NTc7IH1cblxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgLnRhYmxlIHRoLFxuICAudGFibGUgdGQge1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMzMzMzMzM7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2QyZDJkMjtcbiAgICBib3JkZXItd2lkdGg6IDFweCAwIDA7IH1cbiAgLnRhYmxlIHRoZWFkIHRoIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUYzMzQwO1xuICAgIGJvcmRlci1jb2xvcjogI2QyZDJkMjtcbiAgICBib3JkZXItd2lkdGg6IDAgMCAxcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnRhYmxlIHRoLFxuICAgIC50YWJsZSB0ZCB7XG4gICAgICBwYWRkaW5nOiAxMnB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnRhYmxlLS1yZXNwb25zaXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IEZvcm1zXG5uYW1lOiBmb3Jtc1xuY2F0ZWdvcnk6IEZvcm1zXG4tLS1cbkluZGl2aWR1YWwgZm9ybSBjb250cm9scyBhdXRvbWF0aWNhbGx5IHJlY2VpdmUgc29tZSBnbG9iYWwgc3R5bGluZy4gQWxsIHRleHR1YWwgYDxpbnB1dD5gLCBgPHRleHRhcmVhPmAsIGFuZCBgPHNlbGVjdD5gIGVsZW1lbnRzIHdpdGggYC5mb3JtLWNvbnRyb2xgIGFyZSBzZXQgdG8gYHdpZHRoOiAxMDAlO2AgYnkgZGVmYXVsdC4gV3JhcCBsYWJlbHMgYW5kIGNvbnRyb2xzIGluIC5mb3JtLWdyb3VwIGZvciBvcHRpbXVtIHNwYWNpbmcuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGZvcm0+XG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICAgICAgPGxhYmVsIGZvcj1cImV4YW1wbGUtaW5wdXRcIj5JbnB1dCB0ZXh0PC9sYWJlbD5cbiAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgaWQ9XCJleGFtcGxlLWlucHV0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBwbGFjZWhvbGRlcj1cIlBsYWNlaG9sZGVyXCI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICAgICAgPGxhYmVsIGZvcj1cImV4YW1wbGUtdGV4dGFyZWFcIj5UZXh0YXJlYTwvbGFiZWw+XG4gICAgICAgIDx0ZXh0YXJlYSBpZD1cImV4YW1wbGUtdGV4dGFyZWFcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIHJvd3M9XCI2XCI+PC90ZXh0YXJlYT5cbiAgICA8L2Rpdj5cbjwvZm9ybT5cbmBgYFxuXG4jIyBTZWxlY3RzXG5cblNlbGVjdCBoYXZlIGRpZmZlcmVudHMgc3R5bGVzIGJldHdlZW4gYnJvd3NlcnMgYW5kIHNvbWUgc3R5bGVzIHRoYXQgY2Fubm90IGJlIG1vZGlmaWVkLiBUbyBiZSBhYmxlIHRvIGJlIGNvbnNpc3RlbnQgYWNyb3NzIGJyb3dzZXJzIGFuZCBoYXZlIGEgY3VzdG9tIHN0eWxlLCB0aGUgdGhlIGBzZWxlY3RgIGlzIHdyYXBwZWQgd2l0aCBhIGBmb3JtLWNvbnRyb2wtc2VsZWN0YCBjbGFzcy5cblxuYGBgaHRtbF9leGFtcGxlXG48bGFiZWwgZm9yPVwiZXhhbXBsZS1zZWxlY3RcIj5TZWxlY3Q8L2xhYmVsPlxuPGRpdiBjbGFzcz1cImZvcm0tY29udHJvbC1zZWxlY3RcIj5cbiAgICA8c2VsZWN0IGlkPVwiZXhhbXBsZS1zZWxlY3RcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiPlxuICAgICAgICA8b3B0aW9uPk9wdGlvbiAxPC9vcHRpb24+XG4gICAgICAgIDxvcHRpb24+T3B0aW9uIDI8L29wdGlvbj5cbiAgICAgICAgPG9wdGlvbj5PcHRpb24gMzwvb3B0aW9uPlxuICAgICAgICA8b3B0aW9uPk9wdGlvbiA0PC9vcHRpb24+XG4gICAgPC9zZWxlY3Q+XG48L2Rpdj5cbmBgYFxuXG5UbyBiZSBkaXNhYmxlZCwgdGhlIGN1c3RvbSBgc2VsZWN0YCByZXF1aXJlIHRvIGFkZCBhIGBkaXNhYmxlZGAgY2xhc3MgaW4gYWRkaXRpb24gdG8gdGhlIGBkaXNhYmxlZGAgYXR0cmlidXRlIG9uIHRoZSBgc2VsZWN0YCBpdHNlbGYuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGxhYmVsIGZvcj1cImV4YW1wbGUtc2VsZWN0XCI+U2VsZWN0PC9sYWJlbD5cbjxkaXYgY2xhc3M9XCJmb3JtLWNvbnRyb2wtc2VsZWN0IGRpc2FibGVkXCI+XG4gICAgPHNlbGVjdCBpZD1cImV4YW1wbGUtc2VsZWN0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBkaXNhYmxlZD5cbiAgICAgICAgPG9wdGlvbj5PcHRpb24gMTwvb3B0aW9uPlxuICAgICAgICA8b3B0aW9uPk9wdGlvbiAyPC9vcHRpb24+XG4gICAgPC9zZWxlY3Q+XG48L2Rpdj5cbmBgYFxuXG4jIyBDaGVja2JveCBhbmQgcmFkaW9cblxuU2ltaWxhciBhcyB0aGUgc2VsZWN0LCB0byBoYXZlIHRoZSBzYW1lIHJlbmRlciBhY3Jvc3MgYnJvd3NlcnMgd2UgYWRkIHRoZSBjbGFzcyBgZm9ybS1jb250cm9sLWNoZWNrYm94YCBmb3IgY2hlY2tib3ggYW5kIGBmb3JtLWNvbnRyb2wtcmFkaW9gIGZvciByYWRpby5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwiZm9ybS1jb250cm9sLWNoZWNrYm94XCI+XG4gICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwiZXhhbXBsZS1jaGVja2JveC0xXCIgdmFsdWU9XCJcIj5cbiAgICA8bGFiZWwgZm9yPVwiZXhhbXBsZS1jaGVja2JveC0xXCI+T3B0aW9uIG9uZTwvbGFiZWw+XG48L2Rpdj5cbmBgYFxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJmb3JtLWNvbnRyb2wtY2hlY2tib3hcIj5cbiAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJleGFtcGxlLWNoZWNrYm94LTJcIiB2YWx1ZT1cIlwiIGNoZWNrZWQ+XG4gICAgPGxhYmVsIGZvcj1cImV4YW1wbGUtY2hlY2tib3gtMlwiPk9wdGlvbiB0d28gaXMgY2hlY2tlZDwvbGFiZWw+XG48L2Rpdj5cbmBgYFxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJmb3JtLWNvbnRyb2wtY2hlY2tib3hcIj5cbiAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJleGFtcGxlLWNoZWNrYm94LTNcIiB2YWx1ZT1cIlwiIGRpc2FibGVkPlxuICAgIDxsYWJlbCBmb3I9XCJleGFtcGxlLWNoZWNrYm94LTNcIj5PcHRpb24gdGhyZWUgaXMgZGlzYWJsZWQ8L2xhYmVsPlxuPC9kaXY+XG5gYGBcblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwiZm9ybS1jb250cm9sLXJhZGlvXCI+XG4gICAgPGlucHV0IHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJleGFtcGxlLXJhZGlvXCIgaWQ9XCJleGFtcGxlLXJhZGlvLTFcIiB2YWx1ZT1cIlwiPlxuICAgIDxsYWJlbCBmb3I9XCJleGFtcGxlLXJhZGlvLTFcIj5PcHRpb24gb25lPC9sYWJlbD5cbjwvZGl2PlxuYGBgXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImZvcm0tY29udHJvbC1yYWRpb1wiPlxuICAgIDxpbnB1dCB0eXBlPVwicmFkaW9cIiBuYW1lPVwiZXhhbXBsZS1yYWRpb1wiIGlkPVwiZXhhbXBsZS1yYWRpby0yXCIgdmFsdWU9XCJcIiBjaGVja2VkPlxuICAgIDxsYWJlbCBmb3I9XCJleGFtcGxlLXJhZGlvLTJcIj5PcHRpb24gdHdvIGlzIGNoZWNrZWQ8L2xhYmVsPlxuPC9kaXY+XG5gYGBcblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwiZm9ybS1jb250cm9sLXJhZGlvXCI+XG4gICAgPGlucHV0IHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJleGFtcGxlLXJhZGlvXCIgaWQ9XCJleGFtcGxlLXJhZGlvLTNcIiB2YWx1ZT1cIlwiIGRpc2FibGVkPlxuICAgIDxsYWJlbCBmb3I9XCJleGFtcGxlLXJhZGlvLTNcIj5PcHRpb24gdGhyZWUgaXMgZGlzYWJsZWQ8L2xhYmVsPlxuPC9kaXY+XG5gYGBcblxuIyMgRm9ybSBjb250YWluZXJcblxuQSBmb3JtIGNhbiBiZSB2aXN1YWxseSBkZWxpbWl0ZWQgZm9yIGJldHRlciByZWFkYWJpbGl0eS5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwiZm9ybS1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuICAgICAgICA8bGFiZWwgZm9yPVwiY29udGFpbmVyLWV4YW1wbGUtaW5wdXRcIj5JbnB1dCB0ZXh0PC9sYWJlbD5cbiAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgaWQ9XCJjb250YWluZXItZXhhbXBsZS1pbnB1dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZvcm0tc3VibWl0XCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiYnRuIGJ0bi0tcHJpbWFyeVwiPlN1Ym1pdDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9kaXY+XG5gYGBcblxuIyMgVmFsaWRhdGlvbiBzdGF0ZXNcblxuVGhlcmUgYXJlIHR3byB2YWxpZGF0aW9uIHN0YXRlczogU3VjY2VzcyBhbmQgZXJyb3IuIFRvIHVzZSwgYWRkIGB2YWxpZGAgb3IgYG1hZ2UtZXJyb3JgIHRvIGFueSBgaW5wdXQuZm9ybS1jb250cm9sYCBlbGVtZW50LiBBIHZhbGlkYXRpb24gbWVzc2FnZSBlcnJvciB3aXRoIHRoZSBjbGFzcyBgbWFnZS1lcnJvcmAgY2FuIGJlIGFkZGVkIHRvIGdpdmUgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZXJyb3IuXG5cbkl0IHVzZSB0aGUgY2xhc3NlcyB1c2VkIGJ5IE1hZ2VudG8gMiBpbiB0aGUgZGVmYXVsdCBzY3JpcHRzLCBzbyBNYWdlbnRvIDIgd2lsbCBhZGQgdGhlIGNvcnJlc3BvbmRpbmcgY2xhc3MgYnkgaXRzZWxmIHdoZW4gZm9ybSB2YWxpZGF0aW9uIHdpbGwgcGVyZm9ybS5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuICAgIDxsYWJlbCBmb3I9XCJleGFtcGxlLWlucHV0LXN1Y2Nlc3NcIj5WYWxpZGF0aW9uIHN1Y2Nlc3M8L2xhYmVsPlxuICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwiZXhhbXBsZS1pbnB1dC1zdWNjZXNzXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgdmFsaWRcIj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICA8bGFiZWwgZm9yPVwiZXhhbXBsZS1pbnB1dC1lcnJvclwiPlZhbGlkYXRpb24gZXJyb3I8L2xhYmVsPlxuICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwiZXhhbXBsZS1pbnB1dC1lcnJvclwiIGNsYXNzPVwiZm9ybS1jb250cm9sIG1hZ2UtZXJyb3JcIj5cbiAgICA8ZGl2IGNsYXNzPVwibWFnZS1lcnJvclwiPlZhbGlkYXRpb24gZXJyb3IgbWVzc2FnZTwvZGl2PlxuPC9kaXY+XG5gYGBcbiovXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICBtaW4td2lkdGg6IDA7IH1cblxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgMCA4cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICM1NzU3NTc7XG4gIGJvcmRlcjogMDsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBtYXJnaW46IDRweCAwIDA7XG4gIG1hcmdpbi10b3A6IDFweCBcXDk7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5pbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuc2VsZWN0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuc2VsZWN0W211bHRpcGxlXSxcbnNlbGVjdFtzaXplXSB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6IDdweDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGNvbG9yOiAjMzMzMzMzOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9ybS1jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgbWFyZ2luOiAwIDAgMzJweDtcbiAgICBwYWRkaW5nOiAzMnB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMmUxZTE7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4OyB9IH1cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiA4cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsgfSB9XG5cbi5mb3JtLWdyb3VwX19uZXN0ZWQge1xuICBtYXJnaW46IDhweCAwIDA7IH1cbiAgLmZvcm0tZ3JvdXBfX25lc3RlZCBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICAgIGJvcmRlcjogMDsgfVxuXG5sYWJlbCxcbi5sYWJlbCB7XG4gIG1hcmdpbjogMCAwIDhweDtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICBjb2xvcjogIzU3NTc1NztcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIGxhYmVsIGVtLFxuICAubGFiZWwgZW0ge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzMzMzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2QyZDJkMjtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1czsgfVxuICAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMyRDJEMkE7XG4gICAgb3V0bGluZTogMDsgfVxuICAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gICAgY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMC4zKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5mb3JtLWNvbnRyb2xbZGlzYWJsZWRdLCAuZm9ybS1jb250cm9sW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5mb3JtLWNvbnRyb2wge1xuICAgIG9wYWNpdHk6IDAuNjsgfVxuICAuZm9ybS1jb250cm9sW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5mb3JtLWNvbnRyb2wge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgLmZvcm0tY29udHJvbC52YWxpZFt0eXBlPVwidGV4dFwiXSwgLmZvcm0tY29udHJvbC52YWxpZFt0eXBlPVwiZW1haWxcIl0sIC5mb3JtLWNvbnRyb2wudmFsaWRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NnB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNTcgNDAnJTNFJTNDcGF0aCBmaWxsPSclMjM2MUQyQjknIGQ9J00xMy4zIDBMNTcgMCA1NyA0MCAwIDQwIDEzLjMgMFpNMzkuNyAxMy4zQzM5LjQgMTMuMSAzOS4xIDEzIDM4LjcgMTMgMzguMyAxMyAzOCAxMy4yIDM3LjggMTMuNUwyOS4yIDIzLjcgMjQuNyAxOC4zQzI0LjUgMTggMjQuMSAxNy44IDIzLjggMTcuOCAyMy40IDE3LjggMjMuMSAxNy45IDIyLjggMTguMSAyMi41IDE4LjMgMjIuNCAxOC43IDIyLjMgMTkgMjIuMyAxOS40IDIyLjQgMTkuNyAyMi43IDIwTDI4LjEgMjYuNkMyOC40IDI2LjkgMjguOCAyNy4xIDI5LjIgMjcuMSAyOS4yIDI3LjEgMjkuMiAyNy4xIDI5LjIgMjcuMSAyOS4yIDI3LjEgMjkuMiAyNy4xIDI5LjMgMjcuMSAyOS4zIDI3LjEgMjkuMyAyNy4xIDI5LjQgMjcuMSAyOS41IDI3IDI5LjUgMjcgMjkuNiAyNyAyOS42IDI3IDI5LjYgMjcgMjkuNyAyNyAyOS45IDI2LjkgMzAuMSAyNi44IDMwLjMgMjYuNkwzOS44IDE1LjJDNDAuMyAxNC43IDQwLjMgMTMuOCAzOS43IDEzLjMnLyUzRSUzQy9zdmclM0VcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSA1MCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTsgfVxuICAuZm9ybS1jb250cm9sLm1hZ2UtZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjogI2VlMzg1YzsgfVxuICAgIC5mb3JtLWNvbnRyb2wubWFnZS1lcnJvcjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICNlMDEzM2M7IH1cbiAgICAuZm9ybS1jb250cm9sLm1hZ2UtZXJyb3JbdHlwZT1cInRleHRcIl0sIC5mb3JtLWNvbnRyb2wubWFnZS1lcnJvclt0eXBlPVwiZW1haWxcIl0sIC5mb3JtLWNvbnRyb2wubWFnZS1lcnJvclt0eXBlPVwicGFzc3dvcmRcIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogNTZweDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNTcgNDAnJTNFJTNDcGF0aCBmaWxsPSclMjNFRTM4NUMnIGQ9J00xMy4zIDBMNTcgMCA1NyA0MCAwIDQwIDEzLjMgMFpNMjkuNSAyMS41QzI5LjUgMjIgMjkuMSAyMi40IDI4LjcgMjIuNCAyOC4yIDIyLjQgMjcuOCAyMiAyNy44IDIxLjVMMjcuOCAxOC45QzI3LjggMTguNCAyOC4yIDE4IDI4LjcgMTggMjkuMSAxOCAyOS41IDE4LjQgMjkuNSAxOC45TDI5LjUgMjEuNVpNMjguNyAyNS40QzI4LjIgMjUuNCAyNy44IDI1IDI3LjggMjQuNSAyNy44IDI0IDI4LjIgMjMuNiAyOC43IDIzLjYgMjkuMSAyMy42IDI5LjUgMjQgMjkuNSAyNC41IDI5LjUgMjUgMjkuMSAyNS40IDI4LjcgMjUuNEwyOC43IDI1LjRaTTM3LjYgMjcuNUwyOSAxMS4yQzI4LjkgMTAuOSAyOC41IDEwLjkgMjguMyAxMS4yTDE5LjcgMjcuNUMxOS42IDI3LjkgMTkuOCAyOC4yIDIwLjEgMjguMkwzNy4yIDI4LjJDMzcuNSAyOC4yIDM3LjcgMjcuOSAzNy42IDI3LjVMMzcuNiAyNy41WicvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlOyB9XG4gIC5mb3JtLWNvbnRyb2wuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAocG9pbnRlcjogZmluZSkge1xuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZm9udC1zaXplOiAxLjdyZW07IH0gfVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7IH1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwKSB7XG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4OyB9IH1cblxuLmZvcm0tY29udHJvbC1zZWxlY3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZvcm0tY29udHJvbC1zZWxlY3QgLmZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICBjb2xvcjogIzMzMzMzMztcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgICAuZm9ybS1jb250cm9sLXNlbGVjdCAuZm9ybS1jb250cm9sOjotbXMtZXhwYW5kIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZm9ybS1jb250cm9sLXNlbGVjdCAuZm9ybS1jb250cm9sLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogIzMzMzMzMzsgfVxuICAuZm9ybS1jb250cm9sLXNlbGVjdDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTJweDtcbiAgICByaWdodDogMThweDtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzMzMzMzMztcbiAgICBib3JkZXItd2lkdGg6IDAgMnB4IDJweCAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgei1pbmRleDogMTsgfVxuICAuZm9ybS1jb250cm9sLXNlbGVjdC5kaXNhYmxlZDo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IC4yOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mb3JtLWNvbnRyb2wtc2VsZWN0OjphZnRlciB7XG4gICAgICB0b3A6IDExcHg7XG4gICAgICB3aWR0aDogMTRweDtcbiAgICAgIGhlaWdodDogMTRweDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAzcHggM3B4IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7IH0gfVxuXG4uZm9ybS1jb250cm9sLWNoZWNrYm94Om5vdCg6bGFzdC1vZi10eXBlKSwgLmZvcm0tY29udHJvbC1yYWRpbzpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICBtYXJnaW46IDAgMCA4cHg7IH1cblxuLmZvcm0tY29udHJvbC1jaGVja2JveCBpbnB1dCwgLmZvcm0tY29udHJvbC1yYWRpbyBpbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogLTE7IH1cbiAgLmZvcm0tY29udHJvbC1jaGVja2JveCBpbnB1dDpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSwgLmZvcm0tY29udHJvbC1yYWRpbyBpbnB1dDpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJEMkQyQTtcbiAgICBib3JkZXItY29sb3I6ICMyRDJEMkE7IH1cbiAgLmZvcm0tY29udHJvbC1jaGVja2JveCBpbnB1dDpjaGVja2VkICsgbGFiZWw6OmFmdGVyLCAuZm9ybS1jb250cm9sLXJhZGlvIGlucHV0OmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5mb3JtLWNvbnRyb2wtY2hlY2tib3ggaW5wdXQ6ZGlzYWJsZWQgKyBsYWJlbCwgLmZvcm0tY29udHJvbC1yYWRpbyBpbnB1dDpkaXNhYmxlZCArIGxhYmVsIHtcbiAgICBvcGFjaXR5OiAuNjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gIC5mb3JtLWNvbnRyb2wtY2hlY2tib3ggaW5wdXQ6ZGlzYWJsZWQ6bm90KDpjaGVja2VkKSArIGxhYmVsOjpiZWZvcmUsIC5mb3JtLWNvbnRyb2wtcmFkaW8gaW5wdXQ6ZGlzYWJsZWQ6bm90KDpjaGVja2VkKSArIGxhYmVsOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmVlZWU7IH1cblxuLmZvcm0tY29udHJvbC1jaGVja2JveCBsYWJlbCwgLmZvcm0tY29udHJvbC1yYWRpbyBsYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDAgMCAyNHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMjBweDsgfVxuICAuZm9ybS1jb250cm9sLWNoZWNrYm94IGxhYmVsOjpiZWZvcmUsIC5mb3JtLWNvbnRyb2wtcmFkaW8gbGFiZWw6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAycHg7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZTNlMmUyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjFzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjFzIGVhc2UtaW4tb3V0OyB9XG4gIC5mb3JtLWNvbnRyb2wtY2hlY2tib3ggbGFiZWw6OmFmdGVyLCAuZm9ybS1jb250cm9sLXJhZGlvIGxhYmVsOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA2cHg7XG4gICAgbGVmdDogM3B4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItd2lkdGg6IDAgMCAycHggMnB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgei1pbmRleDogMTA7IH1cblxuLmZvcm0tY29udHJvbC1yYWRpbyBpbnB1dDpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyRDJEMkE7XG4gIGJvcmRlci1jb2xvcjogI2UzZTJlMjsgfVxuXG4uZm9ybS1jb250cm9sLXJhZGlvIGxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuLmZvcm0tY29udHJvbC1yYWRpbyBsYWJlbDo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lOyB9XG5cbi5mb3JtLWNvbnRyb2wtY2hlY2tib3gtaGlkZGVuIGlucHV0OmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXIsIC5mb3JtLWNvbnRyb2wtcmFkaW8taGlkZGVuIGlucHV0OmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW46IDA7IH1cblxuLmZvcm0tY29udHJvbC1jaGVja2JveC1oaWRkZW4gbGFiZWw6OmJlZm9yZSwgLmZvcm0tY29udHJvbC1yYWRpby1oaWRkZW4gbGFiZWw6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbjogMDsgfVxuXG4uZm9ybS1jb250cm9sLWNoZWNrYm94LWhpZGRlbiBpbnB1dFt0eXBlPVwicmFkaW9cIl0sIC5mb3JtLWNvbnRyb2wtY2hlY2tib3gtaGlkZGVuIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvcm0tY29udHJvbC1jaGVja2JveC1oaWRkZW4gbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4uaGlkZGVuLWNoZWNrYm94LWJ1dHRvbiB7XG4gIG1hcmdpbjogMDsgfVxuXG4uZm9ybS1pbmZvX2d1ZXN0IHtcbiAgd2lkdGg6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGV0dGVyLXNwYWNpbmc6IC44cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7IH1cbiAgLmZvcm0taW5mb19ndWVzdCAuYWRtaW5fX2xlZ2VuZCB7XG4gICAgZm9udC1zaXplOiAycmVtOyB9XG5cbi5mb3JtLWd1ZXN0X29yZGVyIHtcbiAgd2lkdGg6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuZm9ybS1ndWVzdF9vcmRlciAuYWRtaW5fX2xlZ2VuZCB7XG4gICAgcGFkZGluZzogMCAyNHB4O1xuICAgIGZvbnQtc2l6ZTogMi44cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxldHRlci1zcGFjaW5nOiAuOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7IH1cbiAgLmZvcm0tZ3Vlc3Rfb3JkZXIgbGFiZWwge1xuICAgIHBhZGRpbmc6IDAgMjRweDtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjhweDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDklOyB9XG4gIC5mb3JtLWd1ZXN0X29yZGVyICNxdWljay1zZWFyY2gtdHlwZS1pZCB7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtYWxpZ24tbGFzdDogY2VudGVyO1xuICAgIGhlaWdodDogMzBweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgaGVpZ2h0OiAzNHB4OyB9XG4gIC5mb3JtLWd1ZXN0X29yZGVyIGlucHV0W3R5cGU9dGV4dF0sIC5mb3JtLWd1ZXN0X29yZGVyIGlucHV0W3R5cGU9ZW1haWxdIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLmZvcm0tZ3Vlc3Rfb3JkZXIgLmNvbnRyb2wge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZm9ybS1ndWVzdF9vcmRlciAuYnRuLWZvcm0tZ3Vlc3Qge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmZvcm0tcXVhbnRpdHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZvcm0tcXVhbnRpdHkgLmZvcm0tY29udHJvbCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyB9XG4gICAgLmZvcm0tcXVhbnRpdHkgLmZvcm0tY29udHJvbFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLCAuZm9ybS1xdWFudGl0eSAuZm9ybS1jb250cm9sW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgbWFyZ2luOiAwOyB9XG5cbi5mb3JtLXF1YW50aXR5LXBsdXMsXG4uZm9ybS1xdWFudGl0eS1taW51cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAwO1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkQyRDJBO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3V0bGluZTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQ7XG4gIHotaW5kZXg6IDE7IH1cbiAgLmZvcm0tcXVhbnRpdHktcGx1czpmb2N1cyxcbiAgLmZvcm0tcXVhbnRpdHktbWludXM6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5mb3JtLXF1YW50aXR5LXBsdXM6aG92ZXIsXG4gICAgLmZvcm0tcXVhbnRpdHktbWludXM6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7IH0gfVxuXG4uZm9ybS1xdWFudGl0eS1wbHVzIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7IH1cbiAgLmZvcm0tcXVhbnRpdHktcGx1czo6YmVmb3JlLCAuZm9ybS1xdWFudGl0eS1wbHVzOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gIC5mb3JtLXF1YW50aXR5LXBsdXM6OmJlZm9yZSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IDJweDsgfVxuICAuZm9ybS1xdWFudGl0eS1wbHVzOjphZnRlciB7XG4gICAgd2lkdGg6IDJweDtcbiAgICBoZWlnaHQ6IDUwJTsgfVxuXG4uZm9ybS1xdWFudGl0eS1taW51czo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogNTAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4uZm9ybS1zdWJtaXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmZvcm0tc3VibWl0IC5idG4sIC5mb3JtLXN1Ym1pdCAubW9kYWwtZm9vdGVyIC5hY3Rpb24tcHJpbWFyeSwgLm1vZGFsLWZvb3RlciAuZm9ybS1zdWJtaXQgLmFjdGlvbi1wcmltYXJ5LCAuZm9ybS1zdWJtaXRcbiAgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXNlY29uZGFyeSxcbiAgLm1vZGFsLWZvb3RlciAuZm9ybS1zdWJtaXQgLmFjdGlvbi1zZWNvbmRhcnkge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG1hcmdpbjogMTZweCAwIDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmZvcm0tc3VibWl0IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAuZm9ybS1zdWJtaXQgLmJ0bjpub3QoLmJ0bi0tbGluayk6bm90KC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnkpLCAuZm9ybS1zdWJtaXQgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXByaW1hcnk6bm90KC5idG4tLWxpbmspOm5vdCgubW9kYWwtZm9vdGVyIC5hY3Rpb24tc2Vjb25kYXJ5KSwgLm1vZGFsLWZvb3RlciAuZm9ybS1zdWJtaXQgLmFjdGlvbi1wcmltYXJ5Om5vdCguYnRuLS1saW5rKTpub3QoLm1vZGFsLWZvb3RlciAuYWN0aW9uLXNlY29uZGFyeSksIC5mb3JtLXN1Ym1pdFxuICAgICAgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXNlY29uZGFyeTpub3QoLmJ0bi0tbGluayk6bm90KC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnkpLFxuICAgICAgLm1vZGFsLWZvb3RlciAuZm9ybS1zdWJtaXQgLmFjdGlvbi1zZWNvbmRhcnk6bm90KC5idG4tLWxpbmspOm5vdCgubW9kYWwtZm9vdGVyIC5hY3Rpb24tc2Vjb25kYXJ5KSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuZm9ybS1zdWJtaXQgLmJ0bi0tbGluaywgLmZvcm0tc3VibWl0IC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnksIC5tb2RhbC1mb290ZXIgLmZvcm0tc3VibWl0IC5hY3Rpb24tc2Vjb25kYXJ5IHtcbiAgICAgICAgb3JkZXI6IDE7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9ybS1zdWJtaXQge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICAgIC5mb3JtLXN1Ym1pdCAuYnRuLCAuZm9ybS1zdWJtaXQgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXByaW1hcnksIC5tb2RhbC1mb290ZXIgLmZvcm0tc3VibWl0IC5hY3Rpb24tcHJpbWFyeSwgLmZvcm0tc3VibWl0XG4gICAgICAubW9kYWwtZm9vdGVyIC5hY3Rpb24tc2Vjb25kYXJ5LFxuICAgICAgLm1vZGFsLWZvb3RlciAuZm9ybS1zdWJtaXQgLmFjdGlvbi1zZWNvbmRhcnkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTZweDsgfVxuICAgICAgLmZvcm0tc3VibWl0IC5idG4tLXByaW1hcnkgLmJ0bi0tc2Vjb25kYXJ5LCAuZm9ybS1zdWJtaXQgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXByaW1hcnkgLmJ0bi0tc2Vjb25kYXJ5LCAubW9kYWwtZm9vdGVyIC5mb3JtLXN1Ym1pdCAuYWN0aW9uLXByaW1hcnkgLmJ0bi0tc2Vjb25kYXJ5IHtcbiAgICAgICAgb3JkZXI6IDE7IH0gfVxuXG4uZm9ybS1oZWxwLFxuZGl2Lm1hZ2UtZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA4cHggMCAwIDE2cHg7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBjb2xvcjogIzczNzM3MzsgfVxuXG5kaXYubWFnZS1lcnJvciB7XG4gIGNvbG9yOiAjZWUzODVjOyB9XG5cbi5mb3JtLWhlbHAgLmZvcm0taGVscC1hY2NvdW50IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IDIuMXJlbTtcbiAgY29sb3I6ICM2MWQyYjk7IH1cblxuLnBhc3N3b3JkLXN0cmVuZ3RoLW1ldGVyLTEgLmZvcm0tc3RyZW5ndGgge1xuICBjb2xvcjogI2Q5NTM0ZjsgfVxuXG4ucGFzc3dvcmQtc3RyZW5ndGgtbWV0ZXItMiAuZm9ybS1zdHJlbmd0aCB7XG4gIGNvbG9yOiAjZjBhZDRlOyB9XG5cbi5wYXNzd29yZC1zdHJlbmd0aC1tZXRlci0zIC5mb3JtLXN0cmVuZ3RoLFxuLnBhc3N3b3JkLXN0cmVuZ3RoLW1ldGVyLTQgLmZvcm0tc3RyZW5ndGgge1xuICBjb2xvcjogIzVjYjg1YzsgfVxuXG4uZmllbGQuZHVyYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5maWVsZC5kdXJhdGlvbiAuY29udHJvbDpudGgtY2hpbGQoMikge1xuICAgIG1heC13aWR0aDogNjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxuICAuZmllbGQuZHVyYXRpb24gLmNvbnRyb2w6bGFzdC1jaGlsZCB7XG4gICAgbWF4LXdpZHRoOiAxMTZweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAuZmllbGQuZHVyYXRpb24ge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAuZmllbGQuZHVyYXRpb24gLmxhYmVsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogVG9vbHRpcFxubmFtZTogdG9vbHRpcFxuY2F0ZWdvcnk6IENvbXBvbmVudHNcbi0tLVxuVGhlIHRvb2x0aXAgcHJvdmlkZSBleHRyYSBpbmZvcm1hdGlvbnMgd2hlbiBpdCdzIGhvdmVyZWQgb3IgY2xpY2tlZC4gSXQgY2FuIGJlIHVzZSBpbiBhIGA8bGFiZWw+YCwgZm9yIGV4YW1wbGUsIHRvIGdpdmUgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZmllbGQuXG5cblRoZSBoaWRkZW4gdGV4dCBtdXN0IGJlIHBsYWNlZCBpbiB0aGUgYGFyaWEtbGFiZWxgIGF0dHJpYnV0ZS5cblxuYGBgaHRtbF9leGFtcGxlXG48YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cInRvb2x0aXBcIiBhcmlhLWxhYmVsPVwiVGhpcyB0ZXh0IHByb3ZpZGUgZXh0cmEgaW5mb3JtYXRpb25zXCIgcm9sZT1cInRvb2x0aXBcIj5IZWxwPC9idXR0b24+XG5gYGBcbiovXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW46IC01cHggMCAwIDVweDtcbiAgcGFkZGluZzogMDtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyRDJEMkE7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDkgMTMnJTNFJTNDcGF0aCBmaWxsPSclMjNmZmZmZmYnIGQ9J00yLjk5IDYuOTdDMy4xOCA2Ljc4IDMuNDEgNi42OCAzLjY5IDYuNjggNC40MSA2LjY4IDQuOTkgNi41MiA1LjQyIDYuMTggNS44NiA1Ljg0IDYuMDcgNS4zMiA2LjA3IDQuNjEgNi4wNyA0LjA3IDUuODggMy42MiA1LjQ5IDMuMjYgNS4xIDIuOSA0LjYxIDIuNzIgNC4wMiAyLjcyIDMuNDIgMi43MiAyLjg5IDIuOTIgMi40NCAzLjMyIDIuMTcgMy41NiAxLjkgMy42OCAxLjYyIDMuNjggMS40MSAzLjY4IDEuMjMgMy42MiAxLjA2IDMuNDkgMC43OCAzLjI3IDAuNjQgMy4wMSAwLjY0IDIuNzIgMC42NCAyLjQ3IDAuNzQgMi4yNCAwLjk1IDIuMDMgMS4zNCAxLjYzIDEuOCAxLjMyIDIuMzMgMS4wOSAyLjg2IDAuODcgMy40MiAwLjc2IDQuMDIgMC43NiA0Ljc2IDAuNzYgNS40MyAwLjkzIDYuMDQgMS4yNyA2LjY1IDEuNiA3LjE0IDIuMDcgNy40OSAyLjY2IDcuODUgMy4yNSA4LjAzIDMuOSA4LjAzIDQuNjEgOC4wMyA1LjY2IDcuNzMgNi40OCA3LjE0IDcuMDkgNi41NCA3LjcgNS43NCA4LjA4IDQuNzUgOC4yMyA0LjcgOC4yNiA0LjY3IDguMjggNC42NyA4LjMyTDQuNjcgOC45MkM0LjY3IDkuMiA0LjU4IDkuNDQgNC4zOSA5LjYzIDQuMjEgOS44MiAzLjk3IDkuOTIgMy42OSA5LjkyIDMuNDEgOS45MiAzLjE4IDkuODIgMi45OSA5LjYzIDIuODEgOS40NCAyLjcxIDkuMiAyLjcxIDguOTJMMi43MSA3LjY4QzIuNzEgNy40IDIuODEgNy4xNiAyLjk5IDYuOTdaTTIuODggMTIuNThDMi43MiAxMi40MiAyLjYzIDEyLjE3IDIuNjMgMTEuODZMMi42MyAxMS41OEMyLjYzIDExLjI2IDIuNzIgMTEuMDIgMi44OCAxMC44NSAzLjA1IDEwLjY5IDMuMjkgMTAuNiAzLjYxIDEwLjZMMy44MiAxMC42QzQuMTQgMTAuNiA0LjM4IDEwLjY5IDQuNTUgMTAuODUgNC43MiAxMS4wMiA0LjggMTEuMjYgNC44IDExLjU4TDQuOCAxMS44NkM0LjggMTIuMTcgNC43MiAxMi40MiA0LjU1IDEyLjU4IDQuMzggMTIuNzUgNC4xNCAxMi44NCAzLjgyIDEyLjg0TDMuNjEgMTIuODRDMy4yOSAxMi44NCAzLjA1IDEyLjc1IDIuODggMTIuNThaJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNDIlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNTUlO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLnRvb2x0aXA6OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGFyaWEtbGFiZWwpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoMTAwJSArIDhweCk7XG4gICAgbGVmdDogNTAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lkdGg6IDI3MHB4O1xuICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJEMkQyQTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHotaW5kZXg6IDEwOyB9XG4gIC50b29sdGlwOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgLnRvb2x0aXA6Zm9jdXM6OmFmdGVyIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLnRvb2x0aXA6aG92ZXIge1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgICAgLnRvb2x0aXA6aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfSB9XG5cbi5vd2wtY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiAxOyB9XG4gIC5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtbG9hZGluZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAub3dsLWNhcm91c2VsLm93bC1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtZ3JhYiB7XG4gICAgY3Vyc29yOiBncmFiOyB9XG4gIC5uby1qcyAub3dsLWNhcm91c2VsIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ub3dsLXN0YWdlLW91dGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3MHB4KSB7XG4gICAgLm93bC1zdGFnZS1vdXRlciB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHotaW5kZXg6IDI7IH0gfVxuXG4ub3dsLXN0YWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLVk7XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5vd2wtd3JhcHBlcixcbi5vd2wtaXRlbSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4ub3dsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTsgfVxuICAub3dsLXJlZnJlc2ggLm93bC1pdGVtIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLm93bC1kcmFnIC5vd2wtaXRlbSB7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLm93bC1uYXYuZGlzYWJsZWQsXG4ub3dsLWRvdHMuZGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5vd2wtcHJldixcbi5vd2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTJlMWUxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzFweCkge1xuICAgIC5vd2wtcHJldixcbiAgICAub3dsLW5leHQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5vd2wtcHJldjo6YmVmb3JlLFxuICAub3dsLW5leHQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gIC5vd2wtcHJldjo6YWZ0ZXIsXG4gIC5vd2wtbmV4dDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gM3B4KTtcbiAgICB3aWR0aDogMTFweDtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzMzMzMzMztcbiAgICBib3JkZXItd2lkdGg6IDAgMnB4IDJweCAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgxMzVkZWcpOyB9XG4gIC5vd2wtcHJldi5kaXNhYmxlZCxcbiAgLm93bC1uZXh0LmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAuMjU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLm93bC1wcmV2LFxuICAgIC5vd2wtbmV4dCB7XG4gICAgICB3aWR0aDogNTBweDsgfSB9XG5cbi5vd2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1MCU7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1MCU7IH1cblxuLm93bC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNTAlOyB9XG4gIC5vd2wtbmV4dDo6YWZ0ZXIge1xuICAgIGxlZnQ6IGNhbGMoNTAlICsgM3B4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4ub3dsLXByZXYsXG4ub3dsLW5leHQsXG4ub3dsLWRvdCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLyogQXJyb3cgbmF2aWdhdGlvbiBvbiBtb2JpbGUgKi9cbi5nYXVjaGUsXG4uZHJvaXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDkwMDAgIWltcG9ydGFudDtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDcwcHgpIHtcbiAgICAuZ2F1Y2hlLFxuICAgIC5kcm9pdGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3MHB4KSB7XG4gICAgLmdhdWNoZSxcbiAgICAuZHJvaXRlIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7IH0gfVxuICAuZ2F1Y2hlOjpiZWZvcmUsXG4gIC5kcm9pdGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gIC5nYXVjaGU6OmFmdGVyLFxuICAuZHJvaXRlOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAzcHgpO1xuICAgIHdpZHRoOiAxMXB4O1xuICAgIGhlaWdodDogMTFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjMzMzMzMzO1xuICAgIGJvcmRlci13aWR0aDogMCAycHggMnB4IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDEzNWRlZyk7IH1cbiAgLmdhdWNoZS5kaXNhYmxlZCxcbiAgLmRyb2l0ZS5kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogLjI1OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5nYXVjaGUsXG4gICAgLmRyb2l0ZSB7XG4gICAgICB3aWR0aDogNTBweDsgfSB9XG5cbi5nYXVjaGUge1xuICBsZWZ0OiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNTAlO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNTAlOyB9XG5cbi5kcm9pdGUge1xuICByaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNTAlO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1MCU7IH1cbiAgLmRyb2l0ZTo6YWZ0ZXIge1xuICAgIGxlZnQ6IGNhbGMoNTAlICsgM3B4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzBweCkge1xuICBhLmxpbmstbmF2IHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfSB9XG5cbi5nYXVjaGUsXG4uZHJvaXRlLFxuLm93bC1kb3Qge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5tb2RhbC1vcGVuLFxuLl9oYXMtbW9kYWwge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5tb2RhbC1vcGVuIC5tb2RhbCxcbiAgLm1vZGFsLW9wZW4gLm1vZGFsLXBvcHVwLFxuICAubW9kYWwtb3BlbiAubW9kYWwtc2xpZGUsXG4gIC5faGFzLW1vZGFsIC5tb2RhbCxcbiAgLl9oYXMtbW9kYWwgLm1vZGFsLXBvcHVwLFxuICAuX2hhcy1tb2RhbCAubW9kYWwtc2xpZGUge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvOyB9XG5cbi5tb2RhbCxcbi5tb2RhbC1wb3B1cCxcbi5tb2RhbC1zbGlkZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvdXRsaW5lOiAwO1xuICB6LWluZGV4OiAyMjA7IH1cbiAgLm1vZGFsIC5tb2RhbC1kaWFsb2csXG4gIC5tb2RhbCAubW9kYWwtaW5uZXItd3JhcCxcbiAgLm1vZGFsLXBvcHVwIC5tb2RhbC1kaWFsb2csXG4gIC5tb2RhbC1wb3B1cCAubW9kYWwtaW5uZXItd3JhcCxcbiAgLm1vZGFsLXNsaWRlIC5tb2RhbC1kaWFsb2csXG4gIC5tb2RhbC1zbGlkZSAubW9kYWwtaW5uZXItd3JhcCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTI1JSk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlLW91dDsgfVxuICAubW9kYWwuc2hvdywgLm1vZGFsLl9zaG93LFxuICAubW9kYWwtcG9wdXAuc2hvdyxcbiAgLm1vZGFsLXBvcHVwLl9zaG93LFxuICAubW9kYWwtc2xpZGUuc2hvdyxcbiAgLm1vZGFsLXNsaWRlLl9zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2csXG4gICAgLm1vZGFsLnNob3cgLm1vZGFsLWlubmVyLXdyYXAsIC5tb2RhbC5fc2hvdyAubW9kYWwtZGlhbG9nLFxuICAgIC5tb2RhbC5fc2hvdyAubW9kYWwtaW5uZXItd3JhcCxcbiAgICAubW9kYWwtcG9wdXAuc2hvdyAubW9kYWwtZGlhbG9nLFxuICAgIC5tb2RhbC1wb3B1cC5zaG93IC5tb2RhbC1pbm5lci13cmFwLFxuICAgIC5tb2RhbC1wb3B1cC5fc2hvdyAubW9kYWwtZGlhbG9nLFxuICAgIC5tb2RhbC1wb3B1cC5fc2hvdyAubW9kYWwtaW5uZXItd3JhcCxcbiAgICAubW9kYWwtc2xpZGUuc2hvdyAubW9kYWwtZGlhbG9nLFxuICAgIC5tb2RhbC1zbGlkZS5zaG93IC5tb2RhbC1pbm5lci13cmFwLFxuICAgIC5tb2RhbC1zbGlkZS5fc2hvdyAubW9kYWwtZGlhbG9nLFxuICAgIC5tb2RhbC1zbGlkZS5fc2hvdyAubW9kYWwtaW5uZXItd3JhcCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG4ubW9kYWwtcG9wdXAsXG4ubW9kYWwtc2xpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5tb2RhbC1wb3B1cCAubW9kYWwtaW5uZXItd3JhcCxcbiAgLm1vZGFsLXNsaWRlIC5tb2RhbC1pbm5lci13cmFwIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0LCB2aXNpYmlsaXR5IC4zcyBlYXNlOyB9XG4gIC5tb2RhbC1wb3B1cC5fc2hvdyxcbiAgLm1vZGFsLXNsaWRlLl9zaG93IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5tb2RhbC1kaWFsb2csXG4ubW9kYWwtaW5uZXItd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogODBweCAxMHB4IDEwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgLm1vZGFsLWRpYWxvZyxcbiAgICAubW9kYWwtaW5uZXItd3JhcCB7XG4gICAgICB3aWR0aDogNDYwcHg7XG4gICAgICBtYXJnaW46IDgwcHggYXV0bzsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5tb2RhbC1kaWFsb2csXG4gICAgLm1vZGFsLWlubmVyLXdyYXAge1xuICAgICAgd2lkdGg6IDcyMHB4O1xuICAgICAgbWFyZ2luOiAxNjBweCBhdXRvOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLm1vZGFsLWRpYWxvZyxcbiAgICAubW9kYWwtaW5uZXItd3JhcCB7XG4gICAgICB3aWR0aDogODgwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1vZGFsLS14cyAubW9kYWwtZGlhbG9nLFxuICAubW9kYWwtLXhzIC5tb2RhbC1pbm5lci13cmFwIHtcbiAgICB3aWR0aDogNDYwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1vZGFsLS14cyAubW9kYWwtZGlhbG9nLFxuICAubW9kYWwtLXhzIC5tb2RhbC1pbm5lci13cmFwIHtcbiAgICB3aWR0aDogNDYwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1vZGFsLXBvcHVwIC5tb2RhbC1kaWFsb2csXG4gIC5tb2RhbC1wb3B1cCAubW9kYWwtaW5uZXItd3JhcCB7XG4gICAgd2lkdGg6IDUyMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tb2RhbC1wb3B1cCAubW9kYWwtZGlhbG9nLFxuICAubW9kYWwtcG9wdXAgLm1vZGFsLWlubmVyLXdyYXAge1xuICAgIHdpZHRoOiA1MjBweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubW9kYWwtcG9wdXAubW9kYWwtc2xpZGUge1xuICAgIGxlZnQ6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm1vZGFsLXBvcHVwLm1vZGFsLXNsaWRlIC5tb2RhbC1pbm5lci13cmFwIHtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgICB3aWR0aDogODAlO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAxMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLm1vZGFsLXBvcHVwLm1vZGFsLXNsaWRlIC5tb2RhbC1pbm5lci13cmFwIHtcbiAgICBoZWlnaHQ6IDgwJTtcbiAgICB3aWR0aDogODUlO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAxMCU7IH0gfVxuXG4ubW9kYWwtY29udGVudDpub3QoW2RhdGEtcm9sZT1cImNvbnRlbnRcIl0pLFxuLm1vZGFsLWlubmVyLXdyYXA6bm90KFtkYXRhLXJvbGU9XCJjb250ZW50XCJdKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTZweDtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBvdXRsaW5lOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5tb2RhbC1jb250ZW50Om5vdChbZGF0YS1yb2xlPVwiY29udGVudFwiXSksXG4gICAgLm1vZGFsLWlubmVyLXdyYXA6bm90KFtkYXRhLXJvbGU9XCJjb250ZW50XCJdKSB7XG4gICAgICBwYWRkaW5nOiAzN3B4OyB9IH1cblxuLm1vZGFsLWhlYWRlciB7XG4gIG1hcmdpbjogMCAwIDMycHg7IH1cblxuLm1vZGFsLXRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDE2cHg7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxldHRlci1zcGFjaW5nOiAuOHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5tb2RhbC1ib2R5LFxuLm1vZGFsLWNvbnRlbnRbZGF0YS1yb2xlPVwiY29udGVudFwiXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxLjdyZW07XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1vZGFsLWJvZHkgLmZvcm0tZ3JvdXAsXG4gIC5tb2RhbC1jb250ZW50W2RhdGEtcm9sZT1cImNvbnRlbnRcIl0gLmZvcm0tZ3JvdXAge1xuICAgIHBhZGRpbmc6IDAgMjRweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMnB4IDAgMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tb2RhbC1mb290ZXIgYSxcbiAgLm1vZGFsLWZvb3RlciBidXR0b24ge1xuICAgIG1hcmdpbjogOHB4IDAgMDsgfVxuICAubW9kYWwtZm9vdGVyIC5hY3Rpb24tc2Vjb25kYXJ5IHtcbiAgICBvcmRlcjogMTsgfVxuICAubW9kYWwtZm9vdGVyIGEsXG4gIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnkge1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgIGNvbG9yOiAjOTg5ODk4OyB9XG4gICAgLm1vZGFsLWZvb3RlciBhOmZvY3VzLFxuICAgIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgY29sb3I6ICNFRjMzNDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIC5tb2RhbC1mb290ZXIgYTpob3ZlcixcbiAgICAgIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnk6aG92ZXIge1xuICAgICAgICBjb2xvcjogI0VGMzM0MDsgfSB9XG5cbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsOyB9XG5cbi5tb2RhbC1jbG9zZSxcbi5hY3Rpb24tY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOHB4O1xuICByaWdodDogOHB4O1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMyRDJEMkE7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvdXRsaW5lOiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQ7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAubW9kYWwtY2xvc2U6OmJlZm9yZSwgLm1vZGFsLWNsb3NlOjphZnRlcixcbiAgLmFjdGlvbi1jbG9zZTo6YmVmb3JlLFxuICAuYWN0aW9uLWNsb3NlOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiA2MCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJEMkQyQTtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgLm1vZGFsLWNsb3NlOjpiZWZvcmUsXG4gIC5hY3Rpb24tY2xvc2U6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTsgfVxuICAubW9kYWwtY2xvc2U6OmFmdGVyLFxuICAuYWN0aW9uLWNsb3NlOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC00NWRlZyk7IH1cbiAgLm1vZGFsLWNsb3NlOmZvY3VzLFxuICAuYWN0aW9uLWNsb3NlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5tb2RhbC1jbG9zZTpob3ZlcixcbiAgICAuYWN0aW9uLWNsb3NlOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IH0gfVxuICAubW9kYWwtY2xvc2Ugc3BhbixcbiAgLmFjdGlvbi1jbG9zZSBzcGFuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IC0xcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gICAgYm9yZGVyOiAwOyB9XG5cbi5tb2RhbC1iYWNrZHJvcCxcbi5tb2RhbHMtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgbGluZWFyO1xuICB6LWluZGV4OiAyMTA7IH1cbiAgLm1vZGFsLWJhY2tkcm9wLnNob3csXG4gIC5tb2RhbHMtb3ZlcmxheS5zaG93IHtcbiAgICBvcGFjaXR5OiAwLjc1OyB9XG5cbi5tb2RhbHMtb3ZlcmxheSB7XG4gIG9wYWNpdHk6IDAuNzU7IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBhZ2luYXRpb25cbm5hbWU6IHBhZ2luYXRpb25cbmNhdGVnb3J5OiBOYXZpZ2F0aW9uXG4tLS1cblBhZ25pYXRpb24gdXNlIG1pY3JvZGF0YSB0byBoZWxwIHNlYXJjaCBlbmdpbmUgdG8gcmVjb2duaXplIGl0IGFzIGEgbmF2aWdhdGlvbiBlbGVtZW50LlxuXG5gYGBodG1sX2V4YW1wbGVcbjxuYXYgY2xhc3M9XCJwYWdpbmF0aW9uXCIgcm9sZT1cIm5hdmlnYXRpb25cIj5cbiAgICA8dWwgY2xhc3M9XCJwYWdpbmF0aW9uX19saXN0XCIgaXRlbXNjb3BlPVwiXCIgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9TaXRlTmF2aWdhdGlvbkVsZW1lbnRcIj5cbiAgICAgICAgPGxpIGNsYXNzPVwicGFnaW5hdGlvbl9faXRlbSBwYWdpbmF0aW9uX19pdGVtLS1wcmV2aW91c1wiPlxuICAgICAgICAgICAgPHNwYW4gaXRlbXByb3A9XCJuYW1lXCI+UGFnZSBwcsOpY8OpZGVudGU8L3NwYW4+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW0gcGFnaW5hdGlvbl9faXRlbS0tYWN0aXZlXCI+XG4gICAgICAgICAgICA8c3BhbiBpdGVtcHJvcD1cIm5hbWVcIj48ZW0+UGFnZTwvZW0+IDE8L3NwYW4+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW1cIj5cbiAgICAgICAgICAgIDxhIGhyZWY9XCIjXCIgaXRlbXByb3A9XCJ1cmxcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBpdGVtcHJvcD1cIm5hbWVcIj48ZW0+UGFnZTwvZW0+IDI8L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW1cIj5cbiAgICAgICAgICAgIDxhIGhyZWY9XCIjXCIgaXRlbXByb3A9XCJ1cmxcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBpdGVtcHJvcD1cIm5hbWVcIj48ZW0+UGFnZTwvZW0+IDM8L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW1cIj5cbiAgICAgICAgICAgIDxzcGFuPuKApjwvc3Bhbj5cbiAgICAgICAgPC9saT5cbiAgICAgICAgPGxpIGNsYXNzPVwicGFnaW5hdGlvbl9faXRlbVwiPlxuICAgICAgICAgICAgPGEgaHJlZj1cIiNcIiBpdGVtcHJvcD1cInVybFwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGl0ZW1wcm9wPVwibmFtZVwiPjxlbT5QYWdlPC9lbT4gMTA8L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW0gcGFnaW5hdGlvbl9faXRlbS0tbmV4dFwiPlxuICAgICAgICAgICAgPGEgaHJlZj1cIiNcIiBpdGVtcHJvcD1cInVybFwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGl0ZW1wcm9wPVwibmFtZVwiPlBhZ2Ugc3VpdmFudGU8L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvbGk+XG4gICAgPC91bD5cbjwvbmF2PlxuYGBgXG4qL1xuLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMzBweCAwIDA7IH1cblxuLnBhZ2luYXRpb25fX2xpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLnBhZ2luYXRpb25fX2l0ZW0ge1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1pbi13aWR0aDogMzBweDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wYWdpbmF0aW9uX19pdGVtIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMzBweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLnBhZ2luYXRpb25fX2l0ZW0gZW0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgICBib3JkZXI6IDA7IH1cblxuLnBhZ2luYXRpb25fX2l0ZW0tLWFjdGl2ZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU3NTc1NztcbiAgYm9yZGVyLXJhZGl1czogMzBweDsgfVxuXG4ucGFnaW5hdGlvbl9faXRlbS0tcHJldmlvdXMsXG4ucGFnaW5hdGlvbl9faXRlbS0tbmV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucGFnaW5hdGlvbl9faXRlbS0tcHJldmlvdXMgYSBzcGFuOjpiZWZvcmUsXG4gIC5wYWdpbmF0aW9uX19pdGVtLS1uZXh0IGEgc3Bhbjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzOyB9XG4gIC5wYWdpbmF0aW9uX19pdGVtLS1wcmV2aW91cyBhIHNwYW46OmFmdGVyLFxuICAucGFnaW5hdGlvbl9faXRlbS0tbmV4dCBhIHNwYW46OmFmdGVyIHtcbiAgICBib3JkZXItY29sb3I6ICMzMzMzMzM7IH1cbiAgLnBhZ2luYXRpb25fX2l0ZW0tLXByZXZpb3VzIGE6Zm9jdXMgc3Bhbjo6YmVmb3JlLFxuICAucGFnaW5hdGlvbl9faXRlbS0tbmV4dCBhOmZvY3VzIHNwYW46OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VGMzM0MDsgfVxuICAucGFnaW5hdGlvbl9faXRlbS0tcHJldmlvdXMgYTpmb2N1cyBzcGFuOjphZnRlcixcbiAgLnBhZ2luYXRpb25fX2l0ZW0tLW5leHQgYTpmb2N1cyBzcGFuOjphZnRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjRUYzMzQwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5wYWdpbmF0aW9uX19pdGVtLS1wcmV2aW91cyBhOmhvdmVyIHNwYW46OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbl9faXRlbS0tbmV4dCBhOmhvdmVyIHNwYW46OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUYzMzQwOyB9XG4gICAgLnBhZ2luYXRpb25fX2l0ZW0tLXByZXZpb3VzIGE6aG92ZXIgc3Bhbjo6YWZ0ZXIsXG4gICAgLnBhZ2luYXRpb25fX2l0ZW0tLW5leHQgYTpob3ZlciBzcGFuOjphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6ICNFRjMzNDA7IH0gfVxuICAucGFnaW5hdGlvbl9faXRlbS0tcHJldmlvdXMgc3BhbixcbiAgLnBhZ2luYXRpb25fX2l0ZW0tLW5leHQgc3BhbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmb250OiAwLzAgYTtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwOyB9XG4gICAgLnBhZ2luYXRpb25fX2l0ZW0tLXByZXZpb3VzIHNwYW46OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbl9faXRlbS0tbmV4dCBzcGFuOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlMmUxZTE7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjFzIGVhc2UtaW4tb3V0OyB9XG4gICAgLnBhZ2luYXRpb25fX2l0ZW0tLXByZXZpb3VzIHNwYW46OmFmdGVyLFxuICAgIC5wYWdpbmF0aW9uX19pdGVtLS1uZXh0IHNwYW46OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gM3B4KTtcbiAgICAgIHdpZHRoOiAxMXB4O1xuICAgICAgaGVpZ2h0OiAxMXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjZTJlMWUxO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4xcyBlYXNlLWluLW91dDsgfVxuXG4ucGFnaW5hdGlvbl9faXRlbS0tbmV4dCBzcGFuOjphZnRlciB7XG4gIGxlZnQ6IGNhbGMoNTAlICsgM3B4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC00NWRlZyk7IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IEJyZWFkY3J1bWJcbm5hbWU6IGJyZWFkY3J1bWJcbmNhdGVnb3J5OiBOYXZpZ2F0aW9uXG4tLS1cbkJyZWFkY3J1bWIgdXNlIG1pY3JvZGF0YSwgdXNlZnVsIGZvciBzZWFyY2ggZW5naW5lIG9wdGltaXNhdGlvbi4gVGhlIHBvc2l0aW9uIHN0b3JlIGluIGEgYG1ldGFgIHRhZyBuZWVkIHRvIGJlIHVwZGF0ZWQuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPG9sIGNsYXNzPVwiYnJlYWRjcnVtYlwiIGl0ZW1zY29wZT1cIlwiIGl0ZW10eXBlPVwiaHR0cDovL3NjaGVtYS5vcmcvQnJlYWRjcnVtYkxpc3RcIj5cbiAgICA8bGkgY2xhc3M9XCJicmVhZGNydW1iX19pdGVtXCIgaXRlbXNjb3BlPVwiXCIgaXRlbXByb3A9XCJpdGVtTGlzdEVsZW1lbnRcIiBpdGVtdHlwZT1cImh0dHA6Ly9zY2hlbWEub3JnL0xpc3RJdGVtXCI+XG4gICAgICAgIDxhIGhyZWY9XCIjXCIgaXRlbXByb3A9XCJpdGVtXCI+PHNwYW4gaXRlbXByb3A9XCJuYW1lXCI+SG9tZTwvc3Bhbj48L2E+XG4gICAgICAgIDxtZXRhIGl0ZW1wcm9wPVwicG9zaXRpb25cIiBjb250ZW50PVwiMVwiPlxuICAgIDwvbGk+XG4gICAgPGxpIGNsYXNzPVwiYnJlYWRjcnVtYl9faXRlbVwiIGl0ZW1zY29wZT1cIlwiIGl0ZW1wcm9wPVwiaXRlbUxpc3RFbGVtZW50XCIgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9MaXN0SXRlbVwiPlxuICAgICAgICA8YSBocmVmPVwiI1wiIGl0ZW1wcm9wPVwiaXRlbVwiPjxzcGFuIGl0ZW1wcm9wPVwibmFtZVwiPkNhdGFsb2d1ZTwvc3Bhbj48L2E+XG4gICAgICAgIDxtZXRhIGl0ZW1wcm9wPVwicG9zaXRpb25cIiBjb250ZW50PVwiMlwiPlxuICAgIDwvbGk+XG4gICAgPGxpIGNsYXNzPVwiYnJlYWRjcnVtYl9faXRlbVwiIGl0ZW1zY29wZT1cIlwiIGl0ZW1wcm9wPVwiaXRlbUxpc3RFbGVtZW50XCIgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9MaXN0SXRlbVwiPlxuICAgICAgICA8YSBocmVmPVwiI1wiIGl0ZW1wcm9wPVwiaXRlbVwiPjxzcGFuIGl0ZW1wcm9wPVwibmFtZVwiPkFtb3J0aXNzZXVyczwvc3Bhbj48L2E+XG4gICAgICAgIDxtZXRhIGl0ZW1wcm9wPVwicG9zaXRpb25cIiBjb250ZW50PVwiM1wiPlxuICAgIDwvbGk+XG4gICAgPGxpIGNsYXNzPVwiYnJlYWRjcnVtYl9faXRlbVwiIGl0ZW1zY29wZT1cIlwiIGl0ZW1wcm9wPVwiaXRlbUxpc3RFbGVtZW50XCIgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9MaXN0SXRlbVwiPlxuICAgICAgICA8c3Ryb25nIGl0ZW1wcm9wPVwiaXRlbVwiPjxzcGFuIGl0ZW1wcm9wPVwibmFtZVwiPkFtb3J0aXNzZXVycyBhdmFudDwvc3Bhbj48L3N0cm9uZz5cbiAgICAgICAgPG1ldGEgaXRlbXByb3A9XCJwb3NpdGlvblwiIGNvbnRlbnQ9XCI0XCI+XG4gICAgPC9saT5cbjwvb2w+XG5gYGBcbiovXG4uYnJlYWRjcnVtYnMge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmctbGVmdDogMSU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmJyZWFkY3J1bWJzIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIC5icmVhZGNydW1icyBzdHJvbmcsXG4gIC5icmVhZGNydW1icyBhIHtcbiAgICBmb250LXNpemU6IDJyZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIC5icmVhZGNydW1icyBzdHJvbmcsXG4gICAgICAuYnJlYWRjcnVtYnMgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtOyB9IH1cbiAgLmJyZWFkY3J1bWJzIGEge1xuICAgIGNvbG9yOiAjMkQyRDJBOyB9XG4gICAgLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNFRjMzNDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmJyZWFkY3J1bWJzIC5pdGVtIHtcbiAgICBjb2xvcjogIzJEMkQyQTtcbiAgICBmb250LXNpemU6IDEuNHJlbTsgfVxuICAuYnJlYWRjcnVtYnMgLml0ZW06bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIC5icmVhZGNydW1icyAuaXRlbTpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7IH0gfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQmxvY2tzXG5uYW1lOiBibG9ja3NcbmNhdGVnb3J5OiBDb21wb25lbnRzXG4tLS1cblRoaXMgYWxsb3cgdG8gb3JnYW5pemUgQ01TIHBhZ2UgY29udGVudCBpbiBibG9ja3Mgd2l0aCBpbWFnZSBhbmQgdGV4dC4gT24gbGFyZ2Ugc2NyZWVucyB0aGUgYmxvY2tzIGFyZSBsaXN0ZWQgdG93IGJ5IHR3by5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwicGFnZS1ibG9ja3NcIj5cbiAgICA8ZGl2IGNsYXNzPVwicGFnZS1ibG9ja1wiPlxuICAgICAgICA8aDIgY2xhc3M9XCJwYWdlLWJsb2NrX190aXRsZVwiPlNlZCBwb3N1ZXJlIGNvbnNlY3RldHVyIGVzdCBhdCBsb2JvcnRpczwvaDI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLWJsb2NrX19jb250ZW50XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1ibG9ja19faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vZHVtbXlpbWFnZS5jb20vMTIweDEyMC8wMDAvZmZmXCIgYWx0PVwiXCI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLWJsb2NrX190ZXh0XCI+XG4gICAgICAgICAgICAgICAgPHA+Q3VtIHNvY2lpcyBuYXRvcXVlIHBlbmF0aWJ1cyBldCBtYWduaXMgZGlzIHBhcnR1cmllbnQgbW9udGVzLCBuYXNjZXR1ciByaWRpY3VsdXMgbXVzLiBWaXZhbXVzIHNhZ2l0dGlzIGxhY3VzXG4gICAgICAgICAgICAgICAgICAgIHZlbCBhdWd1ZSBsYW9yZWV0IHJ1dHJ1bSBmYXVjaWJ1cyBkb2xvciBhdWN0b3IuIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuXG4gICAgICAgICAgICAgICAgICAgIENyYXMgbWF0dGlzIGNvbnNlY3RldHVyIHB1cnVzIHNpdCBhbWV0IGZlcm1lbnR1bS4gTnVsbGFtIGlkIGRvbG9yIGlkIG5pYmggdWx0cmljaWVzIHZlaGljdWxhIHV0IGlkIGVsaXQuPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlLWJsb2NrXCI+XG4gICAgICAgIDxoMiBjbGFzcz1cInBhZ2UtYmxvY2tfX3RpdGxlXCI+U2VkIHBvc3VlcmUgY29uc2VjdGV0dXIgZXN0IGF0IGxvYm9ydGlzPC9oMj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtYmxvY2tfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLWJsb2NrX19pbWFnZVwiPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9kdW1teWltYWdlLmNvbS8xMjB4MTIwLzAwMC9mZmZcIiBhbHQ9XCJcIj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtYmxvY2tfX3RleHRcIj5cbiAgICAgICAgICAgICAgICA8cD5DdW0gc29jaWlzIG5hdG9xdWUgcGVuYXRpYnVzIGV0IG1hZ25pcyBkaXMgcGFydHVyaWVudCBtb250ZXMsIG5hc2NldHVyIHJpZGljdWx1cyBtdXMuIFZpdmFtdXMgc2FnaXR0aXMgbGFjdXNcbiAgICAgICAgICAgICAgICAgICAgdmVsIGF1Z3VlIGxhb3JlZXQgcnV0cnVtIGZhdWNpYnVzIGRvbG9yIGF1Y3Rvci4gTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC5cbiAgICAgICAgICAgICAgICAgICAgQ3JhcyBtYXR0aXMgY29uc2VjdGV0dXIgcHVydXMgc2l0IGFtZXQgZmVybWVudHVtLiBOdWxsYW0gaWQgZG9sb3IgaWQgbmliaCB1bHRyaWNpZXMgdmVoaWN1bGEgdXQgaWQgZWxpdC48L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInBhZ2UtYmxvY2tcIj5cbiAgICAgICAgPGgyIGNsYXNzPVwicGFnZS1ibG9ja19fdGl0bGVcIj5TZWQgcG9zdWVyZSBjb25zZWN0ZXR1ciBlc3QgYXQgbG9ib3J0aXM8L2gyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1ibG9ja19fY29udGVudFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtYmxvY2tfX2ltYWdlXCI+XG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL2R1bW15aW1hZ2UuY29tLzEyMHgxMjAvMDAwL2ZmZlwiIGFsdD1cIlwiPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1ibG9ja19fdGV4dFwiPlxuICAgICAgICAgICAgICAgIDxwPkN1bSBzb2NpaXMgbmF0b3F1ZSBwZW5hdGlidXMgZXQgbWFnbmlzIGRpcyBwYXJ0dXJpZW50IG1vbnRlcywgbmFzY2V0dXIgcmlkaWN1bHVzIG11cy4gVml2YW11cyBzYWdpdHRpcyBsYWN1c1xuICAgICAgICAgICAgICAgICAgICB2ZWwgYXVndWUgbGFvcmVldCBydXRydW0gZmF1Y2lidXMgZG9sb3IgYXVjdG9yLiBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LlxuICAgICAgICAgICAgICAgICAgICBDcmFzIG1hdHRpcyBjb25zZWN0ZXR1ciBwdXJ1cyBzaXQgYW1ldCBmZXJtZW50dW0uIE51bGxhbSBpZCBkb2xvciBpZCBuaWJoIHVsdHJpY2llcyB2ZWhpY3VsYSB1dCBpZCBlbGl0LjwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicGFnZS1ibG9ja1wiPlxuICAgICAgICA8aDIgY2xhc3M9XCJwYWdlLWJsb2NrX190aXRsZVwiPlNlZCBwb3N1ZXJlIGNvbnNlY3RldHVyIGVzdCBhdCBsb2JvcnRpczwvaDI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLWJsb2NrX19jb250ZW50XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1ibG9ja19faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vZHVtbXlpbWFnZS5jb20vMTIweDEyMC8wMDAvZmZmXCIgYWx0PVwiXCI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLWJsb2NrX190ZXh0XCI+XG4gICAgICAgICAgICAgICAgPHA+Q3VtIHNvY2lpcyBuYXRvcXVlIHBlbmF0aWJ1cyBldCBtYWduaXMgZGlzIHBhcnR1cmllbnQgbW9udGVzLCBuYXNjZXR1ciByaWRpY3VsdXMgbXVzLiBWaXZhbXVzIHNhZ2l0dGlzIGxhY3VzXG4gICAgICAgICAgICAgICAgICAgIHZlbCBhdWd1ZSBsYW9yZWV0IHJ1dHJ1bSBmYXVjaWJ1cyBkb2xvciBhdWN0b3IuIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuXG4gICAgICAgICAgICAgICAgICAgIENyYXMgbWF0dGlzIGNvbnNlY3RldHVyIHB1cnVzIHNpdCBhbWV0IGZlcm1lbnR1bS4gTnVsbGFtIGlkIGRvbG9yIGlkIG5pYmggdWx0cmljaWVzIHZlaGljdWxhIHV0IGlkIGVsaXQuPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG5gYGBcbiovXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2UtYmxvY2tzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5wYWdlLWJsb2NrIHtcbiAgbWFyZ2luOiAwIDAgMTZweDtcbiAgcGFkZGluZzogMTZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWVlZTsgfVxuICAucGFnZS1ibG9jazpudGgtY2hpbGQoMm4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLnBhZ2UtYmxvY2sge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTRweCk7XG4gICAgICBtYXJnaW46IDAgMjRweCAyNHB4IDA7XG4gICAgICBwYWRkaW5nOiAyNHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuLnBhZ2UtYmxvY2tfX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDE2cHg7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4ucGFnZS1ibG9ja19fY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5wYWdlLWJsb2NrX19pbWFnZSB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMjVweDtcbiAgbWF4LXdpZHRoOiAxMjBweDtcbiAgbWFyZ2luOiAwIDhweCAwIDA7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAucGFnZS1ibG9ja19faW1hZ2Uge1xuICAgICAgbWFyZ2luOiAwIDE2cHggMCAwO1xuICAgICAgcGFkZGluZzogMSU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfSB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBDaGFwdGVyc1xubmFtZTogY2hhcHRlcnNcbmNhdGVnb3J5OiBDb21wb25lbnRzXG4tLS1cblRoaXMgcGFnZSBtYXkgaW5jbHVkZSBhbmNob3JzIG9yIGxpbmtzIHRvIG90aGVyIHBhZ2VzLiBIb3dldmVyLCB0aGlzIGlzIG9wdGlvbmFsLlxuXG5UaGUgY29udGVudCBjYW4gYmUgb3JnYW5pemVkIGludG8gYW4gYWNjb3JkaW9uIGlmIHRoZSBIVE1sIG1hcmt1cCBpcyByZXNwZWN0ZWQgYWNjb3JkaW5nIHRvIHRoZSBleGFtcGxlIGJlbG93OlxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJwYWdlLWNoYXB0ZXJzXCI+XG4gICAgPGRpdiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX2FzaWRlXCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwicGFnZS1jaGFwdGVyc19fc3VtbWFyeVwiIGRhdGEtdG9nZ2xlPVwiY29sbGFwc2VcIiBkYXRhLXRhcmdldD1cIiNjaGFwdGVycy1uYXZpZ2F0aW9uXCIgYXJpYS1leHBhbmRlZD1cImZhbHNlXCJcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9XCJjaGFwdGVycy1uYXZpZ2F0aW9uXCI+U29tbWFpcmU8L2J1dHRvbj5cbiAgICAgICAgPHVsIGlkPVwiY2hhcHRlcnMtbmF2aWdhdGlvblwiIGNsYXNzPVwicGFnZS1jaGFwdGVyc19fbmF2aWdhdGlvbiBjb2xsYXBzZVwiPlxuICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwiYWN0aXZlXCIgaHJlZj1cIiNcIj5NYWVjZW5hcyBmYXVjaWJ1cyBtb2xsaXMgaW50ZXJkdW08L2E+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIjXCI+TWFlY2VuYXMgZmF1Y2lidXMgbW9sbGlzIGludGVyZHVtPC9hPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgICAgICA8YSBocmVmPVwiI1wiPk1hZWNlbmFzIGZhdWNpYnVzIG1vbGxpcyBpbnRlcmR1bTwvYT5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICA8bGk+XG4gICAgICAgICAgICAgICAgPGEgaHJlZj1cIiNcIj5NYWVjZW5hcyBmYXVjaWJ1cyBtb2xsaXMgaW50ZXJkdW08L2E+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIjXCI+TWFlY2VuYXMgZmF1Y2lidXMgbW9sbGlzIGludGVyZHVtPC9hPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgICAgICA8YSBocmVmPVwiI1wiPk1hZWNlbmFzIGZhdWNpYnVzIG1vbGxpcyBpbnRlcmR1bTwvYT5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBpZD1cImNoYXB0ZXJzXCIgY2xhc3M9XCJwYWdlLWNoYXB0ZXJzX19tYWluXCIgcm9sZT1cInRhYmxpc3RcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsXCIgZGF0YS1jb2xsYXBzZT1cImdyb3VwXCI+XG4gICAgICAgICAgICA8ZGl2IGlkPVwiY2hhcHRlcnMtaGVhZC0xXCIgY2xhc3M9XCJwYWdlLWNoYXB0ZXJzX19wYW5lbC1oZWFkXCIgcm9sZT1cInRhYlwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIjY2hhcHRlcnMtY29udGVudC0xXCIgZGF0YS10b2dnbGU9XCJjb2xsYXBzZVwiIGRhdGEtcGFyZW50PVwiI2NoYXB0ZXJzXCIgYXJpYS1leHBhbmRlZD1cInRydWVcIiBhcmlhLWNvbnRyb2xzPVwiY2hhcHRlcnMtY29udGVudC0xXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIj5EdWlzIG1vbGxpcyBlc3Qgbm9uIGNvbW1vZG8gbHVjdHVzIG5pc2kgZXJhdCBwb3J0dGl0b3IgbGlndWxhPC9hPlxuICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgaWQ9XCJjaGFwdGVycy1jb250ZW50LTFcIiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsLWNvbnRlbnQgY29sbGFwc2UgaW5cIiBhcmlhLWxhYmVsbGVkYnk9XCJjaGFwdGVycy1oZWFkLTFcIlxuICAgICAgICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9XCJ0cnVlXCIgcm9sZT1cInRhYnBhbmVsXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsLXRleHRcIj5cbiAgICAgICAgICAgICAgICAgICAgPHA+Q3VtIHNvY2lpcyBuYXRvcXVlIHBlbmF0aWJ1cyBldCBtYWduaXMgZGlzIHBhcnR1cmllbnQgbW9udGVzLCBuYXNjZXR1ciByaWRpY3VsdXMgbXVzLiBWaXZhbXVzIHNhZ2l0dGlzXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWN1cyB2ZWwgYXVndWUgbGFvcmVldCBydXRydW0gZmF1Y2lidXMgZG9sb3IgYXVjdG9yLiBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZ1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxpdC4gQ3JhcyBtYXR0aXMgY29uc2VjdGV0dXIgcHVydXMgc2l0IGFtZXQgZmVybWVudHVtLiBOdWxsYW0gaWQgZG9sb3IgaWQgbmliaCB1bHRyaWNpZXMgdmVoaWN1bGFcbiAgICAgICAgICAgICAgICAgICAgICAgIHV0IGlkIGVsaXQuPC9wPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1jaGFwdGVyc19fcGFuZWxcIiBkYXRhLWNvbGxhcHNlPVwiZ3JvdXBcIj5cbiAgICAgICAgICAgIDxkaXYgaWQ9XCJjaGFwdGVycy1oZWFkLTJcIiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsLWhlYWRcIiByb2xlPVwidGFiXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwicGFnZS1jaGFwdGVyc19fcGFuZWwtdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj1cIiNjaGFwdGVycy1jb250ZW50LTJcIiBkYXRhLXRvZ2dsZT1cImNvbGxhcHNlXCIgZGF0YS1wYXJlbnQ9XCIjY2hhcHRlcnNcIiBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIiBhcmlhLWNvbnRyb2xzPVwiY2hhcHRlcnMtY29udGVudC0yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIj5EdWlzIG1vbGxpcyBlc3Qgbm9uIGNvbW1vZG8gbHVjdHVzIG5pc2kgZXJhdCBwb3J0dGl0b3IgbGlndWxhPC9hPlxuICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgaWQ9XCJjaGFwdGVycy1jb250ZW50LTJcIiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsLWNvbnRlbnQgY29sbGFwc2VcIiBhcmlhLWxhYmVsbGVkYnk9XCJjaGFwdGVycy1oZWFkLTJcIlxuICAgICAgICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiIHJvbGU9XCJ0YWJwYW5lbFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLWNoYXB0ZXJzX19wYW5lbC10ZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxwPkN1bSBzb2NpaXMgbmF0b3F1ZSBwZW5hdGlidXMgZXQgbWFnbmlzIGRpcyBwYXJ0dXJpZW50IG1vbnRlcywgbmFzY2V0dXIgcmlkaWN1bHVzIG11cy4gVml2YW11cyBzYWdpdHRpc1xuICAgICAgICAgICAgICAgICAgICAgICAgbGFjdXMgdmVsIGF1Z3VlIGxhb3JlZXQgcnV0cnVtIGZhdWNpYnVzIGRvbG9yIGF1Y3Rvci4gTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmdcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsaXQuIENyYXMgbWF0dGlzIGNvbnNlY3RldHVyIHB1cnVzIHNpdCBhbWV0IGZlcm1lbnR1bS4gTnVsbGFtIGlkIGRvbG9yIGlkIG5pYmggdWx0cmljaWVzIHZlaGljdWxhXG4gICAgICAgICAgICAgICAgICAgICAgICB1dCBpZCBlbGl0LjwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsXCIgZGF0YS1jb2xsYXBzZT1cImdyb3VwXCI+XG4gICAgICAgICAgICA8ZGl2IGlkPVwiY2hhcHRlcnMtaGVhZC0zXCIgY2xhc3M9XCJwYWdlLWNoYXB0ZXJzX19wYW5lbC1oZWFkXCIgcm9sZT1cInRhYlwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIjY2hhcHRlcnMtY29udGVudC0zXCIgZGF0YS10b2dnbGU9XCJjb2xsYXBzZVwiIGRhdGEtcGFyZW50PVwiI2NoYXB0ZXJzXCIgYXJpYS1leHBhbmRlZD1cImZhbHNlXCIgYXJpYS1jb250cm9scz1cImNoYXB0ZXJzLWNvbnRlbnQtM1wiXG4gICAgICAgICAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCI+RHVpcyBtb2xsaXMgZXN0IG5vbiBjb21tb2RvIGx1Y3R1cyBuaXNpIGVyYXQgcG9ydHRpdG9yIGxpZ3VsYTwvYT5cbiAgICAgICAgICAgICAgICA8L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGlkPVwiY2hhcHRlcnMtY29udGVudC0zXCIgY2xhc3M9XCJwYWdlLWNoYXB0ZXJzX19wYW5lbC1jb250ZW50IGNvbGxhcHNlXCIgYXJpYS1sYWJlbGxlZGJ5PVwiY2hhcHRlcnMtaGVhZC0zXCJcbiAgICAgICAgICAgICAgICBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIiByb2xlPVwidGFicGFuZWxcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1jaGFwdGVyc19fcGFuZWwtdGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICA8cD5DdW0gc29jaWlzIG5hdG9xdWUgcGVuYXRpYnVzIGV0IG1hZ25pcyBkaXMgcGFydHVyaWVudCBtb250ZXMsIG5hc2NldHVyIHJpZGljdWx1cyBtdXMuIFZpdmFtdXMgc2FnaXR0aXNcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhY3VzIHZlbCBhdWd1ZSBsYW9yZWV0IHJ1dHJ1bSBmYXVjaWJ1cyBkb2xvciBhdWN0b3IuIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nXG4gICAgICAgICAgICAgICAgICAgICAgICBlbGl0LiBDcmFzIG1hdHRpcyBjb25zZWN0ZXR1ciBwdXJ1cyBzaXQgYW1ldCBmZXJtZW50dW0uIE51bGxhbSBpZCBkb2xvciBpZCBuaWJoIHVsdHJpY2llcyB2ZWhpY3VsYVxuICAgICAgICAgICAgICAgICAgICAgICAgdXQgaWQgZWxpdC48L3A+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbmBgYFxuKi9cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1jaGFwdGVycyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5wYWdlLWNoYXB0ZXJzX19hc2lkZSB7XG4gIG1hcmdpbjogMCAwIDI0cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLnBhZ2UtY2hhcHRlcnNfX2FzaWRlIHtcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgbWFyZ2luOiAwIDMycHggMCAwOyB9IH1cblxuLnBhZ2UtY2hhcHRlcnNfX3N1bW1hcnkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogOHB4IDQwcHggOHB4IDE2cHg7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmVlZWU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5wYWdlLWNoYXB0ZXJzX19zdW1tYXJ5OjpiZWZvcmUsIC5wYWdlLWNoYXB0ZXJzX19zdW1tYXJ5OjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMXB4O1xuICAgIHJpZ2h0OiAxNnB4O1xuICAgIHdpZHRoOiAxMXB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjFzIGVhc2U7IH1cbiAgLnBhZ2UtY2hhcHRlcnNfX3N1bW1hcnk6OmFmdGVyIHtcbiAgICByaWdodDogMjNweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cbiAgLnBhZ2UtY2hhcHRlcnNfX3N1bW1hcnlbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgLnBhZ2UtY2hhcHRlcnNfX3N1bW1hcnlbYXJpYS1leHBhbmRlZD1cInRydWVcIl06OmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cbiAgICAucGFnZS1jaGFwdGVyc19fc3VtbWFyeVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXTo6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAucGFnZS1jaGFwdGVyc19fc3VtbWFyeSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnBhZ2UtY2hhcHRlcnNfX25hdmlnYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTJlMWUxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZWVlOyB9XG4gIC5wYWdlLWNoYXB0ZXJzX19uYXZpZ2F0aW9uIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjFzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xcyBlYXNlLWluLW91dDsgfVxuICAgIC5wYWdlLWNoYXB0ZXJzX19uYXZpZ2F0aW9uIGEuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VGMzM0MDsgfVxuICAgIC5wYWdlLWNoYXB0ZXJzX19uYXZpZ2F0aW9uIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUYzMzQwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAucGFnZS1jaGFwdGVyc19fbmF2aWdhdGlvbiBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRjMzNDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAucGFnZS1jaGFwdGVyc19fbmF2aWdhdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA4cHggMDtcbiAgICAgIGJvcmRlcjogMDsgfSB9XG5cbi5wYWdlLWNoYXB0ZXJzX19wYW5lbDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbjogMTZweCAwIDA7IH1cblxuLnBhZ2UtY2hhcHRlcnNfX3BhbmVsLXRpdGxlIHtcbiAgbWFyZ2luOiAwOyB9XG4gIC5wYWdlLWNoYXB0ZXJzX19wYW5lbC10aXRsZSBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogOHB4IDQ4cHggOHB4IDE2cHg7XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmVlZWU7IH1cbiAgICAucGFnZS1jaGFwdGVyc19fcGFuZWwtdGl0bGUgYTo6YmVmb3JlLCAucGFnZS1jaGFwdGVyc19fcGFuZWwtdGl0bGUgYTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTdweDtcbiAgICAgIHJpZ2h0OiAxNnB4O1xuICAgICAgd2lkdGg6IDExcHg7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjFzIGVhc2U7IH1cbiAgICAucGFnZS1jaGFwdGVyc19fcGFuZWwtdGl0bGUgYTo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IDIzcHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cbiAgICAucGFnZS1jaGFwdGVyc19fcGFuZWwtdGl0bGUgYVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgLnBhZ2UtY2hhcHRlcnNfX3BhbmVsLXRpdGxlIGFbYXJpYS1leHBhbmRlZD1cInRydWVcIl06OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuICAgICAgLnBhZ2UtY2hhcHRlcnNfX3BhbmVsLXRpdGxlIGFbYXJpYS1leHBhbmRlZD1cInRydWVcIl06OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuICAgIC5wYWdlLWNoYXB0ZXJzX19wYW5lbC10aXRsZSBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIC5wYWdlLWNoYXB0ZXJzX19wYW5lbC10aXRsZSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGN1cnJlbnRDb2xvcjsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5wYWdlLWNoYXB0ZXJzX19wYW5lbC10aXRsZSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTsgfSB9XG5cbi5wYWdlLWNoYXB0ZXJzX19wYW5lbC1jb250ZW50OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDsgfVxuXG4ucGFnZS1jaGFwdGVyc19fcGFuZWwtdGV4dCB7XG4gIG1hcmdpbjogOHB4IDAgMDsgfVxuICAucGFnZS1jaGFwdGVyc19fcGFuZWwtdGV4dCBwOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbjogMDsgfVxuXG4ubmF2LXNlY3Rpb25zIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdi1zZWN0aW9ucyB7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLm5hdi1zZWN0aW9ucyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMkQyRDJBO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDU0cHgpO1xuICAgICAgcGFkZGluZy10b3A6IDQwcHg7IH0gfVxuICAubmF2LXNlY3Rpb25zIC5sb2dvLW5hdiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLm5hdi1zZWN0aW9ucyAubG9nby1uYXYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgLm5hdi1zZWN0aW9ucyAubmF2aWdhdGlvbiB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiBpbmhlcml0OyB9XG4gICAgICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLmxldmVsMDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGluaGVyaXQ7IH0gfVxuICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLnVpLW1lbnUtaWNvbixcbiAgICAubmF2LXNlY3Rpb25zIC5uYXZpZ2F0aW9uIC51aS1tZW51LWl0ZW0uYWxsLWNhdGVnb3J5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gbGk6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJEMkQyQTtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gbGk6aG92ZXIgYSBzcGFuIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gYTpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gbGkubGV2ZWwtdG9wOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNFRjMzNDA7IH0gfVxuICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLmxldmVsMCA+IC5sZXZlbC10b3Age1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgLm5hdi1zZWN0aW9ucyAubmF2aWdhdGlvbiAubGV2ZWwwID4gLmxldmVsLXRvcDpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLmxldmVsMC5hY3RpdmUgPiBhOm5vdCgudWktc3RhdGUtYWN0aXZlKSBzcGFuOm5vdCgudWktbWVudS1pY29uKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLm5hdmlnYXRpb24gLmxldmVsMCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICAubmF2LXNlY3Rpb25zIC5uYXZpZ2F0aW9uIC5uYXZpZ2F0aW9uIC5sZXZlbDAgLm5hdi0yIHtcbiAgICAgICAgbWluLXdpZHRoOiA5MHB4OyB9XG4gICAgLm5hdi1zZWN0aW9ucyAubmF2aWdhdGlvbiAubGV2ZWwxIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOyB9XG4gICAgICAubmF2LXNlY3Rpb25zIC5uYXZpZ2F0aW9uIC5sZXZlbDEuc3VibWVudSBsaSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgZ3JheTsgfVxuICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLmxldmVsMCAuc3VibWVudSBhOmhvdmVyLFxuICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLmxldmVsMCAuc3VibWVudSBhLnVpLXN0YXRlLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICMyRDJEMkE7IH1cbiAgICAubmF2LXNlY3Rpb25zIC5uYXZpZ2F0aW9uIC5sZXZlbDAgLnN1Ym1lbnUge1xuICAgICAgYmFja2dyb3VuZDogIzJEMkQyQTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1pbi13aWR0aDogMTAwJTsgfVxuICAgICAgLm5hdi1zZWN0aW9ucyAubmF2aWdhdGlvbiAubGV2ZWwwIC5zdWJtZW51IGxpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLmxldmVsMCAuc3VibWVudSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLmxldmVsMCAuc3VibWVudSAuYWN0aXZlID4gYSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjRUYzMzQwOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAubmF2LXNlY3Rpb25zIC5uYXZpZ2F0aW9uIC5sZXZlbDAgLnN1Ym1lbnUgLmFjdGl2ZSA+IGEge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTsgfSB9XG4gICAgICAubmF2LXNlY3Rpb25zIC5uYXZpZ2F0aW9uIC5sZXZlbDAgLnN1Ym1lbnUgYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyRDJEMkE7IH1cbiAgICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLmxldmVsMCAuc3VibWVudSBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgICAubmF2LXNlY3Rpb25zIC5uYXZpZ2F0aW9uIC5sZXZlbDAgLnN1Ym1lbnUgYTpob3ZlcixcbiAgICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLmxldmVsMCAuc3VibWVudSAubmF2aWdhdGlvbiAubGV2ZWwwIC5zdWJtZW51IGEudWktc3RhdGUtZm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMkQyRDJBOyB9XG4gICAgLm5hdi1zZWN0aW9ucyAubmF2aWdhdGlvbiAubGV2ZWwwLmFjdGl2ZSA+IC5sZXZlbC10b3AsXG4gICAgLm5hdi1zZWN0aW9ucyAubmF2aWdhdGlvbiAubGV2ZWwwLmhhcy1hY3RpdmUgPiAubGV2ZWwtdG9wIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI0VGMzM0MDtcbiAgICAgIGJvcmRlci13aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLm5hdi1zZWN0aW9ucyAubmF2aWdhdGlvbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyRDJEMkE7IH1cbiAgICAgICAgLm5hdi1zZWN0aW9ucyAubmF2aWdhdGlvbiBhIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgICAgLm5hdi1zZWN0aW9ucyAubmF2aWdhdGlvbiBsaSB7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAgICAgICAubmF2LXNlY3Rpb25zIC5uYXZpZ2F0aW9uIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLmxldmVsMC5hY3RpdmUgPiBhOm5vdCgudWktc3RhdGUtYWN0aXZlKSxcbiAgICAgICAgLm5hdi1zZWN0aW9ucyAubmF2aWdhdGlvbiAubGV2ZWwwLmFjdGl2ZSAuYWxsLWNhdGVnb3J5IC51aS1zdGF0ZS1mb2N1cyxcbiAgICAgICAgLm5hdi1zZWN0aW9ucyAubmF2aWdhdGlvbiAubGV2ZWwwLmFjdGl2ZSA+IC5sZXZlbC10b3Age1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogI0VGMzM0MDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSBhbmQgKG1pbi13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLmxldmVsMC5hY3RpdmUgPiBhOm5vdCgudWktc3RhdGUtYWN0aXZlKSxcbiAgICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gLmxldmVsMC5hY3RpdmUgLmFsbC1jYXRlZ29yeSAudWktc3RhdGUtZm9jdXMsXG4gICAgICAubmF2LXNlY3Rpb25zIC5uYXZpZ2F0aW9uIC5sZXZlbDAuYWN0aXZlID4gLmxldmVsLXRvcCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI0VGMzM0MDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5uYXYtc2VjdGlvbnMgLm5hdmlnYXRpb24gc3BhbiB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAgICAgLm5hdi1zZWN0aW9ucyAubmF2aWdhdGlvbiAubGV2ZWwwIHtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7IH0gfVxuXG4ubmF2LW9wZW4gLmhlYWRlci5jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDYwcHg7IH1cbiAgLm5hdi1vcGVuIC5oZWFkZXIuY29udGVudCAubG9nbyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDEwMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpLCBwcmludCB7XG4gIC5uYXZpZ2F0aW9uIC5sZXZlbDAgLnN1Ym1lbnUgLnN1Ym1lbnUtcmV2ZXJzZSB7XG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBpbmhlcml0OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAubmF2LXNlY3Rpb25zLWl0ZW0tdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm5hdi1zZWN0aW9ucy1pdGVtLWNvbnRlbnQge1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gIC5uYXZpZ2F0aW9uIC5sZXZlbDAge1xuICAgIG1hcmdpbjogMHB4OyB9XG4gICAgLm5hdmlnYXRpb24gLmxldmVsMC5uYXYtMiB7XG4gICAgICBtaW4td2lkdGg6IDcwcHg7IH1cbiAgLm5hdmlnYXRpb24gLmxldmVsMC5wYXJlbnQgPiAubGV2ZWwtdG9wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9IH1cblxuLmhvbWVwYWdlLXNlY3Rpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cblxuLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3Qge1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYmxhY2stZGlhbW9uZC1wbGF0ZS5wbmdcIikgcmVwZWF0LXk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkQyRDJBOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU2NXB4KSB7XG4gICAgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfSB9XG4gIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QgLm1vYmlsZSB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTBweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC1pdGVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2NjY2NjYztcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgd2lkdGg6IDI5MHB4O1xuICAgIGJveC1zaGFkb3c6IDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICBwYWRkaW5nOiAyNXB4IDI1cHggMzBweCAyNXB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0IC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC1pdGVtIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbS1waWMge1xuICAgICAgd2lkdGg6IDIwMXB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luOiBhdXRvOyB9XG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0IC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbSAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW0tcGljIGltZyB7XG4gICAgICAgIGhlaWdodDogMjAxcHg7XG4gICAgICAgIG1heC13aWR0aDogYXV0bzsgfVxuICAgIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC1pdGVtIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbS10aXRsZSB7XG4gICAgICBtYXJnaW46IGF1dG87IH1cbiAgICAgIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC1pdGVtIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbS10aXRsZSBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0IC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbSAucHJvZHVjdC1zZXBhcmF0aW9uIHtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgICBtYXJnaW46IDIwcHggYXV0bztcbiAgICAgIGJvcmRlcjogc29saWQgMXB4ICNFRjMzNDA7IH1cbiAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0IC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbSAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW0tc3VidGl0bGUge1xuICAgICAgY29sb3I6ICM5ODk4OTg7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdCAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW0gLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC1pdGVtLXByaWNlIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDQ3cHg7XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICAgICAgbWF4LWhlaWdodDogNTBweDsgfVxuICAgICAgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdCAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW0gLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC1pdGVtLXByaWNlIHAge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0IC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbSAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW0tcHJpY2UgLnByaWNlIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtOyB9XG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0IC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbSAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW0tcHJpY2UgLnNwZWNpYWwtcHJpY2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTY1cHgpIHtcbiAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0IC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbTpudGgtbGFzdC1jaGlsZCgzKSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdCAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW06bnRoLWxhc3QtY2hpbGQoMikge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMzAwcHgpIHtcbiAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0IC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbTpudGgtbGFzdC1jaGlsZCgxKSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNvbnRlbnQtcmV0YWlsZXJzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzYwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNvbnRlbnQtcmV0YWlsZXJzIHtcbiAgICAgIGhlaWdodDogOTA2cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuY29udGVudC1yZXRhaWxlcnMge1xuICAgICAgaGVpZ2h0OiA1MDBweDsgfSB9XG4gIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtZmlyc3Qge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgaGVpZ2h0OiA0NTNweDsgfVxuICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgaGVpZ2h0OiA0NTNweDsgfVxuICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLWZpcnN0LFxuICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgLmNvbnRlbnQtcmV0YWlsZXJzIC5jb250ZW50LXJldGFpbGVycy1maXJzdCxcbiAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtc2Vjb25kIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA0NTNweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLWZpcnN0LFxuICAgICAgLmNvbnRlbnQtcmV0YWlsZXJzIC5jb250ZW50LXJldGFpbGVycy1zZWNvbmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2JsYWNrLWRpYW1vbmQtcGxhdGUucG5nKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VGMzM0MDtcbiAgICAgICAgaGVpZ2h0OiA1MCU7IH0gfVxuICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtZmlyc3QgLnJldGFpbGVycyxcbiAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCAucmV0YWlsZXJzIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgdG9wOiA2NSU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLWZpcnN0IC5zdXBlcl90ZXN0LFxuICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtc2Vjb25kIC5zdXBlcl90ZXN0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMzAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgaGVpZ2h0OiA1MiU7XG4gICAgICB3aWR0aDogNDUlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLmNvbnRlbnQtcmV0YWlsZXJzIC5jb250ZW50LXJldGFpbGVycy1maXJzdCAuc3VwZXJfdGVzdCxcbiAgICAgICAgLmNvbnRlbnQtcmV0YWlsZXJzIC5jb250ZW50LXJldGFpbGVycy1zZWNvbmQgLnN1cGVyX3Rlc3Qge1xuICAgICAgICAgIGhlaWdodDogNTAlO1xuICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgbGVmdDogMzAlOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLWZpcnN0IC5zdXBlcl90ZXN0LFxuICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCAuc3VwZXJfdGVzdCB7XG4gICAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICBsZWZ0OiAyMCU7XG4gICAgICAgICAgYm9yZGVyOiBub25lOyB9IH1cbiAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtZmlyc3QgLnN1cGVyX3Rlc3QgLnN1cGVyX3Rlc3QtY29udGVudCxcbiAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtc2Vjb25kIC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IDkzJTtcbiAgICAgICAgd2lkdGg6IDk1JTsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLWZpcnN0IC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQsXG4gICAgICAgICAgLmNvbnRlbnQtcmV0YWlsZXJzIC5jb250ZW50LXJldGFpbGVycy1zZWNvbmQgLnN1cGVyX3Rlc3QgLnN1cGVyX3Rlc3QtY29udGVudCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgICAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtZmlyc3QgLnN1cGVyX3Rlc3QgLnN1cGVyX3Rlc3QtY29udGVudCAuYnRuLCAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLWZpcnN0IC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXByaW1hcnksIC5tb2RhbC1mb290ZXIgLmNvbnRlbnQtcmV0YWlsZXJzIC5jb250ZW50LXJldGFpbGVycy1maXJzdCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5hY3Rpb24tcHJpbWFyeSwgLmNvbnRlbnQtcmV0YWlsZXJzIC5jb250ZW50LXJldGFpbGVycy1maXJzdCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50XG4gICAgICAgICAgICAubW9kYWwtZm9vdGVyIC5hY3Rpb24tc2Vjb25kYXJ5LFxuICAgICAgICAgICAgLm1vZGFsLWZvb3RlciAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLWZpcnN0IC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQgLmFjdGlvbi1zZWNvbmRhcnksXG4gICAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5idG4sXG4gICAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5tb2RhbC1mb290ZXIgLmFjdGlvbi1wcmltYXJ5LCAubW9kYWwtZm9vdGVyXG4gICAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5hY3Rpb24tcHJpbWFyeSxcbiAgICAgICAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtc2Vjb25kIC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnRcbiAgICAgICAgICAgIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnksXG4gICAgICAgICAgICAubW9kYWwtZm9vdGVyXG4gICAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5hY3Rpb24tc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHdoaXRlOyB9IH1cbiAgICAgICAgLmNvbnRlbnQtcmV0YWlsZXJzIC5jb250ZW50LXJldGFpbGVycy1maXJzdCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5zdXBlcl90ZXN0LWNvbnRlbnQtYWxsLFxuICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5zdXBlcl90ZXN0LWNvbnRlbnQtYWxsIHtcbiAgICAgICAgICBoZWlnaHQ6IDkwJTtcbiAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMTAlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0yMCU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtZmlyc3QgLnN1cGVyX3Rlc3QgLnN1cGVyX3Rlc3QtY29udGVudCAuc3VwZXJfdGVzdC1jb250ZW50LWFsbCBpbWcsXG4gICAgICAgICAgLmNvbnRlbnQtcmV0YWlsZXJzIC5jb250ZW50LXJldGFpbGVycy1zZWNvbmQgLnN1cGVyX3Rlc3QgLnN1cGVyX3Rlc3QtY29udGVudCAuc3VwZXJfdGVzdC1jb250ZW50LWFsbCBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUlOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLWZpcnN0IC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQgLnN1cGVyX3Rlc3QtY29udGVudC1hbGwgYSxcbiAgICAgICAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtc2Vjb25kIC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQgLnN1cGVyX3Rlc3QtY29udGVudC1hbGwgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsgfSB9XG4gICAgICAgICAgLmNvbnRlbnQtcmV0YWlsZXJzIC5jb250ZW50LXJldGFpbGVycy1maXJzdCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5zdXBlcl90ZXN0LWNvbnRlbnQtYWxsIGE6dmlzaXRlZCxcbiAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5zdXBlcl90ZXN0LWNvbnRlbnQtYWxsIGE6dmlzaXRlZCB7XG4gICAgICAgICAgICBjb2xvcjogYmxhY2s7IH1cbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLWZpcnN0IC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQgLnN1cGVyX3Rlc3QtY29udGVudC1hbGwgYTp2aXNpdGVkLFxuICAgICAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5zdXBlcl90ZXN0LWNvbnRlbnQtYWxsIGE6dmlzaXRlZCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlOyB9IH1cbiAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLWZpcnN0IC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQgLnN1cGVyX3Rlc3QtY29udGVudC1hbGwgYTpob3ZlcixcbiAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5zdXBlcl90ZXN0LWNvbnRlbnQtYWxsIGE6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IGJsYWNrOyB9XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICAgICAgLmNvbnRlbnQtcmV0YWlsZXJzIC5jb250ZW50LXJldGFpbGVycy1maXJzdCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5zdXBlcl90ZXN0LWNvbnRlbnQtYWxsIGE6aG92ZXIsXG4gICAgICAgICAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtc2Vjb25kIC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQgLnN1cGVyX3Rlc3QtY29udGVudC1hbGwgYTpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlOyB9IH1cbiAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLWZpcnN0IC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQgLnN1cGVyX3Rlc3QtY29udGVudC1hbGwgYTpmb2N1cyxcbiAgICAgICAgICAuY29udGVudC1yZXRhaWxlcnMgLmNvbnRlbnQtcmV0YWlsZXJzLXNlY29uZCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5zdXBlcl90ZXN0LWNvbnRlbnQtYWxsIGE6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6IGJsYWNrOyB9XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICAgICAgLmNvbnRlbnQtcmV0YWlsZXJzIC5jb250ZW50LXJldGFpbGVycy1maXJzdCAuc3VwZXJfdGVzdCAuc3VwZXJfdGVzdC1jb250ZW50IC5zdXBlcl90ZXN0LWNvbnRlbnQtYWxsIGE6Zm9jdXMsXG4gICAgICAgICAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtc2Vjb25kIC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQgLnN1cGVyX3Rlc3QtY29udGVudC1hbGwgYTpmb2N1cyB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlOyB9IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtZmlyc3QgLnN1cGVyX3Rlc3QgLnN1cGVyX3Rlc3QtY29udGVudCAuc3VwZXJfdGVzdC1jb250ZW50LWFsbCxcbiAgICAgICAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtc2Vjb25kIC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQgLnN1cGVyX3Rlc3QtY29udGVudC1hbGwge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjElOyB9XG4gICAgICAgICAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtZmlyc3QgLnN1cGVyX3Rlc3QgLnN1cGVyX3Rlc3QtY29udGVudCAuc3VwZXJfdGVzdC1jb250ZW50LWFsbCBpbWcsXG4gICAgICAgICAgICAgIC5jb250ZW50LXJldGFpbGVycyAuY29udGVudC1yZXRhaWxlcnMtc2Vjb25kIC5zdXBlcl90ZXN0IC5zdXBlcl90ZXN0LWNvbnRlbnQgLnN1cGVyX3Rlc3QtY29udGVudC1hbGwgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlOyB9IH1cblxuLmJhY2tncm91bmQtaW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi5ob21lcGFnZS1zZWN0aW9uX3NlcnZpY2VzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNzAwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5ob21lcGFnZS1zZWN0aW9uX3NlcnZpY2VzIHtcbiAgICAgIGhlaWdodDogMTA1MHB4OyB9IH1cbiAgLmhvbWVwYWdlLXNlY3Rpb25fc2VydmljZXMgLnNlcnZpY2VzLW9uZSxcbiAgLmhvbWVwYWdlLXNlY3Rpb25fc2VydmljZXMgLnNlcnZpY2VzLXR3byB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJEMkQyQTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5ob21lcGFnZS1zZWN0aW9uX3NlcnZpY2VzIC5zZXJ2aWNlcy1vbmUsXG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9zZXJ2aWNlcyAuc2VydmljZXMtdHdvIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmhvbWVwYWdlLXNlY3Rpb25fc2VydmljZXMgLnNlcnZpY2VzLW9uZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBoZWlnaHQ6IDcwMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9zZXJ2aWNlcyAuc2VydmljZXMtb25lIHtcbiAgICAgICAgaGVpZ2h0OiAzNTBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgLmhvbWVwYWdlLXNlY3Rpb25fc2VydmljZXMgLnNlcnZpY2VzLW9uZSB7XG4gICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfSB9XG4gIC5ob21lcGFnZS1zZWN0aW9uX3NlcnZpY2VzIC5zZXJ2aWNlcy10d28ge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvZG90c190b3AucG5nXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCwgdXJsKFwiLi4vaW1hZ2VzL2xvZ29DLnBuZ1wiKSBuby1yZXBlYXQgcmlnaHQgdG9wIC01JSwgdXJsKFwiLi4vaW1hZ2VzL2RvdHNfYm90dG9tLnBuZ1wiKSByZXBlYXQteCBib3R0b207XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJEMkQyQTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLmhvbWVwYWdlLXNlY3Rpb25fc2VydmljZXMgLnNlcnZpY2VzLXR3byB7XG4gICAgICAgIGhlaWdodDogNzAwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5ob21lcGFnZS1zZWN0aW9uX3NlcnZpY2VzIC5zZXJ2aWNlcy10d28ge1xuICAgICAgICBoZWlnaHQ6IDcwMHB4OyB9IH1cbiAgICAuaG9tZXBhZ2Utc2VjdGlvbl9zZXJ2aWNlcyAuc2VydmljZXMtdHdvIC5zZXJ2aWNlcy10d29fY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogNDUlO1xuICAgICAgaGVpZ2h0OiA4MCU7XG4gICAgICBsZWZ0OiAxNSU7XG4gICAgICB0b3A6IDUlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC5ob21lcGFnZS1zZWN0aW9uX3NlcnZpY2VzIC5zZXJ2aWNlcy10d28gLnNlcnZpY2VzLXR3b19jb250ZW50IHtcbiAgICAgICAgICB3aWR0aDogODAlOyB9IH1cbiAgICAgIC5ob21lcGFnZS1zZWN0aW9uX3NlcnZpY2VzIC5zZXJ2aWNlcy10d28gLnNlcnZpY2VzLXR3b19jb250ZW50IC5zZXJ2aWNlcy1sb2dvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzdweDtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9zZXJ2aWNlcyAuc2VydmljZXMtdHdvIC5zZXJ2aWNlcy10d29fY29udGVudCAuc2VydmljZXMtZGVzY3Ige1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgICAgICAgLmhvbWVwYWdlLXNlY3Rpb25fc2VydmljZXMgLnNlcnZpY2VzLXR3byAuc2VydmljZXMtdHdvX2NvbnRlbnQgLnNlcnZpY2VzLWRlc2NyOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogLTIwcHg7XG4gICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgICAgIC5ob21lcGFnZS1zZWN0aW9uX3NlcnZpY2VzIC5zZXJ2aWNlcy10d28gLnNlcnZpY2VzLXR3b19jb250ZW50IC5zZXJ2aWNlcy1kZXNjcl9saXN0ZSxcbiAgICAgIC5ob21lcGFnZS1zZWN0aW9uX3NlcnZpY2VzIC5zZXJ2aWNlcy10d28gLnNlcnZpY2VzLXR3b19jb250ZW50IC5tZWNhYmFtLWxpc3Qge1xuICAgICAgICBmb250LXdlaWdodDogMjAwOyB9XG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9zZXJ2aWNlcyAuc2VydmljZXMtdHdvIC5zZXJ2aWNlcy10d29fY29udGVudCAubWVjYWJhbS1saXN0IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAtMjBweCAwIDQwcHggMDsgfVxuICAgICAgLmhvbWVwYWdlLXNlY3Rpb25fc2VydmljZXMgLnNlcnZpY2VzLXR3byAuc2VydmljZXMtdHdvX2NvbnRlbnQgLm1lY2FiYW0tbGlzdCBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC00NXB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC0uN2VtOyB9XG4gICAgICAgIC5ob21lcGFnZS1zZWN0aW9uX3NlcnZpY2VzIC5zZXJ2aWNlcy10d28gLnNlcnZpY2VzLXR3b19jb250ZW50IC5tZWNhYmFtLWxpc3QgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJ1xcMDAyMDIyJztcbiAgICAgICAgICBjb2xvcjogI0VGMzM0MDtcbiAgICAgICAgICBmb250LXNpemU6IDRlbTtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5ob21lcGFnZS1lbnRlcnByaXNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA3ODNweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2xvZ29DLnBuZ1wiKSBjYWxjKC01JSAtIDElKSAwIG5vLXJlcGVhdCwgdXJsKFwiLi4vaW1hZ2VzL2RvdHNfdHJhbnNwYXJlbnRzX3JpZ2h0LnBuZ1wiKSBuby1yZXBlYXQgcmlnaHQgdG9wOyB9XG4gIC5ob21lcGFnZS1lbnRlcnByaXNlOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDMwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2RvdHNfdHJhbnNwYXJlbnRzX2JvdHRvbS5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJvdW5kOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2U6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmhvbWVwYWdlLWVudGVycHJpc2Uge1xuICAgICAgaGVpZ2h0OiA4MzJweDsgfSB9XG4gIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZSxcbiAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZS1jb250ZW50LFxuICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3byAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUtY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwJTtcbiAgICAgIGxlZnQ6IDIwJTtcbiAgICAgIGhlaWdodDogNjAlO1xuICAgICAgd2lkdGg6IDgwJTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lLWNvbnRlbnQsXG4gICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3byAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUtY29udGVudCB7XG4gICAgICAgICAgd2lkdGg6IDcwJTsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZS1jb250ZW50LFxuICAgICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28gLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lLWNvbnRlbnQge1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgdG9wOiA1JTtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lLWNvbnRlbnQgLnNlcnZpY2VzLWxvZ28sXG4gICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28gLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lLWNvbnRlbnQgLnNlcnZpY2VzLWxvZ28ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzN3B4O1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZS1jb250ZW50IC5zZXJ2aWNlcy1sb2dvLFxuICAgICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3byAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUtY29udGVudCAuc2VydmljZXMtbG9nbyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lLWNvbnRlbnQgaDIsXG4gICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28gLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lLWNvbnRlbnQgaDIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZS1jb250ZW50IGgyLFxuICAgICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3byAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUtY29udGVudCBoMiB7XG4gICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvOyB9IH1cbiAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZS1jb250ZW50IGgyOmFmdGVyLFxuICAgICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28gLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lLWNvbnRlbnQgaDI6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IC0yMHB4O1xuICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMkQyRDJBOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZS1jb250ZW50IGgyOmFmdGVyLFxuICAgICAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZS1jb250ZW50IGgyOmFmdGVyIHtcbiAgICAgICAgICAgICAgYm90dG9tOiAtMTBweDsgfSB9XG4gICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lLWNvbnRlbnQgLnNlcnZpY2VzLWRlc2NyLFxuICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZS1jb250ZW50IC5zZXJ2aWNlcy1kZXNjciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUtY29udGVudCAuc2VydmljZXMtZGVzY3IsXG4gICAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZS1jb250ZW50IC5zZXJ2aWNlcy1kZXNjciB7XG4gICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTAlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lIC5idG4sIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZSAubW9kYWwtZm9vdGVyIC5hY3Rpb24tcHJpbWFyeSwgLm1vZGFsLWZvb3RlciAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUgLmFjdGlvbi1wcmltYXJ5LCAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmVcbiAgICAgIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnksXG4gICAgICAubW9kYWwtZm9vdGVyIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZSAuYWN0aW9uLXNlY29uZGFyeSxcbiAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3byAuYnRuLFxuICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1wcmltYXJ5LCAubW9kYWwtZm9vdGVyXG4gICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28gLmFjdGlvbi1wcmltYXJ5LFxuICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvXG4gICAgICAubW9kYWwtZm9vdGVyIC5hY3Rpb24tc2Vjb25kYXJ5LFxuICAgICAgLm1vZGFsLWZvb3RlclxuICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIC5hY3Rpb24tc2Vjb25kYXJ5IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIG1hcmdpbjogYXV0bzsgfSB9XG4gICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3by0tcGljLFxuICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3byAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28tLXBpYyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEyJTtcbiAgICAgIGxlZnQ6IDglO1xuICAgICAgaGVpZ2h0OiA3MCU7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL21lY2FiYW1fZmFjYWRlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3by0tcGljLFxuICAgICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28gLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvLS1waWMge1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDYwJTsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28tLXBpYyxcbiAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3by0tcGljIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28tLXBpYyxcbiAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3by0tcGljIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvLS1jaGFydGUsXG4gICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3by0tY2hhcnRlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMHB4O1xuICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICAgIHdpZHRoOiA0NzVweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9ibGFjay1kaWFtb25kLXBsYXRlLnBuZ1wiKSBjYWxjKC01JSAtIDElKSAwIG5vLXJlcGVhdCwgdXJsKFwiLi4vaW1hZ2VzL2RvdHNfdHJhbnNwYXJlbnRzX3JpZ2h0LnBuZ1wiKSBuby1yZXBlYXQgcmlnaHQgdG9wO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VGMzM0MDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvLS1jaGFydGUsXG4gICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3byAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28tLWNoYXJ0ZSB7XG4gICAgICAgICAgaGVpZ2h0OiAzMzBweDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyRDJEMkE7IH1cbiAgICAgICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvLS1jaGFydGUgLmJ0bi13aGl0ZSxcbiAgICAgICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28gLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvLS1jaGFydGUgLmJ0bi13aGl0ZSB7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvLS1jaGFydGUsXG4gICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3byAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28tLWNoYXJ0ZSB7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgbGVmdDogaW5oZXJpdDsgfSB9XG4gICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvLS1jaGFydGUgLmNoYXJ0ZV9jb250ZW50LFxuICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3by0tY2hhcnRlIC5jaGFydGVfY29udGVudCB7XG4gICAgICAgIGhlaWdodDogODAlO1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBtYXJnaW4tdG9wOiA2JTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDYlOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28tLWNoYXJ0ZSAuY2hhcnRlX2NvbnRlbnQsXG4gICAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3by0tY2hhcnRlIC5jaGFydGVfY29udGVudCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDglO1xuICAgICAgICAgICAgd2lkdGg6IDkwJTsgfSB9XG4gICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28tLWNoYXJ0ZSAuY2hhcnRlX2NvbnRlbnQgaDIsXG4gICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3byAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28tLWNoYXJ0ZSAuY2hhcnRlX2NvbnRlbnQgaDIge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMCU7IH1cbiAgICAgICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvLS1jaGFydGUgLmNoYXJ0ZV9jb250ZW50IGgyOmFmdGVyLFxuICAgICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3byAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28tLWNoYXJ0ZSAuY2hhcnRlX2NvbnRlbnQgaDI6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IC0yMHB4O1xuICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlOyB9XG4gICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28tLWNoYXJ0ZSAuY2hhcnRlX2NvbnRlbnQgLmNoYXJ0ZS1kZXNjcixcbiAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3by0tY2hhcnRlIC5jaGFydGVfY29udGVudCAuY2hhcnRlLWRlc2NyIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7IH1cbiAgICAgICAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25lIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3by0tY2hhcnRlIC5jaGFydGVfY29udGVudCAuYnRuLXdoaXRlLFxuICAgICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28gLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvLS1jaGFydGUgLmNoYXJ0ZV9jb250ZW50IC5idG4td2hpdGUge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHdoaXRlOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvLS1jaGFydGUgLmNoYXJ0ZV9jb250ZW50IC5idG4td2hpdGUsXG4gICAgICAgICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28gLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvLS1jaGFydGUgLmNoYXJ0ZV9jb250ZW50IC5idG4td2hpdGUge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZSB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiA2MCU7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmhvbWVwYWdlLWVudGVycHJpc2UgLmhvbWVwYWdlLWVudGVycHJpc2VfdHdvIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZSAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d28ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiA0MCU7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3byB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9kb3RzX3RyYW5zcGFyZW50c19ib3R0b20ucG5nXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAxMiU7IH0gfVxuXG4uc2lkZWJhci1tYWluIHtcbiAgcGFkZGluZy1sZWZ0OiAxJTsgfVxuXG4uYWN0aW9uIC5zb3J0ZXItYWN0aW9uIC5zb3J0LWFzYyxcbi5tb2RlcyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnNvcnRlci1hY3Rpb246YmVmb3JlIHtcbiAgY29udGVudDogJyc7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC50b29sYmFyLXNvcnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAudG9vbGJhci1zb3J0ZXIgLnNvcnRlci1sYWJlbCB7XG4gICAgICBtYXJnaW46IDA7IH0gfVxuXG4udG9vbGJhci1zb3J0ZXIgI3NvcnRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTJlMWUxOyB9XG4gIC50b29sYmFyLXNvcnRlciAjc29ydGVyOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5icmFuZC13aWRnZXQge1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLXRvcDogNjBweDtcbiAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuICAuYnJhbmQtd2lkZ2V0IC5vd2wtaXRlbSB7XG4gICAgaGVpZ2h0OiAxNzBweDsgfVxuICAuYnJhbmQtd2lkZ2V0IC5ibG9jay10aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB3aWR0aDogMzAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmJyYW5kLXdpZGdldCAuYmxvY2stdGl0bGUgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDNyZW07IH1cbiAgICAuYnJhbmQtd2lkZ2V0IC5ibG9jay10aXRsZTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAzNCU7XG4gICAgICB3aWR0aDogOTBweDtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYmFja2dyb3VuZDogI0VGMzM0MDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5icmFuZC13aWRnZXQgLmJsb2NrLXRpdGxlOjphZnRlciB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC5icmFuZC13aWRnZXQgLmJsb2NrLXRpdGxlOjphZnRlciB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07IH0gfVxuICAuYnJhbmQtd2lkZ2V0IC5icmFuZC1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxNTBweDtcbiAgICB3aWR0aDogMTUwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgYm94LXNoYWRvdzogMXB4IDFweCAycHggMnB4ICNjY2M7IH1cbiAgLmJyYW5kLXdpZGdldCB1bCB7XG4gICAgcGFkZGluZzogMDtcbiAgICAtd2Via2l0LXBhZGRpbmctc3RhcnQ6IDBweDsgfVxuICAuYnJhbmQtd2lkZ2V0IC5vd2wtY2Fyb3VzZWwgLm93bC1sb2FkZWQgLm93bC1kcmFnIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgLXdlYmtpdC1wYWRkaW5nLXN0YXJ0OiAwcHg7IH1cbiAgLmJyYW5kLXdpZGdldCAub3dsLWl0ZW0gbGkge1xuICAgIG1hcmdpbi10b3A6IDlweDsgfVxuICAuYnJhbmQtd2lkZ2V0IC5vd2wtbGVmdCxcbiAgLmJyYW5kLXdpZGdldCAub3dsLXJpZ2h0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLmJyYW5kLXdpZGdldCAub3dsLWRvdHMge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmJyYW5kLXdpZGdldCAuYnJhbmRvd2wtcGxheSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5icmFuZC13aWRnZXQgLmJyYW5kb3dsLXBsYXkgPiBhIHtcbiAgICBmb250LXNpemU6IDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNjY2M7XG4gICAgdHJhbnNpdGlvbjogMnM7XG4gICAgbWFyZ2luLWxlZnQ6IC01cHg7IH1cbiAgICAuYnJhbmQtd2lkZ2V0IC5icmFuZG93bC1wbGF5ID4gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUYzMzQwOyB9XG4gICAgLmJyYW5kLXdpZGdldCAuYnJhbmRvd2wtcGxheSA+IGE6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm9yZGVyOiBzb2xpZCAjY2NjO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIDNweCAzcHggMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDNweDtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGxlZnQ6IDhweDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7IH1cbiAgLmJyYW5kLXdpZGdldCAuYnJhbmRvd2wtcGxheSA+IGE6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAuYnJhbmQtd2lkZ2V0IC5icmFuZG93bC1wbGF5ID4gYTpmaXJzdC1vZi10eXBlOmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgbGVmdDogMTFweDsgfVxuXG4uZm9ybS5zZWFyY2guYWR2YW5jZWQge1xuICB3aWR0aDogNjAlO1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmc6IDElO1xuICBtYXJnaW4tdG9wOiA1JTsgfVxuICAuZm9ybS5zZWFyY2guYWR2YW5jZWQgbGFiZWwubGFiZWwge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmZvcm0uc2VhcmNoLmFkdmFuY2VkIGxlZ2VuZC5sZWdlbmQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gIC5mb3JtLnNlYXJjaC5hZHZhbmNlZCAucHJpbWFyeSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuZm9ybS5zZWFyY2guYWR2YW5jZWQgaW5wdXQge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuXG4uc2VhcmNoLWF1dG9jb21wbGV0ZSB7XG4gIHRvcDogM3B4OyB9XG4gIC5zZWFyY2gtYXV0b2NvbXBsZXRlIHVsIHtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAuc2VhcmNoLWF1dG9jb21wbGV0ZSB1bCBsaSB7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAgIC5zZWFyY2gtYXV0b2NvbXBsZXRlIHVsIGxpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7IH1cbiAgICAuc2VhcmNoLWF1dG9jb21wbGV0ZSB1bCBsaS5zZWxlY3RlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuICAuc2VhcmNoLWF1dG9jb21wbGV0ZSAuYW1vdW50IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5wcm9kdWN0X3JlbnQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UyZTFlMTtcbiAgbWF4LXdpZHRoOiAyNTVweDsgfVxuICAucHJvZHVjdF9yZW50IC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMmUxZTE7XG4gICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbiAgLnByb2R1Y3RfcmVudCAuZGF5LFxuICAucHJvZHVjdF9yZW50IC53ZWVrLFxuICAucHJvZHVjdF9yZW50IC53ZWVrZW5kLFxuICAucHJvZHVjdF9yZW50IC5tb250aCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG4gIC5wcm9kdWN0X3JlbnQgLnZhbHVlIHtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIC5wcm9kdWN0X3JlbnQgLmxhYmVsIHtcbiAgICBjb2xvcjogIzU3NTc1NzsgfVxuXG4uaW5zdHJ1Y3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuYm9keSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keSB7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cblxuLnBhZ2UtdGl0bGUtd3JhcHBlciB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgY29sb3I6ICNFRjMzNDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG4gIHBhZGRpbmctbGVmdDogMSU7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCAjY2NjOyB9XG4gIC5jYXRhbG9nLXByb2R1Y3QtdmlldyAucGFnZS10aXRsZS13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5jYXRhbG9nLWNhdGVnb3J5LXZpZXcgLnBhZ2UtdGl0bGUtd3JhcHBlciB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4ud3JhcHBlciB7XG4gIGZsZXg6IDEgMCBhdXRvOyB9XG5cbi5wYWdlLXdyYXBwZXIge1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogYXV0bzsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgLnBhZ2Utd3JhcHBlciB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IGluaGVyaXQ7IH0gfVxuXG4uY29sdW1ucyAuY29sdW1uLm1haW4ge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgbWluLWhlaWdodDogNDAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4ucGFnZS1tYWluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uY2F0YWxvZy1wcm9kdWN0LXZpZXcgLmNvbHVtbi5tYWluIHtcbiAgbWFyZ2luLWJvdHRvbTogMTQwcHg7IH1cblxuLnBhZ2UtZm9vdGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMyRDJEMkE7XG4gIGNvbG9yOiB3aGl0ZTsgfVxuICAucGFnZS1mb290ZXIgLmNvcHlyaWdodCB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDcwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIC5wYWdlLWZvb3RlciAuY29weXJpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogYXV0bzsgfSB9XG5cbi5mb290ZXIuY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmZvb3Rlci5jb250ZW50IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctdG9wOiAxMCU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAlOyB9IH1cblxuLmZvb3Rlcl9jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZm9vdGVyX2NvbnRlbnQgLmZvb3Rlcl9jb250ZW50X3RvcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjgwcHgpIHtcbiAgICAgIC5mb290ZXJfY29udGVudCAuZm9vdGVyX2NvbnRlbnRfdG9wIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBpbmhlcml0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBpbmhlcml0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLmZvb3Rlcl9jb250ZW50IC5mb290ZXJfY29udGVudF90b3Age1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cbiAgICAuZm9vdGVyX2NvbnRlbnQgLmZvb3Rlcl9jb250ZW50X3RvcCAuZm9vdGVyX2NvbnRlbnQtbG9nbyB7XG4gICAgICBoZWlnaHQ6IDkycHg7XG4gICAgICB3aWR0aDogMjU3cHg7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC5mb290ZXJfY29udGVudCAuZm9vdGVyX2NvbnRlbnRfdG9wIC5mb290ZXJfY29udGVudC1sb2dvIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IGF1dG87IH0gfVxuICAgICAgLmZvb3Rlcl9jb250ZW50IC5mb290ZXJfY29udGVudF90b3AgLmZvb3Rlcl9jb250ZW50LWxvZ28gLmZvb3Rlci1sb2dvIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgYm90dG9tOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5mb290ZXJfY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmZvb3Rlcl9jb250ZW50IC5mb290ZXJfY29udGVudC1jYWxsIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgaGVpZ2h0OiA5MnB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBsaW5lLWhlaWdodDogODVweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLmZvb3Rlcl9jb250ZW50IC5mb290ZXJfY29udGVudC1jYWxsIGEge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYm9yZGVyLWNvbG9yOiB3aGl0ZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIC5mb290ZXJfY29udGVudCAuZm9vdGVyX2NvbnRlbnQtY2FsbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uZm9vdGVyX2NvbnRlbnQtbmF2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIHdpZHRoOiA5NSU7XG4gIGhlaWdodDogYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJEMkQyQTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuZm9vdGVyX2NvbnRlbnQtbmF2IHVsLmZpcnN0LWxldmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHdpZHRoOiA5MCU7IH1cbiAgICAuZm9vdGVyX2NvbnRlbnQtbmF2IHVsLmZpcnN0LWxldmVsIGxpIHtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWF4LXdpZHRoOiBpbmhlcml0OyB9XG4gICAgICAuZm9vdGVyX2NvbnRlbnQtbmF2IHVsLmZpcnN0LWxldmVsIGxpIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuZm9vdGVyX2NvbnRlbnQtbmF2IHVsLnN1Ym5hdiB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gICAgLmZvb3Rlcl9jb250ZW50LW5hdiB1bC5zdWJuYXYgbGkge1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgIC5mb290ZXJfY29udGVudC1uYXYgdWwuc3VibmF2IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5mb290ZXJfY29udGVudC1uYXYgbGkge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAuZm9vdGVyX2NvbnRlbnQtbmF2IGEge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5mb290ZXJfY29udGVudC1uYXYgYTp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5mb290ZXJfY29udGVudC1uYXYgYTpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk4MHB4KSB7XG4gICAgLmZvb3Rlcl9jb250ZW50LW5hdiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmZvb3Rlcl9jb250ZW50LWFycm93IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogNjVweDtcbiAgYm90dG9tOiAxOXB4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIHdpZHRoOiAyM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUYzMzQwO1xuICBmb250LXNpemU6IDJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBsaW5lLWhlaWdodDogOHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmZvb3Rlcl9jb250ZW50LWFycm93IGkge1xuICAgIGJvcmRlcjogc29saWQgd2hpdGU7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDNweCAzcHggMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogM3B4OyB9XG4gIC5mb290ZXJfY29udGVudC1hcnJvdyAudXAge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTgwcHgpIHtcbiAgICAuZm9vdGVyX2NvbnRlbnQtYXJyb3cge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbiNoZWFkZXItYmFuZGVyYXUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNDNweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICM3QzdDN0M7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICNoZWFkZXItYmFuZGVyYXUge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3ODBweCkge1xuICAgICNoZWFkZXItYmFuZGVyYXUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICNoZWFkZXItYmFuZGVyYXUgLmhlYWRlci1iYW5kZXJhdV9taWRkbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwODBweCkge1xuICAgICAgI2hlYWRlci1iYW5kZXJhdSAuaGVhZGVyLWJhbmRlcmF1X21pZGRsZSB7XG4gICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgIHRyYW5zZm9ybTogaW5oZXJpdDsgfSB9XG4gICAgI2hlYWRlci1iYW5kZXJhdSAuaGVhZGVyLWJhbmRlcmF1X21pZGRsZSBhLmxpbmstaGVhZGVyIHtcbiAgICAgIGNvbG9yOiAjN0M3QzdDOyB9XG4gICAgICAjaGVhZGVyLWJhbmRlcmF1IC5oZWFkZXItYmFuZGVyYXVfbWlkZGxlIGEubGluay1oZWFkZXI6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzdDN0M3QzsgfVxuICAgICAgI2hlYWRlci1iYW5kZXJhdSAuaGVhZGVyLWJhbmRlcmF1X21pZGRsZSBhLmxpbmstaGVhZGVyOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogIzdDN0M3QzsgfVxuICAgICAgI2hlYWRlci1iYW5kZXJhdSAuaGVhZGVyLWJhbmRlcmF1X21pZGRsZSBhLmxpbmstaGVhZGVyOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICM3QzdDN0M7IH1cbiAgI2hlYWRlci1iYW5kZXJhdSAuaGVhZGVyLWJhbmRlcmF1X3JpZ2h0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxNXB4OyB9XG4gICNoZWFkZXItYmFuZGVyYXUgcCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBmb250LXNpemU6IDEuNHJlbTsgfVxuXG4uaGVhZGVyLmNvbnRlbnQge1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuaGVhZGVyLmNvbnRlbnQge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgLmhlYWRlci5jb250ZW50IC5uYXYtdG9nZ2xlIHtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBjb2xvcjogIzJEMkQyQTsgfVxuICAuaGVhZGVyLmNvbnRlbnQgLmxvZ28ge1xuICAgIHdpZHRoOiAzNjBweDtcbiAgICBoZWlnaHQ6IDEyMHB4O1xuICAgIG1hcmdpbjogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3ODBweCkge1xuICAgICAgLmhlYWRlci5jb250ZW50IC5sb2dvIHtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGxlZnQ6IDEwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfSB9XG4gIC5oZWFkZXIuY29udGVudCAuc2xvZ2FuLWxvZ28ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDQxJTtcbiAgICBsZWZ0OiAxMDUlO1xuICAgIHdpZHRoOiAyMDBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgLmhlYWRlci5jb250ZW50IC5zbG9nYW4tbG9nbyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuaGVhZGVyLmNvbnRlbnQgLm5vLWEge1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgLmhlYWRlci5jb250ZW50IC5uby1hOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBibGFjazsgfVxuICAuaGVhZGVyLmNvbnRlbnQgLmhlYWRlcl9tb2JpbGUtaWNvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTBweDtcbiAgICBsaW5lLWhlaWdodDogNzBweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGNvbG9yOiBibGFjazsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3ODBweCkge1xuICAgICAgLmhlYWRlci5jb250ZW50IC5oZWFkZXJfbW9iaWxlLWljb25zIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDcwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAgICAgLmhlYWRlci5jb250ZW50IC5oZWFkZXJfbW9iaWxlLWljb25zIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDcwcHg7IH0gfVxuICAgIC5oZWFkZXIuY29udGVudCAuaGVhZGVyX21vYmlsZS1pY29ucyBhIHtcbiAgICAgIGNvbG9yOiBibGFjazsgfVxuICAgIC5oZWFkZXIuY29udGVudCAuaGVhZGVyX21vYmlsZS1pY29ucyBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMkQyRDJBOyB9XG4gICAgLmhlYWRlci5jb250ZW50IC5oZWFkZXJfbW9iaWxlLWljb25zIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICMyRDJEMkE7IH1cbiAgICAuaGVhZGVyLmNvbnRlbnQgLmhlYWRlcl9tb2JpbGUtaWNvbnMgc3ZnLmljb24ge1xuICAgICAgd2lkdGg6IDNlbTtcbiAgICAgIGhlaWdodDogMS42ZW07IH1cbiAgLmhlYWRlci5jb250ZW50IC5ibG9jay1zZWFyY2gge1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICB6LWluZGV4OiA0O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogNTVweDtcbiAgICB0b3A6IDUwcHg7IH1cbiAgICAuaGVhZGVyLmNvbnRlbnQgLmJsb2NrLXNlYXJjaCAuY29udHJvbCBpbnB1dCB7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAuaGVhZGVyLmNvbnRlbnQgLmJsb2NrLXNlYXJjaCAjc2VhcmNoX2F1dG9jb21wbGV0ZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmhlYWRlci5jb250ZW50IC5ibG9jay1zZWFyY2ggLm5lc3RlZCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc4MHB4KSB7XG4gICAgICAuaGVhZGVyLmNvbnRlbnQgLmJsb2NrLXNlYXJjaCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uaGVhZGVyLmNvbnRlbnQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNvbnRlbnQ6ICcnOyB9XG5cbi5oZWFkZXIuY29udGVudDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBjb250ZW50OiAnJzsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogR2VuZXJhbFxubmFtZTogZ2VuZXJhbFxuY2F0ZWdvcnk6IFBhZ2VzXG4tLS1cbldoZW4gY3JlYXRpbmcgYSBuZXcgY21zIHBhZ2UsIGJlIHN1cmUgdG8gc2V0IHRoZSBgMSBjb2x1bW5gIHRlbXBsYXRlIGluIG9yZGVyIHRvIGhhdmUgdGhlIGNvcnJlY3QgbGF5b3V0IGFwcGxpZWQuIFRoaXMgaXMgdmFsaWQgZm9yIGFsbCB0aGUgQ01TIHRlbXBsYXRlcy5cblxuVGhlIGhlYWRpbmcgd2lsbCBiZSBkaXNwbGF5ZWQgYXQgdGhlIHRvcCBvZiB0aGUgcGFnZS4gTW9zdCBvZiB0aGUgdGltZSwgd2UgcmVjb21tZW5kIHRvIG1hdGNoIHRoZSBwYWdlIHRpdGxlIGFuZCB0aGUgaGVhZGluZy5cbiovXG4ucGFnZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLjJweDsgfVxuICAucGFnZSA+IGgxLFxuICAucGFnZSA+IGgyLFxuICAucGFnZSA+IGgzLFxuICAucGFnZSA+IGg0LFxuICAucGFnZSA+IGg1LFxuICAucGFnZSA+IGg2IHtcbiAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5wYWdlID4gaDIge1xuICAgIGZvbnQtc2l6ZTogMnJlbTsgfVxuICAucGFnZSA+IGgzIHtcbiAgICBmb250LXNpemU6IDEuOHJlbTsgfVxuICAucGFnZSA+IGg0IHtcbiAgICBmb250LXNpemU6IDEuN3JlbTsgfVxuICAucGFnZSA+IGg1LFxuICAucGFnZSA+IGg2IHtcbiAgICBmb250LXNpemU6IDEuNnJlbTsgfVxuXG4uaG9tZXBhZ2Utc2VjdGlvbiB7XG4gIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuaG9tZXBhZ2Utc2VjdGlvbiB7XG4gICAgICBtYXJnaW46IDA7IH0gfVxuXG4uaG9tZXBhZ2Utc2VjdGlvbl9fdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmhvbWVwYWdlLXNlY3Rpb25fX3RpdGxlOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTIwcHg7XG4gICAgbGVmdDogY2FsYyg1MCUgLSA0NXB4KTtcbiAgICB3aWR0aDogOTBweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiAjRUYzMzQwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5ob21lcGFnZS1zZWN0aW9uX190aXRsZSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LXNpemU6IDMuNHJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuOHB4OyB9IH1cblxuLmhvbWVwYWdlLWNvdmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAyLjZyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICBsaW5lLWhlaWdodDogMS4zO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmhvbWVwYWdlLWNvdmVyIHtcbiAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIC5ob21lcGFnZS1jb3ZlciB7XG4gICAgICBoZWlnaHQ6IDM4MHB4OyB9IH1cbiAgLmhvbWVwYWdlLWNvdmVyIC5ob21lcGFnZS1jb3Zlcl9pbWcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ob21lcGFnZS1jb3ZlciAuaG9tZXBhZ2UtY292ZXJfaW1nIGltZyB7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAuaG9tZXBhZ2UtY292ZXIgLmhvbWVwYWdlLWNvdmVyX2ltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuaG9tZXBhZ2UtY292ZXIgLmhvbWVwYWdlLWNvdmVyX2ltZ19tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuaG9tZXBhZ2UtY292ZXIgLmhvbWVwYWdlLWNvdmVyX2ltZ19tb2JpbGUgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDYwMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAuaG9tZXBhZ2UtY292ZXIgLmhvbWVwYWdlLWNvdmVyX2ltZ19tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5ob21lcGFnZS1jb3Zlcl9fdGV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogODBweDtcbiAgICByaWdodDogNiU7XG4gICAgd2lkdGg6IDQwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAuaG9tZXBhZ2UtY292ZXJfX3RleHQge1xuICAgICAgICB0b3A6IDUlO1xuICAgICAgICBsZWZ0OiAxNSU7XG4gICAgICAgIHdpZHRoOiA4MCU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLmhvbWVwYWdlLWNvdmVyX190ZXh0IHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICBsZWZ0OiAxJTsgfSB9XG4gICAgLmhvbWVwYWdlLWNvdmVyX190ZXh0IGgxIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBmb250LXNpemU6IDQuMnJlbTtcbiAgICAgIGNvbG9yOiAjRUYzMzQwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC5ob21lcGFnZS1jb3Zlcl9fdGV4dCBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyLjZyZW07IH0gfVxuICAgIC5ob21lcGFnZS1jb3Zlcl9fdGV4dCBwIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICAuaG9tZXBhZ2UtY292ZXJfX3RleHQgcDo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IC0yMHB4O1xuICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZDogIzMzMzMzMzsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAuaG9tZXBhZ2UtY292ZXJfX3RleHQgcDo6YWZ0ZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07IH0gfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICAuaG9tZXBhZ2UtY292ZXJfX3RleHQgcDo6YWZ0ZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07IH0gfVxuICAgIC5ob21lcGFnZS1jb3Zlcl9fdGV4dCBidXR0b24ge1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIHBhZGRpbmc6IDhweCAyMHB4IDEwcHggMjBweDtcbiAgICAgIGNvbG9yOiAjRUYzMzQwO1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBib3JkZXItcmFkaXVzOiA1O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI0VGMzM0MDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi50b29sYmFyLXByb2R1Y3RzIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAudG9vbGJhci1wcm9kdWN0cyBzZWxlY3Qge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIC50b29sYmFyLXByb2R1Y3RzIHNlbGVjdDpmb2N1cywgLnRvb2xiYXItcHJvZHVjdHMgc2VsZWN0OmFjdGl2ZSwgLnRvb2xiYXItcHJvZHVjdHMgc2VsZWN0OmhvdmVyLCAudG9vbGJhci1wcm9kdWN0cyBzZWxlY3Q6Y2hlY2tlZCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIC50b29sYmFyLXByb2R1Y3RzIHNlbGVjdCBvcHRpb24ge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnNpZGViYXItbWFpbiB7XG4gIG1hcmdpbi10b3A6IDkwcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaWRlYmFyLWFkZGl0aW9uYWwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLnByb2R1Y3QtaXRlbS1hY3Rpb25zIC5hY3Rpb25zLXByaW1hcnkge1xuICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLmZpbHRlci10aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5maWx0ZXItY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG5cbi5maWx0ZXItY29udGVudCAuYWN0aW9uLnJlbW92ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxNnB4OyB9XG5cbi5ibG9jay1jb250ZW50IGE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjRUYzMzQwOyB9XG5cbi5ibG9jay1jb250ZW50IGE6aG92ZXIge1xuICBjb2xvcjogI0VGMzM0MDsgfVxuXG4uYmxvY2stY29tcGFyZSB7XG4gIHBhZGRpbmc6IDclOyB9XG4gIC5ibG9jay1jb21wYXJlIC5hY3Rpb25zLXRvb2xiYXIge1xuICAgIHBhZGRpbmc6IDExJTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxODAwcHgpIHtcbiAgICAgIC5ibG9jay1jb21wYXJlIC5hY3Rpb25zLXRvb2xiYXIge1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICAuYmxvY2stY29tcGFyZSAuYWN0aW9ucy10b29sYmFyIGEuYWN0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAuYmxvY2stY29tcGFyZSAuYWN0aW9ucy10b29sYmFyIC5jb21wYXJlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgICAgIC5ibG9jay1jb21wYXJlIC5hY3Rpb25zLXRvb2xiYXIgLmNvbXBhcmUgYSwgLmJsb2NrLWNvbXBhcmUgLmFjdGlvbnMtdG9vbGJhciAuY29tcGFyZSBhOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTsgfVxuICAuYmxvY2stY29tcGFyZSAuZGVsZXRlOmJlZm9yZTpob3ZlciB7XG4gICAgY29sb3I6ICNFRjMzNDA7IH1cblxuLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbXMge1xuICBwYWRkaW5nLXJpZ2h0OiAyJTtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbXMge1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG5cbi5wYWdlLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAyJTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBib3JkZXI6IHNvbGlkIDFweCByZ2JhKDMzLCAzMywgMzMsIDAuMSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogYXV0bzsgfSB9XG4gIC5wYWdlLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByaWNlLWJveCB7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIG1hcmdpbjogMjVweCAwIDI1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7IH1cbiAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcmljZS1ib3ggLnByaWNlLWxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtOyB9XG4gIC5wYWdlLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnN0b2NrLW9uLXRvcCB7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXJnaW46IGF1dG87IH1cbiAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5zdG9jay1vbi10b3AgLm91dC1vZixcbiAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5zdG9jay1vbi10b3AgLmZvci1yZW50IHtcbiAgICAgIGNvbG9yOiByZ2JhKDQ2LCAxMjUsIDUwLCAwLjcpO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiBhdXRvOyB9XG4gICAgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAuc3RvY2stb24tdG9wIC5mb3ItcmVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWl0ZW0taW5mbyB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHdpZHRoOiAyNzBweDsgfVxuICAgIC5wYWdlLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1pbmZvIGltZyB7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBoZWlnaHQ6IDIzNHB4O1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1pdGVtLWlubmVyIC5wcm9kdWN0LWl0ZW0tYWN0aW9ucyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NzNweCkge1xuICAgIC5wYWdlLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1pbm5lciAucHJvZHVjdC1pdGVtLWFjdGlvbnMgLmJ0biwgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1pdGVtLWlubmVyIC5wcm9kdWN0LWl0ZW0tYWN0aW9ucyAubW9kYWwtZm9vdGVyIC5hY3Rpb24tcHJpbWFyeSwgLm1vZGFsLWZvb3RlciAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWl0ZW0taW5uZXIgLnByb2R1Y3QtaXRlbS1hY3Rpb25zIC5hY3Rpb24tcHJpbWFyeSwgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1pdGVtLWlubmVyIC5wcm9kdWN0LWl0ZW0tYWN0aW9uc1xuICAgIC5tb2RhbC1mb290ZXIgLmFjdGlvbi1zZWNvbmRhcnksXG4gICAgLm1vZGFsLWZvb3RlciAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWl0ZW0taW5uZXIgLnByb2R1Y3QtaXRlbS1hY3Rpb25zIC5hY3Rpb24tc2Vjb25kYXJ5IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgcGFkZGluZzogMTJweCAyMHB4O1xuICAgICAgdGV4dC1vdmVyZmxvdzogaW5oZXJpdDsgfSB9XG4gIC5wYWdlLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1pbm5lciAucHJvZHVjdC1pdGVtLWFjdGlvbi12aWV3IHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1pdGVtLWlubmVyIC5hZGRjb21wYXJlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDY5LCA5MCwgMTAwLCAwLjYpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWl0ZW0taW5uZXIgLmFkZGNvbXBhcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWl0ZW0taW5uZXIgLmFkZGNvbXBhcmUgYTo6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnaWNvbnMtYmxhbmstdGhlbWUnO1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogLTE1MDBweDtcbiAgICAgIGhlaWdodDogMC4xcHg7XG4gICAgICB3aWR0aDogMC4xcHg7IH1cbiAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWl0ZW0taW5uZXIgLmFkZGNvbXBhcmUgLmFkZGNvbXBhcmUtaWNvbiB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAgIC5wYWdlLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1pbm5lciAuYWRkY29tcGFyZSAuYWRkY29tcGFyZS1pY29uIC5pY29uLWNvbXBhcmUge1xuICAgICAgICBmb250LWZhbWlseTogJ2ljb25zLWJsYW5rLXRoZW1lJztcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1pdGVtLW5hbWUge1xuICAgIGhlaWdodDogODBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiA1JTtcbiAgICBtYXJnaW4tYm90dG9tOiAyJTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuICAgIC5wYWdlLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1uYW1lIGEge1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWl0ZW0tbmFtZSBhOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAxNSU7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRUYzMzQwOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgIC5wYWdlLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1uYW1lIGE6YWZ0ZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07IH0gfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWl0ZW0tbmFtZSBhOmFmdGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtOyB9IH1cbiAgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJpY2UtYm94IHtcbiAgICBoZWlnaHQ6IDQ1cHg7IH1cbiAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcmljZS1ib3ggLnByaWNlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDJyZW07IH1cbiAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcmljZS1ib3ggLm9sZC1wcmljZSAucHJpY2Uge1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07IH1cbiAgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1yZXZpZXdzLXN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5wYWdlLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtcmV2aWV3cy1zdW1tYXJ5IC5yZXZpZXdzLWFjdGlvbnMge1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAucGFnZS1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LXJldmlld3Mtc3VtbWFyeSAucmV2aWV3cy1hY3Rpb25zIGEuYWN0aW9uLnZpZXcsIC5wYWdlLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtcmV2aWV3cy1zdW1tYXJ5IC5yZXZpZXdzLWFjdGlvbnMgc3BhbiB7XG4gICAgICAgIGNvbG9yOiBibGFjazsgfVxuICAgICAgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1yZXZpZXdzLXN1bW1hcnkgLnJldmlld3MtYWN0aW9ucyBhIC5hY3Rpb24gLnZpZXc6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiBibGFjazsgfVxuICAgICAgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1yZXZpZXdzLXN1bW1hcnkgLnJldmlld3MtYWN0aW9ucyBhIHtcbiAgICAgICAgY29sb3I6IGJsYWNrOyB9XG4gIC5wYWdlLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnJldmlldy1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogLTEwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHBhZGRpbmc6IDEycHggNDBweDtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NDBweCkge1xuICAgICAgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucmV2aWV3LWJsb2NrIHtcbiAgICAgICAgbGVmdDogLTM1cHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucmV2aWV3LWJsb2NrIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5wcm9kdWN0LXJldmlld3Mtc3VtbWFyeSAucmV2aWV3cy1hY3Rpb25zIGEge1xuICBjb2xvcjogYmxhY2s7IH1cbiAgLnByb2R1Y3QtcmV2aWV3cy1zdW1tYXJ5IC5yZXZpZXdzLWFjdGlvbnMgYTpob3ZlciB7XG4gICAgY29sb3I6IGJsYWNrOyB9XG5cbi5wYWdlLXByb2R1Y3RzIC5tZXNzYWdlLmluZm8uZW1wdHkge1xuICBtYXgtd2lkdGg6IDQwMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IGJsYWNrOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5wYWdlLXByb2R1Y3RzIC5tZXNzYWdlLmluZm8uZW1wdHkge1xuICAgICAgd2lkdGg6IDcwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG5cbi5wYWdlcyBhLm5leHQ6aG92ZXIsXG4ucGFnZXMgYS5wcmV2aW91czpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRjMzNDA7XG4gIGNvbG9yOiAjY2NjO1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5wYWdlcyAuYWN0aW9uLm5leHQ6YmVmb3JlIHtcbiAgY29sb3I6ICNjY2M7IH1cblxuLnBhZ2VzIC5hY3Rpb24ubmV4dDp2aXNpdGVkOmJlZm9yZSB7XG4gIGNvbG9yOiAjY2NjOyB9XG5cbi5wYWdlcyBhLnBhZ2Ugc3BhbiB7XG4gIGNvbG9yOiAjMkQyRDJBOyB9XG5cbi5jYXRhbG9nc2VhcmNoLWFkdmFuY2VkLXJlc3VsdCAuc2VhcmNoLmZvdW5kLFxuLmNhdGFsb2dzZWFyY2gtYWR2YW5jZWQtcmVzdWx0IC5zZWFyY2guc3VtbWFyeSB7XG4gIHBhZGRpbmctbGVmdDogMSU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0LmRhdGEuaXRlbXMgPiAuaXRlbS50aXRsZSA+IC5zd2l0Y2gge1xuICAgIGhlaWdodDogMzBweDsgfSB9XG5cbi5wcm9kdWN0LmRhdGEuaXRlbXMgPiAuaXRlbS5jb250ZW50IHtcbiAgYmFja2dyb3VuZDogd2hpdGU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnByb2R1Y3QuZGF0YS5pdGVtcyA+IC5pdGVtLmNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogNDJweDtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7IH0gfVxuXG4ucmV2aWV3LXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuXG4ucmV2aWV3LWZvcm0ge1xuICBtYXJnaW46IGF1dG87IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnJldmlldy1mb3JtIHtcbiAgICAgIG1hcmdpbjogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucmV2aWV3LWNvbnRlbnQge1xuICAgIHdpZHRoOiA2MCU7IH0gfVxuXG4ucHJvZHVjdC1yZXZpZXdzLXN1bW1hcnkgLnJldmlld3MtYWN0aW9ucyBhIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogI2NjYztcbiAgZGlzcGxheTogbm9uZTsgfVxuICAucHJvZHVjdC1yZXZpZXdzLXN1bW1hcnkgLnJldmlld3MtYWN0aW9ucyBhOmhvdmVyIHtcbiAgICBjb2xvcjogI2NjYzsgfVxuXG4ucGFnZS1sYXlvdXQtMWNvbHVtbiAucHJvZHVjdC5tZWRpYSB7XG4gIHdpZHRoOiA0MCU7XG4gIHBhZGRpbmctbGVmdDogNjBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAucGFnZS1sYXlvdXQtMWNvbHVtbiAucHJvZHVjdC5tZWRpYSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogaW5oZXJpdDsgfSB9XG5cbi5mb3RvcmFtYV9fbmF2LXdyYXAge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIC5mb3RvcmFtYV9fbmF2LXdyYXAgLmZvdG9yYW1hX19uYXYtLXRodW1icyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5mb3RvcmFtYV9fc3RhZ2Uge1xuICB3aWR0aDogNTAwcHggIWltcG9ydGFudDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgLmZvdG9yYW1hX19zdGFnZSB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuXG4uZm90b3JhbWFfX3N0YWdlX19zaGFmdCAuZm90b3JhbWFfX2dyYWIge1xuICB3aWR0aDogNTAwcHg7IH1cblxuLmZvdG9yYW1hX19zdGFnZV9fZnJhbWUge1xuICBoZWlnaHQ6IDUwMHB4O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuXG4uZm90b3JhbWEtaXRlbSB7XG4gIG1hcmdpbjogYXV0bzsgfVxuXG4uZm90b3JhbWFfX3dyYXAge1xuICB3aWR0aDogNTAwcHg7XG4gIG1heC13aWR0aDogaW5oZXJpdDtcbiAgbWluLXdpZHRoOiBpbmhlcml0OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5mb3RvcmFtYV9fd3JhcCB7XG4gICAgICBtYXJnaW46IGF1dG87IH0gfVxuXG4uZ2FsbGVyeS1wbGFjZWhvbGRlciB7XG4gIG1hcmdpbjogYXV0bzsgfVxuXG4uZm90b3JhbWEtLWZ1bGxzY3JlZW4ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7IH1cbiAgLmZvdG9yYW1hLS1mdWxsc2NyZWVuIC5mb3RvcmFtYV9fc3RhZ2Uge1xuICAgIGhlaWdodDogNTAwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAzNSU7IH1cblxuLmZvdG9yYW1hLS1mdWxsc2NyZWVuIC5mb3RvcmFtYV9fd3JhcCB7XG4gIG1hcmdpbjogYXV0bzsgfVxuXG4uZm90b3JhbWFfX2Fyci0tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5mb3RvcmFtYV9fc3RhZ2VfX2ZyYW1lIC5mb3RvcmFtYV9faW1nIHtcbiAgYm9yZGVyOiAycHggc29saWQgI2NjYztcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgdG9wOiA0MCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExMTVweCkge1xuICAgIC5mb3RvcmFtYV9fc3RhZ2VfX2ZyYW1lIC5mb3RvcmFtYV9faW1nIHtcbiAgICAgIHRvcDogMzAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5mb3RvcmFtYV9fc3RhZ2VfX2ZyYW1lIC5mb3RvcmFtYV9faW1nIHtcbiAgICAgIHRvcDogMzAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvdG9yYW1hX19zdGFnZV9fZnJhbWUgLmZvdG9yYW1hX19pbWcge1xuICAgICAgdG9wOiA1MCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuZm90b3JhbWFfX3N0YWdlX19mcmFtZSAuZm90b3JhbWFfX2ltZyB7XG4gICAgICB0b3A6IDQwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNzVweCkge1xuICAgIC5mb3RvcmFtYV9fc3RhZ2VfX2ZyYW1lIC5mb3RvcmFtYV9faW1nIHtcbiAgICAgIHRvcDogMzAlOyB9IH1cblxuLmZvdG9yYW1hX190aHVtYi1ib3JkZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjOyB9XG5cbi5mb3RvcmFtYV9fbmF2X19mcmFtZS0tdGh1bWIge1xuICBvcGFjaXR5OiAwLjM7IH1cbiAgLmZvdG9yYW1hX19uYXZfX2ZyYW1lLS10aHVtYjpob3ZlciB7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4uZm90b3JhbWFfX2FjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmZvdG9yYW1hX19hY3RpdmUgLmZvdG9yYW1hX19kb3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUYzMzQwO1xuICBib3JkZXItY29sb3I6ICNFRjMzNDA7IH1cblxuLmZvdG9yYW1hX19kb3Qge1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIHdpZHRoOiAxNHB4OyB9XG5cbi5wcm9kdWN0LXJldmlld3Mtc3VtbWFyeSAucmV2aWV3cy1hY3Rpb25zIGEge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjY2NjOyB9XG4gIC5wcm9kdWN0LXJldmlld3Mtc3VtbWFyeSAucmV2aWV3cy1hY3Rpb25zIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjY2NjOyB9XG5cbi5wcm9kdWN0LmluZm8uZGV0YWlsZWQge1xuICBtYXJnaW4tbGVmdDogNjBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucHJvZHVjdC5pbmZvLmRldGFpbGVkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wcm9kdWN0LmRhdGEuaXRlbXMgPiAuaXRlbS50aXRsZSxcbiAgLnByb2R1Y3QuZGF0YS5pdGVtcyA+IC5pdGVtLmNvbnRlbnQge1xuICAgIG1hcmdpbjogMDsgfSB9XG5cbi5wcm9kdWN0LmRhdGEuaXRlbXMgPiAuaXRlbS50aXRsZSA+IC5zd2l0Y2gge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgY29sb3I6ICM0MjQyNDI7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG4ucHJvZHVjdC5kYXRhLml0ZW1zID4gLml0ZW0udGl0bGUuYWN0aXZlID4gLnN3aXRjaCB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBjb2xvcjogIzQyNDI0MjtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNFRjMzNDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnByb2R1Y3QuZGF0YS5pdGVtcyA+IC5pdGVtLnRpdGxlLmFjdGl2ZSA+IC5zd2l0Y2gge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbi5jb2x1bW4ubWFpbiAucHJvZHVjdC1pdGVtLmNvbXBsZW1lbnRhcnktaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZzogMyU7XG4gIHdpZHRoOiAzMDBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmNvbHVtbi5tYWluIC5wcm9kdWN0LWl0ZW0uY29tcGxlbWVudGFyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiAyMTBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgIC5jb2x1bW4ubWFpbiAucHJvZHVjdC1pdGVtLmNvbXBsZW1lbnRhcnktaXRlbSB7XG4gICAgICB3aWR0aDogMTkwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuY29sdW1uLm1haW4gLnByb2R1Y3QtaXRlbS5jb21wbGVtZW50YXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IDE4MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmNvbHVtbi5tYWluIC5wcm9kdWN0LWl0ZW0uY29tcGxlbWVudGFyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiAxNTBweDsgfSB9XG5cbi5jb2x1bW4ubWFpbiAucHJvZHVjdC1pdGVtcy5jb21wbGVtZW50YXJ5LWl0ZW1zIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5jb2x1bW4ubWFpbiAucHJvZHVjdC1pdGVtcy5jb21wbGVtZW50YXJ5LWl0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGluaGVyaXQ7IH0gfVxuICAuY29sdW1uLm1haW4gLnByb2R1Y3QtaXRlbXMuY29tcGxlbWVudGFyeS1pdGVtcyBsaSB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgbWFyZ2luLWxlZnQ6IDElO1xuICAgIG1hcmdpbi1yaWdodDogMSU7XG4gICAgbWFyZ2luLXRvcDogLjUlOyB9XG5cbi5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBib3JkZXItcmFkaXVzOiA2cHg7IH1cbiAgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1pdGVtLWluZm8ge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1pbmZvIGltZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWl0ZW0taW5mbyBzdHJvbmcge1xuICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1pdGVtLWluZm8gc3Ryb25nIGEge1xuICAgICAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgY29sb3I6ICMyRDJEMkE7IH1cbiAgICAgICAgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1pdGVtLWluZm8gc3Ryb25nIGE6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICAgIGxlZnQ6IDEwJTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYmFja2dyb3VuZDogI0VGMzM0MDsgfVxuICAgIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1pbmZvIC5wcmljZS1ib3gge1xuICAgICAgbWluLWhlaWdodDogMjJweDsgfVxuICAgIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1pbmZvIC5wcmljZSB7XG4gICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgY29sb3I6ICMyRDJEMkE7IH1cbiAgICAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWl0ZW0taW5mbyBhLmJ0biwgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1pdGVtLWluZm8gLm1vZGFsLWZvb3RlciBhLmFjdGlvbi1wcmltYXJ5LCAubW9kYWwtZm9vdGVyIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1pbmZvIGEuYWN0aW9uLXByaW1hcnksIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1pbmZvXG4gICAgLm1vZGFsLWZvb3RlciBhLmFjdGlvbi1zZWNvbmRhcnksXG4gICAgLm1vZGFsLWZvb3RlciAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWl0ZW0taW5mbyBhLmFjdGlvbi1zZWNvbmRhcnkge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LW92ZXJmbG93OiBpbmhlcml0O1xuICAgICAgcGFkZGluZzogMTJweCAyMHB4OyB9XG4gICAgICAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWl0ZW0taW5mbyBhLmJ0bjpob3ZlciwgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1pdGVtLWluZm8gLm1vZGFsLWZvb3RlciBhLmFjdGlvbi1wcmltYXJ5OmhvdmVyLCAubW9kYWwtZm9vdGVyIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1pbmZvIGEuYWN0aW9uLXByaW1hcnk6aG92ZXIsIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtaXRlbS1pbmZvXG4gICAgICAubW9kYWwtZm9vdGVyIGEuYWN0aW9uLXNlY29uZGFyeTpob3ZlcixcbiAgICAgIC5tb2RhbC1mb290ZXIgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1pdGVtLWluZm8gYS5hY3Rpb24tc2Vjb25kYXJ5OmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW0gYTpob3ZlciwgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtaXRlbSBhOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAjMkQyRDJBO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ubmFtZS1jb21wbGVtZW50YXJ5IHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBtYXJnaW4tbGVmdDogNSU7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAzcHggcmVkO1xuICB3aWR0aDogMjUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLm5hbWUtY29tcGxlbWVudGFyeSB7XG4gICAgICBtYXJnaW46IGF1dG87IH0gfVxuXG4uaG9tZXBhZ2Utc2VjdGlvbi5jb21wbGVtZW50YXJ5IHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QuY29tcGxlbWVudGFyeSB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QuY29tcGxlbWVudGFyeSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogaW5oZXJpdDtcbiAgICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC5jb21wbGVtZW50YXJ5IC5jb21wbGVtZW50YXJ5LWl0ZW1zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LmNvbXBsZW1lbnRhcnkgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC1pdGVtOm50aC1sYXN0LWNoaWxkKDMpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC5jb21wbGVtZW50YXJ5IC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbTpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QuY29tcGxlbWVudGFyeSAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW06bnRoLWxhc3QtY2hpbGQoMSkge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC5jb21wbGVtZW50YXJ5IC5ibG9jay1jb21wbGVtZW50YXJ5IHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LmNvbXBsZW1lbnRhcnkgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmNvbHVtbi5tYWluIC5ibG9jazpsYXN0LWNoaWxkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLnByb2R1Y3QuZGF0YS5pdGVtcyA+IC5pdGVtLnRpdGxlOm5vdCguZGlzYWJsZWQpID4gLnN3aXRjaDphY3RpdmUsXG4ucHJvZHVjdC5kYXRhLml0ZW1zID4gLml0ZW0udGl0bGUuYWN0aXZlID4gLnN3aXRjaCxcbi5wcm9kdWN0LmRhdGEuaXRlbXMgPiAuaXRlbS50aXRsZS5hY3RpdmUgPiAuc3dpdGNoOmZvY3VzLFxuLnByb2R1Y3QuZGF0YS5pdGVtcyA+IC5pdGVtLnRpdGxlLmFjdGl2ZSA+IC5zd2l0Y2g6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuXG4ucGFnZS1sYXlvdXQtMWNvbHVtbiAucHJvZHVjdC1pbmZvLW1haW4ge1xuICB3aWR0aDogNjAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5wYWdlLWxheW91dC0xY29sdW1uIC5wcm9kdWN0LWluZm8tbWFpbiB7XG4gICAgICB3aWR0aDogODAlOyB9IH1cblxuLnByb2R1Y3QtaW5mby1tYWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLnByb2R1Y3QtaW5mby1tYWluIHtcbiAgICAgIHBhZGRpbmc6IDIlOyB9IH1cbiAgLnByb2R1Y3QtaW5mby1tYWluIC5wcm9kdWN0LmF0dHJpYnV0ZS5uYW1lIHtcbiAgICBjb2xvcjogIzJEMkQyQTtcbiAgICB3aWR0aDogNjUlO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5NDBweCkge1xuICAgICAgLnByb2R1Y3QtaW5mby1tYWluIC5wcm9kdWN0LmF0dHJpYnV0ZS5uYW1lIHtcbiAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgZm9udC1zaXplOiAyLjNyZW07IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgLnByb2R1Y3QtaW5mby1tYWluIC5wcm9kdWN0LmF0dHJpYnV0ZS5uYW1lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5wcm9kdWN0LWluZm8tbWFpbiAucHJvZHVjdC5hdHRyaWJ1dGUubmFtZSBzdHJvbmcge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAucHJvZHVjdC1pbmZvLW1haW4gLnByb2R1Y3QuYXR0cmlidXRlLm92ZXJ2aWV3IHtcbiAgICB3aWR0aDogNzAlOyB9XG4gICAgLnByb2R1Y3QtaW5mby1tYWluIC5wcm9kdWN0LmF0dHJpYnV0ZS5vdmVydmlldyBzdHJvbmcge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLnByb2R1Y3QtaW5mby1tYWluIC5wcm9kdWN0LmF0dHJpYnV0ZS5vdmVydmlldyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLnByb2R1Y3QtaW5mby1tYWluIC5zdG9jay5hdmFpbGFibGUge1xuICAgIGNvbG9yOiByZ2JhKDQ2LCAxMjUsIDUwLCAwLjcpOyB9XG4gIC5wcm9kdWN0LWluZm8tbWFpbiAuYnJhbmQtbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAgIC5wcm9kdWN0LWluZm8tbWFpbiAuYnJhbmQtbGFiZWw6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDRweDtcbiAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VGMzM0MDsgfVxuICAucHJvZHVjdC1pbmZvLW1haW4gLmJyYW5kLWltYWdlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiA2MHB4O1xuICAgIHRvcDogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgLnByb2R1Y3QtaW5mby1tYWluIC5icmFuZC1pbWFnZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC5wcm9kdWN0LWluZm8tbWFpbiAuYnJhbmQtaW1hZ2UgaW1nIHtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgIGhlaWdodDogMTUwcHg7IH1cbiAgLnByb2R1Y3QtaW5mby1tYWluIC5wcm9kdWN0LWluZm8tcHJpY2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnByb2R1Y3QtaW5mby1tYWluIC5wcmljZS1ib3ggLnByaWNlIHtcbiAgICBjb2xvcjogIzJEMkQyQTtcbiAgICBmb250LXNpemU6IDIuNXJlbTsgfVxuICAucHJvZHVjdC1pbmZvLW1haW4gLmJ0bjp2aXNpdGVkLCAucHJvZHVjdC1pbmZvLW1haW4gLm1vZGFsLWZvb3RlciAuYWN0aW9uLXByaW1hcnk6dmlzaXRlZCwgLm1vZGFsLWZvb3RlciAucHJvZHVjdC1pbmZvLW1haW4gLmFjdGlvbi1wcmltYXJ5OnZpc2l0ZWQsIC5wcm9kdWN0LWluZm8tbWFpblxuICAubW9kYWwtZm9vdGVyIC5hY3Rpb24tc2Vjb25kYXJ5OnZpc2l0ZWQsXG4gIC5tb2RhbC1mb290ZXIgLnByb2R1Y3QtaW5mby1tYWluIC5hY3Rpb24tc2Vjb25kYXJ5OnZpc2l0ZWQge1xuICAgIGNvbG9yOiAjRUYzMzQwOyB9XG4gIC5wcm9kdWN0LWluZm8tbWFpbiAucHJvZHVjdF9jYWxsLXRvIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAucHJvZHVjdC1pbmZvLW1haW4gLnByb2R1Y3RfY2FsbC10byAuYnRuLCAucHJvZHVjdC1pbmZvLW1haW4gLnByb2R1Y3RfY2FsbC10byAubW9kYWwtZm9vdGVyIC5hY3Rpb24tcHJpbWFyeSwgLm1vZGFsLWZvb3RlciAucHJvZHVjdC1pbmZvLW1haW4gLnByb2R1Y3RfY2FsbC10byAuYWN0aW9uLXByaW1hcnksIC5wcm9kdWN0LWluZm8tbWFpbiAucHJvZHVjdF9jYWxsLXRvXG4gICAgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXNlY29uZGFyeSxcbiAgICAubW9kYWwtZm9vdGVyIC5wcm9kdWN0LWluZm8tbWFpbiAucHJvZHVjdF9jYWxsLXRvIC5hY3Rpb24tc2Vjb25kYXJ5IHtcbiAgICAgIG1hcmdpbjogYXV0bzsgfVxuICAgICAgLnByb2R1Y3QtaW5mby1tYWluIC5wcm9kdWN0X2NhbGwtdG8gLmJ0bjp2aXNpdGVkLCAucHJvZHVjdC1pbmZvLW1haW4gLnByb2R1Y3RfY2FsbC10byAubW9kYWwtZm9vdGVyIC5hY3Rpb24tcHJpbWFyeTp2aXNpdGVkLCAubW9kYWwtZm9vdGVyIC5wcm9kdWN0LWluZm8tbWFpbiAucHJvZHVjdF9jYWxsLXRvIC5hY3Rpb24tcHJpbWFyeTp2aXNpdGVkLCAucHJvZHVjdC1pbmZvLW1haW4gLnByb2R1Y3RfY2FsbC10b1xuICAgICAgLm1vZGFsLWZvb3RlciAuYWN0aW9uLXNlY29uZGFyeTp2aXNpdGVkLFxuICAgICAgLm1vZGFsLWZvb3RlciAucHJvZHVjdC1pbmZvLW1haW4gLnByb2R1Y3RfY2FsbC10byAuYWN0aW9uLXNlY29uZGFyeTp2aXNpdGVkIHtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cblxuLmNvbnRhaW5lci1zdGF0aWNfcGFnZSB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5jb250YWluZXItc3RhdGljX3BhZ2Uge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDElOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDEwcHg7IH0gfVxuICAuY29udGFpbmVyLXN0YXRpY19wYWdlIGgxIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgY29sb3I6ICNFRjMzNDA7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nLXRvcDogMTZweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAjY2NjOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIGgxIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAuY29udGFpbmVyLXN0YXRpY19wYWdlIGgyIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICBjb2xvcjogIzU3NTc1NztcbiAgICB3aWR0aDogODAlO1xuICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgaDIge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMjhweDtcbiAgICBtYXJnaW4tdG9wOiA0MHB4OyB9XG4gICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQ6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgaDEge1xuICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgY29sb3I6ICNFRjMzNDA7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gICAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAjY2NjOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgaDEge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCBoMiB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgIGNvbG9yOiAjNTc1NzU3O1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICAgIHBhZGRpbmc6IDE2cHggOHB4O1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IGgyIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgcCB7XG4gICAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBwYWRkaW5nOiA4cHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCBwIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgc3Bhbi5hZGRyZXNzIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7IH1cbiAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCBhIHtcbiAgICAgIGNvbG9yOiAjNTc1NzU3O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IGE6aG92ZXIsIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IGE6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI0VGMzM0MDsgfVxuICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgYTp2aXNpdGVkIHtcbiAgICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgYTp2aXNpdGVkOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogI0VGMzM0MDsgfVxuICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC53cmFwLWxlZnQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAud3JhcC1sZWZ0IHAge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLndyYXAtbGVmdCAubGVmdCB7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExMDBweCkge1xuICAgICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC53cmFwLWxlZnQgLmxlZnQge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvOyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC53cmFwLWxlZnQgLmxlZnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC53cmFwLWxlZnQgLmxlZnQge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogOTklO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9XG4gICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAud3JhcC1sZWZ0IC5yaWdodCB7XG4gICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTAwcHgpIHtcbiAgICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAud3JhcC1sZWZ0IC5yaWdodCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87IH0gfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAud3JhcC1sZWZ0IC5yaWdodCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiA5OSU7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87IH0gfVxuICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC53cmFwLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLndyYXAtcmlnaHQgLmxlZnQge1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTAwcHgpIHtcbiAgICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAud3JhcC1yaWdodCAubGVmdCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLndyYXAtcmlnaHQgLmxlZnQge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogOTklO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG4gICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC53cmFwLXJpZ2h0IC5sZWZ0IHAge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLndyYXAtcmlnaHQgLnJpZ2h0IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogNDAlOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTAwcHgpIHtcbiAgICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAud3JhcC1yaWdodCAucmlnaHQge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC53cmFwLXJpZ2h0IC5yaWdodCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiA5OSU7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87IH0gfVxuICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC5jb250YWluZXItYmxvY2stc2F2IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAuY29udGFpbmVyLWJsb2NrLXNhdiBwIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC5jb250YWluZXItYmxvY2stc2F2IC5jb250YWluZXItYmxvY2stc2F2X2xlZnQge1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAuY29udGFpbmVyLWJsb2NrLXNhdiAuY29udGFpbmVyLWJsb2NrLXNhdl9sZWZ0IHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bzsgfSB9XG4gICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC5jb250YWluZXItYmxvY2stc2F2IC5jb250YWluZXItYmxvY2stc2F2X2xlZnQgLndyYXAtc2F2IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC5jb250YWluZXItYmxvY2stc2F2IC5jb250YWluZXItYmxvY2stc2F2X2xlZnQgLndyYXAtc2F2OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC5jb250YWluZXItYmxvY2stc2F2IC5jb250YWluZXItYmxvY2stc2F2X2xlZnQgLndyYXAtc2F2IC5sZWZ0IHtcbiAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC5jb250YWluZXItYmxvY2stc2F2IC5jb250YWluZXItYmxvY2stc2F2X2xlZnQgLndyYXAtc2F2IC5yaWdodCB7XG4gICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLmNvbnRhaW5lci1ibG9jay1zYXYgLmNvbnRhaW5lci1ibG9jay1zYXZfcmlnaHQge1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLmNvbnRhaW5lci1ibG9jay1zYXYgLmNvbnRhaW5lci1ibG9jay1zYXZfcmlnaHQge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvOyB9IH1cbiAgICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLmNvbnRhaW5lci1ibG9jay1zYXYgLmNvbnRhaW5lci1ibG9jay1zYXZfcmlnaHQgLndyYXAtc2F2IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC5jb250YWluZXItYmxvY2stc2F2IC5jb250YWluZXItYmxvY2stc2F2X3JpZ2h0IC53cmFwLXNhdjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAuY29udGFpbmVyLWJsb2NrLXNhdiAuY29udGFpbmVyLWJsb2NrLXNhdl9yaWdodCAud3JhcC1zYXYgLmxlZnQge1xuICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLmNvbnRhaW5lci1ibG9jay1zYXYgLmNvbnRhaW5lci1ibG9jay1zYXZfcmlnaHQgLndyYXAtc2F2IC5sZWZ0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzAlOyB9IH1cbiAgICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAuY29udGFpbmVyLWJsb2NrLXNhdiAuY29udGFpbmVyLWJsb2NrLXNhdl9yaWdodCAud3JhcC1zYXYgLnJpZ2h0IHtcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAuY29udGFpbmVyLWJsb2NrLXNhdiAuY29udGFpbmVyLWJsb2NrLXNhdl9yaWdodCAud3JhcC1zYXYgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNzAlOyB9IH1cbiAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAuc2hvd3Jvb20tbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAuc2hvd3Jvb20tbGVmdCB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICBtYXJnaW46IGF1dG87IH0gfVxuICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLnNob3dyb29tLWxlZnQgLmNvbnRlbnRfc2hvd3Jvb20tbGVmdCB7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMyRDJEMkE7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAuc2hvd3Jvb20tbGVmdCAuY29udGVudF9zaG93cm9vbS1sZWZ0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvOyB9IH1cbiAgICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLnNob3dyb29tLWxlZnQgLmNvbnRlbnRfc2hvd3Jvb20tbGVmdCBoMiB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC5zaG93cm9vbS1sZWZ0IC5jb250ZW50X3Nob3dyb29tLWxlZnQgLmNvbnRlbnRfc2hvd3Jvb20tbGVmdC1waWMge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG4gICAgICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLnNob3dyb29tLWxlZnQgLmNvbnRlbnRfc2hvd3Jvb20tbGVmdCAuY29udGVudF9zaG93cm9vbS1sZWZ0LXBpYyBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IDE1MHB4OyB9XG4gICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLnNob3dyb29tLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAuc2hvd3Jvb20tcmlnaHQge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICAgICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAuc2ltcGxlLWJsb2NrX3RleHQgLnNob3dyb29tLXJpZ2h0IC5jb250ZW50X3Nob3dyb29tLXJpZ2h0IHtcbiAgICAgICAgd2lkdGg6IDkwJTsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAuc2hvd3Jvb20tcmlnaHQgLmNvbnRlbnRfc2hvd3Jvb20tcmlnaHQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87IH0gfVxuICAgICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5zaW1wbGUtYmxvY2tfdGV4dCAuc2hvd3Jvb20tcmlnaHQgLmNvbnRlbnRfc2hvd3Jvb20tcmlnaHQgLmNvbnRlbnRfc2hvd3Jvb20tcmlnaHQtcGljIHtcbiAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC5zaG93cm9vbS1yaWdodCAuY29udGVudF9zaG93cm9vbS1yaWdodCAuY29udGVudF9zaG93cm9vbS1yaWdodC10ZXh0IHtcbiAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLnNpbXBsZS1ibG9ja190ZXh0IC5zaG93cm9vbS1yaWdodCAuY29udGVudF9zaG93cm9vbS1yaWdodCAuY29udGVudF9zaG93cm9vbS1yaWdodC10ZXh0IHAge1xuICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5jb250YWluZXItc3RhdGljX3BhZ2UgLmNvbnRhaW5lci1mb3JtIHtcbiAgICB3aWR0aDogNjAlO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5jb250YWluZXItZm9ybSB7XG4gICAgICAgIHdpZHRoOiA5MCU7IH0gfVxuICAgIC5jb250YWluZXItc3RhdGljX3BhZ2UgLmNvbnRhaW5lci1mb3JtIGlucHV0IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsgfVxuICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5wYWdlLXN0b3JlX19tYXAge1xuICAgIHdpZHRoOiA2MCU7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDQ2cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY29udGFpbmVyLXN0YXRpY19wYWdlIC5wYWdlLXN0b3JlX19tYXAge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG4gICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAucGFnZS1zdG9yZV9fbWFwIC5wYWdlLXN0b3JlX19tYXAtaWZyYW1lICNtYXAge1xuICAgICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4OyB9XG4gICAgLmNvbnRhaW5lci1zdGF0aWNfcGFnZSAucGFnZS1zdG9yZV9fbWFwIGlmcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYzsgfVxuXG4uZmllbGRzZXQgPiAuZmllbGQ6bm90KC5jaG9pY2UpID4gLmxhYmVsIHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuIiwiLy9cbi8vIEZvbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE1peGluXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AbWl4aW4gZm9udC1mYWNlKCRmb250LW5hbWUsICRmb250LXBhdGgsICRmb250LWZpbGUsICRmb250LXdlaWdodDogbm9ybWFsLCAkZm9udC1zdHlsZTogbm9ybWFsKSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LW5hbWU7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzLycgKyAkZm9udC1wYXRoICsgJy8nICsgJGZvbnQtZmlsZSArICcud29mZjInKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgIHVybCgnLi4vZm9udHMvJyArICRmb250LXBhdGggKyAnLycgKyAkZm9udC1maWxlICsgJy53b2ZmJykgZm9ybWF0KFwid29mZlwiKTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0O1xuICAgIGZvbnQtc3R5bGU6ICRmb250LXN0eWxlO1xufVxuXG5cbi8vIExvYWQgZm9udHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Um9ib3RvOjMwMCw0MDAsNTAwLDcwMCw5MDAnKTtcblxuLypcblxuLy8gU291cmNlIFNhbnMgUHJvIExpZ2h0XG5AZm9udC1mYWNlIHtcbiAgICBAaW5jbHVkZSBmb250LWZhY2UoJ1NvdXJjZSBTYW5zIFBybycsICdzb3VyY2VzYW5zcHJvJywgJ3NvdXJjZXNhbnNwcm8tbGlnaHQtd2ViZm9udCcsIDMwMCk7XG59XG5cbi8vIFNvdXJjZSBTYW5zIFBybyBSZWd1bGFyXG5AZm9udC1mYWNlIHtcbiAgICBAaW5jbHVkZSBmb250LWZhY2UoJ1NvdXJjZSBTYW5zIFBybycsICdzb3VyY2VzYW5zcHJvJywgJ3NvdXJjZXNhbnNwcm8tcmVndWxhci13ZWJmb250JywgNDAwKTtcbn1cblxuLy8gU291cmNlIFNhbnMgUHJvIFNlbWktQm9sZFxuQGZvbnQtZmFjZSB7XG4gICAgQGluY2x1ZGUgZm9udC1mYWNlKCdTb3VyY2UgU2FucyBQcm8nLCAnc291cmNlc2Fuc3BybycsICdzb3VyY2VzYW5zcHJvLXNlbWlib2xkLXdlYmZvbnQnLCA2MDApO1xufVxuXG4vLyBTb3VyY2UgU2FucyBQcm8gQm9sZFxuQGZvbnQtZmFjZSB7XG4gICAgQGluY2x1ZGUgZm9udC1mYWNlKCdTb3VyY2UgU2FucyBQcm8nLCAnc291cmNlc2Fuc3BybycsICdzb3VyY2VzYW5zcHJvLWJvbGQtd2ViZm9udCcsIDcwMCk7XG59XG5cbiovIiwiIC8vXG4vLyBOb3JtYWxpemUgKHY3LjAuMCkgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIERvY3VtZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbmh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgICAvLy13ZWJraXQtdGV4dC1zdHJva2U6IDAuM3B4OyAvL3BvdXIgY29ycmlnZXIgbGUgcmVuZHUgZGUgU291cmNlIFNhbnMgUHJvXG59XG5cblxuLy8gU2VjdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuYm9keSB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4vLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5cbi8vIEdyb3VwaW5nIGNvbnRlbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG5maWdjYXB0aW9uLFxuZmlndXJlLFxubWFpbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IC8vIDFcbn1cblxuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbnByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbn1cblxuXG4vLyBUZXh0LWxldmVsIHNlbWFudGljc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuLy8gMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIDFcbiAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvLyAyXG59XG5cbi8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctIGFuZCBGaXJlZm94IDM5LS5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5hYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMVxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG59XG5cbi8vIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuYixcbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG5iLFxuc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuY29kZSxcbmtiZCxcbnNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG59XG5cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbmRmbiB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vLyBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG5tYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgIGNvbG9yOiAjMDAwO1xufVxuXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbnNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbn1cblxuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbnN1YixcbnN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG59XG5cblxuLy8gRW1iZWRkZWQgY29udGVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG5hdWRpbyxcbnZpZGVvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG4vLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbmltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vLyBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5cbi8vIEZvcm1zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuLy8gMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMTAwJTsgLy8gMVxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgbWFyZ2luOiAwOyAvLyAyXG59XG5cbi8vIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuLy8gMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbmJ1dHRvbixcbmlucHV0IHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMVxufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbi8vIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IC8vIDFcbn1cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG59XG5cbi8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8vIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuZmllbGRzZXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gICAgbWFyZ2luOiAwIDJweDtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4vLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4vLyAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0IGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxubGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDNcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG59XG5cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbnByb2dyZXNzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIDJcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbnRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxufVxuXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgICBmb250OiBpbmhlcml0OyAvLyAyXG59XG5cblxuLy8gSW50ZXJhY3RpdmVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuZGV0YWlscyxcbm1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyAxXG59XG5cbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbnN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuXG4vLyBTY3JpcHRpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuY2FudmFzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxudGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuLy8gSGlkZGVuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIiAvL1xuLy8gVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIGNvbnRhaW5lcigkbWF4LXNpemU6ICRzY3JlZW4teGwtbWluLCAkcGFkZGluZzogKCRndXR0ZXItbWQgLyAyKSkge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgLy93aWR0aDogMTAwJTtcbn1cblxuLy8gQ2xlYXIgZmxvYXRzXG4vLyBTZWU6IGh0dHA6Ly93d3cuY3NzbW9qby5jb20vbGF0ZXN0X25ld19jbGVhcmZpeF9zb19mYXIvXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxufVxuXG4vLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XG4gICAgZm9udDogMC8wIGE7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbn1cblxuLy8gUmVzZXQgdGV4dCBzdHlsZXMgKGV4Y2VwdCBmb250LXNpemUgb3Igd29yZC13cmFwKVxuQG1peGluIHJlc2V0LXRleHQoKSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgbGluZS1icmVhazogYXV0bztcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbn1cblxuLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vIFNlZTogaHR0cDovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50XG5AbWl4aW4gc3Itb25seSgpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IC0xcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gICAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzXG4vLyBTZWU6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSgpIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIGNsaXA6IGF1dG87XG4gICAgICAgIGNsaXAtcGF0aDogbm9uZTtcbiAgICB9XG59XG5cbi8vIEJvcmRlciByYWRpdXNcbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCgpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vLyBEZWZpbmUgZm9jdXMgZm9yIGFsbCBhbmQgaG92ZXIgZnJvbSBtZWRpdW0gc2NyZWVuc1xuLy8gV2FpdGluZyBmb3IgTWVkaWEgUXVlcmllcyBMZXZlbCA0OiBodHRwOi8vZHJhZnRzLmNzc3dnLm9yZy9tZWRpYXF1ZXJpZXMvI2hvdmVyXG5AbWl4aW4gaG92ZXIoKSB7XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBBc3BlY3QgcmF0aW9cbkBtaXhpbiBhc3BlY3QtcmF0aW8oJHdpZHRoLCAkaGVpZ2h0KSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAoJGhlaWdodCAvICR3aWR0aCkgKiAxMDAlO1xuICAgIH1cblxuICAgICYgPiAuZW1iZWQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG59XG5cblxuLy8gQW5pbWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgICBodG1sOm5vdCgubm8tanMpICYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICYuaW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogaGVpZ2h0LCB2aXNpYmlsaXR5O1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC4zNXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG59XG5cblxuLy8gTG9hZGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubG9hZGluZy1tYXNrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjYpO1xuICAgIHotaW5kZXg6IDEwO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIG1hcmdpbjogLTI1cHggMCAwIC0yNXB4O1xuICAgICAgICBib3JkZXI6IDRweCBzb2xpZCByZ2JhKDAsMCwwLC4yKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZmO1xuICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgLmxvYWRlciB7XG4gICAgICAgIEBpbmNsdWRlIHNyLW9ubHkoKTtcbiAgICB9XG59XG5cblxuLy8gVE9ETyAvIVxcIERvIG5vdCBzZW5kIHRoaXMgaW50byBwcm9kdWN0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4udG9kbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEocmVkLCAuMSk7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJAdG9kb1wiICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogcmVkO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHJlZCwgLjEpO1xuICAgICAgICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xuICAgIH1cbn1cbiIsIi8vXG4vLyBWYXJpYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQ29sb3JzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kY29sb3ItZ3JheS1kYXJrZXI6ICAgICAgICAgICAgICMzMzMzMzM7XG4kY29sb3ItZ3JheS1kYXJrOiAgICAgICAgICAgICAgICM1NzU3NTc7XG4kY29sb3ItZ3JheTogICAgICAgICAgICAgICAgICAgICM5ODk4OTg7XG4kY29sb3ItZ3JheS1saWdodDogICAgICAgICAgICAgICNlMmUxZTE7XG4kY29sb3ItZ3JheS1saWdodGVyOiAgICAgICAgICAgICNmN2Y3ZmI7XG5cbiRjb2xvci1wcmltYXJ5OiAgICAgICAgICAgICAgICAgI0VGMzM0MDtcbiRjb2xvci1wcmltYXJ5LWxpZ2h0OiAgICAgICAgICAgI2VkNDA0YztcbiRjb2xvci1zZWNvbmRhcnk6ICAgICAgICAgICAgICAgIzJEMkQyQTtcbiRjb2xvci10ZXJ0aWFyeTogICAgICAgICAgICAgICAgI0ZGRkZGRjtcbiRjb2xvci1xdWF0ZXJuYXJ5OiAgICAgICAgICAgICAgIzdDN0M3QztcbiRjb2xvci1xdWluYXJ5OiAgICAgICAgICAgICAgICAgI2VlMzg1YztcbiRjb2xvci1zZW5hcnk6ICAgICAgICAgICAgICAgICAgIzI4OThmODtcblxuJGNvbG9yLWluZm86ICAgICAgICAgICAgICAgICAgICAjNWJjMGRlO1xuJGNvbG9yLXN1Y2Nlc3M6ICAgICAgICAgICAgICAgICAjNWNiODVjO1xuJGNvbG9yLXdhcm5pbmc6ICAgICAgICAgICAgICAgICAjZjBhZDRlO1xuJGNvbG9yLWVycm9yOiAgICAgICAgICAgICAgICAgICAjZDk1MzRmO1xuXG4kY29sb3ItZmFjZWJvb2s6ICAgICAgICAgICAgICAgICMzYjU5OTg7XG4kY29sb3ItdHdpdHRlcjogICAgICAgICAgICAgICAgICMwMGFjZWQ7XG4kY29sb3ItZ29vZ2xlcGx1czogICAgICAgICAgICAgICNkZDRiMzk7XG4kY29sb3ItaW5zdGFncmFtOiAgICAgICAgICAgICAgICM1MTdmYTQ7XG4kY29sb3ItcGludGVyZXN0OiAgICAgICAgICAgICAgICNjYjIwMjc7XG4kY29sb3IteW91dHViZTogICAgICAgICAgICAgICAgICNjYzE4MWU7XG4kY29sb3ItbGlua2VkaW46ICAgICAgICAgICAgICAgICMwMDdiYjY7XG5cblxuLy8gQ29yZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuJHRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkY29sb3ItZ3JheS1kYXJrZXI7XG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICR0ZXh0LWNvbG9yO1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICBub25lO1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAkY29sb3ItcHJpbWFyeTtcblxuXG4vLyBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAgIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgICAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZjtcbiRmb250LWZhbWlseS1jdXN0b206ICAgICAgICAgICAgJ1JvYm90bycsIHNhbnMtc2VyaWY7XG5cbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICAgJGZvbnQtZmFtaWx5LWN1c3RvbTtcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgICAxLjZyZW07IC8vIH4xNnB4XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAgIDEuMztcbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSk7XG5cbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgICAgICAgMS44cmVtOyAvLyB+MThweFxuJGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICAgICAgICAxLjJyZW07IC8vIH4xMnB4XG5cblxuLy8gWi1pbmRleFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAxMDA7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgIDIwMDtcblxuXG4vLyBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kc2NyZWVuLXhzLW1pbjogICAgICAgICAgICAgICAgIDQ4MHB4O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAgICA3NjhweDtcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgICAgOTkycHg7XG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgICAgIDEyMDBweDtcbiRzY3JlZW4teGwtbWluOiAgICAgICAgICAgICAgICAgMTQ3MHB4O1xuXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpO1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKTtcbiRzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgICAgKCRzY3JlZW4tbGctbWluIC0gMSk7XG4kc2NyZWVuLWxnLW1heDogICAgICAgICAgICAgICAgICgkc2NyZWVuLXhsLW1pbiAtIDEpO1xuXG5cbi8vIEd1dHRlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGd1dHRlci1zbTogICAgICAgICAgICAgICAgICAgICAyNHB4O1xuJGd1dHRlci1tZDogICAgICAgICAgICAgICAgICAgICAzMHB4O1xuXG4vLyBXcmFwcGVyIG1heCB3aWR0aCBcbiR3cmFwcGVyLW1heC13aWR0aDogICAgICAgICAgICAgMTIwMHB4O1xuIiwiLy9cbi8vIENvcmVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQm94IG1vZGVsXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5odG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cblxuLy8gR2xvYmFsIGRlZmF1bHRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5odG1sIHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogNjIuNSU7XG4gICAgLy8gSUU5LUlFMTEgbWF0aCBmaXhpbmcuIFNlZSBodHRwOi8vYml0Lmx5LzFnNFgwYlhcbiAgICBmb250LXNpemU6IGNhbGMoMWVtICogLjYyNSk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG59XG5cbmJvZHkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG59XG5cbmF7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuXG5hOnZpc2l0ZWR7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuXG5hOmhvdmVye1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbnVsID4gbGksIG9sID4gbGl7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgJjpob3ZlcntcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuXG51bDpob3ZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy8gUmVzZXQgZm9udHMgZm9yIHJlbGV2YW50IGVsZW1lbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBTVkcgaWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbnN2Z1tjbGFzc149XCJpY29uXCJdIHtcbiAgICB3aWR0aDogMWVtO1xuICAgIGhlaWdodDogMWVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiAtMC4xNWVtO1xuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbn1cblxuLm1vYmlsZXtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKXtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzLW1pbil7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIiwiLy9cbi8vIENvbG9yc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBEb2N1bWVudGF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQ29sb3JzXG5uYW1lOiAwMF9Db2xvcnNcbmNhdGVnb3J5OiBDb2xvcnNcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJjb2xvcnNcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYmdjb2xvci1wcmltYXJ5XCI+XG4gICAgICAgIDxwPlByaW1hcnkgY29sb3I8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJnY29sb3ItcHJpbWFyeS1saWdodFwiPlxuICAgICAgICA8cD5QcmltYXJ5IGxpZ2h0IGNvbG9yPC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJiZ2NvbG9yLXNlY29uZGFyeVwiPlxuICAgICAgICA8cD5TZWNvbmRhcnkgY29sb3I8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJnY29sb3ItdGVydGlhcnlcIj5cbiAgICAgICAgPHA+VGVydGlhcnkgY29sb3I8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJnY29sb3ItcXVhdGVybmFyeVwiPlxuICAgICAgICA8cD5RdWF0ZXJuYXJ5IGNvbG9yPC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJiZ2NvbG9yLXF1aW5hcnlcIj5cbiAgICAgICAgPHA+UXVpbmFyeSBjb2xvcjwvcD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYmdjb2xvci1zZW5hcnlcIj5cbiAgICAgICAgPHA+U2VuYXJ5IGNvbG9yPC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJiZ2NvbG9yLWluZm9cIj5cbiAgICAgICAgPHA+SW5mbyBjb2xvcjwvcD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYmdjb2xvci1zdWNjZXNzXCI+XG4gICAgICAgIDxwPlN1Y2Nlc3MgY29sb3I8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJnY29sb3Itd2FybmluZ1wiPlxuICAgICAgICA8cD5XYXJuaW5nIGNvbG9yPC9wPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJiZ2NvbG9yLWVycm9yXCI+XG4gICAgICAgIDxwPkVycm9yIGNvbG9yPC9wPlxuICAgIDwvZGl2PlxuPC9kaXY+XG5gYGBcblxuKi9cblxuXG4vLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBiZ2NvbG9yKCRjb2xvcikgeyAgICBcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIiArICRjb2xvciArIFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBoZWlnaHQ6MzBweDtcbiAgICAgICAgdG9wOjEwcHg7XG4gICAgICAgIGxlZnQ6MHB4O1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246dG9wO1xuICAgICAgICBmb250LXdlaWdodDpib2xkO1xuICAgIH0gXG59XG5cbi8vIENvdWxldXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmNvbG9ycyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb2xvcnMgPiBkaXYgeyBcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OjgwcHg7XG4gICAgbWFyZ2luOiAwIDI1cHggNzVweCAwOyBcbiAgICAmIHAge1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgaGVpZ2h0OjQwcHg7XG4gICAgICAgIGJvdHRvbTotNjBweDtcbiAgICAgICAgbGVmdDowcHg7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7XG4gICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgfSAgICBcbiAgICAmLmJnY29sb3ItcHJpbWFyeSB7XG4gICAgICAgIEBpbmNsdWRlIGJnY29sb3IoJGNvbG9yLXByaW1hcnkpOyBcbiAgICB9XG4gICAgJi5iZ2NvbG9yLXByaW1hcnktbGlnaHQge1xuICAgICAgICBAaW5jbHVkZSBiZ2NvbG9yKCRjb2xvci1wcmltYXJ5LWxpZ2h0KTtcbiAgICB9XG4gICAgJi5iZ2NvbG9yLXNlY29uZGFyeSB7XG4gICAgICAgIEBpbmNsdWRlIGJnY29sb3IoJGNvbG9yLXNlY29uZGFyeSk7XG4gICAgfVxuICAgICYuYmdjb2xvci10ZXJ0aWFyeSB7XG4gICAgICAgIEBpbmNsdWRlIGJnY29sb3IoJGNvbG9yLXRlcnRpYXJ5KTtcbiAgICB9XG4gICAgJi5iZ2NvbG9yLXF1YXRlcm5hcnkge1xuICAgICAgICBAaW5jbHVkZSBiZ2NvbG9yKCRjb2xvci1xdWF0ZXJuYXJ5KTtcbiAgICB9XG4gICAgJi5iZ2NvbG9yLXF1aW5hcnkge1xuICAgICAgICBAaW5jbHVkZSBiZ2NvbG9yKCRjb2xvci1xdWluYXJ5KTtcbiAgICB9XG4gICAgJi5iZ2NvbG9yLXNlbmFyeSB7XG4gICAgICAgIEBpbmNsdWRlIGJnY29sb3IoJGNvbG9yLXNlbmFyeSk7XG4gICAgfVxuICAgICYuYmdjb2xvci1pbmZvIHtcbiAgICAgICAgQGluY2x1ZGUgYmdjb2xvcigkY29sb3ItaW5mbyk7XG4gICAgfVxuICAgICYuYmdjb2xvci1zdWNjZXNzIHtcbiAgICAgICAgQGluY2x1ZGUgYmdjb2xvcigkY29sb3Itc3VjY2Vzcyk7XG4gICAgfVxuICAgICYuYmdjb2xvci13YXJuaW5nIHtcbiAgICAgICAgQGluY2x1ZGUgYmdjb2xvcigkY29sb3Itd2FybmluZyk7XG4gICAgfVxuICAgICYuYmdjb2xvci1lcnJvciB7XG4gICAgICAgIEBpbmNsdWRlIGJnY29sb3IoJGNvbG9yLWVycm9yKTtcbiAgICB9XG59IiwiLy9cbi8vIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRG9jdW1lbnRhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLypkb2Ncbi0tLVxudGl0bGU6IEhlYWRpbmdzXG5uYW1lOiAwMV9IZWFkaW5nc1xuY2F0ZWdvcnk6IFRleHRcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbjxoMT5oMS4gSGVhZGluZzwvaDE+XG48aDI+aDIuIEhlYWRpbmc8L2gyPlxuPGgzPmgzLiBIZWFkaW5nPC9oMz5cbjxoND5oNC4gSGVhZGluZzwvaDQ+XG48aDU+aDUuIEhlYWRpbmc8L2g1PlxuPGg2Pmg2LiBIZWFkaW5nPC9oNj5cbmBgYFxuXG4qL1xuXG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBUZXh0c1xubmFtZTogVGV4dHNcbmNhdGVnb3J5OiBUZXh0XG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG48cD5OdWxsYW0gcXVpcyByaXN1cyBlZ2V0IHVybmEgbW9sbGlzIG9ybmFyZSB2ZWwgZXUgbGVvLiBDdW0gc29jaWlzIG5hdG9xdWUgcGVuYXRpYnVzIGV0IG1hZ25pcyBkaXMgcGFydHVyaWVudCBtb250ZXMsIG5hc2NldHVyIHJpZGljdWx1cyBtdXMuIE51bGxhbSBpZCBkb2xvciBpZCBuaWJoIHVsdHJpY2llcyB2ZWhpY3VsYS48L3A+XG48cD5DdW0gc29jaWlzIG5hdG9xdWUgcGVuYXRpYnVzIGV0IG1hZ25pcyBkaXMgcGFydHVyaWVudCBtb250ZXMsIDxhIGhyZWY9XCIjXCI+bmFzY2V0dXIgcmlkaWN1bHVzIG11czwvYT4uIERvbmVjIHVsbGFtY29ycGVyIG51bGxhIG5vbiBtZXR1cyBhdWN0b3IgZnJpbmdpbGxhLiBEdWlzIG1vbGxpcywgZXN0IG5vbiBjb21tb2RvIGx1Y3R1cywgbmlzaSBlcmF0IHBvcnR0aXRvciBsaWd1bGEsIGVnZXQgbGFjaW5pYSBvZGlvIHNlbSBuZWMgZWxpdC4gRG9uZWMgPHN0cm9uZz51bGxhbWNvcnBlciBudWxsYTwvc3Ryb25nPiBub24gbWV0dXMgYXVjdG9yIGZyaW5naWxsYS48L3A+XG48cD5NYWVjZW5hcyBzZWQgZGlhbSBlZ2V0IHJpc3VzIHZhcml1cyBibGFuZGl0IHNpdCBhbWV0IG5vbiBtYWduYS4gRG9uZWMgaWQgZWxpdCBub24gbWkgcG9ydGEgPGVtPmdyYXZpZGEgYXQgZWdldCBtZXR1czwvZW0+LiBEdWlzIG1vbGxpcywgZXN0IG5vbiBjb21tb2RvIGx1Y3R1cywgbmlzaSBlcmF0IHBvcnR0aXRvciBsaWd1bGEsIGVnZXQgbGFjaW5pYSBvZGlvIHNlbSBuZWMgZWxpdC48L3A+XG5gYGBcblxuKi9cblxuXG4vKmRvY1xuLS0tXG50aXRsZTogTGlzdHNcbm5hbWU6IExpc3RzXG5jYXRlZ29yeTogVGV4dFxuLS0tXG5cbkEgbGlzdCBvZiBpdGVtcywgdW5vcmRlcmVkIG9yIG9yZGVyZWRcblxuYGBgaHRtbF9leGFtcGxlXG48dWw+XG4gICAgPGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT5cbiAgICA8bGk+Q29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0PC9saT5cbiAgICA8bGk+TnVsbGEgdm9sdXRwYXQgYWxpcXVhbSB2ZWxpdFxuICAgICAgICA8dWw+XG4gICAgICAgICAgICA8bGk+UGhhc2VsbHVzIGlhY3VsaXMgbmVxdWU8L2xpPlxuICAgICAgICAgICAgPGxpPlB1cnVzIHNvZGFsZXMgdWx0cmljaWVzPC9saT5cbiAgICAgICAgPC91bD5cbiAgICA8L2xpPlxuICAgIDxsaT5GYXVjaWJ1cyBwb3J0YSBsYWN1cyBmcmluZ2lsbGEgdmVsPC9saT5cbiAgICA8bGk+QWVuZWFuIHNpdCBhbWV0IGVyYXQgbnVuYzwvbGk+XG48L3VsPlxuXG48b2w+XG4gICAgPGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT5cbiAgICA8bGk+Q29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0PC9saT5cbiAgICA8bGk+TnVsbGEgdm9sdXRwYXQgYWxpcXVhbSB2ZWxpdDwvbGk+XG4gICAgPGxpPlBoYXNlbGx1cyBpYWN1bGlzIG5lcXVlPC9saT5cbiAgICA8bGk+UHVydXMgc29kYWxlcyB1bHRyaWNpZXM8L2xpPlxuICAgIDxsaT5GYXVjaWJ1cyBwb3J0YSBsYWN1cyBmcmluZ2lsbGEgdmVsPC9saT5cbiAgICA8bGk+QWVuZWFuIHNpdCBhbWV0IGVyYXQgbnVuYzwvbGk+XG48L29sPlxuYGBgXG4qL1xuXG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBMaW5rc1xubmFtZTogTGlua3NcbmNhdGVnb3J5OiBUZXh0XG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuPGE+RXhlbXBsZSBkZSBsaWVuPC9hPlxuYGBgXG5cblxuKi9cblxuXG4vLyBWYXJpYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgJGZvbnQtZmFtaWx5LWJhc2U7XG4kaGVhZGluZ3MtZm9udC1zdHlsZTogICAgIG5vcm1hbDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNjAwO1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjE1O1xuJGhlYWRpbmdzLWxldHRlci1zcGFjaW5nOiAuNXB4O1xuXG4kZm9udC1zaXplLWgxOiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSArIDIuNjtcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICsgMS44O1xuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKyAuNjtcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICsgLjQ7XG4kZm9udC1zaXplLWg1OiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSArIC4yO1xuJGZvbnQtc2l6ZS1oNjogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKyAuMTtcblxuXG4vLyBIZWFkaW5nc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkaGVhZGluZ3MtZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6ICRoZWFkaW5ncy1sZXR0ZXItc3BhY2luZztcbn1cblxuaDEsIGgyLCBoMyB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xufVxuXG5oMSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWgxO1xufVxuXG5oMiB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWgyO1xufVxuXG5oMyB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWgzO1xufVxuXG5oNCB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWg0O1xufVxuXG5oNSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWg1O1xufVxuXG5oNiB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWg2O1xufVxuXG5cbi8vIFBhcmFncmFwaHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbnAge1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuXG4vLyBMaXN0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxudWwsXG5vbCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cbiAgICB1bCxcbiAgICBvbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG5cbi8vIExpbmtzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5hIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gICAgQGlmICgkbGluay1kZWNvcmF0aW9uID09IHVuZGVybGluZSkge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tc2tpcDogaW5rO1xuICAgIH1cbiAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgLy90cmFuc2l0aW9uOiBjb2xvciAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG59XG4iLCIvL1xuLy8gQnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBEb2N1bWVudGF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQnV0dG9uc1xubmFtZTogMDNfQnV0dG9uc1xuY2F0ZWdvcnk6IEJ1dHRvbnNcbi0tLVxuVGhlIGBidG5gIGNsYXNzZXMgYXJlIGRlc2lnbmVkIHRvIGJlIHVzZWQgd2l0aCB0aGUgYDxidXR0b24+YCBlbGVtZW50LiBIb3dldmVyLCB5b3UgY2FuIGFsc28gdXNlIHRoZXNlIGNsYXNzZXMgb24gYDxhPmAgb3IgYDxpbnB1dD5gIGVsZW1lbnRzICh0aG91Z2ggc29tZSBicm93c2VycyBtYXkgYXBwbHkgYSBzbGlnaHRseSBkaWZmZXJlbnQgcmVuZGVyaW5nKS5cblxuV2hlbiB1c2luZyBidXR0b24gY2xhc3NlcyBvbiBgPGE+YCBlbGVtZW50cyB0aGF0IGFyZSB1c2VkIHRvIHRyaWdnZXIgaW4tcGFnZSBmdW5jdGlvbmFsaXR5IChsaWtlIGNvbGxhcHNpbmcgY29udGVudCksIHJhdGhlciB0aGFuIGxpbmtpbmcgdG8gbmV3IHBhZ2VzIG9yIHNlY3Rpb25zIHdpdGhpbiB0aGUgY3VycmVudCBwYWdlLCB0aGVzZSBsaW5rcyBzaG91bGQgYmUgZ2l2ZW4gYSBgcm9sZT1cImJ1dHRvblwiYCB0byBhcHByb3ByaWF0ZWx5IGNvbnZleSB0aGVpciBwdXJwb3NlIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXMgc3VjaCBhcyBzY3JlZW4gcmVhZGVycy5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48YSBocmVmPVwiI1wiIGNsYXNzPVwiYnRuIGJ0bi0tZGVmYXVsdFwiIHJvbGU9XCJidXR0b25cIj5MaW5rPC9hPlxuXG48YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tLWRlZmF1bHRcIj5CdXR0b248L2J1dHRvbj5cblxuPGlucHV0IHR5cGU9XCJidXR0b25cIiB2YWx1ZT1cIklucHV0XCIgY2xhc3M9XCJidG4gYnRuLS1kZWZhdWx0XCI+XG5cbjxpbnB1dCB0eXBlPVwic3VibWl0XCIgdmFsdWU9XCJTdWJtaXRcIiBjbGFzcz1cImJ0biBidG4tLWRlZmF1bHRcIj5cblxuPGlucHV0IHR5cGU9XCJyZXNldFwiIHZhbHVlPVwiUmVzZXRcIiBjbGFzcz1cImJ0biBidG4tLWRlZmF1bHRcIj5cbmBgYFxuXG4jIyBCdXR0b24gc3R5bGVzXG5cblRoZXJlIGFyZSB0aHJlZSBzdHlsZXMgZm9yIGJ1dHRvbnM6IGRlZmF1bHQsIHByaW1hcnkgYW5kIHNlY29uZGFyeS4gU2ltcGx5IGFkZCB0aGUgc3R5bGUgbW9kaWZpZXIgY2xhc3MgZm9yIHRoZSBkZXNpcmVkIHN0eWxlLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi0tZGVmYXVsdFwiPkJ1dHRvbiBkZWZhdWx0PC9idXR0b24+XG5cbjxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi0tcHJpbWFyeVwiPkJ1dHRvbiBwcmltYXJ5PC9idXR0b24+XG5cbjxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi0tc2Vjb25kYXJ5XCI+QnV0dG9uIHNlY29uZGFyeTwvYnV0dG9uPlxuXG48YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tLXRlcnRpYXJ5XCI+QnV0dG9uIHRlcnRpYXJ5PC9idXR0b24+XG5cbjxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi0tcXVhdGVybmFyeVwiPkJ1dHRvbiBxdWF0ZXJuYXJ5PC9idXR0b24+XG5gYGBcblxuIyMgQnV0dG9uIHNpemVzXG5cblRoZXJlIGFyZSB0aHJlZSAzIHNpemVzIGZvciBidXR0b25zOiBMYXJnZSwgbWVkaXVtIChkZWZhdWx0KSBhbmQgc21hbGwuIFNpbXBseSBhZGQgdGhlIHNpemUgbW9kaWZpZXIgY2xhc3MgZm9yIHRoZSBkZXNpcmVkIHNpemUuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLS1wcmltYXJ5IGJ0bi0tbGdcIj5CdXR0b24gbGFyZ2U8L2J1dHRvbj5cblxuPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLS1wcmltYXJ5IGJ0bi0tc21cIj5CdXR0b24gc21hbGw8L2J1dHRvbj5cbmBgYFxuXG4jIyBCdXR0b24gZGlzYWJsZWQgc3RhdGVcblxuTWFrZSBidXR0b25zIGxvb2sgaW5hY3RpdmUgYnkgYWRkaW5nIHRoZSBgZGlzYWJsZWRgIGJvb2xlYW4gYXR0cmlidXRlIHRvIGFueSBgPGJ1dHRvbj5gIGVsZW1lbnQuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLS1wcmltYXJ5XCIgZGlzYWJsZWQ+RGlzYWJsZWQgYnV0dG9uPC9idXR0b24+XG5gYGBcblxuRGlzYWJsZWQgYnV0dG9ucyB1c2luZyB0aGUgYDxhPmAgZWxlbWVudCBiZWhhdmUgYSBiaXQgZGlmZmVyZW50OlxuKiBgPGE+YCBkb27igJl0IHN1cHBvcnQgdGhlIGRpc2FibGVkIGF0dHJpYnV0ZSwgc28geW91IG11c3QgYWRkIHRoZSBgZGlzYWJsZWRgIGNsYXNzIHRvIG1ha2UgaXQgdmlzdWFsbHkgYXBwZWFyIGRpc2FibGVkLlxuKiBTb21lIGZ1dHVyZS1mcmllbmRseSBzdHlsZXMgYXJlIGluY2x1ZGVkIHRvIGRpc2FibGUgYWxsIHBvaW50ZXItZXZlbnRzIG9uIGFuY2hvciBidXR0b25zLiBJbiBicm93c2VycyB3aGljaCBzdXBwb3J0IHRoYXQgcHJvcGVydHksIHlvdSB3b27igJl0IHNlZSB0aGUgZGlzYWJsZWQgY3Vyc29yIGF0IGFsbC5cbiogRGlzYWJsZWQgYnV0dG9ucyBzaG91bGQgaW5jbHVkZSB0aGUgYGFyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJgIGF0dHJpYnV0ZSB0byBpbmRpY2F0ZSB0aGUgc3RhdGUgb2YgdGhlIGVsZW1lbnQgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llcy5cblxuYGBgaHRtbF9leGFtcGxlXG48YSBocmVmPVwiI1wiIGNsYXNzPVwiYnRuIGJ0bi0tcHJpbWFyeSBkaXNhYmxlZFwiIHJvbGU9XCJidXR0b25cIiBhcmlhLWRpc2FibGVkPVwidHJ1ZVwiPkRpc2FibGVkIGxpbms8L2E+XG5gYGBcblxuSW4gYWRkaXRpb24sIGV2ZW4gaW4gYnJvd3NlcnMgdGhhdCBkbyBzdXBwb3J0IGBwb2ludGVyLWV2ZW50czogbm9uZWAsIGtleWJvYXJkIG5hdmlnYXRpb24gcmVtYWlucyB1bmFmZmVjdGVkLCBtZWFuaW5nIHRoYXQgc2lnaHRlZCBrZXlib2FyZCB1c2VycyBhbmQgdXNlcnMgb2YgYXNzaXN0aXZlIHRlY2hub2xvZ2llcyB3aWxsIHN0aWxsIGJlIGFibGUgdG8gYWN0aXZhdGUgdGhlc2UgbGlua3MuIFNvIHRvIGJlIHNhZmUsIGFkZCBhIGB0YWJpbmRleD1cIi0xXCJgIGF0dHJpYnV0ZSBvbiB0aGVzZSBsaW5rcyAodG8gcHJldmVudCB0aGVtIGZyb20gcmVjZWl2aW5nIGtleWJvYXJkIGZvY3VzKSBhbmQgdXNlIGN1c3RvbSBKYXZhU2NyaXB0IHRvIGRpc2FibGUgdGhlaXIgZnVuY3Rpb25hbGl0eS5cblxuIyMgQnV0dG9uIGxpbmtcblxuSW4gcGFydGljdWxhciBjYXNlcywgeW91IG1heSB3YW50IHRvIHVzZSBgPGJ1dHRvbj5gIHRhZyBidXQgaGF2ZSB0aGUgZGlzcGxheSBhbmQgYmVoYXZpb3Igb2YgYSBjbGFzc2ljIGxpbmsuIFRvIGRvIHRoYXQsIGFkZCB0aGUgYGJ0bi0tbGlua2AgbW9kaWZpZXIgY2xhc3MuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPHA+TWFlY2VuYXMgc2VkIGRpYW0gZWdldCByaXN1cyB2YXJpdXMgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLS1saW5rXCI+YmxhbmRpdDwvYnV0dG9uPiBzaXQgYW1ldCBub24gbWFnbmEuPC9wPlxuYGBgXG4qL1xuXG5cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICRmb250LWZhbWlseS1iYXNlO1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICRmb250LXNpemUtYmFzZTtcbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICA1MDA7XG4kYnRuLXRleHQtdHJhbnNmb3JtOiAgICAgICAgbm9uZTtcblxuJGJ0bi1wYWRkaW5nLXZlcnRpY2FsOiAgICAgIDEycHg7XG4kYnRuLXBhZGRpbmctaG9yaXpvbnRhbDogICAgNDBweDtcblxuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgIDEuMTtcbiRidG4tbGV0dGVyLXNwYWNpbmc6ICAgICAgICBub3JtYWw7XG5cbiRidG4tYm9yZGVyLXJhZGl1cy1iYXNlOiAgICA1cHg7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAjZmZmO1xuJGJ0bi1kZWZhdWx0LWJnOiAgICAgICAgICAgICRjb2xvci1wcmltYXJ5O1xuJGJ0bi1kZWZhdWx0LWNvbG9yLWhvdmVyOiAgICRidG4tZGVmYXVsdC1jb2xvcjtcbiRidG4tZGVmYXVsdC1iZy1ob3ZlcjogICAgICBhZGp1c3QtaHVlKCRidG4tZGVmYXVsdC1iZywgLTEwZGVnKTtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICNmZmY7XG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgJGNvbG9yLXByaW1hcnk7XG4kYnRuLXByaW1hcnktY29sb3ItaG92ZXI6ICAgJGJ0bi1wcmltYXJ5LWNvbG9yO1xuJGJ0bi1wcmltYXJ5LWJnLWhvdmVyOiAgICAgIGxpZ2h0ZW4oJGJ0bi1wcmltYXJ5LWJnLCAxMCUpO1xuXG4kYnRuLXNlY29uZGFyeS1jb2xvcjogICAgICAgJGNvbG9yLXByaW1hcnk7XG4kYnRuLXNlY29uZGFyeS1iZzogICAgICAgICAgdHJhbnNwYXJlbnQ7XG4kYnRuLXNlY29uZGFyeS1jb2xvci1ob3ZlcjogJGJ0bi1zZWNvbmRhcnktY29sb3I7XG4kYnRuLXNlY29uZGFyeS1iZy1ob3ZlcjogICAgdHJhbnNwYXJlbnQ7XG5cbiRidG4tdGVydGlhcnktY29sb3I6ICAgICAgICNmZmY7XG4kYnRuLXRlcnRpYXJ5LWJnOiAgICAgICAgICAkY29sb3ItcHJpbWFyeTtcbiRidG4tdGVydGlhcnktY29sb3ItaG92ZXI6ICRidG4tdGVydGlhcnktY29sb3I7XG4kYnRuLXRlcnRpYXJ5LWJnLWhvdmVyOiAgICBhZGp1c3QtaHVlKCRidG4tdGVydGlhcnktYmcsIC0xMGRlZyk7XG5cbiRidG4tcXVhdGVybmFyeS1jb2xvcjogICAgICAgJGNvbG9yLXNlY29uZGFyeTtcbiRidG4tcXVhdGVybmFyeS1iZzogICAgICAgICAgdHJhbnNwYXJlbnQ7XG4kYnRuLXF1YXRlcm5hcnktY29sb3ItaG92ZXI6ICRidG4tcXVhdGVybmFyeS1jb2xvcjtcbiRidG4tcXVhdGVybmFyeS1iZy1ob3ZlcjogICAgdHJhbnNwYXJlbnQ7XG5cbi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRjb2xvci1ob3ZlciwgJGJhY2tncm91bmQtaG92ZXIpIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0sXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICAgICAmLFxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQpIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xufVxuXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy12ZXJ0aWNhbCwgJGJ0bi1wYWRkaW5nLWhvcml6b250YWwsICRidG4tZm9udC1zaXplLCAkYnRuLWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LWZhbWlseTogJGJ0bi1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtdHJhbnNmb3JtOiAkYnRuLXRleHQtdHJhbnNmb3JtO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZSBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IC8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzXG4gICAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgIC5pY29uIHtcbiAgICAgICAgd2lkdGg6IDEuNWVtO1xuICAgICAgICBoZWlnaHQ6IDEuNWVtO1xuICAgICAgICBtYXJnaW46IC01cHggOHB4IC01cHggMDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tLWRlZmF1bHQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tZGVmYXVsdC1jb2xvciwgJGJ0bi1kZWZhdWx0LWJnLCAkYnRuLWRlZmF1bHQtY29sb3ItaG92ZXIsICRidG4tZGVmYXVsdC1iZy1ob3Zlcik7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJ0bi0tcHJpbWFyeSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1wcmltYXJ5LWNvbG9yLCAkYnRuLXByaW1hcnktYmcsICRidG4tcHJpbWFyeS1jb2xvci1ob3ZlciwgJGJ0bi1wcmltYXJ5LWJnLWhvdmVyKTtcbn1cblxuLmJ0bi0tc2Vjb25kYXJ5IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXNlY29uZGFyeS1jb2xvciwgJGJ0bi1zZWNvbmRhcnktYmcsICRidG4tc2Vjb25kYXJ5LWNvbG9yLWhvdmVyLCAkYnRuLXNlY29uZGFyeS1iZy1ob3Zlcik7XG4gICAgYm9yZGVyOiBzb2xpZCAycHggJGNvbG9yLXByaW1hcnk7XG59XG5cbi5idG4tLXRlcnRpYXJ5IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXRlcnRpYXJ5LWNvbG9yLCAkYnRuLXRlcnRpYXJ5LWJnLCAkYnRuLXRlcnRpYXJ5LWNvbG9yLWhvdmVyLCAkYnRuLXRlcnRpYXJ5LWJnLWhvdmVyKTtcbiAgICBib3JkZXI6IHNvbGlkIDJweCAkY29sb3ItdGVydGlhcnk7IC8vIC8hXFwgYmFja2dyb3VuZCBhY3R1ZWxsZW1lbnQgcmVkLCBtYWlzIGNlbnPDqSBldHJlIHRyYW5zcGFyZW50IGF2ZWMgdW5lIGJvcmR1cmUgYmxhbmNoZVxufVxuXG4uYnRuLS1xdWF0ZXJuYXJ5IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXF1YXRlcm5hcnktY29sb3IsICRidG4tcXVhdGVybmFyeS1iZywgJGJ0bi1xdWF0ZXJuYXJ5LWNvbG9yLWhvdmVyLCAkYnRuLXF1YXRlcm5hcnktYmctaG92ZXIpO1xuICAgIGJvcmRlcjogc29saWQgMnB4ICRidG4tcXVhdGVybmFyeS1jb2xvcjtcblxuICAgICY6aG92ZXJ7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRidG4tcXVhdGVybmFyeS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgIH1cbn1cblxuLmJ0bi0taW50ZXJ2ZW50aW9uIHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWNvbG9yLWhvdmVyLCAkYnRuLXByaW1hcnktYmctaG92ZXIpO1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuXG4gICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG59XG5cblxuLy8gQnV0dG9uIFNpemVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLS1sZyB7XG4gICAgLy8gbGluZS1oZWlnaHQgZW5zdXJlIGV2ZW4tbnVtYmVyZWQgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIGxhcmdlIGlucHV0XG4gICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXZlcnRpY2FsICsgM3B4LCAkYnRuLXBhZGRpbmctaG9yaXpvbnRhbCArIDVweCwgJGZvbnQtc2l6ZS1sYXJnZSArIC4xcmVtLCAkYnRuLWxpbmUtaGVpZ2h0KTtcbn1cblxuLmJ0bi0tc20ge1xuICAgIC8vIGxpbmUtaGVpZ2h0IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XG4gICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXZlcnRpY2FsIC0gNHB4LCAkYnRuLXBhZGRpbmctaG9yaXpvbnRhbCAtIDE1cHgsICRmb250LXNpemUtYmFzZSwgJGJ0bi1saW5lLWhlaWdodCArIC4xKTtcbn1cblxuXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi0tbGluayB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICsgLjFyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICAgIEBpZiAoJGxpbmstZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUpIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uLXNraXA6IGluaztcbiAgICB9XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBjb2xvcjogJGNvbG9yLWdyYXk7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjFzIGVhc2UtaW4tb3V0O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAmLFxuICAgICY6YWN0aXZlLFxuICAgICZbZGlzYWJsZWRdLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IFxuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgICAgICAgQGlmICgkbGluay1kZWNvcmF0aW9uID09IHVuZGVybGluZSkge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLXNraXA6IGluaztcbiAgICAgICAgfVxuICAgICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG59XG4iLCIvL1xuLy8gSGVhZGluZ3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGFnZS1oZWFkZXJ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgbWFyZ2luIGJvdHRvbSBvbiBibGFuayB0aGVtZVxufVxuXG4vLyBTZWN0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uc2VjdGlvbi1oZWFkIHtcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgIHBhZGRpbmc6IDEwcHggMCAwO1xuXG4gICAgLmNhdGFsb2ctY2F0ZWdvcnktdmlldyAmLFxuICAgIC5jYXRhbG9nLXByb2R1Y3QtdmlldyAmLFxuICAgIC5jYXRhbG9nc2VhcmNoLXJlc3VsdC1pbmRleCAmIHtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0NHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuY2F0YWxvZy1jYXRlZ29yeS12aWV3ICYsXG4gICAgICAgIC5jYXRhbG9nLXByb2R1Y3QtdmlldyAmLFxuICAgICAgICAuY2F0YWxvZ3NlYXJjaC1yZXN1bHQtaW5kZXggJiB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlY3Rpb24taGVhZF9fdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2UgKyAuNHJlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMjtcbiAgICB9XG59XG5cbi5zZWN0aW9uLWhlYWRfX2luZm9zIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDhweCAwIDA7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlICsgLjFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2UgKyAuMnJlbTtcbiAgICB9XG59XG5cbi5zZWN0aW9uLWhlYWRfX3N0YXR1cyxcbi5zZWN0aW9uLWhlYWRfX2RhdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICsgLjFyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG59XG5cbi5zZWN0aW9uLWhlYWRfX3N0YXR1cyB7XG4gICAgbWFyZ2luOiA4cHggMCA0cHg7XG59XG5cblxuLy8gSGVhZGxpbmVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5oZWFkbGluZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAxNnB4IDA7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlICsgLjJyZW07XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAgIG1hcmdpbjogMzJweCAwO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtaDIgKyAuNHJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC43cHg7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRXJyb3JzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZXJyb3ItY29udGVudHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgXG4gICAgICAgICY6YmVmb3JlIHtcblx0ICAgICAgICBjb250ZW50OiBcIi0gXCI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZXJyb3Itc3VidGl0bGV7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICsgMC42O1xuICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgfVxufSIsIi8vXG4vLyBNZXNzYWdlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBEb2N1bWVudGF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKmRvY1xuLS0tXG50aXRsZTogTWVzc2FnZXNcbm5hbWU6IG1lc3NhZ2VzXG5jYXRlZ29yeTogRm9ybXNcbi0tLVxuTWVzc2FnZSBpcyB1c2VkIHRvIGRpc3BsYXkgaW5mb3JtYXRpb24gdG8gdGhlIHVzZXIuIFRoaXMgbWVzc2FnZSBjYW4gYmUgYW4gaW5mb3JtYXRpb24sIGEgc3VjY2VzcyBtZXNzYWdlLCBhIHdhcm5pbmcsIG9yIGEgZXJyb3IuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cIm1lc3NhZ2UgbWVzc2FnZS0taW5mb1wiPlxuICAgIERvbmVjIGlkIGVsaXQgbm9uIG1pIHBvcnRhIGdyYXZpZGEgYXQgZWdldCBtZXR1cy4gVmVzdGlidWx1bSBpZCBsaWd1bGEgcG9ydGEgZmVsaXMgZXVpc21vZCBzZW1wZXIuXG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cIm1lc3NhZ2UgbWVzc2FnZS0tc3VjY2Vzc1wiPlxuICAgIERvbmVjIGlkIGVsaXQgbm9uIG1pIHBvcnRhIGdyYXZpZGEgYXQgZWdldCBtZXR1cy4gVmVzdGlidWx1bSBpZCBsaWd1bGEgcG9ydGEgZmVsaXMgZXVpc21vZCBzZW1wZXIuXG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cIm1lc3NhZ2UgbWVzc2FnZS0td2FybmluZ1wiPlxuICAgIERvbmVjIGlkIGVsaXQgbm9uIG1pIHBvcnRhIGdyYXZpZGEgYXQgZWdldCBtZXR1cy4gVmVzdGlidWx1bSBpZCBsaWd1bGEgcG9ydGEgZmVsaXMgZXVpc21vZCBzZW1wZXIuXG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cIm1lc3NhZ2UgbWVzc2FnZS0tZXJyb3JcIj5cbiAgICBEb25lYyBpZCBlbGl0IG5vbiBtaSBwb3J0YSBncmF2aWRhIGF0IGVnZXQgbWV0dXMuIFZlc3RpYnVsdW0gaWQgbGlndWxhIHBvcnRhIGZlbGlzIGV1aXNtb2Qgc2VtcGVyLlxuPC9kaXY+XG5gYGBcbiovXG5cblxuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICMzMTcwOGY7XG4kc3RhdGUtaW5mby1iZzogICAgICAgICNkOWVkZjc7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSk7XG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgIzNjNzYzZDtcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgI2RmZjBkODtcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKTtcblxuJHN0YXRlLXdhcm5pbmctdGV4dDogICAjOGE2ZDNiO1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAjZmNmOGUzO1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtd2FybmluZy1iZywgLTEwKSwgNSUpO1xuXG4kc3RhdGUtZXJyb3ItdGV4dDogICAgICNhOTQ0NDI7XG4kc3RhdGUtZXJyb3ItYmc6ICAgICAgICNmMmRlZGU7XG4kc3RhdGUtZXJyb3ItYm9yZGVyOiAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1lcnJvci1iZywgLTEwKSwgNSUpO1xuXG5cbi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIG1lc3NhZ2UtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJHRleHQtY29sb3IpIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJHRleHQtY29sb3IsIDEwJSk7XG4gICAgfVxufVxuXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubWVzc2FnZXMge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OjA7XG4gICAgYm90dG9tOiAxM3B4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6MTtcbn1cblxuLm1lc3NhZ2Uge1xuICAgIHBhZGRpbmc6IDE1cHggMTVweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICAgJiA+IGRpdiB7XG4gICAgICAgIGZvbnQtc2l6ZToxNXB4O1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm1lc3NhZ2UtLWluZm8ge1xuICAgIEBpbmNsdWRlIG1lc3NhZ2UtdmFyaWFudCgkc3RhdGUtaW5mby1iZywgJHN0YXRlLWluZm8tYm9yZGVyLCAkc3RhdGUtaW5mby10ZXh0KTtcbn1cblxuLm1lc3NhZ2UtLXN1Y2Nlc3Mge1xuICAgIEBpbmNsdWRlIG1lc3NhZ2UtdmFyaWFudCgkc3RhdGUtc3VjY2Vzcy1iZywgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyLCAkc3RhdGUtc3VjY2Vzcy10ZXh0KTtcbn1cblxuLm1lc3NhZ2UtLXdhcm5pbmcge1xuICAgIEBpbmNsdWRlIG1lc3NhZ2UtdmFyaWFudCgkc3RhdGUtd2FybmluZy1iZywgJHN0YXRlLXdhcm5pbmctYm9yZGVyLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcbn1cblxuLm1lc3NhZ2UtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBtZXNzYWdlLXZhcmlhbnQoJHN0YXRlLWVycm9yLWJnLCAkc3RhdGUtZXJyb3ItYm9yZGVyLCAkc3RhdGUtZXJyb3ItdGV4dCk7XG59XG5cbi8vIG1lc3NhZ2VzIG1hZ2VudG9cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5tZXNzYWdlLnN1Y2Nlc3N7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI5LCAxNDEsIDM1KTsgY29sb3I6IHdoaXRlO1xuICAgIHdpZHRoOiA0MCU7IG1hcmdpbjogYXV0bzsgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICYgPiAqOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgICAgIHRvcDo1MCU7XG4gICAgfVxuICAgIEBtZWRpYShtYXgtd2lkdGg6JHNjcmVlbi14cy1taW4pIHtcbiAgICAgICAgd2lkdGg6ODAlO1xuICAgIH1cbn1cblxuLm1lc3NhZ2UuaW5mbywgLm1lc3NhZ2Uubm90aWNle1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogNTAlOyBtYXJnaW46IGF1dG87IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTEsMTQwLDApO1xufVxuXG4ubWVzc2FnZS5lcnJvcntcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDUwJTsgbWFyZ2luOiBhdXRvOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjEzLDAsMCk7XG59IiwiIC8vXG4vLyBUYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRG9jdW1lbnRhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFRhYmxlc1xubmFtZTogdGFibGVzXG5jYXRlZ29yeTogQ29tcG9uZW50c1xuLS0tXG5UbyBhZGQgYmFzaWMgc3R5bGluZyB0byBhIHRhYmxlLCBhZGQgdGhlIGJhc2UgY2xhc3MgYHRhYmxlYCB0byBhbnkgYDx0YWJsZT5gLiBJdCBtYXkgc2VlbSBzdXBlciByZWR1bmRhbnQsIGJ1dCBpdCdzIHRvIGF2b2lkIGNvbmZsaWN0cyB3aXRoIG90aGVyIHVzZSBvZiB0aGUgYDx0YWJsZT5gIG1hcmt1cC5cblxuWW91IGNhbiBhZGQgYHRhYmxlLS1yZXNwb25zaXZlYCBjbGFzcyB0byBgdGFibGVgcyBhbmQgaXQgd2lsbCBtYWtlIHRoZW0gbW9iaWxlIGZyaWVuZGx5IGJ5IGVuYWJsaW5nIGhvcml6b250YWwgc2Nyb2xsaW5nLiBPbmx5IGFwcGxpZXMgJmx0Ozc2OHB4LiBFdmVyeXRoaW5nIGFib3ZlIHRoYXQgd2lsbCBkaXNwbGF5IG5vcm1hbGx5LiBUaGlzIGlzbid0IGluY2x1ZGVkIHdpdGggdGhlIGB0YWJsZWAgY2xhc3MgYmVjYXVzZSBpdCB3aWxsIGRlcGVuZCBvbiB0aGUgdGFibGUgc2l6ZS4gQWxzbyBvdGhlciBwb3NzaWJpbGl0aWVzIGV4aXN0IHRvIG1ha2UgYDx0YWJsZT5gIG1vYmlsZSBmcmllbmRseSwgdGhpcyBvbmUgaXMganVzdCB0aGUgbW9yZSBnZW5lcmljLlxuXG5gYGBodG1sX2V4YW1wbGVcbjx0YWJsZSBjbGFzcz1cInRhYmxlIHRhYmxlLS1yZXNwb25zaXZlXCI+XG4gICAgPHRoZWFkPlxuICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGg+IzwvdGg+XG4gICAgICAgICAgICA8dGg+Rmlyc3Q8L3RoPlxuICAgICAgICAgICAgPHRoPlNlY29uZDwvdGg+XG4gICAgICAgICAgICA8dGg+VGhpcmQ8L3RoPlxuICAgICAgICA8L3RyPlxuICAgIDwvdGhlYWQ+XG4gICAgPHRib2R5PlxuICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggc2NvcGU9XCJyb3dcIj4xPC90aD5cbiAgICAgICAgICAgIDx0ZD5GaXJzdDwvdGQ+XG4gICAgICAgICAgICA8dGQ+U2Vjb25kPC90ZD5cbiAgICAgICAgICAgIDx0ZD5UaGlyZDwvdGQ+XG4gICAgICAgIDwvdHI+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aCBzY29wZT1cInJvd1wiPjI8L3RoPlxuICAgICAgICAgICAgPHRkPkZpcnN0PC90ZD5cbiAgICAgICAgICAgIDx0ZD5TZWNvbmQ8L3RkPlxuICAgICAgICAgICAgPHRkPlRoaXJkPC90ZD5cbiAgICAgICAgPC90cj5cbiAgICAgICAgPHRyPlxuICAgICAgICAgICAgPHRoIHNjb3BlPVwicm93XCI+MzwvdGg+XG4gICAgICAgICAgICA8dGQ+Rmlyc3Q8L3RkPlxuICAgICAgICAgICAgPHRkPlNlY29uZDwvdGQ+XG4gICAgICAgICAgICA8dGQ+VGhpcmQ8L3RkPlxuICAgICAgICA8L3RyPlxuICAgIDwvdGJvZHk+XG48L3RhYmxlPlxuYGBgXG4qL1xuXG5cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgIDhweDtcbiR0YWJsZS1jZWxsLWNvbG9yOiAgICAgICAgICAgICAkdGV4dC1jb2xvcjtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAjZmZmO1xuJHRhYmxlLWJnLXRoZWFkOiAgICAgICAgICAgICAgICRjb2xvci1wcmltYXJ5O1xuJHRhYmxlLWNvbG9yLXRoZWFkOiAgICAgICAgICAgICNmZmY7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgI2QyZDJkMjtcblxuXG4vLyBOb3JtYWxpemVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbnRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5jYXB0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGNvbG9yOiAkY29sb3ItZ3JheS1kYXJrO1xufVxuXG50aCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuXG4vLyBCYXNlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4udGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZztcblxuICAgIC8vIENlbGxzXG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBjb2xvcjogJHRhYmxlLWNlbGwtY29sb3I7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4IDAgMDtcbiAgICB9XG5cbiAgICAvLyBCb3R0b20gYWxpZ24gZm9yIGNvbHVtbiBoZWFkaW5nc1xuICAgIHRoZWFkIHRoIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgICAgY29sb3I6ICR0YWJsZS1jb2xvci10aGVhZDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLXRoZWFkO1xuICAgICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci13aWR0aDogMCAwIDFweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgICAgdGgsXG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcgKyA0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4udGFibGUtLXJlc3BvbnNpdmUge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IC8vIFdpbmRvd3MgUGhvbmUgOCBmaXhcbiAgICB9XG59XG4iLCIvL1xuLy8gRm9ybXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRG9jdW1lbnRhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLypkb2Ncbi0tLVxudGl0bGU6IEZvcm1zXG5uYW1lOiBmb3Jtc1xuY2F0ZWdvcnk6IEZvcm1zXG4tLS1cbkluZGl2aWR1YWwgZm9ybSBjb250cm9scyBhdXRvbWF0aWNhbGx5IHJlY2VpdmUgc29tZSBnbG9iYWwgc3R5bGluZy4gQWxsIHRleHR1YWwgYDxpbnB1dD5gLCBgPHRleHRhcmVhPmAsIGFuZCBgPHNlbGVjdD5gIGVsZW1lbnRzIHdpdGggYC5mb3JtLWNvbnRyb2xgIGFyZSBzZXQgdG8gYHdpZHRoOiAxMDAlO2AgYnkgZGVmYXVsdC4gV3JhcCBsYWJlbHMgYW5kIGNvbnRyb2xzIGluIC5mb3JtLWdyb3VwIGZvciBvcHRpbXVtIHNwYWNpbmcuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGZvcm0+XG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICAgICAgPGxhYmVsIGZvcj1cImV4YW1wbGUtaW5wdXRcIj5JbnB1dCB0ZXh0PC9sYWJlbD5cbiAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgaWQ9XCJleGFtcGxlLWlucHV0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBwbGFjZWhvbGRlcj1cIlBsYWNlaG9sZGVyXCI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICAgICAgPGxhYmVsIGZvcj1cImV4YW1wbGUtdGV4dGFyZWFcIj5UZXh0YXJlYTwvbGFiZWw+XG4gICAgICAgIDx0ZXh0YXJlYSBpZD1cImV4YW1wbGUtdGV4dGFyZWFcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIHJvd3M9XCI2XCI+PC90ZXh0YXJlYT5cbiAgICA8L2Rpdj5cbjwvZm9ybT5cbmBgYFxuXG4jIyBTZWxlY3RzXG5cblNlbGVjdCBoYXZlIGRpZmZlcmVudHMgc3R5bGVzIGJldHdlZW4gYnJvd3NlcnMgYW5kIHNvbWUgc3R5bGVzIHRoYXQgY2Fubm90IGJlIG1vZGlmaWVkLiBUbyBiZSBhYmxlIHRvIGJlIGNvbnNpc3RlbnQgYWNyb3NzIGJyb3dzZXJzIGFuZCBoYXZlIGEgY3VzdG9tIHN0eWxlLCB0aGUgdGhlIGBzZWxlY3RgIGlzIHdyYXBwZWQgd2l0aCBhIGBmb3JtLWNvbnRyb2wtc2VsZWN0YCBjbGFzcy5cblxuYGBgaHRtbF9leGFtcGxlXG48bGFiZWwgZm9yPVwiZXhhbXBsZS1zZWxlY3RcIj5TZWxlY3Q8L2xhYmVsPlxuPGRpdiBjbGFzcz1cImZvcm0tY29udHJvbC1zZWxlY3RcIj5cbiAgICA8c2VsZWN0IGlkPVwiZXhhbXBsZS1zZWxlY3RcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiPlxuICAgICAgICA8b3B0aW9uPk9wdGlvbiAxPC9vcHRpb24+XG4gICAgICAgIDxvcHRpb24+T3B0aW9uIDI8L29wdGlvbj5cbiAgICAgICAgPG9wdGlvbj5PcHRpb24gMzwvb3B0aW9uPlxuICAgICAgICA8b3B0aW9uPk9wdGlvbiA0PC9vcHRpb24+XG4gICAgPC9zZWxlY3Q+XG48L2Rpdj5cbmBgYFxuXG5UbyBiZSBkaXNhYmxlZCwgdGhlIGN1c3RvbSBgc2VsZWN0YCByZXF1aXJlIHRvIGFkZCBhIGBkaXNhYmxlZGAgY2xhc3MgaW4gYWRkaXRpb24gdG8gdGhlIGBkaXNhYmxlZGAgYXR0cmlidXRlIG9uIHRoZSBgc2VsZWN0YCBpdHNlbGYuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGxhYmVsIGZvcj1cImV4YW1wbGUtc2VsZWN0XCI+U2VsZWN0PC9sYWJlbD5cbjxkaXYgY2xhc3M9XCJmb3JtLWNvbnRyb2wtc2VsZWN0IGRpc2FibGVkXCI+XG4gICAgPHNlbGVjdCBpZD1cImV4YW1wbGUtc2VsZWN0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBkaXNhYmxlZD5cbiAgICAgICAgPG9wdGlvbj5PcHRpb24gMTwvb3B0aW9uPlxuICAgICAgICA8b3B0aW9uPk9wdGlvbiAyPC9vcHRpb24+XG4gICAgPC9zZWxlY3Q+XG48L2Rpdj5cbmBgYFxuXG4jIyBDaGVja2JveCBhbmQgcmFkaW9cblxuU2ltaWxhciBhcyB0aGUgc2VsZWN0LCB0byBoYXZlIHRoZSBzYW1lIHJlbmRlciBhY3Jvc3MgYnJvd3NlcnMgd2UgYWRkIHRoZSBjbGFzcyBgZm9ybS1jb250cm9sLWNoZWNrYm94YCBmb3IgY2hlY2tib3ggYW5kIGBmb3JtLWNvbnRyb2wtcmFkaW9gIGZvciByYWRpby5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwiZm9ybS1jb250cm9sLWNoZWNrYm94XCI+XG4gICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwiZXhhbXBsZS1jaGVja2JveC0xXCIgdmFsdWU9XCJcIj5cbiAgICA8bGFiZWwgZm9yPVwiZXhhbXBsZS1jaGVja2JveC0xXCI+T3B0aW9uIG9uZTwvbGFiZWw+XG48L2Rpdj5cbmBgYFxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJmb3JtLWNvbnRyb2wtY2hlY2tib3hcIj5cbiAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJleGFtcGxlLWNoZWNrYm94LTJcIiB2YWx1ZT1cIlwiIGNoZWNrZWQ+XG4gICAgPGxhYmVsIGZvcj1cImV4YW1wbGUtY2hlY2tib3gtMlwiPk9wdGlvbiB0d28gaXMgY2hlY2tlZDwvbGFiZWw+XG48L2Rpdj5cbmBgYFxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJmb3JtLWNvbnRyb2wtY2hlY2tib3hcIj5cbiAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJleGFtcGxlLWNoZWNrYm94LTNcIiB2YWx1ZT1cIlwiIGRpc2FibGVkPlxuICAgIDxsYWJlbCBmb3I9XCJleGFtcGxlLWNoZWNrYm94LTNcIj5PcHRpb24gdGhyZWUgaXMgZGlzYWJsZWQ8L2xhYmVsPlxuPC9kaXY+XG5gYGBcblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwiZm9ybS1jb250cm9sLXJhZGlvXCI+XG4gICAgPGlucHV0IHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJleGFtcGxlLXJhZGlvXCIgaWQ9XCJleGFtcGxlLXJhZGlvLTFcIiB2YWx1ZT1cIlwiPlxuICAgIDxsYWJlbCBmb3I9XCJleGFtcGxlLXJhZGlvLTFcIj5PcHRpb24gb25lPC9sYWJlbD5cbjwvZGl2PlxuYGBgXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImZvcm0tY29udHJvbC1yYWRpb1wiPlxuICAgIDxpbnB1dCB0eXBlPVwicmFkaW9cIiBuYW1lPVwiZXhhbXBsZS1yYWRpb1wiIGlkPVwiZXhhbXBsZS1yYWRpby0yXCIgdmFsdWU9XCJcIiBjaGVja2VkPlxuICAgIDxsYWJlbCBmb3I9XCJleGFtcGxlLXJhZGlvLTJcIj5PcHRpb24gdHdvIGlzIGNoZWNrZWQ8L2xhYmVsPlxuPC9kaXY+XG5gYGBcblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwiZm9ybS1jb250cm9sLXJhZGlvXCI+XG4gICAgPGlucHV0IHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJleGFtcGxlLXJhZGlvXCIgaWQ9XCJleGFtcGxlLXJhZGlvLTNcIiB2YWx1ZT1cIlwiIGRpc2FibGVkPlxuICAgIDxsYWJlbCBmb3I9XCJleGFtcGxlLXJhZGlvLTNcIj5PcHRpb24gdGhyZWUgaXMgZGlzYWJsZWQ8L2xhYmVsPlxuPC9kaXY+XG5gYGBcblxuIyMgRm9ybSBjb250YWluZXJcblxuQSBmb3JtIGNhbiBiZSB2aXN1YWxseSBkZWxpbWl0ZWQgZm9yIGJldHRlciByZWFkYWJpbGl0eS5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwiZm9ybS1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuICAgICAgICA8bGFiZWwgZm9yPVwiY29udGFpbmVyLWV4YW1wbGUtaW5wdXRcIj5JbnB1dCB0ZXh0PC9sYWJlbD5cbiAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgaWQ9XCJjb250YWluZXItZXhhbXBsZS1pbnB1dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZvcm0tc3VibWl0XCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiYnRuIGJ0bi0tcHJpbWFyeVwiPlN1Ym1pdDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9kaXY+XG5gYGBcblxuIyMgVmFsaWRhdGlvbiBzdGF0ZXNcblxuVGhlcmUgYXJlIHR3byB2YWxpZGF0aW9uIHN0YXRlczogU3VjY2VzcyBhbmQgZXJyb3IuIFRvIHVzZSwgYWRkIGB2YWxpZGAgb3IgYG1hZ2UtZXJyb3JgIHRvIGFueSBgaW5wdXQuZm9ybS1jb250cm9sYCBlbGVtZW50LiBBIHZhbGlkYXRpb24gbWVzc2FnZSBlcnJvciB3aXRoIHRoZSBjbGFzcyBgbWFnZS1lcnJvcmAgY2FuIGJlIGFkZGVkIHRvIGdpdmUgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZXJyb3IuXG5cbkl0IHVzZSB0aGUgY2xhc3NlcyB1c2VkIGJ5IE1hZ2VudG8gMiBpbiB0aGUgZGVmYXVsdCBzY3JpcHRzLCBzbyBNYWdlbnRvIDIgd2lsbCBhZGQgdGhlIGNvcnJlc3BvbmRpbmcgY2xhc3MgYnkgaXRzZWxmIHdoZW4gZm9ybSB2YWxpZGF0aW9uIHdpbGwgcGVyZm9ybS5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuICAgIDxsYWJlbCBmb3I9XCJleGFtcGxlLWlucHV0LXN1Y2Nlc3NcIj5WYWxpZGF0aW9uIHN1Y2Nlc3M8L2xhYmVsPlxuICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwiZXhhbXBsZS1pbnB1dC1zdWNjZXNzXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgdmFsaWRcIj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICA8bGFiZWwgZm9yPVwiZXhhbXBsZS1pbnB1dC1lcnJvclwiPlZhbGlkYXRpb24gZXJyb3I8L2xhYmVsPlxuICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwiZXhhbXBsZS1pbnB1dC1lcnJvclwiIGNsYXNzPVwiZm9ybS1jb250cm9sIG1hZ2UtZXJyb3JcIj5cbiAgICA8ZGl2IGNsYXNzPVwibWFnZS1lcnJvclwiPlZhbGlkYXRpb24gZXJyb3IgbWVzc2FnZTwvZGl2PlxuPC9kaXY+XG5gYGBcbiovXG5cblxuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJHRleHQtY29sb3I7XG4kaW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAjZDJkMmQyO1xuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgJGNvbG9yLXNlY29uZGFyeTtcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgIHJnYmEoJHRleHQtY29sb3IsIC4zKTtcbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDQwcHg7XG5cbiRpbnB1dC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgIDhweDtcbiRpbnB1dC1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgIDE2cHg7XG5cbiRpbnB1dC1jaGVja2JveC1ib3JkZXItY29sb3I6ICAgICNlM2UyZTI7XG5cbiRmb3JtLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgIDhweDtcblxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGNvbG9yLWdyYXktZGFyaztcblxuJGlucHV0LWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAgLjY7XG4kY3Vyc29yLWRpc2FibGVkOiAgICAgICAgICAgICAgICBub3QtYWxsb3dlZDtcblxuXG4vLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkYm9yZGVyLWNvbG9yOiAkY29sb3ItcHJpbWFyeSkge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLWNvbG9yLCAxMCUpO1xuICAgIH1cbn1cblxuXG4vLyBOb3JtYWxpemVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgLy8gQ2hyb21lIGFuZCBGaXJlZm94IHNldCBhIGBtaW4td2lkdGggbWluLWNvbnRlbnRgIG9uIGZpZWxkc2V0cywgc28gd2VcbiAgICAvLyByZXNldCB0aGF0IHRvIGVuc3VyZSBpdCBiZWhhdmVzIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4gICAgbWluLXdpZHRoOiAwO1xufVxuXG5sZWdlbmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCAwICRpbnB1dC1wYWRkaW5nLXZlcnRpY2FsO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKyAuMXJlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcbiAgICBib3JkZXI6IDA7XG59XG5cbmxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLy8gT3ZlcnJpZGUgY29udGVudC1ib3ggaW4gTm9ybWFsaXplICgqIGlzbid0IHNwZWNpZmljIGVub3VnaClcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8vIFBvc2l0aW9uIHJhZGlvcyBhbmQgY2hlY2tib3hlcyBiZXR0ZXJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luOiA0cHggMCAwO1xuICAgIG1hcmdpbi10b3A6IDFweCBcXDk7IC8vIElFOC05XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLy8gU2V0IHRoZSBoZWlnaHQgb2YgZmlsZSBjb250cm9scyB0byBtYXRjaCB0ZXh0IGlucHV0c1xuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBNYWtlIHJhbmdlIGlucHV0cyBiZWhhdmUgbGlrZSB0ZXh0dWFsIGZvcm0gY29udHJvbHNcbmlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIFNldCBjdXJzb3IgZm9yIHNlbGVjdCB0byBoaWdobGlnaHQgdGhlIGFjdGlvblxuc2VsZWN0IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4vLyBNYWtlIG11bHRpcGxlIHNlbGVjdCBlbGVtZW50cyBoZWlnaHQgbm90IGZpeGVkXG5zZWxlY3RbbXVsdGlwbGVdLFxuc2VsZWN0W3NpemVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEFkanVzdCBvdXRwdXQgZWxlbWVudFxub3V0cHV0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogN3B4O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xufVxuXG5cbi8vIEZvcm0gY29udGFpbmVyXG4vL1xuLy8gVG8gZ2l2ZSBhIHByb3ZpZGUgYSBmcmFtZSBmb3IgYmV0dGVyIGZvcm0gcmVhZGFiaWxpdHkuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZm9ybS1jb250YWluZXIge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgICAgICBtYXJnaW46IDAgMCAzMnB4O1xuICAgICAgICBwYWRkaW5nOiAzMnB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZ3JheS1saWdodDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIH1cbn1cblxuXG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZm9ybS1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbiAqIDI7XG4gICAgfVxufVxuXG4uZm9ybS1ncm91cF9fbmVzdGVkIHtcbiAgICBtYXJnaW46IDhweCAwIDA7XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIHNyLW9ubHkoKTtcbiAgICB9XG59XG5cblxuLy8gTGFiZWxcbi8vXG4vLyBEZWZhdWx0IGxhYmVsIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxubGFiZWwsXG4ubGFiZWwge1xuICAgIG1hcmdpbjogMCAwICRpbnB1dC1wYWRkaW5nLXZlcnRpY2FsO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZSArIC4xcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgIGNvbG9yOiAkY29sb3ItZ3JheS1kYXJrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIGVtIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgfVxufVxuXG5cbi8vIENvbW1vbiBmb3JtIGNvbnRyb2xzXG4vL1xuLy8gU2hhcmVkIHNpemUgYW5kIHR5cGUgcmVzZXRzIGZvciBmb3JtIGNvbnRyb2xzLiBBcHBseSBgLmZvcm0tY29udHJvbGAgdG9cbi8vIGFueSBvZiB0aGUgZm9sbG93aW5nIGZvcm0gY29udHJvbHM6XG4vL1xuLy8gdGV4dGFyZWFcbi8vIGlucHV0W3R5cGU9XCJ0ZXh0XCJdXG4vLyBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZVwiXVxuLy8gaW5wdXRbdHlwZT1cIm1vbnRoXCJdXG4vLyBpbnB1dFt0eXBlPVwidGltZVwiXVxuLy8gaW5wdXRbdHlwZT1cIndlZWtcIl1cbi8vIGlucHV0W3R5cGU9XCJudW1iZXJcIl1cbi8vIGlucHV0W3R5cGU9XCJlbWFpbFwiXVxuLy8gaW5wdXRbdHlwZT1cInVybFwiXVxuLy8gaW5wdXRbdHlwZT1cInNlYXJjaFwiXVxuLy8gaW5wdXRbdHlwZT1cInRlbFwiXVxuLy8gaW5wdXRbdHlwZT1cImNvbG9yXCJdXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZm9ybS1jb250cm9sIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7IC8vIE1ha2UgaW5wdXRzIGF0IGxlYXN0IHRoZSBoZWlnaHQgb2YgdGhlaXIgYnV0dG9uIGNvdW50ZXJwYXJ0IChiYXNlIGxpbmUtaGVpZ2h0ICsgcGFkZGluZyArIGJvcmRlcilcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy12ZXJ0aWNhbCAkaW5wdXQtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtOyAvLyBUbyBhdm9pZCB6b29tIG9uIGZvY3VzIG9uIGlPU1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZSBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtaGVpZ2h0O1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXM7XG5cbiAgICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICB9XG5cbiAgICAvLyBQbGFjZWhvbGRlclxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgICAgICBjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyO1xuICAgICAgICBvcGFjaXR5OiAxOyAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHlcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAgIC8vXG4gICAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3RcbiAgICAvLyBiZSBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvblxuICAgIC8vIGRpZmZpY3VsdHksIHdlIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlIHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWRcbiAgICAvLyBhbnl3YXkuXG4gICAgJltkaXNhYmxlZF0sXG4gICAgJltyZWFkb25seV0sXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICAgICBvcGFjaXR5OiAkaW5wdXQtZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG5cbiAgICAmW2Rpc2FibGVkXSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAmLnZhbGlkIHtcbiAgICAgICAgJlt0eXBlPVwidGV4dFwiXSxcbiAgICAgICAgJlt0eXBlPVwiZW1haWxcIl0sXG4gICAgICAgICZbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1wYWRkaW5nLWhvcml6b250YWwgKyAkaW5wdXQtaGVpZ2h0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1NyA0MCclM0UlM0NwYXRoIGZpbGw9JyUyMzYxRDJCOScgZD0nTTEzLjMgMEw1NyAwIDU3IDQwIDAgNDAgMTMuMyAwWk0zOS43IDEzLjNDMzkuNCAxMy4xIDM5LjEgMTMgMzguNyAxMyAzOC4zIDEzIDM4IDEzLjIgMzcuOCAxMy41TDI5LjIgMjMuNyAyNC43IDE4LjNDMjQuNSAxOCAyNC4xIDE3LjggMjMuOCAxNy44IDIzLjQgMTcuOCAyMy4xIDE3LjkgMjIuOCAxOC4xIDIyLjUgMTguMyAyMi40IDE4LjcgMjIuMyAxOSAyMi4zIDE5LjQgMjIuNCAxOS43IDIyLjcgMjBMMjguMSAyNi42QzI4LjQgMjYuOSAyOC44IDI3LjEgMjkuMiAyNy4xIDI5LjIgMjcuMSAyOS4yIDI3LjEgMjkuMiAyNy4xIDI5LjIgMjcuMSAyOS4yIDI3LjEgMjkuMyAyNy4xIDI5LjMgMjcuMSAyOS4zIDI3LjEgMjkuNCAyNy4xIDI5LjUgMjcgMjkuNSAyNyAyOS42IDI3IDI5LjYgMjcgMjkuNiAyNyAyOS43IDI3IDI5LjkgMjYuOSAzMC4xIDI2LjggMzAuMyAyNi42TDM5LjggMTUuMkM0MC4zIDE0LjcgNDAuMyAxMy44IDM5LjcgMTMuMycvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5tYWdlLWVycm9yIHtcbiAgICAgICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJGNvbG9yLXF1aW5hcnkpO1xuXG4gICAgICAgICZbdHlwZT1cInRleHRcIl0sXG4gICAgICAgICZbdHlwZT1cImVtYWlsXCJdLFxuICAgICAgICAmW3R5cGU9XCJwYXNzd29yZFwiXSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtcGFkZGluZy1ob3Jpem9udGFsICsgJGlucHV0LWhlaWdodDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNTcgNDAnJTNFJTNDcGF0aCBmaWxsPSclMjNFRTM4NUMnIGQ9J00xMy4zIDBMNTcgMCA1NyA0MCAwIDQwIDEzLjMgMFpNMjkuNSAyMS41QzI5LjUgMjIgMjkuMSAyMi40IDI4LjcgMjIuNCAyOC4yIDIyLjQgMjcuOCAyMiAyNy44IDIxLjVMMjcuOCAxOC45QzI3LjggMTguNCAyOC4yIDE4IDI4LjcgMTggMjkuMSAxOCAyOS41IDE4LjQgMjkuNSAxOC45TDI5LjUgMjEuNVpNMjguNyAyNS40QzI4LjIgMjUuNCAyNy44IDI1IDI3LjggMjQuNSAyNy44IDI0IDI4LjIgMjMuNiAyOC43IDIzLjYgMjkuMSAyMy42IDI5LjUgMjQgMjkuNSAyNC41IDI5LjUgMjUgMjkuMSAyNS40IDI4LjcgMjUuNEwyOC43IDI1LjRaTTM3LjYgMjcuNUwyOSAxMS4yQzI4LjkgMTAuOSAyOC41IDEwLjkgMjguMyAxMS4yTDE5LjcgMjcuNUMxOS42IDI3LjkgMTkuOCAyOC4yIDIwLjEgMjguMkwzNy4yIDI4LjJDMzcuNSAyOC4yIDM3LjcgMjcuOSAzNy42IDI3LjVMMzcuNiAyNy41WicvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vIE1vcmUgYWRqdXN0ZWQgZm9udC1zaXplIGZvciBzdXBwb3J0ZWQgYnJvd3NlcnNcbiAgICBAbWVkaWEgKHBvaW50ZXI6IGZpbmUpIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKyAuMXJlbTtcbiAgICB9XG59XG5cbi8vIFJlc2V0IGhlaWdodCBmb3IgYHRleHRhcmVhYHNcbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1oZWlnaHQgLSAyMHB4O1xufVxuXG5cbi8vIFNlYXJjaCBpbnB1dHMgaW4gaU9TXG4vL1xuLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0XG4vLyBvdXIgYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Rcbi8vIHNpbXBseSBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5cbi8vIFNwZWNpYWwgc3R5bGVzIGZvciBpT1MgdGVtcG9yYWwgaW5wdXRzXG4vL1xuLy8gSW4gTW9iaWxlIFNhZmFyaSwgc2V0dGluZyBgZGlzcGxheSBibG9ja2Agb24gdGVtcG9yYWwgaW5wdXRzIGNhdXNlcyB0aGVcbi8vIHRleHQgd2l0aGluIHRoZSBpbnB1dCB0byBiZWNvbWUgdmVydGljYWxseSBtaXNhbGlnbmVkLiBBcyBhIHdvcmthcm91bmQsXG4vLyB3ZSBzZXQgYSBwaXhlbCBsaW5lLWhlaWdodCB0aGF0IG1hdGNoZXMgdGhlIGdpdmVuIGhlaWdodCBvZiB0aGUgaW5wdXQsXG4vLyBidXQgb25seSBmb3IgU2FmYXJpLiBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTg0OFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xuICAgIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICAgIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgICBpbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAgICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICB9XG59XG5cblxuLy8gU2VsZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZm9ybS1jb250cm9sLXNlbGVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1wYWRkaW5nLWhvcml6b250YWwgKyAyNHB4O1xuICAgICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICAmOjotbXMtZXhwYW5kIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTJweDtcbiAgICAgICAgcmlnaHQ6IDE4cHg7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkdGV4dC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuMjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB0b3A6IDExcHg7XG4gICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAzcHggM3B4IDA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZm9ybS1jb250cm9sLWNoZWNrYm94IHtcbiAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICAgIG1hcmdpbjogMCAwICRmb3JtLWdyb3VwLW1hcmdpbjtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICAmICsgbGFiZWwge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC42O1xuICAgICAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpub3QoOmNoZWNrZWQpICsgbGFiZWwge1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWdyYXktbGlnaHQsIDUlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMnB4O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGlucHV0LWNoZWNrYm94LWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjFzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjFzIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgbGVmdDogM3B4O1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMnB4IDJweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvcm0tY29udHJvbC1yYWRpbyB7XG4gICAgQGV4dGVuZCAuZm9ybS1jb250cm9sLWNoZWNrYm94O1xuXG4gICAgaW5wdXQge1xuICAgICAgICAmOmNoZWNrZWQge1xuICAgICAgICAgICAgJiArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRpbnB1dC1jaGVja2JveC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyBTcGVjaWZpYyBsYWJlbCBmb3IgY2hhbmdlIGJpbGxpbmcgYWRkcmVzc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC5mb3JtLWNvbnRyb2wtY2hlY2tib3gtaGlkZGVuIGlucHV0OmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXIsIC5mb3JtLWNvbnRyb2wtcmFkaW8taGlkZGVuIGlucHV0OmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXJ7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IG1hcmdpbjogMDtcbiAgICB9XG4gICAgLmZvcm0tY29udHJvbC1jaGVja2JveC1oaWRkZW4gbGFiZWw6OmJlZm9yZSwgLmZvcm0tY29udHJvbC1yYWRpby1oaWRkZW4gbGFiZWw6OmJlZm9yZXtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgbWFyZ2luOiAwO1xuICAgIH1cbiAgICAuZm9ybS1jb250cm9sLWNoZWNrYm94LWhpZGRlbiBpbnB1dFt0eXBlPVwicmFkaW9cIl0sIC5mb3JtLWNvbnRyb2wtY2hlY2tib3gtaGlkZGVuIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXXtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmZvcm0tY29udHJvbC1jaGVja2JveC1oaWRkZW4gbGFiZWx7XG4gICAgICAgIG1hcmdpbjogMDsgY29sb3I6IHdoaXRlOyBmb250LXdlaWdodDogNjAwO1xuICAgIH1cbiAgICAuaGlkZGVuLWNoZWNrYm94LWJ1dHRvbntcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuXG4vLyBGb3JtIEd1ZXN0IGlkZW50aWZpY2F0aW9uIG9yZGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZm9ybS1pbmZvX2d1ZXN0e1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjhweDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuXG4gICAgLmFkbWluX19sZWdlbmQge1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxufVxuXG4uZm9ybS1ndWVzdF9vcmRlcntcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAuYWRtaW5fX2xlZ2VuZHtcbiAgICAgICAgcGFkZGluZzogMCAyNHB4O1xuICAgICAgICBmb250LXNpemU6IDIuOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIH1cblxuICAgIGxhYmVse1xuICAgICAgICBwYWRkaW5nOiAwIDI0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC44cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA5JTtcbiAgICB9XG5cbiAgICAjcXVpY2stc2VhcmNoLXR5cGUtaWR7XG4gICAgICAgIHdpZHRoOiA4MCU7IG1hcmdpbi1sZWZ0OiBhdXRvOyBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgdGV4dC1hbGlnbi1sYXN0OmNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT10ZXh0XSwgaW5wdXRbdHlwZT1lbWFpbF17XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDgwJTsgbWFyZ2luLWxlZnQ6IGF1dG87IG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAuY29udHJvbHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5idG4tZm9ybS1ndWVzdHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuLy8gRm9ybSBxdWFudGl0eVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmZvcm0tcXVhbnRpdHkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gICAgICAgICZbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbiAgICAgICAgJlt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvcm0tcXVhbnRpdHktcGx1cyxcbi5mb3JtLXF1YW50aXR5LW1pbnVzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICRpbnB1dC1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgdGV4dC1oaWRlKCk7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgei1pbmRleDogMTtcblxuICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLXNlY29uZGFyeSwgMjAlKTtcbiAgICB9XG59XG5cbi5mb3JtLXF1YW50aXR5LXBsdXMge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgIGhlaWdodDogNTAlO1xuICAgIH1cbn1cblxuLmZvcm0tcXVhbnRpdHktbWludXMge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICB9XG59XG5cblxuLy8gU3VibWl0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZm9ybS1zdWJtaXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogKCRmb3JtLWdyb3VwLW1hcmdpbiAqIDIpO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgLmJ0biB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBtYXJnaW46ICgkZm9ybS1ncm91cC1tYXJnaW4gKiAyKSAwIDA7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAmOm5vdCguYnRuLS1saW5rKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuLS1saW5rIHtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogKCRmb3JtLWdyb3VwLW1hcmdpbiAqIDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ0bi0tcHJpbWFyeVxuICAgICAgICAuYnRuLS1zZWNvbmRhcnkge1xuICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy8gSGVscCBhbmQgZXJyb3IgdGV4dFxuLy9cbi8vIEFwcGx5IHRvIGFueSBlbGVtZW50IHlvdSB3aXNoIHRvIGNyZWF0ZSBsaWdodCB0ZXh0IGZvciBwbGFjZW1lbnQgaW1tZWRpYXRlbHlcbi8vIGJlbG93IGEgZm9ybSBjb250cm9sLiBVc2UgZm9yIGdlbmVyYWwgaGVscCwgZm9ybWF0dGluZywgb3IgaW5zdHJ1Y3Rpb25hbCB0ZXh0LlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmZvcm0taGVscCxcbmRpdi5tYWdlLWVycm9yIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gYWNjb3VudCBmb3IgYW55IGVsZW1lbnQgdXNpbmcgaGVscC1ibG9ja1xuICAgIG1hcmdpbjogJGlucHV0LXBhZGRpbmctdmVydGljYWwgMCAwICRpbnB1dC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgY29sb3I6IGxpZ2h0ZW4oJHRleHQtY29sb3IsIDI1JSk7IC8vIGxpZ2h0ZW4gdGhlIHRleHQgc29tZSBmb3IgY29udHJhc3Rcbn1cblxuZGl2Lm1hZ2UtZXJyb3Ige1xuICAgIGNvbG9yOiAkY29sb3ItcXVpbmFyeTtcbn1cblxuLy8uZm9ybS1oZWxwIC5mb3JtLWhlbHAtYWNjb3VudFxuLy8gVG8gYWNjZW50dWF0ZSB0aGUgbWVzc2FnZSBhY2NvdW50IGNyZWF0aW9uIHRvIHRoZSBjdXN0b21lclxuXG4uZm9ybS1oZWxwIC5mb3JtLWhlbHAtYWNjb3VudHtcbiAgICBmb250LXdlaWdodDogNzAwOyBmb250LXN0eWxlOiBpdGFsaWM7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICsgLjVyZW07XG4gICAgY29sb3I6ICM2MWQyYjk7XG59XG5cblxuLy8gRm9ybSBzdHJlbmd0aFxuLy9cbi8vIEluZGljYXRlIHRoZSBzdHJlbmd0aCBvZiBhIHBhc3N3b3JkIGZvciBleGFtcGxlLCB3aXRoIGEgY29sb3IgaW5kaWNhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmZvcm0tc3RyZW5ndGgge1xuICAgIC5wYXNzd29yZC1zdHJlbmd0aC1tZXRlci0xICYge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWVycm9yO1xuICAgIH1cblxuICAgIC5wYXNzd29yZC1zdHJlbmd0aC1tZXRlci0yICYge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXdhcm5pbmc7XG4gICAgfVxuXG4gICAgLnBhc3N3b3JkLXN0cmVuZ3RoLW1ldGVyLTMgJixcbiAgICAucGFzc3dvcmQtc3RyZW5ndGgtbWV0ZXItNCAmIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgIH1cbn1cblxuLy8gUXVvdGUgRm9ybVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5maWVsZC5kdXJhdGlvbiB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOnJvdztcbiAgICAmIC5jb250cm9sIHtcbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgbWF4LXdpZHRoOjYwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1heC13aWR0aDoxMTZweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4tc20tbWluKSB7XG4gICAgICAgIGZsZXgtd3JhcDp3cmFwO1xuICAgICAgICAmIC5sYWJlbCB7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy9cbi8vIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRG9jdW1lbnRhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFRvb2x0aXBcbm5hbWU6IHRvb2x0aXBcbmNhdGVnb3J5OiBDb21wb25lbnRzXG4tLS1cblRoZSB0b29sdGlwIHByb3ZpZGUgZXh0cmEgaW5mb3JtYXRpb25zIHdoZW4gaXQncyBob3ZlcmVkIG9yIGNsaWNrZWQuIEl0IGNhbiBiZSB1c2UgaW4gYSBgPGxhYmVsPmAsIGZvciBleGFtcGxlLCB0byBnaXZlIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGZpZWxkLlxuXG5UaGUgaGlkZGVuIHRleHQgbXVzdCBiZSBwbGFjZWQgaW4gdGhlIGBhcmlhLWxhYmVsYCBhdHRyaWJ1dGUuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJ0b29sdGlwXCIgYXJpYS1sYWJlbD1cIlRoaXMgdGV4dCBwcm92aWRlIGV4dHJhIGluZm9ybWF0aW9uc1wiIHJvbGU9XCJ0b29sdGlwXCI+SGVscDwvYnV0dG9uPlxuYGBgXG4qL1xuXG5cbi8vIENsYXNzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4udG9vbHRpcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBtYXJnaW46IC01cHggMCAwIDVweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIHRleHQtaGlkZSgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDkgMTMnJTNFJTNDcGF0aCBmaWxsPSclMjNmZmZmZmYnIGQ9J00yLjk5IDYuOTdDMy4xOCA2Ljc4IDMuNDEgNi42OCAzLjY5IDYuNjggNC40MSA2LjY4IDQuOTkgNi41MiA1LjQyIDYuMTggNS44NiA1Ljg0IDYuMDcgNS4zMiA2LjA3IDQuNjEgNi4wNyA0LjA3IDUuODggMy42MiA1LjQ5IDMuMjYgNS4xIDIuOSA0LjYxIDIuNzIgNC4wMiAyLjcyIDMuNDIgMi43MiAyLjg5IDIuOTIgMi40NCAzLjMyIDIuMTcgMy41NiAxLjkgMy42OCAxLjYyIDMuNjggMS40MSAzLjY4IDEuMjMgMy42MiAxLjA2IDMuNDkgMC43OCAzLjI3IDAuNjQgMy4wMSAwLjY0IDIuNzIgMC42NCAyLjQ3IDAuNzQgMi4yNCAwLjk1IDIuMDMgMS4zNCAxLjYzIDEuOCAxLjMyIDIuMzMgMS4wOSAyLjg2IDAuODcgMy40MiAwLjc2IDQuMDIgMC43NiA0Ljc2IDAuNzYgNS40MyAwLjkzIDYuMDQgMS4yNyA2LjY1IDEuNiA3LjE0IDIuMDcgNy40OSAyLjY2IDcuODUgMy4yNSA4LjAzIDMuOSA4LjAzIDQuNjEgOC4wMyA1LjY2IDcuNzMgNi40OCA3LjE0IDcuMDkgNi41NCA3LjcgNS43NCA4LjA4IDQuNzUgOC4yMyA0LjcgOC4yNiA0LjY3IDguMjggNC42NyA4LjMyTDQuNjcgOC45MkM0LjY3IDkuMiA0LjU4IDkuNDQgNC4zOSA5LjYzIDQuMjEgOS44MiAzLjk3IDkuOTIgMy42OSA5LjkyIDMuNDEgOS45MiAzLjE4IDkuODIgMi45OSA5LjYzIDIuODEgOS40NCAyLjcxIDkuMiAyLjcxIDguOTJMMi43MSA3LjY4QzIuNzEgNy40IDIuODEgNy4xNiAyLjk5IDYuOTdaTTIuODggMTIuNThDMi43MiAxMi40MiAyLjYzIDEyLjE3IDIuNjMgMTEuODZMMi42MyAxMS41OEMyLjYzIDExLjI2IDIuNzIgMTEuMDIgMi44OCAxMC44NSAzLjA1IDEwLjY5IDMuMjkgMTAuNiAzLjYxIDEwLjZMMy44MiAxMC42QzQuMTQgMTAuNiA0LjM4IDEwLjY5IDQuNTUgMTAuODUgNC43MiAxMS4wMiA0LjggMTEuMjYgNC44IDExLjU4TDQuOCAxMS44NkM0LjggMTIuMTcgNC43MiAxMi40MiA0LjU1IDEyLjU4IDQuMzggMTIuNzUgNC4xNCAxMi44NCAzLjgyIDEyLjg0TDMuNjEgMTIuODRDMy4yOSAxMi44NCAzLjA1IDEyLjc1IDIuODggMTIuNThaJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA0MiU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNTUlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogYXR0cihhcmlhLWxhYmVsKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IGNhbGMoMTAwJSArIDhweCk7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgd2lkdGg6MjcwcHg7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLDApO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy9cbi8vIENhcm91c2VsIC0gT3dsIENhcm91c2VsIChodHRwczovL293bGNhcm91c2VsMi5naXRodWIuaW8vT3dsQ2Fyb3VzZWwyKVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm93bC1jYXJvdXNlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgJi5vd2wtbG9hZGVkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi5vd2wtbG9hZGluZyB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYub3dsLWhpZGRlbiB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgJi5vd2wtZ3JhYiB7XG4gICAgICAgIGN1cnNvcjogZ3JhYjtcbiAgICB9XG5cbiAgICAubm8tanMgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuXG4vLyBTdGFnZSBvdXRlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm93bC1zdGFnZS1vdXRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLy8gZml4IGZvciBmbGFzaGluZyBiYWNrZ3JvdW5kXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcwcHgpe1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbn1cblxuXG4vLyBTdGFnZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm93bC1zdGFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi1ZO1xuICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5cbi8vIFdyYXBwZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5vd2wtd3JhcHBlcixcbi5vd2wtaXRlbSB7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbn1cblxuXG4vLyBJdGVtXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ub3dsLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cbiAgICAub3dsLXJlZnJlc2ggJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAub3dsLWRyYWcgJiB7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIH1cbn1cblxuXG4vLyBOYXYgJiBkb3RzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ub3dsLW5hdixcbi5vd2wtZG90cyB7XG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4ub3dsLXByZXYsXG4ub3dsLW5leHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogNDRweDtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgQGluY2x1ZGUgdGV4dC1oaWRlKCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktbGlnaHQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzFweCl7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAzcHgpO1xuICAgICAgICB3aWR0aDogMTFweDtcbiAgICAgICAgaGVpZ2h0OiAxMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLWdyYXktZGFya2VyO1xuICAgICAgICBib3JkZXItd2lkdGg6IDAgMnB4IDJweCAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpIHJvdGF0ZSgxMzVkZWcpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgICBvcGFjaXR5OiAuMjU7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgIH1cbn1cblxuLm93bC1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoNTAlKTtcbn1cblxuLm93bC1uZXh0IHtcbiAgICByaWdodDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoNTAlKTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgKyAzcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAgIH1cbn1cblxuLm93bC1wcmV2LFxuLm93bC1uZXh0LFxuLm93bC1kb3Qge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuXG4vKiBBcnJvdyBuYXZpZ2F0aW9uIG9uIG1vYmlsZSAqL1xuLmdhdWNoZSxcbi5kcm9pdGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDkwMDAgIWltcG9ydGFudDtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogNDRweDtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgQGluY2x1ZGUgdGV4dC1oaWRlKCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NzBweCl7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3MHB4KXtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB9XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuXG5cbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gM3B4KTtcbiAgICAgICAgd2lkdGg6IDExcHg7XG4gICAgICAgIGhlaWdodDogMTFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci1ncmF5LWRhcmtlcjtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSByb3RhdGUoMTM1ZGVnKTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgb3BhY2l0eTogLjI1O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICB9XG59XG5cbi5nYXVjaGUge1xuICAgIGxlZnQ6IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cyg1MCUpO1xufVxuXG4uZHJvaXRlIHtcbiAgICByaWdodDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoNTAlKTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgKyAzcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAgIH1cbn1cblxuYS5saW5rLW5hdntcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcwcHgpe1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG5cbi5nYXVjaGUsXG4uZHJvaXRlLFxuLm93bC1kb3Qge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn0iLCIvL1xuLy8gTW9kYWxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgMzJweDtcblxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICNmZmY7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAkY29sb3ItZ3JheS1kYXJrZXI7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgLjc1O1xuXG4kbW9kYWwteHM6ICAgICAgICAgICAgICAgICAgNDYwcHg7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgNzIwcHg7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgODgwcHg7XG5cblxuLy8gQm9keSBjbGFzc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm1vZGFsLW9wZW4sXG4uX2hhcy1tb2RhbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5tb2RhbCxcbiAgICAubW9kYWwtcG9wdXAsXG4gICAgLm1vZGFsLXNsaWRlIHtcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIH1cbn1cblxuXG4vLyBNb2RhbCBjb250YWluZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5tb2RhbCxcbi5tb2RhbC1wb3B1cCxcbi5tb2RhbC1zbGlkZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgb3V0bGluZTogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LWZpeGVkICsgMjA7XG5cbiAgICAubW9kYWwtZGlhbG9nLFxuICAgIC5tb2RhbC1pbm5lci13cmFwIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtMjUlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlLW91dDtcbiAgICB9XG5cbiAgICAmLnNob3csXG4gICAgJi5fc2hvdyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIC5tb2RhbC1kaWFsb2csXG4gICAgICAgIC5tb2RhbC1pbm5lci13cmFwIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsMCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tb2RhbC1wb3B1cCxcbi5tb2RhbC1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgLm1vZGFsLWlubmVyLXdyYXAge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0LCB2aXNpYmlsaXR5IC4zcyBlYXNlO1xuICAgIH1cblxuICAgICYuX3Nob3cge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cbn1cblxuXG4vLyBNb2RhbCBpbm5lclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm1vZGFsLWRpYWxvZyxcbi5tb2RhbC1pbm5lci13cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiA4MHB4IDEwcHggMTBweDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuICAgICAgICB3aWR0aDogJG1vZGFsLXhzO1xuICAgICAgICBtYXJnaW46IDgwcHggYXV0bztcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgICAgd2lkdGg6ICRtb2RhbC1zbTtcbiAgICAgICAgbWFyZ2luOiAxNjBweCBhdXRvO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICB3aWR0aDogJG1vZGFsLW1kO1xuICAgIH1cbn1cblxuXG4vLyBNb2RhbCBzaXplc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm1vZGFsLS14cyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAgIC5tb2RhbC1kaWFsb2csXG4gICAgICAgIC5tb2RhbC1pbm5lci13cmFwIHtcbiAgICAgICAgICAgIHdpZHRoOiAkbW9kYWwteHM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgICAgLm1vZGFsLWRpYWxvZyxcbiAgICAgICAgLm1vZGFsLWlubmVyLXdyYXAge1xuICAgICAgICAgICAgd2lkdGg6ICRtb2RhbC14cztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1vZGFsLXBvcHVwIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgICAgLm1vZGFsLWRpYWxvZyxcbiAgICAgICAgLm1vZGFsLWlubmVyLXdyYXAge1xuICAgICAgICAgICAgd2lkdGg6ICRtb2RhbC14cyArIDYwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgICAgLm1vZGFsLWRpYWxvZyxcbiAgICAgICAgLm1vZGFsLWlubmVyLXdyYXAge1xuICAgICAgICAgICAgd2lkdGg6ICRtb2RhbC14cyArIDYwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tb2RhbC1wb3B1cC5tb2RhbC1zbGlkZXtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4tc20tbWluKXtcbiAgICAgICAgbGVmdDogaW5oZXJpdDtcbiAgICB9XG59XG5cbi5tb2RhbC1wb3B1cC5tb2RhbC1zbGlkZSAubW9kYWwtaW5uZXItd3JhcHtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbil7XG4gICAgICAgIGhlaWdodDogNTAlOyB3aWR0aDogODAlOyBtYXJnaW46IGF1dG87IG1hcmdpbi10b3A6IDEwJTtcbiAgICB9XG5cbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbil7XG4gICAgICAgIGhlaWdodDogODAlOyB3aWR0aDogODUlOyBtYXJnaW46IGF1dG87IG1hcmdpbi10b3A6IDEwJTtcbiAgICB9XG59XG5cblxuLy8gTW9kYWwgY29udGVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm1vZGFsLWNvbnRlbnQsXG4ubW9kYWwtaW5uZXItd3JhcCB7XG4gICAgJjpub3QoW2RhdGEtcm9sZT1cImNvbnRlbnRcIl0pIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAvIDI7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gICAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCAwIHJnYmEoMCwwLDAsLjIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIG91dGxpbmU6IDA7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyArIDVweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5tb2RhbC1oZWFkZXIge1xuICAgIG1hcmdpbjogMCAwIDMycHg7XG59XG5cblxuLy8gTW9kYWwgdGl0bGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5tb2RhbC10aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIDAgMTZweDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2UgKyAuMnJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjhweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cblxuLy8gTW9kYWwgYm9keVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm1vZGFsLWJvZHksXG4ubW9kYWwtY29udGVudFtkYXRhLXJvbGU9XCJjb250ZW50XCJdIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKyAuMXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjRweDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG59XG5cblxuLy8gTW9kYWwgZm9vdGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubW9kYWwtZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDEycHggMCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGEsXG4gICAgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiA4cHggMCAwO1xuICAgIH1cblxuICAgIC5hY3Rpb24tcHJpbWFyeSxcbiAgICAuYWN0aW9uLXNlY29uZGFyeSB7XG4gICAgICAgIEBleHRlbmQgLmJ0bjtcbiAgICB9XG5cbiAgICAuYWN0aW9uLXByaW1hcnkge1xuICAgICAgICBAZXh0ZW5kIC5idG4tLXByaW1hcnk7XG4gICAgfVxuXG4gICAgLmFjdGlvbi1zZWNvbmRhcnkge1xuICAgICAgICBAZXh0ZW5kIC5idG4tLWxpbms7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgICBhLFxuICAgIC5hY3Rpb24tc2Vjb25kYXJ5IHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKyAuMXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItZ3JheTtcblxuICAgICAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtOTk5OXB4O1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG5cbi8vIE1vZGFsIGNsb3NlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubW9kYWwtY2xvc2UsXG4uYWN0aW9uLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA4cHg7XG4gICAgcmlnaHQ6IDhweDtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheS1kYXJrZXI7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSByb3RhdGUoNDVkZWcpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgc3Itb25seSgpO1xuICAgIH1cbn1cblxuXG4vLyBNb2RhbCBiYWNrZHJvcFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm1vZGFsLWJhY2tkcm9wLFxuLm1vZGFscy1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBsaW5lYXI7XG4gICAgei1pbmRleDogJHppbmRleC1maXhlZCArIDEwO1xuXG4gICAgJi5zaG93IHtcbiAgICAgICAgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7XG4gICAgfVxufVxuXG4ubW9kYWxzLW92ZXJsYXkge1xuICAgIG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5O1xufVxuIiwiLy9cbi8vIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRG9jdW1lbnRhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBhZ2luYXRpb25cbm5hbWU6IHBhZ2luYXRpb25cbmNhdGVnb3J5OiBOYXZpZ2F0aW9uXG4tLS1cblBhZ25pYXRpb24gdXNlIG1pY3JvZGF0YSB0byBoZWxwIHNlYXJjaCBlbmdpbmUgdG8gcmVjb2duaXplIGl0IGFzIGEgbmF2aWdhdGlvbiBlbGVtZW50LlxuXG5gYGBodG1sX2V4YW1wbGVcbjxuYXYgY2xhc3M9XCJwYWdpbmF0aW9uXCIgcm9sZT1cIm5hdmlnYXRpb25cIj5cbiAgICA8dWwgY2xhc3M9XCJwYWdpbmF0aW9uX19saXN0XCIgaXRlbXNjb3BlPVwiXCIgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9TaXRlTmF2aWdhdGlvbkVsZW1lbnRcIj5cbiAgICAgICAgPGxpIGNsYXNzPVwicGFnaW5hdGlvbl9faXRlbSBwYWdpbmF0aW9uX19pdGVtLS1wcmV2aW91c1wiPlxuICAgICAgICAgICAgPHNwYW4gaXRlbXByb3A9XCJuYW1lXCI+UGFnZSBwcsOpY8OpZGVudGU8L3NwYW4+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW0gcGFnaW5hdGlvbl9faXRlbS0tYWN0aXZlXCI+XG4gICAgICAgICAgICA8c3BhbiBpdGVtcHJvcD1cIm5hbWVcIj48ZW0+UGFnZTwvZW0+IDE8L3NwYW4+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW1cIj5cbiAgICAgICAgICAgIDxhIGhyZWY9XCIjXCIgaXRlbXByb3A9XCJ1cmxcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBpdGVtcHJvcD1cIm5hbWVcIj48ZW0+UGFnZTwvZW0+IDI8L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW1cIj5cbiAgICAgICAgICAgIDxhIGhyZWY9XCIjXCIgaXRlbXByb3A9XCJ1cmxcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBpdGVtcHJvcD1cIm5hbWVcIj48ZW0+UGFnZTwvZW0+IDM8L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW1cIj5cbiAgICAgICAgICAgIDxzcGFuPuKApjwvc3Bhbj5cbiAgICAgICAgPC9saT5cbiAgICAgICAgPGxpIGNsYXNzPVwicGFnaW5hdGlvbl9faXRlbVwiPlxuICAgICAgICAgICAgPGEgaHJlZj1cIiNcIiBpdGVtcHJvcD1cInVybFwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGl0ZW1wcm9wPVwibmFtZVwiPjxlbT5QYWdlPC9lbT4gMTA8L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW0gcGFnaW5hdGlvbl9faXRlbS0tbmV4dFwiPlxuICAgICAgICAgICAgPGEgaHJlZj1cIiNcIiBpdGVtcHJvcD1cInVybFwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGl0ZW1wcm9wPVwibmFtZVwiPlBhZ2Ugc3VpdmFudGU8L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvbGk+XG4gICAgPC91bD5cbjwvbmF2PlxuYGBgXG4qL1xuXG5cbi8vIEJhc2Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wYWdpbmF0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMzBweCAwIDA7XG59XG5cblxuLy8gTGlzdFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnBhZ2luYXRpb25fX2xpc3Qge1xuICAgIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG5cbi8vIEl0ZW1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wYWdpbmF0aW9uX19pdGVtIHtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgbWluLXdpZHRoOiAzMHB4O1xuICAgIG1hcmdpbjogMCAycHg7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlICsgLjJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIGVtIHtcbiAgICAgICAgQGluY2x1ZGUgc3Itb25seSgpO1xuICAgIH1cbn1cblxuLnBhZ2luYXRpb25fX2l0ZW0tLWFjdGl2ZSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktZGFyaztcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xufVxuXG5cbi5wYWdpbmF0aW9uX19pdGVtLS1wcmV2aW91cyxcbi5wYWdpbmF0aW9uX19pdGVtLS1uZXh0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBhIHtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgdGV4dC1oaWRlKCk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheS1saWdodDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gM3B4KTtcbiAgICAgICAgICAgIHdpZHRoOiAxMXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3ItZ3JheS1saWdodDtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAycHggMnB4IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpIHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4xcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBhZ2luYXRpb25fX2l0ZW0tLW5leHQge1xuICAgIHNwYW4ge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSArIDNweCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy9cbi8vIEJyZWFkY3J1bWJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRG9jdW1lbnRhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLypkb2Ncbi0tLVxudGl0bGU6IEJyZWFkY3J1bWJcbm5hbWU6IGJyZWFkY3J1bWJcbmNhdGVnb3J5OiBOYXZpZ2F0aW9uXG4tLS1cbkJyZWFkY3J1bWIgdXNlIG1pY3JvZGF0YSwgdXNlZnVsIGZvciBzZWFyY2ggZW5naW5lIG9wdGltaXNhdGlvbi4gVGhlIHBvc2l0aW9uIHN0b3JlIGluIGEgYG1ldGFgIHRhZyBuZWVkIHRvIGJlIHVwZGF0ZWQuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPG9sIGNsYXNzPVwiYnJlYWRjcnVtYlwiIGl0ZW1zY29wZT1cIlwiIGl0ZW10eXBlPVwiaHR0cDovL3NjaGVtYS5vcmcvQnJlYWRjcnVtYkxpc3RcIj5cbiAgICA8bGkgY2xhc3M9XCJicmVhZGNydW1iX19pdGVtXCIgaXRlbXNjb3BlPVwiXCIgaXRlbXByb3A9XCJpdGVtTGlzdEVsZW1lbnRcIiBpdGVtdHlwZT1cImh0dHA6Ly9zY2hlbWEub3JnL0xpc3RJdGVtXCI+XG4gICAgICAgIDxhIGhyZWY9XCIjXCIgaXRlbXByb3A9XCJpdGVtXCI+PHNwYW4gaXRlbXByb3A9XCJuYW1lXCI+SG9tZTwvc3Bhbj48L2E+XG4gICAgICAgIDxtZXRhIGl0ZW1wcm9wPVwicG9zaXRpb25cIiBjb250ZW50PVwiMVwiPlxuICAgIDwvbGk+XG4gICAgPGxpIGNsYXNzPVwiYnJlYWRjcnVtYl9faXRlbVwiIGl0ZW1zY29wZT1cIlwiIGl0ZW1wcm9wPVwiaXRlbUxpc3RFbGVtZW50XCIgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9MaXN0SXRlbVwiPlxuICAgICAgICA8YSBocmVmPVwiI1wiIGl0ZW1wcm9wPVwiaXRlbVwiPjxzcGFuIGl0ZW1wcm9wPVwibmFtZVwiPkNhdGFsb2d1ZTwvc3Bhbj48L2E+XG4gICAgICAgIDxtZXRhIGl0ZW1wcm9wPVwicG9zaXRpb25cIiBjb250ZW50PVwiMlwiPlxuICAgIDwvbGk+XG4gICAgPGxpIGNsYXNzPVwiYnJlYWRjcnVtYl9faXRlbVwiIGl0ZW1zY29wZT1cIlwiIGl0ZW1wcm9wPVwiaXRlbUxpc3RFbGVtZW50XCIgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9MaXN0SXRlbVwiPlxuICAgICAgICA8YSBocmVmPVwiI1wiIGl0ZW1wcm9wPVwiaXRlbVwiPjxzcGFuIGl0ZW1wcm9wPVwibmFtZVwiPkFtb3J0aXNzZXVyczwvc3Bhbj48L2E+XG4gICAgICAgIDxtZXRhIGl0ZW1wcm9wPVwicG9zaXRpb25cIiBjb250ZW50PVwiM1wiPlxuICAgIDwvbGk+XG4gICAgPGxpIGNsYXNzPVwiYnJlYWRjcnVtYl9faXRlbVwiIGl0ZW1zY29wZT1cIlwiIGl0ZW1wcm9wPVwiaXRlbUxpc3RFbGVtZW50XCIgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9MaXN0SXRlbVwiPlxuICAgICAgICA8c3Ryb25nIGl0ZW1wcm9wPVwiaXRlbVwiPjxzcGFuIGl0ZW1wcm9wPVwibmFtZVwiPkFtb3J0aXNzZXVycyBhdmFudDwvc3Bhbj48L3N0cm9uZz5cbiAgICAgICAgPG1ldGEgaXRlbXByb3A9XCJwb3NpdGlvblwiIGNvbnRlbnQ9XCI0XCI+XG4gICAgPC9saT5cbjwvb2w+XG5gYGBcbiovXG5cblxuLy8gQmFzZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5icmVhZGNydW1icyB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyBcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7IFxuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyBcbiAgICBwYWRkaW5nLWxlZnQ6IDElO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBzdHJvbmcsIFxuICAgIGEge1xuICAgICAgICBmb250LXNpemU6MnJlbTtcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhe1xuICAgICAgICBjb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcblxuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLml0ZW17XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB9XG5cbiAgICAuaXRlbTpub3QoOmxhc3QtY2hpbGQpOmFmdGVye1xuICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcblxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbil7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8vXG4vLyBQYWdlIGJsb2Nrc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRG9jdW1lbnRhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLypkb2Ncbi0tLVxudGl0bGU6IEJsb2Nrc1xubmFtZTogYmxvY2tzXG5jYXRlZ29yeTogQ29tcG9uZW50c1xuLS0tXG5UaGlzIGFsbG93IHRvIG9yZ2FuaXplIENNUyBwYWdlIGNvbnRlbnQgaW4gYmxvY2tzIHdpdGggaW1hZ2UgYW5kIHRleHQuIE9uIGxhcmdlIHNjcmVlbnMgdGhlIGJsb2NrcyBhcmUgbGlzdGVkIHRvdyBieSB0d28uXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cInBhZ2UtYmxvY2tzXCI+XG4gICAgPGRpdiBjbGFzcz1cInBhZ2UtYmxvY2tcIj5cbiAgICAgICAgPGgyIGNsYXNzPVwicGFnZS1ibG9ja19fdGl0bGVcIj5TZWQgcG9zdWVyZSBjb25zZWN0ZXR1ciBlc3QgYXQgbG9ib3J0aXM8L2gyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1ibG9ja19fY29udGVudFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtYmxvY2tfX2ltYWdlXCI+XG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL2R1bW15aW1hZ2UuY29tLzEyMHgxMjAvMDAwL2ZmZlwiIGFsdD1cIlwiPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1ibG9ja19fdGV4dFwiPlxuICAgICAgICAgICAgICAgIDxwPkN1bSBzb2NpaXMgbmF0b3F1ZSBwZW5hdGlidXMgZXQgbWFnbmlzIGRpcyBwYXJ0dXJpZW50IG1vbnRlcywgbmFzY2V0dXIgcmlkaWN1bHVzIG11cy4gVml2YW11cyBzYWdpdHRpcyBsYWN1c1xuICAgICAgICAgICAgICAgICAgICB2ZWwgYXVndWUgbGFvcmVldCBydXRydW0gZmF1Y2lidXMgZG9sb3IgYXVjdG9yLiBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LlxuICAgICAgICAgICAgICAgICAgICBDcmFzIG1hdHRpcyBjb25zZWN0ZXR1ciBwdXJ1cyBzaXQgYW1ldCBmZXJtZW50dW0uIE51bGxhbSBpZCBkb2xvciBpZCBuaWJoIHVsdHJpY2llcyB2ZWhpY3VsYSB1dCBpZCBlbGl0LjwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicGFnZS1ibG9ja1wiPlxuICAgICAgICA8aDIgY2xhc3M9XCJwYWdlLWJsb2NrX190aXRsZVwiPlNlZCBwb3N1ZXJlIGNvbnNlY3RldHVyIGVzdCBhdCBsb2JvcnRpczwvaDI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLWJsb2NrX19jb250ZW50XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1ibG9ja19faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vZHVtbXlpbWFnZS5jb20vMTIweDEyMC8wMDAvZmZmXCIgYWx0PVwiXCI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLWJsb2NrX190ZXh0XCI+XG4gICAgICAgICAgICAgICAgPHA+Q3VtIHNvY2lpcyBuYXRvcXVlIHBlbmF0aWJ1cyBldCBtYWduaXMgZGlzIHBhcnR1cmllbnQgbW9udGVzLCBuYXNjZXR1ciByaWRpY3VsdXMgbXVzLiBWaXZhbXVzIHNhZ2l0dGlzIGxhY3VzXG4gICAgICAgICAgICAgICAgICAgIHZlbCBhdWd1ZSBsYW9yZWV0IHJ1dHJ1bSBmYXVjaWJ1cyBkb2xvciBhdWN0b3IuIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuXG4gICAgICAgICAgICAgICAgICAgIENyYXMgbWF0dGlzIGNvbnNlY3RldHVyIHB1cnVzIHNpdCBhbWV0IGZlcm1lbnR1bS4gTnVsbGFtIGlkIGRvbG9yIGlkIG5pYmggdWx0cmljaWVzIHZlaGljdWxhIHV0IGlkIGVsaXQuPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlLWJsb2NrXCI+XG4gICAgICAgIDxoMiBjbGFzcz1cInBhZ2UtYmxvY2tfX3RpdGxlXCI+U2VkIHBvc3VlcmUgY29uc2VjdGV0dXIgZXN0IGF0IGxvYm9ydGlzPC9oMj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtYmxvY2tfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLWJsb2NrX19pbWFnZVwiPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9kdW1teWltYWdlLmNvbS8xMjB4MTIwLzAwMC9mZmZcIiBhbHQ9XCJcIj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtYmxvY2tfX3RleHRcIj5cbiAgICAgICAgICAgICAgICA8cD5DdW0gc29jaWlzIG5hdG9xdWUgcGVuYXRpYnVzIGV0IG1hZ25pcyBkaXMgcGFydHVyaWVudCBtb250ZXMsIG5hc2NldHVyIHJpZGljdWx1cyBtdXMuIFZpdmFtdXMgc2FnaXR0aXMgbGFjdXNcbiAgICAgICAgICAgICAgICAgICAgdmVsIGF1Z3VlIGxhb3JlZXQgcnV0cnVtIGZhdWNpYnVzIGRvbG9yIGF1Y3Rvci4gTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC5cbiAgICAgICAgICAgICAgICAgICAgQ3JhcyBtYXR0aXMgY29uc2VjdGV0dXIgcHVydXMgc2l0IGFtZXQgZmVybWVudHVtLiBOdWxsYW0gaWQgZG9sb3IgaWQgbmliaCB1bHRyaWNpZXMgdmVoaWN1bGEgdXQgaWQgZWxpdC48L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInBhZ2UtYmxvY2tcIj5cbiAgICAgICAgPGgyIGNsYXNzPVwicGFnZS1ibG9ja19fdGl0bGVcIj5TZWQgcG9zdWVyZSBjb25zZWN0ZXR1ciBlc3QgYXQgbG9ib3J0aXM8L2gyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1ibG9ja19fY29udGVudFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtYmxvY2tfX2ltYWdlXCI+XG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL2R1bW15aW1hZ2UuY29tLzEyMHgxMjAvMDAwL2ZmZlwiIGFsdD1cIlwiPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1ibG9ja19fdGV4dFwiPlxuICAgICAgICAgICAgICAgIDxwPkN1bSBzb2NpaXMgbmF0b3F1ZSBwZW5hdGlidXMgZXQgbWFnbmlzIGRpcyBwYXJ0dXJpZW50IG1vbnRlcywgbmFzY2V0dXIgcmlkaWN1bHVzIG11cy4gVml2YW11cyBzYWdpdHRpcyBsYWN1c1xuICAgICAgICAgICAgICAgICAgICB2ZWwgYXVndWUgbGFvcmVldCBydXRydW0gZmF1Y2lidXMgZG9sb3IgYXVjdG9yLiBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LlxuICAgICAgICAgICAgICAgICAgICBDcmFzIG1hdHRpcyBjb25zZWN0ZXR1ciBwdXJ1cyBzaXQgYW1ldCBmZXJtZW50dW0uIE51bGxhbSBpZCBkb2xvciBpZCBuaWJoIHVsdHJpY2llcyB2ZWhpY3VsYSB1dCBpZCBlbGl0LjwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuYGBgXG4qL1xuXG5cbi8vIEJsb2Nrc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnBhZ2UtYmxvY2tzIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cblxuLy8gQmxvY2tcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wYWdlLWJsb2NrIHtcbiAgICBtYXJnaW46IDAgMCAxNnB4O1xuICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkY29sb3ItZ3JheS1saWdodCwgNSUpO1xuXG4gICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxNHB4KTtcbiAgICAgICAgbWFyZ2luOiAwIDI0cHggMjRweCAwO1xuICAgICAgICBwYWRkaW5nOiAyNHB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuXG4ucGFnZS1ibG9ja19fdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDE2cHg7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlICsgLjJyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5wYWdlLWJsb2NrX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5wYWdlLWJsb2NrX19pbWFnZSB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMjVweDtcbiAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgIG1hcmdpbjogMCA4cHggMCAwO1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgICAgbWFyZ2luOiAwIDE2cHggMCAwO1xuICAgICAgICBwYWRkaW5nOiAxJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgfVxufSIsIi8vXG4vLyBQYWdlIGNoYXB0ZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIERvY3VtZW50YXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBDaGFwdGVyc1xubmFtZTogY2hhcHRlcnNcbmNhdGVnb3J5OiBDb21wb25lbnRzXG4tLS1cblRoaXMgcGFnZSBtYXkgaW5jbHVkZSBhbmNob3JzIG9yIGxpbmtzIHRvIG90aGVyIHBhZ2VzLiBIb3dldmVyLCB0aGlzIGlzIG9wdGlvbmFsLlxuXG5UaGUgY29udGVudCBjYW4gYmUgb3JnYW5pemVkIGludG8gYW4gYWNjb3JkaW9uIGlmIHRoZSBIVE1sIG1hcmt1cCBpcyByZXNwZWN0ZWQgYWNjb3JkaW5nIHRvIHRoZSBleGFtcGxlIGJlbG93OlxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJwYWdlLWNoYXB0ZXJzXCI+XG4gICAgPGRpdiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX2FzaWRlXCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwicGFnZS1jaGFwdGVyc19fc3VtbWFyeVwiIGRhdGEtdG9nZ2xlPVwiY29sbGFwc2VcIiBkYXRhLXRhcmdldD1cIiNjaGFwdGVycy1uYXZpZ2F0aW9uXCIgYXJpYS1leHBhbmRlZD1cImZhbHNlXCJcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9XCJjaGFwdGVycy1uYXZpZ2F0aW9uXCI+U29tbWFpcmU8L2J1dHRvbj5cbiAgICAgICAgPHVsIGlkPVwiY2hhcHRlcnMtbmF2aWdhdGlvblwiIGNsYXNzPVwicGFnZS1jaGFwdGVyc19fbmF2aWdhdGlvbiBjb2xsYXBzZVwiPlxuICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwiYWN0aXZlXCIgaHJlZj1cIiNcIj5NYWVjZW5hcyBmYXVjaWJ1cyBtb2xsaXMgaW50ZXJkdW08L2E+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIjXCI+TWFlY2VuYXMgZmF1Y2lidXMgbW9sbGlzIGludGVyZHVtPC9hPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgICAgICA8YSBocmVmPVwiI1wiPk1hZWNlbmFzIGZhdWNpYnVzIG1vbGxpcyBpbnRlcmR1bTwvYT5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICA8bGk+XG4gICAgICAgICAgICAgICAgPGEgaHJlZj1cIiNcIj5NYWVjZW5hcyBmYXVjaWJ1cyBtb2xsaXMgaW50ZXJkdW08L2E+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIjXCI+TWFlY2VuYXMgZmF1Y2lidXMgbW9sbGlzIGludGVyZHVtPC9hPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgICAgICA8YSBocmVmPVwiI1wiPk1hZWNlbmFzIGZhdWNpYnVzIG1vbGxpcyBpbnRlcmR1bTwvYT5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBpZD1cImNoYXB0ZXJzXCIgY2xhc3M9XCJwYWdlLWNoYXB0ZXJzX19tYWluXCIgcm9sZT1cInRhYmxpc3RcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsXCIgZGF0YS1jb2xsYXBzZT1cImdyb3VwXCI+XG4gICAgICAgICAgICA8ZGl2IGlkPVwiY2hhcHRlcnMtaGVhZC0xXCIgY2xhc3M9XCJwYWdlLWNoYXB0ZXJzX19wYW5lbC1oZWFkXCIgcm9sZT1cInRhYlwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIjY2hhcHRlcnMtY29udGVudC0xXCIgZGF0YS10b2dnbGU9XCJjb2xsYXBzZVwiIGRhdGEtcGFyZW50PVwiI2NoYXB0ZXJzXCIgYXJpYS1leHBhbmRlZD1cInRydWVcIiBhcmlhLWNvbnRyb2xzPVwiY2hhcHRlcnMtY29udGVudC0xXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIj5EdWlzIG1vbGxpcyBlc3Qgbm9uIGNvbW1vZG8gbHVjdHVzIG5pc2kgZXJhdCBwb3J0dGl0b3IgbGlndWxhPC9hPlxuICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgaWQ9XCJjaGFwdGVycy1jb250ZW50LTFcIiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsLWNvbnRlbnQgY29sbGFwc2UgaW5cIiBhcmlhLWxhYmVsbGVkYnk9XCJjaGFwdGVycy1oZWFkLTFcIlxuICAgICAgICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9XCJ0cnVlXCIgcm9sZT1cInRhYnBhbmVsXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsLXRleHRcIj5cbiAgICAgICAgICAgICAgICAgICAgPHA+Q3VtIHNvY2lpcyBuYXRvcXVlIHBlbmF0aWJ1cyBldCBtYWduaXMgZGlzIHBhcnR1cmllbnQgbW9udGVzLCBuYXNjZXR1ciByaWRpY3VsdXMgbXVzLiBWaXZhbXVzIHNhZ2l0dGlzXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWN1cyB2ZWwgYXVndWUgbGFvcmVldCBydXRydW0gZmF1Y2lidXMgZG9sb3IgYXVjdG9yLiBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZ1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxpdC4gQ3JhcyBtYXR0aXMgY29uc2VjdGV0dXIgcHVydXMgc2l0IGFtZXQgZmVybWVudHVtLiBOdWxsYW0gaWQgZG9sb3IgaWQgbmliaCB1bHRyaWNpZXMgdmVoaWN1bGFcbiAgICAgICAgICAgICAgICAgICAgICAgIHV0IGlkIGVsaXQuPC9wPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1jaGFwdGVyc19fcGFuZWxcIiBkYXRhLWNvbGxhcHNlPVwiZ3JvdXBcIj5cbiAgICAgICAgICAgIDxkaXYgaWQ9XCJjaGFwdGVycy1oZWFkLTJcIiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsLWhlYWRcIiByb2xlPVwidGFiXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwicGFnZS1jaGFwdGVyc19fcGFuZWwtdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj1cIiNjaGFwdGVycy1jb250ZW50LTJcIiBkYXRhLXRvZ2dsZT1cImNvbGxhcHNlXCIgZGF0YS1wYXJlbnQ9XCIjY2hhcHRlcnNcIiBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIiBhcmlhLWNvbnRyb2xzPVwiY2hhcHRlcnMtY29udGVudC0yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIj5EdWlzIG1vbGxpcyBlc3Qgbm9uIGNvbW1vZG8gbHVjdHVzIG5pc2kgZXJhdCBwb3J0dGl0b3IgbGlndWxhPC9hPlxuICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgaWQ9XCJjaGFwdGVycy1jb250ZW50LTJcIiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsLWNvbnRlbnQgY29sbGFwc2VcIiBhcmlhLWxhYmVsbGVkYnk9XCJjaGFwdGVycy1oZWFkLTJcIlxuICAgICAgICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiIHJvbGU9XCJ0YWJwYW5lbFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLWNoYXB0ZXJzX19wYW5lbC10ZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxwPkN1bSBzb2NpaXMgbmF0b3F1ZSBwZW5hdGlidXMgZXQgbWFnbmlzIGRpcyBwYXJ0dXJpZW50IG1vbnRlcywgbmFzY2V0dXIgcmlkaWN1bHVzIG11cy4gVml2YW11cyBzYWdpdHRpc1xuICAgICAgICAgICAgICAgICAgICAgICAgbGFjdXMgdmVsIGF1Z3VlIGxhb3JlZXQgcnV0cnVtIGZhdWNpYnVzIGRvbG9yIGF1Y3Rvci4gTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmdcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsaXQuIENyYXMgbWF0dGlzIGNvbnNlY3RldHVyIHB1cnVzIHNpdCBhbWV0IGZlcm1lbnR1bS4gTnVsbGFtIGlkIGRvbG9yIGlkIG5pYmggdWx0cmljaWVzIHZlaGljdWxhXG4gICAgICAgICAgICAgICAgICAgICAgICB1dCBpZCBlbGl0LjwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsXCIgZGF0YS1jb2xsYXBzZT1cImdyb3VwXCI+XG4gICAgICAgICAgICA8ZGl2IGlkPVwiY2hhcHRlcnMtaGVhZC0zXCIgY2xhc3M9XCJwYWdlLWNoYXB0ZXJzX19wYW5lbC1oZWFkXCIgcm9sZT1cInRhYlwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInBhZ2UtY2hhcHRlcnNfX3BhbmVsLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIjY2hhcHRlcnMtY29udGVudC0zXCIgZGF0YS10b2dnbGU9XCJjb2xsYXBzZVwiIGRhdGEtcGFyZW50PVwiI2NoYXB0ZXJzXCIgYXJpYS1leHBhbmRlZD1cImZhbHNlXCIgYXJpYS1jb250cm9scz1cImNoYXB0ZXJzLWNvbnRlbnQtM1wiXG4gICAgICAgICAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCI+RHVpcyBtb2xsaXMgZXN0IG5vbiBjb21tb2RvIGx1Y3R1cyBuaXNpIGVyYXQgcG9ydHRpdG9yIGxpZ3VsYTwvYT5cbiAgICAgICAgICAgICAgICA8L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGlkPVwiY2hhcHRlcnMtY29udGVudC0zXCIgY2xhc3M9XCJwYWdlLWNoYXB0ZXJzX19wYW5lbC1jb250ZW50IGNvbGxhcHNlXCIgYXJpYS1sYWJlbGxlZGJ5PVwiY2hhcHRlcnMtaGVhZC0zXCJcbiAgICAgICAgICAgICAgICBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIiByb2xlPVwidGFicGFuZWxcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZS1jaGFwdGVyc19fcGFuZWwtdGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICA8cD5DdW0gc29jaWlzIG5hdG9xdWUgcGVuYXRpYnVzIGV0IG1hZ25pcyBkaXMgcGFydHVyaWVudCBtb250ZXMsIG5hc2NldHVyIHJpZGljdWx1cyBtdXMuIFZpdmFtdXMgc2FnaXR0aXNcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhY3VzIHZlbCBhdWd1ZSBsYW9yZWV0IHJ1dHJ1bSBmYXVjaWJ1cyBkb2xvciBhdWN0b3IuIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nXG4gICAgICAgICAgICAgICAgICAgICAgICBlbGl0LiBDcmFzIG1hdHRpcyBjb25zZWN0ZXR1ciBwdXJ1cyBzaXQgYW1ldCBmZXJtZW50dW0uIE51bGxhbSBpZCBkb2xvciBpZCBuaWJoIHVsdHJpY2llcyB2ZWhpY3VsYVxuICAgICAgICAgICAgICAgICAgICAgICAgdXQgaWQgZWxpdC48L3A+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbmBgYFxuKi9cblxuXG4vLyBDaGFwdGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnBhZ2UtY2hhcHRlcnMge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cblxuLy8gQXNpZGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wYWdlLWNoYXB0ZXJzX19hc2lkZSB7XG4gICAgbWFyZ2luOiAwIDAgMjRweDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgICBtYXJnaW46IDAgMzJweCAwIDA7XG4gICAgfVxufVxuXG5cbi8vIFN1bW1hcnlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wYWdlLWNoYXB0ZXJzX19zdW1tYXJ5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogOHB4IDQwcHggOHB4IDE2cHg7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlICsgLjJyZW07XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWdyYXktbGlnaHQsIDUlKTtcbiAgICBib3JkZXI6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDIxcHg7XG4gICAgICAgIHJpZ2h0OiAxNnB4O1xuICAgICAgICB3aWR0aDogMTFweDtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjFzIGVhc2U7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICByaWdodDogMjNweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIH1cblxuICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuXG4ucGFnZS1jaGFwdGVyc19fbmF2aWdhdGlvbiB7XG4gICAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItZ3JheS1saWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvci1ncmF5LWxpZ2h0LCA1JSk7XG5cbiAgICBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjFzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xcyBlYXNlLWluLW91dDtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHggMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbn1cblxuXG4vLyBQYW5lbFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnBhZ2UtY2hhcHRlcnNfX3BhbmVsIHtcbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luOiAxNnB4IDAgMDtcbiAgICB9XG59XG5cbi5wYWdlLWNoYXB0ZXJzX19wYW5lbC10aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDhweCA0OHB4IDhweCAxNnB4O1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvci1ncmF5LWxpZ2h0LCA1JSk7XG5cbiAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxN3B4O1xuICAgICAgICAgICAgcmlnaHQ6IDE2cHg7XG4gICAgICAgICAgICB3aWR0aDogMTFweDtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMXMgZWFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiAyM3B4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgICAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlICsuMnJlbTs7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wYWdlLWNoYXB0ZXJzX19wYW5lbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4ucGFnZS1jaGFwdGVyc19fcGFuZWwtdGV4dCB7XG4gICAgbWFyZ2luOiA4cHggMCAwO1xuXG4gICAgcCB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIubmF2LXNlY3Rpb25ze1xuICAgIGJhY2tncm91bmQ6ICRib2R5LWJnO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pe1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuXG4gICAgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1taW4pe1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNTRweCk7XG4gICAgICAgIHBhZGRpbmctdG9wOjQwcHg7XG4gICAgfVxuXG4gICAgLmxvZ28tbmF2e1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbiAtIDFweCl7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgXG4gICAgICAgICAgICB3aWR0aDogNzAlOyBcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9ue1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYm9keS1iZztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyBcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBmb250LXNpemU6JGZvbnQtc2l6ZS1iYXNlIC0gLjFyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pe1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuXG4gICAgICAgICAgICAubGV2ZWwwOmxhc3QtY2hpbGR7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBpbmhlcml0OyBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC51aS1tZW51LWljb24sXG4gICAgICAgIC51aS1tZW51LWl0ZW0uYWxsLWNhdGVnb3J5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZSAhaW1wb3J0YW50Oy8vaGVyZVxuICAgICAgICB9XG5cbiAgICAgICAgbGl7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7IFxuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgbGk6aG92ZXIgYSBzcGFueyBcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICBhOmhvdmVye1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkubGV2ZWwtdG9wOmhvdmVye1xuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDokc2NyZWVuLXNtLW1pbil7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206MDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6M3B4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiRjb2xvci1wcmltYXJ5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sZXZlbDAgPiAubGV2ZWwtdG9we1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGV2ZWwwLmFjdGl2ZSA+IGE6bm90KC51aS1zdGF0ZS1hY3RpdmUpIHNwYW46bm90KC51aS1tZW51LWljb24peyBcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmlnYXRpb24gLmxldmVsMHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgLm5hdi0yIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6OTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGV2ZWwxIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgICAgICAgICAgJi5zdWJtZW51IHtcbiAgICAgICAgICAgICAgICAmIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6MXB4IHNvbGlkIGdyYXk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxldmVsMCAuc3VibWVudSBhOmhvdmVyLCBcbiAgICAgICAgLmxldmVsMCAuc3VibWVudSBhLnVpLXN0YXRlLWZvY3Vze1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgfVxuICAgICAgICAubGV2ZWwwIC5zdWJtZW51e1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDsgXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7IFxuXG4gICAgICAgICAgICAmIGxpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6OHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6OHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbiAtIDFweCl7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjc2OHB4KXtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDo3NjhweCl7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGE6aG92ZXJ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7IFxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgLSAuMnJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IFxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IFxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4cHg7IFxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYTpob3ZlciwgXG4gICAgICAgICAgICAubmF2aWdhdGlvbiAubGV2ZWwwIC5zdWJtZW51IGEudWktc3RhdGUtZm9jdXN7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sZXZlbDAuYWN0aXZlID4gLmxldmVsLXRvcCxcbiAgICAgICAgIC5sZXZlbDAuaGFzLWFjdGl2ZSA+IC5sZXZlbC10b3Age1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDoxMDAlO1xuICAgICAgICAgICAgXG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4tc20tbWluIC0gMXB4KXtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IFxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXNlY29uZGFyeTtcblxuICAgICAgICAgICAgYXsgXG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlOyBcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGl7IFxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTsgXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgXG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlOyBcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwOyBcblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxldmVsMC5hY3RpdmUgPiBhOm5vdCgudWktc3RhdGUtYWN0aXZlKSwgXG4gICAgICAgICAgICAubGV2ZWwwLmFjdGl2ZSAuYWxsLWNhdGVnb3J5IC51aS1zdGF0ZS1mb2N1cywgXG4gICAgICAgICAgICAubGV2ZWwwLmFjdGl2ZSA+IC5sZXZlbC10b3B7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblxuICAgICAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6JHNjcmVlbi1zbS1taW4gLSAxcHgpe1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbnsgXG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlOyBcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwOyBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5sZXZlbDB7IFxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTsgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uYXYtb3BlbiB7XG4gICAgLmhlYWRlci5jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy10b3A6NjBweDtcbiAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgcG9zaXRpb246Zml4ZWQ7XG4gICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgIHotaW5kZXg6MTAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vL1Jlc2V0XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpLCBwcmludCB7XG4gICAgLm5hdmlnYXRpb24gLmxldmVsMCAuc3VibWVudSAuc3VibWVudS1yZXZlcnNlIHtcbiAgICAgICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICByaWdodDogaW5oZXJpdDtcbiAgICB9XG59XG5cbi8vTmF2IE1vYmlsZVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbiAtIDFweCl7XG4gICAgLm5hdi1zZWN0aW9ucy1pdGVtLXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubmF2LXNlY3Rpb25zLWl0ZW0tY29udGVudHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbn1cblxuQG1lZGlhKG1pbi13aWR0aDokc2NyZWVuLXNtLW1pbiArIDFweCkge1xuICAgIC5uYXZpZ2F0aW9ue1xuICAgICAgICAubGV2ZWwwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICAgICAgJi5uYXYtMiB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOjcwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm5hdmlnYXRpb24gLmxldmVsMC5wYXJlbnQgPiAubGV2ZWwtdG9wIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDoxMnB4O1xuICAgIH1cbn0iLCIuaG9tZXBhZ2Utc2VjdGlvbntcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbn1cbi5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3R7XG4gICAgZGlzcGxheTogZmxleDsgXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHdpZHRoOiAxMDAlOyBcbiAgICBtYXJnaW46IGF1dG87XG4gICAgcGFkZGluZzogMjBweDsgXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgICAgIGhlaWdodDogMTUwcHg7IFxuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9ibGFjay1kaWFtb25kLXBsYXRlLnBuZycpIHJlcGVhdC15O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4gKyA4NXB4KSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIH1cbiAgICAubW9iaWxle1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW17XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IFxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IFxuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjY2NjY2NjOyBcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OyBcbiAgICAgICAgd2lkdGg6IDI5MHB4O1xuICAgICAgICBib3gtc2hhZG93OiAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMjVweCAzMHB4IDI1cHg7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiRzY3JlZW4teHMtbWluKSB7IFxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgXG4gICAgICAgIH1cblxuICAgICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW0tcGlje1xuICAgICAgICAgICAgd2lkdGg6IDIwMXB4OyBcbiAgICAgICAgICAgIGhlaWdodDogYXV0bzsgXG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMDFweDsgXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC1pdGVtLXRpdGxle1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgaDN7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LXNlcGFyYXRpb257XG4gICAgICAgICAgICB3aWR0aDogNzAlOyBcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW0tc3VidGl0bGV7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyYXk7IFxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OyBcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDsgXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OyBcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyBcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW0tcHJpY2V7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OjQ3cHg7XG4gICAgICAgICAgICBjb2xvcjogYmxhY2s7IFxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7IFxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4OyBcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNTBweDtcbiAgICAgICAgICAgIHB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKyAuNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zcGVjaWFsLXByaWNlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIHNlbG9uIGxlcyBkZXZpY2VzIG9uIHJlZHVpdCBsZSBub21icmUgZGUgcHJvZHVpdHMgbWlzIGVuIGF2YW50LCBqdXNxdSdhdSBtb2JpbGUgb3UgY2VsYSBkaXNwYXJhaXRcbiAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW06bnRoLWxhc3QtY2hpbGQoMyl7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NjVweCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH0gICBcblxuICAgIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbTpudGgtbGFzdC1jaGlsZCgyKXtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC1pdGVtOm50aC1sYXN0LWNoaWxkKDEpe1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTMwMHB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmNvbnRlbnQtcmV0YWlsZXJze1xuICAgIHdpZHRoOiAxMDAlOyBcbiAgICBoZWlnaHQ6IDM2MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOjEwMjRweCl7XG4gICAgICAgIGhlaWdodDogOTA2cHg7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiRzY3JlZW4teHMtbWluKXtcbiAgICAgICAgaGVpZ2h0OiA1MDBweDtcbiAgICB9XG5cbiAgICAuY29udGVudC1yZXRhaWxlcnMtZmlyc3R7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAvL2JhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYmFja2dyb3VuZF9rYXJjaGVyLnBuZykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBoZWlnaHQ6IDQ1M3B4O1xuICAgIH1cblxuICAgIC5jb250ZW50LXJldGFpbGVycy1zZWNvbmR7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgLy9iYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2JhY2tncm91bmRfYmV0YS5wbmcpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgaGVpZ2h0OiA0NTNweDtcbiAgICB9XG5cbiAgICAuY29udGVudC1yZXRhaWxlcnMtZmlyc3QsIFxuICAgIC5jb250ZW50LXJldGFpbGVycy1zZWNvbmR7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXG4gICAgICAgIHdpZHRoOiA1MCU7IFxuICAgICAgICBoZWlnaHQ6IDEwMCU7IFxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBcbiAgICAgICAgICAgIGhlaWdodDogNDUzcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYmxhY2stZGlhbW9uZC1wbGF0ZS5wbmcpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7IFxuICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICAucmV0YWlsZXJze1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICB0b3A6IDY1JTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgfVxuICAgICAgICAuc3VwZXJfdGVzdHsgXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IFxuICAgICAgICAgICAgdG9wOiAzMCU7IFxuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA1MiU7IFxuICAgICAgICAgICAgd2lkdGg6IDQ1JTsgXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwJTsgXG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTsgXG4gICAgICAgICAgICAgICAgbGVmdDogMzAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MCU7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7IFxuICAgICAgICAgICAgICAgIGxlZnQ6IDIwJTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zdXBlcl90ZXN0LWNvbnRlbnR7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDsgXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7IFxuICAgICAgICAgICAgICAgIHRvcDogMDsgXG4gICAgICAgICAgICAgICAgYm90dG9tOiAwOyBcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA5MyU7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiA5NSU7IFxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlOyBcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgLmJ0bntcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsgXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuc3VwZXJfdGVzdC1jb250ZW50LWFsbHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA5MCU7IFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87IFxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTAlOyBcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwJTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyBcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgaW1neyBcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7IFxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUlOyBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6dmlzaXRlZHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1c3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMSU7XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmFja2dyb3VuZC1pbWFnZSB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBvYmplY3QtZml0OmNvdmVyO1xufSIsIi5ob21lcGFnZS1zZWN0aW9uX3NlcnZpY2Vze1xuICAgIHdpZHRoOiAxMDAlOyBcbiAgICBoZWlnaHQ6IDcwMHB4O1xuXG4gICAgQG1lZGlhKG1heC13aWR0aDogMTAyNHB4KXtcbiAgICAgICAgaGVpZ2h0OiAxMDUwcHg7XG4gICAgfVxuXG4gICAgLnNlcnZpY2VzLW9uZSwgXG4gICAgLnNlcnZpY2VzLXR3b3tcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogNTAlOyBcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyBcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IFxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VydmljZXMtb25le1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgLy9iYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21lY2FiYW1fc2VydmljZXMucG5nKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGhlaWdodDogNzAwcHg7XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6JHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjEwMjRweCl7XG4gICAgICAgICAgICBoZWlnaHQ6IDM1MHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlcnZpY2VzLXR3b3tcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgaGVpZ2h0OiA3MDBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAxMDI0cHgpe1xuICAgICAgICAgICAgaGVpZ2h0OiA3MDBweDtcbiAgICAgICAgfVxuICAgICAgICBiYWNrZ3JvdW5kOnVybCgnLi4vaW1hZ2VzL2RvdHNfdG9wLnBuZycpIG5vLXJlcGVhdCBsZWZ0IHRvcCwgXG4gICAgICAgICAgICB1cmwoJy4uL2ltYWdlcy9sb2dvQy5wbmcnKSBuby1yZXBlYXQgcmlnaHQgdG9wIC01JSwgIFxuICAgICAgICAgICAgdXJsKCcuLi9pbWFnZXMvZG90c19ib3R0b20ucG5nJykgcmVwZWF0LXggYm90dG9tO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICAuc2VydmljZXMtdHdvX2NvbnRlbnR7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IFxuICAgICAgICAgICAgd2lkdGg6IDQ1JTsgXG4gICAgICAgICAgICBoZWlnaHQ6IDgwJTtcbiAgICAgICAgICAgIGxlZnQ6IDE1JTsgXG4gICAgICAgICAgICB0b3A6IDUlOyBcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc2VydmljZXMtbG9nb3tcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzN3B4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7IFxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlcnZpY2VzLWRlc2Nye1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4OyBcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IC0yMHB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5zZXJ2aWNlcy1kZXNjcl9saXN0ZSwgXG4gICAgICAgICAgICAubWVjYWJhbS1saXN0e1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubWVjYWJhbS1saXN0e1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtMjBweCAwIDQwcHggMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tZWNhYmFtLWxpc3QgbGl7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsgXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTQ1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxZW07IFxuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtLjdlbTtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXDAwMjAyMic7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0ZW07XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5ob21lcGFnZS1lbnRlcnByaXNle1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTsgXG4gICAgaGVpZ2h0OiA3ODNweDsgXG4gICAgYmFja2dyb3VuZDp1cmwoJy4uL2ltYWdlcy9sb2dvQy5wbmcnKSBjYWxjKC01JSAtIDElKSAwIG5vLXJlcGVhdCxcbiAgICAgICAgICAgICAgICB1cmwoJy4uL2ltYWdlcy9kb3RzX3RyYW5zcGFyZW50c19yaWdodC5wbmcnKSBuby1yZXBlYXQgcmlnaHQgdG9wO1xuICAgICY6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6ICcnOyBcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwOyBcbiAgICAgICAgYm90dG9tOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7IFxuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9kb3RzX3RyYW5zcGFyZW50c19ib3R0b20ucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByb3VuZDtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6MTAyNHB4KXtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4teHMtbWluKSB7XG4gICAgICAgIGhlaWdodDo4MzJweDtcbiAgICB9XG5cbiAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZV9vbmUsIFxuICAgIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3b3tcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogNTAlOyBcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlX29uZS1jb250ZW50e1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBcbiAgICAgICAgICAgIHRvcDogMTAlOyBcbiAgICAgICAgICAgIGxlZnQ6IDIwJTtcbiAgICAgICAgICAgIGhlaWdodDogNjAlOyBcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KXtcbiAgICAgICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6JHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7IFxuICAgICAgICAgICAgICAgIHRvcDogNSU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc2VydmljZXMtbG9nb3tcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzN3B4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7IFxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDokc2NyZWVuLXhzLW1pbil7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDJ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4OyBcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDokc2NyZWVuLXhzLW1pbil7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7IFxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IC0yMHB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDoxMDI0cHgpe1xuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlcnZpY2VzLWRlc2Nye1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMCU7IFxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyBcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5idG57XG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbil7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7IFxuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3by0tcGlje1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxMiU7XG4gICAgICAgICAgICBsZWZ0OiA4JTtcbiAgICAgICAgICAgIGhlaWdodDogNzAlOyB3aWR0aDogOTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoJy4uL2ltYWdlcy9tZWNhYmFtX2ZhY2FkZS5wbmcnKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA2MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6MTAyNHB4KXtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHRvcDogMDsgXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ob21lcGFnZS1lbnRlcnByaXNlX3R3by0tY2hhcnRle1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7ICBcbiAgICAgICAgICAgIGJvdHRvbTogMDsgXG4gICAgICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwMHB4OyBcbiAgICAgICAgICAgIHdpZHRoOiA0NzVweDsgXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOnVybCgnLi4vaW1hZ2VzL2JsYWNrLWRpYW1vbmQtcGxhdGUucG5nJykgY2FsYygtNSUgLSAxJSkgMCBuby1yZXBlYXQsXG4gICAgICAgICAgICAgICAgdXJsKCcuLi9pbWFnZXMvZG90c190cmFuc3BhcmVudHNfcmlnaHQucG5nJykgbm8tcmVwZWF0IHJpZ2h0IHRvcDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgICAgIGhlaWdodDozMzBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwOyBcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuXG4gICAgICAgICAgICAgICAgLmJ0bi13aGl0ZXtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCl7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7IFxuICAgICAgICAgICAgICAgIGxlZnQ6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jaGFydGVfY29udGVudHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwJTsgXG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwJTsgXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNiU7IFxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2JTtcblxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKXtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4JTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6OTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBoMntcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtOyBcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAlO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlcnsgXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTIwcHg7IFxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNoYXJ0ZS1kZXNjcntcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlOyBcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAlOyBcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYnRuLXdoaXRle1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7IFxuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhvbWVwYWdlLWVudGVycHJpc2Vfb25le1xuICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjEwMjRweCl7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgXG4gICAgICAgICAgICBoZWlnaHQ6IDYwJTsgXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaG9tZXBhZ2UtZW50ZXJwcmlzZV90d297XG4gICAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjEwMjRweCl7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgXG4gICAgICAgICAgICBoZWlnaHQ6IDQwJTsgXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6JHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvZG90c190cmFuc3BhcmVudHNfYm90dG9tLnBuZycpIG5vLXJlcGVhdCBsZWZ0IHRvcCAxMiU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG59IiwiLy8gTWFpbiBzaWRlYmFyIFxuLnNpZGViYXItbWFpbntcbiAgICBwYWRkaW5nLWxlZnQ6IDElO1xufVxuXG4uYWN0aW9uIC5zb3J0ZXItYWN0aW9uIC5zb3J0LWFzYywgXG4ubW9kZXN7XG4gICAgZGlzcGxheTogbm9uZTsgXG59XG5cbi5zb3J0ZXItYWN0aW9uOmJlZm9yZXtcbiAgICBjb250ZW50OiAnJztcbn1cblxuLnRvb2xiYXItc29ydGVyIHtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4teHMtbWluKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAuc29ydGVyLWxhYmVsIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAjc29ydGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmF5LWxpZ2h0O1xuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmJyYW5kLXdpZGdldHtcbiAgICB3aWR0aDogMTAwJTsgXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tdG9wOiA2MHB4OyBcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuXG4gICAgLm93bC1pdGVte1xuICAgICAgICBoZWlnaHQ6IDE3MHB4O1xuICAgIH1cbiAgICBcbiAgICAuYmxvY2stdGl0bGV7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgd2lkdGg6IDMwMHB4OyBcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgXG4gICAgICAgIGhlaWdodDogNTBweDsgXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHN0cm9uZ3tcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDM0JTtcbiAgICAgICAgICAgICAgICB3aWR0aDo5MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDoycHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDokY29sb3ItcHJpbWFyeTs7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7IFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZSAtIDAuNTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5icmFuZC1pbWFnZXtcbiAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICBtYXJnaW46IGF1dG87IFxuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBib3gtc2hhZG93OiAxcHggMXB4IDJweCAycHggI2NjYztcblxuICAgIH1cblxuICAgIHVse1xuICAgICAgICBwYWRkaW5nOiAwOyBcbiAgICAgICAgLXdlYmtpdC1wYWRkaW5nLXN0YXJ0OiAwcHg7XG4gICAgfVxuXG4gICAgLm93bC1jYXJvdXNlbCAub3dsLWxvYWRlZCAub3dsLWRyYWd7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDsgXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgLXdlYmtpdC1wYWRkaW5nLXN0YXJ0OiAwcHg7XG4gICAgfVxuXG4gICAgLm93bC1pdGVte1xuICAgICAgICBsaXtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDlweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vd2wtbGVmdCwgXG4gICAgLm93bC1yaWdodHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBcbiAgICAgICAgaGVpZ2h0OiAzMHB4OyBcbiAgICAgICAgd2lkdGg6IDMwcHg7IFxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cblxuICAgIC5vd2wtZG90c3tcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuYnJhbmRvd2wtcGxheXtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5icmFuZG93bC1wbGF5ID4gYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgXG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2NjYztcbiAgICAgICAgdHJhbnNpdGlvbjogMnM7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICBjb250ZW50OiAnJzsgXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IFxuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAjY2NjO1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDNweCAzcHggMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDNweDsgXG4gICAgICAgICAgICB0b3A6IDEwcHg7IFxuICAgICAgICAgICAgbGVmdDogOHB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5icmFuZG93bC1wbGF5ID4gYTpmaXJzdC1vZi10eXBle1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICAgICAgbGVmdDogMTFweDtcbiAgICAgICAgfVxuICAgIH1cbn0gIiwiLmZvcm0uc2VhcmNoLmFkdmFuY2Vke1xuICAgIHdpZHRoOiA2MCU7IFxuICAgIG1hcmdpbjogYXV0bztcbiAgICBwYWRkaW5nOiAxJTsgXG4gICAgbWFyZ2luLXRvcDogNSU7XG4gICAgbGFiZWwubGFiZWx7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICAgIGxlZ2VuZC5sZWdlbmR7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyBcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIH1cbiAgICAucHJpbWFyeXtcbiAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICBpbnB1dHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIH1cbn1cblxuLnNlYXJjaC1hdXRvY29tcGxldGV7XG4gICAgdG9wOiAzcHg7XG4gICAgdWx7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbGl7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxpLnNlbGVjdGVke1xuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIH1cbiAgICB9IFxuICAgIC5hbW91bnR7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufSIsIi8vIFF1b3RlIC8gUmVudCBcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucHJvZHVjdF9yZW50IHtcbiAgbWFyZ2luLWJvdHRvbToyMHB4O1xuICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkY29sb3ItZ3JheS1saWdodDtcbiAgbWF4LXdpZHRoOjI1NXB4O1xuICAmIC50aXRsZSB7XG4gICAgZm9udC1zaXplOiRmb250LXNpemUtYmFzZSArIC42cmVtO1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRjb2xvci1ncmF5LWxpZ2h0O1xuICAgIHBhZGRpbmctYm90dG9tOjRweDtcbiAgICBtYXJnaW4tYm90dG9tOjRweDtcbiAgfVxuICAmIC5kYXksXG4gICYgLndlZWssXG4gICYgLndlZWtlbmQsXG4gICYgLm1vbnRoIHtcbiAgICBtYXJnaW4tYm90dG9tOjRweDtcbiAgfVxuICAmIC52YWx1ZSB7XG4gICAgZm9udC13ZWlnaHQ6NTAwO1xuICB9XG4gICYgLmxhYmVsIHtcbiAgICBjb2xvcjokY29sb3ItZ3JheS1kYXJrO1xuICB9XG59XG4gXG4uaW5zdHJ1Y3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOjQwcHg7XG4gIGZvbnQtc3R5bGU6aXRhbGljO1xufSIsIi8vXG4vLyBMYXlvdXRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQm9keVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuXG5cbi8vIFdyYXBwZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wYWdlLXRpdGxlLXdyYXBwZXJ7XG4gICAgZm9udC1zaXplOiAzcmVtOyBcbiAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7IFxuICAgIHdpZHRoOiAxMDAlOyBcbiAgICBtYXJnaW46IGF1dG87IFxuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgXG4gICAgcGFkZGluZy10b3A6IDE2cHg7XG4gICAgcGFkZGluZy1sZWZ0OjElOyBcbiAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAjY2NjO1xuICAgIC5jYXRhbG9nLXByb2R1Y3QtdmlldyAmIHtcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cblxuICAgIC5jYXRhbG9nLWNhdGVnb3J5LXZpZXcgJiB7XG4gICAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICB9XG59XG5cbi53cmFwcGVyIHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbn1cblxuLnBhZ2Utd3JhcHBlciAge1xuICAgIG1heC13aWR0aDogJHdyYXBwZXItbWF4LXdpZHRoO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogaW5oZXJpdDtcbiAgICB9XG59XG5cbi5jb2x1bW5zIC5jb2x1bW4ubWFpbntcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgXG4gICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuXG4vLyBDb250YWluZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcigpO1xufVxuXG4ucGFnZS1tYWlue1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyBcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyBcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuXG4vLyBQcm9kdWN0IFZpZXdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uY2F0YWxvZy1wcm9kdWN0LXZpZXcge1xuICAgIC5jb2x1bW4ubWFpbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MTQwcHg7XG4gICAgfVxufSIsIi5wYWdlLWZvb3RlcntcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgIC5jb3B5cmlnaHR7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4OyBcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDcwcHg7XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6JHNjcmVlbi14cy1taW4pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi5mb290ZXIuY29udGVudHsgXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7IFxuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IG5vbmU7IFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKXtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTAlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAlO1xuICAgIH1cbn1cblxuLmZvb3Rlcl9jb250ZW50e1xuICAgIHdpZHRoOiAxMDAlOyBcbiAgICBoZWlnaHQ6IGF1dG87IFxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5mb290ZXJfY29udGVudF90b3B7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyBcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDEyMHB4OyBcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4teHMtbWluICsgMjAwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogaW5oZXJpdDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDokc2NyZWVuLXhzLW1pbikge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuICAgICAgICAuZm9vdGVyX2NvbnRlbnQtbG9nb3tcbiAgICAgICAgICAgIGhlaWdodDogOTJweDsgXG4gICAgICAgICAgICB3aWR0aDogMjU3cHg7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lOyBcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mb290ZXItbG9nb3tcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87IFxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bzsgXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyBcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbil7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9ICAgXG4gICAgXG4gICAgLmZvb3Rlcl9jb250ZW50LWNhbGx7XG4gICAgICAgIGZsb2F0OiByaWdodDsgXG4gICAgICAgIGhlaWdodDogOTJweDsgXG4gICAgICAgIHdpZHRoOiBhdXRvOyBcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogODVweDsgXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgYXtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IFxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvb3Rlcl9jb250ZW50LW5hdnsgXG4gICAgZGlzcGxheTogYmxvY2s7IFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyBcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IFxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgd2lkdGg6IDk1JTsgXG4gICAgaGVpZ2h0OiBhdXRvOyBcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdWwuZmlyc3QtbGV2ZWx7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IFxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IFxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIG1hcmdpbjogYXV0bzsgXG4gICAgICAgIHdpZHRoOiA5MCU7XG5cbiAgICAgICAgbGl7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDsgXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBpbmhlcml0OyBcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdWwuc3VibmF2e1xuICAgICAgICB3aWR0aDogYXV0bzsgXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IFxuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICAgIGxpe1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IFxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgXG4gICAgICAgICAgICBwYWRkaW5nOiAwcHg7IFxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxpe1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgfVxuXG4gICAgYXtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAmOnZpc2l0ZWR7XG4gICAgICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDo5ODBweCl7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4uZm9vdGVyX2NvbnRlbnQtYXJyb3d7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7ICBcbiAgICByaWdodDogNjVweDsgXG4gICAgYm90dG9tOiAxOXB4O1xuICAgIGhlaWdodDogMjVweDsgXG4gICAgd2lkdGg6IDIzcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyBcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBcbiAgICBsaW5lLWhlaWdodDogOHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIGkge1xuICAgICAgICBib3JkZXI6IHNvbGlkIHdoaXRlO1xuICAgICAgICBib3JkZXItd2lkdGg6IDAgM3B4IDNweCAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDNweDtcbiAgICB9XG4gICAgXG4gICAgLnVwIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgLy90cmFuc2l0aW9uOiAwLjVzO1xuICAgIH1cblxuICAgIEBtZWRpYShtYXgtd2lkdGg6OTgwcHgpe1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn0iLCIjaGVhZGVyLWJhbmRlcmF1e1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIGhlaWdodDogNDNweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkY29sb3ItcXVhdGVybmFyeTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KXtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc4MHB4KXtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuaGVhZGVyLWJhbmRlcmF1X21pZGRsZXtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwwKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4tbWQtbWluICsgODhweCkge1xuICAgICAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgICAgICBhLmxpbmstaGVhZGVye1xuICAgICAgICAgICAgY29sb3I6ICM3QzdDN0M7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjN0M3QzdDO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjp2aXNpdGVke1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjN0M3QzdDO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpmb2N1c3tcbiAgICAgICAgICAgICAgICBjb2xvcjogIzdDN0M3QztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXItYmFuZGVyYXVfcmlnaHR7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTVweDtcbiAgICB9XG5cbiAgICBwe1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgLSAwLjJyZW07ICBcbiAgICB9XG59XG5cbi5oZWFkZXIuY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbil7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubmF2LXRvZ2dsZXtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7IC8vbWlkZGxlIGhlaWdodCBvZiBoZWFkZXJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbGVmdDogMTBweDsgZm9udC13ZWlnaHQ6IDkwMDsgY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgfVxuXG4gICAgLmxvZ297XG4gICAgICAgIHdpZHRoOiAzNjBweDtcbiAgICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc4MHB4KXtcbiAgICAgICAgICAgIHdpZHRoOiAyMDBweDsgaGVpZ2h0OiA1MHB4OyBsZWZ0OiAxMCU7IG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xvZ2FuLWxvZ297XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA0MSU7XG4gICAgICAgIGxlZnQ6IDEwNSU7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1tZC1taW4pe1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uby1he1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBjb2xvcjpibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXJfbW9iaWxlLWljb25ze1xuICAgICAgICBAbWVkaWEobWluLXdpZHRoOjc4MHB4KXtkaXNwbGF5OiBub25lOyBsaW5lLWhlaWdodDogNzBweDt9XG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6JHNjcmVlbi14cy1taW4pe2xpbmUtaGVpZ2h0OiA3MHB4O31cblxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAxMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNzBweDsgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuXG4gICAgICAgIGF7XG4gICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICBhOmhvdmVye1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICBhOmZvY3Vze1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICBzdmcuaWNvbntcbiAgICAgICAgICAgIHdpZHRoOiAzZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDEuNmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJsb2NrLXNlYXJjaHtcbiAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiA1NXB4O1xuICAgICAgICB0b3A6IDUwcHg7XG5cbiAgICAgICAgLmNvbnRyb2wgaW5wdXR7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAjc2VhcmNoX2F1dG9jb21wbGV0ZXtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubmVzdGVke1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3ODBweCl7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi5oZWFkZXIuY29udGVudDo6YmVmb3Jle1xuICAgIGRpc3BsYXk6IG5vbmU7IFxuICAgIGNvbnRlbnQ6ICcnO1xufVxuLmhlYWRlci5jb250ZW50OjphZnRlcntcbiAgICBkaXNwbGF5OiBub25lOyBcbiAgICBjb250ZW50OiAnJztcbn1cbiIsIi8vXG4vLyBQYWdlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIERvY3VtZW50YXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBHZW5lcmFsXG5uYW1lOiBnZW5lcmFsXG5jYXRlZ29yeTogUGFnZXNcbi0tLVxuV2hlbiBjcmVhdGluZyBhIG5ldyBjbXMgcGFnZSwgYmUgc3VyZSB0byBzZXQgdGhlIGAxIGNvbHVtbmAgdGVtcGxhdGUgaW4gb3JkZXIgdG8gaGF2ZSB0aGUgY29ycmVjdCBsYXlvdXQgYXBwbGllZC4gVGhpcyBpcyB2YWxpZCBmb3IgYWxsIHRoZSBDTVMgdGVtcGxhdGVzLlxuXG5UaGUgaGVhZGluZyB3aWxsIGJlIGRpc3BsYXllZCBhdCB0aGUgdG9wIG9mIHRoZSBwYWdlLiBNb3N0IG9mIHRoZSB0aW1lLCB3ZSByZWNvbW1lbmQgdG8gbWF0Y2ggdGhlIHBhZ2UgdGl0bGUgYW5kIHRoZSBoZWFkaW5nLlxuKi9cblxuXG4vLyBQYWdlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucGFnZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZSArIC4xcmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMnB4O1xuXG4gICAgJiA+IGgxLFxuICAgICYgPiBoMixcbiAgICAmID4gaDMsXG4gICAgJiA+IGg0LFxuICAgICYgPiBoNSxcbiAgICAmID4gaDYge1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2UgKyAuNHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgICYgPiBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZSArIC4ycmVtO1xuICAgIH1cblxuICAgICYgPiBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICB9XG5cbiAgICAmID4gaDQge1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZSArIC4xcmVtO1xuICAgIH1cblxuICAgICYgPiBoNSxcbiAgICAmID4gaDYge1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICB9XG59XG4iLCIvL1xuLy8gSG9tZXBhZ2Ugc2VjdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmhvbWVwYWdlLXNlY3Rpb24ge1xuICAgIG1hcmdpbjogMDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG5cbi8vIEhvbWVwYWdlIHNlY3Rpb24gVGl0bGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5ob21lcGFnZS1zZWN0aW9uX190aXRsZSB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlICsgLjJyZW07XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OicnO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOi0yMHB4O1xuICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDQ1cHgpO1xuICAgICAgICB3aWR0aDo5MHB4O1xuICAgICAgICBoZWlnaHQ6MnB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiRjb2xvci1wcmltYXJ5O1xuICAgIH0gXG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtaDI7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuOHB4O1xuICAgIH1cbn1cbiIsIi8vXG4vLyBIb21lcGFnZSBjb3ZlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmhvbWVwYWdlLWNvdmVyIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDoxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtaDMgKyAuNHJlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbil7XG4gICAgICAgIGhlaWdodDogNjAwcHg7IGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpe1xuICAgICAgICBoZWlnaHQ6IDM4MHB4O1xuICAgIH1cblxuICAgIC5ob21lcGFnZS1jb3Zlcl9pbWd7XG4gICAgICAgIGhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgaW1ne1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbil7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhvbWVwYWdlLWNvdmVyX2ltZ19tb2JpbGV7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgaW1ne1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbil7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHRvcDo4MHB4O1xuICAgICAgICByaWdodDo2JTtcbiAgICAgICAgd2lkdGg6NDAlO1xuICAgICAgICB0ZXh0LWFsaWduOmxlZnQ7XG5cbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1taW4pe1xuICAgICAgICAgICAgdG9wOiA1JTtcbiAgICAgICAgICAgIGxlZnQ6IDE1JTtcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgd2lkdGg6IDgwJTsgdG9wOiAxMHB4O1xuICAgICAgICAgICAgbGVmdDogMSU7XG4gICAgICAgIH1cblxuICAgICAgICAmIGgxIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtaDE7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjIwcHg7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbil7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKyAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYgcCB7XG4gICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JheS1kYXJrZXI7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZSArIC4ycmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTotMjBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OjBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDo5MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDoycHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDokY29sb3ItZ3JheS1kYXJrZXI7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7IFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pe1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZSAtIDAuNTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9ICAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICAmIGJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOjQwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOjhweCAyMHB4IDEwcHggMjBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIFRvb2xiYXJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAgXG4udG9vbGJhci1wcm9kdWN0c3tcbiAgICBtYXJnaW4tdG9wOiAyMHB4OyBcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICBzZWxlY3R7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjpmb2N1cywgXG4gICAgICAgICY6YWN0aXZlLCBcbiAgICAgICAgJjpob3ZlciwgXG4gICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7IFxuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBvcHRpb257XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH0gICBcbn1cblxuLy8gU2lkZWJhciBMZWZ0XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gXG4uc2lkZWJhci1tYWlue1xuICAgIG1hcmdpbi10b3A6IDkwcHg7XG59XG5cbi5zaWRlYmFyLWFkZGl0aW9uYWx7XG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pe1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbn1cblxuLnByb2R1Y3QtaXRlbS1hY3Rpb25zIC5hY3Rpb25zLXByaW1hcnkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCl7XG4gICAgICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5maWx0ZXItdGl0bGV7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5maWx0ZXItY29udGVudHtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4tc20tbWluKXtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAuYWN0aW9uLnJlbW92ZXtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgfVxufVxuXG4uYmxvY2stY29udGVudHtcbiAgICBhOnZpc2l0ZWR7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICB9XG5cbiAgICBhOmhvdmVye1xuICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgfVxufVxuXG5cbi5ibG9jay1jb21wYXJle1xuICAgIHBhZGRpbmc6IDclO1xuXG4gICAgLmFjdGlvbnMtdG9vbGJhcntcbiAgICAgICAgcGFkZGluZzogMTElO1xuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6MTgwMHB4KXtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBhLmFjdGlvbntcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuY29tcGFyZXtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAgICAgICAgIGEsIGE6aG92ZXJ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lOyBcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGVsZXRlOmJlZm9yZXtcbiAgICAgICAgJjpob3ZlcnsgXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG4vLyBNYWluIGNvbnRlbnQgbGlzdCBwcm9kdWN0c1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFxuLnBhZ2UtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWR7XG4gICAgLnByb2R1Y3QtaXRlbXN7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDokc2NyZWVuLXNtLW1pbil7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5wcm9kdWN0LWl0ZW17XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDIlOyBcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OyBcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggcmdiYSgzMywzMywzMyAsLjEpO1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjsgXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6JHNjcmVlbi14cy1taW4pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDokc2NyZWVuLXhzLW1pbiAtIDEyMHB4KSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcmljZS1ib3h7XG4gICAgICAgICAgICBoZWlnaHQ6IDcwcHg7IFxuICAgICAgICAgICAgbWFyZ2luOiAyNXB4IDAgMjVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuXG4gICAgICAgICAgICAucHJpY2UtbGFiZWx7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3RvY2stb24tdG9we1xuICAgICAgICAgICAgd2lkdGg6IDgwJTsgXG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG5cbiAgICAgICAgICAgIC5vdXQtb2YsXG4gICAgICAgICAgICAuZm9yLXJlbnQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKDQ2LDEyNSw1MCAsLjcpOyBcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyBcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZm9yLXJlbnQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1pdGVtLWluZm97XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogMjcwcHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMzRweDsgXG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1pdGVtLWlubmVye1xuICAgICAgICAgICAgLnByb2R1Y3QtaXRlbS1hY3Rpb25ze1xuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6NjQwcHgpe1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYnRue1xuICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjc3M3B4KXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bzsgXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdC1pdGVtLWFjdGlvbi12aWV3e1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IFxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hZGRjb21wYXJle1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNjksOTAsMTAwICwuNik7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDokc2NyZWVuLXNtLW1pbil7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGE6OmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdpY29ucy1ibGFuay10aGVtZSc7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTowOyBcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IFxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTUwMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDAuMXB4OyBcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDAuMXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYWRkY29tcGFyZS1pY29ue1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5pY29uLWNvbXBhcmV7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ2ljb25zLWJsYW5rLXRoZW1lJztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07IFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtaXRlbS1uYW1le1xuICAgICAgICAgICAgaGVpZ2h0OiA4MHB4OyBcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47IFxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNSU7IFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMiU7XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07IFxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206MDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDoxNSU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjcwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjNweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDokY29sb3ItcHJpbWFyeTtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTsgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlIC0gMC41O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJpY2UtYm94e1xuICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuXG4gICAgICAgICAgICAucHJpY2V7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5vbGQtcHJpY2V7XG4gICAgICAgICAgICAgICAgLnByaWNle1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1yZXZpZXdzLXN1bW1hcnl7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgXG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgXG4gICAgICAgICAgICAucmV2aWV3cy1hY3Rpb25ze1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDsgXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICBcbiAgICAgICAgICAgICAgICBhLmFjdGlvbi52aWV3LCBzcGFue1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgIGEgLmFjdGlvbiAudmlldzp2aXNpdGVke1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXZpZXctYmxvY2t7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBcbiAgICAgICAgICAgIHRvcDogMDsgXG4gICAgICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgcGFkZGluZzogMTJweCA0MHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjogMDsgIFxuICAgICAgICAgICAgXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAxNDQwcHgpe1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0zNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4tc20tbWluKXtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgXG4gICAgfVxufVxuXG4ucHJvZHVjdC1yZXZpZXdzLXN1bW1hcnkgLnJldmlld3MtYWN0aW9ucyBhIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgJjpob3ZlcntcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgIH1cbn1cblxuLnBhZ2UtcHJvZHVjdHMge1xuICAgIC5tZXNzYWdlLmluZm8uZW1wdHkge1xuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4teHMtbWluKSB7XG4gICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vIFBhZ2VyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gXG5cbi5wYWdlc3tcbiAgICBhLm5leHQsIFxuICAgIGEucHJldmlvdXN7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICAgIGNvbG9yOiAjY2NjOyBcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWN0aW9uLm5leHQ6YmVmb3Jle1xuICAgICAgICBjb2xvcjogI2NjYztcbiAgICB9XG5cbiAgICAuYWN0aW9uLm5leHQ6dmlzaXRlZDpiZWZvcmV7XG4gICAgICAgIGNvbG9yOiAjY2NjO1xuICAgIH1cblxuICAgIGEucGFnZXtcbiAgICAgICAgc3BhbntcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2F0YWxvZ3NlYXJjaC1hZHZhbmNlZC1yZXN1bHQge1xuICAgIC5zZWFyY2guZm91bmQsXG4gICAgLnNlYXJjaC5zdW1tYXJ5IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxJTtcbiAgICB9XG59IiwiLy9SZXNldHMgTWFnZW50b1xuLnByb2R1Y3QuZGF0YS5pdGVtcyA+IC5pdGVtLnRpdGxlID4gLnN3aXRjaHtcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbil7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICB9XG59XG5cblxuLy9SZXZpZXdzXG4ucHJvZHVjdC5kYXRhLml0ZW1zID4gLml0ZW0uY29udGVudHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcblxuICAgIEBtZWRpYShtaW4td2lkdGg6IDc2OHB4KXtcbiAgICAgICAgbWFyZ2luLXRvcDogNDJweDtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICB9XG59XG5cbi5yZXZpZXctdGl0bGV7XG4gICAgZm9udC13ZWlnaHQ6IDQ1MDtcbn1cblxuLnJldmlldy1mb3Jte1xuICAgIG1hcmdpbjogYXV0bztcblxuICAgIEBtZWRpYShtaW4td2lkdGg6JHNjcmVlbi1zbS1taW4pe1xuICAgICAgICBtYXJnaW46IGluaGVyaXQ7XG4gICAgfVxufVxuXG4ucmV2aWV3LWNvbnRlbnR7XG4gICAgQG1lZGlhKG1pbi13aWR0aDo3NjhweCl7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgfVxufVxuXG4ucHJvZHVjdC1yZXZpZXdzLXN1bW1hcnkgLnJldmlld3MtYWN0aW9ucyBhe1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgXG4gICAgY29sb3I6ICNjY2M7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAmOmhvdmVye1xuICAgICAgICBjb2xvcjogI2NjYztcbiAgICB9XG59XG5cbi8vUGljdHVyZSBjb250cm9scyBtb2JpbGVcbi5wYWdlLWxheW91dC0xY29sdW1uIC5wcm9kdWN0Lm1lZGlhe1xuICAgIHdpZHRoOiA0MCU7IFxuICAgIHBhZGRpbmctbGVmdDogNjBweDtcblxuICAgIEBtZWRpYShtYXgtd2lkdGg6NzY4cHgpe1xuICAgICAgICB3aWR0aDogMTAwJTsgXG4gICAgICAgIHBhZGRpbmctbGVmdDogaW5oZXJpdDtcbiAgICB9XG59XG5cblxuLmZvdG9yYW1hX19uYXYtd3JhcHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgLmZvdG9yYW1hX19uYXYtLXRodW1ic3tcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn0gXG5cbi5mb3RvcmFtYV9fc3RhZ2V7IFxuICAgIHdpZHRoOiA1MDBweCAhaW1wb3J0YW50O1xuXG4gICAgQG1lZGlhKG1heC13aWR0aDoxMjAwcHgpe1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxufVxuXG4uZm90b3JhbWFfX3N0YWdlX19zaGFmdCAuZm90b3JhbWFfX2dyYWJ7XG4gICAgd2lkdGg6IDUwMHB4O1xufVxuXG4uZm90b3JhbWFfX3N0YWdlX19mcmFtZXtcbiAgICBoZWlnaHQ6IDUwMHB4OyBcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cblxuLmZvdG9yYW1hLWl0ZW17XG4gICAgbWFyZ2luOiBhdXRvO1xufSBcblxuLmZvdG9yYW1hX193cmFwe1xuICAgIHdpZHRoOiA1MDBweDsgXG4gICAgbWF4LXdpZHRoOiBpbmhlcml0OyBcbiAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG4gICAgQG1lZGlhKG1heC13aWR0aDo3NjhweCl7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG59XG5cbi5nYWxsZXJ5LXBsYWNlaG9sZGVye1xuICAgIG1hcmdpbjogYXV0bztcbn1cblxuLy9mdWxscGFnZSBvcGFjaXR5XG4uZm90b3JhbWEtLWZ1bGxzY3JlZW57XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCAsMC42KTsgXG5cbiAgICAuZm90b3JhbWFfX3N0YWdle1xuICAgICAgICBoZWlnaHQ6IDUwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDM1JTtcbiAgICB9XG59XG5cbi5mb3RvcmFtYS0tZnVsbHNjcmVlbiAuZm90b3JhbWFfX3dyYXB7XG4gICAgbWFyZ2luOiBhdXRvO1xufVxuXG4uZm90b3JhbWFfX2Fyci0tZGlzYWJsZWR7XG4gICAgb3BhY2l0eTogMDtcbn1cblxuLmZvdG9yYW1hX19zdGFnZV9fZnJhbWUgLmZvdG9yYW1hX19pbWd7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2NjYztcbiAgICBoZWlnaHQ6IGF1dG87IFxuICAgIHdpZHRoOiBhdXRvO1xuICAgIHRvcDogNDAlO1xuXG4gICAgQG1lZGlhKG1heC13aWR0aDoxMTE1cHgpe1xuICAgICAgICB0b3A6IDMwJTtcbiAgICB9XG5cbiAgICBAbWVkaWEobWF4LXdpZHRoOjEwMjRweCl7XG4gICAgICAgIHRvcDogMzAlO1xuICAgIH1cblxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KXtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDogNDgwcHgpe1xuICAgICAgICB0b3A6IDQwJTtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogMzc1cHgpe1xuICAgICAgICB0b3A6IDMwJTtcbiAgICB9XG59XG5cbi5mb3RvcmFtYV9fdGh1bWItYm9yZGVye1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG59XG5cbi5mb3RvcmFtYV9fbmF2X19mcmFtZS0tdGh1bWJ7XG4gICAgb3BhY2l0eTogMC4zO1xuXG4gICAgJjpob3ZlcntcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbi5mb3RvcmFtYV9fYWN0aXZle1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5mb3RvcmFtYV9fYWN0aXZlIC5mb3RvcmFtYV9fZG90e1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG59XG5cbi5mb3RvcmFtYV9fZG90e1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNHB4OyBcbiAgICB3aWR0aDogMTRweDtcbn1cblxuXG4vL3Jldmlld3Ncbi5wcm9kdWN0LXJldmlld3Mtc3VtbWFyeSAucmV2aWV3cy1hY3Rpb25zIGF7XG4gICAgZm9udC1zdHlsZTogaXRhbGljOyBcbiAgICBjb2xvcjogI2NjYztcblxuICAgICY6aG92ZXJ7XG4gICAgICAgIGNvbG9yOiAjY2NjO1xuICAgIH1cbn1cblxuXG4vL1RhYnMgb24gcHJvZHVjdCB2aWV3XG5cbi5wcm9kdWN0LmluZm8uZGV0YWlsZWR7XG4gICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG5cbiAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4tc20tbWluIC0gMSl7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbn1cblxuXG4ucHJvZHVjdC5kYXRhLml0ZW1zID4gLml0ZW0udGl0bGUsIFxuLnByb2R1Y3QuZGF0YS5pdGVtcyA+IC5pdGVtLmNvbnRlbnR7XG4gICAgQG1lZGlhKG1heC13aWR0aDokc2NyZWVuLXNtLW1pbiAtIDEpe1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG5cbi5wcm9kdWN0LmRhdGEuaXRlbXMgPiAuaXRlbS50aXRsZSA+IC5zd2l0Y2h7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7IGNvbG9yOiByZ2JhKDY2LDY2LDY2ICwxKTsgYm9yZGVyOiBub25lO1xufVxuXG4ucHJvZHVjdC5kYXRhLml0ZW1zID4gLml0ZW0udGl0bGUuYWN0aXZlID4gLnN3aXRjaHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsgXG4gICAgY29sb3I6IHJnYmEoNjYsNjYsNjYgLDEpO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1pbiAtIDEpe1xuICAgICAgICBwYWRkaW5nOiAwOyBcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuXG4vL25ldyB0YWIgZm9yIHJlbGF0ZWQgcHJvZHVjdFxuLmNvbHVtbi5tYWluIC5wcm9kdWN0LWl0ZW0uY29tcGxlbWVudGFyeS1pdGVte1xuICAgIHBhZGRpbmctbGVmdDogMDsgXG4gICAgcGFkZGluZzogMyU7XG4gICAgd2lkdGg6IDMwMHB4O1xuXG4gICAgQG1lZGlhKG1heC13aWR0aDoxMDAwcHgpe1xuICAgICAgICB3aWR0aDogMjEwcHg7XG4gICAgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDo5MDBweCl7XG4gICAgICAgIHdpZHRoOiAxOTBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4tc20tbWluIC0gMSl7XG4gICAgICAgIHdpZHRoOiAxODBweDtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDokc2NyZWVuLXhzLW1pbil7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICB9XG59XG5cbi5jb2x1bW4ubWFpbiAucHJvZHVjdC1pdGVtcy5jb21wbGVtZW50YXJ5LWl0ZW1ze1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgQG1lZGlhKG1heC13aWR0aDogJHNjcmVlbi1zbS1taW4pe1xuICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgIH1cblxuICAgIGxpe1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsgXG4gICAgICAgIG1hcmdpbi1sZWZ0OjElOyBcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxJTsgXG4gICAgICAgIG1hcmdpbi10b3A6IC41JTtcbiAgICB9XG59XG5cbi5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWl0ZW17XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjYzsgXG4gICAgYm9yZGVyLXJhZGl1czogNnB4OyBcblxuICAgIC5wcm9kdWN0LWl0ZW0taW5mbyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGltZ3tcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IFxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgc3Ryb25ne1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsgXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyBcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyBcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuN3JlbTsgXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4OyBcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDJweDsgXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMTBweDsgXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwJTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByaWNlLWJveHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIycHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJpY2V7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7IFxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgYS5idG57XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7IFxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogaW5oZXJpdDsgXG4gICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDIwcHg7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGF7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6dmlzaXRlZHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmFtZS1jb21wbGVtZW50YXJ5e1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBtYXJnaW4tbGVmdDogNSU7IFxuICAgIHBhZGRpbmctdG9wOiAzMHB4OyBcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDNweCByZWQ7XG4gICAgd2lkdGg6IDI1MHB4O1xuXG4gICAgQG1lZGlhKG1heC13aWR0aDogNDgwcHgpe1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxufVxuXG4uaG9tZXBhZ2Utc2VjdGlvbi5jb21wbGVtZW50YXJ5e1xuICAgIGJhY2tncm91bmQ6IHdoaXRlOyBcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC5jb21wbGVtZW50YXJ5e1xuICAgIGJhY2tncm91bmQ6IHdoaXRlOyBcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQG1lZGlhKG1heC13aWR0aDokc2NyZWVuLXhzLW1pbil7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBpbmhlcml0O1xuICAgICAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuXG4gICAgICAgIC5jb21wbGVtZW50YXJ5LWl0ZW1ze1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDsgXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIH1cblxuICAgICAgICAuaG9tZXBhZ2Utc2VjdGlvbl9wcm9kdWN0LWl0ZW06bnRoLWxhc3QtY2hpbGQoMyl7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9ICAgXG5cbiAgICAgICAgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC1pdGVtOm50aC1sYXN0LWNoaWxkKDIpe1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ob21lcGFnZS1zZWN0aW9uX3Byb2R1Y3QtaXRlbTpudGgtbGFzdC1jaGlsZCgxKXtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvY2stY29tcGxlbWVudGFyeXtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmhvbWVwYWdlLXNlY3Rpb25fcHJvZHVjdC1pdGVte1xuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbil7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy9yZXNldCBtYWdlbnRvIGZvciB0YWIgY29tcGxlbWVudGFyeVxuLmNvbHVtbi5tYWluIC5ibG9jazpsYXN0LWNoaWxke1xuICAgIHdpZHRoOiAxMDAlOyBcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cblxuXG4vL01hZ2VudG9cbi5wcm9kdWN0LmRhdGEuaXRlbXMgPiAuaXRlbS50aXRsZTpub3QoLmRpc2FibGVkKSA+IC5zd2l0Y2g6YWN0aXZlLCBcbi5wcm9kdWN0LmRhdGEuaXRlbXMgPiAuaXRlbS50aXRsZS5hY3RpdmUgPiAuc3dpdGNoLCBcbi5wcm9kdWN0LmRhdGEuaXRlbXMgPiAuaXRlbS50aXRsZS5hY3RpdmUgPiAuc3dpdGNoOmZvY3VzLCBcbi5wcm9kdWN0LmRhdGEuaXRlbXMgPiAuaXRlbS50aXRsZS5hY3RpdmUgPiAuc3dpdGNoOmhvdmVye1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG5cbi8vSW5mbyBwcm9kdWN0XG5cbi5wYWdlLWxheW91dC0xY29sdW1uIC5wcm9kdWN0LWluZm8tbWFpbntcbiAgICB3aWR0aDogNjAlO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6NzY4cHgpe1xuICAgICAgICB3aWR0aDogODAlO1xuICAgIH1cbn1cblxuLnByb2R1Y3QtaW5mby1tYWlue1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIEBtZWRpYShtYXgtd2lkdGg6JHNjcmVlbi1zbS1taW4pe1xuICAgICAgICBwYWRkaW5nOiAyJTtcbiAgICB9XG5cbiAgICAucHJvZHVjdC5hdHRyaWJ1dGUubmFtZXtcbiAgICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7IFxuICAgICAgICB3aWR0aDogNjUlO1xuICAgICAgICBmb250LXdlaWdodDogNjAwOyBcbiAgICAgICAgZm9udC1zaXplOiAzLjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDo5NDBweCl7XG4gICAgICAgICAgICB3aWR0aDogNjAlOyBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4zcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDo3NjhweCl7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgXG4gICAgICAgIH1cblxuICAgICAgICBzdHJvbmd7XG4gICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdC5hdHRyaWJ1dGUub3ZlcnZpZXd7XG4gICAgICAgIHdpZHRoOiA3MCU7XG5cbiAgICAgICAgc3Ryb25ne1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDo0ODBweCl7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdG9jay5hdmFpbGFibGV7XG4gICAgICAgIGNvbG9yOiByZ2JhKDQ2LCAxMjUsIDUwLCAwLjcpO1xuICAgIH1cblxuICAgIC5icmFuZC1sYWJlbHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IFxuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICY6YWZ0ZXJ7IFxuICAgICAgICAgICAgY29udGVudDogJyc7IFxuICAgICAgICAgICAgaGVpZ2h0OiA0cHg7IFxuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5icmFuZC1pbWFnZXtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IFxuICAgICAgICByaWdodDogNjBweDsgXG4gICAgICAgIHRvcDogMDtcblxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjc2OHB4KXtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBpbWd7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogMTUwcHg7IFxuICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWluZm8tcHJpY2V7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5wcmljZS1ib3h7XG4gICAgICAgIC5wcmljZXtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuIHtcbiAgICAgICAgJjp2aXNpdGVkIHtcbiAgICAgICAgICAgIGNvbG9yOiRjb2xvci1wcmltYXJ5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfY2FsbC10b3tcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIC5idG57XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAmOnZpc2l0ZWQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGVydGlhcnk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59ICIsIi8vQmFzZSBjb250YWluZXIgZm9yIHN0YXRpYyBjbXMgcGFnZXNcbi5jb250YWluZXItc3RhdGljX3BhZ2Uge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgaGVpZ2h0OiAxMDAlOyBcbiAgICB3aWR0aDogMTAwJTsgXG4gICAgbWFyZ2luOiBhdXRvOyBcbiAgICBwYWRkaW5nOiAwcHg7IFxuXG4gICAgQG1lZGlhKG1heC13aWR0aDokc2NyZWVuLXNtLW1pbikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MSU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MSU7XG4gICAgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDokc2NyZWVuLXhzLW1pbil7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgIH1cblxuICAgIGgxe1xuICAgICAgICBmb250LXNpemU6IDNyZW07IFxuICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7IFxuICAgICAgICB3aWR0aDogODAlOyBcbiAgICAgICAgbWFyZ2luOiBhdXRvOyBcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgXG4gICAgICAgIHBhZGRpbmctdG9wOiAxNnB4OyBcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gICAgICAgIHRleHQtc2hhZG93OiAxcHggMXB4ICNjY2M7XG5cbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDokc2NyZWVuLXNtLW1pbil7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgaDJ7XG4gICAgICAgIGZvbnQtc2l6ZTogMi41cmVtOyBcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmF5LWRhcms7IFxuICAgICAgICB3aWR0aDogODAlOyBcbiAgICAgICAgcGFkZGluZzogMTZweDsgXG4gICAgICAgIG1hcmdpbjogYXV0bzsgXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiRzY3JlZW4tc20tbWluKXtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuc2ltcGxlLWJsb2NrX3RleHR7XG4gICAgICAgIHdpZHRoOiAxMDAlOyBcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyOHB4OyBcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcblxuICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBoMXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTsgXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7IFxuICAgICAgICAgICAgd2lkdGg6IDgwJTsgXG4gICAgICAgICAgICBtYXJnaW46IGF1dG87IFxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTZweDsgXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgIHRleHQtc2hhZG93OiAxcHggMXB4ICNjY2M7XG5cbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6JHNjcmVlbi1zbS1taW4pe1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBoMntcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtOyBcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JheS1kYXJrOyBcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7IFxuICAgICAgICAgICAgcGFkZGluZzogMTZweCA4cHg7IFxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvOyBcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6JHNjcmVlbi1zbS1taW4pe1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43cmVtOyBcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7IFxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvOyBcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweDtcblxuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDokc2NyZWVuLXNtLW1pbil7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuLmFkZHJlc3N7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwOyBcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgfVxuXG4gICAgICAgIGF7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyYXktZGFyazsgXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjpob3ZlciwgXG4gICAgICAgICAgICAmOmZvY3Vze1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7IFxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjp2aXNpdGVke1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JheS1kYXJrZXI7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLy9ibG9jayB0ZXh0IHdpdGggaW1hZ2VcbiAgICAgICAgLndyYXAtbGVmdCB7IFxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgcHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmxlZnQgeyBcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAlOyBcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDsgXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4OyBcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6MTEwMHB4KXtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogODAlOyBcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6MTAyNHB4KXtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjQ4MHB4KXtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTklOyBcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJpZ2h0IHsgXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwJTsgXG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyBcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IFxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDoxMTAwcHgpe1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTsgXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6NDgwcHgpe1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTsgXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5OSU7IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAud3JhcC1yaWdodCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgXG4gICAgICAgICAgICBtYXJnaW46IGF1dG87IFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgXG4gICAgICAgICAgICAubGVmdCB7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7IFxuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyBcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IFxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDoxMTAwcHgpe1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTsgXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6NDgwcHgpe1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTsgXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5OSU7IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5yaWdodCB7IFxuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjExMDBweCl7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lOyBcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDgwJTsgXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjQ4MHB4KXtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IHdpZHRoOiA5OSU7IG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vc3BlY2lhbCBjbGFzcyBmb3Igc2F2IG1lY2FiYW1cbiAgICAgICAgLmNvbnRhaW5lci1ibG9jay1zYXZ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgICAgIHB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7IFxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250YWluZXItYmxvY2stc2F2X2xlZnR7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTsgXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjc2OHB4KXtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTAlOyBcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC53cmFwLXNhdntcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJzsgXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5sZWZ0e1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwJTsgXG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5yaWdodHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7IFxuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyBcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29udGFpbmVyLWJsb2NrLXNhdl9yaWdodHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDAlOyBcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjc2OHB4KXtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTAlOyBcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC53cmFwLXNhdntcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJzsgXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5sZWZ0e1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwJTsgXG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDo3NjhweCl7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5yaWdodHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7IFxuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyBcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDo3NjhweCl7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLy9zcGVjaWFsIGJsb2NrIGZvciBTaG93cm9vbVxuXG4gICAgICAgIC5zaG93cm9vbS1sZWZ0e1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IFxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDo3NjhweCl7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7IFxuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRlbnRfc2hvd3Jvb20tbGVmdHtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTAlOyBcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjc2OHB4KXtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDJ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY29udGVudF9zaG93cm9vbS1sZWZ0LXBpY3tcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsgXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcblxuICAgICAgICAgICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87IFxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2hvd3Jvb20tcmlnaHR7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IFxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDo3NjhweCl7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7IFxuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bzsgXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAuY29udGVudF9zaG93cm9vbS1yaWdodHtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTAlO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDo3NjhweCl7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jb250ZW50X3Nob3dyb29tLXJpZ2h0LXBpY3tcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwJTsgXG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jb250ZW50X3Nob3dyb29tLXJpZ2h0LXRleHR7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7IFxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgcHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7IFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL2RlZmF1bHQgY29udGFpbmVyIGZvcm1cbiAgICAuY29udGFpbmVyLWZvcm17XG4gICAgICAgIHdpZHRoOiA2MCU7IFxuICAgICAgICBtYXJnaW46IGF1dG87IFxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6JHNjcmVlbi1zbS1taW4pe1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0e1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL2NvbnRhaW5lciBmb3IgR21hcFxuICAgIC5wYWdlLXN0b3JlX19tYXB7XG4gICAgICAgIHdpZHRoOiA2MCU7IFxuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIG1hcmdpbi1ib3R0b206NDZweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6JHNjcmVlbi1zbS1taW4pe1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wYWdlLXN0b3JlX19tYXAtaWZyYW1le1xuICAgICAgICAgICAgI21hcHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA0MDBweDsgXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmcmFtZXtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDsgXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4OyBcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy9SZXNldHNcblxuLmZpZWxkc2V0ID4gLmZpZWxkOm5vdCguY2hvaWNlKSA+IC5sYWJlbHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufSJdfQ== */
