@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.5.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@import url(daterangepicker.css);
@media print, screen and (min-width: 40em) {
  .reveal, .reveal.tiny, .reveal.small, .reveal.large {
    right: auto;
    left: auto;
    margin: 0 auto; } }

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

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

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

a {
  background-color: transparent; }

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

b,
strong {
  font-weight: bolder; }

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

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

img {
  border-style: none; }

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

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
[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 {
  padding: 0.35em 0.75em 0.625em; }

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

progress {
  vertical-align: baseline; }

textarea {
  overflow: auto; }

[type="checkbox"],
[type="radio"] {
  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-decoration {
  -webkit-appearance: none; }

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

details {
  display: block; }

summary {
  display: list-item; }

template {
  display: none; }

[hidden] {
  display: none; }

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

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

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

body {
  margin: 0;
  padding: 0;
  background: #fefefe;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

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

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

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

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

button {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1;
  cursor: auto; }
  [data-whatinput='mouse'] button {
    outline: 0; }

pre {
  overflow: auto; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; }

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

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

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

p {
  margin-bottom: 1rem;
  font-size: inherit;
  line-height: 1.6;
  text-rendering: optimizeLegibility; }

em,
i {
  font-style: italic;
  line-height: inherit; }

strong,
b {
  font-weight: bold;
  line-height: inherit; }

small {
  font-size: 80%;
  line-height: inherit; }

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-style: normal;
  font-weight: normal;
  color: inherit;
  text-rendering: optimizeLegibility; }
  h1 small, .h1 small,
  h2 small, .h2 small,
  h3 small, .h3 small,
  h4 small, .h4 small,
  h5 small, .h5 small,
  h6 small, .h6 small {
    line-height: 0;
    color: #cacaca; }

h1, .h1 {
  font-size: 1.5rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h2, .h2 {
  font-size: 1.25rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h3, .h3 {
  font-size: 1.1875rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h4, .h4 {
  font-size: 1.125rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h5, .h5 {
  font-size: 1.0625rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h6, .h6 {
  font-size: 1rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

@media print, screen and (min-width: 40em) {
  h1, .h1 {
    font-size: 3rem; }
  h2, .h2 {
    font-size: 2.5rem; }
  h3, .h3 {
    font-size: 1.9375rem; }
  h4, .h4 {
    font-size: 1.5625rem; }
  h5, .h5 {
    font-size: 1.25rem; }
  h6, .h6 {
    font-size: 1rem; } }

a {
  line-height: inherit;
  color: #1779ba;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #1468a0; }
  a img {
    border: 0; }

hr {
  clear: both;
  max-width: 75rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #cacaca;
  border-left: 0; }

ul,
ol,
dl {
  margin-bottom: 1rem;
  list-style-position: outside;
  line-height: 1.6; }

li {
  font-size: inherit; }

ul {
  margin-left: 1.25rem;
  list-style-type: disc; }

ol {
  margin-left: 1.25rem; }

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

dl {
  margin-bottom: 1rem; }
  dl dt {
    margin-bottom: 0.3rem;
    font-weight: bold; }

blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #cacaca; }
  blockquote, blockquote p {
    line-height: 1.6;
    color: #8a8a8a; }

cite {
  display: block;
  font-size: 0.8125rem;
  color: #8a8a8a; }
  cite:before {
    content: "— "; }

abbr, abbr[title] {
  border-bottom: 1px dotted #0a0a0a;
  cursor: help;
  text-decoration: none; }

figure {
  margin: 0; }

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #cacaca;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a; }

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #0a0a0a; }

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #8a8a8a; }

.lead {
  font-size: 125%;
  line-height: 1.6; }

.stat {
  font-size: 2.5rem;
  line-height: 1; }
  p + .stat {
    margin-top: -1rem; }

ul.no-bullet, ol.no-bullet {
  margin-left: 0;
  list-style: none; }

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left; }
  .medium-text-right {
    text-align: right; }
  .medium-text-center {
    text-align: center; }
  .medium-text-justify {
    text-align: justify; } }

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left; }
  .large-text-right {
    text-align: right; }
  .large-text-center {
    text-align: center; }
  .large-text-justify {
    text-align: justify; } }

.show-for-print {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: black !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #8a8a8a;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .print-break-inside {
    page-break-inside: auto; } }

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 1em;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: inherit;
  font-size: 0.9rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #1779ba;
  color: #fefefe; }
  [data-whatinput='mouse'] .button {
    outline: 0; }
  .button:hover, .button:focus {
    background-color: #14679e;
    color: #fefefe; }
  .button.tiny {
    font-size: 0.6rem; }
  .button.small {
    font-size: 0.75rem; }
  .button.large {
    font-size: 1.25rem; }
  .button.expanded {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .button.primary {
    background-color: #1779ba;
    color: #fefefe; }
    .button.primary:hover, .button.primary:focus {
      background-color: #126195;
      color: #fefefe; }
  .button.secondary {
    background-color: #767676;
    color: #fefefe; }
    .button.secondary:hover, .button.secondary:focus {
      background-color: #5e5e5e;
      color: #fefefe; }
  .button.success {
    background-color: #3adb76;
    color: #0a0a0a; }
    .button.success:hover, .button.success:focus {
      background-color: #22bb5b;
      color: #0a0a0a; }
  .button.warning {
    background-color: #ffae00;
    color: #0a0a0a; }
    .button.warning:hover, .button.warning:focus {
      background-color: #cc8b00;
      color: #0a0a0a; }
  .button.alert {
    background-color: #cc4b37;
    color: #fefefe; }
    .button.alert:hover, .button.alert:focus {
      background-color: #a53b2a;
      color: #fefefe; }
  .button.disabled, .button[disabled] {
    opacity: 0.25;
    cursor: not-allowed; }
    .button.disabled, .button.disabled:hover, .button.disabled:focus, .button[disabled], .button[disabled]:hover, .button[disabled]:focus {
      background-color: #1779ba;
      color: #fefefe; }
    .button.disabled.primary, .button[disabled].primary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.primary, .button.disabled.primary:hover, .button.disabled.primary:focus, .button[disabled].primary, .button[disabled].primary:hover, .button[disabled].primary:focus {
        background-color: #1779ba;
        color: #fefefe; }
    .button.disabled.secondary, .button[disabled].secondary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.secondary, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
        background-color: #767676;
        color: #fefefe; }
    .button.disabled.success, .button[disabled].success {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.success, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success, .button[disabled].success:hover, .button[disabled].success:focus {
        background-color: #3adb76;
        color: #0a0a0a; }
    .button.disabled.warning, .button[disabled].warning {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.warning, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning, .button[disabled].warning:hover, .button[disabled].warning:focus {
        background-color: #ffae00;
        color: #0a0a0a; }
    .button.disabled.alert, .button[disabled].alert {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.alert, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert, .button[disabled].alert:hover, .button[disabled].alert:focus {
        background-color: #cc4b37;
        color: #fefefe; }
  .button.hollow {
    border: 1px solid #1779ba;
    color: #1779ba; }
    .button.hollow, .button.hollow:hover, .button.hollow:focus {
      background-color: transparent; }
    .button.hollow.disabled, .button.hollow.disabled:hover, .button.hollow.disabled:focus, .button.hollow[disabled], .button.hollow[disabled]:hover, .button.hollow[disabled]:focus {
      background-color: transparent; }
    .button.hollow:hover, .button.hollow:focus {
      border-color: #0c3d5d;
      color: #0c3d5d; }
      .button.hollow:hover.disabled, .button.hollow:hover[disabled], .button.hollow:focus.disabled, .button.hollow:focus[disabled] {
        border: 1px solid #1779ba;
        color: #1779ba; }
    .button.hollow.primary {
      border: 1px solid #1779ba;
      color: #1779ba; }
      .button.hollow.primary:hover, .button.hollow.primary:focus {
        border-color: #0c3d5d;
        color: #0c3d5d; }
        .button.hollow.primary:hover.disabled, .button.hollow.primary:hover[disabled], .button.hollow.primary:focus.disabled, .button.hollow.primary:focus[disabled] {
          border: 1px solid #1779ba;
          color: #1779ba; }
    .button.hollow.secondary {
      border: 1px solid #767676;
      color: #767676; }
      .button.hollow.secondary:hover, .button.hollow.secondary:focus {
        border-color: #3b3b3b;
        color: #3b3b3b; }
        .button.hollow.secondary:hover.disabled, .button.hollow.secondary:hover[disabled], .button.hollow.secondary:focus.disabled, .button.hollow.secondary:focus[disabled] {
          border: 1px solid #767676;
          color: #767676; }
    .button.hollow.success {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.hollow.success:hover, .button.hollow.success:focus {
        border-color: #157539;
        color: #157539; }
        .button.hollow.success:hover.disabled, .button.hollow.success:hover[disabled], .button.hollow.success:focus.disabled, .button.hollow.success:focus[disabled] {
          border: 1px solid #3adb76;
          color: #3adb76; }
    .button.hollow.warning {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.hollow.warning:hover, .button.hollow.warning:focus {
        border-color: #805700;
        color: #805700; }
        .button.hollow.warning:hover.disabled, .button.hollow.warning:hover[disabled], .button.hollow.warning:focus.disabled, .button.hollow.warning:focus[disabled] {
          border: 1px solid #ffae00;
          color: #ffae00; }
    .button.hollow.alert {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.hollow.alert:hover, .button.hollow.alert:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.hollow.alert:hover.disabled, .button.hollow.alert:hover[disabled], .button.hollow.alert:focus.disabled, .button.hollow.alert:focus[disabled] {
          border: 1px solid #cc4b37;
          color: #cc4b37; }
  .button.clear {
    border: 1px solid #1779ba;
    color: #1779ba; }
    .button.clear, .button.clear:hover, .button.clear:focus {
      background-color: transparent; }
    .button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
      background-color: transparent; }
    .button.clear:hover, .button.clear:focus {
      border-color: #0c3d5d;
      color: #0c3d5d; }
      .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus.disabled, .button.clear:focus[disabled] {
        border: 1px solid #1779ba;
        color: #1779ba; }
    .button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear:hover, .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus, .button.clear:focus.disabled, .button.clear:focus[disabled] {
      border-color: transparent; }
    .button.clear.primary {
      border: 1px solid #1779ba;
      color: #1779ba; }
      .button.clear.primary:hover, .button.clear.primary:focus {
        border-color: #0c3d5d;
        color: #0c3d5d; }
        .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
          border: 1px solid #1779ba;
          color: #1779ba; }
      .button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary:hover, .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus, .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
        border-color: transparent; }
    .button.clear.secondary {
      border: 1px solid #767676;
      color: #767676; }
      .button.clear.secondary:hover, .button.clear.secondary:focus {
        border-color: #3b3b3b;
        color: #3b3b3b; }
        .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
          border: 1px solid #767676;
          color: #767676; }
      .button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary:hover, .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus, .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
        border-color: transparent; }
    .button.clear.success {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.clear.success:hover, .button.clear.success:focus {
        border-color: #157539;
        color: #157539; }
        .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
          border: 1px solid #3adb76;
          color: #3adb76; }
      .button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success:hover, .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus, .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
        border-color: transparent; }
    .button.clear.warning {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.clear.warning:hover, .button.clear.warning:focus {
        border-color: #805700;
        color: #805700; }
        .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
          border: 1px solid #ffae00;
          color: #ffae00; }
      .button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning:hover, .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus, .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
        border-color: transparent; }
    .button.clear.alert {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.clear.alert:hover, .button.clear.alert:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
          border: 1px solid #cc4b37;
          color: #cc4b37; }
      .button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert:hover, .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus, .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
        border-color: transparent; }
  .button.dropdown::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #fefefe transparent transparent;
    position: relative;
    top: 0.4em;
    display: inline-block;
    float: right;
    margin-left: 1em; }
  .button.dropdown.hollow::after, .button.dropdown.clear::after {
    border-top-color: #1779ba; }
  .button.dropdown.hollow.primary::after, .button.dropdown.clear.primary::after {
    border-top-color: #1779ba; }
  .button.dropdown.hollow.secondary::after, .button.dropdown.clear.secondary::after {
    border-top-color: #767676; }
  .button.dropdown.hollow.success::after, .button.dropdown.clear.success::after {
    border-top-color: #3adb76; }
  .button.dropdown.hollow.warning::after, .button.dropdown.clear.warning::after {
    border-top-color: #ffae00; }
  .button.dropdown.hollow.alert::after, .button.dropdown.clear.alert::after {
    border-top-color: #cc4b37; }
  .button.arrow-only::after {
    top: -0.1em;
    float: none;
    margin-left: 0; }

a.button:hover, a.button:focus {
  text-decoration: none; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  [type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
  textarea:focus {
    outline: none;
    border: 1px solid #8a8a8a;
    background-color: #fefefe;
    box-shadow: 0 0 5px #cacaca;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }

textarea {
  max-width: 100%; }
  textarea[rows] {
    height: auto; }

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #e6e6e6;
  cursor: not-allowed; }

[type='submit'],
[type='button'] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0; }

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

::-webkit-input-placeholder {
  color: #cacaca; }

:-ms-input-placeholder {
  color: #cacaca; }

::placeholder {
  color: #cacaca; }

[type='file'],
[type='checkbox'],
[type='radio'] {
  margin: 0 0 1rem; }

[type='checkbox'] + label,
[type='radio'] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0; }
  [type='checkbox'] + label[for],
  [type='radio'] + label[for] {
    cursor: pointer; }

label > [type='checkbox'],
label > [type='radio'] {
  margin-right: 0.5rem; }

[type='file'] {
  width: 100%; }

label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.8;
  color: #0a0a0a; }
  label.middle {
    margin: 0 0 1rem;
    padding: 0.5625rem 0; }

.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #0a0a0a; }

.input-group {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .input-group > :first-child, .input-group > :first-child.input-group-button > * {
    border-radius: 0 0 0 0; }
  .input-group > :last-child, .input-group > :last-child.input-group-button > * {
    border-radius: 0 0 0 0; }

.input-group-label, .input-group-field, .input-group-button, .input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  margin: 0;
  white-space: nowrap; }

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #cacaca;
  background: #e6e6e6;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .input-group-label:first-child {
    border-right: 0; }
  .input-group-label:last-child {
    border-left: 0; }

.input-group-field {
  border-radius: 0;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  min-width: 0; }

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button,
  .input-group-button label {
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
                -ms-grid-row-align: stretch;
            align-self: stretch;
    height: auto;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 1rem; }

fieldset {
  margin: 0;
  padding: 0;
  border: 0; }

legend {
  max-width: 100%;
  margin-bottom: 0.5rem; }

.fieldset {
  margin: 1.125rem 0;
  padding: 1.25rem;
  border: 1px solid #cacaca; }
  .fieldset legend {
    margin: 0;
    margin-left: -0.1875rem;
    padding: 0 0.1875rem; }

select {
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  @media screen and (min-width: 0\0) {
    select {
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } }
  select:focus {
    outline: none;
    border: 1px solid #8a8a8a;
    background-color: #fefefe;
    box-shadow: 0 0 5px #cacaca;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  select:disabled {
    background-color: #e6e6e6;
    cursor: not-allowed; }
  select::-ms-expand {
    display: none; }
  select[multiple] {
    height: auto;
    background-image: none; }

.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #f9ecea; }
  .is-invalid-input:not(:focus)::-webkit-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus):-ms-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus)::placeholder {
    color: #cc4b37; }

.is-invalid-label {
  color: #cc4b37; }

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: bold;
  color: #cc4b37; }
  .form-error.is-visible {
    display: block; }

.accordion {
  margin-left: 0;
  background: #fefefe;
  list-style-type: none; }
  .accordion[disabled] .accordion-title {
    cursor: not-allowed; }

.accordion-item:first-child > :first-child {
  border-radius: 0 0 0 0; }

.accordion-item:last-child > :last-child {
  border-radius: 0 0 0 0; }

.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #1779ba; }
  :last-child:not(.is-active) > .accordion-title {
    border-bottom: 1px solid #e6e6e6;
    border-radius: 0 0 0 0; }
  .accordion-title:hover, .accordion-title:focus {
    background-color: #e6e6e6; }
  .accordion-title::before {
    position: absolute;
    top: 50%;
    right: 1rem;
    margin-top: -0.5rem;
    content: '+'; }
  .is-active > .accordion-title::before {
    content: '\2013'; }

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

.accordion-menu li {
  width: 100%; }

.accordion-menu a {
  padding: 0.7rem 1rem; }

.accordion-menu .is-accordion-submenu a {
  padding: 0.7rem 1rem; }

.accordion-menu .nested.is-accordion-submenu {
  margin-right: 0;
  margin-left: 1rem; }

.accordion-menu.align-right .nested.is-accordion-submenu {
  margin-right: 1rem;
  margin-left: 0; }

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {
  position: relative; }
  .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #fefefe transparent transparent;
    position: absolute;
    top: 50%;
    margin-top: -3px;
    right: 1rem; }

.accordion-menu.align-left .is-accordion-submenu-parent > a::after {
  right: 1rem;
  left: auto; }

.accordion-menu.align-right .is-accordion-submenu-parent > a::after {
  right: auto;
  left: 1rem; }

.accordion-menu .is-accordion-submenu-parent[aria-expanded='true'] > a::after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%; }

.is-accordion-submenu-parent {
  position: relative; }

.has-submenu-toggle > a {
  margin-right: 40px; }

.submenu-toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  cursor: pointer; }
  .submenu-toggle::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #fefefe transparent transparent;
    top: 0;
    bottom: 0;
    margin: auto; }

.submenu-toggle[aria-expanded='true']::after {
  -webkit-transform: scaleY(-1);
      -ms-transform: scaleY(-1);
          transform: scaleY(-1);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%; }

.submenu-toggle-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.badge {
  display: inline-block;
  min-width: 2.1em;
  padding: 0.3em;
  border-radius: 50%;
  font-size: 0.6rem;
  text-align: center;
  background: #1779ba;
  color: #fefefe; }
  .badge.primary {
    background: #1779ba;
    color: #fefefe; }
  .badge.secondary {
    background: #767676;
    color: #fefefe; }
  .badge.success {
    background: #3adb76;
    color: #0a0a0a; }
  .badge.warning {
    background: #ffae00;
    color: #0a0a0a; }
  .badge.alert {
    background: #cc4b37;
    color: #fefefe; }

.breadcrumbs {
  margin: 0 0 1rem 0;
  list-style: none; }
  .breadcrumbs::before, .breadcrumbs::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .breadcrumbs::after {
    clear: both; }
  .breadcrumbs li {
    float: left;
    font-size: 0.6875rem;
    color: #0a0a0a;
    cursor: default;
    text-transform: uppercase; }
    .breadcrumbs li:not(:last-child)::after {
      position: relative;
      margin: 0 0.75rem;
      opacity: 1;
      content: "/";
      color: #cacaca; }
  .breadcrumbs a {
    color: #1779ba; }
    .breadcrumbs a:hover {
      text-decoration: underline; }
  .breadcrumbs .disabled {
    color: #cacaca;
    cursor: not-allowed; }

.button-group {
  margin-bottom: 1rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .button-group::before, .button-group::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .button-group::after {
    clear: both; }
  .button-group .button {
    margin: 0;
    margin-right: 1px;
    margin-bottom: 1px;
    font-size: 0.9rem;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
    .button-group .button:last-child {
      margin-right: 0; }
  .button-group.tiny .button {
    font-size: 0.6rem; }
  .button-group.small .button {
    font-size: 0.75rem; }
  .button-group.large .button {
    font-size: 1.25rem; }
  .button-group.expanded .button {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .button-group.primary .button {
    background-color: #1779ba;
    color: #fefefe; }
    .button-group.primary .button:hover, .button-group.primary .button:focus {
      background-color: #126195;
      color: #fefefe; }
  .button-group.secondary .button {
    background-color: #767676;
    color: #fefefe; }
    .button-group.secondary .button:hover, .button-group.secondary .button:focus {
      background-color: #5e5e5e;
      color: #fefefe; }
  .button-group.success .button {
    background-color: #3adb76;
    color: #0a0a0a; }
    .button-group.success .button:hover, .button-group.success .button:focus {
      background-color: #22bb5b;
      color: #0a0a0a; }
  .button-group.warning .button {
    background-color: #ffae00;
    color: #0a0a0a; }
    .button-group.warning .button:hover, .button-group.warning .button:focus {
      background-color: #cc8b00;
      color: #0a0a0a; }
  .button-group.alert .button {
    background-color: #cc4b37;
    color: #fefefe; }
    .button-group.alert .button:hover, .button-group.alert .button:focus {
      background-color: #a53b2a;
      color: #fefefe; }
  .button-group.stacked, .button-group.stacked-for-small, .button-group.stacked-for-medium {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%; }
      .button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child {
        margin-bottom: 0; }
    .button-group.stacked.expanded .button, .button-group.stacked-for-small.expanded .button, .button-group.stacked-for-medium.expanded .button {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
  @media print, screen and (min-width: 40em) {
    .button-group.stacked-for-small .button {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      margin-bottom: 0; } }
  @media print, screen and (min-width: 64em) {
    .button-group.stacked-for-medium .button {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      margin-bottom: 0; } }
  @media screen and (max-width: 39.99875em) {
    .button-group.stacked-for-small.expanded {
      display: block; }
      .button-group.stacked-for-small.expanded .button {
        display: block;
        margin-right: 0; } }
  @media screen and (max-width: 63.99875em) {
    .button-group.stacked-for-medium.expanded {
      display: block; }
      .button-group.stacked-for-medium.expanded .button {
        display: block;
        margin-right: 0; } }

.callout {
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-radius: 0;
  background-color: white;
  color: #0a0a0a; }
  .callout > :first-child {
    margin-top: 0; }
  .callout > :last-child {
    margin-bottom: 0; }
  .callout.primary {
    background-color: #d7ecfa;
    color: #0a0a0a; }
  .callout.secondary {
    background-color: #eaeaea;
    color: #0a0a0a; }
  .callout.success {
    background-color: #e1faea;
    color: #0a0a0a; }
  .callout.warning {
    background-color: #fff3d9;
    color: #0a0a0a; }
  .callout.alert {
    background-color: #f7e4e1;
    color: #0a0a0a; }
  .callout.small {
    padding-top: 0.5rem;
    padding-right: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 0.5rem; }
  .callout.large {
    padding-top: 3rem;
    padding-right: 3rem;
    padding-bottom: 3rem;
    padding-left: 3rem; }

.card {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-bottom: 1rem;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  background: #fefefe;
  box-shadow: none;
  overflow: hidden;
  color: #0a0a0a; }
  .card > :last-child {
    margin-bottom: 0; }

.card-divider {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
  padding: 1rem;
  background: #e6e6e6; }
  .card-divider > :last-child {
    margin-bottom: 0; }

.card-section {
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  padding: 1rem; }
  .card-section > :last-child {
    margin-bottom: 0; }

.card-image {
  min-height: 1px; }

.close-button {
  position: absolute;
  color: #8a8a8a;
  cursor: pointer; }
  [data-whatinput='mouse'] .close-button {
    outline: 0; }
  .close-button:hover, .close-button:focus {
    color: #0a0a0a; }
  .close-button.small {
    right: 0.66rem;
    top: 0.33em;
    font-size: 1.5em;
    line-height: 1; }
  .close-button, .close-button.medium {
    right: 1rem;
    top: 0.5rem;
    font-size: 2em;
    line-height: 1; }

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  [data-whatinput='mouse'] .menu li {
    outline: 0; }
  .menu a,
  .menu .button {
    line-height: 1;
    text-decoration: none;
    display: block;
    padding: 0.7rem 1rem; }
  .menu input,
  .menu select,
  .menu a,
  .menu button {
    margin-bottom: 0; }
  .menu input {
    display: inline-block; }
  .menu, .menu.horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .menu.vertical {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .menu.expanded li {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .menu.simple {
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .menu.simple li + li {
      margin-left: 1rem; }
    .menu.simple a {
      padding: 0; }
  @media print, screen and (min-width: 40em) {
    .menu.medium-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.medium-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.medium-expanded li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.medium-simple li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media print, screen and (min-width: 64em) {
    .menu.large-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.large-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.large-expanded li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.large-simple li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  .menu.nested {
    margin-right: 0;
    margin-left: 1rem; }
  .menu.icons a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-left li a {
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-left li a img,
    .menu.icon-left li a i,
    .menu.icon-left li a svg {
      margin-right: 0.25rem; }
  .menu.icon-right li a {
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-right li a img,
    .menu.icon-right li a i,
    .menu.icon-right li a svg {
      margin-left: 0.25rem; }
  .menu.icon-top li a {
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-top li a img,
    .menu.icon-top li a i,
    .menu.icon-top li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
                  -ms-grid-row-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu.icon-bottom li a {
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-bottom li a img,
    .menu.icon-bottom li a i,
    .menu.icon-bottom li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
                  -ms-grid-row-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu .is-active > a {
    background: #1779ba;
    color: #fefefe; }
  .menu .active > a {
    background: #1779ba;
    color: #fefefe; }
  .menu.align-left {
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .menu.align-right li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    .menu.align-right li .submenu li {
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu.align-right.vertical li {
    display: block;
    text-align: right; }
    .menu.align-right.vertical li .submenu li {
      text-align: right; }
  .menu.align-right .nested {
    margin-right: 1rem;
    margin-left: 0; }
  .menu.align-center li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu.align-center li .submenu li {
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu .menu-text {
    padding: 0.7rem 1rem;
    font-weight: bold;
    line-height: 1;
    color: inherit; }

.menu-centered > .menu {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .menu-centered > .menu li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu-centered > .menu li .submenu li {
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }

.no-js [data-responsive-menu] ul {
  display: none; }

.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #fefefe;
    box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe;
    content: ''; }
  .menu-icon:hover::after {
    background: #cacaca;
    box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca; }

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon.dark::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #0a0a0a;
    box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
    content: ''; }
  .menu-icon.dark:hover::after {
    background: #8a8a8a;
    box-shadow: 0 7px 0 #8a8a8a, 0 14px 0 #8a8a8a; }

.is-drilldown {
  position: relative;
  overflow: hidden; }
  .is-drilldown li {
    display: block; }
  .is-drilldown.animate-height {
    transition: height 0.5s; }

.drilldown a {
  padding: 0.7rem 1rem;
  background: #fefefe; }

.drilldown .is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #fefefe;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear; }
  .drilldown .is-drilldown-submenu.is-active {
    z-index: 1;
    display: block;
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%); }
  .drilldown .is-drilldown-submenu.is-closing {
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%); }
  .drilldown .is-drilldown-submenu a {
    padding: 0.7rem 1rem; }

.drilldown .nested.is-drilldown-submenu {
  margin-right: 0;
  margin-left: 0; }

.drilldown .drilldown-submenu-cover-previous {
  min-height: 100%; }

.drilldown .is-drilldown-submenu-parent > a {
  position: relative; }
  .drilldown .is-drilldown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba;
    position: absolute;
    top: 50%;
    margin-top: -6px;
    right: 1rem; }

.drilldown.align-left .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1779ba;
  right: 1rem;
  left: auto; }

.drilldown.align-right .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1779ba transparent transparent;
  right: auto;
  left: 1rem; }

.drilldown .js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1779ba transparent transparent;
  border-left-width: 0;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem; }

.dropdown-pane {
  position: absolute;
  z-index: 10;
  display: none;
  width: 300px;
  padding: 1rem;
  visibility: hidden;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  font-size: 1rem; }
  .dropdown-pane.is-opening {
    display: block; }
  .dropdown-pane.is-open {
    display: block;
    visibility: visible; }

.dropdown-pane.tiny {
  width: 100px; }

.dropdown-pane.small {
  width: 200px; }

.dropdown-pane.large {
  width: 400px; }

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto; }

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0; }

.dropdown.menu > li.is-dropdown-submenu-parent > a {
  position: relative;
  padding-right: 1.5rem; }

.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #1779ba transparent transparent;
  right: 5px;
  left: auto;
  margin-top: -3px; }

[data-whatinput='mouse'] .dropdown.menu a {
  outline: 0; }

.dropdown.menu > li > a {
  padding: 0.7rem 1rem; }

.dropdown.menu > li.is-active > a {
  background: transparent;
  color: #1779ba; }

.no-js .dropdown.menu ul {
  display: none; }

.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0; }

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0; }

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  top: 0;
  right: 100%;
  left: auto; }

.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%; }

.dropdown.menu.vertical > li > a::after {
  right: 14px; }

.dropdown.menu.vertical > li.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1779ba transparent transparent;
  right: auto;
  left: 5px; }

.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1779ba; }

@media print, screen and (min-width: 40em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba; } }

@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba; } }

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto; }

.is-dropdown-menu.vertical {
  width: 100px; }
  .is-dropdown-menu.vertical.align-right {
    float: right; }

.is-dropdown-submenu-parent {
  position: relative; }
  .is-dropdown-submenu-parent a::after {
    position: absolute;
    top: 50%;
    right: 5px;
    left: auto;
    margin-top: -6px; }
  .is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
    top: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 200px;
  border: 1px solid #cacaca;
  background: #fefefe; }
  .dropdown .is-dropdown-submenu a {
    padding: 0.7rem 1rem; }
  .is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
    right: 14px; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba; }
  .is-dropdown-submenu .is-dropdown-submenu {
    margin-top: -1px; }
  .is-dropdown-submenu > li {
    width: 100%; }
  .is-dropdown-submenu.js-dropdown-active {
    display: block; }

.responsive-embed,
.flex-video {
  position: relative;
  height: 0;
  margin-bottom: 1rem;
  padding-bottom: 75%;
  overflow: hidden; }
  .responsive-embed iframe,
  .responsive-embed object,
  .responsive-embed embed,
  .responsive-embed video,
  .flex-video iframe,
  .flex-video object,
  .flex-video embed,
  .flex-video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .responsive-embed.widescreen,
  .flex-video.widescreen {
    padding-bottom: 56.25%; }

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  border-radius: 0;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #1779ba;
  color: #fefefe; }
  .label.primary {
    background: #1779ba;
    color: #fefefe; }
  .label.secondary {
    background: #767676;
    color: #fefefe; }
  .label.success {
    background: #3adb76;
    color: #0a0a0a; }
  .label.warning {
    background: #ffae00;
    color: #0a0a0a; }
  .label.alert {
    background: #cc4b37;
    color: #fefefe; }

.media-object {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
  .media-object img {
    max-width: none; }
  @media screen and (max-width: 39.99875em) {
    .media-object.stack-for-small {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }

.media-object-section {
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }
  .media-object-section:first-child {
    padding-right: 1rem; }
  .media-object-section:last-child:not(:nth-child(2)) {
    padding-left: 1rem; }
  .media-object-section > :last-child {
    margin-bottom: 0; }
  @media screen and (max-width: 39.99875em) {
    .stack-for-small .media-object-section {
      padding: 0;
      padding-bottom: 1rem;
      -webkit-flex-basis: 100%;
          -ms-flex-preferred-size: 100%;
              flex-basis: 100%;
      max-width: 100%; }
      .stack-for-small .media-object-section img {
        width: 100%; } }
  .media-object-section.main-section {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }

.is-off-canvas-open {
  overflow: hidden; }

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  height: 100%;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(254, 254, 254, 0.25);
  opacity: 0;
  visibility: hidden;
  overflow: hidden; }
  .js-off-canvas-overlay.is-visible {
    opacity: 1;
    visibility: visible; }
  .js-off-canvas-overlay.is-closable {
    cursor: pointer; }
  .js-off-canvas-overlay.is-overlay-absolute {
    position: absolute; }
  .js-off-canvas-overlay.is-overlay-fixed {
    position: fixed; }

.off-canvas-wrapper {
  position: relative;
  overflow: hidden; }

.off-canvas {
  position: fixed;
  z-index: 12;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #2C3840; }
  [data-whatinput='mouse'] .off-canvas {
    outline: 0; }
  .off-canvas.is-transition-push {
    z-index: 12; }
  .off-canvas.is-closed {
    visibility: hidden; }
  .off-canvas.is-transition-overlap {
    z-index: 13; }
    .off-canvas.is-transition-overlap.is-open {
      box-shadow: 0 0 10px rgba(10, 10, 10, 0.7); }
  .off-canvas.is-open {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

.off-canvas-absolute {
  position: absolute;
  z-index: 12;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #2C3840; }
  [data-whatinput='mouse'] .off-canvas-absolute {
    outline: 0; }
  .off-canvas-absolute.is-transition-push {
    z-index: 12; }
  .off-canvas-absolute.is-closed {
    visibility: hidden; }
  .off-canvas-absolute.is-transition-overlap {
    z-index: 13; }
    .off-canvas-absolute.is-transition-overlap.is-open {
      box-shadow: 0 0 10px rgba(10, 10, 10, 0.7); }
  .off-canvas-absolute.is-open {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

.position-left {
  top: 0;
  left: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(-250px);
      -ms-transform: translateX(-250px);
          transform: translateX(-250px); }
  .off-canvas-content .off-canvas.position-left {
    -webkit-transform: translateX(-250px);
        -ms-transform: translateX(-250px);
            transform: translateX(-250px); }
    .off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-left.has-transition-push {
    -webkit-transform: translateX(250px);
        -ms-transform: translateX(250px);
            transform: translateX(250px); }
  .position-left.is-transition-push {
    box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25); }

.position-right {
  top: 0;
  right: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(250px);
      -ms-transform: translateX(250px);
          transform: translateX(250px); }
  .off-canvas-content .off-canvas.position-right {
    -webkit-transform: translateX(250px);
        -ms-transform: translateX(250px);
            transform: translateX(250px); }
    .off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-right.has-transition-push {
    -webkit-transform: translateX(-250px);
        -ms-transform: translateX(-250px);
            transform: translateX(-250px); }
  .position-right.is-transition-push {
    box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25); }

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(-250px);
      -ms-transform: translateY(-250px);
          transform: translateY(-250px); }
  .off-canvas-content .off-canvas.position-top {
    -webkit-transform: translateY(-250px);
        -ms-transform: translateY(-250px);
            transform: translateY(-250px); }
    .off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-top.has-transition-push {
    -webkit-transform: translateY(250px);
        -ms-transform: translateY(250px);
            transform: translateY(250px); }
  .position-top.is-transition-push {
    box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25); }

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(250px);
      -ms-transform: translateY(250px);
          transform: translateY(250px); }
  .off-canvas-content .off-canvas.position-bottom {
    -webkit-transform: translateY(250px);
        -ms-transform: translateY(250px);
            transform: translateY(250px); }
    .off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-bottom.has-transition-push {
    -webkit-transform: translateY(-250px);
        -ms-transform: translateY(-250px);
            transform: translateY(-250px); }
  .position-bottom.is-transition-push {
    box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25); }

.off-canvas-content {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
  .off-canvas-content.has-transition-push {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }
  .off-canvas-content .off-canvas.is-open {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

@media print, screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-medium ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-medium ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-medium ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-medium ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-large ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-large ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-large ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-large ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 40em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-medium .close-button {
      display: none; } }

@media print, screen and (min-width: 64em) {
  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-large .close-button {
      display: none; } }

.orbit {
  position: relative; }

.orbit-container {
  position: relative;
  height: 0;
  margin: 0;
  list-style: none;
  overflow: hidden; }

.orbit-slide {
  width: 100%;
  position: absolute; }
  .orbit-slide.no-motionui.is-active {
    top: 0;
    left: 0; }

.orbit-figure {
  margin: 0; }

.orbit-image {
  width: 100%;
  max-width: 100%;
  margin: 0; }

.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  padding: 1rem;
  background-color: rgba(10, 10, 10, 0.5);
  color: #fefefe; }

.orbit-previous, .orbit-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #fefefe; }
  [data-whatinput='mouse'] .orbit-previous, [data-whatinput='mouse'] .orbit-next {
    outline: 0; }
  .orbit-previous:hover, .orbit-next:hover, .orbit-previous:active, .orbit-next:active, .orbit-previous:focus, .orbit-next:focus {
    background-color: rgba(10, 10, 10, 0.5); }

.orbit-previous {
  left: 0; }

.orbit-next {
  left: auto;
  right: 0; }

.orbit-bullets {
  position: relative;
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  text-align: center; }
  [data-whatinput='mouse'] .orbit-bullets {
    outline: 0; }
  .orbit-bullets button {
    width: 1.2rem;
    height: 1.2rem;
    margin: 0.1rem;
    border-radius: 50%;
    background-color: #cacaca; }
    .orbit-bullets button:hover {
      background-color: #8a8a8a; }
    .orbit-bullets button.is-active {
      background-color: #8a8a8a; }

.pagination {
  margin-left: 0;
  margin-bottom: 1rem; }
  .pagination::before, .pagination::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .pagination::after {
    clear: both; }
  .pagination li {
    margin-right: 0.0625rem;
    border-radius: 0;
    font-size: 0.875rem;
    display: none; }
    .pagination li:last-child, .pagination li:first-child {
      display: inline-block; }
    @media print, screen and (min-width: 40em) {
      .pagination li {
        display: inline-block; } }
  .pagination a,
  .pagination button {
    display: block;
    padding: 0.1875rem 0.625rem;
    border-radius: 0;
    color: #0a0a0a; }
    .pagination a:hover,
    .pagination button:hover {
      background: #e6e6e6; }
  .pagination .current {
    padding: 0.1875rem 0.625rem;
    background: #1779ba;
    color: #fefefe;
    cursor: default; }
  .pagination .disabled {
    padding: 0.1875rem 0.625rem;
    color: #cacaca;
    cursor: not-allowed; }
    .pagination .disabled:hover {
      background: transparent; }
  .pagination .ellipsis::after {
    padding: 0.1875rem 0.625rem;
    content: '\2026';
    color: #0a0a0a; }

.pagination-previous a::before,
.pagination-previous.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
  content: '\00ab'; }

.pagination-next a::after,
.pagination-next.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
  content: '\00bb'; }

.progress {
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0;
  background-color: #cacaca; }
  .progress.primary .progress-meter {
    background-color: #1779ba; }
  .progress.secondary .progress-meter {
    background-color: #767676; }
  .progress.success .progress-meter {
    background-color: #3adb76; }
  .progress.warning .progress-meter {
    background-color: #ffae00; }
  .progress.alert .progress-meter {
    background-color: #cc4b37; }

.progress-meter {
  position: relative;
  display: block;
  width: 0%;
  height: 100%;
  background-color: #1779ba; }

.progress-meter-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  margin: 0;
  font-size: 0.75rem;
  font-weight: bold;
  color: #fefefe;
  white-space: nowrap; }

.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #e6e6e6;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: none;
      touch-action: none; }

.slider-fill {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  max-width: 100%;
  height: 0.5rem;
  background-color: #cacaca;
  transition: all 0.2s ease-in-out; }
  .slider-fill.is-dragging {
    transition: all 0s linear; }

.slider-handle {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 0;
  background-color: #1779ba;
  transition: all 0.2s ease-in-out;
  -ms-touch-action: manipulation;
      touch-action: manipulation; }
  [data-whatinput='mouse'] .slider-handle {
    outline: 0; }
  .slider-handle:hover {
    background-color: #14679e; }
  .slider-handle.is-dragging {
    transition: all 0s linear; }

.slider.disabled,
.slider[disabled] {
  opacity: 0.25;
  cursor: not-allowed; }

.slider.vertical {
  display: inline-block;
  width: 0.5rem;
  height: 12.5rem;
  margin: 0 1.25rem;
  -webkit-transform: scale(1, -1);
      -ms-transform: scale(1, -1);
          transform: scale(1, -1); }
  .slider.vertical .slider-fill {
    top: 0;
    width: 0.5rem;
    max-height: 100%; }
  .slider.vertical .slider-handle {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1.4rem;
    height: 1.4rem;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }

.sticky-container {
  position: relative; }

.sticky {
  position: relative;
  z-index: 0;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.sticky.is-stuck {
  position: fixed;
  z-index: 5;
  width: 100%; }
  .sticky.is-stuck.is-at-top {
    top: 0; }
  .sticky.is-stuck.is-at-bottom {
    bottom: 0; }

.sticky.is-anchored {
  position: relative;
  right: auto;
  left: auto; }
  .sticky.is-anchored.is-at-bottom {
    bottom: 0; }

html.is-reveal-open {
  position: fixed;
  width: 100%;
  overflow-y: hidden; }
  html.is-reveal-open.zf-has-scroll {
    overflow-y: scroll; }
  html.is-reveal-open body {
    overflow-y: hidden; }

.reveal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1005;
  display: none;
  background-color: rgba(10, 10, 10, 0.45);
  overflow-y: auto; }

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto; }
  [data-whatinput='mouse'] .reveal {
    outline: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      min-height: 0; } }
  .reveal .column {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      width: 600px;
      max-width: 75rem; } }
  .reveal.collapse {
    padding: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal.tiny {
      width: 30%;
      max-width: 75rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.small {
      width: 50%;
      max-width: 75rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.large {
      width: 90%;
      max-width: 75rem; } }
  .reveal.full {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 100%;
    margin-left: 0;
    border: 0;
    border-radius: 0; }
  @media screen and (max-width: 39.99875em) {
    .reveal {
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      width: 100%;
      max-width: none;
      height: 100%;
      min-height: 100%;
      margin-left: 0;
      border: 0;
      border-radius: 0; } }
  .reveal.without-overlay {
    position: fixed; }

.switch {
  height: 2rem;
  position: relative;
  margin-bottom: 1rem;
  outline: 0;
  font-size: 0.875rem;
  font-weight: bold;
  color: #fefefe;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.switch-input {
  position: absolute;
  margin-bottom: 0;
  opacity: 0; }

.switch-paddle {
  position: relative;
  display: block;
  width: 4rem;
  height: 2rem;
  border-radius: 0;
  background: #cacaca;
  transition: all 0.25s ease-out;
  font-weight: inherit;
  color: inherit;
  cursor: pointer; }
  input + .switch-paddle {
    margin: 0; }
  .switch-paddle::after {
    position: absolute;
    top: 0.25rem;
    left: 0.25rem;
    display: block;
    width: 1.5rem;
    height: 1.5rem;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    border-radius: 0;
    background: #fefefe;
    transition: all 0.25s ease-out;
    content: ''; }
  input:checked ~ .switch-paddle {
    background: #1779ba; }
    input:checked ~ .switch-paddle::after {
      left: 2.25rem; }
  [data-whatinput='mouse'] input:focus ~ .switch-paddle {
    outline: 0; }

.switch-active, .switch-inactive {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.switch-active {
  left: 8%;
  display: none; }
  input:checked + label > .switch-active {
    display: block; }

.switch-inactive {
  right: 15%; }
  input:checked + label > .switch-inactive {
    display: none; }

.switch.tiny {
  height: 1.5rem; }
  .switch.tiny .switch-paddle {
    width: 3rem;
    height: 1.5rem;
    font-size: 0.625rem; }
  .switch.tiny .switch-paddle::after {
    top: 0.25rem;
    left: 0.25rem;
    width: 1rem;
    height: 1rem; }
  .switch.tiny input:checked ~ .switch-paddle::after {
    left: 1.75rem; }

.switch.small {
  height: 1.75rem; }
  .switch.small .switch-paddle {
    width: 3.5rem;
    height: 1.75rem;
    font-size: 0.75rem; }
  .switch.small .switch-paddle::after {
    top: 0.25rem;
    left: 0.25rem;
    width: 1.25rem;
    height: 1.25rem; }
  .switch.small input:checked ~ .switch-paddle::after {
    left: 2rem; }

.switch.large {
  height: 2.5rem; }
  .switch.large .switch-paddle {
    width: 5rem;
    height: 2.5rem;
    font-size: 1rem; }
  .switch.large .switch-paddle::after {
    top: 0.25rem;
    left: 0.25rem;
    width: 2rem;
    height: 2rem; }
  .switch.large input:checked ~ .switch-paddle::after {
    left: 2.75rem; }

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0; }
  thead,
  tbody,
  tfoot {
    border: 1px solid #f1f1f1;
    background-color: #fefefe; }
  caption {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold; }
  thead {
    background: #f8f8f8;
    color: #0a0a0a; }
  tfoot {
    background: #f1f1f1;
    color: #0a0a0a; }
  thead tr,
  tfoot tr {
    background: transparent; }
  thead th,
  thead td,
  tfoot th,
  tfoot td {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold;
    text-align: left; }
  tbody th,
  tbody td {
    padding: 0.5rem 0.625rem 0.625rem; }
  tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: #f1f1f1; }
  table.unstriped tbody {
    background-color: #fefefe; }
    table.unstriped tbody tr {
      border-bottom: 0;
      border-bottom: 1px solid #f1f1f1;
      background-color: #fefefe; }

@media screen and (max-width: 63.99875em) {
  table.stack thead {
    display: none; }
  table.stack tfoot {
    display: none; }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block; }
  table.stack td {
    border-top: 0; } }

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto; }

table.hover thead tr:hover {
  background-color: #f3f3f3; }

table.hover tfoot tr:hover {
  background-color: #ececec; }

table.hover tbody tr:hover {
  background-color: #f9f9f9; }

table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: #ececec; }

.table-scroll {
  overflow-x: auto; }

.tabs {
  margin: 0;
  border: 1px solid #e6e6e6;
  background: #fefefe;
  list-style-type: none; }
  .tabs::before, .tabs::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .tabs::after {
    clear: both; }

.tabs.vertical > li {
  display: block;
  float: none;
  width: auto; }

.tabs.simple > li > a {
  padding: 0; }
  .tabs.simple > li > a:hover {
    background: transparent; }

.tabs.primary {
  background: #1779ba; }
  .tabs.primary > li > a {
    color: #fefefe; }
    .tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
      background: #1673b1; }

.tabs-title {
  float: left; }
  .tabs-title > a {
    display: block;
    padding: 1.25rem 1.5rem;
    font-size: 0.75rem;
    line-height: 1;
    color: #1779ba; }
    [data-whatinput='mouse'] .tabs-title > a {
      outline: 0; }
    .tabs-title > a:hover {
      background: #fefefe;
      color: #1468a0; }
    .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
      background: #e6e6e6;
      color: #1779ba; }

.tabs-content {
  border: 1px solid #e6e6e6;
  border-top: 0;
  background: #fefefe;
  color: #0a0a0a;
  transition: all 0.5s ease; }

.tabs-content.vertical {
  border: 1px solid #e6e6e6;
  border-left: 0; }

.tabs-panel {
  display: none;
  padding: 1rem; }
  .tabs-panel.is-active {
    display: block; }

.thumbnail {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #fefefe;
  border-radius: 0;
  box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
  line-height: 0; }

a.thumbnail {
  transition: box-shadow 200ms ease-out; }
  a.thumbnail:hover, a.thumbnail:focus {
    box-shadow: 0 0 6px 1px rgba(23, 121, 186, 0.5); }
  a.thumbnail image {
    box-shadow: none; }

.title-bar {
  padding: 0.5rem;
  background: #2C3840;
  color: #fefefe;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .title-bar .menu-icon {
    margin-left: 0.25rem;
    margin-right: 0.25rem; }

.title-bar-left,
.title-bar-right {
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; }

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

.title-bar-title {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold; }

.has-tip {
  position: relative;
  display: inline-block;
  border-bottom: dotted 1px #8a8a8a;
  font-weight: bold;
  cursor: help; }

.tooltip {
  position: absolute;
  top: calc(100% + 0.6495rem);
  z-index: 1200;
  max-width: 10rem;
  padding: 0.75rem;
  border-radius: 0;
  background-color: #0a0a0a;
  font-size: 80%;
  color: #fefefe; }
  .tooltip::before {
    position: absolute; }
  .tooltip.bottom::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-top-width: 0;
    border-bottom-style: solid;
    border-color: transparent transparent #0a0a0a;
    bottom: 100%; }
  .tooltip.bottom.align-center::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .tooltip.top::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #0a0a0a transparent transparent;
    top: 100%;
    bottom: auto; }
  .tooltip.top.align-center::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .tooltip.left::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0a0a0a;
    left: 100%; }
  .tooltip.left.align-center::before {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .tooltip.right::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0a0a0a transparent transparent;
    right: 100%;
    left: auto; }
  .tooltip.right.align-center::before {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .tooltip.align-top::before {
    bottom: auto;
    top: 10%; }
  .tooltip.align-bottom::before {
    bottom: 10%;
    top: auto; }
  .tooltip.align-left::before {
    left: 10%;
    right: auto; }
  .tooltip.align-right::before {
    left: auto;
    right: 10%; }

.top-bar {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.5rem;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .top-bar,
  .top-bar ul {
    background-color: #e6e6e6; }
  .top-bar input {
    max-width: 200px;
    margin-right: 1rem; }
  .top-bar .input-group-field {
    width: 100%;
    margin-right: 0; }
  .top-bar input.button {
    width: auto; }
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  @media print, screen and (min-width: 40em) {
    .top-bar {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
      .top-bar .top-bar-left {
        -webkit-flex: 1 1 auto;
            -ms-flex: 1 1 auto;
                flex: 1 1 auto;
        margin-right: auto; }
      .top-bar .top-bar-right {
        -webkit-flex: 0 1 auto;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto;
        margin-left: auto; } }
  @media screen and (max-width: 63.99875em) {
    .top-bar.stacked-for-medium {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-medium .top-bar-left,
      .top-bar.stacked-for-medium .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 74.99875em) {
    .top-bar.stacked-for-large {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-large .top-bar-left,
      .top-bar.stacked-for-large .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }

.top-bar-title {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin: 0.5rem 1rem 0.5rem 0; }

.top-bar-left,
.top-bar-right {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.align-left {
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.align-right {
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-justify {
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.align-spaced {
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around; }

.align-left.vertical.menu > li > a {
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.align-right.vertical.menu > li > a {
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center.vertical.menu > li > a {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-top {
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; }

.align-self-top {
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start; }

.align-bottom {
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }

.align-self-bottom {
  -webkit-align-self: flex-end;
      -ms-flex-item-align: end;
          align-self: flex-end; }

.align-middle {
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.align-self-middle {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center; }

.align-stretch {
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.align-self-stretch {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
              -ms-grid-row-align: stretch;
          align-self: stretch; }

.align-center-middle {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center; }

.small-order-1 {
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.small-order-2 {
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2; }

.small-order-3 {
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3; }

.small-order-4 {
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4; }

.small-order-5 {
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5; }

.small-order-6 {
  -webkit-order: 6;
      -ms-flex-order: 6;
          order: 6; }

@media print, screen and (min-width: 40em) {
  .medium-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .medium-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .medium-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .medium-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .medium-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .medium-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .large-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .large-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .large-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .large-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .large-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

.flex-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.flex-child-auto {
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto; }

.flex-child-grow {
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }

.flex-child-shrink {
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }

.flex-dir-row {
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.flex-dir-row-reverse {
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.flex-dir-column {
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }

.flex-dir-column-reverse {
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }

@media print, screen and (min-width: 40em) {
  .medium-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .medium-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .medium-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .medium-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .medium-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .medium-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .medium-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .medium-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .large-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .large-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .large-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .large-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .large-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .large-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .large-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

.slide-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-down.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0); }

.slide-in-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-left.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.slide-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-up.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0); }

.slide-in-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-right.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.slide-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-down.mui-leave.mui-leave-active {
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%); }

.slide-out-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-right.mui-leave.mui-leave-active {
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%); }

.slide-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-up.mui-leave.mui-leave-active {
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%); }

.slide-out-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-left.mui-leave.mui-leave-active {
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%); }

.fade-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 0;
  transition-property: opacity; }

.fade-in.mui-enter.mui-enter-active {
  opacity: 1; }

.fade-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 1;
  transition-property: opacity; }

.fade-out.mui-leave.mui-leave-active {
  opacity: 0; }

.hinge-in-from-top.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-top.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-right.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-bottom.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-left.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-x.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-y.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-out-from-top.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-top.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0; }

.hinge-out-from-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-right.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0; }

.hinge-out-from-bottom.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-left.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.hinge-out-from-middle-x.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0; }

.hinge-out-from-middle-y.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0; }

.scale-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-up.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-down.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-up.mui-leave.mui-leave-active {
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  opacity: 0; }

.scale-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-down.mui-leave.mui-leave-active {
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  opacity: 0; }

.spin-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out.mui-leave.mui-leave-active {
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  opacity: 0; }

.spin-in-ccw.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in-ccw.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out-ccw.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out-ccw.mui-leave.mui-leave-active {
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  opacity: 0; }

.slow {
  transition-duration: 750ms !important; }

.fast {
  transition-duration: 250ms !important; }

.linear {
  transition-timing-function: linear !important; }

.ease {
  transition-timing-function: ease !important; }

.ease-in {
  transition-timing-function: ease-in !important; }

.ease-out {
  transition-timing-function: ease-out !important; }

.ease-in-out {
  transition-timing-function: ease-in-out !important; }

.bounce-in {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  transition-delay: 300ms !important; }

.long-delay {
  transition-delay: 700ms !important; }

.shake {
  -webkit-animation-name: shake-7;
          animation-name: shake-7; }

@-webkit-keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%); } }

@keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%); } }

.spin-cw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn; }

@-webkit-keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

.spin-ccw {
  -webkit-animation-name: spin-ccw-1turn;
          animation-name: spin-ccw-1turn; }

@-webkit-keyframes spin-ccw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); } }

@keyframes spin-ccw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); } }

.wiggle {
  -webkit-animation-name: wiggle-7deg;
          animation-name: wiggle-7deg; }

@-webkit-keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

.shake,
.spin-cw,
.spin-ccw,
.wiggle {
  -webkit-animation-duration: 500ms;
          animation-duration: 500ms; }

.infinite {
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite; }

.slow {
  -webkit-animation-duration: 750ms !important;
          animation-duration: 750ms !important; }

.fast {
  -webkit-animation-duration: 250ms !important;
          animation-duration: 250ms !important; }

.linear {
  -webkit-animation-timing-function: linear !important;
          animation-timing-function: linear !important; }

.ease {
  -webkit-animation-timing-function: ease !important;
          animation-timing-function: ease !important; }

.ease-in {
  -webkit-animation-timing-function: ease-in !important;
          animation-timing-function: ease-in !important; }

.ease-out {
  -webkit-animation-timing-function: ease-out !important;
          animation-timing-function: ease-out !important; }

.ease-in-out {
  -webkit-animation-timing-function: ease-in-out !important;
          animation-timing-function: ease-in-out !important; }

.bounce-in {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  -webkit-animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  -webkit-animation-delay: 300ms !important;
          animation-delay: 300ms !important; }

.long-delay {
  -webkit-animation-delay: 700ms !important;
          animation-delay: 700ms !important; }

/*
  My custom styles:
  Add your scss files below to structure your project styles
*/
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

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

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

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

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

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

/*! locomotive-scroll v4.1.3 | MIT License | https://github.com/locomotivemtl/locomotive-scroll */
html.has-scroll-smooth {
  overflow: hidden; }

html.has-scroll-dragging {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.has-scroll-smooth body {
  overflow: hidden; }

.has-scroll-smooth [data-scroll-container] {
  min-height: 100vh; }

[data-scroll-direction="horizontal"] [data-scroll-container] {
  height: 100vh;
  display: inline-block;
  white-space: nowrap; }

[data-scroll-direction="horizontal"] [data-scroll-section] {
  display: inline-block;
  vertical-align: top;
  white-space: nowrap;
  height: 100%; }

.c-scrollbar {
  position: absolute;
  right: 0;
  top: 0;
  width: 11px;
  height: 100%;
  -webkit-transform-origin: center right;
      -ms-transform-origin: center right;
          transform-origin: center right;
  transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: transform 0.3s, opacity 0.3s;
  transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
  opacity: 0; }

.c-scrollbar:hover {
  -webkit-transform: scaleX(1.45);
      -ms-transform: scaleX(1.45);
          transform: scaleX(1.45); }

.c-scrollbar:hover, .has-scroll-scrolling .c-scrollbar, .has-scroll-dragging .c-scrollbar {
  opacity: 1; }

[data-scroll-direction="horizontal"] .c-scrollbar {
  width: 100%;
  height: 10px;
  top: auto;
  bottom: 0;
  -webkit-transform: scaleY(1);
      -ms-transform: scaleY(1);
          transform: scaleY(1); }

[data-scroll-direction="horizontal"] .c-scrollbar:hover {
  -webkit-transform: scaleY(1.3);
      -ms-transform: scaleY(1.3);
          transform: scaleY(1.3); }

.c-scrollbar_thumb {
  position: absolute;
  top: 0;
  right: 0;
  background-color: black;
  opacity: 0.5;
  width: 7px;
  border-radius: 10px;
  margin: 2px;
  cursor: -webkit-grab;
  cursor: grab; }

.has-scroll-dragging .c-scrollbar_thumb {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

[data-scroll-direction="horizontal"] .c-scrollbar_thumb {
  right: auto;
  bottom: 0; }

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

/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'fontello';
    src: url('../font/fontello.svg?33100881#fontello') format('svg');
  }
}
*/
[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: never;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .2em;
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ }

.icon-right-open-mini:before {
  content: '\e800'; }

/* '' */
.icon-right-open-big:before {
  content: '\e801'; }

/* '' */
.icon-left-open-mini:before {
  content: '\e802'; }

/* '' */
.icon-star:before {
  content: '\e803'; }

/* '' */
.icon-phone:before {
  content: '\e804'; }

/* '' */
.icon-up-open-mini:before {
  content: '\e805'; }

/* '' */
.icon-play-1:before {
  content: '\e806'; }

/* '' */
.icon-down-open-mini:before {
  content: '\e807'; }

/* '' */
.icon-location:before {
  content: '\e808'; }

/* '' */
.icon-gift:before {
  content: '\e809'; }

/* '' */
.icon-clock-1:before {
  content: '\e80a'; }

/* '' */
.icon-gift-1:before {
  content: '\e80b'; }

/* '' */
.icon-gift-2:before {
  content: '\e80c'; }

/* '' */
.icon-eye:before {
  content: '\e80d'; }

/* '' */
.icon-instagram:before {
  content: '\f05d'; }

/* '' */
.icon-user-2:before {
  content: '\f061'; }

/* '' */
.icon-facebook:before {
  content: '\f09a'; }

/* '' */
.icon-menu:before {
  content: '\f0c9'; }

/* '' */
.icon-food:before {
  content: '\f0f5'; }

/* '' */
.icon-calendar-empty:before {
  content: '\f133'; }

/* '' */
.icon-youtube-play:before {
  content: '\f16a'; }

/* '' */
.icon-snapchat-ghost:before {
  content: '\f2ac'; }

/* '' */
.icon-twitter:before {
  content: '\f309'; }

/* '' */
.icon-linkedin-squared:before {
  content: '\f30c'; }

/* '' */
.icon-pinterest:before {
  content: '\f312'; }

/* '' */
body {
  width: 100vw;
  overflow-x: hidden;
  overflow-y: auto; }

.priceLoader {
  position: fixed;
  background: rgba(255, 255, 255, 0.5);
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  -webkit-filter: blur(50px);
          filter: blur(50px);
  z-index: 10;
  display: none; }

.mainSlider .slider-for > div:not(:first-child) {
  display: none; }

.navSlider .slider-nav > div:not(:first-child) {
  display: none; }

.gallerySlider > div:not(:first-child):not(.slick-list) {
  display: none; }

.loader {
  position: fixed;
  background: #fff;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 1000000;
  transition: all 1s ease-in;
  /*&_bar {
		position: relative;
		height: 5px;
		width: 100%;
		background-color: #1ca2bc;
		border-radius: 1em;
		overflow: hidden;
		&::after {
			position: absolute;
			top: 0;
			left: 0;
			content: "";
			width: 50%;
			height: 100%;
			background: linear-gradient(90deg, #fff5, rgba($blue, 0.891));
			animation: loading-animation 1.3s infinite;
			border-radius: 1em;
		}
	}

	@keyframes loading-animation {
	  0% {
	    left: -50%;
	  }

	  100% {
	    left: 150%;
	  }
	}*/ }
  .loader img {
    width: 80%;
    margin: 50px auto; }
    @media (max-width: 40em) {
      .loader img {
        width: 60%; } }
  .loader-container {
    width: 50%;
    transition: all 1s ease-in;
    text-align: center; }
    @media (max-width: 40em) {
      .loader-container {
        width: 90%; } }
  .loader.fade {
    top: -100vh; }
    .loader.fade .loader-container {
      -webkit-transform: scale(0);
          -ms-transform: scale(0);
              transform: scale(0); }
  .loader .headlines {
    height: 80px;
    overflow: hidden; }
    .loader .headlines-track {
      transition-property: -webkit-transform;
      transition-property: transform;
      transition-property: transform, -webkit-transform;
      -webkit-animation-name: animation;
              animation-name: animation;
      -webkit-animation-duration: 6s;
              animation-duration: 6s;
      -webkit-animation-delay: 2s;
              animation-delay: 2s;
      -webkit-animation-iteration-count: infinite;
              animation-iteration-count: infinite;
      -webkit-transform: translateY(0);
          -ms-transform: translateY(0);
              transform: translateY(0); }
    .loader .headlines h2 {
      text-align: center;
      color: #006D76;
      font-size: 50px; }

@-webkit-keyframes animation {
  0% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px); }
  50% {
    -webkit-transform: translateY(-80px);
            transform: translateY(-80px); }
  100% {
    -webkit-transform: translateY(-160px);
            transform: translateY(-160px); } }

@keyframes animation {
  0% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px); }
  50% {
    -webkit-transform: translateY(-80px);
            transform: translateY(-80px); }
  100% {
    -webkit-transform: translateY(-160px);
            transform: translateY(-160px); } }
  @media (max-width: 40em) {
    .loader .headlines {
      height: 36px; }
      .loader .headlines h2 {
        height: 36px;
        margin-bottom: 0;
        font-size: 24px; }
    @-webkit-keyframes animation {
      0% {
        -webkit-transform: translateY(0px);
                transform: translateY(0px); }
      50% {
        -webkit-transform: translateY(-40px);
                transform: translateY(-40px); }
      100% {
        -webkit-transform: translateY(-80px);
                transform: translateY(-80px); } }
    @keyframes animation {
      0% {
        -webkit-transform: translateY(0px);
                transform: translateY(0px); }
      50% {
        -webkit-transform: translateY(-40px);
                transform: translateY(-40px); }
      100% {
        -webkit-transform: translateY(-80px);
                transform: translateY(-80px); } } }

.slick-slider img {
  width: 100%; }

.fullWidthImg {
  width: 100%; }

.banner {
  position: relative;
  height: 100vh;
  width: 100%;
  background-size: cover;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-position: center;
  overflow: hidden; }
  .banner:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.35);
    top: 0;
    z-index: 1; }
  .banner img {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0; }
    @media (max-width: 40em) {
      .banner img {
        max-width: initial;
        width: auto; } }
  .banner-text {
    z-index: 1; }
    .banner-text h1 {
      color: #fff;
      text-shadow: 0 0 20px #000; }
      .banner-text h1 span {
        color: #fff;
        line-height: 100px; }
        @media (max-width: 40em) {
          .banner-text h1 span {
            line-height: 60px; } }
  .banner-scroll {
    color: #fff;
    position: absolute;
    bottom: 50px;
    left: 50%;
    z-index: 1;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    font-weight: 600;
    text-shadow: 0px 0px 20px #000;
    font-size: 1.2vw; }
    @media (min-width: 40em) {
      .banner-scroll:before {
        content: '';
        background-color: #fff;
        position: absolute;
        width: 1px;
        height: 35px;
        left: 50%;
        bottom: -50px; }
      .banner-scroll:after {
        content: '';
        background-color: #006D76;
        position: absolute;
        width: 3px;
        left: calc(50% - 1px);
        top: 34px;
        -webkit-animation: mymove 3s;
                animation: mymove 3s;
        -webkit-animation-iteration-count: infinite;
                animation-iteration-count: infinite; }
      @-webkit-keyframes mymove {
        /*from {top: 29px;}
			  to {top: 68px;}*/
        0% {
          height: 0px;
          top: 34px; }
        50% {
          height: 35px;
          top: 34px; }
        100% {
          height: 35px;
          top: 70px; } }
      @keyframes mymove {
        /*from {top: 29px;}
			  to {top: 68px;}*/
        0% {
          height: 0px;
          top: 34px; }
        50% {
          height: 35px;
          top: 34px; }
        100% {
          height: 35px;
          top: 70px; } } }
    .banner-scroll:hover, .banner-scroll:focus {
      color: #fff; }
  @media (max-width: 40em) {
    .banner {
      height: calc(100vh - 59px); } }
  @media (min-width: 40em) {
    .banner {
      background-attachment: fixed; } }

.subpageBanner .banner {
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-align-items: end;
      -ms-flex-align: end;
          align-items: end; }
  .subpageBanner .banner .banner-text {
    margin-bottom: 10vh;
    margin-left: 6vw; }
    .subpageBanner .banner .banner-text span {
      line-height: 140px; }

.sliderBanner {
  height: 100vh;
  width: 100%;
  overflow: hidden; }
  @media (max-width: 40em) {
    .sliderBanner {
      height: calc(100vh - 60px); } }
  .sliderBanner .bannerSlide {
    height: 100vh;
    position: relative;
    background-size: cover;
    background-position: center;
    overflow: hidden; }
    .sliderBanner .bannerSlide video {
      width: 100vw;
      /*height: 100vh;	
			width: auto;*/
      /*@media (min-width: 1400px) {
				height: 100vh;	
				width: auto;
			}*/ }
      @media (max-width: 40em) {
        .sliderBanner .bannerSlide video {
          /*height: auto;	
				width: 100vw;*/
          height: 100vh;
          width: auto; } }
    .sliderBanner .bannerSlide img {
      width: auto;
      height: 100%;
      max-width: initial; }
    .sliderBanner .bannerSlide:before {
      content: '';
      position: absolute;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.35);
      top: 0; }
    .sliderBanner .bannerSlide-text {
      z-index: 1;
      position: absolute;
      width: 100%;
      height: 100%;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      top: 0;
      left: 0; }
      .sliderBanner .bannerSlide-text h1 {
        color: #fff; }
        @media (max-width: 40em) {
          .sliderBanner .bannerSlide-text h1 {
            margin-left: 20px; } }
        .sliderBanner .bannerSlide-text h1 span {
          color: #fff; }
          @media (max-width: 40em) {
            .sliderBanner .bannerSlide-text h1 span {
              line-height: 60px; } }
    .sliderBanner .bannerSlide-scroll {
      color: #fff;
      position: absolute;
      bottom: 50px;
      left: 50%;
      z-index: 1;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      font-size: 14pt;
      font-weight: bold; }
      @media (min-width: 40em) {
        .sliderBanner .bannerSlide-scroll:before {
          content: '';
          background-color: #fff;
          position: absolute;
          width: 1px;
          height: 35px;
          left: 50%;
          bottom: -50px; }
        .sliderBanner .bannerSlide-scroll:after {
          content: '';
          background-color: #006D76;
          position: absolute;
          width: 3px;
          left: calc(50% - 1px);
          top: 34px;
          -webkit-animation: mymove 3s;
                  animation: mymove 3s;
          -webkit-animation-iteration-count: infinite;
                  animation-iteration-count: infinite; }
        @-webkit-keyframes mymove {
          /*from {top: 29px;}
				  to {top: 68px;}*/
          0% {
            height: 0px;
            top: 34px; }
          50% {
            height: 35px;
            top: 34px; }
          100% {
            height: 35px;
            top: 70px; } }
        @keyframes mymove {
          /*from {top: 29px;}
				  to {top: 68px;}*/
          0% {
            height: 0px;
            top: 34px; }
          50% {
            height: 35px;
            top: 34px; }
          100% {
            height: 35px;
            top: 70px; } } }
      .sliderBanner .bannerSlide-scroll:hover, .sliderBanner .bannerSlide-scroll:focus {
        color: #fff; }
    @media (max-width: 40em) {
      .sliderBanner .bannerSlide {
        height: calc(100vh - 59px); } }
    @media (min-width: 40em) {
      .sliderBanner .bannerSlide {
        background-attachment: fixed; } }

.aboutDeveloper {
  position: relative;
  height: 100vh;
  width: 100%;
  background-size: cover;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-position: center; }
  @media (max-width: 40em) {
    .aboutDeveloper {
      height: 80vh;
      overflow: hidden; } }
  @media (min-width: 40em) {
    .aboutDeveloper {
      background-attachment: fixed; } }
  .aboutDeveloper:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.35);
    z-index: 1; }
  .aboutDeveloper img {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0; }
    @media (max-width: 40em) {
      .aboutDeveloper img {
        max-width: initial;
        width: auto; } }
  .aboutDeveloper-text {
    z-index: 1;
    text-align: center; }
    .aboutDeveloper-text h2, .aboutDeveloper-text a, .aboutDeveloper-text span {
      color: #fff !important; }
    .aboutDeveloper-text h2 {
      font-size: 5vw;
      letter-spacing: 1px;
      line-height: 4.5vw; }
      @media (max-width: 40em) {
        .aboutDeveloper-text h2 {
          font-size: 8vw; } }

.popup {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: none;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 10000;
  background: rgba(0, 109, 118, 0.8); }
  .popup.open {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .popup_container {
    background: #fff;
    padding: 50px 30px;
    position: relative;
    width: 70%; }
    @media (max-width: 40em) {
      .popup_container {
        width: 80%;
        padding: 30px 25px; } }
  .popup .closeBtn {
    position: absolute;
    right: -65px;
    top: -40px;
    color: #fff; }
    @media (max-width: 40em) {
      .popup .closeBtn {
        right: 0; } }

#contactForm #gform_4 .gfield:first-child {
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

#contactForm #gform_4 .gfield:nth-child(2) {
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2; }

#contactForm #gform_4 .gfield:nth-child(3) {
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4; }

#contactForm #gform_4 .gfield:nth-child(4) {
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5; }

#contactForm #gform_4 .gfield:nth-child(5) {
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3; }

#contactForm #gform_4 .gfield:nth-child(6) {
  -webkit-order: 6;
      -ms-flex-order: 6;
          order: 6; }

@media (min-width: 40em) {
  #contactForm .gform_wrapper .gfield#field_3_5, #contactForm .gform_wrapper .gfield#field_4_5, #contactForm .gform_wrapper .gfield#field_11_5 {
    position: relative; }
    #contactForm .gform_wrapper .gfield#field_3_5 .ginput_container, #contactForm .gform_wrapper .gfield#field_4_5 .ginput_container, #contactForm .gform_wrapper .gfield#field_11_5 .ginput_container {
      position: absolute;
      width: 100%; } }

.gform_wrapper .gfield input, .gform_wrapper .gfield textarea, .gform_wrapper .gfield select {
  border: none;
  box-shadow: none;
  border-bottom: 0.5px solid rgba(0, 0, 0, 0.4);
  background: transparent; }

.gform_wrapper .gfield select {
  color: #bbb; }
  .gform_wrapper .gfield select:invalid, .gform_wrapper .gfield select option[value=""] {
    color: #bbb; }
  .gform_wrapper .gfield select option {
    color: #000; }

.gform_wrapper .gfield input::-webkit-input-placeholder, .gform_wrapper .gfield select::-webkit-input-placeholder, .gform_wrapper .gfield textarea::-webkit-input-placeholder {
  color: #bbb; }

.gform_wrapper .gfield input:-ms-input-placeholder, .gform_wrapper .gfield select:-ms-input-placeholder, .gform_wrapper .gfield textarea:-ms-input-placeholder {
  color: #bbb; }

.gform_wrapper .gfield input::placeholder, .gform_wrapper .gfield select::placeholder, .gform_wrapper .gfield textarea::placeholder {
  color: #bbb; }

.gform_wrapper .gform_footer {
  padding-bottom: 0 !important;
  text-align: right;
  display: block !important;
  margin-top: 40px !important; }
  .gform_wrapper .gform_footer input {
    background: #006D76;
    padding: 10px 20px;
    text-transform: uppercase;
    font-size: 1vw;
    color: #fff;
    border-radius: 20px;
    margin-bottom: 0;
    border: none; }
    @media (max-width: 40em) {
      .gform_wrapper .gform_footer input {
        font-size: 4vw; } }
    .gform_wrapper .gform_footer input:hover {
      background: #00A39D;
      color: #fff; }

.gform_wrapper.gravity-theme .gform_validation_errors {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  box-shadow: none !important; }
  .gform_wrapper.gravity-theme .gform_validation_errors h2 {
    color: #c02b0a !important; }

.gform_wrapper.gravity-theme .gfield_validation_message, .gform_wrapper.gravity-theme .validation_message {
  background: none !important;
  border: none !important;
  margin-top: 0 !important;
  padding: 0px 24px 10px !important; }

.noArrowSlider {
  padding-left: 150px;
  overflow: hidden;
  position: relative; }
  @media (max-width: 40em) {
    .noArrowSlider {
      padding-left: 15px; } }
  .noArrowSlider .slider-no {
    font-size: 40px;
    font-family: ElMessiri;
    color: rgba(0, 109, 118, 0.4);
    width: 100px;
    position: absolute;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .noArrowSlider .slider-no span {
      color: #006D76;
      font-family: ElMessiri;
      font-size: 40px; }
    @media (max-width: 40em) {
      .noArrowSlider .slider-no {
        width: 100%;
        -webkit-justify-content: flex-end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        padding-right: 25px;
        font-size: 20px; }
        .noArrowSlider .slider-no span {
          font-size: 20px; } }
  .noArrowSlider .slider_title {
    opacity: 0;
    transition: all 1s ease 1s;
    /*position: absolute;
			bottom:0;*/
    width: 100%;
    padding: 0px 80px; }
    @media (max-width: 40em) {
      .noArrowSlider .slider_title {
        padding: 0px 20px; } }
  .noArrowSlider .slider_content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    cursor: default; }
    @media (max-width: 40em) {
      .noArrowSlider .slider_content {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; } }
  .noArrowSlider .slidersContainer {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-transform: translateX(10%);
        -ms-transform: translateX(10%);
            transform: translateX(10%); }
    @media (max-width: 40em) {
      .noArrowSlider .slidersContainer {
        width: 150%;
        -webkit-transform: translateX(0%);
            -ms-transform: translateX(0%);
                transform: translateX(0%); } }
    .noArrowSlider .slidersContainer .mainSlider {
      width: 55%;
      padding: 0 10px; }
      .noArrowSlider .slidersContainer .mainSlider .slick-slide h5 {
        font-size: 2.5vw;
        margin-bottom: 0;
        color: #000; }
        @media (max-width: 40em) {
          .noArrowSlider .slidersContainer .mainSlider .slick-slide h5 {
            font-size: 7vw; } }
      .noArrowSlider .slidersContainer .mainSlider .slick-slide p, .noArrowSlider .slidersContainer .mainSlider .slick-slide div {
        font-size: 18px; }
        @media (max-width: 40em) {
          .noArrowSlider .slidersContainer .mainSlider .slick-slide p, .noArrowSlider .slidersContainer .mainSlider .slick-slide div {
            font-size: 15px; } }
      .noArrowSlider .slidersContainer .mainSlider .slick-slide.slick-current .slider_title {
        opacity: 1;
        padding: 0; }
      .noArrowSlider .slidersContainer .mainSlider .slick-slide.slick-current .slider_content {
        opacity: 1;
        margin: 10px 0px; }
    .noArrowSlider .slidersContainer .navSlider {
      padding: 0 10px;
      width: 45%; }
      .noArrowSlider .slidersContainer .navSlider .slider_title {
        opacity: 0; }
      .noArrowSlider .slidersContainer .navSlider .slider_content {
        opacity: 0;
        margin: 4px 0 !important; }
    .noArrowSlider .slidersContainer .slick-slide {
      overflow: hidden; }
      .noArrowSlider .slidersContainer .slick-slide img {
        transition: -webkit-transform 0.5s ease-in-out 1.5s;
        transition: transform 0.5s ease-in-out 1.5s;
        transition: transform 0.5s ease-in-out 1.5s, -webkit-transform 0.5s ease-in-out 1.5s;
        -webkit-transform: scale(2);
            -ms-transform: scale(2);
                transform: scale(2); }
      .noArrowSlider .slidersContainer .slick-slide.slick-current img {
        transition: -webkit-transform 1s ease-in-out 0.8s;
        transition: transform 1s ease-in-out 0.8s;
        transition: transform 1s ease-in-out 0.8s, -webkit-transform 1s ease-in-out 0.8s;
        -webkit-transform: scale(1);
            -ms-transform: scale(1);
                transform: scale(1); }
      .noArrowSlider .slidersContainer .slick-slide .slider_content {
        opacity: 0;
        margin: 10px 80px;
        transition: all 1s ease-in-out 1s; }
        @media (max-width: 40em) {
          .noArrowSlider .slidersContainer .slick-slide .slider_content {
            margin: 10px; } }
  .noArrowSlider-btns {
    margin-bottom: 30px; }
    @media (max-width: 40em) {
      .noArrowSlider-btns {
        display: none; } }
    @media (min-width: 1400px) {
      .noArrowSlider-btns {
        margin-bottom: 66px; } }
    .noArrowSlider-btns .slick-arrow {
      background: transparent;
      width: 50px;
      height: 50px;
      border: 1px solid #006D76;
      border-radius: 50%;
      color: #006D76;
      cursor: pointer;
      margin-right: 20px;
      font-size: 25px; }
      .noArrowSlider-btns .slick-arrow:hover {
        background: #006D76;
        color: #fff; }
      @media (max-width: 40em) {
        .noArrowSlider-btns .slick-arrow {
          width: 40px;
          height: 40px; } }

.carousel-slider .slick-list {
  -webkit-transform: translateX(150px);
      -ms-transform: translateX(150px);
          transform: translateX(150px); }

.carousel-slider .slick-track {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0; }

@media (max-width: 40em) {
  .carousel-slider .slick-list {
    -webkit-transform: translateX(0px);
        -ms-transform: translateX(0px);
            transform: translateX(0px);
    padding: 0 20% 0 0% !important; } }

.carousel-slider .slick-slide {
  height: auto; }
  .carousel-slider .slick-slide > div {
    height: 100%; }
  .carousel-slider .slick-slide .slide {
    padding: 0 15px;
    height: 100%; }
    .carousel-slider .slick-slide .slide-info {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding: 10px 25px;
      background: #006D76; }
      .carousel-slider .slick-slide .slide-info p {
        color: #fff;
        margin-bottom: 0;
        font-size: 15px;
        line-height: 1.2;
        position: relative; }
        .carousel-slider .slick-slide .slide-info p:first-child {
          font-size: 18px;
          font-family: ElMessiri; }
        .carousel-slider .slick-slide .slide-info p span {
          font-size: 12px;
          opacity: 0.6;
          color: #fff; }
          .carousel-slider .slick-slide .slide-info p span.tooltipIcon {
            opacity: 1;
            border-radius: 50%;
            border: 1px solid;
            width: 16px;
            height: 16px;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-justify-content: center;
                -ms-flex-pack: center;
                    justify-content: center;
            -webkit-align-items: center;
                -ms-flex-align: center;
                    align-items: center;
            position: absolute;
            top: 0;
            right: 0;
            cursor: help; }
            .carousel-slider .slick-slide .slide-info p span.tooltipIcon .tooltip {
              opacity: 0; }
            .carousel-slider .slick-slide .slide-info p span.tooltipIcon:hover .tooltip {
              opacity: 1;
              padding: 10px;
              width: -webkit-max-content;
              width: -moz-max-content;
              width: max-content;
              background: #fff;
              color: #000;
              box-shadow: 0 0 8px 0px #a5a5a5; }
        @media (max-width: 40em) {
          .carousel-slider .slick-slide .slide-info p {
            font-size: 12px; }
            .carousel-slider .slick-slide .slide-info p:first-child {
              font-size: 20px; }
            .carousel-slider .slick-slide .slide-info p span, .carousel-slider .slick-slide .slide-info p i {
              font-size: 10px; } }
    .carousel-slider .slick-slide .slide-content {
      background: #fff;
      padding: 20px 25px;
      cursor: default; }
      .carousel-slider .slick-slide .slide-content a {
        margin-right: 30px;
        margin-bottom: 20px;
        display: inline-block; }
      @media (max-width: 40em) {
        .carousel-slider .slick-slide .slide-content {
          padding: 20px 10px; }
          .carousel-slider .slick-slide .slide-content a {
            margin-right: 0px; }
          .carousel-slider .slick-slide .slide-content .cta {
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-justify-content: space-between;
                -ms-flex-pack: justify;
                    justify-content: space-between; } }

.carousel-slider .slick-arrow {
  background: transparent;
  width: 50px;
  height: 50px;
  border: 1px solid #006D76;
  border-radius: 50%;
  color: #006D76;
  cursor: pointer;
  position: absolute;
  top: -100px;
  z-index: 1;
  font-size: 0px; }
  .carousel-slider .slick-arrow i {
    font-size: 25px; }
  .carousel-slider .slick-arrow.slick-next {
    right: 100px; }
  .carousel-slider .slick-arrow.slick-prev {
    right: 200px; }
  .carousel-slider .slick-arrow:hover {
    background: #006D76;
    color: #fff; }
  @media (max-width: 40em) {
    .carousel-slider .slick-arrow {
      width: 40px;
      height: 40px;
      top: -65px; }
      .carousel-slider .slick-arrow.slick-next {
        right: 10px; }
      .carousel-slider .slick-arrow.slick-prev {
        right: 70px; } }

.stripImg img {
  width: 100%; }
  @media (max-width: 40em) {
    .stripImg img {
      /*height: 50vh;
		  width: auto;
		  //max-width: initial;
		  transform: translateX(-25%);*/ } }

.sort {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 50px 150px 25px; }
  .sort div {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 40px;
            column-gap: 40px; }
  .sort select {
    border: none;
    border-bottom: 1px solid;
    color: rgba(0, 0, 0, 0.4);
    text-transform: uppercase;
    font-size: 20px;
    height: auto;
    width: auto;
    background-color: transparent; }
    .sort select:focus {
      box-shadow: none; }
  @media (max-width: 40em) {
    .sort {
      padding: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .sort div {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
      .sort select {
        width: 100%;
        font-size: 16px; } }

.loaderImage {
  position: absolute;
  z-index: 10;
  width: 100%;
  height: 100%;
  left: 0;
  display: none; }
  .loaderImage div {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.6); }

hr {
  max-width: none;
  border-color: rgba(0, 0, 0, 0.1);
  margin: 20px 150px; }
  @media (max-width: 40em) {
    hr {
      margin: 20px 25px; } }

.policy {
  padding: 50px 150px; }
  @media (max-width: 40em) {
    .policy {
      padding: 25px; } }

input::-webkit-input-placeholder, select::-webkit-input-placeholder {
  color: #fff; }

input:-ms-input-placeholder, select:-ms-input-placeholder {
  color: #fff; }

input::placeholder, select::placeholder {
  color: #fff; }

select {
  background-image: url(../png/select-blue-2.png); }

.postDetails {
  position: fixed;
  width: 100%;
  top: 0;
  background: #006D76;
  height: 100vh;
  overflow-y: scroll;
  z-index: 1000000;
  transition: all 1s ease-in-out;
  left: 100%; }
  .postDetails.open {
    left: 0; }
    @media (max-width: 40em) {
      .postDetails.open .close {
        position: fixed;
        right: 0; } }
  .postDetails .close {
    font-size: 30px;
    color: transparent;
    float: right;
    padding: 30px;
    position: relative; }
    .postDetails .close:before {
      position: absolute;
      content: '';
      width: 1px;
      height: 35px;
      background: #fff;
      -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
              transform: rotate(45deg);
      left: 50%; }
    .postDetails .close:after {
      position: absolute;
      content: '';
      width: 1px;
      height: 35px;
      background: #fff;
      -webkit-transform: rotate(-45deg);
          -ms-transform: rotate(-45deg);
              transform: rotate(-45deg);
      left: 50%; }
    @media (max-width: 40em) {
      .postDetails .close {
        transition: all 1s ease-in-out;
        right: -100%; } }
  .postDetails.roomDetails .guest-type {
    font-weight: bold;
    padding: 15px 120px;
    color: #fff; }
    @media (max-width: 40em) {
      .postDetails.roomDetails .guest-type {
        padding: 15px 25px; } }
  .postDetails.roomDetails .description {
    -webkit-column-count: 2;
            column-count: 2;
    -webkit-column-gap: 50px;
            column-gap: 50px;
    padding: 0 120px; }
    @media (max-width: 40em) {
      .postDetails.roomDetails .description {
        -webkit-column-count: 1;
                column-count: 1;
        padding: 0 25px; } }
  .postDetails.roomDetails .roomDetails-btn {
    margin: 20px auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .postDetails .hotelLogo, .postDetails .logo {
    margin: 30px 40px 0;
    width: 200px; }
    @media (max-width: 40em) {
      .postDetails .hotelLogo, .postDetails .logo {
        margin: 30px 20px; } }
  .postDetails .postContainer {
    display: none;
    padding: 50px 0px; }
    @media (max-width: 40em) {
      .postDetails .postContainer {
        padding: 25px 0; } }
    .postDetails .postContainer .post-facilities {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      -webkit-column-gap: 20px;
              column-gap: 20px;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      margin-bottom: 60px;
      padding: 0 120px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      @media (max-width: 40em) {
        .postDetails .postContainer .post-facilities {
          padding: 0 25px;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          margin-bottom: 25px; } }
      .postDetails .postContainer .post-facilities div {
        text-align: center;
        width: 15%; }
        .postDetails .postContainer .post-facilities div img {
          margin-bottom: 20px; }
        .postDetails .postContainer .post-facilities div p {
          line-height: 30px;
          letter-spacing: 1px;
          color: #fff; }
        @media (max-width: 40em) {
          .postDetails .postContainer .post-facilities div {
            width: 40%; }
            .postDetails .postContainer .post-facilities div img {
              max-width: 30%; }
            .postDetails .postContainer .post-facilities div p {
              font-size: 13px;
              line-height: 20px; } }
    .postDetails .postContainer h2 {
      font-size: 40px;
      line-height: 30px;
      letter-spacing: 1px;
      color: #fff;
      padding: 0 120px; }
      @media (max-width: 40em) {
        .postDetails .postContainer h2 {
          padding: 0 25px;
          line-height: 40px; } }
    .postDetails .postContainer h4 {
      font-size: 24px;
      line-height: 10px;
      letter-spacing: 1px;
      color: #fff;
      margin-bottom: 40px; }
      @media (max-width: 40em) {
        .postDetails .postContainer h4 {
          line-height: 25px;
          font-size: 20px;
          margin-bottom: 25px; } }
    .postDetails .postContainer .post-header {
      padding: 0 150px; }
      .postDetails .postContainer .post-header h2 {
        padding: 0;
        margin-bottom: 30px; }
      @media (max-width: 40em) {
        .postDetails .postContainer .post-header {
          padding: 0 25px; }
          .postDetails .postContainer .post-header h2 {
            margin-bottom: 15px; } }
    .postDetails .postContainer .description {
      margin: 30px auto 40px; }
      .postDetails .postContainer .description p {
        color: #fff; }
    .postDetails .postContainer .slider-no {
      color: #fff; }
      .postDetails .postContainer .slider-no span {
        color: #fff; }
    .postDetails .postContainer .noArrowSlider {
      padding-left: 120px;
      padding-top: 10px; }
      .postDetails .postContainer .noArrowSlider h2 {
        padding: 0; }
      @media (max-width: 40em) {
        .postDetails .postContainer .noArrowSlider {
          padding-left: 25px; } }
    .postDetails .postContainer .post-details {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      padding: 70px 150px 0;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      @media (max-width: 40em) {
        .postDetails .postContainer .post-details {
          padding: 50px 25px 0;
          -webkit-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
                  flex-wrap: wrap; } }
      .postDetails .postContainer .post-details_container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        width: 70%; }
        @media (max-width: 40em) {
          .postDetails .postContainer .post-details_container {
            width: 100%;
            margin-top: 20px; } }
        .postDetails .postContainer .post-details_container div {
          width: 50%;
          color: #fff;
          margin-bottom: 10px;
          border-bottom: 1px solid rgba(255, 255, 255, 0.3);
          padding-bottom: 8px; }
          @media (max-width: 40em) {
            .postDetails .postContainer .post-details_container div {
              width: 100%; } }
          .postDetails .postContainer .post-details_container div.programs {
            width: 100%; }
          .postDetails .postContainer .post-details_container div a, .postDetails .postContainer .post-details_container div p, .postDetails .postContainer .post-details_container div span {
            color: #fff; }
    .postDetails .postContainer .post-amenities {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      padding: 70px 120px 0;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      @media (max-width: 40em) {
        .postDetails .postContainer .post-amenities {
          padding: 50px 25px 0;
          -webkit-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
                  flex-wrap: wrap; } }
      .postDetails .postContainer .post-amenities_container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        width: 70%; }
        @media (max-width: 40em) {
          .postDetails .postContainer .post-amenities_container {
            width: 100%;
            margin-top: 20px; } }
        .postDetails .postContainer .post-amenities_container div {
          width: 50%;
          color: #fff;
          margin-bottom: 10px;
          border-bottom: 1px solid rgba(255, 255, 255, 0.3);
          padding-bottom: 8px; }
          @media (max-width: 40em) {
            .postDetails .postContainer .post-amenities_container div {
              width: 100%; } }
  .postDetails h3 {
    font-size: 4vw;
    letter-spacing: 1px;
    color: #fff; }
    .postDetails h3 span {
      line-height: 30px;
      letter-spacing: 3px;
      display: block;
      margin-left: -40px;
      color: #fff; }
    @media (max-width: 40em) {
      .postDetails h3 {
        font-size: 10vw;
        margin-bottom: 0; }
        .postDetails h3 span {
          margin-left: 0; } }
  .postDetails .noArrowSlider-btns .slick-arrow {
    border-color: #fff;
    color: #fff; }
    .postDetails .noArrowSlider-btns .slick-arrow:hover {
      background: #fff;
      color: #006D76; }

.aligncenter {
  display: block;
  margin: auto;
  clear: initial; }

.alignright {
  float: right; }

.alignleft {
  float: left; }

.hotels-template-hotel-reservations .loader {
  display: none; }

.tour360 {
  padding: 150px 30px; }
  @media (max-width: 40em) {
    .tour360 {
      padding: 25px; } }
  .tour360 iframe {
    aspect-ratio: 475 / 267; }

#readMore {
  margin: 20px auto;
  display: block; }

#ymPluginDivContainerInitial #ymDivBar {
  background: #fff !important;
  border-radius: 30px !important;
  border: 2px solid #006D76; }
  #ymPluginDivContainerInitial #ymDivBar img {
    height: 60px !important; }
  @media (max-width: 40em) {
    #ymPluginDivContainerInitial #ymDivBar {
      bottom: 70px; } }

.error404 .main-grid {
  margin-top: 0;
  padding-top: 200px;
  margin-bottom: 40px;
  display: block; }

@font-face {
  font-family: Luthon;
  src: url("../ttf/luthonsouthardscript.ttf");
  font-display: swap; }

@font-face {
  font-family: ElMessiri;
  src: url("../woff/elmessiri-regular.woff");
  font-display: swap; }

@font-face {
  font-family: Branding;
  src: url("../woff/branding-semilight.woff");
  font-display: swap; }

@font-face {
  font-family: Noto;
  src: url("../ttf/notonastaliqurdu.ttf");
  font-display: swap; }

@font-face {
  font-family: AlexBrush;
  src: url("../woff/alexbrush-regular.woff");
  font-display: swap; }

h1, h2, h3, h4, h5, h6 {
  font-family: ElMessiri;
  color: #000; }
  h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
    font-family: AlexBrush;
    color: #00A39D; }

p, li, div {
  font-family: Branding;
  color: rgba(0, 0, 0, 0.6);
  font-size: 16px; }

span {
  font-family: Branding;
  color: rgba(0, 0, 0, 0.6); }

a {
  font-family: Branding;
  font-size: 1vw;
  font-weight: 500;
  line-height: 19px;
  letter-spacing: 1px;
  color: #00A39D; }
  @media (max-width: 40em) {
    a {
      font-size: 4vw; } }

h1, .title {
  font-size: 5vw;
  letter-spacing: 1px;
  line-height: 4.5vw; }
  h1 span, .title span {
    line-height: 140px;
    letter-spacing: 3px;
    display: block;
    margin-left: -40px;
    font-size: 5vw; }
  @media (max-width: 40em) {
    h1, .title {
      font-size: 8vw; }
      h1 span, .title span {
        margin-left: 0;
        line-height: 60px; } }

.rtl h1, .rtl h2, .rtl h3, .rtl h4, .rtl h5, .rtl h6 {
  letter-spacing: 0px !important; }
  .rtl h1 span, .rtl h2 span, .rtl h3 span, .rtl h4 span, .rtl h5 span, .rtl h6 span {
    font-family: Noto; }

.rtl p, .rtl li, .rtl div, .rtl span, .rtl a {
  letter-spacing: 0px !important; }

.rtl h1 {
  font-size: 4vw;
  line-height: 3.5vw;
  margin-bottom: 30px; }
  .rtl h1 span {
    line-height: 160px; }
  @media (max-width: 40em) {
    .rtl h1 {
      font-size: 8vw;
      line-height: 10vw; }
      .rtl h1 span {
        line-height: 100px; } }

#wpadminbar {
  position: fixed !important; }

body.admin-bar.f-topbar-fixed .sticky.fixed {
  margin-top: 2rem; }

body.admin-bar.offcanvas .off-canvas.is-open {
  top: 2.875rem; }
  @media screen and (min-width: 48.9375em) {
    body.admin-bar.offcanvas .off-canvas.is-open {
      top: 2rem; } }

@media print, screen and (min-width: 40em) {
  .mobile-menu,
  .site-title-bar {
    display: none !important; } }

@media screen and (max-width: 39.99875em) {
  .desktop-menu,
  .site-navigation .top-bar-left {
    display: none !important; } }

.site-desktop-title a {
  font-weight: bold; }

.post-navigation::before, .post-navigation::after {
  display: table;
  content: ' ';
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.post-navigation::after {
  clear: both; }

.nav-previous {
  float: left; }

.nav-next {
  float: right; }

.site-header {
  position: absolute;
  width: 100%;
  z-index: 10;
  transition: all 0.5s ease-in;
  background: transparent; }
  .site-header.sticky {
    position: fixed;
    background: #006D76;
    z-index: 10000; }
    .site-header.sticky .top-bar {
      height: 85px;
      background-image: none; }
      .site-header.sticky .top-bar-left img {
        width: 155px !important; }
      .site-header.sticky .top-bar .submenu-container {
        top: 85px; }
    .site-header.sticky .top-bar-right__btn {
      background-color: #00A39D; }
    .site-header.sticky .wpml-ls-sub-menu {
      background-color: #006D76; }
    .site-header.sticky .top-bar-center .menu li.current-menu-item > a, .site-header.sticky .top-bar-center .menu li.current-page-ancestor > a {
      border-bottom: none;
      color: rgba(255, 255, 255, 0.5) !important; }
    .site-header.sticky .top-bar-center .menu li a {
      text-shadow: none; }
    .site-header.sticky .title-bar-left img {
      width: 80px; }
    .site-header.sticky .top-bar-right_top {
      margin-bottom: 0; }
  .site-header.hotel-header .submenu-container {
    padding: 10px 30px; }
    .site-header.hotel-header .submenu-container a {
      font-size: 17px;
      padding: 15px 10px; }
  .site-header.hotel-header .top-bar-center .menu li a {
    padding: 10px 8px; }
  @media (max-width: 40em) {
    .site-header {
      height: 55px; } }

.top-bar {
  background-color: transparent;
  padding: 10px 20px;
  position: relative;
  transition: all 0.5s ease-in;
  height: 130px;
  background-image: linear-gradient(rgba(0, 0, 0, 0.8), transparent); }
  @media (max-width: 40em) {
    .top-bar {
      display: none; } }
  .top-bar.open-submenu {
    background-color: #006D76;
    background-image: none; }
    .top-bar.open-submenu .top-bar-right__btn {
      background-color: #00A39D; }
    .top-bar.open-submenu .top-bar-center li a {
      text-shadow: none; }
  .top-bar ul {
    background-color: transparent; }
    .top-bar ul li.active a {
      color: rgba(255, 255, 255, 0.5);
      background-color: transparent; }
    .top-bar ul li a:hover {
      color: rgba(255, 255, 255, 0.5);
      background-color: transparent; }
  .top-bar a {
    color: #fff;
    text-align: center;
    font-weight: bold; }
  .top-bar-center {
    -webkit-flex: 4;
        -ms-flex: 4;
            flex: 4;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .top-bar-center .menu li a {
      padding: 10px;
      font-size: 1.15vw;
      font-weight: bold;
      text-shadow: 0 0 20px #000; }
    .top-bar-center .menu li.is-active > a {
      color: rgba(255, 255, 255, 0.5);
      background: transparent !important; }
    .top-bar-center .menu li.current-menu-item:not(#menu-item-home):not(.is-submenu-item) > a, .top-bar-center .menu li.current-page-ancestor:not(#menu-item-home):not(.is-submenu-item) > a {
      color: #fff;
      border-bottom: 2px solid #fff; }
    .top-bar-center .menu li.is-dropdown-submenu-parent > a {
      padding-right: 10px; }
      .top-bar-center .menu li.is-dropdown-submenu-parent > a::after {
        display: none; }
    .top-bar-center .menu li.has-submenu .dropdown {
      display: none; }
    .top-bar-center .menu .dropdown {
      background-color: #006D76;
      border: none; }
      .top-bar-center .menu .dropdown a {
        text-align: left; }
      .top-bar-center .menu .dropdown .current-menu-item > a {
        color: rgba(255, 255, 255, 0.5) !important;
        border-bottom: none; }
  .top-bar-left,
  .top-bar-right {
    -webkit-flex: 1 !important;
        -ms-flex: 1 !important;
            flex: 1 !important; }
  .top-bar-left img {
    transition: all 0.5s ease-in; }
  .top-bar-right {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100%;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    .top-bar-right_top {
      margin-bottom: 10px; }
    .top-bar-right_top, .top-bar-right_bottom {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: end;
          -ms-flex-pack: end;
              justify-content: end;
      width: 100%; }
    .top-bar-right__btn {
      background-color: #006D76;
      border-radius: 20px;
      padding: 7px 15px;
      text-transform: uppercase;
      transition: all 0.5s ease;
      font-size: 0.8vw; }
      .top-bar-right__btn:hover {
        background-color: #fff !important;
        color: #006D76; }
      .top-bar-right__btn:first-child {
        margin: 0 5px; }
    .top-bar-right .currencies {
      padding: 0 25px;
      position: relative; }
      .top-bar-right .currencies:after {
        content: "";
        vertical-align: middle;
        display: inline-block;
        border: .35em solid transparent;
        border-top: .5em solid #fff;
        position: absolute;
        right: 10px;
        top: calc(50% - .175em); }
      .top-bar-right .currencies .currency-dropdown {
        position: relative;
        display: inline-block;
        cursor: pointer; }
        .top-bar-right .currencies .currency-dropdown .current {
          color: #fff;
          font-weight: bold;
          font-size: 14pt; }
        .top-bar-right .currencies .currency-dropdown .options {
          display: none;
          position: absolute;
          background: #fff;
          z-index: 99;
          min-width: 100%; }
          .top-bar-right .currencies .currency-dropdown .options .option {
            padding: 5px 6px;
            cursor: pointer; }
            .top-bar-right .currencies .currency-dropdown .options .option:hover {
              color: #00A39D; }
        .top-bar-right .currencies .currency-dropdown:hover .options {
          display: block; }
    .top-bar-right .wpml-ls-legacy-dropdown {
      width: auto;
      margin-left: 20px; }
      .top-bar-right .wpml-ls-legacy-dropdown .wpml-ls-item-toggle {
        padding: 0px;
        padding-right: 22px; }
      .top-bar-right .wpml-ls-legacy-dropdown a {
        background-color: transparent !important;
        border: none;
        padding: 5px;
        line-height: 17px;
        color: #000;
        font-size: 14pt;
        font-weight: bold; }
        .top-bar-right .wpml-ls-legacy-dropdown a span, .top-bar-right .wpml-ls-legacy-dropdown a:after {
          color: #fff;
          font-size: 14pt;
          font-weight: bold; }
        .top-bar-right .wpml-ls-legacy-dropdown a:after {
          right: 5px; }
      .top-bar-right .wpml-ls-legacy-dropdown .wpml-ls-sub-menu {
        border-top: none;
        background-color: #fff; }
        .top-bar-right .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a {
          padding-bottom: 5px;
          color: #000; }
          .top-bar-right .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a span {
            color: #000; }
          .top-bar-right .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a:hover {
            color: #006D76 !important; }
            .top-bar-right .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a:hover span {
              color: #006D76 !important; }
  .top-bar .submenu-container {
    width: 100%;
    position: fixed;
    left: 0;
    height: 220px;
    top: 130px;
    transition: all 0.5s ease-in;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    visibility: hidden;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 5px 40px; }
    .top-bar .submenu-container.active {
      visibility: visible;
      background: #006D76; }
    .top-bar .submenu-container div {
      width: 30%; }
      .top-bar .submenu-container div .menu {
        display: -ms-grid;
        display: grid;
        -ms-grid-rows: (min-content)[4];
            grid-template-rows: repeat(4, min-content);
        grid-auto-flow: column; }
        .top-bar .submenu-container div .menu li {
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-justify-content: space-between;
              -ms-flex-pack: justify;
                  justify-content: space-between; }
          .top-bar .submenu-container div .menu li .vertical {
            display: none; }
          .top-bar .submenu-container div .menu li.current-menu-item > a {
            color: rgba(255, 255, 255, 0.5) !important;
            border-bottom: none !important; }
        .top-bar .submenu-container div .menu a {
          text-align: left; }
          .top-bar .submenu-container div .menu a:hover {
            color: rgba(255, 255, 255, 0.5); }
        .top-bar .submenu-container div .menu .menu-item-has-children .sub-menu {
          display: none; }
      .top-bar .submenu-container div.sub-submenu {
        width: 40%;
        border-left: 1px solid rgba(255, 255, 255, 0.1); }
        .top-bar .submenu-container div.sub-submenu .sub-menu {
          display: none; }
          .top-bar .submenu-container div.sub-submenu .sub-menu.active {
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-flex-wrap: wrap;
                -ms-flex-wrap: wrap;
                    flex-wrap: wrap; }
            .top-bar .submenu-container div.sub-submenu .sub-menu.active li {
              width: 50%; }
    .top-bar .submenu-container img {
      display: none; }

.bookNow-widget, .enquire-widget, .contact-widget {
  background-color: #006D76;
  position: fixed;
  top: 0;
  right: -40vw;
  z-index: 100000;
  height: 100vh;
  width: 40vw;
  transition: all 1s ease;
  padding: 50px 30px;
  overflow-y: scroll; }
  .bookNow-widget.active, .enquire-widget.active, .contact-widget.active {
    right: 0; }
  .bookNow-widget h2, .enquire-widget h2, .contact-widget h2 {
    font-size: 2vw; }
  .bookNow-widget h2, .bookNow-widget a, .enquire-widget h2, .enquire-widget a, .contact-widget h2, .contact-widget a {
    color: #fff !important; }
  .bookNow-widget_header, .enquire-widget_header, .contact-widget_header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .bookNow-widget .form-container, .enquire-widget .form-container, .contact-widget .form-container {
    display: none; }
  .bookNow-widget .form .gform_wrapper .gfield input, .bookNow-widget .form .gform_wrapper .gfield textarea, .bookNow-widget .form .gform_wrapper .gfield select, .enquire-widget .form .gform_wrapper .gfield input, .enquire-widget .form .gform_wrapper .gfield textarea, .enquire-widget .form .gform_wrapper .gfield select, .contact-widget .form .gform_wrapper .gfield input, .contact-widget .form .gform_wrapper .gfield textarea, .contact-widget .form .gform_wrapper .gfield select {
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.5);
    padding-left: 0;
    color: #fff; }
  .bookNow-widget .form .gform_wrapper .gform_footer input, .enquire-widget .form .gform_wrapper .gform_footer input, .contact-widget .form .gform_wrapper .gform_footer input {
    color: #fff; }
  .bookNow-widget .form .gform_confirmation_message, .enquire-widget .form .gform_confirmation_message, .contact-widget .form .gform_confirmation_message {
    color: #fff !important; }
  @media (max-width: 40em) {
    .bookNow-widget, .enquire-widget, .contact-widget {
      width: 100vw;
      right: initial;
      left: -100vw; }
      .bookNow-widget.active, .enquire-widget.active, .contact-widget.active {
        left: 0; } }
  .bookNow-widget select, .enquire-widget select, .contact-widget select {
    background-image: url(../png/select-white-2.png); }

.bookNow-widget .hotels {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin: 20px 0;
  gap: 8px; }
  .bookNow-widget .hotels .hotel {
    width: 32%;
    cursor: pointer; }
    .bookNow-widget .hotels .hotel h3 {
      color: #fff;
      text-align: center;
      margin-top: 12px;
      font-size: 1rem; }
    .bookNow-widget .hotels .hotel div {
      position: relative;
      text-align: center; }
      .bookNow-widget .hotels .hotel div div {
        opacity: 0;
        transition: all 1s ease;
        position: absolute;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: 100%;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        background-color: rgba(0, 109, 118, 0.7);
        top: 0;
        left: 0; }
        .bookNow-widget .hotels .hotel div div a {
          font-size: 0.6vw; }
      .bookNow-widget .hotels .hotel div:hover div {
        opacity: 1; }
  @media (max-width: 40em) {
    .bookNow-widget .hotels {
      gap: 0;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .bookNow-widget .hotels .hotel {
        width: 48%; }
        .bookNow-widget .hotels .hotel img {
          width: 100%; } }

.bookNow-widget_footer {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-top: 50px; }
  .bookNow-widget_footer .back {
    opacity: 0; }
  .bookNow-widget_footer .modify {
    display: none; }
    .bookNow-widget_footer .modify.show {
      display: block; }
  .bookNow-widget_footer .modify, .bookNow-widget_footer .back {
    font-size: 0.7vw; }
    @media (max-width: 40em) {
      .bookNow-widget_footer .modify, .bookNow-widget_footer .back {
        font-size: 3vw; } }

.bookNow-widget .bookNowForm {
  display: none;
  padding: 40px 0; }
  .bookNow-widget .bookNowForm form {
    clear: both;
    overflow: auto; }
  .bookNow-widget .bookNowForm input:not(.btn), .bookNow-widget .bookNowForm select:not(.btn) {
    border: none;
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.5);
    padding-left: 0;
    color: #fff;
    background-color: transparent;
    box-shadow: none; }
  .bookNow-widget .bookNowForm select option {
    background: #006D76; }
    .bookNow-widget .bookNowForm select option:hover {
      background-color: #00A39D; }
  .bookNow-widget .bookNowForm div {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .bookNow-widget .bookNowForm div:not(.datePicker) {
      -webkit-column-gap: 40px;
              column-gap: 40px; }
    .bookNow-widget .bookNowForm div.datePicker {
      border-bottom: 0.5px solid rgba(255, 255, 255, 0.5);
      margin-bottom: 16px;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .bookNow-widget .bookNowForm div.datePicker input {
        border-bottom: none;
        margin-bottom: 0; }
      .bookNow-widget .bookNowForm div.datePicker i {
        color: #fff; }
  .bookNow-widget .bookNowForm [type='submit'] {
    margin-top: 30px;
    float: right;
    cursor: pointer; }

.bookNow-widget .giftCard {
  text-align: right; }
  .bookNow-widget .giftCard a {
    font-size: 0.9vw; }
    @media (max-width: 40em) {
      .bookNow-widget .giftCard a {
        font-size: 3vw; } }

.enquire-widget .form .gform_wrapper .gfield {
  -ms-grid-column: span 12 !important;
      grid-column: span 12 !important;
  /*&:first-child{
          order:1;
        }
        &:nth-child(2){
          order:3;
        }
        &:nth-child(3){
          order:5;
        }
        &:nth-child(4){
          order:2;
        }
        &:nth-child(5){
          order:4;
        }*/ }

.title-bar {
  background-color: transparent; }
  .title-bar-left img {
    /*height: 35px;
      max-width: initial;*/ }

.position-right, .position-left {
  box-shadow: none !important;
  height: calc(100% - 53px);
  width: 100%;
  top: 55px;
  background-color: #006D76;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-content: space-between;
      -ms-flex-line-pack: justify;
          align-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .position-right #menu-main-menu-mobile, .position-right #menu-main-menu-mobile-ar, .position-right #menu-main-menu-mobile-de, .position-left #menu-main-menu-mobile, .position-left #menu-main-menu-mobile-ar, .position-left #menu-main-menu-mobile-de {
    padding-top: 20px;
    padding-left: 30px;
    width: 100%; }
    .position-right #menu-main-menu-mobile li, .position-right #menu-main-menu-mobile-ar li, .position-right #menu-main-menu-mobile-de li, .position-left #menu-main-menu-mobile li, .position-left #menu-main-menu-mobile-ar li, .position-left #menu-main-menu-mobile-de li {
      border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
      .position-right #menu-main-menu-mobile li a, .position-right #menu-main-menu-mobile-ar li a, .position-right #menu-main-menu-mobile-de li a, .position-left #menu-main-menu-mobile li a, .position-left #menu-main-menu-mobile-ar li a, .position-left #menu-main-menu-mobile-de li a {
        color: #fff;
        font-family: ElMessiri;
        font-size: 18px;
        padding-left: 0; }
      .position-right #menu-main-menu-mobile li .is-accordion-submenu a, .position-right #menu-main-menu-mobile-ar li .is-accordion-submenu a, .position-right #menu-main-menu-mobile-de li .is-accordion-submenu a, .position-left #menu-main-menu-mobile li .is-accordion-submenu a, .position-left #menu-main-menu-mobile-ar li .is-accordion-submenu a, .position-left #menu-main-menu-mobile-de li .is-accordion-submenu a {
        font-family: Branding;
        font-size: 14px; }
      .position-right #menu-main-menu-mobile li.is-active > a, .position-right #menu-main-menu-mobile-ar li.is-active > a, .position-right #menu-main-menu-mobile-de li.is-active > a, .position-left #menu-main-menu-mobile li.is-active > a, .position-left #menu-main-menu-mobile-ar li.is-active > a, .position-left #menu-main-menu-mobile-de li.is-active > a {
        color: rgba(255, 255, 255, 0.5);
        background: transparent; }
      .position-right #menu-main-menu-mobile li .submenu-toggle, .position-right #menu-main-menu-mobile-ar li .submenu-toggle, .position-right #menu-main-menu-mobile-de li .submenu-toggle, .position-left #menu-main-menu-mobile li .submenu-toggle, .position-left #menu-main-menu-mobile-ar li .submenu-toggle, .position-left #menu-main-menu-mobile-de li .submenu-toggle {
        width: 70px; }
  .position-right .widget, .position-left .widget {
    width: 100%; }
    .position-right .widget .wpml-ls-legacy-list-horizontal, .position-left .widget .wpml-ls-legacy-list-horizontal {
      padding-left: 20px; }
    .position-right .widget .wpml-ls-current-language a span, .position-left .widget .wpml-ls-current-language a span {
      color: #fff; }
    .position-right .widget a span, .position-left .widget a span {
      color: rgba(255, 255, 255, 0.5); }
  .position-right .off-canvas-footer, .position-left .off-canvas-footer {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .position-right .currencies, .position-left .currencies {
    padding: 4px 0;
    padding-right: 12px;
    position: relative; }
    .position-right .currencies:after, .position-left .currencies:after {
      content: "";
      vertical-align: middle;
      display: inline-block;
      border: .35em solid transparent;
      border-top: .5em solid #fff;
      position: absolute;
      right: 10px;
      top: calc(50% - .275em); }
    .position-right .currencies #currency-selector, .position-left .currencies #currency-selector {
      background: transparent;
      border: none;
      color: #fff;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      padding: 5px 10px 6px;
      margin: 0;
      font-size: 14px; }

.position-right {
  -webkit-transform: translateX(100vw);
      -ms-transform: translateX(100vw);
          transform: translateX(100vw); }
  .position-right #menu-main-menu-mobile li .submenu-toggle, .position-right #menu-main-menu-mobile-de li .submenu-toggle {
    padding-left: 30px; }
  .position-right #menu-main-menu-mobile li.has-submenu-toggle > a, .position-right #menu-main-menu-mobile-de li.has-submenu-toggle > a {
    margin-right: 70px; }

.position-left {
  -webkit-transform: translateX(-100vw);
      -ms-transform: translateX(-100vw);
          transform: translateX(-100vw); }
  .position-left #menu-main-menu-mobile-ar li .submenu-toggle {
    padding-right: 30px;
    right: initial;
    left: 0; }
  .position-left #menu-main-menu-mobile-ar li.has-submenu-toggle > a {
    margin-left: 70px;
    margin-right: 0; }

.off-canvas-content.is-open-right .site-header, .off-canvas-content.is-open-left .site-header {
  background-color: #006D76; }

.js-off-canvas-overlay.is-overlay-fixed {
  opacity: 0 !important; }

.has-position-right .menuIcon span:nth-of-type(1), .has-position-left .menuIcon span:nth-of-type(1) {
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transform: rotatez(45deg) translate(6px, 5px);
      -ms-transform: rotate(45deg) translate(6px, 5px);
          transform: rotatez(45deg) translate(6px, 5px); }

.has-position-right .menuIcon span:nth-of-type(2), .has-position-left .menuIcon span:nth-of-type(2) {
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  -webkit-transform: rotatez(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotatez(-45deg); }

.has-position-right .menuIcon span:nth-of-type(3), .has-position-left .menuIcon span:nth-of-type(3) {
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  width: 50%;
  -webkit-transform: translate(8px, -8px) rotatez(45deg);
      -ms-transform: translate(8px, -8px) rotate(45deg);
          transform: translate(8px, -8px) rotatez(45deg); }

.menuIcon {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 30px;
  cursor: pointer;
  margin-left: auto; }
  .menuIcon span {
    background: #fff;
    border-radius: 10px;
    height: 2px;
    margin: 3px 0;
    transition: 0.4s cubic-bezier(0.68, -0.6, 0.32, 1.6); }
    .menuIcon span:nth-of-type(1) {
      width: 100%; }
    .menuIcon span:nth-of-type(2) {
      width: 100%; }
    .menuIcon span:nth-of-type(3) {
      width: 70%; }

.cta-mobile {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  width: 100%;
  bottom: 0;
  z-index: 10;
  height: 60px;
  border-top: 1px solid rgba(255, 255, 255, 0.1); }
  @media (min-width: 40em) {
    .cta-mobile {
      display: none; } }
  .cta-mobile a {
    width: 50%;
    text-align: center;
    background: #006D76;
    padding: 20px 0;
    color: #fff;
    text-transform: uppercase; }
    .cta-mobile a:first-child {
      border-right: 1px solid rgba(255, 255, 255, 0.1); }
    .cta-mobile a[data-href='enquire'] {
      background: #F3F4F8;
      color: #006D76; }

.hotels-template-hotel-news .site-header, .single-news .site-header, .page-template-page-sitemap .site-header, .post-type-archive-rent .site-header, .page-template-page-news .site-header, .page-template-page-360Tour .site-header, .error404 .site-header {
  background-color: #006D76; }
  .hotels-template-hotel-news .site-header .top-bar, .single-news .site-header .top-bar, .page-template-page-sitemap .site-header .top-bar, .post-type-archive-rent .site-header .top-bar, .page-template-page-news .site-header .top-bar, .page-template-page-360Tour .site-header .top-bar, .error404 .site-header .top-bar {
    background-image: none; }
  .hotels-template-hotel-news .site-header .top-bar-right__btn, .single-news .site-header .top-bar-right__btn, .page-template-page-sitemap .site-header .top-bar-right__btn, .post-type-archive-rent .site-header .top-bar-right__btn, .page-template-page-news .site-header .top-bar-right__btn, .page-template-page-360Tour .site-header .top-bar-right__btn, .error404 .site-header .top-bar-right__btn {
    background-color: #00A39D; }
  .hotels-template-hotel-news .site-header .wpml-ls-sub-menu, .single-news .site-header .wpml-ls-sub-menu, .page-template-page-sitemap .site-header .wpml-ls-sub-menu, .post-type-archive-rent .site-header .wpml-ls-sub-menu, .page-template-page-news .site-header .wpml-ls-sub-menu, .page-template-page-360Tour .site-header .wpml-ls-sub-menu, .error404 .site-header .wpml-ls-sub-menu {
    background-color: #006D76; }

.admin-bar .site-header:not(.sticky) .top-bar .submenu-container {
  top: 104px; }

.wpml-language-switcher-block ul.isHorizontal {
  margin: 20px 30px !important; }
  .wpml-language-switcher-block ul.isHorizontal li div span {
    color: #fff;
    text-transform: uppercase; }

/*.wpml-ls-item-de{
  display: none !important;
}*/
[lang="de-DE"] .top-bar-right__btn {
  padding: 7px 10px; }

.hotelMenu {
  position: relative;
  z-index: 1; }
  .hotelMenu.sticky {
    position: fixed;
    width: 100%;
    -webkit-transform: none !important;
        -ms-transform: none !important;
            transform: none !important;
    z-index: 100000;
    top: 0px;
    opacity: 1 !important; }
  .hotelMenu_container {
    background: #006D76;
    padding: 15px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .hotelMenu_container a {
      color: #fff;
      background: transparent !important; }
      .hotelMenu_container a:hover {
        color: rgba(255, 255, 255, 0.5); }
    .hotelMenu_container .logo {
      margin-right: 50px; }
      .hotelMenu_container .logo img {
        width: 215px; }
    .hotelMenu_container .menu-item.has-submenu .submenu-container {
      display: none; }
    .hotelMenu_container .menu-item.has-submenu:hover > .submenu-container {
      background: #006D76;
      position: absolute;
      display: block; }
    .hotelMenu_container .menu-item.current-menu-item a {
      border-bottom: 2px solid #fff; }
    @media (max-width: 40em) {
      .hotelMenu_container .hotelNav {
        display: none; } }

.hotels-template .site-header.sticky .hotelMenu, .page-template-page-stay .site-header.sticky .hotelMenu, .page-template-page-offersNew .site-header.sticky .hotelMenu, .single-offers .site-header.sticky .hotelMenu {
  -webkit-transform: none !important;
      -ms-transform: none !important;
          transform: none !important;
  opacity: 1 !important;
  pointer-events: auto !important; }
  .hotels-template .site-header.sticky .hotelMenu .logo, .page-template-page-stay .site-header.sticky .hotelMenu .logo, .page-template-page-offersNew .site-header.sticky .hotelMenu .logo, .single-offers .site-header.sticky .hotelMenu .logo {
    display: none; }
  .hotels-template .site-header.sticky .hotelMenu_container, .page-template-page-stay .site-header.sticky .hotelMenu_container, .page-template-page-offersNew .site-header.sticky .hotelMenu_container, .single-offers .site-header.sticky .hotelMenu_container {
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 5px 15px;
    background: rgba(255, 255, 255, 0.1); }

.hotels-template .site-header.sticky .top-bar .submenu-container, .page-template-page-stay .site-header.sticky .top-bar .submenu-container, .page-template-page-offersNew .site-header.sticky .top-bar .submenu-container, .single-offers .site-header.sticky .top-bar .submenu-container {
  z-index: 1000000; }

.hotels-template .site-header.sticky .top-bar .enquireBtn, .page-template-page-stay .site-header.sticky .top-bar .enquireBtn, .page-template-page-offersNew .site-header.sticky .top-bar .enquireBtn, .single-offers .site-header.sticky .top-bar .enquireBtn {
  background-color: #F3F4F8;
  color: #006D76; }
  .hotels-template .site-header.sticky .top-bar .enquireBtn:hover, .page-template-page-stay .site-header.sticky .top-bar .enquireBtn:hover, .page-template-page-offersNew .site-header.sticky .top-bar .enquireBtn:hover, .single-offers .site-header.sticky .top-bar .enquireBtn:hover {
    background-color: #00A39D !important;
    color: #F3F4F8; }

.hotels-template .site-header .top-bar .enquireBtn, .page-template-page-stay .site-header .top-bar .enquireBtn, .page-template-page-offersNew .site-header .top-bar .enquireBtn, .single-offers .site-header .top-bar .enquireBtn {
  background-color: #F3F4F8;
  color: #006D76; }
  .hotels-template .site-header .top-bar .enquireBtn:hover, .page-template-page-stay .site-header .top-bar .enquireBtn:hover, .page-template-page-offersNew .site-header .top-bar .enquireBtn:hover, .single-offers .site-header .top-bar .enquireBtn:hover {
    background-color: #00A39D !important;
    color: #F3F4F8; }

.daterangepicker .drp-calendar {
  max-width: -webkit-fit-content !important;
  max-width: -moz-fit-content !important;
  max-width: fit-content !important; }

.main-container {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 75rem;
  margin: 0 auto; }
  @media print, screen and (min-width: 40em) {
    .main-container {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }

.main-grid {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-top: 1rem; }
  @media print, screen and (min-width: 40em) {
    .main-grid {
      margin-top: 3rem; } }
  .main-grid.sidebar-left .main-content {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .main-grid.sidebar-left .sidebar {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  @media print, screen and (min-width: 40em) {
    .main-grid.sidebar-left .main-content {
      -webkit-order: 2;
          -ms-flex-order: 2;
              order: 2; }
    .main-grid.sidebar-left .sidebar {
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1; } }
  .main-grid .main-content-full-width {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  .main-grid .main-content {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .main-grid .main-content {
        width: calc(66.66667% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
  .main-grid .sidebar {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .main-grid .sidebar {
        width: calc(33.33333% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem;
        margin-top: 1rem; } }

.footer-container {
  /*@include xy-grid-container;
  border-top: 1px solid $medium-gray;
  margin-top: rem-calc(60);*/
  background-color: #006D76;
  padding: 30px; }
  @media (max-width: 40em) {
    .footer-container {
      padding-bottom: 80px; } }

.footer-grid {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  padding: 1.875rem 0;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media (max-width: 40em) {
    .footer-grid {
      padding-bottom: 0; } }
  .footer-grid section {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    min-height: 0px;
    min-width: 0px;
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 64em) {
      .footer-grid section {
        -webkit-flex: 1 1 0px;
            -ms-flex: 1 1 0px;
                flex: 1 1 0px;
        width: auto;
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
  .footer-grid ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    margin-bottom: 60px; }
  .footer-grid .widget.widget_block {
    -webkit-flex: initial;
        -ms-flex: initial;
            flex: initial;
    margin: 0; }
    .footer-grid .widget.widget_block:first-child {
      width: 30%; }
    .footer-grid .widget.widget_block:nth-child(2) {
      width: 35%; }
    .footer-grid .widget.widget_block:last-child {
      width: 25%; }
    @media (max-width: 40em) {
      .footer-grid .widget.widget_block {
        width: 100% !important;
        padding: 0 !important; }
        .footer-grid .widget.widget_block:not(:last-child) {
          margin-bottom: 40px; } }
  .footer-grid .widget .widget_nav_menu {
    width: 100% !important; }
  .footer-grid .widget img {
    margin-bottom: 30px; }
  .footer-grid .widget h2, .footer-grid .widget h3 {
    color: #fff;
    font-size: 1.5vw;
    margin-right: 30px;
    margin-bottom: 30px; }
    @media (max-width: 40em) {
      .footer-grid .widget h2, .footer-grid .widget h3 {
        font-size: 6vw;
        margin-bottom: 15px;
        margin-right: 0; } }
  .footer-grid .widget p {
    color: #fff;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .footer-grid .widget p a {
      color: #fff;
      line-height: 26px; }
    .footer-grid .widget p span {
      color: #fff; }
    @media (max-width: 40em) {
      .footer-grid .widget p {
        border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
        .footer-grid .widget p span {
          text-align: right; } }
  .footer-grid .widget #gform_1, .footer-grid .widget #gform_9 {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-align-items: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
    border-bottom: 1px solid #fff; }
    .footer-grid .widget #gform_1 .gform_body, .footer-grid .widget #gform_9 .gform_body {
      width: 96%; }
      .footer-grid .widget #gform_1 .gform_body input, .footer-grid .widget #gform_9 .gform_body input {
        background: transparent;
        border: none;
        box-shadow: none;
        padding: 8px 0; }
    .footer-grid .widget #gform_1 .gform_footer, .footer-grid .widget #gform_9 .gform_footer {
      margin: 0 !important;
      padding: 0; }
      .footer-grid .widget #gform_1 .gform_footer input, .footer-grid .widget #gform_9 .gform_footer input {
        background: transparent;
        margin: 0;
        padding: 12px 0;
        font-family: monospace;
        font-size: 22px;
        color: #fff;
        border: none; }
  .footer-grid .widget .gform_wrapper {
    margin-bottom: 40px; }
  .footer-grid .widget .wp-block-social-links:not(.is-style-logos-only) .wp-social-link {
    background-color: transparent !important; }
    .footer-grid .widget .wp-block-social-links:not(.is-style-logos-only) .wp-social-link svg {
      display: none; }
    .footer-grid .widget .wp-block-social-links:not(.is-style-logos-only) .wp-social-link a {
      font-size: 20px;
      color: #fff; }

.widget_nav_menu {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .widget_nav_menu .menu li {
    width: 50%; }
    .widget_nav_menu .menu li a {
      color: #fff; }
    .widget_nav_menu .menu li.is-active > a {
      background: transparent;
      font-weight: bold; }
  @media (max-width: 40em) {
    .widget_nav_menu {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .widget_nav_menu .menu li {
        border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
        .widget_nav_menu .menu li a {
          padding-left: 0; } }

.otgs-development-site-front-end {
  display: none; }

@media (max-width: 40em) {
  #block-10 {
    margin-bottom: 0; }
    #block-10 p {
      border-bottom: none; } }

.single-hotels .widget_nav_menu .menu li {
  width: 100%; }

.single-hotels .footer-grid .widget {
  -webkit-flex: initial;
      -ms-flex: initial;
          flex: initial;
  margin: 0; }
  .single-hotels .footer-grid .widget:first-child {
    width: 30%; }
  .single-hotels .footer-grid .widget:nth-child(2) {
    width: 35%; }
  .single-hotels .footer-grid .widget:last-child {
    width: 25%; }
  @media (max-width: 40em) {
    .single-hotels .footer-grid .widget {
      width: 100% !important;
      padding: 0 !important;
      margin-bottom: 40px; } }

.whatsappIcon {
  position: fixed;
  bottom: 10px;
  right: 10px;
  z-index: 1; }
  @media (max-width: 40em) {
    .whatsappIcon {
      bottom: 65px; } }

.giftCardBtn {
  position: fixed;
  bottom: 10px;
  right: 10px;
  background: #0A4158;
  color: #fff;
  border-radius: 50%;
  width: 55px;
  height: 55px;
  z-index: 1;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 22px;
  border: 1px solid #fff; }
  .giftCardBtn:hover {
    color: #fff; }
  @media (max-width: 40em) {
    .giftCardBtn {
      bottom: 65px; } }

body#tinymce {
  height: auto;
  max-width: 75rem;
  padding: 1.25rem !important; }

.sites-button {
  background: #1779ba;
  font-size: 1.25rem;
  font-weight: bold;
  box-shadow: 0 -2px 0 rgba(0, 0, 0, 0.2) inset;
  border-radius: 3px;
  border: none; }

.btn {
  text-transform: uppercase;
  font-size: 1vw;
  border-radius: 20px;
  padding: 10px 20px;
  cursor: pointer; }
  @media (max-width: 40em) {
    .btn {
      font-size: 4vw; } }
  .btn-blueBlock {
    background: #006D76;
    color: #fff; }
    .btn-blueBlock:hover {
      background: #00A39D;
      color: #fff; }
  .btn-blueBox {
    background: transparent;
    color: #006D76;
    border: 1px solid #006D76; }
    .btn-blueBox:hover {
      background: #006D76;
      color: #fff; }
  .btn-whiteBlock {
    background: #fff;
    color: #006D76;
    border: 1px solid #fff; }
    .btn-whiteBlock:hover {
      background: transparent;
      color: #fff; }
  .btn-whiteBox {
    background: transparent;
    color: #fff;
    border: 1px solid #fff; }
    .btn-whiteBox:hover {
      background: #fff;
      color: #006D76 !important; }
  .btn-underline {
    border-radius: 0;
    padding: 0;
    border-bottom: 1px solid #00A39D;
    color: #00A39D;
    font-weight: bold;
    font-size: 1.2vw; }
    @media (max-width: 40em) {
      .btn-underline {
        font-size: 4vw; } }

/*.rounded{
    background: $dark-blue;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  color: #fff;
  z-index: 1000;
  display: flex;
  justify-content: center;
  align-items:center;
  position:relative;
  visibility: hidden;
  @media (max-width: 40em) {
    display: none;
  }
}*/
.homePage_hawana {
  background: #fff; }
  .homePage_hawana-intro {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 100px 150px; }
    .homePage_hawana-intro div {
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1; }
    @media (max-width: 40em) {
      .homePage_hawana-intro {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        padding: 25px; }
        .homePage_hawana-intro div {
          width: 100%;
          -webkit-flex: initial;
              -ms-flex: initial;
                  flex: initial; }
          .homePage_hawana-intro div:last-child {
            padding-left: 30px; } }
  .homePage_hawana-slider_content div {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .homePage_hawana-slider_content div div {
      padding: 20px 50px; }
      .homePage_hawana-slider_content div div p {
        font-size: 1vw;
        margin-bottom: 0;
        line-height: 1.2; }
    @media (max-width: 40em) {
      .homePage_hawana-slider_content div {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .homePage_hawana-slider_content div div {
          padding: 0;
          padding-right: 20px; }
          .homePage_hawana-slider_content div div p {
            font-size: 3vw; } }
  @media (max-width: 40em) {
    .homePage_hawana-slider_content {
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      padding-top: 10px; } }

.homePage_hawana, .homePage_events {
  padding-bottom: 100px; }
  @media (max-width: 40em) {
    .homePage_hawana, .homePage_events {
      padding-bottom: 25px; } }
  .homePage_hawana .slidersContainer .mainSlider .slick-slide.slick-current .slider_title, .homePage_events .slidersContainer .mainSlider .slick-slide.slick-current .slider_title {
    padding-left: 20px; }

.homePage_hotels {
  background: #fff;
  padding: 120px 0px;
  transition: background 0.5s ease-in; }
  .homePage_hotels.backgroundColor {
    background: #F3F4F8; }
    .homePage_hotels.backgroundColor h2 span {
      color: #006D76; }
  .homePage_hotels h2 {
    padding: 0 150px; }
    .homePage_hotels h2 span {
      margin-left: 0; }
  .homePage_hotels h3 {
    font-size: 25px; }
    @media (max-width: 40em) {
      .homePage_hotels h3 {
        font-size: 18px; } }
  @media (max-width: 40em) {
    .homePage_hotels {
      padding: 25px 0; }
      .homePage_hotels h2 {
        padding: 0 25px; } }

.homePage_offers {
  background: #F3F4F8;
  padding: 70px 0px;
  transition: background 0.5s ease-in; }
  .homePage_offers.backgroundColor {
    background: #fff; }
    .homePage_offers.backgroundColor h2 span {
      color: #00A39D; }
  .homePage_offers h2 {
    padding: 0 150px; }
    .homePage_offers h2 span {
      color: #006D76; }
  @media (max-width: 40em) {
    .homePage_offers {
      padding: 30px 0; }
      .homePage_offers h2 {
        padding: 0 25px; } }
  .homePage_offers .offer {
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important; }
    .homePage_offers .offer-image {
      width: 50%;
      padding: 50px;
      padding-left: 150px;
      z-index: 1; }
      .homePage_offers .offer-image img {
        width: 100%; }
    .homePage_offers .offer-content {
      background: #006D76;
      padding: 100px 200px;
      padding-left: 300px;
      width: calc(50% + 300px);
      margin-left: -280px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-content: space-between;
          -ms-flex-line-pack: justify;
              align-content: space-between;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .homePage_offers .offer-content h3, .homePage_offers .offer-content p {
        color: #fff; }
      .homePage_offers .offer-content h3 {
        font-size: 40px; }
      .homePage_offers .offer-content p, .homePage_offers .offer-content a.btn {
        font-size: 20px; }
      .homePage_offers .offer-content .price {
        font-weight: bold; }
      .homePage_offers .offer-content a.btn {
        background: #fff;
        border-radius: 50px;
        padding: 7px 20px;
        color: #00A39D;
        font-weight: bold; }
    @media (max-width: 40em) {
      .homePage_offers .offer {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .homePage_offers .offer-image {
          width: 100%;
          padding: 0; }
          .homePage_offers .offer-image img {
            -webkit-transform: translateY(0) !important;
                -ms-transform: translateY(0) !important;
                    transform: translateY(0) !important; }
        .homePage_offers .offer-content {
          padding: 25px 30px 40px;
          width: 100%;
          margin-left: 0; }
          .homePage_offers .offer-content h3 {
            font-size: 30px; }
          .homePage_offers .offer-content p {
            font-size: 15px; }
          .homePage_offers .offer-content a {
            padding: 15px 20px;
            font-size: 14px; }
          .homePage_offers .offer-content div:last-child {
            margin-top: 40px; } }
  .homePage_offers .slick-arrow {
    background: #fff;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    color: #006D76;
    cursor: pointer;
    position: absolute;
    bottom: 100px;
    z-index: 1;
    border: 1px solid #fff;
    font-size: 0; }
    .homePage_offers .slick-arrow i {
      font-size: 16px; }
    .homePage_offers .slick-arrow.slick-next {
      right: 200px; }
    .homePage_offers .slick-arrow.slick-prev {
      right: 300px; }
    .homePage_offers .slick-arrow:hover {
      background: transparent;
      color: #fff; }
    @media (max-width: 40em) {
      .homePage_offers .slick-arrow {
        width: 50px;
        height: 50px;
        bottom: 28px; }
        .homePage_offers .slick-arrow.slick-next {
          right: 20px; }
        .homePage_offers .slick-arrow.slick-prev {
          right: 80px; } }

.homePage_realEstate {
  padding: 70px 0px 0px;
  background: #fff; }
  .homePage_realEstate h2 {
    padding: 0 150px; }
  @media (max-width: 40em) {
    .homePage_realEstate {
      padding: 30px 0; }
      .homePage_realEstate h2 {
        padding: 0 25px; } }
  .homePage_realEstate-slider {
    background: #fff;
    transition: background 0.5s ease-in; }
    .homePage_realEstate-slider.backgroundColor {
      background: #F3F4F8; }
    .homePage_realEstate-slider .slick-list {
      padding: 0 20% 0 20% !important; }
    .homePage_realEstate-slider .slick-slide {
      padding: 0 10px; }
      .homePage_realEstate-slider .slick-slide:not(.slick-current) .property-content {
        opacity: 0;
        -webkit-transform: scale(0) translateY(-50%);
            -ms-transform: scale(0) translateY(-50%);
                transform: scale(0) translateY(-50%); }
    @media (max-width: 40em) {
      .homePage_realEstate-slider .slick-list {
        padding: 0 !important; }
      .homePage_realEstate-slider .slick-arrow {
        color: #fff;
        width: 50px;
        height: 50px;
        border-radius: 50%;
        background: #006D76;
        cursor: pointer;
        position: absolute;
        bottom: 0px;
        z-index: 1; }
        .homePage_realEstate-slider .slick-arrow.slick-next {
          right: 20px; }
        .homePage_realEstate-slider .slick-arrow.slick-prev {
          right: 80px; }
      .homePage_realEstate-slider .slick-slide {
        padding: 0; } }
  .homePage_realEstate .property-content {
    cursor: default;
    background: #fff;
    width: 60%;
    margin: auto;
    -webkit-transform: scale(1) translateY(-50%);
        -ms-transform: scale(1) translateY(-50%);
            transform: scale(1) translateY(-50%);
    padding: 20px 40px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    opacity: 1;
    transition: all 1s ease; }
    .homePage_realEstate .property-content div:first-child {
      padding-right: 40px; }
    .homePage_realEstate .property-content .cta {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .homePage_realEstate .property-content .cta div {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
      .homePage_realEstate .property-content .cta p {
        text-align: center; }
    @media (max-width: 40em) {
      .homePage_realEstate .property-content {
        -webkit-transform: translateY(0);
            -ms-transform: translateY(0);
                transform: translateY(0);
        width: 100%;
        padding: 20px;
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .homePage_realEstate .property-content div:first-child {
          padding-right: 0;
          margin-bottom: 20px; } }
  .homePage_realEstate .slick-arrow {
    background: #006D76;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    color: #fff;
    cursor: pointer;
    z-index: 1;
    border: 1px solid #006D76;
    font-size: 0; }
    .homePage_realEstate .slick-arrow i {
      font-size: 16px; }
    .homePage_realEstate .slick-arrow:hover {
      background: transparent;
      color: #006D76; }
    .homePage_realEstate .slick-arrow.slick-prev {
      margin-right: 10px; }
    @media (max-width: 40em) {
      .homePage_realEstate .slick-arrow {
        width: 50px;
        height: 50px; } }

.homePage_rental {
  padding: 0px 0px 70px 150px;
  background: #F3F4F8;
  transition: background 0.5s ease-in;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .homePage_rental.backgroundColor {
    background: #F3F4F8; }
    .homePage_rental.backgroundColor h2 span {
      color: #006D76; }
  .homePage_rental h2 {
    line-height: 4vw;
    margin-bottom: 60px; }
    .homePage_rental h2 span {
      line-height: 5vw; }
  .homePage_rental div {
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .homePage_rental div img {
      width: 100%; }
    .homePage_rental div p {
      padding-right: 100px; }
      .homePage_rental div p.price {
        color: #00A39D;
        margin-bottom: 50px;
        font-weight: bolder;
        font-size: 14pt; }
        @media (max-width: 40em) {
          .homePage_rental div p.price {
            font-size: 16px; } }
  @media (max-width: 40em) {
    .homePage_rental {
      padding: 40px 0px 40px 25px;
      background: #fff !important;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      .homePage_rental div {
        -webkit-flex: initial;
            -ms-flex: initial;
                flex: initial;
        width: 100%;
        margin: 10px 0; }
      .homePage_rental h2 {
        line-height: 6vw;
        width: 80%;
        margin-bottom: 20px; }
        .homePage_rental h2 span {
          line-height: 8vw; } }

.homePage_events {
  background: #F3F4F8;
  transition: background 0.5s ease-in;
  padding: 100px 0px; }
  .homePage_events.backgroundColor {
    background: #fff; }
    .homePage_events.backgroundColor h2 span {
      color: #00A39D; }
  .homePage_events h2 {
    padding-left: 150px; }
    .homePage_events h2 span {
      color: #006D76; }
  @media (max-width: 40em) {
    .homePage_events {
      padding: 40px 0; }
      .homePage_events h2 {
        padding-left: 25px; }
      .homePage_events-slider_content {
        margin-top: 15px; }
        .homePage_events-slider_content div {
          font-size: 12px; } }
  .homePage_events .slidersContainer {
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end; }

.homePage_map {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 50px 0 100px;
  background: #fff;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  @media (max-width: 40em) {
    .homePage_map {
      padding: 25px 0; }
      .homePage_map iframe {
        width: 90%; } }
  .homePage_map img {
    width: 100%;
    margin-bottom: 30px; }
  .homePage_map #map {
    height: 500px;
    width: 80%; }
  .homePage_map .gm-style-iw, .homePage_map .gm-style-iw-d {
    max-height: 400px !important; }
  .homePage_map .infoWindow {
    display: none; }
    .homePage_map .infoWindow_container {
      background: #006D76;
      padding: 15px;
      width: 330px; }
      @media (max-width: 40em) {
        .homePage_map .infoWindow_container {
          width: 265px; } }
      .homePage_map .infoWindow_container .content {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        margin: 10px auto; }
      .homePage_map .infoWindow_container h6 {
        margin-top: 10px;
        font-size: 23px;
        color: #fff; }
        @media (max-width: 40em) {
          .homePage_map .infoWindow_container h6 {
            font-size: 16px; } }
      .homePage_map .infoWindow_container p, .homePage_map .infoWindow_container a, .homePage_map .infoWindow_container span {
        color: #fff;
        margin-bottom: 0; }
      .homePage_map .infoWindow_container img {
        width: 225px; }
      .homePage_map .infoWindow_container .image {
        width: 100%;
        height: 200px;
        background-size: cover;
        background-position: center; }
        @media (max-width: 40em) {
          .homePage_map .infoWindow_container .image {
            height: 130px; } }
      .homePage_map .infoWindow_container p {
        font-size: 12px; }
        .homePage_map .infoWindow_container p:first-child {
          font-size: 18px;
          font-family: ElMessiri;
          line-height: 14px; }
          @media (max-width: 40em) {
            .homePage_map .infoWindow_container p:first-child {
              font-size: 16px; } }
        .homePage_map .infoWindow_container p span, .homePage_map .infoWindow_container p i {
          font-size: 10px; }
      .homePage_map .infoWindow_container a {
        font-size: 14px; }
        @media (max-width: 40em) {
          .homePage_map .infoWindow_container a {
            font-size: 12px; } }
      .homePage_map .infoWindow_container .discover {
        text-align: right; }
  .homePage_map .gm-style .gm-style-iw-c {
    background: #006D76;
    padding: 0; }
    @media (max-width: 40em) {
      .homePage_map .gm-style .gm-style-iw-c {
        max-width: 270px !important; } }
  .homePage_map .gm-style .gm-style-iw-d {
    overflow: hidden !important; }
  .homePage_map .gm-ui-hover-effect > span {
    background-color: #fff;
    width: 16px !important;
    height: 16px !important; }
  .homePage_map .gm-style .gm-style-iw-tc::after {
    background: #006D76; }

.homePage .noArrowSlider .slider_title {
  position: absolute;
  bottom: 0;
  width: 100%; }

.homePage .noArrowSlider .slidersContainer .slick-slide h3 {
  font-size: 3vw;
  color: #fff;
  text-shadow: 0 0 8px #5c5c5c; }
  @media (max-width: 40em) {
    .homePage .noArrowSlider .slidersContainer .slick-slide h3 {
      font-size: 7vw; } }

.realEstate_intro-text {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 100px 150px; }
  .realEstate_intro-text div {
    width: 48%; }
  @media (max-width: 40em) {
    .realEstate_intro-text {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      padding: 25px 50px; }
      .realEstate_intro-text div {
        width: 100%; } }

.realEstate_intro-image img {
  width: 100%; }

.realEstate .freehold_properties {
  padding: 100px 150px 50px;
  background: #F3F4F8; }
  .realEstate .freehold_properties div {
    -webkit-column-count: 2;
            column-count: 2;
    width: 80%; }
  @media (max-width: 40em) {
    .realEstate .freehold_properties {
      padding: 25px; }
      .realEstate .freehold_properties div {
        width: 100%;
        -webkit-column-count: 1;
                column-count: 1;
        padding: 0 25px; } }

.realEstate_investing {
  padding: 50px 0px 50px 150px;
  background: #F3F4F8;
  transition: background 0.5s ease-in;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .realEstate_investing.backgroundColor {
    background: #fff; }
  .realEstate_investing h1 {
    margin-bottom: 60px; }
  .realEstate_investing div {
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .realEstate_investing div img {
      width: 100%; }
    @media (min-width: 40em) {
      .realEstate_investing div .img {
        transition: all 1.3s cubic-bezier(0.76, 0, 0.24, 1);
        -webkit-clip-path: inset(100% 0 0 0);
                clip-path: inset(100% 0 0 0);
        overflow: hidden; }
      .realEstate_investing div.is-inview .img {
        -webkit-clip-path: inset(0 0 0 0);
                clip-path: inset(0 0 0 0); } }
    .realEstate_investing div p {
      padding-right: 100px; }
      .realEstate_investing div p.price {
        color: #00A39D;
        margin-bottom: 50px; }
  @media (max-width: 40em) {
    .realEstate_investing {
      padding: 40px 0px 40px 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      .realEstate_investing div {
        -webkit-flex: initial;
            -ms-flex: initial;
                flex: initial;
        width: 100%;
        margin: 10px 0; }
        .realEstate_investing div p {
          padding-right: 25px; }
      .realEstate_investing h1 {
        width: 80%;
        margin-bottom: 20px; } }

@media (max-width: 40em) {
  .realEstate_properties {
    padding: 0; } }

.realEstate_properties .property {
  margin-bottom: 50px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .realEstate_properties .property-content, .realEstate_properties .property-image {
    width: 50%; }
  @media (min-width: 40em) {
    .realEstate_properties .property-image {
      /*&.is-inview{
						div{
							clip-path: inset(0 0 0 0);
						}					
					}
					div{
						transition: all 1.3s cubic-bezier(.76,0,.24,1);
						clip-path: inset(100% 0 0 0);
						overflow: hidden;
					}*/ } }
  .realEstate_properties .property-content {
    padding: 50px; }
  .realEstate_properties .property img {
    width: 100%; }
  .realEstate_properties .property a {
    display: inline-block; }
  @media (max-width: 40em) {
    .realEstate_properties .property {
      margin-bottom: 0px; }
      .realEstate_properties .property-content, .realEstate_properties .property-image {
        width: 100%; }
      .realEstate_properties .property a {
        padding-top: 0; } }
  .realEstate_properties .property:nth-child(odd) {
    padding-right: 150px; }
    .realEstate_properties .property:nth-child(odd) h1 {
      padding-left: 150px;
      width: 100%; }
    .realEstate_properties .property:nth-child(odd) .property-content {
      background: #006D76;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-left: -10%;
      padding-left: 15%;
      margin-top: 5%; }
      .realEstate_properties .property:nth-child(odd) .property-content p {
        color: #fff; }
    .realEstate_properties .property:nth-child(odd) .property-image {
      z-index: 1;
      margin-bottom: 5%; }
    @media (max-width: 40em) {
      .realEstate_properties .property:nth-child(odd) {
        padding-right: 0;
        padding-top: 25px; }
        .realEstate_properties .property:nth-child(odd):not(:first-child) {
          background: #F3F4F8; }
        .realEstate_properties .property:nth-child(odd) h1 {
          padding-left: 25px; }
        .realEstate_properties .property:nth-child(odd) .property-content {
          background: #F3F4F8;
          margin: 0;
          padding: 50px; }
          .realEstate_properties .property:nth-child(odd) .property-content p {
            color: #000; }
          .realEstate_properties .property:nth-child(odd) .property-content a {
            color: #006D76; }
        .realEstate_properties .property:nth-child(odd) .property-image {
          margin-bottom: 0; } }
  .realEstate_properties .property:nth-child(even) .property-content {
    padding-left: 150px; }
    .realEstate_properties .property:nth-child(even) .property-content h1 span {
      margin-left: 0; }
    .realEstate_properties .property:nth-child(even) .property-content div {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      height: 100%;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-align-content: space-between;
          -ms-flex-line-pack: justify;
              align-content: space-between; }
    @media (max-width: 40em) {
      .realEstate_properties .property:nth-child(even) .property-content {
        padding-left: 25px; }
        .realEstate_properties .property:nth-child(even) .property-content p {
          padding: 20px 25px 0; }
        .realEstate_properties .property:nth-child(even) .property-content a {
          margin-left: 25px; } }

.realEstate_invest {
  padding: 50px 150px 100px; }
  .realEstate_invest-content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .realEstate_invest-content div {
      width: 45%; }
  .realEstate_invest-getInTouch {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: 30px auto; }
    .realEstate_invest-getInTouch div {
      width: 45%;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
  @media (max-width: 40em) {
    .realEstate_invest {
      padding: 40px 25px; }
      .realEstate_invest-content {
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center; }
        .realEstate_invest-content div {
          width: 80%; }
      .realEstate_invest-getInTouch {
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center; }
        .realEstate_invest-getInTouch div {
          width: 80%; } }

.realEstate .gform_wrapper .gfield#field_2_4 {
  margin-bottom: 18px; }

.single-realEstate .description {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 100px 150px; }
  .single-realEstate .description div {
    width: 45%; }
  .single-realEstate .description h1 {
    font-size: 4vw; }
    @media (max-width: 40em) {
      .single-realEstate .description h1 {
        font-size: 7vw; }
        .single-realEstate .description h1 span {
          margin-left: 0; } }
  .single-realEstate .description a {
    border-bottom: 1px solid;
    padding-bottom: 5px; }
  @media (max-width: 40em) {
    .single-realEstate .description {
      padding: 50px 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .single-realEstate .description div {
        width: 100%; }
        .single-realEstate .description div:last-child {
          padding: 0 25px; } }

.single-realEstate .features {
  background: #006D76;
  padding: 100px 150px; }
  .single-realEstate .features_container {
    display: -ms-grid;
    display: grid;
    gap: 20px;
    -ms-grid-columns: (1fr)[6];
        grid-template-columns: repeat(6, 1fr); }
    .single-realEstate .features_container div {
      text-align: center;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-content: space-between;
          -ms-flex-line-pack: justify;
              align-content: space-between;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding: 20px 0; }
      .single-realEstate .features_container div h6 {
        width: 100%;
        margin-bottom: 0; }
      .single-realEstate .features_container div img {
        margin-bottom: 20px; }
  .single-realEstate .features h2, .single-realEstate .features h6 {
    text-align: center;
    color: #fff; }
  @media (max-width: 40em) {
    .single-realEstate .features {
      padding: 50px 25px; }
      .single-realEstate .features_container {
        -ms-grid-columns: (1fr)[3];
            grid-template-columns: repeat(3, 1fr);
        gap: 10px; }
        .single-realEstate .features_container h6 {
          font-size: 14px; }
        .single-realEstate .features_container img {
          width: 60%; } }

.single-realEstate .property_carousel {
  background: #F3F4F8; }
  .single-realEstate .property_carousel h1 {
    padding-top: 90px;
    padding-left: 50px; }
  .single-realEstate .property_carousel .slider_content {
    position: relative;
    margin: 10px 0 !important; }
    .single-realEstate .property_carousel .slider_content p {
      color: #000 !important; }
  .single-realEstate .property_carousel .mainSlider .slider_content {
    padding-top: 20px; }
  .single-realEstate .property_carousel .mainSlider .slick-current .slider_content {
    padding-top: 0; }
  .single-realEstate .property_carousel .navSlider .slider_content {
    margin: 16px 0 !important; }

.single-realEstate .documents {
  background: #F3F4F8;
  padding: 20px 0px 100px;
  transition: background 0.5s ease-in;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .single-realEstate .documents.backgroundColor {
    background: #fff; }
  .single-realEstate .documents .pdf {
    width: 30%;
    margin: 0 10px; }
    .single-realEstate .documents .pdf div {
      background: #006D76;
      padding: 10px 15px 30px; }
    .single-realEstate .documents .pdf h5, .single-realEstate .documents .pdf a {
      color: #fff; }
    .single-realEstate .documents .pdf a {
      font-size: 15px; }
    .single-realEstate .documents .pdf img {
      width: 100%; }
  @media (max-width: 40em) {
    .single-realEstate .documents {
      padding: 60px 0 0px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .single-realEstate .documents .pdf {
        width: 80%;
        margin-bottom: 40px; } }

.single-realEstate .masterplan {
  padding: 50px 0px; }
  .single-realEstate .masterplan h2 {
    text-align: center;
    margin-bottom: 30px; }
  .single-realEstate .masterplan img {
    width: 100%; }
  @media (max-width: 40em) {
    .single-realEstate .masterplan {
      padding: 25px 0; } }

.single-realEstate .mainFeatures {
  padding: 50px 150px; }
  .single-realEstate .mainFeatures h1 {
    margin-bottom: 30px; }
  .single-realEstate .mainFeatures_container {
    display: -ms-grid;
    display: grid;
    gap: 20px;
    -ms-grid-columns: (1fr)[6];
        grid-template-columns: repeat(6, 1fr); }
    .single-realEstate .mainFeatures_container div {
      text-align: center;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-content: space-between;
          -ms-flex-line-pack: justify;
              align-content: space-between;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding: 20px 0; }
      .single-realEstate .mainFeatures_container div h6 {
        width: 100%;
        margin-bottom: 0; }
      .single-realEstate .mainFeatures_container div img {
        margin-bottom: 20px; }
  @media (max-width: 40em) {
    .single-realEstate .mainFeatures {
      padding: 25px; }
      .single-realEstate .mainFeatures_container {
        gap: 10px;
        -ms-grid-columns: (1fr)[3];
            grid-template-columns: repeat(3, 1fr); }
        .single-realEstate .mainFeatures_container h6 {
          font-size: 14px; }
        .single-realEstate .mainFeatures_container img {
          width: 60%; } }

.single-realEstate .realEstate_gallery {
  padding-top: 100px;
  padding-bottom: 100px;
  background: #fff;
  transition: background 0.5s ease-in; }
  .single-realEstate .realEstate_gallery.backgroundColor {
    background: #F3F4F8; }
  @media (max-width: 40em) {
    .single-realEstate .realEstate_gallery {
      padding-top: 25px;
      padding-bottom: 25px; } }

.single-realEstate .realEstate_form {
  background: #F3F4F8;
  padding: 50px 150px;
  transition: background 0.5s ease-in; }
  .single-realEstate .realEstate_form.backgroundColor {
    background: #fff; }
  .single-realEstate .realEstate_form h1 {
    margin-bottom: 30px; }
  @media (max-width: 40em) {
    .single-realEstate .realEstate_form {
      padding: 25px; }
      .single-realEstate .realEstate_form .gform_footer {
        text-align: left; } }

.single-realEstate .otherProjects {
  padding: 50px 150px 100px; }
  .single-realEstate .otherProjects h1 {
    padding-top: 50px;
    padding-left: 5px; }
  .single-realEstate .otherProjects .projects {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .single-realEstate .otherProjects .projects .property {
      width: 32%; }
      .single-realEstate .otherProjects .projects .property h3 {
        text-align: center; }
  @media (max-width: 40em) {
    .single-realEstate .otherProjects {
      padding: 25px; }
      .single-realEstate .otherProjects h1 {
        padding-top: 0; }
      .single-realEstate .otherProjects .projects {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .single-realEstate .otherProjects .projects .property {
          width: 100%;
          margin-bottom: 30px; }
          .single-realEstate .otherProjects .projects .property h3 {
            text-align: left;
            margin-top: 15px; } }

.stay_intro {
  padding: 100px 150px 50px; }
  .stay_intro div {
    -webkit-column-count: 2;
            column-count: 2; }
  @media (max-width: 40em) {
    .stay_intro {
      padding: 25px; }
      .stay_intro h3 {
        width: 100%;
        font-size: 32px; }
      .stay_intro div {
        padding: 0 25px;
        -webkit-column-count: 1;
                column-count: 1; } }

.stay .hotels .hotel {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 50px 0;
  transition: background 0.5s ease-in; }
  .stay .hotels .hotel-info, .stay .hotels .hotel-gallery {
    width: 48%; }
  .stay .hotels .hotel img {
    width: 100%; }
  .stay .hotels .hotel h1 span {
    margin-left: 0; }
  .stay .hotels .hotel:nth-child(even) {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    padding-right: 150px;
    background: #F3F4F8; }
    .stay .hotels .hotel:nth-child(even).backgroundColor {
      background: #fff; }
  .stay .hotels .hotel:nth-child(odd) {
    background: #fff;
    padding-left: 150px; }
    .stay .hotels .hotel:nth-child(odd).backgroundColor {
      background: #F3F4F8; }
  .stay .hotels .hotel .details {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 10px 0px;
    -webkit-column-gap: 60px;
            column-gap: 60px; }
    .stay .hotels .hotel .details p {
      color: #00A39D;
      margin-bottom: 0;
      font-size: 18px;
      line-height: 1.2;
      position: relative; }
      .stay .hotels .hotel .details p:first-child {
        font-size: 40px;
        font-family: ElMessiri; }
      .stay .hotels .hotel .details p span {
        font-size: 20px;
        opacity: 0.6; }
        .stay .hotels .hotel .details p span.tooltipIcon {
          opacity: 1;
          border-radius: 50%;
          border: 1px solid;
          width: 16px;
          height: 16px;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-justify-content: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          position: absolute;
          top: 0;
          right: -16px;
          font-size: 16px;
          cursor: help; }
          .stay .hotels .hotel .details p span.tooltipIcon .tooltip {
            opacity: 0; }
          @media (max-width: 40em) {
            .stay .hotels .hotel .details p span.tooltipIcon {
              right: -20px; } }
          .stay .hotels .hotel .details p span.tooltipIcon:hover .tooltip {
            opacity: 1;
            padding: 10px;
            width: -webkit-max-content;
            width: -moz-max-content;
            width: max-content;
            min-width: 300px;
            background: #fff;
            color: #000;
            box-shadow: 0 0 8px 0px #a5a5a5; }
      .stay .hotels .hotel .details p i {
        font-size: 22px; }
      @media (max-width: 40em) {
        .stay .hotels .hotel .details p {
          font-size: 12px; }
          .stay .hotels .hotel .details p:first-child {
            font-size: 20px; }
          .stay .hotels .hotel .details p span {
            font-size: 10px; }
          .stay .hotels .hotel .details p i {
            font-size: 12px; } }
  .stay .hotels .hotel .btns {
    margin-top: 60px; }
    .stay .hotels .hotel .btns a {
      margin-right: 30px; }
  .stay .hotels .hotel .hotelHighlights {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .stay .hotels .hotel .hotelHighlights p {
      color: #00A39D;
      font-weight: bold; }
      .stay .hotels .hotel .hotelHighlights p img {
        width: 25px;
        margin-right: 3px;
        -webkit-filter: brightness(1.3);
                filter: brightness(1.3); }
  .stay .hotels .hotel-gallery .slick-arrow {
    position: absolute;
    bottom: -50px;
    font-size: 40px;
    color: #00A39D; }
    .stay .hotels .hotel-gallery .slick-arrow.slick-prev {
      left: 0; }
    .stay .hotels .hotel-gallery .slick-arrow.slick-next {
      left: 60px; }
    @media (max-width: 40em) {
      .stay .hotels .hotel-gallery .slick-arrow {
        bottom: initial;
        top: -40px;
        left: initial !important; }
        .stay .hotels .hotel-gallery .slick-arrow.slick-prev {
          right: 30px; }
        .stay .hotels .hotel-gallery .slick-arrow.slick-next {
          right: -10px; } }
  .stay .hotels .hotel-gallery .slider-no {
    font-size: 40px;
    font-family: ElMessiri;
    color: rgba(0, 163, 157, 0.4);
    text-align: right;
    padding-right: 40px; }
    .stay .hotels .hotel-gallery .slider-no span {
      color: #00A39D; }
    @media (max-width: 40em) {
      .stay .hotels .hotel-gallery .slider-no {
        /*padding-right: 25px;
					    font-size: 20px;*/
        display: none; } }
  @media (max-width: 40em) {
    .stay .hotels .hotel {
      padding: 50px 0px !important;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: column-reverse !important;
          -ms-flex-direction: column-reverse !important;
              flex-direction: column-reverse !important;
      /*&:nth-child(even){
					padding-right:25px;
					.hotel-info,h1{
						padding-left:25px;
					}
				}
				&:nth-child(odd){
					padding-left:25px;
					.hotel-info{
						padding-right:25px;
					}
				}*/ }
      .stay .hotels .hotel-info, .stay .hotels .hotel-gallery {
        width: 100%; }
      .stay .hotels .hotel-info, .stay .hotels .hotel h1 {
        padding: 0 15px; }
      .stay .hotels .hotel .btns {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        margin-top: 10px; }
        .stay .hotels .hotel .btns a {
          margin-right: 0; } }

.stay_dineAround {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 50px 0px;
  padding-left: 150px;
  transition: background 0.5s ease-in; }
  .stay_dineAround-details, .stay_dineAround-image {
    width: 48%; }
  .stay_dineAround img {
    width: 100%; }
  .stay_dineAround .btns {
    margin-top: 60px; }
  @media (max-width: 40em) {
    .stay_dineAround {
      padding: 50px 0;
      padding-left: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      .stay_dineAround-details, .stay_dineAround-image {
        width: 100%; }
      .stay_dineAround-details {
        padding-right: 25px; } }

.singleHotel_intro {
  padding: 50px 150px; }
  .singleHotel_intro .introText {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 10px;
            column-gap: 10px; }
    .singleHotel_intro .introText div {
      width: 50%; }
    @media (max-width: 40em) {
      .singleHotel_intro .introText {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .singleHotel_intro .introText div {
          width: 100%; }
          .singleHotel_intro .introText div:last-child {
            padding: 0 25px; } }
  .singleHotel_intro .hotel-facilities {
    display: -ms-grid;
    display: grid;
    gap: 20px;
    -ms-grid-columns: (1fr)[6];
        grid-template-columns: repeat(6, 1fr);
    padding: 50px 0; }
    .singleHotel_intro .hotel-facilities div {
      text-align: center;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-content: start;
          -ms-flex-line-pack: start;
              align-content: start;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding: 20px 0; }
      .singleHotel_intro .hotel-facilities div h6 {
        width: 100%;
        margin-bottom: 0; }
      .singleHotel_intro .hotel-facilities div img {
        margin-bottom: 20px; }
    @media (max-width: 40em) {
      .singleHotel_intro .hotel-facilities {
        padding: 25px 0;
        -ms-grid-columns: (1fr)[3];
            grid-template-columns: repeat(3, 1fr); } }
  @media (max-width: 40em) {
    .singleHotel_intro {
      padding: 25px; } }

.singleHotel_rooms {
  padding: 50px 0px;
  background: #fff;
  transition: background 0.5s ease-in; }
  .singleHotel_rooms.backgroundColor {
    background: #F3F4F8; }
  .singleHotel_rooms h1 {
    padding-left: 150px; }
  @media (max-width: 40em) {
    .singleHotel_rooms {
      padding: 25px 0; }
      .singleHotel_rooms h1 {
        padding-left: 15px; } }
  .singleHotel_rooms .img {
    position: relative; }
    .singleHotel_rooms .img .imgHover {
      position: absolute;
      background: rgba(0, 0, 0, 0.6);
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      color: #fff;
      visibility: hidden; }
      @media (max-width: 40em) {
        .singleHotel_rooms .img .imgHover {
          visibility: visible;
          width: 40px;
          height: 40px;
          right: 0;
          left: inherit; } }
  .singleHotel_rooms [data-roomDetails]:hover .imgHover {
    visibility: visible; }

.singleHotel_offers {
  background: #F3F4F8;
  padding: 50px 0px;
  transition: background 0.5s ease-in; }
  .singleHotel_offers.backgroundColor {
    background: #fff; }
  .singleHotel_offers h1 {
    padding: 0 150px; }
  @media (max-width: 40em) {
    .singleHotel_offers {
      padding: 30px 0; }
      .singleHotel_offers h1 {
        padding: 0 25px; } }
  .singleHotel_offers .offer {
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important; }
    .singleHotel_offers .offer-image {
      width: 50%;
      padding: 50px;
      padding-left: 150px;
      z-index: 1; }
      .singleHotel_offers .offer-image img {
        width: 100%; }
    .singleHotel_offers .offer-content {
      background: #006D76;
      padding: 100px 200px;
      padding-left: 300px;
      width: calc(50% + 300px);
      margin-left: -280px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-content: space-between;
          -ms-flex-line-pack: justify;
              align-content: space-between;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .singleHotel_offers .offer-content div {
        width: 100%; }
      .singleHotel_offers .offer-content h2, .singleHotel_offers .offer-content p {
        color: #fff; }
      .singleHotel_offers .offer-content h2 {
        font-size: 40px; }
      .singleHotel_offers .offer-content p, .singleHotel_offers .offer-content a {
        font-size: 20px; }
      .singleHotel_offers .offer-content .price {
        font-weight: bold; }
      .singleHotel_offers .offer-content a {
        background: #fff;
        border-radius: 50px;
        padding: 7px 20px;
        color: #00A39D;
        font-weight: bold; }
    @media (max-width: 40em) {
      .singleHotel_offers .offer {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .singleHotel_offers .offer-image {
          width: 100%;
          padding: 0 !important; }
        .singleHotel_offers .offer-content {
          padding: 25px 30px 40px !important;
          width: 100%;
          margin-left: 0; }
          .singleHotel_offers .offer-content h2 {
            font-size: 30px; }
          .singleHotel_offers .offer-content p {
            font-size: 15px; }
          .singleHotel_offers .offer-content a {
            padding: 15px 20px;
            font-size: 14px; }
          .singleHotel_offers .offer-content div:last-child {
            margin-top: 40px; } }
  .singleHotel_offers .slick-arrow {
    background: #fff;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    color: #006D76;
    cursor: pointer;
    position: absolute;
    bottom: 100px;
    z-index: 1; }
    .singleHotel_offers .slick-arrow.slick-next {
      right: 200px; }
    .singleHotel_offers .slick-arrow.slick-prev {
      right: 300px; }
    @media (max-width: 40em) {
      .singleHotel_offers .slick-arrow {
        width: 50px;
        height: 50px;
        bottom: 28px; }
        .singleHotel_offers .slick-arrow.slick-next {
          right: 20px; }
        .singleHotel_offers .slick-arrow.slick-prev {
          right: 80px; } }

.singleHotel .ourHotel, .singleHotel_news {
  padding-bottom: 50px; }
  @media (max-width: 40em) {
    .singleHotel .ourHotel, .singleHotel_news {
      padding-bottom: 25px; } }
  .singleHotel .ourHotel h1, .singleHotel_news h1 {
    padding-left: 150px; }
    @media (max-width: 40em) {
      .singleHotel .ourHotel h1, .singleHotel_news h1 {
        padding-left: 15px; } }

.singleHotel .ourHotel_section2 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-left: 150px; }
  .singleHotel .ourHotel_section2 > div {
    width: 48%; }
  .singleHotel .ourHotel_section2 img {
    width: 100%; }
  @media (max-width: 40em) {
    .singleHotel .ourHotel_section2 {
      padding: 50px 0;
      padding-left: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      .singleHotel .ourHotel_section2 > div {
        width: 100%; }
        .singleHotel .ourHotel_section2 > div.text {
          padding-right: 25px;
          padding-top: 25px; } }

.singleHotel_news .mainSlider .slick-slide h5 {
  font-size: 2vw !important; }
  @media (max-width: 40em) {
    .singleHotel_news .mainSlider .slick-slide h5 {
      font-size: 5vw !important; } }

.singleHotel_map {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 10px 150px;
  background: #fff;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  /*#map {
		  height: 500px;
		  width: 80%;
		  margin-top: -50px;
		}
		.gm-style-iw, .gm-style-iw-d{
			max-height: 400px !important;
		}
		.infoWindow{
			display: none;
			&_container{
				background:$dark-blue;
				padding:15px;
				width: 330px;
				.content{
					display: flex;
					justify-content: space-between;
					margin: 10px auto;
				}
				h6{
					margin-top: 10px;
					font-size: 23px;
					color:#fff;
				}
				p,a{
					color:#fff;
					margin-bottom: 0;
				}
				img{
					width: 225px;
				}
				.image{
					width: 100%;
					height: 200px;
					background-size:cover;
					background-position: center;
				}
				p{
					font-size: 12px;
		    		&:first-child{
		    			font-size: 18px;
		    			font-family: ElMessiri;
		    			line-height: 14px;
		    		}
		    		span,i{
		    			font-size: 10px;
		    		}
				}
				a{
					font-size: 14px;
				}
				.discover{
					text-align: right;
				}
			}
		}
		.gm-style .gm-style-iw-c{
			background:$dark-blue;
			padding:0;
		}
		.gm-style .gm-style-iw-d{
			overflow: hidden !important;
		}
		.gm-ui-hover-effect>span{
			background-color: #fff;
		    width: 16px !important;
		    height: 16px !important;
		}
		.gm-style .gm-style-iw-tc::after{
			background:$dark-blue;
		}*/ }
  .singleHotel_map h1 {
    width: 100%; }
  @media (max-width: 40em) {
    .singleHotel_map {
      padding: 25px;
      /*iframe{
    			width: 90%;
    		}*/
      /*h1{
    			padding-left: 25px;
    		}*/ } }
  .singleHotel_map .acf-map {
    width: 100%;
    height: 500px; }
  .singleHotel_map .acf-map img {
    max-width: inherit !important; }

.singleHotel_dining {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 50px 0;
  padding-left: 150px;
  transition: background 0.5s ease-in; }
  .singleHotel_dining-details, .singleHotel_dining-image {
    width: 48%; }
  .singleHotel_dining img {
    width: 100%; }
  .singleHotel_dining .btns {
    margin-top: 60px; }
  @media (max-width: 40em) {
    .singleHotel_dining {
      padding: 50px 0;
      padding-left: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      .singleHotel_dining-details, .singleHotel_dining-image {
        width: 100%; } }

.singleHotel_reviews {
  background: #fff;
  padding: 50px 0px;
  transition: background 0.5s ease-in;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .singleHotel_reviews.backgroundColor {
    background: #F3F4F8; }
  @media (max-width: 40em) {
    .singleHotel_reviews {
      padding: 25px 0;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }
  .singleHotel_reviews .container {
    text-align: center;
    width: 60%; }
    .singleHotel_reviews .container .rate {
      font-size: 23px;
      color: #006D76;
      margin: 30px auto; }
      .singleHotel_reviews .container .rate img {
        width: 30px; }
    .singleHotel_reviews .container h5 {
      font-size: 24px;
      line-height: 40px;
      letter-spacing: 1px;
      margin-bottom: 20px; }
    .singleHotel_reviews .container p {
      font-size: 20px;
      line-height: 20px;
      letter-spacing: 1px;
      margin-bottom: 40px; }
    @media (max-width: 40em) {
      .singleHotel_reviews .container {
        width: 75%;
        padding-bottom: 30px; }
        .singleHotel_reviews .container .images {
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-justify-content: space-evenly;
              -ms-flex-pack: space-evenly;
                  justify-content: space-evenly; }
          .singleHotel_reviews .container .images img {
            width: 40%; }
        .singleHotel_reviews .container h5 {
          font-size: 16px;
          line-height: 28px; }
        .singleHotel_reviews .container p {
          font-size: 12px; } }
  .singleHotel_reviews .tripAdvisor-container {
    width: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }

.singleHotel_otherHotels {
  background: #fff;
  padding: 50px 0px;
  transition: background 0.5s ease-in; }
  .singleHotel_otherHotels.backgroundColor {
    background: #F3F4F8; }
  .singleHotel_otherHotels h1 {
    padding: 0 150px; }
    .singleHotel_otherHotels h1 span {
      margin-left: 0; }
  @media (max-width: 40em) {
    .singleHotel_otherHotels {
      padding: 25px 0; }
      .singleHotel_otherHotels h1 {
        padding: 0 25px; } }

.singleHotel_instagram {
  padding: 50px 0;
  background: #F3F4F8;
  transition: background 0.5s ease-in; }
  .singleHotel_instagram.backgroundColor {
    background: #fff; }
  @media (max-width: 40em) {
    .singleHotel_instagram {
      padding: 25px 0; } }
  .singleHotel_instagram-container {
    width: 60%;
    margin: auto; }
    @media (max-width: 40em) {
      .singleHotel_instagram-container {
        width: 90%; } }
    .singleHotel_instagram-container .sbi_follow_btn a {
      border-radius: 20px !important;
      padding: 10px 20px !important;
      text-transform: uppercase !important;
      font-size: 1vw !important; }
    .singleHotel_instagram-container .sbi_follow_btn span {
      color: #fff; }

.singleHotel_app {
  padding: 50px 150px; }
  @media (max-width: 40em) {
    .singleHotel_app {
      padding: 25px; } }
  .singleHotel_app-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 50px;
            column-gap: 50px;
    margin-top: 50px; }
    .singleHotel_app-container img {
      width: 300px; }
    @media (max-width: 40em) {
      .singleHotel_app-container {
        margin: 25px auto; } }

.singleHotel .guestType {
  color: #006D76;
  font-weight: bold; }

.hotels-template-hotel-reservations header, .hotels-template-hotel-reservations footer {
  display: none; }

.accomodation_rooms {
  background: #fff;
  transition: background 0.5s ease-in; }
  .accomodation_rooms.backgroundColor {
    background: #F3F4F8; }
  .accomodation_rooms h3 {
    padding-left: 150px;
    margin-bottom: 30px; }
  @media (max-width: 40em) {
    .accomodation_rooms h3 {
      padding-left: 15px; } }
  .accomodation_rooms-types {
    transition: background 0.5s ease-in;
    padding: 70px 0; }
    @media (max-width: 40em) {
      .accomodation_rooms-types {
        padding: 25px 0; } }
    .accomodation_rooms-types:nth-child(odd) {
      background: #fff; }
      .accomodation_rooms-types:nth-child(odd).backgroundColor {
        background: #F3F4F8; }
    .accomodation_rooms-types:nth-child(even) {
      background: #F3F4F8; }
      .accomodation_rooms-types:nth-child(even).backgroundColor {
        background: #fff; }
        .accomodation_rooms-types:nth-child(even).backgroundColor .carousel-slider .slick-slide .slide-content {
          background: #F3F4F8; }
  .accomodation_rooms .img {
    position: relative; }
    .accomodation_rooms .img .imgHover {
      position: absolute;
      background: rgba(0, 0, 0, 0.6);
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      color: #fff;
      visibility: hidden; }
      @media (max-width: 40em) {
        .accomodation_rooms .img .imgHover {
          visibility: visible;
          width: 40px;
          height: 40px;
          right: 0;
          left: inherit; } }
  .accomodation_rooms [data-roomDetails]:hover .imgHover {
    visibility: visible; }

.accomodation_roomFactSheet {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 70px 150px 0; }
  .accomodation_roomFactSheet > div {
    width: 50%; }
  .accomodation_roomFactSheet .icons > div {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin-bottom: 20px; }
    .accomodation_roomFactSheet .icons > div div {
      width: 40px;
      margin-right: 30px; }
    .accomodation_roomFactSheet .icons > div p {
      font-weight: 600;
      font-size: 20px;
      width: 80%; }
  @media (max-width: 40em) {
    .accomodation_roomFactSheet {
      padding: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .accomodation_roomFactSheet > div {
        width: 100%; }
      .accomodation_roomFactSheet .icons {
        padding-top: 30px; }
        .accomodation_roomFactSheet .icons p {
          font-size: 16px !important; } }

.accomodation_video {
  position: relative; }
  @media (max-width: 40em) {
    .accomodation_video {
      margin-bottom: 20px; } }
  .accomodation_video a {
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
    width: 70px;
    height: 70px;
    background: none;
    opacity: 0.8;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    mix-blend-mode: screen;
    color: #000; }
    .accomodation_video a:before {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: #fff;
      border-radius: 50%;
      content: '';
      mix-blend-mode: color-burn; }
  .accomodation_video i {
    font-size: 35px; }
    .accomodation_video i:before {
      margin-right: 0; }
  .accomodation_video:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.32) 0%, rgba(0, 0, 0, 0) 100%); }
  .accomodation_video .videoContainer {
    z-index: 0;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 1s ease-in-out; }
    .accomodation_video .videoContainer iframe {
      width: 100%;
      height: 100%; }
    .accomodation_video .videoContainer.open {
      opacity: 1;
      z-index: 10; }

.ourHotel .noArrowSlider .slidersContainer .mainSlider .slick-slide h3 {
  font-size: 2.5vw;
  margin-bottom: 0;
  color: #000; }

.ourHotel-brochure {
  text-align: center;
  padding-bottom: 50px; }
  .ourHotel-brochure img {
    margin-bottom: 20px; }

.ourHotel-extraContent {
  padding: 50px 150px; }
  .ourHotel-extraContent_content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  @media (max-width: 40em) {
    .ourHotel-extraContent {
      padding: 25px; }
      .ourHotel-extraContent_content {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; } }

.ourHotel-section1 {
  padding-top: 100px;
  padding-bottom: 100px; }
  @media (max-width: 40em) {
    .ourHotel-section1 {
      padding: 25px 0;
      padding-left: 15px; } }

.ourHotel-section {
  padding: 50px 150px; }
  @media (max-width: 40em) {
    .ourHotel-section {
      padding: 25px; } }
  .ourHotel-section_header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .ourHotel-section_header div {
      width: 50%; }
    .ourHotel-section_header img {
      margin-bottom: 30px; }
    @media (max-width: 40em) {
      .ourHotel-section_header {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        margin-bottom: 30px; }
        .ourHotel-section_header div {
          width: 100%; } }

.ourHotel-block {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background: #006D76; }
  .ourHotel-block h3 {
    font-size: 40px;
    line-height: 35px;
    letter-spacing: 0px;
    margin-bottom: 30px; }
  .ourHotel-block h3, .ourHotel-block p, .ourHotel-block li, .ourHotel-block a {
    color: #fff; }
  .ourHotel-block > div {
    width: 50%; }
    .ourHotel-block > div:last-child {
      padding: 50px 70px; }
  .ourHotel-block_content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .ourHotel-block img {
    width: 100%; }
  .ourHotel-block p {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 5px;
            column-gap: 5px; }
    .ourHotel-block p span {
      width: 35%; }
      @media (max-width: 40em) {
        .ourHotel-block p span {
          width: 50%; } }
  .ourHotel-block .fees div {
    color: #fff;
    border-color: rgba(255, 255, 255, 0.09) !important; }
  @media (max-width: 40em) {
    .ourHotel-block {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .ourHotel-block h3 {
        font-size: 30px; }
      .ourHotel-block div {
        width: 100%; }
        .ourHotel-block div:last-child {
          padding: 30px 20px; } }

.ourHotel .fees div {
  padding: 10px 0 5px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .ourHotel .fees div:not(:last-child) {
    border-bottom: 1px solid rgba(0, 0, 0, 0.09); }

.ourHotel-aquapark {
  background: #F3F4F8;
  padding: 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .ourHotel-aquapark > div {
    width: 45%;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .ourHotel-aquapark h2 {
    font-size: 40px;
    line-height: 45px;
    letter-spacing: 1px; }
  .ourHotel-aquapark p {
    font-size: 20px;
    font-weight: 700;
    line-height: 35px;
    letter-spacing: 1px;
    color: #006D76; }
  @media (max-width: 40em) {
    .ourHotel-aquapark {
      padding: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .ourHotel-aquapark > div {
        width: 100%; }
      .ourHotel-aquapark h2 {
        font-size: 20px; }
      .ourHotel-aquapark p {
        font-size: 16px;
        margin-top: 20px; } }

.ourHotel-gallery {
  padding-top: 50px;
  padding-bottom: 50px; }
  .ourHotel-gallery .btn {
    margin-left: 11%;
    margin-top: 20px; }
  @media (max-width: 40em) {
    .ourHotel-gallery {
      padding-top: 25px;
      padding-bottom: 25px; }
      .ourHotel-gallery .btn {
        margin-left: 12px; } }

.ourHotel-facilities {
  padding: 50px 150px;
  padding-right: 0;
  background: #fff;
  transition: background 0.5s ease-in; }
  .ourHotel-facilities.backgroundColor {
    background: #F3F4F8; }
  @media (max-width: 40em) {
    .ourHotel-facilities {
      padding: 25px;
      padding-right: 0; } }
  .ourHotel-facilities .carousel-slider .slick-slide div {
    height: 100%; }
  .ourHotel-facilities .carousel-slider .slick-slide .slide-content {
    background: #006D76; }
    .ourHotel-facilities .carousel-slider .slick-slide .slide-content h3, .ourHotel-facilities .carousel-slider .slick-slide .slide-content p {
      color: #fff; }
    @media (max-width: 40em) {
      .ourHotel-facilities .carousel-slider .slick-slide .slide-content h3 {
        font-size: 24px; } }
  .ourHotel-facilities .otherFacilities {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 60px 150px 0; }
    @media (max-width: 40em) {
      .ourHotel-facilities .otherFacilities {
        padding: 25px;
        padding-left: 0; } }
    .ourHotel-facilities .otherFacilities > div {
      width: 40%;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin: 0 10px 20px;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .ourHotel-facilities .otherFacilities > div img {
        max-width: 50px;
        margin-right: 10px; }
      .ourHotel-facilities .otherFacilities > div p {
        margin-bottom: 0; }
      @media (max-width: 40em) {
        .ourHotel-facilities .otherFacilities > div {
          width: 100%; }
          .ourHotel-facilities .otherFacilities > div img {
            max-width: 35px; } }

.ourHotel-services {
  padding: 50px 150px;
  background: #F3F4F8;
  transition: background 0.5s ease-in; }
  .ourHotel-services.backgroundColor {
    background: #fff; }
  @media (max-width: 40em) {
    .ourHotel-services {
      padding: 25px; } }
  .ourHotel-services .services {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .ourHotel-services .services > div {
      width: 40%;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin-bottom: 20px;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .ourHotel-services .services > div img {
        max-width: 50px;
        margin-right: 10px; }
      .ourHotel-services .services > div p {
        margin-bottom: 0; }
      @media (max-width: 40em) {
        .ourHotel-services .services > div {
          width: 100%; }
          .ourHotel-services .services > div img {
            max-width: 35px; } }

.ourHotel-activities {
  padding-top: 50px;
  padding-bottom: 50px; }
  @media (max-width: 40em) {
    .ourHotel-activities {
      padding: 25px 0;
      padding-left: 15px; }
      .ourHotel-activities.noArrowSlider .slidersContainer .mainSlider .slick-slide h5 {
        font-size: 5vw; } }
  .ourHotel-activities.noArrowSlider .slidersContainer .mainSlider .slick-slide h3 {
    font-size: 2.5vw;
    margin-bottom: 0;
    color: #000; }
    @media (max-width: 40em) {
      .ourHotel-activities.noArrowSlider .slidersContainer .mainSlider .slick-slide h3 {
        font-size: 7vw; } }

.ourHotel-twoColText {
  -webkit-column-count: 2;
          column-count: 2;
  -webkit-column-gap: 50px;
          column-gap: 50px;
  margin-top: 30px; }
  @media (max-width: 40em) {
    .ourHotel-twoColText {
      -webkit-column-count: 1;
              column-count: 1;
      -webkit-column-gap: 0;
              column-gap: 0; } }

.facilitiesServices .noArrowSlider .slidersContainer .slick-slide .slider_content {
  margin: 10px 0;
  transition: all 1s ease-in-out 1s;
  -webkit-transform: translateX(80px);
      -ms-transform: translateX(80px);
          transform: translateX(80px); }

.facilitiesServices .noArrowSlider .slidersContainer .slick-slide.slick-current .slider_content {
  -webkit-transform: translateX(0px);
      -ms-transform: translateX(0px);
          transform: translateX(0px); }

.spa .noPaddingTop {
  padding-top: 0;
  padding-bottom: 50px; }

.meetings .ourHotel-section {
  padding: 0 150px; }
  @media (max-width: 40em) {
    .meetings .ourHotel-section {
      padding: 25px; } }

.meetings_rooms {
  background: #F3F4F8;
  padding: 50px 150px; }
  @media (max-width: 40em) {
    .meetings_rooms {
      padding: 25px; } }
  .meetings_rooms-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .meetings_rooms-container > div {
      width: 33%;
      padding: 0 20px; }
      .meetings_rooms-container > div:not(:nth-child(3n)) {
        border-right: 1px solid rgba(0, 0, 0, 0.09); }
    .meetings_rooms-container h3 {
      font-size: 40px;
      line-height: 45px;
      letter-spacing: 1px;
      margin-bottom: 40px; }
    .meetings_rooms-container .size {
      font-size: 20px;
      font-weight: 700;
      line-height: 22px;
      letter-spacing: 1px;
      color: #00A39D;
      margin-bottom: 40px; }
      .meetings_rooms-container .size span {
        margin-left: 35px; }
    @media (max-width: 40em) {
      .meetings_rooms-container {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .meetings_rooms-container > div {
          width: 100%;
          padding: 20px 0; }
          .meetings_rooms-container > div:not(:nth-child(3n)) {
            border-right: none;
            border-bottom: 1px solid rgba(0, 0, 0, 0.09); }
        .meetings_rooms-container h3 {
          font-size: 26px;
          line-height: 30px;
          margin-bottom: 20px; }
        .meetings_rooms-container .size {
          font-size: 16px;
          margin-bottom: 20px; } }

.meetings .ourHotel-wedding {
  padding: 50px 0px 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .meetings .ourHotel-wedding div {
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .meetings .ourHotel-wedding div img {
      width: 100%; }
    .meetings .ourHotel-wedding div p {
      padding-right: 100px;
      margin-top: 50px; }
  .meetings .ourHotel-wedding ul {
    -webkit-column-count: 2;
            column-count: 2;
    -webkit-column-gap: 55px;
            column-gap: 55px;
    margin: 30px 0;
    list-style: none;
    padding-right: 100px; }
    .meetings .ourHotel-wedding ul li {
      color: rgba(0, 0, 0, 0.6);
      padding-left: 20px;
      position: relative;
      margin-bottom: 10px; }
      .meetings .ourHotel-wedding ul li:before {
        color: #00A39D;
        left: 5px;
        top: 10px;
        position: absolute;
        content: '\e800';
        font-family: "fontello";
        line-height: 10px;
        font-size: 20px; }
  @media (max-width: 40em) {
    .meetings .ourHotel-wedding {
      padding: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      .meetings .ourHotel-wedding ul {
        -webkit-column-count: 1;
                column-count: 1;
        -webkit-column-gap: 0px;
                column-gap: 0px;
        margin-top: 15px;
        padding-right: 0px; }
      .meetings .ourHotel-wedding div {
        -webkit-flex: initial;
            -ms-flex: initial;
                flex: initial;
        width: 100%;
        margin: 10px 0; }
        .meetings .ourHotel-wedding div p {
          padding-right: 0;
          margin-top: 25px; } }

.dining .noArrowSlider .slidersContainer .mainSlider .slick-slide h3 {
  font-size: 2.5vw;
  margin-bottom: 0;
  color: #000; }

.dining-section {
  padding-top: 70px;
  padding-bottom: 70px;
  transition: background 0.5s ease-in; }
  .dining-section h2 {
    padding-left: 150px; }
    @media (max-width: 40em) {
      .dining-section h2 {
        padding-left: 25px; } }
  .dining-section h3 {
    color: #fff;
    margin-bottom: 0; }
  .dining-section .image {
    position: relative; }
    .dining-section .image .logo {
      position: absolute;
      top: 0;
      left: 0;
      width: 30%; }
  .dining-section .phone {
    font-weight: 700;
    color: #006D76; }
    .dining-section .phone a {
      font-weight: 700;
      color: #006D76; }
  .dining-section:nth-child(odd) {
    background: #fff; }
    .dining-section:nth-child(odd).backgroundColor {
      background: #F3F4F8; }
  .dining-section:nth-child(even) {
    background: #F3F4F8;
    transition: background 0.5s ease-in; }
    .dining-section:nth-child(even).backgroundColor {
      background: #fff; }
      .dining-section:nth-child(even).backgroundColor .carousel-slider .slick-slide .slide-content {
        transition: background 0.5s ease-in;
        background: #F3F4F8; }

.gallery {
  padding: 70px 150px; }
  @media (max-width: 40em) {
    .gallery {
      padding: 25px; } }
  .gallery-tabs {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    margin-bottom: 60px; }
    .gallery-tabs div {
      padding: 5px 20px;
      color: rgba(0, 0, 0, 0.3);
      font-size: 20px;
      line-height: 35px;
      cursor: pointer; }
      .gallery-tabs div.active, .gallery-tabs div:hover {
        color: rgba(0, 0, 0, 0.6); }
  .gallery-dropdown {
    border: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.3);
    margin-bottom: 30px; }
    .gallery-dropdown:focus {
      border: none;
      border-bottom: 1px solid rgba(0, 0, 0, 0.3);
      box-shadow: none; }
  .gallery .grid {
    -webkit-column-count: 3;
            column-count: 3;
    -webkit-column-gap: 30px;
            column-gap: 30px;
    display: none;
    -webkit-transform: translateZ(0px);
            transform: translateZ(0px); }
    @media (max-width: 40em) {
      .gallery .grid {
        -webkit-column-count: 1;
                column-count: 1;
        -webkit-column-gap: 0px;
                column-gap: 0px; } }
    .gallery .grid.active {
      display: block; }
    .gallery .grid.tour360.active {
      display: inline-block; }
    .gallery .grid div {
      margin: 0;
      display: -ms-grid;
      display: grid;
      -ms-grid-rows: 1fr auto;
          grid-template-rows: 1fr auto;
      margin-bottom: 30px;
      -webkit-column-break-inside: avoid;
              break-inside: avoid;
      cursor: pointer;
      transition: all 1.3s cubic-bezier(0.76, 0, 0.24, 1);
      -webkit-clip-path: inset(100% 0 0 0);
              clip-path: inset(100% 0 0 0);
      overflow: hidden;
      -webkit-transform: translateZ(10px);
              transform: translateZ(10px); }
      .gallery .grid div.is-inview {
        -webkit-clip-path: inset(0 0 0 0);
                clip-path: inset(0 0 0 0); }
      .gallery .grid div img {
        width: 100%; }
      .gallery .grid div.hide {
        display: none; }
      @media (max-width: 40em) {
        .gallery .grid div {
          margin-bottom: 17px; } }
    .gallery .grid iframe {
      width: 100%;
      aspect-ratio: 2 / 1;
      /* Keeps same ratio as before */
      display: block;
      max-width: 100%; }
      @media (max-width: 40em) {
        .gallery .grid iframe {
          aspect-ratio: 1 / 2; } }
  .gallery .goToTop {
    margin: 40px auto;
    text-align: center; }
    .gallery .goToTop div {
      width: 50px;
      height: 50px;
      border-radius: 50%;
      color: #006D76;
      cursor: pointer;
      font-size: 25px;
      background: #F3F4F8;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin: 0 auto 20px; }
      .gallery .goToTop div:hover {
        background: #006D76;
        color: #F3F4F8; }
      .gallery .goToTop div i {
        line-height: 0; }
    .gallery .goToTop a {
      color: #006D76; }
  .gallery-lightbox {
    position: fixed;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    top: 0;
    right: -100vw;
    transition: all 1s ease-in-out;
    z-index: 10000;
    background: #000; }
    .gallery-lightbox.open {
      right: 0; }
    .gallery-lightbox .btn {
      position: absolute;
      z-index: 1;
      top: 50px;
      left: 50px;
      color: #fff;
      text-shadow: 0 0 14px black; }
    .gallery-lightbox .gallery-container {
      overflow: hidden;
      display: none; }
      .gallery-lightbox .gallery-container.open {
        display: block;
        /*@media (max-width: 40em) {
					display: flex;
					align-items: center;
				}*/ }
      .gallery-lightbox .gallery-container .slick-arrow {
        position: fixed;
        z-index: 1;
        bottom: 50px;
        color: #fff;
        text-shadow: 0 0 14px black;
        border-bottom: 1px solid;
        padding-bottom: 5px;
        text-transform: uppercase;
        font-size: 1vw; }
        .gallery-lightbox .gallery-container .slick-arrow.slick-prev {
          left: 50px; }
        .gallery-lightbox .gallery-container .slick-arrow.slick-next {
          right: 50px; }
        @media (max-width: 40em) {
          .gallery-lightbox .gallery-container .slick-arrow {
            font-size: 3vw; } }
      .gallery-lightbox .gallery-container .slick-slide {
        background: #000; }
        .gallery-lightbox .gallery-container .slick-slide img {
          opacity: 0;
          transition: opacity 1s ease-in-out 1.5s;
          width: initial !important;
          height: 100vh;
          margin: auto; }
        .gallery-lightbox .gallery-container .slick-slide.slick-current img {
          opacity: 1; }
        @media (max-width: 40em) {
          .gallery-lightbox .gallery-container .slick-slide {
            height: 100vh; }
            .gallery-lightbox .gallery-container .slick-slide div {
              display: -webkit-flex !important;
              display: -ms-flexbox !important;
              display: flex !important;
              -webkit-align-items: center;
                  -ms-flex-align: center;
                      align-items: center;
              height: 100%; }
            .gallery-lightbox .gallery-container .slick-slide img {
              height: initial;
              width: 100%; } }

/*.loadMoreTest{
	background-color: #f6f6f6;
    width: 400px;
    margin: 20px auto;
    color: #444;
	div {
	    display:none;
	    padding: 10px;
	    border-width: 0 1px 1px 0;
	    border-style: solid;
	    border-color: #fff;
	    box-shadow: 0 1px 1px #ccc;
	    margin-bottom: 5px;
	    background-color: #f1f1f1;
	}
	#loadMore {
	    padding: 10px;
	    text-align: center;
	    background-color: #33739E;
	    color: #fff;
	    border-width: 0 1px 1px 0;
	    border-style: solid;
	    border-color: #fff;
	    box-shadow: 0 1px 1px #ccc;
	    transition: all 600ms ease-in-out;
	}
	#loadMore:hover {
	    background-color: #fff;
	    color: #33739E;
	}
}*/
.videos {
  padding: 70px 0; }
  .videos h2 {
    padding-left: 150px; }
    @media (max-width: 40em) {
      .videos h2 {
        padding-left: 25px; } }
  .videos-slider {
    background: #fff;
    transition: background 0.5s ease-in; }
    .videos-slider.backgroundColor {
      background: #F3F4F8; }
    .videos-slider .slick-list {
      padding: 0 10% 0 10% !important; }
    .videos-slider .slick-slide {
      padding: 0 10px; }
      .videos-slider .slick-slide:not(.slick-current) .video-content {
        opacity: 0;
        -webkit-transform: translateX(100px);
            -ms-transform: translateX(100px);
                transform: translateX(100px); }
    @media (max-width: 40em) {
      .videos-slider .slick-list {
        padding: 0 !important; }
      .videos-slider \ .slick-slide {
        padding: 0; } }
  .videos .video-content {
    cursor: default;
    /*background: $light-grey;
		    width: 70%;
		    margin: auto;
		    transform: scale(1) translateY(-50%);
		    padding: 20px 40px;
		    justify-content: space-between;
		    min-height: 160px;
		    display: flex;*/
    padding: 20px;
    -webkit-transform: translateX(0px);
        -ms-transform: translateX(0px);
            transform: translateX(0px);
    opacity: 1;
    transition: all 1s ease;
    /* div:first-child{
		    	padding-right: 40px;
		    }*/
    /*.cta{
		    	display: flex;
			    flex-direction: column;
			    justify-content: space-between;
			    div{
			    	display: flex;
			    }
			    p{
			    	text-align: center;
			    }
		    }*/ }
    @media (max-width: 40em) {
      .videos .video-content {
        /*transform: translateY(0);
			    width: 100%;
			    padding: 20px;
			    flex-wrap: wrap;
			    div:first-child{
			    	padding-right:0;
			    	margin-bottom: 20px;
			    }*/ } }
  .videos .video-image iframe {
    width: 100%;
    height: 520px; }
  .videos .slick-arrow {
    background: transparent;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    color: #006D76;
    cursor: pointer;
    z-index: 1;
    border: 1px solid #006D76;
    font-size: 26px;
    position: absolute;
    top: -100px;
    z-index: 1; }
    .videos .slick-arrow:hover {
      background: #006D76;
      color: #fff; }
    .videos .slick-arrow.slick-prev {
      right: 200px; }
    .videos .slick-arrow.slick-next {
      right: 100px; }
    @media (max-width: 40em) {
      .videos .slick-arrow {
        width: 50px;
        height: 50px;
        color: #fff;
        border-radius: 50%;
        background: #006D76;
        cursor: pointer;
        position: absolute;
        z-index: 1;
        top: -70px; }
        .videos .slick-arrow.slick-next {
          right: 20px; }
        .videos .slick-arrow.slick-prev {
          right: 80px; } }

.newsPage {
  padding-top: 130px; }

.singleNews {
  padding-top: 130px; }
  .singleNews .breadcrumbs {
    padding: 20px 100px;
    margin: 0; }
    .singleNews .breadcrumbs a, .singleNews .breadcrumbs span {
      font-family: Branding;
      font-size: 20px;
      line-height: 35px;
      letter-spacing: 1px;
      color: #000; }
      @media (max-width: 40em) {
        .singleNews .breadcrumbs a, .singleNews .breadcrumbs span {
          font-size: 14px;
          line-height: 20px; } }
  .singleNews_section {
    padding: 20px 150px 50px; }
    @media (max-width: 40em) {
      .singleNews_section {
        padding: 25px; } }
    .singleNews_section .featuredImg {
      width: 100%;
      margin-bottom: 40px; }
    .singleNews_section .btn-blueBox {
      margin-top: 30px;
      display: inline-block; }
    .singleNews_section .btns {
      margin-top: 50px; }
      .singleNews_section .btns a {
        margin-right: 30px; }
    .singleNews_section img:not(.featuredImg) {
      padding: 10px; }

@media (min-width: 40em) {
  .reviews_intro {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 50px;
            column-gap: 50px; }
    .reviews_intro > div:first-child {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 60%;
      -webkit-column-gap: 30px;
              column-gap: 30px; }
    .reviews_intro > div:last-child {
      width: 30%; } }

.reviews #rp-widget {
  width: 100% !important; }
  .reviews #rp-widget .rp-widget-top {
    background: none; }
    .reviews #rp-widget .rp-widget-top-title {
      height: auto !important;
      margin-bottom: 20px; }
      .reviews #rp-widget .rp-widget-top-title #rp-widget-js-info {
        left: 125px;
        display: none !important; }
      .reviews #rp-widget .rp-widget-top-title #rp-widget-logo {
        width: 120px; }
    .reviews #rp-widget .rp-widget-top .rp-widget-gri-title {
      display: none; }
    .reviews #rp-widget .rp-widget-top .rp-widget-gri-value {
      float: left;
      text-align: left;
      padding-left: 15px; }
    .reviews #rp-widget .rp-widget-top .rp-widget-graph {
      display: none; }
    .reviews #rp-widget .rp-widget-top .rp-widget-sources {
      width: 25%;
      text-align: left;
      float: left;
      width: auto; }
    .reviews #rp-widget .rp-widget-top .rp-widget-reviews {
      display: none; }
    .reviews #rp-widget .rp-widget-top .rp-widget-sources-element, .reviews #rp-widget .rp-widget-top .rp-widget-reviews-element {
      width: calc(50% - 10px);
      float: left;
      display: inline;
      margin: 0px 5px; }
    .reviews #rp-widget .rp-widget-top .rp-widget-number, .reviews #rp-widget .rp-widget-top .rp-widget-label {
      width: 100%;
      font-size: 18px;
      line-height: 22px;
      text-align: center; }
    .reviews #rp-widget .rp-widget-top .rp-widget-label {
      font-size: 14px;
      margin-left: 0; }
  .reviews #rp-widget .rp-widget-bottom {
    background: none; }
  .reviews #rp-widget #rp-widget-dialog div.tooltip-bubrt352wblue {
    background: #ffffff; }
  .reviews #rp-widget #rp-widget-dialog div.tooltip-bubrt352wblue div.tooltip-bubrt352wblue-inner {
    background: #ffffff; }
  .reviews #rp-widget.widget-type-4 {
    width: 100%; }
    .reviews #rp-widget.widget-type-4 .rp-widget-top, .reviews #rp-widget.widget-type-4 .rp-widget-bottom {
      background-image: none; }
    .reviews #rp-widget.widget-type-4 .rp-widget-gri-title {
      display: none; }
    .reviews #rp-widget.widget-type-4 .rp-widget-graph {
      display: none; }

.reviews #guest-reviews {
  padding: 50px 150px; }
  @media (max-width: 40em) {
    .reviews #guest-reviews {
      padding: 25px; } }
  .reviews #guest-reviews .review-list {
    margin-top: 10px;
    font-size: 14px; }
    .reviews #guest-reviews .review-list ul {
      list-style: none;
      margin: 0;
      padding: 0;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .reviews #guest-reviews .review-list ul li {
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        margin-bottom: 40px;
        list-style: none;
        width: 50%;
        padding: 0 10px 40px; }
        @media (max-width: 40em) {
          .reviews #guest-reviews .review-list ul li {
            width: 100%;
            padding: 0 0 20px;
            margin-bottom: 20px; } }
        .reviews #guest-reviews .review-list ul li .logo-wrapper {
          color: #000;
          margin-bottom: 30px;
          font-size: 30px;
          line-height: 30px; }
          .reviews #guest-reviews .review-list ul li .logo-wrapper a {
            color: #000;
            font-size: 30px;
            line-height: 30px;
            font-family: ElMessiri; }
          @media (max-width: 40em) {
            .reviews #guest-reviews .review-list ul li .logo-wrapper {
              margin-bottom: 10px;
              font-size: 20px;
              line-height: 20px; }
              .reviews #guest-reviews .review-list ul li .logo-wrapper a {
                font-size: 20px;
                line-height: 20px; } }
        @media (min-width: 40em) {
          .reviews #guest-reviews .review-list ul li .info-div {
            width: 25%;
            float: left; } }
        @media (max-width: 40em) {
          .reviews #guest-reviews .review-list ul li .info-div .top-info {
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            width: 100%;
            -webkit-justify-content: space-between;
                -ms-flex-pack: justify;
                    justify-content: space-between; } }
        .reviews #guest-reviews .review-list ul li .info-div .rating-wrapper {
          margin-bottom: 7px;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-column-gap: 10px;
                  column-gap: 10px;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          color: rgba(0, 0, 0, 0.6);
          font-size: 12px;
          line-height: 8px; }
          .reviews #guest-reviews .review-list ul li .info-div .rating-wrapper img {
            width: 13px; }
        .reviews #guest-reviews .review-list ul li .info-div .publish-wrapper {
          font-size: 18px;
          color: rgba(0, 0, 0, 0.6);
          margin-bottom: 3px; }
          @media (max-width: 40em) {
            .reviews #guest-reviews .review-list ul li .info-div .publish-wrapper {
              font-size: 15px; } }
        .reviews #guest-reviews .review-list ul li .info-div .title-wrapper {
          color: #333; }
        @media (min-width: 40em) {
          .reviews #guest-reviews .review-list ul li .disc-div {
            width: 75%;
            float: left;
            padding-left: 15px; } }

.reviews .backgr {
  background: #CCCCCC;
  border: 1px solid #666;
  width: 200px;
  min-width: 200px;
  min-height: 20px; }

.reviews .highlight {
  background: #096; }

.reviews #lang_selector {
  background-color: #006D76;
  color: #fff;
  border: none;
  box-shadow: none;
  background-image: url(../png/select-white-2.png);
  background-size: initial;
  padding: 5px 40px;
  background-position: right 0 center; }
  .reviews #lang_selector option:hover {
    background-color: #fff; }

.reviews .rtl #guest-reviews #rp-widget .rp-widget-top .rp-widget-number {
  text-align: left; }

.reviews .rtl #guest-reviews #rp-widget .rp-widget-top .rp-widget-label {
  text-align: left; }

.reviews .rtl #guest-reviews #rp-widget .rp-widget-top .rp-widget-top-title #rp-widget-js-info {
  right: 85px; }

.reviews .rtl #guest-reviews #rp-widget-dialog {
  left: auto !important;
  right: 125px; }

.reviews .show_message {
  width: 100%;
  text-align: center;
  display: none; }

.reviews .r_link {
  color: #000;
  text-decoration: none; }

.reviews .r_link:hover {
  text-decoration: underline; }

.reviews .holiday_chk_logo {
  width: 32px;
  height: 32px; }

.reviews_footer {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 40px;
          column-gap: 40px;
  margin-bottom: 60px; }
  @media (max-width: 40em) {
    .reviews_footer {
      padding: 25px; }
      .reviews_footer a {
        width: 30%; } }

.reviews .tripAdvisor-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 40px auto; }

.offers-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 20px;
  justify-self: flex-start;
  margin-bottom: 40px; }
  @media (max-width: 40em) {
    .offers-container {
      padding: 25px; } }

.offers .offer-image img {
  width: 100%; }

.offers .offer .btn {
  margin-right: 20px; }

.offers .offer .subtitle {
  color: #006D76; }

.offers .offer .icons {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  margin: 30px auto; }
  .offers .offer .icons div {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .offers .offer .icons div img {
      width: 50px;
      margin-bottom: 10px; }
    .offers .offer .icons div h6 {
      text-align: center; }

.offers .offer.highlight {
  background: #F3F4F8; }

@media (max-width: 40em) {
  .offers .offer.fullWidth {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
  .offers .offer.col-3 {
    width: 100%; }
  .offers .offer .price {
    margin: 20px 0; }
  .offers .offer.highlight .offer-content {
    padding: 10px; }
  .offers .offer .subtitle {
    margin-top: 20px; }
  .offers .offer .icons div img {
    width: 40px;
    margin-bottom: 10px; }
  .offers .offer .btn {
    margin-bottom: 10px;
    display: inline-block; } }

@media (min-width: 40em) {
  .offers .offer.fullWidth {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    /*&:nth-child(5n){
					flex-direction: row-reverse;
					.offer-content{
						margin-right: 150px;
						margin-left: 70px;
					}
				}*/ }
    .offers .offer.fullWidth .offer-content {
      margin-left: 150px;
      margin-right: 70px;
      width: 50%; }
    .offers .offer.fullWidth .offer-image {
      width: 50%; }
    .offers .offer.fullWidth:nth-child(odd) {
      -webkit-flex-direction: row-reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; }
      .offers .offer.fullWidth:nth-child(odd) .offer-content {
        margin-right: 150px;
        margin-left: 70px; }
  .offers .offer.col-3 {
    width: 25%; }
    .offers .offer.col-3:nth-child(2n) {
      margin-left: 150px; }
    .offers .offer.col-3:nth-child(4n) {
      margin-right: 150px;
      margin-left: 0; }
    .offers .offer.col-3 h2 {
      font-size: 30px; } }

.offers .price {
  font-weight: 700;
  color: #006D76; }

.offers .offerMsg {
  text-align: center;
  width: 100%;
  margin-bottom: 100px; }

.offers .faq {
  padding: 40px 150px 0; }
  @media (max-width: 40em) {
    .offers .faq {
      padding: 25px; } }
  .offers .faq .accordion {
    margin-bottom: 100px;
    margin-top: 20px; }
    @media (max-width: 40em) {
      .offers .faq .accordion {
        margin-bottom: 40px;
        margin-top: 10px; } }
    .offers .faq .accordion-item {
      border-bottom: 1px solid #000;
      margin-bottom: 30px; }
      @media (max-width: 40em) {
        .offers .faq .accordion-item {
          margin-bottom: 15px; } }
      .offers .faq .accordion-item .accordion-title {
        border: none;
        font-size: 24px;
        font-family: ElMessiri;
        color: #000;
        padding-left: 0;
        padding-right: 20px; }
        .offers .faq .accordion-item .accordion-title:hover {
          background: transparent;
          color: #00A39D; }
        .offers .faq .accordion-item .accordion-title:focus {
          background: transparent; }
        .offers .faq .accordion-item .accordion-title:before {
          right: 0; }
        @media (max-width: 40em) {
          .offers .faq .accordion-item .accordion-title {
            font-size: 16px; } }
      .offers .faq .accordion-item .accordion-content {
        border: none;
        padding: 15px 20px;
        font-size: 16px; }
      .offers .faq .accordion-item.is-active .accordion-title {
        color: #00A39D;
        background: transparent; }

.singleOffer_section {
  padding: 70px 150px 10px;
  /*display: flex;
		justify-content: space-between;
		gap: 100px;*/ }
  @media (max-width: 40em) {
    .singleOffer_section {
      padding: 25px;
      /*flex-wrap: wrap;
			gap:0;*/
      padding-bottom: 0; } }
  .singleOffer_section h3 {
    margin-bottom: 30px; }
    @media (max-width: 40em) {
      .singleOffer_section h3 {
        margin-bottom: 15px;
        font-size: 22px; } }
  .singleOffer_section li {
    color: rgba(0, 0, 0, 0.6); }
  .singleOffer_section div {
    /*&:first-child{
				width: 60%;
			}
			&:last-child{
				width: 40%;
			}*/ }
    @media (max-width: 40em) {
      .singleOffer_section div .price {
        margin: 20px 0; } }
    .singleOffer_section div .hotel a {
      color: #006D76;
      font-size: 18px;
      font-weight: 700; }
      .singleOffer_section div .hotel a:hover {
        color: #00A39D; }
  .singleOffer_section .icons {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
    margin: 30px auto; }
    .singleOffer_section .icons div {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .singleOffer_section .icons div img {
        width: 50px;
        margin-bottom: 10px; }
        @media (max-width: 40em) {
          .singleOffer_section .icons div img {
            width: 40px; } }
      .singleOffer_section .icons div h6 {
        text-align: center; }
  .singleOffer_section .termsAndConditions h1, .singleOffer_section .termsAndConditions h2, .singleOffer_section .termsAndConditions h3, .singleOffer_section .termsAndConditions h4, .singleOffer_section .termsAndConditions h5, .singleOffer_section .termsAndConditions h6 {
    color: #006D76; }

.singleOffer_section2 {
  padding: 10px 150px; }
  @media (max-width: 40em) {
    .singleOffer_section2 {
      padding: 25px; } }
  .singleOffer_section2 .participating_hotels {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 20px;
            column-gap: 20px;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding-top: 50px; }
    .singleOffer_section2 .participating_hotels .hotel {
      position: relative;
      width: 25%; }
      .singleOffer_section2 .participating_hotels .hotel img {
        width: 100%; }
      .singleOffer_section2 .participating_hotels .hotel-details {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        background: linear-gradient(0deg, rgba(0, 0, 0, 0.8), transparent);
        padding: 20px;
        min-height: 50%;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: flex-end;
            -ms-flex-align: end;
                align-items: flex-end; }
        .singleOffer_section2 .participating_hotels .hotel-details h4, .singleOffer_section2 .participating_hotels .hotel-details a {
          color: #fff; }
    @media (max-width: 40em) {
      .singleOffer_section2 .participating_hotels {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .singleOffer_section2 .participating_hotels .hotel {
          width: 100%;
          margin: 10px 0; } }
  .singleOffer_section2 .carousel-slider {
    padding-top: 50px; }

.singleOffer .noArrowSlider {
  margin: 70px 0; }
  .singleOffer .noArrowSlider .price {
    margin: 15px 0; }

.singleOffer .blue {
  color: #006D76; }

.singleOffer .faq {
  padding: 40px 150px 0; }
  @media (max-width: 40em) {
    .singleOffer .faq {
      padding: 25px; } }
  .singleOffer .faq .accordion {
    margin-bottom: 100px;
    margin-top: 20px; }
    @media (max-width: 40em) {
      .singleOffer .faq .accordion {
        margin-bottom: 40px;
        margin-top: 10px; } }
    .singleOffer .faq .accordion-item {
      border-bottom: 1px solid #000;
      margin-bottom: 30px; }
      @media (max-width: 40em) {
        .singleOffer .faq .accordion-item {
          margin-bottom: 15px; } }
      .singleOffer .faq .accordion-item .accordion-title {
        border: none;
        font-size: 24px;
        font-family: ElMessiri;
        color: #000;
        padding-left: 0;
        padding-right: 20px; }
        .singleOffer .faq .accordion-item .accordion-title:hover {
          background: transparent;
          color: #00A39D; }
        .singleOffer .faq .accordion-item .accordion-title:focus {
          background: transparent; }
        .singleOffer .faq .accordion-item .accordion-title:before {
          right: 0; }
        @media (max-width: 40em) {
          .singleOffer .faq .accordion-item .accordion-title {
            font-size: 16px; } }
      .singleOffer .faq .accordion-item .accordion-content {
        border: none;
        padding: 15px 20px;
        font-size: 16px; }
      .singleOffer .faq .accordion-item.is-active .accordion-title {
        color: #00A39D;
        background: transparent; }

.singleOffer .countdownContainer h2 {
  text-align: center; }

.singleOffer .countdownContainer .countdown {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto 30px;
  font-weight: bold; }
  .singleOffer .countdownContainer .countdown div {
    text-align: center;
    margin: 0 10px;
    font-weight: bold;
    font-size: 16px;
    font-family: ElMessiri; }
  .singleOffer .countdownContainer .countdown span {
    display: block;
    font-family: ElMessiri;
    color: #006D76;
    font-size: 50px; }

.loadMore {
  margin: 40px auto;
  text-align: center; }
  .loadMore div {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    color: #006D76;
    cursor: pointer;
    font-size: 25px;
    background: #F3F4F8;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 auto 20px; }
    .loadMore div:hover {
      background: #006D76;
      color: #F3F4F8; }
    .loadMore div i {
      line-height: 0; }

.about_location {
  padding: 50px 150px; }
  .about_location img {
    width: 100%; }
  @media (max-width: 40em) {
    .about_location {
      padding: 0;
      margin: 25px;
      overflow: hidden; }
      .about_location img {
        height: 50vh;
        width: auto;
        -webkit-transform: translateX(-25%);
            -ms-transform: translateX(-25%);
                transform: translateX(-25%);
        max-width: initial; } }
  .about_location div {
    margin: 30px auto; }
  @media (min-width: 40em) {
    .about_location div {
      width: 80%;
      -webkit-column-count: 2;
              column-count: 2;
      -webkit-column-gap: 35px;
              column-gap: 35px; } }

.about_story {
  padding: 100px 0px 70px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .about_story h1 {
    line-height: 4vw;
    margin-bottom: 60px; }
    .about_story h1 span {
      line-height: 5vw; }
  .about_story div {
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .about_story div img {
      width: 100%; }
    .about_story div p {
      padding-right: 100px; }
  @media (max-width: 40em) {
    .about_story {
      padding: 25px 0px 25px 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      .about_story div {
        -webkit-flex: initial;
            -ms-flex: initial;
                flex: initial;
        width: 100%;
        margin: 10px 0; }
        .about_story div p {
          padding-right: 25px; }
      .about_story h1 {
        line-height: 6vw;
        margin-bottom: 20px; }
        .about_story h1 span {
          line-height: 8vw; } }

.about_gallery {
  padding-top: 50px;
  padding-bottom: 50px;
  background: #fff;
  transition: background 0.5s ease-in; }
  .about_gallery.backgroundColor {
    background: #F3F4F8; }

.about_testimonials {
  padding: 50px 0px 50px 150px;
  background: #F3F4F8;
  transition: background 0.5s ease-in; }
  .about_testimonials.backgroundColor {
    background: #fff; }
  @media (max-width: 40em) {
    .about_testimonials {
      padding: 25px; } }
  .about_testimonials-slider {
    position: relative; }
  .about_testimonials .slick-list {
    padding-left: 0px !important; }
  .about_testimonials .testimonialBlock {
    background: #F3F4F8;
    padding: 50px 60px;
    margin: 0 20px; }
    .about_testimonials .testimonialBlock_image {
      border-radius: 50%;
      overflow: hidden;
      width: 40%;
      margin: 0 auto 40px; }
    .about_testimonials .testimonialBlock p {
      text-align: center;
      font-size: 20px;
      line-height: 30px; }
      .about_testimonials .testimonialBlock p.name {
        color: #006D76;
        font-weight: 700; }
    @media (max-width: 40em) {
      .about_testimonials .testimonialBlock {
        padding: 30px 15px;
        margin: 0 10px; }
        .about_testimonials .testimonialBlock p {
          font-size: 16px;
          line-height: 20px; }
        .about_testimonials .testimonialBlock_image {
          width: 70%;
          margin: 0 auto 25px; } }
  .about_testimonials .slick-arrow {
    background: transparent;
    width: 50px;
    height: 50px;
    border: 1px solid #006D76;
    border-radius: 50%;
    color: #006D76;
    cursor: pointer;
    margin-right: 20px;
    font-size: 25px;
    position: absolute;
    top: -90px;
    right: 70px; }
    .about_testimonials .slick-arrow.slick-prev {
      right: 150px; }
    .about_testimonials .slick-arrow:hover {
      background: #006D76;
      color: #fff; }
    @media (max-width: 40em) {
      .about_testimonials .slick-arrow {
        width: 40px;
        height: 40px; } }

.about_masterplan {
  padding: 50px 0; }
  .about_masterplan h1 {
    padding-left: 150px; }
  .about_masterplan .text {
    padding: 30px 150px; }
  @media (max-width: 40em) {
    .about_masterplan {
      padding: 25px 0; }
      .about_masterplan h1 {
        padding-left: 25px; }
      .about_masterplan .text {
        padding: 10px 25px; } }
  .about_masterplan #map {
    height: 500px; }
  .about_masterplan .gm-style-iw, .about_masterplan .gm-style-iw-d {
    max-height: 400px !important; }
  .about_masterplan .infoWindow {
    display: none; }
    .about_masterplan .infoWindow_container {
      background: #fff;
      padding: 15px;
      width: 330px; }
      .about_masterplan .infoWindow_container .content {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        margin: 10px auto; }
      .about_masterplan .infoWindow_container h6 {
        margin-top: 10px;
        font-size: 23px;
        color: #000; }
      .about_masterplan .infoWindow_container .image {
        width: 100%;
        height: 200px;
        background-size: cover;
        background-position: center;
        overflow: hidden; }
        .about_masterplan .infoWindow_container .image img {
          width: 300px; }
      .about_masterplan .infoWindow_container a {
        font-size: 14px;
        font-weight: bold; }
  .about_masterplan .gm-style .gm-style-iw-c {
    background: #fff;
    padding: 0; }
  .about_masterplan .gm-style .gm-style-iw-d {
    overflow: hidden !important; }
  .about_masterplan .gm-ui-hover-effect > span {
    background-color: #000;
    width: 16px !important;
    height: 16px !important; }
  .about_masterplan .gm-style .gm-style-iw-tc::after {
    background: #fff; }

.about_vision {
  padding: 50px 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .about_vision h1 {
    padding-left: 150px;
    width: 100%; }
  .about_vision-content, .about_vision-image {
    width: 50%; }
  .about_vision-image {
    z-index: 1; }
    .about_vision-image img {
      width: 100%; }
    @media (min-width: 40em) {
      .about_vision-image.is-inview div {
        -webkit-clip-path: inset(0 0 0 0);
                clip-path: inset(0 0 0 0); }
      .about_vision-image div {
        transition: all 1.3s cubic-bezier(0.76, 0, 0.24, 1);
        -webkit-clip-path: inset(100% 0 0 0);
                clip-path: inset(100% 0 0 0);
        overflow: hidden; } }
  .about_vision-content {
    padding: 50px;
    background: #006D76;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-left: -10%;
    padding-left: 15%;
    margin-top: 5%; }
    .about_vision-content p, .about_vision-content span {
      color: #fff; }
    .about_vision-content a {
      display: inline-block; }
    @media (max-width: 40em) {
      .about_vision-content {
        margin: 0;
        padding: 25px; }
        .about_vision-content a {
          padding-top: 0; } }
  @media (max-width: 40em) {
    .about_vision {
      margin-bottom: 0px;
      padding-right: 0;
      padding-top: 25px; }
      .about_vision-content, .about_vision-image {
        width: 100%; }
      .about_vision h1 {
        padding-left: 25px; } }

.about_muriya {
  padding: 50px 150px 50px 0px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 50px;
          column-gap: 50px; }
  .about_muriya div {
    width: 50%; }
  @media (max-width: 40em) {
    .about_muriya {
      padding: 25px 25px 25px 0px;
      -webkit-column-gap: 0;
              column-gap: 0;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .about_muriya div {
        width: 100%; }
        .about_muriya div p {
          padding-left: 25px; }
      .about_muriya h1 {
        padding-left: 25px; } }
  .about_muriya .image img {
    width: 100%; }
  @media (min-width: 40em) {
    .about_muriya .image.is-inview div {
      -webkit-clip-path: inset(0 0 0 0);
              clip-path: inset(0 0 0 0); }
    .about_muriya .image div {
      transition: all 1.3s cubic-bezier(0.76, 0, 0.24, 1);
      -webkit-clip-path: inset(100% 0 0 0);
              clip-path: inset(100% 0 0 0);
      overflow: hidden;
      width: 100%; } }

.about_hawana {
  padding: 50px 0 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 50px;
          column-gap: 50px; }
  .about_hawana div {
    width: 50%; }
  @media (max-width: 40em) {
    .about_hawana {
      padding: 25px 0 25px 25px;
      -webkit-column-gap: 0;
              column-gap: 0;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      .about_hawana div {
        width: 100%; }
        .about_hawana div p {
          padding-right: 25px; }
      .about_hawana h1 {
        padding-right: 25px; } }
  .about_hawana .image img {
    width: 100%; }
  @media (min-width: 40em) {
    .about_hawana .image.is-inview div {
      -webkit-clip-path: inset(0 0 0 0);
              clip-path: inset(0 0 0 0); }
    .about_hawana .image div {
      transition: all 1.3s cubic-bezier(0.76, 0, 0.24, 1);
      -webkit-clip-path: inset(100% 0 0 0);
              clip-path: inset(100% 0 0 0);
      overflow: hidden;
      width: 100%; } }

.about_form {
  padding: 50px 150px;
  background: #fff;
  transition: background 0.5s ease-in; }
  .about_form.backgroundColor {
    background: #F3F4F8; }
  @media (max-width: 40em) {
    .about_form {
      padding: 25px; } }

.about_explore {
  padding: 50px 150px; }
  @media (max-width: 40em) {
    .about_explore {
      padding: 25px; } }
  .about_explore-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .about_explore-container div {
      width: 30%; }
      .about_explore-container div img {
        width: 100%; }
      .about_explore-container div h3 {
        text-align: center;
        margin-top: 20px; }
      @media (max-width: 40em) {
        .about_explore-container div {
          width: 100%;
          margin-bottom: 20px; }
          .about_explore-container div h3 {
            text-align: left;
            margin-top: 10px;
            font-size: 26px; } }

.diningPage_intro {
  padding: 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 30px;
          column-gap: 30px; }
  .diningPage_intro div, .diningPage_intro h1 {
    width: 50%; }
  @media (max-width: 40em) {
    .diningPage_intro {
      padding: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .diningPage_intro div, .diningPage_intro h1 {
        width: 100%; }
      .diningPage_intro div {
        padding-left: 25px; } }

.diningPage_section {
  background: #fff;
  transition: background 0.5s ease-in; }
  .diningPage_section.backgroundColor {
    background: #F3F4F8; }
  .diningPage_section-content {
    margin-top: 100px; }
    @media (max-width: 40em) {
      .diningPage_section-content {
        margin-top: 30px; } }
    .diningPage_section-content .singleDining {
      padding-bottom: 40px;
      /*&-content{
					width: 66%;
					padding-top: 40px;
					padding-bottom: 40px;
					padding-left: calc(150px + 10%);
					display: flex;
					justify-content: space-between;
					column-gap: 30px;
					p{
						margin-bottom: 0;
						width: 100%;
					}
					h2{
						margin-bottom: 40px;
					}
					> div{
						display: flex;
						align-content: space-between;
						flex-wrap: wrap;
						div{
							width: 100%;
						}
					}
					.phone{
						font-weight: 700;
						color:$dark-blue;
						a{
							font-weight: 700;
							color:$dark-blue;
						}
					}
					@media (max-width: 40em) {
						padding-top: 25px;
						padding-bottom: 25px;
						padding-left: 25px;
						flex-wrap: wrap;
						width: 80%;
						flex-direction: column-reverse;
						h2{
							margin-bottom: 20px;
						}
						div{
							div{
								margin-bottom:20px;
							}
						}
					}
				}*/
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding: 50px 0;
      transition: background 0.5s ease-in; }
      .diningPage_section-content .singleDining-info, .diningPage_section-content .singleDining-gallery {
        width: 48%; }
      .diningPage_section-content .singleDining img {
        width: 100%; }
      .diningPage_section-content .singleDining h1 span {
        margin-left: 0; }
      .diningPage_section-content .singleDining:nth-child(even) {
        -webkit-flex-direction: row-reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse;
        padding-right: 150px;
        background: #F3F4F8; }
        .diningPage_section-content .singleDining:nth-child(even).backgroundColor {
          background: #fff; }
      .diningPage_section-content .singleDining:nth-child(odd) {
        background: #fff;
        padding-left: 150px; }
        .diningPage_section-content .singleDining:nth-child(odd).backgroundColor {
          background: #F3F4F8; }
      .diningPage_section-content .singleDining-gallery {
        position: relative; }
        .diningPage_section-content .singleDining-gallery .logo {
          position: absolute;
          z-index: 1;
          width: 25%;
          top: 0;
          left: 0; }
        .diningPage_section-content .singleDining-gallery .slick-arrow {
          position: absolute;
          bottom: -50px;
          font-size: 40px;
          color: #00A39D; }
          .diningPage_section-content .singleDining-gallery .slick-arrow.slick-prev {
            left: 0; }
          .diningPage_section-content .singleDining-gallery .slick-arrow.slick-next {
            left: 60px; }
          @media (max-width: 40em) {
            .diningPage_section-content .singleDining-gallery .slick-arrow {
              bottom: -35px; } }
        .diningPage_section-content .singleDining-gallery .slider-no {
          font-size: 40px;
          font-family: ElMessiri;
          color: rgba(0, 163, 157, 0.4);
          text-align: right;
          padding-right: 40px; }
          .diningPage_section-content .singleDining-gallery .slider-no span {
            color: #00A39D; }
          @media (max-width: 40em) {
            .diningPage_section-content .singleDining-gallery .slider-no {
              padding-right: 25px;
              font-size: 20px; } }
      @media (max-width: 40em) {
        .diningPage_section-content .singleDining {
          padding: 50px 0;
          -webkit-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
                  flex-wrap: wrap;
          -webkit-flex-direction: column-reverse !important;
              -ms-flex-direction: column-reverse !important;
                  flex-direction: column-reverse !important; }
          .diningPage_section-content .singleDining-info, .diningPage_section-content .singleDining-gallery {
            width: 100%; }
          .diningPage_section-content .singleDining-info {
            margin-top: 30px; }
          .diningPage_section-content .singleDining:nth-child(even) {
            padding-right: 25px; }
            .diningPage_section-content .singleDining:nth-child(even) .singleDining-info, .diningPage_section-content .singleDining:nth-child(even) h1 {
              padding-left: 25px; }
          .diningPage_section-content .singleDining:nth-child(odd) {
            padding-left: 25px; }
            .diningPage_section-content .singleDining:nth-child(odd) .singleDining-info {
              padding-right: 25px; } }

.diningPage .noDining {
  padding: 10px 150px 50px; }
  @media (max-width: 40em) {
    .diningPage .noDining {
      padding: 25px; } }
  .diningPage .noDining p {
    color: #00A39D;
    font-weight: bold; }

.marina h1 {
  font-size: 4vw; }
  @media (max-width: 40em) {
    .marina h1 {
      font-size: 10vw; } }
  .marina h1 span {
    margin-left: 0; }

.marina_intro {
  padding: 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 30px;
          column-gap: 30px; }
  .marina_intro div, .marina_intro h1 {
    width: 50%; }
  @media (max-width: 40em) {
    .marina_intro {
      padding: 50px 25px 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .marina_intro div, .marina_intro h1 {
        width: 100%; }
      .marina_intro div {
        padding-left: 25px; } }

.marina .berthRates {
  padding: 50px 150px;
  background: #fff;
  transition: background 0.5s ease-in; }
  .marina .berthRates.backgroundColor {
    background: #F3F4F8; }
  @media (max-width: 40em) {
    .marina .berthRates {
      padding: 25px; } }
  .marina .berthRates img {
    width: 100%;
    margin-bottom: 20px; }
  .marina .berthRates h5 {
    color: #006D76; }
  .marina .berthRates hr {
    max-width: 100%;
    border-color: rgba(0, 0, 0, 0.1); }
  .marina .berthRates .prices {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .marina .berthRates .prices > div {
      width: 45%;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-column-gap: 50px;
              column-gap: 50px;
      margin-bottom: 70px; }
      @media (max-width: 40em) {
        .marina .berthRates .prices > div {
          width: 100%;
          -webkit-column-gap: 0;
                  column-gap: 0;
          -webkit-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
                  flex-wrap: wrap;
          margin-bottom: 25px; }
          .marina .berthRates .prices > div div {
            width: 100%;
            margin-bottom: 20px; } }
      .marina .berthRates .prices > div p {
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        padding-bottom: 10px;
        margin-bottom: 10px; }

.marina .waterTaxi {
  padding: 50px 0 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 50px;
          column-gap: 50px; }
  .marina .waterTaxi > div {
    width: 50%; }
  .marina .waterTaxi img {
    width: 100%; }
  @media (max-width: 40em) {
    .marina .waterTaxi {
      padding: 25px 0 25px 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-column-gap: 0;
              column-gap: 0;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      .marina .waterTaxi > div {
        width: 100%;
        margin-top: 20px; } }

#field_10_4 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: end;
      -ms-flex-align: end;
          align-items: end; }
  #field_10_4 .ginput_container {
    width: 100%; }

.contact_container {
  padding: 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  transition: background 0.5s ease-in; }
  @media (min-width: 40em) {
    .contact_container:nth-child(even) {
      background: #fff; }
      .contact_container:nth-child(even).backgroundColor {
        background: #F3F4F8; } }
  @media (max-width: 40em) {
    .contact_container {
      padding: 15px 0; } }
  .contact_container .dept {
    width: 30%; }
    .contact_container .dept h4 {
      font-size: 30px; }
    .contact_container .dept h6 {
      color: #006D76;
      font-family: branding;
      font-weight: bold;
      min-height: 25px; }
    .contact_container .dept p {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      padding-bottom: 10px;
      margin-bottom: 10px;
      border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
      .contact_container .dept p span {
        width: 50%; }
    @media (max-width: 40em) {
      .contact_container .dept {
        width: 100%;
        padding: 25px; }
        .contact_container .dept.even {
          background: #F3F4F8; }
        .contact_container .dept p span:first-child {
          width: 35%; }
        .contact_container .dept p span:last-child {
          width: 65%;
          word-break: break-all; } }

.rental .banner .btn {
  color: #fff; }

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

.rental_intro {
  padding: 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 30px;
          column-gap: 30px; }
  .rental_intro div, .rental_intro h1 {
    width: 50%; }
  @media (max-width: 40em) {
    .rental_intro {
      padding: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .rental_intro div, .rental_intro h1 {
        width: 100%; }
      .rental_intro div {
        padding-left: 25px; } }

.rental_properties {
  background: #fff;
  padding: 120px 0px;
  transition: background 0.5s ease-in; }
  .rental_properties.backgroundColor {
    background: #F3F4F8; }
  .rental_properties h1 {
    padding: 0 150px; }
    .rental_properties h1 span {
      margin-left: 0; }
  .rental_properties .carousel-slider .slick-slide .slide-content h6 {
    color: #006D76; }
  @media (max-width: 40em) {
    .rental_properties {
      padding: 25px 0; }
      .rental_properties h1 {
        padding: 0 25px; } }

.rental_services {
  background: #006D76;
  padding: 50px 150px; }
  .rental_services h2 {
    text-align: center;
    color: #fff;
    font-size: 60px;
    line-height: 40px;
    margin-bottom: 40px; }
  .rental_services-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    text-align: center; }
    .rental_services-container h6 {
      color: #fff;
      margin-top: 30px; }
  @media (max-width: 40em) {
    .rental_services {
      padding: 25px; }
      .rental_services h2 {
        font-size: 32px; }
      .rental_services-container {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-column-gap: 15px;
                column-gap: 15px; }
        .rental_services-container div {
          width: 30%;
          margin-bottom: 20px; } }

.rental_bookNow {
  padding: 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 60vh;
  background-size: cover;
  background-position: center;
  position: relative;
  overflow: hidden; }
  .rental_bookNow img {
    position: absolute;
    width: 100%;
    left: 0;
    z-index: 0;
    top: 0; }
  .rental_bookNow div {
    z-index: 1; }
  .rental_bookNow h2 {
    font-size: 60px;
    line-height: 40px;
    color: #fff;
    margin-bottom: 30px; }
  .rental_bookNow p {
    font-weight: bold;
    font-size: 20px;
    line-height: 35px;
    color: #fff; }
  @media (max-width: 40em) {
    .rental_bookNow {
      padding: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      height: 50vh; }
      .rental_bookNow h2 {
        font-size: 32px;
        margin-bottom: 15px; }
      .rental_bookNow p {
        font-size: 15px; } }

.rental_pages {
  padding-top: 50px;
  padding-bottom: 50px; }

.rentalWidget {
  position: fixed;
  width: 100%;
  top: 0;
  background: #006D76;
  height: 100vh;
  overflow-y: scroll;
  z-index: 10000;
  transition: all 1s ease-in-out;
  left: 100%; }
  .rentalWidget.open {
    left: 0; }
  .rentalWidget .close {
    font-size: 30px;
    color: transparent;
    float: right;
    padding: 30px;
    position: relative; }
    .rentalWidget .close:before {
      position: absolute;
      content: '';
      width: 1px;
      height: 35px;
      background: #fff;
      -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
              transform: rotate(45deg);
      left: 50%; }
    .rentalWidget .close:after {
      position: absolute;
      content: '';
      width: 1px;
      height: 35px;
      background: #fff;
      -webkit-transform: rotate(-45deg);
          -ms-transform: rotate(-45deg);
              transform: rotate(-45deg);
      left: 50%; }
  .rentalWidget .logo {
    padding: 30px 40px; }
    @media (max-width: 40em) {
      .rentalWidget .logo {
        padding: 30px 20px; } }
  .rentalWidget h2 {
    color: #fff;
    text-align: center; }
  .rentalWidget_container {
    padding: 50px 80px; }
    @media (max-width: 40em) {
      .rentalWidget_container {
        padding: 25px; } }
    .rentalWidget_container #rentalFilter div div:not(.range-slider) {
      color: #fff;
      border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
    .rentalWidget_container #rentalFilter div.checkboxes div p {
      color: #fff; }
    .rentalWidget_container #rentalFilter label {
      color: #fff; }
    .rentalWidget_container #rentalFilter input:not([type='checkbox']), .rentalWidget_container #rentalFilter select:not([type='checkbox']) {
      color: #fff; }
    .rentalWidget_container #rentalFilter select {
      background-image: url(../png/select-white-2.png); }
    .rentalWidget_container #rentalFilter .range-slider input[type=range]::-webkit-slider-runnable-track {
      background: rgba(255, 255, 255, 0.3); }
    .rentalWidget_container #rentalFilter .range-slider input[type=range]::-webkit-slider-thumb {
      background: #fff; }
    .rentalWidget_container #rentalFilter .range-slider input[type=range]::-moz-range-track {
      background: rgba(255, 255, 255, 0.3); }
    .rentalWidget_container #rentalFilter .range-slider input[type=range]::-moz-range-thumb {
      background: #fff; }
    .rentalWidget_container #rentalFilter .range-slider input[type=range]::-ms-fill-lower {
      background: #fff; }
    .rentalWidget_container #rentalFilter .range-slider input[type=range]::-ms-fill-upper {
      background: #fff; }
    .rentalWidget_container #rentalFilter .range-slider input[type=range]::-ms-thumb {
      border: 1px solid #fff;
      background: #fff; }

#rentalFilter div {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }
  @media (max-width: 40em) {
    #rentalFilter div:not(.range-slider) {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }
  #rentalFilter div div:not(.range-slider) {
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    color: #006D76;
    width: 30%;
    margin-bottom: 30px;
    border-bottom: 1px solid rgba(0, 109, 118, 0.1); }
    #rentalFilter div div:not(.range-slider):not(.noWrap) {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      #rentalFilter div div:not(.range-slider):not(.noWrap) label {
        width: 100%; }
    #rentalFilter div div:not(.range-slider).noWrap label {
      margin-bottom: 10px; }
    @media (max-width: 40em) {
      #rentalFilter div div:not(.range-slider) {
        width: 100%; } }
  #rentalFilter div.checkboxes {
    -webkit-column-gap: 30px;
            column-gap: 30px;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
    #rentalFilter div.checkboxes label {
      margin-bottom: 20px; }
    #rentalFilter div.checkboxes div {
      width: auto;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      border-bottom: none !important; }
      #rentalFilter div.checkboxes div p {
        width: 20%;
        color: #006D76; }
        #rentalFilter div.checkboxes div p input {
          margin-right: 10px; }
        @media (max-width: 40em) {
          #rentalFilter div.checkboxes div p {
            width: 50%; }
            #rentalFilter div.checkboxes div p input {
              margin-right: 5px; } }
      #rentalFilter div.checkboxes div.types {
        width: 60%; }
        #rentalFilter div.checkboxes div.types p {
          width: 40%; }
        @media (max-width: 40em) {
          #rentalFilter div.checkboxes div.types {
            width: 100%; }
            #rentalFilter div.checkboxes div.types p {
              width: 50%; } }
  #rentalFilter div.formCTA {
    -webkit-align-items: end !important;
        -ms-flex-align: end !important;
            align-items: end !important;
    -webkit-column-gap: 30px;
            column-gap: 30px;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    @media (max-width: 40em) {
      #rentalFilter div.formCTA {
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
    #rentalFilter div.formCTA input {
      width: auto; }
    #rentalFilter div.formCTA .btn {
      color: #fff;
      border-bottom: 1px solid; }

#rentalFilter label {
  color: #006D76;
  font-size: 20px;
  line-height: 35px;
  margin-right: 30px; }

#rentalFilter input:not([type='checkbox']), #rentalFilter select:not([type='checkbox']) {
  background-color: transparent;
  border: none;
  box-shadow: none;
  color: #006D76;
  margin-bottom: 0;
  width: 100%; }
  #rentalFilter input:not([type='checkbox']):focus, #rentalFilter select:not([type='checkbox']):focus {
    background-color: transparent;
    border: none;
    box-shadow: none; }

@media (max-width: 40em) {
  #rentalFilter input[name='daterange'], #rentalFilter select[name='daterange'] {
    width: 80%; } }

#rentalFilter select option {
  background: #006D76; }
  #rentalFilter select option:hover {
    background-color: #00A39D; }

.daterangepicker {
  z-index: 100000; }

.range-slider {
  position: relative;
  width: 100%; }
  .range-slider input[type=range] {
    height: 1px;
    margin: 10px 0;
    width: 100%;
    -webkit-appearance: none; }
    @media (max-width: 40em) {
      .range-slider input[type=range] {
        width: 50%;
        margin: 20px 0; } }
    .range-slider input[type=range]:focus {
      outline: none; }
    .range-slider input[type=range]::-webkit-slider-runnable-track {
      width: 100%;
      height: 1px;
      cursor: pointer;
      animate: 0.2s;
      box-shadow: none;
      background: rgba(0, 109, 118, 0.3); }
    .range-slider input[type=range]::-webkit-slider-thumb {
      -webkit-appearance: none;
      box-shadow: none;
      height: 15px;
      width: 15px;
      border-radius: 50%;
      background: #006D76;
      cursor: pointer;
      margin-top: -5px; }
    .range-slider input[type=range]::-moz-range-track {
      width: 100%;
      height: 1px;
      cursor: pointer;
      animate: 0.2s;
      box-shadow: none;
      background: rgba(0, 109, 118, 0.3); }
    .range-slider input[type=range]::-moz-range-thumb {
      -moz-appearance: none;
      box-shadow: none;
      height: 15px;
      width: 15px;
      border-radius: 50%;
      background: #006D76;
      cursor: pointer; }
    .range-slider input[type=range]::-ms-track {
      width: 100%;
      height: 1px;
      cursor: pointer;
      animate: 0.2s;
      background: transparent;
      border-color: transparent;
      color: transparent; }
    .range-slider input[type=range]::-ms-fill-lower {
      background: #006D76;
      border: 0px solid #000000;
      border-radius: 2px;
      box-shadow: none; }
    .range-slider input[type=range]::-ms-fill-upper {
      background: #006D76;
      border: 0px solid #000000;
      border-radius: 2px;
      box-shadow: none; }
    .range-slider input[type=range]::-ms-thumb {
      margin-top: 1px;
      box-shadow: none;
      border: 1px solid #006D76;
      height: 18px;
      width: 18px;
      border-radius: 25px;
      background: #006D76;
      cursor: pointer; }
  .range-slider .rangeValues {
    position: absolute;
    top: -20px;
    transition: all 0.1s ease-in;
    color: #fff; }
    @media (max-width: 40em) {
      .range-slider .rangeValues {
        top: -10px; } }
    .range-slider .rangeValues.minRange {
      left: 0; }
    .range-slider .rangeValues.maxRange {
      right: -9.75px; }

.rentResult {
  padding-top: 100px; }
  .rentResult .searchForm {
    padding: 50px 150px; }
    @media (max-width: 40em) {
      .rentResult .searchForm {
        padding: 25px; } }
    .rentResult .searchForm #rentalFilter .checkboxesFinal {
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-column-gap: 40px;
              column-gap: 40px; }
      .rentResult .searchForm #rentalFilter .checkboxesFinal div {
        border-bottom: none;
        width: auto;
        min-width: 35%; }
        .rentResult .searchForm #rentalFilter .checkboxesFinal div h3 {
          width: 100%;
          font-size: 25px; }
        .rentResult .searchForm #rentalFilter .checkboxesFinal div ul {
          -webkit-column-count: 3;
                  column-count: 3;
          -webkit-column-gap: 50px;
                  column-gap: 50px; }
          .rentResult .searchForm #rentalFilter .checkboxesFinal div ul li {
            color: #000;
            margin-bottom: 10px; }
  .rentResult-container {
    padding: 50px 0px; }
    .rentResult-container .carousel-slider .slick-slide .slide-content {
      background: #F3F4F8; }
  .rentResult .rental_form {
    background: #F3F4F8;
    padding: 50px 150px;
    transition: background 0.5s ease-in; }
    .rentResult .rental_form.backgroundColor {
      background: #fff; }
    .rentResult .rental_form h1 {
      margin-bottom: 30px; }
    @media (max-width: 40em) {
      .rentResult .rental_form {
        padding: 25px; }
        .rentResult .rental_form .gform_footer {
          text-align: left; } }
  .rentResult .otherProjects {
    padding: 50px 150px 100px; }
    .rentResult .otherProjects h1 {
      padding-top: 50px;
      padding-left: 5px; }
    .rentResult .otherProjects .projects {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      -webkit-column-gap: 40px;
              column-gap: 40px; }
      .rentResult .otherProjects .projects .property {
        width: 32%; }
        .rentResult .otherProjects .projects .property h3 {
          text-align: center; }
    @media (max-width: 40em) {
      .rentResult .otherProjects {
        padding: 25px; }
        .rentResult .otherProjects h1 {
          padding-top: 0; }
        .rentResult .otherProjects .projects {
          -webkit-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
                  flex-wrap: wrap; }
          .rentResult .otherProjects .projects .property {
            width: 100%;
            margin-bottom: 30px; }
            .rentResult .otherProjects .projects .property h3 {
              text-align: left;
              margin-top: 15px; } }

.thingsToDo_intro {
  padding: 50px 150px; }
  .thingsToDo_intro img {
    width: 100%; }
  .thingsToDo_intro .text {
    width: 80%;
    -webkit-column-count: 2;
            column-count: 2;
    -webkit-column-gap: 35px;
            column-gap: 35px;
    margin: 20px auto; }
  @media (max-width: 40em) {
    .thingsToDo_intro {
      padding: 25px; }
      .thingsToDo_intro .text {
        -webkit-column-count: 1;
                column-count: 1;
        -webkit-column-gap: 0px;
                column-gap: 0px;
        width: 100%; } }

.thingsToDo .noArrowSlider {
  padding-top: 50px;
  padding-bottom: 50px;
  background: #fff;
  transition: background 0.5s ease-in; }
  .thingsToDo .noArrowSlider.backgroundColor {
    background: #F3F4F8; }
  @media (max-width: 40em) {
    .thingsToDo .noArrowSlider {
      padding-top: 25px;
      padding-bottom: 25px; } }

.thingsToDo_beaches {
  padding: 100px 0px 70px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background: #F3F4F8;
  transition: background 0.5s ease-in; }
  .thingsToDo_beaches.backgroundColor {
    background: #fff; }
  .thingsToDo_beaches h1 {
    line-height: 4vw;
    margin-bottom: 60px; }
    .thingsToDo_beaches h1 span {
      line-height: 5vw; }
  .thingsToDo_beaches div {
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .thingsToDo_beaches div img {
      width: 100%; }
    .thingsToDo_beaches div p {
      padding-right: 100px; }
  @media (max-width: 40em) {
    .thingsToDo_beaches {
      padding: 25px 0px 25px 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      .thingsToDo_beaches div {
        -webkit-flex: initial;
            -ms-flex: initial;
                flex: initial;
        width: 100%;
        margin: 10px 0; }
        .thingsToDo_beaches div p {
          padding-right: 25px; }
      .thingsToDo_beaches h1 {
        line-height: 6vw;
        margin-bottom: 20px; }
        .thingsToDo_beaches h1 span {
          line-height: 8vw; } }

.thingsToDo_events {
  padding-top: 50px;
  padding-bottom: 50px; }
  .thingsToDo_events-header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 0 150px; }
    .thingsToDo_events-header h1, .thingsToDo_events-header div {
      width: 50%; }
  @media (max-width: 40em) {
    .thingsToDo_events {
      padding-top: 25px;
      padding-bottom: 25px; }
      .thingsToDo_events-header {
        padding: 0 25px;
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .thingsToDo_events-header h1, .thingsToDo_events-header div {
          width: 100%; }
        .thingsToDo_events-header div {
          padding-left: 25px; } }

.events_intro {
  padding: 50px 150px; }
  .events_intro img {
    width: 100%; }
  .events_intro .text {
    width: 80%;
    -webkit-column-count: 2;
            column-count: 2;
    -webkit-column-gap: 35px;
            column-gap: 35px;
    margin: 20px auto; }
  @media (max-width: 40em) {
    .events_intro {
      padding: 0;
      margin: 25px;
      overflow: hidden; }
      .events_intro .text {
        -webkit-column-count: 1;
                column-count: 1;
        -webkit-column-gap: 0px;
                column-gap: 0px;
        width: 100%; }
      .events_intro img {
        height: 50vh;
        width: auto;
        -webkit-transform: translateX(-25%);
            -ms-transform: translateX(-25%);
                transform: translateX(-25%);
        max-width: initial; } }

.events_highlights {
  background: #F3F4F8;
  padding: 70px 0px;
  transition: background 0.5s ease-in; }
  .events_highlights.backgroundColor {
    background: #fff; }
  .events_highlights h2 {
    padding: 0 150px; }
  @media (max-width: 40em) {
    .events_highlights {
      padding: 30px 0; }
      .events_highlights h2 {
        padding: 0 25px; } }
  .events_highlights .event {
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important; }
    .events_highlights .event-image {
      width: 50%;
      padding: 50px;
      padding-left: 150px;
      z-index: 1; }
      .events_highlights .event-image img {
        width: 100%; }
    .events_highlights .event-content {
      background: #006D76;
      padding: 100px 200px;
      padding-left: 300px;
      width: calc(50% + 300px);
      margin-left: -280px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-content: space-between;
          -ms-flex-line-pack: justify;
              align-content: space-between;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .events_highlights .event-content h2, .events_highlights .event-content p {
        color: #fff; }
      .events_highlights .event-content h2 {
        font-size: 40px; }
      .events_highlights .event-content p, .events_highlights .event-content a {
        font-size: 20px; }
      .events_highlights .event-content a {
        background: #fff;
        border-radius: 50px;
        padding: 7px 20px;
        color: #00A39D;
        font-weight: bold; }
    @media (max-width: 40em) {
      .events_highlights .event {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .events_highlights .event-image {
          width: 100%;
          padding: 0; }
          .events_highlights .event-image img {
            -webkit-transform: translateY(0) !important;
                -ms-transform: translateY(0) !important;
                    transform: translateY(0) !important; }
        .events_highlights .event-content {
          padding: 25px 30px 40px;
          width: 100%;
          margin-left: 0; }
          .events_highlights .event-content h2 {
            font-size: 30px; }
          .events_highlights .event-content p {
            font-size: 15px; }
          .events_highlights .event-content a {
            padding: 15px 20px;
            font-size: 14px; }
          .events_highlights .event-content div:last-child {
            margin-top: 40px; } }
  .events_highlights .slick-arrow {
    background: #fff;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    color: #006D76;
    cursor: pointer;
    position: absolute;
    bottom: 100px;
    z-index: 1;
    border: 1px solid #fff; }
    .events_highlights .slick-arrow.slick-next {
      right: 200px; }
    .events_highlights .slick-arrow.slick-prev {
      right: 300px; }
    .events_highlights .slick-arrow:hover {
      background: transparent;
      color: #fff; }
    @media (max-width: 40em) {
      .events_highlights .slick-arrow {
        width: 50px;
        height: 50px;
        bottom: 28px; }
        .events_highlights .slick-arrow.slick-next {
          right: 20px; }
        .events_highlights .slick-arrow.slick-prev {
          right: 80px; } }

.events_calendar {
  padding: 50px 150px; }
  .events_calendar h2 {
    text-align: center; }
  @media (max-width: 40em) {
    .events_calendar {
      padding: 25px; }
      .events_calendar h2 {
        text-align: left; } }
  .events_calendar .filter {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-column-gap: 30px;
            column-gap: 30px; }
    .events_calendar .filter > div {
      width: 32%;
      border: 1px solid #00A39D;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      padding: 5px 20px; }
      .events_calendar .filter > div div {
        width: 100%;
        position: relative; }
        .events_calendar .filter > div div:after {
          color: #00A39D;
          right: 0;
          bottom: 13px;
          position: absolute;
          content: '\e807';
          font-family: "fontello";
          font-size: 30px;
          line-height: 10px; }
      .events_calendar .filter > div i {
        color: #00A39D;
        font-size: 23px; }
      .events_calendar .filter > div span {
        padding: 0 10px;
        font-size: 14px; }
      .events_calendar .filter > div select {
        border: none;
        box-shadow: none;
        margin-bottom: 0;
        font-size: 20px;
        color: #00A39D;
        padding: 0 10px;
        padding-right: 20px;
        background-image: none;
        z-index: 1;
        position: relative;
        background: transparent;
        cursor: pointer;
        height: 30px; }
    @media (max-width: 40em) {
      .events_calendar .filter {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .events_calendar .filter > div {
          width: 100%;
          margin-bottom: 30px; } }
  .events_calendar-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 35px;
    margin: 50px 0;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .events_calendar-container > div {
      width: 31%;
      background: #006D76; }
      .events_calendar-container > div img {
        width: 100%; }
      .events_calendar-container > div .content {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        background: #006D76;
        padding: 40px 20px;
        -webkit-column-gap: 20px;
                column-gap: 20px; }
      .events_calendar-container > div h3, .events_calendar-container > div p, .events_calendar-container > div a {
        color: #fff; }
      .events_calendar-container > div h3 {
        margin-bottom: 0;
        font-size: 30px;
        line-height: 30px; }
      .events_calendar-container > div p {
        font-size: 15px;
        line-height: 22px; }
        .events_calendar-container > div p.month {
          text-align: center; }
      .events_calendar-container > div .btn {
        font-size: 16px;
        margin-right: 20px;
        display: inline-block;
        margin-top: 30px; }
    @media (max-width: 40em) {
      .events_calendar-container {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .events_calendar-container > div {
          width: 100%;
          margin-bottom: 30px; }
          .events_calendar-container > div .content {
            padding: 20px 15px; }
          .events_calendar-container > div h3 {
            font-size: 30px; }
          .events_calendar-container > div p {
            margin-bottom: 15px; }
          .events_calendar-container > div .btn {
            margin-right: 30px; } }
    .events_calendar-container .NoEvents p {
      color: #00A39D;
      font-weight: bold; }

.singleEvent-intro {
  padding: 50px 0 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .singleEvent-intro .image {
    width: 60%; }
    .singleEvent-intro .image img {
      width: 100%; }
  .singleEvent-intro .text {
    width: 35%; }
    .singleEvent-intro .text .category {
      color: #00A39D;
      font-weight: bold;
      font-size: 16px; }
    .singleEvent-intro .text p {
      font-size: 20px;
      line-height: 35px; }
    .singleEvent-intro .text > div {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin: 30px 0; }
      .singleEvent-intro .text > div p {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
      .singleEvent-intro .text > div i {
        color: #00A39D; }
      @media (max-width: 40em) {
        .singleEvent-intro .text > div {
          -webkit-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
                  flex-wrap: wrap; }
          .singleEvent-intro .text > div i {
            font-size: 25px;
            margin-right: 15px; }
          .singleEvent-intro .text > div h2 {
            font-size: 32px; } }
  @media (max-width: 40em) {
    .singleEvent-intro {
      padding: 25px 0px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .singleEvent-intro div {
        -webkit-flex: initial;
            -ms-flex: initial;
                flex: initial;
        width: 100% !important;
        margin: 10px 0; }
        .singleEvent-intro div.text {
          padding: 0 25px; }
          .singleEvent-intro div.text p {
            font-size: 15px;
            line-height: 22px; } }

.singleEvent hr {
  margin-right: 0; }
  @media (max-width: 40em) {
    .singleEvent hr {
      margin: 0 25px; } }

.singleEvent .bookNow {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 50px 150px; }
  .singleEvent .bookNow p {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 30px;
            column-gap: 30px; }
    .singleEvent .bookNow p span:first-child {
      min-width: 150px; }
      @media (max-width: 40em) {
        .singleEvent .bookNow p span:first-child {
          min-width: 120px; } }
  @media (max-width: 40em) {
    .singleEvent .bookNow {
      padding: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .singleEvent .bookNow h2 {
        font-size: 32px; } }

.singleEvent .otherEvents {
  padding-top: 50px;
  padding-bottom: 50px; }
  .singleEvent .otherEvents h1 {
    padding-left: 150px; }
  @media (max-width: 40em) {
    .singleEvent .otherEvents {
      padding-top: 25px;
      padding-bottom: 25px; }
      .singleEvent .otherEvents h1 {
        padding-left: 25px; } }

.dineAround_intro {
  padding: 50px 150px;
  -webkit-column-count: 2;
          column-count: 2; }
  @media (max-width: 40em) {
    .dineAround_intro {
      padding: 25px;
      -webkit-column-count: 1;
              column-count: 1; } }

@media (max-width: 40em) {
  .dineAround .filter {
    width: 100%; } }

.dineAround .filter select {
  border: none;
  border-bottom: 1px solid;
  color: rgba(0, 0, 0, 0.4);
  text-transform: uppercase;
  font-size: 20px;
  height: auto;
  width: auto;
  background-color: transparent;
  box-shadow: none; }
  .dineAround .filter select:focus {
    box-shadow: none; }
  @media (max-width: 40em) {
    .dineAround .filter select {
      width: 100%;
      font-size: 16px; } }

.dineAround_allDay {
  padding-top: 50px;
  padding-bottom: 50px; }
  @media (max-width: 40em) {
    .dineAround_allDay {
      padding-top: 25px;
      padding-bottom: 25px; } }
  .dineAround_allDay-header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 150px;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media (max-width: 40em) {
      .dineAround_allDay-header {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        padding: 0 25px; } }
  .dineAround_allDay .noArrowSlider .slider_content {
    -webkit-align-items: baseline;
        -ms-flex-align: baseline;
            align-items: baseline; }
  .dineAround_allDay .noArrowSlider .slidersContainer .mainSlider .slick-slide h5 {
    font-size: 1.8vw; }
    @media (max-width: 40em) {
      .dineAround_allDay .noArrowSlider .slidersContainer .mainSlider .slick-slide h5 {
        font-size: 6vw; } }
  .dineAround_allDay .noArrowSlider .slidersContainer .mainSlider .slick-slide p, .dineAround_allDay .noArrowSlider .slidersContainer .mainSlider .slick-slide div {
    width: auto; }
  .dineAround_allDay .noArrowSlider .slidersContainer .mainSlider .slick-slide .slider_content {
    margin: 10px; }
    .dineAround_allDay .noArrowSlider .slidersContainer .mainSlider .slick-slide .slider_content .slider_title {
      padding: 0; }
    @media (max-width: 40em) {
      .dineAround_allDay .noArrowSlider .slidersContainer .mainSlider .slick-slide .slider_content {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .dineAround_allDay .noArrowSlider .slidersContainer .mainSlider .slick-slide .slider_content .slider_title {
          width: 100%; } }
  .dineAround_allDay .noArrowSlider .slidersContainer .mainSlider .slick-slide.slick-current .slider_content {
    margin: 10px 0; }

.dineAround_setMenu {
  padding-top: 50px;
  padding-bottom: 50px;
  background: #fff;
  transition: background 0.5s ease-in; }
  .dineAround_setMenu.backgroundColor {
    background: #F3F4F8; }
  @media (max-width: 40em) {
    .dineAround_setMenu {
      padding-top: 25px;
      padding-bottom: 25px; }
      .dineAround_setMenu .carousel-slider .slick-arrow {
        top: -120px; } }
  .dineAround_setMenu h4 {
    color: #fff; }
  .dineAround_setMenu-header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 100px 0 150px;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
    @media (max-width: 40em) {
      .dineAround_setMenu-header {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        padding: 0 25px; } }
  .dineAround_setMenu .note {
    color: #00A39D;
    font-weight: bold; }
  .dineAround_setMenu .schedule p {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding-bottom: 10px;
    -webkit-column-gap: 40px;
            column-gap: 40px; }
    .dineAround_setMenu .schedule p:not(:last-child) {
      border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
    .dineAround_setMenu .schedule p span:first-child {
      min-width: 110px; }
  .dineAround_setMenu .image {
    position: relative; }
    .dineAround_setMenu .image .logo {
      position: absolute;
      top: 0;
      left: 0;
      width: 30%; }

.dineAround_terms {
  padding: 50px 150px;
  background: #F3F4F8;
  transition: background 0.5s ease-in; }
  .dineAround_terms.backgroundColor {
    background: #fff; }
  @media (max-width: 40em) {
    .dineAround_terms {
      padding: 25px; } }

.dineAround_explore {
  padding: 50px 150px; }
  @media (max-width: 40em) {
    .dineAround_explore {
      padding: 25px; } }
  .dineAround_explore-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .dineAround_explore-container div {
      width: 30%; }
      .dineAround_explore-container div img {
        width: 100%; }
      .dineAround_explore-container div h3 {
        text-align: center;
        margin-top: 20px; }
      @media (max-width: 40em) {
        .dineAround_explore-container div {
          width: 100%;
          margin-bottom: 20px; }
          .dineAround_explore-container div h3 {
            text-align: left;
            margin-top: 10px;
            font-size: 26px; } }

.dineAround .noDining {
  padding: 10px 150px 50px; }
  @media (max-width: 40em) {
    .dineAround .noDining {
      padding: 25px; } }
  .dineAround .noDining p {
    color: #00A39D;
    font-weight: bold; }

.aquapark_intro {
  padding: 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 30px;
          column-gap: 30px; }
  .aquapark_intro div, .aquapark_intro h1 {
    width: 50%; }
  @media (max-width: 40em) {
    .aquapark_intro {
      padding: 50px 25px 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .aquapark_intro div, .aquapark_intro h1 {
        width: 100%; }
      .aquapark_intro div {
        padding-left: 25px; } }

.aquapark_details {
  padding: 50px 150px; }
  .aquapark_details img {
    width: 100%; }
  @media (max-width: 40em) {
    .aquapark_details {
      padding: 25px;
      overflow: hidden; }
      .aquapark_details img {
        height: 50vh;
        width: auto;
        -webkit-transform: translateX(-25%);
            -ms-transform: translateX(-25%);
                transform: translateX(-25%);
        max-width: initial; } }
  .aquapark_details-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-top: 50px; }
    .aquapark_details-container > div, .aquapark_details-container h2 {
      width: 32%; }
    @media (max-width: 40em) {
      .aquapark_details-container {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .aquapark_details-container > div, .aquapark_details-container h2 {
          width: 100%; } }
    .aquapark_details-container .schedule {
      border-left: 1px solid rgba(0, 0, 0, 0.1);
      padding-left: 30px; }
      .aquapark_details-container .schedule .title {
        font-weight: bold;
        color: #00A39D; }
      .aquapark_details-container .schedule p:not(.title) {
        font-size: 20px;
        padding-bottom: 10px;
        margin-bottom: 10px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-column-gap: 30px;
                column-gap: 30px; }
        .aquapark_details-container .schedule p:not(.title) span:first-child {
          min-width: 180px; }
          @media (max-width: 40em) {
            .aquapark_details-container .schedule p:not(.title) span:first-child {
              max-width: 170px; } }
        .aquapark_details-container .schedule p:not(.title):last-child {
          margin-bottom: 40px; }
        @media (max-width: 40em) {
          .aquapark_details-container .schedule p:not(.title) {
            font-size: 15px; }
            .aquapark_details-container .schedule p:not(.title) span:last-child {
              font-weight: bold; } }
      @media (max-width: 40em) {
        .aquapark_details-container .schedule {
          border-left: none;
          padding-left: 0;
          border-top: 1px solid rgba(0, 0, 0, 0.1);
          padding-top: 30px; } }

.aquapark_fees {
  padding: 50px 150px; }
  @media (max-width: 40em) {
    .aquapark_fees {
      padding: 25px; } }
  .aquapark_fees .feesGrid {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .aquapark_fees .feesGrid p {
      padding: 0 15px 10px;
      font-size: 20px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 50%;
      margin-bottom: 0; }
      .aquapark_fees .feesGrid p span:first-child {
        padding-right: 20px; }
      .aquapark_fees .feesGrid p:nth-child(odd) {
        border-right: 1px solid rgba(0, 0, 0, 0.1); }
      @media (max-width: 40em) {
        .aquapark_fees .feesGrid p {
          font-size: 15px;
          border-right: none !important;
          width: 100%;
          -webkit-justify-content: space-between;
              -ms-flex-pack: justify;
                  justify-content: space-between;
          padding: 0 0 10px; }
          .aquapark_fees .feesGrid p span {
            padding-right: 0; } }

.aquapark_highlight {
  display: -ms-grid;
  display: grid;
  gap: 20px;
  -ms-grid-columns: (1fr)[6];
      grid-template-columns: repeat(6, 1fr);
  padding: 50px 150px;
  background: #fff;
  transition: background 0.5s ease-in; }
  .aquapark_highlight.backgroundColor {
    background: #F3F4F8; }
  .aquapark_highlight div {
    text-align: center;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-content: start;
        -ms-flex-line-pack: start;
            align-content: start;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 20px 0; }
    .aquapark_highlight div h6 {
      width: 100%;
      margin-bottom: 0; }
    .aquapark_highlight div img {
      margin-bottom: 20px; }
  @media (max-width: 40em) {
    .aquapark_highlight {
      padding: 25px;
      -ms-grid-columns: (1fr)[3];
          grid-template-columns: repeat(3, 1fr); } }

.aquapark_gallery {
  padding-top: 50px;
  padding-bottom: 50px; }
  @media (max-width: 40em) {
    .aquapark_gallery {
      padding-top: 25px;
      padding-bottom: 25px; } }

.aquapark_explore {
  padding: 50px 150px; }
  @media (max-width: 40em) {
    .aquapark_explore {
      padding: 25px; } }
  .aquapark_explore-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .aquapark_explore-container div {
      width: 30%; }
      .aquapark_explore-container div img {
        width: 100%; }
      .aquapark_explore-container div h3 {
        text-align: center;
        margin-top: 20px; }
      @media (max-width: 40em) {
        .aquapark_explore-container div {
          width: 100%;
          margin-bottom: 20px; }
          .aquapark_explore-container div h3 {
            text-align: left;
            margin-top: 10px;
            font-size: 26px; } }

.faq {
  padding: 50px 150px; }
  @media (max-width: 40em) {
    .faq {
      padding: 25px; } }
  .faq h1 {
    font-size: 40px;
    line-height: 35px;
    margin-bottom: 30px; }
    @media (max-width: 40em) {
      .faq h1 {
        font-size: 20px;
        line-height: 25px; } }
  .faq_header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .faq_header select {
      border: none;
      box-shadow: none;
      border-bottom: 1px solid rgba(0, 0, 0, 0.1);
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      font-size: 20px;
      color: rgba(0, 0, 0, 0.4);
      text-transform: uppercase;
      height: auto; }
    @media (max-width: 40em) {
      .faq_header {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .faq_header select {
          width: 100%;
          font-size: 15px; } }
  .faq_container {
    padding: 50px 0; }
    @media (max-width: 40em) {
      .faq_container {
        padding: 25px 0; } }
    .faq_container .category {
      font-weight: bold;
      color: #00A39D; }
    .faq_container .accordion {
      /*column-count: 2;
    		column-gap: 50px;*/
      margin-bottom: 100px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-align-items: baseline;
          -ms-flex-align: baseline;
              align-items: baseline; }
      @media (max-width: 40em) {
        .faq_container .accordion {
          /*column-count: 1;
    			column-gap: 0px;*/
          margin-bottom: 40px; } }
      .faq_container .accordion-item {
        border-bottom: 1px solid #000;
        margin-bottom: 30px;
        width: 47%; }
        @media (max-width: 40em) {
          .faq_container .accordion-item {
            margin-bottom: 15px;
            width: 100%; } }
        .faq_container .accordion-item .accordion-title {
          border: none;
          font-size: 24px;
          font-family: ElMessiri;
          color: #000;
          padding-left: 0;
          padding-right: 20px; }
          .faq_container .accordion-item .accordion-title:hover {
            background: transparent;
            color: #00A39D; }
          .faq_container .accordion-item .accordion-title:focus {
            background: transparent; }
          .faq_container .accordion-item .accordion-title:before {
            right: 0; }
          @media (max-width: 40em) {
            .faq_container .accordion-item .accordion-title {
              font-size: 16px; } }
        .faq_container .accordion-item .accordion-content {
          border: none;
          padding: 15px 20px; }
        .faq_container .accordion-item.is-active .accordion-title {
          color: #00A39D;
          background: transparent; }

.sitemap {
  padding-top: 100px; }
  .sitemap h1 {
    text-align: center; }
  .sitemap_container {
    padding: 50px 150px;
    -webkit-column-count: 4;
            column-count: 4;
    -webkit-column-gap: 30px;
            column-gap: 30px; }
    @media (max-width: 40em) {
      .sitemap_container {
        padding: 25px;
        -webkit-column-count: 1;
                column-count: 1;
        -webkit-column-gap: 0;
                column-gap: 0; } }
    .sitemap_container ul {
      list-style: none;
      margin: 0; }
      .sitemap_container ul li {
        padding-left: 20px;
        position: relative;
        margin-bottom: 10px; }
        .sitemap_container ul li:before {
          color: #00A39D;
          left: 5px;
          top: 10px;
          position: absolute;
          content: '\e800';
          font-family: "fontello";
          line-height: 10px;
          font-size: 20px; }
        .sitemap_container ul li a {
          font-size: 16px; }
  .sitemap-element {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 1fr auto;
        grid-template-rows: 1fr auto;
    margin-bottom: 30px;
    -webkit-column-break-inside: avoid;
            break-inside: avoid; }

@media (max-width: 40em) {
  .campaign h2 {
    font-size: 30px; } }

.campaign_intro {
  padding: 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }
  .campaign_intro div {
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1; }
  @media (max-width: 40em) {
    .campaign_intro {
      padding: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .campaign_intro div {
        -webkit-flex: initial;
            -ms-flex: initial;
                flex: initial; } }

.campaign_keyUSP {
  padding: 50px 150px; }
  .campaign_keyUSP-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 30px; }
    .campaign_keyUSP-container div {
      width: 30%; }
  .campaign_keyUSP .btn {
    margin: auto;
    display: table; }
  @media (max-width: 40em) {
    .campaign_keyUSP {
      padding: 25px; }
      .campaign_keyUSP-container {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center; }
        .campaign_keyUSP-container div {
          width: 80%; } }

.campaign_features {
  padding: 50px 150px;
  background: #006D76; }
  .campaign_features h2, .campaign_features h6 {
    text-align: center;
    margin-bottom: 30px;
    color: #fff; }
  .campaign_features-container {
    display: -ms-grid;
    display: grid;
    gap: 20px;
    -ms-grid-columns: (1fr)[3];
        grid-template-columns: repeat(3, 1fr); }
    .campaign_features-container div {
      text-align: center; }
      .campaign_features-container div img {
        margin-bottom: 20px; }
  @media (max-width: 40em) {
    .campaign_features {
      padding: 25px; }
      .campaign_features-container {
        -ms-grid-columns: (1fr)[2];
            grid-template-columns: repeat(2, 1fr); } }

.campaign_brochure {
  padding: 50px 150px;
  position: relative;
  height: 80vh;
  width: 100%;
  background-size: cover;
  background-position: center;
  overflow: hidden; }
  .campaign_brochure:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 163, 157, 0.6);
    z-index: 1;
    left: 0;
    top: 0; }
  .campaign_brochure > div {
    z-index: 10;
    width: 60%;
    position: relative; }
    .campaign_brochure > div h2 {
      color: #fff;
      font-size: 60px; }
    .campaign_brochure > div .description p, .campaign_brochure > div .description li, .campaign_brochure > div .description span, .campaign_brochure > div .description div {
      color: #fff;
      font-size: 20px; }
    .campaign_brochure > div .description ul {
      list-style: none;
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: (1fr)[2];
          grid-template-columns: repeat(2, 1fr); }
      .campaign_brochure > div .description ul li {
        padding-left: 20px;
        position: relative;
        margin-bottom: 10px; }
        .campaign_brochure > div .description ul li:before {
          color: #fff;
          left: 5px;
          top: 8px;
          position: absolute;
          content: '\e800';
          font-family: "fontello";
          line-height: 10px;
          font-size: 20px; }
    .campaign_brochure > div .brochureForm {
      background: #fff;
      padding: 45px 20px; }
      .campaign_brochure > div .brochureForm .gform_heading {
        display: none; }
  .campaign_brochure .brochureImg {
    position: absolute;
    bottom: -20%;
    right: 0;
    z-index: 1;
    width: 50%; }
  @media (max-width: 40em) {
    .campaign_brochure {
      padding: 25px;
      height: 100vh;
      overflow: hidden; }
      .campaign_brochure > div {
        width: 100%; }
        .campaign_brochure > div h2 {
          font-size: 30px; }
      .campaign_brochure .brochureImg {
        bottom: -10%;
        width: 90%; } }
  @media (min-width: 40em) {
    .campaign_brochure {
      background-attachment: fixed; } }

.campaign_floorPlan {
  padding: 50px 150px; }
  .campaign_floorPlan h2 {
    text-align: center; }
  .campaign_floorPlan-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .campaign_floorPlan-container > div {
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1; }
    .campaign_floorPlan-container .images {
      text-align: center; }
      .campaign_floorPlan-container .images img {
        width: 50%; }
        .campaign_floorPlan-container .images img:not(:first-child) {
          display: none; }
    .campaign_floorPlan-container .accordion-item {
      padding: 20px 16px; }
    .campaign_floorPlan-container .accordion-title {
      border: none !important;
      color: #000;
      font-size: 20px;
      padding: 0;
      font-weight: bold;
      display: inline-block; }
      .campaign_floorPlan-container .accordion-title:before {
        display: none; }
      .campaign_floorPlan-container .accordion-title:hover {
        background: transparent;
        border-bottom: 1px solid #000 !important; }
    .campaign_floorPlan-container .accordion-content {
      border: none !important;
      font-size: 18px; }
      .campaign_floorPlan-container .accordion-content span {
        font-size: 20px; }
  @media (max-width: 40em) {
    .campaign_floorPlan {
      padding: 25px; }
      .campaign_floorPlan-container {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        -webkit-flex-direction: column-reverse;
            -ms-flex-direction: column-reverse;
                flex-direction: column-reverse; }
        .campaign_floorPlan-container .images img {
          width: 90%; }
        .campaign_floorPlan-container .accordion-title {
          font-size: 16px; } }

.campaign_location {
  padding: 50px 150px; }
  .campaign_location .acf-map {
    width: 100%;
    height: 500px; }
  .campaign_location-details {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 40px; }
    .campaign_location-details div {
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      text-align: center; }
      .campaign_location-details div:not(:last-child) {
        border-right: 1px solid #F3F4F8; }
  @media (max-width: 40em) {
    .campaign_location {
      padding: 25px; }
      .campaign_location-details {
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap; }
        .campaign_location-details div {
          -webkit-flex: initial;
              -ms-flex: initial;
                  flex: initial;
          width: 50%;
          padding: 5px; }
          .campaign_location-details div:nth-child(even) {
            border-right: none; } }

.campaign_gallery {
  padding: 50px 0px; }
  .campaign_gallery h2 {
    text-align: center; }
  .campaign_gallery .slick-slide > div {
    padding: 0 5px; }
  .campaign_gallery .image {
    overflow: hidden; }
    .campaign_gallery .image img {
      -webkit-transform: scale(1.1);
          -ms-transform: scale(1.1);
              transform: scale(1.1);
      transition: all 1s ease-in; }
      .campaign_gallery .image img:hover {
        -webkit-transform: scale(1);
            -ms-transform: scale(1);
                transform: scale(1); }

.campaign_developer {
  padding: 100px 0px 0px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .campaign_developer h1 {
    line-height: 4vw;
    margin-bottom: 60px; }
    .campaign_developer h1 span {
      line-height: 5vw; }
  .campaign_developer div {
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .campaign_developer div img {
      width: 100%; }
    .campaign_developer div p {
      padding-right: 100px; }
  @media (max-width: 40em) {
    .campaign_developer {
      padding: 25px 0px 25px 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      .campaign_developer div {
        -webkit-flex: initial;
            -ms-flex: initial;
                flex: initial;
        width: 100%;
        margin: 10px 0; }
        .campaign_developer div p {
          padding-right: 25px; }
      .campaign_developer h1 {
        line-height: 6vw;
        margin-bottom: 20px; }
        .campaign_developer h1 span {
          line-height: 8vw; } }

.campaign_investOman {
  padding: 50px 150px; }
  .campaign_investOman-container {
    display: -ms-grid;
    display: grid;
    gap: 20px;
    -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr); }
    .campaign_investOman-container div {
      padding-left: 20px;
      position: relative;
      margin-bottom: 10px; }
      .campaign_investOman-container div:before {
        color: #00A39D;
        left: 5px;
        top: 8px;
        position: absolute;
        content: '\e800';
        font-family: "fontello";
        line-height: 10px;
        font-size: 20px; }
  @media (max-width: 40em) {
    .campaign_investOman {
      padding: 25px; }
      .campaign_investOman-container {
        -ms-grid-columns: (1fr)[1];
            grid-template-columns: repeat(1, 1fr); } }

.campaign_contact {
  padding: 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background: #F3F4F8;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .campaign_contact > div {
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .campaign_contact > div:last-child {
      padding: 10px;
      box-shadow: 0 0 5px 0px #e1e1e1; }
  @media (max-width: 40em) {
    .campaign_contact {
      padding: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }

.sustainability_intro {
  padding: 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 30px;
          column-gap: 30px; }
  .sustainability_intro div, .sustainability_intro h1 {
    width: 50%; }
  .sustainability_intro h1 {
    font-size: 4vw; }
    @media (max-width: 40em) {
      .sustainability_intro h1 {
        font-size: 10vw; } }
    .sustainability_intro h1 span {
      margin-left: 0; }
  @media (max-width: 40em) {
    .sustainability_intro {
      padding: 50px 25px 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .sustainability_intro div, .sustainability_intro h1 {
        width: 100%; }
      .sustainability_intro div {
        padding-left: 25px; } }

.sustainability_body {
  padding: 50px 150px; }
  @media (max-width: 40em) {
    .sustainability_body {
      padding: 50px 25px; } }

.sustainability_row {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 40px; }
  .sustainability_row:nth-child(even) {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .sustainability_row div {
    width: 48%; }
  .sustainability_row-icon {
    text-align: center; }
    .sustainability_row-icon img {
      width: 50%; }
  @media (max-width: 40em) {
    .sustainability_row {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .sustainability_row div {
        width: 100%; }
      .sustainability_row-icon {
        margin-bottom: 30px; } }

.sustainability_greener {
  padding: 50px 0px 50px 150px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .sustainability_greener div {
    width: 48%; }
    .sustainability_greener div img {
      width: 100%; }
  @media (max-width: 40em) {
    .sustainability_greener {
      padding: 50px 0;
      padding-left: 25px;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      .sustainability_greener div {
        width: 100%; } }

.rtl ul {
  margin-right: 1.25rem;
  margin-left: 0; }

.rtl .phone a {
  direction: ltr !important; }

.rtl .menuIcon {
  margin-right: auto;
  margin-left: initial; }

.rtl .has-position-right .menuIcon span:nth-of-type(3), .rtl .has-position-left .menuIcon span:nth-of-type(3) {
  -webkit-transform: translate(-8px, -9px) rotatez(45deg);
      -ms-transform: translate(-8px, -9px) rotate(45deg);
          transform: translate(-8px, -9px) rotatez(45deg);
  opacity: 0; }

.rtl .bookNow-widget, .rtl .enquire-widget, .rtl .contact-widget {
  left: -40vw;
  right: initial; }
  .rtl .bookNow-widget.active, .rtl .enquire-widget.active, .rtl .contact-widget.active {
    left: 0;
    right: initial; }
  @media (max-width: 40em) {
    .rtl .bookNow-widget, .rtl .enquire-widget, .rtl .contact-widget {
      left: -100vw; } }

.rtl .top-bar-right .wpml-ls-legacy-dropdown a {
  padding: 5px 0px 5px 22px; }

.rtl .cta-mobile {
  direction: ltr; }

.rtl .banner.subpage .banner-text {
  margin-right: 6vw;
  margin-left: 0; }

.rtl .subpageBanner .banner .banner-text {
  margin-right: 6vw;
  margin-left: 0; }

@media (max-width: 40em) {
  .rtl .sliderBanner .bannerSlide-text h1 {
    margin-right: 20px;
    margin-left: 0px; } }

.rtl .noArrowSlider {
  padding-right: 150px;
  padding-left: 0px; }
  @media (max-width: 40em) {
    .rtl .noArrowSlider {
      padding-right: 15px;
      padding-left: 0px; }
      .rtl .noArrowSlider .slider-no {
        padding-right: 0;
        padding-left: 25px; } }
  .rtl .noArrowSlider .slidersContainer {
    -webkit-transform: translateX(-10%);
        -ms-transform: translateX(-10%);
            transform: translateX(-10%); }
    @media (max-width: 40em) {
      .rtl .noArrowSlider .slidersContainer {
        -webkit-transform: translateX(0%);
            -ms-transform: translateX(0%);
                transform: translateX(0%); } }
  .rtl .noArrowSlider-btns {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    @media (max-width: 40em) {
      .rtl .noArrowSlider-btns {
        display: none; } }

.rtl .carousel-slider .slick-slide .slide-content a {
  margin-left: 30px;
  margin-right: 0px; }

.rtl .carousel-slider .slick-list {
  -webkit-transform: translateX(-150px);
      -ms-transform: translateX(-150px);
          transform: translateX(-150px); }

.rtl .carousel-slider .slick-arrow.slick-prev {
  left: 100px;
  right: initial; }

.rtl .carousel-slider .slick-arrow.slick-next {
  left: 200px;
  right: initial; }

@media (max-width: 40em) {
  .rtl .carousel-slider .slick-list {
    -webkit-transform: translateX(0px);
        -ms-transform: translateX(0px);
            transform: translateX(0px);
    padding: 0 0% 0 20% !important; }
  .rtl .carousel-slider .slick-arrow.slick-prev {
    left: 10px; }
  .rtl .carousel-slider .slick-arrow.slick-next {
    left: 70px; } }

.rtl .footer-grid .widget h2, .rtl .footer-grid .widget h3 {
  margin-left: 30px;
  margin-right: 0px; }

.rtl .footer-grid .widget p a {
  direction: ltr; }

.rtl .homePage_hawana .slidersContainer .mainSlider .slick-slide.slick-current .slider_title, .rtl .homePage_events .slidersContainer .mainSlider .slick-slide.slick-current .slider_title {
  padding-right: 20px;
  padding-left: 0px; }

.rtl .homePage_offers .offer-image {
  padding-right: 150px;
  padding-left: 50px; }

.rtl .homePage_offers .offer-content {
  margin-left: 0;
  margin-right: -280px;
  padding-left: 200px;
  padding-right: 300px; }

.rtl .homePage_offers .slick-arrow.slick-prev {
  right: initial;
  left: 200px; }

.rtl .homePage_offers .slick-arrow.slick-next {
  right: initial;
  left: 300px; }

.rtl .homePage_realEstate .property-content div:first-child {
  padding-right: 0px;
  padding-left: 40px; }

.rtl .homePage_realEstate .property-content .cta div {
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.rtl .homePage_rental {
  padding: 100px 150px 70px 0px; }
  .rtl .homePage_rental div p {
    padding-right: 0px;
    padding-left: 100px; }

.rtl .homePage_events h1 {
  padding-right: 150px;
  padding-left: 0px; }

@media (max-width: 40em) {
  .rtl .about_location img {
    -webkit-transform: translateX(25%);
        -ms-transform: translateX(25%);
            transform: translateX(25%); } }

.rtl .about_story {
  padding: 100px 150px 70px 0px; }
  @media (max-width: 40em) {
    .rtl .about_story {
      padding: 25px 25px 25px 0px; } }

.rtl .about_testimonials {
  padding: 50px 150px 50px 0px; }
  @media (max-width: 40em) {
    .rtl .about_testimonials {
      padding: 25px; } }
  .rtl .about_testimonials .slick-list {
    padding-right: 0px !important; }
  .rtl .about_testimonials .slick-arrow.slick-next {
    left: 150px;
    right: initial; }
  .rtl .about_testimonials .slick-arrow.slick-prev {
    left: 70px;
    right: initial; }

.rtl .about_masterplan h1, .rtl .about_vision h1 {
  padding-right: 150px;
  padding-left: 0px; }
  @media (max-width: 40em) {
    .rtl .about_masterplan h1, .rtl .about_vision h1 {
      padding-right: 25px; } }

.rtl .about_vision-content {
  margin-left: 0%;
  padding-left: 50px;
  margin-right: -10%;
  padding-right: 15%; }
  @media (max-width: 40em) {
    .rtl .about_vision-content {
      margin: 0;
      padding: 25px; } }

.rtl .about_muriya {
  padding: 50px 0px 50px 150px; }

.rtl .about_hawana {
  padding: 50px 150px 50px 0px; }
  @media (max-width: 40em) {
    .rtl .about_hawana {
      padding: 25px 25px 25px 0px; } }

@media (max-width: 40em) {
  .rtl .about_explore-container div h3 {
    text-align: right; } }

.rtl .diningPage_section-content .singleDining-content {
  padding-right: calc(150px + 10%);
  padding-left: 0; }
  @media (max-width: 40em) {
    .rtl .diningPage_section-content .singleDining-content {
      padding-right: 25px;
      padding-left: 0; } }

.rtl .diningPage_section-content .singleDining:nth-child(odd) {
  padding-right: 150px;
  padding-left: 0px; }

.rtl .diningPage_section-content .singleDining:nth-child(even) {
  padding-left: 150px;
  padding-right: 0px; }

@media (max-width: 40em) {
  .rtl .dineAround_explore-container div h3 {
    text-align: right; } }

.rtl .marina .waterTaxi {
  padding: 50px 150px 50px 0px; }
  @media (max-width: 40em) {
    .rtl .marina .waterTaxi {
      padding: 25px 25px 25px 0; } }

.rtl .realEstate_investing {
  padding: 50px 150px 50px 0px; }
  .rtl .realEstate_investing div p {
    padding-left: 100px;
    padding-right: 0; }
  @media (max-width: 40em) {
    .rtl .realEstate_investing {
      padding: 40px 25px 40px 0px; }
      .rtl .realEstate_investing div p {
        padding-left: 25px;
        padding-right: 0; } }

.rtl .realEstate_properties .property:nth-child(odd) {
  padding-left: 150px;
  padding-right: 0px; }
  .rtl .realEstate_properties .property:nth-child(odd) h1 {
    padding-left: 0px;
    padding-right: 150px; }
  .rtl .realEstate_properties .property:nth-child(odd) .property-content {
    margin-left: 0%;
    margin-right: -10%;
    padding-left: 50px;
    padding-right: 15%; }
  @media (max-width: 40em) {
    .rtl .realEstate_properties .property:nth-child(odd) {
      padding-left: 0; }
      .rtl .realEstate_properties .property:nth-child(odd) h1 {
        padding-right: 25px; }
      .rtl .realEstate_properties .property:nth-child(odd) .property-content {
        margin: 0;
        padding: 50px; } }

.rtl .realEstate_properties .property:nth-child(even) .property-content {
  padding-left: 50px;
  padding-right: 150px; }
  @media (max-width: 40em) {
    .rtl .realEstate_properties .property:nth-child(even) .property-content {
      padding-left: 25px;
      padding-right: 25px; }
      .rtl .realEstate_properties .property:nth-child(even) .property-content a {
        margin-left: 0;
        margin-right: 25px; } }

@media (max-width: 40em) {
  .rtl .single-realEstate .otherProjects .projects .property h3 {
    text-align: right; } }

.rtl .stay .hotels .hotel:nth-child(odd) {
  padding-right: 150px;
  padding-left: 0px; }

.rtl .stay .hotels .hotel:nth-child(even) {
  padding-left: 150px;
  padding-right: 0px; }

@media (max-width: 40em) {
  .rtl .stay .hotels .hotel:nth-child(odd) {
    padding-right: 25px; }
    .rtl .stay .hotels .hotel:nth-child(odd) .hotel-info {
      padding-left: 25px; }
  .rtl .stay .hotels .hotel:nth-child(even) {
    padding-left: 25px; }
    .rtl .stay .hotels .hotel:nth-child(even) .hotel-info {
      padding-right: 25px; } }

.rtl .stay_dineAround {
  padding-left: 0px;
  padding-right: 150px; }
  @media (max-width: 40em) {
    .rtl .stay_dineAround {
      padding-right: 25px; }
      .rtl .stay_dineAround-details {
        padding-left: 25px; } }

@media (min-width: 40em) {
  .rtl .offers .offer.col-3:nth-child(2n) {
    margin-right: 150px;
    margin-left: 0px; } }

@media (min-width: 40em) {
  .rtl .offers .offer.col-3:nth-child(4n) {
    margin-left: 150px;
    margin-right: 0; } }

.rtl .offers .offer .btn {
  margin-left: 20px;
  margin-right: 0px; }

.rtl .rentalWidget .close {
  float: left; }

.rtl .rentalWidget_container label {
  margin-right: 0px;
  margin-left: 30px; }

.rtl .rentalWidget_container div.checkboxes div p input {
  margin-left: 10px;
  margin-right: 0px; }

.rtl .thingsToDo_beaches {
  padding: 100px 150px 70px 0px; }
  .rtl .thingsToDo_beaches p {
    padding-left: 100px;
    padding-right: 0px; }
  @media (max-width: 40em) {
    .rtl .thingsToDo_beaches {
      padding: 25px 25px 25px 0px; }
      .rtl .thingsToDo_beaches p {
        padding-left: 25px; } }

@media (max-width: 40em) {
  .rtl .events_intro img {
    -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
            transform: translateX(0%); } }

.rtl .events_highlights .event-image {
  padding-right: 150px;
  padding-left: 50px; }
  @media (max-width: 40em) {
    .rtl .events_highlights .event-image {
      padding: 0; } }

.rtl .events_highlights .event-content {
  padding-right: 300px;
  padding-left: 200px;
  margin-right: -280px;
  margin-left: 0px; }
  @media (max-width: 40em) {
    .rtl .events_highlights .event-content {
      margin-right: 0;
      padding: 25px 30px 40px; } }

.rtl .events_highlights .slick-arrow.slick-next {
  right: initial;
  left: 300px; }

.rtl .events_highlights .slick-arrow.slick-prev {
  right: initial;
  left: 200px; }

@media (max-width: 40em) {
  .rtl .events_highlights .slick-arrow.slick-next {
    left: 80px; }
  .rtl .events_highlights .slick-arrow.slick-prev {
    left: 20px; } }

.rtl .events_calendar .filter > div select {
  padding-right: 10px;
  padding-left: 20px; }

.rtl .events_calendar .filter > div div:after {
  left: 0;
  right: initial; }

.rtl .events_calendar-container > div .btn {
  margin-right: 0px;
  margin-left: 20px; }

.rtl .singleEvent-intro {
  padding: 50px 150px 50px 0px; }
  @media (max-width: 40em) {
    .rtl .singleEvent-intro {
      padding: 25px 25px 25px 0; } }

.rtl .singleEvent .otherEvents h1 {
  padding-left: 0px;
  padding-right: 150px; }
  @media (max-width: 40em) {
    .rtl .singleEvent .otherEvents h1 {
      padding-right: 25px; } }

@media (max-width: 40em) {
  .rtl .aquapark_details img {
    -webkit-transform: translateX(5%);
        -ms-transform: translateX(5%);
            transform: translateX(5%); } }

.rtl .aquapark_details-container .schedule {
  padding-left: 0px;
  padding-right: 30px;
  border-left: none;
  border-right: 1px solid rgba(0, 0, 0, 0.1); }
  @media (max-width: 40em) {
    .rtl .aquapark_details-container .schedule {
      padding-right: 0;
      border-right: none; } }

@media (max-width: 40em) {
  .rtl .aquapark_explore-container div h3 {
    text-align: right; } }

.rtl .faq_container .accordion li .accordion-title {
  padding-right: 0;
  padding-left: 16px; }
  .rtl .faq_container .accordion li .accordion-title::before {
    left: 1rem;
    right: initial; }

.rtl .sitemap_container ul li {
  padding-left: 0px;
  padding-right: 20px; }
  .rtl .sitemap_container ul li:before {
    left: initial;
    right: 5px;
    content: '\E802'; }

.rtl .singleHotel_rooms h1, .rtl .singleHotel .ourHotel h1, .rtl .singleHotel_news h1 {
  padding-right: 150px;
  padding-left: 0px; }
  @media (max-width: 40em) {
    .rtl .singleHotel_rooms h1, .rtl .singleHotel .ourHotel h1, .rtl .singleHotel_news h1 {
      padding-right: 25px; } }

.rtl .singleHotel .ourHotel-block p span {
  color: #fff; }

.rtl .singleHotel .ourHotel_section2 {
  padding-left: 0;
  padding-right: 150px; }
  @media (max-width: 40em) {
    .rtl .singleHotel .ourHotel_section2 {
      padding-left: 0;
      padding-right: 25px; } }

.rtl .singleHotel_offers .offer-image {
  padding-left: 50px;
  padding-right: 150px; }

.rtl .singleHotel_offers .offer-content {
  padding-left: 200px;
  padding-right: 300px;
  margin-right: -280px;
  margin-left: 0px; }

@media (max-width: 40em) {
  .rtl .singleHotel_offers .offer-image {
    padding-left: 25px;
    padding-right: 25px; }
  .rtl .singleHotel_offers .offer-content {
    margin-right: 0; } }

.rtl .singleHotel_offers .slick-arrow.slick-next {
  left: 300px;
  right: initial; }

.rtl .singleHotel_offers .slick-arrow.slick-prev {
  left: 200px;
  right: initial; }

@media (max-width: 40em) {
  .rtl .singleHotel_offers .slick-arrow.slick-next {
    left: 80px; }
  .rtl .singleHotel_offers .slick-arrow.slick-prev {
    left: 20px; } }

.rtl .singleHotel_dining {
  padding-left: 0px;
  padding-right: 150px; }
  @media (max-width: 40em) {
    .rtl .singleHotel_dining {
      padding-right: 25px; } }

.rtl .accomodation_roomFactSheet .icons > div div {
  margin-right: 0px;
  margin-left: 30px; }

.rtl .accomodation_rooms h2 {
  padding-left: 0px;
  padding-right: 150px; }
  @media (max-width: 40em) {
    .rtl .accomodation_rooms h2 {
      padding-right: 25px; } }

.rtl .dining-section h1 {
  padding-left: 0px;
  padding-right: 150px; }

.rtl .reviews #lang_selector {
  background-position: left 0 center; }

.rtl .ourHotel-facilities .otherFacilities > div img {
  margin-right: 0;
  margin-left: 10px; }

.rtl .ourHotel-services .services > div img {
  margin-right: 0;
  margin-left: 10px; }

.rtl .postDetails .close {
  left: 0;
  right: initial; }

.rtl .postDetails h3 span {
  line-height: 8vw; }
  @media (max-width: 40em) {
    .rtl .postDetails h3 span {
      line-height: 22vw; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsImFwcC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy92ZW5kb3Ivbm9ybWFsaXplLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIl9zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL191bml0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19oZWxwLXRleHQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLW1lbnUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19iYWRnZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYXJkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Nsb3NlLWJ1dHRvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LWljb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19tYXRoLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLW9iamVjdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MiLCJnbG9iYWwvX2NvbG9ycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vcmJpdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Byb2dyZXNzLWJhci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3RpY2t5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19jb2xvci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RodW1ibmFpbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aXRsZS1iYXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9vbHRpcC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b3AtYmFyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX3NldHRpbmdzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL19rZXlmcmFtZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3NsaWRlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fZmFkZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvZWZmZWN0cy9faGluZ2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19oaW5nZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3pvb20uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zcGluLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL19hbmltYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9zbGljay1jYXJvdXNlbC9zbGljay9zbGljay5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2xvY29tb3RpdmUtc2Nyb2xsL2Rpc3QvbG9jb21vdGl2ZS1zY3JvbGwuY3NzIiwiZm9udGVsbG8uc2NzcyIsIl9nZW5lcmFsLnNjc3MiLCJnbG9iYWwvX2ZvbnRzLnNjc3MiLCJnbG9iYWwvX3dwLWFkbWluLnNjc3MiLCJtb2R1bGVzL19uYXZpZ2F0aW9uLnNjc3MiLCJtb2R1bGVzL19jb250ZW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2d1dHRlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jZWxsLnNjc3MiLCJtb2R1bGVzL19mb290ZXIuc2NzcyIsIm1vZHVsZXMvX2VkaXRvci1zdHlsZS5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwidGVtcGxhdGVzL19ob21lUGFnZS5zY3NzIiwidGVtcGxhdGVzL19yZWFsRXN0YXRlLnNjc3MiLCJ0ZW1wbGF0ZXMvX3N0YXkuc2NzcyIsInRlbXBsYXRlcy9faG90ZWwuc2NzcyIsInRlbXBsYXRlcy9ob3RlbC9fYWNjb21vZGF0aW9uLnNjc3MiLCJ0ZW1wbGF0ZXMvaG90ZWwvX291ckhvdGVsLnNjc3MiLCJ0ZW1wbGF0ZXMvaG90ZWwvX2RpbmluZy5zY3NzIiwidGVtcGxhdGVzL2hvdGVsL19nYWxsZXJ5LnNjc3MiLCJ0ZW1wbGF0ZXMvaG90ZWwvX25ld3Muc2NzcyIsInRlbXBsYXRlcy9ob3RlbC9fcmV2aWV3cy5zY3NzIiwidGVtcGxhdGVzL19vZmZlcnMuc2NzcyIsInRlbXBsYXRlcy9fYWJvdXQuc2NzcyIsInRlbXBsYXRlcy9fY29udGFjdC5zY3NzIiwidGVtcGxhdGVzL19yZW50YWwuc2NzcyIsInRlbXBsYXRlcy9fdGhpbmdzVG9Eby5zY3NzIiwidGVtcGxhdGVzL19ldmVudHMuc2NzcyIsInRlbXBsYXRlcy9fZGluZUFyb3VuZC5zY3NzIiwidGVtcGxhdGVzL19hcXVhcGFyay5zY3NzIiwidGVtcGxhdGVzL19mYXEuc2NzcyIsInRlbXBsYXRlcy9fc2l0ZW1hcC5zY3NzIiwidGVtcGxhdGVzL19jYW1wYWlnbi5zY3NzIiwidGVtcGxhdGVzL19zdXN0YWluYWJpbGl0eS5zY3NzIiwiX2FyYWJpYy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7Ozs7R0FLRztBQ3dESCx1RUFBTztBQ3lHRDtFQ3pISjtJQUNFLFlBQVc7SUFDWCxXQUFVO0lBQ1YsZUFBYyxFQUNmLEVBQUE7O0FDaERELDRFQUE0RTtBQVE1RTtFQUNFLGtCQUFpQjtFQUNqQiwrQkFBOEIsRUFDL0I7O0FBT0Q7RUFDRSxVQUFTLEVBQ1Y7O0FBS0Q7RUFDRSxlQUFjO0VBQ2QsaUJBQWdCLEVBQ2pCOztBQVFEO0VBQ0Usd0JBQXVCO0VBQ3ZCLFVBQVM7RUFDVCxrQkFBaUIsRUFDbEI7O0FBS0Q7RUFDRSxrQ0FBaUM7RUFDakMsZUFBYyxFQUNmOztBQU9EO0VBQ0UsOEJBQTZCLEVBQzlCOztBQUtEO0VBQ0Usb0JBQW1CO0VBQ25CLDJCQUEwQjtFQUMxQixrQ0FBaUMsRUFDbEM7O0FBSUQ7O0VBRUUsb0JBQW1CLEVBQ3BCOztBQUtEOzs7RUFHRSxrQ0FBaUM7RUFDakMsZUFBYyxFQUNmOztBQUlEO0VBQ0UsZUFBYyxFQUNmOztBQUtEOztFQUVFLGVBQWM7RUFDZCxlQUFjO0VBQ2QsbUJBQWtCO0VBQ2xCLHlCQUF3QixFQUN6Qjs7QUFFRDtFQUNFLGdCQUFlLEVBQ2hCOztBQUVEO0VBQ0UsWUFBVyxFQUNaOztBQU9EO0VBQ0UsbUJBQWtCLEVBQ25COztBQVFEOzs7OztFQUtFLHFCQUFvQjtFQUNwQixnQkFBZTtFQUNmLGtCQUFpQjtFQUNqQixVQUFTLEVBQ1Y7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YTtFQU9iLHNCRjlOaUIsRUVnT3BCOztBQWpDRDtFQUlJLHFCQ3ZQNkM7RURtUTdDLGlCRmhOVztFRXdOWCxjQUFhO0VBT2Isc0JGOU5pQixFRWdPcEI7O0FBakNEO0VBSUksZ0JDdlA2QztFRG1RN0MsaUJGaE5XO0VFd05YLGNBQWE7RUFPYixzQkY5TmlCLEVFZ09wQjs7QU50TUg7RU1xS0U7SUFJSSxnQkN2UDZDLEVEb1JoRDtFQWpDRDtJQUlJLGtCQ3ZQNkMsRURvUmhEO0VBakNEO0lBSUkscUJDdlA2QyxFRG9SaEQ7RUFqQ0Q7SUFJSSxxQkN2UDZDLEVEb1JoRDtFQWpDRDtJQUlJLG1CQ3ZQNkMsRURvUmhEO0VBakNEO0lBSUksZ0JDdlA2QyxFRG9SaEQsRUFBQTs7QUpwVFA7RUkyVEUscUJBQW9CO0VBQ3BCLGVGM1NjO0VFNFNkLHNCRnhNeUI7RUUwTXpCLGdCQUFlLEVBYWhCO0VBbEJEO0lBU0ksZUYvTTJELEVFbU41RDtFQWJIO0lBZ0JJLFVBQVMsRUFDVjs7QUo5Vkg7RUltV0UsWUFBVztFQUVYLGlCQ2xUcUQ7RURtVHJELFVBQVM7RUFDVCxxQkYzTnlCO0VFNk56QixjQUFhO0VBQ2IsZ0JBQWU7RUFDZixpQ0ZoVWlCO0VFaVVqQixlQUFjLEVBQ2Y7O0FBR0Q7OztFQUdFLG9CRnJQMEI7RUVzUDFCLDZCRnBPeUI7RUVxT3pCLGlCRnhQc0IsRUV5UHZCOztBQUdEO0VBQ0UsbUJBQWtCLEVBQ25COztBQUdEO0VBQ0UscUJGOU9zQjtFRStPdEIsc0JGalBrQixFRWtQbkI7O0FBR0Q7RUFDRSxxQkZwUHNCLEVFcVB2Qjs7QUFHRDtFQUVJLHFCRnpQMkI7RUUwUDNCLGlCQUFnQixFQUNqQjs7QUFJSDtFQUNFLG9CRi9QeUIsRUVxUTFCO0VBUEQ7SUFJSSxzQkZoUThCO0lFaVE5QixrQkYvVm1CLEVFZ1dwQjs7QUFJSDtFQUNFLGlCRjlSMEI7RUUrUjFCLHVDQzFXcUQ7RUQyV3JELCtCRm5YaUIsRUV5WGxCO0VBVEQ7SUFNSSxpQkZwU29CO0lFcVNwQixlRnRYYSxFRXVYZDs7QUFJSDtFQUNFLGVB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akIsZ0JUekNtRCxFUzBDcEQ7O0FkcURIO0VlaEpFLFVBQVM7RUFDVCxXQUFVO0VBQ1YsVUFBUyxFQUNWOztBZnNKRDtFZW5KRSxnQkFBZTtFQUNmLHNCQUFrQyxFQUNuQzs7QUFFRDtFQXhCQSxtQlZvRVc7RVVuRVgsaUJWOER1RDtFVTdEdkQsMEJicURtQixFYTdCbEI7RUF0QkQ7SUFFRSxVQUFTO0lBQ1Qsd0JWd0RxRDtJVXZEckQscUJWdURxRCxFVXREdEQ7O0FkOEpEO0VlektBLGtCQUZzSjtFQUd0SixpQlhnRXVEO0VXL0R2RCxnQmRpYStCO0VjL1ovQix5QkFBZ0I7S0FBaEIsc0JBQWdCO1VBQWhCLGlCQUFnQjtFQUNoQiwwQmRvRG1CO0VjbkRuQixpQmRnRWU7RWMvRGYsMEJkcURhO0VjbkRiLHFCZGlaeUI7RWNoWnpCLGdCWHVEdUQ7RVd0RHZELG9CZHlEMkI7RWN4RDNCLGlCZG9DcUI7RWNuQ3JCLGVkOENhO0VDb0ViLHlPQUF5TjtFYTlHdk4sK0JBQThCO0VBQzlCLHdDQUEwRDtFQUMxRCw2QkFBNEI7RUFDNUIseUJBQXdCO0VBRXhCLHNCQUF1RDtFQUl2RCw0RGQ2WThELEVjMVcvRDtFYm9FRDtJRndDQTtNRXJDSSx3V0FBdVcsRWF2RTFXLEVBQUE7RUEvQkQ7SUFDRSxjQUFhO0lBQ2IsMEJkMEJlO0ljekJmLDBCZDJCVztJYzFCWCw0QmR1QmlCO0ljcEJmLDREZGtZNEQsRWNoWS9EO0VBR0Q7SUFDRSwwQmRhZ0I7SWNaaEIsb0JkMFgrQixFY3pYaEM7RUFHRDtJQUNFLGNBQWEsRUFDZDtFQUVEO0lBQ0UsYUFBWTtJQUNaLHVCQUFzQixFQUN2Qjs7QUNsQ0Q7RUFDRSxzQmZnQ1k7RWUvQlosMEJBQStELEVBS2hFO0VBSEM7SUFDRSxlZjRCVSxFZTNCWDtFQUZEO0lBQ0UsZWY0QlUsRWUzQlg7RUFGRDtJQUNFLGVmNEJVLEVlM0JYOztBQXlCRDtFQUNFLGVmQ1UsRWVBWDs7QUFJSDtFQXpCQSxjQUFhO0VBQ2Isb0JBQWdDO0VBQ2hDLG9CWjhCdUQ7RVk1QnZELG1CWjRCdUQ7RVkzQnZELGtCZitCdUI7RWU5QnZCLGVmZWMsRWVVYjtFQU5EO0lBSUksZUFBYyxFQUNmOztBQ3NESDtFQXhGQSxlQUFnQztFQUNoQyxvQmhCOEJhO0VnQjdCYixzQkFBcUIsRUF3RnBCO0VBckZDO0lBQ0Usb0JBQW1CLEVBQ3BCOztBQU1IO0VBQ0UsdUJBQWdELEVBQ2pEOztBQUVEO0VBQ0UsdUJoQnVCYSxFZ0J0QmQ7O0FBNkVEO0VBbEVBLG1CQUFrQjtFQUNsQixlQUFjO0VBQ2Qsc0JoQm1KbUM7RWdCakpuQywwQmhCUGtCO0VnQlFsQixpQkFBZ0I7RUFFaEIsbUJiRHVEO0VhRXZELGVBQWM7RUFDZCxlaEJsQmdCLEVnQjZFZjtFQXpERDtJQUNFLGlDaEJmZ0I7SWdCZ0JoQix1QmhCRmEsRWdCR2Q7RUFFRDtJQUVFLDBCaEJyQmdCLEVnQnNCakI7RUFHQztJQUNFLG1CQUFrQjtJQUNsQixTQUFRO0lBQ1IsWUFBc0I7SUFDdEIsb0JBQW1CO0lBQ25CLGFBQVksRUFDYjtFQUVEO0lBQ0UsaUJBQWdCLEVBQ2pCOztBQXNDSDtFQTNCQSxjQUFhO0VBQ2IsY2hCNkc4QjtFZ0IzRzlCLDBCaEJqRGtCO0VnQmtEbEIsaUJBQWdCO0VBQ2hCLDBCaEIvQ2E7RWdCaURiLGVoQmxEYSxFZ0J3RVo7RUFwQkQ7SUFDRSxpQ2hCeERnQixFZ0J5RGpCOztBQzNERDtFQVdJLFlBQVcsRUFDWjs7QUFaSDtFQWtCSSxxQmpCRDJCLEVpQkU1Qjs7QUFuQkg7RUFzQkkscUJqQkwyQixFaUJNNUI7O0FBdkJIO0VDeUpFLGdCQUFpQztFQUNqQyxrQmxCeEk0QixFaUJTM0I7O0FBM0JIO0VDcUpFLG1CbEJuSTRCO0VrQm9JNUIsZUFBZ0MsRUR0SDdCOztBQXhETDtFQUNFLG1CQUFrQixFQVNuQjtFQVBDO0loQmRGLGVBQWM7SUFDZCxTQUFRO0lBQ1IsVUFBUztJQUVULGtCRDZNNEI7SUMzTTVCLFlBQVc7SUFHVCx1QkFBc0I7SUFDdEIsd0JBQXVCO0lBQ3ZCLDhDQUFxRDtJZ0JLbkQsbUJBQWtCO0lBQ2xCLFNBQVE7SUFDUixpQkFBZ0Q7SUFDaEQsWUFBc0IsRUFDdkI7O0FBR0g7RUFDRSxZQUFXO0VBQ1gsV0FBVSxFQUNYOztBQUVEO0VBQ0UsWUFBVztFQUNYLFdBQVUsRUFDWDs7QUFJRDtFQXVDTSxrQ0FBeUI7TUFBekIsOEJBQXlCO1VBQXpCLDBCQUF5QjtFQUN6QixrQ0FBeUI7TUFBekIsOEJBQXlCO1VBQXpCLDBCQUF5QixFQUMxQjs7QUFXTDtFQUNFLG1CQUFrQixFQUNuQjs7QUFFRDtFQUNFLG1CakJtSHFDLEVpQmxIdEM7O0FBR0Q7RUFDRSxtQkFBa0I7RUFDbEIsT0FBTTtFQUNOLFNBQW1CO0VBRW5CLFlqQjBHcUM7RWlCekdyQyxhakJ5R3FDO0VpQnZHckMsZ0JBQWUsRUFnQmhCO0VBeEJEO0loQmhHQSxlQUFjO0lBQ2QsU0FBUTtJQUNSLFVBQVM7SUFFVCxrQmdCOEc2QjtJaEI1RzdCLFlBQVc7SUFHVCx1QkFBc0I7SUFDdEIsd0JBQXVCO0lBQ3ZCLDhDQUFxRDtJZ0J5R25ELE9BQU07SUFDTixVQUFTO0lBQ1QsYUFBWSxFQUNiOztBQUlIO0VBQ0UsOEJBQXFCO01BQXJCLDBCQUFxQjtVQUFyQixzQkFBcUI7RUFDckIsa0NBQXlCO01BQXpCLDhCQUF5QjtVQUF6QiwwQkFBeUIsRUFDMUI7O0FBRUQ7RWhCd0NBLDhCQUE2QjtFQUM3QixXQUFVO0VBQ1YsWUFBVztFQUNYLFdBQVU7RUFDVixpQkFBZ0I7RUFDaEIsdUJBQW1CO0VBQ25CLG9CQUFtQjtFQUNuQixVQUFTLEVnQjdDUjs7QUUzSEQ7RUFYQSxzQkFBcUI7RUFDckIsaUJuQjhOb0I7RW1CN05wQixlbkI0Tm1CO0VtQjFObkIsbUJBQWtCO0VBRWxCLGtCbkIwTnNCO0VtQnpOdEIsbUJBQWtCO0VBT2hCLG9CbkJxQmM7RW1CcEJkLGVuQjhCVyxFbUJ0Qlo7RUFaRDtJQVFNLG9CbkJnQlU7SW1CZlYsZW5CeUJPLEVtQnhCUjtFQVZMO0lBUU0sb0JuQmlCWTtJbUJoQlosZW5CeUJPLEVtQnhCUjtFQVZMO0lBUU0sb0JuQmtCVTtJbUJqQlYsZW5Cd0JPLEVtQnZCUjtFQVZMO0lBUU0sb0JuQm1CVTtJbUJsQlYsZW5Cd0JPLEVtQnZCUjtFQVZMO0lBUU0sb0JuQm9CUTtJbUJuQlIsZW5CeUJPLEVtQnhCUjs7QUNtREw7RUE3Q0EsbUJwQjBNdUM7RW9Cek12QyxpQkFBZ0IsRUFtRGY7RW5Cb0REO0lBRUUsZUFBYztJQUNkLGFBQVk7SUFHVixzQkFBYTtRQUFiLDJCQUFhO1lBQWIsY0FBYTtJQUNiLGlCQUFRO1FBQVIsa0JBQVE7WUFBUixTQUFRLEVBRVg7RUFFRDtJQUNFLFlBQVcsRUFDWjtFbUJqSEQ7SUFDRSxZQUFPO0lBRVAscUJqQmdCcUQ7SWlCZnJELGVwQlNXO0lvQlJYLGdCQUFlO0lBR2IsMEJBQXlCLEVBb0I1QjtJQVpLO01BQ0UsbUJBQWtCO01BQ2xCLGtCcEJ5THVCO01vQnhMdkIsV0FBVTtNQUNWLGFwQjBMMkI7TW9CekwzQixlcEJWVyxFb0JXWjtFQVNQO0lBQ0UsZXBCNUJjLEVvQmlDZjtJQUhDO01BQ0UsMkJBQTBCLEVBQzNCO0VBS0g7SUFJSSxlcEJsQ2U7SW9CbUNmLG9CQUFtQixFQUNwQjs7QUNpRkg7RUFqS0Esb0JyQitRdUI7RXFCNVFyQixzQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDBCQUFpQjtNQUFqQixzQkFBaUI7VUFBakIsa0JBQWlCO0VBQ2pCLDZCQUFvQjtNQUFwQix3QkFBb0I7VUFBcEIscUJBQW9CLEVBcU9yQjtFcEJyR0Q7SUFFRSxlQUFjO0lBQ2QsYUFBWTtJQUdWLHNCQUFhO1FBQWIsMkJBQWE7WUFBYixjQUFhO0lBQ2IsaUJBQVE7UUFBUixrQkFBUTtZQUFSLFNBQVEsRUFFWDtFQUVEO0lBQ0UsWUFBVyxFQUNaO0VvQnZJRDtJQUNFLFVBQVM7SUFDVCxrQnJCbVFxQjtJcUJsUXJCLG1CckJrUXFCO0lxQmpRckIsa0JyQm9QYTtJcUJqUFgsdUJBQWM7UUFBZCxtQkFBYztZQUFkLGVBQWMsRUFxQmpCO0lBbEJDO01BQ0UsZ0JBQWlDLEVBQ2xDO0VBMElIO0lBTU0sa0JyQjBGTSxFcUJ6RlA7RUFQTDtJQU1NLG1CckIyRlEsRXFCMUZUO0VBUEw7SUFNTSxtQnJCNkZRLEVxQjVGVDtFQTdHTDtJQUVJLHNCQUFhO1FBQWIsa0JBQWE7WUFBYixjQUFhLEVBeUJoQjtFQTJFRDtJZGhEQSwwQlA1RWdCO0lPNkVoQixlUG5FYSxFcUJzSU47SWRqRVA7TUFDRSwwQkFQb0Y7TUFRcEYsZVB2RVcsRU93RVo7RWMwQ0Q7SWRoREEsMEJQM0VrQjtJTzRFbEIsZVBuRWEsRXFCc0lOO0lkakVQO01BQ0UsMEJBUG9GO01BUXBGLGVQdkVXLEVPd0VaO0VjMENEO0lkaERBLDBCUDFFZ0I7SU8yRWhCLGVQcEVhLEVxQnVJTjtJZGpFUDtNQUNFLDBCQVBvRjtNQVFwRixlUHhFVyxFT3lFWjtFYzBDRDtJZGhEQSwwQlB6RWdCO0lPMEVoQixlUHBFYSxFcUJ1SU47SWRqRVA7TUFDRSwwQkFQb0Y7TUFRcEYsZVB4RVcsRU95RVo7RWMwQ0Q7SWRoREEsMEJQeEVjO0lPeUVkLGVQbkVhLEVxQnNJTjtJZGpFUDtNQUNFLDBCQVBvRjtNQVFwRixlUHZFVyxFT3dFWjtFYzBDRDtJQWxFRSx3QkFBZTtRQUFmLG9CQUFlO1lBQWYsZ0JBQWUsRUF3R2Q7SUFyR0g7TUFFSSx1QkFBYztVQUFkLG1CQUFjO2NBQWQsZUFBYyxFQTBCakI7TUFwQkM7UUFDRSxpQkFBZ0IsRUFDakI7SUFqREg7TUFFSSxzQkFBYTtVQUFiLGtCQUFhO2NBQWIsY0FBYSxFQXlCaEI7RXpCNENHO0l5QklKO01BRUksdUJBQWM7VUFBZCxtQkFBYztjQUFkLGVBQWM7TUFLaEIsaUJBQWdCLEVBZ0JqQixFQUFBO0V6QjNCRztJeUJJSjtNQUVJLHVCQUFjO1VBQWQsbUJBQWM7Y0FBZCxlQUFjO01BS2hCLGlCQUFnQixFQWdCakIsRUFBQTtFekJ0Qkc7SXlCMEJKO01Bc0RNLGVBQWMsRUFPakI7TUE3REg7UUF5RFEsZUFBYztRQUNkLGdCQUFpQyxFQUNsQyxFQUFBO0V6QnJGSDtJeUIwQko7TUFpRU0sZUFBYyxFQU9qQjtNQXhFSDtRQW9FUSxlQUFjO1FBQ2QsZ0JBQWlDLEVBQ2xDLEVBQUE7O0FDbkxQO0VBMUNBLG1CQUFrQjtFQUNsQixtQnRCZ1J5QjtFc0IvUXpCLGN0QmdSb0I7RXNCOVFwQix5Q3RCZ0NhO0VzQi9CYixpQnRCMENlO0VzQnpCZix3QkFGc0U7RUFHdEUsZXRCYWEsRXNCc0JaO0VBbEREO0lBQ0UsY0FBYSxFQUNkO0VBRUQ7SUFDRSxpQkFBZ0IsRUFDakI7RUE0QkQ7SUFwQkEsMEJBRnNFO0lBR3RFLGV0QmFhLEVzQllSO0VBTkw7SUFwQkEsMEJBRnNFO0lBR3RFLGV0QmFhLEVzQllSO0VBTkw7SUFwQkEsMEJBRnNFO0lBR3RFLGV0QmFhLEVzQllSO0VBTkw7SUFwQkEsMEJBRnNFO0lBR3RFLGV0QmFhLEVzQllSO0VBTkw7SUFwQkEsMEJBRnNFO0lBR3RFLGV0QmFhLEVzQllSO0VBTkw7SUFmQSxvQkF5QmdDO0lBeEJoQyxzQkF3QmdDO0lBdkJoQyx1QkF1QmdDO0lBdEJoQyxxQkFzQmdDLEVBQzdCO0VBWEg7SUFmQSxrQkE2QjhCO0lBNUI5QixvQkE0QjhCO0lBM0I5QixxQkEyQjhCO0lBMUI5QixtQkEwQjhCLEVBQzNCOztBQ1FIO0VBdkRFLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsK0JBQXNCO01BQXRCLDJCQUFzQjtVQUF0Qix1QkFBc0I7RUFDdEIscUJBQVk7TUFBWixxQkFBWTtVQUFaLGFBQVk7RUFHZCxvQnZCMkJrQjtFdUJ6QmxCLDBCdkJnQmtCO0V1QmZsQixpQnZCNkJlO0V1QjNCZixvQnZCaUJhO0V1QmhCYixpQnZCMFFnQjtFdUJ4UWhCLGlCQUFnQjtFQUNoQixldkJZYSxFdUIrQlo7RUF6Q0Q7SUFDRSxpQkFBZ0IsRUFDakI7O0FBeUNEO0VBaENFLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsdUJBQWM7TUFBZCxtQkFBYztVQUFkLGVBQWM7RUFHaEIsY3ZCRW1CO0V1QkRuQixvQnZCVGtCLEV1QnNDakI7RUEzQkQ7SUFDRSxpQkFBZ0IsRUFDakI7O0FBMkJEO0VBbkJFLHVCQUFjO01BQWQsbUJBQWM7VUFBZCxlQUFjO0VBR2hCLGN2QmRtQixFdUJnQ2xCO0VBaEJEO0lBQ0UsaUJBQWdCLEVBQ2pCOztBQWtCRDtFQUNFLGdCQUFlLEVBQ2hCOztBQ2hDRDtFQVhBLG1CQUFrQjtFQUNsQixleEJKaUI7RXdCS2pCLGdCQUFlLEVBY2Q7RS9Ca3ZDRDtJUTVvQ0UsV0FBVSxFQUNYO0V1Qm5IRDtJQUVFLGV4QlJXLEV3QlNaO0VBSUQ7SUF2QkEsZXhCK1FjO0l3QjlRZCxZeEJrUmE7SXdCalJiLGlCeEJxUlk7SXdCcFJaLGV4QnVSd0IsRXdCaFF3QjtFQUhoRDtJQXZCQSxZeEJnUlk7SXdCL1FaLFl4Qm1SYztJd0JsUmQsZXhCc1JXO0l3QnJSWCxleEJ1UndCLEV3Qi9QNkI7O0FOaVFyRDtFQS9TQSxXQUFVO0VBQ1YsVUFBUztFQUNULGlCQUFnQjtFQUNoQixtQkFBa0I7RUFHaEIsc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYix3QkFBZTtNQUFmLG9CQUFlO1VBQWYsZ0JBQWUsRUE0WmhCO0V6Qm81QkQ7SVFscUNFLFdBQVUsRUFDWDtFaUJ4SUQ7O0lBRUUsZUFBYztJQUNkLHNCQUFxQjtJQUNyQixlQUFjO0lBQ2QscUJsQnNCNkIsRWtCckI5QjtFQUdEOzs7O0lBSUUsaUJBQWdCLEVBQ2pCO0VBRUQ7SUFDRSxzQkFBcUIsRUFDdEI7RUErUUQ7SUFwTEksd0JBQWU7UUFBZixvQkFBZTtZQUFmLGdCQUFlO0lBQ2YsNEJBQW1CO1FBQW5CLHdCQUFtQjtZQUFuQixvQkFBbUIsRUF5THBCO0VBTkg7SUF6S0ksMEJBQWlCO1FBQWpCLHNCQUFpQjtZQUFqQixrQkFBaUI7SUFDakIsK0JBQXNCO1FBQXRCLDJCQUFzQjtZQUF0Qix1QkFBc0IsRUFtTHZCO0VBcFJEO0lBQ0Usc0JBQWE7UUFBYixrQkFBYTtZQUFiLGNBQWEsRUFDZDtFQXVRSDtJQXRKRSw0QkFBbUI7UUFBbkIsdUJBQW1CO1lBQW5CLG9CQUFtQixFQTJLbEI7SUF4S0g7TUFDRSxrQmxCeVFxQixFa0J4UXRCO0lBRUQ7TUFDRSxXQUFVLEVBQ1g7RXRCakRHO0lzQjhMSjtNQXBMSSx3QkFBZTtVQUFmLG9CQUFlO2NBQWYsZ0JBQWU7TUFDZiw0QkFBbUI7VUFBbkIsd0JBQW1CO2NBQW5CLG9CQUFtQixFQThNbEI7SUEzQkw7TUF6S0ksMEJBQWlCO1VBQWpCLHNCQUFpQjtjQUFqQixrQkFBaUI7TUFDakIsK0JBQXNCO1VBQXRCLDJCQUFzQjtjQUF0Qix1QkFBc0IsRUF1TXJCO0lBeFNIO01BQ0Usc0JBQWE7VUFBYixrQkFBYTtjQUFiLGNBQWEsRUFDZDtJQUZEO01BQ0Usc0JBQWE7VUFBYixrQkFBYTtjQUFiLGNBQWEsRUFDZCxFQUFBO0V0QnlFQztJc0I4TEo7TUFwTEksd0JBQWU7VUFBZixvQkFBZTtjQUFmLGdCQUFlO01BQ2YsNEJBQW1CO1VBQW5CLHdCQUFtQjtjQUFuQixvQkFBbUIsRUE4TWxCO0lBM0JMO01BektJLDBCQUFpQjtVQUFqQixzQkFBaUI7Y0FBakIsa0JBQWlCO01BQ2pCLCtCQUFzQjtVQUF0QiwyQkFBc0I7Y0FBdEIsdUJBQXNCLEVBdU1yQjtJQXhTSDtNQUNFLHNCQUFhO1VBQWIsa0JBQWE7Y0FBYixjQUFhLEVBQ2Q7SUFGRDtNQUNFLHNCQUFhO1VBQWIsa0JBQWE7Y0FBYixjQUFhLEVBQ2QsRUFBQTtFQXVRSDtJQTlIRSxnQkFBaUM7SUFDakMsa0JsQnhJNEIsRWtCa1QzQjtFQWxLRDtJQUNFLHNCQUFhO0lBQWIscUJBQWE7SUFBYixjQUFhLEVBQ2Q7RUFGRDtJQUNFLHNCQUFhO0lBQWIscUJBQWE7SUFBYixjQUFhLEVBQ2Q7RUFrQkQ7SUFFSSw4QkFBcUI7UUFBckIsMEJBQXFCO1lBQXJCLHNCQUFxQixFQVl4QjtJQVRDOzs7TUFHRSxzQmxCbU5tQixFa0I5TXBCO0VBSUg7SUFFSSw4QkFBcUI7UUFBckIsMEJBQXFCO1lBQXJCLHNCQUFxQixFQVl4QjtJQVRDOzs7TUFHRSxxQmxCa01tQixFa0I3THBCO0VBSUg7SUFFSSxpQ0FBd0I7UUFBeEIsNkJBQXdCO1lBQXhCLHlCQUF3QixFQW1CM0I7SUFiQzs7O01BUUksNEJBQW1CO1VBQW5CLDZCQUFtQjtrQkFBbkIsNEJBQW1CO2NBQW5CLG9CQUFtQjtNQUNuQix1QmxCd0tpQjtNa0J2S2pCLG1CQUFrQixFQUVyQjtFQUlIO0lBRUksaUNBQXdCO1FBQXhCLDZCQUF3QjtZQUF4Qix5QkFBd0IsRUFtQjNCO0lBYkM7OztNQVFJLDRCQUFtQjtVQUFuQiw2QkFBbUI7a0JBQW5CLDRCQUFtQjtjQUFuQixvQkFBbUI7TUFDbkIsdUJsQmdKaUI7TWtCL0lqQixtQkFBa0IsRUFFckI7RUFtQkw7SUFMQSxvQmxCdFJnQjtJa0J1UmhCLGVsQjdRYSxFa0JzV1Y7RUFyRkg7SUFMQSxvQmxCdFJnQjtJa0J1UmhCLGVsQjdRYSxFa0I0V1I7RUEzRkw7SUF0UEksb0NBQTJCO1FBQTNCLHFCQUEyQjtZQUEzQiw0QkFBMkIsRUF1VjVCO0VBL1VDO0lBQ0Usc0JBQWE7SUFBYixxQkFBYTtJQUFiLGNBQWE7SUFDYixrQ0FBeUI7UUFBekIsbUJBQXlCO1lBQXpCLDBCQUF5QixFQUsxQjtJQUhDO01BQ0Usb0NBQTJCO1VBQTNCLHFCQUEyQjtjQUEzQiw0QkFBMkIsRUFDNUI7RUFHSDtJQUNFLGVBQWM7SUFDZCxrQm5CTm9ELEVtQldyRDtJQUhDO01BQ0Usa0JuQlRrRCxFbUJVbkQ7RUErTlA7SUFsSUUsbUJsQm5JNEI7SWtCb0k1QixlQUFnQyxFQTBPN0I7RUFyVEQ7SUFDRSxzQkFBYTtJQUFiLHFCQUFhO0lBQWIsY0FBYTtJQUNiLGdDQUF1QjtRQUF2QixzQkFBdUI7WUFBdkIsd0JBQXVCLEVBS3hCO0lBSEM7TUFDRSxvQ0FBMkI7VUFBM0IscUJBQTJCO2NBQTNCLDRCQUEyQixFQUM1QjtFQXNNUDtJQWJBLHFCbEJ6UCtCO0lrQjJQL0Isa0JBQWlCO0lBQ2pCLGVBQWM7SUFDZCxlQUFjLEVBNEhYOztBQUlEO0VBR00sZ0NBQXVCO01BQXZCLHNCQUF1QjtVQUF2Qix3QkFBdUIsRUFJMUI7RUExVUQ7SUFDRSxzQkFBYTtJQUFiLHFCQUFhO0lBQWIsY0FBYTtJQUNiLGdDQUF1QjtRQUF2QixzQkFBdUI7WUFBdkIsd0JBQXVCLEVBS3hCO0lBSEM7TUFDRSxvQ0FBMkI7VUFBM0IscUJBQTJCO2NBQTNCLDRCQUEyQixFQUM1Qjs7QUF5VVA7RUFDRSxjQUFhLEVBQ2Q7O0FPeGVEO0V4QndHQSxtQkFBa0I7RUFDbEIsc0JBQXFCO0VBQ3JCLHVCQUFzQjtFQUN0QixZQXpCWTtFQTBCWixhQXpCYTtFQTBCYixnQkFBZSxFd0IzR2Q7RXhCOEdEO0lBQ0UsbUJBQWtCO0lBQ2xCLE9BQU07SUFDTixRQUFPO0lBRVAsZUFBYztJQUNkLFlBQVc7SUFDWCxZQW5DVTtJQXFDVixvQkR2Q1c7SUN3Q1gsOENEeENXO0lDMENYLFlBQVcsRUFDWjtFQVVDO0lBQ0Usb0JEekRlO0lDMERmLDhDRDFEZSxFQzJEaEI7O0F3QnRJSDtFeEJvR0EsbUJBQWtCO0VBQ2xCLHNCQUFxQjtFQUNyQix1QkFBc0I7RUFDdEIsWUF6Qlk7RUEwQlosYUF6QmE7RUEwQmIsZ0JBQWUsRXdCdkdkO0V4QjBHRDtJQUNFLG1CQUFrQjtJQUNsQixPQUFNO0lBQ04sUUFBTztJQUVQLGVBQWM7SUFDZCxZQUFXO0lBQ1gsWUFuQ1U7SUFxQ1Ysb0JEeENXO0lDeUNYLDhDRHpDVztJQzJDWCxZQUFXLEVBQ1o7RUFVQztJQUNFLG9CRHhEYTtJQ3lEYiw4Q0R6RGEsRUMwRGQ7O0F5QmxFSDtFQUNFLG1CQUFrQjtFQUNsQixpQkFBZ0IsRUFTakI7RUFYRDtJQUtJLGVBQWMsRUFDZjtFQU5IO0lBU0ksd0JBQXVCLEVBQ3hCOztBQUlIO0VBRUkscUIxQksyQjtFMEJKM0Isb0IxQlBTLEUwQlFWOztBQUpIO0VBUUksbUJBQWtCO0VBQ2xCLE9BQU07RUFDTixXQUFxQjtFQUNyQixZQUFXO0VBRVgsWUFBVztFQUNYLG9CMUJsQlM7RTBCbUJULDJDMUJtUXVDO0UwQm5RdkMsbUMxQm1RdUM7RTBCblF2QyxtRTFCbVF1QyxFMEJuUHhDO0VBL0JIO0lBa0JNLFdBQVU7SUFDVixlQUFjO0lBQ2QscUNBQXFFO1FBQXJFLGlDQUFxRTtZQUFyRSw2QkFBcUUsRUFDdEU7RUFyQkw7SUF3Qk0sb0NBQXFFO1FBQXJFLGdDQUFxRTtZQUFyRSw0QkFBcUUsRUFDdEU7RUF6Qkw7SUE2Qk0scUIxQnRCeUIsRTBCdUIxQjs7QUE5Qkw7RVIrSUUsZ0JBQWlDO0VBQ2pDLGVsQnFJdUIsRTBCbFB0Qjs7QUFuQ0g7RUFzQ0ksaUJBQWdCLEVBQ2pCOztBQWpGSDtFQUNFLG1CQUFrQixFQVNuQjtFQVBDO0l6Qk5GLGVBQWM7SUFDZCxTQUFRO0lBQ1IsVUFBUztJQUVULGtCRG1Vd0I7SUNqVXhCLFlBQVc7SUFhVCxzQkFBcUI7SUFDckIseUJBQXdCO0lBQ3hCLDBERFVjO0kwQnZCWixtQkFBa0I7SUFDbEIsU0FBUTtJQUNSLGlCQUFzQztJQUN0QyxZQUFzQixFQUN2Qjs7QUFHSDtFekJmQSxlQUFjO0VBQ2QsU0FBUTtFQUNSLFVBQVM7RUFFVCxrQkR5VjJCO0VDdlYzQixZQUFXO0VBYVQsc0JBQXFCO0VBQ3JCLHlCQUF3QjtFQUN4QiwwRERVYztFMEJkZCxZQUFXO0VBQ1gsV0FBVSxFQUNYOztBQUVEO0V6QnJCQSxlQUFjO0VBQ2QsU0FBUTtFQUNSLFVBQVM7RUFFVCxrQkR5VjJCO0VDdlYzQixZQUFXO0VBa0JULHFCQUFvQjtFQUNwQiwwQkFBeUI7RUFDekIsMERBQWlFO0V5QkhqRSxZQUFXO0VBQ1gsV0FBVSxFQUNYOztBQW9CRDtFekI3Q0EsZUFBYztFQUNkLFNBQVE7RUFDUixVQUFTO0VBRVQsa0JEbVV3QjtFQ2pVeEIsWUFBVztFQWtCVCxxQkFBb0I7RUFDcEIsMEJBQXlCO0VBQ3pCLDBEQUFpRTtFeUJpRTdELHFCQUE0QztFQUM1QyxzQkFBcUI7RUFDckIsdUJBQXNCO0VBQ3RCLHNCQUF1QyxFQUN4Qzs7QUNuRUw7RUE1QkEsbUJBQWtCO0VBQ2xCLFlBQVc7RUFFWCxjQUFhO0VBRWIsYTNCMlVvQjtFMkIxVXBCLGMzQnNVcUI7RTJCcFVyQixtQkFBa0I7RUFDbEIsMEIzQjZCbUI7RTJCNUJuQixpQjNCeUNlO0UyQnhDZiwwQjNCOEJhO0UyQjVCYixnQjNCa1V1QixFMkJqVHRCO0VBYkQ7SUFDRSxlQUFjLEVBQ2Y7RUFFRDtJQUNFLGVBQWM7SUFDZCxvQkFBbUIsRUFDcEI7O0FBU0M7RUFFSSxhM0JnVEssRTJCL1NOOztBQUhIO0VBRUksYTNCaVRNLEUyQmhUUDs7QUFISDtFQUVJLGEzQmtUTSxFMkJqVFA7O0FDTUQ7RUFDRSxVQUFTO0VBQ1QsU0FBUTtFQUNSLFdBQVUsRUFDWDs7QUFJRDtFQUNFLFVBQVM7RUFDVCxZQUFXO0VBQ1gsUUFBTyxFQUNSOztBQUlEO0VBQ0UsbUJBQWtCO0VBQ2xCLHNCNUJrUzJCLEU0QmpTNUI7O0FBRUQ7RTNCL0RKLGVBQWM7RUFDZCxTQUFRO0VBQ1IsVUFBUztFQUVULGtCRHlWMkI7RUN2VjNCLFlBQVc7RUFHVCx1QkFBc0I7RUFDdEIsd0JBQXVCO0VBQ3ZCLDhDQUFxRDtFMkJzRGpELFdBQXFCO0VBQ3JCLFdBQXFCO0VBQ3JCLGlCQUErQyxFQUNoRDs7QW5Dd2pEUDtFUTU5Q0ksV0FBVSxFQUNYOztBMkIxREQ7RUFVSSxxQjVCN0QyQixFNEI4RDVCOztBQVhIO0VBZUksd0I1QmlQNEM7RTRCaFA1QyxlNUJ4RlksRTRCeUZiOztBQUVEO0VBQ0UsY0FBYSxFQUNkOztBQXJCSDtFVnFGRSxnQkFBaUM7RUFDakMsZWxCc0swQixFNEJuT3pCOztBQXZEQztFQUNFLE9BQU0sRUFDUDs7QUFHQztFQUNFLE9BQU07RUFDTixZQUFXO0VBQ1gsV0FBVSxFQUNYOztBQUlEO0VBQ0UsWUFBVztFQUNYLFdBQVUsRUFDWDs7QUFqRVA7RUFDRSxZQUFzQixFQUN2Qjs7QUFFRDtFM0I1QkEsZUFBYztFQUNkLFNBQVE7RUFDUixVQUFTO0VBRVQsa0JEeVYyQjtFQ3ZWM0IsWUFBVztFQWtCVCxxQkFBb0I7RUFDcEIsMEJBQXlCO0VBQ3pCLDBEQUFpRTtFMkJJakUsWUFBVztFQUNYLFVBQVMsRUFDVjs7QUFFRDtFM0JsQ0EsZUFBYztFQUNkLFNBQVE7RUFDUixVQUFTO0VBRVQsa0JEeVYyQjtFQ3ZWM0IsWUFBVztFQWFULHNCQUFxQjtFQUNyQix5QkFBd0I7RUFDeEIsMEREVWMsRTRCS2Y7O0FoQ3dGRztFZ0NsRkE7SUFDRSxVQUFTO0lBQ1QsU0FBUTtJQUNSLFdBQVUsRUFDWDtFQUlEO0lBQ0UsVUFBUztJQUNULFlBQVc7SUFDWCxRQUFPLEVBQ1I7RUFJRDtJQUNFLG1CQUFrQjtJQUNsQixzQjVCa1MyQixFNEJqUzVCO0VBRUQ7STNCL0RKLGVBQWM7SUFDZCxTQUFRO0lBQ1IsVUFBUztJQUVULGtCRHlWMkI7SUN2VjNCLFlBQVc7SUFHVCx1QkFBc0I7SUFDdEIsd0JBQXVCO0lBQ3ZCLDhDQUFxRDtJMkJzRGpELFdBQXFCO0lBQ3JCLFdBQXFCO0lBQ3JCLGlCQUErQyxFQUNoRDtFQUtEO0lBQ0UsT0FBTSxFQUNQO0VBR0M7SUFDRSxPQUFNO0lBQ04sWUFBVztJQUNYLFdBQVUsRUFDWDtFQUlEO0lBQ0UsWUFBVztJQUNYLFdBQVUsRUFDWDtFQWpFUDtJQUNFLFlBQXNCLEVBQ3ZCO0VBRUQ7STNCNUJBLGVBQWM7SUFDZCxTQUFRO0lBQ1IsVUFBUztJQUVULGtCRHlWMkI7SUN2VjNCLFlBQVc7SUFrQlQscUJBQW9CO0lBQ3BCLDBCQUF5QjtJQUN6QiwwREFBaUU7STJCSWpFLFlBQVc7SUFDWCxVQUFTLEVBQ1Y7RUFFRDtJM0JsQ0EsZUFBYztJQUNkLFNBQVE7SUFDUixVQUFTO0lBRVQsa0JEeVYyQjtJQ3ZWM0IsWUFBVztJQWFULHNCQUFxQjtJQUNyQix5QkFBd0I7SUFDeEIsMEREVWMsRTRCS2YsRUFBQTs7QWhDd0ZHO0VnQ2xGQTtJQUNFLFVBQVM7SUFDVCxTQUFRO0lBQ1IsV0FBVSxFQUNYO0VBSUQ7SUFDRSxVQUFTO0lBQ1QsWUFBVztJQUNYLFFBQU8sRUFDUjtFQUlEO0lBQ0UsbUJBQWtCO0lBQ2xCLHNCNUJrUzJCLEU0QmpTNUI7RUFFRDtJM0IvREosZUFBYztJQUNkLFNBQVE7SUFDUixVQUFTO0lBRVQsa0JEeVYyQjtJQ3ZWM0IsWUFBVztJQUdULHVCQUFzQjtJQUN0Qix3QkFBdUI7SUFDdkIsOENBQXFEO0kyQnNEakQsV0FBcUI7SUFDckIsV0FBcUI7SUFDckIsaUJBQStDLEVBQ2hEO0VBS0Q7SUFDRSxPQUFNLEVBQ1A7RUFHQztJQUNFLE9BQU07SUFDTixZQUFXO0lBQ1gsV0FBVSxFQUNYO0VBSUQ7SUFDRSxZQUFXO0lBQ1gsV0FBVSxFQUNYO0VBakVQO0lBQ0UsWUFBc0IsRUFDdkI7RUFFRDtJM0I1QkEsZUFBYztJQUNkLFNBQVE7SUFDUixVQUFTO0lBRVQsa0JEeVYyQjtJQ3ZWM0IsWUFBVztJQWtCVCxxQkFBb0I7SUFDcEIsMEJBQXlCO0lBQ3pCLDBEQUFpRTtJMkJJakUsWUFBVztJQUNYLFVBQVMsRUFDVjtFQUVEO0kzQmxDQSxlQUFjO0lBQ2QsU0FBUTtJQUNSLFVBQVM7SUFFVCxrQkR5VjJCO0lDdlYzQixZQUFXO0lBYVQsc0JBQXFCO0lBQ3JCLHlCQUF3QjtJQUN4QiwwRERVYyxFNEJLZixFQUFBOztBQW1FRDtFQStDTSxVQUFTO0VBQ1QsU0FBUTtFQUNSLFdBQVUsRUFDWDs7QUFJTDtFQUNFLGFBQVksRUFLYjtFQU5EO0lBSUksYUFBWSxFQUNiOztBQUdIO0VBQ0UsbUJBQWtCLEVBOEJuQjtFQS9CRDtJQUlJLG1CQUFrQjtJQUNsQixTQUFRO0lBQ1IsV0FBcUI7SUFDckIsV0FBcUI7SUFDckIsaUJBQXlDLEVBQzFDO0VBVEg7SUFhSSxVQUFTO0lBS1AsV0FBVSxFQUViO0VBcEJIO0lBdUJJLFlBQVc7SUFDWCxXQUFVLEVBQ1g7RUF6Qkg7SUE0QkksWUFBVztJQUNYLFdBQVUsRUFDWDs7QUFHSDtFQUNFLG1CQUFrQjtFQUNsQixPQUFNO0VBQ04sV0FBcUI7RUFDckIsV0FBVTtFQUVWLGNBQWE7RUFDYixpQjVCa0owQjtFNEJoSjFCLDBCNUJ6S2lCO0U0QjBLakIsb0I1QnZLVyxFNEJrTVo7RUF6QkM7SUFDRSxxQjVCL0oyQixFNEJnSzVCO0VBNUxIO0lBQ0UsWUFBc0IsRUFDdkI7RUFFRDtJM0I1QkEsZUFBYztJQUNkLFNBQVE7SUFDUixVQUFTO0lBRVQsa0JEeVYyQjtJQ3ZWM0IsWUFBVztJQWtCVCxxQkFBb0I7SUFDcEIsMEJBQXlCO0lBQ3pCLDBEQUFpRTtJMkJJakUsWUFBVztJQUNYLFVBQVMsRUFDVjtFQUVEO0kzQmxDQSxlQUFjO0lBQ2QsU0FBUTtJQUNSLFVBQVM7SUFFVCxrQkR5VjJCO0lDdlYzQixZQUFXO0lBYVQsc0JBQXFCO0lBQ3JCLHlCQUF3QjtJQUN4QiwwRERVYyxFNEJLZjtFQWtLRDtJQXdCTSxpQjVCdUlpQixFNEJ0SWxCO0VBekJMO0lBNkJJLFlBQVcsRUFDWjtFQTlCSDtJQW1DSSxlQUFjLEVBQ2Y7O0FDeE9IOztFQW5CQSxtQkFBa0I7RUFDbEIsVUFBUztFQUNULG9CMUI2RHVEO0UwQjVEdkQsb0JDMENzQjtFRHpDdEIsaUJBQWdCLEVBMEJmO0VBeEJEOzs7Ozs7OztJQUlFLG1CQUFrQjtJQUNsQixPQUFNO0lBQ04sUUFBa0I7SUFDbEIsWUFBVztJQUNYLGFBQVksRUFDYjtFQUlEOztJQVFNLHVCQ2tCZ0IsRURqQmpCOztBRUhMO0VBWkEsc0JBQXFCO0VBQ3JCLDJCL0JvYStCO0UrQmxhL0IsaUIvQm9EZTtFK0JsRGYsa0IvQitac0I7RStCOVp0QixlQUFjO0VBQ2Qsb0JBQW1CO0VBQ25CLGdCQUFlO0VBT2Isb0IvQm9CYztFK0JuQmQsZS9CNkJXLEUrQnJCWjtFQVpEO0lBUU0sb0IvQmVVO0krQmRWLGUvQndCTyxFK0J2QlI7RUFWTDtJQVFNLG9CL0JnQlk7SStCZlosZS9Cd0JPLEUrQnZCUjtFQVZMO0lBUU0sb0IvQmlCVTtJK0JoQlYsZS9CdUJPLEUrQnRCUjtFQVZMO0lBUU0sb0IvQmtCVTtJK0JqQlYsZS9CdUJPLEUrQnRCUjtFQVZMO0lBUU0sb0IvQm1CUTtJK0JsQlIsZS9Cd0JPLEUrQnZCUjs7QUM4Q0w7RUFwRkEsc0JBQWlDO0VBQWpDLHFCQUFpQztFQUFqQyxjQUFpQztFQUNqQyxvQmhDaUVrQjtFZ0M5RGhCLDBCQUFpQjtNQUFqQixzQkFBaUI7VUFBakIsa0JBQWlCLEVBa0ZsQjtFQS9FRDtJQUNFLGdCQUFlLEVBQ2hCO0VwQzRJRztJb0N6SUY7TUFFSSx3QkFBZTtVQUFmLG9CQUFlO2NBQWYsZ0JBQWUsRUFFbEIsRUFBQTs7QUF3RUg7RUFoRUUsdUJBQWM7TUFBZCxtQkFBYztVQUFkLGVBQWMsRUFrRWY7RUEzREQ7SUFDRSxvQmhDbUNpQixFZ0NsQ2xCO0VBRUQ7SUFDRSxtQmhDK0JpQixFZ0M5QmxCO0VBRUQ7SUFDRSxpQkFBZ0IsRUFDakI7RXBDNEdHO0lvQzFHSjtNQXdCQSxXQUFVO01BQ1YscUJoQ0RtQjtNZ0NJakIseUJBQWdCO1VBQWhCLDhCQUFnQjtjQUFoQixpQkFBZ0I7TUFDaEIsZ0JBQWUsRUF6QmhCO01BSkQ7UUFvQ0UsWWhDOFdrQyxFZ0M3V25DLEVBQUE7RUE5QkM7SUFDRSxzQkFBYTtRQUFiLGtCQUFhO1lBQWIsY0FBYSxFQUNkOztBQ2lCSDtFQUNFLGlCQUFnQixFQUNqQjs7QUFHRDtFQUNFLG1CQUFrQjtFQUNsQixPQUFNO0VBQ04sUUFBTztFQUNQLFlqQ3VaeUI7RWlDclp6QixZQUFXO0VBQ1gsYUFBWTtFQUVaLG9EakN1WjhCO0VpQ3JaOUIsc0NqQ3hCVztFaUMwQlgsV0FBVTtFQUNWLG1CQUFrQjtFQUVsQixpQkFBZ0IsRUFrQmpCO0VBbENEO0lBbUJJLFdBQVU7SUFDVixvQkFBbUIsRUFDcEI7RUFyQkg7SUF3QkksZ0JBQWUsRUFDaEI7RUF6Qkg7SUE0QkksbUJBQWtCLEVBQ25CO0VBN0JIO0lBZ0NJLGdCQUFlLEVBQ2hCOztBQXdUSDtFQWxUQSxtQkFBa0I7RUFDbEIsaUJBQWdCLEVBbVRmOztBQUdEO0VBMVNFLGdCQUFlO0VBT2pCLFlqQ2lXd0I7RWlDMVZ4Qix3Q2pDOFZnQztFaUM5VmhDLGdDakM4VmdDO0VpQzlWaEMsNkRqQzhWZ0M7RWlDN1ZoQyxvQ0FBMkI7VUFBM0IsNEJBQTJCO0VBRTNCLG9CQ3JLc0IsRURzY3JCO0V4QzRqREQ7SVF4ekRFLFdBQVUsRUFDWDtFZ0M3Q0Q7SUFDRSxZakM2VnNCLEVpQzVWdkI7RUFRRDtJQUNFLG1CQUFrQixFQUNuQjtFQUdEO0lBQ0UsWWpDK1V5QixFaUMxVTFCO0lBSEM7TUFDRSwyQ2pDL0ZTLEVpQ2dHVjtFQUlIO0lBQ0UsbUNBQTBCO1FBQTFCLCtCQUEwQjtZQUExQiwyQkFBMEIsRUFDM0I7O0FBaVJEO0VBbFRFLG1CQUFrQjtFQUlwQixZakNpV3dCO0VpQzFWeEIsd0NqQzhWZ0M7RWlDOVZoQyxnQ2pDOFZnQztFaUM5VmhDLDZEakM4VmdDO0VpQzdWaEMsb0NBQTJCO1VBQTNCLDRCQUEyQjtFQUUzQixvQkNyS3NCLEVEMmNyQjtFeEMwa0REO0lRMzBERSxXQUFVLEVBQ1g7RWdDN0NEO0lBQ0UsWWpDNlZzQixFaUM1VnZCO0VBUUQ7SUFDRSxtQkFBa0IsRUFDbkI7RUFHRDtJQUNFLFlqQytVeUIsRWlDMVUxQjtJQUhDO01BQ0UsMkNqQy9GUyxFaUNnR1Y7RUFJSDtJQUNFLG1DQUEwQjtRQUExQiwrQkFBMEI7WUFBMUIsMkJBQTBCLEVBQzNCOztBQXNSRDtFQTVRRSxPQUFNO0VBQ04sUUFBTztFQUNQLGFBQVk7RUFDWixpQkFBZ0I7RUFJWixhakN5U007RWlDeFNOLHNDQUE2QjtNQUE3QixrQ0FBNkI7VUFBN0IsOEJBQTZCLEVBb1FxQztFQS9QOUQ7SUFJRixzQ0FBNkI7UUFBN0Isa0NBQTZCO1lBQTdCLDhCQUE2QixFQU1sQztJQVZPO01BUUosbUNBQTBCO1VBQTFCLCtCQUEwQjtjQUExQiwyQkFBMEIsRUFDM0I7RUFJSztJQUlBLHFDQUE0QjtRQUE1QixpQ0FBNEI7WUFBNUIsNkJBQTRCLEVBR2pDO0VBb0hIO0loQzdUQSw0RER3RFcsRWlDa1JWOztBQTJHSDtFQXhPRSxPQUFNO0VBQ04sU0FBUTtFQUNSLGFBQVk7RUFDWixpQkFBZ0I7RUFJWixhakNvUU07RWlDblFOLHFDQUE0QjtNQUE1QixpQ0FBNEI7VUFBNUIsNkJBQTRCLEVBZ09zQztFQTNOOUQ7SUFJRixxQ0FBNEI7UUFBNUIsaUNBQTRCO1lBQTVCLDZCQUE0QixFQU1qQztJQVZPO01BUUosbUNBQTBCO1VBQTFCLCtCQUEwQjtjQUExQiwyQkFBMEIsRUFDM0I7RUFJSztJQUlBLHNDQUE2QjtRQUE3QixrQ0FBNkI7WUFBN0IsOEJBQTZCLEVBR2xDO0VBK0VIO0loQy9UQSwyREQwRFcsRWlDa1JWOztBQTRHSDtFQXBNRSxPQUFNO0VBQ04sUUFBTztFQUNQLFlBQVc7RUFDWCxpQkFBZ0I7RUFJWixjakNrT007RWlDak9OLHNDQUE2QjtNQUE3QixrQ0FBNkI7VUFBN0IsOEJBQTZCLEVBNExtQztFQXZMNUQ7SUFHRixzQ0FBNkI7UUFBN0Isa0NBQTZCO1lBQTdCLDhCQUE2QixFQU1sQztJQVRPO01BT0osbUNBQTBCO1VBQTFCLCtCQUEwQjtjQUExQiwyQkFBMEIsRUFDM0I7RUFJSztJQUlBLHFDQUE0QjtRQUE1QixpQ0FBNEI7WUFBNUIsNkJBQTRCLEVBR2pDO0VBMkNIO0loQzNUQSw0RERzRFcsRWlDa1JWOztBQTZHSDtFQWpLRSxVQUFTO0VBQ1QsUUFBTztFQUNQLFlBQVc7RUFDWCxpQkFBZ0I7RUFJWixjakM4TE07RWlDN0xOLHFDQUE0QjtNQUE1QixpQ0FBNEI7VUFBNUIsNkJBQTRCLEVBeUpvQztFQXBKNUQ7SUFHRixxQ0FBNEI7UUFBNUIsaUNBQTRCO1lBQTVCLDZCQUE0QixFQU1qQztJQVRPO01BT0osbUNBQTBCO1VBQTFCLCtCQUEwQjtjQUExQiwyQkFBMEIsRUFDM0I7RUFJSztJQUlBLHNDQUE2QjtRQUE3QixrQ0FBNkI7WUFBN0IsOEJBQTZCLEVBR2xDO0VBT0g7SWhDalVBLDJERDREVyxFaUNrUlY7O0FBK0dIO0VBeEdBLHdCQUFlO01BQWYsb0JBQWU7VUFBZixnQkFBZTtFQUNmLHdDakNvSmdDO0VpQ3BKaEMsZ0NqQ29KZ0M7RWlDcEpoQyw2RGpDb0pnQztFaUNuSmhDLG9DQUEyQjtVQUEzQiw0QkFBMkIsRUF3RzFCO0VBckdEO0lBQ0UsbUNBQTBCO1FBQTFCLCtCQUEwQjtZQUExQiwyQkFBMEIsRUFDM0I7RUFHRDtJQUNFLG1DQUEwQjtRQUExQiwrQkFBMEI7WUFBMUIsMkJBQTBCLEVBQzNCOztBckNqTkc7RXFDcVRFO0lBMUZOLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZTtJQUNmLFlqQzRIMEI7SWlDM0gxQixpQkFBZ0I7SUFDaEIsb0JBQW1CLEVBeUZaO0lBbkZQO01BQ0UsY0FBYSxFQUNkO0lBR0Q7TUFDRSx3QkFBZTtVQUFmLG9CQUFlO2NBQWYsZ0JBQWUsRUFDaEI7SUFFTztNQUNOLG1CakM4RlUsRWlDN0ZYO0lBR0Q7TUFDRSxtQmpDeUZVLEVpQ3hGWDtFQXFFSztJQTlGTix3QkFBZTtRQUFmLG9CQUFlO1lBQWYsZ0JBQWU7SUFDZixZakM0SDBCO0lpQzNIMUIsaUJBQWdCO0lBQ2hCLG9CQUFtQixFQTZGWjtJQXZGUDtNQUNFLGNBQWEsRUFDZDtJQUdEO01BQ0Usd0JBQWU7VUFBZixvQkFBZTtjQUFmLGdCQUFlLEVBQ2hCO0lBRU87TUFDTixvQmpDOEZVLEVpQzdGWDtJQUdEO01BQ0Usb0JqQ3lGVSxFaUN4Rlg7RUF5RUs7SUFsR04sd0JBQWU7UUFBZixvQkFBZTtZQUFmLGdCQUFlO0lBQ2YsWWpDNEgwQjtJaUMzSDFCLGlCQUFnQjtJQUNoQixvQkFBbUIsRUFpR1o7SUEzRlA7TUFDRSxjQUFhLEVBQ2Q7SUFHRDtNQUNFLHdCQUFlO1VBQWYsb0JBQWU7Y0FBZixnQkFBZSxFQUNoQjtJQUVPO01BQ04sa0JqQzhGVSxFaUM3Rlg7SUFHRDtNQUNFLGtCakN5RlUsRWlDeEZYO0VBNkVLO0lBdEdOLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZTtJQUNmLFlqQzRIMEI7SWlDM0gxQixpQkFBZ0I7SUFDaEIsb0JBQW1CLEVBcUdaO0lBL0ZQO01BQ0UsY0FBYSxFQUNkO0lBR0Q7TUFDRSx3QkFBZTtVQUFmLG9CQUFlO2NBQWYsZ0JBQWUsRUFDaEI7SUFFTztNQUNOLHFCakM4RlUsRWlDN0ZYO0lBR0Q7TUFDRSxxQmpDeUZVLEVpQ3hGWCxFQUFBOztBckNwUEc7RXFDcVRFO0lBMUZOLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZTtJQUNmLFlqQzRIMEI7SWlDM0gxQixpQkFBZ0I7SUFDaEIsb0JBQW1CLEVBeUZaO0lBbkZQO01BQ0UsY0FBYSxFQUNkO0lBR0Q7TUFDRSx3QkFBZTtVQUFmLG9CQUFlO2NBQWYsZ0JBQWUsRUFDaEI7SUFFTztNQUNOLG1CakM4RlUsRWlDN0ZYO0lBR0Q7TUFDRSxtQmpDeUZVLEVpQ3hGWDtFQXFFSztJQTlGTix3QkFBZTtRQUFmLG9CQUFlO1lBQWYsZ0JBQWU7SUFDZixZakM0SDBCO0lpQzNIMUIsaUJBQWdCO0lBQ2hCLG9CQUFtQixFQTZGWjtJQXZGUDtNQUNFLGNBQWEsRUFDZDtJQUdEO01BQ0Usd0JBQWU7VUFBZixvQkFBZTtjQUFmLGdCQUFlLEVBQ2hCO0lBRU87TUFDTixvQmpDOEZVLEVpQzdGWDtJQUdEO01BQ0Usb0JqQ3lGVSxFaUN4Rlg7RUF5RUs7SUFsR04sd0JBQWU7UUFBZixvQkFBZTtZQUFmLGdCQUFlO0lBQ2YsWWpDNEgwQjtJaUMzSDFCLGlCQUFnQjtJQUNoQixvQkFBbUIsRUFpR1o7SUEzRlA7TUFDRSxjQUFhLEVBQ2Q7SUFHRDtNQUNFLHdCQUFlO1VBQWYsb0JBQWU7Y0FBZixnQkFBZSxFQUNoQjtJQUVPO01BQ04sa0JqQzhGVSxFaUM3Rlg7SUFHRDtNQUNFLGtCakN5RlUsRWlDeEZYO0VBNkVLO0lBdEdOLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZTtJQUNmLFlqQzRIMEI7SWlDM0gxQixpQkFBZ0I7SUFDaEIsb0JBQW1CLEVBcUdaO0lBL0ZQO01BQ0UsY0FBYSxFQUNkO0lBR0Q7TUFDRSx3QkFBZTtVQUFmLG9CQUFlO2NBQWYsZ0JBQWUsRUFDaEI7SUFFTztNQUNOLHFCakM4RlUsRWlDN0ZYO0lBR0Q7TUFDRSxxQmpDeUZVLEVpQ3hGWCxFQUFBOztBckNwUEc7RXFDNFVFO0lBbkZOLG9CQUFtQjtJQUNuQixhQUFZO0lBQ1osaUJBQWdCO0lBQ2hCLGlCQUFnQjtJQUNoQixZQUFXO0lBQ1gsa0JBQWlCO0lBQ2pCLGlCQUFnQixFQStFVDtJQTVFUDtNQUlFLGlCQUFnQjtNQUNoQix3QkFBZTtVQUFmLG9CQUFlO2NBQWYsZ0JBQWUsRUFDaEI7SUFFRDtNQUNFLGNBQWEsRUFDZCxFQUFBOztBckM1UUc7RXFDNFVFO0lBbkZOLG9CQUFtQjtJQUNuQixhQUFZO0lBQ1osaUJBQWdCO0lBQ2hCLGlCQUFnQjtJQUNoQixZQUFXO0lBQ1gsa0JBQWlCO0lBQ2pCLGlCQUFnQixFQStFVDtJQTVFUDtNQUlFLGlCQUFnQjtNQUNoQix3QkFBZTtVQUFmLG9CQUFlO2NBQWYsZ0JBQWUsRUFDaEI7SUFFRDtNQUNFLGNBQWEsRUFDZCxFQUFBOztBRXZSRDtFQXJHQSxtQkFBa0IsRUF1R2pCOztBQUVEO0VBcEdBLG1CQUFrQjtFQUNsQixVQUFTO0VBQ1QsVUFBUztFQUNULGlCQUFnQjtFQUNoQixpQkFBZ0IsRUFrR2Y7O0FBRUQ7RUEvRkEsWUFBVztFQUNYLG1CQUFrQixFQWdHakI7RUE3RkM7SUFDRSxPQUFNO0lBQ04sUUFBTyxFQUNSOztBQTRGSDtFQXZGQSxVQUFTLEVBeUZSOztBQUVEO0VBdEZBLFlBQVc7RUFDWCxnQkFBZTtFQUNmLFVBQVMsRUFzRlI7O0FBRUQ7RUFuRkEsbUJBQWtCO0VBQ2xCLFVBQVM7RUFDVCxZQUFXO0VBQ1gsaUJBQWdCO0VBQ2hCLGNuQythMEI7RW1DN2ExQix3Q25DaEJhO0VtQ2lCYixlbkNoQmEsRW1DOEZaOztBQUVEO0VsQ3NEQSxtQkFBa0I7RUFDbEIsU0FBUTtFQUNSLG9DQUEyQjtNQUEzQixnQ0FBMkI7VUFBM0IsNEJBQTJCO0VrQ2pJM0IsWW5Dd2F1QjtFbUN2YXZCLGNuQ3NhMEI7RW1DcmExQixlbkN6QmEsRW1Da0daO0UxQ3ltRUQ7SVFwbEVFLFdBQVUsRUFDWDtFa0M3RkQ7SUFHRSx3Q25DL0JXLEVtQ2dDWjs7QUFxRUQ7RUFoRUEsUUFBa0IsRUFtRWpCOztBQUVEO0VBaEVBLFdBQXFCO0VBQ3JCLFNBQW1CLEVBa0VsQjs7QUFFRDtFQTlEQSxtQkFBa0I7RUFDbEIsbUJuQ3dZOEI7RW1Ddlk5QixzQm5Dd1lpQztFbUN2WWpDLG1CQUFrQixFQTZEakI7RTFDNG1FRDtJUXJtRUUsV0FBVSxFQUNYO0VrQ25FRDtJQUNFLGNuQ2lZMEI7SW1DaFkxQixlbkNnWTBCO0ltQy9YMUIsZW5DZ1l3QjtJbUM5WHhCLG1CQUFrQjtJQUNsQiwwQm5DOURpQixFbUN1RWxCO0lBUEM7TUFDRSwwQm5DaEVhLEVtQ2lFZDtJQUVEO01BQ0UsMEJuQ3BFYSxFbUNxRWQ7O0FDV0g7RUFuRkEsZUFBZ0M7RUFDaEMsb0JwQ1NrQixFb0N1RmpCO0VuQ05EO0lBRUUsZUFBYztJQUNkLGFBQVk7SUFHVixzQkFBYTtRQUFiLDJCQUFhO1lBQWIsY0FBYTtJQUNiLGlCQUFRO1FBQVIsa0JBQVE7WUFBUixTQUFRLEVBRVg7RUFFRDtJQUNFLFlBQVcsRUFDWjtFbUNwR0Q7SUFDRSx3QmpDS3FEO0lpQ0pyRCxpQnBDU2E7SW9DUmIsb0JqQ0dxRDtJaUNHbkQsY0FBYSxFQWlCaEI7SUFmRztNQUVFLHNCQUFxQixFQUN0QjtJeENzRUQ7TXdDcEZKO1FBdUJNLHNCQUFxQixFQUcxQixFQUFBO0VBR0Q7O0lBRUUsZUFBYztJQUNkLDRCakMxQnFEO0lpQzJCckQsaUJwQ3RCYTtJb0N1QmIsZXBDbENXLEVvQ3VDWjtJQUhDOztNQUNFLG9CcEN4Q2MsRW9DeUNmO0VBeUNIO0lBL0JBLDRCakMxQ3VEO0lpQzJDdkQsb0JwQzFEZ0I7SW9DMkRoQixlcENqRGE7SW9Da0RiLGdCQUFlLEVBaUNaO0VBTEg7SUFwQkEsNEJqQ3JEdUQ7SWlDc0R2RCxlcEM5RG1CO0lvQytEbkIsb0JBQW1CLEVBMkJoQjtJQXpCSDtNQUNFLHdCQUF1QixFQUN4QjtFQWNEO0lBTkEsNEJqQ25FdUQ7SWlDb0V2RCxpQkFBZ0I7SUFDaEIsZXBDM0VhLEVvQzRGVjs7QUFJRDs7RUFFRSxzQkFBcUI7RUFDckIscUJBQXNDO0VBQ3RDLGlCQUFnQixFQUNqQjs7QUFFRDs7RUFFRSxzQkFBcUI7RUFDckIsb0JBQXFDO0VBQ3JDLGlCQUFnQixFQUNqQjs7QUNwSkg7RUFwQ0EsYXJDbWlCb0I7RXFDbGlCcEIsb0JyQ2lGa0I7RXFDaEZsQixpQnJDcUZlO0VxQ3BGZiwwQnJDdUVtQixFcUM1QmxCO0VBVkQ7SUFNUSwwQnJDeUJRLEVxQ3hCVDtFQVBQO0lBTVEsMEJyQzBCVSxFcUN6Qlg7RUFQUDtJQU1RLDBCckMyQlEsRXFDMUJUO0VBUFA7SUFNUSwwQnJDNEJRLEVxQzNCVDtFQVBQO0lBTVEsMEJyQzZCTSxFcUM1QlA7O0FBTVA7RUF6Q0EsbUJBQWtCO0VBQ2xCLGVBQWM7RUFDZCxVQUFTO0VBQ1QsYUFBWTtFQUNaLDBCckN1RGdCLEVxQ2hCZjs7QUFHRDtFcEM2TEEsbUJBQWtCO0VBQ2xCLFNBQVE7RUFDUixVQUFTO0VBQ1QseUNBQWdDO01BQWhDLHFDQUFnQztVQUFoQyxpQ0FBZ0M7RW9DaE9oQyxtQkFBa0I7RUFDbEIsVUFBUztFQUNULG1CQUFrQjtFQUNsQixrQkFBaUI7RUFDakIsZXJDbURhO0VxQ2xEYixvQkFBbUIsRUE2QmxCOztBQzJDRDtFQXBGQSxtQkFBa0I7RUFDbEIsZXRDb3RCb0I7RXNDbnRCcEIsb0JBQW1CO0VBQ25CLHVCQUFzQjtFQUV0QiwwQnRDcURrQjtFc0NwRGxCLGdCQUFlO0VBQ2YsMEJBQWlCO0tBQWpCLHVCQUFpQjtNQUFqQixzQkFBaUI7VUFBakIsa0JBQWlCO0VBQ2pCLHVCQUFrQjtNQUFsQixtQkFBa0IsRUE4RWpCOztBQUdEO0VBNUVBLG1CQUFrQjtFQUNsQixPQUFNO0VBQ04sUUFBTztFQUVQLHNCQUFxQjtFQUNyQixnQkFBZTtFQUNmLGV0Q2tzQm9CO0VzQ2hzQnBCLDBCdENzQ21CO0VzQ3JDbkIsaUN0QzhyQnNDLEVzQ3puQnJDO0VBbkVEO0lBQ0UsMEJBQXlCLEVBQzFCOztBQW9FRDtFckNzSEEsbUJBQWtCO0VBQ2xCLFNBQVE7RUFDUixvQ0FBMkI7TUFBM0IsZ0NBQTJCO1VBQTNCLDRCQUEyQjtFcUNyTDNCLFFBQU87RUFDUCxXQUFVO0VBRVYsc0JBQXFCO0VBQ3JCLGN0Q29yQjBCO0VzQ25yQjFCLGV0Q2tyQjJCO0VzQ2hyQjNCLGlCdENnQ2U7RXNDL0JmLDBCdENXZ0I7RXNDVmhCLGlDdEMwcUJzQztFc0N6cUJ0QywrQkFBMEI7TUFBMUIsMkJBQTBCLEVBcUR6QjtFN0NzMEVEO0lRanZFRSxXQUFVLEVBQ1g7RXFDeklEO0lBQ0UsMEJBQTBFLEVBQzNFO0VBRUQ7SUFDRSwwQkFBeUIsRUFDMUI7O0FBZ0REOztFQTVDQSxjdENvcUI0QjtFc0NucUI1QixvQkFBbUIsRUE4Q2xCOztBQUdEO0VBN0NBLHNCQUFxQjtFQUNyQixjdENzcEI0QjtFc0NycEI1QixnQkFBZTtFQUNmLGtCQUFpQjtFQUNqQixnQ0FBdUI7TUFBdkIsNEJBQXVCO1VBQXZCLHdCQUF1QixFQTJDdEI7RUF6Q0Q7SUFDRSxPQUFNO0lBQ04sY3RDK29CMEI7SXNDOW9CMUIsaUJBQWdCLEVBQ2pCO0VBRUQ7SUFDRSxtQkFBa0I7SUFDbEIsT0FBTTtJQUNOLFVBQVM7SUFDVCxjdEM0b0J5QjtJc0Mzb0J6QixldEM0b0J3QjtJc0Mzb0J4QixvQ0FBMkI7UUFBM0IsZ0NBQTJCO1lBQTNCLDRCQUEyQixFQUM1Qjs7QUMvRkQ7RUFDRSxtQkFBa0IsRUFDbkI7O0FBRUQ7RUFDRSxtQkFBa0I7RUFDbEIsV0FBVTtFQUNWLHdDQUErQjtVQUEvQixnQ0FBK0IsRUFDaEM7O0FBRUQ7RUFDRSxnQkFBZTtFQUNmLFdBQVU7RUFDVixZQUFXLEVBU1o7RUFaRDtJQU1JLE9BQU0sRUFDUDtFQVBIO0lBVUksVUFBUyxFQUNWOztBQUdIO0VBQ0UsbUJBQWtCO0VBQ2xCLFlBQVc7RUFDWCxXQUFVLEVBS1g7RUFSRDtJQU1JLFVBQVMsRUFDVjs7QTFDZ0dIO0VBQ0UsZ0JBQWU7RUFDZixZQUFXO0VBQ1gsbUJBQWtCLEVBU25CO0VBWkQ7SUFNSSxtQkFBa0IsRUFDbkI7RUFQSDtJQVVJLG1CQUFrQixFQUNuQjs7QUFJSDtFQTNGQSxnQkFBZTtFQUNmLE9BQU07RUFDTixTQUFRO0VBQ1IsVUFBUztFQUNULFFBQU87RUFDUCxjR3FxQmtCO0VIbnFCbEIsY0FBYTtFQUNiLHlDR2tCYTtFSGpCYixpQkFBZ0IsRUFvRmY7O0FBR0Q7RUFqRkEsY0cycEJrQjtFSHpwQmxCLG9DQUEyQjtVQUEzQiw0QkFBMkI7RUFFM0IsY0FBYTtFQUNiLGNHYW1CO0VIWG5CLDBCR0VtQjtFSERuQixpQkdjZTtFSGJmLDBCR0dhO0VId0VYLG1CQUFrQjtFQUNsQixXQUFVO0VBQ1YsbUJBQWtCO0VBQ2xCLGtCQUFpQjtFQUNqQixpQkFBZ0IsRUF3QmpCO0VKMjFFRDtJUXgwRUUsV0FBVSxFQUNYO0VMckNHO0lDZEo7TUFyRUUsY0FBYSxFQW9HZCxFQUFBO0VBaEdEO0lBQ0UsYUFBWSxFQUNiO0VBR0Q7SUFDRSxpQkFBZ0IsRUFDakI7RUR3RUc7SUNkSjtNQTdDRSxhR2tuQmdCO01Iam5CaEIsaUJNcEJxRCxFTitGdEQsRUFBQTtFQS9CRDtJQVdJLFdBQVUsRUFDWDtFREVDO0lDZEo7TUE3Q0UsV0E0RHlDO01BM0R6QyxpQk1wQnFELEVOK0VQLEVBQUE7RURENUM7SUNkSjtNQTdDRSxXQTZEeUM7TUE1RHpDLGlCTXBCcUQsRU5nRlAsRUFBQTtFREY1QztJQ2RKO01BN0NFLFdBOER5QztNQTdEekMsaUJNcEJxRCxFTmlGUCxFQUFBO0VBakJoRDtJQXRDQSxPQUFNO0lBQ04sU0FBUTtJQUNSLFVBQVM7SUFDVCxRQUFPO0lBRVAsWUFBVztJQUNYLGdCQUFlO0lBQ2YsYUFBWTtJQUNaLGlCQUFnQjtJQUNoQixlQUFjO0lBRWQsVUFBUztJQUNULGlCQUFnQixFQWdEYjtFREhDO0lDbkJKO01BdENBLE9BQU07TUFDTixTQUFRO01BQ1IsVUFBUztNQUNULFFBQU87TUFFUCxZQUFXO01BQ1gsZ0JBQWU7TUFDZixhQUFZO01BQ1osaUJBQWdCO01BQ2hCLGVBQWM7TUFFZCxVQUFTO01BQ1QsaUJBQWdCLEVBeURmLEVBQUE7RUEvQkQ7SUE2QkksZ0JBQWUsRUFDaEI7O0EyQ29CSDtFQUNFLGF4QzZpQmdCO0V3QzFyQmxCLG1CQUFrQjtFQUNsQixvQnhDeUJrQjtFd0N4QmxCLFdBQVU7RUFHVixvQnJDcUJ1RDtFcUNwQnZELGtCQUFpQjtFQUNqQixleENjYTtFd0NaYiwwQkFBaUI7S0FBakIsdUJBQWlCO01BQWpCLHNCQUFpQjtVQUFqQixrQkFBaUIsRUFzSWhCOztBQUdEO0VBcElBLG1CQUFrQjtFQUNsQixpQkFBZ0I7RUFDaEIsV0FBVSxFQW9JVDs7QUFHRDtFQTdIQSxtQkFBa0I7RUFDbEIsZUFBYztFQUNkLFlBUGlDO0VBUWpDLGF4QzZwQmtCO0V3QzNwQmxCLGlCeENBZTtFd0NDZixvQnhDZG1CO0V3Q2VuQiwrQnhDa3FCMkM7RXdDL3BCM0MscUJBQW9CO0VBQ3BCLGVBQWM7RUFFZCxnQkFBZSxFQWtIZDtFQS9HRDtJQUNFLFVBQVMsRUFDVjtFQUdEO0lBQ0UsbUJBQWtCO0lBQ2xCLGF4Q2dwQjBCO0l3Qy9vQjFCLGN4QytvQjBCO0l3QzdvQjFCLGVBQWM7SUFDZCxjQTlCeUQ7SUErQnpELGVBaEMwRDtJQWtDMUQsd0NBQStCO1lBQS9CLGdDQUErQjtJQUMvQixpQnhDMUJhO0l3QzJCYixvQnhDckNXO0l3Q3NDWCwrQnhDd29CeUM7SXdDdm9CekMsWUFBVyxFQUNaO0VBR0Q7SUFDRSxvQnhDdERjLEV3QzJEZjtJQU5EO01BSUksY0E1Q3dFLEVBNkN6RTtFL0NrL0VIO0lRMzZFRSxXQUFVLEVBQ1g7O0F1Q2VEO0VBN0VBLG1CQUFrQjtFQUNsQixTQUFRO0VBQ1Isb0NBQTJCO01BQTNCLGdDQUEyQjtVQUEzQiw0QkFBMkIsRUE2RTFCOztBQUdEO0VBM0VBLFNBQW1CO0VBQ25CLGNBQWEsRUE2RVo7RUEzRUQ7SUFDRSxlQUFjLEVBQ2Y7O0FBNEVEO0VBdkVBLFdBQXFCLEVBMEVwQjtFQXhFRDtJQUNFLGNBQWEsRUFDZDs7QUF5RUQ7RUF2REEsZXhDcWtCeUIsRXdDNWdCeEI7RUF2REQ7SUFDRSxZQVIrQjtJQVMvQixleENpa0J1QjtJd0Noa0J2QixvQnJDakdxRCxFcUNrR3REO0VBRUQ7SUFDRSxheENra0IwQjtJd0Nqa0IxQixjeENpa0IwQjtJd0Noa0IxQixZQWZrRDtJQWdCbEQsYUFmbUQsRUFnQnBEO0VBRUQ7SUFDRSxjQWxCbUUsRUFtQnBFOztBQTBDRDtFQTNEQSxnQnhDc2tCMkIsRXdDemdCMUI7RUEzREQ7SUFDRSxjQVIrQjtJQVMvQixnQnhDa2tCeUI7SXdDamtCekIsbUJyQ2pHcUQsRXFDa0d0RDtFQUVEO0lBQ0UsYXhDa2tCMEI7SXdDamtCMUIsY3hDaWtCMEI7SXdDaGtCMUIsZUFma0Q7SUFnQmxELGdCQWZtRCxFQWdCcEQ7RUFFRDtJQUNFLFdBbEJtRSxFQW1CcEU7O0FBOENEO0VBL0RBLGV4Q3VrQjBCLEV3Q3RnQnpCO0VBL0REO0lBQ0UsWUFSK0I7SUFTL0IsZXhDbWtCd0I7SXdDbGtCeEIsZ0JyQ2pHcUQsRXFDa0d0RDtFQUVEO0lBQ0UsYXhDa2tCMEI7SXdDamtCMUIsY3hDaWtCMEI7SXdDaGtCMUIsWUFma0Q7SUFnQmxELGFBZm1ELEVBZ0JwRDtFQUVEO0lBQ0UsY0FsQm1FLEVBbUJwRTs7QUMyR0Q7RUE5R0EsMEJBQXlCO0VBQ3pCLFlBQVc7RUFDWCxvQnpDNUdrQjtFeUM2R2xCLGlCekN4R2UsRXlDcU5kO0VBcE1EOzs7SUFHRSwwQkNuQjZDO0lEb0I3QywwQnpDL0JXLEV5Q2dDWjtFQUdEO0lBQ0Usa0N0Qy9CcUQ7SXNDZ0NyRCxrQnpDNUJxQixFeUM2QnRCO0VuQ3pEQztJbUM2REEsb0JDL0I2QztJRGdDN0MsZXpDNUNXLEV5QzZDWjtFQUdEO0lBQ0Usb0JDckM2QztJRHNDN0MsZXpDbERXLEV5Q21EWjtFQUdEOztJQUlJLHdCQUF1QixFQUN4QjtFQUxIOzs7O0lBVUksa0N0QzFEbUQ7SXNDMkRuRCxrQnpDdkRtQjtJeUN3RG5CLGlCQUFZLEVBQ2I7RUFJSDs7SUFHSSxrQ3RDcEVtRCxFc0NxRXBEO0VBdkVDO0lBQ0UsaUJBQWdCO0lBQ2hCLDBCQ015QyxFREwxQztFQThFRDtJQUVFLDBCekN0Rk8sRXlDdUZSO0lBcEVMO01BQ0UsaUJBQWdCO01BQ2hCLGlDQ1Y2QztNRFc3QywwQnpDdEJXLEV5Q3VCWjs7QTdDaUVHO0U2Q2dIRjtJQUNFLGNBQWEsRUFDZDtFQUdIO0lBQ0UsY0FBYSxFQUNkO0VBRUQ7OztJQUdFLGVBQWMsRUFDZjtFQUVEO0lBQ0UsY0FBYSxFQUNkLEVBQUE7O0FBY0Q7RUF2R0EsZUFBYztFQUNkLFlBQVc7RUFDWCxpQkFBZ0IsRUF1R2Y7O0FBaEdDO0VBQ0UsMEJ6Q29qQm1FLEV5Q25qQnBFOztBQUtEO0VBQ0UsMEJ6QytpQm1FLEV5QzlpQnBFOztBQUtEO0VBQ0UsMEJ6Q2dpQnlELEV5Qy9oQjFEOztBQU1DO0VBQ0UsMEJ6Q3loQm1GLEV5Q3hoQnBGOztBQThFTDtFQUNFLGlCQUFnQixFQUVqQjs7QUV0TEQ7RUFqRkEsVTNDOHRCWTtFMkM3dEJaLDBCM0NnQmtCO0UyQ2ZsQixvQjNDbUJhO0UyQ2xCYixzQkFBcUIsRUFnRnBCO0UxQ3dCRDtJQUVFLGVBQWM7SUFDZCxhQUFZO0lBR1Ysc0JBQWE7UUFBYiwyQkFBYTtZQUFiLGNBQWE7SUFDYixpQkFBUTtRQUFSLGtCQUFRO1lBQVIsU0FBUSxFQUVYO0VBRUQ7SUFDRSxZQUFXLEVBQ1o7O0EwQ2hIRDtFQUNFLGVBQWM7RUFDZCxZQUFXO0VBQ1gsWUFBVyxFQUNaOztBQStFRDtFQUVJLFdBQVUsRUFLWDtFQVBIO0lBS00sd0JBQXVCLEVBQ3hCOztBQUtMO0VBQ0Usb0IzQzVGYyxFMkNzR2Y7RUFYRDtJQUlJLGUzQ3JGUyxFMkMyRlY7SUFWSDtNQVFNLG9CRDlFeUMsRUMrRTFDOztBQUlMO0VBM0ZBLFlBQU8sRUE2Rk47RUEzRkQ7SUFFRSxlQUFjO0lBQ2Qsd0IzQ3dzQjZCO0kyQ3ZzQjdCLG1CeENKcUQ7SXdDS3JELGVBQWM7SUFDZCxlM0NyQmMsRTJDaUNmO0lsRHdyRkM7TVF4bEZBLFdBQVUsRUFDWDtJMEMzR0M7TUFDRSxvQjNDZFM7TTJDZVQsZUFBNEMsRUFDN0M7SUFFRDtNQUVFLG9CM0N4QmM7TTJDeUJkLGUzQy9CWSxFMkNnQ2I7O0FBNEVIO0VBbEVBLDBCM0NwQ2tCO0UyQ3FDbEIsY0FBYTtFQUNiLG9CM0NsQ2E7RTJDbUNiLGUzQ3BDYTtFMkNxQ2IsMEJBQXlCLEVBZ0V4Qjs7QUFFRDtFQTNEQSwwQjNDL0NrQjtFMkNnRGxCLGVBQWdDLEVBNEQvQjs7QUFFRDtFQXZEQSxjQUFhO0VBQ2IsYzNDaXFCd0IsRTJDem1CdkI7RUF0REQ7SUFDRSxlQUFjLEVBQ2Y7O0FDaEZEO0VBekJBLHNCQUFxQjtFQUNyQixnQkFBZTtFQUNmLG9CNUNvRGtCO0U0Q2xEbEIsMEI1QzZDYTtFNEM1Q2IsaUI1Q3NEZTtFNENyRGYsNEM1QzBDYTtFNEN4Q2IsZUFBYyxFQW1CYjs7QUFFRDtFQWpCQSxzQzVDbXdCOEMsRTRDaHZCN0M7RUFqQkQ7SUFFRSxnRDVDdUJjLEU0Q3RCZjtFQUVEO0lBQ0UsaUJBQWdCLEVBQ2pCOztBQ2xCRDtFQUNFLGdCN0NteEJxQjtFNkNseEJyQixvQlh2Q29CO0VXd0NwQixlN0MyQ1c7RTZDeENULHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2Isb0NBQTJCO01BQTNCLHFCQUEyQjtVQUEzQiw0QkFBMkI7RUFDM0IsNEJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixvQkFBbUIsRUFVdEI7RUFsQkQ7SUFlSSxxQjdDeXdCeUI7STZDeHdCekIsc0I3Q3d3QnlCLEU2Q3Z3QjFCOztBQUlEOztFQUVFLHNCQUFhO01BQWIsa0JBQWE7VUFBYixjQUFhLEVBQ2Q7O0FBRUQ7RUFDRSxrQkFBaUIsRUFDbEI7O0FBYUg7RUFDRSxzQkFBcUI7RUFDckIsdUJBQXNCO0VBQ3RCLGtCN0N5dUI0QixFNkN4dUI3Qjs7QUNzRUQ7RUFuR0EsbUJBQWtCO0VBQ2xCLHNCQUFxQjtFQUVyQixrQzlDeUJpQjtFOEN4QmpCLGtCOUNtQ3VCO0U4Q2xDdkIsYTlDd3dCbUIsRThDeHFCbEI7O0FBRUQ7RUE5RkEsbUJBQWtCO0VBQ2xCLDRCQUF3QztFQUN4QyxjQUFhO0VBRWIsaUI5Q3N3QnVCO0U4Q3J3QnZCLGlCOUNvd0J1QjtFOENsd0J2QixpQjlDd0JlO0U4Q3ZCZiwwQjlDWWE7RThDWGIsZTlDeUZtQjtFOEN4Rm5CLGU5Q1dhLEU4QzJFWjtFQXBGRDtJQUNFLG1CQUFrQixFQUNuQjtFQUdDO0k3Q3JDRixlQUFjO0lBQ2QsU0FBUTtJQUNSLFVBQVM7SUFFVCxzQkQ0eEJ5QjtJQzF4QnpCLFlBQVc7SUFRVCxvQkFBbUI7SUFDbkIsMkJBQTBCO0lBQzFCLDhDRHdCVztJOENEVCxhQUFZLEVBQ2I7RUFFRDtJQUNFLFVBQVM7SUFDVCxvQ0FBMkI7UUFBM0IsZ0NBQTJCO1lBQTNCLDRCQUEyQixFQUM1QjtFQUlEO0k3Q2pERixlQUFjO0lBQ2QsU0FBUTtJQUNSLFVBQVM7SUFFVCxzQkQ0eEJ5QjtJQzF4QnpCLFlBQVc7SUFHVCx1QkFBc0I7SUFDdEIsd0JBQXVCO0lBQ3ZCLDhDQUFxRDtJNkN3Q25ELFVBQVM7SUFDVCxhQUFZLEVBQ2I7RUFFRDtJQUNFLFVBQVM7SUFDVCxvQ0FBMkI7UUFBM0IsZ0NBQTJCO1lBQTNCLDRCQUEyQixFQUM1QjtFQUlEO0k3QzlERixlQUFjO0lBQ2QsU0FBUTtJQUNSLFVBQVM7SUFFVCxzQkQ0eEJ5QjtJQzF4QnpCLFlBQVc7SUFhVCxzQkFBcUI7SUFDckIseUJBQXdCO0lBQ3hCLDBERG1CVztJOEN3QlQsV0FBVSxFQUNYO0VBRUQ7SUFDRSxhQUFZO0lBQ1osU0FBUTtJQUNSLG9DQUEyQjtRQUEzQixnQ0FBMkI7WUFBM0IsNEJBQTJCLEVBQzVCO0VBSUQ7STdDM0VGLGVBQWM7SUFDZCxTQUFRO0lBQ1IsVUFBUztJQUVULHNCRDR4QnlCO0lDMXhCekIsWUFBVztJQWtCVCxxQkFBb0I7SUFDcEIsMEJBQXlCO0lBQ3pCLDBEQUFpRTtJNkNtRC9ELFlBQVc7SUFDWCxXQUFVLEVBQ1g7RUFFRDtJQUNFLGFBQVk7SUFDWixTQUFRO0lBQ1Isb0NBQTJCO1FBQTNCLGdDQUEyQjtZQUEzQiw0QkFBMkIsRUFDNUI7RUFHSDtJQUNFLGFBQVk7SUFDWixTQUFRLEVBQ1Q7RUFFRDtJQUNFLFlBQVc7SUFDWCxVQUFTLEVBQ1Y7RUFFRDtJQUNFLFVBQVM7SUFDVCxZQUFXLEVBQ1o7RUFFRDtJQUNFLFdBQVU7SUFDVixXQUFVLEVBQ1g7O0FDM0JEO0VBdEZFLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsMEJBQWlCO01BQWpCLHNCQUFpQjtVQUFqQixrQkFBaUI7RUFDakIsdUNBQThCO01BQTlCLHVCQUE4QjtVQUE5QiwrQkFBOEI7RUFDOUIsNEJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixvQkFBbUI7RUFNckIsZ0IvQ3F5QnFCO0UrQ253Qm5CLHdCQUFlO01BQWYsb0JBQWU7VUFBZixnQkFBZSxFQStEaEI7RUEvRkQ7O0lBRUUsMEIvQytCZ0IsRStDOUJqQjtFQVVEO0lBQ0UsaUIvQ3l4QnNCO0krQ3h4QnRCLG1CQUFvQyxFQUNyQztFQUdEO0lBQ0UsWUFBVztJQUNYLGdCQUFpQyxFQUNsQztFQUVEO0lBQ0UsWUFBVyxFQUNaO0VBU0M7O0lBRUUsdUJBQWM7UUFBZCxtQkFBYztZQUFkLGVBQWM7SUFDZCxnQkFBZSxFQUNoQjtFbkRpRkM7SW1EN0NKO01BdEJFLDBCQUFpQjtVQUFqQixzQkFBaUI7Y0FBakIsa0JBQWlCLEVBMENsQjtNQXhDQztRQUNFLHVCQUFjO1lBQWQsbUJBQWM7Z0JBQWQsZUFBYztRQUNkLG1CQUFrQixFQUNuQjtNQUVEO1FBQ0UsdUJBQWM7WUFBZCxtQkFBYztnQkFBZCxlQUFjO1FBQ2Qsa0JBQWlCLEVBQ2xCLEVBQUE7RW5EOERDO0ltRGxESjtNQTNDRSx3QkFBZTtVQUFmLG9CQUFlO2NBQWYsZ0JBQWUsRUE0RFY7TUF6REw7O1FBRUUsdUJBQWM7WUFBZCxtQkFBYztnQkFBZCxlQUFjO1FBQ2QsZ0JBQWUsRUFDaEIsRUFBQTtFbkRzRkM7SW1EbERKO01BM0NFLHdCQUFlO1VBQWYsb0JBQWU7Y0FBZixnQkFBZSxFQTREVjtNQXpETDs7UUFFRSx1QkFBYztZQUFkLG1CQUFjO2dCQUFkLGVBQWM7UUFDZCxnQkFBZSxFQUNoQixFQUFBOztBQTRERDtFQUNFLHVCQUFjO01BQWQsbUJBQWM7VUFBZCxlQUFjO0VBQ2QsNkIvQ2lzQnFDLEUrQ2hzQnRDOztBQUVEOztFQUVFLHVCQUFjO01BQWQsbUJBQWM7VUFBZCxlQUFjLEVBQ2Y7O0FDekZIO0VBQ0UseUJBQXdCLEVBQ3pCOztBQUVEO0VBQ0UsbUJBQWtCLEVBQ25COztBcERxR0c7RW9EdkZGO0lBMUJBLHlCQUF3QixFQTRCdkIsRUFBQTs7QUEvQ0Q7RUFpREE7SUFoREUseUJBQXdCLEVBa0R6QixFQUFBOztBcEQ0RUM7RW9EM0ZBO0lBekJGLHlCQUF3QixFQTJCckIsRUFBQTs7QXBEOEZEO0VvRDVGQTtJQWpFRix5QkFBd0IsRUFtRXJCLEVBQUE7O0FwRDBGRDtFb0R2RkY7SUExQkEseUJBQXdCLEVBNEJ2QixFQUFBOztBQS9DRDtFQWlEQTtJQWhERSx5QkFBd0IsRUFrRHpCLEVBQUE7O0FwRDRFQztFb0QzRkE7SUF6QkYseUJBQXdCLEVBMkJyQixFQUFBOztBcEQ4RkQ7RW9ENUZBO0lBakVGLHlCQUF3QixFQW1FckIsRUFBQTs7QXBEMEZEO0VvRHZGRjtJQTFCQSx5QkFBd0IsRUE0QnZCLEVBQUE7O0FBL0NEO0VBaURBO0lBaERFLHlCQUF3QixFQWtEekIsRUFBQTs7QUFLSDs7RS9DbUhBLDhCQUE2QjtFQUM3QixXQUFVO0VBQ1YsWUFBVztFQUNYLFdBQVU7RUFDVixpQkFBZ0I7RUFDaEIsdUJBQW1CO0VBQ25CLG9CQUFtQjtFQUNuQixVQUFTLEUrQ3ZIUjs7QUFHRDtFL0N5SEEsNEJBQTJCO0VBQzNCLFlBQVc7RUFDWCxhQUFZO0VBQ1osa0JBQWlCO0VBQ2pCLFdBQVU7RUFDVixvQkFBbUIsRStDMUhoQjs7QUFJSDs7RUFFRSwwQkFBeUIsRUFTMUI7RXBEbURHO0lvRDlESjs7TUFLSSwwQkFBeUIsRUFNNUIsRUFBQTtFcERtREc7SW9EOURKOztNQVNJLHlCQUF3QixFQUUzQixFQUFBOztBQUVEOztFQUVFLHlCQUF3QixFQVN6QjtFcERzQ0c7SW9EakRKOztNQUtJLHlCQUF3QixFQU0zQixFQUFBO0VwRHNDRztJb0RqREo7O01BU0ksMEJBQXlCLEVBRTVCLEVBQUE7O0FDM0RDO0VDbkJGLG9DQXJEeUQ7TUFxRHpELHFCQXJEeUQ7VUFxRHpELDRCQXJEeUQsRUQwRXREOztBQUZEO0VDbkJGLGtDQXBEMEQ7TUFvRDFELG1CQXBEMEQ7VUFvRDFELDBCQXBEMEQsRUR5RXZEOztBQUZEO0VDbkJGLGdDQW5Ea0I7TUFtRGxCLHNCQW5Ea0I7VUFtRGxCLHdCQW5Ea0IsRUR3RWY7O0FBRkQ7RUNuQkYsdUNBbEQwQjtNQWtEMUIsdUJBbEQwQjtVQWtEMUIsK0JBbEQwQixFRHVFdkI7O0FBRkQ7RUNuQkYsc0NBakR3QjtNQWlEeEIsMEJBakR3QjtVQWlEeEIsOEJBakR3QixFRHNFckI7O0FBS0Q7RUMxQkYsb0NBckR5RDtNQXFEekQscUJBckR5RDtVQXFEekQsNEJBckR5RCxFRG1GbEQ7O0FBSkw7RUMxQkYsa0NBcEQwRDtNQW9EMUQsbUJBcEQwRDtVQW9EMUQsMEJBcEQwRCxFRGtGbkQ7O0FBSkw7RUMxQkYsZ0NBbkRrQjtNQW1EbEIsc0JBbkRrQjtVQW1EbEIsd0JBbkRrQixFRGlGWDs7QUFPTDtFQ3BDRixnQ0ExQ2lCO01BMENqQixzQkExQ2lCO1VBMENqQix3QkExQ2lCLEVEZ0ZkOztBQUVEO0VDeEJGLCtCQTFEaUI7TUEwRGpCLDJCQTFEaUI7VUEwRGpCLHVCQTFEaUIsRURvRmQ7O0FBTkQ7RUNwQ0YsOEJBekNrQjtNQXlDbEIsb0JBekNrQjtVQXlDbEIsc0JBekNrQixFRCtFZjs7QUFFRDtFQ3hCRiw2QkF6RGtCO01BeURsQix5QkF6RGtCO1VBeURsQixxQkF6RGtCLEVEbUZmOztBQU5EO0VDcENGLDRCQXhDZ0I7TUF3Q2hCLHVCQXhDZ0I7VUF3Q2hCLG9CQXhDZ0IsRUQ4RWI7O0FBRUQ7RUN4QkYsMkJBeERnQjtNQXdEaEIsNEJBeERnQjtjQXdEaEIsMkJBeERnQjtVQXdEaEIsbUJBeERnQixFRGtGYjs7QUFORDtFQ3BDRiw2QkF2Q2tCO01BdUNsQix3QkF2Q2tCO1VBdUNsQixxQkF2Q2tCLEVENkVmOztBQUVEO0VDeEJGLDRCQXZEa0I7TUF1RGxCLDZCQXZEa0I7Y0F1RGxCLDRCQXZEa0I7VUF1RGxCLG9CQXZEa0IsRURpRmY7O0FBSUg7RUMvQ0EsZ0NBbkRrQjtNQW1EbEIsc0JBbkRrQjtVQW1EbEIsd0JBbkRrQjtFQW9EbEIsNEJBeENnQjtNQXdDaEIsdUJBeENnQjtVQXdDaEIsb0JBeENnQjtFRHdGZCw4QkFBcUI7TUFBckIsMkJBQXFCO1VBQXJCLHNCQUFxQixFQUN0Qjs7QUFLRztFQ2hDSixpQkQrQmdCO01DL0JoQixrQkQrQmdCO1VDL0JoQixTRCtCZ0IsRUFHWDs7QUFGRDtFQ2hDSixpQkQrQmdCO01DL0JoQixrQkQrQmdCO1VDL0JoQixTRCtCZ0IsRUFHWDs7QUFGRDtFQ2hDSixpQkQrQmdCO01DL0JoQixrQkQrQmdCO1VDL0JoQixTRCtCZ0IsRUFHWDs7QUFGRDtFQ2hDSixpQkQrQmdCO01DL0JoQixrQkQrQmdCO1VDL0JoQixTRCtCZ0IsRUFHWDs7QUFGRDtFQ2hDSixpQkQrQmdCO01DL0JoQixrQkQrQmdCO1VDL0JoQixTRCtCZ0IsRUFHWDs7QUFGRDtFQ2hDSixpQkQrQmdCO01DL0JoQixrQkQrQmdCO1VDL0JoQixTRCtCZ0IsRUFHWDs7QXJEc0REO0VxRHhEQTtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1gsRUFBQTs7QXJEc0REO0VxRHhEQTtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1gsRUFBQTs7QUEvRkw7RUNZQSxzQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYSxFRFZaOztB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aEJ4Qjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLFdGaENrQztFSUVsQyw2QkFBNEIsRUxBM0I7O0FBVUQ7RUdvQkEsV0ZoQ3FDLEVEY3BDOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsV0YvQmtDO0VJQ2xDLDZCQUE0QixFTEEzQjs7QUFVRDtFR29CQSxXRi9CcUMsRURhcEM7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix1REdyQ21DO1VIcUNuQywrQ0dyQ21DO0VIcUNuQyw4QkY1Qm1EO01FNEJuRCwwQkY1Qm1EO1VFNEJuRCxzQkY1Qm1EO0VNSWpELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQUDVCOztBQVVEO0VHb0JBLG9ER1Q0QztVSFM1Qyw0Q0dUNEM7RUNKMUMsV0FBMkIsRVBMNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix1REdwQ3FDO1VIb0NyQywrQ0dwQ3FDO0VIb0NyQyxnQ0YzQnFEO01FMkJyRCw0QkYzQnFEO1VFMkJyRCx3QkYzQnFEO0VNR25ELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQUDVCOztBQVVEO0VHb0JBLG9ER1Q0QztVSFM1Qyw0Q0dUNEM7RUNKMUMsV0FBMkIsRVBMNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixzREduQ2lDO1VIbUNqQyw4Q0duQ2lDO0VIbUNqQyxpQ0YxQnNEO01FMEJ0RCw2QkYxQnNEO1VFMEJ0RCx5QkYxQnNEO0VNRXBELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQUDVCOztBQVVEO0VHb0JBLG9ER1Q0QztVSFM1Qyw0Q0dUNEM7RUNKMUMsV0FBMkIsRVBMNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixzREdsQytCO1VIa0MvQiw4Q0dsQytCO0VIa0MvQiwrQkZ6Qm9EO01FeUJwRCwyQkZ6Qm9EO1VFeUJwRCx1QkZ6Qm9EO0VNQ2xELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQUDVCOztBQVVEO0VHb0JBLG9ER1Q0QztVSFM1Qyw0Q0dUNEM7RUNKMUMsV0FBMkIsRVBMNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix1REdyQ21DO1VIcUNuQywrQ0dyQ21DO0VIcUNuQyxpQ0dFZTtNSEZmLDZCR0VlO1VIRmYseUJHRWU7RUMxQmIsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBMkIsRVBQNUI7O0FBVUQ7RUdvQkEsb0RHVDRDO1VIUzVDLDRDR1Q0QztFQ0oxQyxXQUEyQixFUEw1Qjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLHVER3BDcUM7VUhvQ3JDLCtDR3BDcUM7RUhvQ3JDLGlDR0VlO01IRmYsNkJHRWU7VUhGZix5QkdFZTtFQzFCYixnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUFA1Qjs7QUFVRDtFR29CQSxvREdUNEM7VUhTNUMsNENHVDRDO0VDSjFDLFdBQTJCLEVQTDVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUDhDO1VITzlDLDRDR1A4QztFSE85Qyw4QkZ0Qm1EO01Fc0JuRCwwQkZ0Qm1EO1VFc0JuRCxzQkZ0Qm1EO0VNRmpELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQUC9COztBQVVEO0VHb0JBLHNERy9COEI7VUgrQjlCLDhDRy9COEI7RUNrQjVCLFdBQThCLEVQTC9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUDhDO1VITzlDLDRDR1A4QztFSE85QyxnQ0ZyQnFEO01FcUJyRCw0QkZyQnFEO1VFcUJyRCx3QkZyQnFEO0VNSG5ELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQUC9COztBQVVEO0VHb0JBLHNERzlCZ0M7VUg4QmhDLDhDRzlCZ0M7RUNpQjlCLFdBQThCLEVQTC9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUDhDO1VITzlDLDRDR1A4QztFSE85QyxpQ0ZwQnNEO01Fb0J0RCw2QkZwQnNEO1VFb0J0RCx5QkZwQnNEO0VNSnBELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQUC9COztBQVVEO0VHb0JBLHVERzdCc0M7VUg2QnRDLCtDRzdCc0M7RUNnQnBDLFdBQThCLEVQTC9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUDhDO1VITzlDLDRDR1A4QztFSE85QywrQkZuQm9EO01FbUJwRCwyQkZuQm9EO1VFbUJwRCx1QkZuQm9EO0VNTGxELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQUC9COztBQVVEO0VHb0JBLHVERzVCb0M7VUg0QnBDLCtDRzVCb0M7RUNlbEMsV0FBOEIsRVBML0I7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixvREdQOEM7VUhPOUMsNENHUDhDO0VITzlDLGlDR0VlO01IRmYsNkJHRWU7VUhGZix5QkdFZTtFQzFCYixnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUE4QixFUFAvQjs7QUFVRDtFR29CQSxzREcvQjhCO1VIK0I5Qiw4Q0cvQjhCO0VDa0I1QixXQUE4QixFUEwvQjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLG9ER1A4QztVSE85Qyw0Q0dQOEM7RUhPOUMsaUNHRWU7TUhGZiw2QkdFZTtVSEZmLHlCR0VlO0VDMUJiLGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQUC9COztBQVVEO0VHb0JBLHNERzlCZ0M7VUg4QmhDLDhDRzlCZ0M7RUNpQjlCLFdBQThCLEVQTC9COztB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QUFFOztBQUVuQjtFeUcxdVZHLGtCQUFlO0VBQ2YscUJBQW1CLEVBQUk7RXpHNHVWeEI7SUFDRTtNQUNFLG9CQUFvQixFQUFFLEVBQUU7O0FBRTlCO0V5R3J1Vk8sa0JBQWlCO0V6R3V1VnRCLGtCQUFrQixFQUFFOztBQUV0QjtFeUdsdVZHLGtCQUFlO0VBQ2YscUJBQW1CLEVBQUk7RXpHb3VWeEI7SUFDRTtNQUNFLG9CQUFvQixFQUFFLEVBQUU7O0FBRTlCO0V5R2h1Vk0sa0JBQWU7RXpHa3VWbkIscUJBQXFCLEVBQUU7O0FBRXpCO0VBQ0UsbUNBQW1DLEVBQUU7O0FBRXZDO0V5R3p0Vk0sZ0JBQWE7RXpHMnRWakIsa0JBQWtCLEVBQUU7O0FBRXRCO0V5R250Vk0sZ0JBQWE7RXpHcXRWakIsa0JBQWtCLEVBQUU7O0FBRXRCO0V5RzlzVkcsUUFBTztFekdndFZSLGVBQWUsRUFBRTs7QUFFbkI7RXlHN3NWSSxpQkFBaUIsRUFBRTtFekcrc1ZyQjtJQUNFO01BQ0Usa0JBQWtCLEVBQUUsRUFBRSIsImZpbGUiOiJhcHAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuNS4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuQGltcG9ydCB1cmwoLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2RhdGVyYW5nZXBpY2tlci9kYXRlcmFuZ2VwaWNrZXIuY3NzKTtcbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwsIC5yZXZlYWwudGlueSwgLnJldmVhbC5zbWFsbCwgLnJldmVhbC5sYXJnZSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG5cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgfVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIG1hcmdpbjogMDsgfVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IH1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7IH1cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07IH1cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7IH1cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGZvbnQ6IGluaGVyaXQ7IH1cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDEwMCU7IH1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiT3h5Z2VuXCIsIFwiVWJ1bnR1XCIsIFwiQ2FudGFyZWxsXCIsIFwiRmlyYSBTYW5zXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbnNlbGVjdCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBhdXRvOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBidXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IH1cblxuLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS42O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMsXG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiT3h5Z2VuXCIsIFwiVWJ1bnR1XCIsIFwiQ2FudGFyZWxsXCIsIFwiRmlyYSBTYW5zXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cbiAgaDEgc21hbGwsIC5oMSBzbWFsbCxcbiAgaDIgc21hbGwsIC5oMiBzbWFsbCxcbiAgaDMgc21hbGwsIC5oMyBzbWFsbCxcbiAgaDQgc21hbGwsIC5oNCBzbWFsbCxcbiAgaDUgc21hbGwsIC5oNSBzbWFsbCxcbiAgaDYgc21hbGwsIC5oNiBzbWFsbCB7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgY29sb3I6ICNjYWNhY2E7IH1cblxuaDEsIC5oMSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDIsIC5oMiB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmg0LCAuaDQge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGgxLCAuaDEge1xuICAgIGZvbnQtc2l6ZTogM3JlbTsgfVxuICBoMiwgLmgyIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTsgfVxuICBoMywgLmgzIHtcbiAgICBmb250LXNpemU6IDEuOTM3NXJlbTsgfVxuICBoNCwgLmg0IHtcbiAgICBmb250LXNpemU6IDEuNTYyNXJlbTsgfVxuICBoNSwgLmg1IHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgaDYsIC5oNiB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9IH1cblxuYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogIzE3NzliYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgY29sb3I6ICMxNDY4YTA7IH1cbiAgYSBpbWcge1xuICAgIGJvcmRlcjogMDsgfVxuXG5ociB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMS4yNXJlbSBhdXRvO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItbGVmdDogMDsgfVxuXG51bCxcbm9sLFxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICBsaW5lLWhlaWdodDogMS42OyB9XG5cbmxpIHtcbiAgZm9udC1zaXplOiBpbmhlcml0OyB9XG5cbnVsIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyB9XG5cbnVsIHVsLCBvbCB1bCwgdWwgb2wsIG9sIG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIGRsIGR0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNTYyNXJlbSAxLjI1cmVtIDAgMS4xODc1cmVtO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNjYWNhY2E7IH1cbiAgYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGNvbG9yOiAjOGE4YThhOyB9XG5cbmNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGNvbG9yOiAjOGE4YThhOyB9XG4gIGNpdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKAlCBcIjsgfVxuXG5hYmJyLCBhYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzBhMGEwYTtcbiAgY3Vyc29yOiBoZWxwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbmNvZGUge1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjMxMjVyZW0gMC4wNjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7IH1cblxua2JkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjI1cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjOGE4YThhOyB9XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxMjUlO1xuICBsaW5lLWhlaWdodDogMS42OyB9XG5cbi5zdGF0IHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIHAgKyAuc3RhdCB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW07IH1cblxudWwubm8tYnVsbGV0LCBvbC5uby1idWxsZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubWVkaXVtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmhpZGUtZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdGhlYWQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRib2R5LnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICB0aC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cbiAgLmlyIGE6YWZ0ZXIsXG4gIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gIGFbaHJlZl49JyMnXTphZnRlciB7XG4gICAgY29udGVudDogJyc7IH1cbiAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgQHBhZ2Uge1xuICAgIG1hcmdpbjogMC41Y207IH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMzsgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG4gIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvOyB9IH1cblxuLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAwLjg1ZW0gMWVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNDY3OWU7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi50aW55IHtcbiAgICBmb250LXNpemU6IDAuNnJlbTsgfVxuICAuYnV0dG9uLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLmJ1dHRvbi5sYXJnZSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIC5idXR0b24uZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuYnV0dG9uLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTI2MTk1O1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVlNWU1ZTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24uc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYnV0dG9uLndhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJ1dHRvbi5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b25bZGlzYWJsZWRdIHtcbiAgICBvcGFjaXR5OiAwLjI1O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeSB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeSwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmcge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQud2FybmluZywgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmcsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmc6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmc6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5ob2xsb3cge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gICAgY29sb3I6ICMxNzc5YmE7IH1cbiAgICAuYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMwYzNkNWQ7XG4gICAgICBjb2xvcjogIzBjM2Q1ZDsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3c6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gICAgICAgIGNvbG9yOiAjMTc3OWJhOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICAgICAgY29sb3I6ICMxNzc5YmE7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMwYzNkNWQ7XG4gICAgICAgIGNvbG9yOiAjMGMzZDVkOyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgICAgICAgICBjb2xvcjogIzE3NzliYTsgfVxuICAgIC5idXR0b24uaG9sbG93LnNlY29uZGFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICAgICAgY29sb3I6ICM3Njc2NzY7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjM2IzYjNiO1xuICAgICAgICBjb2xvcjogIzNiM2IzYjsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgICAgICAgICBjb2xvcjogIzc2NzY3NjsgfVxuICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3Mge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICAgICAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gICAgICAgIGNvbG9yOiAjNjcyNTFhOyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgLmJ1dHRvbi5jbGVhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgICBjb2xvcjogIzE3NzliYTsgfVxuICAgIC5idXR0b24uY2xlYXIsIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMwYzNkNWQ7XG4gICAgICBjb2xvcjogIzBjM2Q1ZDsgfVxuICAgICAgLmJ1dHRvbi5jbGVhcjpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgICAgICAgY29sb3I6ICMxNzc5YmE7IH1cbiAgICAuYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6Zm9jdXMsIC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgICAgIGNvbG9yOiAjMTc3OWJhOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzBjM2Q1ZDtcbiAgICAgICAgY29sb3I6ICMwYzNkNWQ7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gICAgICAgICAgY29sb3I6ICMxNzc5YmE7IH1cbiAgICAgIC5idXR0b24uY2xlYXIucHJpbWFyeSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgICAgIGNvbG9yOiAjNzY3Njc2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMzYjNiM2I7XG4gICAgICAgIGNvbG9yOiAjM2IzYjNiOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gICAgICAgICAgY29sb3I6ICM3Njc2NzY7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gICAgICAgIGNvbG9yOiAjMTU3NTM5OyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIud2FybmluZyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjODA1NzAwO1xuICAgICAgICBjb2xvcjogIzgwNTcwMDsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgICAgICAgY29sb3I6ICM2NzI1MWE7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0LCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC40ZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICNmZWZlZmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMWVtOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhcjo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMxNzc5YmE7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cucHJpbWFyeTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIucHJpbWFyeTo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMxNzc5YmE7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5zZWNvbmRhcnk6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjNzY3Njc2OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnN1Y2Nlc3M6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnN1Y2Nlc3M6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjM2FkYjc2OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93Lndhcm5pbmc6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLndhcm5pbmc6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZhZTAwOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LmFsZXJ0OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5hbGVydDo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNjYzRiMzc7IH1cbiAgLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgdG9wOiAtMC4xZW07XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuYS5idXR0b246aG92ZXIsIGEuYnV0dG9uOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cblt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgxMCwgMTAsIDEwLCAwLjEpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLFxuICB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjY2FjYWNhO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG5cbnRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIHRleHRhcmVhW3Jvd3NdIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhOmRpc2FibGVkLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG5bdHlwZT0nc3VibWl0J10sXG5bdHlwZT0nYnV0dG9uJ10ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbmlucHV0W3R5cGU9J3NlYXJjaCddIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG46OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjYWNhY2E7IH1cblxuW3R5cGU9J2ZpbGUnXSxcblt0eXBlPSdjaGVja2JveCddLFxuW3R5cGU9J3JhZGlvJ10ge1xuICBtYXJnaW46IDAgMCAxcmVtOyB9XG5cblt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG5bdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsW2Zvcl0sXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWxbZm9yXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG5sYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cblxuW3R5cGU9J2ZpbGUnXSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICMwYTBhMGE7IH1cbiAgbGFiZWwubWlkZGxlIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgIHBhZGRpbmc6IDAuNTYyNXJlbSAwOyB9XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwsIC5pbnB1dC1ncm91cC1maWVsZCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmbGV4OiAxIDEgMHB4O1xuICBtaW4td2lkdGg6IDA7IH1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDFyZW07IH1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDsgfVxuXG5sZWdlbmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG4uZmllbGRzZXQge1xuICBtYXJnaW46IDEuMTI1cmVtIDA7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7IH1cbiAgLmZpZWxkc2V0IGxlZ2VuZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4xODc1cmVtO1xuICAgIHBhZGRpbmc6IDAgMC4xODc1cmVtOyB9XG5cbnNlbGVjdCB7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6IHJnYiUyODEzOCwgMTM4LCAxMzglMjknPjwvcG9seWdvbj48L3N2Zz5cIik7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTFyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09XCIpOyB9IH1cbiAgc2VsZWN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICNjYWNhY2E7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgc2VsZWN0OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2M0YjM3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjllY2VhOyB9XG4gIC5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNjYzRiMzc7IH1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2NjNGIzNzsgfVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjY2M0YjM3OyB9XG4gIC5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5hY2NvcmRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIC5hY2NvcmRpb25bZGlzYWJsZWRdIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uYWNjb3JkaW9uLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzE3NzliYTsgfVxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG4gIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cbiAgLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICBjb250ZW50OiAnKyc7IH1cbiAgLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMjAxMyc7IH1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7IH1cbiAgOmxhc3QtY2hpbGQgPiAuYWNjb3JkaW9uLWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7IH1cblxuLmFjY29yZGlvbi1tZW51IGxpIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmFjY29yZGlvbi1tZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cblxuLmFjY29yZGlvbi1tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogI2ZlZmVmZSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICByaWdodDogMXJlbTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tbGVmdCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICByaWdodDogMXJlbTtcbiAgbGVmdDogYXV0bzsgfVxuXG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tcmlnaHQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFyZW07IH1cblxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD0ndHJ1ZSddID4gYTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOyB9XG5cbi5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmhhcy1zdWJtZW51LXRvZ2dsZSA+IGEge1xuICBtYXJnaW4tcmlnaHQ6IDQwcHg7IH1cblxuLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLnN1Ym1lbnUtdG9nZ2xlOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmVmZWZlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiBhdXRvOyB9XG5cbi5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ106OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOyB9XG5cbi5zdWJtZW51LXRvZ2dsZS10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7IH1cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDIuMWVtO1xuICBwYWRkaW5nOiAwLjNlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmb250LXNpemU6IDAuNnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYmFkZ2UucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYmFkZ2Uuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjNzY3Njc2O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5iYWRnZS5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5iYWRnZS53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5iYWRnZS5hbGVydCB7XG4gICAgYmFja2dyb3VuZDogI2NjNGIzNztcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuXG4uYnJlYWRjcnVtYnMge1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmJyZWFkY3J1bWJzOjpiZWZvcmUsIC5icmVhZGNydW1iczo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5icmVhZGNydW1iczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5icmVhZGNydW1icyBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgY29sb3I6ICMwYTBhMGE7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAuYnJlYWRjcnVtYnMgbGk6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luOiAwIDAuNzVyZW07XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgY29udGVudDogXCIvXCI7XG4gICAgICBjb2xvcjogI2NhY2FjYTsgfVxuICAuYnJlYWRjcnVtYnMgYSB7XG4gICAgY29sb3I6ICMxNzc5YmE7IH1cbiAgICAuYnJlYWRjcnVtYnMgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuYnJlYWRjcnVtYnMgLmRpc2FibGVkIHtcbiAgICBjb2xvcjogI2NhY2FjYTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5idXR0b24tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLmJ1dHRvbi1ncm91cDo6YmVmb3JlLCAuYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmJ1dHRvbi1ncm91cDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5idXR0b24tZ3JvdXAgLmJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDFweDtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5idXR0b24tZ3JvdXAgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAuYnV0dG9uLWdyb3VwLnRpbnkgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07IH1cbiAgLmJ1dHRvbi1ncm91cC5zbWFsbCAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLmJ1dHRvbi1ncm91cC5sYXJnZSAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMjYxOTU7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU1ZTVlO1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzhiMDA7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTUzYjJhO1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbiB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b246bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24ge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5jYWxsb3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuICAuY2FsbG91dCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuY2FsbG91dCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYWxsb3V0LnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkN2VjZmE7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5jYWxsb3V0LnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMWZhZWE7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNhbGxvdXQud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNkOTtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuY2FsbG91dC5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZTRlMTtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuY2FsbG91dC5zbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfVxuICAuY2FsbG91dC5sYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07IH1cblxuLmNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5jYXJkID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQtZGl2aWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2OyB9XG4gIC5jYXJkLWRpdmlkZXIgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FyZC1zZWN0aW9uIHtcbiAgZmxleDogMSAwIGF1dG87XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLmNhcmQtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLWltYWdlIHtcbiAgbWluLWhlaWdodDogMXB4OyB9XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjOGE4YThhO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5jbG9zZS1idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNsb3NlLWJ1dHRvbi5zbWFsbCB7XG4gICAgcmlnaHQ6IDAuNjZyZW07XG4gICAgdG9wOiAwLjMzZW07XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAuY2xvc2UtYnV0dG9uLCAuY2xvc2UtYnV0dG9uLm1lZGl1bSB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLm1lbnUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSBsaSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAubWVudSBhLFxuICAubWVudSAuYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cbiAgLm1lbnUgaW5wdXQsXG4gIC5tZW51IHNlbGVjdCxcbiAgLm1lbnUgYSxcbiAgLm1lbnUgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tZW51IGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLm1lbnUsIC5tZW51Lmhvcml6b250YWwge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZW51LnZlcnRpY2FsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5tZW51LmV4cGFuZGVkIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIC5tZW51LnNpbXBsZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5tZW51LnNpbXBsZSBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gICAgLm1lbnUuc2ltcGxlIGEge1xuICAgICAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tZW51Lm1lZGl1bS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAubWVudS5tZWRpdW0tdmVydGljYWwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLm1lbnUubWVkaXVtLWV4cGFuZGVkIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICAubWVudS5tZWRpdW0tc2ltcGxlIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZW51LmxhcmdlLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51LmxhcmdlLXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51LmxhcmdlLWV4cGFuZGVkIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICAubWVudS5sYXJnZS1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIC5tZW51Lm5lc3RlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIC5tZW51Lmljb25zIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lbnUuaWNvbi10b3AgYSwgLm1lbnUuaWNvbi1yaWdodCBhLCAubWVudS5pY29uLWJvdHRvbSBhLCAubWVudS5pY29uLWxlZnQgYSB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVudS5pY29uLWxlZnQgbGkgYSB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tbGVmdCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgc3ZnIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuICAubWVudS5pY29uLXJpZ2h0IGxpIGEge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tcmlnaHQgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2ZyB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTsgfVxuICAubWVudS5pY29uLXRvcCBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLXRvcCBsaSBhIGltZyxcbiAgICAubWVudS5pY29uLXRvcCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi10b3AgbGkgYSBzdmcge1xuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpLFxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5tZW51IC5hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5tZW51LmFsaWduLWxlZnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubWVudS5hbGlnbi1yaWdodCBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgLm1lbnUuYWxpZ24tcmlnaHQgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubWVudS5hbGlnbi1jZW50ZXIgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAubWVudS5hbGlnbi1jZW50ZXIgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51IC5tZW51LXRleHQge1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLm1lbnUtY2VudGVyZWQgPiAubWVudSBsaSAuc3VibWVudSBsaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5tZW51LWljb246OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICNmZWZlZmUsIDAgMTRweCAwICNmZWZlZmU7XG4gICAgY29udGVudDogJyc7IH1cbiAgLm1lbnUtaWNvbjpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjY2FjYWNhLCAwIDE0cHggMCAjY2FjYWNhOyB9XG5cbi5tZW51LWljb24uZGFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm1lbnUtaWNvbi5kYXJrOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjMGEwYTBhLCAwIDE0cHggMCAjMGEwYTBhO1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICM4YThhOGE7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjOGE4YThhLCAwIDE0cHggMCAjOGE4YThhOyB9XG5cbi5pcy1kcmlsbGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmlzLWRyaWxsZG93biBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmlzLWRyaWxsZG93bi5hbmltYXRlLWhlaWdodCB7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7IH1cblxuLmRyaWxsZG93biBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7IH1cblxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyOyB9XG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZSB7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWNsb3Npbmcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuICAuZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSBhIHtcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4uZHJpbGxkb3duIC5uZXN0ZWQuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5kcmlsbGRvd24gLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgbWluLWhlaWdodDogMTAwJTsgfVxuXG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxNzc5YmE7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgcmlnaHQ6IDFyZW07IH1cblxuLmRyaWxsZG93bi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxNzc5YmE7XG4gIHJpZ2h0OiAxcmVtO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5kcmlsbGRvd24uYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFyZW07IH1cblxuLmRyaWxsZG93biAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07IH1cblxuLmRyb3Bkb3duLXBhbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMzAwcHg7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5kcm9wZG93bi1wYW5lLmlzLW9wZW5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5kcm9wZG93bi1wYW5lLmlzLW9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDsgfVxuXG4uZHJvcGRvd24tcGFuZS5zbWFsbCB7XG4gIHdpZHRoOiAyMDBweDsgfVxuXG4uZHJvcGRvd24tcGFuZS5sYXJnZSB7XG4gIHdpZHRoOiA0MDBweDsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiA1cHg7XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IC0zcHg7IH1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5kcm9wZG93bi5tZW51IGEge1xuICBvdXRsaW5lOiAwOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMTc3OWJhOyB9XG5cbi5uby1qcyAuZHJvcGRvd24ubWVudSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmRyb3Bkb3duLm1lbnUgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwO1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bzsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICByaWdodDogMTRweDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhOyB9IH1cblxuLmRyb3Bkb3duLm1lbnUuYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bzsgfVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gIHdpZHRoOiAxMDBweDsgfVxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbC5hbGlnbi1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTZweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlOyB9XG4gIC5kcm9wZG93biAuaXMtZHJvcGRvd24tc3VibWVudSBhIHtcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51ID4gbGkge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJlc3BvbnNpdmUtZW1iZWQsXG4uZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5yZXNwb25zaXZlLWVtYmVkIGlmcmFtZSxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LFxuICAucmVzcG9uc2l2ZS1lbWJlZCBlbWJlZCxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgdmlkZW8sXG4gIC5mbGV4LXZpZGVvIGlmcmFtZSxcbiAgLmZsZXgtdmlkZW8gb2JqZWN0LFxuICAuZmxleC12aWRlbyBlbWJlZCxcbiAgLmZsZXgtdmlkZW8gdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLnJlc3BvbnNpdmUtZW1iZWQud2lkZXNjcmVlbixcbiAgLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmxhYmVsLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmxhYmVsLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogIzc2NzY3NjtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAubGFiZWwuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAubGFiZWwud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAubGFiZWwuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICNjYzRiMzc7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5tZWRpYS1vYmplY3QgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfSB9XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb246bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24gPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ubWFpbi1zZWN0aW9uIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG5cbi5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLCB2aXNpYmlsaXR5IDAuNXMgZWFzZTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTQsIDI1NCwgMjU0LCAwLjI1KTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtdmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtY2xvc2FibGUge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLW92ZXJsYXktYWJzb2x1dGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLW92ZXJsYXktZml4ZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4ub2ZmLWNhbnZhcy13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5vZmYtY2FudmFzIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjMkMzODQwOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub2ZmLWNhbnZhcyB7XG4gICAgb3V0bGluZTogMDsgfVxuICAub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHotaW5kZXg6IDEyOyB9XG4gIC5vZmYtY2FudmFzLmlzLWNsb3NlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogMTM7IH1cbiAgICAub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDEwLCAxMCwgMTAsIDAuNyk7IH1cbiAgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICMyQzM4NDA7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogMTI7IH1cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgICB6LWluZGV4OiAxMzsgfVxuICAgIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTsgfVxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG4ucG9zaXRpb24tbGVmdCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB3aWR0aDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWxlZnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfVxuICAucG9zaXRpb24tbGVmdC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IC0xM3B4IDAgMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpOyB9XG5cbi5wb3NpdGlvbi1yaWdodCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfVxuICAucG9zaXRpb24tcmlnaHQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAxM3B4IDAgMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpOyB9XG5cbi5wb3NpdGlvbi10b3Age1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBoZWlnaHQ6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tdG9wLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7IH1cbiAgLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLTEzcHggMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpOyB9XG5cbi5wb3NpdGlvbi1ib3R0b20ge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBoZWlnaHQ6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWJvdHRvbS5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTsgfVxuICAucG9zaXRpb24tYm90dG9tLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxM3B4IDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTsgfVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtbGVmdCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtYm90dG9tIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm9yYml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5vcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5vcmJpdC1zbGlkZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLm9yYml0LXNsaWRlLm5vLW1vdGlvbnVpLmlzLWFjdGl2ZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7IH1cblxuLm9yYml0LWZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG4ub3JiaXQtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7IH1cblxuLm9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTtcbiAgY29sb3I6ICNmZWZlZmU7IH1cblxuLm9yYml0LXByZXZpb3VzLCAub3JiaXQtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGNvbG9yOiAjZmVmZWZlOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub3JiaXQtcHJldmlvdXMsIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub3JiaXQtbmV4dCB7XG4gICAgb3V0bGluZTogMDsgfVxuICAub3JiaXQtcHJldmlvdXM6aG92ZXIsIC5vcmJpdC1uZXh0OmhvdmVyLCAub3JiaXQtcHJldmlvdXM6YWN0aXZlLCAub3JiaXQtbmV4dDphY3RpdmUsIC5vcmJpdC1wcmV2aW91czpmb2N1cywgLm9yYml0LW5leHQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTsgfVxuXG4ub3JiaXQtcHJldmlvdXMge1xuICBsZWZ0OiAwOyB9XG5cbi5vcmJpdC1uZXh0IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7IH1cblxuLm9yYml0LWJ1bGxldHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDAuOHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1idWxsZXRzIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vcmJpdC1idWxsZXRzIGJ1dHRvbiB7XG4gICAgd2lkdGg6IDEuMnJlbTtcbiAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICBtYXJnaW46IDAuMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTsgfVxuICAgIC5vcmJpdC1idWxsZXRzIGJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhOyB9XG4gICAgLm9yYml0LWJ1bGxldHMgYnV0dG9uLmlzLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhOyB9XG5cbi5wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLnBhZ2luYXRpb246OmJlZm9yZSwgLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5wYWdpbmF0aW9uIGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMDYyNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wYWdpbmF0aW9uIGxpOmxhc3QtY2hpbGQsIC5wYWdpbmF0aW9uIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnaW5hdGlvbiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG4gIC5wYWdpbmF0aW9uIGEsXG4gIC5wYWdpbmF0aW9uIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAucGFnaW5hdGlvbiBhOmhvdmVyLFxuICAgIC5wYWdpbmF0aW9uIGJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTZlNmU2OyB9XG4gIC5wYWdpbmF0aW9uIC5jdXJyZW50IHtcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgLnBhZ2luYXRpb24gLmRpc2FibGVkIHtcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgY29sb3I6ICNjYWNhY2E7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5wYWdpbmF0aW9uIC5kaXNhYmxlZDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAucGFnaW5hdGlvbiAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgY29udGVudDogJ1xcMjAyNic7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cblxuLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIGNvbnRlbnQ6ICdcXDAwYWInOyB9XG5cbi5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4ucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgY29udGVudDogJ1xcMDBiYic7IH1cblxuLnByb2dyZXNzIHtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhOyB9XG4gIC5wcm9ncmVzcy5wcmltYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTsgfVxuICAucHJvZ3Jlc3Muc2Vjb25kYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjsgfVxuICAucHJvZ3Jlc3Muc3VjY2VzcyAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7IH1cbiAgLnByb2dyZXNzLndhcm5pbmcgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwOyB9XG4gIC5wcm9ncmVzcy5hbGVydCAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7IH1cblxuLnByb2dyZXNzLW1ldGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7IH1cblxuLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLnNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTsgfVxuXG4uc2xpZGVyLWZpbGwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAuc2xpZGVyLWZpbGwuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7IH1cblxuLnNsaWRlci1oYW5kbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNHJlbTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnNsaWRlci1oYW5kbGUge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLnNsaWRlci1oYW5kbGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNDY3OWU7IH1cbiAgLnNsaWRlci1oYW5kbGUuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7IH1cblxuLnNsaWRlci5kaXNhYmxlZCxcbi5zbGlkZXJbZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uc2xpZGVyLnZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMC41cmVtO1xuICBoZWlnaHQ6IDEyLjVyZW07XG4gIG1hcmdpbjogMCAxLjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTsgfVxuICAuc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItZmlsbCB7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAwLjVyZW07XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAuc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogMS40cmVtO1xuICAgIGhlaWdodDogMS40cmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuXG4uc3RpY2t5LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uc3RpY2t5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zdGlja3kuaXMtc3R1Y2sge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zdGlja3kuaXMtc3R1Y2suaXMtYXQtdG9wIHtcbiAgICB0b3A6IDA7IH1cbiAgLnN0aWNreS5pcy1zdHVjay5pcy1hdC1ib3R0b20ge1xuICAgIGJvdHRvbTogMDsgfVxuXG4uc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogYXV0bzsgfVxuICAuc3RpY2t5LmlzLWFuY2hvcmVkLmlzLWF0LWJvdHRvbSB7XG4gICAgYm90dG9tOiAwOyB9XG5cbmh0bWwuaXMtcmV2ZWFsLW9wZW4ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy15OiBoaWRkZW47IH1cbiAgaHRtbC5pcy1yZXZlYWwtb3Blbi56Zi1oYXMtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7IH1cbiAgaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47IH1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC40NSk7XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cblxuLnJldmVhbCB7XG4gIHotaW5kZXg6IDEwMDY7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAucmV2ZWFsIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICBtaW4taGVpZ2h0OiAwOyB9IH1cbiAgLnJldmVhbCAuY29sdW1uIHtcbiAgICBtaW4td2lkdGg6IDA7IH1cbiAgLnJldmVhbCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB3aWR0aDogNjAwcHg7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgLnJldmVhbC5jb2xsYXBzZSB7XG4gICAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwudGlueSB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC5zbWFsbCB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC5sYXJnZSB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTsgfSB9XG4gIC5yZXZlYWwuZnVsbCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH0gfVxuICAucmV2ZWFsLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbi5zd2l0Y2gge1xuICBoZWlnaHQ6IDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4uc3dpdGNoLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zd2l0Y2gtcGFkZGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDRyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogI2NhY2FjYTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBpbnB1dCArIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjI1cmVtO1xuICAgIGxlZnQ6IDAuMjVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEuNXJlbTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4gICAgY29udGVudDogJyc7IH1cbiAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTc3OWJhOyB9XG4gICAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgICBsZWZ0OiAyLjI1cmVtOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBpbnB1dDpmb2N1cyB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbi5zd2l0Y2gtYWN0aXZlLCAuc3dpdGNoLWluYWN0aXZlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5zd2l0Y2gtYWN0aXZlIHtcbiAgbGVmdDogOCU7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gLnN3aXRjaC1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zd2l0Y2gtaW5hY3RpdmUge1xuICByaWdodDogMTUlOyB9XG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+IC5zd2l0Y2gtaW5hY3RpdmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnN3aXRjaC50aW55IHtcbiAgaGVpZ2h0OiAxLjVyZW07IH1cbiAgLnN3aXRjaC50aW55IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICBmb250LXNpemU6IDAuNjI1cmVtOyB9XG4gIC5zd2l0Y2gudGlueSAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIHRvcDogMC4yNXJlbTtcbiAgICBsZWZ0OiAwLjI1cmVtO1xuICAgIHdpZHRoOiAxcmVtO1xuICAgIGhlaWdodDogMXJlbTsgfVxuICAuc3dpdGNoLnRpbnkgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgbGVmdDogMS43NXJlbTsgfVxuXG4uc3dpdGNoLnNtYWxsIHtcbiAgaGVpZ2h0OiAxLjc1cmVtOyB9XG4gIC5zd2l0Y2guc21hbGwgLnN3aXRjaC1wYWRkbGUge1xuICAgIHdpZHRoOiAzLjVyZW07XG4gICAgaGVpZ2h0OiAxLjc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuc3dpdGNoLnNtYWxsIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgdG9wOiAwLjI1cmVtO1xuICAgIGxlZnQ6IDAuMjVyZW07XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgaGVpZ2h0OiAxLjI1cmVtOyB9XG4gIC5zd2l0Y2guc21hbGwgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgbGVmdDogMnJlbTsgfVxuXG4uc3dpdGNoLmxhcmdlIHtcbiAgaGVpZ2h0OiAyLjVyZW07IH1cbiAgLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6IDVyZW07XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5zd2l0Y2gubGFyZ2UgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICB0b3A6IDAuMjVyZW07XG4gICAgbGVmdDogMC4yNXJlbTtcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07IH1cbiAgLnN3aXRjaC5sYXJnZSBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBsZWZ0OiAyLjc1cmVtOyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YxZjFmMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOyB9XG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICB0aGVhZCB0cixcbiAgdGZvb3QgdHIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIHRoZWFkIHRoLFxuICB0aGVhZCB0ZCxcbiAgdGZvb3QgdGgsXG4gIHRmb290IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICB0Ym9keSB0aCxcbiAgdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgfVxuICB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTsgfVxuICB0YWJsZS51bnN0cmlwZWQgdGJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7IH1cbiAgICB0YWJsZS51bnN0cmlwZWQgdGJvZHkgdHIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwOyB9IH1cblxudGFibGUuc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG5cbnRhYmxlLmhvdmVyIHRoZWFkIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMzsgfVxuXG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7IH1cblxudGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5OyB9XG5cbnRhYmxlLmhvdmVyOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7IH1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxuLnRhYnMge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAudGFiczo6YmVmb3JlLCAudGFiczo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC50YWJzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLnRhYnMudmVydGljYWwgPiBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87IH1cblxuLnRhYnMuc2ltcGxlID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMDsgfVxuICAudGFicy5zaW1wbGUgPiBsaSA+IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi50YWJzLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhOyB9XG4gIC50YWJzLnByaW1hcnkgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMTY3M2IxOyB9XG5cbi50YWJzLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnRhYnMtdGl0bGUgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICMxNzc5YmE7IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnRhYnMtdGl0bGUgPiBhIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAudGFicy10aXRsZSA+IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICAgIGNvbG9yOiAjMTQ2OGEwOyB9XG4gICAgLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gICAgICBjb2xvcjogIzE3NzliYTsgfVxuXG4udGFicy1jb250ZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cblxuLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTsgfVxuICAudGFicy1wYW5lbC5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi50aHVtYm5haWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiBzb2xpZCA0cHggI2ZlZmVmZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbiAgbGluZS1oZWlnaHQ6IDA7IH1cblxuYS50aHVtYm5haWwge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0OyB9XG4gIGEudGh1bWJuYWlsOmhvdmVyLCBhLnRodW1ibmFpbDpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDZweCAxcHggcmdiYSgyMywgMTIxLCAxODYsIDAuNSk7IH1cbiAgYS50aHVtYm5haWwgaW1hZ2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLnRpdGxlLWJhciB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYmFja2dyb3VuZDogIzJDMzg0MDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAudGl0bGUtYmFyIC5tZW51LWljb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuXG4udGl0bGUtYmFyLWxlZnQsXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgZmxleDogMSAxIDBweDsgfVxuXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRpdGxlLWJhci10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmhhcy10aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjOGE4YThhO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY3Vyc29yOiBoZWxwOyB9XG5cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDAuNjQ5NXJlbSk7XG4gIHotaW5kZXg6IDEyMDA7XG4gIG1heC13aWR0aDogMTByZW07XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBjb2xvcjogI2ZlZmVmZTsgfVxuICAudG9vbHRpcDo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLnRvb2x0aXAuYm90dG9tOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYTBhMGE7XG4gICAgYm90dG9tOiAxMDAlOyB9XG4gIC50b29sdGlwLmJvdHRvbS5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAudG9vbHRpcC50b3A6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzBhMGEwYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDEwMCU7XG4gICAgYm90dG9tOiBhdXRvOyB9XG4gIC50b29sdGlwLnRvcC5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAudG9vbHRpcC5sZWZ0OjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYTBhMGE7XG4gICAgbGVmdDogMTAwJTsgfVxuICAudG9vbHRpcC5sZWZ0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC50b29sdGlwLnJpZ2h0OjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwYTBhMGEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAudG9vbHRpcC5yaWdodC5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAudG9vbHRpcC5hbGlnbi10b3A6OmJlZm9yZSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogMTAlOyB9XG4gIC50b29sdGlwLmFsaWduLWJvdHRvbTo6YmVmb3JlIHtcbiAgICBib3R0b206IDEwJTtcbiAgICB0b3A6IGF1dG87IH1cbiAgLnRvb2x0aXAuYWxpZ24tbGVmdDo6YmVmb3JlIHtcbiAgICBsZWZ0OiAxMCU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnRvb2x0aXAuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAlOyB9XG5cbi50b3AtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC41cmVtO1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnRvcC1iYXIsXG4gIC50b3AtYmFyIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XG4gIC50b3AtYmFyIGlucHV0IHtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICAudG9wLWJhciAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAudG9wLWJhciBpbnB1dC5idXR0b24ge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC50b3AtYmFyIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudG9wLWJhciB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAgICAgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1sZWZ0LFxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLWxlZnQsXG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuXG4udG9wLWJhci10aXRsZSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXJnaW46IDAuNXJlbSAxcmVtIDAuNXJlbSAwOyB9XG5cbi50b3AtYmFyLWxlZnQsXG4udG9wLWJhci1yaWdodCB7XG4gIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwOyB9XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG5cbi5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4uYWxpZ24tbGVmdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tanVzdGlmeSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4uYWxpZ24tc3BhY2VkIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxuLmFsaWduLWxlZnQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlci52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1zZWxmLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLWJvdHRvbSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc2VsZi1taWRkbGUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuXG4uYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG4uc21hbGwtb3JkZXItMiB7XG4gIG9yZGVyOiAyOyB9XG5cbi5zbWFsbC1vcmRlci0zIHtcbiAgb3JkZXI6IDM7IH1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDsgfVxuXG4uc21hbGwtb3JkZXItNSB7XG4gIG9yZGVyOiA1OyB9XG5cbi5zbWFsbC1vcmRlci02IHtcbiAgb3JkZXI6IDY7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5tZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5tZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLmxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmZsZXgtY2hpbGQtYXV0byB7XG4gIGZsZXg6IDEgMSBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLWdyb3cge1xuICBmbGV4OiAxIDAgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1zaHJpbmsge1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuXG4uZmxleC1kaXItcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4uZmxleC1kaXItcm93LXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cblxuLmZsZXgtZGlyLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTsgfVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cblxuLnNsaWRlLW91dC11cC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgfVxuXG4uZmFkZS1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsgfVxuXG4uZmFkZS1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5mYWRlLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNsb3cge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50OyB9XG5cbi5mYXN0IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDsgfVxuXG4ubGluZWFyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50OyB9XG5cbi5lYXNlIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLnNob3J0LWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDsgfVxuXG4ubG9uZy1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7IH1cblxuLnNoYWtlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlLTc7IH1cblxuQGtleWZyYW1lcyBzaGFrZS03IHtcbiAgMCUsIDEwJSwgMjAlLCAzMCUsIDQwJSwgNTAlLCA2MCUsIDcwJSwgODAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg3JSk7IH1cbiAgNSUsIDE1JSwgMjUlLCAzNSUsIDQ1JSwgNTUlLCA2NSUsIDc1JSwgODUlLCA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNyUpOyB9IH1cblxuLnNwaW4tY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjsgfVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfSB9XG5cbi5zcGluLWNjdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWNjdy0xdHVybjsgfVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY2N3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xdHVybik7IH0gfVxuXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHdpZ2dsZS03ZGVnOyB9XG5cbkBrZXlmcmFtZXMgd2lnZ2xlLTdkZWcge1xuICA0MCUsIDUwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3ZGVnKTsgfVxuICAzNSUsIDQ1JSwgNTUlLCA2NSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKTsgfVxuICAwJSwgMzAlLCA3MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9IH1cblxuLnNoYWtlLFxuLnNwaW4tY3csXG4uc3Bpbi1jY3csXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtczsgfVxuXG4uaW5maW5pdGUge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsgfVxuXG4uc2xvdyB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDsgfVxuXG4uZmFzdCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDsgfVxuXG4ubGluZWFyIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5zaG9ydC1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDsgfVxuXG4ubG9uZy1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDsgfVxuXG4vKlxyXG4gIE15IGN1c3RvbSBzdHlsZXM6XHJcbiAgQWRkIHlvdXIgc2NzcyBmaWxlcyBiZWxvdyB0byBzdHJ1Y3R1cmUgeW91ciBwcm9qZWN0IHN0eWxlc1xyXG4qL1xuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5zbGljay1saXN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kOyB9XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lOyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiEgbG9jb21vdGl2ZS1zY3JvbGwgdjQuMS4zIHwgTUlUIExpY2Vuc2UgfCBodHRwczovL2dpdGh1Yi5jb20vbG9jb21vdGl2ZW10bC9sb2NvbW90aXZlLXNjcm9sbCAqL1xuaHRtbC5oYXMtc2Nyb2xsLXNtb290aCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuaHRtbC5oYXMtc2Nyb2xsLWRyYWdnaW5nIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4uaGFzLXNjcm9sbC1zbW9vdGggYm9keSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmhhcy1zY3JvbGwtc21vb3RoIFtkYXRhLXNjcm9sbC1jb250YWluZXJdIHtcbiAgbWluLWhlaWdodDogMTAwdmg7IH1cblxuW2RhdGEtc2Nyb2xsLWRpcmVjdGlvbj1cImhvcml6b250YWxcIl0gW2RhdGEtc2Nyb2xsLWNvbnRhaW5lcl0ge1xuICBoZWlnaHQ6IDEwMHZoO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuW2RhdGEtc2Nyb2xsLWRpcmVjdGlvbj1cImhvcml6b250YWxcIl0gW2RhdGEtc2Nyb2xsLXNlY3Rpb25dIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLmMtc2Nyb2xsYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTFweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgcmlnaHQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzLCBvcGFjaXR5IDAuM3M7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmMtc2Nyb2xsYmFyOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMS40NSk7IH1cblxuLmMtc2Nyb2xsYmFyOmhvdmVyLCAuaGFzLXNjcm9sbC1zY3JvbGxpbmcgLmMtc2Nyb2xsYmFyLCAuaGFzLXNjcm9sbC1kcmFnZ2luZyAuYy1zY3JvbGxiYXIge1xuICBvcGFjaXR5OiAxOyB9XG5cbltkYXRhLXNjcm9sbC1kaXJlY3Rpb249XCJob3Jpem9udGFsXCJdIC5jLXNjcm9sbGJhciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwcHg7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgxKTsgfVxuXG5bZGF0YS1zY3JvbGwtZGlyZWN0aW9uPVwiaG9yaXpvbnRhbFwiXSAuYy1zY3JvbGxiYXI6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlWSgxLjMpOyB9XG5cbi5jLXNjcm9sbGJhcl90aHVtYiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIG9wYWNpdHk6IDAuNTtcbiAgd2lkdGg6IDdweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbWFyZ2luOiAycHg7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xuICBjdXJzb3I6IGdyYWI7IH1cblxuLmhhcy1zY3JvbGwtZHJhZ2dpbmcgLmMtc2Nyb2xsYmFyX3RodW1iIHtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nOyB9XG5cbltkYXRhLXNjcm9sbC1kaXJlY3Rpb249XCJob3Jpem9udGFsXCJdIC5jLXNjcm9sbGJhcl90aHVtYiB7XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IDA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ZvbnRlbGxvLmVvdD8zMzEwMDg4MVwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9mb250ZWxsby5lb3Q/MzMxMDA4ODEjaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2ZvbnRlbGxvLndvZmYyPzMzMTAwODgxXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9mb250ZWxsby53b2ZmPzMzMTAwODgxXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL2ZvbnRlbGxvLnR0Zj8zMzEwMDg4MVwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvZm9udGVsbG8uc3ZnPzMzMTAwODgxI2ZvbnRlbGxvXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbi8qIENocm9tZSBoYWNrOiBTVkcgaXMgcmVuZGVyZWQgbW9yZSBzbW9vdGggaW4gV2luZG96emUuIDEwMCUgbWFnaWMsIHVuY29tbWVudCBpZiB5b3UgbmVlZCBpdC4gKi9cbi8qIE5vdGUsIHRoYXQgd2lsbCBicmVhayBoaW50aW5nISBJbiBvdGhlciBPUy1lcyBmb250IHdpbGwgYmUgbm90IGFzIHNoYXJwIGFzIGl0IGNvdWxkIGJlICovXG4vKlxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzowKSB7XG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICAgIHNyYzogdXJsKCcuLi9mb250L2ZvbnRlbGxvLnN2Zz8zMzEwMDg4MSNmb250ZWxsbycpIGZvcm1hdCgnc3ZnJyk7XG4gIH1cbn1cbiovXG5bY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcImZvbnRlbGxvXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3BlYWs6IG5ldmVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgd2lkdGg6IDFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuMmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8qIG9wYWNpdHk6IC44OyAqL1xuICAvKiBGb3Igc2FmZXR5IC0gcmVzZXQgcGFyZW50IHN0eWxlcywgdGhhdCBjYW4gYnJlYWsgZ2x5cGggY29kZXMqL1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIC8qIGZpeCBidXR0b25zIGhlaWdodCwgZm9yIHR3aXR0ZXIgYm9vdHN0cmFwICovXG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIC8qIEFuaW1hdGlvbiBjZW50ZXIgY29tcGVuc2F0aW9uIC0gbWFyZ2lucyBzaG91bGQgYmUgc3ltbWV0cmljICovXG4gIC8qIHJlbW92ZSBpZiBub3QgbmVlZGVkICovXG4gIG1hcmdpbi1sZWZ0OiAuMmVtO1xuICAvKiB5b3UgY2FuIGJlIG1vcmUgY29tZm9ydGFibGUgd2l0aCBpbmNyZWFzZWQgaWNvbnMgc2l6ZSAqL1xuICAvKiBmb250LXNpemU6IDEyMCU7ICovXG4gIC8qIEZvbnQgc21vb3RoaW5nLiBUaGF0IHdhcyB0YWtlbiBmcm9tIFRXQlMgKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC8qIFVuY29tbWVudCBmb3IgM0QgZWZmZWN0ICovXG4gIC8qIHRleHQtc2hhZG93OiAxcHggMXB4IDFweCByZ2JhKDEyNywgMTI3LCAxMjcsIDAuMyk7ICovIH1cblxuLmljb24tcmlnaHQtb3Blbi1taW5pOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU4MDAnOyB9XG5cbi8qICfuoIAnICovXG4uaWNvbi1yaWdodC1vcGVuLWJpZzpiZWZvcmUge1xuICBjb250ZW50OiAnXFxlODAxJzsgfVxuXG4vKiAn7qCBJyAqL1xuLmljb24tbGVmdC1vcGVuLW1pbmk6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwMic7IH1cblxuLyogJ+6ggicgKi9cbi5pY29uLXN0YXI6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwMyc7IH1cblxuLyogJ+6ggycgKi9cbi5pY29uLXBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU4MDQnOyB9XG5cbi8qICfuoIQnICovXG4uaWNvbi11cC1vcGVuLW1pbmk6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwNSc7IH1cblxuLyogJ+6ghScgKi9cbi5pY29uLXBsYXktMTpiZWZvcmUge1xuICBjb250ZW50OiAnXFxlODA2JzsgfVxuXG4vKiAn7qCGJyAqL1xuLmljb24tZG93bi1vcGVuLW1pbmk6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwNyc7IH1cblxuLyogJ+6ghycgKi9cbi5pY29uLWxvY2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU4MDgnOyB9XG5cbi8qICfuoIgnICovXG4uaWNvbi1naWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU4MDknOyB9XG5cbi8qICfuoIknICovXG4uaWNvbi1jbG9jay0xOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU4MGEnOyB9XG5cbi8qICfuoIonICovXG4uaWNvbi1naWZ0LTE6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwYic7IH1cblxuLyogJ+6giycgKi9cbi5pY29uLWdpZnQtMjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxlODBjJzsgfVxuXG4vKiAn7qCMJyAqL1xuLmljb24tZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU4MGQnOyB9XG5cbi8qICfuoI0nICovXG4uaWNvbi1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjA1ZCc7IH1cblxuLyogJ++BnScgKi9cbi5pY29uLXVzZXItMjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDYxJzsgfVxuXG4vKiAn74GhJyAqL1xuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjA5YSc7IH1cblxuLyogJ++CmicgKi9cbi5pY29uLW1lbnU6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjBjOSc7IH1cblxuLyogJ++DiScgKi9cbi5pY29uLWZvb2Q6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjBmNSc7IH1cblxuLyogJ++DtScgKi9cbi5pY29uLWNhbGVuZGFyLWVtcHR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYxMzMnOyB9XG5cbi8qICfvhLMnICovXG4uaWNvbi15b3V0dWJlLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjE2YSc7IH1cblxuLyogJ++FqicgKi9cbi5pY29uLXNuYXBjaGF0LWdob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYyYWMnOyB9XG5cbi8qICfviqwnICovXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYzMDknOyB9XG5cbi8qICfvjIknICovXG4uaWNvbi1saW5rZWRpbi1zcXVhcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYzMGMnOyB9XG5cbi8qICfvjIwnICovXG4uaWNvbi1waW50ZXJlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjMxMic7IH1cblxuLyogJ++MkicgKi9cbmJvZHkge1xuICB3aWR0aDogMTAwdnc7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4ucHJpY2VMb2FkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGZpbHRlcjogYmx1cig1MHB4KTtcbiAgei1pbmRleDogMTA7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm1haW5TbGlkZXIgLnNsaWRlci1mb3IgPiBkaXY6bm90KDpmaXJzdC1jaGlsZCkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5uYXZTbGlkZXIgLnNsaWRlci1uYXYgPiBkaXY6bm90KDpmaXJzdC1jaGlsZCkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5nYWxsZXJ5U2xpZGVyID4gZGl2Om5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguc2xpY2stbGlzdCkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5sb2FkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgei1pbmRleDogMTAwMDAwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2UtaW47XG4gIC8qJl9iYXIge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0aGVpZ2h0OiA1cHg7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICMxY2EyYmM7XHJcblx0XHRib3JkZXItcmFkaXVzOiAxZW07XHJcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0Jjo6YWZ0ZXIge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdFx0Y29udGVudDogXCJcIjtcclxuXHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICNmZmY1LCByZ2JhKCRibHVlLCAwLjg5MSkpO1xyXG5cdFx0XHRhbmltYXRpb246IGxvYWRpbmctYW5pbWF0aW9uIDEuM3MgaW5maW5pdGU7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDFlbTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBrZXlmcmFtZXMgbG9hZGluZy1hbmltYXRpb24ge1xyXG5cdCAgMCUge1xyXG5cdCAgICBsZWZ0OiAtNTAlO1xyXG5cdCAgfVxyXG5cclxuXHQgIDEwMCUge1xyXG5cdCAgICBsZWZ0OiAxNTAlO1xyXG5cdCAgfVxyXG5cdH0qLyB9XG4gIC5sb2FkZXIgaW1nIHtcbiAgICB3aWR0aDogODAlO1xuICAgIG1hcmdpbjogNTBweCBhdXRvOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5sb2FkZXIgaW1nIHtcbiAgICAgICAgd2lkdGg6IDYwJTsgfSB9XG4gIC5sb2FkZXItY29udGFpbmVyIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIHRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAubG9hZGVyLWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiA5MCU7IH0gfVxuICAubG9hZGVyLmZhZGUge1xuICAgIHRvcDogLTEwMHZoOyB9XG4gICAgLmxvYWRlci5mYWRlIC5sb2FkZXItY29udGFpbmVyIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbiAgLmxvYWRlciAuaGVhZGxpbmVzIHtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5sb2FkZXIgLmhlYWRsaW5lcy10cmFjayB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgICBhbmltYXRpb24tbmFtZTogYW5pbWF0aW9uO1xuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiA2cztcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogMnM7XG4gICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuICAgIC5sb2FkZXIgLmhlYWRsaW5lcyBoMiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogIzAwNkQ3NjtcbiAgICAgIGZvbnQtc2l6ZTogNTBweDsgfVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGlvbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNjBweCk7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5sb2FkZXIgLmhlYWRsaW5lcyB7XG4gICAgICBoZWlnaHQ6IDM2cHg7IH1cbiAgICAgIC5sb2FkZXIgLmhlYWRsaW5lcyBoMiB7XG4gICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9XG4gICAgQGtleWZyYW1lcyBhbmltYXRpb24ge1xuICAgICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTsgfVxuICAgICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00MHB4KTsgfVxuICAgICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7IH0gfSB9XG5cbi5zbGljay1zbGlkZXIgaW1nIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmZ1bGxXaWR0aEltZyB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5iYW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5iYW5uZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLmJhbm5lciBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYmFubmVyIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcbiAgICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICAuYmFubmVyLXRleHQge1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICAuYmFubmVyLXRleHQgaDEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0ZXh0LXNoYWRvdzogMCAwIDIwcHggIzAwMDsgfVxuICAgICAgLmJhbm5lci10ZXh0IGgxIHNwYW4ge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEwMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmJhbm5lci10ZXh0IGgxIHNwYW4ge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7IH0gfVxuICAuYmFubmVyLXNjcm9sbCB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogNTBweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgei1pbmRleDogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAyMHB4ICMwMDA7XG4gICAgZm9udC1zaXplOiAxLjJ2dzsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYmFubmVyLXNjcm9sbDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgYm90dG9tOiAtNTBweDsgfVxuICAgICAgLmJhbm5lci1zY3JvbGw6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNkQ3NjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogM3B4O1xuICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDFweCk7XG4gICAgICAgIHRvcDogMzRweDtcbiAgICAgICAgYW5pbWF0aW9uOiBteW1vdmUgM3M7XG4gICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG4gICAgICBAa2V5ZnJhbWVzIG15bW92ZSB7XG4gICAgICAgIC8qZnJvbSB7dG9wOiAyOXB4O31cclxuXHRcdFx0ICB0byB7dG9wOiA2OHB4O30qL1xuICAgICAgICAwJSB7XG4gICAgICAgICAgaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgdG9wOiAzNHB4OyB9XG4gICAgICAgIDUwJSB7XG4gICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgIHRvcDogMzRweDsgfVxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgdG9wOiA3MHB4OyB9IH0gfVxuICAgIC5iYW5uZXItc2Nyb2xsOmhvdmVyLCAuYmFubmVyLXNjcm9sbDpmb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5iYW5uZXIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNTlweCk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5iYW5uZXIge1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDsgfSB9XG5cbi5zdWJwYWdlQmFubmVyIC5iYW5uZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBlbmQ7IH1cbiAgLnN1YnBhZ2VCYW5uZXIgLmJhbm5lciAuYmFubmVyLXRleHQge1xuICAgIG1hcmdpbi1ib3R0b206IDEwdmg7XG4gICAgbWFyZ2luLWxlZnQ6IDZ2dzsgfVxuICAgIC5zdWJwYWdlQmFubmVyIC5iYW5uZXIgLmJhbm5lci10ZXh0IHNwYW4ge1xuICAgICAgbGluZS1oZWlnaHQ6IDE0MHB4OyB9XG5cbi5zbGlkZXJCYW5uZXIge1xuICBoZWlnaHQ6IDEwMHZoO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zbGlkZXJCYW5uZXIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNjBweCk7IH0gfVxuICAuc2xpZGVyQmFubmVyIC5iYW5uZXJTbGlkZSB7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5zbGlkZXJCYW5uZXIgLmJhbm5lclNsaWRlIHZpZGVvIHtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIC8qaGVpZ2h0OiAxMDB2aDtcdFxyXG5cdFx0XHR3aWR0aDogYXV0bzsqL1xuICAgICAgLypAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XHJcblx0XHRcdFx0aGVpZ2h0OiAxMDB2aDtcdFxyXG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0XHR9Ki8gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNsaWRlckJhbm5lciAuYmFubmVyU2xpZGUgdmlkZW8ge1xuICAgICAgICAgIC8qaGVpZ2h0OiBhdXRvO1x0XHJcblx0XHRcdFx0d2lkdGg6IDEwMHZ3OyovXG4gICAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gICAgLnNsaWRlckJhbm5lciAuYmFubmVyU2xpZGUgaW1nIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBpbml0aWFsOyB9XG4gICAgLnNsaWRlckJhbm5lciAuYmFubmVyU2xpZGU6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICAgICAgdG9wOiAwOyB9XG4gICAgLnNsaWRlckJhbm5lciAuYmFubmVyU2xpZGUtdGV4dCB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDsgfVxuICAgICAgLnNsaWRlckJhbm5lciAuYmFubmVyU2xpZGUtdGV4dCBoMSB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLnNsaWRlckJhbm5lciAuYmFubmVyU2xpZGUtdGV4dCBoMSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDsgfSB9XG4gICAgICAgIC5zbGlkZXJCYW5uZXIgLmJhbm5lclNsaWRlLXRleHQgaDEgc3BhbiB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgLnNsaWRlckJhbm5lciAuYmFubmVyU2xpZGUtdGV4dCBoMSBzcGFuIHtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7IH0gfVxuICAgIC5zbGlkZXJCYW5uZXIgLmJhbm5lclNsaWRlLXNjcm9sbCB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogNTBweDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNsaWRlckJhbm5lciAuYmFubmVyU2xpZGUtc2Nyb2xsOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIGJvdHRvbTogLTUwcHg7IH1cbiAgICAgICAgLnNsaWRlckJhbm5lciAuYmFubmVyU2xpZGUtc2Nyb2xsOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2RDc2O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogM3B4O1xuICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMXB4KTtcbiAgICAgICAgICB0b3A6IDM0cHg7XG4gICAgICAgICAgYW5pbWF0aW9uOiBteW1vdmUgM3M7XG4gICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cbiAgICAgICAgQGtleWZyYW1lcyBteW1vdmUge1xuICAgICAgICAgIC8qZnJvbSB7dG9wOiAyOXB4O31cclxuXHRcdFx0XHQgIHRvIHt0b3A6IDY4cHg7fSovXG4gICAgICAgICAgMCUge1xuICAgICAgICAgICAgaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICB0b3A6IDM0cHg7IH1cbiAgICAgICAgICA1MCUge1xuICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgdG9wOiAzNHB4OyB9XG4gICAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICB0b3A6IDcwcHg7IH0gfSB9XG4gICAgICAuc2xpZGVyQmFubmVyIC5iYW5uZXJTbGlkZS1zY3JvbGw6aG92ZXIsIC5zbGlkZXJCYW5uZXIgLmJhbm5lclNsaWRlLXNjcm9sbDpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zbGlkZXJCYW5uZXIgLmJhbm5lclNsaWRlIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNTlweCk7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2xpZGVyQmFubmVyIC5iYW5uZXJTbGlkZSB7XG4gICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7IH0gfVxuXG4uYWJvdXREZXZlbG9wZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmFib3V0RGV2ZWxvcGVyIHtcbiAgICAgIGhlaWdodDogODB2aDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hYm91dERldmVsb3BlciB7XG4gICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkOyB9IH1cbiAgLmFib3V0RGV2ZWxvcGVyOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLmFib3V0RGV2ZWxvcGVyIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hYm91dERldmVsb3BlciBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IGluaXRpYWw7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgLmFib3V0RGV2ZWxvcGVyLXRleHQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmFib3V0RGV2ZWxvcGVyLXRleHQgaDIsIC5hYm91dERldmVsb3Blci10ZXh0IGEsIC5hYm91dERldmVsb3Blci10ZXh0IHNwYW4ge1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuICAgIC5hYm91dERldmVsb3Blci10ZXh0IGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogNXZ3O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0LjV2dzsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmFib3V0RGV2ZWxvcGVyLXRleHQgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogOHZ3OyB9IH1cblxuLnBvcHVwIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB6LWluZGV4OiAxMDAwMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAxMDksIDExOCwgMC44KTsgfVxuICAucG9wdXAub3BlbiB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAucG9wdXBfY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHBhZGRpbmc6IDUwcHggMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDcwJTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAucG9wdXBfY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgcGFkZGluZzogMzBweCAyNXB4OyB9IH1cbiAgLnBvcHVwIC5jbG9zZUJ0biB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAtNjVweDtcbiAgICB0b3A6IC00MHB4O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3B1cCAuY2xvc2VCdG4ge1xuICAgICAgICByaWdodDogMDsgfSB9XG5cbiNjb250YWN0Rm9ybSAjZ2Zvcm1fNCAuZ2ZpZWxkOmZpcnN0LWNoaWxkIHtcbiAgb3JkZXI6IDE7IH1cblxuI2NvbnRhY3RGb3JtICNnZm9ybV80IC5nZmllbGQ6bnRoLWNoaWxkKDIpIHtcbiAgb3JkZXI6IDI7IH1cblxuI2NvbnRhY3RGb3JtICNnZm9ybV80IC5nZmllbGQ6bnRoLWNoaWxkKDMpIHtcbiAgb3JkZXI6IDQ7IH1cblxuI2NvbnRhY3RGb3JtICNnZm9ybV80IC5nZmllbGQ6bnRoLWNoaWxkKDQpIHtcbiAgb3JkZXI6IDU7IH1cblxuI2NvbnRhY3RGb3JtICNnZm9ybV80IC5nZmllbGQ6bnRoLWNoaWxkKDUpIHtcbiAgb3JkZXI6IDM7IH1cblxuI2NvbnRhY3RGb3JtICNnZm9ybV80IC5nZmllbGQ6bnRoLWNoaWxkKDYpIHtcbiAgb3JkZXI6IDY7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2NvbnRhY3RGb3JtIC5nZm9ybV93cmFwcGVyIC5nZmllbGQjZmllbGRfM181LCAjY29udGFjdEZvcm0gLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCNmaWVsZF80XzUsICNjb250YWN0Rm9ybSAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkI2ZpZWxkXzExXzUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICNjb250YWN0Rm9ybSAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkI2ZpZWxkXzNfNSAuZ2lucHV0X2NvbnRhaW5lciwgI2NvbnRhY3RGb3JtIC5nZm9ybV93cmFwcGVyIC5nZmllbGQjZmllbGRfNF81IC5naW5wdXRfY29udGFpbmVyLCAjY29udGFjdEZvcm0gLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCNmaWVsZF8xMV81IC5naW5wdXRfY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCBpbnB1dCwgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCB0ZXh0YXJlYSwgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCBzZWxlY3Qge1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDAuNXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCBzZWxlY3Qge1xuICBjb2xvcjogI2JiYjsgfVxuICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIHNlbGVjdDppbnZhbGlkLCAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIHNlbGVjdCBvcHRpb25bdmFsdWU9XCJcIl0ge1xuICAgIGNvbG9yOiAjYmJiOyB9XG4gIC5nZm9ybV93cmFwcGVyIC5nZmllbGQgc2VsZWN0IG9wdGlvbiB7XG4gICAgY29sb3I6ICMwMDA7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCBpbnB1dDo6cGxhY2Vob2xkZXIsIC5nZm9ybV93cmFwcGVyIC5nZmllbGQgc2VsZWN0OjpwbGFjZWhvbGRlciwgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2JiYjsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDsgfVxuICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIGlucHV0IHtcbiAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMXZ3O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciBpbnB1dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogNHZ3OyB9IH1cbiAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIGlucHV0OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMEEzOUQ7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuXG4uZ2Zvcm1fd3JhcHBlci5ncmF2aXR5LXRoZW1lIC5nZm9ybV92YWxpZGF0aW9uX2Vycm9ycyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZ2Zvcm1fd3JhcHBlci5ncmF2aXR5LXRoZW1lIC5nZm9ybV92YWxpZGF0aW9uX2Vycm9ycyBoMiB7XG4gICAgY29sb3I6ICNjMDJiMGEgIWltcG9ydGFudDsgfVxuXG4uZ2Zvcm1fd3JhcHBlci5ncmF2aXR5LXRoZW1lIC5nZmllbGRfdmFsaWRhdGlvbl9tZXNzYWdlLCAuZ2Zvcm1fd3JhcHBlci5ncmF2aXR5LXRoZW1lIC52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDBweCAyNHB4IDEwcHggIWltcG9ydGFudDsgfVxuXG4ubm9BcnJvd1NsaWRlciB7XG4gIHBhZGRpbmctbGVmdDogMTUwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ub0Fycm93U2xpZGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDsgfSB9XG4gIC5ub0Fycm93U2xpZGVyIC5zbGlkZXItbm8ge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBmb250LWZhbWlseTogRWxNZXNzaXJpO1xuICAgIGNvbG9yOiByZ2JhKDAsIDEwOSwgMTE4LCAwLjQpO1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5ub0Fycm93U2xpZGVyIC5zbGlkZXItbm8gc3BhbiB7XG4gICAgICBjb2xvcjogIzAwNkQ3NjtcbiAgICAgIGZvbnQtZmFtaWx5OiBFbE1lc3Npcmk7XG4gICAgICBmb250LXNpemU6IDQwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLm5vQXJyb3dTbGlkZXIgLnNsaWRlci1ubyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgICAgICAgLm5vQXJyb3dTbGlkZXIgLnNsaWRlci1ubyBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAubm9BcnJvd1NsaWRlciAuc2xpZGVyX3RpdGxlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAxcyBlYXNlIDFzO1xuICAgIC8qcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRib3R0b206MDsqL1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDBweCA4MHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ub0Fycm93U2xpZGVyIC5zbGlkZXJfdGl0bGUge1xuICAgICAgICBwYWRkaW5nOiAwcHggMjBweDsgfSB9XG4gIC5ub0Fycm93U2xpZGVyIC5zbGlkZXJfY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcl9jb250ZW50IHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cbiAgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwJSk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTsgfSB9XG4gICAgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLm1haW5TbGlkZXIge1xuICAgICAgd2lkdGg6IDU1JTtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDsgfVxuICAgICAgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLm1haW5TbGlkZXIgLnNsaWNrLXNsaWRlIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAyLjV2dztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciAubWFpblNsaWRlciAuc2xpY2stc2xpZGUgaDUge1xuICAgICAgICAgICAgZm9udC1zaXplOiA3dnc7IH0gfVxuICAgICAgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLm1haW5TbGlkZXIgLnNsaWNrLXNsaWRlIHAsIC5ub0Fycm93U2xpZGVyIC5zbGlkZXJzQ29udGFpbmVyIC5tYWluU2xpZGVyIC5zbGljay1zbGlkZSBkaXYge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciAubWFpblNsaWRlciAuc2xpY2stc2xpZGUgcCwgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLm1haW5TbGlkZXIgLnNsaWNrLXNsaWRlIGRpdiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAgICAgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLm1haW5TbGlkZXIgLnNsaWNrLXNsaWRlLnNsaWNrLWN1cnJlbnQgLnNsaWRlcl90aXRsZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5ub0Fycm93U2xpZGVyIC5zbGlkZXJzQ29udGFpbmVyIC5tYWluU2xpZGVyIC5zbGljay1zbGlkZS5zbGljay1jdXJyZW50IC5zbGlkZXJfY29udGVudCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIG1hcmdpbjogMTBweCAwcHg7IH1cbiAgICAubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciAubmF2U2xpZGVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgIHdpZHRoOiA0NSU7IH1cbiAgICAgIC5ub0Fycm93U2xpZGVyIC5zbGlkZXJzQ29udGFpbmVyIC5uYXZTbGlkZXIgLnNsaWRlcl90aXRsZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAgIC5ub0Fycm93U2xpZGVyIC5zbGlkZXJzQ29udGFpbmVyIC5uYXZTbGlkZXIgLnNsaWRlcl9jb250ZW50IHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgbWFyZ2luOiA0cHggMCAhaW1wb3J0YW50OyB9XG4gICAgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLnNsaWNrLXNsaWRlIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgIC5ub0Fycm93U2xpZGVyIC5zbGlkZXJzQ29udGFpbmVyIC5zbGljay1zbGlkZSBpbWcge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlLWluLW91dCAxLjVzO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDIpOyB9XG4gICAgICAubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciAuc2xpY2stc2xpZGUuc2xpY2stY3VycmVudCBpbWcge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgZWFzZS1pbi1vdXQgMC44cztcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAgICAgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLnNsaWNrLXNsaWRlIC5zbGlkZXJfY29udGVudCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIG1hcmdpbjogMTBweCA4MHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQgMXM7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciAuc2xpY2stc2xpZGUgLnNsaWRlcl9jb250ZW50IHtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweDsgfSB9XG4gIC5ub0Fycm93U2xpZGVyLWJ0bnMge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLm5vQXJyb3dTbGlkZXItYnRucyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgICAgIC5ub0Fycm93U2xpZGVyLWJ0bnMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2NnB4OyB9IH1cbiAgICAubm9BcnJvd1NsaWRlci1idG5zIC5zbGljay1hcnJvdyB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwNkQ3NjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGNvbG9yOiAjMDA2RDc2O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAyNXB4OyB9XG4gICAgICAubm9BcnJvd1NsaWRlci1idG5zIC5zbGljay1hcnJvdzpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDZENzY7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAubm9BcnJvd1NsaWRlci1idG5zIC5zbGljay1hcnJvdyB7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4OyB9IH1cblxuLmNhcm91c2VsLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxNTBweCk7IH1cblxuLmNhcm91c2VsLXNsaWRlciAuc2xpY2stdHJhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDA7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgcGFkZGluZzogMCAyMCUgMCAwJSAhaW1wb3J0YW50OyB9IH1cblxuLmNhcm91c2VsLXNsaWRlciAuc2xpY2stc2xpZGUge1xuICBoZWlnaHQ6IGF1dG87IH1cbiAgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stc2xpZGUgPiBkaXYge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUge1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtaW5mbyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgcGFkZGluZzogMTBweCAyNXB4O1xuICAgICAgYmFja2dyb3VuZDogIzAwNkQ3NjsgfVxuICAgICAgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWluZm8gcCB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtaW5mbyBwOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IEVsTWVzc2lyaTsgfVxuICAgICAgICAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtaW5mbyBwIHNwYW4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICAgICAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtaW5mbyBwIHNwYW4udG9vbHRpcEljb24ge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBjdXJzb3I6IGhlbHA7IH1cbiAgICAgICAgICAgIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZS1pbmZvIHAgc3Bhbi50b29sdGlwSWNvbiAudG9vbHRpcCB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAgICAgICAgIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZS1pbmZvIHAgc3Bhbi50b29sdGlwSWNvbjpob3ZlciAudG9vbHRpcCB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggMHB4ICNhNWE1YTU7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtaW5mbyBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICAgICAgICAgICAgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWluZm8gcDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgICAgICAgICAgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWluZm8gcCBzcGFuLCAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtaW5mbyBwIGkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICAgIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZS1jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBwYWRkaW5nOiAyMHB4IDI1cHg7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgICAgIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZS1jb250ZW50IGEge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDsgfVxuICAgICAgICAgIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZS1jb250ZW50IGEge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7IH1cbiAgICAgICAgICAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtY29udGVudCAuY3RhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuXG4uY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1hcnJvdyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDA2RDc2O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbG9yOiAjMDA2RDc2O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMTAwcHg7XG4gIHotaW5kZXg6IDE7XG4gIGZvbnQtc2l6ZTogMHB4OyB9XG4gIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLWFycm93IGkge1xuICAgIGZvbnQtc2l6ZTogMjVweDsgfVxuICAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICByaWdodDogMTAwcHg7IH1cbiAgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gICAgcmlnaHQ6IDIwMHB4OyB9XG4gIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLWFycm93OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stYXJyb3cge1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICB0b3A6IC02NXB4OyB9XG4gICAgICAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDEwcHg7IH1cbiAgICAgIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgICAgICByaWdodDogNzBweDsgfSB9XG5cbi5zdHJpcEltZyBpbWcge1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zdHJpcEltZyBpbWcge1xuICAgICAgLypoZWlnaHQ6IDUwdmg7XHJcblx0XHQgIHdpZHRoOiBhdXRvO1xyXG5cdFx0ICAvL21heC13aWR0aDogaW5pdGlhbDtcclxuXHRcdCAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNSUpOyovIH0gfVxuXG4uc29ydCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogNTBweCAxNTBweCAyNXB4OyB9XG4gIC5zb3J0IGRpdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBjb2x1bW4tZ2FwOiA0MHB4OyB9XG4gIC5zb3J0IHNlbGVjdCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zb3J0IHNlbGVjdDpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnNvcnQge1xuICAgICAgcGFkZGluZzogMjVweDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLnNvcnQgZGl2IHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAuc29ydCBzZWxlY3Qge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmxvYWRlckltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAubG9hZGVySW1hZ2UgZGl2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7IH1cblxuaHIge1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBtYXJnaW46IDIwcHggMTUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICBociB7XG4gICAgICBtYXJnaW46IDIwcHggMjVweDsgfSB9XG5cbi5wb2xpY3kge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvbGljeSB7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cblxuaW5wdXQ6OnBsYWNlaG9sZGVyLCBzZWxlY3Q6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNmZmY7IH1cblxuc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zZWxlY3QtYmx1ZS5wbmcpOyB9XG5cbi5wb3N0RGV0YWlscyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZDogIzAwNkQ3NjtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICB6LWluZGV4OiAxMDAwMDAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQ7XG4gIGxlZnQ6IDEwMCU7IH1cbiAgLnBvc3REZXRhaWxzLm9wZW4ge1xuICAgIGxlZnQ6IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3REZXRhaWxzLm9wZW4gLmNsb3NlIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICByaWdodDogMDsgfSB9XG4gIC5wb3N0RGV0YWlscyAuY2xvc2Uge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnBvc3REZXRhaWxzIC5jbG9zZTpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgIGxlZnQ6IDUwJTsgfVxuICAgIC5wb3N0RGV0YWlscyAuY2xvc2U6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICBsZWZ0OiA1MCU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3REZXRhaWxzIC5jbG9zZSB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluLW91dDtcbiAgICAgICAgcmlnaHQ6IC0xMDAlOyB9IH1cbiAgLnBvc3REZXRhaWxzLnJvb21EZXRhaWxzIC5ndWVzdC10eXBlIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nOiAxNXB4IDEyMHB4O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3N0RGV0YWlscy5yb29tRGV0YWlscyAuZ3Vlc3QtdHlwZSB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjVweDsgfSB9XG4gIC5wb3N0RGV0YWlscy5yb29tRGV0YWlscyAuZGVzY3JpcHRpb24ge1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICBjb2x1bW4tZ2FwOiA1MHB4O1xuICAgIHBhZGRpbmc6IDAgMTIwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3REZXRhaWxzLnJvb21EZXRhaWxzIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMTtcbiAgICAgICAgcGFkZGluZzogMCAyNXB4OyB9IH1cbiAgLnBvc3REZXRhaWxzLnJvb21EZXRhaWxzIC5yb29tRGV0YWlscy1idG4ge1xuICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnBvc3REZXRhaWxzIC5ob3RlbExvZ28sIC5wb3N0RGV0YWlscyAubG9nbyB7XG4gICAgbWFyZ2luOiAzMHB4IDQwcHggMDtcbiAgICB3aWR0aDogMjAwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3REZXRhaWxzIC5ob3RlbExvZ28sIC5wb3N0RGV0YWlscyAubG9nbyB7XG4gICAgICAgIG1hcmdpbjogMzBweCAyMHB4OyB9IH1cbiAgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IDUwcHggMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMDsgfSB9XG4gICAgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIC5wb3N0LWZhY2lsaXRpZXMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGNvbHVtbi1nYXA6IDIwcHg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICBwYWRkaW5nOiAwIDEyMHB4O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLnBvc3QtZmFjaWxpdGllcyB7XG4gICAgICAgICAgcGFkZGluZzogMCAyNXB4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfSB9XG4gICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLnBvc3QtZmFjaWxpdGllcyBkaXYge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxNSU7IH1cbiAgICAgICAgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIC5wb3N0LWZhY2lsaXRpZXMgZGl2IGltZyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLnBvc3QtZmFjaWxpdGllcyBkaXYgcCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciAucG9zdC1mYWNpbGl0aWVzIGRpdiB7XG4gICAgICAgICAgICB3aWR0aDogNDAlOyB9XG4gICAgICAgICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLnBvc3QtZmFjaWxpdGllcyBkaXYgaW1nIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMCU7IH1cbiAgICAgICAgICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciAucG9zdC1mYWNpbGl0aWVzIGRpdiBwIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDsgfSB9XG4gICAgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgcGFkZGluZzogMCAxMjBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIGgyIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7IH0gfVxuICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciBoNCB7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTBweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciBoNCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH0gfVxuICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciAucG9zdC1oZWFkZXIge1xuICAgICAgcGFkZGluZzogMCAxNTBweDsgfVxuICAgICAgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIC5wb3N0LWhlYWRlciBoMiB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciAucG9zdC1oZWFkZXIge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjVweDsgfVxuICAgICAgICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciAucG9zdC1oZWFkZXIgaDIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfSB9XG4gICAgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIC5kZXNjcmlwdGlvbiB7XG4gICAgICBtYXJnaW46IDMwcHggYXV0byA0MHB4OyB9XG4gICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLmRlc2NyaXB0aW9uIHAge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciAuc2xpZGVyLW5vIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLnNsaWRlci1ubyBzcGFuIHtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLm5vQXJyb3dTbGlkZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMjBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLm5vQXJyb3dTbGlkZXIgaDIge1xuICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLm5vQXJyb3dTbGlkZXIge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfSB9XG4gICAgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIC5wb3N0LWRldGFpbHMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHBhZGRpbmc6IDcwcHggMTUwcHggMDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciAucG9zdC1kZXRhaWxzIHtcbiAgICAgICAgICBwYWRkaW5nOiA1MHB4IDI1cHggMDtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuICAgICAgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIC5wb3N0LWRldGFpbHNfY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIHdpZHRoOiA3MCU7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLnBvc3QtZGV0YWlsc19jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9IH1cbiAgICAgICAgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIC5wb3N0LWRldGFpbHNfY29udGFpbmVyIGRpdiB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLnBvc3QtZGV0YWlsc19jb250YWluZXIgZGl2IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgICAgICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciAucG9zdC1kZXRhaWxzX2NvbnRhaW5lciBkaXYucHJvZ3JhbXMge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLnBvc3QtZGV0YWlsc19jb250YWluZXIgZGl2IGEsIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciAucG9zdC1kZXRhaWxzX2NvbnRhaW5lciBkaXYgcCwgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIC5wb3N0LWRldGFpbHNfY29udGFpbmVyIGRpdiBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIC5wb3N0LWFtZW5pdGllcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcGFkZGluZzogNzBweCAxMjBweCAwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLnBvc3QtYW1lbml0aWVzIHtcbiAgICAgICAgICBwYWRkaW5nOiA1MHB4IDI1cHggMDtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuICAgICAgLnBvc3REZXRhaWxzIC5wb3N0Q29udGFpbmVyIC5wb3N0LWFtZW5pdGllc19jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgd2lkdGg6IDcwJTsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciAucG9zdC1hbWVuaXRpZXNfY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG4gICAgICAgIC5wb3N0RGV0YWlscyAucG9zdENvbnRhaW5lciAucG9zdC1hbWVuaXRpZXNfY29udGFpbmVyIGRpdiB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICAucG9zdERldGFpbHMgLnBvc3RDb250YWluZXIgLnBvc3QtYW1lbml0aWVzX2NvbnRhaW5lciBkaXYge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5wb3N0RGV0YWlscyBoMyB7XG4gICAgZm9udC1zaXplOiA0dnc7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5wb3N0RGV0YWlscyBoMyBzcGFuIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3REZXRhaWxzIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHZ3O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC5wb3N0RGV0YWlscyBoMyBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gIC5wb3N0RGV0YWlscyAubm9BcnJvd1NsaWRlci1idG5zIC5zbGljay1hcnJvdyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLnBvc3REZXRhaWxzIC5ub0Fycm93U2xpZGVyLWJ0bnMgLnNsaWNrLWFycm93OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBjb2xvcjogIzAwNkQ3NjsgfVxuXG4uYWxpZ25jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBhdXRvO1xuICBjbGVhcjogaW5pdGlhbDsgfVxuXG4uYWxpZ25yaWdodCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmhvdGVscy10ZW1wbGF0ZS1ob3RlbC1yZXNlcnZhdGlvbnMgLmxvYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnRvdXIzNjAge1xuICBwYWRkaW5nOiAxNTBweCAzMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnRvdXIzNjAge1xuICAgICAgcGFkZGluZzogMjVweDsgfSB9XG4gIC50b3VyMzYwIGlmcmFtZSB7XG4gICAgYXNwZWN0LXJhdGlvOiA0NzUgLyAyNjc7IH1cblxuI3JlYWRNb3JlIHtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbiN5bVBsdWdpbkRpdkNvbnRhaW5lckluaXRpYWwgI3ltRGl2QmFyIHtcbiAgYmFja2dyb3VuZDogI2ZmZiAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAzMHB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMDZENzY7IH1cbiAgI3ltUGx1Z2luRGl2Q29udGFpbmVySW5pdGlhbCAjeW1EaXZCYXIgaW1nIHtcbiAgICBoZWlnaHQ6IDYwcHggIWltcG9ydGFudDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICN5bVBsdWdpbkRpdkNvbnRhaW5lckluaXRpYWwgI3ltRGl2QmFyIHtcbiAgICAgIGJvdHRvbTogNzBweDsgfSB9XG5cbi5lcnJvcjQwNCAubWFpbi1ncmlkIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDIwMHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IEx1dGhvbjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9MdXRob25Tb3V0aGFyZFNjcmlwdC50dGZcIik7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IEVsTWVzc2lyaTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9FbE1lc3NpcmktUmVndWxhci53b2ZmXCIpO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBCcmFuZGluZztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9CcmFuZGluZy1TZW1pbGlnaHQud29mZlwiKTtcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTm90bztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9Ob3RvTmFzdGFsaXFVcmR1LnR0ZlwiKTtcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogQWxleEJydXNoO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0FsZXhCcnVzaC1SZWd1bGFyLndvZmZcIik7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgZm9udC1mYW1pbHk6IEVsTWVzc2lyaTtcbiAgY29sb3I6ICMwMDA7IH1cbiAgaDEgc3BhbiwgaDIgc3BhbiwgaDMgc3BhbiwgaDQgc3BhbiwgaDUgc3BhbiwgaDYgc3BhbiB7XG4gICAgZm9udC1mYW1pbHk6IEFsZXhCcnVzaDtcbiAgICBjb2xvcjogIzAwQTM5RDsgfVxuXG5wLCBsaSwgZGl2IHtcbiAgZm9udC1mYW1pbHk6IEJyYW5kaW5nO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBmb250LXNpemU6IDE2cHg7IH1cblxuc3BhbiB7XG4gIGZvbnQtZmFtaWx5OiBCcmFuZGluZztcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuXG5hIHtcbiAgZm9udC1mYW1pbHk6IEJyYW5kaW5nO1xuICBmb250LXNpemU6IDF2dztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGNvbG9yOiAjMDBBMzlEOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IDR2dzsgfSB9XG5cbmgxLCAudGl0bGUge1xuICBmb250LXNpemU6IDV2dztcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgbGluZS1oZWlnaHQ6IDQuNXZ3OyB9XG4gIGgxIHNwYW4sIC50aXRsZSBzcGFuIHtcbiAgICBsaW5lLWhlaWdodDogMTQwcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gICAgZm9udC1zaXplOiA1dnc7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICBoMSwgLnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogOHZ3OyB9XG4gICAgICBoMSBzcGFuLCAudGl0bGUgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogNjBweDsgfSB9XG5cbi5ydGwgaDEsIC5ydGwgaDIsIC5ydGwgaDMsIC5ydGwgaDQsIC5ydGwgaDUsIC5ydGwgaDYge1xuICBsZXR0ZXItc3BhY2luZzogMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnJ0bCBoMSBzcGFuLCAucnRsIGgyIHNwYW4sIC5ydGwgaDMgc3BhbiwgLnJ0bCBoNCBzcGFuLCAucnRsIGg1IHNwYW4sIC5ydGwgaDYgc3BhbiB7XG4gICAgZm9udC1mYW1pbHk6IE5vdG87IH1cblxuLnJ0bCBwLCAucnRsIGxpLCAucnRsIGRpdiwgLnJ0bCBzcGFuLCAucnRsIGEge1xuICBsZXR0ZXItc3BhY2luZzogMHB4ICFpbXBvcnRhbnQ7IH1cblxuLnJ0bCBoMSB7XG4gIGZvbnQtc2l6ZTogNHZ3O1xuICBsaW5lLWhlaWdodDogMy41dnc7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgLnJ0bCBoMSBzcGFuIHtcbiAgICBsaW5lLWhlaWdodDogMTYwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAucnRsIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogOHZ3O1xuICAgICAgbGluZS1oZWlnaHQ6IDEwdnc7IH1cbiAgICAgIC5ydGwgaDEgc3BhbiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMDBweDsgfSB9XG5cbiN3cGFkbWluYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7IH1cblxuYm9keS5hZG1pbi1iYXIuZi10b3BiYXItZml4ZWQgLnN0aWNreS5maXhlZCB7XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cblxuYm9keS5hZG1pbi1iYXIub2ZmY2FudmFzIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICB0b3A6IDIuODc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4LjkzNzVlbSkge1xuICAgIGJvZHkuYWRtaW4tYmFyLm9mZmNhbnZhcyAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICAgIHRvcDogMnJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tb2JpbGUtbWVudSxcbiAgLnNpdGUtdGl0bGUtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5kZXNrdG9wLW1lbnUsXG4gIC5zaXRlLW5hdmlnYXRpb24gLnRvcC1iYXItbGVmdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNpdGUtZGVza3RvcC10aXRsZSBhIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnBvc3QtbmF2aWdhdGlvbjo6YmVmb3JlLCAucG9zdC1uYXZpZ2F0aW9uOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxOyB9XG5cbi5wb3N0LW5hdmlnYXRpb246OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLm5hdi1wcmV2aW91cyB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5uYXYtbmV4dCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uc2l0ZS1oZWFkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLnNpdGUtaGVhZGVyLnN0aWNreSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJhY2tncm91bmQ6ICMwMDZENzY7XG4gICAgei1pbmRleDogMTAwMDA7IH1cbiAgICAuc2l0ZS1oZWFkZXIuc3RpY2t5IC50b3AtYmFyIHtcbiAgICAgIGhlaWdodDogODVweDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgICAgIC5zaXRlLWhlYWRlci5zdGlja3kgLnRvcC1iYXItbGVmdCBpbWcge1xuICAgICAgICB3aWR0aDogMTU1cHggIWltcG9ydGFudDsgfVxuICAgICAgLnNpdGUtaGVhZGVyLnN0aWNreSAudG9wLWJhciAuc3VibWVudS1jb250YWluZXIge1xuICAgICAgICB0b3A6IDg1cHg7IH1cbiAgICAuc2l0ZS1oZWFkZXIuc3RpY2t5IC50b3AtYmFyLXJpZ2h0X19idG4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwQTM5RDsgfVxuICAgIC5zaXRlLWhlYWRlci5zdGlja3kgLndwbWwtbHMtc3ViLW1lbnUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNkQ3NjsgfVxuICAgIC5zaXRlLWhlYWRlci5zdGlja3kgLnRvcC1iYXItY2VudGVyIC5tZW51IGxpLmN1cnJlbnQtbWVudS1pdGVtID4gYSwgLnNpdGUtaGVhZGVyLnN0aWNreSAudG9wLWJhci1jZW50ZXIgLm1lbnUgbGkuY3VycmVudC1wYWdlLWFuY2VzdG9yID4gYSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAhaW1wb3J0YW50OyB9XG4gICAgLnNpdGUtaGVhZGVyLnN0aWNreSAudG9wLWJhci1jZW50ZXIgLm1lbnUgbGkgYSB7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZTsgfVxuICAgIC5zaXRlLWhlYWRlci5zdGlja3kgLnRpdGxlLWJhci1sZWZ0IGltZyB7XG4gICAgICB3aWR0aDogODBweDsgfVxuICAgIC5zaXRlLWhlYWRlci5zdGlja3kgLnRvcC1iYXItcmlnaHRfdG9wIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnNpdGUtaGVhZGVyLmhvdGVsLWhlYWRlciAuc3VibWVudS1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDEwcHggMzBweDsgfVxuICAgIC5zaXRlLWhlYWRlci5ob3RlbC1oZWFkZXIgLnN1Ym1lbnUtY29udGFpbmVyIGEge1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgcGFkZGluZzogMTVweCAxMHB4OyB9XG4gIC5zaXRlLWhlYWRlci5ob3RlbC1oZWFkZXIgLnRvcC1iYXItY2VudGVyIC5tZW51IGxpIGEge1xuICAgIHBhZGRpbmc6IDEwcHggOHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnNpdGUtaGVhZGVyIHtcbiAgICAgIGhlaWdodDogNTVweDsgfSB9XG5cbi50b3AtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluO1xuICBoZWlnaHQ6IDEzMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAwLjgpLCB0cmFuc3BhcmVudCk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAudG9wLWJhciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnRvcC1iYXIub3Blbi1zdWJtZW51IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2RDc2O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgICAudG9wLWJhci5vcGVuLXN1Ym1lbnUgLnRvcC1iYXItcmlnaHRfX2J0biB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBBMzlEOyB9XG4gICAgLnRvcC1iYXIub3Blbi1zdWJtZW51IC50b3AtYmFyLWNlbnRlciBsaSBhIHtcbiAgICAgIHRleHQtc2hhZG93OiBub25lOyB9XG4gIC50b3AtYmFyIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC50b3AtYmFyIHVsIGxpLmFjdGl2ZSBhIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC50b3AtYmFyIHVsIGxpIGE6aG92ZXIge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC50b3AtYmFyIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAudG9wLWJhci1jZW50ZXIge1xuICAgIGZsZXg6IDQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC50b3AtYmFyLWNlbnRlciAubWVudSBsaSBhIHtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBmb250LXNpemU6IDEuMTV2dztcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgdGV4dC1zaGFkb3c6IDAgMCAyMHB4ICMwMDA7IH1cbiAgICAudG9wLWJhci1jZW50ZXIgLm1lbnUgbGkuaXMtYWN0aXZlID4gYSB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICAgIC50b3AtYmFyLWNlbnRlciAubWVudSBsaS5jdXJyZW50LW1lbnUtaXRlbTpub3QoI21lbnUtaXRlbS1ob21lKTpub3QoLmlzLXN1Ym1lbnUtaXRlbSkgPiBhLCAudG9wLWJhci1jZW50ZXIgLm1lbnUgbGkuY3VycmVudC1wYWdlLWFuY2VzdG9yOm5vdCgjbWVudS1pdGVtLWhvbWUpOm5vdCguaXMtc3VibWVudS1pdGVtKSA+IGEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2ZmZjsgfVxuICAgIC50b3AtYmFyLWNlbnRlciAubWVudSBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDsgfVxuICAgICAgLnRvcC1iYXItY2VudGVyIC5tZW51IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnRvcC1iYXItY2VudGVyIC5tZW51IGxpLmhhcy1zdWJtZW51IC5kcm9wZG93biB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnRvcC1iYXItY2VudGVyIC5tZW51IC5kcm9wZG93biB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2RDc2O1xuICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgICAudG9wLWJhci1jZW50ZXIgLm1lbnUgLmRyb3Bkb3duIGEge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAudG9wLWJhci1jZW50ZXIgLm1lbnUgLmRyb3Bkb3duIC5jdXJyZW50LW1lbnUtaXRlbSA+IGEge1xuICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgLnRvcC1iYXItbGVmdCxcbiAgLnRvcC1iYXItcmlnaHQge1xuICAgIGZsZXg6IDEgIWltcG9ydGFudDsgfVxuICAudG9wLWJhci1sZWZ0IGltZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbjsgfVxuICAudG9wLWJhci1yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC50b3AtYmFyLXJpZ2h0X3RvcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgLnRvcC1iYXItcmlnaHRfdG9wLCAudG9wLWJhci1yaWdodF9ib3R0b20ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnRvcC1iYXItcmlnaHRfX2J0biB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2RDc2O1xuICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgIHBhZGRpbmc6IDdweCAxNXB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICBmb250LXNpemU6IDAuOHZ3OyB9XG4gICAgICAudG9wLWJhci1yaWdodF9fYnRuOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzAwNkQ3NjsgfVxuICAgICAgLnRvcC1iYXItcmlnaHRfX2J0bjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbjogMCA1cHg7IH1cbiAgICAudG9wLWJhci1yaWdodCAuY3VycmVuY2llcyB7XG4gICAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC50b3AtYmFyLXJpZ2h0IC5jdXJyZW5jaWVzOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXI6IC4zNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItdG9wOiAuNWVtIHNvbGlkICNmZmY7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAuMTc1ZW0pOyB9XG4gICAgICAudG9wLWJhci1yaWdodCAuY3VycmVuY2llcyAuY3VycmVuY3ktZHJvcGRvd24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAgIC50b3AtYmFyLXJpZ2h0IC5jdXJyZW5jaWVzIC5jdXJyZW5jeS1kcm9wZG93biAuY3VycmVudCB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB0OyB9XG4gICAgICAgIC50b3AtYmFyLXJpZ2h0IC5jdXJyZW5jaWVzIC5jdXJyZW5jeS1kcm9wZG93biAub3B0aW9ucyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICAudG9wLWJhci1yaWdodCAuY3VycmVuY2llcyAuY3VycmVuY3ktZHJvcGRvd24gLm9wdGlvbnMgLm9wdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggNnB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAgICAgICAudG9wLWJhci1yaWdodCAuY3VycmVuY2llcyAuY3VycmVuY3ktZHJvcGRvd24gLm9wdGlvbnMgLm9wdGlvbjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjMDBBMzlEOyB9XG4gICAgICAgIC50b3AtYmFyLXJpZ2h0IC5jdXJyZW5jaWVzIC5jdXJyZW5jeS1kcm9wZG93bjpob3ZlciAub3B0aW9ucyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAudG9wLWJhci1yaWdodCAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24ge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxuICAgICAgLnRvcC1iYXItcmlnaHQgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duIC53cG1sLWxzLWl0ZW0tdG9nZ2xlIHtcbiAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMnB4OyB9XG4gICAgICAudG9wLWJhci1yaWdodCAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24gYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgICAgLnRvcC1iYXItcmlnaHQgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duIGEgc3BhbiwgLnRvcC1iYXItcmlnaHQgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duIGE6YWZ0ZXIge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgICAudG9wLWJhci1yaWdodCAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24gYTphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IDVweDsgfVxuICAgICAgLnRvcC1iYXItcmlnaHQgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duIC53cG1sLWxzLXN1Yi1tZW51IHtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgICAgICAudG9wLWJhci1yaWdodCAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24gLndwbWwtbHMtc3ViLW1lbnUgYSB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAgICAgICAgIC50b3AtYmFyLXJpZ2h0IC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93biAud3BtbC1scy1zdWItbWVudSBhIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAgICAgICAudG9wLWJhci1yaWdodCAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24gLndwbWwtbHMtc3ViLW1lbnUgYTpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogIzAwNkQ3NiAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgICAudG9wLWJhci1yaWdodCAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24gLndwbWwtbHMtc3ViLW1lbnUgYTpob3ZlciBzcGFuIHtcbiAgICAgICAgICAgICAgY29sb3I6ICMwMDZENzYgIWltcG9ydGFudDsgfVxuICAudG9wLWJhciAuc3VibWVudS1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMjIwcHg7XG4gICAgdG9wOiAxMzBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiA1cHggNDBweDsgfVxuICAgIC50b3AtYmFyIC5zdWJtZW51LWNvbnRhaW5lci5hY3RpdmUge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDZENzY7IH1cbiAgICAudG9wLWJhciAuc3VibWVudS1jb250YWluZXIgZGl2IHtcbiAgICAgIHdpZHRoOiAzMCU7IH1cbiAgICAgIC50b3AtYmFyIC5zdWJtZW51LWNvbnRhaW5lciBkaXYgLm1lbnUge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCg0LCBtaW4tY29udGVudCk7XG4gICAgICAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47IH1cbiAgICAgICAgLnRvcC1iYXIgLnN1Ym1lbnUtY29udGFpbmVyIGRpdiAubWVudSBsaSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAgICAgICAudG9wLWJhciAuc3VibWVudS1jb250YWluZXIgZGl2IC5tZW51IGxpIC52ZXJ0aWNhbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgICAgLnRvcC1iYXIgLnN1Ym1lbnUtY29udGFpbmVyIGRpdiAubWVudSBsaS5jdXJyZW50LW1lbnUtaXRlbSA+IGEge1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAgIC50b3AtYmFyIC5zdWJtZW51LWNvbnRhaW5lciBkaXYgLm1lbnUgYSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgICAgIC50b3AtYmFyIC5zdWJtZW51LWNvbnRhaW5lciBkaXYgLm1lbnUgYTpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgICAgIC50b3AtYmFyIC5zdWJtZW51LWNvbnRhaW5lciBkaXYgLm1lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLnN1Yi1tZW51IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAudG9wLWJhciAuc3VibWVudS1jb250YWluZXIgZGl2LnN1Yi1zdWJtZW51IHtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7IH1cbiAgICAgICAgLnRvcC1iYXIgLnN1Ym1lbnUtY29udGFpbmVyIGRpdi5zdWItc3VibWVudSAuc3ViLW1lbnUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgICAudG9wLWJhciAuc3VibWVudS1jb250YWluZXIgZGl2LnN1Yi1zdWJtZW51IC5zdWItbWVudS5hY3RpdmUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAgICAgLnRvcC1iYXIgLnN1Ym1lbnUtY29udGFpbmVyIGRpdi5zdWItc3VibWVudSAuc3ViLW1lbnUuYWN0aXZlIGxpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC50b3AtYmFyIC5zdWJtZW51LWNvbnRhaW5lciBpbWcge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4uYm9va05vdy13aWRnZXQsIC5lbnF1aXJlLXdpZGdldCwgLmNvbnRhY3Qtd2lkZ2V0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNkQ3NjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAtNDB2dztcbiAgei1pbmRleDogMTAwMDAwO1xuICBoZWlnaHQ6IDEwMHZoO1xuICB3aWR0aDogNDB2dztcbiAgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2U7XG4gIHBhZGRpbmc6IDUwcHggMzBweDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9XG4gIC5ib29rTm93LXdpZGdldC5hY3RpdmUsIC5lbnF1aXJlLXdpZGdldC5hY3RpdmUsIC5jb250YWN0LXdpZGdldC5hY3RpdmUge1xuICAgIHJpZ2h0OiAwOyB9XG4gIC5ib29rTm93LXdpZGdldCBoMiwgLmVucXVpcmUtd2lkZ2V0IGgyLCAuY29udGFjdC13aWRnZXQgaDIge1xuICAgIGZvbnQtc2l6ZTogMnZ3OyB9XG4gIC5ib29rTm93LXdpZGdldCBoMiwgLmJvb2tOb3ctd2lkZ2V0IGEsIC5lbnF1aXJlLXdpZGdldCBoMiwgLmVucXVpcmUtd2lkZ2V0IGEsIC5jb250YWN0LXdpZGdldCBoMiwgLmNvbnRhY3Qtd2lkZ2V0IGEge1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IH1cbiAgLmJvb2tOb3ctd2lkZ2V0X2hlYWRlciwgLmVucXVpcmUtd2lkZ2V0X2hlYWRlciwgLmNvbnRhY3Qtd2lkZ2V0X2hlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuYm9va05vdy13aWRnZXQgLmZvcm0tY29udGFpbmVyLCAuZW5xdWlyZS13aWRnZXQgLmZvcm0tY29udGFpbmVyLCAuY29udGFjdC13aWRnZXQgLmZvcm0tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5ib29rTm93LXdpZGdldCAuZm9ybSAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIGlucHV0LCAuYm9va05vdy13aWRnZXQgLmZvcm0gLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCB0ZXh0YXJlYSwgLmJvb2tOb3ctd2lkZ2V0IC5mb3JtIC5nZm9ybV93cmFwcGVyIC5nZmllbGQgc2VsZWN0LCAuZW5xdWlyZS13aWRnZXQgLmZvcm0gLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCBpbnB1dCwgLmVucXVpcmUtd2lkZ2V0IC5mb3JtIC5nZm9ybV93cmFwcGVyIC5nZmllbGQgdGV4dGFyZWEsIC5lbnF1aXJlLXdpZGdldCAuZm9ybSAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIHNlbGVjdCwgLmNvbnRhY3Qtd2lkZ2V0IC5mb3JtIC5nZm9ybV93cmFwcGVyIC5nZmllbGQgaW5wdXQsIC5jb250YWN0LXdpZGdldCAuZm9ybSAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIHRleHRhcmVhLCAuY29udGFjdC13aWRnZXQgLmZvcm0gLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCBzZWxlY3Qge1xuICAgIGJvcmRlci1ib3R0b206IDAuNXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLmJvb2tOb3ctd2lkZ2V0IC5mb3JtIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9mb290ZXIgaW5wdXQsIC5lbnF1aXJlLXdpZGdldCAuZm9ybSAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIGlucHV0LCAuY29udGFjdC13aWRnZXQgLmZvcm0gLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciBpbnB1dCB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLmJvb2tOb3ctd2lkZ2V0IC5mb3JtIC5nZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZSwgLmVucXVpcmUtd2lkZ2V0IC5mb3JtIC5nZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZSwgLmNvbnRhY3Qtd2lkZ2V0IC5mb3JtIC5nZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZSB7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ib29rTm93LXdpZGdldCwgLmVucXVpcmUtd2lkZ2V0LCAuY29udGFjdC13aWRnZXQge1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgICBsZWZ0OiAtMTAwdnc7IH1cbiAgICAgIC5ib29rTm93LXdpZGdldC5hY3RpdmUsIC5lbnF1aXJlLXdpZGdldC5hY3RpdmUsIC5jb250YWN0LXdpZGdldC5hY3RpdmUge1xuICAgICAgICBsZWZ0OiAwOyB9IH1cbiAgLmJvb2tOb3ctd2lkZ2V0IHNlbGVjdCwgLmVucXVpcmUtd2lkZ2V0IHNlbGVjdCwgLmNvbnRhY3Qtd2lkZ2V0IHNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zZWxlY3Qtd2hpdGUucG5nKTsgfVxuXG4uYm9va05vdy13aWRnZXQgLmhvdGVscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXJnaW46IDIwcHggMDtcbiAgZ2FwOiA4cHg7IH1cbiAgLmJvb2tOb3ctd2lkZ2V0IC5ob3RlbHMgLmhvdGVsIHtcbiAgICB3aWR0aDogMzIlO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5ib29rTm93LXdpZGdldCAuaG90ZWxzIC5ob3RlbCBoMyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAuYm9va05vdy13aWRnZXQgLmhvdGVscyAuaG90ZWwgZGl2IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgLmJvb2tOb3ctd2lkZ2V0IC5ob3RlbHMgLmhvdGVsIGRpdiBkaXYge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMDksIDExOCwgMC43KTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwOyB9XG4gICAgICAgIC5ib29rTm93LXdpZGdldCAuaG90ZWxzIC5ob3RlbCBkaXYgZGl2IGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC42dnc7IH1cbiAgICAgIC5ib29rTm93LXdpZGdldCAuaG90ZWxzIC5ob3RlbCBkaXY6aG92ZXIgZGl2IHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ib29rTm93LXdpZGdldCAuaG90ZWxzIHtcbiAgICAgIGdhcDogMDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgICAgLmJvb2tOb3ctd2lkZ2V0IC5ob3RlbHMgLmhvdGVsIHtcbiAgICAgICAgd2lkdGg6IDQ4JTsgfVxuICAgICAgICAuYm9va05vdy13aWRnZXQgLmhvdGVscyAuaG90ZWwgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5ib29rTm93LXdpZGdldF9mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmctdG9wOiA1MHB4OyB9XG4gIC5ib29rTm93LXdpZGdldF9mb290ZXIgLmJhY2sge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmJvb2tOb3ctd2lkZ2V0X2Zvb3RlciAubW9kaWZ5IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmJvb2tOb3ctd2lkZ2V0X2Zvb3RlciAubW9kaWZ5LnNob3cge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmJvb2tOb3ctd2lkZ2V0X2Zvb3RlciAubW9kaWZ5LCAuYm9va05vdy13aWRnZXRfZm9vdGVyIC5iYWNrIHtcbiAgICBmb250LXNpemU6IDAuN3Z3OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ib29rTm93LXdpZGdldF9mb290ZXIgLm1vZGlmeSwgLmJvb2tOb3ctd2lkZ2V0X2Zvb3RlciAuYmFjayB7XG4gICAgICAgIGZvbnQtc2l6ZTogM3Z3OyB9IH1cblxuLmJvb2tOb3ctd2lkZ2V0IC5ib29rTm93Rm9ybSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDQwcHggMDsgfVxuICAuYm9va05vdy13aWRnZXQgLmJvb2tOb3dGb3JtIGZvcm0ge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG92ZXJmbG93OiBhdXRvOyB9XG4gIC5ib29rTm93LXdpZGdldCAuYm9va05vd0Zvcm0gaW5wdXQ6bm90KC5idG4pLCAuYm9va05vdy13aWRnZXQgLmJvb2tOb3dGb3JtIHNlbGVjdDpub3QoLmJ0bikge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAwLjVweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLmJvb2tOb3ctd2lkZ2V0IC5ib29rTm93Rm9ybSBzZWxlY3Qgb3B0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2OyB9XG4gICAgLmJvb2tOb3ctd2lkZ2V0IC5ib29rTm93Rm9ybSBzZWxlY3Qgb3B0aW9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMEEzOUQ7IH1cbiAgLmJvb2tOb3ctd2lkZ2V0IC5ib29rTm93Rm9ybSBkaXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgLmJvb2tOb3ctd2lkZ2V0IC5ib29rTm93Rm9ybSBkaXY6bm90KC5kYXRlUGlja2VyKSB7XG4gICAgICBjb2x1bW4tZ2FwOiA0MHB4OyB9XG4gICAgLmJvb2tOb3ctd2lkZ2V0IC5ib29rTm93Rm9ybSBkaXYuZGF0ZVBpY2tlciB7XG4gICAgICBib3JkZXItYm90dG9tOiAwLjVweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmJvb2tOb3ctd2lkZ2V0IC5ib29rTm93Rm9ybSBkaXYuZGF0ZVBpY2tlciBpbnB1dCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5ib29rTm93LXdpZGdldCAuYm9va05vd0Zvcm0gZGl2LmRhdGVQaWNrZXIgaSB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5ib29rTm93LXdpZGdldCAuYm9va05vd0Zvcm0gW3R5cGU9J3N1Ym1pdCddIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmJvb2tOb3ctd2lkZ2V0IC5naWZ0Q2FyZCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5ib29rTm93LXdpZGdldCAuZ2lmdENhcmQgYSB7XG4gICAgZm9udC1zaXplOiAwLjl2dzsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYm9va05vdy13aWRnZXQgLmdpZnRDYXJkIGEge1xuICAgICAgICBmb250LXNpemU6IDN2dzsgfSB9XG5cbi5lbnF1aXJlLXdpZGdldCAuZm9ybSAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMTIgIWltcG9ydGFudDtcbiAgLyomOmZpcnN0LWNoaWxke1xyXG4gICAgICAgICAgb3JkZXI6MTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoMil7XHJcbiAgICAgICAgICBvcmRlcjozO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCgzKXtcclxuICAgICAgICAgIG9yZGVyOjU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bnRoLWNoaWxkKDQpe1xyXG4gICAgICAgICAgb3JkZXI6MjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoNSl7XHJcbiAgICAgICAgICBvcmRlcjo0O1xyXG4gICAgICAgIH0qLyB9XG5cbi50aXRsZS1iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAudGl0bGUtYmFyLWxlZnQgaW1nIHtcbiAgICAvKmhlaWdodDogMzVweDtcclxuICAgICAgbWF4LXdpZHRoOiBpbml0aWFsOyovIH1cblxuLnBvc2l0aW9uLXJpZ2h0LCAucG9zaXRpb24tbGVmdCB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA1M3B4KTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRvcDogNTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNkQ3NjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5wb3NpdGlvbi1yaWdodCAjbWVudS1tYWluLW1lbnUtbW9iaWxlLCAucG9zaXRpb24tcmlnaHQgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1hciwgLnBvc2l0aW9uLXJpZ2h0ICNtZW51LW1haW4tbWVudS1tb2JpbGUtZGUsIC5wb3NpdGlvbi1sZWZ0ICNtZW51LW1haW4tbWVudS1tb2JpbGUsIC5wb3NpdGlvbi1sZWZ0ICNtZW51LW1haW4tbWVudS1tb2JpbGUtYXIsIC5wb3NpdGlvbi1sZWZ0ICNtZW51LW1haW4tbWVudS1tb2JpbGUtZGUge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5wb3NpdGlvbi1yaWdodCAjbWVudS1tYWluLW1lbnUtbW9iaWxlIGxpLCAucG9zaXRpb24tcmlnaHQgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1hciBsaSwgLnBvc2l0aW9uLXJpZ2h0ICNtZW51LW1haW4tbWVudS1tb2JpbGUtZGUgbGksIC5wb3NpdGlvbi1sZWZ0ICNtZW51LW1haW4tbWVudS1tb2JpbGUgbGksIC5wb3NpdGlvbi1sZWZ0ICNtZW51LW1haW4tbWVudS1tb2JpbGUtYXIgbGksIC5wb3NpdGlvbi1sZWZ0ICNtZW51LW1haW4tbWVudS1tb2JpbGUtZGUgbGkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTsgfVxuICAgICAgLnBvc2l0aW9uLXJpZ2h0ICNtZW51LW1haW4tbWVudS1tb2JpbGUgbGkgYSwgLnBvc2l0aW9uLXJpZ2h0ICNtZW51LW1haW4tbWVudS1tb2JpbGUtYXIgbGkgYSwgLnBvc2l0aW9uLXJpZ2h0ICNtZW51LW1haW4tbWVudS1tb2JpbGUtZGUgbGkgYSwgLnBvc2l0aW9uLWxlZnQgI21lbnUtbWFpbi1tZW51LW1vYmlsZSBsaSBhLCAucG9zaXRpb24tbGVmdCAjbWVudS1tYWluLW1lbnUtbW9iaWxlLWFyIGxpIGEsIC5wb3NpdGlvbi1sZWZ0ICNtZW51LW1haW4tbWVudS1tb2JpbGUtZGUgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LWZhbWlseTogRWxNZXNzaXJpO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgLnBvc2l0aW9uLXJpZ2h0ICNtZW51LW1haW4tbWVudS1tb2JpbGUgbGkgLmlzLWFjY29yZGlvbi1zdWJtZW51IGEsIC5wb3NpdGlvbi1yaWdodCAjbWVudS1tYWluLW1lbnUtbW9iaWxlLWFyIGxpIC5pcy1hY2NvcmRpb24tc3VibWVudSBhLCAucG9zaXRpb24tcmlnaHQgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1kZSBsaSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSwgLnBvc2l0aW9uLWxlZnQgI21lbnUtbWFpbi1tZW51LW1vYmlsZSBsaSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSwgLnBvc2l0aW9uLWxlZnQgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1hciBsaSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSwgLnBvc2l0aW9uLWxlZnQgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1kZSBsaSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBCcmFuZGluZztcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgICAucG9zaXRpb24tcmlnaHQgI21lbnUtbWFpbi1tZW51LW1vYmlsZSBsaS5pcy1hY3RpdmUgPiBhLCAucG9zaXRpb24tcmlnaHQgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1hciBsaS5pcy1hY3RpdmUgPiBhLCAucG9zaXRpb24tcmlnaHQgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1kZSBsaS5pcy1hY3RpdmUgPiBhLCAucG9zaXRpb24tbGVmdCAjbWVudS1tYWluLW1lbnUtbW9iaWxlIGxpLmlzLWFjdGl2ZSA+IGEsIC5wb3NpdGlvbi1sZWZ0ICNtZW51LW1haW4tbWVudS1tb2JpbGUtYXIgbGkuaXMtYWN0aXZlID4gYSwgLnBvc2l0aW9uLWxlZnQgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1kZSBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5wb3NpdGlvbi1yaWdodCAjbWVudS1tYWluLW1lbnUtbW9iaWxlIGxpIC5zdWJtZW51LXRvZ2dsZSwgLnBvc2l0aW9uLXJpZ2h0ICNtZW51LW1haW4tbWVudS1tb2JpbGUtYXIgbGkgLnN1Ym1lbnUtdG9nZ2xlLCAucG9zaXRpb24tcmlnaHQgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1kZSBsaSAuc3VibWVudS10b2dnbGUsIC5wb3NpdGlvbi1sZWZ0ICNtZW51LW1haW4tbWVudS1tb2JpbGUgbGkgLnN1Ym1lbnUtdG9nZ2xlLCAucG9zaXRpb24tbGVmdCAjbWVudS1tYWluLW1lbnUtbW9iaWxlLWFyIGxpIC5zdWJtZW51LXRvZ2dsZSwgLnBvc2l0aW9uLWxlZnQgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1kZSBsaSAuc3VibWVudS10b2dnbGUge1xuICAgICAgICB3aWR0aDogNzBweDsgfVxuICAucG9zaXRpb24tcmlnaHQgLndpZGdldCwgLnBvc2l0aW9uLWxlZnQgLndpZGdldCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQgLndpZGdldCAud3BtbC1scy1sZWdhY3ktbGlzdC1ob3Jpem9udGFsLCAucG9zaXRpb24tbGVmdCAud2lkZ2V0IC53cG1sLWxzLWxlZ2FjeS1saXN0LWhvcml6b250YWwge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0IC53aWRnZXQgLndwbWwtbHMtY3VycmVudC1sYW5ndWFnZSBhIHNwYW4sIC5wb3NpdGlvbi1sZWZ0IC53aWRnZXQgLndwbWwtbHMtY3VycmVudC1sYW5ndWFnZSBhIHNwYW4ge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAucG9zaXRpb24tcmlnaHQgLndpZGdldCBhIHNwYW4sIC5wb3NpdGlvbi1sZWZ0IC53aWRnZXQgYSBzcGFuIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0IC5vZmYtY2FudmFzLWZvb3RlciwgLnBvc2l0aW9uLWxlZnQgLm9mZi1jYW52YXMtZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5wb3NpdGlvbi1yaWdodCAuY3VycmVuY2llcywgLnBvc2l0aW9uLWxlZnQgLmN1cnJlbmNpZXMge1xuICAgIHBhZGRpbmc6IDRweCAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0IC5jdXJyZW5jaWVzOmFmdGVyLCAucG9zaXRpb24tbGVmdCAuY3VycmVuY2llczphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJvcmRlcjogLjM1ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItdG9wOiAuNWVtIHNvbGlkICNmZmY7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSAuMjc1ZW0pOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0IC5jdXJyZW5jaWVzICNjdXJyZW5jeS1zZWxlY3RvciwgLnBvc2l0aW9uLWxlZnQgLmN1cnJlbmNpZXMgI2N1cnJlbmN5LXNlbGVjdG9yIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweCA2cHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH1cblxuLnBvc2l0aW9uLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMHZ3KTsgfVxuICAucG9zaXRpb24tcmlnaHQgI21lbnUtbWFpbi1tZW51LW1vYmlsZSBsaSAuc3VibWVudS10b2dnbGUsIC5wb3NpdGlvbi1yaWdodCAjbWVudS1tYWluLW1lbnUtbW9iaWxlLWRlIGxpIC5zdWJtZW51LXRvZ2dsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9XG4gIC5wb3NpdGlvbi1yaWdodCAjbWVudS1tYWluLW1lbnUtbW9iaWxlIGxpLmhhcy1zdWJtZW51LXRvZ2dsZSA+IGEsIC5wb3NpdGlvbi1yaWdodCAjbWVudS1tYWluLW1lbnUtbW9iaWxlLWRlIGxpLmhhcy1zdWJtZW51LXRvZ2dsZSA+IGEge1xuICAgIG1hcmdpbi1yaWdodDogNzBweDsgfVxuXG4ucG9zaXRpb24tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwdncpOyB9XG4gIC5wb3NpdGlvbi1sZWZ0ICNtZW51LW1haW4tbWVudS1tb2JpbGUtYXIgbGkgLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIGxlZnQ6IDA7IH1cbiAgLnBvc2l0aW9uLWxlZnQgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1hciBsaS5oYXMtc3VibWVudS10b2dnbGUgPiBhIHtcbiAgICBtYXJnaW4tbGVmdDogNzBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXJpZ2h0IC5zaXRlLWhlYWRlciwgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWxlZnQgLnNpdGUtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNkQ3NjsgfVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLW92ZXJsYXktZml4ZWQge1xuICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7IH1cblxuLmhhcy1wb3NpdGlvbi1yaWdodCAubWVudUljb24gc3BhbjpudGgtb2YtdHlwZSgxKSwgLmhhcy1wb3NpdGlvbi1sZWZ0IC5tZW51SWNvbiBzcGFuOm50aC1vZi10eXBlKDEpIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2Zvcm06IHJvdGF0ZXooNDVkZWcpIHRyYW5zbGF0ZSg2cHgsIDVweCk7IH1cblxuLmhhcy1wb3NpdGlvbi1yaWdodCAubWVudUljb24gc3BhbjpudGgtb2YtdHlwZSgyKSwgLmhhcy1wb3NpdGlvbi1sZWZ0IC5tZW51SWNvbiBzcGFuOm50aC1vZi10eXBlKDIpIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2Zvcm06IHJvdGF0ZXooLTQ1ZGVnKTsgfVxuXG4uaGFzLXBvc2l0aW9uLXJpZ2h0IC5tZW51SWNvbiBzcGFuOm50aC1vZi10eXBlKDMpLCAuaGFzLXBvc2l0aW9uLWxlZnQgLm1lbnVJY29uIHNwYW46bnRoLW9mLXR5cGUoMykge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHdpZHRoOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDhweCwgLThweCkgcm90YXRleig0NWRlZyk7IH1cblxuLm1lbnVJY29uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDMwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLm1lbnVJY29uIHNwYW4ge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBtYXJnaW46IDNweCAwO1xuICAgIHRyYW5zaXRpb246IDAuNHMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjYsIDAuMzIsIDEuNik7IH1cbiAgICAubWVudUljb24gc3BhbjpudGgtb2YtdHlwZSgxKSB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5tZW51SWNvbiBzcGFuOm50aC1vZi10eXBlKDIpIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm1lbnVJY29uIHNwYW46bnRoLW9mLXR5cGUoMykge1xuICAgICAgd2lkdGg6IDcwJTsgfVxuXG4uY3RhLW1vYmlsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTA7XG4gIGhlaWdodDogNjBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jdGEtbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuY3RhLW1vYmlsZSBhIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLmN0YS1tb2JpbGUgYTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7IH1cbiAgICAuY3RhLW1vYmlsZSBhW2RhdGEtaHJlZj0nZW5xdWlyZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICNGM0Y0Rjg7XG4gICAgICBjb2xvcjogIzAwNkQ3NjsgfVxuXG4uaG90ZWxzLXRlbXBsYXRlLWhvdGVsLW5ld3MgLnNpdGUtaGVhZGVyLCAuc2luZ2xlLW5ld3MgLnNpdGUtaGVhZGVyLCAucGFnZS10ZW1wbGF0ZS1wYWdlLXNpdGVtYXAgLnNpdGUtaGVhZGVyLCAucG9zdC10eXBlLWFyY2hpdmUtcmVudCAuc2l0ZS1oZWFkZXIsIC5wYWdlLXRlbXBsYXRlLXBhZ2UtbmV3cyAuc2l0ZS1oZWFkZXIsIC5wYWdlLXRlbXBsYXRlLXBhZ2UtMzYwVG91ciAuc2l0ZS1oZWFkZXIsIC5lcnJvcjQwNCAuc2l0ZS1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2RDc2OyB9XG4gIC5ob3RlbHMtdGVtcGxhdGUtaG90ZWwtbmV3cyAuc2l0ZS1oZWFkZXIgLnRvcC1iYXIsIC5zaW5nbGUtbmV3cyAuc2l0ZS1oZWFkZXIgLnRvcC1iYXIsIC5wYWdlLXRlbXBsYXRlLXBhZ2Utc2l0ZW1hcCAuc2l0ZS1oZWFkZXIgLnRvcC1iYXIsIC5wb3N0LXR5cGUtYXJjaGl2ZS1yZW50IC5zaXRlLWhlYWRlciAudG9wLWJhciwgLnBhZ2UtdGVtcGxhdGUtcGFnZS1uZXdzIC5zaXRlLWhlYWRlciAudG9wLWJhciwgLnBhZ2UtdGVtcGxhdGUtcGFnZS0zNjBUb3VyIC5zaXRlLWhlYWRlciAudG9wLWJhciwgLmVycm9yNDA0IC5zaXRlLWhlYWRlciAudG9wLWJhciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuaG90ZWxzLXRlbXBsYXRlLWhvdGVsLW5ld3MgLnNpdGUtaGVhZGVyIC50b3AtYmFyLXJpZ2h0X19idG4sIC5zaW5nbGUtbmV3cyAuc2l0ZS1oZWFkZXIgLnRvcC1iYXItcmlnaHRfX2J0biwgLnBhZ2UtdGVtcGxhdGUtcGFnZS1zaXRlbWFwIC5zaXRlLWhlYWRlciAudG9wLWJhci1yaWdodF9fYnRuLCAucG9zdC10eXBlLWFyY2hpdmUtcmVudCAuc2l0ZS1oZWFkZXIgLnRvcC1iYXItcmlnaHRfX2J0biwgLnBhZ2UtdGVtcGxhdGUtcGFnZS1uZXdzIC5zaXRlLWhlYWRlciAudG9wLWJhci1yaWdodF9fYnRuLCAucGFnZS10ZW1wbGF0ZS1wYWdlLTM2MFRvdXIgLnNpdGUtaGVhZGVyIC50b3AtYmFyLXJpZ2h0X19idG4sIC5lcnJvcjQwNCAuc2l0ZS1oZWFkZXIgLnRvcC1iYXItcmlnaHRfX2J0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwQTM5RDsgfVxuICAuaG90ZWxzLXRlbXBsYXRlLWhvdGVsLW5ld3MgLnNpdGUtaGVhZGVyIC53cG1sLWxzLXN1Yi1tZW51LCAuc2luZ2xlLW5ld3MgLnNpdGUtaGVhZGVyIC53cG1sLWxzLXN1Yi1tZW51LCAucGFnZS10ZW1wbGF0ZS1wYWdlLXNpdGVtYXAgLnNpdGUtaGVhZGVyIC53cG1sLWxzLXN1Yi1tZW51LCAucG9zdC10eXBlLWFyY2hpdmUtcmVudCAuc2l0ZS1oZWFkZXIgLndwbWwtbHMtc3ViLW1lbnUsIC5wYWdlLXRlbXBsYXRlLXBhZ2UtbmV3cyAuc2l0ZS1oZWFkZXIgLndwbWwtbHMtc3ViLW1lbnUsIC5wYWdlLXRlbXBsYXRlLXBhZ2UtMzYwVG91ciAuc2l0ZS1oZWFkZXIgLndwbWwtbHMtc3ViLW1lbnUsIC5lcnJvcjQwNCAuc2l0ZS1oZWFkZXIgLndwbWwtbHMtc3ViLW1lbnUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDZENzY7IH1cblxuLmFkbWluLWJhciAuc2l0ZS1oZWFkZXI6bm90KC5zdGlja3kpIC50b3AtYmFyIC5zdWJtZW51LWNvbnRhaW5lciB7XG4gIHRvcDogMTA0cHg7IH1cblxuLndwbWwtbGFuZ3VhZ2Utc3dpdGNoZXItYmxvY2sgdWwuaXNIb3Jpem9udGFsIHtcbiAgbWFyZ2luOiAyMHB4IDMwcHggIWltcG9ydGFudDsgfVxuICAud3BtbC1sYW5ndWFnZS1zd2l0Y2hlci1ibG9jayB1bC5pc0hvcml6b250YWwgbGkgZGl2IHNwYW4ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLyoud3BtbC1scy1pdGVtLWRle1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufSovXG5bbGFuZz1cImRlLURFXCJdIC50b3AtYmFyLXJpZ2h0X19idG4ge1xuICBwYWRkaW5nOiA3cHggMTBweDsgfVxuXG4uaG90ZWxNZW51IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG4gIC5ob3RlbE1lbnUuc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogMTAwMDAwO1xuICAgIHRvcDogMHB4O1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDsgfVxuICAuaG90ZWxNZW51X2NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogIzAwNkQ3NjtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5ob3RlbE1lbnVfY29udGFpbmVyIGEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG4gICAgICAuaG90ZWxNZW51X2NvbnRhaW5lciBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIC5ob3RlbE1lbnVfY29udGFpbmVyIC5sb2dvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNTBweDsgfVxuICAgICAgLmhvdGVsTWVudV9jb250YWluZXIgLmxvZ28gaW1nIHtcbiAgICAgICAgd2lkdGg6IDIxNXB4OyB9XG4gICAgLmhvdGVsTWVudV9jb250YWluZXIgLm1lbnUtaXRlbS5oYXMtc3VibWVudSAuc3VibWVudS1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5ob3RlbE1lbnVfY29udGFpbmVyIC5tZW51LWl0ZW0uaGFzLXN1Ym1lbnU6aG92ZXIgPiAuc3VibWVudS1jb250YWluZXIge1xuICAgICAgYmFja2dyb3VuZDogIzAwNkQ3NjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmhvdGVsTWVudV9jb250YWluZXIgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtaXRlbSBhIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ob3RlbE1lbnVfY29udGFpbmVyIC5ob3RlbE5hdiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uaG90ZWxzLXRlbXBsYXRlIC5zaXRlLWhlYWRlci5zdGlja3kgLmhvdGVsTWVudSwgLnBhZ2UtdGVtcGxhdGUtcGFnZS1zdGF5IC5zaXRlLWhlYWRlci5zdGlja3kgLmhvdGVsTWVudSwgLnBhZ2UtdGVtcGxhdGUtcGFnZS1vZmZlcnNOZXcgLnNpdGUtaGVhZGVyLnN0aWNreSAuaG90ZWxNZW51LCAuc2luZ2xlLW9mZmVycyAuc2l0ZS1oZWFkZXIuc3RpY2t5IC5ob3RlbE1lbnUge1xuICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICBwb2ludGVyLWV2ZW50czogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5ob3RlbHMtdGVtcGxhdGUgLnNpdGUtaGVhZGVyLnN0aWNreSAuaG90ZWxNZW51IC5sb2dvLCAucGFnZS10ZW1wbGF0ZS1wYWdlLXN0YXkgLnNpdGUtaGVhZGVyLnN0aWNreSAuaG90ZWxNZW51IC5sb2dvLCAucGFnZS10ZW1wbGF0ZS1wYWdlLW9mZmVyc05ldyAuc2l0ZS1oZWFkZXIuc3RpY2t5IC5ob3RlbE1lbnUgLmxvZ28sIC5zaW5nbGUtb2ZmZXJzIC5zaXRlLWhlYWRlci5zdGlja3kgLmhvdGVsTWVudSAubG9nbyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuaG90ZWxzLXRlbXBsYXRlIC5zaXRlLWhlYWRlci5zdGlja3kgLmhvdGVsTWVudV9jb250YWluZXIsIC5wYWdlLXRlbXBsYXRlLXBhZ2Utc3RheSAuc2l0ZS1oZWFkZXIuc3RpY2t5IC5ob3RlbE1lbnVfY29udGFpbmVyLCAucGFnZS10ZW1wbGF0ZS1wYWdlLW9mZmVyc05ldyAuc2l0ZS1oZWFkZXIuc3RpY2t5IC5ob3RlbE1lbnVfY29udGFpbmVyLCAuc2luZ2xlLW9mZmVycyAuc2l0ZS1oZWFkZXIuc3RpY2t5IC5ob3RlbE1lbnVfY29udGFpbmVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7IH1cblxuLmhvdGVscy10ZW1wbGF0ZSAuc2l0ZS1oZWFkZXIuc3RpY2t5IC50b3AtYmFyIC5zdWJtZW51LWNvbnRhaW5lciwgLnBhZ2UtdGVtcGxhdGUtcGFnZS1zdGF5IC5zaXRlLWhlYWRlci5zdGlja3kgLnRvcC1iYXIgLnN1Ym1lbnUtY29udGFpbmVyLCAucGFnZS10ZW1wbGF0ZS1wYWdlLW9mZmVyc05ldyAuc2l0ZS1oZWFkZXIuc3RpY2t5IC50b3AtYmFyIC5zdWJtZW51LWNvbnRhaW5lciwgLnNpbmdsZS1vZmZlcnMgLnNpdGUtaGVhZGVyLnN0aWNreSAudG9wLWJhciAuc3VibWVudS1jb250YWluZXIge1xuICB6LWluZGV4OiAxMDAwMDAwOyB9XG5cbi5ob3RlbHMtdGVtcGxhdGUgLnNpdGUtaGVhZGVyLnN0aWNreSAudG9wLWJhciAuZW5xdWlyZUJ0biwgLnBhZ2UtdGVtcGxhdGUtcGFnZS1zdGF5IC5zaXRlLWhlYWRlci5zdGlja3kgLnRvcC1iYXIgLmVucXVpcmVCdG4sIC5wYWdlLXRlbXBsYXRlLXBhZ2Utb2ZmZXJzTmV3IC5zaXRlLWhlYWRlci5zdGlja3kgLnRvcC1iYXIgLmVucXVpcmVCdG4sIC5zaW5nbGUtb2ZmZXJzIC5zaXRlLWhlYWRlci5zdGlja3kgLnRvcC1iYXIgLmVucXVpcmVCdG4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjNGNEY4O1xuICBjb2xvcjogIzAwNkQ3NjsgfVxuICAuaG90ZWxzLXRlbXBsYXRlIC5zaXRlLWhlYWRlci5zdGlja3kgLnRvcC1iYXIgLmVucXVpcmVCdG46aG92ZXIsIC5wYWdlLXRlbXBsYXRlLXBhZ2Utc3RheSAuc2l0ZS1oZWFkZXIuc3RpY2t5IC50b3AtYmFyIC5lbnF1aXJlQnRuOmhvdmVyLCAucGFnZS10ZW1wbGF0ZS1wYWdlLW9mZmVyc05ldyAuc2l0ZS1oZWFkZXIuc3RpY2t5IC50b3AtYmFyIC5lbnF1aXJlQnRuOmhvdmVyLCAuc2luZ2xlLW9mZmVycyAuc2l0ZS1oZWFkZXIuc3RpY2t5IC50b3AtYmFyIC5lbnF1aXJlQnRuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBBMzlEICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNGM0Y0Rjg7IH1cblxuLmhvdGVscy10ZW1wbGF0ZSAuc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLmVucXVpcmVCdG4sIC5wYWdlLXRlbXBsYXRlLXBhZ2Utc3RheSAuc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLmVucXVpcmVCdG4sIC5wYWdlLXRlbXBsYXRlLXBhZ2Utb2ZmZXJzTmV3IC5zaXRlLWhlYWRlciAudG9wLWJhciAuZW5xdWlyZUJ0biwgLnNpbmdsZS1vZmZlcnMgLnNpdGUtaGVhZGVyIC50b3AtYmFyIC5lbnF1aXJlQnRuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YzRjRGODtcbiAgY29sb3I6ICMwMDZENzY7IH1cbiAgLmhvdGVscy10ZW1wbGF0ZSAuc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLmVucXVpcmVCdG46aG92ZXIsIC5wYWdlLXRlbXBsYXRlLXBhZ2Utc3RheSAuc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLmVucXVpcmVCdG46aG92ZXIsIC5wYWdlLXRlbXBsYXRlLXBhZ2Utb2ZmZXJzTmV3IC5zaXRlLWhlYWRlciAudG9wLWJhciAuZW5xdWlyZUJ0bjpob3ZlciwgLnNpbmdsZS1vZmZlcnMgLnNpdGUtaGVhZGVyIC50b3AtYmFyIC5lbnF1aXJlQnRuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBBMzlEICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNGM0Y0Rjg7IH1cblxuLmRhdGVyYW5nZXBpY2tlciAuZHJwLWNhbGVuZGFyIHtcbiAgbWF4LXdpZHRoOiBmaXQtY29udGVudCAhaW1wb3J0YW50OyB9XG5cbi5tYWluLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tYWluLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5tYWluLWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1haW4tZ3JpZCB7XG4gICAgICBtYXJnaW4tdG9wOiAzcmVtOyB9IH1cbiAgLm1haW4tZ3JpZC5zaWRlYmFyLWxlZnQgLm1haW4tY29udGVudCB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLm1haW4tZ3JpZC5zaWRlYmFyLWxlZnQgLnNpZGViYXIge1xuICAgIG9yZGVyOiAyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1haW4tZ3JpZC5zaWRlYmFyLWxlZnQgLm1haW4tY29udGVudCB7XG4gICAgICBvcmRlcjogMjsgfVxuICAgIC5tYWluLWdyaWQuc2lkZWJhci1sZWZ0IC5zaWRlYmFyIHtcbiAgICAgIG9yZGVyOiAxOyB9IH1cbiAgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50LWZ1bGwtd2lkdGgge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLm1haW4tZ3JpZCAuc2lkZWJhciB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5tYWluLWdyaWQgLnNpZGViYXIge1xuICAgICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtOyB9IH1cblxuLmZvb3Rlci1jb250YWluZXIge1xuICAvKkBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyO1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNjApOyovXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDZENzY7XG4gIHBhZGRpbmc6IDMwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogODBweDsgfSB9XG5cbi5mb290ZXItZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIHBhZGRpbmc6IDEuODc1cmVtIDA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5mb290ZXItZ3JpZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG4gIC5mb290ZXItZ3JpZCBzZWN0aW9uIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtaW4taGVpZ2h0OiAwcHg7XG4gICAgbWluLXdpZHRoOiAwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mb290ZXItZ3JpZCBzZWN0aW9uIHtcbiAgICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmZvb3Rlci1ncmlkIHVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuICAuZm9vdGVyLWdyaWQgLndpZGdldC53aWRnZXRfYmxvY2sge1xuICAgIGZsZXg6IGluaXRpYWw7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLmZvb3Rlci1ncmlkIC53aWRnZXQud2lkZ2V0X2Jsb2NrOmZpcnN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiAzMCU7IH1cbiAgICAuZm9vdGVyLWdyaWQgLndpZGdldC53aWRnZXRfYmxvY2s6bnRoLWNoaWxkKDIpIHtcbiAgICAgIHdpZHRoOiAzNSU7IH1cbiAgICAuZm9vdGVyLWdyaWQgLndpZGdldC53aWRnZXRfYmxvY2s6bGFzdC1jaGlsZCB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb290ZXItZ3JpZCAud2lkZ2V0LndpZGdldF9ibG9jayB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAgICAgICAuZm9vdGVyLWdyaWQgLndpZGdldC53aWRnZXRfYmxvY2s6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfSB9XG4gIC5mb290ZXItZ3JpZCAud2lkZ2V0IC53aWRnZXRfbmF2X21lbnUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgLmZvb3Rlci1ncmlkIC53aWRnZXQgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIC5mb290ZXItZ3JpZCAud2lkZ2V0IGgyLCAuZm9vdGVyLWdyaWQgLndpZGdldCBoMyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxLjV2dztcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9vdGVyLWdyaWQgLndpZGdldCBoMiwgLmZvb3Rlci1ncmlkIC53aWRnZXQgaDMge1xuICAgICAgICBmb250LXNpemU6IDZ2dztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgLmZvb3Rlci1ncmlkIC53aWRnZXQgcCB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAuZm9vdGVyLWdyaWQgLndpZGdldCBwIGEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBsaW5lLWhlaWdodDogMjZweDsgfVxuICAgIC5mb290ZXItZ3JpZCAud2lkZ2V0IHAgc3BhbiB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9vdGVyLWdyaWQgLndpZGdldCBwIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTsgfVxuICAgICAgICAuZm9vdGVyLWdyaWQgLndpZGdldCBwIHNwYW4ge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cbiAgLmZvb3Rlci1ncmlkIC53aWRnZXQgI2dmb3JtXzEsIC5mb290ZXItZ3JpZCAud2lkZ2V0ICNnZm9ybV85IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjsgfVxuICAgIC5mb290ZXItZ3JpZCAud2lkZ2V0ICNnZm9ybV8xIC5nZm9ybV9ib2R5LCAuZm9vdGVyLWdyaWQgLndpZGdldCAjZ2Zvcm1fOSAuZ2Zvcm1fYm9keSB7XG4gICAgICB3aWR0aDogOTYlOyB9XG4gICAgICAuZm9vdGVyLWdyaWQgLndpZGdldCAjZ2Zvcm1fMSAuZ2Zvcm1fYm9keSBpbnB1dCwgLmZvb3Rlci1ncmlkIC53aWRnZXQgI2dmb3JtXzkgLmdmb3JtX2JvZHkgaW5wdXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBwYWRkaW5nOiA4cHggMDsgfVxuICAgIC5mb290ZXItZ3JpZCAud2lkZ2V0ICNnZm9ybV8xIC5nZm9ybV9mb290ZXIsIC5mb290ZXItZ3JpZCAud2lkZ2V0ICNnZm9ybV85IC5nZm9ybV9mb290ZXIge1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuZm9vdGVyLWdyaWQgLndpZGdldCAjZ2Zvcm1fMSAuZ2Zvcm1fZm9vdGVyIGlucHV0LCAuZm9vdGVyLWdyaWQgLndpZGdldCAjZ2Zvcm1fOSAuZ2Zvcm1fZm9vdGVyIGlucHV0IHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMTJweCAwO1xuICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlO1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXI6IG5vbmU7IH1cbiAgLmZvb3Rlci1ncmlkIC53aWRnZXQgLmdmb3JtX3dyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgLmZvb3Rlci1ncmlkIC53aWRnZXQgLndwLWJsb2NrLXNvY2lhbC1saW5rczpub3QoLmlzLXN0eWxlLWxvZ29zLW9ubHkpIC53cC1zb2NpYWwtbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICAgIC5mb290ZXItZ3JpZCAud2lkZ2V0IC53cC1ibG9jay1zb2NpYWwtbGlua3M6bm90KC5pcy1zdHlsZS1sb2dvcy1vbmx5KSAud3Atc29jaWFsLWxpbmsgc3ZnIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZm9vdGVyLWdyaWQgLndpZGdldCAud3AtYmxvY2stc29jaWFsLWxpbmtzOm5vdCguaXMtc3R5bGUtbG9nb3Mtb25seSkgLndwLXNvY2lhbC1saW5rIGEge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgY29sb3I6ICNmZmY7IH1cblxuLndpZGdldF9uYXZfbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgLndpZGdldF9uYXZfbWVudSAubWVudSBsaSB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAgIC53aWRnZXRfbmF2X21lbnUgLm1lbnUgbGkgYSB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC53aWRnZXRfbmF2X21lbnUgLm1lbnUgbGkuaXMtYWN0aXZlID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLndpZGdldF9uYXZfbWVudSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC53aWRnZXRfbmF2X21lbnUgLm1lbnUgbGkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpOyB9XG4gICAgICAgIC53aWRnZXRfbmF2X21lbnUgLm1lbnUgbGkgYSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLm90Z3MtZGV2ZWxvcG1lbnQtc2l0ZS1mcm9udC1lbmQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICNibG9jay0xMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICNibG9jay0xMCBwIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH0gfVxuXG4uc2luZ2xlLWhvdGVscyAud2lkZ2V0X25hdl9tZW51IC5tZW51IGxpIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNpbmdsZS1ob3RlbHMgLmZvb3Rlci1ncmlkIC53aWRnZXQge1xuICBmbGV4OiBpbml0aWFsO1xuICBtYXJnaW46IDA7IH1cbiAgLnNpbmdsZS1ob3RlbHMgLmZvb3Rlci1ncmlkIC53aWRnZXQ6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiAzMCU7IH1cbiAgLnNpbmdsZS1ob3RlbHMgLmZvb3Rlci1ncmlkIC53aWRnZXQ6bnRoLWNoaWxkKDIpIHtcbiAgICB3aWR0aDogMzUlOyB9XG4gIC5zaW5nbGUtaG90ZWxzIC5mb290ZXItZ3JpZCAud2lkZ2V0Omxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc2luZ2xlLWhvdGVscyAuZm9vdGVyLWdyaWQgLndpZGdldCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfSB9XG5cbi53aGF0c2FwcEljb24ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMTBweDtcbiAgcmlnaHQ6IDEwcHg7XG4gIHotaW5kZXg6IDE7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAud2hhdHNhcHBJY29uIHtcbiAgICAgIGJvdHRvbTogNjVweDsgfSB9XG5cbi5naWZ0Q2FyZEJ0biB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAxMHB4O1xuICByaWdodDogMTBweDtcbiAgYmFja2dyb3VuZDogIzBBNDE1ODtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgd2lkdGg6IDU1cHg7XG4gIGhlaWdodDogNTVweDtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjsgfVxuICAuZ2lmdENhcmRCdG46aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmdpZnRDYXJkQnRuIHtcbiAgICAgIGJvdHRvbTogNjVweDsgfSB9XG5cbmJvZHkjdGlueW1jZSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgcGFkZGluZzogMS4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaXRlcy1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3gtc2hhZG93OiAwIC0ycHggMCByZ2JhKDAsIDAsIDAsIDAuMikgaW5zZXQ7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyOiBub25lOyB9XG5cbi5idG4ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDF2dztcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuYnRuIHtcbiAgICAgIGZvbnQtc2l6ZTogNHZ3OyB9IH1cbiAgLmJ0bi1ibHVlQmxvY2sge1xuICAgIGJhY2tncm91bmQ6ICMwMDZENzY7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnRuLWJsdWVCbG9jazpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDBBMzlEO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ0bi1ibHVlQm94IHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogIzAwNkQ3NjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDA2RDc2OyB9XG4gICAgLmJ0bi1ibHVlQm94OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDZENzY7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnRuLXdoaXRlQmxvY2sge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgY29sb3I6ICMwMDZENzY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjsgfVxuICAgIC5idG4td2hpdGVCbG9jazpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idG4td2hpdGVCb3gge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7IH1cbiAgICAuYnRuLXdoaXRlQm94OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBjb2xvcjogIzAwNkQ3NiAhaW1wb3J0YW50OyB9XG4gIC5idG4tdW5kZXJsaW5lIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMEEzOUQ7XG4gICAgY29sb3I6ICMwMEEzOUQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxLjJ2dzsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYnRuLXVuZGVybGluZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNHZ3OyB9IH1cblxuLyoucm91bmRlZHtcclxuICAgIGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7XHJcbiAgd2lkdGg6IDcwcHg7XHJcbiAgaGVpZ2h0OiA3MHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICBjb2xvcjogI2ZmZjtcclxuICB6LWluZGV4OiAxMDAwO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgYWxpZ24taXRlbXM6Y2VudGVyO1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn0qL1xuLmhvbWVQYWdlX2hhd2FuYSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgLmhvbWVQYWdlX2hhd2FuYS1pbnRybyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgcGFkZGluZzogMTAwcHggMTUwcHg7IH1cbiAgICAuaG9tZVBhZ2VfaGF3YW5hLWludHJvIGRpdiB7XG4gICAgICBmbGV4OiAxOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ob21lUGFnZV9oYXdhbmEtaW50cm8ge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIHBhZGRpbmc6IDI1cHg7IH1cbiAgICAgICAgLmhvbWVQYWdlX2hhd2FuYS1pbnRybyBkaXYge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGZsZXg6IGluaXRpYWw7IH1cbiAgICAgICAgICAuaG9tZVBhZ2VfaGF3YW5hLWludHJvIGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDsgfSB9XG4gIC5ob21lUGFnZV9oYXdhbmEtc2xpZGVyX2NvbnRlbnQgZGl2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuaG9tZVBhZ2VfaGF3YW5hLXNsaWRlcl9jb250ZW50IGRpdiBkaXYge1xuICAgICAgcGFkZGluZzogMjBweCA1MHB4OyB9XG4gICAgICAuaG9tZVBhZ2VfaGF3YW5hLXNsaWRlcl9jb250ZW50IGRpdiBkaXYgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXZ3O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ob21lUGFnZV9oYXdhbmEtc2xpZGVyX2NvbnRlbnQgZGl2IHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAgIC5ob21lUGFnZV9oYXdhbmEtc2xpZGVyX2NvbnRlbnQgZGl2IGRpdiB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gICAgICAgICAgLmhvbWVQYWdlX2hhd2FuYS1zbGlkZXJfY29udGVudCBkaXYgZGl2IHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzdnc7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ob21lUGFnZV9oYXdhbmEtc2xpZGVyX2NvbnRlbnQge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7IH0gfVxuXG4uaG9tZVBhZ2VfaGF3YW5hLCAuaG9tZVBhZ2VfZXZlbnRzIHtcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmhvbWVQYWdlX2hhd2FuYSwgLmhvbWVQYWdlX2V2ZW50cyB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjVweDsgfSB9XG4gIC5ob21lUGFnZV9oYXdhbmEgLnNsaWRlcnNDb250YWluZXIgLm1haW5TbGlkZXIgLnNsaWNrLXNsaWRlLnNsaWNrLWN1cnJlbnQgLnNsaWRlcl90aXRsZSwgLmhvbWVQYWdlX2V2ZW50cyAuc2xpZGVyc0NvbnRhaW5lciAubWFpblNsaWRlciAuc2xpY2stc2xpZGUuc2xpY2stY3VycmVudCAuc2xpZGVyX3RpdGxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cblxuLmhvbWVQYWdlX2hvdGVscyB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBhZGRpbmc6IDEyMHB4IDBweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgLmhvbWVQYWdlX2hvdGVscy5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgIGJhY2tncm91bmQ6ICNGM0Y0Rjg7IH1cbiAgICAuaG9tZVBhZ2VfaG90ZWxzLmJhY2tncm91bmRDb2xvciBoMiBzcGFuIHtcbiAgICAgIGNvbG9yOiAjMDA2RDc2OyB9XG4gIC5ob21lUGFnZV9ob3RlbHMgaDIge1xuICAgIHBhZGRpbmc6IDAgMTUwcHg7IH1cbiAgICAuaG9tZVBhZ2VfaG90ZWxzIGgyIHNwYW4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmhvbWVQYWdlX2hvdGVscyBoMyB7XG4gICAgZm9udC1zaXplOiAyNXB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ob21lUGFnZV9ob3RlbHMgaDMge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ob21lUGFnZV9ob3RlbHMge1xuICAgICAgcGFkZGluZzogMjVweCAwOyB9XG4gICAgICAuaG9tZVBhZ2VfaG90ZWxzIGgyIHtcbiAgICAgICAgcGFkZGluZzogMCAyNXB4OyB9IH1cblxuLmhvbWVQYWdlX29mZmVycyB7XG4gIGJhY2tncm91bmQ6ICNGM0Y0Rjg7XG4gIHBhZGRpbmc6IDcwcHggMHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjsgfVxuICAuaG9tZVBhZ2Vfb2ZmZXJzLmJhY2tncm91bmRDb2xvciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAgIC5ob21lUGFnZV9vZmZlcnMuYmFja2dyb3VuZENvbG9yIGgyIHNwYW4ge1xuICAgICAgY29sb3I6ICMwMEEzOUQ7IH1cbiAgLmhvbWVQYWdlX29mZmVycyBoMiB7XG4gICAgcGFkZGluZzogMCAxNTBweDsgfVxuICAgIC5ob21lUGFnZV9vZmZlcnMgaDIgc3BhbiB7XG4gICAgICBjb2xvcjogIzAwNkQ3NjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ob21lUGFnZV9vZmZlcnMge1xuICAgICAgcGFkZGluZzogMzBweCAwOyB9XG4gICAgICAuaG9tZVBhZ2Vfb2ZmZXJzIGgyIHtcbiAgICAgICAgcGFkZGluZzogMCAyNXB4OyB9IH1cbiAgLmhvbWVQYWdlX29mZmVycyAub2ZmZXIge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICAgIC5ob21lUGFnZV9vZmZlcnMgLm9mZmVyLWltYWdlIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nOiA1MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNTBweDtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAgIC5ob21lUGFnZV9vZmZlcnMgLm9mZmVyLWltYWdlIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmhvbWVQYWdlX29mZmVycyAub2ZmZXItY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgICAgcGFkZGluZzogMTAwcHggMjAwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwMHB4O1xuICAgICAgd2lkdGg6IGNhbGMoNTAlICsgMzAwcHgpO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yODBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAuaG9tZVBhZ2Vfb2ZmZXJzIC5vZmZlci1jb250ZW50IGgzLCAuaG9tZVBhZ2Vfb2ZmZXJzIC5vZmZlci1jb250ZW50IHAge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgLmhvbWVQYWdlX29mZmVycyAub2ZmZXItY29udGVudCBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDsgfVxuICAgICAgLmhvbWVQYWdlX29mZmVycyAub2ZmZXItY29udGVudCBwLCAuaG9tZVBhZ2Vfb2ZmZXJzIC5vZmZlci1jb250ZW50IGEuYnRuIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gICAgICAuaG9tZVBhZ2Vfb2ZmZXJzIC5vZmZlci1jb250ZW50IC5wcmljZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgICAuaG9tZVBhZ2Vfb2ZmZXJzIC5vZmZlci1jb250ZW50IGEuYnRuIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICAgICAgcGFkZGluZzogN3B4IDIwcHg7XG4gICAgICAgIGNvbG9yOiAjMDBBMzlEO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaG9tZVBhZ2Vfb2ZmZXJzIC5vZmZlciB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAuaG9tZVBhZ2Vfb2ZmZXJzIC5vZmZlci1pbWFnZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAgIC5ob21lUGFnZV9vZmZlcnMgLm9mZmVyLWltYWdlIGltZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgIWltcG9ydGFudDsgfVxuICAgICAgICAuaG9tZVBhZ2Vfb2ZmZXJzIC5vZmZlci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAyNXB4IDMwcHggNDBweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgIC5ob21lUGFnZV9vZmZlcnMgLm9mZmVyLWNvbnRlbnQgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4OyB9XG4gICAgICAgICAgLmhvbWVQYWdlX29mZmVycyAub2ZmZXItY29udGVudCBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgICAgICAgIC5ob21lUGFnZV9vZmZlcnMgLm9mZmVyLWNvbnRlbnQgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAgICAgICAuaG9tZVBhZ2Vfb2ZmZXJzIC5vZmZlci1jb250ZW50IGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7IH0gfVxuICAuaG9tZVBhZ2Vfb2ZmZXJzIC5zbGljay1hcnJvdyB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGNvbG9yOiAjMDA2RDc2O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxMDBweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgZm9udC1zaXplOiAwOyB9XG4gICAgLmhvbWVQYWdlX29mZmVycyAuc2xpY2stYXJyb3cgaSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAuaG9tZVBhZ2Vfb2ZmZXJzIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAyMDBweDsgfVxuICAgIC5ob21lUGFnZV9vZmZlcnMgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgICAgcmlnaHQ6IDMwMHB4OyB9XG4gICAgLmhvbWVQYWdlX29mZmVycyAuc2xpY2stYXJyb3c6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaG9tZVBhZ2Vfb2ZmZXJzIC5zbGljay1hcnJvdyB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGJvdHRvbTogMjhweDsgfVxuICAgICAgICAuaG9tZVBhZ2Vfb2ZmZXJzIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICAgICAgICByaWdodDogMjBweDsgfVxuICAgICAgICAuaG9tZVBhZ2Vfb2ZmZXJzIC5zbGljay1hcnJvdy5zbGljay1wcmV2IHtcbiAgICAgICAgICByaWdodDogODBweDsgfSB9XG5cbi5ob21lUGFnZV9yZWFsRXN0YXRlIHtcbiAgcGFkZGluZzogNzBweCAwcHggMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gIC5ob21lUGFnZV9yZWFsRXN0YXRlIGgyIHtcbiAgICBwYWRkaW5nOiAwIDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmhvbWVQYWdlX3JlYWxFc3RhdGUge1xuICAgICAgcGFkZGluZzogMzBweCAwOyB9XG4gICAgICAuaG9tZVBhZ2VfcmVhbEVzdGF0ZSBoMiB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweDsgfSB9XG4gIC5ob21lUGFnZV9yZWFsRXN0YXRlLXNsaWRlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjsgfVxuICAgIC5ob21lUGFnZV9yZWFsRXN0YXRlLXNsaWRlci5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgICAgYmFja2dyb3VuZDogI0YzRjRGODsgfVxuICAgIC5ob21lUGFnZV9yZWFsRXN0YXRlLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgICBwYWRkaW5nOiAwIDIwJSAwIDIwJSAhaW1wb3J0YW50OyB9XG4gICAgLmhvbWVQYWdlX3JlYWxFc3RhdGUtc2xpZGVyIC5zbGljay1zbGlkZSB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7IH1cbiAgICAgIC5ob21lUGFnZV9yZWFsRXN0YXRlLXNsaWRlciAuc2xpY2stc2xpZGU6bm90KC5zbGljay1jdXJyZW50KSAucHJvcGVydHktY29udGVudCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCkgdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaG9tZVBhZ2VfcmVhbEVzdGF0ZS1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5ob21lUGFnZV9yZWFsRXN0YXRlLXNsaWRlciAuc2xpY2stYXJyb3cge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAgICAgLmhvbWVQYWdlX3JlYWxFc3RhdGUtc2xpZGVyIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICAgICAgICByaWdodDogMjBweDsgfVxuICAgICAgICAuaG9tZVBhZ2VfcmVhbEVzdGF0ZS1zbGlkZXIgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgICAgICAgIHJpZ2h0OiA4MHB4OyB9XG4gICAgICAuaG9tZVBhZ2VfcmVhbEVzdGF0ZS1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gIC5ob21lUGFnZV9yZWFsRXN0YXRlIC5wcm9wZXJ0eS1jb250ZW50IHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB3aWR0aDogNjAlO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgcGFkZGluZzogMjBweCA0MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZTsgfVxuICAgIC5ob21lUGFnZV9yZWFsRXN0YXRlIC5wcm9wZXJ0eS1jb250ZW50IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XG4gICAgLmhvbWVQYWdlX3JlYWxFc3RhdGUgLnByb3BlcnR5LWNvbnRlbnQgLmN0YSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgICAgLmhvbWVQYWdlX3JlYWxFc3RhdGUgLnByb3BlcnR5LWNvbnRlbnQgLmN0YSBkaXYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAuaG9tZVBhZ2VfcmVhbEVzdGF0ZSAucHJvcGVydHktY29udGVudCAuY3RhIHAge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLmhvbWVQYWdlX3JlYWxFc3RhdGUgLnByb3BlcnR5LWNvbnRlbnQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgICAgLmhvbWVQYWdlX3JlYWxFc3RhdGUgLnByb3BlcnR5LWNvbnRlbnQgZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuICAuaG9tZVBhZ2VfcmVhbEVzdGF0ZSAuc2xpY2stYXJyb3cge1xuICAgIGJhY2tncm91bmQ6ICMwMDZENzY7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogMTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDA2RDc2O1xuICAgIGZvbnQtc2l6ZTogMDsgfVxuICAgIC5ob21lUGFnZV9yZWFsRXN0YXRlIC5zbGljay1hcnJvdyBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgIC5ob21lUGFnZV9yZWFsRXN0YXRlIC5zbGljay1hcnJvdzpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAjMDA2RDc2OyB9XG4gICAgLmhvbWVQYWdlX3JlYWxFc3RhdGUgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ob21lUGFnZV9yZWFsRXN0YXRlIC5zbGljay1hcnJvdyB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7IH0gfVxuXG4uaG9tZVBhZ2VfcmVudGFsIHtcbiAgcGFkZGluZzogMHB4IDBweCA3MHB4IDE1MHB4O1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5ob21lUGFnZV9yZW50YWwuYmFja2dyb3VuZENvbG9yIHtcbiAgICBiYWNrZ3JvdW5kOiAjRjNGNEY4OyB9XG4gICAgLmhvbWVQYWdlX3JlbnRhbC5iYWNrZ3JvdW5kQ29sb3IgaDIgc3BhbiB7XG4gICAgICBjb2xvcjogIzAwNkQ3NjsgfVxuICAuaG9tZVBhZ2VfcmVudGFsIGgyIHtcbiAgICBsaW5lLWhlaWdodDogNHZ3O1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cbiAgICAuaG9tZVBhZ2VfcmVudGFsIGgyIHNwYW4ge1xuICAgICAgbGluZS1oZWlnaHQ6IDV2dzsgfVxuICAuaG9tZVBhZ2VfcmVudGFsIGRpdiB7XG4gICAgZmxleDogMTsgfVxuICAgIC5ob21lUGFnZV9yZW50YWwgZGl2IGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ob21lUGFnZV9yZW50YWwgZGl2IHAge1xuICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7IH1cbiAgICAgIC5ob21lUGFnZV9yZW50YWwgZGl2IHAucHJpY2Uge1xuICAgICAgICBjb2xvcjogIzAwQTM5RDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxNHB0OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmhvbWVQYWdlX3JlbnRhbCBkaXYgcC5wcmljZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ob21lUGFnZV9yZW50YWwge1xuICAgICAgcGFkZGluZzogNDBweCAwcHggNDBweCAyNXB4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gICAgICAuaG9tZVBhZ2VfcmVudGFsIGRpdiB7XG4gICAgICAgIGZsZXg6IGluaXRpYWw7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDEwcHggMDsgfVxuICAgICAgLmhvbWVQYWdlX3JlbnRhbCBoMiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2dnc7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAgICAgLmhvbWVQYWdlX3JlbnRhbCBoMiBzcGFuIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogOHZ3OyB9IH1cblxuLmhvbWVQYWdlX2V2ZW50cyB7XG4gIGJhY2tncm91bmQ6ICNGM0Y0Rjg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xuICBwYWRkaW5nOiAxMDBweCAwcHg7IH1cbiAgLmhvbWVQYWdlX2V2ZW50cy5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgICAuaG9tZVBhZ2VfZXZlbnRzLmJhY2tncm91bmRDb2xvciBoMiBzcGFuIHtcbiAgICAgIGNvbG9yOiAjMDBBMzlEOyB9XG4gIC5ob21lUGFnZV9ldmVudHMgaDIge1xuICAgIHBhZGRpbmctbGVmdDogMTUwcHg7IH1cbiAgICAuaG9tZVBhZ2VfZXZlbnRzIGgyIHNwYW4ge1xuICAgICAgY29sb3I6ICMwMDZENzY7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuaG9tZVBhZ2VfZXZlbnRzIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMDsgfVxuICAgICAgLmhvbWVQYWdlX2V2ZW50cyBoMiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfVxuICAgICAgLmhvbWVQYWdlX2V2ZW50cy1zbGlkZXJfY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgICAgICAgLmhvbWVQYWdlX2V2ZW50cy1zbGlkZXJfY29udGVudCBkaXYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIC5ob21lUGFnZV9ldmVudHMgLnNsaWRlcnNDb250YWluZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uaG9tZVBhZ2VfbWFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDUwcHggMCAxMDBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmhvbWVQYWdlX21hcCB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDA7IH1cbiAgICAgIC5ob21lUGFnZV9tYXAgaWZyYW1lIHtcbiAgICAgICAgd2lkdGg6IDkwJTsgfSB9XG4gIC5ob21lUGFnZV9tYXAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIC5ob21lUGFnZV9tYXAgI21hcCB7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgICB3aWR0aDogODAlOyB9XG4gIC5ob21lUGFnZV9tYXAgLmdtLXN0eWxlLWl3LCAuaG9tZVBhZ2VfbWFwIC5nbS1zdHlsZS1pdy1kIHtcbiAgICBtYXgtaGVpZ2h0OiA0MDBweCAhaW1wb3J0YW50OyB9XG4gIC5ob21lUGFnZV9tYXAgLmluZm9XaW5kb3cge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuaG9tZVBhZ2VfbWFwIC5pbmZvV2luZG93X2NvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIHdpZHRoOiAzMzBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmhvbWVQYWdlX21hcCAuaW5mb1dpbmRvd19jb250YWluZXIge1xuICAgICAgICAgIHdpZHRoOiAyNjVweDsgfSB9XG4gICAgICAuaG9tZVBhZ2VfbWFwIC5pbmZvV2luZG93X2NvbnRhaW5lciAuY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG87IH1cbiAgICAgIC5ob21lUGFnZV9tYXAgLmluZm9XaW5kb3dfY29udGFpbmVyIGg2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAyM3B4O1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5ob21lUGFnZV9tYXAgLmluZm9XaW5kb3dfY29udGFpbmVyIGg2IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgICAuaG9tZVBhZ2VfbWFwIC5pbmZvV2luZG93X2NvbnRhaW5lciBwLCAuaG9tZVBhZ2VfbWFwIC5pbmZvV2luZG93X2NvbnRhaW5lciBhLCAuaG9tZVBhZ2VfbWFwIC5pbmZvV2luZG93X2NvbnRhaW5lciBzcGFuIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5ob21lUGFnZV9tYXAgLmluZm9XaW5kb3dfY29udGFpbmVyIGltZyB7XG4gICAgICAgIHdpZHRoOiAyMjVweDsgfVxuICAgICAgLmhvbWVQYWdlX21hcCAuaW5mb1dpbmRvd19jb250YWluZXIgLmltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5ob21lUGFnZV9tYXAgLmluZm9XaW5kb3dfY29udGFpbmVyIC5pbWFnZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEzMHB4OyB9IH1cbiAgICAgIC5ob21lUGFnZV9tYXAgLmluZm9XaW5kb3dfY29udGFpbmVyIHAge1xuICAgICAgICBmb250LXNpemU6IDEycHg7IH1cbiAgICAgICAgLmhvbWVQYWdlX21hcCAuaW5mb1dpbmRvd19jb250YWluZXIgcDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBFbE1lc3Npcmk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgLmhvbWVQYWdlX21hcCAuaW5mb1dpbmRvd19jb250YWluZXIgcDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgICAgIC5ob21lUGFnZV9tYXAgLmluZm9XaW5kb3dfY29udGFpbmVyIHAgc3BhbiwgLmhvbWVQYWdlX21hcCAuaW5mb1dpbmRvd19jb250YWluZXIgcCBpIHtcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7IH1cbiAgICAgIC5ob21lUGFnZV9tYXAgLmluZm9XaW5kb3dfY29udGFpbmVyIGEge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAuaG9tZVBhZ2VfbWFwIC5pbmZvV2luZG93X2NvbnRhaW5lciBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gICAgICAuaG9tZVBhZ2VfbWFwIC5pbmZvV2luZG93X2NvbnRhaW5lciAuZGlzY292ZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAuaG9tZVBhZ2VfbWFwIC5nbS1zdHlsZSAuZ20tc3R5bGUtaXctYyB7XG4gICAgYmFja2dyb3VuZDogIzAwNkQ3NjtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ob21lUGFnZV9tYXAgLmdtLXN0eWxlIC5nbS1zdHlsZS1pdy1jIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyNzBweCAhaW1wb3J0YW50OyB9IH1cbiAgLmhvbWVQYWdlX21hcCAuZ20tc3R5bGUgLmdtLXN0eWxlLWl3LWQge1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDsgfVxuICAuaG9tZVBhZ2VfbWFwIC5nbS11aS1ob3Zlci1lZmZlY3QgPiBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHdpZHRoOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7IH1cbiAgLmhvbWVQYWdlX21hcCAuZ20tc3R5bGUgLmdtLXN0eWxlLWl3LXRjOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogIzAwNkQ3NjsgfVxuXG4uaG9tZVBhZ2UgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcl90aXRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uaG9tZVBhZ2UgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLnNsaWNrLXNsaWRlIGgzIHtcbiAgZm9udC1zaXplOiAzdnc7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogMCAwIDhweCAjNWM1YzVjOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmhvbWVQYWdlIC5ub0Fycm93U2xpZGVyIC5zbGlkZXJzQ29udGFpbmVyIC5zbGljay1zbGlkZSBoMyB7XG4gICAgICBmb250LXNpemU6IDd2dzsgfSB9XG5cbi5yZWFsRXN0YXRlX2ludHJvLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDEwMHB4IDE1MHB4OyB9XG4gIC5yZWFsRXN0YXRlX2ludHJvLXRleHQgZGl2IHtcbiAgICB3aWR0aDogNDglOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJlYWxFc3RhdGVfaW50cm8tdGV4dCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBwYWRkaW5nOiAyNXB4IDUwcHg7IH1cbiAgICAgIC5yZWFsRXN0YXRlX2ludHJvLXRleHQgZGl2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4ucmVhbEVzdGF0ZV9pbnRyby1pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTsgfVxuXG4ucmVhbEVzdGF0ZSAuZnJlZWhvbGRfcHJvcGVydGllcyB7XG4gIHBhZGRpbmc6IDEwMHB4IDE1MHB4IDUwcHg7XG4gIGJhY2tncm91bmQ6ICNGM0Y0Rjg7IH1cbiAgLnJlYWxFc3RhdGUgLmZyZWVob2xkX3Byb3BlcnRpZXMgZGl2IHtcbiAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgd2lkdGg6IDgwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5yZWFsRXN0YXRlIC5mcmVlaG9sZF9wcm9wZXJ0aWVzIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH1cbiAgICAgIC5yZWFsRXN0YXRlIC5mcmVlaG9sZF9wcm9wZXJ0aWVzIGRpdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweDsgfSB9XG5cbi5yZWFsRXN0YXRlX2ludmVzdGluZyB7XG4gIHBhZGRpbmc6IDUwcHggMHB4IDUwcHggMTUwcHg7XG4gIGJhY2tncm91bmQ6ICNGM0Y0Rjg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLnJlYWxFc3RhdGVfaW52ZXN0aW5nLmJhY2tncm91bmRDb2xvciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAucmVhbEVzdGF0ZV9pbnZlc3RpbmcgaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cbiAgLnJlYWxFc3RhdGVfaW52ZXN0aW5nIGRpdiB7XG4gICAgZmxleDogMTsgfVxuICAgIC5yZWFsRXN0YXRlX2ludmVzdGluZyBkaXYgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yZWFsRXN0YXRlX2ludmVzdGluZyBkaXYgLmltZyB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAxLjNzIGN1YmljLWJlemllcigwLjc2LCAwLCAwLjI0LCAxKTtcbiAgICAgICAgY2xpcC1wYXRoOiBpbnNldCgxMDAlIDAgMCAwKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgLnJlYWxFc3RhdGVfaW52ZXN0aW5nIGRpdi5pcy1pbnZpZXcgLmltZyB7XG4gICAgICAgIGNsaXAtcGF0aDogaW5zZXQoMCAwIDAgMCk7IH0gfVxuICAgIC5yZWFsRXN0YXRlX2ludmVzdGluZyBkaXYgcCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDsgfVxuICAgICAgLnJlYWxFc3RhdGVfaW52ZXN0aW5nIGRpdiBwLnByaWNlIHtcbiAgICAgICAgY29sb3I6ICMwMEEzOUQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAucmVhbEVzdGF0ZV9pbnZlc3Rpbmcge1xuICAgICAgcGFkZGluZzogNDBweCAwcHggNDBweCAyNXB4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gICAgICAucmVhbEVzdGF0ZV9pbnZlc3RpbmcgZGl2IHtcbiAgICAgICAgZmxleDogaW5pdGlhbDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMTBweCAwOyB9XG4gICAgICAgIC5yZWFsRXN0YXRlX2ludmVzdGluZyBkaXYgcCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfVxuICAgICAgLnJlYWxFc3RhdGVfaW52ZXN0aW5nIGgxIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gIC5yZWFsRXN0YXRlX3Byb3BlcnRpZXMge1xuICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4ucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eSB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eS1jb250ZW50LCAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eS1pbWFnZSB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZWFsRXN0YXRlX3Byb3BlcnRpZXMgLnByb3BlcnR5LWltYWdlIHtcbiAgICAgIC8qJi5pcy1pbnZpZXd7XHJcblx0XHRcdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdFx0XHRjbGlwLXBhdGg6IGluc2V0KDAgMCAwIDApO1xyXG5cdFx0XHRcdFx0XHR9XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMS4zcyBjdWJpYy1iZXppZXIoLjc2LDAsLjI0LDEpO1xyXG5cdFx0XHRcdFx0XHRjbGlwLXBhdGg6IGluc2V0KDEwMCUgMCAwIDApO1xyXG5cdFx0XHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0XHRcdFx0fSovIH0gfVxuICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eS1jb250ZW50IHtcbiAgICBwYWRkaW5nOiA1MHB4OyB9XG4gIC5yZWFsRXN0YXRlX3Byb3BlcnRpZXMgLnByb3BlcnR5IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnJlYWxFc3RhdGVfcHJvcGVydGllcyAucHJvcGVydHkgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJlYWxFc3RhdGVfcHJvcGVydGllcyAucHJvcGVydHkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMHB4OyB9XG4gICAgICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eS1jb250ZW50LCAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eS1pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eSBhIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7IH0gfVxuICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQob2RkKSB7XG4gICAgcGFkZGluZy1yaWdodDogMTUwcHg7IH1cbiAgICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQob2RkKSBoMSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQob2RkKSAucHJvcGVydHktY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTAlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNSU7XG4gICAgICBtYXJnaW4tdG9wOiA1JTsgfVxuICAgICAgLnJlYWxFc3RhdGVfcHJvcGVydGllcyAucHJvcGVydHk6bnRoLWNoaWxkKG9kZCkgLnByb3BlcnR5LWNvbnRlbnQgcCB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLnJlYWxFc3RhdGVfcHJvcGVydGllcyAucHJvcGVydHk6bnRoLWNoaWxkKG9kZCkgLnByb3BlcnR5LWltYWdlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1JTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyNXB4OyB9XG4gICAgICAgIC5yZWFsRXN0YXRlX3Byb3BlcnRpZXMgLnByb3BlcnR5Om50aC1jaGlsZChvZGQpOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjRjNGNEY4OyB9XG4gICAgICAgIC5yZWFsRXN0YXRlX3Byb3BlcnRpZXMgLnByb3BlcnR5Om50aC1jaGlsZChvZGQpIGgxIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH1cbiAgICAgICAgLnJlYWxFc3RhdGVfcHJvcGVydGllcyAucHJvcGVydHk6bnRoLWNoaWxkKG9kZCkgLnByb3BlcnR5LWNvbnRlbnQge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNGM0Y0Rjg7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDUwcHg7IH1cbiAgICAgICAgICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQob2RkKSAucHJvcGVydHktY29udGVudCBwIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgICAgICAgLnJlYWxFc3RhdGVfcHJvcGVydGllcyAucHJvcGVydHk6bnRoLWNoaWxkKG9kZCkgLnByb3BlcnR5LWNvbnRlbnQgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzAwNkQ3NjsgfVxuICAgICAgICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQob2RkKSAucHJvcGVydHktaW1hZ2Uge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQoZXZlbikgLnByb3BlcnR5LWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMTUwcHg7IH1cbiAgICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQoZXZlbikgLnByb3BlcnR5LWNvbnRlbnQgaDEgc3BhbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5yZWFsRXN0YXRlX3Byb3BlcnRpZXMgLnByb3BlcnR5Om50aC1jaGlsZChldmVuKSAucHJvcGVydHktY29udGVudCBkaXYge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnJlYWxFc3RhdGVfcHJvcGVydGllcyAucHJvcGVydHk6bnRoLWNoaWxkKGV2ZW4pIC5wcm9wZXJ0eS1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9XG4gICAgICAgIC5yZWFsRXN0YXRlX3Byb3BlcnRpZXMgLnByb3BlcnR5Om50aC1jaGlsZChldmVuKSAucHJvcGVydHktY29udGVudCBwIHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDI1cHggMDsgfVxuICAgICAgICAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQoZXZlbikgLnByb3BlcnR5LWNvbnRlbnQgYSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7IH0gfVxuXG4ucmVhbEVzdGF0ZV9pbnZlc3Qge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4IDEwMHB4OyB9XG4gIC5yZWFsRXN0YXRlX2ludmVzdC1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAucmVhbEVzdGF0ZV9pbnZlc3QtY29udGVudCBkaXYge1xuICAgICAgd2lkdGg6IDQ1JTsgfVxuICAucmVhbEVzdGF0ZV9pbnZlc3QtZ2V0SW5Ub3VjaCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogMzBweCBhdXRvOyB9XG4gICAgLnJlYWxFc3RhdGVfaW52ZXN0LWdldEluVG91Y2ggZGl2IHtcbiAgICAgIHdpZHRoOiA0NSU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5yZWFsRXN0YXRlX2ludmVzdCB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDI1cHg7IH1cbiAgICAgIC5yZWFsRXN0YXRlX2ludmVzdC1jb250ZW50IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgICAgLnJlYWxFc3RhdGVfaW52ZXN0LWNvbnRlbnQgZGl2IHtcbiAgICAgICAgICB3aWR0aDogODAlOyB9XG4gICAgICAucmVhbEVzdGF0ZV9pbnZlc3QtZ2V0SW5Ub3VjaCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAgIC5yZWFsRXN0YXRlX2ludmVzdC1nZXRJblRvdWNoIGRpdiB7XG4gICAgICAgICAgd2lkdGg6IDgwJTsgfSB9XG5cbi5yZWFsRXN0YXRlIC5nZm9ybV93cmFwcGVyIC5nZmllbGQjZmllbGRfMl80IHtcbiAgbWFyZ2luLWJvdHRvbTogMThweDsgfVxuXG4uc2luZ2xlLXJlYWxFc3RhdGUgLmRlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAxMDBweCAxNTBweDsgfVxuICAuc2luZ2xlLXJlYWxFc3RhdGUgLmRlc2NyaXB0aW9uIGRpdiB7XG4gICAgd2lkdGg6IDQ1JTsgfVxuICAuc2luZ2xlLXJlYWxFc3RhdGUgLmRlc2NyaXB0aW9uIGgxIHtcbiAgICBmb250LXNpemU6IDR2dzsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLmRlc2NyaXB0aW9uIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiA3dnc7IH1cbiAgICAgICAgLnNpbmdsZS1yZWFsRXN0YXRlIC5kZXNjcmlwdGlvbiBoMSBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gIC5zaW5nbGUtcmVhbEVzdGF0ZSAuZGVzY3JpcHRpb24gYSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLmRlc2NyaXB0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMjVweDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLnNpbmdsZS1yZWFsRXN0YXRlIC5kZXNjcmlwdGlvbiBkaXYge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLmRlc2NyaXB0aW9uIGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDI1cHg7IH0gfVxuXG4uc2luZ2xlLXJlYWxFc3RhdGUgLmZlYXR1cmVzIHtcbiAgYmFja2dyb3VuZDogIzAwNkQ3NjtcbiAgcGFkZGluZzogMTAwcHggMTUwcHg7IH1cbiAgLnNpbmdsZS1yZWFsRXN0YXRlIC5mZWF0dXJlc19jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAyMHB4O1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7IH1cbiAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLmZlYXR1cmVzX2NvbnRhaW5lciBkaXYge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDIwcHggMDsgfVxuICAgICAgLnNpbmdsZS1yZWFsRXN0YXRlIC5mZWF0dXJlc19jb250YWluZXIgZGl2IGg2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAuZmVhdHVyZXNfY29udGFpbmVyIGRpdiBpbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIC5zaW5nbGUtcmVhbEVzdGF0ZSAuZmVhdHVyZXMgaDIsIC5zaW5nbGUtcmVhbEVzdGF0ZSAuZmVhdHVyZXMgaDYge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAuZmVhdHVyZXMge1xuICAgICAgcGFkZGluZzogNTBweCAyNXB4OyB9XG4gICAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLmZlYXR1cmVzX2NvbnRhaW5lciB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgIGdhcDogMTBweDsgfVxuICAgICAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLmZlYXR1cmVzX2NvbnRhaW5lciBoNiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAuZmVhdHVyZXNfY29udGFpbmVyIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDYwJTsgfSB9XG5cbi5zaW5nbGUtcmVhbEVzdGF0ZSAucHJvcGVydHlfY2Fyb3VzZWwge1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY4OyB9XG4gIC5zaW5nbGUtcmVhbEVzdGF0ZSAucHJvcGVydHlfY2Fyb3VzZWwgaDEge1xuICAgIHBhZGRpbmctdG9wOiA5MHB4O1xuICAgIHBhZGRpbmctbGVmdDogNTBweDsgfVxuICAuc2luZ2xlLXJlYWxFc3RhdGUgLnByb3BlcnR5X2Nhcm91c2VsIC5zbGlkZXJfY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMTBweCAwICFpbXBvcnRhbnQ7IH1cbiAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLnByb3BlcnR5X2Nhcm91c2VsIC5zbGlkZXJfY29udGVudCBwIHtcbiAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7IH1cbiAgLnNpbmdsZS1yZWFsRXN0YXRlIC5wcm9wZXJ0eV9jYXJvdXNlbCAubWFpblNsaWRlciAuc2xpZGVyX2NvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4OyB9XG4gIC5zaW5nbGUtcmVhbEVzdGF0ZSAucHJvcGVydHlfY2Fyb3VzZWwgLm1haW5TbGlkZXIgLnNsaWNrLWN1cnJlbnQgLnNsaWRlcl9jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAuc2luZ2xlLXJlYWxFc3RhdGUgLnByb3BlcnR5X2Nhcm91c2VsIC5uYXZTbGlkZXIgLnNsaWRlcl9jb250ZW50IHtcbiAgICBtYXJnaW46IDE2cHggMCAhaW1wb3J0YW50OyB9XG5cbi5zaW5nbGUtcmVhbEVzdGF0ZSAuZG9jdW1lbnRzIHtcbiAgYmFja2dyb3VuZDogI0YzRjRGODtcbiAgcGFkZGluZzogMjBweCAwcHggMTAwcHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAuc2luZ2xlLXJlYWxFc3RhdGUgLmRvY3VtZW50cy5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgLnNpbmdsZS1yZWFsRXN0YXRlIC5kb2N1bWVudHMgLnBkZiB7XG4gICAgd2lkdGg6IDMwJTtcbiAgICBtYXJnaW46IDAgMTBweDsgfVxuICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAuZG9jdW1lbnRzIC5wZGYgZGl2IHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDZENzY7XG4gICAgICBwYWRkaW5nOiAxMHB4IDE1cHggMzBweDsgfVxuICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAuZG9jdW1lbnRzIC5wZGYgaDUsIC5zaW5nbGUtcmVhbEVzdGF0ZSAuZG9jdW1lbnRzIC5wZGYgYSB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAuZG9jdW1lbnRzIC5wZGYgYSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLmRvY3VtZW50cyAucGRmIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAuZG9jdW1lbnRzIHtcbiAgICAgIHBhZGRpbmc6IDYwcHggMCAwcHg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAuZG9jdW1lbnRzIC5wZGYge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9IH1cblxuLnNpbmdsZS1yZWFsRXN0YXRlIC5tYXN0ZXJwbGFuIHtcbiAgcGFkZGluZzogNTBweCAwcHg7IH1cbiAgLnNpbmdsZS1yZWFsRXN0YXRlIC5tYXN0ZXJwbGFuIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAuc2luZ2xlLXJlYWxFc3RhdGUgLm1hc3RlcnBsYW4gaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAubWFzdGVycGxhbiB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDA7IH0gfVxuXG4uc2luZ2xlLXJlYWxFc3RhdGUgLm1haW5GZWF0dXJlcyB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7IH1cbiAgLnNpbmdsZS1yZWFsRXN0YXRlIC5tYWluRmVhdHVyZXMgaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgLnNpbmdsZS1yZWFsRXN0YXRlIC5tYWluRmVhdHVyZXNfY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogMjBweDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCAxZnIpOyB9XG4gICAgLnNpbmdsZS1yZWFsRXN0YXRlIC5tYWluRmVhdHVyZXNfY29udGFpbmVyIGRpdiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcGFkZGluZzogMjBweCAwOyB9XG4gICAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLm1haW5GZWF0dXJlc19jb250YWluZXIgZGl2IGg2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAubWFpbkZlYXR1cmVzX2NvbnRhaW5lciBkaXYgaW1nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAubWFpbkZlYXR1cmVzIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH1cbiAgICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAubWFpbkZlYXR1cmVzX2NvbnRhaW5lciB7XG4gICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfVxuICAgICAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLm1haW5GZWF0dXJlc19jb250YWluZXIgaDYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgICAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLm1haW5GZWF0dXJlc19jb250YWluZXIgaW1nIHtcbiAgICAgICAgICB3aWR0aDogNjAlOyB9IH1cblxuLnNpbmdsZS1yZWFsRXN0YXRlIC5yZWFsRXN0YXRlX2dhbGxlcnkge1xuICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgLnNpbmdsZS1yZWFsRXN0YXRlIC5yZWFsRXN0YXRlX2dhbGxlcnkuYmFja2dyb3VuZENvbG9yIHtcbiAgICBiYWNrZ3JvdW5kOiAjRjNGNEY4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnNpbmdsZS1yZWFsRXN0YXRlIC5yZWFsRXN0YXRlX2dhbGxlcnkge1xuICAgICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjVweDsgfSB9XG5cbi5zaW5nbGUtcmVhbEVzdGF0ZSAucmVhbEVzdGF0ZV9mb3JtIHtcbiAgYmFja2dyb3VuZDogI0YzRjRGODtcbiAgcGFkZGluZzogNTBweCAxNTBweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgLnNpbmdsZS1yZWFsRXN0YXRlIC5yZWFsRXN0YXRlX2Zvcm0uYmFja2dyb3VuZENvbG9yIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gIC5zaW5nbGUtcmVhbEVzdGF0ZSAucmVhbEVzdGF0ZV9mb3JtIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnNpbmdsZS1yZWFsRXN0YXRlIC5yZWFsRXN0YXRlX2Zvcm0ge1xuICAgICAgcGFkZGluZzogMjVweDsgfVxuICAgICAgLnNpbmdsZS1yZWFsRXN0YXRlIC5yZWFsRXN0YXRlX2Zvcm0gLmdmb3JtX2Zvb3RlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuXG4uc2luZ2xlLXJlYWxFc3RhdGUgLm90aGVyUHJvamVjdHMge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4IDEwMHB4OyB9XG4gIC5zaW5nbGUtcmVhbEVzdGF0ZSAub3RoZXJQcm9qZWN0cyBoMSB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7IH1cbiAgLnNpbmdsZS1yZWFsRXN0YXRlIC5vdGhlclByb2plY3RzIC5wcm9qZWN0cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLm90aGVyUHJvamVjdHMgLnByb2plY3RzIC5wcm9wZXJ0eSB7XG4gICAgICB3aWR0aDogMzIlOyB9XG4gICAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLm90aGVyUHJvamVjdHMgLnByb2plY3RzIC5wcm9wZXJ0eSBoMyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAub3RoZXJQcm9qZWN0cyB7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9XG4gICAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLm90aGVyUHJvamVjdHMgaDEge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgICAgLnNpbmdsZS1yZWFsRXN0YXRlIC5vdGhlclByb2plY3RzIC5wcm9qZWN0cyB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAuc2luZ2xlLXJlYWxFc3RhdGUgLm90aGVyUHJvamVjdHMgLnByb2plY3RzIC5wcm9wZXJ0eSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICAgICAgIC5zaW5nbGUtcmVhbEVzdGF0ZSAub3RoZXJQcm9qZWN0cyAucHJvamVjdHMgLnByb3BlcnR5IGgzIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cblxuLnN0YXlfaW50cm8ge1xuICBwYWRkaW5nOiAxMDBweCAxNTBweCA1MHB4OyB9XG4gIC5zdGF5X2ludHJvIGRpdiB7XG4gICAgY29sdW1uLWNvdW50OiAyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnN0YXlfaW50cm8ge1xuICAgICAgcGFkZGluZzogMjVweDsgfVxuICAgICAgLnN0YXlfaW50cm8gaDMge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZm9udC1zaXplOiAzMnB4OyB9XG4gICAgICAuc3RheV9pbnRybyBkaXYge1xuICAgICAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMTsgfSB9XG5cbi5zdGF5IC5ob3RlbHMgLmhvdGVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiA1MHB4IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluOyB9XG4gIC5zdGF5IC5ob3RlbHMgLmhvdGVsLWluZm8sIC5zdGF5IC5ob3RlbHMgLmhvdGVsLWdhbGxlcnkge1xuICAgIHdpZHRoOiA0OCU7IH1cbiAgLnN0YXkgLmhvdGVscyAuaG90ZWwgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuc3RheSAuaG90ZWxzIC5ob3RlbCBoMSBzcGFuIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc3RheSAuaG90ZWxzIC5ob3RlbDpudGgtY2hpbGQoZXZlbikge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNTBweDtcbiAgICBiYWNrZ3JvdW5kOiAjRjNGNEY4OyB9XG4gICAgLnN0YXkgLmhvdGVscyAuaG90ZWw6bnRoLWNoaWxkKGV2ZW4pLmJhY2tncm91bmRDb2xvciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gIC5zdGF5IC5ob3RlbHMgLmhvdGVsOm50aC1jaGlsZChvZGQpIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHBhZGRpbmctbGVmdDogMTUwcHg7IH1cbiAgICAuc3RheSAuaG90ZWxzIC5ob3RlbDpudGgtY2hpbGQob2RkKS5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgICAgYmFja2dyb3VuZDogI0YzRjRGODsgfVxuICAuc3RheSAuaG90ZWxzIC5ob3RlbCAuZGV0YWlscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAxMHB4IDBweDtcbiAgICBjb2x1bW4tZ2FwOiA2MHB4OyB9XG4gICAgLnN0YXkgLmhvdGVscyAuaG90ZWwgLmRldGFpbHMgcCB7XG4gICAgICBjb2xvcjogIzAwQTM5RDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuc3RheSAuaG90ZWxzIC5ob3RlbCAuZGV0YWlscyBwOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICBmb250LWZhbWlseTogRWxNZXNzaXJpOyB9XG4gICAgICAuc3RheSAuaG90ZWxzIC5ob3RlbCAuZGV0YWlscyBwIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIG9wYWNpdHk6IDAuNjsgfVxuICAgICAgICAuc3RheSAuaG90ZWxzIC5ob3RlbCAuZGV0YWlscyBwIHNwYW4udG9vbHRpcEljb24ge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogLTE2cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGN1cnNvcjogaGVscDsgfVxuICAgICAgICAgIC5zdGF5IC5ob3RlbHMgLmhvdGVsIC5kZXRhaWxzIHAgc3Bhbi50b29sdGlwSWNvbiAudG9vbHRpcCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIC5zdGF5IC5ob3RlbHMgLmhvdGVsIC5kZXRhaWxzIHAgc3Bhbi50b29sdGlwSWNvbiB7XG4gICAgICAgICAgICAgIHJpZ2h0OiAtMjBweDsgfSB9XG4gICAgICAgICAgLnN0YXkgLmhvdGVscyAuaG90ZWwgLmRldGFpbHMgcCBzcGFuLnRvb2x0aXBJY29uOmhvdmVyIC50b29sdGlwIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgICAgICAgICAgbWluLXdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggMHB4ICNhNWE1YTU7IH1cbiAgICAgIC5zdGF5IC5ob3RlbHMgLmhvdGVsIC5kZXRhaWxzIHAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnN0YXkgLmhvdGVscyAuaG90ZWwgLmRldGFpbHMgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9XG4gICAgICAgICAgLnN0YXkgLmhvdGVscyAuaG90ZWwgLmRldGFpbHMgcDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgICAgICAgICAuc3RheSAuaG90ZWxzIC5ob3RlbCAuZGV0YWlscyBwIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4OyB9XG4gICAgICAgICAgLnN0YXkgLmhvdGVscyAuaG90ZWwgLmRldGFpbHMgcCBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIC5zdGF5IC5ob3RlbHMgLmhvdGVsIC5idG5zIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4OyB9XG4gICAgLnN0YXkgLmhvdGVscyAuaG90ZWwgLmJ0bnMgYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cbiAgLnN0YXkgLmhvdGVscyAuaG90ZWwgLmhvdGVsSGlnaGxpZ2h0cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDIwcHg7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnN0YXkgLmhvdGVscyAuaG90ZWwgLmhvdGVsSGlnaGxpZ2h0cyBwIHtcbiAgICAgIGNvbG9yOiAjMDBBMzlEO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgIC5zdGF5IC5ob3RlbHMgLmhvdGVsIC5ob3RlbEhpZ2hsaWdodHMgcCBpbWcge1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygxLjMpOyB9XG4gIC5zdGF5IC5ob3RlbHMgLmhvdGVsLWdhbGxlcnkgLnNsaWNrLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtNTBweDtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgY29sb3I6ICMwMEEzOUQ7IH1cbiAgICAuc3RheSAuaG90ZWxzIC5ob3RlbC1nYWxsZXJ5IC5zbGljay1hcnJvdy5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgICAuc3RheSAuaG90ZWxzIC5ob3RlbC1nYWxsZXJ5IC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICAgIGxlZnQ6IDYwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnN0YXkgLmhvdGVscyAuaG90ZWwtZ2FsbGVyeSAuc2xpY2stYXJyb3cge1xuICAgICAgICBib3R0b206IGluaXRpYWw7XG4gICAgICAgIHRvcDogLTQwcHg7XG4gICAgICAgIGxlZnQ6IGluaXRpYWwgIWltcG9ydGFudDsgfVxuICAgICAgICAuc3RheSAuaG90ZWxzIC5ob3RlbC1nYWxsZXJ5IC5zbGljay1hcnJvdy5zbGljay1wcmV2IHtcbiAgICAgICAgICByaWdodDogMzBweDsgfVxuICAgICAgICAuc3RheSAuaG90ZWxzIC5ob3RlbC1nYWxsZXJ5IC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICAgICAgICByaWdodDogLTEwcHg7IH0gfVxuICAuc3RheSAuaG90ZWxzIC5ob3RlbC1nYWxsZXJ5IC5zbGlkZXItbm8ge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBmb250LWZhbWlseTogRWxNZXNzaXJpO1xuICAgIGNvbG9yOiByZ2JhKDAsIDE2MywgMTU3LCAwLjQpO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7IH1cbiAgICAuc3RheSAuaG90ZWxzIC5ob3RlbC1nYWxsZXJ5IC5zbGlkZXItbm8gc3BhbiB7XG4gICAgICBjb2xvcjogIzAwQTM5RDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc3RheSAuaG90ZWxzIC5ob3RlbC1nYWxsZXJ5IC5zbGlkZXItbm8ge1xuICAgICAgICAvKnBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcblx0XHRcdFx0XHQgICAgZm9udC1zaXplOiAyMHB4OyovXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zdGF5IC5ob3RlbHMgLmhvdGVsIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcbiAgICAgIC8qJjpudGgtY2hpbGQoZXZlbil7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjI1cHg7XHJcblx0XHRcdFx0XHQuaG90ZWwtaW5mbyxoMXtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjI1cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCY6bnRoLWNoaWxkKG9kZCl7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MjVweDtcclxuXHRcdFx0XHRcdC5ob3RlbC1pbmZve1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjI1cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSovIH1cbiAgICAgIC5zdGF5IC5ob3RlbHMgLmhvdGVsLWluZm8sIC5zdGF5IC5ob3RlbHMgLmhvdGVsLWdhbGxlcnkge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLnN0YXkgLmhvdGVscyAuaG90ZWwtaW5mbywgLnN0YXkgLmhvdGVscyAuaG90ZWwgaDEge1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7IH1cbiAgICAgIC5zdGF5IC5ob3RlbHMgLmhvdGVsIC5idG5zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgICAgIC5zdGF5IC5ob3RlbHMgLmhvdGVsIC5idG5zIGEge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5zdGF5X2RpbmVBcm91bmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDUwcHggMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1MHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjsgfVxuICAuc3RheV9kaW5lQXJvdW5kLWRldGFpbHMsIC5zdGF5X2RpbmVBcm91bmQtaW1hZ2Uge1xuICAgIHdpZHRoOiA0OCU7IH1cbiAgLnN0YXlfZGluZUFyb3VuZCBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5zdGF5X2RpbmVBcm91bmQgLmJ0bnMge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc3RheV9kaW5lQXJvdW5kIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuICAgICAgLnN0YXlfZGluZUFyb3VuZC1kZXRhaWxzLCAuc3RheV9kaW5lQXJvdW5kLWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5zdGF5X2RpbmVBcm91bmQtZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH0gfVxuXG4uc2luZ2xlSG90ZWxfaW50cm8ge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4OyB9XG4gIC5zaW5nbGVIb3RlbF9pbnRybyAuaW50cm9UZXh0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGNvbHVtbi1nYXA6IDEwcHg7IH1cbiAgICAuc2luZ2xlSG90ZWxfaW50cm8gLmludHJvVGV4dCBkaXYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2luZ2xlSG90ZWxfaW50cm8gLmludHJvVGV4dCB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAuc2luZ2xlSG90ZWxfaW50cm8gLmludHJvVGV4dCBkaXYge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgICAgLnNpbmdsZUhvdGVsX2ludHJvIC5pbnRyb1RleHQgZGl2Omxhc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZzogMCAyNXB4OyB9IH1cbiAgLnNpbmdsZUhvdGVsX2ludHJvIC5ob3RlbC1mYWNpbGl0aWVzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogMjBweDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCAxZnIpO1xuICAgIHBhZGRpbmc6IDUwcHggMDsgfVxuICAgIC5zaW5nbGVIb3RlbF9pbnRybyAuaG90ZWwtZmFjaWxpdGllcyBkaXYge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWNvbnRlbnQ6IHN0YXJ0O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAyMHB4IDA7IH1cbiAgICAgIC5zaW5nbGVIb3RlbF9pbnRybyAuaG90ZWwtZmFjaWxpdGllcyBkaXYgaDYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLnNpbmdsZUhvdGVsX2ludHJvIC5ob3RlbC1mYWNpbGl0aWVzIGRpdiBpbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaW5nbGVIb3RlbF9pbnRybyAuaG90ZWwtZmFjaWxpdGllcyB7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnNpbmdsZUhvdGVsX2ludHJvIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH0gfVxuXG4uc2luZ2xlSG90ZWxfcm9vbXMge1xuICBwYWRkaW5nOiA1MHB4IDBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgLnNpbmdsZUhvdGVsX3Jvb21zLmJhY2tncm91bmRDb2xvciB7XG4gICAgYmFja2dyb3VuZDogI0YzRjRGODsgfVxuICAuc2luZ2xlSG90ZWxfcm9vbXMgaDEge1xuICAgIHBhZGRpbmctbGVmdDogMTUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc2luZ2xlSG90ZWxfcm9vbXMge1xuICAgICAgcGFkZGluZzogMjVweCAwOyB9XG4gICAgICAuc2luZ2xlSG90ZWxfcm9vbXMgaDEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7IH0gfVxuICAuc2luZ2xlSG90ZWxfcm9vbXMgLmltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnNpbmdsZUhvdGVsX3Jvb21zIC5pbWcgLmltZ0hvdmVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNpbmdsZUhvdGVsX3Jvb21zIC5pbWcgLmltZ0hvdmVyIHtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICBsZWZ0OiBpbmhlcml0OyB9IH1cbiAgLnNpbmdsZUhvdGVsX3Jvb21zIFtkYXRhLXJvb21EZXRhaWxzXTpob3ZlciAuaW1nSG92ZXIge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLnNpbmdsZUhvdGVsX29mZmVycyB7XG4gIGJhY2tncm91bmQ6ICNGM0Y0Rjg7XG4gIHBhZGRpbmc6IDUwcHggMHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjsgfVxuICAuc2luZ2xlSG90ZWxfb2ZmZXJzLmJhY2tncm91bmRDb2xvciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAuc2luZ2xlSG90ZWxfb2ZmZXJzIGgxIHtcbiAgICBwYWRkaW5nOiAwIDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnNpbmdsZUhvdGVsX29mZmVycyB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDA7IH1cbiAgICAgIC5zaW5nbGVIb3RlbF9vZmZlcnMgaDEge1xuICAgICAgICBwYWRkaW5nOiAwIDI1cHg7IH0gfVxuICAuc2luZ2xlSG90ZWxfb2ZmZXJzIC5vZmZlciB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG4gICAgLnNpbmdsZUhvdGVsX29mZmVycyAub2ZmZXItaW1hZ2Uge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1MHB4O1xuICAgICAgei1pbmRleDogMTsgfVxuICAgICAgLnNpbmdsZUhvdGVsX29mZmVycyAub2ZmZXItaW1hZ2UgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuc2luZ2xlSG90ZWxfb2ZmZXJzIC5vZmZlci1jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDZENzY7XG4gICAgICBwYWRkaW5nOiAxMDBweCAyMDBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMzAwcHg7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgKyAzMDBweCk7XG4gICAgICBtYXJnaW4tbGVmdDogLTI4MHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC5zaW5nbGVIb3RlbF9vZmZlcnMgLm9mZmVyLWNvbnRlbnQgZGl2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5zaW5nbGVIb3RlbF9vZmZlcnMgLm9mZmVyLWNvbnRlbnQgaDIsIC5zaW5nbGVIb3RlbF9vZmZlcnMgLm9mZmVyLWNvbnRlbnQgcCB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAuc2luZ2xlSG90ZWxfb2ZmZXJzIC5vZmZlci1jb250ZW50IGgyIHtcbiAgICAgICAgZm9udC1zaXplOiA0MHB4OyB9XG4gICAgICAuc2luZ2xlSG90ZWxfb2ZmZXJzIC5vZmZlci1jb250ZW50IHAsIC5zaW5nbGVIb3RlbF9vZmZlcnMgLm9mZmVyLWNvbnRlbnQgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgICAgLnNpbmdsZUhvdGVsX29mZmVycyAub2ZmZXItY29udGVudCAucHJpY2Uge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgLnNpbmdsZUhvdGVsX29mZmVycyAub2ZmZXItY29udGVudCBhIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICAgICAgcGFkZGluZzogN3B4IDIwcHg7XG4gICAgICAgIGNvbG9yOiAjMDBBMzlEO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2luZ2xlSG90ZWxfb2ZmZXJzIC5vZmZlciB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAuc2luZ2xlSG90ZWxfb2ZmZXJzIC5vZmZlci1pbWFnZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5zaW5nbGVIb3RlbF9vZmZlcnMgLm9mZmVyLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDI1cHggMzBweCA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAuc2luZ2xlSG90ZWxfb2ZmZXJzIC5vZmZlci1jb250ZW50IGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDsgfVxuICAgICAgICAgIC5zaW5nbGVIb3RlbF9vZmZlcnMgLm9mZmVyLWNvbnRlbnQgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgICAgICAgICAuc2luZ2xlSG90ZWxfb2ZmZXJzIC5vZmZlci1jb250ZW50IGEge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgICAgICAgLnNpbmdsZUhvdGVsX29mZmVycyAub2ZmZXItY29udGVudCBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4OyB9IH1cbiAgLnNpbmdsZUhvdGVsX29mZmVycyAuc2xpY2stYXJyb3cge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb2xvcjogIzAwNkQ3NjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTAwcHg7XG4gICAgei1pbmRleDogMTsgfVxuICAgIC5zaW5nbGVIb3RlbF9vZmZlcnMgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICAgICAgcmlnaHQ6IDIwMHB4OyB9XG4gICAgLnNpbmdsZUhvdGVsX29mZmVycyAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gICAgICByaWdodDogMzAwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnNpbmdsZUhvdGVsX29mZmVycyAuc2xpY2stYXJyb3cge1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBib3R0b206IDI4cHg7IH1cbiAgICAgICAgLnNpbmdsZUhvdGVsX29mZmVycyAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCB7XG4gICAgICAgICAgcmlnaHQ6IDIwcHg7IH1cbiAgICAgICAgLnNpbmdsZUhvdGVsX29mZmVycyAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gICAgICAgICAgcmlnaHQ6IDgwcHg7IH0gfVxuXG4uc2luZ2xlSG90ZWwgLm91ckhvdGVsLCAuc2luZ2xlSG90ZWxfbmV3cyB7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnNpbmdsZUhvdGVsIC5vdXJIb3RlbCwgLnNpbmdsZUhvdGVsX25ld3Mge1xuICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7IH0gfVxuICAuc2luZ2xlSG90ZWwgLm91ckhvdGVsIGgxLCAuc2luZ2xlSG90ZWxfbmV3cyBoMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2luZ2xlSG90ZWwgLm91ckhvdGVsIGgxLCAuc2luZ2xlSG90ZWxfbmV3cyBoMSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDsgfSB9XG5cbi5zaW5nbGVIb3RlbCAub3VySG90ZWxfc2VjdGlvbjIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmctbGVmdDogMTUwcHg7IH1cbiAgLnNpbmdsZUhvdGVsIC5vdXJIb3RlbF9zZWN0aW9uMiA+IGRpdiB7XG4gICAgd2lkdGg6IDQ4JTsgfVxuICAuc2luZ2xlSG90ZWwgLm91ckhvdGVsX3NlY3Rpb24yIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc2luZ2xlSG90ZWwgLm91ckhvdGVsX3NlY3Rpb24yIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuICAgICAgLnNpbmdsZUhvdGVsIC5vdXJIb3RlbF9zZWN0aW9uMiA+IGRpdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5zaW5nbGVIb3RlbCAub3VySG90ZWxfc2VjdGlvbjIgPiBkaXYudGV4dCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMjVweDsgfSB9XG5cbi5zaW5nbGVIb3RlbF9uZXdzIC5tYWluU2xpZGVyIC5zbGljay1zbGlkZSBoNSB7XG4gIGZvbnQtc2l6ZTogMnZ3ICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc2luZ2xlSG90ZWxfbmV3cyAubWFpblNsaWRlciAuc2xpY2stc2xpZGUgaDUge1xuICAgICAgZm9udC1zaXplOiA1dncgIWltcG9ydGFudDsgfSB9XG5cbi5zaW5nbGVIb3RlbF9tYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMTBweCAxNTBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAvKiNtYXAge1xyXG5cdFx0ICBoZWlnaHQ6IDUwMHB4O1xyXG5cdFx0ICB3aWR0aDogODAlO1xyXG5cdFx0ICBtYXJnaW4tdG9wOiAtNTBweDtcclxuXHRcdH1cclxuXHRcdC5nbS1zdHlsZS1pdywgLmdtLXN0eWxlLWl3LWR7XHJcblx0XHRcdG1heC1oZWlnaHQ6IDQwMHB4ICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0XHQuaW5mb1dpbmRvd3tcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0Jl9jb250YWluZXJ7XHJcblx0XHRcdFx0YmFja2dyb3VuZDokZGFyay1ibHVlO1xyXG5cdFx0XHRcdHBhZGRpbmc6MTVweDtcclxuXHRcdFx0XHR3aWR0aDogMzMwcHg7XHJcblx0XHRcdFx0LmNvbnRlbnR7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAxMHB4IGF1dG87XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGg2e1xyXG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMjNweDtcclxuXHRcdFx0XHRcdGNvbG9yOiNmZmY7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHAsYXtcclxuXHRcdFx0XHRcdGNvbG9yOiNmZmY7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHR3aWR0aDogMjI1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5pbWFnZXtcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiAyMDBweDtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcclxuXHRcdCAgICBcdFx0JjpmaXJzdC1jaGlsZHtcclxuXHRcdCAgICBcdFx0XHRmb250LXNpemU6IDE4cHg7XHJcblx0XHQgICAgXHRcdFx0Zm9udC1mYW1pbHk6IEVsTWVzc2lyaTtcclxuXHRcdCAgICBcdFx0XHRsaW5lLWhlaWdodDogMTRweDtcclxuXHRcdCAgICBcdFx0fVxyXG5cdFx0ICAgIFx0XHRzcGFuLGl7XHJcblx0XHQgICAgXHRcdFx0Zm9udC1zaXplOiAxMHB4O1xyXG5cdFx0ICAgIFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGF7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5kaXNjb3ZlcntcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmdtLXN0eWxlIC5nbS1zdHlsZS1pdy1je1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiRkYXJrLWJsdWU7XHJcblx0XHRcdHBhZGRpbmc6MDtcclxuXHRcdH1cclxuXHRcdC5nbS1zdHlsZSAuZ20tc3R5bGUtaXctZHtcclxuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdFx0LmdtLXVpLWhvdmVyLWVmZmVjdD5zcGFue1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cdFx0ICAgIHdpZHRoOiAxNnB4ICFpbXBvcnRhbnQ7XHJcblx0XHQgICAgaGVpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0XHQuZ20tc3R5bGUgLmdtLXN0eWxlLWl3LXRjOjphZnRlcntcclxuXHRcdFx0YmFja2dyb3VuZDokZGFyay1ibHVlO1xyXG5cdFx0fSovIH1cbiAgLnNpbmdsZUhvdGVsX21hcCBoMSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc2luZ2xlSG90ZWxfbWFwIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICAvKmlmcmFtZXtcclxuICAgIFx0XHRcdHdpZHRoOiA5MCU7XHJcbiAgICBcdFx0fSovXG4gICAgICAvKmgxe1xyXG4gICAgXHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG4gICAgXHRcdH0qLyB9IH1cbiAgLnNpbmdsZUhvdGVsX21hcCAuYWNmLW1hcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA1MDBweDsgfVxuICAuc2luZ2xlSG90ZWxfbWFwIC5hY2YtbWFwIGltZyB7XG4gICAgbWF4LXdpZHRoOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cblxuLnNpbmdsZUhvdGVsX2RpbmluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogNTBweCAwO1xuICBwYWRkaW5nLWxlZnQ6IDE1MHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjsgfVxuICAuc2luZ2xlSG90ZWxfZGluaW5nLWRldGFpbHMsIC5zaW5nbGVIb3RlbF9kaW5pbmctaW1hZ2Uge1xuICAgIHdpZHRoOiA0OCU7IH1cbiAgLnNpbmdsZUhvdGVsX2RpbmluZyBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5zaW5nbGVIb3RlbF9kaW5pbmcgLmJ0bnMge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc2luZ2xlSG90ZWxfZGluaW5nIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuICAgICAgLnNpbmdsZUhvdGVsX2RpbmluZy1kZXRhaWxzLCAuc2luZ2xlSG90ZWxfZGluaW5nLWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uc2luZ2xlSG90ZWxfcmV2aWV3cyB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBhZGRpbmc6IDUwcHggMHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc2luZ2xlSG90ZWxfcmV2aWV3cy5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgIGJhY2tncm91bmQ6ICNGM0Y0Rjg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc2luZ2xlSG90ZWxfcmV2aWV3cyB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDA7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuICAuc2luZ2xlSG90ZWxfcmV2aWV3cyAuY29udGFpbmVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDYwJTsgfVxuICAgIC5zaW5nbGVIb3RlbF9yZXZpZXdzIC5jb250YWluZXIgLnJhdGUge1xuICAgICAgZm9udC1zaXplOiAyM3B4O1xuICAgICAgY29sb3I6ICMwMDZENzY7XG4gICAgICBtYXJnaW46IDMwcHggYXV0bzsgfVxuICAgICAgLnNpbmdsZUhvdGVsX3Jldmlld3MgLmNvbnRhaW5lciAucmF0ZSBpbWcge1xuICAgICAgICB3aWR0aDogMzBweDsgfVxuICAgIC5zaW5nbGVIb3RlbF9yZXZpZXdzIC5jb250YWluZXIgaDUge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIC5zaW5nbGVIb3RlbF9yZXZpZXdzIC5jb250YWluZXIgcCB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaW5nbGVIb3RlbF9yZXZpZXdzIC5jb250YWluZXIge1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfVxuICAgICAgICAuc2luZ2xlSG90ZWxfcmV2aWV3cyAuY29udGFpbmVyIC5pbWFnZXMge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7IH1cbiAgICAgICAgICAuc2luZ2xlSG90ZWxfcmV2aWV3cyAuY29udGFpbmVyIC5pbWFnZXMgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7IH1cbiAgICAgICAgLnNpbmdsZUhvdGVsX3Jldmlld3MgLmNvbnRhaW5lciBoNSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4OyB9XG4gICAgICAgIC5zaW5nbGVIb3RlbF9yZXZpZXdzIC5jb250YWluZXIgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgLnNpbmdsZUhvdGVsX3Jldmlld3MgLnRyaXBBZHZpc29yLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uc2luZ2xlSG90ZWxfb3RoZXJIb3RlbHMge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwYWRkaW5nOiA1MHB4IDBweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgLnNpbmdsZUhvdGVsX290aGVySG90ZWxzLmJhY2tncm91bmRDb2xvciB7XG4gICAgYmFja2dyb3VuZDogI0YzRjRGODsgfVxuICAuc2luZ2xlSG90ZWxfb3RoZXJIb3RlbHMgaDEge1xuICAgIHBhZGRpbmc6IDAgMTUwcHg7IH1cbiAgICAuc2luZ2xlSG90ZWxfb3RoZXJIb3RlbHMgaDEgc3BhbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zaW5nbGVIb3RlbF9vdGhlckhvdGVscyB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDA7IH1cbiAgICAgIC5zaW5nbGVIb3RlbF9vdGhlckhvdGVscyBoMSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweDsgfSB9XG5cbi5zaW5nbGVIb3RlbF9pbnN0YWdyYW0ge1xuICBwYWRkaW5nOiA1MHB4IDA7XG4gIGJhY2tncm91bmQ6ICNGM0Y0Rjg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluOyB9XG4gIC5zaW5nbGVIb3RlbF9pbnN0YWdyYW0uYmFja2dyb3VuZENvbG9yIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnNpbmdsZUhvdGVsX2luc3RhZ3JhbSB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDA7IH0gfVxuICAuc2luZ2xlSG90ZWxfaW5zdGFncmFtLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDYwJTtcbiAgICBtYXJnaW46IGF1dG87IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnNpbmdsZUhvdGVsX2luc3RhZ3JhbS1jb250YWluZXIge1xuICAgICAgICB3aWR0aDogOTAlOyB9IH1cbiAgICAuc2luZ2xlSG90ZWxfaW5zdGFncmFtLWNvbnRhaW5lciAuc2JpX2ZvbGxvd19idG4gYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAxMHB4IDIwcHggIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMXZ3ICFpbXBvcnRhbnQ7IH1cbiAgICAuc2luZ2xlSG90ZWxfaW5zdGFncmFtLWNvbnRhaW5lciAuc2JpX2ZvbGxvd19idG4gc3BhbiB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuXG4uc2luZ2xlSG90ZWxfYXBwIHtcbiAgcGFkZGluZzogNTBweCAxNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zaW5nbGVIb3RlbF9hcHAge1xuICAgICAgcGFkZGluZzogMjVweDsgfSB9XG4gIC5zaW5nbGVIb3RlbF9hcHAtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGNvbHVtbi1nYXA6IDUwcHg7XG4gICAgbWFyZ2luLXRvcDogNTBweDsgfVxuICAgIC5zaW5nbGVIb3RlbF9hcHAtY29udGFpbmVyIGltZyB7XG4gICAgICB3aWR0aDogMzAwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnNpbmdsZUhvdGVsX2FwcC1jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IDI1cHggYXV0bzsgfSB9XG5cbi5zaW5nbGVIb3RlbCAuZ3Vlc3RUeXBlIHtcbiAgY29sb3I6ICMwMDZENzY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5ob3RlbHMtdGVtcGxhdGUtaG90ZWwtcmVzZXJ2YXRpb25zIGhlYWRlciwgLmhvdGVscy10ZW1wbGF0ZS1ob3RlbC1yZXNlcnZhdGlvbnMgZm9vdGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYWNjb21vZGF0aW9uX3Jvb21zIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgLmFjY29tb2RhdGlvbl9yb29tcy5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgIGJhY2tncm91bmQ6ICNGM0Y0Rjg7IH1cbiAgLmFjY29tb2RhdGlvbl9yb29tcyBoMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmFjY29tb2RhdGlvbl9yb29tcyBoMyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7IH0gfVxuICAuYWNjb21vZGF0aW9uX3Jvb21zLXR5cGVzIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcbiAgICBwYWRkaW5nOiA3MHB4IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLmFjY29tb2RhdGlvbl9yb29tcy10eXBlcyB7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMDsgfSB9XG4gICAgLmFjY29tb2RhdGlvbl9yb29tcy10eXBlczpudGgtY2hpbGQob2RkKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gICAgICAuYWNjb21vZGF0aW9uX3Jvb21zLXR5cGVzOm50aC1jaGlsZChvZGQpLmJhY2tncm91bmRDb2xvciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNGM0Y0Rjg7IH1cbiAgICAuYWNjb21vZGF0aW9uX3Jvb21zLXR5cGVzOm50aC1jaGlsZChldmVuKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRjNGNEY4OyB9XG4gICAgICAuYWNjb21vZGF0aW9uX3Jvb21zLXR5cGVzOm50aC1jaGlsZChldmVuKS5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gICAgICAgIC5hY2NvbW9kYXRpb25fcm9vbXMtdHlwZXM6bnRoLWNoaWxkKGV2ZW4pLmJhY2tncm91bmRDb2xvciAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtY29udGVudCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI0YzRjRGODsgfVxuICAuYWNjb21vZGF0aW9uX3Jvb21zIC5pbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5hY2NvbW9kYXRpb25fcm9vbXMgLmltZyAuaW1nSG92ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAuYWNjb21vZGF0aW9uX3Jvb21zIC5pbWcgLmltZ0hvdmVyIHtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICBsZWZ0OiBpbmhlcml0OyB9IH1cbiAgLmFjY29tb2RhdGlvbl9yb29tcyBbZGF0YS1yb29tRGV0YWlsc106aG92ZXIgLmltZ0hvdmVyIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5hY2NvbW9kYXRpb25fcm9vbUZhY3RTaGVldCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDcwcHggMTUwcHggMDsgfVxuICAuYWNjb21vZGF0aW9uX3Jvb21GYWN0U2hlZXQgPiBkaXYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmFjY29tb2RhdGlvbl9yb29tRmFjdFNoZWV0IC5pY29ucyA+IGRpdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgLmFjY29tb2RhdGlvbl9yb29tRmFjdFNoZWV0IC5pY29ucyA+IGRpdiBkaXYge1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cbiAgICAuYWNjb21vZGF0aW9uX3Jvb21GYWN0U2hlZXQgLmljb25zID4gZGl2IHAge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIHdpZHRoOiA4MCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuYWNjb21vZGF0aW9uX3Jvb21GYWN0U2hlZXQge1xuICAgICAgcGFkZGluZzogMjVweDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLmFjY29tb2RhdGlvbl9yb29tRmFjdFNoZWV0ID4gZGl2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5hY2NvbW9kYXRpb25fcm9vbUZhY3RTaGVldCAuaWNvbnMge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDsgfVxuICAgICAgICAuYWNjb21vZGF0aW9uX3Jvb21GYWN0U2hlZXQgLmljb25zIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50OyB9IH1cblxuLmFjY29tb2RhdGlvbl92aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5hY2NvbW9kYXRpb25fdmlkZW8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG4gIC5hY2NvbW9kYXRpb25fdmlkZW8gYSB7XG4gICAgei1pbmRleDogMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWl4LWJsZW5kLW1vZGU6IHNjcmVlbjtcbiAgICBjb2xvcjogIzAwMDsgfVxuICAgIC5hY2NvbW9kYXRpb25fdmlkZW8gYTpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgbWl4LWJsZW5kLW1vZGU6IGNvbG9yLWJ1cm47IH1cbiAgLmFjY29tb2RhdGlvbl92aWRlbyBpIHtcbiAgICBmb250LXNpemU6IDM1cHg7IH1cbiAgICAuYWNjb21vZGF0aW9uX3ZpZGVvIGk6YmVmb3JlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAuYWNjb21vZGF0aW9uX3ZpZGVvOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSgwLCAwLCAwLCAwLjMyKSAwJSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTsgfVxuICAuYWNjb21vZGF0aW9uX3ZpZGVvIC52aWRlb0NvbnRhaW5lciB7XG4gICAgei1pbmRleDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAuYWNjb21vZGF0aW9uX3ZpZGVvIC52aWRlb0NvbnRhaW5lciBpZnJhbWUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuYWNjb21vZGF0aW9uX3ZpZGVvIC52aWRlb0NvbnRhaW5lci5vcGVuIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB6LWluZGV4OiAxMDsgfVxuXG4ub3VySG90ZWwgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLm1haW5TbGlkZXIgLnNsaWNrLXNsaWRlIGgzIHtcbiAgZm9udC1zaXplOiAyLjV2dztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLm91ckhvdGVsLWJyb2NodXJlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICAub3VySG90ZWwtYnJvY2h1cmUgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5vdXJIb3RlbC1leHRyYUNvbnRlbnQge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4OyB9XG4gIC5vdXJIb3RlbC1leHRyYUNvbnRlbnRfY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAub3VySG90ZWwtZXh0cmFDb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH1cbiAgICAgIC5vdXJIb3RlbC1leHRyYUNvbnRlbnRfY29udGVudCB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfSB9XG5cbi5vdXJIb3RlbC1zZWN0aW9uMSB7XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLm91ckhvdGVsLXNlY3Rpb24xIHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDsgfSB9XG5cbi5vdXJIb3RlbC1zZWN0aW9uIHtcbiAgcGFkZGluZzogNTBweCAxNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5vdXJIb3RlbC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH0gfVxuICAub3VySG90ZWwtc2VjdGlvbl9oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAub3VySG90ZWwtc2VjdGlvbl9oZWFkZXIgZGl2IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAub3VySG90ZWwtc2VjdGlvbl9oZWFkZXIgaW1nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLm91ckhvdGVsLXNlY3Rpb25faGVhZGVyIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgICAgIC5vdXJIb3RlbC1zZWN0aW9uX2hlYWRlciBkaXYge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLm91ckhvdGVsLWJsb2NrIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kOiAjMDA2RDc2OyB9XG4gIC5vdXJIb3RlbC1ibG9jayBoMyB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAub3VySG90ZWwtYmxvY2sgaDMsIC5vdXJIb3RlbC1ibG9jayBwLCAub3VySG90ZWwtYmxvY2sgbGksIC5vdXJIb3RlbC1ibG9jayBhIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAub3VySG90ZWwtYmxvY2sgPiBkaXYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgICAub3VySG90ZWwtYmxvY2sgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDcwcHg7IH1cbiAgLm91ckhvdGVsLWJsb2NrX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAub3VySG90ZWwtYmxvY2sgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAub3VySG90ZWwtYmxvY2sgcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbHVtbi1nYXA6IDVweDsgfVxuICAgIC5vdXJIb3RlbC1ibG9jayBwIHNwYW4ge1xuICAgICAgd2lkdGg6IDM1JTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLm91ckhvdGVsLWJsb2NrIHAgc3BhbiB7XG4gICAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gIC5vdXJIb3RlbC1ibG9jayAuZmVlcyBkaXYge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA5KSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLm91ckhvdGVsLWJsb2NrIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLm91ckhvdGVsLWJsb2NrIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4OyB9XG4gICAgICAub3VySG90ZWwtYmxvY2sgZGl2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLm91ckhvdGVsLWJsb2NrIGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7IH0gfVxuXG4ub3VySG90ZWwgLmZlZXMgZGl2IHtcbiAgcGFkZGluZzogMTBweCAwIDVweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5vdXJIb3RlbCAuZmVlcyBkaXY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wOSk7IH1cblxuLm91ckhvdGVsLWFxdWFwYXJrIHtcbiAgYmFja2dyb3VuZDogI0YzRjRGODtcbiAgcGFkZGluZzogNTBweCAxNTBweDtcbiAgZGlzcGxheTogZmxleDsgfVxuICAub3VySG90ZWwtYXF1YXBhcmsgPiBkaXYge1xuICAgIHdpZHRoOiA0NSU7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5vdXJIb3RlbC1hcXVhcGFyayBoMiB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7IH1cbiAgLm91ckhvdGVsLWFxdWFwYXJrIHAge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgY29sb3I6ICMwMDZENzY7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAub3VySG90ZWwtYXF1YXBhcmsge1xuICAgICAgcGFkZGluZzogMjVweDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLm91ckhvdGVsLWFxdWFwYXJrID4gZGl2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5vdXJIb3RlbC1hcXVhcGFyayBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgICAgLm91ckhvdGVsLWFxdWFwYXJrIHAge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuXG4ub3VySG90ZWwtZ2FsbGVyeSB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICAub3VySG90ZWwtZ2FsbGVyeSAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogMTElO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAub3VySG90ZWwtZ2FsbGVyeSB7XG4gICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4OyB9XG4gICAgICAub3VySG90ZWwtZ2FsbGVyeSAuYnRuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7IH0gfVxuXG4ub3VySG90ZWwtZmFjaWxpdGllcyB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluOyB9XG4gIC5vdXJIb3RlbC1mYWNpbGl0aWVzLmJhY2tncm91bmRDb2xvciB7XG4gICAgYmFja2dyb3VuZDogI0YzRjRGODsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5vdXJIb3RlbC1mYWNpbGl0aWVzIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgLm91ckhvdGVsLWZhY2lsaXRpZXMgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stc2xpZGUgZGl2IHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLm91ckhvdGVsLWZhY2lsaXRpZXMgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6ICMwMDZENzY7IH1cbiAgICAub3VySG90ZWwtZmFjaWxpdGllcyAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtY29udGVudCBoMywgLm91ckhvdGVsLWZhY2lsaXRpZXMgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWNvbnRlbnQgcCB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAub3VySG90ZWwtZmFjaWxpdGllcyAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtY29udGVudCBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG4gIC5vdXJIb3RlbC1mYWNpbGl0aWVzIC5vdGhlckZhY2lsaXRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiA2MHB4IDE1MHB4IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLm91ckhvdGVsLWZhY2lsaXRpZXMgLm90aGVyRmFjaWxpdGllcyB7XG4gICAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG4gICAgLm91ckhvdGVsLWZhY2lsaXRpZXMgLm90aGVyRmFjaWxpdGllcyA+IGRpdiB7XG4gICAgICB3aWR0aDogNDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbjogMCAxMHB4IDIwcHg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAub3VySG90ZWwtZmFjaWxpdGllcyAub3RoZXJGYWNpbGl0aWVzID4gZGl2IGltZyB7XG4gICAgICAgIG1heC13aWR0aDogNTBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgICAub3VySG90ZWwtZmFjaWxpdGllcyAub3RoZXJGYWNpbGl0aWVzID4gZGl2IHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAub3VySG90ZWwtZmFjaWxpdGllcyAub3RoZXJGYWNpbGl0aWVzID4gZGl2IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAgIC5vdXJIb3RlbC1mYWNpbGl0aWVzIC5vdGhlckZhY2lsaXRpZXMgPiBkaXYgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzVweDsgfSB9XG5cbi5vdXJIb3RlbC1zZXJ2aWNlcyB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7XG4gIGJhY2tncm91bmQ6ICNGM0Y0Rjg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluOyB9XG4gIC5vdXJIb3RlbC1zZXJ2aWNlcy5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAub3VySG90ZWwtc2VydmljZXMge1xuICAgICAgcGFkZGluZzogMjVweDsgfSB9XG4gIC5vdXJIb3RlbC1zZXJ2aWNlcyAuc2VydmljZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgIC5vdXJIb3RlbC1zZXJ2aWNlcyAuc2VydmljZXMgPiBkaXYge1xuICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLm91ckhvdGVsLXNlcnZpY2VzIC5zZXJ2aWNlcyA+IGRpdiBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDUwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgLm91ckhvdGVsLXNlcnZpY2VzIC5zZXJ2aWNlcyA+IGRpdiBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLm91ckhvdGVsLXNlcnZpY2VzIC5zZXJ2aWNlcyA+IGRpdiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICAub3VySG90ZWwtc2VydmljZXMgLnNlcnZpY2VzID4gZGl2IGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM1cHg7IH0gfVxuXG4ub3VySG90ZWwtYWN0aXZpdGllcyB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5vdXJIb3RlbC1hY3Rpdml0aWVzIHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDsgfVxuICAgICAgLm91ckhvdGVsLWFjdGl2aXRpZXMubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciAubWFpblNsaWRlciAuc2xpY2stc2xpZGUgaDUge1xuICAgICAgICBmb250LXNpemU6IDV2dzsgfSB9XG4gIC5vdXJIb3RlbC1hY3Rpdml0aWVzLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLm1haW5TbGlkZXIgLnNsaWNrLXNsaWRlIGgzIHtcbiAgICBmb250LXNpemU6IDIuNXZ3O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgY29sb3I6ICMwMDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLm91ckhvdGVsLWFjdGl2aXRpZXMubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciAubWFpblNsaWRlciAuc2xpY2stc2xpZGUgaDMge1xuICAgICAgICBmb250LXNpemU6IDd2dzsgfSB9XG5cbi5vdXJIb3RlbC10d29Db2xUZXh0IHtcbiAgY29sdW1uLWNvdW50OiAyO1xuICBjb2x1bW4tZ2FwOiA1MHB4O1xuICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLm91ckhvdGVsLXR3b0NvbFRleHQge1xuICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgY29sdW1uLWdhcDogMDsgfSB9XG5cbi5mYWNpbGl0aWVzU2VydmljZXMgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLnNsaWNrLXNsaWRlIC5zbGlkZXJfY29udGVudCB7XG4gIG1hcmdpbjogMTBweCAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQgMXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4MHB4KTsgfVxuXG4uZmFjaWxpdGllc1NlcnZpY2VzIC5ub0Fycm93U2xpZGVyIC5zbGlkZXJzQ29udGFpbmVyIC5zbGljay1zbGlkZS5zbGljay1jdXJyZW50IC5zbGlkZXJfY29udGVudCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpOyB9XG5cbi5zcGEgLm5vUGFkZGluZ1RvcCB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuXG4ubWVldGluZ3MgLm91ckhvdGVsLXNlY3Rpb24ge1xuICBwYWRkaW5nOiAwIDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lZXRpbmdzIC5vdXJIb3RlbC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH0gfVxuXG4ubWVldGluZ3Nfcm9vbXMge1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY4O1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lZXRpbmdzX3Jvb21zIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH0gfVxuICAubWVldGluZ3Nfcm9vbXMtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLm1lZXRpbmdzX3Jvb21zLWNvbnRhaW5lciA+IGRpdiB7XG4gICAgICB3aWR0aDogMzMlO1xuICAgICAgcGFkZGluZzogMCAyMHB4OyB9XG4gICAgICAubWVldGluZ3Nfcm9vbXMtY29udGFpbmVyID4gZGl2Om5vdCg6bnRoLWNoaWxkKDNuKSkge1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDkpOyB9XG4gICAgLm1lZXRpbmdzX3Jvb21zLWNvbnRhaW5lciBoMyB7XG4gICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gICAgLm1lZXRpbmdzX3Jvb21zLWNvbnRhaW5lciAuc2l6ZSB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgY29sb3I6ICMwMEEzOUQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gICAgICAubWVldGluZ3Nfcm9vbXMtY29udGFpbmVyIC5zaXplIHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMzVweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAubWVldGluZ3Nfcm9vbXMtY29udGFpbmVyIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAgIC5tZWV0aW5nc19yb29tcy1jb250YWluZXIgPiBkaXYge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDsgfVxuICAgICAgICAgIC5tZWV0aW5nc19yb29tcy1jb250YWluZXIgPiBkaXY6bm90KDpudGgtY2hpbGQoM24pKSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA5KTsgfVxuICAgICAgICAubWVldGluZ3Nfcm9vbXMtY29udGFpbmVyIGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgICAubWVldGluZ3Nfcm9vbXMtY29udGFpbmVyIC5zaXplIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG5cbi5tZWV0aW5ncyAub3VySG90ZWwtd2VkZGluZyB7XG4gIHBhZGRpbmc6IDUwcHggMHB4IDUwcHggMTUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAubWVldGluZ3MgLm91ckhvdGVsLXdlZGRpbmcgZGl2IHtcbiAgICBmbGV4OiAxOyB9XG4gICAgLm1lZXRpbmdzIC5vdXJIb3RlbC13ZWRkaW5nIGRpdiBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubWVldGluZ3MgLm91ckhvdGVsLXdlZGRpbmcgZGl2IHAge1xuICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gIC5tZWV0aW5ncyAub3VySG90ZWwtd2VkZGluZyB1bCB7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICAgIGNvbHVtbi1nYXA6IDU1cHg7XG4gICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDsgfVxuICAgIC5tZWV0aW5ncyAub3VySG90ZWwtd2VkZGluZyB1bCBsaSB7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgICAgLm1lZXRpbmdzIC5vdXJIb3RlbC13ZWRkaW5nIHVsIGxpOmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAjMDBBMzlEO1xuICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiAnXFxlODAwJztcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiZm9udGVsbG9cIjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5tZWV0aW5ncyAub3VySG90ZWwtd2VkZGluZyB7XG4gICAgICBwYWRkaW5nOiAyNXB4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gICAgICAubWVldGluZ3MgLm91ckhvdGVsLXdlZGRpbmcgdWwge1xuICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICAgIGNvbHVtbi1nYXA6IDBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMHB4OyB9XG4gICAgICAubWVldGluZ3MgLm91ckhvdGVsLXdlZGRpbmcgZGl2IHtcbiAgICAgICAgZmxleDogaW5pdGlhbDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMTBweCAwOyB9XG4gICAgICAgIC5tZWV0aW5ncyAub3VySG90ZWwtd2VkZGluZyBkaXYgcCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cblxuLmRpbmluZyAubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciAubWFpblNsaWRlciAuc2xpY2stc2xpZGUgaDMge1xuICBmb250LXNpemU6IDIuNXZ3O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4uZGluaW5nLXNlY3Rpb24ge1xuICBwYWRkaW5nLXRvcDogNzBweDtcbiAgcGFkZGluZy1ib3R0b206IDcwcHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluOyB9XG4gIC5kaW5pbmctc2VjdGlvbiBoMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZGluaW5nLXNlY3Rpb24gaDIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuICAuZGluaW5nLXNlY3Rpb24gaDMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmRpbmluZy1zZWN0aW9uIC5pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmRpbmluZy1zZWN0aW9uIC5pbWFnZSAubG9nbyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDMwJTsgfVxuICAuZGluaW5nLXNlY3Rpb24gLnBob25lIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjMDA2RDc2OyB9XG4gICAgLmRpbmluZy1zZWN0aW9uIC5waG9uZSBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzAwNkQ3NjsgfVxuICAuZGluaW5nLXNlY3Rpb246bnRoLWNoaWxkKG9kZCkge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgICAuZGluaW5nLXNlY3Rpb246bnRoLWNoaWxkKG9kZCkuYmFja2dyb3VuZENvbG9yIHtcbiAgICAgIGJhY2tncm91bmQ6ICNGM0Y0Rjg7IH1cbiAgLmRpbmluZy1zZWN0aW9uOm50aC1jaGlsZChldmVuKSB7XG4gICAgYmFja2dyb3VuZDogI0YzRjRGODtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjsgfVxuICAgIC5kaW5pbmctc2VjdGlvbjpudGgtY2hpbGQoZXZlbikuYmFja2dyb3VuZENvbG9yIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgICAgIC5kaW5pbmctc2VjdGlvbjpudGgtY2hpbGQoZXZlbikuYmFja2dyb3VuZENvbG9yIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZS1jb250ZW50IHtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XG4gICAgICAgIGJhY2tncm91bmQ6ICNGM0Y0Rjg7IH1cblxuLmdhbGxlcnkge1xuICBwYWRkaW5nOiA3MHB4IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmdhbGxlcnkge1xuICAgICAgcGFkZGluZzogMjVweDsgfSB9XG4gIC5nYWxsZXJ5LXRhYnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuICAgIC5nYWxsZXJ5LXRhYnMgZGl2IHtcbiAgICAgIHBhZGRpbmc6IDVweCAyMHB4O1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAuZ2FsbGVyeS10YWJzIGRpdi5hY3RpdmUsIC5nYWxsZXJ5LXRhYnMgZGl2OmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuICAuZ2FsbGVyeS1kcm9wZG93biB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgIC5nYWxsZXJ5LWRyb3Bkb3duOmZvY3VzIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5nYWxsZXJ5IC5ncmlkIHtcbiAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgY29sdW1uLWdhcDogMzBweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwcHgpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5nYWxsZXJ5IC5ncmlkIHtcbiAgICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgICBjb2x1bW4tZ2FwOiAwcHg7IH0gfVxuICAgIC5nYWxsZXJ5IC5ncmlkLmFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5nYWxsZXJ5IC5ncmlkLnRvdXIzNjAuYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5nYWxsZXJ5IC5ncmlkIGRpdiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgYXV0bztcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDEuM3MgY3ViaWMtYmV6aWVyKDAuNzYsIDAsIDAuMjQsIDEpO1xuICAgICAgY2xpcC1wYXRoOiBpbnNldCgxMDAlIDAgMCAwKTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMTBweCk7IH1cbiAgICAgIC5nYWxsZXJ5IC5ncmlkIGRpdi5pcy1pbnZpZXcge1xuICAgICAgICBjbGlwLXBhdGg6IGluc2V0KDAgMCAwIDApOyB9XG4gICAgICAuZ2FsbGVyeSAuZ3JpZCBkaXYgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5nYWxsZXJ5IC5ncmlkIGRpdi5oaWRlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmdhbGxlcnkgLmdyaWQgZGl2IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxN3B4OyB9IH1cbiAgICAuZ2FsbGVyeSAuZ3JpZCBpZnJhbWUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhc3BlY3QtcmF0aW86IDIgLyAxO1xuICAgICAgLyogS2VlcHMgc2FtZSByYXRpbyBhcyBiZWZvcmUgKi9cbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAuZ2FsbGVyeSAuZ3JpZCBpZnJhbWUge1xuICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDI7IH0gfVxuICAuZ2FsbGVyeSAuZ29Ub1RvcCB7XG4gICAgbWFyZ2luOiA0MHB4IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmdhbGxlcnkgLmdvVG9Ub3AgZGl2IHtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgY29sb3I6ICMwMDZENzY7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjRjNGNEY4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7IH1cbiAgICAgIC5nYWxsZXJ5IC5nb1RvVG9wIGRpdjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDZENzY7XG4gICAgICAgIGNvbG9yOiAjRjNGNEY4OyB9XG4gICAgICAuZ2FsbGVyeSAuZ29Ub1RvcCBkaXYgaSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwOyB9XG4gICAgLmdhbGxlcnkgLmdvVG9Ub3AgYSB7XG4gICAgICBjb2xvcjogIzAwNkQ3NjsgfVxuICAuZ2FsbGVyeS1saWdodGJveCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAtMTAwdnc7XG4gICAgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2UtaW4tb3V0O1xuICAgIHotaW5kZXg6IDEwMDAwO1xuICAgIGJhY2tncm91bmQ6ICMwMDA7IH1cbiAgICAuZ2FsbGVyeS1saWdodGJveC5vcGVuIHtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gICAgLmdhbGxlcnktbGlnaHRib3ggLmJ0biB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdG9wOiA1MHB4O1xuICAgICAgbGVmdDogNTBweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC1zaGFkb3c6IDAgMCAxNHB4IGJsYWNrOyB9XG4gICAgLmdhbGxlcnktbGlnaHRib3ggLmdhbGxlcnktY29udGFpbmVyIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuZ2FsbGVyeS1saWdodGJveCAuZ2FsbGVyeS1jb250YWluZXIub3BlbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAvKkBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHR9Ki8gfVxuICAgICAgLmdhbGxlcnktbGlnaHRib3ggLmdhbGxlcnktY29udGFpbmVyIC5zbGljay1hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgYm90dG9tOiA1MHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAxNHB4IGJsYWNrO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMXZ3OyB9XG4gICAgICAgIC5nYWxsZXJ5LWxpZ2h0Ym94IC5nYWxsZXJ5LWNvbnRhaW5lciAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gICAgICAgICAgbGVmdDogNTBweDsgfVxuICAgICAgICAuZ2FsbGVyeS1saWdodGJveCAuZ2FsbGVyeS1jb250YWluZXIgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICAgICAgICAgIHJpZ2h0OiA1MHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmdhbGxlcnktbGlnaHRib3ggLmdhbGxlcnktY29udGFpbmVyIC5zbGljay1hcnJvdyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDN2dzsgfSB9XG4gICAgICAuZ2FsbGVyeS1saWdodGJveCAuZ2FsbGVyeS1jb250YWluZXIgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDsgfVxuICAgICAgICAuZ2FsbGVyeS1saWdodGJveCAuZ2FsbGVyeS1jb250YWluZXIgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UtaW4tb3V0IDEuNXM7XG4gICAgICAgICAgd2lkdGg6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgIG1hcmdpbjogYXV0bzsgfVxuICAgICAgICAuZ2FsbGVyeS1saWdodGJveCAuZ2FsbGVyeS1jb250YWluZXIgLnNsaWNrLXNsaWRlLnNsaWNrLWN1cnJlbnQgaW1nIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmdhbGxlcnktbGlnaHRib3ggLmdhbGxlcnktY29udGFpbmVyIC5zbGljay1zbGlkZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHZoOyB9XG4gICAgICAgICAgICAuZ2FsbGVyeS1saWdodGJveCAuZ2FsbGVyeS1jb250YWluZXIgLnNsaWNrLXNsaWRlIGRpdiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICAgICAgICAuZ2FsbGVyeS1saWdodGJveCAuZ2FsbGVyeS1jb250YWluZXIgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgICAgICAgICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4vKi5sb2FkTW9yZVRlc3R7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcclxuICAgIHdpZHRoOiA0MDBweDtcclxuICAgIG1hcmdpbjogMjBweCBhdXRvO1xyXG4gICAgY29sb3I6ICM0NDQ7XHJcblx0ZGl2IHtcclxuXHQgICAgZGlzcGxheTpub25lO1xyXG5cdCAgICBwYWRkaW5nOiAxMHB4O1xyXG5cdCAgICBib3JkZXItd2lkdGg6IDAgMXB4IDFweCAwO1xyXG5cdCAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cdCAgICBib3JkZXItY29sb3I6ICNmZmY7XHJcblx0ICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCAjY2NjO1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcblx0ICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XHJcblx0fVxyXG5cdCNsb2FkTW9yZSB7XHJcblx0ICAgIHBhZGRpbmc6IDEwcHg7XHJcblx0ICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHQgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzNzM5RTtcclxuXHQgICAgY29sb3I6ICNmZmY7XHJcblx0ICAgIGJvcmRlci13aWR0aDogMCAxcHggMXB4IDA7XHJcblx0ICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcblx0ICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcclxuXHQgICAgYm94LXNoYWRvdzogMCAxcHggMXB4ICNjY2M7XHJcblx0ICAgIHRyYW5zaXRpb246IGFsbCA2MDBtcyBlYXNlLWluLW91dDtcclxuXHR9XHJcblx0I2xvYWRNb3JlOmhvdmVyIHtcclxuXHQgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHQgICAgY29sb3I6ICMzMzczOUU7XHJcblx0fVxyXG59Ki9cbi52aWRlb3Mge1xuICBwYWRkaW5nOiA3MHB4IDA7IH1cbiAgLnZpZGVvcyBoMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmlkZW9zIGgyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9IH1cbiAgLnZpZGVvcy1zbGlkZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgICAudmlkZW9zLXNsaWRlci5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgICAgYmFja2dyb3VuZDogI0YzRjRGODsgfVxuICAgIC52aWRlb3Mtc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAgIHBhZGRpbmc6IDAgMTAlIDAgMTAlICFpbXBvcnRhbnQ7IH1cbiAgICAudmlkZW9zLXNsaWRlciAuc2xpY2stc2xpZGUge1xuICAgICAgcGFkZGluZzogMCAxMHB4OyB9XG4gICAgICAudmlkZW9zLXNsaWRlciAuc2xpY2stc2xpZGU6bm90KC5zbGljay1jdXJyZW50KSAudmlkZW8tY29udGVudCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDBweCk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnZpZGVvcy1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIC52aWRlb3Mtc2xpZGVyIFxcXHIgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gIC52aWRlb3MgLnZpZGVvLWNvbnRlbnQge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAvKmJhY2tncm91bmQ6ICRsaWdodC1ncmV5O1xyXG5cdFx0ICAgIHdpZHRoOiA3MCU7XHJcblx0XHQgICAgbWFyZ2luOiBhdXRvO1xyXG5cdFx0ICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWSgtNTAlKTtcclxuXHRcdCAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XHJcblx0XHQgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0ICAgIG1pbi1oZWlnaHQ6IDE2MHB4O1xyXG5cdFx0ICAgIGRpc3BsYXk6IGZsZXg7Ki9cbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2U7XG4gICAgLyogZGl2OmZpcnN0LWNoaWxke1xyXG5cdFx0ICAgIFx0cGFkZGluZy1yaWdodDogNDBweDtcclxuXHRcdCAgICB9Ki9cbiAgICAvKi5jdGF7XHJcblx0XHQgICAgXHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHQgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdFx0ICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0ICAgIGRpdntcclxuXHRcdFx0ICAgIFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0ICAgIH1cclxuXHRcdFx0ICAgIHB7XHJcblx0XHRcdCAgICBcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0ICAgIH1cclxuXHRcdCAgICB9Ki8gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmlkZW9zIC52aWRlby1jb250ZW50IHtcbiAgICAgICAgLyp0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcblx0XHRcdCAgICB3aWR0aDogMTAwJTtcclxuXHRcdFx0ICAgIHBhZGRpbmc6IDIwcHg7XHJcblx0XHRcdCAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdCAgICBkaXY6Zmlyc3QtY2hpbGR7XHJcblx0XHRcdCAgICBcdHBhZGRpbmctcmlnaHQ6MDtcclxuXHRcdFx0ICAgIFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0ICAgIH0qLyB9IH1cbiAgLnZpZGVvcyAudmlkZW8taW1hZ2UgaWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUyMHB4OyB9XG4gIC52aWRlb3MgLnNsaWNrLWFycm93IHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGNvbG9yOiAjMDA2RDc2O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDZENzY7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMDBweDtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgLnZpZGVvcyAuc2xpY2stYXJyb3c6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzAwNkQ3NjtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLnZpZGVvcyAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gICAgICByaWdodDogMjAwcHg7IH1cbiAgICAudmlkZW9zIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAxMDBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmlkZW9zIC5zbGljay1hcnJvdyB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDZENzY7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0b3A6IC03MHB4OyB9XG4gICAgICAgIC52aWRlb3MgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICAgICAgICAgIHJpZ2h0OiAyMHB4OyB9XG4gICAgICAgIC52aWRlb3MgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgICAgICAgIHJpZ2h0OiA4MHB4OyB9IH1cblxuLm5ld3NQYWdlIHtcbiAgcGFkZGluZy10b3A6IDEzMHB4OyB9XG5cbi5zaW5nbGVOZXdzIHtcbiAgcGFkZGluZy10b3A6IDEzMHB4OyB9XG4gIC5zaW5nbGVOZXdzIC5icmVhZGNydW1icyB7XG4gICAgcGFkZGluZzogMjBweCAxMDBweDtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAuc2luZ2xlTmV3cyAuYnJlYWRjcnVtYnMgYSwgLnNpbmdsZU5ld3MgLmJyZWFkY3J1bWJzIHNwYW4ge1xuICAgICAgZm9udC1mYW1pbHk6IEJyYW5kaW5nO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5zaW5nbGVOZXdzIC5icmVhZGNydW1icyBhLCAuc2luZ2xlTmV3cyAuYnJlYWRjcnVtYnMgc3BhbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4OyB9IH1cbiAgLnNpbmdsZU5ld3Nfc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMjBweCAxNTBweCA1MHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaW5nbGVOZXdzX3NlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cbiAgICAuc2luZ2xlTmV3c19zZWN0aW9uIC5mZWF0dXJlZEltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgICAuc2luZ2xlTmV3c19zZWN0aW9uIC5idG4tYmx1ZUJveCB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLnNpbmdsZU5ld3Nfc2VjdGlvbiAuYnRucyB7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gICAgICAuc2luZ2xlTmV3c19zZWN0aW9uIC5idG5zIGEge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cbiAgICAuc2luZ2xlTmV3c19zZWN0aW9uIGltZzpub3QoLmZlYXR1cmVkSW1nKSB7XG4gICAgICBwYWRkaW5nOiAxMHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZpZXdzX2ludHJvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGNvbHVtbi1nYXA6IDUwcHg7IH1cbiAgICAucmV2aWV3c19pbnRybyA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgd2lkdGg6IDYwJTtcbiAgICAgIGNvbHVtbi1nYXA6IDMwcHg7IH1cbiAgICAucmV2aWV3c19pbnRybyA+IGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiAzMCU7IH0gfVxuXG4ucmV2aWV3cyAjcnAtd2lkZ2V0IHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAucmV2aWV3cyAjcnAtd2lkZ2V0IC5ycC13aWRnZXQtdG9wIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gICAgLnJldmlld3MgI3JwLXdpZGdldCAucnAtd2lkZ2V0LXRvcC10aXRsZSB7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAgIC5yZXZpZXdzICNycC13aWRnZXQgLnJwLXdpZGdldC10b3AtdGl0bGUgI3JwLXdpZGdldC1qcy1pbmZvIHtcbiAgICAgICAgbGVmdDogMTI1cHg7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgLnJldmlld3MgI3JwLXdpZGdldCAucnAtd2lkZ2V0LXRvcC10aXRsZSAjcnAtd2lkZ2V0LWxvZ28ge1xuICAgICAgICB3aWR0aDogMTIwcHg7IH1cbiAgICAucmV2aWV3cyAjcnAtd2lkZ2V0IC5ycC13aWRnZXQtdG9wIC5ycC13aWRnZXQtZ3JpLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucmV2aWV3cyAjcnAtd2lkZ2V0IC5ycC13aWRnZXQtdG9wIC5ycC13aWRnZXQtZ3JpLXZhbHVlIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDsgfVxuICAgIC5yZXZpZXdzICNycC13aWRnZXQgLnJwLXdpZGdldC10b3AgLnJwLXdpZGdldC1ncmFwaCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnJldmlld3MgI3JwLXdpZGdldCAucnAtd2lkZ2V0LXRvcCAucnAtd2lkZ2V0LXNvdXJjZXMge1xuICAgICAgd2lkdGg6IDI1JTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLnJldmlld3MgI3JwLXdpZGdldCAucnAtd2lkZ2V0LXRvcCAucnAtd2lkZ2V0LXJldmlld3Mge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5yZXZpZXdzICNycC13aWRnZXQgLnJwLXdpZGdldC10b3AgLnJwLXdpZGdldC1zb3VyY2VzLWVsZW1lbnQsIC5yZXZpZXdzICNycC13aWRnZXQgLnJwLXdpZGdldC10b3AgLnJwLXdpZGdldC1yZXZpZXdzLWVsZW1lbnQge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIG1hcmdpbjogMHB4IDVweDsgfVxuICAgIC5yZXZpZXdzICNycC13aWRnZXQgLnJwLXdpZGdldC10b3AgLnJwLXdpZGdldC1udW1iZXIsIC5yZXZpZXdzICNycC13aWRnZXQgLnJwLXdpZGdldC10b3AgLnJwLXdpZGdldC1sYWJlbCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnJldmlld3MgI3JwLXdpZGdldCAucnAtd2lkZ2V0LXRvcCAucnAtd2lkZ2V0LWxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5yZXZpZXdzICNycC13aWRnZXQgLnJwLXdpZGdldC1ib3R0b20ge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgLnJldmlld3MgI3JwLXdpZGdldCAjcnAtd2lkZ2V0LWRpYWxvZyBkaXYudG9vbHRpcC1idWJydDM1MndibHVlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmOyB9XG4gIC5yZXZpZXdzICNycC13aWRnZXQgI3JwLXdpZGdldC1kaWFsb2cgZGl2LnRvb2x0aXAtYnVicnQzNTJ3Ymx1ZSBkaXYudG9vbHRpcC1idWJydDM1MndibHVlLWlubmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmOyB9XG4gIC5yZXZpZXdzICNycC13aWRnZXQud2lkZ2V0LXR5cGUtNCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAucmV2aWV3cyAjcnAtd2lkZ2V0LndpZGdldC10eXBlLTQgLnJwLXdpZGdldC10b3AsIC5yZXZpZXdzICNycC13aWRnZXQud2lkZ2V0LXR5cGUtNCAucnAtd2lkZ2V0LWJvdHRvbSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gICAgLnJldmlld3MgI3JwLXdpZGdldC53aWRnZXQtdHlwZS00IC5ycC13aWRnZXQtZ3JpLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucmV2aWV3cyAjcnAtd2lkZ2V0LndpZGdldC10eXBlLTQgLnJwLXdpZGdldC1ncmFwaCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5yZXZpZXdzICNndWVzdC1yZXZpZXdzIHtcbiAgcGFkZGluZzogNTBweCAxNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5yZXZpZXdzICNndWVzdC1yZXZpZXdzIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH0gfVxuICAucmV2aWV3cyAjZ3Vlc3QtcmV2aWV3cyAucmV2aWV3LWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgLnJldmlld3MgI2d1ZXN0LXJldmlld3MgLnJldmlldy1saXN0IHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLnJldmlld3MgI2d1ZXN0LXJldmlld3MgLnJldmlldy1saXN0IHVsIGxpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDQwcHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAucmV2aWV3cyAjZ3Vlc3QtcmV2aWV3cyAucmV2aWV3LWxpc3QgdWwgbGkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuICAgICAgICAucmV2aWV3cyAjZ3Vlc3QtcmV2aWV3cyAucmV2aWV3LWxpc3QgdWwgbGkgLmxvZ28td3JhcHBlciB7XG4gICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7IH1cbiAgICAgICAgICAucmV2aWV3cyAjZ3Vlc3QtcmV2aWV3cyAucmV2aWV3LWxpc3QgdWwgbGkgLmxvZ28td3JhcHBlciBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogRWxNZXNzaXJpOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIC5yZXZpZXdzICNndWVzdC1yZXZpZXdzIC5yZXZpZXctbGlzdCB1bCBsaSAubG9nby13cmFwcGVyIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDsgfVxuICAgICAgICAgICAgICAucmV2aWV3cyAjZ3Vlc3QtcmV2aWV3cyAucmV2aWV3LWxpc3QgdWwgbGkgLmxvZ28td3JhcHBlciBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7IH0gfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5yZXZpZXdzICNndWVzdC1yZXZpZXdzIC5yZXZpZXctbGlzdCB1bCBsaSAuaW5mby1kaXYge1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAucmV2aWV3cyAjZ3Vlc3QtcmV2aWV3cyAucmV2aWV3LWxpc3QgdWwgbGkgLmluZm8tZGl2IC50b3AtaW5mbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICAgICAgICAucmV2aWV3cyAjZ3Vlc3QtcmV2aWV3cyAucmV2aWV3LWxpc3QgdWwgbGkgLmluZm8tZGl2IC5yYXRpbmctd3JhcHBlciB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgY29sdW1uLWdhcDogMTBweDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA4cHg7IH1cbiAgICAgICAgICAucmV2aWV3cyAjZ3Vlc3QtcmV2aWV3cyAucmV2aWV3LWxpc3QgdWwgbGkgLmluZm8tZGl2IC5yYXRpbmctd3JhcHBlciBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEzcHg7IH1cbiAgICAgICAgLnJldmlld3MgI2d1ZXN0LXJldmlld3MgLnJldmlldy1saXN0IHVsIGxpIC5pbmZvLWRpdiAucHVibGlzaC13cmFwcGVyIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcHg7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgLnJldmlld3MgI2d1ZXN0LXJldmlld3MgLnJldmlldy1saXN0IHVsIGxpIC5pbmZvLWRpdiAucHVibGlzaC13cmFwcGVyIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgICAgICAgLnJldmlld3MgI2d1ZXN0LXJldmlld3MgLnJldmlldy1saXN0IHVsIGxpIC5pbmZvLWRpdiAudGl0bGUtd3JhcHBlciB7XG4gICAgICAgICAgY29sb3I6ICMzMzM7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAucmV2aWV3cyAjZ3Vlc3QtcmV2aWV3cyAucmV2aWV3LWxpc3QgdWwgbGkgLmRpc2MtZGl2IHtcbiAgICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDsgfSB9XG5cbi5yZXZpZXdzIC5iYWNrZ3Ige1xuICBiYWNrZ3JvdW5kOiAjQ0NDQ0NDO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjY2O1xuICB3aWR0aDogMjAwcHg7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIG1pbi1oZWlnaHQ6IDIwcHg7IH1cblxuLnJldmlld3MgLmhpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQ6ICMwOTY7IH1cblxuLnJldmlld3MgI2xhbmdfc2VsZWN0b3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2RDc2O1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3NlbGVjdC13aGl0ZS5wbmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGluaXRpYWw7XG4gIHBhZGRpbmc6IDVweCA0MHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwIGNlbnRlcjsgfVxuICAucmV2aWV3cyAjbGFuZ19zZWxlY3RvciBvcHRpb246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLnJldmlld3MgLnJ0bCAjZ3Vlc3QtcmV2aWV3cyAjcnAtd2lkZ2V0IC5ycC13aWRnZXQtdG9wIC5ycC13aWRnZXQtbnVtYmVyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4ucmV2aWV3cyAucnRsICNndWVzdC1yZXZpZXdzICNycC13aWRnZXQgLnJwLXdpZGdldC10b3AgLnJwLXdpZGdldC1sYWJlbCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnJldmlld3MgLnJ0bCAjZ3Vlc3QtcmV2aWV3cyAjcnAtd2lkZ2V0IC5ycC13aWRnZXQtdG9wIC5ycC13aWRnZXQtdG9wLXRpdGxlICNycC13aWRnZXQtanMtaW5mbyB7XG4gIHJpZ2h0OiA4NXB4OyB9XG5cbi5yZXZpZXdzIC5ydGwgI2d1ZXN0LXJldmlld3MgI3JwLXdpZGdldC1kaWFsb2cge1xuICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAxMjVweDsgfVxuXG4ucmV2aWV3cyAuc2hvd19tZXNzYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucmV2aWV3cyAucl9saW5rIHtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ucmV2aWV3cyAucl9saW5rOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLnJldmlld3MgLmhvbGlkYXlfY2hrX2xvZ28ge1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4OyB9XG5cbi5yZXZpZXdzX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2x1bW4tZ2FwOiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmlld3NfZm9vdGVyIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH1cbiAgICAgIC5yZXZpZXdzX2Zvb3RlciBhIHtcbiAgICAgICAgd2lkdGg6IDMwJTsgfSB9XG5cbi5yZXZpZXdzIC50cmlwQWR2aXNvci1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luOiA0MHB4IGF1dG87IH1cblxuLm9mZmVycy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMjBweDtcbiAganVzdGlmeS1zZWxmOiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLm9mZmVycy1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMjVweDsgfSB9XG5cbi5vZmZlcnMgLm9mZmVyLWltYWdlIGltZyB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5vZmZlcnMgLm9mZmVyIC5idG4ge1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cblxuLm9mZmVycyAub2ZmZXIgLnN1YnRpdGxlIHtcbiAgY29sb3I6ICMwMDZENzY7IH1cblxuLm9mZmVycyAub2ZmZXIgLmljb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAyMHB4O1xuICBtYXJnaW46IDMwcHggYXV0bzsgfVxuICAub2ZmZXJzIC5vZmZlciAuaWNvbnMgZGl2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAub2ZmZXJzIC5vZmZlciAuaWNvbnMgZGl2IGltZyB7XG4gICAgICB3aWR0aDogNTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAub2ZmZXJzIC5vZmZlciAuaWNvbnMgZGl2IGg2IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ub2ZmZXJzIC5vZmZlci5oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gIC5vZmZlcnMgLm9mZmVyLmZ1bGxXaWR0aCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5vZmZlcnMgLm9mZmVyLmNvbC0zIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAub2ZmZXJzIC5vZmZlciAucHJpY2Uge1xuICAgIG1hcmdpbjogMjBweCAwOyB9XG4gIC5vZmZlcnMgLm9mZmVyLmhpZ2hsaWdodCAub2ZmZXItY29udGVudCB7XG4gICAgcGFkZGluZzogMTBweDsgfVxuICAub2ZmZXJzIC5vZmZlciAuc3VidGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLm9mZmVycyAub2ZmZXIgLmljb25zIGRpdiBpbWcge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgLm9mZmVycyAub2ZmZXIgLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAub2ZmZXJzIC5vZmZlci5mdWxsV2lkdGgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLyomOm50aC1jaGlsZCg1bil7XHJcblx0XHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcblx0XHRcdFx0XHQub2ZmZXItY29udGVudHtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxNTBweDtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDcwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSovIH1cbiAgICAub2ZmZXJzIC5vZmZlci5mdWxsV2lkdGggLm9mZmVyLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDE1MHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiA3MHB4O1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5vZmZlcnMgLm9mZmVyLmZ1bGxXaWR0aCAub2ZmZXItaW1hZ2Uge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5vZmZlcnMgLm9mZmVyLmZ1bGxXaWR0aDpudGgtY2hpbGQob2RkKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgICAgIC5vZmZlcnMgLm9mZmVyLmZ1bGxXaWR0aDpudGgtY2hpbGQob2RkKSAub2ZmZXItY29udGVudCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTUwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA3MHB4OyB9XG4gIC5vZmZlcnMgLm9mZmVyLmNvbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gICAgLm9mZmVycyAub2ZmZXIuY29sLTM6bnRoLWNoaWxkKDJuKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMTUwcHg7IH1cbiAgICAub2ZmZXJzIC5vZmZlci5jb2wtMzpudGgtY2hpbGQoNG4pIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTUwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5vZmZlcnMgLm9mZmVyLmNvbC0zIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9XG5cbi5vZmZlcnMgLnByaWNlIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMwMDZENzY7IH1cblxuLm9mZmVycyAub2ZmZXJNc2cge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxMDBweDsgfVxuXG4ub2ZmZXJzIC5mYXEge1xuICBwYWRkaW5nOiA0MHB4IDE1MHB4IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAub2ZmZXJzIC5mYXEge1xuICAgICAgcGFkZGluZzogMjVweDsgfSB9XG4gIC5vZmZlcnMgLmZhcSAuYWNjb3JkaW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vZmZlcnMgLmZhcSAuYWNjb3JkaW9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfSB9XG4gICAgLm9mZmVycyAuZmFxIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5vZmZlcnMgLmZhcSAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH0gfVxuICAgICAgLm9mZmVycyAuZmFxIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBFbE1lc3Npcmk7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgICAgICAgLm9mZmVycyAuZmFxIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBjb2xvcjogIzAwQTM5RDsgfVxuICAgICAgICAub2ZmZXJzIC5mYXEgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgICAgIC5vZmZlcnMgLmZhcSAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUge1xuICAgICAgICAgIHJpZ2h0OiAwOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLm9mZmVycyAuZmFxIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgICAub2ZmZXJzIC5mYXEgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAgIC5vZmZlcnMgLmZhcSAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICBjb2xvcjogIzAwQTM5RDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnNpbmdsZU9mZmVyX3NlY3Rpb24ge1xuICBwYWRkaW5nOiA3MHB4IDE1MHB4IDEwcHg7XG4gIC8qZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdGdhcDogMTAwcHg7Ki8gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zaW5nbGVPZmZlcl9zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICAvKmZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0Z2FwOjA7Ki9cbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9IH1cbiAgLnNpbmdsZU9mZmVyX3NlY3Rpb24gaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnNpbmdsZU9mZmVyX3NlY3Rpb24gaDMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICAuc2luZ2xlT2ZmZXJfc2VjdGlvbiBsaSB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuICAuc2luZ2xlT2ZmZXJfc2VjdGlvbiBkaXYge1xuICAgIC8qJjpmaXJzdC1jaGlsZHtcclxuXHRcdFx0XHR3aWR0aDogNjAlO1xyXG5cdFx0XHR9XHJcblx0XHRcdCY6bGFzdC1jaGlsZHtcclxuXHRcdFx0XHR3aWR0aDogNDAlO1xyXG5cdFx0XHR9Ki8gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2luZ2xlT2ZmZXJfc2VjdGlvbiBkaXYgLnByaWNlIHtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDA7IH0gfVxuICAgIC5zaW5nbGVPZmZlcl9zZWN0aW9uIGRpdiAuaG90ZWwgYSB7XG4gICAgICBjb2xvcjogIzAwNkQ3NjtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgIC5zaW5nbGVPZmZlcl9zZWN0aW9uIGRpdiAuaG90ZWwgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMDBBMzlEOyB9XG4gIC5zaW5nbGVPZmZlcl9zZWN0aW9uIC5pY29ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDIwcHg7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87IH1cbiAgICAuc2luZ2xlT2ZmZXJfc2VjdGlvbiAuaWNvbnMgZGl2IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLnNpbmdsZU9mZmVyX3NlY3Rpb24gLmljb25zIGRpdiBpbWcge1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5zaW5nbGVPZmZlcl9zZWN0aW9uIC5pY29ucyBkaXYgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4OyB9IH1cbiAgICAgIC5zaW5nbGVPZmZlcl9zZWN0aW9uIC5pY29ucyBkaXYgaDYge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNpbmdsZU9mZmVyX3NlY3Rpb24gLnRlcm1zQW5kQ29uZGl0aW9ucyBoMSwgLnNpbmdsZU9mZmVyX3NlY3Rpb24gLnRlcm1zQW5kQ29uZGl0aW9ucyBoMiwgLnNpbmdsZU9mZmVyX3NlY3Rpb24gLnRlcm1zQW5kQ29uZGl0aW9ucyBoMywgLnNpbmdsZU9mZmVyX3NlY3Rpb24gLnRlcm1zQW5kQ29uZGl0aW9ucyBoNCwgLnNpbmdsZU9mZmVyX3NlY3Rpb24gLnRlcm1zQW5kQ29uZGl0aW9ucyBoNSwgLnNpbmdsZU9mZmVyX3NlY3Rpb24gLnRlcm1zQW5kQ29uZGl0aW9ucyBoNiB7XG4gICAgY29sb3I6ICMwMDZENzY7IH1cblxuLnNpbmdsZU9mZmVyX3NlY3Rpb24yIHtcbiAgcGFkZGluZzogMTBweCAxNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zaW5nbGVPZmZlcl9zZWN0aW9uMiB7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cbiAgLnNpbmdsZU9mZmVyX3NlY3Rpb24yIC5wYXJ0aWNpcGF0aW5nX2hvdGVscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBjb2x1bW4tZ2FwOiAyMHB4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBwYWRkaW5nLXRvcDogNTBweDsgfVxuICAgIC5zaW5nbGVPZmZlcl9zZWN0aW9uMiAucGFydGljaXBhdGluZ19ob3RlbHMgLmhvdGVsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAgIC5zaW5nbGVPZmZlcl9zZWN0aW9uMiAucGFydGljaXBhdGluZ19ob3RlbHMgLmhvdGVsIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuc2luZ2xlT2ZmZXJfc2VjdGlvbjIgLnBhcnRpY2lwYXRpbmdfaG90ZWxzIC5ob3RlbC1kZXRhaWxzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSgwLCAwLCAwLCAwLjgpLCB0cmFuc3BhcmVudCk7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gICAgICAgIC5zaW5nbGVPZmZlcl9zZWN0aW9uMiAucGFydGljaXBhdGluZ19ob3RlbHMgLmhvdGVsLWRldGFpbHMgaDQsIC5zaW5nbGVPZmZlcl9zZWN0aW9uMiAucGFydGljaXBhdGluZ19ob3RlbHMgLmhvdGVsLWRldGFpbHMgYSB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnNpbmdsZU9mZmVyX3NlY3Rpb24yIC5wYXJ0aWNpcGF0aW5nX2hvdGVscyB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAuc2luZ2xlT2ZmZXJfc2VjdGlvbjIgLnBhcnRpY2lwYXRpbmdfaG90ZWxzIC5ob3RlbCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAxMHB4IDA7IH0gfVxuICAuc2luZ2xlT2ZmZXJfc2VjdGlvbjIgLmNhcm91c2VsLXNsaWRlciB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7IH1cblxuLnNpbmdsZU9mZmVyIC5ub0Fycm93U2xpZGVyIHtcbiAgbWFyZ2luOiA3MHB4IDA7IH1cbiAgLnNpbmdsZU9mZmVyIC5ub0Fycm93U2xpZGVyIC5wcmljZSB7XG4gICAgbWFyZ2luOiAxNXB4IDA7IH1cblxuLnNpbmdsZU9mZmVyIC5ibHVlIHtcbiAgY29sb3I6ICMwMDZENzY7IH1cblxuLnNpbmdsZU9mZmVyIC5mYXEge1xuICBwYWRkaW5nOiA0MHB4IDE1MHB4IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc2luZ2xlT2ZmZXIgLmZhcSB7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cbiAgLnNpbmdsZU9mZmVyIC5mYXEgLmFjY29yZGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2luZ2xlT2ZmZXIgLmZhcSAuYWNjb3JkaW9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfSB9XG4gICAgLnNpbmdsZU9mZmVyIC5mYXEgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNpbmdsZU9mZmVyIC5mYXEgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9IH1cbiAgICAgIC5zaW5nbGVPZmZlciAuZmFxIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBFbE1lc3Npcmk7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgICAgICAgLnNpbmdsZU9mZmVyIC5mYXEgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGNvbG9yOiAjMDBBMzlEOyB9XG4gICAgICAgIC5zaW5nbGVPZmZlciAuZmFxIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAuc2luZ2xlT2ZmZXIgLmZhcSAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUge1xuICAgICAgICAgIHJpZ2h0OiAwOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLnNpbmdsZU9mZmVyIC5mYXEgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAgIC5zaW5nbGVPZmZlciAuZmFxIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgICAuc2luZ2xlT2ZmZXIgLmZhcSAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICBjb2xvcjogIzAwQTM5RDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnNpbmdsZU9mZmVyIC5jb3VudGRvd25Db250YWluZXIgaDIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnNpbmdsZU9mZmVyIC5jb3VudGRvd25Db250YWluZXIgLmNvdW50ZG93biB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDAgYXV0byAzMHB4O1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuc2luZ2xlT2ZmZXIgLmNvdW50ZG93bkNvbnRhaW5lciAuY291bnRkb3duIGRpdiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LWZhbWlseTogRWxNZXNzaXJpOyB9XG4gIC5zaW5nbGVPZmZlciAuY291bnRkb3duQ29udGFpbmVyIC5jb3VudGRvd24gc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IEVsTWVzc2lyaTtcbiAgICBjb2xvcjogIzAwNkQ3NjtcbiAgICBmb250LXNpemU6IDUwcHg7IH1cblxuLmxvYWRNb3JlIHtcbiAgbWFyZ2luOiA0MHB4IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubG9hZE1vcmUgZGl2IHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGNvbG9yOiAjMDA2RDc2O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gICAgYmFja2dyb3VuZDogI0YzRjRGODtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIGF1dG8gMjBweDsgfVxuICAgIC5sb2FkTW9yZSBkaXY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzAwNkQ3NjtcbiAgICAgIGNvbG9yOiAjRjNGNEY4OyB9XG4gICAgLmxvYWRNb3JlIGRpdiBpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwOyB9XG5cbi5hYm91dF9sb2NhdGlvbiB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7IH1cbiAgLmFib3V0X2xvY2F0aW9uIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuYWJvdXRfbG9jYXRpb24ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMjVweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgIC5hYm91dF9sb2NhdGlvbiBpbWcge1xuICAgICAgICBoZWlnaHQ6IDUwdmg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1JSk7XG4gICAgICAgIG1heC13aWR0aDogaW5pdGlhbDsgfSB9XG4gIC5hYm91dF9sb2NhdGlvbiBkaXYge1xuICAgIG1hcmdpbjogMzBweCBhdXRvOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFib3V0X2xvY2F0aW9uIGRpdiB7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgICAgY29sdW1uLWdhcDogMzVweDsgfSB9XG5cbi5hYm91dF9zdG9yeSB7XG4gIHBhZGRpbmc6IDEwMHB4IDBweCA3MHB4IDE1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLmFib3V0X3N0b3J5IGgxIHtcbiAgICBsaW5lLWhlaWdodDogNHZ3O1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cbiAgICAuYWJvdXRfc3RvcnkgaDEgc3BhbiB7XG4gICAgICBsaW5lLWhlaWdodDogNXZ3OyB9XG4gIC5hYm91dF9zdG9yeSBkaXYge1xuICAgIGZsZXg6IDE7IH1cbiAgICAuYWJvdXRfc3RvcnkgZGl2IGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5hYm91dF9zdG9yeSBkaXYgcCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5hYm91dF9zdG9yeSB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDBweCAyNXB4IDI1cHg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cbiAgICAgIC5hYm91dF9zdG9yeSBkaXYge1xuICAgICAgICBmbGV4OiBpbml0aWFsO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICAgICAgLmFib3V0X3N0b3J5IGRpdiBwIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gICAgICAuYWJvdXRfc3RvcnkgaDEge1xuICAgICAgICBsaW5lLWhlaWdodDogNnZ3O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAgIC5hYm91dF9zdG9yeSBoMSBzcGFuIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogOHZ3OyB9IH1cblxuLmFib3V0X2dhbGxlcnkge1xuICBwYWRkaW5nLXRvcDogNTBweDtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluOyB9XG4gIC5hYm91dF9nYWxsZXJ5LmJhY2tncm91bmRDb2xvciB7XG4gICAgYmFja2dyb3VuZDogI0YzRjRGODsgfVxuXG4uYWJvdXRfdGVzdGltb25pYWxzIHtcbiAgcGFkZGluZzogNTBweCAwcHggNTBweCAxNTBweDtcbiAgYmFja2dyb3VuZDogI0YzRjRGODtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgLmFib3V0X3Rlc3RpbW9uaWFscy5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuYWJvdXRfdGVzdGltb25pYWxzIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH0gfVxuICAuYWJvdXRfdGVzdGltb25pYWxzLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5hYm91dF90ZXN0aW1vbmlhbHMgLnNsaWNrLWxpc3Qge1xuICAgIHBhZGRpbmctbGVmdDogMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmFib3V0X3Rlc3RpbW9uaWFscyAudGVzdGltb25pYWxCbG9jayB7XG4gICAgYmFja2dyb3VuZDogI0YzRjRGODtcbiAgICBwYWRkaW5nOiA1MHB4IDYwcHg7XG4gICAgbWFyZ2luOiAwIDIwcHg7IH1cbiAgICAuYWJvdXRfdGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbEJsb2NrX2ltYWdlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aWR0aDogNDAlO1xuICAgICAgbWFyZ2luOiAwIGF1dG8gNDBweDsgfVxuICAgIC5hYm91dF90ZXN0aW1vbmlhbHMgLnRlc3RpbW9uaWFsQmxvY2sgcCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDsgfVxuICAgICAgLmFib3V0X3Rlc3RpbW9uaWFscyAudGVzdGltb25pYWxCbG9jayBwLm5hbWUge1xuICAgICAgICBjb2xvcjogIzAwNkQ3NjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYWJvdXRfdGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbEJsb2NrIHtcbiAgICAgICAgcGFkZGluZzogMzBweCAxNXB4O1xuICAgICAgICBtYXJnaW46IDAgMTBweDsgfVxuICAgICAgICAuYWJvdXRfdGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbEJsb2NrIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDsgfVxuICAgICAgICAuYWJvdXRfdGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbEJsb2NrX2ltYWdlIHtcbiAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDI1cHg7IH0gfVxuICAuYWJvdXRfdGVzdGltb25pYWxzIC5zbGljay1hcnJvdyB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDZENzY7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGNvbG9yOiAjMDA2RDc2O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC05MHB4O1xuICAgIHJpZ2h0OiA3MHB4OyB9XG4gICAgLmFib3V0X3Rlc3RpbW9uaWFscyAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gICAgICByaWdodDogMTUwcHg7IH1cbiAgICAuYWJvdXRfdGVzdGltb25pYWxzIC5zbGljay1hcnJvdzpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLmFib3V0X3Rlc3RpbW9uaWFscyAuc2xpY2stYXJyb3cge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4OyB9IH1cblxuLmFib3V0X21hc3RlcnBsYW4ge1xuICBwYWRkaW5nOiA1MHB4IDA7IH1cbiAgLmFib3V0X21hc3RlcnBsYW4gaDEge1xuICAgIHBhZGRpbmctbGVmdDogMTUwcHg7IH1cbiAgLmFib3V0X21hc3RlcnBsYW4gLnRleHQge1xuICAgIHBhZGRpbmc6IDMwcHggMTUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuYWJvdXRfbWFzdGVycGxhbiB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDA7IH1cbiAgICAgIC5hYm91dF9tYXN0ZXJwbGFuIGgxIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9XG4gICAgICAuYWJvdXRfbWFzdGVycGxhbiAudGV4dCB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjVweDsgfSB9XG4gIC5hYm91dF9tYXN0ZXJwbGFuICNtYXAge1xuICAgIGhlaWdodDogNTAwcHg7IH1cbiAgLmFib3V0X21hc3RlcnBsYW4gLmdtLXN0eWxlLWl3LCAuYWJvdXRfbWFzdGVycGxhbiAuZ20tc3R5bGUtaXctZCB7XG4gICAgbWF4LWhlaWdodDogNDAwcHggIWltcG9ydGFudDsgfVxuICAuYWJvdXRfbWFzdGVycGxhbiAuaW5mb1dpbmRvdyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5hYm91dF9tYXN0ZXJwbGFuIC5pbmZvV2luZG93X2NvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIHdpZHRoOiAzMzBweDsgfVxuICAgICAgLmFib3V0X21hc3RlcnBsYW4gLmluZm9XaW5kb3dfY29udGFpbmVyIC5jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXJnaW46IDEwcHggYXV0bzsgfVxuICAgICAgLmFib3V0X21hc3RlcnBsYW4gLmluZm9XaW5kb3dfY29udGFpbmVyIGg2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAyM3B4O1xuICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAgICAgLmFib3V0X21hc3RlcnBsYW4gLmluZm9XaW5kb3dfY29udGFpbmVyIC5pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgICAgLmFib3V0X21hc3RlcnBsYW4gLmluZm9XaW5kb3dfY29udGFpbmVyIC5pbWFnZSBpbWcge1xuICAgICAgICAgIHdpZHRoOiAzMDBweDsgfVxuICAgICAgLmFib3V0X21hc3RlcnBsYW4gLmluZm9XaW5kb3dfY29udGFpbmVyIGEge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5hYm91dF9tYXN0ZXJwbGFuIC5nbS1zdHlsZSAuZ20tc3R5bGUtaXctYyB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5hYm91dF9tYXN0ZXJwbGFuIC5nbS1zdHlsZSAuZ20tc3R5bGUtaXctZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG4gIC5hYm91dF9tYXN0ZXJwbGFuIC5nbS11aS1ob3Zlci1lZmZlY3QgPiBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIHdpZHRoOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7IH1cbiAgLmFib3V0X21hc3RlcnBsYW4gLmdtLXN0eWxlIC5nbS1zdHlsZS1pdy10Yzo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLmFib3V0X3Zpc2lvbiB7XG4gIHBhZGRpbmc6IDUwcHggMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5hYm91dF92aXNpb24gaDEge1xuICAgIHBhZGRpbmctbGVmdDogMTUwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmFib3V0X3Zpc2lvbi1jb250ZW50LCAuYWJvdXRfdmlzaW9uLWltYWdlIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5hYm91dF92aXNpb24taW1hZ2Uge1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICAuYWJvdXRfdmlzaW9uLWltYWdlIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYWJvdXRfdmlzaW9uLWltYWdlLmlzLWludmlldyBkaXYge1xuICAgICAgICBjbGlwLXBhdGg6IGluc2V0KDAgMCAwIDApOyB9XG4gICAgICAuYWJvdXRfdmlzaW9uLWltYWdlIGRpdiB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAxLjNzIGN1YmljLWJlemllcigwLjc2LCAwLCAwLjI0LCAxKTtcbiAgICAgICAgY2xpcC1wYXRoOiBpbnNldCgxMDAlIDAgMCAwKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG4gIC5hYm91dF92aXNpb24tY29udGVudCB7XG4gICAgcGFkZGluZzogNTBweDtcbiAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tbGVmdDogLTEwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1JTtcbiAgICBtYXJnaW4tdG9wOiA1JTsgfVxuICAgIC5hYm91dF92aXNpb24tY29udGVudCBwLCAuYWJvdXRfdmlzaW9uLWNvbnRlbnQgc3BhbiB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5hYm91dF92aXNpb24tY29udGVudCBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYWJvdXRfdmlzaW9uLWNvbnRlbnQge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDI1cHg7IH1cbiAgICAgICAgLmFib3V0X3Zpc2lvbi1jb250ZW50IGEge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuYWJvdXRfdmlzaW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLXRvcDogMjVweDsgfVxuICAgICAgLmFib3V0X3Zpc2lvbi1jb250ZW50LCAuYWJvdXRfdmlzaW9uLWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5hYm91dF92aXNpb24gaDEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuXG4uYWJvdXRfbXVyaXlhIHtcbiAgcGFkZGluZzogNTBweCAxNTBweCA1MHB4IDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogNTBweDsgfVxuICAuYWJvdXRfbXVyaXlhIGRpdiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5hYm91dF9tdXJpeWEge1xuICAgICAgcGFkZGluZzogMjVweCAyNXB4IDI1cHggMHB4O1xuICAgICAgY29sdW1uLWdhcDogMDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLmFib3V0X211cml5YSBkaXYge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAuYWJvdXRfbXVyaXlhIGRpdiBwIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH1cbiAgICAgIC5hYm91dF9tdXJpeWEgaDEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuICAuYWJvdXRfbXVyaXlhIC5pbWFnZSBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFib3V0X211cml5YSAuaW1hZ2UuaXMtaW52aWV3IGRpdiB7XG4gICAgICBjbGlwLXBhdGg6IGluc2V0KDAgMCAwIDApOyB9XG4gICAgLmFib3V0X211cml5YSAuaW1hZ2UgZGl2IHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAxLjNzIGN1YmljLWJlemllcigwLjc2LCAwLCAwLjI0LCAxKTtcbiAgICAgIGNsaXAtcGF0aDogaW5zZXQoMTAwJSAwIDAgMCk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uYWJvdXRfaGF3YW5hIHtcbiAgcGFkZGluZzogNTBweCAwIDUwcHggMTUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDUwcHg7IH1cbiAgLmFib3V0X2hhd2FuYSBkaXYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuYWJvdXRfaGF3YW5hIHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMCAyNXB4IDI1cHg7XG4gICAgICBjb2x1bW4tZ2FwOiAwO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gICAgICAuYWJvdXRfaGF3YW5hIGRpdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5hYm91dF9oYXdhbmEgZGl2IHAge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgICAgIC5hYm91dF9oYXdhbmEgaDEge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9IH1cbiAgLmFib3V0X2hhd2FuYSAuaW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hYm91dF9oYXdhbmEgLmltYWdlLmlzLWludmlldyBkaXYge1xuICAgICAgY2xpcC1wYXRoOiBpbnNldCgwIDAgMCAwKTsgfVxuICAgIC5hYm91dF9oYXdhbmEgLmltYWdlIGRpdiB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMS4zcyBjdWJpYy1iZXppZXIoMC43NiwgMCwgMC4yNCwgMSk7XG4gICAgICBjbGlwLXBhdGg6IGluc2V0KDEwMCUgMCAwIDApO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmFib3V0X2Zvcm0ge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjsgfVxuICAuYWJvdXRfZm9ybS5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgIGJhY2tncm91bmQ6ICNGM0Y0Rjg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuYWJvdXRfZm9ybSB7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cblxuLmFib3V0X2V4cGxvcmUge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmFib3V0X2V4cGxvcmUge1xuICAgICAgcGFkZGluZzogMjVweDsgfSB9XG4gIC5hYm91dF9leHBsb3JlLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmFib3V0X2V4cGxvcmUtY29udGFpbmVyIGRpdiB7XG4gICAgICB3aWR0aDogMzAlOyB9XG4gICAgICAuYWJvdXRfZXhwbG9yZS1jb250YWluZXIgZGl2IGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuYWJvdXRfZXhwbG9yZS1jb250YWluZXIgZGl2IGgzIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAuYWJvdXRfZXhwbG9yZS1jb250YWluZXIgZGl2IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAgICAgLmFib3V0X2V4cGxvcmUtY29udGFpbmVyIGRpdiBoMyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG5cbi5kaW5pbmdQYWdlX2ludHJvIHtcbiAgcGFkZGluZzogNTBweCAxNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBjb2x1bW4tZ2FwOiAzMHB4OyB9XG4gIC5kaW5pbmdQYWdlX2ludHJvIGRpdiwgLmRpbmluZ1BhZ2VfaW50cm8gaDEge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuZGluaW5nUGFnZV9pbnRybyB7XG4gICAgICBwYWRkaW5nOiAyNXB4O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAuZGluaW5nUGFnZV9pbnRybyBkaXYsIC5kaW5pbmdQYWdlX2ludHJvIGgxIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5kaW5pbmdQYWdlX2ludHJvIGRpdiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfSB9XG5cbi5kaW5pbmdQYWdlX3NlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjsgfVxuICAuZGluaW5nUGFnZV9zZWN0aW9uLmJhY2tncm91bmRDb2xvciB7XG4gICAgYmFja2dyb3VuZDogI0YzRjRGODsgfVxuICAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5kaW5pbmdQYWdlX3NlY3Rpb24tY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH0gfVxuICAgIC5kaW5pbmdQYWdlX3NlY3Rpb24tY29udGVudCAuc2luZ2xlRGluaW5nIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgLyomLWNvbnRlbnR7XHJcblx0XHRcdFx0XHR3aWR0aDogNjYlO1xyXG5cdFx0XHRcdFx0cGFkZGluZy10b3A6IDQwcHg7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogY2FsYygxNTBweCArIDEwJSk7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRcdFx0Y29sdW1uLWdhcDogMzBweDtcclxuXHRcdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0aDJ7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQ+IGRpdntcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdFx0YWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdC5waG9uZXtcclxuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdFx0XHRcdFx0Y29sb3I6JGRhcmstYmx1ZTtcclxuXHRcdFx0XHRcdFx0YXtcclxuXHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0XHRcdFx0XHRcdGNvbG9yOiRkYXJrLWJsdWU7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmctdG9wOiAyNXB4O1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMjVweDtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0XHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiA4MCU7XHJcblx0XHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHRcdFx0XHRcdFx0aDJ7XHJcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbToyMHB4O1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH0qL1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluOyB9XG4gICAgICAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQgLnNpbmdsZURpbmluZy1pbmZvLCAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQgLnNpbmdsZURpbmluZy1nYWxsZXJ5IHtcbiAgICAgICAgd2lkdGg6IDQ4JTsgfVxuICAgICAgLmRpbmluZ1BhZ2Vfc2VjdGlvbi1jb250ZW50IC5zaW5nbGVEaW5pbmcgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5kaW5pbmdQYWdlX3NlY3Rpb24tY29udGVudCAuc2luZ2xlRGluaW5nIGgxIHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgLmRpbmluZ1BhZ2Vfc2VjdGlvbi1jb250ZW50IC5zaW5nbGVEaW5pbmc6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogI0YzRjRGODsgfVxuICAgICAgICAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQgLnNpbmdsZURpbmluZzpudGgtY2hpbGQoZXZlbikuYmFja2dyb3VuZENvbG9yIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gICAgICAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQgLnNpbmdsZURpbmluZzpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTUwcHg7IH1cbiAgICAgICAgLmRpbmluZ1BhZ2Vfc2VjdGlvbi1jb250ZW50IC5zaW5nbGVEaW5pbmc6bnRoLWNoaWxkKG9kZCkuYmFja2dyb3VuZENvbG9yIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjRjNGNEY4OyB9XG4gICAgICAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQgLnNpbmdsZURpbmluZy1nYWxsZXJ5IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC5kaW5pbmdQYWdlX3NlY3Rpb24tY29udGVudCAuc2luZ2xlRGluaW5nLWdhbGxlcnkgLmxvZ28ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7IH1cbiAgICAgICAgLmRpbmluZ1BhZ2Vfc2VjdGlvbi1jb250ZW50IC5zaW5nbGVEaW5pbmctZ2FsbGVyeSAuc2xpY2stYXJyb3cge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IC01MHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgICBjb2xvcjogIzAwQTM5RDsgfVxuICAgICAgICAgIC5kaW5pbmdQYWdlX3NlY3Rpb24tY29udGVudCAuc2luZ2xlRGluaW5nLWdhbGxlcnkgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgICAgICAgICAgbGVmdDogMDsgfVxuICAgICAgICAgIC5kaW5pbmdQYWdlX3NlY3Rpb24tY29udGVudCAuc2luZ2xlRGluaW5nLWdhbGxlcnkgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICAgICAgICAgICAgbGVmdDogNjBweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQgLnNpbmdsZURpbmluZy1nYWxsZXJ5IC5zbGljay1hcnJvdyB7XG4gICAgICAgICAgICAgIGJvdHRvbTogLTM1cHg7IH0gfVxuICAgICAgICAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQgLnNpbmdsZURpbmluZy1nYWxsZXJ5IC5zbGlkZXItbm8ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgICBmb250LWZhbWlseTogRWxNZXNzaXJpO1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDAsIDE2MywgMTU3LCAwLjQpO1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7IH1cbiAgICAgICAgICAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQgLnNpbmdsZURpbmluZy1nYWxsZXJ5IC5zbGlkZXItbm8gc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogIzAwQTM5RDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQgLnNpbmdsZURpbmluZy1nYWxsZXJ5IC5zbGlkZXItbm8ge1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmRpbmluZ1BhZ2Vfc2VjdGlvbi1jb250ZW50IC5zaW5nbGVEaW5pbmcge1xuICAgICAgICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgICAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQgLnNpbmdsZURpbmluZy1pbmZvLCAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQgLnNpbmdsZURpbmluZy1nYWxsZXJ5IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgICAgLmRpbmluZ1BhZ2Vfc2VjdGlvbi1jb250ZW50IC5zaW5nbGVEaW5pbmctaW5mbyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gICAgICAgICAgLmRpbmluZ1BhZ2Vfc2VjdGlvbi1jb250ZW50IC5zaW5nbGVEaW5pbmc6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgICAgICAgICAgIC5kaW5pbmdQYWdlX3NlY3Rpb24tY29udGVudCAuc2luZ2xlRGluaW5nOm50aC1jaGlsZChldmVuKSAuc2luZ2xlRGluaW5nLWluZm8sIC5kaW5pbmdQYWdlX3NlY3Rpb24tY29udGVudCAuc2luZ2xlRGluaW5nOm50aC1jaGlsZChldmVuKSBoMSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfVxuICAgICAgICAgIC5kaW5pbmdQYWdlX3NlY3Rpb24tY29udGVudCAuc2luZ2xlRGluaW5nOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfVxuICAgICAgICAgICAgLmRpbmluZ1BhZ2Vfc2VjdGlvbi1jb250ZW50IC5zaW5nbGVEaW5pbmc6bnRoLWNoaWxkKG9kZCkgLnNpbmdsZURpbmluZy1pbmZvIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfSB9XG5cbi5kaW5pbmdQYWdlIC5ub0RpbmluZyB7XG4gIHBhZGRpbmc6IDEwcHggMTUwcHggNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5kaW5pbmdQYWdlIC5ub0RpbmluZyB7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cbiAgLmRpbmluZ1BhZ2UgLm5vRGluaW5nIHAge1xuICAgIGNvbG9yOiAjMDBBMzlEO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5tYXJpbmEgaDEge1xuICBmb250LXNpemU6IDR2dzsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5tYXJpbmEgaDEge1xuICAgICAgZm9udC1zaXplOiAxMHZ3OyB9IH1cbiAgLm1hcmluYSBoMSBzcGFuIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuXG4ubWFyaW5hX2ludHJvIHtcbiAgcGFkZGluZzogNTBweCAxNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBjb2x1bW4tZ2FwOiAzMHB4OyB9XG4gIC5tYXJpbmFfaW50cm8gZGl2LCAubWFyaW5hX2ludHJvIGgxIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLm1hcmluYV9pbnRybyB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDI1cHggMjVweDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLm1hcmluYV9pbnRybyBkaXYsIC5tYXJpbmFfaW50cm8gaDEge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLm1hcmluYV9pbnRybyBkaXYge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuXG4ubWFyaW5hIC5iZXJ0aFJhdGVzIHtcbiAgcGFkZGluZzogNTBweCAxNTBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgLm1hcmluYSAuYmVydGhSYXRlcy5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgIGJhY2tncm91bmQ6ICNGM0Y0Rjg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAubWFyaW5hIC5iZXJ0aFJhdGVzIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH0gfVxuICAubWFyaW5hIC5iZXJ0aFJhdGVzIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAubWFyaW5hIC5iZXJ0aFJhdGVzIGg1IHtcbiAgICBjb2xvcjogIzAwNkQ3NjsgfVxuICAubWFyaW5hIC5iZXJ0aFJhdGVzIGhyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLm1hcmluYSAuYmVydGhSYXRlcyAucHJpY2VzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWFyaW5hIC5iZXJ0aFJhdGVzIC5wcmljZXMgPiBkaXYge1xuICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBjb2x1bW4tZ2FwOiA1MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLm1hcmluYSAuYmVydGhSYXRlcyAucHJpY2VzID4gZGl2IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBjb2x1bW4tZ2FwOiAwO1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gICAgICAgICAgLm1hcmluYSAuYmVydGhSYXRlcyAucHJpY2VzID4gZGl2IGRpdiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuICAgICAgLm1hcmluYSAuYmVydGhSYXRlcyAucHJpY2VzID4gZGl2IHAge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4ubWFyaW5hIC53YXRlclRheGkge1xuICBwYWRkaW5nOiA1MHB4IDAgNTBweCAxNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBjb2x1bW4tZ2FwOiA1MHB4OyB9XG4gIC5tYXJpbmEgLndhdGVyVGF4aSA+IGRpdiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWFyaW5hIC53YXRlclRheGkgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5tYXJpbmEgLndhdGVyVGF4aSB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDAgMjVweCAyNXB4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgY29sdW1uLWdhcDogMDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuICAgICAgLm1hcmluYSAud2F0ZXJUYXhpID4gZGl2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuXG4jZmllbGRfMTBfNCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBlbmQ7IH1cbiAgI2ZpZWxkXzEwXzQgLmdpbnB1dF9jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5jb250YWN0X2NvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250YWN0X2NvbnRhaW5lcjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAgICAgLmNvbnRhY3RfY29udGFpbmVyOm50aC1jaGlsZChldmVuKS5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRjNGNEY4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuY29udGFjdF9jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMTVweCAwOyB9IH1cbiAgLmNvbnRhY3RfY29udGFpbmVyIC5kZXB0IHtcbiAgICB3aWR0aDogMzAlOyB9XG4gICAgLmNvbnRhY3RfY29udGFpbmVyIC5kZXB0IGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDsgfVxuICAgIC5jb250YWN0X2NvbnRhaW5lciAuZGVwdCBoNiB7XG4gICAgICBjb2xvcjogIzAwNkQ3NjtcbiAgICAgIGZvbnQtZmFtaWx5OiBicmFuZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbWluLWhlaWdodDogMjVweDsgfVxuICAgIC5jb250YWN0X2NvbnRhaW5lciAuZGVwdCBwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgICAuY29udGFjdF9jb250YWluZXIgLmRlcHQgcCBzcGFuIHtcbiAgICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY29udGFjdF9jb250YWluZXIgLmRlcHQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMjVweDsgfVxuICAgICAgICAuY29udGFjdF9jb250YWluZXIgLmRlcHQuZXZlbiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI0YzRjRGODsgfVxuICAgICAgICAuY29udGFjdF9jb250YWluZXIgLmRlcHQgcCBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICB3aWR0aDogMzUlOyB9XG4gICAgICAgIC5jb250YWN0X2NvbnRhaW5lciAuZGVwdCBwIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgICAgICAgd2lkdGg6IDY1JTtcbiAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7IH0gfVxuXG4ucmVudGFsIC5iYW5uZXIgLmJ0biB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5yZW50YWwgLmJhbm5lci10ZXh0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5yZW50YWxfaW50cm8ge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGNvbHVtbi1nYXA6IDMwcHg7IH1cbiAgLnJlbnRhbF9pbnRybyBkaXYsIC5yZW50YWxfaW50cm8gaDEge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAucmVudGFsX2ludHJvIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC5yZW50YWxfaW50cm8gZGl2LCAucmVudGFsX2ludHJvIGgxIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5yZW50YWxfaW50cm8gZGl2IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9IH1cblxuLnJlbnRhbF9wcm9wZXJ0aWVzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcGFkZGluZzogMTIwcHggMHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjsgfVxuICAucmVudGFsX3Byb3BlcnRpZXMuYmFja2dyb3VuZENvbG9yIHtcbiAgICBiYWNrZ3JvdW5kOiAjRjNGNEY4OyB9XG4gIC5yZW50YWxfcHJvcGVydGllcyBoMSB7XG4gICAgcGFkZGluZzogMCAxNTBweDsgfVxuICAgIC5yZW50YWxfcHJvcGVydGllcyBoMSBzcGFuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5yZW50YWxfcHJvcGVydGllcyAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtY29udGVudCBoNiB7XG4gICAgY29sb3I6ICMwMDZENzY7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAucmVudGFsX3Byb3BlcnRpZXMge1xuICAgICAgcGFkZGluZzogMjVweCAwOyB9XG4gICAgICAucmVudGFsX3Byb3BlcnRpZXMgaDEge1xuICAgICAgICBwYWRkaW5nOiAwIDI1cHg7IH0gfVxuXG4ucmVudGFsX3NlcnZpY2VzIHtcbiAgYmFja2dyb3VuZDogIzAwNkQ3NjtcbiAgcGFkZGluZzogNTBweCAxNTBweDsgfVxuICAucmVudGFsX3NlcnZpY2VzIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiA2MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgLnJlbnRhbF9zZXJ2aWNlcy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5yZW50YWxfc2VydmljZXMtY29udGFpbmVyIGg2IHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5yZW50YWxfc2VydmljZXMge1xuICAgICAgcGFkZGluZzogMjVweDsgfVxuICAgICAgLnJlbnRhbF9zZXJ2aWNlcyBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDsgfVxuICAgICAgLnJlbnRhbF9zZXJ2aWNlcy1jb250YWluZXIge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBjb2x1bW4tZ2FwOiAxNXB4OyB9XG4gICAgICAgIC5yZW50YWxfc2VydmljZXMtY29udGFpbmVyIGRpdiB7XG4gICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cblxuLnJlbnRhbF9ib29rTm93IHtcbiAgcGFkZGluZzogNTBweCAxNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDYwdmg7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5yZW50YWxfYm9va05vdyBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDA7XG4gICAgdG9wOiAwOyB9XG4gIC5yZW50YWxfYm9va05vdyBkaXYge1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLnJlbnRhbF9ib29rTm93IGgyIHtcbiAgICBmb250LXNpemU6IDYwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAucmVudGFsX2Jvb2tOb3cgcCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJlbnRhbF9ib29rTm93IHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBoZWlnaHQ6IDUwdmg7IH1cbiAgICAgIC5yZW50YWxfYm9va05vdyBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgICAgLnJlbnRhbF9ib29rTm93IHAge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuXG4ucmVudGFsX3BhZ2VzIHtcbiAgcGFkZGluZy10b3A6IDUwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG5cbi5yZW50YWxXaWRnZXQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQ6ICMwMDZENzY7XG4gIGhlaWdodDogMTAwdmg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgei1pbmRleDogMTAwMDA7XG4gIHRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluLW91dDtcbiAgbGVmdDogMTAwJTsgfVxuICAucmVudGFsV2lkZ2V0Lm9wZW4ge1xuICAgIGxlZnQ6IDA7IH1cbiAgLnJlbnRhbFdpZGdldCAuY2xvc2Uge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnJlbnRhbFdpZGdldCAuY2xvc2U6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIGhlaWdodDogMzVweDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICBsZWZ0OiA1MCU7IH1cbiAgICAucmVudGFsV2lkZ2V0IC5jbG9zZTphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgIGxlZnQ6IDUwJTsgfVxuICAucmVudGFsV2lkZ2V0IC5sb2dvIHtcbiAgICBwYWRkaW5nOiAzMHB4IDQwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnJlbnRhbFdpZGdldCAubG9nbyB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDsgfSB9XG4gIC5yZW50YWxXaWRnZXQgaDIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAucmVudGFsV2lkZ2V0X2NvbnRhaW5lciB7XG4gICAgcGFkZGluZzogNTBweCA4MHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yZW50YWxXaWRnZXRfY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogMjVweDsgfSB9XG4gICAgLnJlbnRhbFdpZGdldF9jb250YWluZXIgI3JlbnRhbEZpbHRlciBkaXYgZGl2Om5vdCgucmFuZ2Utc2xpZGVyKSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7IH1cbiAgICAucmVudGFsV2lkZ2V0X2NvbnRhaW5lciAjcmVudGFsRmlsdGVyIGRpdi5jaGVja2JveGVzIGRpdiBwIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLnJlbnRhbFdpZGdldF9jb250YWluZXIgI3JlbnRhbEZpbHRlciBsYWJlbCB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5yZW50YWxXaWRnZXRfY29udGFpbmVyICNyZW50YWxGaWx0ZXIgaW5wdXQ6bm90KFt0eXBlPSdjaGVja2JveCddKSwgLnJlbnRhbFdpZGdldF9jb250YWluZXIgI3JlbnRhbEZpbHRlciBzZWxlY3Q6bm90KFt0eXBlPSdjaGVja2JveCddKSB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5yZW50YWxXaWRnZXRfY29udGFpbmVyICNyZW50YWxGaWx0ZXIgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc2VsZWN0LXdoaXRlLnBuZyk7IH1cbiAgICAucmVudGFsV2lkZ2V0X2NvbnRhaW5lciAjcmVudGFsRmlsdGVyIC5yYW5nZS1zbGlkZXIgaW5wdXRbdHlwZT1yYW5nZV06Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTsgfVxuICAgIC5yZW50YWxXaWRnZXRfY29udGFpbmVyICNyZW50YWxGaWx0ZXIgLnJhbmdlLXNsaWRlciBpbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAgIC5yZW50YWxXaWRnZXRfY29udGFpbmVyICNyZW50YWxGaWx0ZXIgLnJhbmdlLXNsaWRlciBpbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7IH1cbiAgICAucmVudGFsV2lkZ2V0X2NvbnRhaW5lciAjcmVudGFsRmlsdGVyIC5yYW5nZS1zbGlkZXIgaW5wdXRbdHlwZT1yYW5nZV06Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAgIC5yZW50YWxXaWRnZXRfY29udGFpbmVyICNyZW50YWxGaWx0ZXIgLnJhbmdlLXNsaWRlciBpbnB1dFt0eXBlPXJhbmdlXTo6LW1zLWZpbGwtbG93ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAgIC5yZW50YWxXaWRnZXRfY29udGFpbmVyICNyZW50YWxGaWx0ZXIgLnJhbmdlLXNsaWRlciBpbnB1dFt0eXBlPXJhbmdlXTo6LW1zLWZpbGwtdXBwZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAgIC5yZW50YWxXaWRnZXRfY29udGFpbmVyICNyZW50YWxGaWx0ZXIgLnJhbmdlLXNsaWRlciBpbnB1dFt0eXBlPXJhbmdlXTo6LW1zLXRodW1iIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbiNyZW50YWxGaWx0ZXIgZGl2IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAjcmVudGFsRmlsdGVyIGRpdjpub3QoLnJhbmdlLXNsaWRlcikge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cbiAgI3JlbnRhbEZpbHRlciBkaXYgZGl2Om5vdCgucmFuZ2Utc2xpZGVyKSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogIzAwNkQ3NjtcbiAgICB3aWR0aDogMzAlO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMTA5LCAxMTgsIDAuMSk7IH1cbiAgICAjcmVudGFsRmlsdGVyIGRpdiBkaXY6bm90KC5yYW5nZS1zbGlkZXIpOm5vdCgubm9XcmFwKSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgICNyZW50YWxGaWx0ZXIgZGl2IGRpdjpub3QoLnJhbmdlLXNsaWRlcik6bm90KC5ub1dyYXApIGxhYmVsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAjcmVudGFsRmlsdGVyIGRpdiBkaXY6bm90KC5yYW5nZS1zbGlkZXIpLm5vV3JhcCBsYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICNyZW50YWxGaWx0ZXIgZGl2IGRpdjpub3QoLnJhbmdlLXNsaWRlcikge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICNyZW50YWxGaWx0ZXIgZGl2LmNoZWNrYm94ZXMge1xuICAgIGNvbHVtbi1nYXA6IDMwcHg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICAjcmVudGFsRmlsdGVyIGRpdi5jaGVja2JveGVzIGxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAjcmVudGFsRmlsdGVyIGRpdi5jaGVja2JveGVzIGRpdiB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgI3JlbnRhbEZpbHRlciBkaXYuY2hlY2tib3hlcyBkaXYgcCB7XG4gICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIGNvbG9yOiAjMDA2RDc2OyB9XG4gICAgICAgICNyZW50YWxGaWx0ZXIgZGl2LmNoZWNrYm94ZXMgZGl2IHAgaW5wdXQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAgICNyZW50YWxGaWx0ZXIgZGl2LmNoZWNrYm94ZXMgZGl2IHAge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTsgfVxuICAgICAgICAgICAgI3JlbnRhbEZpbHRlciBkaXYuY2hlY2tib3hlcyBkaXYgcCBpbnB1dCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9IH1cbiAgICAgICNyZW50YWxGaWx0ZXIgZGl2LmNoZWNrYm94ZXMgZGl2LnR5cGVzIHtcbiAgICAgICAgd2lkdGg6IDYwJTsgfVxuICAgICAgICAjcmVudGFsRmlsdGVyIGRpdi5jaGVja2JveGVzIGRpdi50eXBlcyBwIHtcbiAgICAgICAgICB3aWR0aDogNDAlOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgI3JlbnRhbEZpbHRlciBkaXYuY2hlY2tib3hlcyBkaXYudHlwZXMge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICAgICNyZW50YWxGaWx0ZXIgZGl2LmNoZWNrYm94ZXMgZGl2LnR5cGVzIHAge1xuICAgICAgICAgICAgICB3aWR0aDogNTAlOyB9IH1cbiAgI3JlbnRhbEZpbHRlciBkaXYuZm9ybUNUQSB7XG4gICAgYWxpZ24taXRlbXM6IGVuZCAhaW1wb3J0YW50O1xuICAgIGNvbHVtbi1nYXA6IDMwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAjcmVudGFsRmlsdGVyIGRpdi5mb3JtQ1RBIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgICAjcmVudGFsRmlsdGVyIGRpdi5mb3JtQ1RBIGlucHV0IHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgI3JlbnRhbEZpbHRlciBkaXYuZm9ybUNUQSAuYnRuIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkOyB9XG5cbiNyZW50YWxGaWx0ZXIgbGFiZWwge1xuICBjb2xvcjogIzAwNkQ3NjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMzVweDtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9XG5cbiNyZW50YWxGaWx0ZXIgaW5wdXQ6bm90KFt0eXBlPSdjaGVja2JveCddKSwgI3JlbnRhbEZpbHRlciBzZWxlY3Q6bm90KFt0eXBlPSdjaGVja2JveCddKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjMDA2RDc2O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuICAjcmVudGFsRmlsdGVyIGlucHV0Om5vdChbdHlwZT0nY2hlY2tib3gnXSk6Zm9jdXMsICNyZW50YWxGaWx0ZXIgc2VsZWN0Om5vdChbdHlwZT0nY2hlY2tib3gnXSk6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICNyZW50YWxGaWx0ZXIgaW5wdXRbbmFtZT0nZGF0ZXJhbmdlJ10sICNyZW50YWxGaWx0ZXIgc2VsZWN0W25hbWU9J2RhdGVyYW5nZSddIHtcbiAgICB3aWR0aDogODAlOyB9IH1cblxuI3JlbnRhbEZpbHRlciBzZWxlY3Qgb3B0aW9uIHtcbiAgYmFja2dyb3VuZDogIzAwNkQ3NjsgfVxuICAjcmVudGFsRmlsdGVyIHNlbGVjdCBvcHRpb246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMEEzOUQ7IH1cblxuLmRhdGVyYW5nZXBpY2tlciB7XG4gIHotaW5kZXg6IDEwMDAwMDsgfVxuXG4ucmFuZ2Utc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTsgfVxuICAucmFuZ2Utc2xpZGVyIGlucHV0W3R5cGU9cmFuZ2VdIHtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnJhbmdlLXNsaWRlciBpbnB1dFt0eXBlPXJhbmdlXSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIG1hcmdpbjogMjBweCAwOyB9IH1cbiAgICAucmFuZ2Utc2xpZGVyIGlucHV0W3R5cGU9cmFuZ2VdOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICAucmFuZ2Utc2xpZGVyIGlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYW5pbWF0ZTogMC4ycztcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDEwOSwgMTE4LCAwLjMpOyB9XG4gICAgLnJhbmdlLXNsaWRlciBpbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGhlaWdodDogMTVweDtcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogIzAwNkQ3NjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IC01cHg7IH1cbiAgICAucmFuZ2Utc2xpZGVyIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBhbmltYXRlOiAwLjJzO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMTA5LCAxMTgsIDAuMyk7IH1cbiAgICAucmFuZ2Utc2xpZGVyIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDZENzY7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAucmFuZ2Utc2xpZGVyIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdHJhY2sge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGFuaW1hdGU6IDAuMnM7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAucmFuZ2Utc2xpZGVyIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC1sb3dlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgICAgYm9yZGVyOiAwcHggc29saWQgIzAwMDAwMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAucmFuZ2Utc2xpZGVyIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC11cHBlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgICAgYm9yZGVyOiAwcHggc29saWQgIzAwMDAwMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAucmFuZ2Utc2xpZGVyIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdGh1bWIge1xuICAgICAgbWFyZ2luLXRvcDogMXB4O1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDZENzY7XG4gICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICB3aWR0aDogMThweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5yYW5nZS1zbGlkZXIgLnJhbmdlVmFsdWVzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMjBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yYW5nZS1zbGlkZXIgLnJhbmdlVmFsdWVzIHtcbiAgICAgICAgdG9wOiAtMTBweDsgfSB9XG4gICAgLnJhbmdlLXNsaWRlciAucmFuZ2VWYWx1ZXMubWluUmFuZ2Uge1xuICAgICAgbGVmdDogMDsgfVxuICAgIC5yYW5nZS1zbGlkZXIgLnJhbmdlVmFsdWVzLm1heFJhbmdlIHtcbiAgICAgIHJpZ2h0OiAtOS43NXB4OyB9XG5cbi5yZW50UmVzdWx0IHtcbiAgcGFkZGluZy10b3A6IDEwMHB4OyB9XG4gIC5yZW50UmVzdWx0IC5zZWFyY2hGb3JtIHtcbiAgICBwYWRkaW5nOiA1MHB4IDE1MHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yZW50UmVzdWx0IC5zZWFyY2hGb3JtIHtcbiAgICAgICAgcGFkZGluZzogMjVweDsgfSB9XG4gICAgLnJlbnRSZXN1bHQgLnNlYXJjaEZvcm0gI3JlbnRhbEZpbHRlciAuY2hlY2tib3hlc0ZpbmFsIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgY29sdW1uLWdhcDogNDBweDsgfVxuICAgICAgLnJlbnRSZXN1bHQgLnNlYXJjaEZvcm0gI3JlbnRhbEZpbHRlciAuY2hlY2tib3hlc0ZpbmFsIGRpdiB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDM1JTsgfVxuICAgICAgICAucmVudFJlc3VsdCAuc2VhcmNoRm9ybSAjcmVudGFsRmlsdGVyIC5jaGVja2JveGVzRmluYWwgZGl2IGgzIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmb250LXNpemU6IDI1cHg7IH1cbiAgICAgICAgLnJlbnRSZXN1bHQgLnNlYXJjaEZvcm0gI3JlbnRhbEZpbHRlciAuY2hlY2tib3hlc0ZpbmFsIGRpdiB1bCB7XG4gICAgICAgICAgY29sdW1uLWNvdW50OiAzO1xuICAgICAgICAgIGNvbHVtbi1nYXA6IDUwcHg7IH1cbiAgICAgICAgICAucmVudFJlc3VsdCAuc2VhcmNoRm9ybSAjcmVudGFsRmlsdGVyIC5jaGVja2JveGVzRmluYWwgZGl2IHVsIGxpIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAucmVudFJlc3VsdC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDUwcHggMHB4OyB9XG4gICAgLnJlbnRSZXN1bHQtY29udGFpbmVyIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZS1jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQ6ICNGM0Y0Rjg7IH1cbiAgLnJlbnRSZXN1bHQgLnJlbnRhbF9mb3JtIHtcbiAgICBiYWNrZ3JvdW5kOiAjRjNGNEY4O1xuICAgIHBhZGRpbmc6IDUwcHggMTUwcHg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgICAucmVudFJlc3VsdCAucmVudGFsX2Zvcm0uYmFja2dyb3VuZENvbG9yIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgICAucmVudFJlc3VsdCAucmVudGFsX2Zvcm0gaDEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAucmVudFJlc3VsdCAucmVudGFsX2Zvcm0ge1xuICAgICAgICBwYWRkaW5nOiAyNXB4OyB9XG4gICAgICAgIC5yZW50UmVzdWx0IC5yZW50YWxfZm9ybSAuZ2Zvcm1fZm9vdGVyIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgLnJlbnRSZXN1bHQgLm90aGVyUHJvamVjdHMge1xuICAgIHBhZGRpbmc6IDUwcHggMTUwcHggMTAwcHg7IH1cbiAgICAucmVudFJlc3VsdCAub3RoZXJQcm9qZWN0cyBoMSB7XG4gICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNXB4OyB9XG4gICAgLnJlbnRSZXN1bHQgLm90aGVyUHJvamVjdHMgLnByb2plY3RzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBjb2x1bW4tZ2FwOiA0MHB4OyB9XG4gICAgICAucmVudFJlc3VsdCAub3RoZXJQcm9qZWN0cyAucHJvamVjdHMgLnByb3BlcnR5IHtcbiAgICAgICAgd2lkdGg6IDMyJTsgfVxuICAgICAgICAucmVudFJlc3VsdCAub3RoZXJQcm9qZWN0cyAucHJvamVjdHMgLnByb3BlcnR5IGgzIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnJlbnRSZXN1bHQgLm90aGVyUHJvamVjdHMge1xuICAgICAgICBwYWRkaW5nOiAyNXB4OyB9XG4gICAgICAgIC5yZW50UmVzdWx0IC5vdGhlclByb2plY3RzIGgxIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgICAgICAucmVudFJlc3VsdCAub3RoZXJQcm9qZWN0cyAucHJvamVjdHMge1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAgIC5yZW50UmVzdWx0IC5vdGhlclByb2plY3RzIC5wcm9qZWN0cyAucHJvcGVydHkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgICAgICAgICAucmVudFJlc3VsdCAub3RoZXJQcm9qZWN0cyAucHJvamVjdHMgLnByb3BlcnR5IGgzIHtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDsgfSB9XG5cbi50aGluZ3NUb0RvX2ludHJvIHtcbiAgcGFkZGluZzogNTBweCAxNTBweDsgfVxuICAudGhpbmdzVG9Eb19pbnRybyBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC50aGluZ3NUb0RvX2ludHJvIC50ZXh0IHtcbiAgICB3aWR0aDogODAlO1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICBjb2x1bW4tZ2FwOiAzNXB4O1xuICAgIG1hcmdpbjogMjBweCBhdXRvOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnRoaW5nc1RvRG9faW50cm8ge1xuICAgICAgcGFkZGluZzogMjVweDsgfVxuICAgICAgLnRoaW5nc1RvRG9faW50cm8gLnRleHQge1xuICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICAgIGNvbHVtbi1nYXA6IDBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4udGhpbmdzVG9EbyAubm9BcnJvd1NsaWRlciB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgLnRoaW5nc1RvRG8gLm5vQXJyb3dTbGlkZXIuYmFja2dyb3VuZENvbG9yIHtcbiAgICBiYWNrZ3JvdW5kOiAjRjNGNEY4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnRoaW5nc1RvRG8gLm5vQXJyb3dTbGlkZXIge1xuICAgICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjVweDsgfSB9XG5cbi50aGluZ3NUb0RvX2JlYWNoZXMge1xuICBwYWRkaW5nOiAxMDBweCAwcHggNzBweCAxNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjsgfVxuICAudGhpbmdzVG9Eb19iZWFjaGVzLmJhY2tncm91bmRDb2xvciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAudGhpbmdzVG9Eb19iZWFjaGVzIGgxIHtcbiAgICBsaW5lLWhlaWdodDogNHZ3O1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cbiAgICAudGhpbmdzVG9Eb19iZWFjaGVzIGgxIHNwYW4ge1xuICAgICAgbGluZS1oZWlnaHQ6IDV2dzsgfVxuICAudGhpbmdzVG9Eb19iZWFjaGVzIGRpdiB7XG4gICAgZmxleDogMTsgfVxuICAgIC50aGluZ3NUb0RvX2JlYWNoZXMgZGl2IGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC50aGluZ3NUb0RvX2JlYWNoZXMgZGl2IHAge1xuICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAudGhpbmdzVG9Eb19iZWFjaGVzIHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMHB4IDI1cHggMjVweDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuICAgICAgLnRoaW5nc1RvRG9fYmVhY2hlcyBkaXYge1xuICAgICAgICBmbGV4OiBpbml0aWFsO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICAgICAgLnRoaW5nc1RvRG9fYmVhY2hlcyBkaXYgcCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfVxuICAgICAgLnRoaW5nc1RvRG9fYmVhY2hlcyBoMSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2dnc7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAgICAgLnRoaW5nc1RvRG9fYmVhY2hlcyBoMSBzcGFuIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogOHZ3OyB9IH1cblxuLnRoaW5nc1RvRG9fZXZlbnRzIHtcbiAgcGFkZGluZy10b3A6IDUwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG4gIC50aGluZ3NUb0RvX2V2ZW50cy1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIHBhZGRpbmc6IDAgMTUwcHg7IH1cbiAgICAudGhpbmdzVG9Eb19ldmVudHMtaGVhZGVyIGgxLCAudGhpbmdzVG9Eb19ldmVudHMtaGVhZGVyIGRpdiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnRoaW5nc1RvRG9fZXZlbnRzIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7IH1cbiAgICAgIC50aGluZ3NUb0RvX2V2ZW50cy1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAudGhpbmdzVG9Eb19ldmVudHMtaGVhZGVyIGgxLCAudGhpbmdzVG9Eb19ldmVudHMtaGVhZGVyIGRpdiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLnRoaW5nc1RvRG9fZXZlbnRzLWhlYWRlciBkaXYge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfSB9XG5cbi5ldmVudHNfaW50cm8ge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4OyB9XG4gIC5ldmVudHNfaW50cm8gaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZXZlbnRzX2ludHJvIC50ZXh0IHtcbiAgICB3aWR0aDogODAlO1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICBjb2x1bW4tZ2FwOiAzNXB4O1xuICAgIG1hcmdpbjogMjBweCBhdXRvOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmV2ZW50c19pbnRybyB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAyNXB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgLmV2ZW50c19pbnRybyAudGV4dCB7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMTtcbiAgICAgICAgY29sdW1uLWdhcDogMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLmV2ZW50c19pbnRybyBpbWcge1xuICAgICAgICBoZWlnaHQ6IDUwdmg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1JSk7XG4gICAgICAgIG1heC13aWR0aDogaW5pdGlhbDsgfSB9XG5cbi5ldmVudHNfaGlnaGxpZ2h0cyB7XG4gIGJhY2tncm91bmQ6ICNGM0Y0Rjg7XG4gIHBhZGRpbmc6IDcwcHggMHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjsgfVxuICAuZXZlbnRzX2hpZ2hsaWdodHMuYmFja2dyb3VuZENvbG9yIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gIC5ldmVudHNfaGlnaGxpZ2h0cyBoMiB7XG4gICAgcGFkZGluZzogMCAxNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ldmVudHNfaGlnaGxpZ2h0cyB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDA7IH1cbiAgICAgIC5ldmVudHNfaGlnaGxpZ2h0cyBoMiB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweDsgfSB9XG4gIC5ldmVudHNfaGlnaGxpZ2h0cyAuZXZlbnQge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICAgIC5ldmVudHNfaGlnaGxpZ2h0cyAuZXZlbnQtaW1hZ2Uge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1MHB4O1xuICAgICAgei1pbmRleDogMTsgfVxuICAgICAgLmV2ZW50c19oaWdobGlnaHRzIC5ldmVudC1pbWFnZSBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ldmVudHNfaGlnaGxpZ2h0cyAuZXZlbnQtY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgICAgcGFkZGluZzogMTAwcHggMjAwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwMHB4O1xuICAgICAgd2lkdGg6IGNhbGMoNTAlICsgMzAwcHgpO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yODBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAuZXZlbnRzX2hpZ2hsaWdodHMgLmV2ZW50LWNvbnRlbnQgaDIsIC5ldmVudHNfaGlnaGxpZ2h0cyAuZXZlbnQtY29udGVudCBwIHtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIC5ldmVudHNfaGlnaGxpZ2h0cyAuZXZlbnQtY29udGVudCBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDsgfVxuICAgICAgLmV2ZW50c19oaWdobGlnaHRzIC5ldmVudC1jb250ZW50IHAsIC5ldmVudHNfaGlnaGxpZ2h0cyAuZXZlbnQtY29udGVudCBhIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gICAgICAuZXZlbnRzX2hpZ2hsaWdodHMgLmV2ZW50LWNvbnRlbnQgYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgICAgIHBhZGRpbmc6IDdweCAyMHB4O1xuICAgICAgICBjb2xvcjogIzAwQTM5RDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLmV2ZW50c19oaWdobGlnaHRzIC5ldmVudCB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAuZXZlbnRzX2hpZ2hsaWdodHMgLmV2ZW50LWltYWdlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAgICAgLmV2ZW50c19oaWdobGlnaHRzIC5ldmVudC1pbWFnZSBpbWcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLmV2ZW50c19oaWdobGlnaHRzIC5ldmVudC1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAyNXB4IDMwcHggNDBweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgIC5ldmVudHNfaGlnaGxpZ2h0cyAuZXZlbnQtY29udGVudCBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7IH1cbiAgICAgICAgICAuZXZlbnRzX2hpZ2hsaWdodHMgLmV2ZW50LWNvbnRlbnQgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgICAgICAgICAuZXZlbnRzX2hpZ2hsaWdodHMgLmV2ZW50LWNvbnRlbnQgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAgICAgICAuZXZlbnRzX2hpZ2hsaWdodHMgLmV2ZW50LWNvbnRlbnQgZGl2Omxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDsgfSB9XG4gIC5ldmVudHNfaGlnaGxpZ2h0cyAuc2xpY2stYXJyb3cge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb2xvcjogIzAwNkQ3NjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTAwcHg7XG4gICAgei1pbmRleDogMTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmOyB9XG4gICAgLmV2ZW50c19oaWdobGlnaHRzIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAyMDBweDsgfVxuICAgIC5ldmVudHNfaGlnaGxpZ2h0cyAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gICAgICByaWdodDogMzAwcHg7IH1cbiAgICAuZXZlbnRzX2hpZ2hsaWdodHMgLnNsaWNrLWFycm93OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLmV2ZW50c19oaWdobGlnaHRzIC5zbGljay1hcnJvdyB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGJvdHRvbTogMjhweDsgfVxuICAgICAgICAuZXZlbnRzX2hpZ2hsaWdodHMgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICAgICAgICAgIHJpZ2h0OiAyMHB4OyB9XG4gICAgICAgIC5ldmVudHNfaGlnaGxpZ2h0cyAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gICAgICAgICAgcmlnaHQ6IDgwcHg7IH0gfVxuXG4uZXZlbnRzX2NhbGVuZGFyIHtcbiAgcGFkZGluZzogNTBweCAxNTBweDsgfVxuICAuZXZlbnRzX2NhbGVuZGFyIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuZXZlbnRzX2NhbGVuZGFyIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH1cbiAgICAgIC5ldmVudHNfY2FsZW5kYXIgaDIge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgLmV2ZW50c19jYWxlbmRhciAuZmlsdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBjb2x1bW4tZ2FwOiAzMHB4OyB9XG4gICAgLmV2ZW50c19jYWxlbmRhciAuZmlsdGVyID4gZGl2IHtcbiAgICAgIHdpZHRoOiAzMiU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDBBMzlEO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiA1cHggMjBweDsgfVxuICAgICAgLmV2ZW50c19jYWxlbmRhciAuZmlsdGVyID4gZGl2IGRpdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLmV2ZW50c19jYWxlbmRhciAuZmlsdGVyID4gZGl2IGRpdjphZnRlciB7XG4gICAgICAgICAgY29sb3I6ICMwMEEzOUQ7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAxM3B4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiAnXFxlODA3JztcbiAgICAgICAgICBmb250LWZhbWlseTogXCJmb250ZWxsb1wiO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTBweDsgfVxuICAgICAgLmV2ZW50c19jYWxlbmRhciAuZmlsdGVyID4gZGl2IGkge1xuICAgICAgICBjb2xvcjogIzAwQTM5RDtcbiAgICAgICAgZm9udC1zaXplOiAyM3B4OyB9XG4gICAgICAuZXZlbnRzX2NhbGVuZGFyIC5maWx0ZXIgPiBkaXYgc3BhbiB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgICAuZXZlbnRzX2NhbGVuZGFyIC5maWx0ZXIgPiBkaXYgc2VsZWN0IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGNvbG9yOiAjMDBBMzlEO1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAzMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ldmVudHNfY2FsZW5kYXIgLmZpbHRlciB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAuZXZlbnRzX2NhbGVuZGFyIC5maWx0ZXIgPiBkaXYge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuICAuZXZlbnRzX2NhbGVuZGFyLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiAzNXB4O1xuICAgIG1hcmdpbjogNTBweCAwO1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5ldmVudHNfY2FsZW5kYXItY29udGFpbmVyID4gZGl2IHtcbiAgICAgIHdpZHRoOiAzMSU7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2OyB9XG4gICAgICAuZXZlbnRzX2NhbGVuZGFyLWNvbnRhaW5lciA+IGRpdiBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLmV2ZW50c19jYWxlbmRhci1jb250YWluZXIgPiBkaXYgLmNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDA2RDc2O1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgICAgIGNvbHVtbi1nYXA6IDIwcHg7IH1cbiAgICAgIC5ldmVudHNfY2FsZW5kYXItY29udGFpbmVyID4gZGl2IGgzLCAuZXZlbnRzX2NhbGVuZGFyLWNvbnRhaW5lciA+IGRpdiBwLCAuZXZlbnRzX2NhbGVuZGFyLWNvbnRhaW5lciA+IGRpdiBhIHtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIC5ldmVudHNfY2FsZW5kYXItY29udGFpbmVyID4gZGl2IGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDsgfVxuICAgICAgLmV2ZW50c19jYWxlbmRhci1jb250YWluZXIgPiBkaXYgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7IH1cbiAgICAgICAgLmV2ZW50c19jYWxlbmRhci1jb250YWluZXIgPiBkaXYgcC5tb250aCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAuZXZlbnRzX2NhbGVuZGFyLWNvbnRhaW5lciA+IGRpdiAuYnRuIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZXZlbnRzX2NhbGVuZGFyLWNvbnRhaW5lciB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAuZXZlbnRzX2NhbGVuZGFyLWNvbnRhaW5lciA+IGRpdiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICAgICAgIC5ldmVudHNfY2FsZW5kYXItY29udGFpbmVyID4gZGl2IC5jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTVweDsgfVxuICAgICAgICAgIC5ldmVudHNfY2FsZW5kYXItY29udGFpbmVyID4gZGl2IGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDsgfVxuICAgICAgICAgIC5ldmVudHNfY2FsZW5kYXItY29udGFpbmVyID4gZGl2IHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgICAgICAgIC5ldmVudHNfY2FsZW5kYXItY29udGFpbmVyID4gZGl2IC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9IH1cbiAgICAuZXZlbnRzX2NhbGVuZGFyLWNvbnRhaW5lciAuTm9FdmVudHMgcCB7XG4gICAgICBjb2xvcjogIzAwQTM5RDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5zaW5nbGVFdmVudC1pbnRybyB7XG4gIHBhZGRpbmc6IDUwcHggMCA1MHB4IDE1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc2luZ2xlRXZlbnQtaW50cm8gLmltYWdlIHtcbiAgICB3aWR0aDogNjAlOyB9XG4gICAgLnNpbmdsZUV2ZW50LWludHJvIC5pbWFnZSBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLnNpbmdsZUV2ZW50LWludHJvIC50ZXh0IHtcbiAgICB3aWR0aDogMzUlOyB9XG4gICAgLnNpbmdsZUV2ZW50LWludHJvIC50ZXh0IC5jYXRlZ29yeSB7XG4gICAgICBjb2xvcjogIzAwQTM5RDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgLnNpbmdsZUV2ZW50LWludHJvIC50ZXh0IHAge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7IH1cbiAgICAuc2luZ2xlRXZlbnQtaW50cm8gLnRleHQgPiBkaXYge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1hcmdpbjogMzBweCAwOyB9XG4gICAgICAuc2luZ2xlRXZlbnQtaW50cm8gLnRleHQgPiBkaXYgcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIC5zaW5nbGVFdmVudC1pbnRybyAudGV4dCA+IGRpdiBpIHtcbiAgICAgICAgY29sb3I6ICMwMEEzOUQ7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5zaW5nbGVFdmVudC1pbnRybyAudGV4dCA+IGRpdiB7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAgICAgLnNpbmdsZUV2ZW50LWludHJvIC50ZXh0ID4gZGl2IGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAgICAgLnNpbmdsZUV2ZW50LWludHJvIC50ZXh0ID4gZGl2IGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnNpbmdsZUV2ZW50LWludHJvIHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMHB4O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAuc2luZ2xlRXZlbnQtaW50cm8gZGl2IHtcbiAgICAgICAgZmxleDogaW5pdGlhbDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICAgICAgLnNpbmdsZUV2ZW50LWludHJvIGRpdi50ZXh0IHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDI1cHg7IH1cbiAgICAgICAgICAuc2luZ2xlRXZlbnQtaW50cm8gZGl2LnRleHQgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDsgfSB9XG5cbi5zaW5nbGVFdmVudCBociB7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zaW5nbGVFdmVudCBociB7XG4gICAgICBtYXJnaW46IDAgMjVweDsgfSB9XG5cbi5zaW5nbGVFdmVudCAuYm9va05vdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogNTBweCAxNTBweDsgfVxuICAuc2luZ2xlRXZlbnQgLmJvb2tOb3cgcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBjb2x1bW4tZ2FwOiAzMHB4OyB9XG4gICAgLnNpbmdsZUV2ZW50IC5ib29rTm93IHAgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICBtaW4td2lkdGg6IDE1MHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAuc2luZ2xlRXZlbnQgLmJvb2tOb3cgcCBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtaW4td2lkdGg6IDEyMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc2luZ2xlRXZlbnQgLmJvb2tOb3cge1xuICAgICAgcGFkZGluZzogMjVweDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLnNpbmdsZUV2ZW50IC5ib29rTm93IGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAzMnB4OyB9IH1cblxuLnNpbmdsZUV2ZW50IC5vdGhlckV2ZW50cyB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICAuc2luZ2xlRXZlbnQgLm90aGVyRXZlbnRzIGgxIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnNpbmdsZUV2ZW50IC5vdGhlckV2ZW50cyB7XG4gICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4OyB9XG4gICAgICAuc2luZ2xlRXZlbnQgLm90aGVyRXZlbnRzIGgxIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9IH1cblxuLmRpbmVBcm91bmRfaW50cm8ge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4O1xuICBjb2x1bW4tY291bnQ6IDI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuZGluZUFyb3VuZF9pbnRybyB7XG4gICAgICBwYWRkaW5nOiAyNXB4O1xuICAgICAgY29sdW1uLWNvdW50OiAxOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLmRpbmVBcm91bmQgLmZpbHRlciB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uZGluZUFyb3VuZCAuZmlsdGVyIHNlbGVjdCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5kaW5lQXJvdW5kIC5maWx0ZXIgc2VsZWN0OmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmRpbmVBcm91bmQgLmZpbHRlciBzZWxlY3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG4uZGluZUFyb3VuZF9hbGxEYXkge1xuICBwYWRkaW5nLXRvcDogNTBweDtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuZGluZUFyb3VuZF9hbGxEYXkge1xuICAgICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjVweDsgfSB9XG4gIC5kaW5lQXJvdW5kX2FsbERheS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IDAgMTUwcHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZGluZUFyb3VuZF9hbGxEYXktaGVhZGVyIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBwYWRkaW5nOiAwIDI1cHg7IH0gfVxuICAuZGluZUFyb3VuZF9hbGxEYXkgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcl9jb250ZW50IHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7IH1cbiAgLmRpbmVBcm91bmRfYWxsRGF5IC5ub0Fycm93U2xpZGVyIC5zbGlkZXJzQ29udGFpbmVyIC5tYWluU2xpZGVyIC5zbGljay1zbGlkZSBoNSB7XG4gICAgZm9udC1zaXplOiAxLjh2dzsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZGluZUFyb3VuZF9hbGxEYXkgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLm1haW5TbGlkZXIgLnNsaWNrLXNsaWRlIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiA2dnc7IH0gfVxuICAuZGluZUFyb3VuZF9hbGxEYXkgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLm1haW5TbGlkZXIgLnNsaWNrLXNsaWRlIHAsIC5kaW5lQXJvdW5kX2FsbERheSAubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciAubWFpblNsaWRlciAuc2xpY2stc2xpZGUgZGl2IHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZGluZUFyb3VuZF9hbGxEYXkgLm5vQXJyb3dTbGlkZXIgLnNsaWRlcnNDb250YWluZXIgLm1haW5TbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZXJfY29udGVudCB7XG4gICAgbWFyZ2luOiAxMHB4OyB9XG4gICAgLmRpbmVBcm91bmRfYWxsRGF5IC5ub0Fycm93U2xpZGVyIC5zbGlkZXJzQ29udGFpbmVyIC5tYWluU2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGVyX2NvbnRlbnQgLnNsaWRlcl90aXRsZSB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5kaW5lQXJvdW5kX2FsbERheSAubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciAubWFpblNsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlcl9jb250ZW50IHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAgIC5kaW5lQXJvdW5kX2FsbERheSAubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciAubWFpblNsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlcl9jb250ZW50IC5zbGlkZXJfdGl0bGUge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmRpbmVBcm91bmRfYWxsRGF5IC5ub0Fycm93U2xpZGVyIC5zbGlkZXJzQ29udGFpbmVyIC5tYWluU2xpZGVyIC5zbGljay1zbGlkZS5zbGljay1jdXJyZW50IC5zbGlkZXJfY29udGVudCB7XG4gICAgbWFyZ2luOiAxMHB4IDA7IH1cblxuLmRpbmVBcm91bmRfc2V0TWVudSB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgLmRpbmVBcm91bmRfc2V0TWVudS5iYWNrZ3JvdW5kQ29sb3Ige1xuICAgIGJhY2tncm91bmQ6ICNGM0Y0Rjg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuZGluZUFyb3VuZF9zZXRNZW51IHtcbiAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7IH1cbiAgICAgIC5kaW5lQXJvdW5kX3NldE1lbnUgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stYXJyb3cge1xuICAgICAgICB0b3A6IC0xMjBweDsgfSB9XG4gIC5kaW5lQXJvdW5kX3NldE1lbnUgaDQge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5kaW5lQXJvdW5kX3NldE1lbnUtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiAwIDEwMHB4IDAgMTUwcHg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLmRpbmVBcm91bmRfc2V0TWVudS1oZWFkZXIge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweDsgfSB9XG4gIC5kaW5lQXJvdW5kX3NldE1lbnUgLm5vdGUge1xuICAgIGNvbG9yOiAjMDBBMzlEO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5kaW5lQXJvdW5kX3NldE1lbnUgLnNjaGVkdWxlIHAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgY29sdW1uLWdhcDogNDBweDsgfVxuICAgIC5kaW5lQXJvdW5kX3NldE1lbnUgLnNjaGVkdWxlIHA6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgLmRpbmVBcm91bmRfc2V0TWVudSAuc2NoZWR1bGUgcCBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1pbi13aWR0aDogMTEwcHg7IH1cbiAgLmRpbmVBcm91bmRfc2V0TWVudSAuaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5kaW5lQXJvdW5kX3NldE1lbnUgLmltYWdlIC5sb2dvIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMzAlOyB9XG5cbi5kaW5lQXJvdW5kX3Rlcm1zIHtcbiAgcGFkZGluZzogNTBweCAxNTBweDtcbiAgYmFja2dyb3VuZDogI0YzRjRGODtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47IH1cbiAgLmRpbmVBcm91bmRfdGVybXMuYmFja2dyb3VuZENvbG9yIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmRpbmVBcm91bmRfdGVybXMge1xuICAgICAgcGFkZGluZzogMjVweDsgfSB9XG5cbi5kaW5lQXJvdW5kX2V4cGxvcmUge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmRpbmVBcm91bmRfZXhwbG9yZSB7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cbiAgLmRpbmVBcm91bmRfZXhwbG9yZS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5kaW5lQXJvdW5kX2V4cGxvcmUtY29udGFpbmVyIGRpdiB7XG4gICAgICB3aWR0aDogMzAlOyB9XG4gICAgICAuZGluZUFyb3VuZF9leHBsb3JlLWNvbnRhaW5lciBkaXYgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5kaW5lQXJvdW5kX2V4cGxvcmUtY29udGFpbmVyIGRpdiBoMyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmRpbmVBcm91bmRfZXhwbG9yZS1jb250YWluZXIgZGl2IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAgICAgLmRpbmVBcm91bmRfZXhwbG9yZS1jb250YWluZXIgZGl2IGgzIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cblxuLmRpbmVBcm91bmQgLm5vRGluaW5nIHtcbiAgcGFkZGluZzogMTBweCAxNTBweCA1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmRpbmVBcm91bmQgLm5vRGluaW5nIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH0gfVxuICAuZGluZUFyb3VuZCAubm9EaW5pbmcgcCB7XG4gICAgY29sb3I6ICMwMEEzOUQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmFxdWFwYXJrX2ludHJvIHtcbiAgcGFkZGluZzogNTBweCAxNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBjb2x1bW4tZ2FwOiAzMHB4OyB9XG4gIC5hcXVhcGFya19pbnRybyBkaXYsIC5hcXVhcGFya19pbnRybyBoMSB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5hcXVhcGFya19pbnRybyB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDI1cHggMjVweDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLmFxdWFwYXJrX2ludHJvIGRpdiwgLmFxdWFwYXJrX2ludHJvIGgxIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5hcXVhcGFya19pbnRybyBkaXYge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuXG4uYXF1YXBhcmtfZGV0YWlscyB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7IH1cbiAgLmFxdWFwYXJrX2RldGFpbHMgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5hcXVhcGFya19kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAuYXF1YXBhcmtfZGV0YWlscyBpbWcge1xuICAgICAgICBoZWlnaHQ6IDUwdmg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1JSk7XG4gICAgICAgIG1heC13aWR0aDogaW5pdGlhbDsgfSB9XG4gIC5hcXVhcGFya19kZXRhaWxzLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZy10b3A6IDUwcHg7IH1cbiAgICAuYXF1YXBhcmtfZGV0YWlscy1jb250YWluZXIgPiBkaXYsIC5hcXVhcGFya19kZXRhaWxzLWNvbnRhaW5lciBoMiB7XG4gICAgICB3aWR0aDogMzIlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hcXVhcGFya19kZXRhaWxzLWNvbnRhaW5lciB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAuYXF1YXBhcmtfZGV0YWlscy1jb250YWluZXIgPiBkaXYsIC5hcXVhcGFya19kZXRhaWxzLWNvbnRhaW5lciBoMiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5hcXVhcGFya19kZXRhaWxzLWNvbnRhaW5lciAuc2NoZWR1bGUge1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH1cbiAgICAgIC5hcXVhcGFya19kZXRhaWxzLWNvbnRhaW5lciAuc2NoZWR1bGUgLnRpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAjMDBBMzlEOyB9XG4gICAgICAuYXF1YXBhcmtfZGV0YWlscy1jb250YWluZXIgLnNjaGVkdWxlIHA6bm90KC50aXRsZSkge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBjb2x1bW4tZ2FwOiAzMHB4OyB9XG4gICAgICAgIC5hcXVhcGFya19kZXRhaWxzLWNvbnRhaW5lciAuc2NoZWR1bGUgcDpub3QoLnRpdGxlKSBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtaW4td2lkdGg6IDE4MHB4OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIC5hcXVhcGFya19kZXRhaWxzLWNvbnRhaW5lciAuc2NoZWR1bGUgcDpub3QoLnRpdGxlKSBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNzBweDsgfSB9XG4gICAgICAgIC5hcXVhcGFya19kZXRhaWxzLWNvbnRhaW5lciAuc2NoZWR1bGUgcDpub3QoLnRpdGxlKTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmFxdWFwYXJrX2RldGFpbHMtY29udGFpbmVyIC5zY2hlZHVsZSBwOm5vdCgudGl0bGUpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgICAgICAgICAgLmFxdWFwYXJrX2RldGFpbHMtY29udGFpbmVyIC5zY2hlZHVsZSBwOm5vdCgudGl0bGUpIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5hcXVhcGFya19kZXRhaWxzLWNvbnRhaW5lciAuc2NoZWR1bGUge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAzMHB4OyB9IH1cblxuLmFxdWFwYXJrX2ZlZXMge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmFxdWFwYXJrX2ZlZXMge1xuICAgICAgcGFkZGluZzogMjVweDsgfSB9XG4gIC5hcXVhcGFya19mZWVzIC5mZWVzR3JpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAuYXF1YXBhcmtfZmVlcyAuZmVlc0dyaWQgcCB7XG4gICAgICBwYWRkaW5nOiAwIDE1cHggMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLmFxdWFwYXJrX2ZlZXMgLmZlZXNHcmlkIHAgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgICAgIC5hcXVhcGFya19mZWVzIC5mZWVzR3JpZCBwOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAuYXF1YXBhcmtfZmVlcyAuZmVlc0dyaWQgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMTBweDsgfVxuICAgICAgICAgIC5hcXVhcGFya19mZWVzIC5mZWVzR3JpZCBwIHNwYW4ge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG5cbi5hcXVhcGFya19oaWdobGlnaHQge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDIwcHg7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluOyB9XG4gIC5hcXVhcGFya19oaWdobGlnaHQuYmFja2dyb3VuZENvbG9yIHtcbiAgICBiYWNrZ3JvdW5kOiAjRjNGNEY4OyB9XG4gIC5hcXVhcGFya19oaWdobGlnaHQgZGl2IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1jb250ZW50OiBzdGFydDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjBweCAwOyB9XG4gICAgLmFxdWFwYXJrX2hpZ2hsaWdodCBkaXYgaDYge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmFxdWFwYXJrX2hpZ2hsaWdodCBkaXYgaW1nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuYXF1YXBhcmtfaGlnaGxpZ2h0IHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpOyB9IH1cblxuLmFxdWFwYXJrX2dhbGxlcnkge1xuICBwYWRkaW5nLXRvcDogNTBweDtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuYXF1YXBhcmtfZ2FsbGVyeSB7XG4gICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4OyB9IH1cblxuLmFxdWFwYXJrX2V4cGxvcmUge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmFxdWFwYXJrX2V4cGxvcmUge1xuICAgICAgcGFkZGluZzogMjVweDsgfSB9XG4gIC5hcXVhcGFya19leHBsb3JlLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmFxdWFwYXJrX2V4cGxvcmUtY29udGFpbmVyIGRpdiB7XG4gICAgICB3aWR0aDogMzAlOyB9XG4gICAgICAuYXF1YXBhcmtfZXhwbG9yZS1jb250YWluZXIgZGl2IGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuYXF1YXBhcmtfZXhwbG9yZS1jb250YWluZXIgZGl2IGgzIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAuYXF1YXBhcmtfZXhwbG9yZS1jb250YWluZXIgZGl2IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAgICAgLmFxdWFwYXJrX2V4cGxvcmUtY29udGFpbmVyIGRpdiBoMyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG5cbi5mYXEge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmZhcSB7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cbiAgLmZhcSBoMSB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLmZhcSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7IH0gfVxuICAuZmFxX2hlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAuZmFxX2hlYWRlciBzZWxlY3Qge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmFxX2hlYWRlciB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAuZmFxX2hlYWRlciBzZWxlY3Qge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIC5mYXFfY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiA1MHB4IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLmZhcV9jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDA7IH0gfVxuICAgIC5mYXFfY29udGFpbmVyIC5jYXRlZ29yeSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAjMDBBMzlEOyB9XG4gICAgLmZhcV9jb250YWluZXIgLmFjY29yZGlvbiB7XG4gICAgICAvKmNvbHVtbi1jb3VudDogMjtcclxuICAgIFx0XHRjb2x1bW4tZ2FwOiA1MHB4OyovXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5mYXFfY29udGFpbmVyIC5hY2NvcmRpb24ge1xuICAgICAgICAgIC8qY29sdW1uLWNvdW50OiAxO1xyXG4gICAgXHRcdFx0Y29sdW1uLWdhcDogMHB4OyovXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfSB9XG4gICAgICAuZmFxX2NvbnRhaW5lciAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgd2lkdGg6IDQ3JTsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5mYXFfY29udGFpbmVyIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgICAgICAuZmFxX2NvbnRhaW5lciAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICBmb250LWZhbWlseTogRWxNZXNzaXJpO1xuICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gICAgICAgICAgLmZhcV9jb250YWluZXIgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogIzAwQTM5RDsgfVxuICAgICAgICAgIC5mYXFfY29udGFpbmVyIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgICAgICAgLmZhcV9jb250YWluZXIgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgICAgIHJpZ2h0OiAwOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIC5mYXFfY29udGFpbmVyIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAgICAgLmZhcV9jb250YWluZXIgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDsgfVxuICAgICAgICAuZmFxX2NvbnRhaW5lciAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAjMDBBMzlEO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5zaXRlbWFwIHtcbiAgcGFkZGluZy10b3A6IDEwMHB4OyB9XG4gIC5zaXRlbWFwIGgxIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNpdGVtYXBfY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiA1MHB4IDE1MHB4O1xuICAgIGNvbHVtbi1jb3VudDogNDtcbiAgICBjb2x1bW4tZ2FwOiAzMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaXRlbWFwX2NvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMTtcbiAgICAgICAgY29sdW1uLWdhcDogMDsgfSB9XG4gICAgLnNpdGVtYXBfY29udGFpbmVyIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC5zaXRlbWFwX2NvbnRhaW5lciB1bCBsaSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgICAgIC5zaXRlbWFwX2NvbnRhaW5lciB1bCBsaTpiZWZvcmUge1xuICAgICAgICAgIGNvbG9yOiAjMDBBMzlEO1xuICAgICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGNvbnRlbnQ6ICdcXGU4MDAnO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcImZvbnRlbGxvXCI7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gICAgICAgIC5zaXRlbWFwX2NvbnRhaW5lciB1bCBsaSBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgLnNpdGVtYXAtZWxlbWVudCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAuY2FtcGFpZ24gaDIge1xuICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9XG5cbi5jYW1wYWlnbl9pbnRybyB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAuY2FtcGFpZ25faW50cm8gZGl2IHtcbiAgICBmbGV4OiAxOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmNhbXBhaWduX2ludHJvIHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC5jYW1wYWlnbl9pbnRybyBkaXYge1xuICAgICAgICBmbGV4OiBpbml0aWFsOyB9IH1cblxuLmNhbXBhaWduX2tleVVTUCB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7IH1cbiAgLmNhbXBhaWduX2tleVVTUC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAuY2FtcGFpZ25fa2V5VVNQLWNvbnRhaW5lciBkaXYge1xuICAgICAgd2lkdGg6IDMwJTsgfVxuICAuY2FtcGFpZ25fa2V5VVNQIC5idG4ge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5jYW1wYWlnbl9rZXlVU1Age1xuICAgICAgcGFkZGluZzogMjVweDsgfVxuICAgICAgLmNhbXBhaWduX2tleVVTUC1jb250YWluZXIge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAgIC5jYW1wYWlnbl9rZXlVU1AtY29udGFpbmVyIGRpdiB7XG4gICAgICAgICAgd2lkdGg6IDgwJTsgfSB9XG5cbi5jYW1wYWlnbl9mZWF0dXJlcyB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7XG4gIGJhY2tncm91bmQ6ICMwMDZENzY7IH1cbiAgLmNhbXBhaWduX2ZlYXR1cmVzIGgyLCAuY2FtcGFpZ25fZmVhdHVyZXMgaDYge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5jYW1wYWlnbl9mZWF0dXJlcy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAyMHB4O1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7IH1cbiAgICAuY2FtcGFpZ25fZmVhdHVyZXMtY29udGFpbmVyIGRpdiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIC5jYW1wYWlnbl9mZWF0dXJlcy1jb250YWluZXIgZGl2IGltZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuY2FtcGFpZ25fZmVhdHVyZXMge1xuICAgICAgcGFkZGluZzogMjVweDsgfVxuICAgICAgLmNhbXBhaWduX2ZlYXR1cmVzLWNvbnRhaW5lciB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuXG4uY2FtcGFpZ25fYnJvY2h1cmUge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogODB2aDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuY2FtcGFpZ25fYnJvY2h1cmU6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTYzLCAxNTcsIDAuNik7XG4gICAgei1pbmRleDogMTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDsgfVxuICAuY2FtcGFpZ25fYnJvY2h1cmUgPiBkaXYge1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHdpZHRoOiA2MCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNhbXBhaWduX2Jyb2NodXJlID4gZGl2IGgyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiA2MHB4OyB9XG4gICAgLmNhbXBhaWduX2Jyb2NodXJlID4gZGl2IC5kZXNjcmlwdGlvbiBwLCAuY2FtcGFpZ25fYnJvY2h1cmUgPiBkaXYgLmRlc2NyaXB0aW9uIGxpLCAuY2FtcGFpZ25fYnJvY2h1cmUgPiBkaXYgLmRlc2NyaXB0aW9uIHNwYW4sIC5jYW1wYWlnbl9icm9jaHVyZSA+IGRpdiAuZGVzY3JpcHRpb24gZGl2IHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gICAgLmNhbXBhaWduX2Jyb2NodXJlID4gZGl2IC5kZXNjcmlwdGlvbiB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH1cbiAgICAgIC5jYW1wYWlnbl9icm9jaHVyZSA+IGRpdiAuZGVzY3JpcHRpb24gdWwgbGkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgICAgICAuY2FtcGFpZ25fYnJvY2h1cmUgPiBkaXYgLmRlc2NyaXB0aW9uIHVsIGxpOmJlZm9yZSB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgbGVmdDogNXB4O1xuICAgICAgICAgIHRvcDogOHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiAnXFxlODAwJztcbiAgICAgICAgICBmb250LWZhbWlseTogXCJmb250ZWxsb1wiO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgIC5jYW1wYWlnbl9icm9jaHVyZSA+IGRpdiAuYnJvY2h1cmVGb3JtIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBwYWRkaW5nOiA0NXB4IDIwcHg7IH1cbiAgICAgIC5jYW1wYWlnbl9icm9jaHVyZSA+IGRpdiAuYnJvY2h1cmVGb3JtIC5nZm9ybV9oZWFkaW5nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAuY2FtcGFpZ25fYnJvY2h1cmUgLmJyb2NodXJlSW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMjAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6IDUwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5jYW1wYWlnbl9icm9jaHVyZSB7XG4gICAgICBwYWRkaW5nOiAyNXB4O1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgIC5jYW1wYWlnbl9icm9jaHVyZSA+IGRpdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5jYW1wYWlnbl9icm9jaHVyZSA+IGRpdiBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAzMHB4OyB9XG4gICAgICAuY2FtcGFpZ25fYnJvY2h1cmUgLmJyb2NodXJlSW1nIHtcbiAgICAgICAgYm90dG9tOiAtMTAlO1xuICAgICAgICB3aWR0aDogOTAlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2FtcGFpZ25fYnJvY2h1cmUge1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDsgfSB9XG5cbi5jYW1wYWlnbl9mbG9vclBsYW4ge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4OyB9XG4gIC5jYW1wYWlnbl9mbG9vclBsYW4gaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuY2FtcGFpZ25fZmxvb3JQbGFuLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5jYW1wYWlnbl9mbG9vclBsYW4tY29udGFpbmVyID4gZGl2IHtcbiAgICAgIGZsZXg6IDE7IH1cbiAgICAuY2FtcGFpZ25fZmxvb3JQbGFuLWNvbnRhaW5lciAuaW1hZ2VzIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgLmNhbXBhaWduX2Zsb29yUGxhbi1jb250YWluZXIgLmltYWdlcyBpbWcge1xuICAgICAgICB3aWR0aDogNTAlOyB9XG4gICAgICAgIC5jYW1wYWlnbl9mbG9vclBsYW4tY29udGFpbmVyIC5pbWFnZXMgaW1nOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmNhbXBhaWduX2Zsb29yUGxhbi1jb250YWluZXIgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDIwcHggMTZweDsgfVxuICAgIC5jYW1wYWlnbl9mbG9vclBsYW4tY29udGFpbmVyIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLmNhbXBhaWduX2Zsb29yUGxhbi1jb250YWluZXIgLmFjY29yZGlvbi10aXRsZTpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuY2FtcGFpZ25fZmxvb3JQbGFuLWNvbnRhaW5lciAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwICFpbXBvcnRhbnQ7IH1cbiAgICAuY2FtcGFpZ25fZmxvb3JQbGFuLWNvbnRhaW5lciAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgICAgIC5jYW1wYWlnbl9mbG9vclBsYW4tY29udGFpbmVyIC5hY2NvcmRpb24tY29udGVudCBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmNhbXBhaWduX2Zsb29yUGxhbiB7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9XG4gICAgICAuY2FtcGFpZ25fZmxvb3JQbGFuLWNvbnRhaW5lciB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gICAgICAgIC5jYW1wYWlnbl9mbG9vclBsYW4tY29udGFpbmVyIC5pbWFnZXMgaW1nIHtcbiAgICAgICAgICB3aWR0aDogOTAlOyB9XG4gICAgICAgIC5jYW1wYWlnbl9mbG9vclBsYW4tY29udGFpbmVyIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5jYW1wYWlnbl9sb2NhdGlvbiB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7IH1cbiAgLmNhbXBhaWduX2xvY2F0aW9uIC5hY2YtbWFwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUwMHB4OyB9XG4gIC5jYW1wYWlnbl9sb2NhdGlvbi1kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogNDBweDsgfVxuICAgIC5jYW1wYWlnbl9sb2NhdGlvbi1kZXRhaWxzIGRpdiB7XG4gICAgICBmbGV4OiAxO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAuY2FtcGFpZ25fbG9jYXRpb24tZGV0YWlscyBkaXY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNGM0Y0Rjg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuY2FtcGFpZ25fbG9jYXRpb24ge1xuICAgICAgcGFkZGluZzogMjVweDsgfVxuICAgICAgLmNhbXBhaWduX2xvY2F0aW9uLWRldGFpbHMge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgICAgLmNhbXBhaWduX2xvY2F0aW9uLWRldGFpbHMgZGl2IHtcbiAgICAgICAgICBmbGV4OiBpbml0aWFsO1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgcGFkZGluZzogNXB4OyB9XG4gICAgICAgICAgLmNhbXBhaWduX2xvY2F0aW9uLWRldGFpbHMgZGl2Om50aC1jaGlsZChldmVuKSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH0gfVxuXG4uY2FtcGFpZ25fZ2FsbGVyeSB7XG4gIHBhZGRpbmc6IDUwcHggMHB4OyB9XG4gIC5jYW1wYWlnbl9nYWxsZXJ5IGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmNhbXBhaWduX2dhbGxlcnkgLnNsaWNrLXNsaWRlID4gZGl2IHtcbiAgICBwYWRkaW5nOiAwIDVweDsgfVxuICAuY2FtcGFpZ25fZ2FsbGVyeSAuaW1hZ2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuY2FtcGFpZ25fZ2FsbGVyeSAuaW1hZ2UgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluOyB9XG4gICAgICAuY2FtcGFpZ25fZ2FsbGVyeSAuaW1hZ2UgaW1nOmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuXG4uY2FtcGFpZ25fZGV2ZWxvcGVyIHtcbiAgcGFkZGluZzogMTAwcHggMHB4IDBweCAxNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5jYW1wYWlnbl9kZXZlbG9wZXIgaDEge1xuICAgIGxpbmUtaGVpZ2h0OiA0dnc7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuICAgIC5jYW1wYWlnbl9kZXZlbG9wZXIgaDEgc3BhbiB7XG4gICAgICBsaW5lLWhlaWdodDogNXZ3OyB9XG4gIC5jYW1wYWlnbl9kZXZlbG9wZXIgZGl2IHtcbiAgICBmbGV4OiAxOyB9XG4gICAgLmNhbXBhaWduX2RldmVsb3BlciBkaXYgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmNhbXBhaWduX2RldmVsb3BlciBkaXYgcCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5jYW1wYWlnbl9kZXZlbG9wZXIge1xuICAgICAgcGFkZGluZzogMjVweCAwcHggMjVweCAyNXB4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gICAgICAuY2FtcGFpZ25fZGV2ZWxvcGVyIGRpdiB7XG4gICAgICAgIGZsZXg6IGluaXRpYWw7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDEwcHggMDsgfVxuICAgICAgICAuY2FtcGFpZ25fZGV2ZWxvcGVyIGRpdiBwIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gICAgICAuY2FtcGFpZ25fZGV2ZWxvcGVyIGgxIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDZ2dztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgICAuY2FtcGFpZ25fZGV2ZWxvcGVyIGgxIHNwYW4ge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA4dnc7IH0gfVxuXG4uY2FtcGFpZ25faW52ZXN0T21hbiB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7IH1cbiAgLmNhbXBhaWduX2ludmVzdE9tYW4tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogMjBweDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9XG4gICAgLmNhbXBhaWduX2ludmVzdE9tYW4tY29udGFpbmVyIGRpdiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgICAuY2FtcGFpZ25faW52ZXN0T21hbi1jb250YWluZXIgZGl2OmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAjMDBBMzlEO1xuICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgIHRvcDogOHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGU4MDAnO1xuICAgICAgICBmb250LWZhbWlseTogXCJmb250ZWxsb1wiO1xuICAgICAgICBsaW5lLWhlaWdodDogMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLmNhbXBhaWduX2ludmVzdE9tYW4ge1xuICAgICAgcGFkZGluZzogMjVweDsgfVxuICAgICAgLmNhbXBhaWduX2ludmVzdE9tYW4tY29udGFpbmVyIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG5cbi5jYW1wYWlnbl9jb250YWN0IHtcbiAgcGFkZGluZzogNTBweCAxNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5jYW1wYWlnbl9jb250YWN0ID4gZGl2IHtcbiAgICBmbGV4OiAxOyB9XG4gICAgLmNhbXBhaWduX2NvbnRhY3QgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDVweCAwcHggI2UxZTFlMTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5jYW1wYWlnbl9jb250YWN0IHtcbiAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuXG4uc3VzdGFpbmFiaWxpdHlfaW50cm8ge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGNvbHVtbi1nYXA6IDMwcHg7IH1cbiAgLnN1c3RhaW5hYmlsaXR5X2ludHJvIGRpdiwgLnN1c3RhaW5hYmlsaXR5X2ludHJvIGgxIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5zdXN0YWluYWJpbGl0eV9pbnRybyBoMSB7XG4gICAgZm9udC1zaXplOiA0dnc7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnN1c3RhaW5hYmlsaXR5X2ludHJvIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHZ3OyB9IH1cbiAgICAuc3VzdGFpbmFiaWxpdHlfaW50cm8gaDEgc3BhbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5zdXN0YWluYWJpbGl0eV9pbnRybyB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDI1cHggMjVweDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLnN1c3RhaW5hYmlsaXR5X2ludHJvIGRpdiwgLnN1c3RhaW5hYmlsaXR5X2ludHJvIGgxIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5zdXN0YWluYWJpbGl0eV9pbnRybyBkaXYge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuXG4uc3VzdGFpbmFiaWxpdHlfYm9keSB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc3VzdGFpbmFiaWxpdHlfYm9keSB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDI1cHg7IH0gfVxuXG4uc3VzdGFpbmFiaWxpdHlfcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIC5zdXN0YWluYWJpbGl0eV9yb3c6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLnN1c3RhaW5hYmlsaXR5X3JvdyBkaXYge1xuICAgIHdpZHRoOiA0OCU7IH1cbiAgLnN1c3RhaW5hYmlsaXR5X3Jvdy1pY29uIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuc3VzdGFpbmFiaWxpdHlfcm93LWljb24gaW1nIHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc3VzdGFpbmFiaWxpdHlfcm93IHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLnN1c3RhaW5hYmlsaXR5X3JvdyBkaXYge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLnN1c3RhaW5hYmlsaXR5X3Jvdy1pY29uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG5cbi5zdXN0YWluYWJpbGl0eV9ncmVlbmVyIHtcbiAgcGFkZGluZzogNTBweCAwcHggNTBweCAxNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5zdXN0YWluYWJpbGl0eV9ncmVlbmVyIGRpdiB7XG4gICAgd2lkdGg6IDQ4JTsgfVxuICAgIC5zdXN0YWluYWJpbGl0eV9ncmVlbmVyIGRpdiBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc3VzdGFpbmFiaWxpdHlfZ3JlZW5lciB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cbiAgICAgIC5zdXN0YWluYWJpbGl0eV9ncmVlbmVyIGRpdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLnJ0bCB1bCB7XG4gIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLnJ0bCAucGhvbmUgYSB7XG4gIGRpcmVjdGlvbjogbHRyICFpbXBvcnRhbnQ7IH1cblxuLnJ0bCAubWVudUljb24ge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBpbml0aWFsOyB9XG5cbi5ydGwgLmhhcy1wb3NpdGlvbi1yaWdodCAubWVudUljb24gc3BhbjpudGgtb2YtdHlwZSgzKSwgLnJ0bCAuaGFzLXBvc2l0aW9uLWxlZnQgLm1lbnVJY29uIHNwYW46bnRoLW9mLXR5cGUoMykge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOHB4LCAtOXB4KSByb3RhdGV6KDQ1ZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4ucnRsIC5ib29rTm93LXdpZGdldCwgLnJ0bCAuZW5xdWlyZS13aWRnZXQsIC5ydGwgLmNvbnRhY3Qtd2lkZ2V0IHtcbiAgbGVmdDogLTQwdnc7XG4gIHJpZ2h0OiBpbml0aWFsOyB9XG4gIC5ydGwgLmJvb2tOb3ctd2lkZ2V0LmFjdGl2ZSwgLnJ0bCAuZW5xdWlyZS13aWRnZXQuYWN0aXZlLCAucnRsIC5jb250YWN0LXdpZGdldC5hY3RpdmUge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGluaXRpYWw7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAucnRsIC5ib29rTm93LXdpZGdldCwgLnJ0bCAuZW5xdWlyZS13aWRnZXQsIC5ydGwgLmNvbnRhY3Qtd2lkZ2V0IHtcbiAgICAgIGxlZnQ6IC0xMDB2dzsgfSB9XG5cbi5ydGwgLnRvcC1iYXItcmlnaHQgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duIGEge1xuICBwYWRkaW5nOiA1cHggMHB4IDVweCAyMnB4OyB9XG5cbi5ydGwgLmN0YS1tb2JpbGUge1xuICBkaXJlY3Rpb246IGx0cjsgfVxuXG4ucnRsIC5iYW5uZXIuc3VicGFnZSAuYmFubmVyLXRleHQge1xuICBtYXJnaW4tcmlnaHQ6IDZ2dztcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLnJ0bCAuc3VicGFnZUJhbm5lciAuYmFubmVyIC5iYW5uZXItdGV4dCB7XG4gIG1hcmdpbi1yaWdodDogNnZ3O1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAucnRsIC5zbGlkZXJCYW5uZXIgLmJhbm5lclNsaWRlLXRleHQgaDEge1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICBtYXJnaW4tbGVmdDogMHB4OyB9IH1cblxuLnJ0bCAubm9BcnJvd1NsaWRlciB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ydGwgLm5vQXJyb3dTbGlkZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMHB4OyB9XG4gICAgICAucnRsIC5ub0Fycm93U2xpZGVyIC5zbGlkZXItbm8ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuICAucnRsIC5ub0Fycm93U2xpZGVyIC5zbGlkZXJzQ29udGFpbmVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwJSk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnJ0bCAubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7IH0gfVxuICAucnRsIC5ub0Fycm93U2xpZGVyLWJ0bnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgLnJ0bCAubm9BcnJvd1NsaWRlci1idG5zIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5ydGwgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWNvbnRlbnQgYSB7XG4gIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDsgfVxuXG4ucnRsIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1MHB4KTsgfVxuXG4ucnRsIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICBsZWZ0OiAxMDBweDtcbiAgcmlnaHQ6IGluaXRpYWw7IH1cblxuLnJ0bCAuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgbGVmdDogMjAwcHg7XG4gIHJpZ2h0OiBpbml0aWFsOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gIC5ydGwgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgcGFkZGluZzogMCAwJSAwIDIwJSAhaW1wb3J0YW50OyB9XG4gIC5ydGwgLmNhcm91c2VsLXNsaWRlciAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gICAgbGVmdDogMTBweDsgfVxuICAucnRsIC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICAgIGxlZnQ6IDcwcHg7IH0gfVxuXG4ucnRsIC5mb290ZXItZ3JpZCAud2lkZ2V0IGgyLCAucnRsIC5mb290ZXItZ3JpZCAud2lkZ2V0IGgzIHtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gIG1hcmdpbi1yaWdodDogMHB4OyB9XG5cbi5ydGwgLmZvb3Rlci1ncmlkIC53aWRnZXQgcCBhIHtcbiAgZGlyZWN0aW9uOiBsdHI7IH1cblxuLnJ0bCAuaG9tZVBhZ2VfaGF3YW5hIC5zbGlkZXJzQ29udGFpbmVyIC5tYWluU2xpZGVyIC5zbGljay1zbGlkZS5zbGljay1jdXJyZW50IC5zbGlkZXJfdGl0bGUsIC5ydGwgLmhvbWVQYWdlX2V2ZW50cyAuc2xpZGVyc0NvbnRhaW5lciAubWFpblNsaWRlciAuc2xpY2stc2xpZGUuc2xpY2stY3VycmVudCAuc2xpZGVyX3RpdGxlIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7IH1cblxuLnJ0bCAuaG9tZVBhZ2Vfb2ZmZXJzIC5vZmZlci1pbWFnZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDUwcHg7IH1cblxuLnJ0bCAuaG9tZVBhZ2Vfb2ZmZXJzIC5vZmZlci1jb250ZW50IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogLTI4MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMDBweDsgfVxuXG4ucnRsIC5ob21lUGFnZV9vZmZlcnMgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICByaWdodDogaW5pdGlhbDtcbiAgbGVmdDogMjAwcHg7IH1cblxuLnJ0bCAuaG9tZVBhZ2Vfb2ZmZXJzIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IGluaXRpYWw7XG4gIGxlZnQ6IDMwMHB4OyB9XG5cbi5ydGwgLmhvbWVQYWdlX3JlYWxFc3RhdGUgLnByb3BlcnR5LWNvbnRlbnQgZGl2OmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH1cblxuLnJ0bCAuaG9tZVBhZ2VfcmVhbEVzdGF0ZSAucHJvcGVydHktY29udGVudCAuY3RhIGRpdiB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuXG4ucnRsIC5ob21lUGFnZV9yZW50YWwge1xuICBwYWRkaW5nOiAxMDBweCAxNTBweCA3MHB4IDBweDsgfVxuICAucnRsIC5ob21lUGFnZV9yZW50YWwgZGl2IHAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMHB4OyB9XG5cbi5ydGwgLmhvbWVQYWdlX2V2ZW50cyBoMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAucnRsIC5hYm91dF9sb2NhdGlvbiBpbWcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNSUpOyB9IH1cblxuLnJ0bCAuYWJvdXRfc3Rvcnkge1xuICBwYWRkaW5nOiAxMDBweCAxNTBweCA3MHB4IDBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ydGwgLmFib3V0X3N0b3J5IHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMjVweCAyNXB4IDBweDsgfSB9XG5cbi5ydGwgLmFib3V0X3Rlc3RpbW9uaWFscyB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHggNTBweCAwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAucnRsIC5hYm91dF90ZXN0aW1vbmlhbHMge1xuICAgICAgcGFkZGluZzogMjVweDsgfSB9XG4gIC5ydGwgLmFib3V0X3Rlc3RpbW9uaWFscyAuc2xpY2stbGlzdCB7XG4gICAgcGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnJ0bCAuYWJvdXRfdGVzdGltb25pYWxzIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICBsZWZ0OiAxNTBweDtcbiAgICByaWdodDogaW5pdGlhbDsgfVxuICAucnRsIC5hYm91dF90ZXN0aW1vbmlhbHMgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDcwcHg7XG4gICAgcmlnaHQ6IGluaXRpYWw7IH1cblxuLnJ0bCAuYWJvdXRfbWFzdGVycGxhbiBoMSwgLnJ0bCAuYWJvdXRfdmlzaW9uIGgxIHtcbiAgcGFkZGluZy1yaWdodDogMTUwcHg7XG4gIHBhZGRpbmctbGVmdDogMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJ0bCAuYWJvdXRfbWFzdGVycGxhbiBoMSwgLnJ0bCAuYWJvdXRfdmlzaW9uIGgxIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH0gfVxuXG4ucnRsIC5hYm91dF92aXNpb24tY29udGVudCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDE1JTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ydGwgLmFib3V0X3Zpc2lvbi1jb250ZW50IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH0gfVxuXG4ucnRsIC5hYm91dF9tdXJpeWEge1xuICBwYWRkaW5nOiA1MHB4IDBweCA1MHB4IDE1MHB4OyB9XG5cbi5ydGwgLmFib3V0X2hhd2FuYSB7XG4gIHBhZGRpbmc6IDUwcHggMTUwcHggNTBweCAwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAucnRsIC5hYm91dF9oYXdhbmEge1xuICAgICAgcGFkZGluZzogMjVweCAyNXB4IDI1cHggMHB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLnJ0bCAuYWJvdXRfZXhwbG9yZS1jb250YWluZXIgZGl2IGgzIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG5cbi5ydGwgLmRpbmluZ1BhZ2Vfc2VjdGlvbi1jb250ZW50IC5zaW5nbGVEaW5pbmctY29udGVudCB7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMTUwcHggKyAxMCUpO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAucnRsIC5kaW5pbmdQYWdlX3NlY3Rpb24tY29udGVudCAuc2luZ2xlRGluaW5nLWNvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi5ydGwgLmRpbmluZ1BhZ2Vfc2VjdGlvbi1jb250ZW50IC5zaW5nbGVEaW5pbmc6bnRoLWNoaWxkKG9kZCkge1xuICBwYWRkaW5nLXJpZ2h0OiAxNTBweDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7IH1cblxuLnJ0bCAuZGluaW5nUGFnZV9zZWN0aW9uLWNvbnRlbnQgLnNpbmdsZURpbmluZzpudGgtY2hpbGQoZXZlbikge1xuICBwYWRkaW5nLWxlZnQ6IDE1MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLnJ0bCAuZGluZUFyb3VuZF9leHBsb3JlLWNvbnRhaW5lciBkaXYgaDMge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cblxuLnJ0bCAubWFyaW5hIC53YXRlclRheGkge1xuICBwYWRkaW5nOiA1MHB4IDE1MHB4IDUwcHggMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJ0bCAubWFyaW5hIC53YXRlclRheGkge1xuICAgICAgcGFkZGluZzogMjVweCAyNXB4IDI1cHggMDsgfSB9XG5cbi5ydGwgLnJlYWxFc3RhdGVfaW52ZXN0aW5nIHtcbiAgcGFkZGluZzogNTBweCAxNTBweCA1MHB4IDBweDsgfVxuICAucnRsIC5yZWFsRXN0YXRlX2ludmVzdGluZyBkaXYgcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMDBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJ0bCAucmVhbEVzdGF0ZV9pbnZlc3Rpbmcge1xuICAgICAgcGFkZGluZzogNDBweCAyNXB4IDQwcHggMHB4OyB9XG4gICAgICAucnRsIC5yZWFsRXN0YXRlX2ludmVzdGluZyBkaXYgcCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG5cbi5ydGwgLnJlYWxFc3RhdGVfcHJvcGVydGllcyAucHJvcGVydHk6bnRoLWNoaWxkKG9kZCkge1xuICBwYWRkaW5nLWxlZnQ6IDE1MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7IH1cbiAgLnJ0bCAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQob2RkKSBoMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTUwcHg7IH1cbiAgLnJ0bCAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQob2RkKSAucHJvcGVydHktY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgIG1hcmdpbi1yaWdodDogLTEwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTUlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJ0bCAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQob2RkKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgIC5ydGwgLnJlYWxFc3RhdGVfcHJvcGVydGllcyAucHJvcGVydHk6bnRoLWNoaWxkKG9kZCkgaDEge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gICAgICAucnRsIC5yZWFsRXN0YXRlX3Byb3BlcnRpZXMgLnByb3BlcnR5Om50aC1jaGlsZChvZGQpIC5wcm9wZXJ0eS1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiA1MHB4OyB9IH1cblxuLnJ0bCAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQoZXZlbikgLnByb3BlcnR5LWNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJ0bCAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQoZXZlbikgLnByb3BlcnR5LWNvbnRlbnQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfVxuICAgICAgLnJ0bCAucmVhbEVzdGF0ZV9wcm9wZXJ0aWVzIC5wcm9wZXJ0eTpudGgtY2hpbGQoZXZlbikgLnByb3BlcnR5LWNvbnRlbnQgYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAucnRsIC5zaW5nbGUtcmVhbEVzdGF0ZSAub3RoZXJQcm9qZWN0cyAucHJvamVjdHMgLnByb3BlcnR5IGgzIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG5cbi5ydGwgLnN0YXkgLmhvdGVscyAuaG90ZWw6bnRoLWNoaWxkKG9kZCkge1xuICBwYWRkaW5nLXJpZ2h0OiAxNTBweDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7IH1cblxuLnJ0bCAuc3RheSAuaG90ZWxzIC5ob3RlbDpudGgtY2hpbGQoZXZlbikge1xuICBwYWRkaW5nLWxlZnQ6IDE1MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLnJ0bCAuc3RheSAuaG90ZWxzIC5ob3RlbDpudGgtY2hpbGQob2RkKSB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDsgfVxuICAgIC5ydGwgLnN0YXkgLmhvdGVscyAuaG90ZWw6bnRoLWNoaWxkKG9kZCkgLmhvdGVsLWluZm8ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9XG4gIC5ydGwgLnN0YXkgLmhvdGVscyAuaG90ZWw6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH1cbiAgICAucnRsIC5zdGF5IC5ob3RlbHMgLmhvdGVsOm50aC1jaGlsZChldmVuKSAuaG90ZWwtaW5mbyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9IH1cblxuLnJ0bCAuc3RheV9kaW5lQXJvdW5kIHtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJ0bCAuc3RheV9kaW5lQXJvdW5kIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgICAgIC5ydGwgLnN0YXlfZGluZUFyb3VuZC1kZXRhaWxzIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJ0bCAub2ZmZXJzIC5vZmZlci5jb2wtMzpudGgtY2hpbGQoMm4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAucnRsIC5vZmZlcnMgLm9mZmVyLmNvbC0zOm50aC1jaGlsZCg0bikge1xuICAgIG1hcmdpbi1sZWZ0OiAxNTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4ucnRsIC5vZmZlcnMgLm9mZmVyIC5idG4ge1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7IH1cblxuLnJ0bCAucmVudGFsV2lkZ2V0IC5jbG9zZSB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5ydGwgLnJlbnRhbFdpZGdldF9jb250YWluZXIgbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuLnJ0bCAucmVudGFsV2lkZ2V0X2NvbnRhaW5lciBkaXYuY2hlY2tib3hlcyBkaXYgcCBpbnB1dCB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDsgfVxuXG4ucnRsIC50aGluZ3NUb0RvX2JlYWNoZXMge1xuICBwYWRkaW5nOiAxMDBweCAxNTBweCA3MHB4IDBweDsgfVxuICAucnRsIC50aGluZ3NUb0RvX2JlYWNoZXMgcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMDBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAucnRsIC50aGluZ3NUb0RvX2JlYWNoZXMge1xuICAgICAgcGFkZGluZzogMjVweCAyNXB4IDI1cHggMHB4OyB9XG4gICAgICAucnRsIC50aGluZ3NUb0RvX2JlYWNoZXMgcCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gIC5ydGwgLmV2ZW50c19pbnRybyBpbWcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7IH0gfVxuXG4ucnRsIC5ldmVudHNfaGlnaGxpZ2h0cyAuZXZlbnQtaW1hZ2Uge1xuICBwYWRkaW5nLXJpZ2h0OiAxNTBweDtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJ0bCAuZXZlbnRzX2hpZ2hsaWdodHMgLmV2ZW50LWltYWdlIHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4ucnRsIC5ldmVudHNfaGlnaGxpZ2h0cyAuZXZlbnQtY29udGVudCB7XG4gIHBhZGRpbmctcmlnaHQ6IDMwMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0yODBweDtcbiAgbWFyZ2luLWxlZnQ6IDBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ydGwgLmV2ZW50c19oaWdobGlnaHRzIC5ldmVudC1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDI1cHggMzBweCA0MHB4OyB9IH1cblxuLnJ0bCAuZXZlbnRzX2hpZ2hsaWdodHMgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICByaWdodDogaW5pdGlhbDtcbiAgbGVmdDogMzAwcHg7IH1cblxuLnJ0bCAuZXZlbnRzX2hpZ2hsaWdodHMgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICByaWdodDogaW5pdGlhbDtcbiAgbGVmdDogMjAwcHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLnJ0bCAuZXZlbnRzX2hpZ2hsaWdodHMgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICAgIGxlZnQ6IDgwcHg7IH1cbiAgLnJ0bCAuZXZlbnRzX2hpZ2hsaWdodHMgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDIwcHg7IH0gfVxuXG4ucnRsIC5ldmVudHNfY2FsZW5kYXIgLmZpbHRlciA+IGRpdiBzZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cblxuLnJ0bCAuZXZlbnRzX2NhbGVuZGFyIC5maWx0ZXIgPiBkaXYgZGl2OmFmdGVyIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGluaXRpYWw7IH1cblxuLnJ0bCAuZXZlbnRzX2NhbGVuZGFyLWNvbnRhaW5lciA+IGRpdiAuYnRuIHtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG5cbi5ydGwgLnNpbmdsZUV2ZW50LWludHJvIHtcbiAgcGFkZGluZzogNTBweCAxNTBweCA1MHB4IDBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ydGwgLnNpbmdsZUV2ZW50LWludHJvIHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMjVweCAyNXB4IDA7IH0gfVxuXG4ucnRsIC5zaW5nbGVFdmVudCAub3RoZXJFdmVudHMgaDEge1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMTUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAucnRsIC5zaW5nbGVFdmVudCAub3RoZXJFdmVudHMgaDEge1xuICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gIC5ydGwgLmFxdWFwYXJrX2RldGFpbHMgaW1nIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNSUpOyB9IH1cblxuLnJ0bCAuYXF1YXBhcmtfZGV0YWlscy1jb250YWluZXIgLnNjaGVkdWxlIHtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAucnRsIC5hcXVhcGFya19kZXRhaWxzLWNvbnRhaW5lciAuc2NoZWR1bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gIC5ydGwgLmFxdWFwYXJrX2V4cGxvcmUtY29udGFpbmVyIGRpdiBoMyB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuXG4ucnRsIC5mYXFfY29udGFpbmVyIC5hY2NvcmRpb24gbGkgLmFjY29yZGlvbi10aXRsZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMTZweDsgfVxuICAucnRsIC5mYXFfY29udGFpbmVyIC5hY2NvcmRpb24gbGkgLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBsZWZ0OiAxcmVtO1xuICAgIHJpZ2h0OiBpbml0aWFsOyB9XG5cbi5ydGwgLnNpdGVtYXBfY29udGFpbmVyIHVsIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgLnJ0bCAuc2l0ZW1hcF9jb250YWluZXIgdWwgbGk6YmVmb3JlIHtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgY29udGVudDogJ1xcRTgwMic7IH1cblxuLnJ0bCAuc2luZ2xlSG90ZWxfcm9vbXMgaDEsIC5ydGwgLnNpbmdsZUhvdGVsIC5vdXJIb3RlbCBoMSwgLnJ0bCAuc2luZ2xlSG90ZWxfbmV3cyBoMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ydGwgLnNpbmdsZUhvdGVsX3Jvb21zIGgxLCAucnRsIC5zaW5nbGVIb3RlbCAub3VySG90ZWwgaDEsIC5ydGwgLnNpbmdsZUhvdGVsX25ld3MgaDEge1xuICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfSB9XG5cbi5ydGwgLnNpbmdsZUhvdGVsIC5vdXJIb3RlbC1ibG9jayBwIHNwYW4ge1xuICBjb2xvcjogI2ZmZjsgfVxuXG4ucnRsIC5zaW5nbGVIb3RlbCAub3VySG90ZWxfc2VjdGlvbjIge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJ0bCAuc2luZ2xlSG90ZWwgLm91ckhvdGVsX3NlY3Rpb24yIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH0gfVxuXG4ucnRsIC5zaW5nbGVIb3RlbF9vZmZlcnMgLm9mZmVyLWltYWdlIHtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNTBweDsgfVxuXG4ucnRsIC5zaW5nbGVIb3RlbF9vZmZlcnMgLm9mZmVyLWNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDIwMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMjgwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLnJ0bCAuc2luZ2xlSG90ZWxfb2ZmZXJzIC5vZmZlci1pbWFnZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgLnJ0bCAuc2luZ2xlSG90ZWxfb2ZmZXJzIC5vZmZlci1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4ucnRsIC5zaW5nbGVIb3RlbF9vZmZlcnMgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICBsZWZ0OiAzMDBweDtcbiAgcmlnaHQ6IGluaXRpYWw7IH1cblxuLnJ0bCAuc2luZ2xlSG90ZWxfb2ZmZXJzIC5zbGljay1hcnJvdy5zbGljay1wcmV2IHtcbiAgbGVmdDogMjAwcHg7XG4gIHJpZ2h0OiBpbml0aWFsOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gIC5ydGwgLnNpbmdsZUhvdGVsX29mZmVycyAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCB7XG4gICAgbGVmdDogODBweDsgfVxuICAucnRsIC5zaW5nbGVIb3RlbF9vZmZlcnMgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDIwcHg7IH0gfVxuXG4ucnRsIC5zaW5nbGVIb3RlbF9kaW5pbmcge1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMTUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAucnRsIC5zaW5nbGVIb3RlbF9kaW5pbmcge1xuICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfSB9XG5cbi5ydGwgLmFjY29tb2RhdGlvbl9yb29tRmFjdFNoZWV0IC5pY29ucyA+IGRpdiBkaXYge1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuLnJ0bCAuYWNjb21vZGF0aW9uX3Jvb21zIGgyIHtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgLnJ0bCAuYWNjb21vZGF0aW9uX3Jvb21zIGgyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH0gfVxuXG4ucnRsIC5kaW5pbmctc2VjdGlvbiBoMSB7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNTBweDsgfVxuXG4ucnRsIC5yZXZpZXdzICNsYW5nX3NlbGVjdG9yIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAwIGNlbnRlcjsgfVxuXG4ucnRsIC5vdXJIb3RlbC1mYWNpbGl0aWVzIC5vdGhlckZhY2lsaXRpZXMgPiBkaXYgaW1nIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4ucnRsIC5vdXJIb3RlbC1zZXJ2aWNlcyAuc2VydmljZXMgPiBkaXYgaW1nIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4ucnRsIC5wb3N0RGV0YWlscyAuY2xvc2Uge1xuICBsZWZ0OiAwO1xuICByaWdodDogaW5pdGlhbDsgfVxuXG4ucnRsIC5wb3N0RGV0YWlscyBoMyBzcGFuIHtcbiAgbGluZS1oZWlnaHQ6IDh2dzsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5ydGwgLnBvc3REZXRhaWxzIGgzIHNwYW4ge1xuICAgICAgbGluZS1oZWlnaHQ6IDIydnc7IH0gfVxuIiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuNS4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyBEZXBlbmRlbmNpZXNcbkBpbXBvcnQgJ3ZlbmRvci9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL2NvbnRhaW4nO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcHVyZ2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVtb3ZlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvdG8tbGlzdCc7XG5cbi8vIC0tLSBTZXR0aW5ncyAtLS1cbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gLS0tIENvbXBvbmVudHMgLS0tXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG4vLyBHbG9iYWwgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcblxuLy8gR3JpZHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd4eS1ncmlkL3h5LWdyaWQnO1xuLy8gR2VuZXJpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuLy8gQmFzaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuLy8gQ29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbi8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcblxuLy8gTGF5b3V0IGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZyhcbiAgJGZsZXg6IHRydWUsXG4gICRwcm90b3R5cGU6IGZhbHNlXG4pIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIC8vIEdsb2JhbCBzdHlsZXNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5cbiAgLy8gR3JpZHNcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHh5LWdyaWQge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdlbmVyaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuICAvLyBCYXNpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcblxuICAvLyBDb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuICAvLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuXG4gIC8vIExheW91dCBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuXG4gIC8vIEhlbHBlcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuICBAaWYgJGZsZXggeyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlczsgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGlmICRwcm90b3R5cGUgeyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzOyB9XG59XG4iLCJAY2hhcnNldCAndXRmLTgnO1xyXG5cclxuXHJcbkBpbXBvcnQgJ3NldHRpbmdzJztcclxuQGltcG9ydCAnZm91bmRhdGlvbic7XHJcbkBpbXBvcnQgJ21vdGlvbi11aSc7XHJcblxyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XHJcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xyXG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xyXG5cclxuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcclxuQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1yYW5nZS1pbnB1dDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcztcclxuXHJcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7XHJcblxyXG5AaW5jbHVkZSBtb3Rpb24tdWktdHJhbnNpdGlvbnM7XHJcbkBpbmNsdWRlIG1vdGlvbi11aS1hbmltYXRpb25zO1xyXG5cclxuLypcclxuICBNeSBjdXN0b20gc3R5bGVzOlxyXG4gIEFkZCB5b3VyIHNjc3MgZmlsZXMgYmVsb3cgdG8gc3RydWN0dXJlIHlvdXIgcHJvamVjdCBzdHlsZXNcclxuKi9cclxuQGltcG9ydCBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9zbGljay1jYXJvdXNlbC9zbGljay9zbGljay5zY3NzXCI7XHJcbkBpbXBvcnQgXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbG9jb21vdGl2ZS1zY3JvbGwvZGlzdC9sb2NvbW90aXZlLXNjcm9sbFwiO1xyXG5AaW1wb3J0IFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2RhdGVyYW5nZXBpY2tlci9kYXRlcmFuZ2VwaWNrZXIuY3NzXCI7XHJcbkBpbXBvcnQgXCIuL2ZvbnRlbGxvXCI7XHJcbkBpbXBvcnQgXCIuL2dlbmVyYWxcIjtcclxuLy8gR2xvYmFsXHJcbi8vQGltcG9ydCBcImdsb2JhbC9hY2Nlc3NpYmlsaXR5XCI7XHJcbkBpbXBvcnQgXCJnbG9iYWwvY29sb3JzXCI7XHJcbkBpbXBvcnQgXCJnbG9iYWwvZm9udHNcIjtcclxuQGltcG9ydCBcImdsb2JhbC93cC1hZG1pblwiO1xyXG4vL0BpbXBvcnQgXCJnbG9iYWwvd3Atb3ZlcnJpZGVzXCI7XHJcbi8vQGltcG9ydCBcImdsb2JhbC9ndXRlbmJlcmdcIjtcclxuXHJcbi8vIE1vZHVsZXNcclxuQGltcG9ydCBcIm1vZHVsZXMvbmF2aWdhdGlvblwiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9jb250ZW50XCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2Zvb3RlclwiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9lZGl0b3Itc3R5bGVcIjtcclxuXHJcbi8vIENvbXBvbmVudHNcclxuQGltcG9ydCBcImNvbXBvbmVudHMvYnV0dG9uc1wiO1xyXG4vL0BpbXBvcnQgXCJjb21wb25lbnRzL2NhcmRzXCI7XHJcbi8vQGltcG9ydCBcImNvbXBvbmVudHMvZmVhdHVyZWQtaW1hZ2VcIjtcclxuLy9AaW1wb3J0IFwiY29tcG9uZW50cy9kaXZpZGVyc1wiO1xyXG4vL0BpbXBvcnQgXCJjb21wb25lbnRzL2xpbmtzXCI7XHJcblxyXG4vLyBUZW1wbGF0ZXNcclxuLy9AaW1wb3J0IFwidGVtcGxhdGVzL2Zyb250XCI7XHJcbi8vQGltcG9ydCBcInRlbXBsYXRlcy9raXRjaGVuLXNpbmtcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9ob21lUGFnZVwiO1xyXG5AaW1wb3J0IFwidGVtcGxhdGVzL3JlYWxFc3RhdGVcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9zdGF5XCI7XHJcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvaG90ZWxcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9ob3RlbC9hY2NvbW9kYXRpb25cIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9ob3RlbC9vdXJIb3RlbFwiO1xyXG5AaW1wb3J0IFwidGVtcGxhdGVzL2hvdGVsL2RpbmluZ1wiO1xyXG5AaW1wb3J0IFwidGVtcGxhdGVzL2hvdGVsL2dhbGxlcnlcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9ob3RlbC9uZXdzXCI7XHJcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvaG90ZWwvcmV2aWV3c1wiO1xyXG5AaW1wb3J0IFwidGVtcGxhdGVzL29mZmVyc1wiO1xyXG5AaW1wb3J0IFwidGVtcGxhdGVzL2Fib3V0XCI7XHJcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvY29udGFjdFwiO1xyXG5AaW1wb3J0IFwidGVtcGxhdGVzL3JlbnRhbFwiO1xyXG5AaW1wb3J0IFwidGVtcGxhdGVzL3RoaW5nc1RvRG9cIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9ldmVudHNcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9kaW5lQXJvdW5kXCI7XHJcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvYXF1YXBhcmtcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9mYXFcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9zaXRlbWFwXCI7XHJcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvY2FtcGFpZ25cIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9zdXN0YWluYWJpbGl0eVwiO1xyXG5cclxuQGltcG9ydCBcIi4vYXJhYmljXCI7IiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnVGhlIGZpcnN0IGtleSBpbiB0aGUgJGJyZWFrcG9pbnRzIG1hcCBtdXN0IGhhdmUgYSB2YWx1ZSBvZiBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gIEBpZiAkYnAtbWF4IHtcbiAgICAkYnAtbWF4OiAtemYtYnAtdG8tZW0oJGJwLW1heCkgLSAuMDAxMjU7XG4gIH1cblxuICAvLyBDb25kaXRpb25zIHRvIHNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb25cbiAgLy8gLSBJdCdzIGEgbmFtZWQgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBkb3duXCIgb3IgXCIwIHVwXCJcbiAgLy8gLSBJdCdzIGEgbnVtZXJpYyBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIFwiICsgYW55dGhpbmdcbiAgQGlmICRicCA+IDBlbSBvciAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gYG9ubHlgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbikgYW5kIChtYXgtd2lkdGg6IG4pYFxuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICAvLyBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gXCJvbmx5XCIgcmFuZ2VcbiAgICAgIEBpZiAkbmFtZWQgPT0gdHJ1ZSB7XG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWluLXdpZHRoXCIgaWYgdGhlIGZsb29yIGlzIGdyZWF0ZXIgdGhhbiAwXG4gICAgICAgIEBpZiAkYnAgPiAwZW0ge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG5cbiAgICAgICAgICAvLyBPbmx5IGFkZCBcImFuZFwiIHRvIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kICc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSB1c2UgXCJtYXgtd2lkdGhcIiBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIixcbiAgICAgIC8vIHVubGVzcyB0aGUgZnVuY3Rpb24gd2FzIGNhbGxlZCBhcyBcInNtYWxsIGRvd25cIiwgaW4gd2hpY2ggY2FzZSBpdCdzIGp1c3QgXCJzbWFsbCBvbmx5XCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgQGlmICRtYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgdXBgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcCwgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlKSB7XG4gICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICR2YWx1ZSk7XG4gICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuXG4gICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICB9XG4gICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICBAaWYgJGJwICE9IG51bGwgYW5kICRicCA8PSAkcGJwIHtcbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmRfa2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kX2tleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmRfa2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuJHNtYWxsLXVwOiAnJztcbiRzbWFsbC1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuJG1lZGl1bS11cDogJyc7XG4kbWVkaXVtLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbiRsYXJnZS11cDogJyc7XG4kbGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4bGFyZ2UtdXA6ICcnO1xuJHhsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG4keHhsYXJnZS11cDogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmV2ZWFsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHdpZHRoIG9mIGEgbW9kYWwsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXhpbXVtIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHotaW5kZXggZm9yIG1vZGFscy4gVGhlIG92ZXJsYXkgdXNlcyB0aGlzIHZhbHVlLCB3aGlsZSB0aGUgbW9kYWwgaXRzZWxmIHVzZXMgdGhpcyB2YWx1ZSBwbHVzIG9uZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtemluZGV4OiAxMDA1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBvdmVybGF5cy5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KSAhZGVmYXVsdDtcblxuXG4vLyBQbGFjZWhvbGRlciBzZWxlY3RvciBmb3IgbWVkaXVtLWFuZC11cCBtb2RhbHNcbi8vIFByZXZlbnRzIGR1cGxpY2F0ZSBDU1Mgd2hlbiBkZWZpbmluZyBtdWx0aXBsZSBSZXZlYWwgc2l6ZXNcbi8vIFRoaXMgc2hvdWxkIGJlIGluIHRoZSBzYW1lIGJyZWFrcG9pbnQgdGhlbiBgQG1peGluIHJldmVhbC1tb2RhbC13aWR0aGBcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICVyZXZlYWwtY2VudGVyZWQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbW9kYWwgb3ZlcmxheS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgb3ZlcmxheS5cbkBtaXhpbiByZXZlYWwtb3ZlcmxheSgkYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXggKyAxO1xuICAvLyBXb3JrYXJvdW5kIGFuZHJvaWQgYnJvd3NlciB6LWluZGV4IGJ1Z1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHJldmVhbC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJHJldmVhbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLWJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIC8vIEV4dGVuZHMgbXVzdCBiZSBtYWRlIG91dHNpZGUgb2YgYnJlYWtwb2ludHMgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBuZXdlciBTYXNzIHZlcnNpb25zIChsaWJzYXNzIHYzLjUpXG4gIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuXG4gIC8vLyBEaXNhYmxlcyB0aGUgc2Nyb2xsIHdoZW4gUmV2ZWFsIGlzIHNob3duIHRvIHByZXZlbnQgdGhlIGJhY2tncm91bmQgZnJvbSBzaGlmdGluZ1xuICBodG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgJi56Zi1oYXMtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICB9XG5cbiAgICBib2R5IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgY29kZSxcbiAga2JkLFxuICBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG5cbiAgLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gIC8vIGFsbCBicm93c2Vycy5cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIC8vIEVtYmVkZGVkIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuXG4gIGltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICB9XG5cbiAgLy8gRm9ybXNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMTAwJTsgLy8gMVxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgbWFyZ2luOiAwOyAvLyAyXG4gIH1cblxuICAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgLy8gMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cblxuICBidXR0b24sXG4gIGlucHV0IHsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gIC8vIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cblxuICBidXR0b24sXG4gIHNlbGVjdCB7IC8vIDFcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG5cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBmaWVsZHNldCB7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAvLyAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gIC8vICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGxlZ2VuZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDFcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAzXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxuICBwcm9ncmVzcyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG5cbiAgdGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gIC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cblxuICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gMlxuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyXG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cblxuICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxuICAgIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgfVxuXG4gIC8vIEludGVyYWN0aXZlXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cblxuICBkZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cblxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIH1cblxuICAvLyBNaXNjXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG5cbiAgW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGUgdGhhdCBjb250YWlucyB0aGUgZmxleCBqdXN0aWZ5aW5nIG9wdGlvbnNcbiQtemYtZmxleC1qdXN0aWZ5OiAtemYtZmxleC1qdXN0aWZ5KCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24pO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIE1ha2UgcmVzZXQgaW5oZXJpdCBmb250LWZhbWlseSBpbnN0ZWFkIG9mIHNldHRpbmdzIHNhbnMtc2VyaWZcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSW50ZXJuYWwgY2xhc3NlcyB0byBzaG93L2hpZGUgZWxlbWVudHMgaW4gSmF2YVNjcmlwdFxuICAuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gIEZvdW5kYXRpb25QcmVzcyBzZXR0aW5ncy5cclxuLy8gIEJhc2VkIG9uIEZvdW5kYXRpb24gZm9yIFNpdGVzIHY2LjQuM1xyXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy9cclxuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxyXG4vL1xyXG4vLyAgIDEuIEdsb2JhbFxyXG4vLyAgIDIuIEJyZWFrcG9pbnRzXHJcbi8vICAgMy4gVGhlIEdyaWRcclxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcclxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcclxuLy8gICA2LiBBYmlkZVxyXG4vLyAgIDcuIEFjY29yZGlvblxyXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XHJcbi8vICAgOS4gQmFkZ2VcclxuLy8gIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAgMTEuIEJ1dHRvblxyXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxyXG4vLyAgMTMuIENhbGxvdXRcclxuLy8gIDE0LiBDYXJkXHJcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXHJcbi8vICAxNi4gRHJpbGxkb3duXHJcbi8vICAxNy4gRHJvcGRvd25cclxuLy8gIDE4LiBEcm9wZG93biBNZW51XHJcbi8vICAxOS4gRmxleGJveCBVdGlsaXRpZXNcclxuLy8gIDIwLiBGb3Jtc1xyXG4vLyAgMjEuIExhYmVsXHJcbi8vICAyMi4gTWVkaWEgT2JqZWN0XHJcbi8vICAyMy4gTWVudVxyXG4vLyAgMjQuIE1ldGVyXHJcbi8vICAyNS4gT2ZmLWNhbnZhc1xyXG4vLyAgMjYuIE9yYml0XHJcbi8vICAyNy4gUGFnaW5hdGlvblxyXG4vLyAgMjguIFByb2dyZXNzIEJhclxyXG4vLyAgMjkuIFByb3RvdHlwZSBBcnJvd1xyXG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XHJcbi8vICAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXHJcbi8vICAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXHJcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcclxuLy8gIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXHJcbi8vICAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxyXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xyXG4vLyAgMzcuIFByb3RvdHlwZSBQb3NpdGlvblxyXG4vLyAgMzguIFByb3RvdHlwZSBSb3VuZGVkXHJcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxyXG4vLyAgNDAuIFByb3RvdHlwZSBTaGFkb3dcclxuLy8gIDQxLiBQcm90b3R5cGUgU2l6aW5nXHJcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcclxuLy8gIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXHJcbi8vICA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cclxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcclxuLy8gIDQ2LiBSZXNwb25zaXZlIEVtYmVkXHJcbi8vICA0Ny4gUmV2ZWFsXHJcbi8vICA0OC4gU2xpZGVyXHJcbi8vICA0OS4gU3dpdGNoXHJcbi8vICA1MC4gVGFibGVcclxuLy8gIDUxLiBUYWJzXHJcbi8vICA1Mi4gVGh1bWJuYWlsXHJcbi8vICA1My4gVGl0bGUgQmFyXHJcbi8vICA1NC4gVG9vbHRpcFxyXG4vLyAgNTUuIFRvcCBCYXJcclxuLy8gIDU2LiBYeSBHcmlkXHJcblxyXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xyXG5AaW1wb3J0ICdnbG9iYWwvY29sb3JzJztcclxuXHJcbi8vIDEuIEdsb2JhbFxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKTtcclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XHJcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcclxuICBwcmltYXJ5OiAjMTc3OWJhLFxyXG4gIHNlY29uZGFyeTogIzc2NzY3NixcclxuICBzdWNjZXNzOiAjM2FkYjc2LFxyXG4gIHdhcm5pbmc6ICNmZmFlMDAsXHJcbiAgYWxlcnQ6ICNjYzRiMzcsXHJcbik7XHJcbiRsaWdodC1ncmF5OiAjZTZlNmU2O1xyXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2E7XHJcbiRkYXJrLWdyYXk6ICM4YThhOGE7XHJcbiRibGFjazogIzBhMGEwYTtcclxuJHdoaXRlOiAjZmVmZWZlO1xyXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcclxuJGJvZHktZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xyXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZTtcclxuJGdsb2JhbC1tYXJnaW46IDFyZW07XHJcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbTtcclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XHJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XHJcbiRnbG9iYWwtcmFkaXVzOiAwO1xyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW07XHJcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xyXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XHJcbiRnbG9iYWwtZmxleGJveDogdHJ1ZTtcclxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xyXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG87XHJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDA7XHJcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcclxuXHJcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcclxuXHJcbi8vIDIuIEJyZWFrcG9pbnRzXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYnJlYWtwb2ludHM6IChcclxuICBzbWFsbDogMCxcclxuICBtZWRpdW06IDY0MHB4LFxyXG4gIGxhcmdlOiAxMDI0cHgsXHJcbiAgeGxhcmdlOiAxMjAwcHgsXHJcbiAgeHhsYXJnZTogMTQ0MHB4LFxyXG4pO1xyXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XHJcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpO1xyXG5cclxuLy8gMy4gVGhlIEdyaWRcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcclxuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxyXG4gIHNtYWxsOiAyMHB4LFxyXG4gIG1lZGl1bTogMzBweCxcclxuKTtcclxuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XHJcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xyXG4kYmxvY2stZ3JpZC1tYXg6IDg7XHJcblxyXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcclxuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcclxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XHJcbiRoZWFkZXItY29sb3I6IGluaGVyaXQ7XHJcbiRoZWFkZXItbGluZWhlaWdodDogMS40O1xyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuJGhlYWRlci1zdHlsZXM6IChcclxuICBzbWFsbDogKFxyXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXHJcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcclxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxyXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXHJcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcclxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxyXG4gICksXHJcbiAgbWVkaXVtOiAoXHJcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcclxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxyXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXHJcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcclxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxyXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXHJcbiAgKSxcclxuKTtcclxuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xyXG4kc21hbGwtZm9udC1zaXplOiA4MCU7XHJcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNjtcclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcbiRjb2RlLWNvbG9yOiAkYmxhY2s7XHJcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xyXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XHJcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcclxuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XHJcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvO1xyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XHJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcclxuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcclxuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XHJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW07XHJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XHJcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XHJcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xyXG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XHJcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XHJcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcclxuXHJcbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xyXG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XHJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xyXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XHJcblxyXG4vLyA2LiBBYmlkZVxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJGFiaWRlLWlucHV0czogdHJ1ZTtcclxuJGFiaWRlLWxhYmVsczogdHJ1ZTtcclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XHJcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcclxuXHJcbi8vIDcuIEFjY29yZGlvblxyXG4vLyAtLS0tLS0tLS0tLS1cclxuXHJcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xyXG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XHJcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW07XHJcblxyXG4vLyA4LiBBY2NvcmRpb24gTWVudVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XHJcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XHJcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcclxuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICR3aGl0ZTtcclxuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsO1xyXG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGw7XHJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGw7XHJcbiRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XHJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4O1xyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xyXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHg7XHJcblxyXG4vLyA5LiBCYWRnZVxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYmFkZ2UtY29sb3I6ICR3aGl0ZTtcclxuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xyXG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcclxuJGJhZGdlLXBhZGRpbmc6IDAuM2VtO1xyXG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xyXG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XHJcblxyXG4vLyAxMC4gQnJlYWRjcnVtYnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSk7XHJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW07XHJcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbTogJy8nO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJztcclxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXk7XHJcblxyXG4vLyAxMS4gQnV0dG9uXHJcbi8vIC0tLS0tLS0tLS1cclxuXHJcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbTtcclxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xyXG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xyXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XHJcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcclxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcclxuJGJ1dHRvbi1zaXplczogKFxyXG4gIHRpbnk6IDAuNnJlbSxcclxuICBzbWFsbDogMC43NXJlbSxcclxuICBkZWZhdWx0OiAwLjlyZW0sXHJcbiAgbGFyZ2U6IDEuMjVyZW0sXHJcbik7XHJcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcclxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCU7XHJcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XHJcblxyXG4vLyAxMi4gQnV0dG9uIEdyb3VwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XHJcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XHJcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xyXG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcclxuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xyXG5cclxuLy8gMTMuIENhbGxvdXRcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XHJcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcclxuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xyXG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtO1xyXG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZDtcclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XHJcblxyXG4vLyAxNC4gQ2FyZFxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcclxuJGNhcmQtc2hhZG93OiBub25lO1xyXG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xyXG4kY2FyZC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuXHJcbi8vIDE1LiBDbG9zZSBCdXR0b25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XHJcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxyXG4gIHNtYWxsOiAwLjY2cmVtLFxyXG4gIG1lZGl1bTogMXJlbSxcclxuKTtcclxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxyXG4gIHNtYWxsOiAwLjMzZW0sXHJcbiAgbWVkaXVtOiAwLjVyZW0sXHJcbik7XHJcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXHJcbiAgc21hbGw6IDEuNWVtLFxyXG4gIG1lZGl1bTogMmVtLFxyXG4pO1xyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcclxuXHJcbi8vIDE2LiBEcmlsbGRvd25cclxuLy8gLS0tLS0tLS0tLS0tLVxyXG5cclxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xyXG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcclxuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcclxuJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luOiAwO1xyXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcclxuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xyXG5cclxuLy8gMTcuIERyb3Bkb3duXHJcbi8vIC0tLS0tLS0tLS0tLVxyXG5cclxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XHJcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xyXG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xyXG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGRyb3Bkb3duLXNpemVzOiAoXHJcbiAgdGlueTogMTAwcHgsXHJcbiAgc21hbGw6IDIwMHB4LFxyXG4gIGxhcmdlOiA0MDBweCxcclxuKTtcclxuXHJcbi8vIDE4LiBEcm9wZG93biBNZW51XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcclxuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvcjtcclxuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHg7XHJcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtO1xyXG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XHJcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogbnVsbDtcclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcclxuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwO1xyXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xyXG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XHJcblxyXG4vLyAxOS4gRmxleGJveCBVdGlsaXRpZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDY7XHJcbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWU7XHJcblxyXG4vLyAyMC4gRm9ybXNcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpO1xyXG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XHJcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrO1xyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XHJcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XHJcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjaztcclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbTtcclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjaztcclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjg7XHJcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xyXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcclxuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZTtcclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5O1xyXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheTtcclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyO1xyXG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSk7XHJcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZDtcclxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xyXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyAyMS4gTGFiZWxcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xyXG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2s7XHJcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xyXG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XHJcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcclxuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyAyMi4gTWVkaWEgT2JqZWN0XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcclxuXHJcbi8vIDIzLiBNZW51XHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kbWVudS1tYXJnaW46IDA7XHJcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xyXG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcclxuJG1lbnUtc2ltcGxlLW1hcmdpbjogMXJlbTtcclxuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xyXG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW07XHJcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XHJcbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlO1xyXG4kbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdDogdHJ1ZTtcclxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWU7XHJcblxyXG4vLyAyNC4gTWV0ZXJcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kbWV0ZXItaGVpZ2h0OiAxcmVtO1xyXG4kbWV0ZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJG1ldGVyLWZpbGwtZ29vZDogJHN1Y2Nlc3MtY29sb3I7XHJcbiRtZXRlci1maWxsLW1lZGl1bTogJHdhcm5pbmctY29sb3I7XHJcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xyXG5cclxuLy8gMjUuIE9mZi1jYW52YXNcclxuLy8gLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRvZmZjYW52YXMtc2l6ZXM6IChcclxuICBzbWFsbDogMjUwcHgsXHJcbik7XHJcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcclxuICBzbWFsbDogMjUwcHgsXHJcbik7XHJcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGRhcmstbmF2LWNvbG9yO1xyXG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNyk7XHJcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHg7XHJcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSk7XHJcbiRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg6IDExO1xyXG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMjtcclxuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTM7XHJcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTI7XHJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XHJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XHJcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xyXG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xyXG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xyXG5cclxuLy8gMjYuIE9yYml0XHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XHJcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcclxuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XHJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xyXG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcclxuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XHJcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XHJcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XHJcblxyXG4vLyAyNy4gUGFnaW5hdGlvblxyXG4vLyAtLS0tLS0tLS0tLS0tLVxyXG5cclxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XHJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGU7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcclxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcclxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XHJcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcclxuXHJcbi8vIDI4LiBQcm9ncmVzcyBCYXJcclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb2dyZXNzLWhlaWdodDogMXJlbTtcclxuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMjkuIFByb3RvdHlwZSBBcnJvd1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLWFycm93LWRpcmVjdGlvbnM6IChcclxuICBkb3duLFxyXG4gIHVwLFxyXG4gIHJpZ2h0LFxyXG4gIGxlZnRcclxuKTtcclxuJHByb3RvdHlwZS1hcnJvdy1zaXplOiAwLjQzNzVyZW07XHJcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcclxuXHJcbi8vIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtYm9yZGVyLWJveC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcblxyXG4vLyAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtYm9yZGVyLW5vbmUtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG5cclxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1ib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEpO1xyXG4kcHJvdG90eXBlLWJvcmRlci10eXBlOiBzb2xpZDtcclxuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuXHJcbi8vIDMzLiBQcm90b3R5cGUgRGlzcGxheVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtZGlzcGxheS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtZGlzcGxheTogKFxyXG4gIGlubGluZSxcclxuICBpbmxpbmUtYmxvY2ssXHJcbiAgYmxvY2ssXHJcbiAgdGFibGUsXHJcbiAgdGFibGUtY2VsbFxyXG4pO1xyXG5cclxuLy8gMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtZm9udC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XHJcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJHByb3RvdHlwZS1mb250LWJvbGQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcblxyXG4vLyAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1saXN0LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1zdHlsZS10eXBlLXVub3JkZXJlZDogKFxyXG4gIGRpc2MsXHJcbiAgY2lyY2xlLFxyXG4gIHNxdWFyZVxyXG4pO1xyXG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtb3JkZXJlZDogKFxyXG4gIGRlY2ltYWwsXHJcbiAgbG93ZXItYWxwaGEsXHJcbiAgbG93ZXItbGF0aW4sXHJcbiAgbG93ZXItcm9tYW4sXHJcbiAgdXBwZXItYWxwaGEsXHJcbiAgdXBwZXItbGF0aW4sXHJcbiAgdXBwZXItcm9tYW5cclxuKTtcclxuXHJcbi8vIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1vdmVyZmxvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtb3ZlcmZsb3c6IChcclxuICB2aXNpYmxlLFxyXG4gIGhpZGRlbixcclxuICBzY3JvbGxcclxuKTtcclxuXHJcbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtcG9zaXRpb246IChcclxuICBzdGF0aWMsXHJcbiAgcmVsYXRpdmUsXHJcbiAgYWJzb2x1dGUsXHJcbiAgZml4ZWRcclxuKTtcclxuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzU7XHJcblxyXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xyXG5cclxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3JcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlcjtcclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItaGVpZ2h0OiByZW0tY2FsYygyKTtcclxuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XHJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kcHJvdG90eXBlLXNlcGFyYXRvci1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbjtcclxuXHJcbi8vIDQwLiBQcm90b3R5cGUgU2hhZG93XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXNoYWRvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtYm94LXNoYWRvdzogMCAycHggNXB4IDAgcmdiYSgwLDAsMCwuMTYpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgIDAgMnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMik7XHJcblxyXG4vLyA0MS4gUHJvdG90eXBlIFNpemluZ1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1zaXppbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLXNpemluZzogKFxyXG4gIHdpZHRoLFxyXG4gIGhlaWdodFxyXG4pO1xyXG4kcHJvdG90eXBlLXNpemVzOiAoXHJcbiAgMjU6IDI1JSxcclxuICA1MDogNTAlLFxyXG4gIDc1OiA3NSUsXHJcbiAgMTAwOiAxMDAlXHJcbik7XHJcblxyXG4vLyA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXNwYWNpbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDM7XHJcblxyXG4vLyA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1kZWNvcmF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS10ZXh0LWRlY29yYXRpb246IChcclxuICBvdmVybGluZSxcclxuICB1bmRlcmxpbmUsXHJcbiAgbGluZS10aHJvdWdoLFxyXG4pO1xyXG5cclxuLy8gNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS10cmFuc2Zvcm1hdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxyXG4gIGxvd2VyY2FzZSxcclxuICB1cHBlcmNhc2UsXHJcbiAgY2FwaXRhbGl6ZVxyXG4pO1xyXG5cclxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblxyXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xyXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcclxuICBkZWZhdWx0OiA0IGJ5IDMsXHJcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcclxuKTtcclxuXHJcbi8vIDQ3LiBSZXZlYWxcclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4O1xyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xyXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xyXG5cclxuLy8gNDguIFNsaWRlclxyXG4vLyAtLS0tLS0tLS0tXHJcblxyXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XHJcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XHJcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xyXG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xyXG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xyXG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyA0OS4gU3dpdGNoXHJcbi8vIC0tLS0tLS0tLS1cclxuXHJcbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcclxuJHN3aXRjaC1oZWlnaHQ6IDJyZW07XHJcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcclxuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XHJcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW07XHJcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xyXG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcclxuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xyXG5cclxuLy8gNTAuIFRhYmxlXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcclxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XHJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XHJcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XHJcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtc3RyaXBlOiBldmVuO1xyXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XHJcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XHJcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xyXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xyXG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xyXG5cclxuLy8gNTEuIFRhYnNcclxuLy8gLS0tLS0tLS1cclxuXHJcbiR0YWItbWFyZ2luOiAwO1xyXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xyXG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xyXG4kdGFiLWV4cGFuZC1tYXg6IDY7XHJcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xyXG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xyXG5cclxuLy8gNTIuIFRodW1ibmFpbFxyXG4vLyAtLS0tLS0tLS0tLS0tXHJcblxyXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcclxuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcclxuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XHJcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcclxuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gNTMuIFRpdGxlIEJhclxyXG4vLyAtLS0tLS0tLS0tLS0tXHJcblxyXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGRhcmstbmF2LWNvbG9yO1xyXG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcclxuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcclxuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XHJcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XHJcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XHJcblxyXG4vLyA1NC4gVG9vbHRpcFxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJGhhcy10aXAtY3Vyc29yOiBoZWxwO1xyXG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcclxuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xyXG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XHJcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XHJcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XHJcbiR0b29sdGlwLW1heC13aWR0aDogMTByZW07XHJcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcclxuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtO1xyXG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NjtcclxuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDU1LiBUb3AgQmFyXHJcbi8vIC0tLS0tLS0tLS0tXHJcblxyXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbTtcclxuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZDtcclxuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcclxuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XHJcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW07XHJcblxyXG4vLyA1Ni4gWHkgR3JpZFxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJHh5LWdyaWQ6IHRydWU7XHJcbiRncmlkLWNvbnRhaW5lcjogJGdsb2JhbC13aWR0aDtcclxuJGdyaWQtY29sdW1uczogMTI7XHJcbiRncmlkLW1hcmdpbi1ndXR0ZXJzOiAoXHJcbiAgc21hbGw6IDIwcHgsXHJcbiAgbWVkaXVtOiAzMHB4XHJcbik7XHJcbiRncmlkLXBhZGRpbmctZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnM7XHJcbiRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnM7XHJcbiRncmlkLWNvbnRhaW5lci1tYXg6ICRnbG9iYWwtd2lkdGg7XHJcbiR4eS1ibG9jay1ncmlkLW1heDogODtcclxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlLCAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWUpIHtcbiAgJGxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG5cbiAgQGlmIG5vdCAkc21hbGwge1xuICAgICRsaXN0OiBzbC1yZW1vdmUoJGxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIEBlYWNoICRuYW1lIGluICRsaXN0IHtcbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6ICRuYW1lICFnbG9iYWw7XG5cbiAgICBAaWYgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7XG4gICAgfVxuICAgICRoZWFkZXItc3R5bGVzOiBtYXAtbWVyZ2UoJGhlYWRlci1zdHlsZXMsICgkc2l6ZTogJGhlYWRlci1tYXApKTtcbiAgfVxuICBAcmV0dXJuICRoZWFkZXItc3R5bGVzO1xufVxuXG4vLyBJZiBpdCBleGlzdHMgJGhlYWRlcnMtc2l6ZXMgaXMgdXNlZCB0byBidWlsZCAkaGVhZGVyLXN0eWxlcy4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhoZWFkZXItc2l6ZXMpIHtcbiAgJGhlYWRlci1zdHlsZXM6IGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpO1xufVxuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYDxzbWFsbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYDxzbWFsbD5gIGVsZW1lbnRzIHdoZW4gcGxhY2VkIGluc2lkZSBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5zaWRlIGA8cD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2QgZm9yIHBhcmFncmFwaCB0ZXh0LlxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBMaXN0XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUHNldWRvIGNvbnRlbnQgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gYm9yZGVyIHN0eWxlIGZvciBgPGFiYnI+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWJhc2Uge1xuICAvLyBUeXBvZ3JhcGh5IHJlc2V0c1xuICBkaXYsXG4gIGRsLFxuICBkdCxcbiAgZGQsXG4gIHVsLFxuICBvbCxcbiAgbGksXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYsXG4gIHByZSxcbiAgZm9ybSxcbiAgcCxcbiAgYmxvY2txdW90ZSxcbiAgdGgsXG4gIHRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBhcmFncmFwaHNcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gIH1cblxuICAvLyBFbXBoYXNpemVkIHRleHRcbiAgZW0sXG4gIGkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFN0cm9uZyB0ZXh0XG4gIHN0cm9uZyxcbiAgYiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBIZWFkaW5nc1xuICBoMSwgLmgxLFxuICBoMiwgLmgyLFxuICBoMywgLmgzLFxuICBoNCwgLmg0LFxuICBoNSwgLmg1LFxuICBoNiwgLmg2IHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICBzbWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGluZyBzdHlsZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuICAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4gICAgICAgICN7JGhlYWRlcn0sIC4jeyRoZWFkZXJ9IHtcblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZzKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtdCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGhlYWRlci1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaW5rc1xuICBhIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsLFxuICBvbCxcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zXG4gIGxpIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBVbm9yZGVyZWQgbGlzdHNcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogJGxpc3Qtc3R5bGUtdHlwZTtcbiAgfVxuXG4gIC8vIE9yZGVyZWQgbGlzdHNcbiAgb2wge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gTmVzdGVkIHVub3JkZXJlZC9vcmRlcmVkIGxpc3RzXG4gIHVsLCBvbCB7XG4gICAgJiAmIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBsaXN0c1xuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LW1hcmdpbi1ib3R0b207XG5cbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tO1xuICAgICAgZm9udC13ZWlnaHQ6ICRkZWZubGlzdC10ZXJtLXdlaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBCbG9ja3F1b3Rlc1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAmLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2l0YXRpb25zXG4gIGNpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGNpdGUtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkY2l0ZS1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICRjaXRlLXBzZXVkby1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciwgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206ICRhYmJyLXVuZGVybGluZTtcbiAgICBjdXJzb3I6IGhlbHA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRmlndXJlc1xuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcblxuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gQSBsaXN0IG9mIGNvbnZlcnRlZCB2YWx1ZXMuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgLy8gVGhpcyBpcyBiZWNhdXNlIDEwMCUgZm9udCBzaXplID0gMTZweCBpbiBtb3N0IGFsbCBicm93c2Vyc1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gVXNpbmcgcmVtIGFzIGJhc2UgYWxsb3dzIGNvcnJlY3Qgc2NhbGluZ1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgJGNvdW50ID09IDEge1xuICAgIEByZXR1cm4gLXpmLXRvLXJlbSgkdmFsdWVzLCAkYmFzZSk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb3VudCB7XG4gICAgJHJlbS12YWx1ZXM6IGFwcGVuZCgkcmVtLXZhbHVlcywgLXpmLXRvLXJlbShudGgoJHZhbHVlcywgJGkpLCAkYmFzZSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVtLXZhbHVlcztcbn1cblxuLy8gQ29udmVydHMgYSB1bml0bGVzcywgcGl4ZWwsIG9yIHJlbSB2YWx1ZSB0byBlbSwgZm9yIHVzZSBpbiBicmVha3BvaW50cy5cbkBmdW5jdGlvbiAtemYtYnAtdG8tZW0oJHZhbHVlKSB7XG4gIC8vIFBpeGVsIGFuZCB1bml0bGVzcyB2YWx1ZXMgYXJlIGNvbnZlcnRlZCB0byByZW1zXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyBvciB1bml0bGVzcygkdmFsdWUpIHtcbiAgICAkdmFsdWU6IHJlbS1jYWxjKCR2YWx1ZSwgJGJhc2U6IDE2cHgpO1xuICB9XG5cbiAgLy8gVGhlbiB0aGUgdmFsdWUgaXMgY29udmVydGVkIHRvIGVtc1xuICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFlbTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwgdmFsdWUgdG8gbWF0Y2hpbmcgcmVtIHZhbHVlLiAqQW55KiB2YWx1ZSBwYXNzZWQsIHJlZ2FyZGxlc3Mgb2YgdW5pdCwgaXMgYXNzdW1lZCB0byBiZSBhIHBpeGVsIHZhbHVlLiBCeSBkZWZhdWx0LCB0aGUgYmFzZSBwaXhlbCB2YWx1ZSB1c2VkIHRvIGNhbGN1bGF0ZSB0aGUgcmVtIHZhbHVlIGlzIHRha2VuIGZyb20gdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gUGl4ZWwgdmFsdWUgdG8gY29udmVydC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gQmFzZSBmb3IgcGl4ZWwgY29udmVyc2lvbi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgbnVtYmVyIGluIHJlbXMsIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIGdpdmVuIHZhbHVlIGFuZCB0aGUgYmFzZSBwaXhlbCB2YWx1ZS4gcmVtIHZhbHVlcyBhcmUgcGFzc2VkIHRocm91Z2ggYXMgaXMuXG5AZnVuY3Rpb24gLXpmLXRvLXJlbSgkdmFsdWUsICRiYXNlOiBudWxsKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpICE9ICdudW1iZXInIHtcbiAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBUcmFuc2Zvcm0gZW0gaW50byByZW0gaWYgc29tZW9uZSBoYW5kcyBvdmVyICdlbSdzXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHJlbSBpZiB1bml0cyBmb3IgJHZhbHVlIGlzIG5vdCByZW0gb3IgZW1cbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKSAqIDFyZW07XG4gIH1cblxuICAvLyBUdXJuIDByZW0gaW50byAwXG4gIEBpZiAkdmFsdWUgPT0gMHJlbSB7XG4gICAgJHZhbHVlOiAwO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsLCBwZXJjZW50YWdlLCByZW0gb3IgZW0gdmFsdWUgdG8gYSB1bml0bGVzcyB2YWx1ZSBiYXNlZCBvbiBhIGdpdmVuIGZvbnQgc2l6ZS4gSWRlYWwgZm9yIHdvcmtpbmcgb3V0IHVuaXRsZXNzIGxpbmUgaGVpZ2h0cy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBjb252ZXJ0IHRvIGEgdW5pdGxlc3MgbGluZSBoZWlnaHRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgZm9udCBzaXplIHRvIHVzZSB0byB3b3JrIG91dCB0aGUgbGluZSBoZWlnaHQgLSBkZWZhdWx0cyB0byAkZ2xvYmFsLWZvbnQtc2l6ZVxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIFVuaXRsZXNzIG51bWJlclxuQGZ1bmN0aW9uIHVuaXRsZXNzLWNhbGMoJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIEZpcnN0LCBsZXRzIGNvbnZlcnQgb3VyICRiYXNlIHRvIHBpeGVsc1xuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBOb3cgbGV0J3MgY29udmVydCBvdXIgdmFsdWUgdG8gcGl4ZWxzIHRvb1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICclJyB7XG4gICAgJHZhbHVlOiAoJHZhbHVlIC8gMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIC8vIGFzc3VtZSB0aGF0IGxpbmUtaGVpZ2h0cyBncmVhdGVyIHRoYW4gMTAgYXJlIG1lYW50IHRvIGJlIGFic29sdXRlIGluICdweCdcbiAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICgkdmFsdWUgPiAxMCkge1xuICAgIEByZXR1cm4gJHZhbHVlIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3ViaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJoZWFkZXItY29sb3I7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYW4gaW50cm9kdWN0b3J5IGxlYWQsIGRlY2ssIGJsdXJiLCBldGMuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxlYWQtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhIGxhcmdlIG51bWJlciB0byBkaXNwbGF5IGEgc3RhdGlzdGljXG4gIC5zdGF0IHtcbiAgICBmb250LXNpemU6ICRzdGF0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHAgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cbiAgfVxuXG4gIHVsLCBvbCB7XG4gICAgLy8gVXNlIHRvIHJlbW92ZSBudW1iZXJzIGZyb20gb3JkZXJlZCBsaXN0ICYgYnVsbGV0cyBmcm9tIHVub3JkZXJlZCBsaXN0XG4gICAgJi5uby1idWxsZXQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tdGV4dC1hbGlnbm1lbnQge1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkYWxpZ24gaW4gKGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnkpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tdGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLnRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSWYgYHRydWVgLCBhbGwgZWxlbWVudHMgd2lsbCBoYXZlIHRyYW5zcGFyZW50IGJhY2tncm91bmRzIHdoZW4gcHJpbnRlZCwgdG8gc2F2ZSBvbiBpbmsuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheXMgbmV4dCB0byBhbGwgbGlua3MgdGhlaXIgXCJocmVmXCIgd2hlbiBwcmludGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYXJvdW5kIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmaWxsIGZvciBidXR0b25zLiBDYW4gZWl0aGVyIGJlIGBzb2xpZGAgb3IgYGhvbGxvd2AuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGJ1dHRvbi1maWxsOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgZm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRpdGlvbmFsIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgLmV4cGFuZGVkXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVE9ETzogRG9jdW1lbnQgYnV0dG9uLWJhc2UoKSBtaXhpblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG5cbiAgQGlmICh0eXBlLW9mKCRidXR0b24tcGFkZGluZykgPT0gJ21hcCcpIHtcbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gJGJ1dHRvbi1wYWRkaW5nIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIH1cblxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcbiAgZm9udC1mYW1pbHk6ICRidXR0b24tZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0ge1xuICAgICYsXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCwgcmVzZXRpbmcgdGhlIGN1cnNvciwgYW5kIGRpc2FibGluZyBwb2ludGVyIGV2ZW50cy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIEBpZiAkYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQge1xuICAgICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gb25seSkge1xuICAgICAgICAgICYuI3skc2l6ZX0tb25seS1leHBhbmRlZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gZG93bikge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1kb3duLWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9KSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDb2xvcnNcbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuI3skbmFtZX0uZHJvcGRvd246OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdHlsZVxuICAgICYuZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZCgkY29sb3IsIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSG9sbG93IHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgJi5ob2xsb3cge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlO1xuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDbGVhciBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gY2xlYXIge1xuICAgICAgJi5jbGVhciB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG5cbiAgICAgICAgICAgICYsICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgJixcbiAgICAgICAgICAgICAgJi5kaXNhYmxlZCxcbiAgICAgICAgICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICYuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRyb3Bkb3duO1xuXG4gICAgICBAaWYgJGJ1dHRvbi1maWxsID09IGhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5ob2xsb3csICYuY2xlYXIge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIHdpdGggZHJvcGRvd24gYXJyb3cgb25seVxuICAgICYuYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgICAgdG9wOiAtMC4xZW07XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgfVxuICB9XG5cbiAgYS5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEZvbnQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBGb250XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZm9jdXNlZCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBmb2N1c2VkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgaW5zaWRlIHRleHQgaW5wdXRzIHdoZW4gbm90IGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IG91dHNpZGUgdGV4dCBpbnB1dHMgd2hlbiBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDdXJzb3IgdG8gdXNlIHdoZW4gaG92ZXJpbmcgb3ZlciBhIGRpc2FibGVkIHRleHQgaW5wdXQuXG4vLy8gQHR5cGUgQ3Vyc29yXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8vIFByb3BlcnRpZXMgdG8gdHJhbnNpdGlvbiBvbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIHRoZSB1cC9kb3duIGJ1dHRvbnMgdGhhdCBDaHJvbWUgYW5kIEZpcmVmb3ggYWRkIHRvIGA8aW5wdXQgdHlwZT0nbnVtYmVyJz5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBSYWRpdXMgZm9yIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBmb3JtIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1idXR0b24tcmFkaXVzO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJltmb3JdIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0cyBpbnNpZGUgbGFiZWxzXG4gIGxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG4gIGxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLy8gTm9ybWFsaXplIGZpbGUgaW5wdXQgd2lkdGhcbiAgW3R5cGU9J2ZpbGUnXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogJGlucHV0LWxpbmUtaGVpZ2h0KSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgdGFibGUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAlaW5wdXQtZ3JvdXAtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1wcmVmaXgtcGFkZGluZztcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcblxuICAgIGNvbG9yOiAkaW5wdXQtcHJlZml4LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtcHJlZml4LWJvcmRlcikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIGEsXG4gICAgaW5wdXQsXG4gICAgYnV0dG9uLFxuICAgIGxhYmVsIHtcbiAgICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuXG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpZmljaXR5IGJ1bXAgbmVlZGVkIHRvIHByZXZlbnQgb3ZlcnJpZGUgYnkgYnV0dG9uc1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGJldHdlZW4gdGhlIGxlZ2VuZCB0ZXh0IGFuZCBmaWVsZHNldCBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMykgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmaWVsZHNldCB7XG4gIG1hcmdpbjogJGZpZWxkc2V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGZpZWxkc2V0LXBhZGRpbmc7XG4gIGJvcmRlcjogJGZpZWxkc2V0LWJvcmRlcjtcblxuICBsZWdlbmQge1xuICAgIC8vIENvdmVycyB1cCB0aGUgZmllbGRzZXQncyBib3JkZXIgdG8gY3JlYXRlIGFydGlmaWNpYWwgcGFkZGluZ1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiByZW0tY2FsYygtMyk7XG4gICAgcGFkZGluZzogJGxlZ2VuZC1wYWRkaW5nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQge1xuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC5maWVsZHNldCB7XG4gICAgQGluY2x1ZGUgZmllbGRzZXQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgJHNlbGVjdC10cmlhbmdsZS1jb2xvciAhPSB0cmFuc3BhcmVudCB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC10cmlhbmdsZSgkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGdsb2JhbC1yaWdodCAoLSRmb3JtLXNwYWNpbmcpIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcblxuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuICB9XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IHNob3duIGluIG5ld2VyIElFIHZlcnNpb25zXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1zZWxlY3Qge1xuICBzZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tc2VsZWN0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhYmlkZVxuLy8vL1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGlucHV0cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtaW5wdXRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGxhYmVscy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtbGFiZWxzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciB0byB1c2UgZm9yIGludmFsaWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB0byB1c2UgZm9yIGxhYmVscyBvZiBpbnZhbGlkIGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyIG9mIGFuIGlucHV0IGZpZWxkIHRvIGhhdmUgYW4gZXJyb3Igc3RhdGUuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGFsZXJ0LWNvbG9yXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhY2tncm91bmQtbGlnaHRlbiBbMTAlXSAtIExpZ2h0bmVzcyBsZXZlbCBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBmb3JtLWlucHV0LWVycm9yKFxuICAkYmFja2dyb3VuZDogJGlucHV0LWJhY2tncm91bmQtaW52YWxpZCxcbiAgJGJhY2tncm91bmQtbGlnaHRlbjogMTAlXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoJGJhY2tncm91bmQsICR3aGl0ZSwgJGJhY2tncm91bmQtbGlnaHRlbik7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGVycm9yIHN0eWxlcyB0byBhIGZvcm0gZWxlbWVudCwgdXNpbmcgdGhlIHZhbHVlcyBpbiB0aGUgc2V0dGluZ3MgZmlsZS5cbkBtaXhpbiBmb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2luZyAqIC0wLjU7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBhY2NvcmRpb24gdGl0bGVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhbiBhY2NvcmRpb24gaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciAoXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWJhY2tncm91bmRcbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICZbZGlzYWJsZWRdIHtcbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaXN0IGl0ZW0gd2l0aGluIGFuIGFjY29yZGlvbiB1bC5cbkBtaXhpbiBhY2NvcmRpb24taXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzIDAgMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgdGl0bGUgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpbmsgd2l0aGluIGFuIGFjY29yZGlvbiBpdGVtLlxuQG1peGluIGFjY29yZGlvbi10aXRsZSAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJGFjY29yZGlvbi10aXRsZS1mb250LXNpemUsXG4gICRjb2xvcjogJGFjY29yZGlvbi1pdGVtLWNvbG9yLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAmIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG5cbiAgQGlmICRhY2NvcmRpb24tcGx1c21pbnVzIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICB9XG5cbiAgICAuaXMtYWN0aXZlID4gJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMTMnO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFjY29yZGlvbiBjb250ZW50LiBBcHBseSB0aGlzIHRvIHRoZSBjb250ZW50IHBhbmUgYmVsb3cgYW4gYWNjb3JkaW9uIGl0ZW0ncyB0aXRsZS5cbkBtaXhpbiBhY2NvcmRpb24tY29udGVudCAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZyxcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRhY2NvcmRpb24tY29udGVudC1jb2xvclxuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZCA+ICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24ge1xuICAuYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGFpbmVyO1xuICB9XG5cbiAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24taXRlbTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi10aXRsZTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uLW1lbnVcbi8vLy9cblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBhY2NvcmRpb24gbWVudXMgaGF2ZSB0aGUgZGVmYXVsdCBhcnJvdyBzdHlsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIGJvcmRlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtYm9yZGVyOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBMaXN0XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHRvZ2dsZSBiYWNrZ3JvdW5kIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgdG9nZ2xlIGJhY2tncm91bmQgaGVpZ2h0LlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtYWNjb3JkaW9uLW1lbnUtbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplLCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogKCRhY2NvcmRpb25tZW51LWFycm93LXNpemUgLyAyKTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi1sZWZ0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG59XG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudSB7XG5cbiAgLmFjY29yZGlvbi1tZW51IHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgICBib3JkZXItcmlnaHQ6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgIH1cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgQGlmICRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGEge1xuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luLCByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1hY2NvcmRpb24tbWVudS1sZWZ0LXJpZ2h0LWFycm93cztcblxuICAgICAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGxpIHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5oYXMtc3VibWVudS10b2dnbGUgPiBhIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4gIH1cblxuICAvLyBTdWJtZW51IHRvZ2dsZVxuICAuc3VibWVudS10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMDtcblxuICAgIHdpZHRoOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyO1xuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAvLyBBZGQgdGhlIGFycm93IHRvIHRoZSB0b2dnbGVcbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoNnB4LCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG5cbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gIH1cblxuICAvLyBSb3RhdGUgdGhlIGFycm93IHdoZW4gbWVudSBpcyBvcGVuXG4gIC5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ106OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgfVxuXG4gIC5zdWJtZW51LXRvZ2dsZS10ZXh0IHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVudVxuLy8vL1xuXG4vLy8gTWFyZ2luIG9mIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIExlZnQtaGFuZCBtYXJnaW4gb2YgYSBuZXN0ZWQgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgaXRlbXMgaW4gYSBwaWxsIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBzaW1wbGUgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBzdGF0ZS4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYGFjdGl2ZWAgd2l0aCBgaXMtYWN0aXZlYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYGFjdGl2ZWAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBjZW50ZXJlZC4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYC5tZW51LWNlbnRlcmVkID4gLm1lbnVgIHdpdGggYC5tZW51LmFsaWduLWNlbnRlcmAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBtZW51LWNlbnRlcmVkYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciB1c2luZyBgaWNvbi0qYCBjbGFzc2VzIHdpdGhvdXQgYC5pY29uc2AgY2xhc3Nlc1xuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IHRoaXMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxuXG4gIGEsXG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgcG9zaXRpb24gY2xhc3NlcyBmb3IgaWNvbnMgd2l0aGluIGEgbWVudS5cbkBtaXhpbiBtZW51LWljb24tcG9zaXRpb24oJHBvc2l0aW9uOiBsZWZ0LCAkc3BhY2luZzogJG1lbnUtaWNvbi1zcGFjaW5nKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nIGF1dG8gMDtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBtZW51LXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gIGNvbG9yOiAkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQnJlYWtwb2ludCBzcGVjaWZpYyB2ZXJzaW9uc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiBmYWxzZSkge1xuICAgICAgJi4jeyQtemYtc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tc2ltcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEljb24gQmFzZSBTdHlsZXNcbiAgICAmLmljb25zIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LWljb25zLWJhY2stY29tcGF0IHtcbiAgICAgICYuaWNvbi10b3AsXG4gICAgICAmLmljb24tcmlnaHQsXG4gICAgICAmLmljb24tYm90dG9tLFxuICAgICAgJi5pY29uLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEljb24gTGVmdFxuICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFJpZ2h0XG4gICAgJi5pY29uLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihyaWdodCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBUb3BcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbih0b3ApO1xuICAgIH1cblxuICAgIC8vIEljb24gQm90dG9tXG4gICAgJi5pY29uLWJvdHRvbSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24oYm90dG9tKTtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LXN0YXRlLWJhY2stY29tcGF0IHtcbiAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gbGVmdFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLWxlZnR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihyaWdodCk7XG5cbiAgICAgIC5uZXN0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkbmVzdGVkLWFsaWdubWVudDogcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGNlbnRlclxuICAgICYuYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICB9XG5cbiAgICAubWVudS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQge1xuICAgIC5tZW51LWNlbnRlcmVkIHtcbiAgICAgID4gLm1lbnUge1xuICAgICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBiYWRnZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGJhZGdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgYSBiYWRnZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1taW53aWR0aDogMi4xZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBiYWRnZS5cbkBtaXhpbiBiYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAkYmFkZ2UtbWlud2lkdGg7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICBmb250LXNpemU6ICRiYWRnZS1mb250LXNpemU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tYmFkZ2Uge1xuICAuYmFkZ2Uge1xuICAgIEBpbmNsdWRlIGJhZGdlO1xuXG4gICAgYmFja2dyb3VuZDogJGJhZGdlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYWRnZS1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJhZGdlLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGJhZGdlLWNvbG9yLCAkYmFkZ2UtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVhZGNydW1ic1xuLy8vL1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBhY3RpdmUgYnJlYWRjcnVtYiBsaW5rLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBPcGFjaXR5IG9mIGRpc2FibGVkIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnJlYWRjcnVtYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgbWFrZXMgYnJlYWRjcnVtYiBsaW5rcyB1cHBlcmNhc2UuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIGEgc2VwZXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g7XG59XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLycgIWRlZmF1bHQ7XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yIGluIHJ0bCBtb2RlLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lciwgYWxvbmcgd2l0aCB0aGUgc3R5bGVzIGZvciB0aGUgYDxsaT5gIGFuZCBgPGE+YCBlbGVtZW50cyBpbnNpZGUgb2YgaXQuXG5AbWl4aW4gYnJlYWRjcnVtYnMtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJGJyZWFkY3J1bWJzLW1hcmdpbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAvLyBJdGVtIHdyYXBwZXJcbiAgbGkge1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgICBmb250LXNpemU6ICRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvciB7XG4gICAgICAvLyBOZWVkIHRvIGVzY2FwZSB0aGUgYmFja3NsYXNoXG4gICAgICAkc2VwYXJhdG9yOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdsdHInLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbSwgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsKTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW46IDAgJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgY29udGVudDogJHNlcGFyYXRvcjtcbiAgICAgICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1icmVhZGNydW1icyB7XG4gIC5icmVhZGNydW1icyB7XG4gICAgQGluY2x1ZGUgYnJlYWRjcnVtYnMtY29udGFpbmVyO1xuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b24tZ3JvdXBcbi8vLy9cblxuLy8vIE1hcmdpbiBmb3IgYnV0dG9uIGdyb3Vwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJyAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gbnVtYmVyIG9mIGJ1dHRvbnMgdGhhdCBjYW4gYmUgaW4gYW4gZXZlbi13aWR0aCBidXR0b24gZ3JvdXAuIChPbmx5IG5lZWRlZCB3aGVuICRnbG9iYWwtZmxleGJveDogZmFsc2U7KVxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDYgIWRlZmF1bHQ7XG5cbi8vLyBEZXRlcm1pbmVzIGlmICRidXR0b24tcmFkaXVzIGlzIGFwcGxpZWQgdG8gZWFjaCBidXR0b24gb3IgdGhlIGJ1dHRvbiBncm91cCBhcyBhIHdob2xlLiBVc2UgJGdsb2JhbC1yYWRpdXMgaW4gX3NldHRpbmdzLnNjc3MgdG8gY2hhbmdlIHJhZGl1cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGQgc3R5bGVzIGZvciBhIGJ1dHRvbiBncm91cCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjaGlsZC1zZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAoXG4gICRjaGlsZC1zZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkc3BhY2luZzogJGJ1dHRvbmdyb3VwLXNwYWNpbmdcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLWJvdHRvbTogJGJ1dHRvbmdyb3VwLW1hcmdpbjtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG4gIEBlbHNlIHtcbiAgICBmb250LXNpemU6IDA7XG4gIH1cblxuICAjeyRjaGlsZC1zZWxlY3Rvcn0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgfVxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtd2lkdGggYnV0dG9uIGdyb3VwLCBtYWtpbmcgZWFjaCBidXR0b24gZXF1YWwgd2lkdGguXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtZXhwYW5kKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJHNwYWNpbmc6ICRidXR0b25ncm91cC1zcGFjaW5nLFxuICAkY291bnQ6IG51bGxcbikge1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IC0kc3BhY2luZztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBPbmUgY2hpbGRcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRzcGFjaW5nfSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gVHdvIG9yIG1vcmUgY2hpbGRyZWVuXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRidXR0b25ncm91cC1leHBhbmQtbWF4IHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICAgICYsICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIH4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7cGVyY2VudGFnZSgxIC8gJGkpfSAtICN7JHNwYWNpbmd9KTtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nICogLSRidXR0b25ncm91cC1leHBhbmQtbWF4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi8vLyBVbi1zdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtdW5zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cCB7XG4gIC5idXR0b24tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cDtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBHcm91cFxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDtcbiAgICB9XG5cbiAgICAvLyBDb2xvcnNcbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAmLiN7JG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQsXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbCxcbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3RhY2s7XG5cbiAgICAgICYuZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYWxsb3V0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmFkZSB2YWx1ZSBmb3IgY2FsbG91dCBiYWNrZ3JvdW5kcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIExpc3RcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGlubmVyIHBhZGRpbmcgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLCBpZiB0aGUgY2FsbG91dCBoYXMgYSBkYXJrIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFtb3VudCB0byB0aW50IGxpbmtzIHVzZWQgd2l0aGluIGNvbG9yZWQgcGFuZWxzLiBTZXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIHRoaXMgZmVhdHVyZS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBCb29sZWFuXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhIGNhbGxvdXQsIGluY2x1ZGluZyBwYWRkaW5nIGFuZCBtYXJnaW4uXG5AbWl4aW4gY2FsbG91dC1iYXNlKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogJGNhbGxvdXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkY2FsbG91dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGNhbGxvdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkY2FsbG91dC1yYWRpdXM7XG5cbiAgLy8gUmVzcGVjdCB0aGUgcGFkZGluZywgZm9vbC5cbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBxdWljayBzdHlsZXMgZm9yIGEgY2FsbG91dCB1c2luZyBhIHNpbmdsZSBjb2xvciBhcyBhIGJhc2VsaW5lLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dC1zdHlsZSgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgJGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkY2FsbG91dC1mb250LWNvbG9yLCAkY2FsbG91dC1mb250LWNvbG9yLWFsdCkpO1xufVxuXG5AbWl4aW4gY2FsbG91dC1zaXplKCRwYWRkaW5nKSB7XG4gIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZztcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FsbG91dC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbiAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYWxsb3V0IHtcbiAgLmNhbGxvdXQge1xuICAgIEBpbmNsdWRlIGNhbGxvdXQ7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgwLjVyZW0pO1xuICAgIH1cblxuICAgICYubGFyZ2Uge1xuICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKDNyZW0pO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FyZFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhcmRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNhcmQgc2hhZG93LlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbi5cbi8vLyBAdHlwZSBudW1iZXJcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIGZvbnQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gLSBCb3R0b20gbWFyZ2luIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGJvcmRlciAtIEJvcmRlciBhcm91bmQgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmFkaXVzIC0gYm9yZGVyIHJhZGl1cyBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaGFkb3cgLSBib3ggc2hhZG93IG9mIHRoZSBjYXJkLlxuQG1peGluIGNhcmQtY29udGFpbmVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkY2FyZC1mb250LWNvbG9yLFxuICAkbWFyZ2luOiAkY2FyZC1tYXJnaW4tYm90dG9tLFxuICAkYm9yZGVyOiAkY2FyZC1ib3JkZXIsXG4gICRyYWRpdXM6ICRjYXJkLWJvcmRlci1yYWRpdXMsXG4gICRzaGFkb3c6ICRjYXJkLXNoYWRvd1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cblxuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcblxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBkaXZpZGVyLlxuQG1peGluIGNhcmQtZGl2aWRlcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWRpdmlkZXItYmFja2dyb3VuZCxcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBzZWN0aW9uLlxuQG1peGluIGNhcmQtc2VjdGlvbihcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYXJkIHtcbiAgLmNhcmQge1xuICAgIEBpbmNsdWRlIGNhcmQtY29udGFpbmVyO1xuICB9XG5cbiAgLmNhcmQtZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgY2FyZC1kaXZpZGVyO1xuICB9XG5cbiAgLmNhcmQtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgY2FyZC1zZWN0aW9uO1xuICB9XG5cbiAgLy8gRm9yIElFIDExIC0gRmxleGJ1Z1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzL2lzc3Vlcy83NVxuICAuY2FyZC1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjbG9zZS1idXR0b25cbi8vLy9cblxuLy8vIERlZmF1bHQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVGhlIGZpcnN0IHZhbHVlIHNob3VsZCBiZSBgcmlnaHRgIG9yIGBsZWZ0YCwgYW5kIHRoZSBzZWNvbmQgdmFsdWUgc2hvdWxkIGJlIGB0b3BgIG9yIGBib3R0b21gLlxuLy8vIEB0eXBlIExpc3RcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgKG9yIGxlZnQpIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVG9wIChvciBib3R0b20pIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBjbG9zZSBidXR0b24uIEl0IGFmZmVjdHMgdGhlIHNwYWNpbmcgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uIHdoZW4gYmVpbmcgaG92ZXJlZCBvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2sgIWRlZmF1bHQ7XG5cblxuLy8vIEdldCB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gZm9yIGEgY2xvc2UgYnV0dG9uLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBudW1iZXIsIHRoZSBudW1iZXIgaXMgcmV0dXJuZWQuIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIGNvbmZpZyBtYXAgYW5kIHRoZSBtYXAgaGFzIHRoZSBrZXkgYCRzaXplYCwgdGhlIHZhbHVlIGlzIHJldHVybmVkLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkdmFsdWUgLSBBIG51bWJlciBvciBtYXAgdGhhdCByZXByZXNlbnRzIHRoZSBzaXplIG9yIHBvc2l0aW9uIHZhbHVlKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIFRoZSBzaXplIG9mIHRoZSBjbG9zZSBidXR0b24gdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSBUaGUgZ2l2ZW4gbnVtYmVyIG9yIHRoZSB2YWx1ZSBmb3VuZCBpbiB0aGUgbWFwLlxuQGZ1bmN0aW9uIC16Zi1nZXQtc2l6ZS12YWwoJHZhbHVlLCAkc2l6ZSkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgLy8gSWYgaXQgaXMsIGp1c3QgcmV0dXJuIHRoZSBudW1iZXJcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBzaXplIG5hbWUgZXhpc3RzIGluIHRoZSB2YWx1ZSBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJHZhbHVlLCAkc2l6ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHZhbHVlLCAkc2l6ZSk7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW21lZGl1bV0gLSBUaGUgc2l6ZSB0byB1c2UuIFNldCB0byBgc21hbGxgIHRvIGNyZWF0ZSBhIHNtYWxsIGNsb3NlIGJ1dHRvbi4gVGhlICdtZWRpdW0nIHZhbHVlcyBkZWZpbmVkIGluIGAkY2xvc2VidXR0b24tKmAgdmFyaWFibGVzIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCBzaXplIGFuZCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuQG1peGluIGNsb3NlLWJ1dHRvbi1zaXplKCRzaXplKSB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gICN7JHh9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbCwgJHNpemUpO1xuICAjeyR5fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsLCAkc2l6ZSk7XG4gIGZvbnQtc2l6ZTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tc2l6ZSwgJHNpemUpO1xuICBsaW5lLWhlaWdodDogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tbGluZWhlaWdodCwgJHNpemUpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2xvc2UgYnV0dG9uLCB1c2luZyB0aGUgc3R5bGVzIGluIHRoZSBzZXR0aW5ncyB2YXJpYWJsZXMuXG5AbWl4aW4gY2xvc2UtYnV0dG9uIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbjtcblxuICAgICYuc21hbGwgeyBAaW5jbHVkZSBjbG9zZS1idXR0b24tc2l6ZShzbWFsbCkgfVxuICAgICYsICYubWVkaXVtIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUobWVkaXVtKSB9XG4gIH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUtaWNvbiB7XG4gIC5tZW51LWljb24ge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigkY29sb3I6ICR0aXRsZWJhci1pY29uLWNvbG9yLCAkY29sb3ItaG92ZXI6ICR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyKTtcbiAgfVxuXG4gIC5tZW51LWljb24uZGFyayB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcmlsbGRvd25cbi8vLy9cblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydHkgdG8gdXNlIGZvciBhbmltYXRpbmcgbWVudXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBhcnJvd3MgdG8gZHJpbGxkb3duIGl0ZW1zIHdpdGggc3VibWVudXMsIGFzIHdlbGwgYXMgdGhlIGJhY2sgYnV0dG9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgaXRlbSBwYWRkaW5nIGluIHRoZSBzdWJtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biBzdWJtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1yaWdodCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyaWxsZG93bi1hcnJvdy1zaXplO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLWxlZnQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG5cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnUge1xuICAvLyBBcHBsaWVkIHRvIHRoZSBNZW51IGNvbnRhaW5lclxuICAuaXMtZHJpbGxkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYuYW5pbWF0ZS1oZWlnaHQge1xuICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhlIHRvcCBsZXZlbCA8dWw+XG4gIC5kcmlsbGRvd24ge1xuICAgIGEge1xuICAgICAgcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xuICAgICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIC8vIEFwcGxpZWQgdG8gc3VibWVudSA8dWw+c1xuICAgIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgICB6LWluZGV4OiAtMTtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICAgIHRyYW5zaXRpb246ICRkcmlsbGRvd24tdHJhbnNpdGlvbjtcblxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAtMTAwJSwgMTAwJSkpO1xuICAgICAgfVxuXG4gICAgICAmLmlzLWNsb3Npbmcge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIDEwMCUsIC0xMDAlKSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFN1Ym1lbnUgaXRlbSBwYWRkaW5nXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkZHJpbGxkb3duLW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiAkZHJpbGxkb3duLWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG5cbiAgICAgIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtbGVmdCk7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNzVyZW07IC8vIENyZWF0ZXMgc3BhY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93blxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGRyb3Bkb3duIHBhbmVzLiBFYWNoIHNpemUgaXMgYSBDU1MgY2xhc3MgeW91IGNhbiBhcHBseS5cbi8vLyBAdHlwZSBNYXBcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIGEgYmFzaWMgZHJvcGRvd24uXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcblxuICBkaXNwbGF5OiBub25lO1xuXG4gIHdpZHRoOiAkZHJvcGRvd24td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nO1xuXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkZHJvcGRvd24tcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmFja2dyb3VuZDtcblxuICBmb250LXNpemU6ICRkcm9wZG93bi1mb250LXNpemU7XG5cblxuICAvLyBBbGxvdyBhbiBpbnRlcm1pdHRlbnQgc3RhdGUgdG8gZG8gcG9zaXRpb25pbmcgYmVmb3JlIG1ha2luZyB2aXNpYmxlLlxuICAmLmlzLW9wZW5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJi5pcy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLXBhbmUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcjtcbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkZHJvcGRvd24tc2l6ZXMge1xuICAgIC5kcm9wZG93bi1wYW5lIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHBhZGRpbmcgZm9yIGFsaWduaW5nIHRoZSBhcnJvdyBjb3JyZWN0bHkuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHN1Yi1tZW51IGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBCb3JkZXIgd2lkdGggZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vIFVzZWQgdG8gYWRqdXN0IHRvcCBtYXJnaW4gb2YgYSBzdWItbWVudSBpZiBhIGJvcmRlciBpcyB1c2VkLlxuLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aDogbnRoKCRkcm9wZG93bm1lbnUtYm9yZGVyLCAxKTtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG5cbiAgJi5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgPiBsaS5vcGVucy1sZWZ0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpLm9wZW5zLXJpZ2h0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZztcbiAgICAgIH1cblxuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplIC8gMik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgID4gbGkge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtbGVmdCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtcmlnaHQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93bi1tZW51IHtcbiAgLmRyb3Bkb3duLm1lbnUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgfVxuXG4gICAgLy8gVG9wLWxldmVsIGl0ZW1cbiAgICA+IGxpID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLy8gVG9wLWxldmVsIGl0ZW0gYWN0aXZlIHN0YXRlXG4gICAgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLm5vLWpzICYgdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LWhvcml6b250YWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi4jeyRzaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgICB3aWR0aDogMTAwcHg7XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGE6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJvcGRvd25tZW51LWFycm93LXNpemU7XG4gICAgfVxuXG4gICAgJi5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcblxuICAgICAgdG9wOiAxMDAlO1xuICAgICAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogMTtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAkZHJvcGRvd25tZW51LW1pbi13aWR0aDtcblxuICAgIGJvcmRlcjogJGRyb3Bkb3dubWVudS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ7XG5cbiAgICAuZHJvcGRvd24gJiBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKHR5cGUtb2YoJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpID09ICdudW1iZXInKSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gW1RPRE9dIEN1dCBiYWNrIHNwZWNpZmljaXR5XG4gICAgLy8mOm5vdCguanMtZHJvcGRvd24tbm9ob3ZlcikgPiAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ6aG92ZXIgPiAmLCAvLyB3aHkgaXMgdGhpcyBsaW5lIG5lZWRlZD8gT3BlbmluZyBpcyBoYW5kbGVkIGJ5IEpTIGFuZCB0aGlzIGNhdXNlcyBzb21lIHVnbHkgZmxpY2tlcmluZyB3aGVuIHRoZSBzdWIgaXMgcmUtcG9zaXRpb25lZCBhdXRvbWF0aWNhbGx5Li4uXG4gICAgJi5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXNwb25zaXZlLWVtYmVkXG4vLy8vXG5cbi8vLyBNYXJnaW4gYmVsb3cgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEFzcGVjdCByYXRpb3MgdXNlZCB0byBkZXRlcm1pbmUgcGFkZGluZy1ib3R0b20gb2YgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXJzLlxuLy8vIEB0eXBlIE1hcFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd8TGlzdH0gJHJhdGlvIFtkZWZhdWx0XSAtIFJhdGlvIG9mIHRoZSBjb250YWluZXIuIENhbiBiZSBhIGtleSBmcm9tIHRoZSBgJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zYCBtYXAgb3IgYSBsaXN0IGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbkBtaXhpbiByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCkge1xuICBAaWYgdHlwZS1vZigkcmF0aW8pID09ICdzdHJpbmcnIHtcbiAgICAkcmF0aW86IG1hcC1nZXQoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLCAkcmF0aW8pO1xuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tO1xuICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBlbWJlZCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkIHtcbiAgLnJlc3BvbnNpdmUtZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCk7XG5cbiAgICAkcmF0aW9zOiBtYXAtcmVtb3ZlKCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcyxkZWZhdWx0KTtcblxuICAgIEBlYWNoICRuYW1lLCAkcmF0aW8gaW4gJHJhdGlvcyB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gRmluZHMgdGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yIG9mIHR3byBpbnRlZ2Vycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYSAtIEZpcnN0IG51bWJlciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYiAtIFNlY29uZCBudW1iZXIgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvci5cbkBmdW5jdGlvbiBnY2QoJGEsICRiKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9HcmVhdGVzdF9jb21tb25fZGl2aXNvciNKYXZhU2NyaXB0XG4gIEBpZiAoJGIgIT0gMCkge1xuICAgIEByZXR1cm4gZ2NkKCRiLCAkYSAlICRiKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBhYnMoJGEpO1xuICB9XG59XG5cbi8vLyBIYW5kbGVzIGRlY2ltYWwgZXhwb25lbnRzIGJ5IHRyeWluZyB0byBjb252ZXJ0IHRoZW0gaW50byBhIGZyYWN0aW9uIGFuZCB0aGVuIHVzZSBhIG50aC1yb290LWFsZ29yaXRobSBmb3IgcGFydHMgb2YgdGhlIGNhbGN1bGF0aW9uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgYmFzZSBudW1iZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRleHBvbmVudCAtIFRoZSBleHBvbmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBwcm9kdWN0IG9mIHRoZSBleHBvbmVudGlhdGlvbi5cbkBmdW5jdGlvbiBwb3coJGJhc2UsICRleHBvbmVudCwgJHByZWM6IDE2KSB7XG4gIEBpZiAoZmxvb3IoJGV4cG9uZW50KSAhPSAkZXhwb25lbnQpIHtcbiAgICAkcHJlYzIgOiBwb3coMTAsICRwcmVjKTtcbiAgICAkZXhwb25lbnQ6IHJvdW5kKCRleHBvbmVudCAqICRwcmVjMik7XG4gICAgJGRlbm9taW5hdG9yOiBnY2QoJGV4cG9uZW50LCAkcHJlYzIpO1xuICAgIEByZXR1cm4gbnRoLXJvb3QocG93KCRiYXNlLCAkZXhwb25lbnQgLyAkZGVub21pbmF0b3IpLCAkcHJlYzIgLyAkZGVub21pbmF0b3IsICRwcmVjKTtcbiAgfVxuXG4gICR2YWx1ZTogJGJhc2U7XG4gIEBpZiAkZXhwb25lbnQgPiAxIHtcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZXhwb25lbnQgPCAxIHtcbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoIC0kZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgLyAkYmFzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIG50aC1yb290KCRudW0sICRuOiAyLCAkcHJlYzogMTIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL050aF9yb290I0phdmFTY3JpcHRcbiAgJHg6IDE7XG5cbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkcHJlYyB7XG4gICAgJHg6IDEgLyAkbiAqICgoJG4gLSAxKSAqICR4ICsgKCRudW0gLyBwb3coJHgsICRuIC0gMSkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHg7XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBoZWlnaHQgYXMgYSBwZXJjZW50YWdlIG9mIHRoZSB3aWR0aCBmb3IgYSBnaXZlbiByYXRpby5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYXRpbyAtIFJhdGlvIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIGhlaWdodCwgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuLy8vIEByZXR1cm4ge051bWJlcn0gQSBwZXJjZW50YWdlIHZhbHVlIGZvciB0aGUgaGVpZ2h0IHJlbGF0aXZlIHRvIHRoZSB3aWR0aCBvZiBhIHJlc3BvbnNpdmUgY29udGFpbmVyLlxuQGZ1bmN0aW9uIHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKSB7XG4gICR3OiBudGgoJHJhdGlvLCAxKTtcbiAgJGg6IG50aCgkcmF0aW8sIDMpO1xuICBAcmV0dXJuICRoIC8gJHcgKiAxMDAlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbGFiZWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGUgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgb2YgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYmFzZSBzdHlsZXMgZm9yIGEgbGFiZWwuXG5AbWl4aW4gbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRsYWJlbC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICRsYWJlbC1yYWRpdXM7XG5cbiAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1sYWJlbCB7XG4gIC5sYWJlbCB7XG4gICAgQGluY2x1ZGUgbGFiZWw7XG5cbiAgICBiYWNrZ3JvdW5kOiAkbGFiZWwtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkbGFiZWwtcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkbGFiZWwtY29sb3IsICRsYWJlbC1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lZGlhLW9iamVjdFxuLy8vL1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIExlZnQgYW5kIHJpZ2h0IHBhZGRpbmcgb24gc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggb2YgaW1hZ2VzIHdpdGhpbiBhIG1lZGlhIG9iamVjdCwgd2hlbiB0aGUgb2JqZWN0IGlzIHN0YWNrZWQgdmVydGljYWxseS4gU2V0IHRvICdhdXRvJyB0byB1c2UgdGhlIGltYWdlJ3MgbmF0dXJhbCB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbWVkaWEgb2JqZWN0IGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3QtY29udGFpbmVyIHtcbiAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCBibG9jayk7XG4gIG1hcmdpbi1ib3R0b206ICRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG5cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmddIC0gUGFkZGluZyBiZXR3ZWVuIHNlY3Rpb25zLlxuQG1peGluIG1lZGlhLW9iamVjdC1zZWN0aW9uKCRwYWRkaW5nOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRwYWRkaW5nO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtbGVmdH06ICRwYWRkaW5nO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0gJiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgJi5tYWluLXNlY3Rpb24ge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICYubWlkZGxlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgJi5ib3R0b20ge1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIHN0YWNrIHNlY3Rpb25zIG9mIGEgbWVkaWEgb2JqZWN0LiBBcHBseSB0aGlzIHRvIHRoZSBzZWN0aW9uIGVsZW1lbnRzLCBub3QgdGhlIGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc3RhY2sge1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZztcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAkbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZWRpYS1vYmplY3Qge1xuICAubWVkaWEtb2JqZWN0IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3QtY29udGFpbmVyO1xuICB9XG5cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc2VjdGlvbjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb2ZmLWNhbnZhc1xuLy8vL1xuXG4vLy8gV2lkdGggbWFwIG9mIGEgbGVmdC9yaWdodCBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE1hcFxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG1hcCBvZiBhIHRvcC9ib3R0b20gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBNYXBcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgZm9yIHRoZSBvZmYtY2FudmFzIG92ZXJsYXAgcGFuZWwuXG4vLy8gQHR5cGUgU2hhZG93XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNykgIWRlZmF1bHQ7XG5cbi8vLyBJbm5lciBib3ggc2hhZG93IHNpemUgZm9yIHRoZSBvZmYtY2FudmFzIHB1c2ggcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4ICFkZWZhdWx0O1xuXG4vLy8gSW5uZXIgYm94IHNoYWRvdyBjb2xvciBmb3IgdGhlIG9mZi1jYW52YXMgcHVzaCBwYW5lbC5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBjb250ZW50IG92ZXJsYXkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB3aXRoIHRoZSBgcHVzaGAgdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHdpdGggdGhlIGBvdmVybGFwYCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTMgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgdXNpbmcgdGhlIGByZXZlYWwtZm9yLSpgIGNsYXNzZXMgb3IgbWl4aW4uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyICFkZWZhdWx0O1xuXG4vLy8gTGVuZ3RoIG9mIHRoZSBhbmltYXRpb24gb24gYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXMgIWRlZmF1bHQ7XG5cbi8vLyBUaW1pbmcgZnVuY3Rpb24gb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGEgcmV2ZWFsZWQgb2ZmLWNhbnZhcyB3aWxsIGJlIGZpeGVkLXBvc2l0aW9uLCBhbmQgc2Nyb2xsIHdpdGggdGhlIHNjcmVlbi5cbi8vLyBAdHlwZSBCb29sXG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBvdmVybGF5IHRoYXQgYXBwZWFycyB3aGVuIGFuIG9mZi1jYW52YXMgcGFuZWwgaXMgb3Blbi5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIENTUyBjbGFzcyB1c2VkIGZvciB0aGUgbWFpbiBjb250ZW50IGFyZWEuIFRoZSBvZmYtY2FudmFzIG1peGlucyB1c2UgdGhpcyB0byB0YXJnZXQgdGhlIHBhZ2UgY29udGVudC5cbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCcgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2VsaW5lIHN0eWxlcyBmb3Igb2ZmLWNhbnZhcy4gVGhpcyBDU1MgaXMgcmVxdWlyZWQgdG8gbWFrZSB0aGUgb3RoZXIgcGllY2VzIHdvcmsuXG5AbWl4aW4gb2ZmLWNhbnZhcy1iYXNpY3Mge1xuXG4gIC8vLyBUcmFuc2Zvcm0gZGVwcmVjYXRlZCBzaXplIHNldHRpbmdzIGludG8gbWFwICYgc2hvdyB3YXJuaW5nXG4gIEBpZiB2YXJpYWJsZS1leGlzdHMob2ZmY2FudmFzLXNpemUpIHtcbiAgICAkb2ZmY2FudmFzLXNpemVzOiAoc21hbGw6ICRvZmZjYW52YXMtc2l6ZSwgbWVkaXVtOiAkb2ZmY2FudmFzLXNpemUpICFnbG9iYWw7XG4gICAgQHdhcm4gJyRvZmZjYW52YXMtc2l6ZSBpcyBkZXByZWNhdGVkIGFuZCBub3QgdXNlZCBhbnltb3JlISBQbGVhc2UgdXBkYXRlIHlvdXIgc2V0dGluZ3MgYW5kIHVzZSB0aGUgbWFwICRvZmZjYW52YXMtc2l6ZXMgaW5zdGVhZCc7XG4gIH1cbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhvZmZjYW52YXMtdmVydGljYWwtc2l6ZSkge1xuICAgICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChzbWFsbDogJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplLCBtZWRpdW06ICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSkgIWdsb2JhbDtcbiAgICBAd2FybiAnJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplIGlzIGRlcHJlY2F0ZWQgYW5kIG5vdCB1c2VkIGFueW1vcmUhIFBsZWFzZSB1cGRhdGUgeW91ciBzZXR0aW5ncyBhbmQgdXNlIHRoZSBtYXAgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplcyBpbnN0ZWFkJztcbiAgfVxuXG4gIC8vIENoZWNrcyB0aGUgei1pbmRleGVzIGFuZCBpbmNyZWFzZSB0aGVtIGR1ZSB0byBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS5cbiAgLy8gVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSB0aGUgb3ZlcmxheSdzIHotaW5kZXggaXMgbmV3IHNpbmNlIHY2LjQgYW5kIG1heSBiZSBpZGVudGljYWwgdG8gdGhlIHVzZXIgY3VzdG9tIHNldHRpbmdzIG9mIHRoZSBwdXNoIHotaW5kZXguXG4gIEBpZiAkb2ZmY2FudmFzLXB1c2gtemluZGV4IDw9ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggeyAkb2ZmY2FudmFzLXB1c2gtemluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4ICsgMSAhZ2xvYmFsOyB9XG4gIEBpZiAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4IDw9ICRvZmZjYW52YXMtcHVzaC16aW5kZXggeyAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4ICsgMSAhZ2xvYmFsOyB9XG4gIEBpZiAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXggPD0gJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCB7ICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCArIDEgIWdsb2JhbDsgfVxuXG4gIC8vIEhpZGVzIG92ZXJmbG93IG9uIGJvZHkgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4gIC5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIG92ZXJsYXkgKGdlbmVyYXRlZCBieSBKYXZhU2NyaXB0KVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLCB2aXNpYmlsaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcblxuICAgIGJhY2tncm91bmQ6ICRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kO1xuXG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgICYuaXMtY2xvc2FibGUge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICYuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgJi5pcy1vdmVybGF5LWZpeGVkIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGFuIG9mZi1jYW52YXMgd3JhcHBlci5cbkBtaXhpbiBvZmYtY2FudmFzLXdyYXBwZXIoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhbiBvZmYtY2FudmFzIHBhbmVsLlxuQG1peGluIG9mZi1jYW52YXMtYmFzZShcbiAgJGJhY2tncm91bmQ6ICRvZmZjYW52YXMtYmFja2dyb3VuZCxcbiAgJHRyYW5zaXRpb246ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZyxcbiAgJGZpeGVkOiB0cnVlXG4pIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gIEBpZiAkZml4ZWQgPT0gdHJ1ZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAvLyBTZXQgdGhlIG9mZi1jYW52YXMgei1pbmRleC5cbiAgei1pbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleDtcblxuICAvLyBJbmNyZWFzZSBDU1Mgc3BlY2lmaWNpdHlcbiAgJi5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXg7XG4gIH1cblxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICAvLyBIaWRlIGluYWN0aXZlIG9mZi1jYW52YXMgd2l0aGluIHRoZSBjb250ZW50IHRoYXQgaGF2ZSB0aGUgc2FtZSBwb3NpdGlvblxuICAmLmlzLWNsb3NlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gT3ZlcmxhcCBvbmx5IHN0eWxlcy5cbiAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg7XG5cbiAgICAmLmlzLW9wZW4ge1xuICAgICAgYm94LXNoYWRvdzogJG9mZmNhbnZhcy1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgLy8gU2V0cyB0cmFuc2Zvcm0gdG8gMCB0byBzaG93IGFuIG9mZi1jYW52YXMgcGFuZWwuXG4gICYuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIHBvc2l0aW9uIGFuIG9mZi1jYW52YXMgcGFuZWwgdG8gdGhlIGxlZnQvcmlnaHQvdG9wL2JvdHRvbS5cbkBtaXhpbiBvZmYtY2FudmFzLXBvc2l0aW9uKFxuICAkcG9zaXRpb246IGxlZnQsXG4gICRvcmllbnRhdGlvbjogaG9yaXpvbnRhbCxcbiAgJHNpemVzOiBpZigkb3JpZW50YXRpb24gPT0gaG9yaXpvbnRhbCwgJG9mZmNhbnZhcy1zaXplcywgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplcylcbikge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplIGlzIHNldCwgYWRkIGlubmVyIGJveC1zaGFkb3cuXG4gIC8vIFRoaXMgbWltaWNzIHRoZSBvZmYtY2FudmFzIHBhbmVsIGhhdmluZyBhIGxvd2VyIHotaW5kZXgsIHdpdGhvdXQgaGF2aW5nIHRvIGhhdmUgb25lLlxuICBAaWYgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSB7XG4gICAgJi5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3cocmlnaHQsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KGxlZnQsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhib3R0b20sICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyh0b3AsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4vLy8gU2V0cyB0aGUgc3R5bGVzIGZvciB0aGUgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gb2ZmLWNhbnZhcy1jb250ZW50KCkge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAvLyBUcmFuc2Zvcm0gc2NvcGUgdW50aWwgdGhlIGVsZW1lbnQgaXMgY2xvc2VkIChtYWtlcyBzdXJlIHRyYW5zaXRpb25lbmQgZ2V0cyB0cmlnZ2VyZWQpXG4gICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cblxuICAvLyBDb25zaWRlciBlbGVtZW50ICYgY29udGVudCwgbmVzdGVkIGluIGFub3RoZXIgY29udGVudFxuICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdGhhdCByZXZlYWwgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbkBtaXhpbiBvZmYtY2FudmFzLXJldmVhbChcbiRwb3NpdGlvbjogbGVmdCxcbiR6aW5kZXg6ICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCxcbiRjb250ZW50OiAkbWFpbmNvbnRlbnQtY2xhc3MsXG4kYnJlYWtwb2ludDogc21hbGxcbikge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHotaW5kZXg6ICR6aW5kZXg7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbiAgQGlmIG5vdCAkb2ZmY2FudmFzLWZpeGVkLXJldmVhbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIENvbnNpZGVyIHJldmVhbGVkIGVsZW1lbnQgaXMgbmVzdGVkIGluIGNvbnRlbnRcbiAgLiN7JG1haW5jb250ZW50LWNsYXNzfSAmIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICBAYXQtcm9vdCAuI3skY29udGVudH0uaGFzLXJldmVhbC0jeyRwb3NpdGlvbn0ge1xuICAgIG1hcmdpbi0jeyRwb3NpdGlvbn06IC16Zi1nZXQtYnAtdmFsKCRvZmZjYW52YXMtc2l6ZXMsICRicmVha3BvaW50KTtcbiAgfVxuXG4gIC8vIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IChwcmlvciB0byB2Ni40KVxuICAmIH4gLiN7JGNvbnRlbnR9IHtcbiAgICBtYXJnaW4tI3skcG9zaXRpb259OiAtemYtZ2V0LWJwLXZhbCgkb2ZmY2FudmFzLXNpemVzLCAkYnJlYWtwb2ludCk7XG4gIH1cbn1cblxuLy8vIE92ZXJyaWRlcyB0aGUgb2ZmLWNhbnZhcyBzdHlsZXNcbkBtaXhpbiBpbi1jYW52YXMoKSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB0cmFuc2l0aW9uOiBub25lO1xuXG4gIC8vIEluY3JlYXNlIENTUyBzcGVjaWZpY2l0eVxuICAmLnBvc2l0aW9uLWxlZnQsXG4gICYucG9zaXRpb24tcmlnaHQsXG4gICYucG9zaXRpb24tdG9wLFxuICAmLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9mZi1jYW52YXMge1xuICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2ljcztcblxuICAvLyBPZmYtY2FudmFzIHdyYXBwZXJcbiAgLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy13cmFwcGVyO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBjb250YWluZXJcbiAgLm9mZi1jYW52YXMge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzZTtcblxuICAgIC8vIEZvcmNlIHBvc2l0aW9uIGFic29sdXRlIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBiZWNhdXNlIGZpeGVkIGRvZXNuJ3Qgd29yayBmb3IgcHVzaCB0cmFuc2l0aW9uIHdpdGhpbiB0aGUgdHJhbnNmb3JtIHNjb3BlLlxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gJiB7XG4gICAgICAvLyBOT1RFOiBzaW5jZSBvdmVybGFwIHRyYW5zaXRpb24gaXMgY3VycmVudGx5IGZvcmNlZCBpZiBuZXN0ZWQsIHRoZXJlJ3Mgbm8gbmVlZCB0byBmb3JjZSBwb3NpdGlvbiBhYnNvbHV0ZSB1bnRpbCBuZXN0ZWQgcHVzaCB0cmFuc2l0aW9uIGlzIHN1cHBvcnRlZC5cbiAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIGNvbnRhaW5lciB3aXRoIGFic29sdXRlIHBvc2l0aW9uXG4gIC5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2UoJGZpeGVkOiBmYWxzZSk7XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIHBvc2l0aW9uIGNsYXNzZXNcbiAgLnBvc2l0aW9uLWxlZnQgICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGxlZnQsICAgaG9yaXpvbnRhbCk7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0ICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKHJpZ2h0LCAgaG9yaXpvbnRhbCk7IH1cbiAgLnBvc2l0aW9uLXRvcCAgICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKHRvcCwgICAgdmVydGljYWwpOyB9XG4gIC5wb3NpdGlvbi1ib3R0b20gIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihib3R0b20sIHZlcnRpY2FsKTsgfVxuXG4gIC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtY29udGVudDtcbiAgfVxuXG4gIC8vIFJldmVhbCBvZmYtY2FudmFzIHBhbmVsIG9uIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwobGVmdCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChyaWdodCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwodG9wLCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChib3R0b20sICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBNb3ZlIGluLWNhbnZhcyBmb3IgbGFyZ2VyIHNjcmVlbnNcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG5hbWUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBpbi1jYW52YXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiJGRhcmstbmF2LWNvbG9yOiAjMkMzODQwO1xyXG4vLyRibHVlOiAjMUM3NDhFO1xyXG4vLyRkYXJrLWJsdWU6ICMwQTQxNTg7XHJcbiRsaWdodC1ncmV5OiAjRjNGNEY4O1xyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG4kYmx1ZTogIzAwQTM5RDsgLy9Nb25zb29uIGdyZWVuXHJcbiRkYXJrLWJsdWU6ICMwMDZENzY7IC8vRm9yZXN0IGdyZWVuXHJcbi8vJGxpZ2h0LWdyZXk6ICNjY2M3YzA7IC8vU2FuZCBCZWlnZVxyXG4kc2xhdGUtZ3JleTogIzY2NjY2NlxyXG5cclxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb3JiaXRcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGFjdGl2ZSBjb2xvciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaWFtZXRlciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYmV0d2VlbiBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaXN0YW5jZSBmcm9tIHNsaWRlIHJlZ2lvbiBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZnJvbSBPcmJpdCdzIGJ1bGxldHMgdG8gd2hhdGV2ZXIgY29udGVudCBtYXkgbHVyayBiZWxvdyBpdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNvbnRyb2xzIHdoZW4gaG92ZXJlZC5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIE9yYml0J3MgY29udHJvbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB6LWluZGV4IGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgb3V0ZXIgT3JiaXQgd3JhcHBlci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBPcmJpdCBzbGlkZSBjb250YWluZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jb250YWluZXJgIGNsYXNzLlxuQG1peGluIG9yYml0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwOyAvLyBQcmV2ZW50IEZPVUMgYnkgbm90IHNob3dpbmcgdW50aWwgSlMgc2V0cyBoZWlnaHRcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbmRpdmlkdWFsIHNsaWRlcyBvZiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1zbGlkZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICYubm8tbW90aW9udWkge1xuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBvcmJpdC1maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzbGlkZSBjb250YWluaW5nIGFuIGltYWdlLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtaW1hZ2VgIGNsYXNzLlxuQG1peGluIG9yYml0LWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIG9yYml0IHNsaWRlIGNhcHRpb24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jYXB0aW9uYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAkb3JiaXQtY2FwdGlvbi1wYWRkaW5nO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQpO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgdGhlIG5leHQvcHJldmlvdXMgYnV0dG9ucyBpbiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgc2hhcmVkIGJldHdlZW4gdGhlIGAub3JiaXQtbmV4dGAgYW5kIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzZXMgaW4gdGhlIGRlZmF1bHQgQ1NTLlxuQG1peGluIG9yYml0LWNvbnRyb2wge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcjtcbiAgei1pbmRleDogJG9yYml0LWNvbnRyb2wtemluZGV4O1xuICBwYWRkaW5nOiAkb3JiaXQtY29udHJvbC1wYWRkaW5nO1xuICBjb2xvcjogJHdoaXRlO1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IHByZXZpb3VzIGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LXByZXZpb3VzYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1wcmV2aW91cyB7XG4gICN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgbmV4dCBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1uZXh0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1uZXh0IHtcbiAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAjeyRnbG9iYWwtcmlnaHR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY29udGFpbmVyIG9mIE9yYml0IGJ1bGxldHMuIC8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IHByZXZpb3VzIGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWJ1bGxldHNgIGNsYXNzLlxuQG1peGluIG9yYml0LWJ1bGxldHMge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wO1xuICBtYXJnaW4tYm90dG9tOiAkb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b207XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBidXR0b24ge1xuICAgIHdpZHRoOiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIGhlaWdodDogJG9yYml0LWJ1bGxldC1kaWFtZXRlcjtcbiAgICBtYXJnaW46ICRvcmJpdC1idWxsZXQtbWFyZ2luO1xuXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vcmJpdCB7XG4gIC5vcmJpdCB7XG4gICAgQGluY2x1ZGUgb3JiaXQtd3JhcHBlcjtcbiAgfVxuXG4gIC5vcmJpdC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIG9yYml0LWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5vcmJpdC1zbGlkZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtc2xpZGU7XG4gIH1cblxuICAub3JiaXQtZmlndXJlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1maWd1cmU7XG4gIH1cblxuICAub3JiaXQtaW1hZ2Uge1xuICAgIEBpbmNsdWRlIG9yYml0LWltYWdlO1xuICB9XG5cbiAgLm9yYml0LWNhcHRpb24ge1xuICAgIEBpbmNsdWRlIG9yYml0LWNhcHRpb247XG4gIH1cblxuICAlb3JiaXQtY29udHJvbCB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY29udHJvbDtcbiAgfVxuXG4gIC5vcmJpdC1wcmV2aW91cyB7XG4gICAgQGV4dGVuZCAlb3JiaXQtY29udHJvbDtcbiAgICBAaW5jbHVkZSBvcmJpdC1wcmV2aW91cztcbiAgfVxuXG4gIC5vcmJpdC1uZXh0IHtcbiAgICBAZXh0ZW5kICVvcmJpdC1jb250cm9sO1xuICAgIEBpbmNsdWRlIG9yYml0LW5leHQ7XG4gIH1cblxuICAub3JiaXQtYnVsbGV0cyB7XG4gICAgQGluY2x1ZGUgb3JiaXQtYnVsbGV0cztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcGFnaW5hdGlvblxuLy8vL1xuXG4vLy8gRm9udCBzaXplIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBvZiB0aGUgcGFnaW5hdGlvbiBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCBtYXJnaW4gdG8gc2VwYXJhdGUgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBlbGxpcHNpcyBpbiBhIHBhZ2luYXRpb24gbWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIElmIGBmYWxzZWAsIGRvbid0IGRpc3BsYXkgcGFnZSBudW1iZXIgbGlua3Mgb24gbW9iaWxlLCBvbmx5IG5leHQvcHJldmlvdXMgbGlua3Ncbi8vLyBhbmQgb3B0aW9uYWxseSBjdXJyZW50IHBhZ2UgbnVtYmVyLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXkgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgb24gbW9iaWxlIGV2ZW4gaWYgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGBmYWxzZWAuXG4vLy8gVGhpcyBwYXJhbWV0ZXIgd2lsbCBvbmx5IG92ZXJyaWRlIHRoZSB2aXNpYmlsaXR5IHNldHRpbmcgb2YgdGhlIGN1cnJlbnQgaXRlbSBmb3IgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7YCxcbi8vLyBpdCB3aWxsIG5vdCBhZmZlY3QgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgdmlzaWJpbGl0eSB3aGVuIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgdHJ1ZWAuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFycm93cyBhcmUgYWRkZWQgdG8gdGhlIG5leHQgYW5kIHByZXZpb3VzIGxpbmtzIG9mIHBhZ2luYXRpb24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcGFnaW5hdGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1jb250YWluZXIgKFxuICAkbWFyZ2luLWJvdHRvbTogJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbSxcbiAgJGZvbnQtc2l6ZTogJHBhZ2luYXRpb24tZm9udC1zaXplLFxuICAkc3BhY2luZzogJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nLFxuICAkcmFkaXVzOiAkcGFnaW5hdGlvbi1yYWRpdXMsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvcixcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAvLyBMaXN0IGl0ZW1cbiAgbGkge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcblxuICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmOmxhc3QtY2hpbGQsXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbSB7XG4gICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgY3VycmVudCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudCxcbiAgJGNvbG9yLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jdXJyZW50O1xuICBjb2xvcjogJGNvbG9yLWN1cnJlbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29sb3I6ICRjb2xvcjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGVsbGlwc2lzIGZvciB1c2UgaW4gYSBwYWdpbmF0aW9uIGxpc3QuXG5AbWl4aW4gcGFnaW5hdGlvbi1lbGxpcHNpcyAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3Jcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29udGVudDogJ1xcMjAyNic7XG4gIGNvbG9yOiAkY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXBhZ2luYXRpb24ge1xuICAucGFnaW5hdGlvbiB7XG4gICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1jb250YWluZXI7XG5cbiAgICAuY3VycmVudCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudDtcbiAgICB9XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1lbGxpcHNpcztcbiAgICB9XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tYXJyb3dzIHtcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJ1xcMDBhYic7XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbiAgICAucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAnXFwwMGJiJztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcHJvZ3Jlc3MgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiBwcm9ncmVzcy1jb250YWluZXIge1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206ICRwcm9ncmVzcy1tYXJnaW4tYm90dG9tO1xuICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFja2dyb3VuZDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5uZXIgbWV0ZXIgb2YgYSBwcm9ncmVzcyBiYXIuXG5AbWl4aW4gcHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0ZXh0IGluIHRoZSBwcm9ncmVzcyBtZXRlci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByb2dyZXNzLWJhciB7XG4gIC8vIFByb2dyZXNzIGJhclxuICAucHJvZ3Jlc3Mge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLWNvbnRhaW5lcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgLnByb2dyZXNzLW1ldGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJbm5lciBtZXRlclxuICAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyO1xuICB9XG5cbiAgLy8gSW5uZXIgbWV0ZXIgdGV4dFxuICAucHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXItdGV4dDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIFtUT0RPXSBDaGVjayBob3cgcGx1Z2luIGNvbmZpcm1zIGRpc2FibGVkIG9yIHZlcnRpY2FsIHN0YXR1c1xuLy8gW1RPRE9dIENoZWNrIGlmIHRyYW5zaXRpb246IGFsbDsgaXMgbmVjZXNzYXJ5XG5cbi8vLy9cbi8vLyBAZ3JvdXAgc2xpZGVyXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHNsaWRlciB3aWR0aCBvZiBhIHZlcnRpY2FsIHNsaWRlci4gKERvZXNuJ3QgYXBwbHkgdG8gdGhlIG5hdGl2ZSBzbGlkZXIuKVxuLy8vIEB0eXBlIE51bWJlclxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wZXJ0aWVzIHRvIGFwcGx5IHRvIHRoZSBzbGlkZXIgaGFuZGxlIGFuZCBmaWxsLiAoRG9lc24ndCBhcHBseSB0byB0aGUgbmF0aXZlIHNsaWRlci4pXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciBzbGlkZXJzLlxuQG1peGluIHNsaWRlci1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1iYWNrZ3JvdW5kO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgYWN0aXZlIGZpbGwgZm9yIHNsaWRlcnMuXG5AbWl4aW4gc2xpZGVyLWZpbGwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWZpbGwtYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbjogJHNsaWRlci10cmFuc2l0aW9uO1xuXG4gICYuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0aGUgc2xpZGVyIGhhbmRsZXMuXG5AbWl4aW4gc2xpZGVyLWhhbmRsZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzbGlkZXItaGFuZGxlLXdpZHRoO1xuICBoZWlnaHQ6ICRzbGlkZXItaGFuZGxlLWhlaWdodDtcblxuICBib3JkZXItcmFkaXVzOiAkc2xpZGVyLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbjogJHNsaWRlci10cmFuc2l0aW9uO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiAgfVxuXG4gICYuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIH1cbn1cblxuQG1peGluIHNsaWRlci1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6ICRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuQG1peGluIHNsaWRlci12ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzbGlkZXItd2lkdGgtdmVydGljYWw7XG4gIGhlaWdodDogMTIuNXJlbTtcbiAgbWFyZ2luOiAwIDEuMjVyZW07XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xuXG4gIC5zbGlkZXItZmlsbCB7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAkc2xpZGVyLXdpZHRoLXZlcnRpY2FsO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuc2xpZGVyLWhhbmRsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6ICRzbGlkZXItaGFuZGxlLWhlaWdodDtcbiAgICBoZWlnaHQ6ICRzbGlkZXItaGFuZGxlLXdpZHRoO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zbGlkZXIge1xuICAvLyBDb250YWluZXJcbiAgLnNsaWRlciB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIEZpbGwgYXJlYVxuICAuc2xpZGVyLWZpbGwge1xuICAgIEBpbmNsdWRlIHNsaWRlci1maWxsO1xuICB9XG5cbiAgLy8gRHJhZ2dhYmxlIGhhbmRsZVxuICAuc2xpZGVyLWhhbmRsZSB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWhhbmRsZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gIC5zbGlkZXIuZGlzYWJsZWQsXG4gIC5zbGlkZXJbZGlzYWJsZWRdIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBzbGlkZXJcbiAgLnNsaWRlci52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLXZlcnRpY2FsO1xuICB9XG5cbiAgLy8gUlRMIHN1cHBvcnRcbiAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsIHtcbiAgICAuc2xpZGVyOm5vdCgudmVydGljYWwpIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXN0aWNreSB7XG4gIC5zdGlja3ktY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgLnN0aWNreS5pcy1zdHVjayB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmLmlzLWF0LXRvcCB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zdGlja3kuaXMtYW5jaG9yZWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuXG4gICAgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgc3dpdGNoXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGEgc3dpdGNoLlxuLy8vIEB0eXBlIENvbG9yXG4kc3dpdGNoLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgYWN0aXZlIGNvbG9yIG9mIGEgc3dpdGNoLlxuLy8vIEB0eXBlIENvbG9yXG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQ6IDJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAudGlueSBjbGFzcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC5zbWFsbCBjbGFzcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLmxhcmdlIGNsYXNzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgb2YgdGhlIHN3aXRjaFxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gYm9yZGVyIGFyb3VuZCBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHN3aXRjaCBjb250YWluZXIgYW5kIHBhZGRsZS5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGEgc3dpdGNoIHBhZGRsZSBhbmQgdGhlIGVkZ2Ugb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLXBhZGRsZS1vZmZzZXQ6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBib3JkZXIgcmFkaXVzIG9mIHRoZSBzd2l0Y2ggcGFkZGxlXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gc3dpdGNoIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vIG1ha2UgdGhlbSB2YXJpYWJsZXNcbi8vIGFzayBhYm91dCBhY2Nlc3NpYmlsaXR5IG9uIGxhYmVsXG4vLyBjaGFuZ2UgY2xhc3MgbmFtZSBmb3IgdGV4dFxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3dpdGNoIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGNvbnRhaW5lciBjbGFzcy5cbkBtaXhpbiBzd2l0Y2gtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAkc3dpdGNoLW1hcmdpbjtcbiAgb3V0bGluZTogMDtcblxuICAvLyBUaGVzZSBwcm9wZXJ0aWVzIGNhc2NhZGUgZG93biB0byB0aGUgc3dpdGNoIHRleHRcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogJHdoaXRlO1xuXG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3dpdGNoIGlucHV0LiBBcHBseSB0aGlzIHRvIGFuIGA8aW5wdXQ+YCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBwYWRkbGUgb2YgYSBzd2l0Y2guIEFwcGx5IHRoaXMgdG8gYSBgPGxhYmVsPmAgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC1wYWRkbGUge1xuICAkc3dpdGNoLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAqIDI7XG4gICRwYWRkbGUtaGVpZ2h0OiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLXBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS13aWR0aDogJHN3aXRjaC1oZWlnaHQgLSAoJHN3aXRjaC1wYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtYWN0aXZlLW9mZmVzdDogJHN3aXRjaC13aWR0aCAtICRwYWRkbGUtd2lkdGggLSAkc3dpdGNoLXBhZGRsZS1vZmZzZXQ7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6ICRzd2l0Y2gtd2lkdGg7XG4gIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG5cbiAgYm9yZGVyLXJhZGl1czogJHN3aXRjaC1yYWRpdXM7XG4gIGJhY2tncm91bmQ6ICRzd2l0Y2gtYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbjogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjtcblxuICAvLyBSZXNldHRpbmcgdGhlc2UgPGxhYmVsPiBwcmVzZXRzIHNvIHR5cGUgc3R5bGVzIGNhc2NhZGUgZG93blxuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIE5lZWRlZCB0byBvdmVycmlkZSBzcGVjaWZpY2l0eVxuICBpbnB1dCArICYge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIFRoZSBwYWRkbGUgaXRzZWxmXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkc3dpdGNoLXBhZGRsZS1vZmZzZXQ7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkc3dpdGNoLXBhZGRsZS1vZmZzZXQ7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBhZGRsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRwYWRkbGUtaGVpZ2h0O1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICBib3JkZXItcmFkaXVzOiAkc3dpdGNoLXBhZGRsZS1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDtcbiAgICB0cmFuc2l0aW9uOiAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gQ2hhbmdlIHRoZSB2aXN1YWwgc3R5bGUgd2hlbiB0aGUgc3dpdGNoIGlzIGFjdGl2ZVxuICBpbnB1dDpjaGVja2VkIH4gJiB7XG4gICAgYmFja2dyb3VuZDogJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogJHBhZGRsZS1hY3RpdmUtb2ZmZXN0O1xuICAgIH1cbiAgfVxuXG4gIGlucHV0OmZvY3VzIH4gJiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB9XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciBhY3RpdmUvaW5hY3RpdmUgdGV4dCBpbnNpZGUgYSBzd2l0Y2guIEFwcGx5IHRoaXMgdG8gdGV4dCBlbGVtZW50cyBpbnNpZGUgdGhlIHN3aXRjaCBgPGxhYmVsPmAuXG5AbWl4aW4gc3dpdGNoLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjdGl2ZSBzdGF0ZSB0ZXh0IHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtdGV4dC1hY3RpdmUge1xuICAjeyRnbG9iYWwtbGVmdH06IDglO1xuICBkaXNwbGF5OiBub25lO1xuXG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+ICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGluYWN0aXZlIHN0YXRlIHRleHQgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC10ZXh0LWluYWN0aXZlIHtcbiAgI3skZ2xvYmFsLXJpZ2h0fTogMTUlO1xuXG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+ICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8vIENoYW5nZXMgdGhlIHNpemUgb2YgYSBzd2l0Y2ggYnkgbW9kaWZ5aW5nIHRoZSBzaXplIG9mIHRoZSBib2R5IGFuZCBwYWRkbGUuIEFwcGx5IHRoaXMgdG8gYSBzd2l0Y2ggY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZm9udC1zaXplIFsxcmVtXSAtIEZvbnQgc2l6ZSBvZiBsYWJlbCB0ZXh0IHdpdGhpbiB0aGUgc3dpdGNoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3dpdGNoLWhlaWdodCBbMnJlbV0gLSBIZWlnaHQgb2YgdGhlIHN3aXRjaCBib2R5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGxlLW9mZnNldCBbMC4yNXJlbV0gLSBTcGFjaW5nIGJldHdlZW4gdGhlIHN3aXRjaCBwYWRkbGUgYW5kIHRoZSBlZGdlIG9mIHRoZSBzd2l0Y2ggYm9keS5cbkBtaXhpbiBzd2l0Y2gtc2l6ZShcbiAgJGZvbnQtc2l6ZTogMXJlbSxcbiAgJHN3aXRjaC1oZWlnaHQ6IDJyZW0sXG4gICRwYWRkbGUtb2Zmc2V0OiAwLjI1cmVtXG4pIHtcblxuICAkc3dpdGNoLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAqIDI7XG4gICRwYWRkbGUtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRwYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtaGVpZ2h0OiAkc3dpdGNoLWhlaWdodCAtICgkcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q6ICRzd2l0Y2gtd2lkdGggLSAkcGFkZGxlLXdpZHRoIC0gJHBhZGRsZS1vZmZzZXQ7XG5cbiAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcblxuICAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6ICRzd2l0Y2gtd2lkdGg7XG4gICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIH1cblxuICAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIHRvcDogJHBhZGRsZS1vZmZzZXQ7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGxlLW9mZnNldDtcbiAgICB3aWR0aDogJHBhZGRsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRwYWRkbGUtaGVpZ2h0O1xuICB9XG5cbiAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tc3dpdGNoIHtcbiAgLy8gQ29udGFpbmVyIGNsYXNzXG4gIC5zd2l0Y2gge1xuICAgIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIDxpbnB1dD4gZWxlbWVudFxuICAuc3dpdGNoLWlucHV0IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtaW5wdXQ7XG4gIH1cblxuICAvLyA8bGFiZWw+IGVsZW1lbnRcbiAgLnN3aXRjaC1wYWRkbGUge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1wYWRkbGU7XG4gIH1cblxuICAvLyBCYXNlIGxhYmVsIHRleHQgc3R5bGVzXG4gICVzd2l0Y2gtdGV4dCB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQ7XG4gIH1cblxuICAvLyBBY3RpdmUgbGFiZWwgdGV4dCBzdHlsZXNcbiAgLnN3aXRjaC1hY3RpdmUge1xuICAgIEBleHRlbmQgJXN3aXRjaC10ZXh0O1xuICAgIEBpbmNsdWRlIHN3aXRjaC10ZXh0LWFjdGl2ZTtcbiAgfVxuXG4gIC8vIEluYWN0aXZlIGxhYmVsIHRleHQgc3R5bGVzXG4gIC5zd2l0Y2gtaW5hY3RpdmUge1xuICAgIEBleHRlbmQgJXN3aXRjaC10ZXh0O1xuICAgIEBpbmNsdWRlIHN3aXRjaC10ZXh0LWluYWN0aXZlO1xuICB9XG5cbiAgLy8gU3dpdGNoIHNpemVzXG4gIC5zd2l0Y2gudGlueSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXNpemUocmVtLWNhbGMoMTApLCAkc3dpdGNoLWhlaWdodC10aW55LCAkc3dpdGNoLXBhZGRsZS1vZmZzZXQpO1xuICB9XG5cbiAgLnN3aXRjaC5zbWFsbCB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXNpemUocmVtLWNhbGMoMTIpLCAkc3dpdGNoLWhlaWdodC1zbWFsbCwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxuXG4gIC5zd2l0Y2gubGFyZ2Uge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDE2KSwgJHN3aXRjaC1oZWlnaHQtbGFyZ2UsICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RyaXBlZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIHRhYmxlcyBhcmUgc3RyaXBlZCBieSBkZWZhdWx0IGFuZCBhbiAudW5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuIElmIGBmYWxzZWAsIGEgLnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBmb290ZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHN0YWNrZWQgdGFibGUgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdHIge1xuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuQG1peGluIHRhYmxlKFxuICAkc3RyaXBlOiAkdGFibGUtc3RyaXBlLFxuICAkbmVzdDogZmFsc2Vcbikge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4gIEBpZiAkbmVzdCB7XG4gICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGF0LXJvb3Qge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGFiaWxpdHkgdG8gaG9yaXpvbnRhbGx5IHNjcm9sbCB0aGUgdGFibGUgd2hlbiB0aGUgY29udGVudCBvdmVyZmxvd3MgaG9yaXpvbnRhbGx5LlxuQG1peGluIHRhYmxlLXNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLy8vIFNsaWdodGx5IGRhcmtlbnMgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG5AbWl4aW4gdGFibGUtaG92ZXIge1xuICB0aGVhZCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBoZWFkZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBmb290ZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1mb290LXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Ym9keSB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSBub24tc3RyaXBlZCB0YWJsZSByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlIGlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2UgaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFja2VkIHRhYmxlLiBVc2VmdWwgZm9yIHNtYWxsLXNjcmVlbiBsYXlvdXRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGhlYWRlciBbJHNob3ctaGVhZGVyLWZvci1zdGFja2VkXSAtIFNob3cgdGhlIGZpcnN0IHRoIG9mIGhlYWRlciB3aGVuIHN0YWNrZWQuXG5AbWl4aW4gdGFibGUtc3RhY2soJGhlYWRlcjogJHNob3ctaGVhZGVyLWZvci1zdGFja2VkKSB7XG4gIEBpZiAkaGVhZGVyIHtcbiAgICB0aGVhZCB7XG4gICAgICB0aCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHRyLFxuICB0aCxcbiAgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFibGUoJG5lc3Q6IGZhbHNlKSB7XG4gIHRhYmxlIHtcbiAgICBAaW5jbHVkZSB0YWJsZSgkbmVzdDogJG5lc3QpO1xuICB9XG5cbiAgdGFibGUuc3RhY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQgZG93bikge1xuICAgICAgQGluY2x1ZGUgdGFibGUtc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgdGFibGUuc2Nyb2xsIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1zY3JvbGw7XG4gIH1cblxuICB0YWJsZS5ob3ZlciB7XG4gICAgQGluY2x1ZGUgdGFibGUtaG92ZXI7XG4gIH1cblxuICAudGFibGUtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdtYXRoJztcblxuJGNvbnRyYXN0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6ICRyZ2IgLyAyNTU7XG5cbiAgICAkcmdiOiBpZigkcmdiIDwgMC4wMzkyOCwgJHJnYiAvIDEyLjkyLCBwb3coKCRyZ2IgKyAwLjA1NSkgLyAxLjA1NSwgMi40KSk7XG5cbiAgICAkcmdiYTI6IGFwcGVuZCgkcmdiYTIsICRyZ2IpO1xuICB9XG5cbiAgQHJldHVybiAwLjIxMjYgKiBudGgoJHJnYmEyLCAxKSArIDAuNzE1MiAqIG50aCgkcmdiYTIsIDIpICsgMC4wNzIyICogbnRoKCRyZ2JhMiwgMyk7XG59XG5cbi8vLyBDaGVja3MgdGhlIGNvbnRyYXN0IHJhdGlvIG9mIHR3byBjb2xvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkY29sb3IxLCAkY29sb3IyKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNjb250cmFzdC1yYXRpb2RlZlxuICAkbHVtaW5hbmNlMTogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjEpICsgMC4wNTtcbiAgJGx1bWluYW5jZTI6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IyKSArIDAuMDU7XG4gICRyYXRpbzogJGx1bWluYW5jZTEgLyAkbHVtaW5hbmNlMjtcblxuICBAaWYgJGx1bWluYW5jZTIgPiAkbHVtaW5hbmNlMSB7XG4gICAgJHJhdGlvOiAxIC8gJHJhdGlvO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgLyAxMDtcblxuICBAcmV0dXJuICRyYXRpbztcbn1cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkYmFzZWAsIGFuZCByZXR1cm5zIHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhc2UgLSBDb2xvciB0byBjaGVjayBsdW1pbmFuY2UuXG4vLy8gQHBhcmFtIHtMaXN0fSAkY29sb3JzIFsoJHdoaXRlLCAkYmxhY2spXSAtIENvbG9ycyB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG9sZXJhbmNlIFskZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlXSAtIENvbnRyYXN0IHRvbGVyYW5jZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG5AZnVuY3Rpb24gY29sb3ItcGljay1jb250cmFzdCgkYmFzZSwgJGNvbG9yczogKCR3aGl0ZSwgJGJsYWNrKSwgJHRvbGVyYW5jZTogJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZSkge1xuICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgMSkpO1xuICAkYmVzdDogbnRoKCRjb2xvcnMsIDEpO1xuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggbGVuZ3RoKCRjb2xvcnMpIHtcbiAgICAkY3VycmVudC1jb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgIEBpZiAoJGN1cnJlbnQtY29udHJhc3QgLSAkY29udHJhc3QgPiAkdG9sZXJhbmNlKSB7XG4gICAgICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICAgICRiZXN0OiBudGgoJGNvbG9ycywgJGkpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGNvbnRyYXN0LXdhcm5pbmdzIGFuZCAkY29udHJhc3QgPCAzKSB7XG4gICAgQHdhcm4gXCJDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fVwiO1xuICB9XG5cbiAgQHJldHVybiAkYmVzdDtcbn1cblxuLy8vIFNjYWxlcyBhIGNvbG9yIHRvIGJlIGRhcmtlciBpZiBpdCdzIGxpZ2h0LCBvciBsaWdodGVyIGlmIGl0J3MgZGFyay4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gdGludCBhIGNvbG9yIGFwcHJvcHJpYXRlIHRvIGl0cyBsaWdodG5lc3MuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICRzY2FsZSBbNSVdIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs0MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBBIHNjYWxlZCBjb2xvci5cbkBmdW5jdGlvbiBzbWFydC1zY2FsZSgkY29sb3IsICRzY2FsZTogNSUsICR0aHJlc2hvbGQ6IDQwJSkge1xuICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkIHtcbiAgICAkc2NhbGU6IC0kc2NhbGU7XG4gIH1cbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XG59XG5cbi8vLyBHZXQgY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEBwYXJhbSB7a2V5fSBjb2xvciBrZXkgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdnaXZlbiAka2V5IGlzIG5vdCBhdmFpbGFibGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSc7XG4gIH1cbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWAgbWFwIGludG8gdmFyaWFibGVzLCBzdWNoIGFzIGAkcHJpbWFyeS1jb2xvcmAgYW5kIGAkc2Vjb25kYXJ5LWNvbG9yYC4gQ2FsbCB0aGlzIG1peGluIGJlbG93IHRoZSBHbG9iYWwgc2VjdGlvbiBvZiB5b3VyIHNldHRpbmdzIGZpbGUgdG8gcHJvcGVybHkgbWlncmF0ZSB5b3VyIGNvZGViYXNlLlxuQG1peGluIGFkZC1mb3VuZGF0aW9uLWNvbG9ycygpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogIzE3NzliYSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogIzc2NzY3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6ICMzYWRiNzYgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICR3YXJuaW5nLWNvbG9yOiAjZmZhZTAwICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkYWxlcnQtY29sb3I6ICNjYzRiMzcgIWdsb2JhbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFic1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gb2YgdGhlIHRhYiBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0YWIgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYSB0YWIgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gdGFicy1jb250YWluZXIgKFxuICAkbWFyZ2luOiAkdGFiLW1hcmdpbixcbiAgJGJhY2tncm91bmQ6ICR0YWItYmFja2dyb3VuZCxcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRtYXJnaW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250YWluZXIgdG8gaGF2ZSB2ZXJ0aWNhbCB0YWJzLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRhaW5lcigpYC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGxpbmtzIHdpdGhpbiBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIGA8bGk+YCBlbGVtZW50cyBpbnNpZGUgYSB0YWIgY29udGFpbmVyLlxuQG1peGluIHRhYnMtdGl0bGUgKFxuICAkcGFkZGluZzogJHRhYi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICR0YWItaXRlbS1mb250LXNpemUsXG4gICRjb2xvcjogJHRhYi1jb2xvcixcbiAgJGNvbG9yLWFjdGl2ZTogJHRhYi1hY3RpdmUtY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGJhY2tncm91bmQtYWN0aXZlOiAkdGFiLWJhY2tncm91bmQtYWN0aXZlXG4pIHtcbiAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICA+IGEge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICZbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkY29sb3ItYWN0aXZlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB3cmFwcGVyIHRoYXQgc3Vycm91bmRzIGEgdGFiIGdyb3VwJ3MgY29udGVudCBwYW5lcy5cbkBtaXhpbiB0YWJzLWNvbnRlbnQgKFxuICAkYmFja2dyb3VuZDogJHRhYi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJHRhYi1jb250ZW50LWNvbG9yLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250ZW50IGNvbnRhaW5lciB0byBoYXZlIGEgdmVydGljYWwgc3R5bGUsIGJ5IHNoaWZ0aW5nIHRoZSBib3JkZXIgYXJvdW5kLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRlbnQoKWAuXG5AbWl4aW4gdGFicy1jb250ZW50LXZlcnRpY2FsIChcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gaW5kaXZpZHVhbCB0YWIgY29udGVudCBwYW5lbCB3aXRoaW4gdGhlIHRhYiBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiB0YWJzLXBhbmVsIChcbiAgJHBhZGRpbmc6ICR0YWItY29udGVudC1wYWRkaW5nXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYnMge1xuICAudGFicyB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXI7XG4gIH1cblxuICAvLyBWZXJ0aWNhbFxuICAudGFicy52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBTaW1wbGVcbiAgLnRhYnMuc2ltcGxlIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJpbWFyeSBjb2xvclxuICAudGFicy5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRwcmltYXJ5LWNvbG9yKTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkcHJpbWFyeS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRhYnMtdGl0bGUge1xuICAgIEBpbmNsdWRlIHRhYnMtdGl0bGU7XG4gIH1cblxuICAudGFicy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQ7XG4gIH1cblxuICAudGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQtdmVydGljYWw7XG4gIH1cblxuICAudGFicy1wYW5lbCB7XG4gICAgQGluY2x1ZGUgdGFicy1wYW5lbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGh1bWJuYWlsXG4vLy8vXG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kdGh1bWJuYWlsLWJvcmRlcjogNHB4IHNvbGlkICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wcnRpZXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHRodW1ibmFpbCBzdHlsZXMgdG8gYW4gZWxlbWVudC5cbkBtaXhpbiB0aHVtYm5haWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tO1xuXG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtcmFkaXVzO1xuICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdztcblxuICBsaW5lLWhlaWdodDogMDtcbn1cblxuQG1peGluIHRodW1ibmFpbC1saW5rIHtcbiAgdHJhbnNpdGlvbjogJHRodW1ibmFpbC10cmFuc2l0aW9uO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93LWhvdmVyO1xuICB9XG5cbiAgaW1hZ2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGh1bWJuYWlsIHtcbiAgLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsO1xuICB9XG5cbiAgYS50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbC1saW5rO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aXRsZS1iYXJcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBXZWlnaHRcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhciBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiB0aGUgbWVudSBpY29uIGFuZCB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRpdGxlLWJhciB7XG4gIC50aXRsZS1iYXIge1xuICAgIHBhZGRpbmc6ICR0aXRsZWJhci1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICR0aXRsZWJhci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGl0bGViYXItY29sb3I7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG5cbiAgICAubWVudS1pY29uIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudGl0bGUtYmFyLWxlZnQsXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudGl0bGUtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAudGl0bGUtYmFyLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXdlaWdodDogJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvb2x0aXBcbi8vLy9cblxuLy8vIERlZmF1bHQgY3Vyc29yIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhhcy10aXAtY3Vyc29yOiBoZWxwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYm90dG9tIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgTGlzdFxuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGZvbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgb2YgdGhlIHRvb2x0aXAgdGV4dC4gQnkgZGVmYXVsdCwgd2UgcmVjb21tZW5kIGEgc21hbGxlciBmb250IHNpemUgdGhhbiB0aGUgYm9keSBjb3B5LlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgd2lkdGggZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgaGVpZ2h0IGZvciB0b29sdGlwcy4gVGhpcyBpcyBoZWxwZnVsIGZvciBjYWxjdWxhdGluZyB0aGUgZGlzdGFuY2Ugb2YgdGhlIHRvb2x0aXAgZnJvbSB0aGUgdG9vbHRpcCB3b3JkLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gaGFzLXRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIGJvcmRlci1ib3R0b206ICRoYXMtdGlwLWJvcmRlci1ib3R0b207XG4gIGZvbnQtd2VpZ2h0OiAkaGFzLXRpcC1mb250LXdlaWdodDtcbiAgY3Vyc29yOiAkaGFzLXRpcC1jdXJzb3I7XG59XG5cbkBtaXhpbiB0b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArICN7JHRvb2x0aXAtcGlwLWhlaWdodH0pO1xuICB6LWluZGV4OiAxMjAwO1xuXG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICR0b29sdGlwLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gICYuYm90dG9tIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgdXApO1xuICAgICAgYm90dG9tOiAxMDAlO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYudG9wIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgZG93bik7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5sZWZ0IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgcmlnaHQpO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYucmlnaHQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBsZWZ0KTtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tdG9wOjpiZWZvcmUge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDEwJTtcbiAgfVxuXG4gICYuYWxpZ24tYm90dG9tOjpiZWZvcmUge1xuICAgIGJvdHRvbTogMTAlO1xuICAgIHRvcDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tbGVmdDo6YmVmb3JlIHtcbiAgICBsZWZ0OiAxMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0OjpiZWZvcmUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b29sdGlwIHtcbiAgLmhhcy10aXAge1xuICAgIEBpbmNsdWRlIGhhcy10aXA7XG4gIH1cblxuICAudG9vbHRpcCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9wLWJhclxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSB0b3AgYmFyLiBUaGlzIGNvbG9yIGFsc28gY2FzY2FkZXMgdG8gbWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBzdWJtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuIFVzZWZ1bGwgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIHRyYW5zcGFyZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBmb3IgdGhlIHRvcCBiYXIgdGl0bGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBgPGlucHV0PmAgZWxlbWVudHMgaW5zaWRlIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHRvcCBiYXIgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSB0b3AgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiB0b3AtYmFyLWNvbnRhaW5lciB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgcGFkZGluZzogJHRvcGJhci1wYWRkaW5nO1xuXG4gICYsXG4gIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgZGlmZmVybnQgZnJvbSAkdG9wYmFyLWJhY2tncm91bmQtc3VibWVudVxuICBAaWYgKCR0b3BiYXItYmFja2dyb3VuZCAhPSAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZCkge1xuICAgIHVsIHVsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3RyYWluIHdpZHRoIG9mIGlucHV0cyBieSBkZWZhdWx0IHRvIG1ha2UgdGhlbSBlYXNpZXIgdG8gYXJyYW5nZVxuICBpbnB1dCB7XG4gICAgbWF4LXdpZHRoOiAkdG9wYmFyLWlucHV0LXdpZHRoO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICB9XG5cbiAgLy8gVGhlIGFib3ZlIHN0eWxlcyBzaG91bGRuJ3QgYXBwbHkgdG8gaW5wdXQgZ3JvdXAgZmllbGRzXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gIH1cblxuICBpbnB1dC5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gTWFrZXMgc2VjdGlvbnMgb2YgYSB0b3AgYmFyIHN0YWNrIG9uIHRvcCBvZiBlYWNoIG90aGVyLlxuQG1peGluIHRvcC1iYXItc3RhY2tlZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gVW5kb2VzIHRoZSBDU1MgYXBwbGllZCBieSB0aGUgYHRvcC1iYXItc3RhY2tlZCgpYCBtaXhpbi5cbkBtaXhpbiB0b3AtYmFyLXVuc3RhY2sge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvcC1iYXIge1xuICAvLyBUb3AgYmFyIGNvbnRhaW5lclxuICAudG9wLWJhciB7XG4gICAgQGluY2x1ZGUgdG9wLWJhci1jb250YWluZXI7XG5cbiAgICAvLyBTdGFjayBvbiBzbWFsbCBzY3JlZW5zIGJ5IGRlZmF1bHRcbiAgICBAaW5jbHVkZSB0b3AtYmFyLXN0YWNrZWQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0b3BiYXItdW5zdGFjay1icmVha3BvaW50KSB7XG4gICAgICBAaW5jbHVkZSB0b3AtYmFyLXVuc3RhY2s7XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhdGUgY2xhc3NlcyBmb3Igc3RhY2tpbmcgb24gZWFjaCBzY3JlZW4gc2l6ZSAoZGVmaW5lZCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzKVxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgJi5zdGFja2VkLWZvci0jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0b3AtYmFyLXN0YWNrZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU3ViLXNlY3Rpb25zXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgbWFyZ2luOiAkdG9wYmFyLXRpdGxlLXNwYWNpbmc7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuXG4gICAgICAubWVudS1pY29uIHtcbiAgICAgICAgYm90dG9tOiAycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIEZsZXhib3ggVXRpbGl0aWVzXG4vLy8vXG4vL1xuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHRoZSBjb3VudCBvZiBzb3VyY2Ugb3JkZXJpbmdgXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDYgIWRlZmF1bHQ7XG5cbi8vLyBRdWlja2x5IGRpc2FibGUvZW5hYmxlIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIFZhbmlsbGEgRmxleCBIZWxwZXJzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWUgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmbGV4LWhlbHBlcnMge1xuICAuZmxleC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGZsZXg7XG4gIH1cblxuICAuZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuXG4gIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgIC5mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgICAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgICAgICAgICAuI3skc2l6ZX0tZmxleC1kaXItI3skZGlyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzIHtcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdXNpbmcganVzdGlmeS1jb250ZW50XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtanVzdGlmeSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IFNwZWNpZmljYWxseSBmb3IgVmVydGljYWwgTWVudVxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gbWFwLXJlbW92ZSgkLXpmLWZsZXgtanVzdGlmeSwgJ2p1c3RpZnknLCAnc3BhY2VkJykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgJi5tZW51ID4gbGkgPiBhIHtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBhbGlnbm1lbnQgdXNpbmcgYWxpZ24taXRlbXMgYW5kIGFsaWduLXNlbGZcbiAgQGVhY2ggJHZkaXIsICRwcm9wIGluICQtemYtZmxleC1hbGlnbiB7XG4gICAgLmFsaWduLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHk6ICR2ZGlyKTtcbiAgICB9XG5cbiAgICAuYWxpZ24tc2VsZi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduLXNlbGYoJHk6ICR2ZGlyKTtcbiAgICB9XG4gIH1cblxuICAvLyBDZW50cmFsIGFsaWdubWVudCBvZiBjb250ZW50XG4gIC5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiBjZW50ZXIsICR5OiBtaWRkbGUpO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC8vIFNvdXJjZSBvcmRlcmluZ1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudCB7XG4gICAgICAuI3skLXpmLXNpemV9LW9yZGVyLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigkaSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmFuaWxsYSBGbGV4Ym94IEhlbHBlcnNcbiAgQGluY2x1ZGUgZmxleC1oZWxwZXJzO1xufVxuIiwiQGZ1bmN0aW9uIC16Zi1mbGV4LWp1c3RpZnkoJHRleHQtZGlyZWN0aW9uKXtcbiAgJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgICAnbGVmdCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtZW5kLCBmbGV4LXN0YXJ0KSxcbiAgICAncmlnaHQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LXN0YXJ0LCBmbGV4LWVuZCksXG4gICAgJ2NlbnRlcic6IGNlbnRlcixcbiAgICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbiAgKTtcblxuICBAcmV0dXJuICQtemYtZmxleC1qdXN0aWZ5O1xufVxuXG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiLy8vIEFwcGxpZXMgYmFzaWMgdHJhbnNpdGlvbiBzZXR0aW5ncyB0byBhbiBlbGVtZW50LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIHRyYW5zaXRpb24tYmFzaWNzKFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gIEBpbmNsdWRlIC1tb3Rpb24tdWktZGVmYXVsdHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheTtcbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBzZXR1cCBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIHNldHVwIGZvciB0cmFuc2l0aW9uLlxuQG1peGluIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpcikpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgYWN0aXZlIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gYWN0aXZhdGUgYSB0cmFuc2l0aW9uIG9uLlxuQG1peGluIHRyYW5zaXRpb24tZW5kKCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpLCB0cnVlKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhZ2dlciBhbmltYXRpb24sIHdoaWNoIGNhbiBiZSB1c2VkIHdpdGggQW5ndWxhcidzIGBuZy1yZXBlYXRgLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheS1hbW91bnQgLSBBbW91bnQgb2YgdGltZSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyB0byBhZGQgYmV0d2VlbiBlYWNoIGl0ZW0ncyBhbmltYXRpb24uXG5AbWl4aW4gc3RhZ2dlcigkZGVsYXktYW1vdW50KSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheS1hbW91bnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDA7IC8vIFByZXZlbnQgYWNjaWRlbnRhbCBDU1MgaW5oZXJpdGFuY2Vcbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIEltcG9ydGFudFJ1bGUsIFNwYWNlQWZ0ZXJDb21tYSwgU2luZ2xlTGluZVBlclByb3BlcnR5XG5cbkBtaXhpbiAtbW90aW9uLXVpLWRlZmF1bHRzIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktZWFzaW5ncywgZGVmYXVsdCk7XG59XG5cbi8vIFRyYW5zaXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS10cmFuc2l0aW9ucyB7XG4gIC8vIFNsaWRlXG4gIC5zbGlkZS1pbi1kb3duICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgZG93bik7IH1cbiAgLnNsaWRlLWluLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICByaWdodCk7IH1cbiAgLnNsaWRlLWluLXVwICAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICB1cCk7IH1cbiAgLnNsaWRlLWluLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBsZWZ0KTsgfVxuICAuc2xpZGUtb3V0LWRvd24gICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGRvd24pOyB9XG4gIC5zbGlkZS1vdXQtcmlnaHQgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgcmlnaHQpOyB9XG4gIC5zbGlkZS1vdXQtdXAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgdXApOyB9XG4gIC5zbGlkZS1vdXQtbGVmdCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgbGVmdCk7IH1cblxuICAvLyBGYWRlXG4gIC5mYWRlLWluICB7IEBpbmNsdWRlIG11aS1mYWRlKGluLCAgMCwgMSk7IH1cbiAgLmZhZGUtb3V0IHsgQGluY2x1ZGUgbXVpLWZhZGUob3V0LCAxLCAwKTsgfVxuXG4gIC8vIEhpbmdlXG4gIC5oaW5nZS1pbi1mcm9tLXRvcCAgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1yaWdodCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1ib3R0b20gICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGJvdHRvbSk7IH1cbiAgLmhpbmdlLWluLWZyb20tbGVmdCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBsZWZ0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteCAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteSAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCwgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tdG9wICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWJvdHRvbSAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBib3R0b20pOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgbGVmdCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQsIGNlbnRlcik7IH1cblxuICAvLyBTY2FsZVxuICAuc2NhbGUtaW4tdXAgICAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDAuNSwgMSk7IH1cbiAgLnNjYWxlLWluLWRvd24gIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAxLjUsIDEpOyB9XG4gIC5zY2FsZS1vdXQtdXAgICB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMS41KTsgfVxuICAuc2NhbGUtb3V0LWRvd24geyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDAuNSk7IH1cblxuICAvLyBTcGluXG4gIC5zcGluLWluICAgICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY3cpOyB9XG4gIC5zcGluLW91dCAgICB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY3cpOyB9XG4gIC5zcGluLWluLWNjdyAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGNjdyk7IH1cbiAgLnNwaW4tb3V0LWNjdyB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY2N3KTsgfVxuXG4gIC8vIFRyYW5zaXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgdHJhbnNpdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQW5pbWF0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktYW5pbWF0aW9ucyB7XG4gIC5zaGFrZSAgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc2hha2UpOyB9XG4gIC5zcGluLWN3ICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3Bpbik7IH1cbiAgLnNwaW4tY2N3IHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKGNjdykpOyB9XG4gIC53aWdnbGUgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24od2lnZ2xlKTsgfVxuXG4gIC5zaGFrZSxcbiAgLnNwaW4tY3csXG4gIC5zcGluLWNjdyxcbiAgLndpZ2dsZSB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgfVxuXG4gIC8vIEFuaW1hdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbiAgLmluZmluaXRlIHsgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgYW5pbWF0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vIEZvcm1hdCBmb3IgQ1NTIGNsYXNzZXMgY3JlYXRlZCB3aXRoIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gYXBwZW5kIFt0cnVlXSAtIERlZmluZXMgaWYgc2VsZWN0b3JzIGFyZSBjaGFpbmVkIHRvIHRoZSBzZWxlY3RvciAoYC5jbGFzcy5lbnRlcmApLCBvciBhcHBlbmRlZCBhcyBhIG5ldyBjbGFzcyAoYC5jbGFzcy1lbnRlcmApLlxuLy8vIEBwcm9wIHtTdHJpbmd9IHByZWZpeCBbJ211aS0nXSAtIFByZWZpeCB0byBhZGQgYmVmb3JlIHRoZSBzdGF0ZSBvZiBhIGNsYXNzLiBFbnRlciBhbiBlbXB0eSBzdHJpbmcgdG8gdXNlIG5vIHByZWZpeC5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWyctYWN0aXZlJ10gLSBTdWZmaXggdG8gYWRkIHRvIHRoZSBhY3RpdmUgc3RhdGUgY2xhc3MuXG4kbW90aW9uLXVpLWNsYXNzZXM6IChcbiAgY2hhaW46IHRydWUsXG4gIHByZWZpeDogJ211aS0nLFxuICBhY3RpdmU6ICctYWN0aXZlJyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBTdGF0ZSBuYW1lcyB0byByZWZlcmVuY2Ugd2hlbiB3cml0aW5nIG1vdGlvbiBjbGFzc2VzLiBUbyB1c2UgbXVsdGlwbGUgY2xhc3MgbmFtZXMgZm9yIG9uZSBzdGF0ZSwgZW50ZXIgYSBsaXN0IG9mIHN0cmluZ3MgaW5zdGVhZCBvZiBvbmUgc3RyaW5nLlxuLy8vIEB0eXBlIE1hcFxuJG1vdGlvbi11aS1zdGF0ZXM6IChcbiAgaW46ICdlbnRlcicsXG4gIG91dDogJ2xlYXZlJyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNwZWVkIHRoYXQgdHJhbnNpdGlvbnMgYW5kIGFuaW1hdGlvbnMgcGxheSBhdCwgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBzcGVlZC5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3BlZWRzOiAoXG4gIGRlZmF1bHQ6IDUwMG1zLFxuICBzbG93OiA3NTBtcyxcbiAgZmFzdDogMjUwbXMsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkZWxheSB0byBhZGQgYmVmb3JlIG1vdGlvbiwgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBkZWxheS5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktZGVsYXlzOiAoXG4gIGRlZmF1bHQ6IDAsXG4gIHNob3J0OiAzMDBtcyxcbiAgbG9uZzogNzAwbXMsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBlYXNpbmcgZm9yIHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zLCBhbG9uZyB3aXRoIHZhbHVlcyBmb3IgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGhlIGVhc2luZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktZWFzaW5nczogKFxuICBkZWZhdWx0OiBsaW5lYXIsXG4gIGxpbmVhcjogbGluZWFyLFxuICBlYXNlOiBlYXNlLFxuICBlYXNlLWluOiBlYXNlLWluLFxuICBlYXNlLW91dDogZWFzZS1vdXQsXG4gIGVhc2UtaW4tb3V0OiBlYXNlLWluLW91dCxcbiAgYm91bmNlLWluOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSksXG4gIGJvdW5jZS1vdXQ6IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSksXG4gIGJvdW5jZS1pbi1vdXQ6IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBNaXNjZWxsYW5lb3VzIHNldHRpbmdzIHJlbGF0ZWQgdG8gTW90aW9uIFVJLlxuLy8vIEB0eXBlIE1hcFxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbZmFsc2VdIC0gRGVmaW5lcyBpZiBzbGlkZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIGhpbmdlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc2NhbGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBzcGluIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4kbW90aW9uLXVpLXNldHRpbmdzOiAoXG4gIHNsaWRlLWFuZC1mYWRlOiBmYWxzZSxcbiAgaGluZ2UtYW5kLWZhZGU6IHRydWUsXG4gIHNjYWxlLWFuZC1mYWRlOiB0cnVlLFxuICBzcGluLWFuZC1mYWRlOiB0cnVlLFxuICBwYXVzZS1xdWV1ZS1jbGFzczogJ2lzLXBhdXNlZCcsXG4gIGFjdGl2YXRlLXF1ZXVlLWNsYXNzOiAnaXMtYW5pbWF0aW5nJyxcbikgIWRlZmF1bHQ7XG4iLCIvLyBJbnRlcm5hbCBjb3VudGVyIGZvciBjcmVhdGluZyB1bmlxdWUga2V5ZnJhbWUgbmFtZXNcbiQtbXVpLWN1c3RvbTogMDtcblxuLy8vIENyZWF0ZXMgYSBrZXlmcmFtZSBmcm9tIG9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMuIFVzZSB0aGlzIGZ1bmN0aW9uIGluc3RlYWQgb2YgYG11aS1hbmltYXRpb25gIGlmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIGtleWZyYW1lIGFuaW1hdGlvbiAqd2l0aG91dCogYXV0b21hdGljYWxseSBhc3NpZ25pbmcgaXQgdG8gdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUga2V5ZnJhbWUuXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWtleWZyYW1lcygkbmFtZSwgJGVmZmVjdHMuLi4pIHtcbiAgJG9iajogLW11aS1wcm9jZXNzLWFyZ3MoJGVmZmVjdHMuLi4pO1xuICAkb2JqOiBtYXAtcmVtb3ZlKCRvYmosIG5hbWUpO1xuXG4gIEBrZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIC8vIE5vdyBpdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgQGVhY2ggJHBjdCwgJHByb3BzIGluICRvYmoge1xuICAgICAgI3stbXVpLWtleWZyYW1lLXBjdCgkcGN0KX0ge1xuICAgICAgICAvLyBMYXN0bHksIGl0ZXJhdGUgdGhyb3VnaCBlYWNoIENTUyBwcm9wZXJ0eSB3aXRoaW4gYSBwZXJjZW50YWdlIGFuZCBwcmludCBpdCBvdXRcbiAgICAgICAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkcHJvcHMge1xuICAgICAgICAgICN7JHByb3B9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzdHJpbmcgZm9yIGEgQ1NTIGtleWZyYW1lLCBieSBjb252ZXJ0aW5nIGEgbGlzdCBvZiBudW1iZXJzIHRvIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGlucHV0IC0gTGlzdCBvZiBudW1iZXJzIHRvIHVzZS5cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IEEgc2V0IG9mIGNvbW1hLXNlcGFyYXRlZCBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXBjdCgkaW5wdXQpIHtcbiAgJG91dHB1dDogKCk7XG5cbiAgQGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbnVtYmVyJyB7XG4gICAgJG91dHB1dDogKCRpbnB1dCAqIDElKTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ2xpc3QnIHtcbiAgICBAZWFjaCAkaSBpbiAkaW5wdXQge1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICgkaSAqIDElKSwgY29tbWEpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gXCIjeyRvdXRwdXR9XCI7XG59XG5cbi8vLyBQcmludHMgdGhlIENTUyBwcm9wZXJ0aWVzIGZyb20gYSBzcGVjaWZpYyBrZXkgaW4gYSBrZXlmcmFtZXMgbWFwLiBVc2VkIHRvIGJvcnJvdyBDU1MgZnJvbSBrZXlmcmFtZSBmdW5jdGlvbnMgZm9yIHVzZSBpbiB0cmFuc2l0aW9ucy5cbi8vLyBAcGFyYW0ge01hcH0gJGtmIC0gS2V5ZnJhbWUgbWFwIHRvIGV4dHJhY3QgZnJvbS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGtleSAtIEtleSBpbiB0aGUgbWFwIHRvIHByaW50IHRoZSBDU1Mgb2YuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLW11aS1rZXlmcmFtZS1nZXQoJGtmLCAka2V5KSB7XG4gICRtYXA6IG1hcC1nZXQoJGtmLCAka2V5KTtcblxuICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRtYXAgb3IgKCkge1xuICAgIC8vIFNvbWUga2V5ZnJhbWUgbWFwcyBzdG9yZSB0cmFuc2Zvcm1zIGFzIHF1b3RlZCBzdHJpbmdzXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkdmFsdWU6IHVucXVvdGUoJHZhbHVlKTtcbiAgICB9XG4gICAgI3skcHJvcH06ICR2YWx1ZTtcbiAgfVxufVxuXG4vLy8gUmVmb3JtYXRzIGEgbWFwIGNvbnRhaW5pbmcga2V5cyB3aXRoIGEgbGlzdCBvZiB2YWx1ZXMsIHNvIHRoYXQgZWFjaCBrZXkgaXMgYSBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gc3BsaXQgdXAuXG4vLy8gQHJldHVybiB7TWFwfSBBIHJlZm9ybWF0dGVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIFNwbGl0IGtleXMgd2l0aCBtdWx0aXBsZSB2YWx1ZXMgaW50byBpbmRpdmlkdWFsIGtleXNcbiAgQGVhY2ggJGtleSwgJGl0ZW0gaW4gJG1hcCB7XG4gICAgJGtleS10eXBlOiB0eXBlLW9mKCRrZXkpO1xuXG4gICAgQGlmICRrZXktdHlwZSA9PSAnbnVtYmVyJyB7XG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJGl0ZW0pKTtcbiAgICB9IEBlbHNlIGlmICRrZXktdHlwZSA9PSAnbGlzdCcge1xuICAgICAgQGVhY2ggJGsgaW4gJGtleSB7XG4gICAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgkazogJGl0ZW0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgYSBzZXJpZXMgb2Yga2V5ZnJhbWUgb2JqZWN0cyBpbnRvIG9uZS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRtYXBzLi4uIC0gQSBzZXJpZXMgb2YgbWFwcyB0byBtZXJnZSwgYXMgaW5kaXZpZHVhbCBwYXJhbWV0ZXJzLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBrZXlmcmFtZSBvYmplY3QuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1jb21iaW5lKCRtYXBzLi4uKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBtYXAgcGFzc2VkIGluXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgIEBpZiAtbXVpLWlzLWZ1bmN0aW9uKCRtYXApIHtcbiAgICAgICRtYXA6IC1tdWktc2FmZS1jYWxsKCRtYXApO1xuICAgIH1cblxuICAgICRtYXA6IC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCk7XG5cbiAgICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBpbiB0aGUgbWFwXG4gICAgLy8gJGtleSBpcyB0aGUga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIC8vICR2YWx1ZSBpcyBhIG1hcCBvZiBDU1MgcHJvcGVydGllc1xuICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAgICRuZXctdmFsdWU6ICgpO1xuXG4gICAgICBAaWYgbWFwLWhhcy1rZXkoJG5ldy1tYXAsICRrZXkpIHtcbiAgICAgICAgLy8gSWYgdGhlIG1hcCBhbHJlYWR5IGhhcyB0aGUga2V5ZnJhbWUgJSwgYXBwZW5kIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogLW11aS1tZXJnZS1wcm9wZXJ0aWVzKG1hcC1nZXQoJG5ldy1tYXAsICRrZXkpLCAkdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIE90aGVyd2lzZSwgY3JlYXRlIGEgbmV3IG1hcCB3aXRoIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogJHZhbHVlO1xuICAgICAgfVxuXG4gICAgICAvLyBGaW5hbGx5LCBtZXJnZSB0aGUgbW9kaWZpZWQga2V5ZnJhbWUgdmFsdWUgaW50byB0aGUgb3V0cHV0IG1hcFxuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRuZXctdmFsdWUpKTtcbiAgICB9XG4gIH1cblxuICAvLyBNYWtlIGEgbmFtZSBmb3IgdGhlIGtleWZyYW1lc1xuICAkLW11aS1jdXN0b206ICQtbXVpLWN1c3RvbSArIDEgIWdsb2JhbDtcbiAgJG1hcC1uYW1lOiAobmFtZTogJ2N1c3RvbS0jeyQtbXVpLWN1c3RvbX0nKTtcbiAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgJG1hcC1uYW1lKTtcblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgdHdvIG1hcHMgb2YgQ1NTIHByb3BlcnRpZXMgaW50byBvbmUgbWFwLiBJZiBib3RoIG1hcHMgaGF2ZSBhIHRyYW5zZm9ybSBwcm9wZXJ0eSwgdGhlIHZhbHVlcyBmcm9tIGVhY2ggd2lsbCBiZSBjb21iaW5lZCBpbnRvIG9uZSBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge01hcH0gJG9uZSAtIEZpcnN0IG1hcCB0byBtZXJnZS5cbi8vLyBAcGFyYW0ge01hcH0gJHR3byAtIFNlY29uZCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLW1lcmdlLXByb3BlcnRpZXMoJG9uZSwgJHR3bykge1xuICBAaWYgbWFwLWhhcy1rZXkoJG9uZSwgdHJhbnNmb3JtKSBhbmQgbWFwLWhhcy1rZXkoJHR3bywgdHJhbnNmb3JtKSB7XG4gICAgJHRyYW5zZm9ybTogam9pbihtYXAtZ2V0KCRvbmUsIHRyYW5zZm9ybSksIG1hcC1nZXQoJHR3bywgdHJhbnNmb3JtKSk7XG4gICAgJG9uZTogbWFwLW1lcmdlKCRvbmUsICh0cmFuc2Zvcm06ICR0cmFuc2Zvcm0pKTtcbiAgICAkdHdvOiBtYXAtcmVtb3ZlKCR0d28sIHRyYW5zZm9ybSk7XG4gIH1cblxuICBAcmV0dXJuIG1hcC1tZXJnZSgkb25lLCAkdHdvKTtcbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2xpZGluZyB0cmFuc2l0aW9uIGJ5IHRyYW5zbGF0aW5nIHRoZSBlbGVtZW50IGhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbbnVsbF0gLSBEaXJlY3Rpb24gdG8gc2xpZGUgdG8uIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC4gQnkgZGVmYXVsdCBgbGVmdGAgYW5kIGByaWdodGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRhbW91bnQgWzEwMCVdIC0gTGVuZ3RoIG9mIHRoZSBzbGlkZSBhcyBhIHBlcmNlbnRhZ2UgdmFsdWUuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc2xpZGUgKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBudWxsLFxuICAkYW1vdW50OiAxMDAlLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzbGlkZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiAhPSBudWxsLCAkZGlyZWN0aW9uLCBpZigkc3RhdGUgPT0gaW4sIGxlZnQsIHJpZ2h0KSk7XG4gICRzbGlkZTogc2xpZGUoJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICAvLyBDU1MgT3V0cHV0XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG5cbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgZmFkZSB0cmFuc2l0aW9uIGJ5IGFkanVzdGluZyB0aGUgb3BhY2l0eSBvZiB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gW251bGxdIC0gT3BhY2l0eSB0byBzdGFydCBhdC4gTXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEuIEJ5IGRlZmF1bHQgYDBgIGFuZCBgMWAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbbnVsbF0gLSBPcGFjaXR5IHRvIGVuZCBvbi4gQnkgZGVmYXVsdCBgMWAgYW5kIGAwYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1mYWRlKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbnVsbCxcbiAgJHRvOiBudWxsLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRmcm9tOiBpZigkZnJvbSAhPSBudWxsLCAkZnJvbSwgaWYoJHN0YXRlID09IGluLCAwLCAxKSk7XG4gICR0bzogaWYoJHRvICE9IG51bGwsICR0bywgaWYoJHN0YXRlID09IGluLCAxLCAwKSk7XG4gICRmYWRlOiBmYWRlKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAwKTtcblxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMTAwKTtcbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSBlZmZlY3QgYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW251bGxdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC4gQnkgZGVmYXVsdCBgZnJvbS1iYWNrYCBhbmQgYGZyb20tZnJvbnRgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuQGZ1bmN0aW9uIGhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBudWxsXG4pIHtcbiAgLy8gUm90YXRpb24gZGlyZWN0aW9ucyB3aGVuIGhpbmdpbmcgZnJvbSBiYWNrIHZzLiBmcm9udFxuICAkcm90YXRpb24tYW1vdW50OiA5MGRlZztcbiAgJHJvdGF0aW9ucy1iYWNrOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgcmlnaHQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgbGVmdDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgKTtcbiAgJHJvdGF0aW9ucy1mcm9tOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGJvdHRvbTogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgKTtcblxuICAvLyBSb3RhdGlvbiBvcmlnaW5cbiAgJHR1cm4tb3JpZ2luOiBpZigkdHVybi1vcmlnaW4gIT0gbnVsbCwgJHR1cm4tb3JpZ2luLCBpZigkc3RhdGUgPT0gaW4sIGZyb20tYmFjaywgZnJvbS1mcm9udCkpO1xuICAkcm90YXRpb246ICcnO1xuICBAaWYgJHR1cm4tb3JpZ2luID09IGZyb20tZnJvbnQge1xuICAgICRyb3RhdGlvbjogbWFwLWdldCgkcm90YXRpb25zLWZyb20sICRmcm9tKTtcbiAgfSBAZWxzZSBpZiAkdHVybi1vcmlnaW4gPT0gZnJvbS1iYWNrIHtcbiAgICAkcm90YXRpb246IG1hcC1nZXQoJHJvdGF0aW9ucy1iYWNrLCAkZnJvbSk7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuICckdHVybi1vcmlnaW4gbXVzdCBiZSBlaXRoZXIgXCJmcm9tLWJhY2tcIiBvciBcImZyb20tZnJvbnRcIic7XG4gIH1cblxuICAvLyBTdGFydCBhbmQgZW5kIHN0YXRlXG4gICRzdGFydDogJyc7XG4gICRlbmQ6ICcnO1xuICBAaWYgJHN0YXRlID09IGluIHtcbiAgICAkc3RhcnQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHJvdGF0aW9uO1xuICAgICRlbmQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgcm90YXRlKDBkZWcpO1xuICB9IEBlbHNlIHtcbiAgICAkc3RhcnQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgcm90YXRlKDBkZWcpO1xuICAgICRlbmQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHJvdGF0aW9uO1xuICB9XG5cbiAgLy8gVHVybiBheGlzXG4gICRvcmlnaW46ICcnO1xuICBAaWYgJGF4aXMgPT0gZWRnZSB7XG4gICAgJG9yaWdpbjogJGZyb207XG4gIH0gQGVsc2Uge1xuICAgICRvcmlnaW46IGNlbnRlcjtcbiAgfVxuXG4gICRrZXlmcmFtZXM6IChcbiAgICBuYW1lOiAtbXVpLXN0cmluZy1zYWZlKCdoaW5nZS0jeyRzdGF0ZX0tI3skZnJvbX0tI3skYXhpc30tI3skdHVybi1vcmlnaW59JyksXG4gICAgMDogKHRyYW5zZm9ybTogJHN0YXJ0LCB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luKSxcbiAgICAxMDA6ICh0cmFuc2Zvcm06ICRlbmQpLFxuICApO1xuXG4gIEByZXR1cm4gJGtleWZyYW1lcztcbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmcm9tIFtsZWZ0XSAtIEVkZ2Ugb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIGZyb20uIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRheGlzIFtlZGdlXSAtIEF4aXMgb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIG9uLiBDYW4gYmUgYGVkZ2VgIG9yIGBjZW50ZXJgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkcGVyc3BlY3RpdmUgWzIwMDBweF0gLSBQZXJjZWl2ZWQgZGlzdGFuY2UgYmV0d2VlbiB0aGUgdmlld2VyIGFuZCB0aGUgZWxlbWVudC4gQSBoaWdoZXIgbnVtYmVyIHdpbGwgbWFrZSB0aGUgcm90YXRpb24gZWZmZWN0IG1vcmUgcHJvbm91bmNlZC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0dXJuLW9yaWdpbiBbbnVsbF0gLSBTaWRlIG9mIHRoZSBlbGVtZW50IHRvIHN0YXJ0IHRoZSByb3RhdGlvbiBmcm9tLiBDYW4gYmUgYGZyb20tYmFja2Agb3IgYGZyb20tZnJvbnRgLiBCeSBkZWZhdWx0IGBmcm9tLWJhY2tgIGFuZCBgZnJvbS1mcm9udGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1oaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogbnVsbCxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgaGluZ2UtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICR0dXJuLW9yaWdpbjogaWYoJHR1cm4tb3JpZ2luICE9IG51bGwsICR0dXJuLW9yaWdpbiwgaWYoJHN0YXRlID09IGluLCBmcm9tLWJhY2ssIGZyb20tZnJvbnQpKTtcbiAgJGhpbmdlOiBoaW5nZSgkc3RhdGUsICRmcm9tLCAkYXhpcywgJHBlcnNwZWN0aXZlLCAkdHVybi1vcmlnaW4pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2NhbGluZyB0cmFuc2l0aW9uLiBBIHNjYWxlIG9mIGAxYCBtZWFucyB0aGUgZWxlbWVudCBpcyB0aGUgc2FtZSBzaXplLiBMYXJnZXIgbnVtYmVycyBtYWtlIHRoZSBlbGVtZW50IGJpZ2dlciwgd2hpbGUgbnVtYmVycyBsZXNzIHRoYW4gMSBtYWtlIHRoZSBlbGVtZW50IHNtYWxsZXIuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFtudWxsXSAtIFNpemUgdG8gc3RhcnQgYXQuIEJ5IGRlZmF1bHQgYDBgIGFuZCBgMWAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbbnVsbF0gLSBTaXplIHRvIGVuZCBhdC4gQnkgZGVmYXVsdCBgMWAgYW5kIGAwYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXpvb20oXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBudWxsLFxuICAkdG86IG51bGwsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNjYWxlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZnJvbTogaWYoJGZyb20gIT0gbnVsbCwgJGZyb20sIGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSkpO1xuICAkdG86IGlmKCR0byAhPSBudWxsLCAkdG8sIGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCkpO1xuICAkc2NhbGU6IHpvb20oJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzcGlubmluZyB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LiBUaGUgYHR1cm5gIHVuaXQgaXMgdXNlZCB0byBzcGVjaWZ5IGhvdyBmYXIgdG8gcm90YXRlLiBgMXR1cm5gIGlzIGVxdWFsIHRvIGEgMzYwLWRlZ3JlZSBzcGluLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbbnVsbF0gLSBEaXJlY3Rpb24gdG8gc3Bpbi4gU2hvdWxkIGJlIGBjd2AgKGNsb2Nrd2lzZSkgb3IgYGNjd2AgKGNvdW50ZXJjbG9ja3dpc2UpLiBCeSBkZWZhdWx0IGBjd2AgYW5kIGBjY3dgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYW1vdW50IFswLjc1dHVybl0gLSBBbW91bnQgdG8gZWxlbWVudCB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zcGluKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBjdyxcbiAgJGFtb3VudDogMC43NXR1cm4sXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNwaW4tYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gIT0gbnVsbCwgJGRpcmVjdGlvbiwgaWYoJHN0YXRlID09IGluLCBjdywgY2N3KSk7XG4gICRzcGluOiBzcGluKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIGFuZCBhc3NpZ25zIGl0IHRvIHRoZSBlbGVtZW50IGJ5IGFkZGluZyB0aGUgYGFuaW1hdGlvbi1uYW1lYCBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWktYW5pbWF0aW9uKCRhcmdzLi4uKSB7XG4gICRuYW1lOiBtYXAtZ2V0KC1tdWktcHJvY2Vzcy1hcmdzKCRhcmdzLi4uKSwgbmFtZSk7XG4gIEBpbmNsdWRlIG11aS1rZXlmcmFtZXMoJG5hbWUsICRhcmdzLi4uKTtcbiAgYW5pbWF0aW9uLW5hbWU6IHVucXVvdGUoJG5hbWUpO1xufVxuIiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5kcmFnZ2luZyBpbWcge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyohIGxvY29tb3RpdmUtc2Nyb2xsIHY0LjEuMyB8IE1JVCBMaWNlbnNlIHwgaHR0cHM6Ly9naXRodWIuY29tL2xvY29tb3RpdmVtdGwvbG9jb21vdGl2ZS1zY3JvbGwgKi9cbmh0bWwuaGFzLXNjcm9sbC1zbW9vdGgge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbmh0bWwuaGFzLXNjcm9sbC1kcmFnZ2luZyB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLmhhcy1zY3JvbGwtc21vb3RoIGJvZHkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5oYXMtc2Nyb2xsLXNtb290aCBbZGF0YS1zY3JvbGwtY29udGFpbmVyXSB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoOyB9XG5cbltkYXRhLXNjcm9sbC1kaXJlY3Rpb249XCJob3Jpem9udGFsXCJdIFtkYXRhLXNjcm9sbC1jb250YWluZXJdIHtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbltkYXRhLXNjcm9sbC1kaXJlY3Rpb249XCJob3Jpem9udGFsXCJdIFtkYXRhLXNjcm9sbC1zZWN0aW9uXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5jLXNjcm9sbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDExcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHJpZ2h0O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcywgb3BhY2l0eSAwLjNzO1xuICBvcGFjaXR5OiAwOyB9XG4gIC5jLXNjcm9sbGJhcjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMS40NSk7IH1cbiAgLmMtc2Nyb2xsYmFyOmhvdmVyLCAuaGFzLXNjcm9sbC1zY3JvbGxpbmcgLmMtc2Nyb2xsYmFyLCAuaGFzLXNjcm9sbC1kcmFnZ2luZyAuYy1zY3JvbGxiYXIge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgW2RhdGEtc2Nyb2xsLWRpcmVjdGlvbj1cImhvcml6b250YWxcIl0gLmMtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTsgfVxuICAgIFtkYXRhLXNjcm9sbC1kaXJlY3Rpb249XCJob3Jpem9udGFsXCJdIC5jLXNjcm9sbGJhcjpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWSgxLjMpOyB9XG5cbi5jLXNjcm9sbGJhcl90aHVtYiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIG9wYWNpdHk6IDAuNTtcbiAgd2lkdGg6IDdweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbWFyZ2luOiAycHg7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xuICBjdXJzb3I6IGdyYWI7IH1cbiAgLmhhcy1zY3JvbGwtZHJhZ2dpbmcgLmMtc2Nyb2xsYmFyX3RodW1iIHtcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiBncmFiYmluZzsgfVxuICBbZGF0YS1zY3JvbGwtZGlyZWN0aW9uPVwiaG9yaXpvbnRhbFwiXSAuYy1zY3JvbGxiYXJfdGh1bWIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogMDsgfVxuIiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICBzcmM6IHVybCgnLi4vZm9udHMvZm9udGVsbG8uZW90PzMzMTAwODgxJyk7XG4gIHNyYzogdXJsKCcuLi9mb250cy9mb250ZWxsby5lb3Q/MzMxMDA4ODEjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgdXJsKCcuLi9mb250cy9mb250ZWxsby53b2ZmMj8zMzEwMDg4MScpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL2ZvbnRlbGxvLndvZmY/MzMxMDA4ODEnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL2ZvbnRlbGxvLnR0Zj8zMzEwMDg4MScpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL2ZvbnRlbGxvLnN2Zz8zMzEwMDg4MSNmb250ZWxsbycpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi8qIENocm9tZSBoYWNrOiBTVkcgaXMgcmVuZGVyZWQgbW9yZSBzbW9vdGggaW4gV2luZG96emUuIDEwMCUgbWFnaWMsIHVuY29tbWVudCBpZiB5b3UgbmVlZCBpdC4gKi9cbi8qIE5vdGUsIHRoYXQgd2lsbCBicmVhayBoaW50aW5nISBJbiBvdGhlciBPUy1lcyBmb250IHdpbGwgYmUgbm90IGFzIHNoYXJwIGFzIGl0IGNvdWxkIGJlICovXG4vKlxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzowKSB7XG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICAgIHNyYzogdXJsKCcuLi9mb250L2ZvbnRlbGxvLnN2Zz8zMzEwMDg4MSNmb250ZWxsbycpIGZvcm1hdCgnc3ZnJyk7XG4gIH1cbn1cbiovXG5bY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcImZvbnRlbGxvXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3BlYWs6IG5ldmVyO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB3aWR0aDogMWVtO1xuICBtYXJnaW4tcmlnaHQ6IC4yZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLyogb3BhY2l0eTogLjg7ICovXG5cbiAgLyogRm9yIHNhZmV0eSAtIHJlc2V0IHBhcmVudCBzdHlsZXMsIHRoYXQgY2FuIGJyZWFrIGdseXBoIGNvZGVzKi9cbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gIC8qIGZpeCBidXR0b25zIGhlaWdodCwgZm9yIHR3aXR0ZXIgYm9vdHN0cmFwICovXG4gIGxpbmUtaGVpZ2h0OiAxZW07XG5cbiAgLyogQW5pbWF0aW9uIGNlbnRlciBjb21wZW5zYXRpb24gLSBtYXJnaW5zIHNob3VsZCBiZSBzeW1tZXRyaWMgKi9cbiAgLyogcmVtb3ZlIGlmIG5vdCBuZWVkZWQgKi9cbiAgbWFyZ2luLWxlZnQ6IC4yZW07XG5cbiAgLyogeW91IGNhbiBiZSBtb3JlIGNvbWZvcnRhYmxlIHdpdGggaW5jcmVhc2VkIGljb25zIHNpemUgKi9cbiAgLyogZm9udC1zaXplOiAxMjAlOyAqL1xuXG4gIC8qIEZvbnQgc21vb3RoaW5nLiBUaGF0IHdhcyB0YWtlbiBmcm9tIFRXQlMgKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbiAgLyogVW5jb21tZW50IGZvciAzRCBlZmZlY3QgKi9cbiAgLyogdGV4dC1zaGFkb3c6IDFweCAxcHggMXB4IHJnYmEoMTI3LCAxMjcsIDEyNywgMC4zKTsgKi9cbn1cblxuLmljb24tcmlnaHQtb3Blbi1taW5pOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDAnOyB9IC8qICfuoIAnICovXG4uaWNvbi1yaWdodC1vcGVuLWJpZzpiZWZvcmUgeyBjb250ZW50OiAnXFxlODAxJzsgfSAvKiAn7qCBJyAqL1xuLmljb24tbGVmdC1vcGVuLW1pbmk6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwMic7IH0gLyogJ+6ggicgKi9cbi5pY29uLXN0YXI6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwMyc7IH0gLyogJ+6ggycgKi9cbi5pY29uLXBob25lOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDQnOyB9IC8qICfuoIQnICovXG4uaWNvbi11cC1vcGVuLW1pbmk6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwNSc7IH0gLyogJ+6ghScgKi9cbi5pY29uLXBsYXktMTpiZWZvcmUgeyBjb250ZW50OiAnXFxlODA2JzsgfSAvKiAn7qCGJyAqL1xuLmljb24tZG93bi1vcGVuLW1pbmk6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwNyc7IH0gLyogJ+6ghycgKi9cbi5pY29uLWxvY2F0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDgnOyB9IC8qICfuoIgnICovXG4uaWNvbi1naWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDknOyB9IC8qICfuoIknICovXG4uaWNvbi1jbG9jay0xOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MGEnOyB9IC8qICfuoIonICovXG4uaWNvbi1naWZ0LTE6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwYic7IH0gLyogJ+6giycgKi9cbi5pY29uLWdpZnQtMjpiZWZvcmUgeyBjb250ZW50OiAnXFxlODBjJzsgfSAvKiAn7qCMJyAqL1xuLmljb24tZXllOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MGQnOyB9IC8qICfuoI0nICovXG4uaWNvbi1pbnN0YWdyYW06YmVmb3JlIHsgY29udGVudDogJ1xcZjA1ZCc7IH0gLyogJ++BnScgKi9cbi5pY29uLXVzZXItMjpiZWZvcmUgeyBjb250ZW50OiAnXFxmMDYxJzsgfSAvKiAn74GhJyAqL1xuLmljb24tZmFjZWJvb2s6YmVmb3JlIHsgY29udGVudDogJ1xcZjA5YSc7IH0gLyogJ++CmicgKi9cbi5pY29uLW1lbnU6YmVmb3JlIHsgY29udGVudDogJ1xcZjBjOSc7IH0gLyogJ++DiScgKi9cbi5pY29uLWZvb2Q6YmVmb3JlIHsgY29udGVudDogJ1xcZjBmNSc7IH0gLyogJ++DtScgKi9cbi5pY29uLWNhbGVuZGFyLWVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYxMzMnOyB9IC8qICfvhLMnICovXG4uaWNvbi15b3V0dWJlLXBsYXk6YmVmb3JlIHsgY29udGVudDogJ1xcZjE2YSc7IH0gLyogJ++FqicgKi9cbi5pY29uLXNuYXBjaGF0LWdob3N0OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYyYWMnOyB9IC8qICfviqwnICovXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYzMDknOyB9IC8qICfvjIknICovXG4uaWNvbi1saW5rZWRpbi1zcXVhcmVkOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYzMGMnOyB9IC8qICfvjIwnICovXG4uaWNvbi1waW50ZXJlc3Q6YmVmb3JlIHsgY29udGVudDogJ1xcZjMxMic7IH0gLyogJ++MkicgKi9cbiIsImJvZHl7XHJcblx0d2lkdGg6IDEwMHZ3O1xyXG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcbi5wcmljZUxvYWRlcntcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0YmFja2dyb3VuZDogcmdiYSgjZmZmLDAuNSk7XHJcblx0d2lkdGg6IDEwMHZ3O1xyXG5cdGhlaWdodDogMTAwdmg7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0ZmlsdGVyOmJsdXIoNTBweCk7XHJcblx0ei1pbmRleDoxMDtcclxuXHRkaXNwbGF5Om5vbmU7XHJcbn1cclxuLm1haW5TbGlkZXJ7XHJcblx0LnNsaWRlci1mb3J7XHJcblx0XHRcdD4gZGl2Om5vdCg6Zmlyc3QtY2hpbGQpe1xyXG5cdFx0XHRcdGRpc3BsYXk6bm9uZVxyXG5cdFx0XHR9XHJcblx0fVxyXG59XHJcbi5uYXZTbGlkZXJ7XHJcblx0LnNsaWRlci1uYXZ7XHJcblx0XHRcdD4gZGl2Om5vdCg6Zmlyc3QtY2hpbGQpe1xyXG5cdFx0XHRcdGRpc3BsYXk6bm9uZVxyXG5cdFx0XHR9XHJcblx0fVxyXG59XHJcbi5nYWxsZXJ5U2xpZGVye1xyXG5cdD4gZGl2Om5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguc2xpY2stbGlzdCl7XHJcblx0XHRkaXNwbGF5Om5vbmVcclxuXHR9XHJcbn1cclxuLmxvYWRlcntcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHR3aWR0aDogMTAwdnc7XHJcblx0aGVpZ2h0OiAxMDB2aDtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0ei1pbmRleDogMTAwMDAwMDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbjtcclxuXHRpbWd7XHJcblx0XHR3aWR0aDogODAlO1xyXG5cdFx0bWFyZ2luOjUwcHggYXV0bztcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHdpZHRoOiA2MCU7XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtY29udGFpbmVye1xyXG5cdFx0d2lkdGg6IDUwJTtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluO1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0d2lkdGg6IDkwJTtcclxuXHRcdH1cclxuXHR9XHJcblx0Ji5mYWRle1xyXG5cdFx0dG9wOi0xMDB2aDtcclxuXHRcdC5sb2FkZXItY29udGFpbmVye1xyXG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQuaGVhZGxpbmVze1xyXG5cdFx0aGVpZ2h0OiA4MHB4O1xyXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdCYtdHJhY2t7XHJcblx0XHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcclxuXHRcdFx0YW5pbWF0aW9uLW5hbWU6IGFuaW1hdGlvbjsgXHJcblx0XHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogNnM7IFxyXG5cdFx0XHRhbmltYXRpb24tZGVsYXk6IDJzOyBcclxuXHRcdFx0YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XHJcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHRcdH1cclxuXHRcdGgye1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdGNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdFx0XHRmb250LXNpemU6IDUwcHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdEBrZXlmcmFtZXMgYW5pbWF0aW9uIHtcclxuXHQgIDAlIHtcclxuXHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XHJcblx0ICB9XHJcblx0ICA1MCUge1xyXG5cdCAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcHgpO1xyXG5cdCAgfVxyXG5cdCAgMTAwJSB7XHJcblx0ICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTYwcHgpO1xyXG5cdCAgfVxyXG5cdH1cclxuXHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0LmhlYWRsaW5lc3tcclxuXHRcdFx0aGVpZ2h0OiAzNnB4O1xyXG5cdFx0XHRoMntcclxuXHRcdFx0XHRoZWlnaHQ6IDM2cHg7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0XHRmb250LXNpemU6IDI0cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBrZXlmcmFtZXMgYW5pbWF0aW9uIHtcclxuXHRcdCAgMCUge1xyXG5cdFx0ICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xyXG5cdFx0ICB9XHJcblx0XHQgIDUwJSB7XHJcblx0XHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00MHB4KTtcclxuXHRcdCAgfVxyXG5cdFx0ICAxMDAlIHtcclxuXHRcdCAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcHgpO1xyXG5cdFx0ICB9XHJcblx0XHR9XHJcblx0fVxyXG5cdC8qJl9iYXIge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0aGVpZ2h0OiA1cHg7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICMxY2EyYmM7XHJcblx0XHRib3JkZXItcmFkaXVzOiAxZW07XHJcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0Jjo6YWZ0ZXIge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdFx0Y29udGVudDogXCJcIjtcclxuXHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICNmZmY1LCByZ2JhKCRibHVlLCAwLjg5MSkpO1xyXG5cdFx0XHRhbmltYXRpb246IGxvYWRpbmctYW5pbWF0aW9uIDEuM3MgaW5maW5pdGU7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDFlbTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBrZXlmcmFtZXMgbG9hZGluZy1hbmltYXRpb24ge1xyXG5cdCAgMCUge1xyXG5cdCAgICBsZWZ0OiAtNTAlO1xyXG5cdCAgfVxyXG5cclxuXHQgIDEwMCUge1xyXG5cdCAgICBsZWZ0OiAxNTAlO1xyXG5cdCAgfVxyXG5cdH0qL1xyXG59XHJcbi5zbGljay1zbGlkZXJ7XHJcblx0aW1ne1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG59XHJcbi5mdWxsV2lkdGhJbWd7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuLmJhbm5lcntcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0aGVpZ2h0OiAxMDB2aDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczpjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0JjpiZWZvcmV7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM1KTtcclxuXHRcdHRvcDogMDtcclxuXHRcdHotaW5kZXg6IDE7XHJcblx0fVxyXG5cdGltZ3tcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0ei1pbmRleDogMDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdG1heC13aWR0aDogaW5pdGlhbDtcclxuXHRcdFx0d2lkdGg6IGF1dG87XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtdGV4dHtcclxuXHRcdHotaW5kZXg6IDE7XHJcblx0XHRoMXtcclxuXHRcdFx0Y29sb3I6I2ZmZjtcclxuXHRcdFx0dGV4dC1zaGFkb3c6MCAwIDIwcHggIzAwMDtcclxuXHRcdFx0c3BhbntcclxuXHRcdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogMTAwcHg7XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiA2MHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdC8vZm9udC1zaXplOiAxMHZ3O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtc2Nyb2xse1xyXG5cdFx0Y29sb3I6ICNmZmY7XHJcblx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHQgICAgYm90dG9tOiA1MHB4O1xyXG5cdCAgICBsZWZ0OiA1MCU7XHJcblx0ICAgIHotaW5kZXg6IDE7XHJcblx0ICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuXHQgICAgZm9udC13ZWlnaHQ6NjAwO1xyXG5cdCAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAyMHB4ICMwMDA7XHJcblx0ICAgIGZvbnQtc2l6ZToxLjJ2dztcclxuXHQgICAgQG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcclxuXHRcdCAgICAmOmJlZm9yZXtcclxuXHRcdCAgICBcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ICAgIFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHRcdCAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdCAgICBcdHdpZHRoOiAxcHg7XHJcblx0XHQgICAgXHRoZWlnaHQ6IDM1cHg7XHJcblx0XHRcdCAgICBsZWZ0OiA1MCU7XHJcblx0XHRcdCAgICBib3R0b206IC01MHB4O1xyXG5cdFx0ICAgIH1cclxuXHRcdCAgICAmOmFmdGVye1xyXG5cdFx0ICAgIFx0Y29udGVudDogJyc7XHJcblx0XHQgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdFx0ICAgIFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ICAgIFx0d2lkdGg6IDNweDtcclxuXHRcdCAgICBcdC8vaGVpZ2h0OiAxMHB4O1xyXG5cdFx0XHQgICAgbGVmdDogY2FsYyg1MCUgLSAxcHgpO1xyXG5cdFx0XHQgICAgdG9wOiAzNHB4O1xyXG5cdFx0XHQgICAgYW5pbWF0aW9uOiBteW1vdmUgM3M7XHJcbiAgXHRcdFx0XHRhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcclxuXHRcdCAgICB9XHJcblx0XHQgICAgQGtleWZyYW1lcyBteW1vdmUge1xyXG5cdFx0XHQgIC8qZnJvbSB7dG9wOiAyOXB4O31cclxuXHRcdFx0ICB0byB7dG9wOiA2OHB4O30qL1xyXG5cdFx0XHQgIDAlIHtoZWlnaHQ6IDBweDsgdG9wOiAzNHB4O31cclxuXHRcdFx0ICA1MCUge2hlaWdodDogMzVweDsgdG9wOiAzNHB4O31cclxuXHRcdFx0ICAxMDAle2hlaWdodDogMzVweDsgdG9wOjcwcHh9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHQgICAgJjpob3ZlciwmOmZvY3Vze1xyXG5cdCAgICBcdGNvbG9yOiNmZmY7XHJcblx0ICAgIH1cclxuXHR9XHJcblx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdGhlaWdodDogY2FsYygxMDB2aCAtIDU5cHgpO1xyXG5cdH1cclxuXHRAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xyXG5cdFx0YmFja2dyb3VuZC1hdHRhY2htZW50OmZpeGVkO1xyXG5cdH1cclxufVxyXG4uc3VicGFnZUJhbm5lcntcclxuXHQuYmFubmVye1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdFx0YWxpZ24taXRlbXM6IGVuZDtcclxuXHRcdC5iYW5uZXItdGV4dHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMTB2aDtcclxuICAgIFx0XHRtYXJnaW4tbGVmdDogNnZ3O1xyXG4gICAgXHRcdHNwYW57XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDE0MHB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5zbGlkZXJCYW5uZXJ7XHJcblx0aGVpZ2h0OiAxMDB2aDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRoZWlnaHQ6IGNhbGMoMTAwdmggLSA2MHB4KTtcclxuXHR9XHJcblx0LmJhbm5lclNsaWRle1xyXG5cdFx0aGVpZ2h0OiAxMDB2aDtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcclxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHR2aWRlb3tcclxuXHRcdFx0d2lkdGg6IDEwMHZ3O1xyXG5cdFx0XHQvKmhlaWdodDogMTAwdmg7XHRcclxuXHRcdFx0d2lkdGg6IGF1dG87Ki9cclxuXHRcdFx0LypAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XHJcblx0XHRcdFx0aGVpZ2h0OiAxMDB2aDtcdFxyXG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0XHR9Ki9cclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHQvKmhlaWdodDogYXV0bztcdFxyXG5cdFx0XHRcdHdpZHRoOiAxMDB2dzsqL1xyXG5cdFx0XHRcdGhlaWdodDogMTAwdmg7XHRcclxuXHRcdFx0XHR3aWR0aDogYXV0bztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0aW1ne1xyXG5cdFx0XHR3aWR0aDogYXV0bztcclxuXHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRtYXgtd2lkdGg6IGluaXRpYWw7XHJcblx0XHR9XHJcblx0XHQmOmJlZm9yZXtcclxuXHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdGhlaWdodDogMTAwJTtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM1KTtcclxuXHRcdFx0dG9wOiAwO1xyXG5cdFx0fVxyXG5cdFx0Ji10ZXh0e1xyXG5cdFx0XHR6LWluZGV4OiAxO1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0ICAgIGhlaWdodDogMTAwJTtcclxuXHRcdCAgICBkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHQgICAgdG9wOiAwO1xyXG5cdFx0ICAgIGxlZnQ6IDA7XHJcblx0XHRcdGgxe1xyXG5cdFx0XHRcdGNvbG9yOiNmZmY7XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogNjBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCYtc2Nyb2xse1xyXG5cdFx0XHRjb2xvcjogI2ZmZjtcclxuXHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdCAgICBib3R0b206IDUwcHg7XHJcblx0ICAgIGxlZnQ6IDUwJTtcclxuXHQgICAgei1pbmRleDogMTtcclxuXHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG5cdCAgICBmb250LXNpemU6MTRwdDtcclxuXHQgICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuXHQgICAgQG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcclxuXHRcdCAgICAmOmJlZm9yZXtcclxuXHRcdCAgICBcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ICAgIFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHRcdCAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdCAgICBcdHdpZHRoOiAxcHg7XHJcblx0XHQgICAgXHRoZWlnaHQ6IDM1cHg7XHJcblx0XHRcdCAgICBsZWZ0OiA1MCU7XHJcblx0XHRcdCAgICBib3R0b206IC01MHB4O1xyXG5cdFx0ICAgIH1cclxuXHRcdCAgICAmOmFmdGVye1xyXG5cdFx0ICAgIFx0Y29udGVudDogJyc7XHJcblx0XHQgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdFx0ICAgIFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ICAgIFx0d2lkdGg6IDNweDtcclxuXHRcdCAgICBcdC8vaGVpZ2h0OiAxMHB4O1xyXG5cdFx0XHQgICAgbGVmdDogY2FsYyg1MCUgLSAxcHgpO1xyXG5cdFx0XHQgICAgdG9wOiAzNHB4O1xyXG5cdFx0XHQgICAgYW5pbWF0aW9uOiBteW1vdmUgM3M7XHJcbiAgXHRcdFx0XHRhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcclxuXHRcdCAgICB9XHJcblx0XHQgICAgQGtleWZyYW1lcyBteW1vdmUge1xyXG5cdFx0XHQgIC8qZnJvbSB7dG9wOiAyOXB4O31cclxuXHRcdFx0XHQgIHRvIHt0b3A6IDY4cHg7fSovXHJcblx0XHRcdFx0ICAwJSB7aGVpZ2h0OiAwcHg7IHRvcDogMzRweDt9XHJcblx0XHRcdFx0ICA1MCUge2hlaWdodDogMzVweDsgdG9wOiAzNHB4O31cclxuXHRcdFx0XHQgIDEwMCV7aGVpZ2h0OiAzNXB4OyB0b3A6NzBweH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHQgICAgJjpob3ZlciwmOmZvY3Vze1xyXG5cdCAgICBcdGNvbG9yOiNmZmY7XHJcblx0ICAgIH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdGhlaWdodDogY2FsYygxMDB2aCAtIDU5cHgpO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0YmFja2dyb3VuZC1hdHRhY2htZW50OmZpeGVkO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4uYWJvdXREZXZlbG9wZXJ7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGhlaWdodDogMTAwdmg7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1zaXplOmNvdmVyO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6Y2VudGVyO1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0aGVpZ2h0OiA4MHZoO1xyXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR9XHJcblx0QG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcclxuXHRcdGJhY2tncm91bmQtYXR0YWNobWVudDpmaXhlZDtcclxuXHR9XHJcblx0JjpiZWZvcmV7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM1KTtcclxuXHRcdHotaW5kZXg6IDE7XHJcblx0fVxyXG5cdGltZ3tcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0ei1pbmRleDogMDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdG1heC13aWR0aDogaW5pdGlhbDtcclxuXHRcdFx0d2lkdGg6IGF1dG87XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtdGV4dHtcclxuXHRcdHotaW5kZXg6IDE7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRoMixhLHNwYW57XHJcblx0XHRcdGNvbG9yOiNmZmYgIWltcG9ydGFudDtcclxuXHRcdH1cclxuXHRcdGgye1xyXG5cdFx0XHRmb250LXNpemU6IDV2dztcclxuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDFweDtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDQuNXZ3O1xyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogOHZ3O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5wb3B1cHtcclxuXHRwb3NpdGlvbjpmaXhlZDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0ZGlzcGxheTogbm9uZTtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHotaW5kZXg6IDEwMDAwO1xyXG4gICAgYmFja2dyb3VuZDpyZ2JhKCRkYXJrLWJsdWUsMC44KTtcclxuICAgICYub3BlbntcclxuICAgIFx0ZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuICAgICZfY29udGFpbmVye1xyXG4gICAgXHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgXHRwYWRkaW5nOiA1MHB4IDMwcHg7XHJcbiAgICBcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgXHR3aWR0aDogNzAlO1xyXG4gICAgXHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gICAgXHRcdHdpZHRoOiA4MCU7XHJcbiAgICBcdFx0cGFkZGluZzogMzBweCAyNXB4O1xyXG4gICAgXHR9XHJcbiAgICB9XHJcbiAgICAuY2xvc2VCdG57XHJcbiAgICBcdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IC02NXB4O1xyXG5cdFx0dG9wOiAtNDBweDtcclxuXHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgIFx0XHRyaWdodDogMDtcclxuICAgIFx0fVxyXG4gICAgfVxyXG59XHJcbiNjb250YWN0Rm9ybXtcclxuXHQjZ2Zvcm1fNHtcclxuICAgICAgLmdmaWVsZHtcclxuICAgICAgICAmOmZpcnN0LWNoaWxke1xyXG4gICAgICAgICAgb3JkZXI6MTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoMil7XHJcbiAgICAgICAgICBvcmRlcjoyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCgzKXtcclxuICAgICAgICAgIG9yZGVyOjQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bnRoLWNoaWxkKDQpe1xyXG4gICAgICAgICAgb3JkZXI6NTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoNSl7XHJcbiAgICAgICAgICBvcmRlcjozO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCg2KXtcclxuICAgICAgICAgIG9yZGVyOjY7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblx0fVxyXG5cdEBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XHJcblx0XHQuZ2Zvcm1fd3JhcHBlcntcclxuXHRcdFx0LmdmaWVsZHtcclxuXHRcdFx0XHQmI2ZpZWxkXzNfNSwmI2ZpZWxkXzRfNSwmI2ZpZWxkXzExXzV7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0XHQuZ2lucHV0X2NvbnRhaW5lcntcclxuXHRcdFx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmdmb3JtX3dyYXBwZXJ7XHJcblx0LmdmaWVsZHtcclxuXHRcdGlucHV0LHRleHRhcmVhLHNlbGVjdHtcclxuXHRcdFx0Ym9yZGVyOm5vbmU7XHJcblx0XHRcdGJveC1zaGFkb3c6bm9uZTtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTowLjVweCBzb2xpZCByZ2JhKCMwMDAsMC40KTtcclxuXHRcdFx0YmFja2dyb3VuZDp0cmFuc3BhcmVudDtcclxuXHRcdH1cclxuXHRcdHNlbGVjdHtcclxuXHRcdCAgY29sb3I6ICNiYmI7XHJcblx0XHQgICY6aW52YWxpZCwgb3B0aW9uW3ZhbHVlPVwiXCJde1xyXG5cdFx0ICBcdGNvbG9yOiAjYmJiO1xyXG5cdFx0ICB9XHJcblx0XHQgIG9wdGlvbntcclxuXHRcdCAgXHRjb2xvcjogIzAwMDtcclxuXHRcdCAgfVxyXG5cdFx0fVxyXG5cdFx0aW5wdXQsc2VsZWN0LHRleHRhcmVhe1xyXG5cdFx0XHQmOjpwbGFjZWhvbGRlcntcclxuXHRcdFx0XHRjb2xvcjojYmJiO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcblx0Lmdmb3JtX2Zvb3RlcntcclxuXHRcdHBhZGRpbmctYm90dG9tOjAgIWltcG9ydGFudDtcclxuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuXHRcdG1hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDtcclxuXHRcdGlucHV0e1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG5cdCAgICBwYWRkaW5nOjEwcHggMjBweDtcclxuXHQgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHQgICAgZm9udC1zaXplOiAxdnc7XHJcblx0ICAgIGNvbG9yOiAjZmZmO1xyXG5cdCAgICBib3JkZXItcmFkaXVzOjIwcHg7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdCAgICBmb250LXNpemU6IDR2dztcclxuXHRcdCAgfVxyXG5cdFx0ICAmOmhvdmVye1xyXG5cdCAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xyXG5cdCAgICAgIGNvbG9yOiNmZmY7XHJcblx0ICAgIH1cclxuXHJcblx0XHR9XHJcblx0fVxyXG5cdCYuZ3Jhdml0eS10aGVtZXtcclxuXHRcdC5nZm9ybV92YWxpZGF0aW9uX2Vycm9yc3tcclxuXHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRcdFx0Ym9yZGVyOm5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG5cdFx0XHRib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcblx0XHRcdGgye1xyXG5cdFx0XHRcdGNvbG9yOiNjMDJiMGEgIWltcG9ydGFudDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmdmaWVsZF92YWxpZGF0aW9uX21lc3NhZ2UsIC52YWxpZGF0aW9uX21lc3NhZ2V7XHJcblx0XHRcdGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcblx0XHRcdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuXHRcdFx0cGFkZGluZzogMHB4IDI0cHggMTBweCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4ubm9BcnJvd1NsaWRlcntcclxuXHRwYWRkaW5nLWxlZnQ6IDE1MHB4O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdHBhZGRpbmctbGVmdDoxNXB4O1xyXG5cdH1cclxuXHQuc2xpZGVyLW5ve1xyXG5cdFx0Zm9udC1zaXplOiA0MHB4O1xyXG5cdFx0Zm9udC1mYW1pbHk6IEVsTWVzc2lyaTtcclxuXHRcdGNvbG9yOiByZ2JhKCRkYXJrLWJsdWUsMC40KTtcclxuXHRcdHdpZHRoOiAxMDBweDtcclxuICAgIC8vaGVpZ2h0OiAxMDAlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHRcdHNwYW57XHJcblx0XHRcdGNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdFx0XHRmb250LWZhbWlseTogRWxNZXNzaXJpO1xyXG5cdFx0XHRmb250LXNpemU6IDQwcHg7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHQgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHQgICAgcGFkZGluZy1yaWdodDogMjVweDtcclxuXHQgICAgZm9udC1zaXplOiAyMHB4O1xyXG5cdCAgICBzcGFue1xyXG5cdCAgICBcdGZvbnQtc2l6ZTogMjBweDtcclxuXHQgICAgfVxyXG5cdFx0fVxyXG5cdH1cclxuXHQuc2xpZGVye1xyXG5cdFx0Jl90aXRsZXtcclxuXHRcdFx0b3BhY2l0eTogMDtcclxuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDFzIGVhc2UgMXM7XHJcblx0XHRcdC8qcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRib3R0b206MDsqL1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0cGFkZGluZzogMHB4IDgwcHg7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0cGFkZGluZzogMHB4IDIwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCZfY29udGVudHtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRhbGlnbi1pdGVtczpjZW50ZXI7XHJcblx0XHRcdGN1cnNvcjogZGVmYXVsdDtcclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LnNsaWRlcnNDb250YWluZXJ7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6ZmxleC1zdGFydDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpO1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0d2lkdGg6IDE1MCU7XHJcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XHJcblx0XHR9XHJcblx0XHQubWFpblNsaWRlcntcclxuXHRcdFx0d2lkdGg6IDU1JTtcclxuXHRcdFx0cGFkZGluZzogMCAxMHB4O1xyXG5cdFx0XHQuc2xpY2stc2xpZGV7XHJcblx0XHRcdFx0aDV7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDIuNXZ3O1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0XHRcdGNvbG9yOiAjMDAwO1xyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiA3dnc7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHAsZGl2e1xyXG5cdFx0XHRcdFx0Ly9tYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxOHB4O1xyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxNXB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmLnNsaWNrLWN1cnJlbnR7XHJcblx0XHRcdFx0XHQuc2xpZGVyX3RpdGxle1xyXG5cdFx0XHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nOjA7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQuc2xpZGVyX2NvbnRlbnR7XHJcblx0XHRcdFx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdFx0XHRcdG1hcmdpbjogMTBweCAwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQubmF2U2xpZGVye1xyXG5cdFx0XHRwYWRkaW5nOiAwIDEwcHg7XHJcblx0XHRcdHdpZHRoOiA0NSU7XHJcblx0XHRcdC5zbGlkZXJfdGl0bGV7XHJcblx0XHRcdFx0b3BhY2l0eTogMDtcclxuXHRcdFx0fVxyXG5cdFx0XHQuc2xpZGVyX2NvbnRlbnR7XHJcblx0XHRcdFx0b3BhY2l0eTogMDtcclxuXHRcdFx0XHRtYXJnaW46IDRweCAwICFpbXBvcnRhbnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5zbGljay1zbGlkZXtcclxuXHRcdFx0Ly9wYWRkaW5nOjBweCAxMHB4O1xyXG5cdFx0XHQvL3RyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XHJcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdGltZ3tcclxuXHRcdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlLWluLW91dCAxLjVzO1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMik7XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5zbGljay1jdXJyZW50e1xyXG5cdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBlYXNlLWluLW91dCAwLjhzO1xyXG5cdFx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0LnNsaWRlcl9jb250ZW50e1xyXG5cdFx0XHRcdG9wYWNpdHk6IDA7XHJcblx0XHRcdFx0bWFyZ2luOjEwcHggODBweDtcclxuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQgMXM7XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdG1hcmdpbjogMTBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Ji1idG5ze1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDY2cHg7XHJcblx0XHR9XHJcblx0XHQuc2xpY2stYXJyb3d7XHJcblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0ICAgIHdpZHRoOiA1MHB4O1xyXG5cdFx0ICAgIGhlaWdodDogNTBweDtcclxuXHRcdCAgICBib3JkZXI6MXB4IHNvbGlkICRkYXJrLWJsdWU7XHJcblx0XHQgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0ICAgIGNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdFx0ICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdCAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcblx0XHQgICAgZm9udC1zaXplOiAyNXB4O1xyXG5cdFx0ICAgICY6aG92ZXJ7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTtcclxuXHRcdFx0XHRjb2xvcjojZmZmO1xyXG5cdFx0XHR9XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0d2lkdGg6IDQwcHg7XHJcblx0XHRcdFx0aGVpZ2h0OiA0MHB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5jYXJvdXNlbC1zbGlkZXJ7XHJcblx0LnNsaWNrLWxpc3R7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTUwcHgpO1xyXG5cdH1cclxuXHQuc2xpY2stdHJhY2sge1xyXG5cdCAgZGlzcGxheTogZmxleDtcclxuXHQgIG1hcmdpbjogMDtcclxuXHR9XHJcblx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdC5zbGljay1saXN0e1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcclxuXHRcdFx0cGFkZGluZzowIDIwJSAwIDAlICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5zbGljay1zbGlkZXtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHRcdD4gZGl2e1xyXG5cdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHR9XHJcblx0XHQuc2xpZGV7XHJcblx0XHRcdHBhZGRpbmc6MCAxNXB4O1xyXG5cdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRcdCYtaW5mb3tcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHQgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHQgICAgcGFkZGluZzogMTBweCAyNXB4O1xyXG5cdFx0XHQgICAgYmFja2dyb3VuZDokZGFyay1ibHVlO1xyXG5cdFx0XHQgICAgLy9jdXJzb3I6IGRlZmF1bHQ7XHJcblx0XHRcdCAgICBwe1xyXG5cdFx0XHQgICAgXHRjb2xvcjojZmZmO1xyXG5cdFx0XHQgICAgXHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHQgICAgXHRmb250LXNpemU6IDE1cHg7XHJcblx0XHRcdCAgICBcdGxpbmUtaGVpZ2h0OjEuMjtcclxuXHRcdFx0ICAgIFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHQgICAgXHQmOmZpcnN0LWNoaWxke1xyXG5cdFx0XHQgICAgXHRcdGZvbnQtc2l6ZTogMThweDtcclxuXHRcdFx0ICAgIFx0XHRmb250LWZhbWlseTogRWxNZXNzaXJpO1xyXG5cdFx0XHQgICAgXHR9XHJcblx0XHRcdCAgICBcdHNwYW57XHJcblx0XHRcdCAgICBcdFx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdFx0XHQgICAgXHRcdG9wYWNpdHk6IDAuNjtcclxuXHRcdFx0ICAgIFx0XHRjb2xvcjojZmZmO1xyXG5cdFx0XHQgICAgXHRcdCYudG9vbHRpcEljb257XHJcblx0XHRcdFx0XHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRcdFx0XHRcdCAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0XHRcdFx0XHRcdCAgYm9yZGVyOiAxcHggc29saWQ7XHJcblx0XHRcdFx0XHRcdFx0ICB3aWR0aDogMTZweDtcclxuXHRcdFx0XHRcdFx0XHQgIGhlaWdodDogMTZweDtcclxuXHRcdFx0XHRcdFx0XHQgIGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRcdFx0ICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0XHRcdFx0XHQgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdFx0XHRcdFx0ICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdFx0ICB0b3A6IDA7XHJcblx0XHRcdFx0XHRcdFx0ICByaWdodDogMDtcclxuXHRcdFx0XHRcdFx0XHQgIGN1cnNvcjogaGVscDtcclxuXHRcdFx0XHRcdFx0XHQgIC50b29sdGlwe1xyXG5cdFx0XHRcdFx0XHRcdCAgXHRvcGFjaXR5OjA7XHJcblx0XHRcdFx0XHRcdFx0ICB9XHJcblx0XHRcdFx0XHRcdFx0ICAmOmhvdmVye1xyXG5cdFx0XHRcdFx0XHRcdCAgXHQudG9vbHRpcHtcclxuXHRcdFx0XHRcdFx0XHQgIFx0XHRvcGFjaXR5OjE7XHJcblx0XHRcdFx0XHRcdFx0ICBcdFx0cGFkZGluZzogMTBweDtcclxuXHRcdFx0ICAgICAgICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XHJcblx0XHRcdCAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdFx0ICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuXHRcdFx0ICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IDBweCAjYTVhNWE1O1xyXG5cdFx0XHRcdFx0XHRcdCAgXHR9XHJcblx0XHRcdFx0XHRcdFx0ICB9XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHQgICAgXHR9XHJcblx0XHRcdCAgICBcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdCAgICBcdFx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdFx0XHQgICAgXHRcdCY6Zmlyc3QtY2hpbGR7XHJcblx0XHRcdCAgICBcdFx0XHRmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdCAgICBcdFx0fVxyXG5cdFx0XHQgICAgXHRcdHNwYW4saXtcclxuXHRcdFx0ICAgIFx0XHRcdGZvbnQtc2l6ZTogMTBweDtcclxuXHRcdFx0ICAgIFx0XHR9XHJcblx0XHRcdCAgICBcdH1cclxuXHRcdFx0ICAgIH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmLWNvbnRlbnR7XHJcblx0XHRcdFx0YmFja2dyb3VuZDojZmZmO1xyXG5cdFx0XHRcdHBhZGRpbmc6MjBweCAyNXB4O1xyXG5cdFx0XHRcdGN1cnNvcjogZGVmYXVsdDtcclxuXHRcdFx0XHQvL2hlaWdodDogMTAwJTtcclxuXHRcdFx0XHRhe1xyXG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6NDBlbSl7XHJcblx0XHRcdFx0XHRwYWRkaW5nOjIwcHggMTBweDtcclxuXHRcdFx0XHRcdGF7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDowcHhcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdC5jdGF7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6ZmxleDtcclxuXHRcdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5zbGljay1hcnJvd3tcclxuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcbiAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICBib3JkZXI6MXB4IHNvbGlkICRkYXJrLWJsdWU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBjb2xvcjogJGRhcmstYmx1ZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgdG9wOi0xMDBweDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBmb250LXNpemU6IDBweDtcclxuICAgIGl7XHJcbiAgICBcdGZvbnQtc2l6ZTogMjVweDtcclxuICAgIH1cclxuICAgICYuc2xpY2stbmV4dHtcclxuICAgIFx0cmlnaHQ6IDEwMHB4O1xyXG4gICAgfVxyXG4gICAgJi5zbGljay1wcmV2e1xyXG5cdFx0XHRyaWdodDogMjAwcHg7XHJcblx0XHR9XHJcblx0XHQmOmhvdmVye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG5cdFx0XHRjb2xvcjojZmZmO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0d2lkdGg6IDQwcHg7XHJcblx0XHRcdGhlaWdodDogNDBweDtcclxuXHRcdFx0dG9wOi02NXB4O1xyXG5cdFx0XHQmLnNsaWNrLW5leHR7XHJcblx0XHQgICAgXHRyaWdodDogMTBweDtcclxuXHRcdCAgICB9XHJcblx0XHQgICAgJi5zbGljay1wcmV2e1xyXG5cdFx0XHRcdHJpZ2h0OiA3MHB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5zdHJpcEltZ3tcclxuXHRpbWd7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdC8qaGVpZ2h0OiA1MHZoO1xyXG5cdFx0ICB3aWR0aDogYXV0bztcclxuXHRcdCAgLy9tYXgtd2lkdGg6IGluaXRpYWw7XHJcblx0XHQgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUlKTsqL1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLnNvcnR7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzo1MHB4IDE1MHB4IDI1cHg7XHJcblx0ZGl2e1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGNvbHVtbi1nYXA6IDQwcHg7XHJcblx0fVxyXG5cdHNlbGVjdHtcclxuXHRcdGJvcmRlcjpub25lO1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xyXG5cdFx0Ly9wYWRkaW5nLWxlZnQ6IDA7XHJcblx0XHRjb2xvcjpyZ2JhKDAsIDAsIDAsIDAuNCk7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdCY6Zm9jdXN7XHJcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0XHR9XHJcblx0fVxyXG5cdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0ZGl2e1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHR9XHJcblx0XHRzZWxlY3R7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRmb250LXNpemU6IDE2cHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5sb2FkZXJJbWFnZXtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIGRpdntcclxuXHQgICAgZGlzcGxheTogZmxleDtcclxuXHQgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0ICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdCAgICB3aWR0aDogMTAwJTtcclxuXHQgICAgaGVpZ2h0OiAxMDAlO1xyXG5cdCAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNik7XHJcblx0ICB9XHJcbn1cclxuaHJ7XHJcblx0bWF4LXdpZHRoOm5vbmU7XHJcblx0Ym9yZGVyLWNvbG9yOiByZ2JhKCMwMDAsIDAuMSk7XHJcblx0bWFyZ2luOiAyMHB4IDE1MHB4O1xyXG5cdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRtYXJnaW46IDIwcHggMjVweDtcclxuXHR9XHJcbn1cclxuLnBvbGljeXtcclxuXHRwYWRkaW5nOiA1MHB4IDE1MHB4O1xyXG5cdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdH1cclxufVxyXG5pbnB1dCxzZWxlY3R7XHJcblx0Jjo6cGxhY2Vob2xkZXJ7XHJcblx0XHRjb2xvcjojZmZmO1xyXG5cdH1cclxufVxyXG5zZWxlY3R7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zZWxlY3QtYmx1ZS5wbmcpO1xyXG59XHJcbi5wb3N0RGV0YWlsc3tcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0dG9wOiAwO1xyXG5cdGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7XHJcblx0aGVpZ2h0OiAxMDB2aDtcclxuXHRvdmVyZmxvdy15OiBzY3JvbGw7XHJcblx0ei1pbmRleDogMTAwMDAwMDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQ7XHJcbiAgbGVmdDogMTAwJTtcclxuICAmLm9wZW57XHJcbiAgXHRsZWZ0OiAwO1xyXG4gIFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICBcdFx0LmNsb3Nle1xyXG5cdCAgICBcdHBvc2l0aW9uOiBmaXhlZDtcclxuXHQgICAgXHRyaWdodDogMDtcclxuXHQgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuY2xvc2V7XHJcbiAgXHRmb250LXNpemU6IDMwcHg7XHJcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJjpiZWZvcmV7XHJcbiAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHQgICAgY29udGVudDogJyc7XHJcblx0ICAgIHdpZHRoOiAxcHg7XHJcblx0ICAgIGhlaWdodDogMzVweDtcclxuXHQgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuXHQgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG5cdCAgICBsZWZ0OjUwJTtcclxuICAgIH1cclxuICAgICY6YWZ0ZXJ7XHJcbiAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHQgICAgY29udGVudDogJyc7XHJcblx0ICAgIHdpZHRoOiAxcHg7XHJcblx0ICAgIGhlaWdodDogMzVweDtcclxuXHQgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuXHQgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuXHQgICAgbGVmdDo1MCU7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gICAgXHR0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQ7XHJcbiAgXHRcdHJpZ2h0OiAtMTAwJTtcclxuICAgIH1cclxuICB9XHJcbiAgJi5yb29tRGV0YWlsc3tcclxuICBcdC5ndWVzdC10eXBle1xyXG4gIFx0XHRmb250LXdlaWdodDpib2xkO1xyXG4gIFx0XHRwYWRkaW5nOiAxNXB4IDEyMHB4O1xyXG4gIFx0XHRjb2xvcjojZmZmO1xyXG4gICAgXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0cGFkZGluZzogMTVweCAyNXB4O1xyXG5cdFx0XHR9XHJcbiAgXHR9XHJcblx0XHQuZGVzY3JpcHRpb257XHJcbiAgICBcdFx0Y29sdW1uLWNvdW50OiAyO1xyXG4gICAgXHRcdGNvbHVtbi1nYXA6IDUwcHg7XHJcbiAgICBcdFx0cGFkZGluZzogMCAxMjBweDtcclxuICAgIFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdGNvbHVtbi1jb3VudDogMTtcclxuXHRcdFx0XHRwYWRkaW5nOiAwIDI1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5yb29tRGV0YWlscy1idG57XHJcblx0XHRcdG1hcmdpbjogMjBweCBhdXRvO1xyXG5cdCAgICBkaXNwbGF5OiBmbGV4O1xyXG5cdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdH1cclxuICB9XHJcbiAgLmhvdGVsTG9nbywubG9nb3tcclxuICBcdG1hcmdpbjogMzBweCA0MHB4IDA7XHJcbiAgXHR3aWR0aDogMjAwcHg7XHJcbiAgXHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gIFx0XHRtYXJnaW46MzBweCAyMHB4O1xyXG4gIFx0fVxyXG4gIH1cclxuICAucG9zdENvbnRhaW5lcntcclxuICBcdGRpc3BsYXk6IG5vbmU7XHJcbiAgXHRwYWRkaW5nOiA1MHB4IDBweDtcclxuICBcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcbiAgXHRcdHBhZGRpbmc6MjVweCAwO1xyXG4gIFx0fVxyXG4gIFx0LnBvc3QtZmFjaWxpdGllc3tcclxuICBcdFx0ZGlzcGxheTogZmxleDtcclxuXHQgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdCAgICBjb2x1bW4tZ2FwOiAyMHB4O1xyXG5cdCAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHQgICAgcGFkZGluZzogMCAxMjBweDtcclxuXHQgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cdCAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gICAgXHRcdHBhZGRpbmc6MCAyNXB4O1xyXG4gICAgXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBcdFx0bWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgIFx0fVxyXG5cdCAgICBkaXZ7XHJcblx0ICAgIFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdCAgICBcdHdpZHRoOiAxNSU7XHJcblx0ICAgIFx0aW1ne1xyXG5cdCAgICBcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHQgICAgXHR9XHJcblx0ICAgIFx0cHtcclxuXHQgICAgXHRcdGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiAxcHg7XHJcblx0XHRcdFx0Y29sb3I6I2ZmZjtcclxuXHQgICAgXHR9XHJcblx0ICAgIFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHQgICAgXHRcdHdpZHRoOiA0MCU7XHJcblx0ICAgIFx0XHRpbWd7XHJcblx0ICAgIFx0XHRcdG1heC13aWR0aDogMzAlO1xyXG5cdCAgICBcdFx0fVxyXG5cdCAgICBcdFx0cHtcclxuXHQgICAgXHRcdFx0Zm9udC1zaXplOiAxM3B4O1xyXG5cdCAgICBcdFx0XHRsaW5lLWhlaWdodDogMjBweDtcclxuXHQgICAgXHRcdH1cclxuXHQgICAgXHR9XHJcblx0ICAgIH1cclxuICBcdH1cclxuICBcdGgye1xyXG4gIFx0XHRmb250LXNpemU6IDQwcHg7XHJcblx0XHRsaW5lLWhlaWdodDogMzBweDtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAxcHg7XHJcblx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdHBhZGRpbmc6IDAgMTIwcHg7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAwIDI1cHg7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG5cdFx0fVxyXG4gIFx0fVxyXG4gIFx0aDR7XHJcbiAgXHRcdGZvbnQtc2l6ZTogMjRweDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAxMHB4O1xyXG5cdFx0bGV0dGVyLXNwYWNpbmc6IDFweDtcclxuXHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiAyNXB4O1xyXG5cdFx0XHRmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDI1cHg7XHJcblx0XHR9XHJcbiAgXHR9XHJcbiAgXHQucG9zdC1oZWFkZXJ7XHJcbiAgXHRcdHBhZGRpbmc6IDAgMTUwcHg7XHJcbiAgXHRcdGgye1xyXG4gIFx0XHRcdHBhZGRpbmc6IDA7XHJcbiAgXHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuICBcdFx0fVxyXG4gIFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAwIDI1cHg7XHJcblx0XHRcdGgye1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuICBcdH1cclxuICBcdC5kZXNjcmlwdGlvbntcclxuICBcdFx0bWFyZ2luOiAzMHB4IGF1dG8gNDBweDtcclxuICBcdFx0cHtcclxuICBcdFx0XHRjb2xvcjojZmZmO1xyXG4gIFx0XHR9XHJcbiAgXHR9XHJcbiAgXHQuc2xpZGVyLW5ve1xyXG4gIFx0XHRjb2xvcjojZmZmO1xyXG4gIFx0XHRzcGFue1xyXG4gIFx0XHRcdGNvbG9yOiNmZmY7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuICBcdC5ub0Fycm93U2xpZGVye1xyXG4gIFx0XHRwYWRkaW5nLWxlZnQ6IDEyMHB4O1xyXG4gIFx0XHRwYWRkaW5nLXRvcDogMTBweDtcclxuICBcdFx0aDJ7XHJcbiAgXHRcdFx0cGFkZGluZzogMDtcclxuICBcdFx0fVxyXG4gIFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gIFx0XHRcdHBhZGRpbmctbGVmdDogMjVweDtcclxuICBcdFx0fVxyXG4gIFx0fVxyXG4gIFx0LnBvc3QtZGV0YWlsc3tcclxuICBcdFx0ZGlzcGxheTogZmxleDtcclxuICBcdFx0cGFkZGluZzo3MHB4IDE1MHB4IDA7XHJcbiAgXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICBcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICBcdFx0XHRwYWRkaW5nOiA1MHB4IDI1cHggMDtcclxuICBcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcbiAgXHRcdH1cclxuICBcdFx0Jl9jb250YWluZXJ7XHJcbiAgXHRcdFx0ZGlzcGxheTogZmxleDtcclxuICBcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG4gIFx0XHRcdHdpZHRoOiA3MCU7XHJcbiAgXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICBcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG4gIFx0XHRcdFx0bWFyZ2luLXRvcDogMjBweDtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0ZGl2e1xyXG4gIFx0XHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCNmZmYsMC4zKTtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogOHB4O1xyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Ji5wcm9ncmFtc3tcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRhLHAsc3BhbntcclxuXHRcdFx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0XHRcdH1cclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuICBcdH1cclxuICBcdC5wb3N0LWFtZW5pdGllc3tcclxuICBcdFx0ZGlzcGxheTogZmxleDtcclxuICBcdFx0cGFkZGluZzo3MHB4IDEyMHB4IDA7XHJcbiAgXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICBcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICBcdFx0XHRwYWRkaW5nOiA1MHB4IDI1cHggMDtcclxuICBcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcbiAgXHRcdH1cclxuICBcdFx0Jl9jb250YWluZXJ7XHJcbiAgXHRcdFx0ZGlzcGxheTogZmxleDtcclxuICBcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG4gIFx0XHRcdHdpZHRoOiA3MCU7XHJcbiAgXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICBcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG4gIFx0XHRcdFx0bWFyZ2luLXRvcDogMjBweDtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0ZGl2e1xyXG4gIFx0XHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCNmZmYsMC4zKTtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogOHB4O1xyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHR9XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHR9XHJcbiAgfVxyXG4gIGgze1xyXG5cdGZvbnQtc2l6ZTogNHZ3O1xyXG5cdGxldHRlci1zcGFjaW5nOiAxcHg7XHJcblx0Y29sb3I6ICNmZmY7XHJcblx0c3BhbntcclxuXHRcdGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG5cdFx0bGV0dGVyLXNwYWNpbmc6IDNweDtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IC00MHB4O1xyXG5cdFx0Y29sb3I6ICNmZmY7XHJcblx0fVxyXG5cdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRmb250LXNpemU6IDEwdnc7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0c3BhbntcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblx0Lm5vQXJyb3dTbGlkZXJ7XHJcblx0XHQmLWJ0bnN7XHJcblx0XHRcdC5zbGljay1hcnJvd3tcclxuXHRcdFx0XHRib3JkZXItY29sb3I6ICNmZmY7XHJcblx0XHRcdFx0Y29sb3I6I2ZmZjtcclxuXHRcdFx0XHQmOmhvdmVye1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdFx0XHRcdGNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4uYWxpZ25jZW50ZXJ7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luOiBhdXRvO1xyXG5cdGNsZWFyOiBpbml0aWFsO1xyXG59XHJcbi5hbGlnbnJpZ2h0IHtcclxuXHRmbG9hdDogcmlnaHQ7XHJcbn1cclxuLmFsaWdubGVmdHtcclxuXHRmbG9hdDogbGVmdDtcclxufVxyXG4uaG90ZWxzLXRlbXBsYXRlLWhvdGVsLXJlc2VydmF0aW9ucyAubG9hZGVye1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLnRvdXIzNjB7XHJcblx0cGFkZGluZzogMTUwcHggMzBweDtcclxuXHRAbWVkaWEgKG1heC13aWR0aDo0MGVtKXtcclxuXHRcdHBhZGRpbmc6MjVweDtcclxuXHR9XHJcblx0aWZyYW1le1xyXG5cdFx0YXNwZWN0LXJhdGlvOiA0NzUgLyAyNjc7XHJcblx0fVxyXG59XHJcbiNyZWFkTW9yZXtcclxuXHRtYXJnaW46IDIwcHggYXV0bztcclxuXHRkaXNwbGF5OiBibG9jaztcclxufVxyXG4jeW1QbHVnaW5EaXZDb250YWluZXJJbml0aWFse1xyXG5cdCN5bURpdkJhcntcclxuXHRcdGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDMwcHggIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkICRkYXJrLWJsdWU7XHJcbiAgICBpbWd7XHJcbiAgICBcdGhlaWdodDo2MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOjQwZW0pe1xyXG4gICAgXHRib3R0b206NzBweDtcclxuICAgIH1cclxuXHR9XHJcbn1cclxuLmVycm9yNDA0e1xyXG5cdC5tYWluLWdyaWR7XHJcblx0XHRtYXJnaW4tdG9wOiAwO1xyXG5cdFx0cGFkZGluZy10b3A6IDIwMHB4O1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRcdGRpc3BsYXk6YmxvY2s7XHJcblx0fVxyXG59XHJcbiIsIkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiBMdXRob247XHJcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL0x1dGhvblNvdXRoYXJkU2NyaXB0LnR0ZicpO1xyXG4gIGZvbnQtZGlzcGxheTogc3dhcDtcclxufVxyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogRWxNZXNzaXJpO1xyXG4gIHNyYzogdXJsKCcuLi9mb250cy9FbE1lc3NpcmktUmVndWxhci53b2ZmJyk7XHJcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xyXG59XHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiBCcmFuZGluZztcclxuICBzcmM6IHVybCgnLi4vZm9udHMvQnJhbmRpbmctU2VtaWxpZ2h0LndvZmYnKTtcclxuICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbn1cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6IE5vdG87XHJcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL05vdG9OYXN0YWxpcVVyZHUudHRmJyk7XHJcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xyXG59XHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiBBbGV4QnJ1c2g7XHJcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL0FsZXhCcnVzaC1SZWd1bGFyLndvZmYnKTtcclxuICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbn1cclxuXHJcblxyXG5oMSxoMixoMyxoNCxoNSxoNntcclxuXHRmb250LWZhbWlseTogRWxNZXNzaXJpO1xyXG5cdGNvbG9yOiMwMDA7XHJcblx0c3BhbntcclxuXHRcdC8vZm9udC1mYW1pbHk6IEx1dGhvbjtcclxuXHRcdGZvbnQtZmFtaWx5OiBBbGV4QnJ1c2g7XHJcblx0XHRjb2xvcjokYmx1ZTtcclxuXHR9XHJcbn1cclxucCxsaSxkaXZ7XHJcblx0Zm9udC1mYW1pbHk6IEJyYW5kaW5nO1xyXG5cdGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XHJcblx0Zm9udC1zaXplOjE2cHg7XHJcbn1cclxuc3BhbntcclxuXHRmb250LWZhbWlseTogQnJhbmRpbmc7XHJcblx0Y29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcclxufVxyXG5he1xyXG5cdGZvbnQtZmFtaWx5OiBCcmFuZGluZztcclxuXHRmb250LXNpemU6IDF2dztcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGxpbmUtaGVpZ2h0OiAxOXB4O1xyXG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgY29sb3I6JGJsdWU7XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICBcdGZvbnQtc2l6ZTogNHZ3O1xyXG4gIH1cclxufVxyXG5oMSwgLnRpdGxle1xyXG5cdGZvbnQtc2l6ZTogNXZ3O1xyXG5cdGxldHRlci1zcGFjaW5nOiAxcHg7XHJcblx0bGluZS1oZWlnaHQ6IDQuNXZ3O1xyXG5cdHNwYW57XHJcblx0XHRsaW5lLWhlaWdodDogMTQwcHg7XHJcblx0XHRsZXR0ZXItc3BhY2luZzogM3B4O1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRtYXJnaW4tbGVmdDogLTQwcHg7XHJcblx0XHRmb250LXNpemU6IDV2dztcclxuXHR9XHJcblx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdGZvbnQtc2l6ZTogOHZ3O1xyXG5cdFx0c3BhbntcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiA2MHB4O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4ucnRse1xyXG5cdGgxLGgyLGgzLGg0LGg1LGg2e1xyXG5cdFx0bGV0dGVyLXNwYWNpbmc6IDBweCAhaW1wb3J0YW50O1xyXG5cdFx0c3BhbntcclxuXHRcdFx0Zm9udC1mYW1pbHk6IE5vdG87XHJcblx0XHR9XHJcblx0fVxyXG5cdHAsbGksZGl2LHNwYW4sYXtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAwcHggIWltcG9ydGFudDtcclxuXHR9XHJcblx0aDF7XHJcblx0XHRmb250LXNpemU6IDR2dztcclxuXHRcdGxpbmUtaGVpZ2h0OiAzLjV2dztcclxuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRzcGFue1xyXG5cdFx0XHRsaW5lLWhlaWdodDogMTYwcHg7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRmb250LXNpemU6IDh2dztcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDEwdnc7XHJcblx0XHRcdHNwYW57XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEwMHB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLy8gRml4IHRoZSBpc3N1ZSB3aGVyZSB0aGUgV1AgYWRtaW4tYmFyIG92ZXJsYXBzIHRoZSBtb2JpbGUgbWVudVxyXG4jd3BhZG1pbmJhciB7XHJcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8vIE1ha2Ugc3VyZSB0aGF0IHRoZSBXUCBhZG1pbi1iYXIgZG9lcyBub3Qgb3ZlcmxhcCBGb3VuZGF0aW9uIGNvbXBvbmVudHNcclxuYm9keS5hZG1pbi1iYXIge1xyXG4gIC8vIE9mZnNldCBzdGlja3kgdG9wIGJhclxyXG4gICYuZi10b3BiYXItZml4ZWQge1xyXG4gICAgLnN0aWNreS5maXhlZCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMyKTtcclxuICAgIH1cclxuICB9XHJcbiAgLy8gT2Zmc2V0IG1vYmlsZSBvZmYtY2FudmFzIG1lbnVcclxuICAmLm9mZmNhbnZhcyB7XHJcbiAgICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcclxuICAgICAgdG9wOiByZW0tY2FsYyg0Nik7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzgzKSB7XHJcbiAgICAgICAgdG9wOiByZW0tY2FsYygzMik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gTmF2aWdhdGlvbiBicmVha3BvaW50c1xyXG4ubW9iaWxlLW1lbnUsXHJcbi5zaXRlLXRpdGxlLWJhciB7XHJcbiAgQGluY2x1ZGUgaGlkZS1mb3IobWVkaXVtKTtcclxufVxyXG4vL1xyXG4uZGVza3RvcC1tZW51LFxyXG4uc2l0ZS1uYXZpZ2F0aW9uIC50b3AtYmFyLWxlZnQge1xyXG4gIEBpbmNsdWRlIHNob3ctZm9yKG1lZGl1bSk7XHJcbn1cclxuXHJcbi8vIFNpdGUgdGl0bGVcclxuLnNpdGUtZGVza3RvcC10aXRsZSBhIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLy8gV1AgcG9zdCBuYXZpZ2F0aW9uXHJcbi5wb3N0LW5hdmlnYXRpb24ge1xyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xyXG59XHJcblxyXG4ubmF2LXByZXZpb3VzIHtcclxuICBmbG9hdDpsZWZ0O1xyXG59XHJcblxyXG4ubmF2LW5leHQge1xyXG4gIGZsb2F0OnJpZ2h0O1xyXG59XHJcblxyXG4uc2l0ZS1oZWFkZXJ7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOjEwMCU7XHJcbiAgei1pbmRleDogMTA7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbjtcclxuICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xyXG4gICYuc3RpY2t5e1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgYmFja2dyb3VuZDokZGFyay1ibHVlO1xyXG4gICAgei1pbmRleDogMTAwMDA7XHJcbiAgICAudG9wLWJhcntcclxuICAgICAgaGVpZ2h0OiA4NXB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOm5vbmU7XHJcbiAgICAgICYtbGVmdHtcclxuICAgICAgICBpbWd7XHJcbiAgICAgICAgICB3aWR0aDogMTU1cHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLnN1Ym1lbnUtY29udGFpbmVye1xyXG4gICAgICAgIHRvcDo4NXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAudG9wLWJhci1yaWdodF9fYnRue1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcclxuICAgIH1cclxuICAgIC53cG1sLWxzLXN1Yi1tZW51e1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ibHVlO1xyXG4gICAgfVxyXG4gICAgLnRvcC1iYXItY2VudGVye1xyXG4gICAgICAubWVudXtcclxuICAgICAgICBsaXtcclxuICAgICAgICAgICYuY3VycmVudC1tZW51LWl0ZW0sICYuY3VycmVudC1wYWdlLWFuY2VzdG9ye1xyXG4gICAgICAgICAgICA+IGF7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgICAgICAgICAgICBjb2xvcjogcmdiYSgjZmZmLDAuNSkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgYXtcclxuICAgICAgICAgICAgdGV4dC1zaGFkb3c6bm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50aXRsZS1iYXItbGVmdHtcclxuICAgICAgaW1nIHtcclxuICAgICAgICB3aWR0aDogODBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRvcC1iYXItcmlnaHRfdG9we1xyXG4gICAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuaG90ZWwtaGVhZGVye1xyXG4gICAgLnN1Ym1lbnUtY29udGFpbmVye1xyXG4gICAgICBwYWRkaW5nOjEwcHggMzBweDtcclxuICAgICAgYXtcclxuICAgICAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgICAgICAgcGFkZGluZzoxNXB4IDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50b3AtYmFyLWNlbnRlciAubWVudSBsaSBhe1xyXG4gICAgICBwYWRkaW5nOiAxMHB4IDhweDtcclxuICAgIH1cclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgIGhlaWdodDogNTVweDtcclxuICB9XHJcbn1cclxuLnRvcC1iYXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbjtcclxuICBoZWlnaHQ6IDEzMHB4O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChyZ2JhKCMwMDAsIDAuOCksIHRyYW5zcGFyZW50KTtcclxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgJi5vcGVuLXN1Ym1lbnV7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ibHVlO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTpub25lO1xyXG4gICAgLnRvcC1iYXItcmlnaHRfX2J0biB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xyXG4gICAgfVxyXG4gICAgLnRvcC1iYXItY2VudGVye1xyXG4gICAgICBsaXtcclxuICAgICAgICBhe1xyXG4gICAgICAgICAgdGV4dC1zaGFkb3c6bm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgdWx7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGxpe1xyXG4gICAgICAmLmFjdGl2ZXtcclxuICAgICAgICBhe1xyXG4gICAgICAgICAgY29sb3I6IHJnYmEoI2ZmZiwwLjUpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgYXtcclxuXHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgIGNvbG9yOiByZ2JhKCNmZmYsMC41KTtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIGF7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgfVxyXG4gICYtY2VudGVye1xyXG4gICAgZmxleDo0O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgLm1lbnV7XHJcbiAgICAgIGxpe1xyXG4gICAgICAgICYubWVudS1pdGVte1xyXG4gICAgICAgICAgLy9mbGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICBhe1xyXG4gICAgICAgICAgcGFkZGluZzoxMHB4O1xyXG4gICAgICAgICAgZm9udC1zaXplOjEuMTV2dztcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICAgICAgICB0ZXh0LXNoYWRvdzowIDAgMjBweCAjMDAwO1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICBjb2xvcjogcmdiYSgjZmZmLDAuNSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuY3VycmVudC1tZW51LWl0ZW0sICYuY3VycmVudC1wYWdlLWFuY2VzdG9ye1xyXG4gICAgICAgICAgJjpub3QoI21lbnUtaXRlbS1ob21lKTpub3QoLmlzLXN1Ym1lbnUtaXRlbSl7XHJcbiAgICAgICAgICAgID4gYXtcclxuICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2ZmZjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYXtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MTBweDtcclxuICAgICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmhhcy1zdWJtZW51e1xyXG4gICAgICAgICAgLmRyb3Bkb3due1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuZHJvcGRvd257XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstYmx1ZTtcclxuICAgICAgICBib3JkZXI6bm9uZTtcclxuICAgICAgICBhe1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmN1cnJlbnQtbWVudS1pdGVte1xyXG4gICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICBjb2xvcjogcmdiYSgjZmZmLDAuNSkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1sZWZ0LCAmLXJpZ2h0e1xyXG4gICAgZmxleDogMSAhaW1wb3J0YW50O1xyXG4gIH1cclxuICAmLWxlZnR7XHJcbiAgICBpbWd7XHJcbiAgICAgIC8vd2lkdGg6IDI1MHB4O1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLXJpZ2h0e1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcclxuICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICZfdG9we1xyXG4gICAgICBtYXJnaW4tYm90dG9tOjEwcHg7XHJcbiAgICB9XHJcbiAgICAmX3RvcCwgJl9ib3R0b217XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogZW5kO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgICZfX2J0bntcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZGFyay1ibHVlO1xyXG4gICAgICBib3JkZXItcmFkaXVzOjIwcHg7XHJcbiAgICAgIHBhZGRpbmc6N3B4IDE1cHg7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XHJcbiAgICAgIGZvbnQtc2l6ZTogMC44dnc7XHJcbiAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjojZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6JGRhcmstYmx1ZTtcclxuICAgICAgfVxyXG4gICAgICAmOmZpcnN0LWNoaWxke1xyXG4gICAgICAgIG1hcmdpbjogMCA1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5jdXJyZW5jaWVze1xyXG4gICAgICBwYWRkaW5nOjAgMjVweDtcclxuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBib3JkZXI6IC4zNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlci10b3A6IC41ZW0gc29saWQgI2ZmZjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIC4xNzVlbSk7XHJcbiAgICAgIH1cclxuICAgICAgLmN1cnJlbmN5LWRyb3Bkb3duIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAuY3VycmVudCB7XHJcbiAgICAgICAgICBjb2xvcjojZmZmO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgICAgICAgIGZvbnQtc2l6ZToxNHB0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAub3B0aW9uc3tcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgICAgei1pbmRleDogOTk7XHJcbiAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAub3B0aW9uIHtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4IDZweDtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBjb2xvcjogJGJsdWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgIC5vcHRpb25zIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAud3BtbC1scy1sZWdhY3ktZHJvcGRvd257XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgICAgLndwbWwtbHMtaXRlbS10b2dnbGV7XHJcbiAgICAgICAgcGFkZGluZzogMHB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIycHg7XHJcbiAgICAgIH1cclxuICAgICAgYXtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcclxuICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICBmb250LXNpemU6MTRwdDtcclxuICAgICAgICBmb250LXdlaWdodDpib2xkO1xyXG4gICAgICAgIHNwYW4sICY6YWZ0ZXJ7XHJcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgIGZvbnQtc2l6ZToxNHB0O1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgIHJpZ2h0OjVweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLndwbWwtbHMtc3ViLW1lbnV7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7XHJcbiAgICAgICAgYXtcclxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICBjb2xvcjojMDAwO1xyXG4gICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgY29sb3I6IzAwMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgY29sb3I6JGRhcmstYmx1ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbG9yOiRkYXJrLWJsdWUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgLy9jb2xvcjpyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnN1Ym1lbnUtY29udGFpbmVye1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgaGVpZ2h0OiAyMjBweDtcclxuICAgIHRvcDogMTMwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIHBhZGRpbmc6IDVweCA0MHB4O1xyXG4gICAgJi5hY3RpdmV7XHJcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7XHJcbiAgICB9XHJcbiAgICBkaXZ7XHJcbiAgICAgIC8vZmxleDoxO1xyXG4gICAgICB3aWR0aDogMzAlO1xyXG4gICAgICAubWVudXtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDQsIG1pbi1jb250ZW50KTtcclxuICAgICAgICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xyXG4gICAgICAgIGxpe1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgIC52ZXJ0aWNhbHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICYuY3VycmVudC1tZW51LWl0ZW17XHJcbiAgICAgICAgICAgID4gYXtcclxuICAgICAgICAgICAgICBjb2xvcjogcmdiYSgjZmZmLDAuNSkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgYXtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICBjb2xvcjogcmdiYSgjZmZmLDAuNSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVue1xyXG4gICAgICAgICAgLnN1Yi1tZW51e1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYuc3ViLXN1Ym1lbnV7XHJcbiAgICAgICAgLy9mbGV4OjI7XHJcbiAgICAgICAgd2lkdGg6IDQwJTtcclxuICAgICAgICBib3JkZXItbGVmdDoxcHggc29saWQgcmdiYSgjZmZmLDAuMSk7XHJcbiAgICAgICAgLnN1Yi1tZW51e1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICYuYWN0aXZle1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6d3JhcDtcclxuICAgICAgICAgICAgbGl7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaW1ne1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uYm9va05vdy13aWRnZXQsIC5lbnF1aXJlLXdpZGdldCwgLmNvbnRhY3Qtd2lkZ2V0e1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGRhcmstYmx1ZTtcclxuICBwb3NpdGlvbjpmaXhlZDtcclxuICB0b3A6MDtcclxuICByaWdodDogLTQwdnc7XHJcbiAgei1pbmRleDogMTAwMDAwO1xyXG4gIGhlaWdodDogMTAwdmg7XHJcbiAgd2lkdGg6IDQwdnc7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2U7XHJcbiAgcGFkZGluZzo1MHB4IDMwcHg7XHJcbiAgb3ZlcmZsb3cteTpzY3JvbGw7XHJcbiAgJi5hY3RpdmV7XHJcbiAgICByaWdodDowO1xyXG4gIH1cclxuICBoMntcclxuICAgIGZvbnQtc2l6ZToydnc7XHJcbiAgfVxyXG4gIGgyLGF7XHJcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG4gIH1cclxuICAmX2hlYWRlcntcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIH1cclxuICAuZm9ybXtcclxuICAgICYtY29udGFpbmVye1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLmdmb3JtX3dyYXBwZXJ7XHJcbiAgICAgIC5nZmllbGR7XHJcbiAgICAgICAgaW5wdXQsdGV4dGFyZWEsc2VsZWN0e1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMC41cHggc29saWQgcmdiYSgjZmZmLCAwLjUpO1xyXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5nZm9ybV9mb290ZXJ7XHJcbiAgICAgICAgaW5wdXR7XHJcbiAgICAgICAgICBjb2xvcjojZmZmO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdle1xyXG4gICAgICBjb2xvcjojZmZmICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcbiAgICB3aWR0aDogMTAwdnc7XHJcbiAgICByaWdodDogaW5pdGlhbDtcclxuICAgIGxlZnQ6IC0xMDB2dztcclxuICAgICYuYWN0aXZle1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxuICBzZWxlY3R7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3NlbGVjdC13aGl0ZS5wbmcpO1xyXG4gIH1cclxufVxyXG4uYm9va05vdy13aWRnZXR7XHJcbiAgLmhvdGVsc3tcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBtYXJnaW46IDIwcHggMDtcclxuICAgIGdhcDo4cHg7XHJcbiAgICAuaG90ZWx7XHJcbiAgICAgIHdpZHRoOiAzMiU7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgaDN7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxcmVtXHJcbiAgICAgIH1cclxuICAgICAgZGl2e1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgICAgIGRpdntcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZTtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoJGRhcmstYmx1ZSwgMC43KTtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICBhe1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDAuNnZ3O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgZGl2e1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pe1xyXG4gICAgICBnYXA6MDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAuaG90ZWx7XHJcbiAgICAgICAgd2lkdGg6IDQ4JTtcclxuICAgICAgICBpbWd7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJl9mb290ZXJ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgcGFkZGluZy10b3A6IDUwcHg7XHJcbiAgICAuYmFja3tcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIC5tb2RpZnl7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICYuc2hvd3tcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1vZGlmeSwuYmFja3tcclxuICAgICAgZm9udC1zaXplOiAwLjd2dztcclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgICAgICBmb250LXNpemU6IDN2dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuYm9va05vd0Zvcm17XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcGFkZGluZzogNDBweCAwO1xyXG4gICAgZm9ybXtcclxuICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgaW5wdXQsc2VsZWN0e1xyXG4gICAgICAmOm5vdCguYnRuKXtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMC41cHggc29saWQgcmdiYSgjZmZmLCAwLjUpO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBzZWxlY3R7XHJcbiAgICAgIG9wdGlvbntcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGRpdntcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAmOm5vdCguZGF0ZVBpY2tlcil7XHJcbiAgICAgICAgY29sdW1uLWdhcDogNDBweDtcclxuICAgICAgfVxyXG4gICAgICAmLmRhdGVQaWNrZXJ7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMC41cHggc29saWQgcmdiYSgjZmZmLCAwLjUpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBpbnB1dHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpe1xyXG4gICAgICAgICAgY29sb3I6I2ZmZjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFt0eXBlPSdzdWJtaXQnXXtcclxuICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5naWZ0Q2FyZHtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgYXtcclxuICAgICAgZm9udC1zaXplOiAwLjl2dztcclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgICAgICBmb250LXNpemU6IDN2dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uZW5xdWlyZS13aWRnZXR7XHJcbiAgLmZvcm17XHJcbiAgICAuZ2Zvcm1fd3JhcHBlcntcclxuICAgICAgLmdmaWVsZHtcclxuICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAxMiAhaW1wb3J0YW50O1xyXG4gICAgICAgIC8qJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgIG9yZGVyOjE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bnRoLWNoaWxkKDIpe1xyXG4gICAgICAgICAgb3JkZXI6MztcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoMyl7XHJcbiAgICAgICAgICBvcmRlcjo1O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCg0KXtcclxuICAgICAgICAgIG9yZGVyOjI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bnRoLWNoaWxkKDUpe1xyXG4gICAgICAgICAgb3JkZXI6NDtcclxuICAgICAgICB9Ki9cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4udGl0bGUtYmFye1xyXG4gIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XHJcbiAgJi1sZWZ0e1xyXG4gICAgaW1ne1xyXG4gICAgICAvKmhlaWdodDogMzVweDtcclxuICAgICAgbWF4LXdpZHRoOiBpbml0aWFsOyovXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5wb3NpdGlvbi1yaWdodCwgLnBvc2l0aW9uLWxlZnR7XHJcbiAgYm94LXNoYWRvdzpub25lICFpbXBvcnRhbnQ7XHJcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA1M3B4KTtcclxuICB3aWR0aDogMTAwJTtcclxuICB0b3A6NTVweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ibHVlO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgI21lbnUtbWFpbi1tZW51LW1vYmlsZSwgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1hciwgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1kZXtcclxuICAgIHBhZGRpbmctdG9wOjIwcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6MzBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbGl7XHJcbiAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoI2ZmZiwwLjEpO1xyXG4gICAgICBhe1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBFbE1lc3Npcmk7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDowO1xyXG4gICAgICB9XHJcbiAgICAgIC5pcy1hY2NvcmRpb24tc3VibWVudXtcclxuICAgICAgICBhe1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IEJyYW5kaW5nO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLmlzLWFjdGl2ZXtcclxuICAgICAgICA+IGF7XHJcbiAgICAgICAgICBjb2xvcjogcmdiYSgjZmZmLDAuNSk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuc3VibWVudS10b2dnbGV7XHJcbiAgICAgICAgd2lkdGg6IDcwcHg7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICB9XHJcbiAgfVxyXG4gIC53aWRnZXR7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIC53cG1sLWxzLWxlZ2FjeS1saXN0LWhvcml6b250YWx7XHJcbiAgICAgIHBhZGRpbmctbGVmdDoyMHB4O1xyXG4gICAgfVxyXG4gICAgLndwbWwtbHMtY3VycmVudC1sYW5ndWFnZXtcclxuICAgICAgYXtcclxuICAgICAgICBzcGFue1xyXG4gICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBhe1xyXG4gICAgICBzcGFue1xyXG4gICAgICAgIGNvbG9yOiByZ2JhKCNmZmYsMC41KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAub2ZmLWNhbnZhcy1mb290ZXJ7XHJcbiAgICBkaXNwbGF5OmZsZXg7XHJcbiAgfVxyXG4gIC5jdXJyZW5jaWVze1xyXG4gICAgcGFkZGluZzogNHB4IDA7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OjEycHg7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgJjphZnRlcntcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGJvcmRlcjogLjM1ZW0gc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogLjVlbSBzb2xpZCAjZmZmO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gLjI3NWVtKTtcclxuICAgICAgfVxyXG4gICAgI2N1cnJlbmN5LXNlbGVjdG9ye1xyXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgICBwYWRkaW5nOiA1cHggMTBweCA2cHg7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG5cclxuICAgIH1cclxuICB9XHJcbn1cclxuLnBvc2l0aW9uLXJpZ2h0e1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDB2dyk7XHJcbiAgI21lbnUtbWFpbi1tZW51LW1vYmlsZSwgI21lbnUtbWFpbi1tZW51LW1vYmlsZS1kZXtcclxuICAgIGxpe1xyXG4gICAgICAuc3VibWVudS10b2dnbGV7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OjMwcHg7XHJcbiAgICAgIH1cclxuICAgICAgJi5oYXMtc3VibWVudS10b2dnbGUgPiBhe1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNzBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4ucG9zaXRpb24tbGVmdHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHZ3KTtcclxuICAjbWVudS1tYWluLW1lbnUtbW9iaWxlLWFye1xyXG4gICAgbGl7XHJcbiAgICAgIC5zdWJtZW51LXRvZ2dsZXtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OjMwcHg7XHJcbiAgICAgICAgcmlnaHQ6IGluaXRpYWw7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgICAmLmhhcy1zdWJtZW51LXRvZ2dsZSA+IGF7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDcwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodCwgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWxlZnR7XHJcbiAgLy90cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSAhaW1wb3J0YW50O1xyXG4gIC5zaXRlLWhlYWRlcntcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJsdWU7XHJcbiAgfVxyXG59XHJcbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1maXhlZHtcclxuICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuLmhhcy1wb3NpdGlvbi1yaWdodCwuaGFzLXBvc2l0aW9uLWxlZnR7XHJcbiAgLm1lbnVJY29ue1xyXG4gICAgc3BhbntcclxuICAgICAgJjpudGgtb2YtdHlwZSgxKXtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm06cm90YXRleig0NWRlZykgdHJhbnNsYXRlKDZweCw1cHgpXHJcbiAgICAgIH1cclxuICAgICAgJjpudGgtb2YtdHlwZSgyKXtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOnRvcDtcclxuICAgICAgICB0cmFuc2Zvcm06cm90YXRleigtNDVkZWcpXHJcbiAgICAgIH1cclxuICAgICAgJjpudGgtb2YtdHlwZSgzKXtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbTtcclxuICAgICAgICB3aWR0aDo1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoOHB4LC04cHgpIHJvdGF0ZXooNDVkZWcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5tZW51SWNvbntcclxuICBkaXNwbGF5OmZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xyXG4gIHdpZHRoOjMwcHg7XHJcbiAgY3Vyc29yOnBvaW50ZXI7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgc3BhbntcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICBib3JkZXItcmFkaXVzOjEwcHg7XHJcbiAgICBoZWlnaHQ6MnB4O1xyXG4gICAgbWFyZ2luOiAzcHggMDtcclxuICAgIHRyYW5zaXRpb246IC40cyAgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjYsIDAuMzIsIDEuNik7XHJcbiAgICAmOm50aC1vZi10eXBlKDEpe1xyXG4gICAgICB3aWR0aDoxMDAlOyAgIFxyXG4gICAgfVxyXG4gICAgJjpudGgtb2YtdHlwZSgyKXtcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgIH1cclxuICAgICY6bnRoLW9mLXR5cGUoMyl7XHJcbiAgICAgIHdpZHRoOjcwJTsgIFxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uY3RhLW1vYmlsZXtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYm90dG9tOiAwO1xyXG4gIHotaW5kZXg6IDEwO1xyXG4gIGhlaWdodDogNjBweDtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgjZmZmLDAuMSk7XHJcbiAgYXtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG4gICAgcGFkZGluZzogMjBweCAwO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgjZmZmLDAuMSk7XHJcbiAgICB9XHJcbiAgICAmW2RhdGEtaHJlZj0nZW5xdWlyZSdde1xyXG4gICAgICBiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG4gICAgICBjb2xvcjokZGFyay1ibHVlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uaG90ZWxzLXRlbXBsYXRlLWhvdGVsLW5ld3MsIC5zaW5nbGUtbmV3cywgLnBhZ2UtdGVtcGxhdGUtcGFnZS1zaXRlbWFwLCAucG9zdC10eXBlLWFyY2hpdmUtcmVudCwgLnBhZ2UtdGVtcGxhdGUtcGFnZS1uZXdzLCAucGFnZS10ZW1wbGF0ZS1wYWdlLTM2MFRvdXIsIC5lcnJvcjQwNHtcclxuICAuc2l0ZS1oZWFkZXJ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ibHVlO1xyXG4gICAgLnRvcC1iYXJ7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6bm9uZTtcclxuICAgIH1cclxuICAgIC50b3AtYmFyLXJpZ2h0X19idG57XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xyXG4gICAgfVxyXG4gICAgLndwbWwtbHMtc3ViLW1lbnV7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5hZG1pbi1iYXJ7XHJcbiAgLnNpdGUtaGVhZGVye1xyXG4gICAgJjpub3QoLnN0aWNreSl7XHJcbiAgICAgIC50b3AtYmFyIC5zdWJtZW51LWNvbnRhaW5lcntcclxuICAgICAgICB0b3A6IDEwNHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi53cG1sLWxhbmd1YWdlLXN3aXRjaGVyLWJsb2Nre1xyXG4gIHVse1xyXG4gICAgJi5pc0hvcml6b250YWx7XHJcbiAgICAgIG1hcmdpbjogMjBweCAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIGxpe1xyXG4gICAgICAgIGRpdntcclxuICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuLyoud3BtbC1scy1pdGVtLWRle1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufSovXHJcblxyXG5bbGFuZz1cImRlLURFXCJdIC50b3AtYmFyLXJpZ2h0X19idG57XHJcbiAgcGFkZGluZzogN3B4IDEwcHg7XHJcbn1cclxuXHJcbi5ob3RlbE1lbnV7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgJi5zdGlja3l7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgei1pbmRleDogMTAwMDAwO1xyXG4gICAgdG9wOjBweDtcclxuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxuICB9XHJcbiAgJl9jb250YWluZXJ7XHJcbiAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG4gICAgcGFkZGluZzogMTVweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgYXtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgY29sb3I6cmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAubG9nb3tcclxuICAgICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xyXG4gICAgICBpbWd7XHJcbiAgICAgICAgd2lkdGg6IDIxNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAubWVudS1pdGVte1xyXG4gICAgICAmLmhhcy1zdWJtZW51e1xyXG4gICAgICAgIC5zdWJtZW51LWNvbnRhaW5lcntcclxuICAgICAgICAgIC8vLm1lbnV7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAvL31cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hY3RpdmV7XHJcbiAgICAgICAgICBhe1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgID4gLnN1Ym1lbnUtY29udGFpbmVye1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIC8vLm1lbnV7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIC8vfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLmN1cnJlbnQtbWVudS1pdGVte1xyXG4gICAgICAgIGF7XHJcbiAgICAgICAgICAvL2NvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2ZmZlxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgICAgLmhvdGVsTmF2e1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLmhvdGVscy10ZW1wbGF0ZSwgLnBhZ2UtdGVtcGxhdGUtcGFnZS1zdGF5LCAucGFnZS10ZW1wbGF0ZS1wYWdlLW9mZmVyc05ldywgLnNpbmdsZS1vZmZlcnN7XHJcbiAgLnNpdGUtaGVhZGVye1xyXG4gICAgJi5zdGlja3l7XHJcbiAgICAgIC5ob3RlbE1lbnV7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLmxvZ297XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX2NvbnRhaW5lcntcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCNmZmYsMC4xKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLnRvcC1iYXJ7XHJcbiAgICAgICAgLy9wYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAuc3VibWVudS1jb250YWluZXJ7XHJcbiAgICAgICAgICB6LWluZGV4OiAxMDAwMDAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZW5xdWlyZUJ0bntcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5O1xyXG4gICAgICAgICAgY29sb3I6ICRkYXJrLWJsdWU7XHJcbiAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBjb2xvcjokbGlnaHQtZ3JleTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50b3AtYmFye1xyXG4gICAgICAuZW5xdWlyZUJ0bntcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWUgIWltcG9ydGFudDtcclxuICAgICAgICAgIGNvbG9yOiRsaWdodC1ncmV5O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uZGF0ZXJhbmdlcGlja2Vye1xyXG4gIC5kcnAtY2FsZW5kYXJ7XHJcbiAgICBtYXgtd2lkdGg6IGZpdC1jb250ZW50ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59IiwiLm1haW4tY29udGFpbmVyIHtcclxuICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcclxufVxyXG5cclxuLm1haW4tZ3JpZCB7XHJcbiAgQGluY2x1ZGUgeHktZ3JpZCgpO1xyXG4gIG1hcmdpbi10b3A6IDFyZW07XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xyXG4gIH1cclxuXHJcbiAgJi5zaWRlYmFyLWxlZnQge1xyXG4gICAgLy8gUGxhY2UgdGhlIHNpZGViYXIgYmVsb3cgbWFpbiBjb250ZW50IG9uIHNtYWxsIHNjcmVlbnMgLi4uXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgIC5tYWluLWNvbnRlbnQgeyBvcmRlcjogMTsgfVxyXG4gICAgICAuc2lkZWJhciB7IG9yZGVyOiAyOyB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gLi4uIGFuZCB0byB0aGUgbGVmdCBvbiBtZWRpdW0tdXAgc2NyZWVucywgd2hlbiB1c2luZyB0aGUgc2lkZWJhci1sZWZ0IHRlbXBsYXRlXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAubWFpbi1jb250ZW50IHsgb3JkZXI6IDI7IH1cclxuICAgICAgLnNpZGViYXIgeyBvcmRlcjogMTsgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gRnVsbCB3aWR0aCB0ZW1wbGF0ZVxyXG4gIC5tYWluLWNvbnRlbnQtZnVsbC13aWR0aCB7XHJcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcclxuICB9XHJcblxyXG4gIC8vIERlZmF1bHQgdGVtcGxhdGVcclxuICAubWFpbi1jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgQGluY2x1ZGUgeHktY2VsbCg4KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zaWRlYmFyIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgQGluY2x1ZGUgeHktY2VsbCg0KTtcclxuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG59XHJcbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZSBndXR0ZXJzIGZvciBhIGNlbGwvY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBlaXRoZXIgbWFyZ2luIG9yIHBhZGRpbmcuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZWdhdGl2ZSBbZmFsc2VdIC0gV2hldGhlciB0byBhcHBseSB0aGUgZ3V0dGVyIGFzIGEgbmVnYXRpdmUgdmFsdWUuIENvbW1vbmx5IHVzZWQgZm9yIG5lc3RlZCBncmlkcy5cbkBtaXhpbiB4eS1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbmVnYXRpdmU6IGZhbHNlXG4pIHtcbiAgJG9wZXJhdG9yOiBpZigkbmVnYXRpdmUsICctJywgJycpO1xuXG4gIC8vIElmIHdlIGhhdmUgZGVjbGFyZWQgbmVnYXRpdmUgZ3V0dGVycywgZm9yY2UgdHlwZSB0byBgbWFyZ2luLlxuICAkZ3V0dGVyLXR5cGU6IGlmKCRuZWdhdGl2ZSwgJ21hcmdpbicsICRndXR0ZXItdHlwZSk7XG5cbiAgLy8gT3V0cHV0IG91ciBtYXJnaW4gZ3V0dGVycy5cbiAgQGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJykge1xuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRndXR0ZXJzKSB7XG4gICAgICAkZ3V0dGVyOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdudW1iZXInKSB7XG4gICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcnMpIC8gMjtcblxuICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIG1heCB3aWR0aCBjb250YWluZXIsIGRlc2lnbmVkIHRvIGhvdXNlIHlvdXIgZ3JpZCBjb250ZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbJGdyaWQtY29udGFpbmVyXSAtIGEgd2lkdGggdG8gbGltaXQgdGhlIGNvbnRhaW5lciB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRncmlkLWNvbnRhaW5lci1wYWRkaW5nXSAtIHBhZGRpbmdzIG9mIHRoZSBjb250YWluZXIuXG5AbWl4aW4geHktZ3JpZC1jb250YWluZXIoXG4gICR3aWR0aDogJGdyaWQtY29udGFpbmVyLFxuICAkcGFkZGluZzogJGdyaWQtY29udGFpbmVyLXBhZGRpbmdcbikge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkcGFkZGluZywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZSB0aGUgcGVyY2VudGFnZSBzaXplIG9mIGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRzaXplIFskZ3JpZC1jb2x1bW5zXSAtIFNpemUgdG8gbWFrZSB0aGUgY2VsbC4gWW91IGNhbiBwYXNzIGEgdmFsdWUgaW4gbXVsdGlwbGUgZm9ybWF0cywgc3VjaCBhcyBgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8zYC5cbkBmdW5jdGlvbiB4eS1jZWxsLXNpemUoXG4gICRzaXplOiAkZ3JpZC1jb2x1bW5zXG4pIHtcbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIG4gb2YgbiBhbmQgbnVtYmVyIGNvdW50c1xuICBAaWYgdHlwZS1vZigkc2l6ZSkgPT0gJ251bWJlcicge1xuICAgIEBpZiB1bml0KCRzaXplKSA9PSAnJScge1xuICAgICAgJHNpemU6ICRzaXplO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkc2l6ZSA8IDEge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UoJHNpemUpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZSgkc2l6ZSAvICRncmlkLWNvbHVtbnMpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBvciBcIm4vblwiIGV4cHJlc3Npb25zXG4gIEBlbHNlIGlmIHR5cGUtb2YoJHNpemUpID09ICdsaXN0JyB7XG4gICAgQGlmIGxlbmd0aCgkc2l6ZSkgIT0gMyB7XG4gICAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgeHktY2VsbC1zaXplKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIgb3IgXCJuL25cIi4nO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZShudGgoJHNpemUsIDEpIC8gbnRoKCRzaXplLCAzKSk7XG4gICAgfVxuICB9XG4gIC8vIEFueXRoaW5nIGVsc2UgaXMgaW5jb3JyZWN0XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgeHktY2VsbC1zaXplKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIiAvIFwibi9uXCIuJztcbiAgfVxuXG4gIEByZXR1cm4gJHNpemU7XG59XG5cbi8vLyBTZXRzIGJhc2UgZmxleCBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBBY2NlcHRzIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCBvciBgZ3Jvd2AuXG5AbWl4aW4geHktY2VsbC1iYXNlKCRzaXplOiBmdWxsKSB7XG4gIEBpZigkc2l6ZSA9PSAnZnVsbCcpIHtcbiAgICAvLyBUaGlzIGlzIHRoZSBiYXNlIHN0eWxlLCBhbGwgb3RoZXJzIGluaGVyaXQgZnJvbSBpdFxuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDBweDtcbiAgICBtaW4td2lkdGg6IDBweDtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ3NocmluaycpIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2dyb3cnKSB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cbn1cblxuLy8vIFJlc2V0cyBhIGNlbGxzIHdpZHRoIChvciBoZWlnaHQgaWYgdmVydGljYWwgaXMgdHJ1ZSkgYXMgd2VsbCBhcyBzdHJpcHMgaXRzIGd1dHRlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1yZXNldCgkdmVydGljYWw6IHRydWUpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHdpZHRoLCBoZWlnaHQpO1xuICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICBtYXgtI3skZGlyZWN0aW9ufTogbm9uZTtcbn1cblxuLy8gU2V0cyBvdXIgY2VsbCB3aWR0aHMgb3IgaGVpZ2h0cyBkZXBlbmRpbmcgb24gZ3V0dGVyIHR5cGUuXG5AbWl4aW4gLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJG1hcmdpbi1ndXR0ZXIsICR2ZXJ0aWNhbCkge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgaGVpZ2h0LCB3aWR0aCk7XG4gIEBpZigkc2l6ZSA9PSAnZnVsbCcpIHtcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAxMDAlLCBjYWxjKDEwMCUgLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgICAjeyRkaXJlY3Rpb259OiAkdmFsO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnYXV0bycpIHtcbiAgICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsIDEwMCUsIGNhbGMoMTAwJSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnc2hyaW5rJykge1xuICAgICN7JGRpcmVjdGlvbn06IGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsICN7eHktY2VsbC1zaXplKCRzaXplKX0sIGNhbGMoI3t4eS1jZWxsLXNpemUoJHNpemUpfSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICAgICN7JGRpcmVjdGlvbn06ICR2YWw7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBjZWxsIGZvciB5b3VyIGdyaWQuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKGRlZmF1bHQpIGZvciAxMDAlIHdpZHRoLCBgYXV0b2AgdG8gdXNlIHVwIGF2YWlsYWJsZSBzcGFjZSBhbmQgYHNocmlua2AgdG8gdXNlIHVwIG9ubHkgcmVxdWlyZWQgc3BhY2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJGJwLWlzLWZhbGxiYWNrOiBmYWxzZTtcblxuICBAaWYoJGJyZWFrcG9pbnQgPT0gbnVsbCkge1xuICAgIC8vIElmIGAkYnAtc2l6ZWAgaXMgYXZhaWxhYmxlIHRoZW4gdXNlIHRoaXMsIG90aGVyd2lzZSByZXZlcnQgdG8gdGhlIHNtYWxsZXN0IGJwLlxuICAgIEBpZih2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgICAkYnJlYWtwb2ludDogJC16Zi1zaXplO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICAgICAkYnAtaXMtZmFsbGJhY2s6IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLy8gR2V0IHRoZSBndXR0ZXIgZm9yIHRoZSBnaXZlbiBicmVha3BvaW50L3ZhbHVlLlxuICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIGZhbGxiYWNrLCB1c2UgYSBmYWxsYmFjayBndXR0ZXIgYXMgd2VsbFxuICBAaWYgKCRicC1pcy1mYWxsYmFjayA9PSB0cnVlIGFuZCAkZ3V0dGVyID09IG51bGwpIHtcbiAgICAkZ3V0dGVyOiAwO1xuICB9XG5cbiAgQGlmKCRndXR0ZXIgIT0gbnVsbCkge1xuICAgIC8vIEJhc2UgZmxleCBwcm9wZXJ0aWVzXG4gICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCRzaXplKTtcblxuICAgIEBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRndXR0ZXIsICR2ZXJ0aWNhbCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsIDAsICR2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGlmICRndXR0ZXItb3V0cHV0IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlciwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICd4eS1jZWxsOiBubyBndXR0ZXJzIHdlcmUgZm91bmQgaW4gYCRndXR0ZXJzYCBmb3IgXCIkYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH1cIiwgY2VsbCB3YXMgbm90IGdlbmVyYXRlZGAnXG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCBzaXplZCBncmlkLiBVc2VkIHRvIGdlbmVyYXRlIG91ciBncmlkIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKGRlZmF1bHQpIGZvciAxMDAlIHdpZHRoLCBgYXV0b2AgdG8gdXNlIHVwIGF2YWlsYWJsZSBzcGFjZSBhbmQgYHNocmlua2AgdG8gdXNlIHVwIG9ubHkgcmVxdWlyZWQgc3BhY2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1zdGF0aWMoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcblxuICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAkZ3V0dGVyLXBvc2l0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgdG9wIGJvdHRvbSwgbGVmdCByaWdodCk7XG5cbiAgQGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRndXR0ZXIsICR2ZXJ0aWNhbCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsIDAsICR2ZXJ0aWNhbCk7XG4gIH1cblxuICAvLyBJZiB3ZSB3YW50IHRvIG91dHB1dCB0aGUgZ3V0dGVyc1xuICBAaWYoJGd1dHRlci1vdXRwdXQpIHtcbiAgICAvLyBUT0RPOiBGaWd1cmUgb3V0IGlmIHdlIG5lZWQgdG8gcGFzcyBicmVha3BvaW50IGluIGhlcmUgdG9vLlxuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlciwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgfVxufVxuIiwiLmZvb3Rlci1jb250YWluZXIge1xyXG4gIC8qQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuICBtYXJnaW4tdG9wOiByZW0tY2FsYyg2MCk7Ki9cclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ibHVlO1xyXG4gIHBhZGRpbmc6MzBweDtcclxuICBAbWVkaWEgIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgIHBhZGRpbmctYm90dG9tOjgwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uZm9vdGVyLWdyaWQge1xyXG4gIEBpbmNsdWRlIHh5LWdyaWQ7XHJcbiAgcGFkZGluZzogcmVtLWNhbGMoMzApIDA7XHJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTowO1xyXG4gIH1cclxuICBzZWN0aW9uIHtcclxuICAgIEBpbmNsdWRlIHh5LWNlbGwoKTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgQGluY2x1ZGUgeHktY2VsbChhdXRvKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVsIHtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gIH1cclxuICAud2lkZ2V0e1xyXG4gICAgJi53aWRnZXRfYmxvY2t7XHJcbiAgICAgIGZsZXg6aW5pdGlhbDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAmOmZpcnN0LWNoaWxke1xyXG4gICAgICAgIHdpZHRoOiAzMCU7XHJcbiAgICAgIH1cclxuICAgICAgJjpudGgtY2hpbGQoMil7XHJcbiAgICAgICAgd2lkdGg6IDM1JTtcclxuICAgICAgfVxyXG4gICAgICAmOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgd2lkdGg6IDI1JTtcclxuICAgICAgfVxyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZzowICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpe1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC53aWRnZXRfbmF2X21lbnV7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICBpbWd7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcbiAgICAmI2Jsb2NrLTZ7XHJcbiAgICAgIC8vcGFkZGluZzogMCA0MHB4O1xyXG4gICAgfVxyXG4gICAgaDIsaDMge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgZm9udC1zaXplOiAxLjV2dztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNnZ3O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBwe1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICBhe1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xyXG4gICAgICB9XHJcbiAgICAgIHNwYW57XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgIH1cclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgjZmZmLDAuMSk7XHJcbiAgICAgICAgc3BhbntcclxuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgI2dmb3JtXzEsI2dmb3JtXzl7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XHJcbiAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNmZmY7XHJcbiAgICAgIC5nZm9ybV9ib2R5e1xyXG4gICAgICAgIHdpZHRoOiA5NiU7XHJcbiAgICAgICAgaW5wdXR7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgIGJveC1zaGFkb3c6bm9uZTtcclxuICAgICAgICAgIHBhZGRpbmc6OHB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5nZm9ybV9mb290ZXJ7XHJcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgIGlucHV0e1xyXG4gICAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcclxuICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgcGFkZGluZzoxMnB4IDA7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgY29sb3I6I2ZmZjtcclxuICAgICAgICAgIGJvcmRlcjpub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmdmb3JtX3dyYXBwZXJ7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICB9XHJcbiAgICAud3AtYmxvY2stc29jaWFsLWxpbmtzOm5vdCguaXMtc3R5bGUtbG9nb3Mtb25seSkgLndwLXNvY2lhbC1saW5re1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgICBzdmd7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgICBhe1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLndpZGdldF9uYXZfbWVudXtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIC5tZW51e1xyXG4gICAgbGl7XHJcbiAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgIGF7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgIH1cclxuICAgICAgJi5pcy1hY3RpdmUgPiBhe1xyXG4gICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIC5tZW51e1xyXG4gICAgICBsaXtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgjZmZmLDAuMSk7XHJcbiAgICAgICAgYXtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLm90Z3MtZGV2ZWxvcG1lbnQtc2l0ZS1mcm9udC1lbmR7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gICNibG9jay0xMHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBwe1xyXG4gICAgICBib3JkZXItYm90dG9tOm5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zaW5nbGUtaG90ZWxze1xyXG4gIC53aWRnZXRfbmF2X21lbnUgLm1lbnUgbGl7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbiAgLmZvb3Rlci1ncmlkIC53aWRnZXQge1xyXG4gICAgZmxleDogaW5pdGlhbDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgIHdpZHRoOiAzMCU7XHJcbiAgICB9XHJcbiAgICAmOm50aC1jaGlsZCgyKXtcclxuICAgICAgd2lkdGg6IDM1JTtcclxuICAgIH1cclxuICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgd2lkdGg6IDI1JTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIHBhZGRpbmc6MCAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLndoYXRzYXBwSWNvbntcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgYm90dG9tOiAxMHB4O1xyXG4gIHJpZ2h0OiAxMHB4O1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgIGJvdHRvbTogNjVweDtcclxuICB9XHJcbn1cclxuXHJcbi5naWZ0Q2FyZEJ0bntcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGJvdHRvbTogMTBweDtcclxuICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZDogIzBBNDE1ODtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgd2lkdGg6IDU1cHg7XHJcbiAgICBoZWlnaHQ6IDU1cHg7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAmOmhvdmVye1xyXG4gICAgICBjb2xvcjojZmZmO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgICAgYm90dG9tOiA2NXB4O1xyXG4gICAgfVxyXG59IiwiYm9keSN0aW55bWNle1xyXG4gIGhlaWdodDogYXV0bzsgLy8gRml4IGVkaXRvciBzdHlsZSBidWdcclxuICBtYXgtd2lkdGg6ICRncmlkLXJvdy13aWR0aDsgLy8gR2l2ZSB0aGUgZWRpdG9yIGEgbWF4LXdpZHRoXHJcbiAgcGFkZGluZzogcmVtLWNhbGMoMjApICFpbXBvcnRhbnQ7XHJcbn0iLCIuc2l0ZXMtYnV0dG9uIHtcclxuICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuICBmb250LXNpemU6IDEuMjVyZW07XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgYm94LXNoYWRvdzogMCAtMnB4IDAgcmdiYSgwLDAsMCwwLjIpIGluc2V0O1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICBib3JkZXI6IG5vbmU7XHJcbn1cclxuLmJ0bntcclxuICAvL2NvbG9yOiRibHVlO1xyXG4gIC8vYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xyXG4gIC8vcGFkZGluZy1ib3R0b206IDVweDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtc2l6ZTogMXZ3O1xyXG4gIGJvcmRlci1yYWRpdXM6MjBweDtcclxuICBwYWRkaW5nOjEwcHggMjBweDtcclxuICBjdXJzb3I6cG9pbnRlcjtcclxuICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gICAgZm9udC1zaXplOiA0dnc7XHJcbiAgfVxyXG4gICYtYmx1ZUJsb2Nre1xyXG4gICAgYmFja2dyb3VuZDogJGRhcmstYmx1ZTtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgJjpob3ZlcntcclxuICAgICAgYmFja2dyb3VuZDogJGJsdWU7XHJcbiAgICAgIGNvbG9yOiNmZmY7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtYmx1ZUJveHtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6ICRkYXJrLWJsdWU7XHJcbiAgICBib3JkZXI6MXB4IHNvbGlkICRkYXJrLWJsdWU7XHJcbiAgICAmOmhvdmVye1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG4gICAgICBjb2xvcjojZmZmO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLXdoaXRlQmxvY2t7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgY29sb3I6ICRkYXJrLWJsdWU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG4gICAgJjpob3ZlcntcclxuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGNvbG9yOiNmZmY7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtd2hpdGVCb3h7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcclxuICAgICY6aG92ZXJ7XHJcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgIGNvbG9yOiRkYXJrLWJsdWUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbiAgJi11bmRlcmxpbmV7XHJcbiAgICBib3JkZXItcmFkaXVzOjA7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkYmx1ZTtcclxuICAgIGNvbG9yOiRibHVlO1xyXG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgIGZvbnQtc2l6ZToxLjJ2dztcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNHZ3O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKi5yb3VuZGVke1xyXG4gICAgYmFja2dyb3VuZDogJGRhcmstYmx1ZTtcclxuICB3aWR0aDogNzBweDtcclxuICBoZWlnaHQ6IDcwcHg7XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHotaW5kZXg6IDEwMDA7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBhbGlnbi1pdGVtczpjZW50ZXI7XHJcbiAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufSovIiwiLmhvbWVQYWdle1x0XHJcblx0Jl9oYXdhbmF7XHJcblx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdFx0Ji1pbnRyb3tcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0YWxpZ24taXRlbXM6ZmxleC1lbmQ7XHJcblx0XHRcdHBhZGRpbmc6IDEwMHB4IDE1MHB4O1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0ZmxleDogMTtcdFxyXG5cdFx0XHR9XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdHBhZGRpbmc6MjVweDtcclxuXHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdGZsZXg6IGluaXRpYWw7XHJcblx0XHRcdFx0XHQmOmxhc3QtY2hpbGR7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDozMHB4XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmLXNsaWRlcntcclxuXHRcdFx0Jl9jb250ZW50e1xyXG5cdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRhbGlnbi1pdGVtczpjZW50ZXI7XHJcblx0XHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDIwcHggNTBweDtcclxuXHRcdFx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDF2dztcclxuXHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6MDtcclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG5cdFx0XHRcdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDN2dztcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHRcdFx0XHRcdHBhZGRpbmctdG9wOjEwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfaGF3YW5hLCZfZXZlbnRze1xyXG5cdFx0cGFkZGluZy1ib3R0b206MTAwcHg7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbToyNXB4O1xyXG5cdFx0fVxyXG5cdFx0LnNsaWRlcnNDb250YWluZXJ7XHJcblx0XHRcdC5tYWluU2xpZGVye1xyXG5cdFx0XHRcdC5zbGljay1zbGlkZXtcclxuXHRcdFx0XHRcdCYuc2xpY2stY3VycmVudHtcclxuXHRcdFx0XHRcdFx0LnNsaWRlcl90aXRsZXtcclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9ob3RlbHN7XHJcblx0XHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0XHRwYWRkaW5nOiAxMjBweCAwcHg7XHJcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcclxuXHRcdCYuYmFja2dyb3VuZENvbG9ye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0XHRoMntcclxuXHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0Y29sb3I6JGRhcmstYmx1ZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdGgye1xyXG5cdFx0XHRwYWRkaW5nOjAgMTUwcHg7XHJcblx0XHRcdHNwYW57XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdGgze1xyXG5cdFx0XHRmb250LXNpemU6MjVweDtcclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRmb250LXNpemU6MThweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzoyNXB4IDA7XHJcblx0XHRcdGgye1xyXG5cdFx0XHRcdHBhZGRpbmc6MCAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHRcdFxyXG5cdH1cclxuXHQmX29mZmVyc3tcclxuXHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHRwYWRkaW5nOiA3MHB4IDBweDtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdFx0aDJ7XHJcblx0XHRcdFx0c3BhbntcclxuXHRcdFx0XHRcdGNvbG9yOiRibHVlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0aDJ7XHJcblx0XHRcdHBhZGRpbmc6IDAgMTUwcHg7XHJcblx0XHRcdHNwYW57XHJcblx0XHRcdFx0Y29sb3I6JGRhcmstYmx1ZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzozMHB4IDA7XHJcblx0XHRcdGgye1xyXG5cdFx0XHRcdHBhZGRpbmc6MCAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQub2ZmZXJ7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuXHRcdFx0Ji1pbWFnZXtcclxuXHRcdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDUwcHg7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OjE1MHB4O1xyXG5cdFx0XHRcdHotaW5kZXg6IDE7XHJcblx0XHRcdFx0aW1ne1xyXG5cdFx0XHRcdFx0Ly90cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHQvL3RyYW5zZm9ybTogdHJhbnNsYXRlWSg1MHB4KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0Ji1jb250ZW50e1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7XHJcblx0XHRcdCAgICBwYWRkaW5nOiAxMDBweCAyMDBweDtcclxuXHRcdFx0ICAgIHBhZGRpbmctbGVmdDozMDBweDtcclxuXHRcdFx0ICAgIHdpZHRoOiBjYWxjKDUwJSArIDMwMHB4KTtcclxuXHRcdFx0ICAgIG1hcmdpbi1sZWZ0OiAtMjgwcHg7XHJcblx0XHRcdCAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgXHRcdFx0YWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0ICAgIGgzLHB7XHJcblx0XHRcdCAgICBcdGNvbG9yOiNmZmY7XHJcblx0XHRcdCAgICB9XHJcblx0XHRcdCAgICBoM3tcclxuXHRcdFx0ICAgIFx0Zm9udC1zaXplOiA0MHB4O1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHQgICAgcCxhLmJ0bntcclxuXHRcdFx0ICAgIFx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdFx0XHQgICAgfVx0XHJcblx0XHRcdCAgICAucHJpY2V7XHJcblx0XHRcdCAgICBcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHQgICAgYS5idG57XHJcblx0XHRcdCAgICBcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdFx0ICAgIFx0Ym9yZGVyLXJhZGl1czo1MHB4O1xyXG5cdFx0XHQgICAgXHRwYWRkaW5nOjdweCAyMHB4O1xyXG5cdFx0XHQgICAgXHRjb2xvcjogJGJsdWU7XHJcblx0XHRcdCAgICBcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHR9XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdCYtaW1hZ2V7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdHBhZGRpbmc6MDtcclxuXHRcdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApICAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmLWNvbnRlbnR7XHJcblx0XHRcdFx0XHRwYWRkaW5nOjI1cHggMzBweCA0MHB4O1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdFx0XHRcdGgze1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDMwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDE1cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRhe1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAxNXB4IDIwcHg7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdFx0JjpsYXN0LWNoaWxke1xyXG5cdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDQwcHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5zbGljay1hcnJvd3tcclxuXHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdCAgICB3aWR0aDogNTBweDtcclxuXHRcdCAgICBoZWlnaHQ6IDUwcHg7XHJcblx0XHQgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0ICAgIGNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdFx0ICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdCAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHRcdCAgICBib3R0b206MTAwcHg7XHJcblx0XHQgICAgei1pbmRleDogMTtcclxuXHRcdCAgICBib3JkZXI6MXB4IHNvbGlkICNmZmY7XHJcblx0XHQgICAgZm9udC1zaXplOjA7XHJcblx0XHQgICAgaXtcclxuXHRcdCAgICBcdGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdCAgICB9XHJcblx0XHQgICAgJi5zbGljay1uZXh0e1xyXG5cdFx0ICAgIFx0cmlnaHQ6IDIwMHB4O1xyXG5cdFx0ICAgIH1cclxuXHRcdCAgICAmLnNsaWNrLXByZXZ7XHJcblx0XHRcdFx0cmlnaHQ6IDMwMHB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdCY6aG92ZXJ7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdH1cclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHR3aWR0aDogNTBweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDUwcHg7XHJcblx0XHRcdFx0Ym90dG9tOjI4cHg7XHJcblx0XHRcdFx0Ji5zbGljay1uZXh0e1xyXG5cdFx0XHQgICAgXHRyaWdodDogMjBweDtcclxuXHRcdFx0ICAgIH1cclxuXHRcdFx0ICAgICYuc2xpY2stcHJldntcclxuXHRcdFx0XHRcdHJpZ2h0OiA4MHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmX3JlYWxFc3RhdGV7XHJcblx0XHRwYWRkaW5nOiA3MHB4IDBweCAwcHg7XHJcblx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdFx0aDJ7XHJcblx0XHRcdHBhZGRpbmc6IDAgMTUwcHg7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjMwcHggMDtcclxuXHRcdFx0aDJ7XHJcblx0XHRcdFx0cGFkZGluZzogMCAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmLXNsaWRlcntcclxuXHRcdFx0YmFja2dyb3VuZDojZmZmO1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcclxuXHRcdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdFx0fVxyXG5cdFx0XHQuc2xpY2stbGlzdHtwYWRkaW5nOjAgMjAlIDAgMjAlICFpbXBvcnRhbnQ7fVxyXG5cdFx0XHQuc2xpY2stc2xpZGV7XHJcblx0XHRcdFx0cGFkZGluZzogMCAxMHB4O1xyXG5cdFx0XHRcdCY6bm90KC5zbGljay1jdXJyZW50KXtcclxuXHRcdFx0XHRcdC5wcm9wZXJ0eS1jb250ZW50e1xyXG5cdFx0XHRcdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06c2NhbGUoMCkgdHJhbnNsYXRlWSgtNTAlKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHQuc2xpY2stbGlzdHtwYWRkaW5nOjAgIWltcG9ydGFudDt9XHJcblx0XHRcdFx0LnNsaWNrLWFycm93e1xyXG5cdFx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdFx0ICAgIHdpZHRoOiA1MHB4O1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiA1MHB4O1xyXG5cdFx0XHRcdCAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0XHRcdFx0ICAgIGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7XHJcblx0XHRcdFx0ICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdFx0XHQgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcblx0XHRcdFx0ICAgIGJvdHRvbTowcHg7XHJcblx0XHRcdFx0ICAgIHotaW5kZXg6IDE7XHJcblx0XHRcdFx0ICAgICYuc2xpY2stbmV4dHtcclxuXHRcdFx0XHQgICAgXHRyaWdodDogMjBweDtcclxuXHRcdFx0XHQgICAgfVxyXG5cdFx0XHRcdCAgICAmLnNsaWNrLXByZXZ7XHJcblx0XHRcdFx0XHRcdHJpZ2h0OiA4MHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuc2xpY2stc2xpZGV7XHJcblx0XHRcdFx0XHRwYWRkaW5nOjA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQucHJvcGVydHl7XHJcblx0XHRcdCYtY29udGVudHtcclxuXHRcdFx0XHRjdXJzb3I6IGRlZmF1bHQ7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdFx0ICAgIHdpZHRoOiA2MCU7XHJcblx0XHRcdCAgICBtYXJnaW46IGF1dG87XHJcblx0XHRcdCAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0XHRcdCAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XHJcblx0XHRcdCAgICBkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHQgICAgb3BhY2l0eTogMTtcclxuXHRcdFx0ICAgIHRyYW5zaXRpb246IGFsbCAxcyBlYXNlO1xyXG5cdFx0XHQgICAgZGl2OmZpcnN0LWNoaWxke1xyXG5cdFx0XHQgICAgXHRwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHQgICAgLmN0YXtcclxuXHRcdFx0ICAgIFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHQgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdFx0XHQgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRcdCAgICBkaXZ7XHJcblx0XHRcdFx0ICAgIFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHQgICAgfVxyXG5cdFx0XHRcdCAgICBwe1xyXG5cdFx0XHRcdCAgICBcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHQgICAgfVxyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHQgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pe1xyXG5cdFx0XHQgICAgXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcblx0XHRcdFx0ICAgIHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdCAgICBwYWRkaW5nOiAyMHB4O1xyXG5cdFx0XHRcdCAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0ICAgIC8vYmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdFx0XHQgICAgZGl2OmZpcnN0LWNoaWxke1xyXG5cdFx0XHRcdCAgICBcdHBhZGRpbmctcmlnaHQ6MDtcclxuXHRcdFx0XHQgICAgXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0XHRcdCAgICB9XHJcblx0XHRcdCAgICB9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5zbGljay1hcnJvd3tcclxuXHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTtcclxuXHRcdCAgICB3aWR0aDogNTBweDtcclxuXHRcdCAgICBoZWlnaHQ6IDUwcHg7XHJcblx0XHQgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0ICAgIGNvbG9yOiAjZmZmO1xyXG5cdFx0ICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdCAgICB6LWluZGV4OiAxO1xyXG5cdFx0ICAgIC8vbWFyZ2luOiAwIDVweDtcclxuXHRcdCAgICBib3JkZXI6MXB4IHNvbGlkICRkYXJrLWJsdWU7XHJcblx0XHQgICAgZm9udC1zaXplOjA7XHJcblx0XHQgICAgaXtcclxuXHRcdCAgICBcdGZvbnQtc2l6ZToxNnB4O1xyXG5cdFx0ICAgIH1cclxuXHRcdCAgICAmOmhvdmVye1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdGNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdFx0XHR9XHJcblx0XHQgICAgJi5zbGljay1wcmV2e1xyXG5cdFx0ICAgIFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdFx0ICAgIH1cclxuXHRcdCAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdHdpZHRoOiA1MHB4O1xyXG5cdFx0XHRcdGhlaWdodDogNTBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmX3JlbnRhbHtcclxuXHRcdHBhZGRpbmc6MHB4IDBweCA3MHB4IDE1MHB4O1xyXG5cdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdCYuYmFja2dyb3VuZENvbG9ye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0XHRoMntcclxuXHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0Y29sb3I6JGRhcmstYmx1ZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdGgye1xyXG5cdFx0XHRsaW5lLWhlaWdodDogNHZ3O1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG5cdFx0XHRzcGFue1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OjV2dztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0ZGl2e1xyXG5cdFx0XHRmbGV4OiAxO1xyXG5cdFx0XHRpbWd7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdFx0cHtcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjEwMHB4O1xyXG5cdFx0XHRcdCYucHJpY2V7XHJcblx0XHRcdFx0XHRjb2xvcjogJGJsdWU7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGRlcjtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZToxNHB0O1xyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjE2cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjQwcHggMHB4IDQwcHggMjVweDtcclxuXHRcdFx0YmFja2dyb3VuZDojZmZmICFpbXBvcnRhbnQ7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0ZmxleDogaW5pdGlhbDtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRtYXJnaW46IDEwcHggMDtcclxuXHRcdFx0fVxyXG5cdFx0XHRoMntcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogNnZ3O1xyXG5cdFx0XHRcdHdpZHRoOiA4MCU7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDh2dztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9ldmVudHN7XHJcblx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XHJcblx0XHRwYWRkaW5nOiAxMDBweCAwcHg7XHJcblx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0YmFja2dyb3VuZDojZmZmO1xyXG5cdFx0XHRoMntcclxuXHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0Y29sb3I6JGJsdWU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRoMntcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiAxNTBweDtcclxuXHRcdFx0c3BhbntcclxuXHRcdFx0XHRjb2xvcjokZGFyay1ibHVlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjQwcHggMDtcclxuXHRcdFx0aDJ7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdCYtc2xpZGVye1xyXG5cdFx0XHRcdCZfY29udGVudHtcclxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XHJcblx0XHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcdFx0XHRcdFxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LnNsaWRlcnNDb250YWluZXJ7XHJcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuXHRcdH1cclxuXHR9XHJcblx0Jl9tYXB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG4gICAgXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIFx0cGFkZGluZzo1MHB4IDAgMTAwcHg7XHJcbiAgICBcdGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICBcdGZsZXgtd3JhcDogd3JhcDtcclxuICAgIFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgIFx0XHRwYWRkaW5nOjI1cHggMDtcclxuICAgIFx0XHRpZnJhbWV7XHJcbiAgICBcdFx0XHR3aWR0aDogOTAlO1xyXG4gICAgXHRcdH1cclxuICAgIFx0fVxyXG4gICAgXHRpbWd7XHJcbiAgICBcdFx0d2lkdGg6IDEwMCU7XHJcbiAgICBcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIFx0fVxyXG4gICAgXHQjbWFwIHtcclxuXHRcdCAgaGVpZ2h0OiA1MDBweDtcclxuXHRcdCAgd2lkdGg6IDgwJTtcclxuXHRcdH1cclxuXHRcdC5nbS1zdHlsZS1pdywgLmdtLXN0eWxlLWl3LWR7XHJcblx0XHRcdG1heC1oZWlnaHQ6IDQwMHB4ICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0XHQuaW5mb1dpbmRvd3tcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0Jl9jb250YWluZXJ7XHJcblx0XHRcdFx0YmFja2dyb3VuZDokZGFyay1ibHVlO1xyXG5cdFx0XHRcdHBhZGRpbmc6MTVweDtcclxuXHRcdFx0XHR3aWR0aDogMzMwcHg7XHJcblx0XHRcdFx0QG1lZGlhKG1heC13aWR0aDogNDBlbSl7XHJcblx0XHRcdFx0XHR3aWR0aDogMjY1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5jb250ZW50e1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0XHRcdG1hcmdpbjogMTBweCBhdXRvO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRoNntcclxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDIzcHg7XHJcblx0XHRcdFx0XHRjb2xvcjojZmZmO1xyXG5cdFx0XHRcdFx0QG1lZGlhKG1heC13aWR0aDogNDBlbSl7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cCxhLHNwYW57XHJcblx0XHRcdFx0XHRjb2xvcjojZmZmO1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aW1ne1xyXG5cdFx0XHRcdFx0d2lkdGg6IDIyNXB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuaW1hZ2V7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdGhlaWdodDogMjAwcHg7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcblx0XHRcdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA0MGVtKXtcclxuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxMzBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcclxuXHRcdCAgICBcdFx0JjpmaXJzdC1jaGlsZHtcclxuXHRcdCAgICBcdFx0XHRmb250LXNpemU6IDE4cHg7XHJcblx0XHQgICAgXHRcdFx0Zm9udC1mYW1pbHk6IEVsTWVzc2lyaTtcclxuXHRcdCAgICBcdFx0XHRsaW5lLWhlaWdodDogMTRweDtcclxuXHRcdCAgICBcdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA0MGVtKXtcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDE2cHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdCAgICBcdFx0fVxyXG5cdFx0ICAgIFx0XHRzcGFuLGl7XHJcblx0XHQgICAgXHRcdFx0Zm9udC1zaXplOiAxMHB4O1xyXG5cdFx0ICAgIFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGF7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0XHRAbWVkaWEobWF4LXdpZHRoOiA0MGVtKXtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuZGlzY292ZXJ7XHJcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5nbS1zdHlsZSAuZ20tc3R5bGUtaXctY3tcclxuXHRcdFx0YmFja2dyb3VuZDokZGFyay1ibHVlO1xyXG5cdFx0XHRwYWRkaW5nOjA7XHJcblx0XHRcdEBtZWRpYShtYXgtd2lkdGg6IDQwZW0pe1xyXG5cdFx0XHRcdG1heC13aWR0aDogMjcwcHggIWltcG9ydGFudDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmdtLXN0eWxlIC5nbS1zdHlsZS1pdy1ke1xyXG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0XHQuZ20tdWktaG92ZXItZWZmZWN0PnNwYW57XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0XHQgICAgd2lkdGg6IDE2cHggIWltcG9ydGFudDtcclxuXHRcdCAgICBoZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcclxuXHRcdH1cclxuXHRcdC5nbS1zdHlsZSAuZ20tc3R5bGUtaXctdGM6OmFmdGVye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiRkYXJrLWJsdWU7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5ub0Fycm93U2xpZGVye1xyXG5cdFx0LnNsaWRlcntcclxuXHRcdFx0Jl90aXRsZXtcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0Ym90dG9tOjA7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5zbGlkZXJzQ29udGFpbmVye1xyXG5cdFx0XHQuc2xpY2stc2xpZGV7XHJcblx0XHRcdFx0aDN7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDN2dztcclxuXHRcdFx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0XHRcdFx0dGV4dC1zaGFkb3c6IDAgMCA4cHggIzVjNWM1YztcclxuXHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogN3Z3O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5yZWFsRXN0YXRle1xyXG5cdCZfaW50cm97XHJcblx0XHQmLXRleHR7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0cGFkZGluZzoxMDBweCAxNTBweDtcclxuXHRcdFx0ZGl2e1xyXG5cdFx0XHRcdHdpZHRoOiA0OCU7XHJcblx0XHRcdH1cclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0cGFkZGluZzoyNXB4IDUwcHg7XHJcblx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmLWltYWdle1xyXG5cdFx0XHRpbWd7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LmZyZWVob2xkX3Byb3BlcnRpZXN7XHJcblx0XHRwYWRkaW5nOjEwMHB4IDE1MHB4IDUwcHg7XHJcblx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0ZGl2e1xyXG5cdFx0XHRjb2x1bW4tY291bnQ6IDI7XHJcblx0XHRcdHdpZHRoOiA4MCU7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjI1cHg7XHJcblx0XHRcdC8vYmFja2dyb3VuZDojZmZmO1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0Y29sdW1uLWNvdW50OiAxO1xyXG5cdFx0XHRcdHBhZGRpbmc6MCAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfaW52ZXN0aW5ne1xyXG5cdFx0cGFkZGluZzogNTBweCAwcHggNTBweCAxNTBweDtcclxuXHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0YmFja2dyb3VuZDojZmZmO1xyXG5cdFx0fVxyXG5cdFx0aDF7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XHJcblx0XHR9XHJcblx0XHRkaXZ7XHJcblx0XHRcdGZsZXg6IDE7XHJcblx0XHRcdGltZ3tcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHQuaW1ne1xyXG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDEuM3MgY3ViaWMtYmV6aWVyKC43NiwwLC4yNCwxKTtcclxuXHRcdFx0XHRcdGNsaXAtcGF0aDogaW5zZXQoMTAwJSAwIDAgMCk7XHJcblx0XHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmLmlzLWludmlld3tcclxuXHRcdFx0XHRcdC5pbWd7XHJcblx0XHRcdFx0XHRcdGNsaXAtcGF0aDogaW5zZXQoMCAwIDAgMCk7XHJcblx0XHRcdFx0XHR9XHRcdFx0XHRcdFxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRwe1xyXG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6MTAwcHg7XHJcblx0XHRcdFx0Ji5wcmljZXtcclxuXHRcdFx0XHRcdGNvbG9yOiAkYmx1ZTtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjQwcHggMHB4IDQwcHggMjVweDtcclxuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHRmbGV4OiBpbml0aWFsO1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdG1hcmdpbjogMTBweCAwO1xyXG5cdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjI1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdGgxe1xyXG5cdFx0XHRcdHdpZHRoOiA4MCU7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmX3Byb3BlcnRpZXN7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0fVxyXG5cdFx0LnByb3BlcnR5e1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG4gICAgXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuICAgIFx0XHQmLWNvbnRlbnQsJi1pbWFnZXtcclxuICAgIFx0XHRcdHdpZHRoOjUwJTtcclxuICAgIFx0XHR9XHJcbiAgICBcdFx0Ji1pbWFnZXtcclxuXHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0LyomLmlzLWludmlld3tcclxuXHRcdFx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0XHRcdGNsaXAtcGF0aDogaW5zZXQoMCAwIDAgMCk7XHJcblx0XHRcdFx0XHRcdH1cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCAxLjNzIGN1YmljLWJlemllciguNzYsMCwuMjQsMSk7XHJcblx0XHRcdFx0XHRcdGNsaXAtcGF0aDogaW5zZXQoMTAwJSAwIDAgMCk7XHJcblx0XHRcdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdFx0XHR9Ki9cclxuXHRcdFx0XHR9XHJcbiAgICBcdFx0fVxyXG4gICAgXHRcdCYtY29udGVudHtcclxuICAgIFx0XHRcdHBhZGRpbmc6IDUwcHg7XHJcbiAgICBcdFx0fVxyXG4gICAgXHRcdGltZ3tcclxuICAgIFx0XHRcdHdpZHRoOiAxMDAlO1xyXG4gICAgXHRcdH1cclxuICAgIFx0XHRhe1xyXG5cdFx0XHRcdC8vcGFkZGluZy10b3A6IDMwcHg7XHJcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHR9XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMHB4O1xyXG5cdFx0XHRcdCYtY29udGVudCwmLWltYWdle1xyXG5cdCAgICBcdFx0XHR3aWR0aDoxMDAlO1xyXG5cdCAgICBcdFx0fVxyXG5cdCAgICBcdFx0YXtcclxuXHQgICAgXHRcdFx0cGFkZGluZy10b3A6MDtcclxuXHQgICAgXHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmOm50aC1jaGlsZChvZGQpe1xyXG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6MTUwcHg7XHJcblx0XHRcdFx0aDF7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MTUwcHg7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LnByb3BlcnR5LWNvbnRlbnR7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiRkYXJrLWJsdWU7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6Y2VudGVyO1xyXG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogLTEwJTtcclxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMTUlO1xyXG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogNSU7XHJcblx0XHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0XHRjb2xvcjojZmZmO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQucHJvcGVydHktaW1hZ2V7XHJcblx0XHRcdFx0XHR6LWluZGV4OiAxO1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNSU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHQmOm5vdCg6Zmlyc3QtY2hpbGQpe1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDowO1xyXG5cdFx0XHRcdFx0cGFkZGluZy10b3A6MjVweDtcclxuXHRcdFx0XHRcdGgxe1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MjVweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdC5wcm9wZXJ0eS1jb250ZW50e1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0XHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmc6NTBweDtcclxuXHRcdFx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdFx0XHRjb2xvcjogIzAwMDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRhe1xyXG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAkZGFyay1ibHVlOztcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0LnByb3BlcnR5LWltYWdle1xyXG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmOm50aC1jaGlsZChldmVuKXtcclxuXHRcdFx0XHQucHJvcGVydHktY29udGVudHtcclxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDoxNTBweDtcclxuXHRcdFx0XHRcdGgxe1xyXG5cdFx0XHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHQgICAgaGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRcdFx0ICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHRcdCAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0XHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDIwcHggMjVweCAwO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdGF7XHJcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDI1cHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9pbnZlc3R7XHJcblx0XHRwYWRkaW5nOjUwcHggMTUwcHggMTAwcHg7XHJcblx0XHQmLWNvbnRlbnR7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IDQ1JTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Ji1nZXRJblRvdWNoe1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0bWFyZ2luOjMwcHggYXV0bztcclxuXHRcdFx0ZGl2e1xyXG5cdFx0XHRcdHdpZHRoOiA0NSU7XHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRhbGlnbi1pdGVtczpjZW50ZXI7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6NDBweCAyNXB4O1xyXG5cdFx0XHQmLWNvbnRlbnR7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0d2lkdGg6IDgwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0Ji1nZXRJblRvdWNoe1xyXG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdHdpZHRoOiA4MCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5nZm9ybV93cmFwcGVye1xyXG5cdFx0LmdmaWVsZHtcclxuXHRcdFx0JiNmaWVsZF8yXzR7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMThweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLnNpbmdsZS1yZWFsRXN0YXRle1xyXG5cdC5kZXNjcmlwdGlvbntcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRwYWRkaW5nOjEwMHB4IDE1MHB4O1xyXG5cdFx0ZGl2e1xyXG5cdFx0XHR3aWR0aDogNDUlO1xyXG5cdFx0fVxyXG5cdFx0aDF7XHJcblx0XHRcdGZvbnQtc2l6ZTogNHZ3O1xyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogN3Z3O1xyXG5cdFx0XHRcdHNwYW57XHJcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdGF7XHJcblx0XHRcdC8vY29sb3I6JGJsdWU7XHJcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcclxuXHRcdCAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogNTBweCAyNXB4O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHQmOmxhc3QtY2hpbGR7XHJcblx0XHRcdFx0XHRwYWRkaW5nOjAgMjVweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LmZlYXR1cmVze1xyXG5cdFx0YmFja2dyb3VuZDokZGFyay1ibHVlO1xyXG5cdFx0cGFkZGluZzoxMDBweCAxNTBweDtcclxuXHRcdCZfY29udGFpbmVye1xyXG5cdFx0XHRkaXNwbGF5OiBncmlkO1xyXG5cdFx0XHRnYXA6IDIwcHg7XHJcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRhbGlnbi1jb250ZW50OnNwYWNlLWJldHdlZW47XHJcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0XHRcdHBhZGRpbmc6MjBweCAwO1xyXG5cdFx0XHRcdGg2e1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0aDIsaDZ7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0Y29sb3I6I2ZmZjtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDUwcHggMjVweDtcclxuXHRcdFx0Jl9jb250YWluZXJ7XHJcblx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuXHRcdFx0XHRnYXA6MTBweDtcclxuXHRcdFx0XHRoNntcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aW1ne1xyXG5cdFx0XHRcdFx0d2lkdGg6IDYwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LnByb3BlcnR5X2Nhcm91c2Vse1xyXG5cdFx0YmFja2dyb3VuZDogJGxpZ2h0LWdyZXk7XHJcblx0XHRoMXtcclxuXHRcdFx0cGFkZGluZy10b3A6IDkwcHg7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogNTBweDtcclxuXHRcdH1cclxuXHRcdC5zbGlkZXJfY29udGVudHtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRtYXJnaW46MTBweCAwICFpbXBvcnRhbnQ7XHJcblx0XHRcdHB7XHJcblx0XHRcdFx0Y29sb3I6ICMwMDAgIWltcG9ydGFudDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Lm1haW5TbGlkZXJ7XHJcblx0XHRcdC5zbGlkZXJfY29udGVudHtcclxuXHRcdFx0XHRwYWRkaW5nLXRvcDogMjBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHQuc2xpY2stY3VycmVudHtcclxuXHRcdFx0XHQuc2xpZGVyX2NvbnRlbnR7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDogMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5uYXZTbGlkZXJ7XHJcblx0XHRcdC5zbGlkZXJfY29udGVudHtcclxuXHRcdFx0XHRtYXJnaW46MTZweCAwICFpbXBvcnRhbnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LmRvY3VtZW50c3tcclxuXHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHRwYWRkaW5nOiAyMHB4IDBweCAxMDBweDtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdH1cclxuXHRcdC5wZGZ7XHJcblx0XHRcdHdpZHRoOiAzMCU7XHJcblx0XHRcdG1hcmdpbjogMCAxMHB4O1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTtcclxuXHRcdFx0XHRwYWRkaW5nOjEwcHggMTVweCAzMHB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdGg1LGF7XHJcblx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdH1cclxuXHRcdFx0YXtcclxuXHRcdFx0XHRmb250LXNpemU6IDE1cHg7XHJcblx0XHRcdH1cclxuXHRcdFx0aW1ne1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjYwcHggMCAwcHg7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0LnBkZntcclxuXHRcdFx0XHR3aWR0aDogODAlO1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Lm1hc3RlcnBsYW57XHJcblx0XHRwYWRkaW5nOiA1MHB4IDBweDtcclxuXHRcdGgye1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHR9XHJcblx0XHRpbWd7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweCAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQubWFpbkZlYXR1cmVze1xyXG5cdFx0cGFkZGluZzogNTBweCAxNTBweDtcclxuXHRcdGgxe1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdFx0fVxyXG5cdFx0Jl9jb250YWluZXJ7XHJcblx0XHRcdGRpc3BsYXk6IGdyaWQ7XHJcblx0XHRcdGdhcDogMjBweDtcclxuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcclxuXHRcdFx0ZGl2e1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdGFsaWduLWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdFx0cGFkZGluZzoyMHB4IDA7XHJcblx0XHRcdFx0aDZ7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0XHQmX2NvbnRhaW5lcntcclxuXHRcdFx0XHRnYXA6IDEwcHg7XHJcblx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuXHRcdFx0XHRoNntcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aW1ne1xyXG5cdFx0XHRcdFx0d2lkdGg6IDYwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LnJlYWxFc3RhdGVfZ2FsbGVyeXtcclxuXHRcdHBhZGRpbmctdG9wOjEwMHB4O1xyXG5cdFx0cGFkZGluZy1ib3R0b206MTAwcHg7XHJcblx0XHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcclxuXHRcdCYuYmFja2dyb3VuZENvbG9ye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZy10b3A6IDI1cHg7XHJcblx0XHRcdHBhZGRpbmctYm90dG9tOiAyNXB4O1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0fVxyXG5cdC5yZWFsRXN0YXRlX2Zvcm17XHJcblx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0cGFkZGluZzogNTBweCAxNTBweDtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdH1cclxuXHRcdGgxe1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdFx0fVx0XHJcblx0XHRcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6MjVweDtcclxuXHRcdFx0Lmdmb3JtX2Zvb3RlcntcclxuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5vdGhlclByb2plY3Rze1xyXG5cdFx0cGFkZGluZzogNTBweCAxNTBweCAxMDBweDtcclxuXHRcdGgxe1xyXG5cdFx0XHRwYWRkaW5nLXRvcDogNTBweDtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiA1cHg7XHJcblx0XHR9XHJcblx0XHQucHJvamVjdHN7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0LnByb3BlcnR5e1xyXG5cdFx0XHRcdHdpZHRoOiAzMiU7XHJcblx0XHRcdFx0aDN7XHJcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0XHRoMXtcclxuXHRcdFx0XHRwYWRkaW5nLXRvcDogMDtcclxuXHRcdFx0fVxyXG5cdFx0XHQucHJvamVjdHN7XHJcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdC5wcm9wZXJ0eXtcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRcdFx0XHRcdGgze1xyXG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAxNXB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5zdGF5e1xyXG5cdCZfaW50cm97XHJcblx0XHRwYWRkaW5nOjEwMHB4IDE1MHB4IDUwcHg7XHJcblx0XHRkaXZ7XHJcblx0XHRcdGNvbHVtbi1jb3VudDogMjtcclxuXHRcdH1cclxuXHRcdGgze1xyXG5cdFx0XHQvL3dpZHRoOiA0NSU7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjI1cHg7XHJcblx0XHRcdGgze1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMzJweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0cGFkZGluZzogMCAyNXB4O1xyXG5cdFx0XHRcdGNvbHVtbi1jb3VudDogMTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQuaG90ZWxze1xyXG5cdFx0LmhvdGVse1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdHBhZGRpbmc6IDUwcHggMDtcclxuXHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XHJcblx0XHRcdCYtaW5mbywmLWdhbGxlcnl7XHJcblx0XHRcdFx0d2lkdGg6IDQ4JTtcclxuXHRcdFx0fVxyXG5cdFx0XHRpbWd7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdFx0aDF7XHJcblx0XHRcdFx0c3BhbntcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmOm50aC1jaGlsZChldmVuKXtcclxuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcblx0XHRcdFx0cGFkZGluZy1yaWdodDoxNTBweDtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JleTtcclxuXHRcdFx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHR9XHJcblx0XHRcdCY6bnRoLWNoaWxkKG9kZCl7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6MTUwcHg7XHJcblx0XHRcdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQuZGV0YWlsc3tcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHQgICAgLy9qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdCAgICBwYWRkaW5nOiAxMHB4IDBweDtcclxuXHRcdFx0ICAgIGNvbHVtbi1nYXA6IDYwcHg7XHJcblx0XHRcdCAgICBwe1xyXG5cdFx0XHQgICAgXHRjb2xvcjokYmx1ZTtcclxuXHRcdFx0ICAgIFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0ICAgIFx0Zm9udC1zaXplOiAxOHB4O1xyXG5cdFx0XHQgICAgXHRsaW5lLWhlaWdodDoxLjI7XHJcblx0XHRcdCAgICBcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0XHQgICAgXHQmOmZpcnN0LWNoaWxke1xyXG5cdFx0XHQgICAgXHRcdGZvbnQtc2l6ZTogNDBweDtcclxuXHRcdFx0ICAgIFx0XHRmb250LWZhbWlseTogRWxNZXNzaXJpO1xyXG5cdFx0XHQgICAgXHR9XHJcblx0XHRcdCAgICBcdHNwYW57XHJcblx0XHRcdCAgICBcdFx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdFx0XHQgICAgXHRcdG9wYWNpdHk6IDAuNjtcclxuXHRcdFx0ICAgIFx0XHQmLnRvb2x0aXBJY29ue1xyXG5cdFx0XHRcdFx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0XHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkO1xyXG5cdFx0XHRcdFx0XHRcdHdpZHRoOiAxNnB4O1xyXG5cdFx0XHRcdFx0XHRcdGhlaWdodDogMTZweDtcclxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0XHRcdHRvcDogMDtcclxuXHRcdFx0XHRcdFx0XHRyaWdodDogLTE2cHg7XHJcbiAgICBcdFx0XHRcdFx0XHRmb250LXNpemU6IDE2cHg7XHJcbiAgICBcdFx0XHRcdFx0XHRjdXJzb3I6IGhlbHA7XHJcblx0XHRcdFx0XHRcdFx0LnRvb2x0aXB7XHJcblx0XHRcdFx0XHRcdFx0XHRvcGFjaXR5OjA7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdEBtZWRpYShtYXgtd2lkdGg6NDBlbSl7XHJcblx0XHRcdFx0XHRcdFx0XHRyaWdodDotMjBweDtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0Jjpob3ZlcntcclxuXHRcdFx0XHRcdFx0XHRcdC50b29sdGlwe1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRvcGFjaXR5OjE7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDEwcHg7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHdpZHRoOiBtYXgtY29udGVudDtcclxuXHRcdFx0XHRcdFx0XHRcdFx0bWluLXdpZHRoOjMwMHB4O1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRjb2xvcjogIzAwMDtcclxuXHRcdFx0XHRcdFx0XHRcdFx0Ym94LXNoYWRvdzogMCAwIDhweCAwcHggI2E1YTVhNTtcclxuXHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0ICAgIFx0fVxyXG5cdFx0XHQgICAgXHRpe1xyXG5cdFx0XHQgICAgXHRcdGZvbnQtc2l6ZTogMjJweDtcclxuXHRcdFx0ICAgIFx0fVxyXG5cdFx0XHQgICAgXHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHQgICAgXHRcdGZvbnQtc2l6ZTogMTJweDtcclxuXHRcdFx0ICAgIFx0XHQmOmZpcnN0LWNoaWxke1xyXG5cdFx0XHQgICAgXHRcdFx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdFx0XHQgICAgXHRcdH1cclxuXHRcdFx0ICAgIFx0XHRzcGFue1xyXG5cdFx0XHQgICAgXHRcdFx0Zm9udC1zaXplOiAxMHB4O1xyXG5cdFx0XHQgICAgXHRcdH1cclxuXHRcdFx0ICAgIFx0XHRpe1xyXG5cdFx0XHQgICAgXHRcdFx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdFx0XHQgICAgXHRcdH1cclxuXHRcdFx0ICAgIFx0fVxyXG5cdFx0XHQgICAgfVx0XHJcblx0XHRcdH1cclxuXHRcdFx0LmJ0bnN7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogNjBweDtcclxuXHRcdFx0XHRhe1xyXG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQuaG90ZWxIaWdobGlnaHRze1xyXG5cdFx0XHRcdGRpc3BsYXk6ZmxleDtcclxuXHRcdFx0XHRnYXA6MjBweDtcclxuXHRcdFx0XHRmbGV4LXdyYXA6d3JhcDtcclxuXHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0Y29sb3I6JGJsdWU7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdFx0d2lkdGg6MjVweDsgXHJcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogM3B4O1xyXG5cdFx0XHRcdFx0XHRmaWx0ZXI6IGJyaWdodG5lc3MoMS4zKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0Ji1nYWxsZXJ5e1xyXG5cdFx0XHRcdC5zbGljay1hcnJvdyB7XHJcblx0XHRcdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHQgICAgYm90dG9tOiAtNTBweDtcclxuXHRcdFx0XHQgICAgZm9udC1zaXplOiA0MHB4O1xyXG5cdFx0XHRcdCAgICBjb2xvcjogJGJsdWU7XHJcblx0XHRcdFx0ICAgICYuc2xpY2stcHJldntcclxuXHRcdFx0XHQgICAgXHRsZWZ0OjBcclxuXHRcdFx0XHQgICAgfVxyXG5cdFx0XHRcdCAgICAmLnNsaWNrLW5leHR7XHJcblx0XHRcdFx0ICAgIFx0bGVmdDo2MHB4XHJcblx0XHRcdFx0ICAgIH1cclxuXHRcdFx0XHQgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHQgICAgXHQvL2JvdHRvbTotMzVweDtcclxuXHRcdFx0XHQgICAgXHRib3R0b206aW5pdGlhbDtcclxuXHRcdFx0XHQgICAgXHR0b3A6LTQwcHg7XHJcblx0XHRcdFx0ICAgIFx0bGVmdDppbml0aWFsICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0ICAgIFx0Ji5zbGljay1wcmV2e1xyXG5cdFx0XHRcdFx0ICAgIFx0cmlnaHQ6MzBweFxyXG5cdFx0XHRcdFx0ICAgIH1cclxuXHRcdFx0XHRcdCAgICAmLnNsaWNrLW5leHR7XHJcblx0XHRcdFx0XHQgICAgXHRyaWdodDotMTBweDtcclxuXHRcdFx0XHRcdCAgICB9XHJcblx0XHRcdFx0ICAgIH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LnNsaWRlci1ub3tcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogNDBweDtcclxuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiBFbE1lc3Npcmk7XHJcblx0XHRcdFx0XHRjb2xvcjogcmdiYSgkYmx1ZSwwLjQpO1xyXG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0XHRcdFx0ICAgIHBhZGRpbmctcmlnaHQ6NDBweDtcclxuXHRcdFx0XHQgICAgc3BhbntcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICRibHVlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0LypwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG5cdFx0XHRcdFx0ICAgIGZvbnQtc2l6ZTogMjBweDsqL1xyXG5cdFx0XHRcdFx0ICAgIGRpc3BsYXk6bm9uZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRwYWRkaW5nOjUwcHggMHB4ICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdCYtaW5mbywmLWdhbGxlcnl7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Ji1pbmZvLGgxe1xyXG5cdFx0XHRcdFx0Ly9tYXJnaW4tdG9wOiAzMHB4O1xyXG5cdFx0XHRcdFx0cGFkZGluZzowIDE1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC8qJjpudGgtY2hpbGQoZXZlbil7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjI1cHg7XHJcblx0XHRcdFx0XHQuaG90ZWwtaW5mbyxoMXtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjI1cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCY6bnRoLWNoaWxkKG9kZCl7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MjVweDtcclxuXHRcdFx0XHRcdC5ob3RlbC1pbmZve1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjI1cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSovXHJcblx0XHRcdFx0LmJ0bnN7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRcdFx0bWFyZ2luLXRvcDoxMHB4O1xyXG5cdFx0XHRcdFx0YXtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OjA7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfZGluZUFyb3VuZHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRwYWRkaW5nOiA1MHB4IDBweDtcclxuXHRcdHBhZGRpbmctbGVmdDoxNTBweDtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0Ji1kZXRhaWxzLCYtaW1hZ2V7XHJcblx0XHRcdHdpZHRoOiA0OCU7XHJcblx0XHR9XHJcblx0XHRpbWd7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0LmJ0bnN7XHJcblx0XHRcdG1hcmdpbi10b3A6IDYwcHg7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjUwcHggMDtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OjI1cHg7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG5cdFx0XHQmLWRldGFpbHMsJi1pbWFnZXtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHQmLWRldGFpbHN7XHJcblx0XHRcdFx0cGFkZGluZy1yaWdodDoyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLnNpbmdsZUhvdGVse1xyXG5cdCZfaW50cm97XHJcblx0XHRwYWRkaW5nOjUwcHggMTUwcHg7XHJcblx0XHQuaW50cm9UZXh0e1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRjb2x1bW4tZ2FwOiAxMHB4O1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHR3aWR0aDoxMDAlO1xyXG5cdFx0XHRcdFx0JjpsYXN0LWNoaWxke1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nOjAgMjVweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5ob3RlbC1mYWNpbGl0aWVze1xyXG5cdFx0XHRkaXNwbGF5OiBncmlkO1xyXG5cdFx0XHRnYXA6IDIwcHg7XHJcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XHJcblx0XHRcdHBhZGRpbmc6NTBweCAwO1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0YWxpZ24tY29udGVudDpzdGFydDtcclxuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdFx0cGFkZGluZzoyMHB4IDA7XHJcblx0XHRcdFx0aDZ7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0cGFkZGluZzogMjVweCAwO1xyXG5cdFx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfcm9vbXN7XHJcblx0XHRwYWRkaW5nOjUwcHggMHB4O1xyXG5cdFx0YmFja2dyb3VuZDojZmZmO1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XHJcblx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdH1cclxuXHRcdGgxe1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6MTUwcHg7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjI1cHggMDtcclxuXHRcdFx0aDF7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OjE1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5pbWd7XHJcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0XHQuaW1nSG92ZXJ7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHQgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG5cdFx0XHQgICAgdG9wOiAwO1xyXG5cdFx0XHQgICAgbGVmdDogMDtcclxuXHRcdFx0ICAgIHdpZHRoOiAxMDAlO1xyXG5cdFx0XHQgICAgaGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHQgICAgZGlzcGxheTogZmxleDtcclxuXHRcdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0ICAgIGNvbG9yOiAjZmZmO1xyXG5cdFx0XHQgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cdFx0XHQgICAgQG1lZGlhIChtYXgtd2lkdGg6NDBlbSl7XHJcblx0XHRcdCAgICBcdHZpc2liaWxpdHk6IHZpc2libGU7XHJcblx0XHRcdFx0ICAgIHdpZHRoOiA0MHB4O1xyXG5cdFx0XHRcdCAgICBoZWlnaHQ6IDQwcHg7XHJcblx0XHRcdFx0ICAgIHJpZ2h0OiAwO1xyXG5cdFx0XHRcdCAgICBsZWZ0OiBpbmhlcml0O1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRbZGF0YS1yb29tRGV0YWlsc106aG92ZXJ7XHJcblx0XHRcdC5pbWdIb3ZlcntcclxuXHRcdFx0XHR2aXNpYmlsaXR5OnZpc2libGU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9vZmZlcnN7XHJcblx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0cGFkZGluZzogNTBweCAwcHg7XHJcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcclxuXHRcdCYuYmFja2dyb3VuZENvbG9ye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0XHR9XHJcblx0XHRoMXtcclxuXHRcdFx0cGFkZGluZzogMCAxNTBweDtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6MzBweCAwO1xyXG5cdFx0XHRoMXtcclxuXHRcdFx0XHRwYWRkaW5nOjAgMjVweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Lm9mZmVye1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcblx0XHRcdCYtaW1hZ2V7XHJcblx0XHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0XHRwYWRkaW5nOiA1MHB4O1xyXG5cdFx0XHRcdHBhZGRpbmctbGVmdDoxNTBweDtcclxuXHRcdFx0XHR6LWluZGV4OiAxO1xyXG5cdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdC8vdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0Ly90cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTBweCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdCYtY29udGVudHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG5cdFx0XHQgICAgcGFkZGluZzogMTAwcHggMjAwcHg7XHJcblx0XHRcdCAgICBwYWRkaW5nLWxlZnQ6MzAwcHg7XHJcblx0XHRcdCAgICB3aWR0aDogY2FsYyg1MCUgKyAzMDBweCk7XHJcblx0XHRcdCAgICBtYXJnaW4tbGVmdDogLTI4MHB4O1xyXG5cdFx0XHQgICAgZGlzcGxheTogZmxleDtcclxuICAgIFx0XHRcdGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBcdFx0XHRkaXZ7XHJcbiAgICBcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG4gICAgXHRcdFx0fVxyXG5cdFx0XHQgICAgaDIscHtcclxuXHRcdFx0ICAgIFx0Y29sb3I6I2ZmZjtcclxuXHRcdFx0ICAgIH1cclxuXHRcdFx0ICAgIGgye1xyXG5cdFx0XHQgICAgXHRmb250LXNpemU6IDQwcHg7XHJcblx0XHRcdCAgICB9XHJcblx0XHRcdCAgICBwLGF7XHJcblx0XHRcdCAgICBcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdFx0ICAgIH1cdFxyXG5cdFx0XHQgICAgLnByaWNle1xyXG5cdFx0XHQgICAgXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0ICAgIH1cclxuXHRcdFx0ICAgIGF7XHJcblx0XHRcdCAgICBcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdFx0ICAgIFx0Ym9yZGVyLXJhZGl1czo1MHB4O1xyXG5cdFx0XHQgICAgXHRwYWRkaW5nOjdweCAyMHB4O1xyXG5cdFx0XHQgICAgXHRjb2xvcjogJGJsdWU7XHJcblx0XHRcdCAgICBcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHR9XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdCYtaW1hZ2V7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdHBhZGRpbmc6MCAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmLWNvbnRlbnR7XHJcblx0XHRcdFx0XHRwYWRkaW5nOjI1cHggMzBweCA0MHB4ICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0XHRcdFx0aDJ7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMzBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTVweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGF7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDE1cHggMjBweDtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0XHQmOmxhc3QtY2hpbGR7XHJcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogNDBweDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LnNsaWNrLWFycm93e1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdFx0ICAgIHdpZHRoOiA1MHB4O1xyXG5cdFx0ICAgIGhlaWdodDogNTBweDtcclxuXHRcdCAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0XHQgICAgY29sb3I6ICRkYXJrLWJsdWU7XHJcblx0XHQgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0ICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdFx0ICAgIGJvdHRvbToxMDBweDtcclxuXHRcdCAgICB6LWluZGV4OiAxO1xyXG5cdFx0ICAgICYuc2xpY2stbmV4dHtcclxuXHRcdCAgICBcdHJpZ2h0OiAyMDBweDtcclxuXHRcdCAgICB9XHJcblx0XHQgICAgJi5zbGljay1wcmV2e1xyXG5cdFx0XHRcdHJpZ2h0OiAzMDBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdHdpZHRoOiA1MHB4O1xyXG5cdFx0XHRcdGhlaWdodDogNTBweDtcclxuXHRcdFx0XHRib3R0b206MjhweDtcclxuXHRcdFx0XHQmLnNsaWNrLW5leHR7XHJcblx0XHRcdCAgICBcdHJpZ2h0OiAyMHB4O1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHQgICAgJi5zbGljay1wcmV2e1xyXG5cdFx0XHRcdFx0cmlnaHQ6IDgwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5vdXJIb3RlbCwgJl9uZXdze1xyXG5cdFx0cGFkZGluZy1ib3R0b206NTBweDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmctYm90dG9tOjI1cHg7XHJcblx0XHR9XHJcblx0XHRoMXtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiAxNTBweDtcclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6MTVweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQub3VySG90ZWx7XHJcblx0XHQmX3NlY3Rpb24ye1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdHBhZGRpbmctbGVmdDoxNTBweDtcclxuXHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IDQ4JTtcclxuXHRcdFx0fVxyXG5cdFx0XHRpbWd7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRwYWRkaW5nOjUwcHggMDtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6MjVweDtcclxuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG5cdFx0XHRcdD4gZGl2e1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHQmLnRleHR7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6MjVweDtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy10b3A6IDI1cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfbmV3c3tcclxuXHRcdC5tYWluU2xpZGVye1xyXG5cdFx0XHQuc2xpY2stc2xpZGV7XHJcblx0XHRcdFx0aDV7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDJ2dyAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiA1dncgIWltcG9ydGFudDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9tYXB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG4gICAgXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIFx0cGFkZGluZzoxMHB4IDE1MHB4O1xyXG4gICAgXHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgXHRmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBcdGgxe1xyXG4gICAgXHRcdHdpZHRoOiAxMDAlO1xyXG4gICAgXHRcdC8vcGFkZGluZy1sZWZ0OiAxNTBweDtcclxuICAgIFx0fVxyXG4gICAgXHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gICAgXHRcdHBhZGRpbmc6MjVweDtcclxuICAgIFx0XHQvKmlmcmFtZXtcclxuICAgIFx0XHRcdHdpZHRoOiA5MCU7XHJcbiAgICBcdFx0fSovXHJcbiAgICBcdFx0LypoMXtcclxuICAgIFx0XHRcdHBhZGRpbmctbGVmdDogMjVweDtcclxuICAgIFx0XHR9Ki9cclxuICAgIFx0fVxyXG4gICAgXHQuYWNmLW1hcCB7XHJcblx0XHQgICAgd2lkdGg6IDEwMCU7XHJcblx0XHQgICAgaGVpZ2h0OiA1MDBweDtcclxuXHRcdH1cclxuXHJcblx0XHQvLyBGaXhlcyBwb3RlbnRpYWwgdGhlbWUgY3NzIGNvbmZsaWN0LlxyXG5cdFx0LmFjZi1tYXAgaW1nIHtcclxuXHRcdCAgIG1heC13aWR0aDogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG4gICAgXHQvKiNtYXAge1xyXG5cdFx0ICBoZWlnaHQ6IDUwMHB4O1xyXG5cdFx0ICB3aWR0aDogODAlO1xyXG5cdFx0ICBtYXJnaW4tdG9wOiAtNTBweDtcclxuXHRcdH1cclxuXHRcdC5nbS1zdHlsZS1pdywgLmdtLXN0eWxlLWl3LWR7XHJcblx0XHRcdG1heC1oZWlnaHQ6IDQwMHB4ICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0XHQuaW5mb1dpbmRvd3tcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0Jl9jb250YWluZXJ7XHJcblx0XHRcdFx0YmFja2dyb3VuZDokZGFyay1ibHVlO1xyXG5cdFx0XHRcdHBhZGRpbmc6MTVweDtcclxuXHRcdFx0XHR3aWR0aDogMzMwcHg7XHJcblx0XHRcdFx0LmNvbnRlbnR7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAxMHB4IGF1dG87XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGg2e1xyXG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMjNweDtcclxuXHRcdFx0XHRcdGNvbG9yOiNmZmY7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHAsYXtcclxuXHRcdFx0XHRcdGNvbG9yOiNmZmY7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHR3aWR0aDogMjI1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5pbWFnZXtcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiAyMDBweDtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcclxuXHRcdCAgICBcdFx0JjpmaXJzdC1jaGlsZHtcclxuXHRcdCAgICBcdFx0XHRmb250LXNpemU6IDE4cHg7XHJcblx0XHQgICAgXHRcdFx0Zm9udC1mYW1pbHk6IEVsTWVzc2lyaTtcclxuXHRcdCAgICBcdFx0XHRsaW5lLWhlaWdodDogMTRweDtcclxuXHRcdCAgICBcdFx0fVxyXG5cdFx0ICAgIFx0XHRzcGFuLGl7XHJcblx0XHQgICAgXHRcdFx0Zm9udC1zaXplOiAxMHB4O1xyXG5cdFx0ICAgIFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGF7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5kaXNjb3ZlcntcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmdtLXN0eWxlIC5nbS1zdHlsZS1pdy1je1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiRkYXJrLWJsdWU7XHJcblx0XHRcdHBhZGRpbmc6MDtcclxuXHRcdH1cclxuXHRcdC5nbS1zdHlsZSAuZ20tc3R5bGUtaXctZHtcclxuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdFx0LmdtLXVpLWhvdmVyLWVmZmVjdD5zcGFue1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cdFx0ICAgIHdpZHRoOiAxNnB4ICFpbXBvcnRhbnQ7XHJcblx0XHQgICAgaGVpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0XHQuZ20tc3R5bGUgLmdtLXN0eWxlLWl3LXRjOjphZnRlcntcclxuXHRcdFx0YmFja2dyb3VuZDokZGFyay1ibHVlO1xyXG5cdFx0fSovXHJcblx0fVxyXG5cdCZfZGluaW5ne1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdHBhZGRpbmc6IDUwcHggMDtcclxuXHRcdHBhZGRpbmctbGVmdDoxNTBweDtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0Ji1kZXRhaWxzLCYtaW1hZ2V7XHJcblx0XHRcdHdpZHRoOiA0OCU7XHJcblx0XHR9XHJcblx0XHRpbWd7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0LmJ0bnN7XHJcblx0XHRcdG1hcmdpbi10b3A6IDYwcHg7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjUwcHggMDtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OjI1cHg7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG5cdFx0XHQmLWRldGFpbHMsJi1pbWFnZXtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmX3Jldmlld3N7XHJcblx0XHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDBweDtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0ZmxleC13cmFwOndyYXA7XHJcblx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHggMDtcclxuXHRcdFx0ZmxleC13cmFwOndyYXA7XHJcblx0XHR9XHJcblx0XHQuY29udGFpbmVye1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdHdpZHRoOiA2MCU7XHJcblx0XHRcdC5yYXRle1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMjNweDtcclxuXHRcdFx0XHRjb2xvcjogJGRhcmstYmx1ZTtcclxuXHRcdFx0XHRtYXJnaW46IDMwcHggYXV0bztcclxuXHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHR3aWR0aDogMzBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0aDV7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAyNHB4O1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiAxcHg7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRwe1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogMjBweDtcclxuXHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMXB4O1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHR3aWR0aDogNzUlO1xyXG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOjMwcHg7XHJcblx0XHRcdFx0LmltYWdlc3tcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcclxuXHRcdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDQwJTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aDV7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDE2cHg7XHJcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMjhweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC50cmlwQWR2aXNvci1jb250YWluZXJ7XHJcblx0XHRcdHdpZHRoOjEwMCU7XHJcblx0XHRcdGRpc3BsYXk6ZmxleDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OmNlbnRlcjtcclxuXHRcdH1cclxuXHR9XHJcblx0Jl9vdGhlckhvdGVsc3tcclxuXHRcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdHBhZGRpbmc6IDUwcHggMHB4O1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XHJcblx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdH1cclxuXHRcdGgxe1xyXG5cdFx0XHRwYWRkaW5nOjAgMTUwcHg7XHJcblx0XHRcdHNwYW57XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6MjVweCAwO1xyXG5cdFx0XHRoMXtcclxuXHRcdFx0XHRwYWRkaW5nOjAgMjVweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmX2luc3RhZ3JhbXtcclxuXHRcdHBhZGRpbmc6IDUwcHggMDtcclxuXHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcclxuXHRcdCYuYmFja2dyb3VuZENvbG9ye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4IDA7XHJcblx0XHR9XHJcblx0XHQmLWNvbnRhaW5lcntcclxuXHRcdFx0d2lkdGg6IDYwJTtcclxuXHRcdFx0bWFyZ2luOiBhdXRvO1xyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdHdpZHRoOiA5MCU7XHJcblx0XHRcdH1cclxuXHRcdFx0LnNiaV9mb2xsb3dfYnRue1xyXG5cdFx0XHRcdGF7XHJcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOjIwcHggIWltcG9ydGFudDtcclxuXHRcdFx0XHRcdHBhZGRpbmc6MTBweCAyMHB4ICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XHJcbiAgXHRcdFx0XHRcdGZvbnQtc2l6ZTogMXZ3ICFpbXBvcnRhbnQ7XHRcdFxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0Y29sb3I6I2ZmZjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9hcHB7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4O1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdH1cclxuXHRcdCYtY29udGFpbmVye1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0Y29sdW1uLWdhcDogNTBweDtcclxuXHRcdFx0bWFyZ2luLXRvcDogNTBweDtcclxuXHRcdFx0aW1ne1xyXG5cdFx0XHRcdHdpZHRoOiAzMDBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdG1hcmdpbjogMjVweCBhdXRvO1xyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdH1cclxuXHQuZ3Vlc3RUeXBle1xyXG5cdFx0Y29sb3I6JGRhcmstYmx1ZTtcclxuXHRcdGZvbnQtd2VpZ2h0OmJvbGQ7XHJcblx0fVxyXG59XHJcbi5ob3RlbHMtdGVtcGxhdGUtaG90ZWwtcmVzZXJ2YXRpb25zIHtcclxuXHRoZWFkZXIsZm9vdGVye1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn0iLCIuYWNjb21vZGF0aW9ue1xyXG5cdCZfcm9vbXN7XHJcblx0XHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcclxuXHRcdCYuYmFja2dyb3VuZENvbG9ye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0fVxyXG5cdFx0aDN7XHJcblx0XHRcdHBhZGRpbmctbGVmdDoxNTBweDtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdGgze1xyXG5cdFx0XHRcdHBhZGRpbmctbGVmdDoxNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmLXR5cGVze1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcclxuXHRcdFx0cGFkZGluZzogNzBweCAwO1xyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDI1cHggMDtcclxuXHRcdFx0fVxyXG5cdFx0XHQmOm50aC1jaGlsZChvZGQpe1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdFx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdCY6bnRoLWNoaWxkKGV2ZW4pe1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHRcdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0XHRcdFx0XHQuY2Fyb3VzZWwtc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtY29udGVudHtcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5pbWd7XHJcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0XHQuaW1nSG92ZXJ7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHQgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG5cdFx0XHQgICAgdG9wOiAwO1xyXG5cdFx0XHQgICAgbGVmdDogMDtcclxuXHRcdFx0ICAgIHdpZHRoOiAxMDAlO1xyXG5cdFx0XHQgICAgaGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHQgICAgZGlzcGxheTogZmxleDtcclxuXHRcdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0ICAgIGNvbG9yOiAjZmZmO1xyXG5cdFx0XHQgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cdFx0XHQgICAgQG1lZGlhIChtYXgtd2lkdGg6NDBlbSl7XHJcblx0XHRcdCAgICBcdHZpc2liaWxpdHk6IHZpc2libGU7XHJcblx0XHRcdFx0ICAgIHdpZHRoOiA0MHB4O1xyXG5cdFx0XHRcdCAgICBoZWlnaHQ6IDQwcHg7XHJcblx0XHRcdFx0ICAgIHJpZ2h0OiAwO1xyXG5cdFx0XHRcdCAgICBsZWZ0OiBpbmhlcml0O1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRbZGF0YS1yb29tRGV0YWlsc106aG92ZXJ7XHJcblx0XHRcdC5pbWdIb3ZlcntcclxuXHRcdFx0XHR2aXNpYmlsaXR5OnZpc2libGU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9yb29tRmFjdFNoZWV0e1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdHBhZGRpbmc6IDcwcHggMTUwcHggMDtcclxuXHRcdD4gZGl2e1xyXG5cdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0fVxyXG5cdFx0Lmljb25ze1xyXG5cdFx0XHQ+IGRpdntcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0d2lkdGg6IDQwcHg7XHJcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcblx0XHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHRcdC8vd2lkdGg6IDQwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdFx0XHRcdFx0d2lkdGg6IDgwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdGgxe1xyXG5cdFx0XHQvL2xpbmUtaGVpZ2h0OiAxO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHQ+IGRpdntcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHQuaWNvbnN7XHJcblx0XHRcdFx0cGFkZGluZy10b3A6IDMwcHg7XHJcblx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmX3ZpZGVve1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdH1cclxuXHRcdGF7XHJcblx0XHRcdHotaW5kZXg6IDE7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiA1MCU7XHJcblx0XHRcdGxlZnQ6IDUwJTtcclxuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0XHRcdHdpZHRoOiA3MHB4O1xyXG5cdFx0XHRoZWlnaHQ6IDcwcHg7XHJcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0XHRcdG9wYWNpdHk6IDAuODtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdG1peC1ibGVuZC1tb2RlOiBzY3JlZW47XHJcblx0XHRcdGNvbG9yOiMwMDA7XHJcblx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0ICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdCAgdG9wOiAwO1xyXG5cdFx0XHQgIHJpZ2h0OiAwO1xyXG5cdFx0XHQgIGJvdHRvbTogMDtcclxuXHRcdFx0ICBsZWZ0OiAwO1xyXG5cdFx0XHQgIGJhY2tncm91bmQ6ICNmZmY7XHJcblx0XHRcdCAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0XHQgIGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHQgIG1peC1ibGVuZC1tb2RlOiBjb2xvci1idXJuO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRpe1xyXG5cdFx0XHRmb250LXNpemU6IDM1cHg7XHJcblx0XHRcdCY6YmVmb3Jle1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0JjpiZWZvcmV7XHJcblx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuMzIpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xyXG5cdFx0fVxyXG5cdFx0LnZpZGVvQ29udGFpbmVye1xyXG5cdFx0XHR6LWluZGV4OiAwO1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHQgICAgdG9wOiAwO1xyXG5cdFx0ICAgIHdpZHRoOiAxMDAlO1xyXG5cdFx0ICAgIGhlaWdodDogMTAwJTtcclxuXHRcdCAgICBvcGFjaXR5OiAwO1xyXG5cdFx0ICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZS1pbi1vdXQ7XHJcblx0XHQgICAgaWZyYW1le1xyXG5cdFx0ICAgIFx0d2lkdGg6IDEwMCU7XHJcblx0XHQgICAgXHRoZWlnaHQ6IDEwMCU7XHJcblx0XHQgICAgfVxyXG5cdFx0ICAgICYub3BlbntcclxuXHRcdCAgICBcdG9wYWNpdHk6IDE7XHJcblx0XHQgICAgXHR6LWluZGV4OiAxMDtcclxuXHRcdCAgICB9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi5vdXJIb3RlbHtcclxuXHQubm9BcnJvd1NsaWRlcntcclxuXHRcdC5zbGlkZXJzQ29udGFpbmVye1xyXG5cdFx0XHQubWFpblNsaWRlcntcclxuXHRcdFx0XHQuc2xpY2stc2xpZGV7XHJcblx0XHRcdFx0XHRoM3tcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjIuNXZ3O1xyXG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjA7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAjMDAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmLWJyb2NodXJle1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDUwcHg7XHJcblx0XHRpbWd7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtZXh0cmFDb250ZW50e1xyXG5cdFx0cGFkZGluZzogNTBweCAxNTBweDtcclxuXHRcdCZfY29udGVudHtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdFx0Jl9jb250ZW50e1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmLXNlY3Rpb24xe1xyXG5cdFx0cGFkZGluZy10b3A6MTAwcHg7XHJcblx0XHRwYWRkaW5nLWJvdHRvbToxMDBweDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6MjVweCAwO1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtc2VjdGlvbntcclxuXHRcdHBhZGRpbmc6NTBweCAxNTBweDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6MjVweDtcclxuXHRcdH1cclxuXHRcdCZfaGVhZGVye1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0XHR9XHJcblx0XHRcdGltZ3tcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtYmxvY2t7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTtcclxuXHRcdGgze1xyXG5cdFx0XHRmb250LXNpemU6IDQwcHg7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiAzNXB4O1xyXG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMHB4O1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdFx0fVxyXG5cdFx0aDMscCxsaSxhe1xyXG5cdFx0XHRjb2xvcjojZmZmO1xyXG5cdFx0fVxyXG5cdFx0PiBkaXZ7XHJcblx0XHRcdHdpZHRoOiA1MCU7XHJcblx0XHRcdCY6bGFzdC1jaGlsZHtcclxuXHRcdFx0XHRwYWRkaW5nOjUwcHggNzBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Jl9jb250ZW50e1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0fVxyXG5cdFx0aW1ne1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHRcdHB7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBcdFx0Y29sdW1uLWdhcDogNXB4O1xyXG5cdFx0XHRzcGFue1xyXG5cdFx0XHRcdHdpZHRoOiAzNSU7XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdHdpZHRoOiA1MCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuZmVlc3tcclxuXHRcdFx0ZGl2e1xyXG5cdFx0XHRcdGNvbG9yOiNmZmY7XHJcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiByZ2JhKCNmZmYsMC4wOSkgIWltcG9ydGFudDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRoM3tcclxuXHRcdFx0XHRmb250LXNpemU6IDMwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0ZGl2e1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdCY6bGFzdC1jaGlsZHtcclxuXHRcdFx0XHRcdHBhZGRpbmc6MzBweCAyMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdH1cclxuXHR9XHJcblx0LmZlZXN7XHJcblx0XHRkaXZ7XHJcblx0XHRcdHBhZGRpbmc6IDEwcHggMCA1cHg7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0Jjpub3QoOmxhc3QtY2hpbGQpe1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDkpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtYXF1YXBhcmt7XHJcblx0XHRiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JleTtcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0JiA+IGRpdntcclxuXHRcdFx0d2lkdGg6IDQ1JTtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0fVxyXG5cdFx0aDJ7XHJcblx0XHRcdGZvbnQtc2l6ZTogNDBweDtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDQ1cHg7XHJcblx0XHRcdGxldHRlci1zcGFjaW5nOiAxcHg7XHJcblx0XHR9XHJcblx0XHRwe1xyXG5cdFx0XHRmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiAzNXB4O1xyXG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMXB4O1xyXG5cdFx0XHRjb2xvcjogJGRhcmstYmx1ZTtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0JiA+IGRpdntcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRoMntcclxuXHRcdFx0XHRmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0cHtcclxuXHRcdFx0XHRmb250LXNpemU6IDE2cHg7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmLWdhbGxlcnl7XHJcblx0XHRwYWRkaW5nLXRvcDogNTBweDtcclxuXHRcdHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG5cdFx0LmJ0bntcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDExJTtcclxuXHRcdFx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmctdG9wOjI1cHg7XHJcblx0XHRcdHBhZGRpbmctYm90dG9tOjI1cHg7XHJcblx0XHRcdC5idG57XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEycHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Ji1mYWNpbGl0aWVze1xyXG5cdFx0cGFkZGluZzo1MHB4IDE1MHB4O1xyXG5cdFx0cGFkZGluZy1yaWdodDogMDtcclxuXHRcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xyXG5cdFx0fVxyXG5cdFx0LmNhcm91c2VsLXNsaWRlcntcclxuXHRcdFx0LnNsaWNrLXNsaWRle1xyXG5cdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdGhlaWdodDogMTAwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LnNsaWRlLWNvbnRlbnR7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG5cdFx0XHRcdFx0aDMscHtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0XHRoM3tcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDI0cHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5vdGhlckZhY2lsaXRpZXN7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRwYWRkaW5nOiA2MHB4IDE1MHB4IDA7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XHJcblx0XHRcdH1cclxuXHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IDQwJTtcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdG1hcmdpbjogMCAxMHB4IDIwcHg7XHJcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDUwcHg7XHJcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHRcdG1heC13aWR0aDogMzVweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Ji1zZXJ2aWNlc3tcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XHJcblx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0YmFja2dyb3VuZDojZmZmO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdH1cclxuXHRcdC5zZXJ2aWNlc3tcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdD4gZGl2e1xyXG5cdFx0XHRcdHdpZHRoOiA0MCU7XHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdFx0aW1ne1xyXG5cdFx0XHRcdFx0bWF4LXdpZHRoOiA1MHB4O1xyXG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0aW1ne1xyXG5cdFx0XHRcdFx0XHRtYXgtd2lkdGg6IDM1cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtYWN0aXZpdGllc3tcclxuXHRcdHBhZGRpbmctdG9wOjUwcHg7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTo1MHB4O1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweCAwO1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcblx0XHRcdCYubm9BcnJvd1NsaWRlciAuc2xpZGVyc0NvbnRhaW5lciAubWFpblNsaWRlciAuc2xpY2stc2xpZGUgaDUge1xyXG5cdFx0XHQgICAgZm9udC1zaXplOiA1dnc7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCYubm9BcnJvd1NsaWRlcntcclxuXHRcdFx0LnNsaWRlcnNDb250YWluZXJ7XHJcblx0XHRcdFx0Lm1haW5TbGlkZXIge1xyXG5cdFx0XHRcdFx0LnNsaWNrLXNsaWRle1xyXG5cdFx0XHRcdFx0XHRoMyB7XHJcblx0XHRcdFx0XHRcdCAgICBmb250LXNpemU6IDIuNXZ3O1xyXG5cdFx0XHRcdFx0XHQgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0XHRcdFx0ICAgIGNvbG9yOiAjMDAwO1xyXG5cdFx0XHRcdFx0XHQgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogN3Z3O1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmLXR3b0NvbFRleHR7XHJcblx0XHRjb2x1bW4tY291bnQ6IDI7XHJcblx0XHRjb2x1bW4tZ2FwOiA1MHB4O1xyXG5cdFx0bWFyZ2luLXRvcDogMzBweDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdGNvbHVtbi1jb3VudDogMTtcclxuXHRcdFx0Y29sdW1uLWdhcDogMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLmZhY2lsaXRpZXNTZXJ2aWNlc3tcclxuXHQubm9BcnJvd1NsaWRlcntcclxuXHRcdC5zbGlkZXJzQ29udGFpbmVye1xyXG5cdFx0XHQuc2xpY2stc2xpZGV7XHJcblx0XHRcdFx0LnNsaWRlcl9jb250ZW50e1xyXG5cdFx0XHRcdFx0bWFyZ2luOjEwcHggMDtcclxuXHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluLW91dCAxcztcclxuICAgIFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDgwcHgpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmLnNsaWNrLWN1cnJlbnR7XHJcblx0XHRcdFx0XHQuc2xpZGVyX2NvbnRlbnR7XHJcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4uc3Bhe1xyXG5cdC5ub1BhZGRpbmdUb3B7XHJcblx0XHRwYWRkaW5nLXRvcDogMDtcclxuXHRcdHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG5cdH1cclxufVxyXG4ubWVldGluZ3N7XHJcblx0Lm91ckhvdGVsLXNlY3Rpb257XHJcblx0XHRwYWRkaW5nOiAwIDE1MHB4O1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzoyNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHQmX3Jvb21ze1xyXG5cdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjI1cHg7XHJcblx0XHR9XHJcblx0XHQmLWNvbnRhaW5lcntcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IDMzJTtcclxuXHRcdFx0XHRwYWRkaW5nOjAgMjBweDtcclxuXHRcdFx0XHQmOm5vdCg6bnRoLWNoaWxkKDNuKSl7XHJcblx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDkpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRoM3tcclxuXHRcdFx0XHRmb250LXNpemU6IDQwcHg7XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDQ1cHg7XHJcblx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IDFweDtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdC5zaXple1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiAxcHg7XHJcblx0XHRcdFx0Y29sb3I6JGJsdWU7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDM1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdD4gZGl2e1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRwYWRkaW5nOiAyMHB4IDA7XHJcblx0XHRcdFx0XHQmOm5vdCg6bnRoLWNoaWxkKDNuKSl7XHJcblx0XHRcdFx0XHRcdGJvcmRlci1yaWdodDogbm9uZTtcclxuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wOSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGgze1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAyNnB4O1xyXG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDMwcHg7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuc2l6ZXtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5vdXJIb3RlbC13ZWRkaW5ne1xyXG5cdFx0cGFkZGluZzogNTBweCAwcHggNTBweCAxNTBweDtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRkaXZ7XHJcblx0XHRcdGZsZXg6IDE7XHJcblx0XHRcdGltZ3tcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRwe1xyXG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6MTAwcHg7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogNTBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0dWx7XHJcblx0XHRcdGNvbHVtbi1jb3VudDogMjtcclxuXHRcdCAgICBjb2x1bW4tZ2FwOiA1NXB4O1xyXG5cdFx0ICAgIG1hcmdpbjogMzBweCAwO1xyXG5cdFx0ICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0XHQgICAgcGFkZGluZy1yaWdodDogMTAwcHg7XHJcblx0XHQgICAgbGl7XHJcblx0XHQgICAgXHRjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG5cdFx0ICAgIFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xyXG5cdFx0ICAgIFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHQgICAgXHQmOmJlZm9yZXtcclxuXHRcdFx0XHRcdGNvbG9yOiAkYmx1ZTtcclxuXHRcdFx0XHRcdGxlZnQ6IDVweDtcclxuXHRcdFx0XHRcdHRvcDogMTBweDtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdGNvbnRlbnQ6ICdcXGU4MDAnO1xyXG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6IFwiZm9udGVsbG9cIjtcclxuXHRcdFx0XHQgICAgbGluZS1oZWlnaHQ6IDEwcHg7XHJcblx0XHRcdFx0ICAgIGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdFx0XHR9XHJcblx0XHQgICAgfVxyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzoyNXB4O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHRcdFx0dWx7XHJcblx0XHRcdFx0Y29sdW1uLWNvdW50OiAxO1xyXG5cdFx0XHQgICAgY29sdW1uLWdhcDogMHB4O1xyXG5cdFx0XHQgICAgbWFyZ2luLXRvcDogMTVweDtcclxuXHRcdFx0ICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0ZmxleDogaW5pdGlhbDtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRtYXJnaW46IDEwcHggMDtcclxuXHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcclxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDI1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi5kaW5pbmd7XHJcblx0Lm5vQXJyb3dTbGlkZXJ7XHJcblx0XHQuc2xpZGVyc0NvbnRhaW5lcntcclxuXHRcdFx0Lm1haW5TbGlkZXJ7XHJcblx0XHRcdFx0LnNsaWNrLXNsaWRle1xyXG5cdFx0XHRcdFx0aDN7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZToyLjV2dztcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTowO1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogIzAwMDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Ji1zZWN0aW9ue1xyXG5cdFx0cGFkZGluZy10b3A6IDcwcHg7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogNzBweDtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0aDJ7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogMTUwcHg7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRoM3tcclxuXHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHR9XHJcblx0XHQuaW1hZ2V7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0LmxvZ297XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdHRvcDowO1xyXG5cdFx0XHRcdGxlZnQ6MDtcclxuXHRcdFx0XHR3aWR0aDogMzAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQucGhvbmV7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHRcdGNvbG9yOiRkYXJrLWJsdWU7XHJcblx0XHRcdGF7XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdFx0XHRjb2xvcjokZGFyay1ibHVlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmOm50aC1jaGlsZChvZGQpe1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0XHRcdCYuYmFja2dyb3VuZENvbG9ye1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCY6bnRoLWNoaWxkKGV2ZW4pe1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcclxuXHRcdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdFx0YmFja2dyb3VuZDojZmZmO1xyXG5cdFx0XHRcdC5jYXJvdXNlbC1zbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZS1jb250ZW50e1xyXG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5nYWxsZXJ5e1xyXG5cdHBhZGRpbmc6IDcwcHggMTUwcHg7XHJcblx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0fVxyXG5cdCYtdGFic3tcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHRcdGRpdntcclxuXHRcdFx0cGFkZGluZzogNXB4IDIwcHg7XHJcblx0XHRcdGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcblx0XHRcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDM1cHg7XHJcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdFx0Ji5hY3RpdmUsJjpob3ZlcntcclxuXHRcdFx0XHRjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtZHJvcGRvd257XHJcblx0XHRib3JkZXI6IG5vbmU7XHJcbiAgICBcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMyk7XHJcbiAgICBcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICBcdCY6Zm9jdXN7XHJcbiAgICBcdFx0Ym9yZGVyOiBub25lO1xyXG4gICAgXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMyk7XHJcbiAgICBcdFx0Ym94LXNoYWRvdzogbm9uZTtcclxuICAgIFx0fVxyXG5cdH1cclxuXHQuZ3JpZCB7XHJcblx0ICAgIGNvbHVtbi1jb3VudDogMztcclxuICBcdFx0Y29sdW1uLWdhcDogMzBweDtcclxuICBcdFx0ZGlzcGxheTogbm9uZTtcclxuICBcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVaKDBweCk7XHJcbiAgXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdGNvbHVtbi1jb3VudDogMTtcclxuICBcdFx0XHRjb2x1bW4tZ2FwOiAwcHg7XHJcblx0XHR9XHJcbiAgXHRcdCYuYWN0aXZle1xyXG4gIFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG4gIFx0XHR9XHJcbiAgXHRcdCYudG91cjM2MHtcclxuICBcdFx0XHQmLmFjdGl2ZXtcclxuICBcdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG4gIFx0XHRkaXZ7XHJcbiAgXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRkaXNwbGF5OiBncmlkO1xyXG5cdFx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IDFmciBhdXRvO1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdFx0XHRicmVhay1pbnNpZGU6IGF2b2lkO1xyXG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRcdHRyYW5zaXRpb246IGFsbCAxLjNzIGN1YmljLWJlemllciguNzYsMCwuMjQsMSk7XHJcblx0XHRcdGNsaXAtcGF0aDogaW5zZXQoMTAwJSAwIDAgMCk7XHJcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWigxMHB4KTtcclxuXHRcdFx0Ji5pcy1pbnZpZXd7XHJcblx0XHRcdFx0Y2xpcC1wYXRoOiBpbnNldCgwIDAgMCAwKTtcdFx0XHRcdFx0XHJcblx0XHRcdH1cclxuXHRcdFx0aW1ne1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHR9XHJcblx0XHRcdCYuaGlkZXtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTdweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFxyXG5cdFx0XHR9XHJcbiAgXHRcdH1cclxuICBcdFx0aWZyYW1le1xyXG4gIFx0XHRcdC8vd2lkdGg6IGNhbGMoMTAwdncgLSAzMDBweCk7XHJcbiAgXHRcdFx0Ly9hc3BlY3QtcmF0aW86IDIgLyAxO1xyXG4gIFx0XHRcdFxyXG4gIFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRhc3BlY3QtcmF0aW86IDIgLyAxOyAvKiBLZWVwcyBzYW1lIHJhdGlvIGFzIGJlZm9yZSAqL1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcclxuICBcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSl7XHJcbiAgXHRcdFx0XHQvL3dpZHRoOiBjYWxjKDEwMHZ3IC0gNTBweCk7XHJcbiAgXHRcdFx0XHRhc3BlY3QtcmF0aW86IDEgLyAyOyAgXHRcdFx0XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcblx0fVxyXG5cdC5nb1RvVG9we1xyXG5cdFx0bWFyZ2luOiA0MHB4IGF1dG87XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRkaXZ7XHJcblx0XHRcdHdpZHRoOiA1MHB4O1xyXG5cdFx0ICAgIGhlaWdodDogNTBweDtcclxuXHRcdCAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0XHQgICAgY29sb3I6ICRkYXJrLWJsdWU7XHJcblx0XHQgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0ICAgIGZvbnQtc2l6ZTogMjVweDtcclxuXHRcdCAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JleTtcclxuXHRcdCAgICBkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHQgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHQgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcclxuXHRcdCAgICAmOmhvdmVye1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7XHJcblx0XHRcdFx0Y29sb3I6JGxpZ2h0LWdyZXk7XHJcblx0XHRcdH1cclxuXHRcdFx0aXtcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0YXtcclxuXHRcdFx0Y29sb3I6ICRkYXJrLWJsdWU7XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtbGlnaHRib3h7XHJcblx0XHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0XHR3aWR0aDogMTAwdnc7XHJcblx0XHRoZWlnaHQ6IDEwMHZoO1xyXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdHRvcDowO1xyXG5cdFx0cmlnaHQ6IC0xMDB2dztcclxuXHRcdHRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluLW91dDtcclxuXHRcdHotaW5kZXg6IDEwMDAwO1xyXG5cdFx0YmFja2dyb3VuZDogIzAwMDtcclxuXHRcdCYub3BlbntcclxuXHRcdFx0cmlnaHQ6IDA7XHJcblx0XHR9XHJcblx0XHQuYnRue1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHotaW5kZXg6IDE7XHJcblx0XHRcdHRvcDo1MHB4O1xyXG5cdFx0XHRsZWZ0OiA1MHB4O1xyXG5cdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0dGV4dC1zaGFkb3c6IDAgMCAxNHB4IGJsYWNrO1xyXG5cdFx0fVxyXG5cdFx0LmdhbGxlcnktY29udGFpbmVye1xyXG5cdFx0XHQvL2hlaWdodDogMTAwdmg7XHJcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdCYub3BlbntcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHQvKkBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHR9Ki9cclxuXHRcdFx0fVxyXG5cdFx0XHQuc2xpY2stYXJyb3cge1xyXG5cdFx0XHQgICAgcG9zaXRpb246IGZpeGVkO1xyXG5cdFx0XHQgICAgei1pbmRleDogMTtcclxuXHRcdFx0ICAgIGJvdHRvbTogNTBweDtcclxuXHRcdFx0ICAgIGNvbG9yOiAjZmZmO1xyXG5cdFx0XHQgICAgdGV4dC1zaGFkb3c6IDAgMCAxNHB4IGJsYWNrO1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxdnc7XHJcblx0XHRcdCAgICAmLnNsaWNrLXByZXZ7XHJcblx0XHRcdCAgICBcdGxlZnQ6NTBweFxyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHQgICAgJi5zbGljay1uZXh0e1xyXG5cdFx0XHQgICAgXHRyaWdodDogNTBweDtcclxuXHRcdFx0ICAgIH1cclxuXHRcdFx0ICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdCAgICBcdGZvbnQtc2l6ZTogM3Z3O1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHR9XHJcblx0XHRcdC5zbGljay1zbGlkZXtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjMDAwO1xyXG5cdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdG9wYWNpdHk6IDA7XHJcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UtaW4tb3V0IDEuNXM7XHJcblx0XHRcdFx0XHR3aWR0aDogaW5pdGlhbCAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDB2aDtcclxuXHRcdFx0XHRcdG1hcmdpbjogYXV0bztcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Ji5zbGljay1jdXJyZW50e1xyXG5cdFx0XHRcdFx0aW1ne1xyXG5cdFx0XHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDB2aDtcclxuXHRcdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHRcdGhlaWdodDogaW5pdGlhbDtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0LmdhbGxlcnlTbGlkZXJ7XHJcblx0XHRcdFx0XHQvL2hlaWdodDogMTAwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLyoubG9hZE1vcmVUZXN0e1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XHJcbiAgICB3aWR0aDogNDAwcHg7XHJcbiAgICBtYXJnaW46IDIwcHggYXV0bztcclxuICAgIGNvbG9yOiAjNDQ0O1xyXG5cdGRpdiB7XHJcblx0ICAgIGRpc3BsYXk6bm9uZTtcclxuXHQgICAgcGFkZGluZzogMTBweDtcclxuXHQgICAgYm9yZGVyLXdpZHRoOiAwIDFweCAxcHggMDtcclxuXHQgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHQgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xyXG5cdCAgICBib3gtc2hhZG93OiAwIDFweCAxcHggI2NjYztcclxuXHQgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xyXG5cdH1cclxuXHQjbG9hZE1vcmUge1xyXG5cdCAgICBwYWRkaW5nOiAxMHB4O1xyXG5cdCAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0ICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzczOUU7XHJcblx0ICAgIGNvbG9yOiAjZmZmO1xyXG5cdCAgICBib3JkZXItd2lkdGg6IDAgMXB4IDFweCAwO1xyXG5cdCAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cdCAgICBib3JkZXItY29sb3I6ICNmZmY7XHJcblx0ICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCAjY2NjO1xyXG5cdCAgICB0cmFuc2l0aW9uOiBhbGwgNjAwbXMgZWFzZS1pbi1vdXQ7XHJcblx0fVxyXG5cdCNsb2FkTW9yZTpob3ZlciB7XHJcblx0ICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0ICAgIGNvbG9yOiAjMzM3MzlFO1xyXG5cdH1cclxufSovXHJcbi52aWRlb3N7XHJcblx0cGFkZGluZzo3MHB4IDA7XHJcblx0aDJ7XHJcblx0XHRwYWRkaW5nLWxlZnQ6IDE1MHB4O1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHQmLXNsaWRlcntcclxuXHRcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHR9XHJcblx0XHQuc2xpY2stbGlzdHtwYWRkaW5nOjAgMTAlIDAgMTAlICFpbXBvcnRhbnQ7fVxyXG5cdFx0LnNsaWNrLXNsaWRle1xyXG5cdFx0XHRwYWRkaW5nOiAwIDEwcHg7XHJcblx0XHRcdCY6bm90KC5zbGljay1jdXJyZW50KXtcclxuXHRcdFx0XHQudmlkZW8tY29udGVudHtcclxuXHRcdFx0XHRcdG9wYWNpdHk6IDA7XHJcblx0XHRcdFx0XHQvL3RyYW5zZm9ybTpzY2FsZSgwKSB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdFx0XHRcdFx0dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwcHgpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0LnNsaWNrLWxpc3R7cGFkZGluZzowICFpbXBvcnRhbnQ7fVxcXHJcblx0XHRcdC5zbGljay1zbGlkZXtcclxuXHRcdFx0XHRwYWRkaW5nOjA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LnZpZGVve1xyXG5cdFx0Ji1jb250ZW50e1xyXG5cdFx0XHRjdXJzb3I6IGRlZmF1bHQ7XHJcblx0XHRcdC8qYmFja2dyb3VuZDogJGxpZ2h0LWdyZXk7XHJcblx0XHQgICAgd2lkdGg6IDcwJTtcclxuXHRcdCAgICBtYXJnaW46IGF1dG87XHJcblx0XHQgICAgdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdFx0ICAgIHBhZGRpbmc6IDIwcHggNDBweDtcclxuXHRcdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHQgICAgbWluLWhlaWdodDogMTYwcHg7XHJcblx0XHQgICAgZGlzcGxheTogZmxleDsqL1xyXG5cdFx0ICAgIHBhZGRpbmc6IDIwcHg7XHJcblx0XHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XHJcblx0XHQgICAgb3BhY2l0eTogMTtcclxuXHRcdCAgICBcclxuXHRcdCAgICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZTtcclxuXHRcdCAgIC8qIGRpdjpmaXJzdC1jaGlsZHtcclxuXHRcdCAgICBcdHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcblx0XHQgICAgfSovXHJcblx0XHQgICAgLyouY3Rhe1xyXG5cdFx0ICAgIFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0ICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRcdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdCAgICBkaXZ7XHJcblx0XHRcdCAgICBcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdCAgICB9XHJcblx0XHRcdCAgICBwe1xyXG5cdFx0XHQgICAgXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdCAgICB9XHJcblx0XHQgICAgfSovXHJcblx0XHQgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pe1xyXG5cdFx0ICAgIFx0Lyp0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcblx0XHRcdCAgICB3aWR0aDogMTAwJTtcclxuXHRcdFx0ICAgIHBhZGRpbmc6IDIwcHg7XHJcblx0XHRcdCAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdCAgICBkaXY6Zmlyc3QtY2hpbGR7XHJcblx0XHRcdCAgICBcdHBhZGRpbmctcmlnaHQ6MDtcclxuXHRcdFx0ICAgIFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0ICAgIH0qL1xyXG5cdFx0ICAgIH1cclxuXHRcdH1cclxuXHRcdCYtaW1hZ2V7XHJcblx0XHRcdGlmcmFtZXtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRoZWlnaHQ6IDUyMHB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5zbGljay1hcnJvd3tcclxuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdCAgICB3aWR0aDogNTBweDtcclxuXHQgICAgaGVpZ2h0OiA1MHB4O1xyXG5cdCAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0ICAgIGNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdCAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblx0ICAgIHotaW5kZXg6IDE7XHJcblx0ICAgIGJvcmRlcjoxcHggc29saWQgJGRhcmstYmx1ZTtcclxuXHQgICAgZm9udC1zaXplOiAyNnB4O1xyXG5cdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0ICAgIHRvcDogLTEwMHB4O1xyXG5cdCAgICB6LWluZGV4OiAxO1xyXG5cdCAgICAmOmhvdmVye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG5cdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdH1cclxuXHQgICAgJi5zbGljay1wcmV2e1xyXG5cdCAgICBcdC8vbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdCAgICBcdHJpZ2h0OiAyMDBweDtcclxuXHQgICAgfVxyXG5cdCAgICAmLnNsaWNrLW5leHR7XHJcblx0ICAgIFx0cmlnaHQ6IDEwMHB4O1xyXG5cdCAgICB9XHJcblx0ICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHdpZHRoOiA1MHB4O1xyXG5cdFx0XHRoZWlnaHQ6IDUwcHg7XHJcblx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0ICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRcdCAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG5cdFx0ICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdCAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHRcdCAgICB6LWluZGV4OiAxO1xyXG5cdFx0ICAgIHRvcDogLTcwcHg7XHJcblx0XHQgICAgJi5zbGljay1uZXh0e1xyXG5cdFx0ICAgIFx0cmlnaHQ6IDIwcHg7XHJcblx0XHQgICAgfVxyXG5cdFx0ICAgICYuc2xpY2stcHJldntcclxuXHRcdFx0XHRyaWdodDogODBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5uZXdzUGFnZXtcclxuXHRwYWRkaW5nLXRvcDogMTMwcHg7XHJcbn1cclxuLnNpbmdsZU5ld3N7XHJcblx0cGFkZGluZy10b3A6IDEzMHB4O1xyXG5cdC5icmVhZGNydW1ic3tcclxuXHRcdHBhZGRpbmc6IDIwcHggMTAwcHg7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRhLHNwYW57XHJcblx0XHRcdGZvbnQtZmFtaWx5OiBCcmFuZGluZztcclxuXHRcdFx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdFx0XHRsaW5lLWhlaWdodDogMzVweDtcclxuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDFweDtcclxuXHRcdFx0Y29sb3I6IzAwMDtcclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDIwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9zZWN0aW9ue1xyXG5cdFx0cGFkZGluZzogMjBweCAxNTBweCA1MHB4O1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0LmZlYXR1cmVkSW1ne1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRcdH1cclxuXHRcdC5idG4tYmx1ZUJveHtcclxuXHRcdFx0bWFyZ2luLXRvcDogMzBweDtcclxuICAgIFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHR9XHJcblx0XHQuYnRuc3tcclxuXHRcdFx0bWFyZ2luLXRvcDo1MHB4O1xyXG5cdFx0XHRhe1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMzBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0aW1ne1xyXG5cdFx0XHQmOm5vdCguZmVhdHVyZWRJbWcpe1xyXG5cdFx0XHRcdHBhZGRpbmc6IDEwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIucmV2aWV3c3tcclxuXHQmX2ludHJve1xyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0Y29sdW1uLWdhcDogNTBweDtcclxuXHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0JjpmaXJzdC1jaGlsZHtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHR3aWR0aDogNjAlO1xyXG5cdFx0XHRcdFx0Y29sdW1uLWdhcDogMzBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0JjpsYXN0LWNoaWxke1xyXG5cdFx0XHRcdFx0d2lkdGg6IDMwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0I3JwLXdpZGdldHtcclxuXHRcdHdpZHRoOjEwMCUgIWltcG9ydGFudDtcclxuXHRcdC5ycC13aWRnZXQtdG9weyBcclxuXHRcdFx0YmFja2dyb3VuZDpub25lO1xyXG5cdFx0XHQmLXRpdGxlIHsgXHJcblx0XHRcdFx0aGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0XHQjcnAtd2lkZ2V0LWpzLWluZm8ge2xlZnQ6IDEyNXB4OyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7fVxyXG5cdFx0XHRcdCNycC13aWRnZXQtbG9nb3t3aWR0aDogMTIwcHg7fVxyXG5cdFx0XHR9XHJcblx0XHRcdC5ycC13aWRnZXQtZ3JpLXRpdGxleyBkaXNwbGF5Om5vbmU7fVxyXG5cdFx0XHQucnAtd2lkZ2V0LWdyaS12YWx1ZXtmbG9hdDogbGVmdDsgdGV4dC1hbGlnbjogbGVmdDtwYWRkaW5nLWxlZnQ6IDE1cHg7fVxyXG5cdFx0XHQucnAtd2lkZ2V0LWdyYXBoeyBkaXNwbGF5Om5vbmU7fVxyXG5cdFx0XHQucnAtd2lkZ2V0LXNvdXJjZXN7IHdpZHRoOjI1JTt0ZXh0LWFsaWduOmxlZnQ7IGZsb2F0OiBsZWZ0OyB3aWR0aDogYXV0bzt9XHJcblx0XHRcdC5ycC13aWRnZXQtcmV2aWV3c3tkaXNwbGF5Om5vbmU7fVxyXG5cdFx0XHQucnAtd2lkZ2V0LXNvdXJjZXMtZWxlbWVudCwucnAtd2lkZ2V0LXJldmlld3MtZWxlbWVudCB7IFxyXG5cdFx0XHRcdHdpZHRoOmNhbGMoNTAlIC0gMTBweCk7IGZsb2F0OmxlZnQ7IGRpc3BsYXk6IGlubGluZTsgbWFyZ2luOjBweCA1cHg7XHJcblx0XHRcdH1cclxuXHRcdFx0LnJwLXdpZGdldC1udW1iZXIsLnJwLXdpZGdldC1sYWJlbCB7IHdpZHRoOjEwMCU7IGZvbnQtc2l6ZTogMThweDsgbGluZS1oZWlnaHQ6IDIycHg7IHRleHQtYWxpZ246IGNlbnRlcjt9XHJcblx0XHRcdC5ycC13aWRnZXQtbGFiZWwgeyBmb250LXNpemU6MTRweDsgbWFyZ2luLWxlZnQ6MDt9XHJcblx0XHR9XHJcblx0XHQucnAtd2lkZ2V0LWJvdHRvbXsgYmFja2dyb3VuZDpub25lO31cclxuXHRcdCNycC13aWRnZXQtZGlhbG9nIGRpdi50b29sdGlwLWJ1YnJ0MzUyd2JsdWV7IGJhY2tncm91bmQ6I2ZmZmZmZjt9XHJcblx0XHQjcnAtd2lkZ2V0LWRpYWxvZyBkaXYudG9vbHRpcC1idWJydDM1MndibHVlIGRpdi50b29sdGlwLWJ1YnJ0MzUyd2JsdWUtaW5uZXJ7IGJhY2tncm91bmQ6I2ZmZmZmZjt9XHJcblx0XHQmLndpZGdldC10eXBlLTQgeyBcclxuXHRcdFx0d2lkdGg6MTAwJTtcclxuXHRcdFx0LnJwLXdpZGdldC10b3AsLnJwLXdpZGdldC1ib3R0b217XHJcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTpub25lO1xyXG5cdFx0XHR9XHJcblx0XHRcdC5ycC13aWRnZXQtZ3JpLXRpdGxlIHsgZGlzcGxheTpub25lfVxyXG5cdFx0XHQucnAtd2lkZ2V0LWdyYXBoIHsgZGlzcGxheTpub25lfVxyXG5cdFx0fVx0XHRcclxuXHR9XHJcblx0I2d1ZXN0LXJldmlld3N7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4O1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0LnJldmlldy1saXN0e1xyXG5cdFx0XHRtYXJnaW4tdG9wOjEwcHg7IGZvbnQtc2l6ZToxNHB4O1xyXG5cdFx0XHR1bHtcclxuXHRcdFx0XHRsaXN0LXN0eWxlOm5vbmU7IG1hcmdpbjowOyBwYWRkaW5nOjA7ZGlzcGxheTogZmxleDtmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0bGl7XHJcblx0XHRcdFx0XHRib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IFxyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTo0MHB4OyBcclxuXHRcdFx0XHRcdGxpc3Qtc3R5bGU6bm9uZTsgXHJcblx0XHRcdFx0XHR3aWR0aDo1MCU7XHJcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDEwcHggNDBweDtcclxuXHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwIDAgMjBweDtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdC5sb2dvLXdyYXBwZXIgeyBcclxuXHRcdFx0XHRcdFx0Y29sb3I6IzAwMDsgXHJcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206MzBweDsgXHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTozMHB4O1xyXG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogMzBweDtcclxuXHRcdFx0XHRcdFx0YXtcclxuXHRcdFx0XHRcdFx0XHRjb2xvcjojMDAwOyBcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6MzBweDtcclxuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogMzBweDtcclxuXHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTogRWxNZXNzaXJpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6MjBweDtcclxuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogMjBweDtcclxuXHRcdFx0XHRcdFx0XHRhe1xyXG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjIwcHg7XHJcblx0XHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogMjBweDtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdC5pbmZvLWRpdiB7IFxyXG5cdFx0XHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0XHRcdHdpZHRoOjI1JTsgZmxvYXQ6bGVmdDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0XHRcdC50b3AtaW5mb3tcclxuXHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0LnJhdGluZy13cmFwcGVyIHsgXHJcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTo3cHg7XHJcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdFx0ICAgIGNvbHVtbi1nYXA6IDEwcHg7XHJcblx0XHRcdFx0XHRcdCAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRcdFx0XHQgICAgY29sb3I6IHJnYmEoIzAwMCwwLjYpO1xyXG5cdFx0XHRcdFx0XHQgICAgZm9udC1zaXplOiAxMnB4O1xyXG5cdFx0XHRcdFx0XHQgICAgbGluZS1oZWlnaHQ6IDhweDtcclxuXHRcdFx0XHRcdFx0ICAgIGltZ3tcclxuXHRcdFx0XHRcdFx0ICAgIFx0d2lkdGg6IDEzcHg7XHJcblx0XHRcdFx0XHRcdCAgICB9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0LnB1Ymxpc2gtd3JhcHBlciB7IFxyXG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZToxOHB4OyBjb2xvcjogcmdiYSgjMDAwLDAuNik7IG1hcmdpbi1ib3R0b206M3B4O1xyXG5cdFx0XHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDE1cHg7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9IFxyXG5cdFx0XHRcdFx0XHQudGl0bGUtd3JhcHBlciB7IGNvbG9yOiMzMzM7fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0LmRpc2MtZGl2IHsgXHJcblx0XHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRcdFx0d2lkdGg6NzUlOyBmbG9hdDpsZWZ0OyBwYWRkaW5nLWxlZnQ6MTVweDsgXHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cdFxyXG5cdH1cclxuXHQuYmFja2dyIHtiYWNrZ3JvdW5kOiNDQ0NDQ0M7IGJvcmRlcjoxcHggc29saWQgIzY2Njsgd2lkdGg6MjAwcHg7IG1pbi13aWR0aDoyMDBweDsgbWluLWhlaWdodDoyMHB4O31cclxuXHQuaGlnaGxpZ2h0IHtiYWNrZ3JvdW5kOiMwOTY7fVxyXG5cdCNsYW5nX3NlbGVjdG9yIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJsdWU7XHJcblx0ICAgIGNvbG9yOiAjZmZmO1xyXG5cdCAgICBib3JkZXI6IG5vbmU7XHJcblx0ICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcblx0ICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc2VsZWN0LXdoaXRlLnBuZyk7XHJcblx0ICAgIGJhY2tncm91bmQtc2l6ZTogaW5pdGlhbDtcclxuXHQgICAgcGFkZGluZzo1cHggNDBweDtcclxuXHQgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMCBjZW50ZXI7XHJcblx0ICAgIG9wdGlvbjpob3ZlciB7XHJcblx0XHQgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHRcdH1cclxuXHR9XHRcdFx0XHRcdFx0XHJcblx0LnJ0bHtcclxuXHRcdCNndWVzdC1yZXZpZXdze1xyXG5cdFx0XHQjcnAtd2lkZ2V0e1xyXG5cdFx0XHRcdC5ycC13aWRnZXQtdG9we1xyXG5cdFx0XHRcdFx0LnJwLXdpZGdldC1udW1iZXJ7IHRleHQtYWxpZ246bGVmdDt9XHJcblx0XHRcdFx0XHQucnAtd2lkZ2V0LWxhYmVseyB0ZXh0LWFsaWduOmxlZnQ7fVxyXG5cdFx0XHRcdFx0LnJwLXdpZGdldC10b3AtdGl0bGUgI3JwLXdpZGdldC1qcy1pbmZve3JpZ2h0Ojg1cHg7fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQjcnAtd2lkZ2V0LWRpYWxvZ3sgbGVmdDphdXRvICFpbXBvcnRhbnQ7IHJpZ2h0OjEyNXB4O31cclxuXHRcdH1cclxuXHR9XHJcblx0XHRcdFx0XHRcdFx0XHRcclxuXHQuc2hvd19tZXNzYWdlIHt3aWR0aDoxMDAlOyB0ZXh0LWFsaWduOmNlbnRlcjtkaXNwbGF5Om5vbmU7fVxyXG5cdC5yX2xpbmsge2NvbG9yOiMwMDA7IHRleHQtZGVjb3JhdGlvbjpub25lO31cclxuXHQucl9saW5rOmhvdmVyIHt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO31cclxuXHQuaG9saWRheV9jaGtfbG9nbyB7IHdpZHRoOjMycHg7IGhlaWdodDozMnB4O31cclxuXHQmX2Zvb3RlcntcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0ICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdCAgICBjb2x1bW4tZ2FwOiA0MHB4O1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG5cdCAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdCAgICBcdHBhZGRpbmc6IDI1cHg7XHJcblx0ICAgIFx0YXtcclxuXHQgICAgXHRcdHdpZHRoOiAzMCU7XHJcblx0ICAgIFx0fVxyXG5cdCAgICB9XHJcblx0fVxyXG5cdC50cmlwQWR2aXNvci1jb250YWluZXJ7XHJcblx0XHRkaXNwbGF5OiBmbGV4OyBcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyOyBcclxuXHRcdG1hcmdpbjogNDBweCBhdXRvO1xyXG5cdH1cclxufVxyXG4iLCIub2ZmZXJze1xyXG5cdCYtY29udGFpbmVye1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdGdhcDogMjBweDtcclxuXHRcdC8vanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0anVzdGlmeS1zZWxmOiBmbGV4LXN0YXJ0O1xyXG5cdFx0bWFyZ2luLWJvdHRvbTo0MHB4O1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdH1cclxuXHR9XHJcblx0Lm9mZmVye1xyXG5cdFx0Ly9wYWRkaW5nOiA0MHB4IDA7XHJcblx0XHQmLWltYWdle1xyXG5cdFx0XHRpbWd7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5idG57XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcclxuXHRcdH1cclxuXHRcdC5zdWJ0aXRsZXtcclxuXHRcdFx0Y29sb3I6JGRhcmstYmx1ZTtcclxuXHRcdH1cclxuXHRcdC5pY29uc3tcclxuXHRcdFx0ZGlzcGxheTpmbGV4O1xyXG5cdFx0XHRnYXA6MjBweDtcclxuXHRcdFx0bWFyZ2luOjMwcHggYXV0bztcclxuXHRcdFx0ZGl2e1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdCAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0XHQgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHQgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0ICAgIGltZ3tcclxuXHRcdFx0ICAgIFx0d2lkdGg6NTBweDtcclxuXHRcdFx0ICAgIFx0bWFyZ2luLWJvdHRvbToxMHB4O1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHQgICAgaDZ7XHJcblx0XHRcdCAgICBcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmLmhpZ2hsaWdodHtcclxuXHRcdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdCYuZnVsbFdpZHRoe1xyXG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHRcdFx0ICAgIGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdCAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5jb2wtM3tcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHQucHJpY2V7XHJcblx0XHRcdFx0Ly9mb250LXNpemU6IDE2cHg7XHJcblx0XHRcdFx0bWFyZ2luOiAyMHB4IDA7XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5oaWdobGlnaHR7XHJcblx0XHRcdFx0Lm9mZmVyLWNvbnRlbnR7XHJcblx0XHRcdFx0XHRwYWRkaW5nOjEwcHhcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0LnN1YnRpdGxle1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0Lmljb25ze1xyXG5cdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdGltZ3tcclxuXHRcdFx0XHQgICAgXHR3aWR0aDo0MHB4O1xyXG5cdFx0XHRcdCAgICBcdG1hcmdpbi1ib3R0b206MTBweDtcclxuXHRcdFx0XHQgICAgfVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQuYnRue1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdCYuZnVsbFdpZHRoe1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0Lm9mZmVyLWNvbnRlbnR7XHJcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMTUwcHg7XHJcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDcwcHg7XHJcblx0XHRcdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQub2ZmZXItaW1hZ2V7XHJcblx0XHRcdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQvKiY6bnRoLWNoaWxkKDVuKXtcclxuXHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuXHRcdFx0XHRcdC5vZmZlci1jb250ZW50e1xyXG5cdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDE1MHB4O1xyXG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogNzBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9Ki9cclxuXHRcdFx0XHQmOm50aC1jaGlsZChvZGQpe1xyXG5cdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG5cdFx0XHRcdFx0Lm9mZmVyLWNvbnRlbnR7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMTUwcHg7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiA3MHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmLmNvbC0ze1xyXG5cdFx0XHRcdHdpZHRoOiAyNSU7XHJcblx0XHRcdFx0JjpudGgtY2hpbGQoMm4pe1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDE1MHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmOm50aC1jaGlsZCg0bil7XHJcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDE1MHB4O1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGgye1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAzMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQucHJpY2V7XHJcblx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0Y29sb3I6JGRhcmstYmx1ZTtcclxuXHRcdC8vbWFyZ2luOjYwcHggMCAzMHB4O1xyXG5cdFx0Ly9mb250LXNpemU6IDE4cHg7XHJcblx0fVxyXG5cdC5vZmZlck1zZ3tcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHQgICAgd2lkdGg6IDEwMCU7XHJcblx0ICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xyXG5cdH1cclxuXHQuZmFxe1xyXG5cdFx0cGFkZGluZzogNDBweCAxNTBweCAwO1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdH1cclxuXHRcdC5hY2NvcmRpb257XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDEwMHB4O1xyXG5cdFx0XHRtYXJnaW4tdG9wOjIwcHg7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRcdFx0XHRtYXJnaW4tdG9wOjEwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0Ji1pdGVte1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwO1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5hY2NvcmRpb24tdGl0bGV7XHJcblx0XHRcdFx0XHRib3JkZXI6bm9uZTtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMjRweDtcclxuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiBFbE1lc3Npcmk7XHJcblx0XHRcdFx0XHRjb2xvcjogIzAwMDtcclxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcclxuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcblx0XHRcdFx0XHQmOmhvdmVye1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdFx0Y29sb3I6JGJsdWU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmOmZvY3Vze1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCY6YmVmb3Jle1xyXG5cdFx0XHRcdFx0XHRyaWdodDogMDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LmFjY29yZGlvbi1jb250ZW50e1xyXG5cdFx0XHRcdFx0Ym9yZGVyOiBub25lO1xyXG5cdFx0XHRcdFx0cGFkZGluZzogMTVweCAyMHB4O1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOjE2cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCYuaXMtYWN0aXZle1xyXG5cdFx0XHRcdFx0LmFjY29yZGlvbi10aXRsZXtcclxuXHRcdFx0XHRcdFx0Y29sb3I6JGJsdWU7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4uc2luZ2xlT2ZmZXJ7XHJcblx0Jl9zZWN0aW9ue1xyXG5cdFx0cGFkZGluZzogNzBweCAxNTBweCAxMHB4O1xyXG5cdFx0LypkaXNwbGF5OiBmbGV4O1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0Z2FwOiAxMDBweDsqL1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdFx0LypmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGdhcDowOyovXHJcblx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xyXG5cdFx0fVxyXG5cdFx0aDN7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHRcdFx0XHRmb250LXNpemU6IDIycHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdGxpe1xyXG5cdFx0XHRjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG5cdFx0fVxyXG5cdFx0ZGl2e1xyXG5cdFx0XHQvKiY6Zmlyc3QtY2hpbGR7XHJcblx0XHRcdFx0d2lkdGg6IDYwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHQmOmxhc3QtY2hpbGR7XHJcblx0XHRcdFx0d2lkdGg6IDQwJTtcclxuXHRcdFx0fSovXHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0Ly93aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdC8vbWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRcdFx0XHQucHJpY2V7XHJcblx0XHRcdFx0XHRtYXJnaW46MjBweCAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQuaG90ZWx7XHJcblx0XHRcdFx0YXtcclxuXHRcdFx0XHRcdGNvbG9yOiRkYXJrLWJsdWU7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDE4cHg7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0XHRcdFx0Jjpob3ZlcntcclxuXHRcdFx0XHRcdFx0Y29sb3I6JGJsdWU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuaWNvbnN7XHJcblx0XHRcdGRpc3BsYXk6ZmxleDtcclxuXHRcdFx0Z2FwOjIwcHg7XHJcblx0XHRcdG1hcmdpbjozMHB4IGF1dG87XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHQgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdFx0ICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdCAgICBpbWd7XHJcblx0XHRcdCAgICBcdHdpZHRoOjUwcHg7XHJcblx0XHRcdCAgICBcdG1hcmdpbi1ib3R0b206MTBweDtcclxuXHRcdFx0ICAgIFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0d2lkdGg6NDBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0ICAgIH1cclxuXHRcdFx0ICAgIGg2e1xyXG5cdFx0XHQgICAgXHR0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHRcdFx0ICAgIH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LnRlcm1zQW5kQ29uZGl0aW9uc3tcclxuXHRcdFx0aDEsaDIsaDMsaDQsaDUsaDZ7XHJcblx0XHRcdFx0Y29sb3I6ICRkYXJrLWJsdWU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9zZWN0aW9uMntcclxuXHRcdHBhZGRpbmc6IDEwcHggMTUwcHg7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0fVxyXG5cdFx0LnBhcnRpY2lwYXRpbmdfaG90ZWxze1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ICAgIGNvbHVtbi1nYXA6IDIwcHg7XHJcblx0XHQgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdFx0ICAgIHBhZGRpbmctdG9wOiA1MHB4O1xyXG5cdFx0XHQuaG90ZWx7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdHdpZHRoOiAyNSU7XHJcblx0XHRcdFx0aW1ne1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCYtZGV0YWlsc3tcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHQgICAgYm90dG9tOiAwO1xyXG5cdFx0XHRcdCAgICBsZWZ0OiAwO1xyXG5cdFx0XHRcdCAgICB3aWR0aDogMTAwJTtcclxuXHRcdFx0XHQgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwwLDAsMC44KSwgdHJhbnNwYXJlbnQpO1xyXG5cdFx0XHRcdCAgICBwYWRkaW5nOiAyMHB4O1xyXG5cdFx0XHRcdCAgICBtaW4taGVpZ2h0OiA1MCU7XHJcblx0XHRcdFx0ICAgIGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0ICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuXHRcdFx0XHQgICAgaDQsYXtcclxuXHRcdFx0XHQgICAgXHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHQgICAgfVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHQuaG90ZWx7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdG1hcmdpbjogMTBweCAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmNhcm91c2VsLXNsaWRlcntcclxuXHRcdFx0cGFkZGluZy10b3A6IDUwcHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5ub0Fycm93U2xpZGVye1xyXG5cdFx0bWFyZ2luOiA3MHB4IDA7XHJcblx0XHQucHJpY2V7XHJcblx0XHRcdG1hcmdpbjoxNXB4IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5ibHVle1xyXG5cdFx0Y29sb3I6JGRhcmstYmx1ZTtcclxuXHR9XHJcblx0LmZhcXtcclxuXHRcdHBhZGRpbmc6IDQwcHggMTUwcHggMDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0XHR9XHJcblx0XHQuYWNjb3JkaW9ue1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuXHRcdFx0bWFyZ2luLXRvcDoyMHB4O1xyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDoxMHB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdCYtaXRlbXtcclxuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuYWNjb3JkaW9uLXRpdGxle1xyXG5cdFx0XHRcdFx0Ym9yZGVyOm5vbmU7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDI0cHg7XHJcblx0XHRcdFx0XHRmb250LWZhbWlseTogRWxNZXNzaXJpO1xyXG5cdFx0XHRcdFx0Y29sb3I6ICMwMDA7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG5cdFx0XHRcdFx0Jjpob3ZlcntcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiRibHVlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0Jjpmb2N1c3tcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmOmJlZm9yZXtcclxuXHRcdFx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDE2cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5hY2NvcmRpb24tY29udGVudHtcclxuXHRcdFx0XHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDE1cHggMjBweDtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZToxNnB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmLmlzLWFjdGl2ZXtcclxuXHRcdFx0XHRcdC5hY2NvcmRpb24tdGl0bGV7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiRibHVlO1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LmNvdW50ZG93bkNvbnRhaW5lcntcclxuXHRcdGgye1xyXG5cdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHRcdH1cclxuXHRcdC5jb3VudGRvd257XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGp1c3RpZnktY29udGVudDpjZW50ZXI7XHJcblx0XHRcdG1hcmdpbjogMCBhdXRvIDMwcHg7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdG1hcmdpbjogMCAxMHB4O1xyXG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdFx0XHRmb250LWZhbWlseTogRWxNZXNzaXJpO1xyXG5cdFx0XHR9XHJcblx0XHRcdHNwYW57XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0Zm9udC1mYW1pbHk6IEVsTWVzc2lyaTtcclxuXHRcdFx0XHRjb2xvcjokZGFyay1ibHVlO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTo1MHB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5sb2FkTW9yZXtcclxuXHRtYXJnaW46IDQwcHggYXV0bztcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0ZGl2e1xyXG5cdFx0d2lkdGg6IDUwcHg7XHJcblx0ICAgIGhlaWdodDogNTBweDtcclxuXHQgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG5cdCAgICBjb2xvcjogJGRhcmstYmx1ZTtcclxuXHQgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cdCAgICBmb250LXNpemU6IDI1cHg7XHJcblx0ICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmV5O1xyXG5cdCAgICBkaXNwbGF5OiBmbGV4O1xyXG5cdCAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHQgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcclxuXHQgICAgJjpob3ZlcntcclxuXHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTtcclxuXHRcdFx0Y29sb3I6JGxpZ2h0LWdyZXk7XHJcblx0XHR9XHJcblx0XHRpe1xyXG5cdFx0XHRsaW5lLWhlaWdodDogMDtcclxuXHRcdH1cclxuXHR9XHJcbn0iLCIuYWJvdXR7XHJcblx0Jl9sb2NhdGlvbntcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRpbWd7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMDtcclxuXHRcdFx0bWFyZ2luOiAyNXB4O1xyXG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0XHRpbWd7XHJcblx0XHRcdFx0aGVpZ2h0OiA1MHZoO1xyXG5cdFx0XHQgICAgd2lkdGg6IGF1dG87XHJcblx0XHRcdCAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1JSk7XHJcblx0XHRcdCAgICBtYXgtd2lkdGg6IGluaXRpYWw7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0ZGl2e1xyXG5cdFx0XHRtYXJnaW46IDMwcHggYXV0bztcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHR3aWR0aDogODAlO1xyXG5cdFx0XHRcdGNvbHVtbi1jb3VudDogMjtcclxuXHRcdFx0XHRjb2x1bW4tZ2FwOiAzNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfc3Rvcnl7XHJcblx0XHRwYWRkaW5nOjEwMHB4IDBweCA3MHB4IDE1MHB4O1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdGgxe1xyXG5cdFx0XHRsaW5lLWhlaWdodDogNHZ3O1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG5cdFx0XHRzcGFue1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OjV2dztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0ZGl2e1xyXG5cdFx0XHRmbGV4OiAxO1xyXG5cdFx0XHRpbWd7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdFx0cHtcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjEwMHB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjI1cHggMHB4IDI1cHggMjVweDtcclxuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHRmbGV4OiBpbml0aWFsO1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdG1hcmdpbjogMTBweCAwO1xyXG5cdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRoMXtcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogNnZ3O1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0XHRcdFx0c3BhbntcclxuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiA4dnc7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfZ2FsbGVyeXtcclxuXHRcdHBhZGRpbmctdG9wOiA1MHB4O1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDUwcHg7XHJcblx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XHJcblx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdH1cclxuXHRcdC5zbGlkZXJzQ29udGFpbmVye1xyXG5cdFx0XHQvL2FsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuXHRcdH1cclxuXHR9XHJcblx0Jl90ZXN0aW1vbmlhbHN7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDBweCA1MHB4IDE1MHB4O1xyXG5cdFx0YmFja2dyb3VuZDogJGxpZ2h0LWdyZXk7XHJcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcclxuXHRcdCYuYmFja2dyb3VuZENvbG9ye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0fVxyXG5cdFx0Ji1zbGlkZXJ7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdH1cclxuXHRcdC5zbGljay1saXN0e1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDBweCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdFx0LnRlc3RpbW9uaWFsQmxvY2t7XHJcblx0XHRcdGJhY2tncm91bmQ6ICRsaWdodC1ncmV5O1xyXG5cdFx0XHRwYWRkaW5nOiA1MHB4IDYwcHg7XHJcbiAgICBcdFx0bWFyZ2luOiAwIDIwcHg7XHJcblx0XHQgICAgJl9pbWFnZXtcclxuXHRcdCAgICBcdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRcdFx0ICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdCAgICB3aWR0aDogNDAlO1xyXG5cdFx0XHQgICAgbWFyZ2luOiAwIGF1dG8gNDBweDtcclxuXHRcdCAgICB9XHJcblx0XHQgICAgcHtcclxuXHRcdCAgICBcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdCAgICBcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdCAgICBcdGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG5cdFx0ICAgIFx0Ji5uYW1le1xyXG5cdFx0ICAgIFx0XHRjb2xvcjokZGFyay1ibHVlO1xyXG5cdFx0ICAgIFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0ICAgIFx0fVxyXG5cdFx0ICAgIH1cclxuXHRcdCAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0ICAgIFx0cGFkZGluZzogMzBweCAxNXB4O1xyXG4gICAgXHRcdFx0bWFyZ2luOiAwIDEwcHg7XHJcbiAgICBcdFx0XHRwe1xyXG4gICAgXHRcdFx0XHRmb250LXNpemU6IDE2cHg7XHJcbiAgICBcdFx0XHRcdGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgXHRcdFx0fVxyXG4gICAgXHRcdFx0Jl9pbWFnZXtcclxuICAgIFx0XHRcdFx0d2lkdGg6IDcwJTtcclxuICAgIFx0XHRcdFx0bWFyZ2luOiAwIGF1dG8gMjVweDtcclxuICAgIFx0XHRcdH1cclxuXHRcdCAgICB9XHJcblx0XHR9XHJcblx0XHQuc2xpY2stYXJyb3d7XHJcblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0ICAgIHdpZHRoOiA1MHB4O1xyXG5cdFx0ICAgIGhlaWdodDogNTBweDtcclxuXHRcdCAgICBib3JkZXI6MXB4IHNvbGlkICRkYXJrLWJsdWU7XHJcblx0XHQgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0ICAgIGNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdFx0ICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdCAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcblx0XHQgICAgZm9udC1zaXplOiAyNXB4O1xyXG5cdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdCAgICB0b3A6IC05MHB4O1xyXG5cdFx0ICAgIHJpZ2h0OiA3MHB4O1xyXG5cdFx0ICAgICYuc2xpY2stcHJldntcclxuXHRcdCAgICBcdHJpZ2h0OiAxNTBweDtcclxuXHRcdCAgICB9XHJcblx0XHQgICAgJjpob3ZlcntcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG5cdFx0XHRcdGNvbG9yOiNmZmY7XHJcblx0XHRcdH1cclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHR3aWR0aDogNDBweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDQwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9tYXN0ZXJwbGFue1xyXG5cdFx0cGFkZGluZzogNTBweCAwO1xyXG5cdFx0aDF7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogMTUwcHg7XHJcblx0XHR9XHJcblx0XHQudGV4dHtcclxuXHRcdFx0cGFkZGluZzogMzBweCAxNTBweDtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHggMDtcclxuXHRcdFx0aDF7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdC50ZXh0e1xyXG5cdFx0XHRcdHBhZGRpbmc6IDEwcHggMjVweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0I21hcCB7XHJcblx0XHQgIGhlaWdodDogNTAwcHg7XHJcblx0XHR9XHJcblx0XHQuZ20tc3R5bGUtaXcsIC5nbS1zdHlsZS1pdy1ke1xyXG5cdFx0XHRtYXgtaGVpZ2h0OiA0MDBweCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdFx0LmluZm9XaW5kb3d7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdCZfY29udGFpbmVye1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdFx0XHRwYWRkaW5nOjE1cHg7XHJcblx0XHRcdFx0d2lkdGg6IDMzMHB4O1xyXG5cdFx0XHRcdC5jb250ZW50e1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0XHRcdG1hcmdpbjogMTBweCBhdXRvO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRoNntcclxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDIzcHg7XHJcblx0XHRcdFx0XHRjb2xvcjojMDAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHQvL3dpZHRoOiAyMjVweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LmltYWdle1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRoZWlnaHQ6IDIwMHB4O1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1zaXplOmNvdmVyO1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG5cdFx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDMwMHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRhe1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuZ20tc3R5bGUgLmdtLXN0eWxlLWl3LWN7XHJcblx0XHRcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdFx0cGFkZGluZzowO1xyXG5cdFx0fVxyXG5cdFx0LmdtLXN0eWxlIC5nbS1zdHlsZS1pdy1ke1xyXG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0XHQuZ20tdWktaG92ZXItZWZmZWN0PnNwYW57XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICMwMDA7XHJcblx0XHQgICAgd2lkdGg6IDE2cHggIWltcG9ydGFudDtcclxuXHRcdCAgICBoZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcclxuXHRcdH1cclxuXHRcdC5nbS1zdHlsZSAuZ20tc3R5bGUtaXctdGM6OmFmdGVye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfdmlzaW9ue1xyXG5cdFx0cGFkZGluZzo1MHB4IDA7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0aDF7XHJcblx0XHRcdHBhZGRpbmctbGVmdDoxNTBweDtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblx0XHQmLWNvbnRlbnQsJi1pbWFnZXtcclxuXHRcdFx0d2lkdGg6NTAlO1xyXG5cdFx0fVxyXG5cdFx0Ji1pbWFnZXtcclxuXHRcdFx0ei1pbmRleDogMTtcclxuXHRcdFx0aW1ne1xyXG4gICAgXHRcdFx0d2lkdGg6IDEwMCU7XHJcbiAgICBcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdCYuaXMtaW52aWV3e1xyXG5cdFx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0XHRjbGlwLXBhdGg6IGluc2V0KDAgMCAwIDApO1xyXG5cdFx0XHRcdFx0fVx0XHRcdFx0XHRcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDEuM3MgY3ViaWMtYmV6aWVyKC43NiwwLC4yNCwxKTtcclxuXHRcdFx0XHRcdGNsaXAtcGF0aDogaW5zZXQoMTAwJSAwIDAgMCk7XHJcblx0XHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Ji1jb250ZW50e1xyXG5cdFx0XHRwYWRkaW5nOiA1MHB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiRkYXJrLWJsdWU7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGFsaWduLWl0ZW1zOmNlbnRlcjtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAtMTAlO1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDE1JTtcclxuXHRcdFx0bWFyZ2luLXRvcDogNSU7XHJcblx0XHRcdHAsc3BhbntcclxuXHRcdFx0XHRjb2xvcjojZmZmO1xyXG5cdFx0XHR9XHJcblx0XHRcdGF7XHJcblx0XHRcdFx0Ly9wYWRkaW5nLXRvcDogMzBweDtcclxuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdHBhZGRpbmc6MjVweDtcclxuXHRcdFx0XHRhe1xyXG5cdFx0XHRcdFx0cGFkZGluZy10b3A6MDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDBweDtcclxuXHRcdFx0cGFkZGluZy1yaWdodDowO1xyXG5cdFx0XHRwYWRkaW5nLXRvcDoyNXB4O1xyXG5cdFx0XHQmLWNvbnRlbnQsJi1pbWFnZXtcclxuICAgIFx0XHRcdHdpZHRoOjEwMCU7XHJcbiAgICBcdFx0fVxyXG5cclxuXHRcdFx0aDF7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OjI1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9tdXJpeWF7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4IDUwcHggMHB4O1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRjb2x1bW4tZ2FwOiA1MHB4O1xyXG5cdFx0ZGl2e1xyXG5cdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweCAyNXB4IDI1cHggMHB4O1xyXG5cdFx0XHRjb2x1bW4tZ2FwOiAwO1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdC8vZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMjVweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0aDF7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuaW1hZ2V7XHJcblx0XHRcdGltZ3tcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdCYuaXMtaW52aWV3e1xyXG5cdFx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0XHRjbGlwLXBhdGg6IGluc2V0KDAgMCAwIDApO1xyXG5cdFx0XHRcdFx0fVx0XHRcdFx0XHRcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDEuM3MgY3ViaWMtYmV6aWVyKC43NiwwLC4yNCwxKTtcclxuXHRcdFx0XHRcdGNsaXAtcGF0aDogaW5zZXQoMTAwJSAwIDAgMCk7XHJcblx0XHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfaGF3YW5he1xyXG5cdFx0cGFkZGluZzogNTBweCAwIDUwcHggMTUwcHg7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGNvbHVtbi1nYXA6IDUwcHg7XHJcblx0XHRkaXZ7XHJcblx0XHRcdHdpZHRoOiA1MCU7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4IDAgMjVweCAyNXB4O1xyXG5cdFx0XHRjb2x1bW4tZ2FwOiAwO1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHRcdFx0ZGl2e1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRoMXtcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuaW1hZ2V7XHJcblx0XHRcdGltZ3tcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdCYuaXMtaW52aWV3e1xyXG5cdFx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0XHRjbGlwLXBhdGg6IGluc2V0KDAgMCAwIDApO1xyXG5cdFx0XHRcdFx0fVx0XHRcdFx0XHRcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDEuM3MgY3ViaWMtYmV6aWVyKC43NiwwLC4yNCwxKTtcclxuXHRcdFx0XHRcdGNsaXAtcGF0aDogaW5zZXQoMTAwJSAwIDAgMCk7XHJcblx0XHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfZm9ybXtcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XHJcblx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfZXhwbG9yZXtcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0fVxyXG5cdFx0Ji1jb250YWluZXJ7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IDMwJTtcclxuXHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aDN7XHJcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0XHRcdFx0aDN7XHJcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjZweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLmRpbmluZ1BhZ2V7XHJcblx0Jl9pbnRyb3tcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0Y29sdW1uLWdhcDogMzBweDtcclxuXHRcdGRpdixoMXtcclxuXHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0ZGl2LGgxe1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHR9XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9zZWN0aW9ue1xyXG5cdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHR9XHJcblx0XHQmLWNvbnRlbnR7XHJcblx0XHRcdG1hcmdpbi10b3A6IDEwMHB4O1xyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDMwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0LnNpbmdsZURpbmluZ3tcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuXHRcdFx0XHQvKiYtY29udGVudHtcclxuXHRcdFx0XHRcdHdpZHRoOiA2NiU7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDogNDBweDtcclxuXHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiBjYWxjKDE1MHB4ICsgMTAlKTtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdFx0XHRjb2x1bW4tZ2FwOiAzMHB4O1xyXG5cdFx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRoMntcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdD4gZGl2e1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0XHRhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0LnBob25le1xyXG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0XHRcdFx0XHRjb2xvcjokZGFyay1ibHVlO1xyXG5cdFx0XHRcdFx0XHRhe1xyXG5cdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHRcdFx0XHRcdFx0Y29sb3I6JGRhcmstYmx1ZTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy10b3A6IDI1cHg7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAyNXB4O1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcblx0XHRcdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDgwJTtcclxuXHRcdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG5cdFx0XHRcdFx0XHRoMntcclxuXHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjIwcHg7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSovXHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdFx0cGFkZGluZzogNTBweCAwO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0XHRcdCYtaW5mbywmLWdhbGxlcnl7XHJcblx0XHRcdFx0XHR3aWR0aDogNDglO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aDF7XHJcblx0XHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0JjpudGgtY2hpbGQoZXZlbil7XHJcblx0XHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjE1MHB4O1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0LWdyZXk7XHJcblx0XHRcdFx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDojZmZmO1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0JjpudGgtY2hpbGQob2RkKXtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MTUwcHg7XHJcblx0XHRcdFx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Ji1nYWxsZXJ5e1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdFx0LmxvZ297XHJcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdFx0ei1pbmRleDogMTtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDI1JTtcclxuXHRcdFx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0LnNsaWNrLWFycm93IHtcclxuXHRcdFx0XHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHQgICAgYm90dG9tOiAtNTBweDtcclxuXHRcdFx0XHRcdCAgICBmb250LXNpemU6IDQwcHg7XHJcblx0XHRcdFx0XHQgICAgY29sb3I6ICRibHVlO1xyXG5cdFx0XHRcdFx0ICAgICYuc2xpY2stcHJldntcclxuXHRcdFx0XHRcdCAgICBcdGxlZnQ6MFxyXG5cdFx0XHRcdFx0ICAgIH1cclxuXHRcdFx0XHRcdCAgICAmLnNsaWNrLW5leHR7XHJcblx0XHRcdFx0XHQgICAgXHRsZWZ0OjYwcHhcclxuXHRcdFx0XHRcdCAgICB9XHJcblx0XHRcdFx0XHQgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdCAgICBcdGJvdHRvbTotMzVweDtcclxuXHRcdFx0XHRcdCAgICB9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQuc2xpZGVyLW5ve1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDQwcHg7XHJcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiBFbE1lc3Npcmk7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiByZ2JhKCRibHVlLDAuNCk7XHJcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdFx0XHRcdFx0ICAgIHBhZGRpbmctcmlnaHQ6NDBweDtcclxuXHRcdFx0XHRcdCAgICBzcGFue1xyXG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAkYmx1ZTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcblx0XHRcdFx0XHRcdCAgICBmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdHBhZGRpbmc6NTBweCAwO1xyXG5cdFx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0XHQmLWluZm8sJi1nYWxsZXJ5e1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCYtaW5mb3tcclxuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMzBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKGV2ZW4pe1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjI1cHg7XHJcblx0XHRcdFx0XHRcdC5zaW5nbGVEaW5pbmctaW5mbyxoMXtcclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MjVweDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0JjpudGgtY2hpbGQob2RkKXtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjI1cHg7XHJcblx0XHRcdFx0XHRcdC5zaW5nbGVEaW5pbmctaW5mb3tcclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjI1cHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Lm5vRGluaW5ne1xyXG5cdFx0cGFkZGluZzogMTBweCAxNTBweCA1MHB4O1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdH1cclxuXHRcdHB7XHJcblx0XHRcdGNvbG9yOiRibHVlO1xyXG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG59XHJcbi5tYXJpbmF7XHJcblx0aDF7XHJcblx0XHRmb250LXNpemU6IDR2dztcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogMTB2dztcclxuXHRcdH1cclxuXHRcdHNwYW57XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQmX2ludHJve1xyXG5cdFx0cGFkZGluZzogNTBweCAxNTBweDtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRjb2x1bW4tZ2FwOiAzMHB4O1xyXG5cdFx0ZGl2LGgxe1xyXG5cdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogNTBweCAyNXB4IDI1cHg7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0ZGl2LGgxe1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHR9XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LmJlcnRoUmF0ZXN7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4O1xyXG5cdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0fVxyXG5cdFx0aW1ne1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdH1cclxuXHRcdGg1e1xyXG5cdFx0XHRjb2xvcjokZGFyay1ibHVlO1xyXG5cdFx0fVxyXG5cdFx0aHJ7XHJcblx0XHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdFx0Ym9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLDAuMSk7XHJcblx0XHR9XHJcblx0XHQucHJpY2Vze1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IDQ1JTtcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdGNvbHVtbi1nYXA6IDUwcHg7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNzBweDtcclxuXHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRjb2x1bW4tZ2FwOiAwO1xyXG5cdFx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjVweDtcclxuXHRcdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQud2F0ZXJUYXhpe1xyXG5cdFx0cGFkZGluZzogNTBweCAwIDUwcHggMTUwcHg7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0Y29sdW1uLWdhcDogNTBweDtcclxuXHRcdD4gZGl2e1xyXG5cdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0fVxyXG5cdFx0aW1ne1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHggMCAyNXB4IDI1cHg7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0Y29sdW1uLWdhcDogMDtcclxuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG5cdFx0XHQ+IGRpdntcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiNmaWVsZF8xMF80e1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogZW5kO1xyXG4gICAgLmdpbnB1dF9jb250YWluZXJ7XHJcbiAgICBcdHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59IiwiLmNvbnRhY3R7XHJcblx0Jl9jb250YWluZXJ7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4O1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0JjpudGgtY2hpbGQoZXZlbil7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdFx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAxNXB4IDA7XHJcblx0XHR9XHJcblx0XHQuZGVwdHtcclxuXHRcdFx0d2lkdGg6IDMwJTtcclxuXHRcdFx0aDR7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAzMHB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdGg2e1xyXG5cdFx0XHRcdGNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdFx0XHRcdGZvbnQtZmFtaWx5OiBicmFuZGluZztcclxuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0XHRtaW4taGVpZ2h0OiAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdHB7XHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdFx0XHRcdHNwYW57XHJcblx0XHRcdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0XHRcdFx0Ji5ldmVue1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdHNwYW57XHJcblx0XHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGR7XHJcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDM1JTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQmOmxhc3QtY2hpbGR7XHJcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDY1JTtcclxuXHRcdFx0XHRcdFx0XHR3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIucmVudGFse1xyXG5cdC5iYW5uZXJ7XHJcblx0XHQuYnRue1xyXG5cdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdH1cclxuXHRcdCYtdGV4dHtcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQmX2ludHJve1xyXG5cdFx0cGFkZGluZzogNTBweCAxNTBweDtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRjb2x1bW4tZ2FwOiAzMHB4O1xyXG5cdFx0ZGl2LGgxe1xyXG5cdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRkaXYsaDF7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdFx0ZGl2e1xyXG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMjVweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmX3Byb3BlcnRpZXN7XHJcblx0XHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0XHRwYWRkaW5nOiAxMjBweCAwcHg7XHJcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcclxuXHRcdCYuYmFja2dyb3VuZENvbG9ye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0fVxyXG5cdFx0aDF7XHJcblx0XHRcdHBhZGRpbmc6MCAxNTBweDtcclxuXHRcdFx0c3BhbntcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmNhcm91c2VsLXNsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWNvbnRlbnQgaDZ7XHJcblx0XHRcdGNvbG9yOiRkYXJrLWJsdWVcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6MjVweCAwO1xyXG5cdFx0XHRoMXtcclxuXHRcdFx0XHRwYWRkaW5nOjAgMjVweDtcclxuXHRcdFx0fVxyXG5cdFx0fVx0XHRcclxuXHR9XHJcblx0Jl9zZXJ2aWNlc3tcclxuXHRcdGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7XHJcblx0XHRwYWRkaW5nOjUwcHggMTUwcHg7XHJcblx0XHRoMntcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0Zm9udC1zaXplOiA2MHB4O1xyXG5cdFx0XHRsaW5lLWhlaWdodDogNDBweDtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRcdH1cclxuXHRcdCYtY29udGFpbmVye1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0aDZ7XHJcblx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogMzBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdFx0aDJ7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAzMnB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdCYtY29udGFpbmVye1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0XHRjb2x1bW4tZ2FwOiAxNXB4O1xyXG5cdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdHdpZHRoOiAzMCU7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmX2Jvb2tOb3d7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4O1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRoZWlnaHQ6IDYwdmg7XHJcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdGltZ3tcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ICAgIHdpZHRoOiAxMDAlO1xyXG5cdFx0ICAgIGxlZnQ6IDA7XHJcblx0XHQgICAgei1pbmRleDogMDtcclxuXHRcdCAgICB0b3A6IDA7XHJcblx0XHR9XHJcblx0XHRkaXZ7XHJcblx0XHRcdHotaW5kZXg6IDE7XHJcblx0XHR9XHJcblx0XHRoMntcclxuXHRcdFx0Zm9udC1zaXplOiA2MHB4O1xyXG5cdFx0XHRsaW5lLWhlaWdodDogNDBweDtcclxuXHRcdFx0Y29sb3I6I2ZmZjtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRcdH1cclxuXHRcdHB7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHRmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiAzNXB4O1xyXG5cdFx0XHRjb2xvcjojZmZmO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRoZWlnaHQ6IDUwdmg7XHJcblx0XHRcdGgye1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMzJweDtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdHB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfcGFnZXN7XHJcblx0XHRwYWRkaW5nLXRvcDogNTBweDtcclxuXHRcdHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG5cdH1cclxufVxyXG4ucmVudGFsV2lkZ2V0e1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHR0b3A6IDA7XHJcblx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTtcclxuXHRoZWlnaHQ6IDEwMHZoO1xyXG5cdG92ZXJmbG93LXk6IHNjcm9sbDtcclxuXHR6LWluZGV4OiAxMDAwMDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQ7XHJcbiAgICBsZWZ0OiAxMDAlO1xyXG4gICAgJi5vcGVue1xyXG4gICAgXHRsZWZ0OiAwO1xyXG4gICAgfVxyXG4gICAgLmNsb3Nle1xyXG4gICAgXHRmb250LXNpemU6IDMwcHg7XHJcblx0ICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHQgICAgZmxvYXQ6IHJpZ2h0O1xyXG5cdCAgICBwYWRkaW5nOiAzMHB4O1xyXG5cdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ICAgICY6YmVmb3Jle1xyXG5cdCAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdCAgICBjb250ZW50OiAnJztcclxuXHRcdCAgICB3aWR0aDogMXB4O1xyXG5cdFx0ICAgIGhlaWdodDogMzVweDtcclxuXHRcdCAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdFx0ICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuXHRcdCAgICBsZWZ0OjUwJTtcclxuXHQgICAgfVxyXG5cdCAgICAmOmFmdGVye1xyXG5cdCAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdCAgICBjb250ZW50OiAnJztcclxuXHRcdCAgICB3aWR0aDogMXB4O1xyXG5cdFx0ICAgIGhlaWdodDogMzVweDtcclxuXHRcdCAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdFx0ICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcblx0XHQgICAgbGVmdDo1MCU7XHJcblx0ICAgIH1cclxuICAgIH1cclxuICAgIC5sb2dve1xyXG4gICAgXHRwYWRkaW5nOiAzMHB4IDQwcHg7XHJcbiAgICBcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcbiAgICBcdFx0cGFkZGluZzozMHB4IDIwcHg7XHJcbiAgICBcdH1cclxuICAgIH1cclxuICAgIGgye1xyXG4gICAgXHRjb2xvcjogI2ZmZjtcclxuICAgIFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgJl9jb250YWluZXJ7XHJcbiAgICBcdHBhZGRpbmc6IDUwcHggODBweDtcclxuICAgIFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgIFx0XHRwYWRkaW5nOiAyNXB4O1xyXG4gICAgXHR9XHJcbiAgICBcdCNyZW50YWxGaWx0ZXJ7XHJcbiAgICBcdFx0ZGl2e1xyXG4gICAgXHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0Jjpub3QoLnJhbmdlLXNsaWRlcil7XHJcblx0XHRcdCAgICBcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdCAgICBcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4xKTtcclxuXHRcdFx0ICAgIFx0fVxyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHQgICAgJi5jaGVja2JveGVze1xyXG5cdFx0XHQgICAgXHRkaXZ7XHJcblx0XHRcdCAgICBcdFx0cHtcclxuXHRcdFx0ICAgIFx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0XHQgICAgXHRcdH1cclxuXHRcdFx0ICAgIFx0fVxyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHR9XHJcblx0XHRcdGxhYmVse1xyXG5cdFx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0XHR9XHJcblx0XHRcdGlucHV0LHNlbGVjdHtcclxuXHRcdFx0XHQmOm5vdChbdHlwZT0nY2hlY2tib3gnXSl7XHJcblx0XHRcdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0c2VsZWN0e1xyXG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc2VsZWN0LXdoaXRlLnBuZyk7XHJcblx0XHRcdH1cclxuXHRcdFx0LnJhbmdlLXNsaWRlcntcclxuXHRcdFx0XHRpbnB1dFt0eXBlPXJhbmdlXXtcclxuXHRcdFx0XHRcdCY6Oi13ZWJraXR7XHJcblx0XHRcdFx0XHRcdCYtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKCNmZmYsMC4zKTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQmLXNsaWRlci10aHVtYiB7XHJcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0Jjo6LW1ventcclxuXHRcdFx0XHRcdFx0Ji1yYW5nZS10cmFjayB7XHJcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgjZmZmLDAuMyk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0Ji1yYW5nZS10aHVtYiB7XHJcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0Jjo6LW1ze1xyXG5cdFx0XHRcdFx0XHQmLWZpbGwtbG93ZXIge1xyXG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0Ji1maWxsLXVwcGVyIHtcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdCYtdGh1bWIge1xyXG5cdFx0XHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG4gICAgXHR9XHJcbiAgICBcdFxyXG4gICAgfVxyXG59XHJcbiNyZW50YWxGaWx0ZXJ7XHJcblx0ZGl2e1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdCY6bm90KC5yYW5nZS1zbGlkZXIpe1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0ZGl2e1xyXG5cdFx0XHQmOm5vdCgucmFuZ2Utc2xpZGVyKXtcclxuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdCAgICBcdFx0Y29sb3I6ICRkYXJrLWJsdWU7XHJcblx0ICAgIFx0XHR3aWR0aDogMzAlO1xyXG5cdCAgICBcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHQgICAgXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRkYXJrLWJsdWUsMC4xKTtcclxuXHQgICAgXHRcdCY6bm90KC5ub1dyYXApe1xyXG5cdCAgICBcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0ICAgIFx0XHRcdGxhYmVse1xyXG5cdCAgICBcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdCAgICBcdFx0XHR9XHJcblx0ICAgIFx0XHR9XHJcblx0ICAgIFx0XHQmLm5vV3JhcHtcclxuXHQgICAgXHRcdFx0bGFiZWx7XHJcblx0ICAgIFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHQgICAgXHRcdFx0fVxyXG5cdCAgICBcdFx0fVxyXG5cdCAgICBcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHQgICAgXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0ICAgIFx0XHR9XHJcblx0ICAgIFx0fVxyXG5cdFx0fVxyXG5cdFx0Ji5jaGVja2JveGVze1xyXG5cdFx0XHRjb2x1bW4tZ2FwOiAzMHB4O1xyXG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRcdFx0bGFiZWx7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IGF1dG87XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0d2lkdGg6IDIwJTtcclxuXHRcdFx0XHRcdGNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdFx0XHRcdFx0aW5wdXR7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiA1MCU7XHJcblx0XHRcdFx0XHRcdGlucHV0e1xyXG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogNXB4O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Ji50eXBlc3tcclxuXHRcdFx0XHRcdHdpZHRoOiA2MCU7XHJcblx0XHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogNDAlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Ji5mb3JtQ1RBe1xyXG5cdFx0XHRhbGlnbi1pdGVtczogZW5kICFpbXBvcnRhbnQ7XHJcblx0XHRcdGNvbHVtbi1nYXA6IDMwcHg7XHJcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHR9XHJcblx0XHRcdGlucHV0e1xyXG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0XHR9XHJcblx0XHRcdC5idG57XHJcblx0XHRcdFx0Y29sb3I6I2ZmZjtcclxuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0bGFiZWx7XHJcblx0XHRjb2xvcjogJGRhcmstYmx1ZTtcclxuXHRcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAzNXB4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG5cdH1cclxuXHRpbnB1dCxzZWxlY3R7XHJcblx0XHQmOm5vdChbdHlwZT0nY2hlY2tib3gnXSl7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0XHRcdGNvbG9yOiAkZGFyay1ibHVlO1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0Jjpmb2N1c3tcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0JltuYW1lPSdkYXRlcmFuZ2UnXXtcclxuXHRcdFx0XHR3aWR0aDogODAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdHNlbGVjdHtcclxuXHRcdC8vYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zZWxlY3QtYmx1ZS5wbmcpO1xyXG5cdFx0b3B0aW9ue1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG5cdFx0XHQmOmhvdmVye1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5kYXRlcmFuZ2VwaWNrZXJ7XHJcblx0ei1pbmRleDogMTAwMDAwO1xyXG59XHJcbi5yYW5nZS1zbGlkZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBpbnB1dFt0eXBlPXJhbmdlXXtcclxuXHRcdGhlaWdodDogMXB4O1xyXG5cdFx0bWFyZ2luOiAxMHB4IDA7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHdpZHRoOiA1MCU7XHJcblx0XHRcdG1hcmdpbjogMjBweCAwO1xyXG5cdFx0fVxyXG5cdFx0Jjpmb2N1cyB7XHJcblx0XHRcdG91dGxpbmU6IG5vbmU7XHJcblx0XHR9XHJcblx0XHQmOjotd2Via2l0e1xyXG5cdFx0XHQmLXNsaWRlci1ydW5uYWJsZS10cmFjayB7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0aGVpZ2h0OiAxcHg7XHJcblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0XHRcdGFuaW1hdGU6IDAuMnM7XHJcblx0XHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRkYXJrLWJsdWUsMC4zKTtcclxuXHJcblx0XHRcdH1cclxuXHRcdFx0Ji1zbGlkZXItdGh1bWIge1xyXG5cdFx0XHRcdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuXHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cdFx0XHRcdGhlaWdodDogMTVweDtcclxuXHRcdFx0XHR3aWR0aDogMTVweDtcclxuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTtcclxuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogLTVweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Jjo6LW1ventcclxuXHRcdFx0Ji1yYW5nZS10cmFjayB7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0aGVpZ2h0OiAxcHg7XHJcblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0XHRcdGFuaW1hdGU6IDAuMnM7XHJcblx0XHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRkYXJrLWJsdWUsMC4zKTtcclxuXHRcdFx0fVxyXG5cdFx0XHQmLXJhbmdlLXRodW1iIHtcclxuXHRcdFx0XHQtbW96LWFwcGVhcmFuY2U6IG5vbmU7XHJcblx0XHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHRcdFx0XHRoZWlnaHQ6IDE1cHg7XHJcblx0XHRcdFx0d2lkdGg6IDE1cHg7XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7XHJcblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmOjotbXN7XHJcblx0XHRcdCYtdHJhY2sge1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdGhlaWdodDogMXB4O1xyXG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdFx0XHRhbmltYXRlOiAwLjJzO1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0Y29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHR9XHJcblx0XHRcdCYtZmlsbC1sb3dlciB7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTtcclxuXHRcdFx0XHRib3JkZXI6IDBweCBzb2xpZCAjMDAwMDAwO1xyXG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHRcdCYtZmlsbC11cHBlciB7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTtcclxuXHRcdFx0XHRib3JkZXI6IDBweCBzb2xpZCAjMDAwMDAwO1xyXG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHRcdCYtdGh1bWIge1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDFweDtcclxuXHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWJsdWU7XHJcblx0XHRcdFx0aGVpZ2h0OiAxOHB4O1xyXG5cdFx0XHRcdHdpZHRoOiAxOHB4O1xyXG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDI1cHg7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogJGRhcmstYmx1ZTtcclxuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LnJhbmdlVmFsdWVze1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAtMjBweDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW47XHJcblx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHRvcDotMTBweDtcclxuXHRcdH1cclxuXHRcdCYubWluUmFuZ2V7XHJcblx0XHRcdGxlZnQ6MDtcclxuXHRcdH1cclxuXHRcdCYubWF4UmFuZ2V7XHJcblx0XHRcdHJpZ2h0Oi05Ljc1cHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5yZW50UmVzdWx0e1xyXG5cdHBhZGRpbmctdG9wOiAxMDBweDtcclxuXHQuc2VhcmNoRm9ybXtcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0fVxyXG5cdFx0I3JlbnRhbEZpbHRlcntcclxuXHRcdFx0LmNoZWNrYm94ZXNGaW5hbHtcclxuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblx0XHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0XHRcdFx0Y29sdW1uLWdhcDogNDBweDtcclxuXHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xyXG5cdFx0XHRcdFx0d2lkdGg6IGF1dG87XHJcblx0XHRcdFx0XHRtaW4td2lkdGg6IDM1JTtcclxuXHRcdFx0XHRcdGgze1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyNXB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0dWx7XHJcblx0XHRcdFx0XHRcdGNvbHVtbi1jb3VudDogMztcclxuXHRcdFx0XHRcdFx0Y29sdW1uLWdhcDogNTBweDtcclxuXHRcdFx0XHRcdFx0bGl7XHJcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICMwMDA7XHJcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmLWNvbnRhaW5lcntcclxuXHRcdHBhZGRpbmc6IDUwcHggMHB4O1xyXG5cdFx0LmNhcm91c2VsLXNsaWRlcntcclxuXHRcdFx0LnNsaWNrLXNsaWRle1xyXG5cdFx0XHRcdC5zbGlkZS1jb250ZW50e1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0LWdyZXk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5yZW50YWxfZm9ybXtcclxuXHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4O1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XHJcblx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0YmFja2dyb3VuZDojZmZmO1xyXG5cdFx0fVxyXG5cdFx0aDF7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHR9XHRcclxuXHRcdFxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzoyNXB4O1xyXG5cdFx0XHQuZ2Zvcm1fZm9vdGVye1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Lm90aGVyUHJvamVjdHN7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4IDEwMHB4O1xyXG5cdFx0aDF7XHJcblx0XHRcdHBhZGRpbmctdG9wOiA1MHB4O1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDVweDtcclxuXHRcdH1cclxuXHRcdC5wcm9qZWN0c3tcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgXHRcdGNvbHVtbi1nYXA6IDQwcHg7XHJcblx0XHRcdC5wcm9wZXJ0eXtcclxuXHRcdFx0XHR3aWR0aDogMzIlO1xyXG5cdFx0XHRcdGgze1xyXG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdFx0aDF7XHJcblx0XHRcdFx0cGFkZGluZy10b3A6IDA7XHJcblx0XHRcdH1cclxuXHRcdFx0LnByb2plY3Rze1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHQucHJvcGVydHl7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdFx0XHRoM3tcclxuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMTVweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLnRoaW5nc1RvRG97XHJcblx0Jl9pbnRyb3tcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRpbWd7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0LnRleHR7XHJcblx0XHRcdHdpZHRoOiA4MCU7XHJcblx0XHRcdGNvbHVtbi1jb3VudDogMjtcclxuXHRcdFx0Y29sdW1uLWdhcDogMzVweDtcclxuXHRcdFx0bWFyZ2luOiAyMHB4IGF1dG87XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0XHQudGV4dHtcclxuXHRcdFx0XHRjb2x1bW4tY291bnQ6IDE7XHJcblx0XHRcdFx0Y29sdW1uLWdhcDogMHB4O1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5ub0Fycm93U2xpZGVye1xyXG5cdFx0cGFkZGluZy10b3A6IDUwcHg7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuXHRcdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbjtcclxuXHRcdCYuYmFja2dyb3VuZENvbG9ye1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiRsaWdodC1ncmV5O1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZy10b3A6IDI1cHg7XHJcblx0XHRcdHBhZGRpbmctYm90dG9tOiAyNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHQmX2JlYWNoZXN7XHJcblx0XHRwYWRkaW5nOjEwMHB4IDBweCA3MHB4IDE1MHB4O1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdGJhY2tncm91bmQ6ICRsaWdodC1ncmV5O1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XHJcblx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0YmFja2dyb3VuZDojZmZmO1xyXG5cdFx0fVxyXG5cdFx0aDF7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiA0dnc7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XHJcblx0XHRcdHNwYW57XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6NXZ3O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRkaXZ7XHJcblx0XHRcdGZsZXg6IDE7XHJcblx0XHRcdGltZ3tcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRwe1xyXG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6MTAwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6MjVweCAwcHggMjVweCAyNXB4O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHRcdFx0ZGl2e1xyXG5cdFx0XHRcdGZsZXg6IGluaXRpYWw7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0bWFyZ2luOiAxMHB4IDA7XHJcblx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdGgxe1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA2dnc7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDh2dztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9ldmVudHN7XHJcblx0XHRwYWRkaW5nLXRvcDogNTBweDtcclxuXHRcdHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG5cdFx0Ji1oZWFkZXJ7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuXHRcdFx0cGFkZGluZzogMCAxNTBweDtcclxuXHRcdFx0aDEsZGl2e1xyXG5cdFx0XHRcdHdpZHRoOiA1MCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmctdG9wOiAyNXB4O1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMjVweDtcclxuXHRcdFx0Ji1oZWFkZXJ7XHJcblx0XHRcdFx0cGFkZGluZzogMCAyNXB4O1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHRoMSxkaXZ7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5ldmVudHN7XHJcblx0Jl9pbnRyb3tcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRpbWd7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0LnRleHR7XHJcblx0XHRcdHdpZHRoOiA4MCU7XHJcblx0XHRcdGNvbHVtbi1jb3VudDogMjtcclxuXHRcdFx0Y29sdW1uLWdhcDogMzVweDtcclxuXHRcdFx0bWFyZ2luOiAyMHB4IGF1dG87XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0XHRtYXJnaW46IDI1cHg7XHJcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdC50ZXh0e1xyXG5cdFx0XHRcdGNvbHVtbi1jb3VudDogMTtcclxuXHRcdFx0XHRjb2x1bW4tZ2FwOiAwcHg7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdFx0aW1ne1xyXG5cdFx0XHRcdGhlaWdodDogNTB2aDtcclxuXHRcdFx0ICAgIHdpZHRoOiBhdXRvO1xyXG5cdFx0XHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNSUpO1xyXG5cdFx0XHQgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfaGlnaGxpZ2h0c3tcclxuXHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHRwYWRkaW5nOiA3MHB4IDBweDtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRcdH1cclxuXHRcdGgye1xyXG5cdFx0XHRwYWRkaW5nOiAwIDE1MHB4O1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzozMHB4IDA7XHJcblx0XHRcdGgye1xyXG5cdFx0XHRcdHBhZGRpbmc6MCAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuZXZlbnR7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuXHRcdFx0Ji1pbWFnZXtcclxuXHRcdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDUwcHg7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OjE1MHB4O1xyXG5cdFx0XHRcdHotaW5kZXg6IDE7XHJcblx0XHRcdFx0aW1ne1xyXG5cdFx0XHRcdFx0Ly90cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHQvL3RyYW5zZm9ybTogdHJhbnNsYXRlWSg1MHB4KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0Ji1jb250ZW50e1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7XHJcblx0XHRcdCAgICBwYWRkaW5nOiAxMDBweCAyMDBweDtcclxuXHRcdFx0ICAgIHBhZGRpbmctbGVmdDozMDBweDtcclxuXHRcdFx0ICAgIHdpZHRoOiBjYWxjKDUwJSArIDMwMHB4KTtcclxuXHRcdFx0ICAgIG1hcmdpbi1sZWZ0OiAtMjgwcHg7XHJcblx0XHRcdCAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgXHRcdFx0YWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0ICAgIGgyLHB7XHJcblx0XHRcdCAgICBcdGNvbG9yOiNmZmY7XHJcblx0XHRcdCAgICB9XHJcblx0XHRcdCAgICBoMntcclxuXHRcdFx0ICAgIFx0Zm9udC1zaXplOiA0MHB4O1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHQgICAgcCxhe1xyXG5cdFx0XHQgICAgXHRmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdCAgICB9XHJcblx0XHRcdCAgICBhe1xyXG5cdFx0XHQgICAgXHRiYWNrZ3JvdW5kOiNmZmY7XHJcblx0XHRcdCAgICBcdGJvcmRlci1yYWRpdXM6NTBweDtcclxuXHRcdFx0ICAgIFx0cGFkZGluZzo3cHggMjBweDtcclxuXHRcdFx0ICAgIFx0Y29sb3I6ICRibHVlO1xyXG5cdFx0XHQgICAgXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0ICAgIH1cclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHQmLWltYWdle1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRwYWRkaW5nOjA7XHJcblx0XHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSAgIWltcG9ydGFudDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Ji1jb250ZW50e1xyXG5cdFx0XHRcdFx0cGFkZGluZzoyNXB4IDMwcHggNDBweDtcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdFx0XHRoMntcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAzMHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxNXB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0YXtcclxuXHRcdFx0XHRcdFx0cGFkZGluZzogMTVweCAyMHB4O1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHRcdCY6bGFzdC1jaGlsZHtcclxuXHRcdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiA0MHB4O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuc2xpY2stYXJyb3d7XHJcblx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0XHQgICAgd2lkdGg6IDUwcHg7XHJcblx0XHQgICAgaGVpZ2h0OiA1MHB4O1xyXG5cdFx0ICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRcdCAgICBjb2xvcjogJGRhcmstYmx1ZTtcclxuXHRcdCAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHQgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcblx0XHQgICAgYm90dG9tOjEwMHB4O1xyXG5cdFx0ICAgIHotaW5kZXg6IDE7XHJcblx0XHQgICAgYm9yZGVyOjFweCBzb2xpZCAjZmZmO1xyXG5cdFx0ICAgICYuc2xpY2stbmV4dHtcclxuXHRcdCAgICBcdHJpZ2h0OiAyMDBweDtcclxuXHRcdCAgICB9XHJcblx0XHQgICAgJi5zbGljay1wcmV2e1xyXG5cdFx0XHRcdHJpZ2h0OiAzMDBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHQmOmhvdmVye1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0XHR9XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0d2lkdGg6IDUwcHg7XHJcblx0XHRcdFx0aGVpZ2h0OiA1MHB4O1xyXG5cdFx0XHRcdGJvdHRvbToyOHB4O1xyXG5cdFx0XHRcdCYuc2xpY2stbmV4dHtcclxuXHRcdFx0ICAgIFx0cmlnaHQ6IDIwcHg7XHJcblx0XHRcdCAgICB9XHJcblx0XHRcdCAgICAmLnNsaWNrLXByZXZ7XHJcblx0XHRcdFx0XHRyaWdodDogODBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9jYWxlbmRhcntcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRoMntcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdFx0aDJ7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmZpbHRlcntcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdFx0XHRjb2x1bW4tZ2FwOiAzMHB4O1xyXG5cdFx0XHQ+IGRpdntcclxuXHRcdFx0XHR3aWR0aDogMzIlO1xyXG5cdFx0XHRcdGJvcmRlcjoxcHggc29saWQgJGJsdWU7XHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDVweCAyMHB4O1xyXG5cdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdFx0JjphZnRlcntcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICRibHVlO1xyXG5cdFx0XHRcdFx0XHRyaWdodDogMDtcclxuXHRcdFx0XHRcdFx0Ym90dG9tOiAxM3B4O1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdGNvbnRlbnQ6ICdcXGU4MDcnO1xyXG5cdFx0XHRcdFx0XHRmb250LWZhbWlseTogXCJmb250ZWxsb1wiO1xyXG5cdFx0XHRcdFx0ICAgIGZvbnQtc2l6ZTogMzBweDtcclxuXHRcdFx0XHRcdCAgICBsaW5lLWhlaWdodDogMTBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aXtcclxuXHRcdFx0XHRcdGNvbG9yOiAkYmx1ZTtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMjNweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0c3BhbntcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDAgMTBweDtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0c2VsZWN0e1xyXG5cdFx0XHRcdFx0Ym9yZGVyOm5vbmU7XHJcblx0XHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdFx0XHRcdGNvbG9yOiAkYmx1ZTtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDAgMTBweDtcclxuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG5cdFx0XHRcdFx0ei1pbmRleDogMTtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiAzMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHQ+IGRpdntcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCYtY29udGFpbmVye1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblx0XHRcdGdhcDogMzVweDtcclxuXHRcdFx0bWFyZ2luOiA1MHB4IDA7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IDMxJTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG5cdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuY29udGVudHtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG5cdFx0XHRcdFx0cGFkZGluZzogNDBweCAyMHB4O1xyXG5cdFx0XHRcdFx0Y29sdW1uLWdhcDogMjBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aDMscCxhe1xyXG5cdFx0XHRcdFx0Y29sb3I6I2ZmZjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aDN7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAzMHB4O1xyXG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDMwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTVweDtcclxuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG5cdFx0XHRcdFx0Ji5tb250aHtcclxuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQuYnRue1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xyXG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMzBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdFx0XHQuY29udGVudHtcclxuXHRcdFx0XHRcdFx0cGFkZGluZzogMjBweCAxNXB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0aDN7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMzBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQuYnRue1xyXG5cdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdC5Ob0V2ZW50c3tcclxuXHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0Y29sb3I6JGJsdWU7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLnNpbmdsZUV2ZW50e1xyXG5cdCYtaW50cm97XHJcblx0XHRwYWRkaW5nOiA1MHB4IDAgNTBweCAxNTBweDtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHQuaW1hZ2V7XHJcblx0XHRcdHdpZHRoOiA2MCU7XHJcblx0XHRcdGltZ3tcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LnRleHR7XHJcblx0XHRcdHdpZHRoOiAzNSU7XHJcblx0XHRcdC5jYXRlZ29yeXtcclxuXHRcdFx0XHRjb2xvcjogJGJsdWU7XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdHB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAzNXB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdD4gZGl2e1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRcdG1hcmdpbjogMzBweCAwO1xyXG5cdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRpe1xyXG5cdFx0XHRcdFx0Y29sb3I6JGJsdWU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0XHRpe1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDI1cHg7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMTVweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGgye1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDMycHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjI1cHggMHB4O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHQmLnRleHR7XHJcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDI1cHg7XHJcblx0XHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDE1cHg7XHJcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRmbGV4OiBpbml0aWFsO1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0bWFyZ2luOiAxMHB4IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0aHJ7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRtYXJnaW46IDAgMjVweDtcclxuXHRcdH1cclxuXHR9XHJcblx0LmJvb2tOb3d7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRwe1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRjb2x1bW4tZ2FwOiAzMHB4O1xyXG5cdFx0XHRzcGFue1xyXG5cdFx0XHRcdCY6Zmlyc3QtY2hpbGR7XHJcblx0XHRcdFx0XHRtaW4td2lkdGg6IDE1MHB4O1xyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0bWluLXdpZHRoOiAxMjBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0aDJ7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAzMnB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5vdGhlckV2ZW50c3tcclxuXHRcdHBhZGRpbmctdG9wOiA1MHB4O1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDUwcHg7XHJcblx0XHRoMXtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiAxNTBweDtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmctdG9wOiAyNXB4O1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMjVweDtcclxuXHRcdFx0aDF7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLmRpbmVBcm91bmR7XHJcblx0Jl9pbnRyb3tcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRjb2x1bW4tY291bnQ6IDI7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0XHRjb2x1bW4tY291bnQ6IDE7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5maWx0ZXJ7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHRcdHNlbGVjdHtcclxuXHRcdFx0Ym9yZGVyOiBub25lO1xyXG5cdFx0ICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcclxuXHRcdCAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG5cdFx0ICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHQgICAgZm9udC1zaXplOiAyMHB4O1xyXG5cdFx0ICAgIGhlaWdodDogYXV0bztcclxuXHRcdCAgICB3aWR0aDogYXV0bztcclxuXHRcdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdCAgICBib3gtc2hhZG93OiBub25lO1xyXG5cdFx0ICAgICY6Zm9jdXN7XHJcblx0XHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmX2FsbERheXtcclxuXHRcdHBhZGRpbmctdG9wOiA1MHB4O1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDUwcHg7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nLXRvcDogMjVweDtcclxuXHRcdFx0cGFkZGluZy1ib3R0b206IDI1cHg7XHJcblx0XHR9XHJcblx0XHQmLWhlYWRlcntcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRwYWRkaW5nOiAwIDE1MHB4O1xyXG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHRwYWRkaW5nOiAwIDI1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0Lm5vQXJyb3dTbGlkZXJ7XHJcblx0XHRcdC5zbGlkZXJfY29udGVudHtcclxuXHRcdFx0XHRhbGlnbi1pdGVtczogYmFzZWxpbmU7XHJcblx0XHRcdH1cclxuXHRcdFx0LnNsaWRlcnNDb250YWluZXJ7XHJcblx0XHRcdFx0Lm1haW5TbGlkZXJ7XHJcblx0XHRcdFx0XHQuc2xpY2stc2xpZGV7XHJcblx0XHRcdFx0XHRcdGg1e1xyXG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMS44dnc7XHJcblx0XHRcdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogNnZ3O1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRwLGRpdntcclxuXHRcdFx0XHRcdFx0XHR3aWR0aDogYXV0bztcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQuc2xpZGVyX2NvbnRlbnR7XHJcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAxMHB4O1xyXG5cdFx0XHRcdFx0XHRcdC5zbGlkZXJfdGl0bGV7XHJcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdFx0XHRcdFx0LnNsaWRlcl90aXRsZXtcclxuXHRcdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdCYuc2xpY2stY3VycmVudHtcclxuXHRcdFx0XHRcdFx0XHQuc2xpZGVyX2NvbnRlbnR7XHJcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW46IDEwcHggMDtcclxuXHRcdFx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmX3NldE1lbnV7XHJcblx0XHRwYWRkaW5nLXRvcDogNTBweDtcclxuXHRcdHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG5cdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluO1xyXG5cdFx0Ji5iYWNrZ3JvdW5kQ29sb3J7XHJcblx0XHRcdGJhY2tncm91bmQ6JGxpZ2h0LWdyZXk7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmctdG9wOiAyNXB4O1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMjVweDtcclxuXHRcdFx0LmNhcm91c2VsLXNsaWRlciAuc2xpY2stYXJyb3d7XHJcblx0XHRcdFx0dG9wOiAtMTIwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdGg0e1xyXG5cdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdH1cclxuXHRcdCYtaGVhZGVye1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdHBhZGRpbmc6IDAgMTAwcHggMCAxNTBweDtcclxuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDAgMjVweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Lm5vdGV7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZTtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0XHR9XHJcblx0XHQuc2NoZWR1bGV7XHJcblx0XHRcdHB7XHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuXHRcdFx0XHRjb2x1bW4tZ2FwOiA0MHB4O1xyXG5cdFx0XHRcdCY6bm90KDpsYXN0LWNoaWxkKXtcclxuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCMwMDAsMC4xKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0c3BhbntcclxuXHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGR7XHJcblx0XHRcdFx0XHRcdG1pbi13aWR0aDogMTEwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuaW1hZ2V7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0LmxvZ297XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdHRvcDowO1xyXG5cdFx0XHRcdGxlZnQ6MDtcclxuXHRcdFx0XHR3aWR0aDogMzAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdH1cclxuXHQmX3Rlcm1ze1xyXG5cdFx0cGFkZGluZzogNTBweCAxNTBweDtcclxuXHRcdGJhY2tncm91bmQ6ICRsaWdodC1ncmV5O1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XHJcblx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0YmFja2dyb3VuZDojZmZmO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdH1cclxuXHR9XHJcblx0Jl9leHBsb3Jle1xyXG5cdFx0cGFkZGluZzogNTBweCAxNTBweDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0XHR9XHJcblx0XHQmLWNvbnRhaW5lcntcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHR3aWR0aDogMzAlO1xyXG5cdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRoM3tcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0XHRcdFx0XHRoM3tcclxuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyNnB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQubm9EaW5pbmd7XHJcblx0XHRwYWRkaW5nOiAxMHB4IDE1MHB4IDUwcHg7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0fVxyXG5cdFx0cHtcclxuXHRcdFx0Y29sb3I6JGJsdWU7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIuYXF1YXBhcmt7XHJcblx0Jl9pbnRyb3tcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0Y29sdW1uLWdhcDogMzBweDtcclxuXHRcdGRpdixoMXtcclxuXHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDUwcHggMjVweCAyNXB4O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGRpdixoMXtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfZGV0YWlsc3tcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRpbWd7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdFx0aW1ne1xyXG5cdFx0XHRcdGhlaWdodDogNTB2aDtcclxuXHRcdFx0ICAgIHdpZHRoOiBhdXRvO1xyXG5cdFx0XHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNSUpO1xyXG5cdFx0XHQgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdCYtY29udGFpbmVye1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdHBhZGRpbmctdG9wOiA1MHB4O1xyXG5cdFx0XHQ+IGRpdiwgaDJ7XHJcblx0XHRcdFx0d2lkdGg6IDMyJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHQ+IGRpdiwgaDJ7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0LnNjaGVkdWxle1xyXG5cdFx0XHRcdGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMzBweDtcclxuXHRcdFx0XHQudGl0bGV7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0XHRcdGNvbG9yOiAkYmx1ZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdCY6bm90KC50aXRsZSl7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCMwMDAsMC4xKTtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdFx0Y29sdW1uLWdhcDogMzBweDtcclxuXHRcdFx0XHRcdFx0c3BhbntcclxuXHRcdFx0XHRcdFx0XHQmOmZpcnN0LWNoaWxke1xyXG5cdFx0XHRcdFx0XHRcdFx0bWluLXdpZHRoOiAxODBweDtcclxuXHRcdFx0XHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdG1heC13aWR0aDogMTcwcHg7XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdCY6bGFzdC1jaGlsZHtcclxuXHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxNXB4O1xyXG5cdFx0XHRcdFx0XHRcdHNwYW57XHJcblx0XHRcdFx0XHRcdFx0XHQmOmxhc3QtY2hpbGR7XHJcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0Ym9yZGVyLWxlZnQ6IG5vbmU7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XHJcblx0XHRcdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdFx0XHRcdFx0cGFkZGluZy10b3A6IDMwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfZmVlc3tcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0fVxyXG5cdFx0LmZlZXNHcmlke1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdHB7XHJcblx0XHRcdFx0cGFkZGluZzowIDE1cHggMTBweDtcclxuXHRcdFx0XHRmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRcdFx0c3BhbntcclxuXHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGR7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCY6bnRoLWNoaWxkKG9kZCl7XHJcblx0XHRcdFx0XHRib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTVweDtcclxuXHRcdFx0XHRcdGJvcmRlci1yaWdodDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDAgMTBweDtcclxuXHRcdFx0XHRcdHNwYW57XHJcblx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfaGlnaGxpZ2h0e1xyXG5cdFx0ZGlzcGxheTogZ3JpZDtcclxuXHRcdGdhcDogMjBweDtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4O1xyXG5cdFx0YmFja2dyb3VuZDojZmZmO1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2UtaW47XHJcblx0XHQmLmJhY2tncm91bmRDb2xvcntcclxuXHRcdFx0YmFja2dyb3VuZDokbGlnaHQtZ3JleTtcclxuXHRcdH1cclxuXHRcdGRpdntcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRhbGlnbi1jb250ZW50OnN0YXJ0O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0XHRwYWRkaW5nOjIwcHggMDtcclxuXHRcdFx0aDZ7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0fVxyXG5cdFx0XHRpbWd7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuXHRcdH1cclxuXHR9XHJcblx0Jl9nYWxsZXJ5e1xyXG5cdFx0cGFkZGluZy10b3A6IDUwcHg7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmctdG9wOiAyNXB4O1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMjVweDtcclxuXHRcdH1cclxuXHR9XHJcblx0Jl9leHBsb3Jle1xyXG5cdFx0cGFkZGluZzogNTBweCAxNTBweDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0XHR9XHJcblx0XHQmLWNvbnRhaW5lcntcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHR3aWR0aDogMzAlO1xyXG5cdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRoM3tcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0XHRcdFx0XHRoM3tcclxuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyNnB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5mYXF7XHJcblx0cGFkZGluZzogNTBweCAxNTBweDtcclxuXHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0cGFkZGluZzogMjVweDtcclxuXHR9XHJcblx0aDF7XHJcblx0XHRmb250LXNpemU6IDQwcHg7XHJcblx0XHRsaW5lLWhlaWdodDogMzVweDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiAyNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHQmX2hlYWRlcntcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHRcclxuXHRcdHNlbGVjdHtcclxuXHRcdFx0Ym9yZGVyOm5vbmU7XHJcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcblx0XHRcdHdpZHRoOiBmaXQtY29udGVudDtcclxuXHRcdFx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdFx0XHRjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgXHRcdGhlaWdodDogYXV0bztcclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0c2VsZWN0e1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMTVweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmX2NvbnRhaW5lcntcclxuXHRcdHBhZGRpbmc6IDUwcHggMDtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHggMDtcclxuXHRcdH1cclxuXHRcdC5jYXRlZ29yeXtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0XHRcdGNvbG9yOiRibHVlO1xyXG5cdFx0fVxyXG5cdFx0LmFjY29yZGlvbntcclxuXHRcdFx0Lypjb2x1bW4tY291bnQ6IDI7XHJcbiAgICBcdFx0Y29sdW1uLWdhcDogNTBweDsqL1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdCAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHQgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0ICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHQvKmNvbHVtbi1jb3VudDogMTtcclxuICAgIFx0XHRcdGNvbHVtbi1nYXA6IDBweDsqL1xyXG4gICAgXHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHQmLWl0ZW17XHJcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDA7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRcdFx0XHR3aWR0aDogNDclO1xyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5hY2NvcmRpb24tdGl0bGV7XHJcblx0XHRcdFx0XHRib3JkZXI6bm9uZTtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMjRweDtcclxuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiBFbE1lc3Npcmk7XHJcblx0XHRcdFx0XHRjb2xvcjogIzAwMDtcclxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcclxuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcblx0XHRcdFx0XHQmOmhvdmVye1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdFx0Y29sb3I6JGJsdWU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmOmZvY3Vze1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCY6YmVmb3Jle1xyXG5cdFx0XHRcdFx0XHRyaWdodDogMDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LmFjY29yZGlvbi1jb250ZW50e1xyXG5cdFx0XHRcdFx0Ym9yZGVyOiBub25lO1xyXG5cdFx0XHRcdFx0cGFkZGluZzogMTVweCAyMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmLmlzLWFjdGl2ZXtcclxuXHRcdFx0XHRcdC5hY2NvcmRpb24tdGl0bGV7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiRibHVlO1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIuc2l0ZW1hcHtcclxuXHRwYWRkaW5nLXRvcDoxMDBweDtcclxuXHRoMXtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHR9XHJcblx0Jl9jb250YWluZXJ7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4O1xyXG5cdFx0Y29sdW1uLWNvdW50OiA0O1xyXG4gIFx0XHRjb2x1bW4tZ2FwOiAzMHB4O1xyXG4gIFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG4gIFx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcbiAgXHRcdFx0Y29sdW1uLWNvdW50OiAxO1xyXG4gIFx0XHRcdGNvbHVtbi1nYXA6IDA7XHJcbiAgXHRcdH1cclxuICBcdFx0dWx7XHJcblx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0bGl7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xyXG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdFx0XHRcdCY6YmVmb3Jle1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRibHVlO1xyXG5cdFx0XHRcdFx0bGVmdDogNXB4O1xyXG5cdFx0XHRcdFx0dG9wOiAxMHB4O1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0Y29udGVudDogJ1xcZTgwMCc7XHJcblx0XHRcdFx0XHRmb250LWZhbWlseTogXCJmb250ZWxsb1wiO1xyXG5cdFx0XHRcdCAgICBsaW5lLWhlaWdodDogMTBweDtcclxuXHRcdFx0XHQgICAgZm9udC1zaXplOiAyMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRhe1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQmLWVsZW1lbnR7XHJcblx0XHRkaXNwbGF5OiBncmlkO1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgYXV0bztcclxuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRicmVhay1pbnNpZGU6IGF2b2lkO1xyXG5cdH1cclxuXHJcbn0iLCIuY2FtcGFpZ257XHJcblx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdGgye1xyXG5cdFx0XHRmb250LXNpemU6IDMwcHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfaW50cm97XHJcblx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4O1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGFsaWduLWl0ZW1zOmZsZXgtZW5kO1xyXG5cdFx0ZGl2e1xyXG5cdFx0XHRmbGV4OiAxO1x0XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHRmbGV4OiBpbml0aWFsO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfa2V5VVNQe1xyXG5cdFx0cGFkZGluZzogNTBweCAxNTBweDtcclxuXHRcdCYtY29udGFpbmVye1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHR3aWR0aDogMzAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuYnRue1xyXG5cdFx0XHRtYXJnaW46IGF1dG87XHJcbiAgICBcdFx0ZGlzcGxheTogdGFibGU7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG5cdFx0XHQmLWNvbnRhaW5lcntcclxuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0d2lkdGg6IDgwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9mZWF0dXJlc3tcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xyXG5cdFx0aDIsaDZ7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRcdFx0Y29sb3I6I2ZmZjtcclxuXHRcdH1cclxuXHRcdCYtY29udGFpbmVye1xyXG5cdFx0XHRkaXNwbGF5OiBncmlkO1xyXG5cdFx0XHRnYXA6IDIwcHg7XHJcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdFx0aW1ne1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0XHRcdCYtY29udGFpbmVye1xyXG5cdFx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9icm9jaHVyZXtcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRoZWlnaHQ6IDgwdmg7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcclxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHQmOmJlZm9yZXtcclxuXHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdGhlaWdodDogMTAwJTtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmx1ZSwgMC42MCk7XHJcblx0XHRcdHotaW5kZXg6IDE7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdH1cclxuXHRcdD4gZGl2e1xyXG5cdFx0XHR6LWluZGV4OiAxMDtcclxuXHRcdFx0d2lkdGg6IDYwJTtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRoMntcclxuXHRcdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0XHRmb250LXNpemU6IDYwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0LmRlc2NyaXB0aW9ue1xyXG5cdFx0XHRcdHAsbGksc3BhbixkaXZ7XHJcblx0XHRcdFx0XHRjb2xvcjojZmZmO1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHR1bHtcclxuXHRcdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBncmlkO1xyXG5cdFx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcclxuXHRcdFx0XHRcdGxpe1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRcdFx0XHRcdFx0JjpiZWZvcmV7XHJcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdFx0XHRcdFx0bGVmdDogNXB4O1xyXG5cdFx0XHRcdFx0XHRcdHRvcDogOHB4O1xyXG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdFx0XHRjb250ZW50OiAnXFxlODAwJztcclxuXHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTogXCJmb250ZWxsb1wiO1xyXG5cdFx0XHRcdFx0XHQgICAgbGluZS1oZWlnaHQ6IDEwcHg7XHJcblx0XHRcdFx0XHRcdCAgICBmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0LmJyb2NodXJlRm9ybXtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdFx0XHRcdHBhZGRpbmc6NDVweCAyMHB4O1xyXG5cdFx0XHRcdC5nZm9ybV9oZWFkaW5ne1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5icm9jaHVyZUltZ3tcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRib3R0b206IC0yMCU7XHJcblx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0XHR6LWluZGV4OiAxO1xyXG5cdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzogMjVweDtcclxuXHRcdFx0aGVpZ2h0OiAxMDB2aDtcclxuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0aDJ7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDMwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdC5icm9jaHVyZUltZ3tcclxuXHRcdFx0XHRib3R0b206IC0xMCU7XHJcblx0XHRcdFx0d2lkdGg6IDkwJTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0YmFja2dyb3VuZC1hdHRhY2htZW50OmZpeGVkO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQmX2Zsb29yUGxhbntcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRoMntcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0fVxyXG5cdFx0Ji1jb250YWluZXJ7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0ZmxleDoxO1xyXG5cdFx0XHR9XHJcblx0XHRcdC5pbWFnZXN7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdHdpZHRoOiA1MCU7XHJcblx0XHRcdFx0XHQmOm5vdCg6Zmlyc3QtY2hpbGQpe1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQuYWNjb3JkaW9uLWl0ZW17XHJcblx0XHRcdFx0cGFkZGluZzogMjBweCAxNnB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdC5hY2NvcmRpb24tdGl0bGV7XHJcblx0XHRcdFx0Ym9yZGVyOm5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0XHRjb2xvcjojMDAwO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdFx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0XHQmOmJlZm9yZXtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCY6aG92ZXJ7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdC5hY2NvcmRpb24tY29udGVudHtcclxuXHRcdFx0XHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0XHRmb250LXNpemU6IDE4cHg7XHJcblx0XHRcdFx0c3BhbntcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0XHRcdCYtY29udGFpbmVye1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuICAgIFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuICAgIFx0XHRcdC5pbWFnZXN7XHJcbiAgICBcdFx0XHRcdGltZ3tcclxuICAgIFx0XHRcdFx0XHR3aWR0aDogOTAlO1xyXG4gICAgXHRcdFx0XHR9XHJcbiAgICBcdFx0XHR9XHJcbiAgICBcdFx0XHQuYWNjb3JkaW9uLXRpdGxle1xyXG4gICAgXHRcdFx0XHRmb250LXNpemU6IDE2cHg7XHJcbiAgICBcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9sb2NhdGlvbntcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHQuYWNmLW1hcCB7XHJcblx0XHQgICAgd2lkdGg6IDEwMCU7XHJcblx0XHQgICAgaGVpZ2h0OiA1MDBweDtcclxuXHRcdH1cclxuXHRcdCYtZGV0YWlsc3tcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdG1hcmdpbi10b3A6IDQwcHg7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHRmbGV4OiAxO1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHQmOm5vdCg6bGFzdC1jaGlsZCl7XHJcblx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkbGlnaHQtZ3JleTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0XHRcdCYtZGV0YWlsc3tcclxuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0ZmxleDppbml0aWFsO1xyXG5cdFx0XHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDVweDtcclxuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKGV2ZW4pe1xyXG5cdFx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IG5vbmU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfZ2FsbGVyeXtcclxuXHRcdHBhZGRpbmc6IDUwcHggMHB4O1xyXG5cdFx0aDJ7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdH1cclxuXHRcdC5zbGljay1zbGlkZXtcclxuXHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0cGFkZGluZzogMCA1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5pbWFnZXtcclxuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdFx0aW1ne1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbjtcclxuXHRcdFx0XHQmOmhvdmVye1xyXG5cdFx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9kZXZlbG9wZXJ7XHJcblx0XHRwYWRkaW5nOjEwMHB4IDBweCAwcHggMTUwcHg7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0aDF7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiA0dnc7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XHJcblx0XHRcdHNwYW57XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6NXZ3O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRkaXZ7XHJcblx0XHRcdGZsZXg6IDE7XHJcblx0XHRcdGltZ3tcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRwe1xyXG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6MTAwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6MjVweCAwcHggMjVweCAyNXB4O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHRcdFx0ZGl2e1xyXG5cdFx0XHRcdGZsZXg6IGluaXRpYWw7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0bWFyZ2luOiAxMHB4IDA7XHJcblx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdGgxe1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA2dnc7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0XHRzcGFue1xyXG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDh2dztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0fVxyXG5cdCZfaW52ZXN0T21hbntcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHQmLWNvbnRhaW5lcntcclxuXHRcdFx0ZGlzcGxheTogZ3JpZDtcclxuXHRcdFx0Z2FwOiAyMHB4O1xyXG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xyXG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdFx0XHRcdCY6YmVmb3Jle1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRibHVlO1xyXG5cdFx0XHRcdFx0bGVmdDogNXB4O1xyXG5cdFx0XHRcdFx0dG9wOiA4cHg7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRjb250ZW50OiAnXFxlODAwJztcclxuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiBcImZvbnRlbGxvXCI7XHJcblx0XHRcdFx0ICAgIGxpbmUtaGVpZ2h0OiAxMHB4O1xyXG5cdFx0XHRcdCAgICBmb250LXNpemU6IDIwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOjI1cHg7XHJcblx0XHRcdCYtY29udGFpbmVye1xyXG5cdFx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9jb250YWN0e1xyXG5cdFx0cGFkZGluZzogNTBweCAxNTBweDtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JleTtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHQ+IGRpdntcclxuXHRcdFx0ZmxleDogMTtcclxuXHRcdFx0JjpsYXN0LWNoaWxke1xyXG5cdFx0XHRcdHBhZGRpbmc6IDEwcHg7XHJcblx0XHRcdFx0Ym94LXNoYWRvdzogMCAwIDVweCAwcHggI2UxZTFlMTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0cGFkZGluZzoyNXB4O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLnN1c3RhaW5hYmlsaXR5e1xyXG5cdCZfaW50cm97XHJcblx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4O1xyXG5cdCAgICBkaXNwbGF5OiBmbGV4O1xyXG5cdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0ICAgIGNvbHVtbi1nYXA6IDMwcHg7XHJcblx0ICAgIGRpdiwgaDEge1xyXG5cdFx0ICAgIHdpZHRoOiA1MCU7XHJcblx0XHR9XHJcblx0XHRoMXtcclxuXHRcdFx0Zm9udC1zaXplOiA0dnc7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxMHZ3O1xyXG5cdFx0XHR9XHJcblx0XHRcdHNwYW57XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDUwcHggMjVweCAyNXB4O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGRpdixoMXtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdFxyXG5cdCZfYm9keXtcclxuXHRcdHBhZGRpbmc6IDUwcHggMTUwcHg7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nOiA1MHB4IDI1cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdCZfcm93e1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG5cdFx0JjpudGgtY2hpbGQoZXZlbil7XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuXHRcdH1cclxuXHRcdGRpdntcclxuXHRcdFx0d2lkdGg6IDQ4JTtcclxuXHRcdH1cclxuXHRcdCYtaWNvbntcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRpbWd7XHJcblx0XHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdFx0Ji1pY29ue1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Jl9ncmVlbmVye1xyXG5cdFx0cGFkZGluZzogNTBweCAwcHggNTBweCAxNTBweDtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0ZGl2e1xyXG5cdFx0XHR3aWR0aDogNDglO1xyXG5cdFx0XHRpbWd7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0ICAgICAgICBwYWRkaW5nOiA1MHB4IDA7XHJcblx0ICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcblx0ICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblx0ICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcblx0ICAgICAgICBkaXZ7XHJcblx0ICAgICAgICBcdHdpZHRoOiAxMDAlO1xyXG5cdCAgICAgICAgfVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5ydGx7XHJcblx0dWwge1xyXG5cdCAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XHJcblx0ICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG5cdH1cclxuXHQucGhvbmV7XHJcblx0XHRhe1xyXG5cdFx0XHRkaXJlY3Rpb246IGx0ciAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdH1cclxuXHQubWVudUljb257XHJcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XHJcblx0XHRtYXJnaW4tbGVmdDogaW5pdGlhbDtcclxuXHR9XHJcblx0Lmhhcy1wb3NpdGlvbi1yaWdodCwuaGFzLXBvc2l0aW9uLWxlZnR7XHJcblx0XHQubWVudUljb257XHJcblx0XHRcdHNwYW46bnRoLW9mLXR5cGUoMyl7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLThweCwgLTlweCkgcm90YXRleig0NWRlZyk7XHJcblx0XHRcdFx0b3BhY2l0eTogMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQuYm9va05vdy13aWRnZXQsIC5lbnF1aXJlLXdpZGdldCwgLmNvbnRhY3Qtd2lkZ2V0e1xyXG5cdFx0bGVmdDogLTQwdnc7XHJcblx0XHRyaWdodDogaW5pdGlhbDtcclxuXHRcdCYuYWN0aXZle1xyXG5cdFx0XHRsZWZ0OjA7XHJcblx0XHRcdHJpZ2h0OmluaXRpYWw7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRsZWZ0OiAtMTAwdnc7XHJcblx0XHR9XHJcblx0fVxyXG5cdC50b3AtYmFyLXJpZ2h0e1xyXG5cdFx0LndwbWwtbHMtbGVnYWN5LWRyb3Bkb3due1xyXG5cdFx0XHRhe1xyXG5cdFx0XHRcdHBhZGRpbmc6IDVweCAwcHggNXB4IDIycHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LmN0YS1tb2JpbGV7XHJcblx0XHRkaXJlY3Rpb246bHRyO1xyXG5cdH1cclxuXHQuYmFubmVye1xyXG5cdFx0Ji5zdWJwYWdle1xyXG5cdFx0XHQuYmFubmVyLXRleHR7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiA2dnc7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LnN1YnBhZ2VCYW5uZXJ7XHJcblx0XHQuYmFubmVye1xyXG5cdFx0XHQuYmFubmVyLXRleHR7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiA2dnc7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LnNsaWRlckJhbm5lcntcclxuXHRcdC5iYW5uZXJTbGlkZXtcclxuXHRcdFx0Ji10ZXh0e1xyXG5cdFx0XHRcdGgxe1xyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQubm9BcnJvd1NsaWRlcntcclxuXHRcdHBhZGRpbmctcmlnaHQ6IDE1MHB4O1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAwcHg7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRwYWRkaW5nLXJpZ2h0OjE1cHg7XHJcblx0XHRcdHBhZGRpbmctbGVmdDowcHg7XHJcblx0XHRcdC5zbGlkZXItbm97XHJcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5zbGlkZXJzQ29udGFpbmVye1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwJSk7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Ji1idG5ze1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuXHRcdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdFx0ICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHQgICAgXHRkaXNwbGF5OiBub25lO1xyXG5cdFx0ICAgIH1cclxuXHRcdH1cclxuXHR9XHJcblx0LmNhcm91c2VsLXNsaWRlcntcclxuXHRcdC5zbGljay1zbGlkZXtcclxuXHRcdFx0LnNsaWRlLWNvbnRlbnR7XHJcblx0XHRcdFx0YXtcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAzMHB4O1xyXG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuc2xpY2stbGlzdHtcclxuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNTBweCk7XHJcblx0XHR9XHJcblx0XHQuc2xpY2stYXJyb3d7XHJcblx0XHRcdCYuc2xpY2stcHJldntcclxuXHRcdFx0XHRsZWZ0OiAxMDBweDtcclxuXHRcdFx0XHRyaWdodDogaW5pdGlhbDtcclxuXHRcdFx0fVxyXG5cdFx0XHQmLnNsaWNrLW5leHR7XHJcblx0XHRcdFx0bGVmdDogMjAwcHg7XHJcblx0XHRcdFx0cmlnaHQ6IGluaXRpYWw7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdC5zbGljay1saXN0e1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xyXG5cdFx0XHQgICAgcGFkZGluZzogMCAwJSAwIDIwJSAhaW1wb3J0YW50O1xyXG5cdFx0XHR9XHJcblx0XHRcdC5zbGljay1hcnJvd3tcclxuXHRcdFx0XHQmLnNsaWNrLXByZXZ7XHJcblx0XHRcdFx0XHRsZWZ0OiAxMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmLnNsaWNrLW5leHR7XHJcblx0XHRcdFx0XHRsZWZ0OiA3MHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQuZm9vdGVyLWdyaWR7XHJcblx0XHQud2lkZ2V0e1xyXG5cdFx0XHRoMixoM3tcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogMzBweDtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRwe1xyXG5cdFx0XHRcdGF7XHJcblx0XHRcdFx0XHRkaXJlY3Rpb246bHRyO1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5ob21lUGFnZXtcclxuXHRcdCZfaGF3YW5hLCZfZXZlbnRze1xyXG5cdFx0XHQuc2xpZGVyc0NvbnRhaW5lcntcclxuXHRcdFx0XHQubWFpblNsaWRlcntcclxuXHRcdFx0XHRcdC5zbGljay1zbGlkZXtcclxuXHRcdFx0XHRcdFx0Ji5zbGljay1jdXJyZW50e1xyXG5cdFx0XHRcdFx0XHRcdC5zbGlkZXJfdGl0bGV7XHJcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwcHg7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmX29mZmVyc3tcclxuXHRcdFx0Lm9mZmVyLWltYWdle1xyXG5cdFx0XHQgICAgcGFkZGluZy1yaWdodDogMTUwcHg7XHJcblx0XHRcdCAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0Lm9mZmVyLWNvbnRlbnR7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAtMjgwcHg7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyMDBweDtcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAzMDBweDtcdFx0XHRcdFxyXG5cdFx0XHR9XHJcblx0XHRcdC5zbGljay1hcnJvd3tcclxuXHRcdFx0XHQmLnNsaWNrLXByZXZ7XHJcblx0XHRcdFx0XHRyaWdodDogaW5pdGlhbDtcclxuICAgIFx0XHRcdFx0bGVmdDogMjAwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCYuc2xpY2stbmV4dHtcclxuXHRcdFx0XHRcdHJpZ2h0OiBpbml0aWFsO1xyXG4gICAgXHRcdFx0XHRsZWZ0OiAzMDBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCZfcmVhbEVzdGF0ZXtcclxuXHRcdFx0LnByb3BlcnR5LWNvbnRlbnR7XHJcblx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0JjpmaXJzdC1jaGlsZHtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMHB4O1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5jdGF7XHJcblx0XHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCZfcmVudGFse1xyXG5cdFx0XHRwYWRkaW5nOiAxMDBweCAxNTBweCA3MHB4IDBweDtcclxuXHRcdFx0ZGl2e1xyXG5cdFx0XHRcdHAge1xyXG5cdFx0XHQgICAgXHRwYWRkaW5nLXJpZ2h0OiAwcHg7XHJcblx0XHRcdCAgICBcdHBhZGRpbmctbGVmdDogMTAwcHg7XHJcblx0XHRcdCAgICB9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCZfZXZlbnRze1xyXG5cdFx0XHRoMSB7XHJcblx0XHQgICAgXHRwYWRkaW5nLXJpZ2h0OiAxNTBweDtcclxuXHRcdCAgICBcdHBhZGRpbmctbGVmdDogMHB4O1xyXG5cdFx0ICAgIH1cclxuXHRcdH1cclxuXHR9XHJcblx0LmFib3V0e1xyXG5cdFx0Jl9sb2NhdGlvbntcclxuXHRcdFx0aW1ne1xyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUlKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0Jl9zdG9yeXtcclxuXHRcdFx0cGFkZGluZzogMTAwcHggMTUwcHggNzBweCAwcHg7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0cGFkZGluZzogMjVweCAyNXB4IDI1cHggMHB4O1x0XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCZfdGVzdGltb25pYWxze1xyXG5cdFx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4IDUwcHggMHB4O1xyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDI1cHg7XHRcclxuXHRcdFx0fVxyXG5cdFx0XHQuc2xpY2stbGlzdHtcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuXHRcdFx0fVxyXG5cdFx0XHQuc2xpY2stYXJyb3d7XHJcblx0XHRcdFx0Ji5zbGljay1uZXh0e1xyXG5cdFx0XHRcdFx0bGVmdDogMTUwcHg7XHJcblx0XHRcdFx0XHRyaWdodDogaW5pdGlhbDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Ji5zbGljay1wcmV2e1xyXG5cdFx0XHRcdFx0bGVmdDogNzBweDtcclxuXHRcdFx0XHRcdHJpZ2h0OiBpbml0aWFsO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Jl9tYXN0ZXJwbGFuLCZfdmlzaW9ue1xyXG5cdFx0XHRoMXtcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxNTBweDtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDBweDtcclxuXHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMjVweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCZfdmlzaW9ue1xyXG5cdFx0XHQmLWNvbnRlbnR7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDAlO1xyXG4gICAgXHRcdFx0cGFkZGluZy1sZWZ0OiA1MHB4O1xyXG4gICAgXHRcdFx0bWFyZ2luLXJpZ2h0OiAtMTAlO1xyXG4gICAgXHRcdFx0cGFkZGluZy1yaWdodDogMTUlO1xyXG4gICAgXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuICAgIFx0XHRcdFx0bWFyZ2luOiAwO1xyXG4gICAgXHRcdFx0XHRwYWRkaW5nOiAyNXB4O1xyXG4gICAgXHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmX211cml5YXtcclxuXHRcdFx0cGFkZGluZzogNTBweCAwcHggNTBweCAxNTBweDtcclxuXHRcdH1cclxuXHRcdCZfaGF3YW5he1xyXG5cdFx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4IDUwcHggMHB4O1xyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDI1cHggMjVweCAyNXB4IDBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Jl9leHBsb3Jle1xyXG5cdFx0XHQmLWNvbnRhaW5lcntcclxuXHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHRoM3tcclxuXHRcdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQuZGluaW5nUGFnZXtcclxuXHRcdCZfc2VjdGlvbntcclxuXHRcdFx0Ji1jb250ZW50eyBcclxuXHRcdFx0XHQuc2luZ2xlRGluaW5ne1xyXG5cdFx0XHRcdFx0Ji1jb250ZW50e1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiBjYWxjKDE1MHB4ICsgMTAlKTtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xyXG5cdFx0XHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmOm50aC1jaGlsZChvZGQpe1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxNTBweDtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmOm50aC1jaGlsZChldmVuKXtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxNTBweDtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQuZGluZUFyb3VuZHtcclxuXHRcdCZfZXhwbG9yZS1jb250YWluZXJ7XHJcblx0XHRcdGRpdntcclxuXHRcdFx0XHRoM3tcclxuXHRcdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKXtcclxuXHRcdFx0XHRcdCAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Lm1hcmluYXtcclxuXHRcdC53YXRlclRheGl7XHJcblx0XHRcdHBhZGRpbmc6IDUwcHggMTUwcHggNTBweCAwcHg7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0cGFkZGluZzogMjVweCAyNXB4IDI1cHggMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQucmVhbEVzdGF0ZXtcclxuXHRcdCZfaW52ZXN0aW5ne1xyXG5cdFx0XHRwYWRkaW5nOiA1MHB4IDE1MHB4IDUwcHggMHB4O1xyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0cHtcclxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMTAwcHg7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdHBhZGRpbmc6NDBweCAyNXB4IDQwcHggMHB4O1xyXG5cdFx0XHRcdGRpdntcclxuXHRcdFx0XHRcdHB7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMjVweDtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCZfcHJvcGVydGllc3tcclxuXHRcdFx0LnByb3BlcnR5e1xyXG5cdFx0XHRcdCY6bnRoLWNoaWxkKG9kZCl7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDE1MHB4O1xyXG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMHB4O1xyXG5cdFx0XHRcdFx0aDEge1xyXG5cdFx0XHRcdFx0ICAgIHBhZGRpbmctbGVmdDogMHB4O1xyXG5cdFx0XHRcdFx0ICAgIHBhZGRpbmctcmlnaHQ6IDE1MHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0LnByb3BlcnR5LWNvbnRlbnR7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAwJTtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAtMTAlO1xyXG5cdCAgICBcdFx0XHRcdHBhZGRpbmctbGVmdDogNTBweDtcclxuXHQgICAgXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxNSU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MDtcclxuXHRcdFx0XHRcdFx0aDF7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDoyNXB4O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdC5wcm9wZXJ0eS1jb250ZW50e1xyXG5cdFx0XHRcdFx0XHRcdG1hcmdpbjowO1xyXG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDUwcHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0JjpudGgtY2hpbGQoZXZlbil7XHJcblx0XHRcdFx0XHQucHJvcGVydHktY29udGVudHtcclxuXHQgICAgXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDUwcHg7XHJcblx0ICAgIFx0XHRcdFx0cGFkZGluZy1yaWdodDogMTUwcHg7XHJcblx0ICAgIFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMjVweDtcclxuXHRcdFx0XHRcdFx0XHRhe1xyXG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDI1cHg7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5zaW5nbGV7XHJcblx0XHQmLXJlYWxFc3RhdGV7XHJcblx0XHRcdC5vdGhlclByb2plY3RzIC5wcm9qZWN0cyAucHJvcGVydHkgaDMge1xyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKXtcclxuXHQgICAgXHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0ICAgIFx0XHR9XHJcblx0ICAgIFx0fVxyXG5cdCAgICB9XHJcblx0fVxyXG5cdC5zdGF5e1xyXG5cdFx0LmhvdGVsc3tcclxuXHRcdFx0LmhvdGVse1xyXG5cdFx0XHRcdCY6bnRoLWNoaWxkKG9kZCl7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxNTBweDtcclxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmOm50aC1jaGlsZChldmVuKXtcclxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMTUwcHg7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHQmOm50aC1jaGlsZChvZGQpe1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG5cdFx0XHRcdFx0XHQuaG90ZWwtaW5mb3tcclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKGV2ZW4pe1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcblx0XHRcdFx0XHRcdC5ob3RlbC1pbmZve1xyXG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCZfZGluZUFyb3VuZHtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiAwcHg7XHJcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDE1MHB4O1xyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcblx0XHRcdFx0Ji1kZXRhaWxze1xyXG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjI1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5vZmZlcnN7XHJcblx0XHQub2ZmZXJ7XHJcblx0XHRcdCYuY29sLTN7XHJcblx0XHRcdFx0JjpudGgtY2hpbGQoMm4pIHtcclxuXHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiA0MGVtKXtcclxuXHQgICBcdCBcdFx0XHRcdG1hcmdpbi1yaWdodDogMTUwcHg7XHJcblx0ICAgXHQgXHRcdFx0XHRtYXJnaW4tbGVmdDogMHB4O1xyXG5cdCAgIFx0IFx0XHRcdH1cclxuXHQgICBcdCBcdFx0fVxyXG5cdCAgIFx0IFx0XHQmOm50aC1jaGlsZCg0bikge1xyXG5cdCAgIFx0IFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiA0MGVtKXtcclxuXHRcdFx0XHRcdCAgICBtYXJnaW4tbGVmdDogMTUwcHg7XHJcblx0XHRcdFx0XHQgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHQgICBcdCBcdH1cclxuXHQgICBcdCBcdC5idG57XHJcblx0ICAgXHQgXHRcdG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG5cdCAgIFx0IFx0XHRtYXJnaW4tcmlnaHQ6IDBweDtcclxuXHQgICBcdCBcdH1cclxuXHQgICBcdCB9XHJcblx0fVxyXG5cdC5yZW50YWxXaWRnZXR7XHJcblx0XHQuY2xvc2V7XHJcblx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0fVxyXG5cdFx0Jl9jb250YWluZXJ7XHJcblx0XHRcdGxhYmVse1xyXG5cdFx0XHQgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcblx0XHRcdCAgICBtYXJnaW4tbGVmdDogMzBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRkaXZ7XHJcblx0XHRcdFx0Ji5jaGVja2JveGVze1xyXG5cdFx0XHRcdFx0ZGl2e1xyXG5cdFx0XHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0XHRcdGlucHV0IHtcclxuXHRcdFx0ICAgIFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcblx0XHRcdCAgICBcdFx0XHRcdG1hcmdpbi1yaWdodDogMHB4O1xyXG5cdFx0XHQgICAgXHRcdFx0fVxyXG5cdFx0XHQgICAgXHRcdH1cclxuXHRcdFx0ICAgIFx0fVxyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC50aGluZ3NUb0Rve1xyXG5cdFx0Jl9iZWFjaGVze1xyXG5cdFx0XHRwYWRkaW5nOiAxMDBweCAxNTBweCA3MHB4IDBweDtcclxuXHRcdFx0cHtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDEwMHB4O1xyXG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDI1cHggMjVweCAyNXB4IDBweDtcclxuXHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQuZXZlbnRze1xyXG5cdFx0Jl9pbnRyb3tcclxuXHRcdFx0aW1ne1xyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Jl9oaWdobGlnaHRze1xyXG5cdFx0XHQuZXZlbnR7XHJcblx0XHRcdFx0Ji1pbWFnZXtcclxuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDE1MHB4O1xyXG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiA1MHB4O1xyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0cGFkZGluZzogMDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Ji1jb250ZW50e1xyXG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMzAwcHg7XHJcblx0XHRcdFx0ICAgIHBhZGRpbmctbGVmdDogMjAwcHg7XHJcblx0XHRcdFx0ICAgIG1hcmdpbi1yaWdodDogLTI4MHB4O1xyXG5cdFx0XHRcdCAgICBtYXJnaW4tbGVmdDogMHB4O1xyXG5cdFx0XHRcdCAgICBAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDI1cHggMzBweCA0MHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQuc2xpY2stYXJyb3d7XHJcblx0XHRcdFx0Ji5zbGljay1uZXh0e1xyXG5cdFx0XHRcdFx0cmlnaHQ6IGluaXRpYWw7XHJcblx0XHRcdFx0XHRsZWZ0OiAzMDBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Ji5zbGljay1wcmV2e1xyXG5cdFx0XHRcdFx0cmlnaHQ6IGluaXRpYWw7XHJcblx0XHRcdFx0XHRsZWZ0OiAyMDBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdCYuc2xpY2stbmV4dHtcclxuXHRcdFx0XHRcdFx0bGVmdDogODBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCYuc2xpY2stcHJldntcclxuXHRcdFx0XHRcdFx0bGVmdDogMjBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCZfY2FsZW5kYXJ7XHJcblx0XHRcdC5maWx0ZXIge1xyXG5cdFx0XHRcdD4gZGl2e1xyXG5cdFx0XHRcdFx0c2VsZWN0e1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRkaXZ7XHJcblx0XHRcdFx0XHRcdCY6YWZ0ZXJ7XHJcblx0XHRcdFx0XHRcdFx0bGVmdDogMDtcclxuXHRcdFx0XHRcdFx0XHRyaWdodDogaW5pdGlhbDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmLWNvbnRhaW5lcntcclxuXHRcdFx0XHQ+IGRpdntcclxuXHRcdFx0XHRcdC5idG57XHJcblx0XHRcdFx0XHQgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcblx0XHRcdFx0XHQgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5zaW5nbGVFdmVudHtcclxuXHRcdCYtaW50cm97XHJcblx0XHRcdHBhZGRpbmc6IDUwcHggMTUwcHggNTBweCAwcHg7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0cGFkZGluZzogMjVweCAyNXB4IDI1cHggMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Lm90aGVyRXZlbnRze1xyXG5cdFx0XHRoMXtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDBweDtcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxNTBweDtcclxuXHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMjVweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LmFxdWFwYXJre1xyXG5cdFx0Jl9kZXRhaWxze1xyXG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdGltZ3tcclxuXHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1JSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdCYtY29udGFpbmVye1xyXG5cdFx0XHRcdC5zY2hlZHVsZXtcclxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMHB4O1xyXG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMzBweDtcclxuXHRcdFx0XHRcdGJvcmRlci1sZWZ0OiBub25lO1xyXG5cdFx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcclxuXHRcdFx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiBub25lO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Jl9leHBsb3Jle1xyXG5cdFx0XHQmLWNvbnRhaW5lcntcclxuXHRcdFx0XHRkaXYgaDN7XHJcblx0XHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LmZhcXtcclxuXHRcdCZfY29udGFpbmVye1xyXG5cdFx0XHQuYWNjb3JkaW9ue1xyXG5cdFx0XHRcdGxpIHtcclxuXHRcdFx0XHRcdC5hY2NvcmRpb24tdGl0bGV7XHJcblx0XHRcdFx0XHQgICAgcGFkZGluZy1yaWdodDogMDtcclxuXHRcdFx0XHRcdCAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XHJcblx0XHRcdFx0XHQgICAgJjo6YmVmb3Jle1xyXG5cdFx0XHRcdFx0ICAgIFx0bGVmdDogMXJlbTtcclxuXHRcdFx0XHRcdCAgICBcdHJpZ2h0OiBpbml0aWFsO1xyXG5cdFx0XHRcdFx0ICAgIH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LnNpdGVtYXB7XHJcblx0XHQmX2NvbnRhaW5lcntcclxuXHRcdFx0dWx7XHJcblx0XHRcdFx0bGl7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDBweDtcclxuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcblx0XHRcdFx0XHQmOmJlZm9yZXtcclxuXHRcdFx0XHRcdFx0bGVmdDogaW5pdGlhbDtcclxuXHRcdFx0XHRcdFx0cmlnaHQ6IDVweDtcclxuXHRcdFx0XHRcdFx0Y29udGVudDogJ1xcRTgwMic7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5zaW5nbGVIb3RlbHtcclxuXHRcdCZfcm9vbXMsIC5vdXJIb3RlbCwgJl9uZXdze1xyXG5cdFx0XHRoMXtcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxNTBweDtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDBweDtcclxuXHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMjVweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdC5vdXJIb3RlbHtcclxuXHRcdFx0Ji1ibG9ja3tcclxuXHRcdFx0XHRwe1xyXG5cdFx0XHRcdFx0c3BhbntcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICNmZmY7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdCZfc2VjdGlvbjJ7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xyXG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDE1MHB4O1xyXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Jl9vZmZlcnN7XHJcblx0XHRcdC5vZmZlcntcclxuXHRcdFx0XHQmLWltYWdle1xyXG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjUwcHg7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjE1MHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmLWNvbnRlbnR7XHJcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MjAwcHg7XHJcblx0XHRcdFx0ICAgIHBhZGRpbmctcmlnaHQ6MzAwcHg7XHJcblx0XHRcdFx0ICAgIG1hcmdpbi1yaWdodDogLTI4MHB4O1xyXG5cdFx0XHRcdCAgICBtYXJnaW4tbGVmdDogMHB4O1xyXG5cdFx0XHRcdCAgICBcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdCYtaW1hZ2V7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDoyNXB4O1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OjI1cHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQmLWNvbnRlbnR7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0LnNsaWNrLWFycm93e1xyXG5cdFx0XHRcdCYuc2xpY2stbmV4dHtcclxuXHRcdFx0ICAgIFx0bGVmdDogMzAwcHg7XHJcblx0XHRcdCAgICBcdHJpZ2h0OiBpbml0aWFsO1xyXG5cdFx0XHQgICAgfVxyXG5cdFx0XHQgICAgJi5zbGljay1wcmV2e1xyXG5cdFx0XHRcdFx0bGVmdDogMjAwcHg7XHJcblx0XHRcdFx0XHRyaWdodDogaW5pdGlhbDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRcdCYuc2xpY2stbmV4dHtcclxuXHRcdFx0XHQgICAgXHRsZWZ0OiA4MHB4O1xyXG5cdFx0XHRcdCAgICB9XHJcblx0XHRcdFx0ICAgICYuc2xpY2stcHJldntcclxuXHRcdFx0XHRcdFx0bGVmdDogMjBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCZfZGluaW5ne1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDBweDtcclxuXHRcdFx0cGFkZGluZy1yaWdodDogMTUwcHg7XHJcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XHJcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMjVweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQuYWNjb21vZGF0aW9ue1xyXG5cdFx0Jl9yb29tRmFjdFNoZWV0e1xyXG5cdFx0XHQuaWNvbnN7XHJcblx0XHRcdCBcdD4gZGl2e1xyXG5cdFx0XHQgXHRcdGRpdntcclxuXHRcdFx0IFx0XHRcdG1hcmdpbi1yaWdodDogMHB4O1xyXG5cdFx0XHQgXHRcdFx0bWFyZ2luLWxlZnQ6IDMwcHg7XHJcblx0XHRcdCBcdFx0fVxyXG5cdFx0XHQgXHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCZfcm9vbXMgaDJ7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogMHB4O1xyXG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxNTBweDtcclxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5kaW5pbmctc2VjdGlvbntcclxuXHRcdGgxe1xyXG5cdFx0ICAgIHBhZGRpbmctbGVmdDogMHB4O1xyXG5cdFx0ICAgIHBhZGRpbmctcmlnaHQ6IDE1MHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHQucmV2aWV3c3tcclxuXHRcdCNsYW5nX3NlbGVjdG9ye1xyXG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDAgY2VudGVyO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQub3VySG90ZWx7XHJcblx0XHQmLWZhY2lsaXRpZXN7XHJcblx0XHRcdC5vdGhlckZhY2lsaXRpZXN7XHJcblx0XHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmLXNlcnZpY2Vze1xyXG5cdFx0XHQuc2VydmljZXN7XHJcblx0XHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0XHRpbWd7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC5wb3N0RGV0YWlscyB7XHJcblx0XHQuY2xvc2V7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdHJpZ2h0OiBpbml0aWFsO1xyXG5cdFx0fVxyXG5cdFx0aDN7XHJcblx0XHRcdHNwYW57XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDh2dztcclxuXHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNDBlbSkge1xyXG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDIydnc7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59Il19 */
