@charset "UTF-8";
:root {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-primary: #0d6efd;
  --bs-secondary: #6c757d;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); }

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

@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth; } }

body {
  margin: 0;
  font-family: var(--bs-font-sans-serif);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

hr {
  margin: 1rem 0;
  color: inherit;
  background-color: currentColor;
  border: 0;
  opacity: 0.25; }

hr:not([size]) {
  height: 1px; }

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2; }

h1, .h1 {
  font-size: calc(1.375rem + 1.5vw); }
  @media (min-width: 1200px) {
    h1, .h1 {
      font-size: 2.5rem; } }

h2, .h2 {
  font-size: calc(1.325rem + 0.9vw); }
  @media (min-width: 1200px) {
    h2, .h2 {
      font-size: 2rem; } }

h3, .h3 {
  font-size: calc(1.3rem + 0.6vw); }
  @media (min-width: 1200px) {
    h3, .h3 {
      font-size: 1.75rem; } }

h4, .h4 {
  font-size: calc(1.275rem + 0.3vw); }
  @media (min-width: 1200px) {
    h4, .h4 {
      font-size: 1.5rem; } }

h5, .h5 {
  font-size: 1.25rem; }

h6, .h6 {
  font-size: 1rem; }

p {
  margin-top: 0;
  margin-bottom: 1rem; }

abbr[title],
abbr[data-bs-original-title] {
  text-decoration: underline dotted;
  cursor: help;
  text-decoration-skip-ink: none; }

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit; }

ol,
ul {
  padding-left: 2rem; }

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

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0; }

dt {
  font-weight: 700; }

dd {
  margin-bottom: .5rem;
  margin-left: 0; }

blockquote {
  margin: 0 0 1rem; }

b,
strong {
  font-weight: bolder; }

small, .small {
  font-size: 0.875em; }

mark, .mark {
  padding: 0.2em;
  background-color: #fcf8e3; }

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

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

a {
  color: #0d6efd;
  text-decoration: underline; }
  a:hover {
    color: #0a58ca; }

a:not([href]):not([class]), a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none; }

pre,
code,
kbd,
samp {
  font-family: var(--bs-font-monospace);
  font-size: 1em;
  direction: ltr /* rtl:ignore */;
  unicode-bidi: bidi-override; }

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  font-size: 0.875em; }
  pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal; }

code {
  font-size: 0.875em;
  color: #d63384;
  word-wrap: break-word; }
  a > code {
    color: inherit; }

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 0.875em;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem; }
  kbd kbd {
    padding: 0;
    font-size: 1em;
    font-weight: 700; }

figure {
  margin: 0 0 1rem; }

img,
svg {
  vertical-align: middle; }

table {
  caption-side: bottom;
  border-collapse: collapse; }

caption {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: #6c757d;
  text-align: left; }

th {
  text-align: inherit;
  text-align: -webkit-match-parent; }

thead,
tbody,
tfoot,
tr,
td,
th {
  border-color: inherit;
  border-style: solid;
  border-width: 0; }

label {
  display: inline-block; }

button {
  border-radius: 0; }

button:focus:not(:focus-visible) {
  outline: 0; }

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

button,
select {
  text-transform: none; }

[role="button"] {
  cursor: pointer; }

select {
  word-wrap: normal; }
  select:disabled {
    opacity: 1; }

[list]::-webkit-calendar-picker-indicator {
  display: none; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }
  button:not(:disabled),
  [type="button"]:not(:disabled),
  [type="reset"]:not(:disabled),
  [type="submit"]:not(:disabled) {
    cursor: pointer; }

::-moz-focus-inner {
  padding: 0;
  border-style: none; }

textarea {
  resize: vertical; }

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0; }

legend {
  float: left;
  width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: calc(1.275rem + 0.3vw);
  line-height: inherit; }
  @media (min-width: 1200px) {
    legend {
      font-size: 1.5rem; } }
  legend + * {
    clear: left; }

::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
  padding: 0; }

::-webkit-inner-spin-button {
  height: auto; }

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

/* rtl:raw:
[type="tel"],
[type="url"],
[type="email"],
[type="number"] {
  direction: ltr;
}
*/
::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-color-swatch-wrapper {
  padding: 0; }

::file-selector-button {
  font: inherit; }

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

output {
  display: inline-block; }

iframe {
  border: 0; }

summary {
  display: list-item;
  cursor: pointer; }

progress {
  vertical-align: baseline; }

[hidden] {
  display: none !important; }

.lead {
  font-size: 1.25rem;
  font-weight: 300; }

.display-1 {
  font-size: calc(1.625rem + 4.5vw);
  font-weight: 300;
  line-height: 1.2; }
  @media (min-width: 1200px) {
    .display-1 {
      font-size: 5rem; } }

.display-2 {
  font-size: calc(1.575rem + 3.9vw);
  font-weight: 300;
  line-height: 1.2; }
  @media (min-width: 1200px) {
    .display-2 {
      font-size: 4.5rem; } }

.display-3 {
  font-size: calc(1.525rem + 3.3vw);
  font-weight: 300;
  line-height: 1.2; }
  @media (min-width: 1200px) {
    .display-3 {
      font-size: 4rem; } }

.display-4 {
  font-size: calc(1.475rem + 2.7vw);
  font-weight: 300;
  line-height: 1.2; }
  @media (min-width: 1200px) {
    .display-4 {
      font-size: 3.5rem; } }

.display-5 {
  font-size: calc(1.425rem + 2.1vw);
  font-weight: 300;
  line-height: 1.2; }
  @media (min-width: 1200px) {
    .display-5 {
      font-size: 3rem; } }

.display-6 {
  font-size: calc(1.375rem + 1.5vw);
  font-weight: 300;
  line-height: 1.2; }
  @media (min-width: 1200px) {
    .display-6 {
      font-size: 2.5rem; } }

.list-unstyled {
  padding-left: 0;
  list-style: none; }

.list-inline {
  padding-left: 0;
  list-style: none; }

.list-inline-item {
  display: inline-block; }
  .list-inline-item:not(:last-child) {
    margin-right: 0.5rem; }

.initialism {
  font-size: 0.875em;
  text-transform: uppercase; }

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem; }
  .blockquote > :last-child {
    margin-bottom: 0; }

.blockquote-footer {
  margin-top: -1rem;
  margin-bottom: 1rem;
  font-size: 0.875em;
  color: #6c757d; }
  .blockquote-footer::before {
    content: "\2014\00A0"; }

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 1rem 1.25rem;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  background-color: #fff;
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease; }
  @media (prefers-reduced-motion: reduce) {
    .accordion-button {
      transition: none; } }
  .accordion-button:not(.collapsed) {
    color: #0c63e4;
    background-color: #e7f1ff;
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125); }
    .accordion-button:not(.collapsed)::after {
      background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
      transform: rotate(-180deg); }
  .accordion-button::after {
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    margin-left: auto;
    content: "";
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-size: 1.25rem;
    transition: transform 0.2s ease-in-out; }
    @media (prefers-reduced-motion: reduce) {
      .accordion-button::after {
        transition: none; } }
  .accordion-button:hover {
    z-index: 2; }
  .accordion-button:focus {
    z-index: 3;
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); }

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

.accordion-item {
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125); }
  .accordion-item:first-of-type {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; }
    .accordion-item:first-of-type .accordion-button {
      border-top-left-radius: calc(0.25rem - 1px);
      border-top-right-radius: calc(0.25rem - 1px); }
  .accordion-item:not(:first-of-type) {
    border-top: 0; }
  .accordion-item:last-of-type {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem; }
    .accordion-item:last-of-type .accordion-button.collapsed {
      border-bottom-right-radius: calc(0.25rem - 1px);
      border-bottom-left-radius: calc(0.25rem - 1px); }
    .accordion-item:last-of-type .accordion-collapse {
      border-bottom-right-radius: 0.25rem;
      border-bottom-left-radius: 0.25rem; }

.accordion-body {
  padding: 1rem 1.25rem; }

.accordion-flush .accordion-collapse {
  border-width: 0; }

.accordion-flush .accordion-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0; }
  .accordion-flush .accordion-item:first-child {
    border-top: 0; }
  .accordion-flush .accordion-item:last-child {
    border-bottom: 0; }
  .accordion-flush .accordion-item .accordion-button {
    border-radius: 0; }

.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
  color: #0d6efd;
  text-decoration: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .nav-link {
      transition: none; } }
  .nav-link:hover, .nav-link:focus {
    color: #0a58ca; }
  .nav-link.disabled {
    color: #6c757d;
    pointer-events: none;
    cursor: default; }

.nav-tabs {
  border-bottom: 1px solid #dee2e6; }
  .nav-tabs .nav-link {
    margin-bottom: -1px;
    background: none;
    border: 1px solid transparent;
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem; }
    .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
      border-color: #e9ecef #e9ecef #dee2e6;
      isolation: isolate; }
    .nav-tabs .nav-link.disabled {
      color: #6c757d;
      background-color: transparent;
      border-color: transparent; }
  .nav-tabs .nav-link.active,
  .nav-tabs .nav-item.show .nav-link {
    color: #495057;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #fff; }
  .nav-tabs .dropdown-menu {
    margin-top: -1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0; }

.nav-pills .nav-link {
  background: none;
  border: 0;
  border-radius: 0.25rem; }

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #0d6efd; }

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center; }

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center; }

.nav-fill .nav-item .nav-link,
.nav-justified .nav-item .nav-link {
  width: 100%; }

.tab-content > .tab-pane {
  display: none; }

.tab-content > .active {
  display: block; }

.dropup,
.dropend,
.dropdown,
.dropstart {
  position: relative; }

.dropdown-toggle {
  white-space: nowrap; }
  .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid;
    border-right: 0.3em solid transparent;
    border-bottom: 0;
    border-left: 0.3em solid transparent; }
  .dropdown-toggle:empty::after {
    margin-left: 0; }

.dropdown-menu {
  position: absolute;
  z-index: 1000;
  display: none;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem; }
  .dropdown-menu[data-bs-popper] {
    top: 100%;
    left: 0;
    margin-top: 0.125rem; }

.dropdown-menu-start {
  --bs-position: start; }
  .dropdown-menu-start[data-bs-popper] {
    right: auto /* rtl:ignore */;
    left: 0 /* rtl:ignore */; }

.dropdown-menu-end {
  --bs-position: end; }
  .dropdown-menu-end[data-bs-popper] {
    right: 0 /* rtl:ignore */;
    left: auto /* rtl:ignore */; }

@media (min-width: 576px) {
  .dropdown-menu-sm-start {
    --bs-position: start; }
    .dropdown-menu-sm-start[data-bs-popper] {
      right: auto /* rtl:ignore */;
      left: 0 /* rtl:ignore */; }
  .dropdown-menu-sm-end {
    --bs-position: end; }
    .dropdown-menu-sm-end[data-bs-popper] {
      right: 0 /* rtl:ignore */;
      left: auto /* rtl:ignore */; } }

@media (min-width: 768px) {
  .dropdown-menu-md-start {
    --bs-position: start; }
    .dropdown-menu-md-start[data-bs-popper] {
      right: auto /* rtl:ignore */;
      left: 0 /* rtl:ignore */; }
  .dropdown-menu-md-end {
    --bs-position: end; }
    .dropdown-menu-md-end[data-bs-popper] {
      right: 0 /* rtl:ignore */;
      left: auto /* rtl:ignore */; } }

@media (min-width: 992px) {
  .dropdown-menu-lg-start {
    --bs-position: start; }
    .dropdown-menu-lg-start[data-bs-popper] {
      right: auto /* rtl:ignore */;
      left: 0 /* rtl:ignore */; }
  .dropdown-menu-lg-end {
    --bs-position: end; }
    .dropdown-menu-lg-end[data-bs-popper] {
      right: 0 /* rtl:ignore */;
      left: auto /* rtl:ignore */; } }

@media (min-width: 1200px) {
  .dropdown-menu-xl-start {
    --bs-position: start; }
    .dropdown-menu-xl-start[data-bs-popper] {
      right: auto /* rtl:ignore */;
      left: 0 /* rtl:ignore */; }
  .dropdown-menu-xl-end {
    --bs-position: end; }
    .dropdown-menu-xl-end[data-bs-popper] {
      right: 0 /* rtl:ignore */;
      left: auto /* rtl:ignore */; } }

@media (min-width: 1400px) {
  .dropdown-menu-xxl-start {
    --bs-position: start; }
    .dropdown-menu-xxl-start[data-bs-popper] {
      right: auto /* rtl:ignore */;
      left: 0 /* rtl:ignore */; }
  .dropdown-menu-xxl-end {
    --bs-position: end; }
    .dropdown-menu-xxl-end[data-bs-popper] {
      right: 0 /* rtl:ignore */;
      left: auto /* rtl:ignore */; } }

.dropup .dropdown-menu[data-bs-popper] {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem; }

.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent; }

.dropup .dropdown-toggle:empty::after {
  margin-left: 0; }

.dropend .dropdown-menu[data-bs-popper] {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem; }

.dropend .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid; }

.dropend .dropdown-toggle:empty::after {
  margin-left: 0; }

.dropend .dropdown-toggle::after {
  vertical-align: 0; }

.dropstart .dropdown-menu[data-bs-popper] {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem; }

.dropstart .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: ""; }

.dropstart .dropdown-toggle::after {
  display: none; }

.dropstart .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent; }

.dropstart .dropdown-toggle:empty::after {
  margin-left: 0; }

.dropstart .dropdown-toggle::before {
  vertical-align: 0; }

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid rgba(0, 0, 0, 0.15); }

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0; }
  .dropdown-item:hover, .dropdown-item:focus {
    color: #1e2125;
    background-color: #e9ecef; }
  .dropdown-item.active, .dropdown-item:active {
    color: #fff;
    text-decoration: none;
    background-color: #0d6efd; }
  .dropdown-item.disabled, .dropdown-item:disabled {
    color: #adb5bd;
    pointer-events: none;
    background-color: transparent; }

.dropdown-menu.show {
  display: block; }

.dropdown-header {
  display: block;
  padding: 0.5rem 1rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap; }

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1rem;
  color: #212529; }

.dropdown-menu-dark {
  color: #dee2e6;
  background-color: #343a40;
  border-color: rgba(0, 0, 0, 0.15); }
  .dropdown-menu-dark .dropdown-item {
    color: #dee2e6; }
    .dropdown-menu-dark .dropdown-item:hover, .dropdown-menu-dark .dropdown-item:focus {
      color: #fff;
      background-color: rgba(255, 255, 255, 0.15); }
    .dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active {
      color: #fff;
      background-color: #0d6efd; }
    .dropdown-menu-dark .dropdown-item.disabled, .dropdown-menu-dark .dropdown-item:disabled {
      color: #adb5bd; }
  .dropdown-menu-dark .dropdown-divider {
    border-color: rgba(0, 0, 0, 0.15); }
  .dropdown-menu-dark .dropdown-item-text {
    color: #dee2e6; }
  .dropdown-menu-dark .dropdown-header {
    color: #adb5bd; }

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem; }
  .navbar > .container,
  .navbar > .container-fluid, .navbar > .container-sm, .navbar > .container-md, .navbar > .container-lg, .navbar > .container-xl, .navbar > .container-xxl {
    display: flex;
    flex-wrap: inherit;
    align-items: center;
    justify-content: space-between; }

.navbar-brand {
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  text-decoration: none;
  white-space: nowrap; }

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }
  .navbar-nav .nav-link {
    padding-right: 0;
    padding-left: 0; }
  .navbar-nav .dropdown-menu {
    position: static; }

.navbar-text {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem; }

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center; }

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  transition: box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .navbar-toggler {
      transition: none; } }
  .navbar-toggler:hover {
    text-decoration: none; }
  .navbar-toggler:focus {
    text-decoration: none;
    outline: 0;
    box-shadow: 0 0 0 0.25rem; }

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%; }

.navbar-nav-scroll {
  max-height: var(--bs-scroll-height, 75vh);
  overflow-y: auto; }

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-wrap: nowrap;
    justify-content: flex-start; }
    .navbar-expand-sm .navbar-nav {
      flex-direction: row; }
      .navbar-expand-sm .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-sm .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-sm .navbar-nav-scroll {
      overflow: visible; }
    .navbar-expand-sm .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-sm .navbar-toggler {
      display: none; } }

@media (min-width: 768px) {
  .navbar-expand-md {
    flex-wrap: nowrap;
    justify-content: flex-start; }
    .navbar-expand-md .navbar-nav {
      flex-direction: row; }
      .navbar-expand-md .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-md .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-md .navbar-nav-scroll {
      overflow: visible; }
    .navbar-expand-md .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-md .navbar-toggler {
      display: none; } }

@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-wrap: nowrap;
    justify-content: flex-start; }
    .navbar-expand-lg .navbar-nav {
      flex-direction: row; }
      .navbar-expand-lg .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-lg .navbar-nav-scroll {
      overflow: visible; }
    .navbar-expand-lg .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-lg .navbar-toggler {
      display: none; } }

@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-wrap: nowrap;
    justify-content: flex-start; }
    .navbar-expand-xl .navbar-nav {
      flex-direction: row; }
      .navbar-expand-xl .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-xl .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-xl .navbar-nav-scroll {
      overflow: visible; }
    .navbar-expand-xl .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-xl .navbar-toggler {
      display: none; } }

@media (min-width: 1400px) {
  .navbar-expand-xxl {
    flex-wrap: nowrap;
    justify-content: flex-start; }
    .navbar-expand-xxl .navbar-nav {
      flex-direction: row; }
      .navbar-expand-xxl .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-xxl .navbar-nav .nav-link {
        padding-right: 0.5rem;
        padding-left: 0.5rem; }
    .navbar-expand-xxl .navbar-nav-scroll {
      overflow: visible; }
    .navbar-expand-xxl .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-xxl .navbar-toggler {
      display: none; } }

.navbar-expand {
  flex-wrap: nowrap;
  justify-content: flex-start; }
  .navbar-expand .navbar-nav {
    flex-direction: row; }
    .navbar-expand .navbar-nav .dropdown-menu {
      position: absolute; }
    .navbar-expand .navbar-nav .nav-link {
      padding-right: 0.5rem;
      padding-left: 0.5rem; }
  .navbar-expand .navbar-nav-scroll {
    overflow: visible; }
  .navbar-expand .navbar-collapse {
    display: flex !important;
    flex-basis: auto; }
  .navbar-expand .navbar-toggler {
    display: none; }

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9); }
  .navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
    color: rgba(0, 0, 0, 0.9); }

.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.55); }
  .navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
    color: rgba(0, 0, 0, 0.7); }
  .navbar-light .navbar-nav .nav-link.disabled {
    color: rgba(0, 0, 0, 0.3); }

.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9); }

.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.55);
  border-color: rgba(0, 0, 0, 0.1); }

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }

.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.55); }
  .navbar-light .navbar-text a,
  .navbar-light .navbar-text a:hover,
  .navbar-light .navbar-text a:focus {
    color: rgba(0, 0, 0, 0.9); }

.navbar-dark .navbar-brand {
  color: #fff; }
  .navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
    color: #fff; }

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.55); }
  .navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
    color: rgba(255, 255, 255, 0.75); }
  .navbar-dark .navbar-nav .nav-link.disabled {
    color: rgba(255, 255, 255, 0.25); }

.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff; }

.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.55);
  border-color: rgba(255, 255, 255, 0.1); }

.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }

.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.55); }
  .navbar-dark .navbar-text a,
  .navbar-dark .navbar-text a:hover,
  .navbar-dark .navbar-text a:focus {
    color: #fff; }

.fade {
  transition: opacity 0.15s linear; }
  @media (prefers-reduced-motion: reduce) {
    .fade {
      transition: none; } }
  .fade:not(.show) {
    opacity: 0; }

.collapse:not(.show) {
  display: none; }

.collapsing {
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease; }
  @media (prefers-reduced-motion: reduce) {
    .collapsing {
      transition: none; } }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-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);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-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; }

@font-face {
  font-family: "Font Awesome 5 Pro";
  font-style: normal;
  font-weight: 300;
  font-display: block;
  src: url(fa-light-300.eot);
  src: url(fa-light-300.eot?#iefix) format("embedded-opentype"), url(fa-light-300.woff2) format("woff2"), url(fa-light-300.woff) format("woff"), url(fa-light-300.ttf) format("truetype"); }

@font-face {
  font-family: "Font Awesome 5 Pro";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(fa-regular-400.eot);
  src: url(fa-regular-400.eot?#iefix) format("embedded-opentype"), url(fa-regular-400.woff2) format("woff2"), url(fa-regular-400.woff) format("woff"), url(fa-regular-400.ttf) format("truetype"); }

@font-face {
  font-family: "Font Awesome 5 Pro";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url(fa-solid-900.eot);
  src: url(fa-solid-900.eot?#iefix) format("embedded-opentype"), url(fa-solid-900.woff2) format("woff2"), url(fa-solid-900.woff) format("woff"), url(fa-solid-900.ttf) format("truetype"); }

@font-face {
  font-family: "Font Awesome 5 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(fa-brands-400.eot);
  src: url(fa-brands-400.eot?#iefix) format("embedded-opentype"), url(fa-brands-400.woff2) format("woff2"), url(fa-brands-400.woff) format("woff"), url(fa-brands-400.ttf) format("truetype"); }

@font-face {
  font-family: "Font Awesome 5 Duotone";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url(fa-duotone-900.eot);
  src: url(fa-duotone-900.eot?#iefix) format("embedded-opentype"), url(fa-duotone-900.woff2) format("woff2"), url(fa-duotone-900.woff) format("woff"), url(fa-duotone-900.ttf) format("truetype"); }

@font-face {
  font-family: 'DM Sans';
  src: url(DMSans-VariableFont_opsz,wght.woff2) format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'DM Sans';
  src: url(DMSans-Italic-VariableFont_opsz,wght.woff2) format("woff2");
  font-weight: 100 900;
  font-style: italic;
  font-display: swap; }

:root {
  --font-family-primary: 'DM Sans', sans-serif;
  --font-size-fontawesome: 1.4rem;
  --font-size-base: 1rem;
  --font-size-xxl: 1.8rem;
  --font-size-xl: 1.7rem;
  --font-size-lg: 1.6rem;
  --font-size-md: 1.4rem;
  --font-size-sm: 1.1rem;
  --font-size-xs: 0.9rem;
  --font-size-xxs: 0.75rem;
  --font-size-h1: var(--font-size-xxl);
  --font-size-h2: var(--font-size-xl);
  --font-size-h3: var(--font-size-lg);
  --font-size-h4: var(--font-size-md);
  --font-size-h5: var(--font-size-sm);
  --font-size-h6: var(--font-size-base);
  --transition-global: 0.15s ease;
  --spacing-global: 1rem;
  --spacing-vertical-global: 1.5rem;
  --spacing-vertical-global-lg: 2.5rem;
  --spacing-horizontal-global: 1rem;
  --spacing-grid-gap: calc(var(--spacing-global) * 2);
  --spacing-button-input: 0.7rem 0.9rem;
  --spacing-page-header: 2.5rem;
  --search-field-height: 90px;
  --search-field-top-margin: 2rem;
  --responsive-aligndefault-width: min(calc(100vw - (2 * var(--spacing-horizontal-global))),
      1080px);
  --responsive-alignwide-width: min(calc(100vw - (2 * var(--spacing-horizontal-global))),
      1260px);
  --container-sidebar: calc(var(--responsive-alignwide-width) / 4);
  --container-w-sidebar: calc((var(--responsive-alignwide-width) / 4) * 3);
  --image-min-height: 28rem;
  --color-primary: #fd7122;
  --color-secondary: #223c52;
  --color-black: #000;
  --color-white: #fff;
  --color-dark-gray: #9d9d9c;
  --color-medium-gray: #c6c6c6;
  --color-regent-gray: #93a0a9;
  --color-light-gray: #f7f8f9;
  --color-wc-light-gray: var(--wc-secondary);
  --color-wc-medium-gray: rgba(0, 0, 0, 0.1);
  --color-wc-dark-gray: var(--wc-subtext);
  --color-success: #169d26;
  --color-alert: #c40a14;
  --color-notice: #e3dc17; }
  @media (min-width: 768px) {
    :root {
      --search-field-top-margin: 4rem;
      --spacing-button-input: 1.1rem 1.6rem; } }
  @media (min-width: 992px) {
    :root {
      --font-size-xxl: 2.4rem;
      --font-size-xl: 2.2rem;
      --font-size-lg: 1.9rem;
      --font-size-md: 1.6rem;
      --font-size-sm: 1.2rem; } }

@use "sass:color";
body {
  color: var(--color-black);
  line-height: 1.6;
  font-family: var(--font-family-primary); }

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

a {
  color: var(--color-primary);
  transition: var(--transition-global);
  text-decoration: none; }
  a:hover {
    color: var(--color-primary);
    text-decoration: underline; }

blockquote {
  padding: var(--spacing-vertical-global);
  border-left: 2px var(--color-primary) solid; }

h1, .h1 {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global); }
  @media (max-width: 767.98px) {
    h1, .h1 {
      word-break: break-word;
      hyphens: auto; } }

h2, .h2 {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global); }
  @media (max-width: 767.98px) {
    h2, .h2 {
      word-break: break-word;
      hyphens: auto; } }

h3, .h3 {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global); }
  @media (max-width: 767.98px) {
    h3, .h3 {
      word-break: break-word;
      hyphens: auto; } }

h4, .h4 {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global); }
  @media (max-width: 767.98px) {
    h4, .h4 {
      word-break: break-word;
      hyphens: auto; } }

h5, .h5 {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global); }
  @media (max-width: 767.98px) {
    h5, .h5 {
      word-break: break-word;
      hyphens: auto; } }

h6, .h6 {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global); }
  @media (max-width: 767.98px) {
    h6, .h6 {
      word-break: break-word;
      hyphens: auto; } }

.h1 {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global); }
  @media (max-width: 767.98px) {
    .h1 {
      word-break: break-word;
      hyphens: auto; } }

.h2 {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global); }
  @media (max-width: 767.98px) {
    .h2 {
      word-break: break-word;
      hyphens: auto; } }

.h3 {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global); }
  @media (max-width: 767.98px) {
    .h3 {
      word-break: break-word;
      hyphens: auto; } }

.h4 {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global); }
  @media (max-width: 767.98px) {
    .h4 {
      word-break: break-word;
      hyphens: auto; } }

.h5 {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global); }
  @media (max-width: 767.98px) {
    .h5 {
      word-break: break-word;
      hyphens: auto; } }

.h6 {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global); }
  @media (max-width: 767.98px) {
    .h6 {
      word-break: break-word;
      hyphens: auto; } }

h1, .h1,
.h1,
.page-title {
  font-size: var(--font-size-h1); }
  h1 > a, .h1 > a,
  .h1 > a,
  .page-title > a {
    color: var(--color-secondary); }

h2, .h2,
.h2,
.entry-title {
  font-size: var(--font-size-h2); }

h3, .h3,
.h3 {
  font-size: var(--font-size-h3); }

h4, .h4,
.h4 {
  font-size: var(--font-size-h4); }

h5, .h5,
.h5 {
  font-size: var(--font-size-h5); }

h6, .h6,
.h6 {
  font-size: var(--font-size-h6); }

.block-title,
.component-title {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global);
  font-size: var(--font-size-xl); }

.component-subtitle,
.block-subtitle {
  color: var(--color-black);
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: var(--spacing-vertical-global);
  font-size: var(--font-size-h5); }

.button,
.btn,
.wp-block-button__link {
  transition: var(--transition-global);
  color: var(--color-white);
  background-color: var(--color-primary);
  display: inline-block;
  text-align: center;
  border-radius: 0;
  font-weight: normal;
  line-height: normal;
  border: none;
  padding: var(--spacing-button-input);
  border: 1px var(--color-primary) solid;
  font-size: 0.9rem; }
  .button:hover, .button:focus, .button:active,
  .btn:hover,
  .btn:focus,
  .btn:active,
  .wp-block-button__link:hover,
  .wp-block-button__link:focus,
  .wp-block-button__link:active {
    color: var(--color-white);
    background-color: var(--color-black);
    border-color: var(--color-black);
    text-decoration: none; }
  .button[type="submit"],
  .btn[type="submit"],
  .wp-block-button__link[type="submit"] {
    margin-top: 0; }
  .button:disabled, .button:disabled[disabled],
  .btn:disabled,
  .btn:disabled[disabled],
  .wp-block-button__link:disabled,
  .wp-block-button__link:disabled[disabled] {
    padding: var(--spacing-button-input);
    color: var(--color-white); }

input {
  border: none;
  color: var(--color-black);
  background-color: var(--color-light-gray);
  transition: var(--transition-global);
  line-height: normal;
  border-radius: 0;
  padding: var(--spacing-button-input);
  border: 1px var(--color-light-gray) solid;
  font-size: 0.9rem; }
  @media (min-width: 992px) {
    input {
      padding-left: 1.2rem;
      padding-right: 1.2rem; } }
  input::placeholder {
    color: var(--color-dark-gray); }
  input:disabled {
    background-color: var(--color-medium-gray);
    opacity: 0.5; }

select,
textarea {
  border: none;
  color: var(--color-black);
  background-color: var(--color-light-gray);
  transition: var(--transition-global);
  line-height: normal;
  border-radius: 0;
  padding: var(--spacing-button-input);
  border: 1px var(--color-light-gray) solid;
  font-size: 0.9rem; }
  @media (min-width: 992px) {
    select,
    textarea {
      padding-left: 1.2rem;
      padding-right: 1.2rem; } }
  select::placeholder,
  textarea::placeholder {
    color: var(--color-dark-gray); }
  select:disabled,
  textarea:disabled {
    background-color: var(--color-medium-gray);
    opacity: 0.5; }

figure {
  margin: 0; }

legend {
  font-size: 1rem; }

.container {
  width: 100%;
  max-width: var(--responsive-alignwide-width);
  margin-left: auto;
  margin-right: auto; }

.bg-overlay {
  position: relative; }
  .bg-overlay::after {
    content: "";
    z-index: 0;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-color: var(--color-black);
    opacity: 0.3; }

#breadcrumbs {
  margin-bottom: 0; }

.page-header,
.entry-content > .woocommerce-products-header {
  margin-top: var(--spacing-page-header);
  margin-bottom: var(--spacing-page-header);
  width: 100%;
  max-width: var(--responsive-alignwide-width);
  margin-left: auto;
  margin-right: auto; }

.image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 100%; }

@media (max-width: 991.98px) {
  .scroll-disabled {
    margin: 0;
    height: 100%;
    overflow: hidden; } }

.header-icon__container {
  display: flex; }

.header-icon {
  display: inline-block;
  background-color: transparent;
  line-height: 1.2;
  padding: 0.3rem;
  color: var(--color-black);
  text-align: center;
  border: none; }
  .header-icon:hover {
    color: var(--color-black); }
  .header-icon::before {
    width: 1.3rem;
    height: 1.3rem; }

.sr-only {
  display: none; }

.d-none {
  display: none; }

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

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

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

.has-primary-background-color {
  background-color: var(--color-primary); }
  .has-primary-background-color .btn {
    background-color: var(--color-primary);
    border-color: var(--color-primary); }

.has-secondary-background-color {
  background-color: var(--color-secondary); }
  .has-secondary-background-color .btn {
    background-color: var(--color-primary);
    border-color: var(--color-primary); }

.has-black-background-color {
  background-color: var(--color-black); }
  .has-black-background-color .btn {
    background-color: var(--color-primary);
    border-color: var(--color-primary); }

.has-white-background-color {
  background-color: var(--color-white); }
  .has-white-background-color .btn {
    background-color: var(--color-primary);
    border-color: var(--color-primary); }

.has-primary-color {
  color: var(--color-primary); }
  .has-primary-color a {
    color: var(--color-primary); }
    .has-primary-color a:hover {
      color: var(--color-secondary); }
  .has-primary-color h1, .has-primary-color .h1 {
    color: var(--color-primary); }
  .has-primary-color h2, .has-primary-color .h2 {
    color: var(--color-primary); }
  .has-primary-color h3, .has-primary-color .h3 {
    color: var(--color-primary); }
  .has-primary-color h4, .has-primary-color .h4 {
    color: var(--color-primary); }
  .has-primary-color h5, .has-primary-color .h5 {
    color: var(--color-primary); }
  .has-primary-color h6, .has-primary-color .h6 {
    color: var(--color-primary); }
  .has-primary-color .h1 {
    color: var(--color-primary); }
  .has-primary-color .h2 {
    color: var(--color-primary); }
  .has-primary-color .h3 {
    color: var(--color-primary); }
  .has-primary-color .h4 {
    color: var(--color-primary); }
  .has-primary-color .h5 {
    color: var(--color-primary); }
  .has-primary-color .h6 {
    color: var(--color-primary); }

.has-secondary-color {
  color: var(--color-secondary); }
  .has-secondary-color a {
    color: var(--color-secondary); }
    .has-secondary-color a:hover {
      color: var(--color-primary); }
  .has-secondary-color h1, .has-secondary-color .h1 {
    color: var(--color-secondary); }
  .has-secondary-color h2, .has-secondary-color .h2 {
    color: var(--color-secondary); }
  .has-secondary-color h3, .has-secondary-color .h3 {
    color: var(--color-secondary); }
  .has-secondary-color h4, .has-secondary-color .h4 {
    color: var(--color-secondary); }
  .has-secondary-color h5, .has-secondary-color .h5 {
    color: var(--color-secondary); }
  .has-secondary-color h6, .has-secondary-color .h6 {
    color: var(--color-secondary); }
  .has-secondary-color .h1 {
    color: var(--color-secondary); }
  .has-secondary-color .h2 {
    color: var(--color-secondary); }
  .has-secondary-color .h3 {
    color: var(--color-secondary); }
  .has-secondary-color .h4 {
    color: var(--color-secondary); }
  .has-secondary-color .h5 {
    color: var(--color-secondary); }
  .has-secondary-color .h6 {
    color: var(--color-secondary); }

.has-white-color {
  color: var(--color-white); }
  .has-white-color a {
    color: var(--color-white); }
    .has-white-color a:hover {
      color: var(--color-primary); }
  .has-white-color h1, .has-white-color .h1 {
    color: var(--color-white); }
  .has-white-color h2, .has-white-color .h2 {
    color: var(--color-white); }
  .has-white-color h3, .has-white-color .h3 {
    color: var(--color-white); }
  .has-white-color h4, .has-white-color .h4 {
    color: var(--color-white); }
  .has-white-color h5, .has-white-color .h5 {
    color: var(--color-white); }
  .has-white-color h6, .has-white-color .h6 {
    color: var(--color-white); }
  .has-white-color .h1 {
    color: var(--color-white); }
  .has-white-color .h2 {
    color: var(--color-white); }
  .has-white-color .h3 {
    color: var(--color-white); }
  .has-white-color .h4 {
    color: var(--color-white); }
  .has-white-color .h5 {
    color: var(--color-white); }
  .has-white-color .h6 {
    color: var(--color-white); }

.has-black-color {
  color: var(--color-black); }
  .has-black-color a {
    color: var(--color-black); }
    .has-black-color a:hover {
      color: var(--color-secondary); }
  .has-black-color h1, .has-black-color .h1 {
    color: var(--color-black); }
  .has-black-color h2, .has-black-color .h2 {
    color: var(--color-black); }
  .has-black-color h3, .has-black-color .h3 {
    color: var(--color-black); }
  .has-black-color h4, .has-black-color .h4 {
    color: var(--color-black); }
  .has-black-color h5, .has-black-color .h5 {
    color: var(--color-black); }
  .has-black-color h6, .has-black-color .h6 {
    color: var(--color-black); }
  .has-black-color .h1 {
    color: var(--color-black); }
  .has-black-color .h2 {
    color: var(--color-black); }
  .has-black-color .h3 {
    color: var(--color-black); }
  .has-black-color .h4 {
    color: var(--color-black); }
  .has-black-color .h5 {
    color: var(--color-black); }
  .has-black-color .h6 {
    color: var(--color-black); }

.woocommerce button.button,
.woocommerce button.button.alt,
.woocommerce button.button.disabled,
.woocommerce button.button.alt.disabled,
.woocommerce a.button,
.woocommerce a.button.alt {
  transition: var(--transition-global);
  color: var(--color-white);
  background-color: var(--color-primary);
  display: inline-block;
  text-align: center;
  border-radius: 0;
  font-weight: normal;
  line-height: normal;
  border: none;
  padding: var(--spacing-button-input);
  border: 1px var(--color-primary) solid;
  font-size: 0.9rem; }
  .woocommerce button.button:hover, .woocommerce button.button:focus, .woocommerce button.button:active,
  .woocommerce button.button.alt:hover,
  .woocommerce button.button.alt:focus,
  .woocommerce button.button.alt:active,
  .woocommerce button.button.disabled:hover,
  .woocommerce button.button.disabled:focus,
  .woocommerce button.button.disabled:active,
  .woocommerce button.button.alt.disabled:hover,
  .woocommerce button.button.alt.disabled:focus,
  .woocommerce button.button.alt.disabled:active,
  .woocommerce a.button:hover,
  .woocommerce a.button:focus,
  .woocommerce a.button:active,
  .woocommerce a.button.alt:hover,
  .woocommerce a.button.alt:focus,
  .woocommerce a.button.alt:active {
    color: var(--color-white);
    background-color: var(--color-black);
    border-color: var(--color-black);
    text-decoration: none; }
  .woocommerce button.button[type="submit"],
  .woocommerce button.button.alt[type="submit"],
  .woocommerce button.button.disabled[type="submit"],
  .woocommerce button.button.alt.disabled[type="submit"],
  .woocommerce a.button[type="submit"],
  .woocommerce a.button.alt[type="submit"] {
    margin-top: 0; }
  .woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled],
  .woocommerce button.button.alt:disabled,
  .woocommerce button.button.alt:disabled[disabled],
  .woocommerce button.button.disabled:disabled,
  .woocommerce button.button.disabled:disabled[disabled],
  .woocommerce button.button.alt.disabled:disabled,
  .woocommerce button.button.alt.disabled:disabled[disabled],
  .woocommerce a.button:disabled,
  .woocommerce a.button:disabled[disabled],
  .woocommerce a.button.alt:disabled,
  .woocommerce a.button.alt:disabled[disabled] {
    padding: var(--spacing-button-input);
    color: var(--color-white); }

.woocommerce nav.woocommerce-pagination ul.page-numbers {
  background-color: var(--color-white);
  border: none; }
  .woocommerce nav.woocommerce-pagination ul.page-numbers li {
    border: none; }
    .woocommerce nav.woocommerce-pagination ul.page-numbers li > a,
    .woocommerce nav.woocommerce-pagination ul.page-numbers li > span {
      color: var(--color-black);
      padding: 0.75rem 1rem; }
    .woocommerce nav.woocommerce-pagination ul.page-numbers li .current {
      background-color: var(--color-primary);
      color: var(--color-white); }

.cart-btn {
  position: relative;
  display: inline-block;
  background-color: transparent;
  line-height: 1.2;
  padding: 0.3rem;
  color: var(--color-black);
  text-align: center;
  border: none; }
  .cart-btn:hover {
    color: var(--color-black); }
  .cart-btn::before {
    width: 1.3rem;
    height: 1.3rem; }
  .cart-btn::before {
    font-family: "Font Awesome 5 Pro";
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    content: "";
    font-weight: 200; }
  .cart-btn .product-count {
    position: absolute;
    top: -2px;
    right: -4px;
    background-color: var(--color-black);
    color: var(--color-white);
    font-size: var(--font-size-xxs);
    font-weight: bold;
    border-radius: 50%;
    width: 1.25rem;
    height: 1.25rem;
    display: flex;
    justify-content: center;
    align-items: center; }

.profile-btn {
  color: var(--color-black); }

.woocommerce #content div.product,
.woocommerce-page #content div.product {
  --product-section--gap: 2rem;
  display: flex;
  flex-wrap: wrap;
  gap: var(--product-section--gap); }
  @media (min-width: 992px) {
    .woocommerce #content div.product,
    .woocommerce-page #content div.product {
      --product-section--gap: 3rem; } }
  .woocommerce #content div.product div.images,
  .woocommerce-page #content div.product div.images {
    width: 100%;
    float: none;
    margin-bottom: 0; }
    @media (min-width: 768px) {
      .woocommerce #content div.product div.images,
      .woocommerce-page #content div.product div.images {
        max-width: calc(50% - var(--product-section--gap) / 2); } }
    @media (min-width: 992px) {
      .woocommerce #content div.product div.images,
      .woocommerce-page #content div.product div.images {
        max-width: calc(40% - var(--product-section--gap) / 2); } }
    .woocommerce #content div.product div.images img,
    .woocommerce-page #content div.product div.images img {
      max-width: 400px;
      margin-inline: auto; }
  .woocommerce #content div.product div.summary.entry-summary,
  .woocommerce-page #content div.product div.summary.entry-summary {
    width: 100%;
    float: none;
    color: var(--color-secondary); }
    @media (min-width: 768px) {
      .woocommerce #content div.product div.summary.entry-summary,
      .woocommerce-page #content div.product div.summary.entry-summary {
        max-width: calc(50% - var(--product-section--gap) / 2); } }
    @media (min-width: 992px) {
      .woocommerce #content div.product div.summary.entry-summary,
      .woocommerce-page #content div.product div.summary.entry-summary {
        max-width: calc(60% - var(--product-section--gap) / 2); } }
    .woocommerce #content div.product div.summary.entry-summary .single-product__categories,
    .woocommerce-page #content div.product div.summary.entry-summary .single-product__categories {
      padding-bottom: var(--spacing-vertical-global); }
      .woocommerce #content div.product div.summary.entry-summary .single-product__categories a,
      .woocommerce-page #content div.product div.summary.entry-summary .single-product__categories a {
        color: var(--color-secondary);
        text-decoration: underline;
        font-weight: bold; }
        .woocommerce #content div.product div.summary.entry-summary .single-product__categories a:hover,
        .woocommerce-page #content div.product div.summary.entry-summary .single-product__categories a:hover {
          color: var(--color-primary); }
  .woocommerce #content div.product .product_meta .sku_wrapper span.sku,
  .woocommerce-page #content div.product .product_meta .sku_wrapper span.sku {
    font-weight: bold; }
  .woocommerce #content div.product .product-specs,
  .woocommerce-page #content div.product .product-specs {
    margin-top: 1rem;
    width: 100%; }
    .woocommerce #content div.product .product-specs tr > *,
    .woocommerce-page #content div.product .product-specs tr > * {
      padding: 0.5rem 1rem;
      border: 2px white solid;
      background-color: var(--color-light-gray);
      font-weight: normal;
      width: 50%; }
  .woocommerce #content div.product .product-availibility,
  .woocommerce-page #content div.product .product-availibility {
    padding: var(--spacing-vertical-global) 1rem var(--spacing-vertical-global) 0; }
    .woocommerce #content div.product .product-availibility .availability-icon,
    .woocommerce-page #content div.product .product-availibility .availability-icon {
      margin-right: 0.5rem; }
  .woocommerce #content div.product .product-price__header,
  .woocommerce-page #content div.product .product-price__header {
    margin-bottom: 0;
    font-size: 1.25rem; }
  .woocommerce #content div.product p.price,
  .woocommerce #content div.product span.price,
  .woocommerce-page #content div.product p.price,
  .woocommerce-page #content div.product span.price {
    color: var(--color-secondary);
    font-weight: bold;
    margin: 0; }
  .woocommerce #content div.product .product-qty__description,
  .woocommerce-page #content div.product .product-qty__description {
    margin-bottom: 0.5rem; }
  .woocommerce #content div.product form.cart,
  .woocommerce-page #content div.product form.cart {
    display: flex;
    align-items: center;
    gap: 1rem; }
    .woocommerce #content div.product form.cart::before,
    .woocommerce-page #content div.product form.cart::before {
      display: none; }
    @media (min-width: 992px) {
      .woocommerce #content div.product form.cart,
      .woocommerce-page #content div.product form.cart {
        gap: 1.5rem; } }
  .woocommerce #content div.product .quantity .qty,
  .woocommerce-page #content div.product .quantity .qty {
    width: 4.5rem; }
    @media (min-width: 992px) {
      .woocommerce #content div.product .quantity .qty,
      .woocommerce-page #content div.product .quantity .qty {
        width: 6rem; } }
  .woocommerce #content div.product .woocommerce-tabs ul.tabs,
  .woocommerce-page #content div.product .woocommerce-tabs ul.tabs {
    border-color: var(--color-black); }
    .woocommerce #content div.product .woocommerce-tabs ul.tabs::before, .woocommerce #content div.product .woocommerce-tabs ul.tabs::after,
    .woocommerce-page #content div.product .woocommerce-tabs ul.tabs::before,
    .woocommerce-page #content div.product .woocommerce-tabs ul.tabs::after {
      border-color: var(--color-black); }
    .woocommerce #content div.product .woocommerce-tabs ul.tabs li,
    .woocommerce #content div.product .woocommerce-tabs ul.tabs li::before,
    .woocommerce #content div.product .woocommerce-tabs ul.tabs li::after,
    .woocommerce-page #content div.product .woocommerce-tabs ul.tabs li,
    .woocommerce-page #content div.product .woocommerce-tabs ul.tabs li::before,
    .woocommerce-page #content div.product .woocommerce-tabs ul.tabs li::after {
      border-radius: 0;
      border-color: var(--color-black); }
    .woocommerce #content div.product .woocommerce-tabs ul.tabs li,
    .woocommerce-page #content div.product .woocommerce-tabs ul.tabs li {
      background-color: var(--color-black); }
      .woocommerce #content div.product .woocommerce-tabs ul.tabs li > a,
      .woocommerce-page #content div.product .woocommerce-tabs ul.tabs li > a {
        color: var(--color-white); }
      .woocommerce #content div.product .woocommerce-tabs ul.tabs li:hover, .woocommerce #content div.product .woocommerce-tabs ul.tabs li.active,
      .woocommerce-page #content div.product .woocommerce-tabs ul.tabs li:hover,
      .woocommerce-page #content div.product .woocommerce-tabs ul.tabs li.active {
        background-color: var(--color-white); }
        .woocommerce #content div.product .woocommerce-tabs ul.tabs li:hover > a, .woocommerce #content div.product .woocommerce-tabs ul.tabs li.active > a,
        .woocommerce-page #content div.product .woocommerce-tabs ul.tabs li:hover > a,
        .woocommerce-page #content div.product .woocommerce-tabs ul.tabs li.active > a {
          color: var(--color-black); }
      .woocommerce #content div.product .woocommerce-tabs ul.tabs li::after, .woocommerce #content div.product .woocommerce-tabs ul.tabs li::before,
      .woocommerce-page #content div.product .woocommerce-tabs ul.tabs li::after,
      .woocommerce-page #content div.product .woocommerce-tabs ul.tabs li::before {
        box-shadow: none; }
  .woocommerce #content div.product table.lapp__product-meta,
  .woocommerce-page #content div.product table.lapp__product-meta {
    background-color: var(--color-light-gray);
    margin-top: 1rem; }
    .woocommerce #content div.product table.lapp__product-meta tbody tr th,
    .woocommerce #content div.product table.lapp__product-meta tbody tr td,
    .woocommerce-page #content div.product table.lapp__product-meta tbody tr th,
    .woocommerce-page #content div.product table.lapp__product-meta tbody tr td {
      border: 1px var(--color-white) solid;
      padding: 0.5rem; }
      @media (max-width: 767.98px) {
        .woocommerce #content div.product table.lapp__product-meta tbody tr th,
        .woocommerce #content div.product table.lapp__product-meta tbody tr td,
        .woocommerce-page #content div.product table.lapp__product-meta tbody tr th,
        .woocommerce-page #content div.product table.lapp__product-meta tbody tr td {
          font-size: 0.8rem; } }

.woocommerce {
  --table-cell-padding: 0.5rem;
  --grid: 5fr 2fr 2fr 1fr 1fr; }
  @media (min-width: 992px) {
    .woocommerce {
      --grid: 5fr repeat(4, 3fr) 2fr 2fr; } }
  .woocommerce ul.products,
  .woocommerce ul.products[class*="columns-"] {
    list-style: none;
    padding-left: 0;
    margin: 0;
    font-size: 0.9rem; }
    @media (min-width: 992px) {
      .woocommerce ul.products,
      .woocommerce ul.products[class*="columns-"] {
        font-size: 1rem; } }
    .woocommerce ul.products::before,
    .woocommerce ul.products[class*="columns-"]::before {
      display: none; }
    .woocommerce ul.products li.product,
    .woocommerce ul.products[class*="columns-"] li.product {
      width: 100%;
      height: 100%;
      float: none;
      clear: none;
      display: flex !important;
      flex-direction: column;
      align-items: center;
      text-align: center;
      margin: 0;
      position: relative; }
      .woocommerce ul.products li.product a .product-loop__content,
      .woocommerce ul.products[class*="columns-"] li.product a .product-loop__content {
        color: var(--color-secondary); }
        .woocommerce ul.products li.product a .product-loop__content .price,
        .woocommerce ul.products[class*="columns-"] li.product a .product-loop__content .price {
          color: var(--color-black); }
      .woocommerce ul.products li.product .price,
      .woocommerce ul.products[class*="columns-"] li.product .price {
        font-size: 100%;
        padding-bottom: 1rem; }
      .woocommerce ul.products li.product a.button,
      .woocommerce ul.products[class*="columns-"] li.product a.button {
        margin-top: auto; }
      .woocommerce ul.products li.product a.woocommerce-loop-product__link,
      .woocommerce ul.products[class*="columns-"] li.product a.woocommerce-loop-product__link {
        color: var(--color-black); }
        .woocommerce ul.products li.product a.woocommerce-loop-product__link .woocommerce-loop-product__title,
        .woocommerce ul.products li.product a.woocommerce-loop-product__link .woocommerce-loop-category__title,
        .woocommerce ul.products[class*="columns-"] li.product a.woocommerce-loop-product__link .woocommerce-loop-product__title,
        .woocommerce ul.products[class*="columns-"] li.product a.woocommerce-loop-product__link .woocommerce-loop-category__title {
          padding-top: 1.5rem;
          padding-bottom: 1rem; }
        .woocommerce ul.products li.product a.woocommerce-loop-product__link:hover, .woocommerce ul.products li.product a.woocommerce-loop-product__link:focus,
        .woocommerce ul.products[class*="columns-"] li.product a.woocommerce-loop-product__link:hover,
        .woocommerce ul.products[class*="columns-"] li.product a.woocommerce-loop-product__link:focus {
          color: var(--color-black);
          outline: none; }
          .woocommerce ul.products li.product a.woocommerce-loop-product__link:hover .woocommerce-loop-product__title,
          .woocommerce ul.products li.product a.woocommerce-loop-product__link:hover .woocommerce-loop-category__title, .woocommerce ul.products li.product a.woocommerce-loop-product__link:focus .woocommerce-loop-product__title,
          .woocommerce ul.products li.product a.woocommerce-loop-product__link:focus .woocommerce-loop-category__title,
          .woocommerce ul.products[class*="columns-"] li.product a.woocommerce-loop-product__link:hover .woocommerce-loop-product__title,
          .woocommerce ul.products[class*="columns-"] li.product a.woocommerce-loop-product__link:hover .woocommerce-loop-category__title,
          .woocommerce ul.products[class*="columns-"] li.product a.woocommerce-loop-product__link:focus .woocommerce-loop-product__title,
          .woocommerce ul.products[class*="columns-"] li.product a.woocommerce-loop-product__link:focus .woocommerce-loop-category__title {
            text-decoration: underline; }
      .woocommerce ul.products li.product .product-loop__content,
      .woocommerce ul.products[class*="columns-"] li.product .product-loop__content {
        background-color: var(--color-white);
        padding: 0;
        position: relative;
        width: 100%;
        font-size: var(--font-size-xs);
        border: 1px var(--color-light-gray) solid; }
        .woocommerce ul.products li.product .product-loop__content:hover,
        .woocommerce ul.products[class*="columns-"] li.product .product-loop__content:hover {
          background-color: var(--color-light-gray); }
        .woocommerce ul.products li.product .product-loop__content .product-heading,
        .woocommerce ul.products[class*="columns-"] li.product .product-loop__content .product-heading {
          display: flex; }
        .woocommerce ul.products li.product .product-loop__content .woocommerce-loop-product__title,
        .woocommerce ul.products[class*="columns-"] li.product .product-loop__content .woocommerce-loop-product__title {
          color: var(--color-black);
          line-height: 1.2;
          font-weight: bold;
          margin-bottom: var(--spacing-vertical-global);
          font-size: var(--font-size-h5);
          padding-top: 0;
          padding-bottom: 0;
          margin-bottom: 0;
          display: flex; }
      .woocommerce ul.products li.product .loop-image__wrapper,
      .woocommerce ul.products[class*="columns-"] li.product .loop-image__wrapper {
        padding: 0.5rem;
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: var(--color-light-gray);
        border: 1px var(--color-primary) solid;
        min-width: 200px; }
        .woocommerce ul.products li.product .loop-image__wrapper img,
        .woocommerce ul.products[class*="columns-"] li.product .loop-image__wrapper img {
          max-height: 50px; }
      .woocommerce ul.products li.product > a:not(.button),
      .woocommerce ul.products[class*="columns-"] li.product > a:not(.button) {
        width: 100%; }
      .woocommerce ul.products li.product > a img,
      .woocommerce ul.products[class*="columns-"] li.product > a img {
        width: initial;
        margin: 0 auto; }
    .woocommerce ul.products .product-group__term-title,
    .woocommerce ul.products[class*="columns-"] .product-group__term-title {
      display: flex;
      padding: 1rem 0.5rem;
      background-color: var(--color-light-gray); }
      .woocommerce ul.products .product-group__term-title h2, .woocommerce ul.products .product-group__term-title .h2,
      .woocommerce ul.products[class*="columns-"] .product-group__term-title h2,
      .woocommerce ul.products[class*="columns-"] .product-group__term-title .h2 {
        margin: 0;
        font-size: var(--font-size-sm); }
  .woocommerce .loop-content {
    margin: 0;
    color: var(--color-secondary);
    width: 100%; }

.woocommerce .product-labels {
  background-color: var(--color-light-gray);
  margin: 0; }

.woocommerce .availability-icon::before {
  font-family: "Font Awesome 5 Pro";
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  content: "";
  font-weight: bold;
  font-size: 0.75rem; }

.woocommerce .availability-icon.in-stock {
  color: var(--color-success) !important; }

.woocommerce .availability-icon.out-of-stock {
  color: var(--color-alert) !important; }

.woocommerce .availability-icon.available-on-backorder, .woocommerce .availability-icon.on-backorder {
  color: var(--color-notice) !important; }

.woocommerce .availability-description ul {
  list-style: none;
  padding-left: 0;
  margin: 0; }
  .woocommerce .availability-description ul li {
    display: flex; }
    .woocommerce .availability-description ul li .description {
      margin-left: 0.5rem;
      color: var(--color-secondary);
      font-weight: bold; }

.woocommerce .loop-product__wrapper {
  display: grid;
  grid-template-columns: var(--grid);
  border: 1px var(--color-light-gray) solid;
  color: var(--color-secondary); }
  .woocommerce .loop-product__wrapper a {
    color: var(--color-secondary); }
  .woocommerce .loop-product__wrapper:hover {
    background-color: var(--color-light-gray); }
  .woocommerce .loop-product__wrapper > * {
    padding: var(--table-cell-padding);
    display: flex;
    align-items: center; }
    .woocommerce .loop-product__wrapper > *:not(.loop-item__title) {
      justify-content: center;
      text-align: center; }
    .woocommerce .loop-product__wrapper > *.loop-item__title {
      text-align: left; }
      .woocommerce .loop-product__wrapper > *.loop-item__title h2, .woocommerce .loop-product__wrapper > *.loop-item__title .h2 {
        font-size: 1rem;
        margin: 0;
        line-height: normal;
        color: var(--color-secondary); }
    @media (max-width: 991.98px) {
      .woocommerce .loop-product__wrapper > *.loop-item__sku, .woocommerce .loop-product__wrapper > *.loop-item__unit, .woocommerce .loop-product__wrapper > *.loop-item__supplier, .woocommerce .loop-product__wrapper > *.loop-item__electrical-nr, .woocommerce .loop-product__wrapper > *.loop-item__vendor-material {
        display: none; } }
    .woocommerce .loop-product__wrapper > *.loop-item__sku {
      word-break: break-all; }
    .woocommerce .loop-product__wrapper > *.loop-item__availability {
      justify-content: center; }
    .woocommerce .loop-product__wrapper > *.loop-item__dropdown {
      justify-content: center;
      padding: 0; }
      @media (min-width: 992px) {
        .woocommerce .loop-product__wrapper > *.loop-item__dropdown {
          display: none; } }
      .woocommerce .loop-product__wrapper > *.loop-item__dropdown .btn-product-info__toggle {
        appearance: none;
        border: none;
        background-color: transparent;
        width: 100%;
        height: 100%; }
        .woocommerce .loop-product__wrapper > *.loop-item__dropdown .btn-product-info__toggle::before {
          content: "";
          font-family: "Font Awesome 5 Pro";
          display: inline-block;
          font-style: normal;
          font-variant: normal;
          text-rendering: auto;
          content: "";
          font-weight: bold;
          font-size: 0.75rem; }
        .woocommerce .loop-product__wrapper > *.loop-item__dropdown .btn-product-info__toggle.open::before {
          transform: rotate(180deg); }

.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .shop_table {
  background-color: var(--color-white); }

.woocommerce-cart table.cart .quantity .qty {
  width: 5rem;
  padding: 1rem 0.5rem; }

.woocommerce-cart table.cart td.actions .coupon .input-text {
  border: none;
  color: var(--color-black);
  background-color: var(--color-light-gray);
  transition: var(--transition-global);
  line-height: normal;
  border-radius: 0;
  padding: var(--spacing-button-input);
  border: 1px var(--color-light-gray) solid;
  font-size: 0.9rem; }
  @media (min-width: 992px) {
    .woocommerce-cart table.cart td.actions .coupon .input-text {
      padding-left: 1.2rem;
      padding-right: 1.2rem; } }
  .woocommerce-cart table.cart td.actions .coupon .input-text::placeholder {
    color: var(--color-dark-gray); }
  .woocommerce-cart table.cart td.actions .coupon .input-text:disabled {
    background-color: var(--color-medium-gray);
    opacity: 0.5; }

.woocommerce-cart .cart-collaterals {
  padding-top: 1.25rem; }
  @media (min-width: 992px) {
    .woocommerce-cart .cart-collaterals .cross-sells .products {
      grid-template-columns: repeat(3, 1fr); } }

.woocommerce ul#shipping_method li input {
  vertical-align: baseline; }

.woocommerce form .form-row.woocommerce-invalid label {
  color: var(--color-alert); }

.woocommerce-account .woocommerce-MyAccount-navigation {
  max-width: 340px; }
  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    padding: 0;
    list-style: none; }
    .woocommerce-account .woocommerce-MyAccount-navigation ul > li > a {
      transition: var(--transition-global);
      color: var(--color-white);
      background-color: var(--color-primary);
      display: inline-block;
      text-align: center;
      border-radius: 0;
      font-weight: normal;
      line-height: normal;
      border: none;
      padding: var(--spacing-button-input);
      border: 1px var(--color-primary) solid;
      font-size: 0.9rem;
      border-color: var(--color-light-gray);
      color: var(--color-black);
      background-color: var(--color-white);
      width: 100%;
      text-align: left; }
      .woocommerce-account .woocommerce-MyAccount-navigation ul > li > a:hover, .woocommerce-account .woocommerce-MyAccount-navigation ul > li > a:focus, .woocommerce-account .woocommerce-MyAccount-navigation ul > li > a:active {
        color: var(--color-white);
        background-color: var(--color-black);
        border-color: var(--color-black);
        text-decoration: none; }
      .woocommerce-account .woocommerce-MyAccount-navigation ul > li > a[type="submit"] {
        margin-top: 0; }
      .woocommerce-account .woocommerce-MyAccount-navigation ul > li > a:disabled, .woocommerce-account .woocommerce-MyAccount-navigation ul > li > a:disabled[disabled] {
        padding: var(--spacing-button-input);
        color: var(--color-white); }
      .woocommerce-account .woocommerce-MyAccount-navigation ul > li > a:hover {
        background-color: var(--color-black);
        border-color: var(--color-black); }
    .woocommerce-account .woocommerce-MyAccount-navigation ul > li.is-active > a {
      transition: var(--transition-global);
      color: var(--color-white);
      background-color: var(--color-primary);
      display: inline-block;
      text-align: center;
      border-radius: 0;
      font-weight: normal;
      line-height: normal;
      border: none;
      padding: var(--spacing-button-input);
      border: 1px var(--color-primary) solid;
      font-size: 0.9rem;
      text-align: left; }
      .woocommerce-account .woocommerce-MyAccount-navigation ul > li.is-active > a:hover, .woocommerce-account .woocommerce-MyAccount-navigation ul > li.is-active > a:focus, .woocommerce-account .woocommerce-MyAccount-navigation ul > li.is-active > a:active {
        color: var(--color-white);
        background-color: var(--color-black);
        border-color: var(--color-black);
        text-decoration: none; }
      .woocommerce-account .woocommerce-MyAccount-navigation ul > li.is-active > a[type="submit"] {
        margin-top: 0; }
      .woocommerce-account .woocommerce-MyAccount-navigation ul > li.is-active > a:disabled, .woocommerce-account .woocommerce-MyAccount-navigation ul > li.is-active > a:disabled[disabled] {
        padding: var(--spacing-button-input);
        color: var(--color-white); }

.wc-breadcrumb__wrapper {
  background-color: var(--color-dark-gray);
  padding: 0.85rem 0; }
  @media (min-width: 768px) {
    .wc-breadcrumb__wrapper {
      padding: 1.25rem 0; } }
  .wc-breadcrumb__wrapper .woocommerce-breadcrumb {
    margin: 0;
    color: var(--color-black);
    line-height: 1.4; }
    .wc-breadcrumb__wrapper .woocommerce-breadcrumb a {
      color: var(--color-black); }

.wc-banner__wrapper .wc-banner {
  height: 20vw;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }

.product-filter > * {
  border-top: 2px var(--color-primary) solid;
  padding: 1.5rem 0; }

.product-filter .active-filters .active-filters__title {
  font-size: var(--font-size-sm);
  font-weight: bold; }

.product-filter .active-filters .active-filter {
  display: flex;
  padding: 0.25rem 0.5rem; }
  .product-filter .active-filters .active-filter .remove-filter {
    background: none;
    border: none;
    padding: 0; }
    .product-filter .active-filters .active-filter .remove-filter::before {
      content: '';
      font-family: "Font Awesome 5 Pro";
      display: inline-block;
      font-style: normal;
      font-variant: normal;
      text-rendering: auto;
      content: "";
      font-weight: bold;
      margin-right: 0.5rem; }
    .product-filter .active-filters .active-filter .remove-filter:hover {
      color: var(--color-primary); }

.product-filter .search-filters__wrapper {
  padding-bottom: 0; }
  .product-filter .search-filters__wrapper .filter-toggle__wrapper {
    display: none;
    padding: 1rem 0; }
    @media (max-width: 991.98px) {
      .product-filter .search-filters__wrapper .filter-toggle__wrapper {
        display: block; } }
    .product-filter .search-filters__wrapper .filter-toggle__wrapper #filter_toggler:after {
      font-family: "Font Awesome 5 Pro";
      display: inline-block;
      font-style: normal;
      font-variant: normal;
      text-rendering: auto;
      content: "";
      font-weight: normal;
      margin-left: 1rem;
      color: var(--color-white); }
  @media (max-width: 991.98px) {
    .product-filter .search-filters__wrapper .search-filters {
      display: none; }
      .product-filter .search-filters__wrapper .search-filters.active {
        display: block; } }
  .product-filter .search-filters__wrapper .search-filters #child_cat,
  .product-filter .search-filters__wrapper .search-filters label[for="child_cat"] {
    display: none; }
  .product-filter .search-filters__wrapper .filter-row {
    padding: 0.5rem 0; }
    .product-filter .search-filters__wrapper .filter-row > label {
      font-weight: bold;
      margin-bottom: 1rem; }
    .product-filter .search-filters__wrapper .filter-row fieldset {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 0.5rem; }
      .product-filter .search-filters__wrapper .filter-row fieldset input[type=checkbox] {
        display: none; }
        .product-filter .search-filters__wrapper .filter-row fieldset input[type=checkbox]:checked + label {
          color: var(--color-primary);
          font-weight: bold; }
        .product-filter .search-filters__wrapper .filter-row fieldset input[type=checkbox]:hover + label {
          color: var(--color-primary); }
      .product-filter .search-filters__wrapper .filter-row fieldset label {
        cursor: pointer;
        margin: 0; }
  .product-filter .search-filters__wrapper select,
  .product-filter .search-filters__wrapper input:not([type=checkbox]) {
    width: 100%; }
  .product-filter .search-filters__wrapper select:disabled {
    color: var(--color-dark-gray); }
  .product-filter .search-filters__wrapper select option:disabled {
    color: var(--color-dark-gray); }
  .product-filter .search-filters__wrapper .searchfield__wrapper .searchfield__wrapper-content {
    display: flex; }
  @media (min-width: 992px) {
    .product-filter .search-filters__wrapper .searchfield__wrapper {
      width: calc(var(--container-w-sidebar) - var(--spacing-horizontal-global));
      position: absolute;
      top: 0;
      right: 0;
      margin-top: var(--search-field-top-margin);
      height: var(--search-field-height); } }
  .product-filter .search-filters__wrapper .searchfield__wrapper .searchform__field {
    max-width: 400px;
    margin-right: 1rem; }
  .product-filter .search-filters__wrapper .product-filter__submit {
    padding-top: 1.5rem; }

.loop-content__categories {
  display: grid;
  grid-template-columns: 1fr 5fr;
  margin: 0; }
  .loop-content__categories > *.loop-item__title::after {
    content: "";
    font-family: "Font Awesome 5 Pro";
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    content: "";
    font-weight: normal;
    margin-left: auto;
    color: var(--color-black); }

.woocommerce ul.products a .loop-content__categories,
.woocommerce ul.products[class*="columns-"] a .loop-content__categories {
  display: grid;
  grid-template-columns: 1fr 5fr;
  margin: 0; }
  .woocommerce ul.products a .loop-content__categories:hover,
  .woocommerce ul.products[class*="columns-"] a .loop-content__categories:hover {
    background-color: var(--color-light-gray); }
  .woocommerce ul.products a .loop-content__categories > *,
  .woocommerce ul.products[class*="columns-"] a .loop-content__categories > * {
    padding: 1rem; }
    .woocommerce ul.products a .loop-content__categories > *.loop-item__image,
    .woocommerce ul.products[class*="columns-"] a .loop-content__categories > *.loop-item__image {
      background-color: var(--color-light-gray);
      border: 1px var(--color-primary) solid;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 0.5rem 1rem;
      min-height: 50px;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat; }
    .woocommerce ul.products a .loop-content__categories > *.loop-item__title,
    .woocommerce ul.products[class*="columns-"] a .loop-content__categories > *.loop-item__title {
      display: flex;
      align-items: center;
      border: 1px var(--color-light-gray) solid;
      text-align: left; }
      .woocommerce ul.products a .loop-content__categories > *.loop-item__title h2, .woocommerce ul.products a .loop-content__categories > *.loop-item__title .h2,
      .woocommerce ul.products[class*="columns-"] a .loop-content__categories > *.loop-item__title h2,
      .woocommerce ul.products[class*="columns-"] a .loop-content__categories > *.loop-item__title .h2 {
        font-size: var(--font-size-h6);
        margin: 0;
        line-height: 1.6; }
        @media (max-width: 575.98px) {
          .woocommerce ul.products a .loop-content__categories > *.loop-item__title h2, .woocommerce ul.products a .loop-content__categories > *.loop-item__title .h2,
          .woocommerce ul.products[class*="columns-"] a .loop-content__categories > *.loop-item__title h2,
          .woocommerce ul.products[class*="columns-"] a .loop-content__categories > *.loop-item__title .h2 {
            font-size: 0.9rem; } }

.woocommerce form.login {
  border: none;
  padding: 0;
  width: 100%; }

.woocommerce form .form-row {
  padding: 0 0 1rem 0; }
  .woocommerce form .form-row input.input-text,
  .woocommerce form .form-row textarea {
    background-color: var(--color-light-gray);
    border: none; }

.woocommerce .upsells {
  width: 100%; }
  .woocommerce .upsells ul.products,
  .woocommerce .upsells ul.products[class*="columns-"] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    width: 100%; }
    @media (min-width: 992px) {
      .woocommerce .upsells ul.products,
      .woocommerce .upsells ul.products[class*="columns-"] {
        grid-template-columns: repeat(4, 1fr); } }

.products.related {
  width: 100%;
  border-top: 3px var(--color-primary) solid;
  padding-top: var(--spacing-vertical-global-lg); }
  .products.related h2, .products.related .h2 {
    font-size: var(--font-size-h3); }
  .products.related .products.columns-4 {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(2, 1fr); }
    @media (min-width: 992px) {
      .products.related .products.columns-4 {
        gap: 2rem;
        grid-template-columns: repeat(4, 1fr); } }

.product-info__mobile {
  display: none;
  font-size: 0.9rem;
  margin-right: auto;
  width: 100%;
  background-color: var(--color-light-gray); }
  @media (max-width: 991.98px) {
    .product-info__mobile.active {
      display: block; } }
  .product-info__mobile table tbody tr th,
  .product-info__mobile table tbody tr td {
    border: 1px var(--color-white) solid;
    padding: 0.5rem 0.7rem;
    text-align: left; }

.product-searchform {
  display: flex;
  justify-content: center; }
  .product-searchform #searchform {
    margin: 0 auto;
    max-width: 500px;
    width: 100%; }
    .product-searchform #searchform .searchfield__wrapper .searchfield__wrapper-content {
      display: flex; }
      .product-searchform #searchform .searchfield__wrapper .searchfield__wrapper-content .searchform__field {
        width: 100%;
        max-width: 100%; }

.post-banner__wrapper .post-banner {
  width: 100%;
  display: flex;
  align-items: center;
  height: 27vw;
  min-height: var(--image-min-height);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }

.gform_wrapper {
  max-width: 700px; }
  .gform_wrapper.gform_center_wrapper {
    margin: 0 auto; }
  .gform_wrapper .gform_validation_errors .gform_submission_error {
    font-size: 1.3rem;
    color: red; }
  .gform_wrapper .validation_error {
    color: red; }
  .gform_wrapper ul {
    list-style: none;
    padding-left: 0;
    margin: 0; }
  .gform_wrapper .gform_fields {
    list-style: none;
    padding-left: 0;
    margin: 0; }
    .gform_wrapper .gform_fields .gfield {
      padding-bottom: var(--spacing-vertical-global); }
      .gform_wrapper .gform_fields .gfield .validation_message {
        color: red; }
      .gform_wrapper .gform_fields .gfield.hidden_label label {
        display: none; }
      .gform_wrapper .gform_fields .gfield .gf_name_has_2 {
        display: grid;
        gap: 2rem; }
        @media (min-width: 992px) {
          .gform_wrapper .gform_fields .gfield .gf_name_has_2 {
            grid-template-columns: repeat(2, 1fr); } }
      .gform_wrapper .gform_fields .gfield input[type=text],
      .gform_wrapper .gform_fields .gfield input[type=number],
      .gform_wrapper .gform_fields .gfield textarea,
      .gform_wrapper .gform_fields .gfield select {
        border: none;
        color: var(--color-black);
        background-color: var(--color-light-gray);
        transition: var(--transition-global);
        line-height: normal;
        border-radius: 0;
        padding: var(--spacing-button-input);
        border: 1px var(--color-light-gray) solid;
        font-size: 0.9rem;
        width: 100%; }
        @media (min-width: 992px) {
          .gform_wrapper .gform_fields .gfield input[type=text],
          .gform_wrapper .gform_fields .gfield input[type=number],
          .gform_wrapper .gform_fields .gfield textarea,
          .gform_wrapper .gform_fields .gfield select {
            padding-left: 1.2rem;
            padding-right: 1.2rem; } }
        .gform_wrapper .gform_fields .gfield input[type=text]::placeholder,
        .gform_wrapper .gform_fields .gfield input[type=number]::placeholder,
        .gform_wrapper .gform_fields .gfield textarea::placeholder,
        .gform_wrapper .gform_fields .gfield select::placeholder {
          color: var(--color-dark-gray); }
        .gform_wrapper .gform_fields .gfield input[type=text]:disabled,
        .gform_wrapper .gform_fields .gfield input[type=number]:disabled,
        .gform_wrapper .gform_fields .gfield textarea:disabled,
        .gform_wrapper .gform_fields .gfield select:disabled {
          background-color: var(--color-medium-gray);
          opacity: 0.5; }
      .gform_wrapper .gform_fields .gfield select {
        background-size: 1rem;
        background-repeat: no-repeat;
        background-position: calc(100% - 20px) center;
        padding-right: 1.8rem; }
      .gform_wrapper .gform_fields .gfield label,
      .gform_wrapper .gform_fields .gfield legend {
        margin-bottom: 0.3rem; }
      .gform_wrapper .gform_fields .gfield.gfield_html label {
        display: block; }
      .gform_wrapper .gform_fields .gfield input[type="radio"] {
        width: auto;
        margin-right: 0.625rem; }
      .gform_wrapper .gform_fields .gfield .ginput_container_checkbox ul.gfield_checkbox {
        list-style: none;
        padding-left: 0;
        margin: 0; }
        .gform_wrapper .gform_fields .gfield .ginput_container_checkbox ul.gfield_checkbox li {
          display: flex;
          flex-wrap: wrap;
          flex-direction: row; }
          .gform_wrapper .gform_fields .gfield .ginput_container_checkbox ul.gfield_checkbox li input {
            width: 20px; }
          .gform_wrapper .gform_fields .gfield .ginput_container_checkbox ul.gfield_checkbox li label {
            display: block;
            padding-left: 0.625rem;
            line-height: 1;
            width: calc(100% - 20px); }
      .gform_wrapper .gform_fields .gfield .ginput_container_fileupload input {
        color: var(--color-white); }
      .gform_wrapper .gform_fields .gfield.gfield_radio_wrapper label, .gform_wrapper .gform_fields .gfield.gfield_checkbox_wrapper label {
        display: block; }
    .gform_wrapper .gform_fields .gfield_radio li,
    .gform_wrapper .gform_fields .gfield_checkbox li {
      display: flex; }
      .gform_wrapper .gform_fields .gfield_radio li label,
      .gform_wrapper .gform_fields .gfield_checkbox li label {
        display: block; }
    .gform_wrapper .gform_fields .clear-multi {
      display: flex;
      justify-content: space-between; }
      .gform_wrapper .gform_fields .clear-multi i {
        display: none; }
    .gform_wrapper .gform_fields .ginput_container_time {
      display: flex;
      align-items: center;
      width: 50%; }
  .gform_wrapper .gform_footer {
    margin: 0; }
    .gform_wrapper .gform_footer input[type=submit] {
      transition: var(--transition-global);
      color: var(--color-white);
      background-color: var(--color-primary);
      display: inline-block;
      text-align: center;
      border-radius: 0;
      font-weight: normal;
      line-height: normal;
      border: none;
      padding: var(--spacing-button-input);
      border: 1px var(--color-primary) solid;
      font-size: 0.9rem; }
      .gform_wrapper .gform_footer input[type=submit]:hover, .gform_wrapper .gform_footer input[type=submit]:focus, .gform_wrapper .gform_footer input[type=submit]:active {
        color: var(--color-white);
        background-color: var(--color-black);
        border-color: var(--color-black);
        text-decoration: none; }
      .gform_wrapper .gform_footer input[type=submit][type="submit"] {
        margin-top: 0; }
      .gform_wrapper .gform_footer input[type=submit]:disabled, .gform_wrapper .gform_footer input[type=submit]:disabled[disabled] {
        padding: var(--spacing-button-input);
        color: var(--color-white); }
  .gform_wrapper.form__full_width_wrapper {
    max-width: 100%;
    width: 100%; }
    .gform_wrapper.form__full_width_wrapper .gform_fields {
      display: flex;
      flex-wrap: wrap; }
      .gform_wrapper.form__full_width_wrapper .gform_fields .gfield {
        width: 50%;
        padding-left: 0.5rem;
        padding-right: 0.5rem; }
        .gform_wrapper.form__full_width_wrapper .gform_fields .gfield.gfield_html {
          width: 100%;
          padding: 0; }

#header {
  position: sticky;
  top: 0;
  z-index: 9999; }

.header__wrapper {
  position: relative; }
  .header__wrapper .site-header__wrapper {
    background-color: var(--color-white); }
    .header__wrapper .site-header__wrapper .site-header {
      width: 100%;
      max-width: var(--responsive-alignwide-width);
      margin-left: auto;
      margin-right: auto; }
      .header__wrapper .site-header__wrapper .site-header .site-header__content {
        display: flex;
        justify-content: space-between;
        align-items: center; }
        @media (max-width: 991.98px) {
          .header__wrapper .site-header__wrapper .site-header .site-header__content {
            flex-wrap: wrap; } }
        .header__wrapper .site-header__wrapper .site-header .site-header__content .site-logo {
          padding-top: 1rem;
          padding-bottom: 1rem;
          display: flex;
          align-items: center; }
          .header__wrapper .site-header__wrapper .site-header .site-header__content .site-logo img {
            max-height: 3.2rem;
            max-width: 6.25rem; }
            @media (min-width: 992px) {
              .header__wrapper .site-header__wrapper .site-header .site-header__content .site-logo img {
                max-width: 19rem; } }
        .header__wrapper .site-header__wrapper .site-header .site-header__content .navbar__links {
          margin-left: auto;
          display: flex;
          align-items: center;
          gap: 1rem; }
          @media (min-width: 992px) {
            .header__wrapper .site-header__wrapper .site-header .site-header__content .navbar__links {
              margin-left: 0; } }
          .header__wrapper .site-header__wrapper .site-header .site-header__content .navbar__links .request-links {
            display: flex;
            gap: 1rem; }
            @media (max-width: 991.98px) {
              .header__wrapper .site-header__wrapper .site-header .site-header__content .navbar__links .request-links {
                display: none; } }
  .header__wrapper .site-nav {
    background-color: var(--color-medium-gray); }

footer {
  background-color: var(--color-medium-gray);
  margin-top: 3rem; }
  footer .site-footer {
    padding-top: 1rem;
    padding-bottom: 1rem;
    display: flex;
    flex-direction: column-reverse;
    gap: 1rem;
    width: 100%;
    max-width: var(--responsive-alignwide-width);
    margin-left: auto;
    margin-right: auto; }
    @media (min-width: 992px) {
      footer .site-footer {
        justify-content: space-between;
        flex-direction: row; } }
    footer .site-footer a {
      color: var(--color-black); }
    footer .site-footer .footer-content__wrapper .nav-footer__container {
      display: flex;
      flex-wrap: wrap !important;
      gap: 1.5rem;
      justify-content: center;
      align-items: center; }
    footer .site-footer .footer-content__wrapper .footer-social {
      display: flex;
      align-items: flex-start;
      gap: 0.5rem; }
      footer .site-footer .footer-content__wrapper .footer-social a {
        font-size: var(--font-size-fontawesome);
        color: var(--color-black); }
        footer .site-footer .footer-content__wrapper .footer-social a:hover {
          color: var(--color-primary); }
        footer .site-footer .footer-content__wrapper .footer-social a.icon-facebook::before {
          font-family: "Font Awesome 5 Brands";
          display: inline-block;
          font-style: normal;
          font-variant: normal;
          text-rendering: auto;
          content: "";
          font-weight: normal; }
        footer .site-footer .footer-content__wrapper .footer-social a.icon-instagram::before {
          font-family: "Font Awesome 5 Brands";
          display: inline-block;
          font-style: normal;
          font-variant: normal;
          text-rendering: auto;
          content: "";
          font-weight: normal; }
        footer .site-footer .footer-content__wrapper .footer-social a.icon-twitter::before {
          font-family: "Font Awesome 5 Brands";
          display: inline-block;
          font-style: normal;
          font-variant: normal;
          text-rendering: auto;
          content: "";
          font-weight: normal; }
    footer .site-footer .copyright {
      color: var(--color-dark-gray);
      text-align: center; }

.navbar-toggler {
  order: 4;
  background-color: transparent;
  z-index: 9999;
  display: inline-block;
  background-color: transparent;
  line-height: 1.2;
  padding: 0.3rem;
  color: var(--color-black);
  text-align: center;
  border: none;
  line-height: 1;
  margin-left: 1rem; }
  .navbar-toggler:hover {
    color: var(--color-black); }
  .navbar-toggler::before {
    width: 1.3rem;
    height: 1.3rem; }
  .navbar-toggler::before {
    font-family: "Font Awesome 5 Pro";
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    content: "";
    font-weight: normal; }
  @media (min-width: 992px) {
    .navbar-toggler {
      display: none; } }

.navbar__wrapper {
  display: flex; }
  @media (max-width: 991.98px) {
    .navbar__wrapper {
      margin-left: auto; } }
  .navbar__wrapper .navbar__links {
    display: flex;
    align-items: center; }

.navbar {
  padding: 0; }
  @media (max-width: 991.98px) {
    .navbar.desktop-menu {
      display: none; } }
  @media (min-width: 992px) {
    .navbar.mobile-menu {
      display: none; } }
  @media (max-width: 991.98px) {
    .navbar {
      width: 100%;
      overflow-y: scroll; } }
  .navbar .navbar-nav ul.navbar-menu {
    display: flex;
    list-style: none;
    padding-left: 0;
    margin: 0; }
    .navbar .navbar-nav ul.navbar-menu > li > .sub-menu {
      display: block;
      position: absolute;
      z-index: 9999; }
      @media (max-width: 991.98px) {
        .navbar .navbar-nav ul.navbar-menu > li > .sub-menu {
          position: relative;
          width: 100%; } }
    .navbar .navbar-nav ul.navbar-menu li {
      list-style: none; }
      .navbar .navbar-nav ul.navbar-menu li a {
        color: var(--color-black);
        display: block;
        text-decoration: none;
        font-weight: bold; }
      .navbar .navbar-nav ul.navbar-menu li > .sub-menu {
        padding: 0; }
      .navbar .navbar-nav ul.navbar-menu li:hover > a, .navbar .navbar-nav ul.navbar-menu li.current-menu-item > a {
        text-decoration: underline; }
      @media (min-width: 992px) {
        .navbar .navbar-nav ul.navbar-menu li.current_page_parent > a, .navbar .navbar-nav ul.navbar-menu li.current-menu-ancestor > a {
          text-decoration: underline; } }
      .navbar .navbar-nav ul.navbar-menu li.menu-item-has-children:hover .sub-menu {
        display: block; }

.navbar.mobile-menu {
  width: 100%;
  max-width: 90%;
  overflow-y: scroll;
  background-color: var(--color-white);
  margin-left: auto; }
  @media (min-width: 992px) {
    .navbar.mobile-menu {
      display: none; } }
  .navbar.mobile-menu .navbar-nav .navbar-nav__content {
    width: 100%; }
    .navbar.mobile-menu .navbar-nav .navbar-nav__content ul.navbar-menu {
      flex-direction: column;
      width: 100%;
      border: 1px var(--color-light-gray) solid;
      border-bottom: 1px var(--color-black) solid; }
      .navbar.mobile-menu .navbar-nav .navbar-nav__content ul.navbar-menu li > a {
        padding: 0.5rem;
        border: 1px var(--color-light-gray) solid; }
      .navbar.mobile-menu .navbar-nav .navbar-nav__content ul.navbar-menu li .sub-menu {
        position: relative;
        display: block;
        width: 100%; }
        .navbar.mobile-menu .navbar-nav .navbar-nav__content ul.navbar-menu li .sub-menu > li {
          padding: 0; }
          .navbar.mobile-menu .navbar-nav .navbar-nav__content ul.navbar-menu li .sub-menu > li > a {
            padding-left: 0.75rem; }
    .navbar.mobile-menu .navbar-nav .navbar-nav__content .request-links {
      display: flex;
      flex-direction: column;
      padding: 0.5rem;
      gap: 0.5rem;
      align-items: flex-start; }
      .navbar.mobile-menu .navbar-nav .navbar-nav__content .request-links a {
        width: 100%; }

.navbar.desktop-menu {
  margin-left: auto; }
  .navbar.desktop-menu .navbar-nav ul.navbar-menu {
    flex-direction: row;
    padding-top: 0; }
    .navbar.desktop-menu .navbar-nav ul.navbar-menu > li > .sub-menu {
      background-color: var(--color-white);
      display: none;
      border: 1px var(--color-light-gray) solid;
      top: 100%; }
      .navbar.desktop-menu .navbar-nav ul.navbar-menu > li > .sub-menu > li > a {
        padding: 0.4rem 1rem; }
    .navbar.desktop-menu .navbar-nav ul.navbar-menu > li > a {
      padding: 1.25rem; }

.nav-footer__container ul {
  list-style: none;
  padding: 0; }
  .nav-footer__container ul.nav-footer {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    list-style: none;
    padding-left: 0;
    margin: 0; }
    .nav-footer__container ul.nav-footer > li > a {
      padding: 0.5rem; }
    .nav-footer__container ul.nav-footer li.menu-item > .sub-menu {
      display: flex;
      flex-direction: column; }
      .nav-footer__container ul.nav-footer li.menu-item > .sub-menu > li {
        display: block; }
    .nav-footer__container ul.nav-footer li.menu-item > a:hover {
      color: var(--color-primary);
      text-decoration: none; }

.container-wrapper {
  padding-top: var(--spacing-vertical-global); }

.navigation.pagination {
  padding-bottom: var(--spacing-vertical-global); }
  .navigation.pagination .screen-reader-text {
    display: none; }
  .navigation.pagination .nav-links span,
  .navigation.pagination .nav-links a {
    transition: var(--transition-global);
    color: var(--color-white);
    background-color: var(--color-primary);
    display: inline-block;
    text-align: center;
    border-radius: 0;
    font-weight: normal;
    line-height: normal;
    border: none;
    padding: var(--spacing-button-input);
    border: 1px var(--color-primary) solid;
    font-size: 0.9rem; }
    .navigation.pagination .nav-links span:hover, .navigation.pagination .nav-links span:focus, .navigation.pagination .nav-links span:active,
    .navigation.pagination .nav-links a:hover,
    .navigation.pagination .nav-links a:focus,
    .navigation.pagination .nav-links a:active {
      color: var(--color-white);
      background-color: var(--color-black);
      border-color: var(--color-black);
      text-decoration: none; }
    .navigation.pagination .nav-links span[type="submit"],
    .navigation.pagination .nav-links a[type="submit"] {
      margin-top: 0; }
    .navigation.pagination .nav-links span:disabled, .navigation.pagination .nav-links span:disabled[disabled],
    .navigation.pagination .nav-links a:disabled,
    .navigation.pagination .nav-links a:disabled[disabled] {
      padding: var(--spacing-button-input);
      color: var(--color-white); }
    .navigation.pagination .nav-links span::after,
    .navigation.pagination .nav-links a::after {
      content: "";
      margin: 0; }
  .navigation.pagination .nav-links span {
    background-color: transparent;
    color: var(--color-primary); }

.single .post-thumbnail-img {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 25vw;
  min-height: var(--image-min-height);
  max-height: 60rem;
  width: 100%; }

.single-post .entry-content > * {
  max-width: var(--responsive-aligndefault-width); }

.single-post .entry {
  margin-bottom: var(--spacing-vertical-global);
  border-bottom: 2px var(--color-light-gray) solid; }

.entry-meta {
  display: flex;
  flex-wrap: wrap;
  padding: 0.6rem 0;
  border-top: 2px var(--color-light-gray) solid;
  font-size: var(--font-size-xs); }
  @media (max-width: 991.98px) {
    .entry-meta {
      flex-direction: column; } }
  .entry-meta p {
    margin-bottom: 0;
    font-weight: bold; }
  .entry-meta .entry__category-list ul {
    list-style: none;
    padding-left: 0;
    margin: 0; }
    .entry-meta .entry__category-list ul > li > a {
      display: inline-block; }
  .entry-meta .entry__tag-list a {
    font-style: italic; }
  .entry-meta .entry__share-links ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
    display: flex; }
    .entry-meta .entry__share-links ul li {
      padding: 0 0.7rem; }
      .entry-meta .entry__share-links ul li a {
        font-size: var(--font-size-fontawesome);
        line-height: 1.4; }
        .entry-meta .entry__share-links ul li a.facebook::before {
          font-family: "Font Awesome 5 Brands";
          display: inline-block;
          font-style: normal;
          font-variant: normal;
          text-rendering: auto;
          content: "";
          font-weight: normal; }
        .entry-meta .entry__share-links ul li a.linkedin::before {
          font-family: "Font Awesome 5 Brands";
          display: inline-block;
          font-style: normal;
          font-variant: normal;
          text-rendering: auto;
          content: "";
          font-weight: normal; }
        .entry-meta .entry__share-links ul li a.twitter::before {
          font-family: "Font Awesome 5 Brands";
          display: inline-block;
          font-style: normal;
          font-variant: normal;
          text-rendering: auto;
          content: "";
          font-weight: normal; }
  @media (min-width: 992px) {
    .entry-meta > * + * {
      padding-left: var(--spacing-horizontal-global);
      margin-left: var(--spacing-horizontal-global);
      border-left: 2px var(--color-light-gray) solid; } }
  @media (max-width: 991.98px) {
    .entry-meta > * + * {
      padding-top: var(--spacing-horizontal-global); } }

.sidebar ul {
  list-style: none;
  padding-left: 0;
  margin: 0; }
  .sidebar ul a {
    color: var(--color-black); }

.sidebar .post-categories > li,
.sidebar .product-categories > li {
  font-weight: bold; }

.sidebar .post-categories li.current-cat > a,
.sidebar .product-categories li.current-cat > a {
  text-decoration: underline; }

.sidebar .post-categories li > .children,
.sidebar .product-categories li > .children {
  padding-left: 0.5rem; }

.sidebar .product-categories__toggler {
  appearance: none;
  padding: 0;
  border: none;
  background-color: transparent; }
  .sidebar .product-categories__toggler .toggler__caret::before {
    transform: rotate(180deg);
    transition: var(--transition-global);
    font-family: "Font Awesome 5 Pro";
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    content: "";
    font-weight: normal;
    vertical-align: middle; }
  .sidebar .product-categories__toggler.collapsed .toggler__caret::before {
    transform: rotate(0); }

.sidebar h3.component-subtitle, .sidebar .component-subtitle.h3 {
  margin-top: var(--spacing-page-header);
  margin-bottom: var(--spacing-page-header); }

.search-results .entry {
  border-bottom: 1px var(--color-light-gray) solid; }

.search-toggler {
  display: inline-block;
  background-color: transparent;
  line-height: 1.2;
  padding: 0.3rem;
  color: var(--color-black);
  text-align: center;
  border: none; }
  .search-toggler:hover {
    color: var(--color-black); }
  .search-toggler::before {
    width: 1.3rem;
    height: 1.3rem; }
  .search-toggler::before {
    font-family: "Font Awesome 5 Pro";
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    content: "";
    font-weight: 200; }

.wc-searchform-wrapper .searchform {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0; }
  .wc-searchform-wrapper .searchform form {
    width: 100%; }
    .wc-searchform-wrapper .searchform form .searchform__content {
      display: flex;
      border: 1px var(--color-secondary) solid;
      width: 100%;
      max-width: 500px; }
      .wc-searchform-wrapper .searchform form .searchform__content .searchform__field {
        width: 100%;
        background-color: transparent;
        padding-left: 0.5rem;
        border: none; }
    .wc-searchform-wrapper .searchform form .searchform__submit {
      appearance: none;
      border: none;
      overflow: hidden;
      text-indent: -9999px;
      display: flex;
      align-items: center;
      background-color: transparent;
      padding-right: 0.5rem; }
      .wc-searchform-wrapper .searchform form .searchform__submit::before {
        font-family: "Font Awesome 5 Pro";
        display: inline-block;
        font-style: normal;
        font-variant: normal;
        text-rendering: auto;
        content: "";
        font-weight: normal;
        color: var(--color-regent-gray);
        float: left;
        margin: 0;
        text-indent: 0; }

.archive.author .entry {
  border-bottom: 1px var(--color-light-gray) solid; }

.woocommerce-cart-form .shop_table .coupon .input-text {
  width: 8.313rem !important; }

.variations_form .variations .value > select {
  margin-bottom: 0.625rem; }

.woocommerce-MyAccount-content .col-1,
.woocommerce-MyAccount-content .col-2 {
  max-width: 100%; }

.woocommerce-billing-fields .form-row,
.woocommerce-shipping-fields .form-row,
.woocommerce form .form-row {
  display: block; }

.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2 {
  max-width: unset;
  padding: 0; }

.woocommerce span.onsale,
span.onsale {
  border-radius: 0;
  background-color: var(--color-dark-gray);
  color: var(--color-white);
  padding: 0.625rem;
  min-height: auto;
  min-width: auto;
  line-height: normal;
  top: 0;
  right: 0;
  left: auto;
  position: absolute; }

.woocommerce-message {
  background-color: var(--color-white);
  border-top-color: var(--color-success); }
  .woocommerce-message::before {
    color: var(--color-success); }

.woocommerce-error {
  border-top-color: var(--color-alert); }
  .woocommerce-error::before {
    color: var(--color-alert); }

.woocommerce table.shop_table {
  border-radius: 0; }

.wp-block {
  max-width: 100%; }

.block-wrapper {
  padding-top: var(--spacing-vertical-global);
  padding-bottom: var(--spacing-vertical-global); }

.aligndefault {
  width: 100%;
  max-width: var(--responsive-aligndefault-width);
  margin-left: auto;
  margin-right: auto; }

.alignwide {
  width: 100%;
  max-width: var(--responsive-alignwide-width);
  margin-left: auto;
  margin-right: auto; }

.alignfull {
  max-width: 100%; }

.entry-content > * {
  margin-top: var(--spacing-vertical-global);
  margin-bottom: var(--spacing-vertical-global); }
  .entry-content > * {
    width: 100%;
    max-width: var(--responsive-alignwide-width);
    margin-left: auto;
    margin-right: auto; }
  .entry-content > *.alignfull {
    max-width: 100%; }

.wp-block-buttons {
  width: 100%;
  max-width: var(--responsive-alignwide-width);
  margin-left: auto;
  margin-right: auto; }
  .wp-block-buttons > .wp-block-button {
    margin: 0; }

.wp-block-quote.is-style-large, .wp-block-quote.is-large {
  padding: 0;
  margin-top: var(--spacing-vertical-global);
  margin-bottom: var(--spacing-vertical-global); }

.slick-track {
  display: flex !important; }
  .slick-track .slick-slide {
    height: inherit !important; }
    .slick-track .slick-slide > div {
      height: 100%; }

.slick-dots {
  list-style: none;
  padding-left: 0;
  margin: 0;
  text-align: center;
  padding-top: 0.9375rem; }
  .slick-dots li {
    display: inline-block; }
    .slick-dots li button {
      background: none;
      border: none;
      padding: 0;
      background-color: var(--color-medium-gray);
      margin: 0.3125rem;
      width: 0.5rem;
      height: 0.5rem;
      text-indent: -9999px;
      border-radius: 0.625rem; }
    .slick-dots li.slick-active button, .slick-dots li:hover button {
      background-color: var(--color-black); }

.slick-arrow {
  background: none;
  border: none;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.875rem;
  z-index: 10; }
  .slick-arrow.slick-prev {
    left: -1.5625rem; }
    .slick-arrow.slick-prev::before {
      font-family: "Font Awesome 5 Pro";
      display: inline-block;
      font-style: normal;
      font-variant: normal;
      text-rendering: auto;
      content: "";
      font-weight: normal; }
  .slick-arrow.slick-next {
    right: -1.5625rem; }
    .slick-arrow.slick-next::before {
      font-family: "Font Awesome 5 Pro";
      display: inline-block;
      font-style: normal;
      font-variant: normal;
      text-rendering: auto;
      content: "";
      font-weight: normal; }

.comments-area {
  padding-top: var(--spacing-vertical-global); }
  .comments-area .comment-reply-title {
    margin-bottom: 0.4rem; }
  .comments-area .comment-form-comment > label {
    display: block; }
  .comments-area .comment-form-comment #comment {
    width: 100%;
    max-width: 40rem; }

.content-area {
  width: 100%;
  max-width: var(--responsive-alignwide-width);
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding-top: var(--search-field-top-margin); }

@media (min-width: 992px) {
  .content-area__sidebar {
    display: flex; } }

.content-area__sidebar > .entry-content {
  min-height: 70vh; }
  @media (min-width: 992px) {
    .content-area__sidebar > .entry-content {
      margin-top: var(--search-field-height);
      flex-basis: calc(var(--container-w-sidebar) - var(--spacing-horizontal-global)); } }

@media (min-width: 992px) {
  .content-area__sidebar > .sidebar {
    flex-basis: calc(var(--container-sidebar) - var(--spacing-horizontal-global)); } }

@media (min-width: 992px) {
  .content-area__sidebar > * {
    margin-left: var(--spacing-horizontal-global);
    margin-right: var(--spacing-horizontal-global); }
    .content-area__sidebar > *:first-of-type {
      margin-left: 0; }
    .content-area__sidebar > *:last-of-type {
      margin-right: 0; } }

.login-wrapper {
  display: grid;
  grid-gap: 2rem; }
  @media (min-width: 992px) {
    .login-wrapper {
      grid-gap: 4rem;
      grid-template-columns: repeat(2, 1fr); } }

.woocommerce .batch-products__wrapper .batch-products__title {
  font-size: var(--font-size-h4); }

.woocommerce .batch-products__wrapper table.batch-products thead tr.product-batch__labels {
  background-color: var(--color-secondary);
  color: white; }

.woocommerce .batch-products__wrapper table.batch-products tr {
  background-color: var(--color-light-gray); }
  .woocommerce .batch-products__wrapper table.batch-products tr td {
    padding: 0.5rem 1rem;
    border: 2px white solid;
    min-width: 100px; }
    @media (min-width: 768px) {
      .woocommerce .batch-products__wrapper table.batch-products tr td {
        padding: 1rem 1.5rem; } }
    .woocommerce .batch-products__wrapper table.batch-products tr td.product-add_to_cart {
      padding: 0; }
      .woocommerce .batch-products__wrapper table.batch-products tr td.product-add_to_cart form.cart {
        margin-bottom: 0 !important;
        gap: 0 !important;
        display: block !important; }
        .woocommerce .batch-products__wrapper table.batch-products tr td.product-add_to_cart form.cart::after {
          display: none; }
        .woocommerce .batch-products__wrapper table.batch-products tr td.product-add_to_cart form.cart .price {
          display: none; }
        .woocommerce .batch-products__wrapper table.batch-products tr td.product-add_to_cart form.cart .single_add_to_cart_button {
          width: 100%; }

.approval-form__wrapper {
  display: grid;
  gap: 2rem; }
  @media (min-width: 768px) {
    .approval-form__wrapper {
      gap: 4rem;
      grid-template-columns: 3fr 2fr; } }
  .approval-form__wrapper .input-field__row {
    display: flex;
    flex-direction: column;
    padding-bottom: 1rem; }
  .approval-form__wrapper .approval-form__user-info {
    display: flex;
    flex-direction: column; }
    @media (min-width: 768px) {
      .approval-form__wrapper .approval-form__user-info .input-field__row {
        flex-direction: row; }
        .approval-form__wrapper .approval-form__user-info .input-field__row label {
          width: 100%;
          max-width: 200px;
          padding-right: 1rem;
          display: flex;
          align-items: center; }
        .approval-form__wrapper .approval-form__user-info .input-field__row input {
          width: 100%; } }

.block-textblock {
  padding-top: var(--spacing-vertical-global);
  padding-bottom: var(--spacing-vertical-global); }
  @media (min-width: 768px) {
    .block-textblock .textblock-wrapper.narrow__textblock {
      width: 85%;
      margin: 0 auto; } }
  @media (min-width: 992px) {
    .block-textblock .textblock-wrapper.narrow__textblock {
      width: 70%; } }

.block-textblock_and_image {
  max-width: 2500px;
  margin-left: auto;
  margin-right: auto; }
  .block-textblock_and_image + .block-textblock_and_image {
    margin-top: calc(var(--spacing-vertical-global) * (-1)); }
  .block-textblock_and_image .textblock_and_image__wrapper {
    display: grid; }
    @media (min-width: 992px) {
      .block-textblock_and_image .textblock_and_image__wrapper {
        grid-template-columns: repeat(2, 1fr); } }
    .block-textblock_and_image .textblock_and_image__wrapper .textblock_and_image__column .column__content {
      display: flex;
      flex-direction: column;
      justify-content: center;
      height: 100%;
      width: 100%;
      max-width: var(--responsive-alignwide-width);
      margin-left: auto;
      margin-right: auto;
      padding-top: var(--spacing-vertical-global);
      padding-bottom: var(--spacing-vertical-global); }
      @media (min-width: 992px) {
        .block-textblock_and_image .textblock_and_image__wrapper .textblock_and_image__column .column__content {
          max-width: calc(var(--responsive-alignwide-width) / 2); } }
    .block-textblock_and_image .textblock_and_image__wrapper .textblock_and_image__image {
      --image-height: 15rem;
      width: 100%;
      min-height: var(--image-height);
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat; }
      @media (min-width: 768px) {
        .block-textblock_and_image .textblock_and_image__wrapper .textblock_and_image__image {
          --image-height: 20rem; } }
      @media (min-width: 1200px) {
        .block-textblock_and_image .textblock_and_image__wrapper .textblock_and_image__image {
          --image-height: 25rem; } }
    @media (min-width: 992px) {
      .block-textblock_and_image .textblock_and_image__wrapper.normal .column__content {
        margin-left: 0;
        padding-left: var(--spacing-vertical-global); } }
    .block-textblock_and_image .textblock_and_image__wrapper.reverse {
      direction: rtl; }
      @media (min-width: 992px) {
        .block-textblock_and_image .textblock_and_image__wrapper.reverse .column__content {
          margin-right: 0;
          padding-right: var(--spacing-vertical-global); } }

.block-large_image, .single .post-thumbnail-img {
  max-width: 156.25rem;
  margin: 0 auto; }
  .block-large_image .large_image__wrapper, .single .post-thumbnail-img .large_image__wrapper {
    position: relative; }
    .block-large_image .large_image__wrapper .large_image__bg, .single .post-thumbnail-img .large_image__wrapper .large_image__bg {
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 100%;
      height: 25vw;
      min-height: 18.75rem;
      max-height: 43.75rem;
      text-align: center;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center; }
      .block-large_image .large_image__wrapper .large_image__bg .column__content, .single .post-thumbnail-img .large_image__wrapper .large_image__bg .column__content {
        z-index: 9999;
        position: relative; }
        .block-large_image .large_image__wrapper .large_image__bg .column__content .block-title, .single .post-thumbnail-img .large_image__wrapper .large_image__bg .column__content .block-title {
          color: var(--color-white); }

.block-hero_slider .hero-slider__wrapper .hero-slider__slide {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 40vw;
  min-height: 32rem;
  color: var(--color-white); }
  .block-hero_slider .hero-slider__wrapper .hero-slider__slide .hero-slider__slide__content {
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    padding-top: var(--spacing-vertical-global);
    padding-bottom: var(--spacing-vertical-global); }
    .block-hero_slider .hero-slider__wrapper .hero-slider__slide .hero-slider__slide__content .block-title {
      color: var(--color-white); }

.block-hero_slider .hero-slider__wrapper .slick-dots {
  position: absolute;
  bottom: 0;
  width: 100%; }

.block-map .acf-map {
  width: 100%;
  height: 37.5rem; }
  .block-map .acf-map img {
    max-width: inherit !important; }

.block-map .map {
  height: 25rem;
  width: 100%; }
  @media (min-width: 992px) {
    .block-map .map {
      height: 37.5rem; } }

.block-contacts .contacts {
  padding-top: var(--spacing-vertical-global);
  padding-bottom: var(--spacing-vertical-global); }
  .block-contacts .contacts .contacts__wrapper {
    display: grid;
    grid-gap: 1.875rem; }
    @media (min-width: 1200px) {
      .block-contacts .contacts .contacts__wrapper {
        grid-template-columns: repeat(2, 1fr); } }
  .block-contacts .contacts .contact__wrapper {
    display: flex; }
    .block-contacts .contacts .contact__wrapper .contact-image {
      min-width: 12.5rem;
      min-height: 12.5rem;
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover; }
      @media (max-width: 991.98px) {
        .block-contacts .contacts .contact__wrapper .contact-image {
          min-width: 10rem;
          min-height: 10rem; } }
      @media (max-width: 767.98px) {
        .block-contacts .contacts .contact__wrapper .contact-image {
          display: none; } }
    .block-contacts .contacts .contact__wrapper .contact-info {
      background-color: var(--color-white);
      padding: 1.25rem 0.9375rem;
      width: 100%; }
      @media (min-width: 768px) {
        .block-contacts .contacts .contact__wrapper .contact-info {
          padding-left: 0.9375rem; } }
      .block-contacts .contacts .contact__wrapper .contact-info h3, .block-contacts .contacts .contact__wrapper .contact-info .h3 {
        margin-bottom: 0.3125rem;
        color: var(--color-secondary); }
      .block-contacts .contacts .contact__wrapper .contact-info .h5 {
        color: var(--color-secondary); }
      .block-contacts .contacts .contact__wrapper .contact-info p {
        margin-bottom: 0.3125rem;
        font-weight: 600; }

.block-contact_info {
  padding-top: var(--spacing-vertical-global);
  padding-bottom: var(--spacing-vertical-global); }
  .block-contact_info .column__content p {
    margin-bottom: 0.625rem;
    font-weight: 600; }
    .block-contact_info .column__content p > a {
      color: var(--color-primary); }
    @media (max-width: 767.98px) {
      .block-contact_info .column__content p {
        font-size: 1.1875rem; } }

.block-accordion {
  padding-top: var(--spacing-vertical-global);
  padding-bottom: var(--spacing-vertical-global); }
  .block-accordion .accordion__content {
    padding: 0.9375rem; }

.block-tabs {
  padding-top: var(--spacing-vertical-global);
  padding-bottom: var(--spacing-vertical-global); }
  .block-tabs .tab__content {
    padding: 0.9375rem; }

.wc-block-grid .wc-block-grid__products {
  margin: 0; }
  .wc-block-grid .wc-block-grid__products .wc-block-grid__product {
    font-size: inherit;
    text-align: left;
    border: 0.0625rem var(--color-light-gray) solid;
    padding: 0.9375rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start; }
    .wc-block-grid .wc-block-grid__products .wc-block-grid__product > * {
      margin-left: 0;
      margin-right: 0; }
    .wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-add-to-cart {
      margin-top: auto;
      margin-bottom: 0;
      width: 100%; }
      .wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-add-to-cart > a,
      .wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-add-to-cart > button {
        width: 100%; }

.wp-block-columns {
  padding-left: 0;
  padding-right: 0;
  margin-top: var(--spacing-vertical-global);
  margin-bottom: var(--spacing-vertical-global);
  flex-wrap: wrap; }

@media (min-width: 992px) {
  .wp-block-column:not(:last-child) {
    margin-right: var(--spacing-horizontal-global); }
  .wp-block-column:not(:first-child) {
    margin-left: var(--spacing-horizontal-global); }
  .wp-block-column:not(:only-child) {
    flex-basis: 0;
    flex-grow: 1; }
  .wp-block-columns {
    flex-wrap: nowrap; } }

@media (min-width: 576px) and (max-width: 991.98px) {
  .wp-block-column:nth-child(2n) {
    margin-left: var(--spacing-horizontal-global);
    margin-right: 0; }
  .wp-block-column:nth-child(2n - 1) {
    margin-right: var(--spacing-horizontal-global);
    margin-left: 0; }
  .wp-block-column:not(:only-child) {
    flex-basis: calc(50% - var(--spacing-horizontal-global)) !important;
    flex-grow: 0; } }

@media (max-width: 575.98px) {
  .wp-block-column {
    flex-basis: 100%; } }

.wp-block-group.has-background {
  max-width: 100%;
  padding: var(--spacing-vertical-global-lg) 0; }

.wp-block-group .wp-block-group__inner-container {
  width: 100%;
  max-width: var(--responsive-alignwide-width);
  margin-left: auto;
  margin-right: auto; }


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZXZlbHVwL21haW4uc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yb290LnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FjY29yZGlvbi5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2YmFyLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vbm9kZV9tb2R1bGVzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvY29tbW9uL19mb250cy5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL2NvbW1vbi9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvY29tbW9uL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9jb21tb24vX2Jhc2ljcy5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL2NvbW1vbi9fZ2xvYmFsLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvd29vY29tbWVyY2UvX3Nob3Auc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy93b29jb21tZXJjZS9fcHJvZHVjdC5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL3dvb2NvbW1lcmNlL19wcm9kdWN0cy5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL3dvb2NvbW1lcmNlL19sb29wX3Byb2R1Y3Quc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy93b29jb21tZXJjZS9fcHJvZHVjdHNfbG9vcF9wcm9kdWN0LnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvd29vY29tbWVyY2UvX2NhcnQuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9jb21tb24vX2Z1bmN0aW9ucy5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL3dvb2NvbW1lcmNlL19jaGVja291dC5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL3dvb2NvbW1lcmNlL19hY2NvdW50LnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvd29vY29tbWVyY2UvX2JyZWFkY3J1bWIuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy93b29jb21tZXJjZS9fYmFubmVyLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvd29vY29tbWVyY2UvX3Byb2R1Y3RfZmlsdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvd29vY29tbWVyY2UvX2NhdGVnb3JpZXMuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy93b29jb21tZXJjZS9fbG9naW4uc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy93b29jb21tZXJjZS9fZm9ybS5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL3dvb2NvbW1lcmNlL191cHNlbGxzLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvd29vY29tbWVyY2UvX3JlbGF0ZWQuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy93b29jb21tZXJjZS9fcHJvZHVjdF9pbmZvX21vYmlsZS5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL3dvb2NvbW1lcmNlL19wcm9kdWN0X3NlYXJjaGZvcm0uc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19iYW5uZXIuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19mb3JtLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fbmF2X21vYmlsZS5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX25hdl9kZXNrdG9wLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fbmF2X2Zvb3Rlci5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX3BhZ2VzLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fcG9zdHMuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19zaW5nbGUuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19zaWRlYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fc2VhcmNoLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fYXV0aG9yLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fd29vY29tbWVyY2Uuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19ibG9ja3Muc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19zbGlja19zbGlkZXIuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19jb21tZW50cy5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fbG9naW4uc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19zaW5nbGVfcHJvZHVjdF9iYXRjaC5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX2FwcHJvdmFsX2Zvcm0uc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9ibG9ja3MvX3RleHRibG9jay5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL2Jsb2Nrcy9fdGV4dGJsb2NrX2FuZF9pbWFnZS5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL2Jsb2Nrcy9fbGFyZ2VfaW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9ibG9ja3MvX2hlcm9fc2xpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvYmxvY2tzL19tYXAuc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9ibG9ja3MvX2NvbnRhY3RzLnNjc3MiLCJ3ZWJwYWNrOi8vbGV2ZWx1cC8uL2Fzc2V0cy9zdHlsZXMvYmxvY2tzL19jb250YWN0X2luZm8uc2NzcyIsIndlYnBhY2s6Ly9sZXZlbHVwLy4vYXNzZXRzL3N0eWxlcy9ibG9ja3MvX2FjY29yZGlvbi5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL2Jsb2Nrcy9fdGFicy5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL2Jsb2Nrcy9fd2NfYmxvY2tfZ3JpZC5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL2Jsb2Nrcy9fd3BfYmxvY2tfY29sdW1ucy5zY3NzIiwid2VicGFjazovL2xldmVsdXAvLi9hc3NldHMvc3R5bGVzL2Jsb2Nrcy9fd3BfYmxvY2tfZ3JvdXAuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEI7RUFHSSxrQkFBaUM7RUFBakMsb0JBQWlDO0VBQWpDLG9CQUFpQztFQUFqQyxrQkFBaUM7RUFBakMsaUJBQWlDO0VBQWpDLG9CQUFpQztFQUFqQyxvQkFBaUM7RUFBakMsbUJBQWlDO0VBQWpDLGtCQUFpQztFQUFqQyxrQkFBaUM7RUFBakMsZ0JBQWlDO0VBQWpDLGtCQUFpQztFQUFqQyx1QkFBaUM7RUFJakMscUJBQWlDO0VBQWpDLHVCQUFpQztFQUFqQyxxQkFBaUM7RUFBakMsa0JBQWlDO0VBQWpDLHFCQUFpQztFQUFqQyxvQkFBaUM7RUFBakMsbUJBQWlDO0VBQWpDLGtCQUFpQztFQUtuQyxxTkFBc0Q7RUFDdEQseUdBQW9EO0VBQ3BELHlGQUF3Qzs7QUNDMUM7OztFQUdFLHNCQUFzQjs7QUFhcEI7RUQvQko7SUNnQ00sdUJBQXVCLElBRzVCOztBQVVEO0VBQ0UsU0FBUztFQUNULHNDQ3NYc0Y7RUMxS2xGLGVBdkUrQjtFRm5JbkMsZ0JDZ1krQjtFRC9YL0IsZ0JDcVkrQjtFRHBZL0IsY0NsQ2dCO0VEb0NoQixzQkM3Q2E7RUQ4Q2IsOEJBQThCO0VBQzlCLDZDQ3JDYTs7QUQ4Q2Y7RUFDRSxj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QjtFSTNickIsZ0JKNmE2QjtFQ3RYN0I7SUcxREY7TUhtT00saUJBbEY2QixJRzdJbEM7O0FBa0JIO0VDckRFLGVBQWU7RUFDZixnQkFBZ0I7O0FEeURsQjtFQzFERSxlQUFlO0VBQ2YsZ0JBQWdCOztBRDREbEI7RUFDRSxxQkFBcUI7RUFEdkI7SUFJSSxvQkpnYytCOztBSXRibkM7RUg0S00sa0JBdkUrQjtFR25HbkMseUJBQXlCOztBQUkzQjtFQUNFLG1CSm1LVztFQ0VQLGtCQXZFK0I7RUcvRnJDO0lBS0ksZ0JBQWdCOztBQUlwQjtFQUNFLGlCSjBKVztFSXpKWCxtQkp5Slc7RUNFUCxrQkF2RStCO0VHbEZuQyxjSnBGZ0I7RUlnRmxCO0lBT0kscUJBQXFCOztBRWpHekI7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixXQUFXO0VBQ1gscUJOb2tDK0M7RUNsMUIzQyxlQXZFK0I7RUt6S25DLGNOTWdCO0VNTGhCLGdCQUFnQjtFQUNoQixzQk5MYTtFTU1iLFNBQVM7RUhLUCxnQkdKc0I7RUFDeEIscUJBQXFCO0VDQWpCLCtKUDRrQzRFO0VPeGtDNUU7SURoQk47TUNpQlEsZ0JBQWdCLElEZ0N2QjtFQWpERDtJQWdCSSxjSjRJaUM7SUkzSWpDLHlCSnNJaUM7SUlySWpDLCtDTkpXO0lNZGY7TUFxQk0saVNKMkQ0RTtNSTFENUUsMEJONmtDbUQ7RU1ubUN6RDtJQTRCSSxjQUFjO0lBQ2QsY05ra0M2QztJTWprQzdDLGVOaWtDNkM7SU1oa0M3QyxpQkFBaUI7SUFDakIsV0FBVztJQUNYLGlTSitDOEU7SUk5QzlFLDRCQUE0QjtJQUM1Qix3Qk40akM2QztJT25sQzNDLHNDUHNsQzZEO0lPbGxDN0Q7TURoQk47UUNpQlEsZ0JBQWdCLElEb0JyQjtFQXJDSDtJQXdDSSxVQUFVO0VBeENkO0lBNENJLFVBQVU7SUFDVixxQkowR2lDO0lJekdqQyxVQUFVO0lBQ1Ysa0ROYmE7O0FNaUJqQjtFQUNFLGdCQUFnQjs7QUFHbEI7RUFDRSxzQk5wRGE7RU1xRGIsc0NOM0NhO0VNeUNmO0lIL0JJLCtCSHlWZ0M7SUd4VmhDLGdDSHdWZ0M7SU0xVHBDO01IL0JJLDJDRCtLNEQ7TUM5SzVELDRDRDhLNEQ7RUloSmhFO0lBYUksYUFBYTtFQWJqQjtJSGpCSSxtQ0gyVWdDO0lHMVVoQyxrQ0gwVWdDO0lNMVRwQztNSGpCSSwrQ0RpSzREO01DaEs1RCw4Q0RnSzREO0lJaEpoRTtNSGpCSSxtQ0gyVWdDO01HMVVoQyxrQ0gwVWdDOztBTTFScEM7RUFDRSxxQk5pL0IrQzs7QU16K0JqRDtFQUVJLGVBQWU7O0FBRm5CO0VBTUksZUFBZTtFQUNmLGNBQWM7RUh4RmQsZ0JHeUZ3QjtFQVI1QjtJQVVvQixhQUFhO0VBVmpDO0lBV21CLGdCQUFnQjtFQVhuQztJSGpGSSxnQkcrRjBCOztBRTdHOUI7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsZ0JBQWdCOztBQUdsQjtFQUNFLGNBQWM7RUFDZCxvQlJxNEJzQztFUWw0QnRDLGNSb0JlO0VRbkJmLHFCQUF3RDtFREhwRCx1R1B5NEJzSDtFT3I0QnRIO0lDUE47TURRUSxnQkFBZ0IsSUNhdkI7RUFyQkQ7SUFXSSxjTndJaUM7RU1uSnJDO0lBaUJJLGNSaEJjO0lRaUJkLG9CQUFvQjtJQUNwQixlQUFlOztBQVFuQjtFQUNFLGdDUjlCZ0I7RVE2QmxCO0lBSUksbUJSNFQ2QjtJUTNUN0IsZ0JBQWdCO0lBQ2hCLDZCQUFnRDtJTGxCaEQsK0JIeVZnQztJR3hWaEMsZ0NId1ZnQztJUTdVcEM7TUFXTSxxQ1J4Q1k7TVEwQ1osa0JBQWtCO0lBYnhCO01BaUJNLGNSM0NZO01RNENaLDZCQUE2QjtNQUM3Qix5QkFBeUI7RUFuQi9COztJQXlCSSxjUmxEYztJUW1EZCxzQlIxRFc7SVEyRFgsa0NSM0RXO0VRZ0NmO0lBZ0NJLGdCUmdTNkI7SUc1VTdCLHlCSzhDNEI7SUw3QzVCLDBCSzZDNEI7O0FBU2hDO0VBRUksZ0JBQWdCO0VBQ2hCLFNBQVM7RUxuRVQsc0JIa1dnQzs7QVFsU3BDOztFQVNJLFdScEZXO0VTSmIseUJUa0NlOztB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Q2xCOztBNURtRUM7RTREL0RGO0lBQ0UsNkNBQTZDO0lBQzdDLGVBQWU7RUFHakI7SUFDRSw4Q0FBOEM7SUFDOUMsY0FBYztFQWxCaEI7SUFzQkUsbUVBQW1FO0lBQ25FLFlBQVksSUFDYjs7QTVEbUNDO0U0RC9CRjtJQUNFLGdCQUFnQixJQUNqQjs7QUMvQ0g7RUFFSSxlQUFlO0VBQ2YsNENBQTRDOztBQUhoRDtFdkQrQkUsV0FBVztFQUNYLDRDQUFzQjtFQUN0QixpQkFBaUI7RUFDakIsa0JBQWtCIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuOnJvb3Qge1xuICAtLWJzLWJsdWU6ICMwZDZlZmQ7XG4gIC0tYnMtaW5kaWdvOiAjNjYxMGYyO1xuICAtLWJzLXB1cnBsZTogIzZmNDJjMTtcbiAgLS1icy1waW5rOiAjZDYzMzg0O1xuICAtLWJzLXJlZDogI2RjMzU0NTtcbiAgLS1icy1vcmFuZ2U6ICNmZDdlMTQ7XG4gIC0tYnMteWVsbG93OiAjZmZjMTA3O1xuICAtLWJzLWdyZWVuOiAjMTk4NzU0O1xuICAtLWJzLXRlYWw6ICMyMGM5OTc7XG4gIC0tYnMtY3lhbjogIzBkY2FmMDtcbiAgLS1icy13aGl0ZTogI2ZmZjtcbiAgLS1icy1ncmF5OiAjNmM3NTdkO1xuICAtLWJzLWdyYXktZGFyazogIzM0M2E0MDtcbiAgLS1icy1wcmltYXJ5OiAjMGQ2ZWZkO1xuICAtLWJzLXNlY29uZGFyeTogIzZjNzU3ZDtcbiAgLS1icy1zdWNjZXNzOiAjMTk4NzU0O1xuICAtLWJzLWluZm86ICMwZGNhZjA7XG4gIC0tYnMtd2FybmluZzogI2ZmYzEwNztcbiAgLS1icy1kYW5nZXI6ICNkYzM1NDU7XG4gIC0tYnMtbGlnaHQ6ICNmOGY5ZmE7XG4gIC0tYnMtZGFyazogIzIxMjUyOTtcbiAgLS1icy1mb250LXNhbnMtc2VyaWY6IHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgLS1icy1mb250LW1vbm9zcGFjZTogU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZTtcbiAgLS1icy1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSk7IH1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgOnJvb3Qge1xuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoOyB9IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJzLWZvbnQtc2Fucy1zZXJpZik7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyB9XG5cbmhyIHtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlcjogMDtcbiAgb3BhY2l0eTogMC4yNTsgfVxuXG5ocjpub3QoW3NpemVdKSB7XG4gIGhlaWdodDogMXB4OyB9XG5cbmgxLCAuaDEsIGgyLCAuaDIsIGgzLCAuaDMsIGg0LCAuaDQsIGg1LCAuaDUsIGg2LCAuaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cblxuaDEsIC5oMSB7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjM3NXJlbSArIDEuNXZ3KTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgaDEsIC5oMSB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTsgfSB9XG5cbmgyLCAuaDIge1xuICBmb250LXNpemU6IGNhbGMoMS4zMjVyZW0gKyAwLjl2dyk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIGgyLCAuaDIge1xuICAgICAgZm9udC1zaXplOiAycmVtOyB9IH1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjNyZW0gKyAwLjZ2dyk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIGgzLCAuaDMge1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9IH1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjI3NXJlbSArIDAuM3Z3KTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgaDQsIC5oNCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG5cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDEuMjVyZW07IH1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1icy1vcmlnaW5hbC10aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyB9XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbm9sLFxudWwge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07IH1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuZHQge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtOyB9XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbnNtYWxsLCAuc21hbGwge1xuICBmb250LXNpemU6IDAuODc1ZW07IH1cblxubWFyaywgLm1hcmsge1xuICBwYWRkaW5nOiAwLjJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZjhlMzsgfVxuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLS4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLS41ZW07IH1cblxuYSB7XG4gIGNvbG9yOiAjMGQ2ZWZkO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzBhNThjYTsgfVxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSwgYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSk6aG92ZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJzLWZvbnQtbW9ub3NwYWNlKTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGRpcmVjdGlvbjogbHRyIC8qIHJ0bDppZ25vcmUgKi87XG4gIHVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZTsgfVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuICBwcmUgY29kZSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDsgfVxuXG5jb2RlIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogI2Q2MzM4NDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkOyB9XG4gIGEgPiBjb2RlIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuXG5rYmQge1xuICBwYWRkaW5nOiAwLjJyZW0gMC40cmVtO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07IH1cbiAga2JkIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07IH1cblxuaW1nLFxuc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG50YWJsZSB7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyB9XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG50aCB7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyB9XG5cbnRoZWFkLFxudGJvZHksXG50Zm9vdCxcbnRyLFxudGQsXG50aCB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwOyB9XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwOyB9XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuc2VsZWN0IHtcbiAgd29yZC13cmFwOiBub3JtYWw7IH1cbiAgc2VsZWN0OmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAxOyB9XG5cbltsaXN0XTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyB9XG4gIGJ1dHRvbjpub3QoOmRpc2FibGVkKSxcbiAgW3R5cGU9XCJidXR0b25cIl06bm90KDpkaXNhYmxlZCksXG4gIFt0eXBlPVwicmVzZXRcIl06bm90KDpkaXNhYmxlZCksXG4gIFt0eXBlPVwic3VibWl0XCJdOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDsgfVxuXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7IH1cblxubGVnZW5kIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogY2FsYygxLjI3NXJlbSArIDAuM3Z3KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIGxlZ2VuZCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG4gIGxlZ2VuZCArICoge1xuICAgIGNsZWFyOiBsZWZ0OyB9XG5cbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtdGV4dCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZSxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQge1xuICBwYWRkaW5nOiAwOyB9XG5cbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgfVxuXG4vKiBydGw6cmF3OlxuW3R5cGU9XCJ0ZWxcIl0sXG5bdHlwZT1cInVybFwiXSxcblt0eXBlPVwiZW1haWxcIl0sXG5bdHlwZT1cIm51bWJlclwiXSB7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuKi9cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG46Oi13ZWJraXQtY29sb3Itc3dhdGNoLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwOyB9XG5cbjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyB9XG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgfVxuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuaWZyYW1lIHtcbiAgYm9yZGVyOiAwOyB9XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4uZGlzcGxheS0xIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuNjI1cmVtICsgNC41dncpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuZGlzcGxheS0xIHtcbiAgICAgIGZvbnQtc2l6ZTogNXJlbTsgfSB9XG5cbi5kaXNwbGF5LTIge1xuICBmb250LXNpemU6IGNhbGMoMS41NzVyZW0gKyAzLjl2dyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5kaXNwbGF5LTIge1xuICAgICAgZm9udC1zaXplOiA0LjVyZW07IH0gfVxuXG4uZGlzcGxheS0zIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuNTI1cmVtICsgMy4zdncpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuZGlzcGxheS0zIHtcbiAgICAgIGZvbnQtc2l6ZTogNHJlbTsgfSB9XG5cbi5kaXNwbGF5LTQge1xuICBmb250LXNpemU6IGNhbGMoMS40NzVyZW0gKyAyLjd2dyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5kaXNwbGF5LTQge1xuICAgICAgZm9udC1zaXplOiAzLjVyZW07IH0gfVxuXG4uZGlzcGxheS01IHtcbiAgZm9udC1zaXplOiBjYWxjKDEuNDI1cmVtICsgMi4xdncpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuZGlzcGxheS01IHtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTsgfSB9XG5cbi5kaXNwbGF5LTYge1xuICBmb250LXNpemU6IGNhbGMoMS4zNzVyZW0gKyAxLjV2dyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5kaXNwbGF5LTYge1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07IH0gfVxuXG4ubGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ubGlzdC1pbmxpbmUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmxpc3QtaW5saW5lLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cblxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmJsb2NrcXVvdGUgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogIzZjNzU3ZDsgfVxuICAuYmxvY2txdW90ZS1mb290ZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgfVxuXG4uYWNjb3JkaW9uLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1yYWRpdXMgMC4xNXMgZWFzZTsgfVxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7IH0gfVxuICAuYWNjb3JkaW9uLWJ1dHRvbjpub3QoLmNvbGxhcHNlZCkge1xuICAgIGNvbG9yOiAjMGM2M2U0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlN2YxZmY7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbjpub3QoLmNvbGxhcHNlZCk6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyMzBjNjNlNCclM2UlM2NwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpOyB9XG4gIC5hY2NvcmRpb24tYnV0dG9uOjphZnRlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzMjEyNTI5JyUzZSUzY3BhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxLjI1cmVtO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIC5hY2NvcmRpb24tYnV0dG9uOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7IH0gfVxuICAuYWNjb3JkaW9uLWJ1dHRvbjpob3ZlciB7XG4gICAgei1pbmRleDogMjsgfVxuICAuYWNjb3JkaW9uLWJ1dHRvbjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTsgfVxuXG4uYWNjb3JkaW9uLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmFjY29yZGlvbi1pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7IH1cbiAgLmFjY29yZGlvbi1pdGVtOmZpcnN0LW9mLXR5cGUge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07IH1cbiAgICAuYWNjb3JkaW9uLWl0ZW06Zmlyc3Qtb2YtdHlwZSAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7IH1cbiAgLmFjY29yZGlvbi1pdGVtOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgIGJvcmRlci10b3A6IDA7IH1cbiAgLmFjY29yZGlvbi1pdGVtOmxhc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTsgfVxuICAgIC5hY2NvcmRpb24taXRlbTpsYXN0LW9mLXR5cGUgLmFjY29yZGlvbi1idXR0b24uY29sbGFwc2VkIHtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTsgfVxuICAgIC5hY2NvcmRpb24taXRlbTpsYXN0LW9mLXR5cGUgLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07IH1cblxuLmFjY29yZGlvbi1ib2R5IHtcbiAgcGFkZGluZzogMXJlbSAxLjI1cmVtOyB9XG5cbi5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gIGJvcmRlci13aWR0aDogMDsgfVxuXG4uYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24taXRlbSB7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3A6IDA7IH1cbiAgLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAuYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICBjb2xvcjogIzBkNmVmZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0OyB9XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7IH0gfVxuICAubmF2LWxpbms6aG92ZXIsIC5uYXYtbGluazpmb2N1cyB7XG4gICAgY29sb3I6ICMwYTU4Y2E7IH1cbiAgLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7IH1cbiAgLm5hdi10YWJzIC5uYXYtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07IH1cbiAgICAubmF2LXRhYnMgLm5hdi1saW5rOmhvdmVyLCAubmF2LXRhYnMgLm5hdi1saW5rOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2U5ZWNlZiAjZTllY2VmICNkZWUyZTY7XG4gICAgICBpc29sYXRpb246IGlzb2xhdGU7IH1cbiAgICAubmF2LXRhYnMgLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LXRhYnMgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogIzQ5NTA1NztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogI2RlZTJlNiAjZGVlMmU2ICNmZmY7IH1cbiAgLm5hdi10YWJzIC5kcm9wZG93bi1tZW51IHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7IH1cblxuLm5hdi1waWxscyAubmF2LWxpbmsge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07IH1cblxuLm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi1waWxscyAuc2hvdyA+IC5uYXYtbGluayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkOyB9XG5cbi5uYXYtZmlsbCA+IC5uYXYtbGluayxcbi5uYXYtZmlsbCAubmF2LWl0ZW0ge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5uYXYtanVzdGlmaWVkID4gLm5hdi1saW5rLFxuLm5hdi1qdXN0aWZpZWQgLm5hdi1pdGVtIHtcbiAgZmxleC1iYXNpczogMDtcbiAgZmxleC1ncm93OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLm5hdi1maWxsIC5uYXYtaXRlbSAubmF2LWxpbmssXG4ubmF2LWp1c3RpZmllZCAubmF2LWl0ZW0gLm5hdi1saW5rIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnRhYi1jb250ZW50ID4gLnRhYi1wYW5lIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udGFiLWNvbnRlbnQgPiAuYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmRyb3B1cCxcbi5kcm9wZW5kLFxuLmRyb3Bkb3duLFxuLmRyb3BzdGFydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1pbi13aWR0aDogMTByZW07XG4gIHBhZGRpbmc6IDAuNXJlbSAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07IH1cbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAwLjEyNXJlbTsgfVxuXG4uZHJvcGRvd24tbWVudS1zdGFydCB7XG4gIC0tYnMtcG9zaXRpb246IHN0YXJ0OyB9XG4gIC5kcm9wZG93bi1tZW51LXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgcmlnaHQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcbiAgICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87IH1cblxuLmRyb3Bkb3duLW1lbnUtZW5kIHtcbiAgLS1icy1wb3NpdGlvbjogZW5kOyB9XG4gIC5kcm9wZG93bi1tZW51LWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHJpZ2h0OiAwIC8qIHJ0bDppZ25vcmUgKi87XG4gICAgbGVmdDogYXV0byAvKiBydGw6aWdub3JlICovOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZHJvcGRvd24tbWVudS1zbS1zdGFydCB7XG4gICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7IH1cbiAgICAuZHJvcGRvd24tbWVudS1zbS1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgcmlnaHQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcbiAgICAgIGxlZnQ6IDAgLyogcnRsOmlnbm9yZSAqLzsgfVxuICAuZHJvcGRvd24tbWVudS1zbS1lbmQge1xuICAgIC0tYnMtcG9zaXRpb246IGVuZDsgfVxuICAgIC5kcm9wZG93bi1tZW51LXNtLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgcmlnaHQ6IDAgLyogcnRsOmlnbm9yZSAqLztcbiAgICAgIGxlZnQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZHJvcGRvd24tbWVudS1tZC1zdGFydCB7XG4gICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7IH1cbiAgICAuZHJvcGRvd24tbWVudS1tZC1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgcmlnaHQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcbiAgICAgIGxlZnQ6IDAgLyogcnRsOmlnbm9yZSAqLzsgfVxuICAuZHJvcGRvd24tbWVudS1tZC1lbmQge1xuICAgIC0tYnMtcG9zaXRpb246IGVuZDsgfVxuICAgIC5kcm9wZG93bi1tZW51LW1kLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgcmlnaHQ6IDAgLyogcnRsOmlnbm9yZSAqLztcbiAgICAgIGxlZnQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZHJvcGRvd24tbWVudS1sZy1zdGFydCB7XG4gICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7IH1cbiAgICAuZHJvcGRvd24tbWVudS1sZy1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgcmlnaHQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcbiAgICAgIGxlZnQ6IDAgLyogcnRsOmlnbm9yZSAqLzsgfVxuICAuZHJvcGRvd24tbWVudS1sZy1lbmQge1xuICAgIC0tYnMtcG9zaXRpb246IGVuZDsgfVxuICAgIC5kcm9wZG93bi1tZW51LWxnLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgcmlnaHQ6IDAgLyogcnRsOmlnbm9yZSAqLztcbiAgICAgIGxlZnQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmRyb3Bkb3duLW1lbnUteGwtc3RhcnQge1xuICAgIC0tYnMtcG9zaXRpb246IHN0YXJ0OyB9XG4gICAgLmRyb3Bkb3duLW1lbnUteGwtc3RhcnRbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgIHJpZ2h0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XG4gICAgICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87IH1cbiAgLmRyb3Bkb3duLW1lbnUteGwtZW5kIHtcbiAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7IH1cbiAgICAuZHJvcGRvd24tbWVudS14bC1lbmRbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgIHJpZ2h0OiAwIC8qIHJ0bDppZ25vcmUgKi87XG4gICAgICBsZWZ0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5kcm9wZG93bi1tZW51LXh4bC1zdGFydCB7XG4gICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7IH1cbiAgICAuZHJvcGRvd24tbWVudS14eGwtc3RhcnRbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgIHJpZ2h0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XG4gICAgICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87IH1cbiAgLmRyb3Bkb3duLW1lbnUteHhsLWVuZCB7XG4gICAgLS1icy1wb3NpdGlvbjogZW5kOyB9XG4gICAgLmRyb3Bkb3duLW1lbnUteHhsLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgcmlnaHQ6IDAgLyogcnRsOmlnbm9yZSAqLztcbiAgICAgIGxlZnQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLzsgfSB9XG5cbi5kcm9wdXAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDEwMCU7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuMTI1cmVtOyB9XG5cbi5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmRyb3BlbmQgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgdG9wOiAwO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDAuMTI1cmVtOyB9XG5cbi5kcm9wZW5kIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQ7IH1cblxuLmRyb3BlbmQgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uZHJvcGVuZCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIHZlcnRpY2FsLWFsaWduOiAwOyB9XG5cbi5kcm9wc3RhcnQgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgdG9wOiAwO1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjEyNXJlbTsgfVxuXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7IH1cblxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDAuM2VtIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogMDsgfVxuXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7IH1cblxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMXJlbTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7IH1cbiAgLmRyb3Bkb3duLWl0ZW06aG92ZXIsIC5kcm9wZG93bi1pdGVtOmZvY3VzIHtcbiAgICBjb2xvcjogIzFlMjEyNTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmOyB9XG4gIC5kcm9wZG93bi1pdGVtLmFjdGl2ZSwgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDsgfVxuICAuZHJvcGRvd24taXRlbS5kaXNhYmxlZCwgLmRyb3Bkb3duLWl0ZW06ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAjYWRiNWJkO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7IH1cblxuLmRyb3Bkb3duLW1lbnUtZGFyayB7XG4gIGNvbG9yOiAjZGVlMmU2O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7IH1cbiAgLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbSB7XG4gICAgY29sb3I6ICNkZWUyZTY7IH1cbiAgICAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtOmhvdmVyLCAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTsgfVxuICAgIC5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW0uYWN0aXZlLCAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7IH1cbiAgICAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtLmRpc2FibGVkLCAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAjYWRiNWJkOyB9XG4gIC5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWRpdmlkZXIge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuICAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtLXRleHQge1xuICAgIGNvbG9yOiAjZGVlMmU2OyB9XG4gIC5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgY29sb3I6ICNhZGI1YmQ7IH1cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07IH1cbiAgLm5hdmJhciA+IC5jb250YWluZXIsXG4gIC5uYXZiYXIgPiAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyID4gLmNvbnRhaW5lci1zbSwgLm5hdmJhciA+IC5jb250YWluZXItbWQsIC5uYXZiYXIgPiAuY29udGFpbmVyLWxnLCAubmF2YmFyID4gLmNvbnRhaW5lci14bCwgLm5hdmJhciA+IC5jb250YWluZXIteHhsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgcGFkZGluZy10b3A6IDAuMzEyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMzEyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljOyB9XG5cbi5uYXZiYXItdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07IH1cblxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDsgfVxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lOyB9IH1cbiAgLm5hdmJhci10b2dnbGVyOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLm5hdmJhci10b2dnbGVyOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtOyB9XG5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlOyB9XG5cbi5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6IHZhcigtLWJzLXNjcm9sbC1oZWlnaHQsIDc1dmgpO1xuICBvdmVyZmxvdy15OiBhdXRvOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAubmF2YmFyLWV4cGFuZC1zbSB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgICAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAgIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH1cbiAgICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH1cbiAgICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2YmFyLWV4cGFuZC1tZCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgICAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAgIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH1cbiAgICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH1cbiAgICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubmF2YmFyLWV4cGFuZC1sZyB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgICAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAgIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH1cbiAgICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH1cbiAgICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm5hdmJhci1leHBhbmQteGwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAgIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtOyB9XG4gICAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gICAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9XG4gICAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXh4bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItbmF2IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAgIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgICAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH1cbiAgICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gICAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgZmxleC1iYXNpczogYXV0bzsgfVxuICAgIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5uYXZiYXItZXhwYW5kIHtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgIC5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfVxuICAubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gIC5uYXZiYXItZXhwYW5kIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9XG4gIC5uYXZiYXItZXhwYW5kIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpOyB9XG4gIC5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmZvY3VzIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpOyB9XG5cbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NSk7IH1cbiAgLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIsIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmZvY3VzIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG4gIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpOyB9XG5cbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmssXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpOyB9XG5cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MCwgMCwgMCwgMC41NSUyOScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIik7IH1cblxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU1KTsgfVxuICAubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhLFxuICAubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmhvdmVyLFxuICAubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmZvY3VzIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpOyB9XG5cbi5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kIHtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQ6aG92ZXIsIC5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7IH1cbiAgLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cyB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7IH1cbiAgLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5kaXNhYmxlZCB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7IH1cblxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5zaG93ID4gLm5hdi1saW5rLFxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjsgfVxuXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpOyB9XG5cbi5uYXZiYXItZGFyayAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmElMjgyNTUsIDI1NSwgMjU1LCAwLjU1JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKTsgfVxuXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7IH1cbiAgLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhLFxuICAubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGE6aG92ZXIsXG4gIC5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYTpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuLmZhZGUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjsgfVxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC5mYWRlIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7IH0gfVxuICAuZmFkZTpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwOyB9XG5cbi5jb2xsYXBzZTpub3QoLnNob3cpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY29sbGFwc2luZyB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMzVzIGVhc2U7IH1cbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuY29sbGFwc2luZyB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lOyB9IH1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5zbGljay1saXN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kOyB9XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lOyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1saWdodC0zMDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLWxpZ2h0LTMwMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1saWdodC0zMDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLWxpZ2h0LTMwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLWxpZ2h0LTMwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogYmxvY2s7XG4gIHNyYzogdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtcmVndWxhci00MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1yZWd1bGFyLTQwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1zb2xpZC05MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1zb2xpZC05MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLXNvbGlkLTkwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEJyYW5kc1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogYmxvY2s7XG4gIHNyYzogdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtYnJhbmRzLTQwMC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtYnJhbmRzLTQwMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1icmFuZHMtNDAwLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1icmFuZHMtNDAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtYnJhbmRzLTQwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IER1b3RvbmVcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xuICBzcmM6IHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLWR1b3RvbmUtOTAwLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1kdW90b25lLTkwMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1kdW90b25lLTkwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtZHVvdG9uZS05MDAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1kdW90b25lLTkwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRE0gU2Fucyc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvRE1TYW5zLVZhcmlhYmxlRm9udF9vcHN6LHdnaHQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG4gIGZvbnQtd2VpZ2h0OiAxMDAgOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdETSBTYW5zJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9ETVNhbnMtSXRhbGljLVZhcmlhYmxlRm9udF9vcHN6LHdnaHQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG4gIGZvbnQtd2VpZ2h0OiAxMDAgOTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG46cm9vdCB7XG4gIC0tZm9udC1mYW1pbHktcHJpbWFyeTogJ0RNIFNhbnMnLCBzYW5zLXNlcmlmO1xuICAtLWZvbnQtc2l6ZS1mb250YXdlc29tZTogMS40cmVtO1xuICAtLWZvbnQtc2l6ZS1iYXNlOiAxcmVtO1xuICAtLWZvbnQtc2l6ZS14eGw6IDEuOHJlbTtcbiAgLS1mb250LXNpemUteGw6IDEuN3JlbTtcbiAgLS1mb250LXNpemUtbGc6IDEuNnJlbTtcbiAgLS1mb250LXNpemUtbWQ6IDEuNHJlbTtcbiAgLS1mb250LXNpemUtc206IDEuMXJlbTtcbiAgLS1mb250LXNpemUteHM6IDAuOXJlbTtcbiAgLS1mb250LXNpemUteHhzOiAwLjc1cmVtO1xuICAtLWZvbnQtc2l6ZS1oMTogdmFyKC0tZm9udC1zaXplLXh4bCk7XG4gIC0tZm9udC1zaXplLWgyOiB2YXIoLS1mb250LXNpemUteGwpO1xuICAtLWZvbnQtc2l6ZS1oMzogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgLS1mb250LXNpemUtaDQ6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XG4gIC0tZm9udC1zaXplLWg1OiB2YXIoLS1mb250LXNpemUtc20pO1xuICAtLWZvbnQtc2l6ZS1oNjogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICAtLXRyYW5zaXRpb24tZ2xvYmFsOiAwLjE1cyBlYXNlO1xuICAtLXNwYWNpbmctZ2xvYmFsOiAxcmVtO1xuICAtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsOiAxLjVyZW07XG4gIC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwtbGc6IDIuNXJlbTtcbiAgLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsOiAxcmVtO1xuICAtLXNwYWNpbmctZ3JpZC1nYXA6IGNhbGModmFyKC0tc3BhY2luZy1nbG9iYWwpICogMik7XG4gIC0tc3BhY2luZy1idXR0b24taW5wdXQ6IDAuN3JlbSAwLjlyZW07XG4gIC0tc3BhY2luZy1wYWdlLWhlYWRlcjogMi41cmVtO1xuICAtLXNlYXJjaC1maWVsZC1oZWlnaHQ6IDkwcHg7XG4gIC0tc2VhcmNoLWZpZWxkLXRvcC1tYXJnaW46IDJyZW07XG4gIC0tcmVzcG9uc2l2ZS1hbGlnbmRlZmF1bHQtd2lkdGg6IG1pbihjYWxjKDEwMHZ3IC0gKDIgKiB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKSkpLFxuICAgICAgMTA4MHB4KTtcbiAgLS1yZXNwb25zaXZlLWFsaWdud2lkZS13aWR0aDogbWluKGNhbGMoMTAwdncgLSAoMiAqIHZhcigtLXNwYWNpbmctaG9yaXpvbnRhbC1nbG9iYWwpKSksXG4gICAgICAxMjYwcHgpO1xuICAtLWNvbnRhaW5lci1zaWRlYmFyOiBjYWxjKHZhcigtLXJlc3BvbnNpdmUtYWxpZ253aWRlLXdpZHRoKSAvIDQpO1xuICAtLWNvbnRhaW5lci13LXNpZGViYXI6IGNhbGMoKHZhcigtLXJlc3BvbnNpdmUtYWxpZ253aWRlLXdpZHRoKSAvIDQpICogMyk7XG4gIC0taW1hZ2UtbWluLWhlaWdodDogMjhyZW07XG4gIC0tY29sb3ItcHJpbWFyeTogI2ZkNzEyMjtcbiAgLS1jb2xvci1zZWNvbmRhcnk6ICMyMjNjNTI7XG4gIC0tY29sb3ItYmxhY2s6ICMwMDA7XG4gIC0tY29sb3Itd2hpdGU6ICNmZmY7XG4gIC0tY29sb3ItZGFyay1ncmF5OiAjOWQ5ZDljO1xuICAtLWNvbG9yLW1lZGl1bS1ncmF5OiAjYzZjNmM2O1xuICAtLWNvbG9yLXJlZ2VudC1ncmF5OiAjOTNhMGE5O1xuICAtLWNvbG9yLWxpZ2h0LWdyYXk6ICNmN2Y4Zjk7XG4gIC0tY29sb3Itd2MtbGlnaHQtZ3JheTogdmFyKC0td2Mtc2Vjb25kYXJ5KTtcbiAgLS1jb2xvci13Yy1tZWRpdW0tZ3JheTogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAtLWNvbG9yLXdjLWRhcmstZ3JheTogdmFyKC0td2Mtc3VidGV4dCk7XG4gIC0tY29sb3Itc3VjY2VzczogIzE2OWQyNjtcbiAgLS1jb2xvci1hbGVydDogI2M0MGExNDtcbiAgLS1jb2xvci1ub3RpY2U6ICNlM2RjMTc7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgLS1zZWFyY2gtZmllbGQtdG9wLW1hcmdpbjogNHJlbTtcbiAgICAgIC0tc3BhY2luZy1idXR0b24taW5wdXQ6IDEuMXJlbSAxLjZyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAtLWZvbnQtc2l6ZS14eGw6IDIuNHJlbTtcbiAgICAgIC0tZm9udC1zaXplLXhsOiAyLjJyZW07XG4gICAgICAtLWZvbnQtc2l6ZS1sZzogMS45cmVtO1xuICAgICAgLS1mb250LXNpemUtbWQ6IDEuNnJlbTtcbiAgICAgIC0tZm9udC1zaXplLXNtOiAxLjJyZW07IH0gfVxuXG5AdXNlIFwic2Fzczpjb2xvclwiO1xuYm9keSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1wcmltYXJ5KTsgfVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5hIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWdsb2JhbCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBhOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbiAgYm9yZGVyLWxlZnQ6IDJweCB2YXIoLS1jb2xvci1wcmltYXJ5KSBzb2xpZDsgfVxuXG5oMSwgLmgxIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICBoMSwgLmgxIHtcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICBoeXBoZW5zOiBhdXRvOyB9IH1cblxuaDIsIC5oMiB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgaDIsIC5oMiB7XG4gICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgICAgaHlwaGVuczogYXV0bzsgfSB9XG5cbmgzLCAuaDMge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIGgzLCAuaDMge1xuICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgIGh5cGhlbnM6IGF1dG87IH0gfVxuXG5oNCwgLmg0IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICBoNCwgLmg0IHtcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICBoeXBoZW5zOiBhdXRvOyB9IH1cblxuaDUsIC5oNSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgaDUsIC5oNSB7XG4gICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgICAgaHlwaGVuczogYXV0bzsgfSB9XG5cbmg2LCAuaDYge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIGg2LCAuaDYge1xuICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgIGh5cGhlbnM6IGF1dG87IH0gfVxuXG4uaDEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5oMSB7XG4gICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgICAgaHlwaGVuczogYXV0bzsgfSB9XG5cbi5oMiB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmgyIHtcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICBoeXBoZW5zOiBhdXRvOyB9IH1cblxuLmgzIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuaDMge1xuICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgIGh5cGhlbnM6IGF1dG87IH0gfVxuXG4uaDQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5oNCB7XG4gICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgICAgaHlwaGVuczogYXV0bzsgfSB9XG5cbi5oNSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmg1IHtcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICBoeXBoZW5zOiBhdXRvOyB9IH1cblxuLmg2IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuaDYge1xuICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgIGh5cGhlbnM6IGF1dG87IH0gfVxuXG5oMSwgLmgxLFxuLmgxLFxuLnBhZ2UtdGl0bGUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMSk7IH1cbiAgaDEgPiBhLCAuaDEgPiBhLFxuICAuaDEgPiBhLFxuICAucGFnZS10aXRsZSA+IGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG5cbmgyLCAuaDIsXG4uaDIsXG4uZW50cnktdGl0bGUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7IH1cblxuaDMsIC5oMyxcbi5oMyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgzKTsgfVxuXG5oNCwgLmg0LFxuLmg0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpOyB9XG5cbmg1LCAuaDUsXG4uaDUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7IH1cblxuaDYsIC5oNixcbi5oNiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg2KTsgfVxuXG4uYmxvY2stdGl0bGUsXG4uY29tcG9uZW50LXRpdGxlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteGwpOyB9XG5cbi5jb21wb25lbnQtc3VidGl0bGUsXG4uYmxvY2stc3VidGl0bGUge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7IH1cblxuLmJ1dHRvbixcbi5idG4sXG4ud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1nbG9iYWwpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1idXR0b24taW5wdXQpO1xuICBib3JkZXI6IDFweCB2YXIoLS1jb2xvci1wcmltYXJ5KSBzb2xpZDtcbiAgZm9udC1zaXplOiAwLjlyZW07IH1cbiAgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbjphY3RpdmUsXG4gIC5idG46aG92ZXIsXG4gIC5idG46Zm9jdXMsXG4gIC5idG46YWN0aXZlLFxuICAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLFxuICAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLFxuICAud3AtYmxvY2stYnV0dG9uX19saW5rOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5idXR0b25bdHlwZT1cInN1Ym1pdFwiXSxcbiAgLmJ0blt0eXBlPVwic3VibWl0XCJdLFxuICAud3AtYmxvY2stYnV0dG9uX19saW5rW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmJ1dHRvbjpkaXNhYmxlZCwgLmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF0sXG4gIC5idG46ZGlzYWJsZWQsXG4gIC5idG46ZGlzYWJsZWRbZGlzYWJsZWRdLFxuICAud3AtYmxvY2stYnV0dG9uX19saW5rOmRpc2FibGVkLFxuICAud3AtYmxvY2stYnV0dG9uX19saW5rOmRpc2FibGVkW2Rpc2FibGVkXSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1idXR0b24taW5wdXQpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cblxuaW5wdXQge1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWdsb2JhbCk7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctYnV0dG9uLWlucHV0KTtcbiAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7XG4gIGZvbnQtc2l6ZTogMC45cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGlucHV0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4ycmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMS4ycmVtOyB9IH1cbiAgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmF5KTsgfVxuICBpbnB1dDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbWVkaXVtLWdyYXkpO1xuICAgIG9wYWNpdHk6IDAuNTsgfVxuXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7XG4gIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZ2xvYmFsKTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1idXR0b24taW5wdXQpO1xuICBib3JkZXI6IDFweCB2YXIoLS1jb2xvci1saWdodC1ncmF5KSBzb2xpZDtcbiAgZm9udC1zaXplOiAwLjlyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4ycmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMS4ycmVtOyB9IH1cbiAgc2VsZWN0OjpwbGFjZWhvbGRlcixcbiAgdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmF5KTsgfVxuICBzZWxlY3Q6ZGlzYWJsZWQsXG4gIHRleHRhcmVhOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1tZWRpdW0tZ3JheSk7XG4gICAgb3BhY2l0eTogMC41OyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5sZWdlbmQge1xuICBmb250LXNpemU6IDFyZW07IH1cblxuLmNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IHZhcigtLXJlc3BvbnNpdmUtYWxpZ253aWRlLXdpZHRoKTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4uYmctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYmctb3ZlcmxheTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgei1pbmRleDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgb3BhY2l0eTogMC4zOyB9XG5cbiNicmVhZGNydW1icyB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnBhZ2UtaGVhZGVyLFxuLmVudHJ5LWNvbnRlbnQgPiAud29vY29tbWVyY2UtcHJvZHVjdHMtaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1wYWdlLWhlYWRlcik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctcGFnZS1oZWFkZXIpO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLWFsaWdud2lkZS13aWR0aCk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmltYWdlIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5zY3JvbGwtZGlzYWJsZWQge1xuICAgIG1hcmdpbjogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG5cbi5oZWFkZXItaWNvbl9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uaGVhZGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBwYWRkaW5nOiAwLjNyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiBub25lOyB9XG4gIC5oZWFkZXItaWNvbjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTsgfVxuICAuaGVhZGVyLWljb246OmJlZm9yZSB7XG4gICAgd2lkdGg6IDEuM3JlbTtcbiAgICBoZWlnaHQ6IDEuM3JlbTsgfVxuXG4uc3Itb25seSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmQtbm9uZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLmhhcy1wcmltYXJ5LWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTsgfVxuICAuaGFzLXByaW1hcnktYmFja2dyb3VuZC1jb2xvciAuYnRuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpOyB9XG5cbi5oYXMtc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gIC5oYXMtc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3IgLmJ0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTsgfVxuXG4uaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIC5idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7IH1cblxuLmhhcy13aGl0ZS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG4gIC5oYXMtd2hpdGUtYmFja2dyb3VuZC1jb2xvciAuYnRuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpOyB9XG5cbi5oYXMtcHJpbWFyeS1jb2xvciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTsgfVxuICAuaGFzLXByaW1hcnktY29sb3IgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpOyB9XG4gICAgLmhhcy1wcmltYXJ5LWNvbG9yIGE6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7IH1cbiAgLmhhcy1wcmltYXJ5LWNvbG9yIGgxLCAuaGFzLXByaW1hcnktY29sb3IgLmgxIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7IH1cbiAgLmhhcy1wcmltYXJ5LWNvbG9yIGgyLCAuaGFzLXByaW1hcnktY29sb3IgLmgyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7IH1cbiAgLmhhcy1wcmltYXJ5LWNvbG9yIGgzLCAuaGFzLXByaW1hcnktY29sb3IgLmgzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7IH1cbiAgLmhhcy1wcmltYXJ5LWNvbG9yIGg0LCAuaGFzLXByaW1hcnktY29sb3IgLmg0IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7IH1cbiAgLmhhcy1wcmltYXJ5LWNvbG9yIGg1LCAuaGFzLXByaW1hcnktY29sb3IgLmg1IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7IH1cbiAgLmhhcy1wcmltYXJ5LWNvbG9yIGg2LCAuaGFzLXByaW1hcnktY29sb3IgLmg2IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7IH1cbiAgLmhhcy1wcmltYXJ5LWNvbG9yIC5oMSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpOyB9XG4gIC5oYXMtcHJpbWFyeS1jb2xvciAuaDIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTsgfVxuICAuaGFzLXByaW1hcnktY29sb3IgLmgzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7IH1cbiAgLmhhcy1wcmltYXJ5LWNvbG9yIC5oNCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpOyB9XG4gIC5oYXMtcHJpbWFyeS1jb2xvciAuaDUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTsgfVxuICAuaGFzLXByaW1hcnktY29sb3IgLmg2IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7IH1cblxuLmhhcy1zZWNvbmRhcnktY29sb3Ige1xuICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTsgfVxuICAuaGFzLXNlY29uZGFyeS1jb2xvciBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTsgfVxuICAgIC5oYXMtc2Vjb25kYXJ5LWNvbG9yIGE6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpOyB9XG4gIC5oYXMtc2Vjb25kYXJ5LWNvbG9yIGgxLCAuaGFzLXNlY29uZGFyeS1jb2xvciAuaDEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gIC5oYXMtc2Vjb25kYXJ5LWNvbG9yIGgyLCAuaGFzLXNlY29uZGFyeS1jb2xvciAuaDIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gIC5oYXMtc2Vjb25kYXJ5LWNvbG9yIGgzLCAuaGFzLXNlY29uZGFyeS1jb2xvciAuaDMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gIC5oYXMtc2Vjb25kYXJ5LWNvbG9yIGg0LCAuaGFzLXNlY29uZGFyeS1jb2xvciAuaDQge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gIC5oYXMtc2Vjb25kYXJ5LWNvbG9yIGg1LCAuaGFzLXNlY29uZGFyeS1jb2xvciAuaDUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gIC5oYXMtc2Vjb25kYXJ5LWNvbG9yIGg2LCAuaGFzLXNlY29uZGFyeS1jb2xvciAuaDYge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gIC5oYXMtc2Vjb25kYXJ5LWNvbG9yIC5oMSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7IH1cbiAgLmhhcy1zZWNvbmRhcnktY29sb3IgLmgyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTsgfVxuICAuaGFzLXNlY29uZGFyeS1jb2xvciAuaDMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gIC5oYXMtc2Vjb25kYXJ5LWNvbG9yIC5oNCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7IH1cbiAgLmhhcy1zZWNvbmRhcnktY29sb3IgLmg1IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTsgfVxuICAuaGFzLXNlY29uZGFyeS1jb2xvciAuaDYge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG5cbi5oYXMtd2hpdGUtY29sb3Ige1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG4gIC5oYXMtd2hpdGUtY29sb3IgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTsgfVxuICAgIC5oYXMtd2hpdGUtY29sb3IgYTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7IH1cbiAgLmhhcy13aGl0ZS1jb2xvciBoMSwgLmhhcy13aGl0ZS1jb2xvciAuaDEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmhhcy13aGl0ZS1jb2xvciBoMiwgLmhhcy13aGl0ZS1jb2xvciAuaDIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmhhcy13aGl0ZS1jb2xvciBoMywgLmhhcy13aGl0ZS1jb2xvciAuaDMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmhhcy13aGl0ZS1jb2xvciBoNCwgLmhhcy13aGl0ZS1jb2xvciAuaDQge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmhhcy13aGl0ZS1jb2xvciBoNSwgLmhhcy13aGl0ZS1jb2xvciAuaDUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmhhcy13aGl0ZS1jb2xvciBoNiwgLmhhcy13aGl0ZS1jb2xvciAuaDYge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmhhcy13aGl0ZS1jb2xvciAuaDEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmhhcy13aGl0ZS1jb2xvciAuaDIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmhhcy13aGl0ZS1jb2xvciAuaDMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmhhcy13aGl0ZS1jb2xvciAuaDQge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmhhcy13aGl0ZS1jb2xvciAuaDUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmhhcy13aGl0ZS1jb2xvciAuaDYge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cblxuLmhhcy1ibGFjay1jb2xvciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgLmhhcy1ibGFjay1jb2xvciBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gICAgLmhhcy1ibGFjay1jb2xvciBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gIC5oYXMtYmxhY2stY29sb3IgaDEsIC5oYXMtYmxhY2stY29sb3IgLmgxIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5oYXMtYmxhY2stY29sb3IgaDIsIC5oYXMtYmxhY2stY29sb3IgLmgyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5oYXMtYmxhY2stY29sb3IgaDMsIC5oYXMtYmxhY2stY29sb3IgLmgzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5oYXMtYmxhY2stY29sb3IgaDQsIC5oYXMtYmxhY2stY29sb3IgLmg0IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5oYXMtYmxhY2stY29sb3IgaDUsIC5oYXMtYmxhY2stY29sb3IgLmg1IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5oYXMtYmxhY2stY29sb3IgaDYsIC5oYXMtYmxhY2stY29sb3IgLmg2IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5oYXMtYmxhY2stY29sb3IgLmgxIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5oYXMtYmxhY2stY29sb3IgLmgyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5oYXMtYmxhY2stY29sb3IgLmgzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5oYXMtYmxhY2stY29sb3IgLmg0IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5oYXMtYmxhY2stY29sb3IgLmg1IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5oYXMtYmxhY2stY29sb3IgLmg2IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG5cbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYS5idXR0b24sXG4ud29vY29tbWVyY2UgYS5idXR0b24uYWx0IHtcbiAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1nbG9iYWwpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1idXR0b24taW5wdXQpO1xuICBib3JkZXI6IDFweCB2YXIoLS1jb2xvci1wcmltYXJ5KSBzb2xpZDtcbiAgZm9udC1zaXplOiAwLjlyZW07IH1cbiAgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246aG92ZXIsIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmZvY3VzLCAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjphY3RpdmUsXG4gIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDpob3ZlcixcbiAgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmZvY3VzLFxuICAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6YWN0aXZlLFxuICAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5kaXNhYmxlZDpob3ZlcixcbiAgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsXG4gIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmRpc2FibGVkOmFjdGl2ZSxcbiAgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LmRpc2FibGVkOmhvdmVyLFxuICAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQ6Zm9jdXMsXG4gIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZDphY3RpdmUsXG4gIC53b29jb21tZXJjZSBhLmJ1dHRvbjpob3ZlcixcbiAgLndvb2NvbW1lcmNlIGEuYnV0dG9uOmZvY3VzLFxuICAud29vY29tbWVyY2UgYS5idXR0b246YWN0aXZlLFxuICAud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmhvdmVyLFxuICAud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmZvY3VzLFxuICAud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0sXG4gIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdFt0eXBlPVwic3VibWl0XCJdLFxuICAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5kaXNhYmxlZFt0eXBlPVwic3VibWl0XCJdLFxuICAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWRbdHlwZT1cInN1Ym1pdFwiXSxcbiAgLndvb2NvbW1lcmNlIGEuYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0sXG4gIC53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpkaXNhYmxlZCwgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdLFxuICAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6ZGlzYWJsZWQsXG4gIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4gIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmRpc2FibGVkOmRpc2FibGVkLFxuICAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5kaXNhYmxlZDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4gIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZDpkaXNhYmxlZCxcbiAgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LmRpc2FibGVkOmRpc2FibGVkW2Rpc2FibGVkXSxcbiAgLndvb2NvbW1lcmNlIGEuYnV0dG9uOmRpc2FibGVkLFxuICAud29vY29tbWVyY2UgYS5idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdLFxuICAud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmRpc2FibGVkLFxuICAud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmRpc2FibGVkW2Rpc2FibGVkXSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1idXR0b24taW5wdXQpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cblxuLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsLnBhZ2UtbnVtYmVycyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyOiBub25lOyB9XG4gIC53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMgbGkge1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMgbGkgPiBhLFxuICAgIC53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMgbGkgPiBzcGFuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07IH1cbiAgICAud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwucGFnZS1udW1iZXJzIGxpIC5jdXJyZW50IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTsgfVxuXG4uY2FydC1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHBhZGRpbmc6IDAuM3JlbTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IG5vbmU7IH1cbiAgLmNhcnQtYnRuOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5jYXJ0LWJ0bjo6YmVmb3JlIHtcbiAgICB3aWR0aDogMS4zcmVtO1xuICAgIGhlaWdodDogMS4zcmVtOyB9XG4gIC5jYXJ0LWJ0bjo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwi74G6XCI7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDsgfVxuICAuY2FydC1idG4gLnByb2R1Y3QtY291bnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0ycHg7XG4gICAgcmlnaHQ6IC00cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhzKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ucHJvZmlsZS1idG4ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG5cbi53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCxcbi53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IHtcbiAgLS1wcm9kdWN0LXNlY3Rpb24tLWdhcDogMnJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IHZhcigtLXByb2R1Y3Qtc2VjdGlvbi0tZ2FwKTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QsXG4gICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3Qge1xuICAgICAgLS1wcm9kdWN0LXNlY3Rpb24tLWdhcDogM3JlbTsgfSB9XG4gIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzLFxuICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LmltYWdlcyxcbiAgICAgIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5pbWFnZXMge1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoNTAlIC0gdmFyKC0tcHJvZHVjdC1zZWN0aW9uLS1nYXApIC8gMik7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5pbWFnZXMsXG4gICAgICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIHtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDQwJSAtIHZhcigtLXByb2R1Y3Qtc2VjdGlvbi0tZ2FwKSAvIDIpOyB9IH1cbiAgICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LmltYWdlcyBpbWcsXG4gICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LmltYWdlcyBpbWcge1xuICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87IH1cbiAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5LmVudHJ5LXN1bW1hcnksXG4gIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkuZW50cnktc3VtbWFyeSxcbiAgICAgIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkge1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoNTAlIC0gdmFyKC0tcHJvZHVjdC1zZWN0aW9uLS1nYXApIC8gMik7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5LmVudHJ5LXN1bW1hcnksXG4gICAgICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IHtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDYwJSAtIHZhcigtLXByb2R1Y3Qtc2VjdGlvbi0tZ2FwKSAvIDIpOyB9IH1cbiAgICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkuZW50cnktc3VtbWFyeSAuc2luZ2xlLXByb2R1Y3RfX2NhdGVnb3JpZXMsXG4gICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkuZW50cnktc3VtbWFyeSAuc2luZ2xlLXByb2R1Y3RfX2NhdGVnb3JpZXMge1xuICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfVxuICAgICAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgLnNpbmdsZS1wcm9kdWN0X19jYXRlZ29yaWVzIGEsXG4gICAgICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IC5zaW5nbGUtcHJvZHVjdF9fY2F0ZWdvcmllcyBhIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkuZW50cnktc3VtbWFyeSAuc2luZ2xlLXByb2R1Y3RfX2NhdGVnb3JpZXMgYTpob3ZlcixcbiAgICAgICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkuZW50cnktc3VtbWFyeSAuc2luZ2xlLXByb2R1Y3RfX2NhdGVnb3JpZXMgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpOyB9XG4gIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCAucHJvZHVjdF9tZXRhIC5za3Vfd3JhcHBlciBzcGFuLnNrdSxcbiAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3RfbWV0YSAuc2t1X3dyYXBwZXIgc3Bhbi5za3Uge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCAucHJvZHVjdC1zcGVjcyxcbiAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3Qtc3BlY3Mge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3Qtc3BlY3MgdHIgPiAqLFxuICAgIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IC5wcm9kdWN0LXNwZWNzIHRyID4gKiB7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgIGJvcmRlcjogMnB4IHdoaXRlIHNvbGlkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtYXZhaWxpYmlsaXR5LFxuICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCAucHJvZHVjdC1hdmFpbGliaWxpdHkge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKSAxcmVtIHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKSAwOyB9XG4gICAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IC5wcm9kdWN0LWF2YWlsaWJpbGl0eSAuYXZhaWxhYmlsaXR5LWljb24sXG4gICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtYXZhaWxpYmlsaXR5IC5hdmFpbGFiaWxpdHktaWNvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtcHJpY2VfX2hlYWRlcixcbiAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtcHJpY2VfX2hlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IHAucHJpY2UsXG4gIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCBzcGFuLnByaWNlLFxuICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCBwLnByaWNlLFxuICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCBzcGFuLnByaWNlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW46IDA7IH1cbiAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IC5wcm9kdWN0LXF0eV9fZGVzY3JpcHRpb24sXG4gIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IC5wcm9kdWN0LXF0eV9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0LFxuICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCBmb3JtLmNhcnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDFyZW07IH1cbiAgICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0OjpiZWZvcmUsXG4gICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0OjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IGZvcm0uY2FydCxcbiAgICAgIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IGZvcm0uY2FydCB7XG4gICAgICAgIGdhcDogMS41cmVtOyB9IH1cbiAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IC5xdWFudGl0eSAucXR5LFxuICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCAucXVhbnRpdHkgLnF0eSB7XG4gICAgd2lkdGg6IDQuNXJlbTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IC5xdWFudGl0eSAucXR5LFxuICAgICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnF1YW50aXR5IC5xdHkge1xuICAgICAgICB3aWR0aDogNnJlbTsgfSB9XG4gIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLFxuICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTsgfVxuICAgIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzOjpiZWZvcmUsIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzOjphZnRlcixcbiAgICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzOjpiZWZvcmUsXG4gICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFiczo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSxcbiAgICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaTo6YmVmb3JlLFxuICAgIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpOjphZnRlcixcbiAgICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpLFxuICAgIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGk6OmJlZm9yZSxcbiAgICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpOjphZnRlciB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSxcbiAgICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTsgfVxuICAgICAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkgPiBhLFxuICAgICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSA+IGEge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG4gICAgICAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaTpob3ZlciwgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlLFxuICAgICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaTpob3ZlcixcbiAgICAgIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG4gICAgICAgIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpOmhvdmVyID4gYSwgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlID4gYSxcbiAgICAgICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaTpob3ZlciA+IGEsXG4gICAgICAgIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlID4gYSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTsgfVxuICAgICAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGk6OmFmdGVyLCAud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaTo6YmVmb3JlLFxuICAgICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaTo6YWZ0ZXIsXG4gICAgICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpOjpiZWZvcmUge1xuICAgICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCB0YWJsZS5sYXBwX19wcm9kdWN0LW1ldGEsXG4gIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IHRhYmxlLmxhcHBfX3Byb2R1Y3QtbWV0YSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7XG4gICAgbWFyZ2luLXRvcDogMXJlbTsgfVxuICAgIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCB0YWJsZS5sYXBwX19wcm9kdWN0LW1ldGEgdGJvZHkgdHIgdGgsXG4gICAgLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IHRhYmxlLmxhcHBfX3Byb2R1Y3QtbWV0YSB0Ym9keSB0ciB0ZCxcbiAgICAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCB0YWJsZS5sYXBwX19wcm9kdWN0LW1ldGEgdGJvZHkgdHIgdGgsXG4gICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgdGFibGUubGFwcF9fcHJvZHVjdC1tZXRhIHRib2R5IHRyIHRkIHtcbiAgICAgIGJvcmRlcjogMXB4IHZhcigtLWNvbG9yLXdoaXRlKSBzb2xpZDtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAgIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCB0YWJsZS5sYXBwX19wcm9kdWN0LW1ldGEgdGJvZHkgdHIgdGgsXG4gICAgICAgIC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCB0YWJsZS5sYXBwX19wcm9kdWN0LW1ldGEgdGJvZHkgdHIgdGQsXG4gICAgICAgIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IHRhYmxlLmxhcHBfX3Byb2R1Y3QtbWV0YSB0Ym9keSB0ciB0aCxcbiAgICAgICAgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgdGFibGUubGFwcF9fcHJvZHVjdC1tZXRhIHRib2R5IHRyIHRkIHtcbiAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTsgfSB9XG5cbi53b29jb21tZXJjZSB7XG4gIC0tdGFibGUtY2VsbC1wYWRkaW5nOiAwLjVyZW07XG4gIC0tZ3JpZDogNWZyIDJmciAyZnIgMWZyIDFmcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAud29vY29tbWVyY2Uge1xuICAgICAgLS1ncmlkOiA1ZnIgcmVwZWF0KDQsIDNmcikgMmZyIDJmcjsgfSB9XG4gIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyxcbiAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAwLjlyZW07IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyxcbiAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzOjpiZWZvcmUsXG4gICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0LFxuICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSBsaS5wcm9kdWN0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhIC5wcm9kdWN0LWxvb3BfX2NvbnRlbnQsXG4gICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHNbY2xhc3MqPVwiY29sdW1ucy1cIl0gbGkucHJvZHVjdCBhIC5wcm9kdWN0LWxvb3BfX2NvbnRlbnQge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTsgfVxuICAgICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhIC5wcm9kdWN0LWxvb3BfX2NvbnRlbnQgLnByaWNlLFxuICAgICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHNbY2xhc3MqPVwiY29sdW1ucy1cIl0gbGkucHJvZHVjdCBhIC5wcm9kdWN0LWxvb3BfX2NvbnRlbnQgLnByaWNlIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJpY2UsXG4gICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHNbY2xhc3MqPVwiY29sdW1ucy1cIl0gbGkucHJvZHVjdCAucHJpY2Uge1xuICAgICAgICBmb250LXNpemU6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG4gICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhLmJ1dHRvbixcbiAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSBsaS5wcm9kdWN0IGEuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bzsgfVxuICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgYS53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX2xpbmssXG4gICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHNbY2xhc3MqPVwiY29sdW1ucy1cIl0gbGkucHJvZHVjdCBhLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fbGluayB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgYS53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX2xpbmsgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4gICAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGEud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19saW5rIC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSxcbiAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIGxpLnByb2R1Y3QgYS53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX2xpbmsgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4gICAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSBsaS5wcm9kdWN0IGEud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19saW5rIC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAgICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fbGluazpob3ZlciwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgYS53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX2xpbms6Zm9jdXMsXG4gICAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSBsaS5wcm9kdWN0IGEud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19saW5rOmhvdmVyLFxuICAgICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHNbY2xhc3MqPVwiY29sdW1ucy1cIl0gbGkucHJvZHVjdCBhLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fbGluazpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgYS53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX2xpbms6aG92ZXIgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4gICAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgYS53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX2xpbms6aG92ZXIgLndvb2NvbW1lcmNlLWxvb3AtY2F0ZWdvcnlfX3RpdGxlLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fbGluazpmb2N1cyAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSxcbiAgICAgICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fbGluazpmb2N1cyAud29vY29tbWVyY2UtbG9vcC1jYXRlZ29yeV9fdGl0bGUsXG4gICAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIGxpLnByb2R1Y3QgYS53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX2xpbms6aG92ZXIgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4gICAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIGxpLnByb2R1Y3QgYS53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX2xpbms6aG92ZXIgLndvb2NvbW1lcmNlLWxvb3AtY2F0ZWdvcnlfX3RpdGxlLFxuICAgICAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSBsaS5wcm9kdWN0IGEud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19saW5rOmZvY3VzIC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLFxuICAgICAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSBsaS5wcm9kdWN0IGEud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19saW5rOmZvY3VzIC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByb2R1Y3QtbG9vcF9fY29udGVudCxcbiAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSBsaS5wcm9kdWN0IC5wcm9kdWN0LWxvb3BfX2NvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTtcbiAgICAgICAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7IH1cbiAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByb2R1Y3QtbG9vcF9fY29udGVudDpob3ZlcixcbiAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIGxpLnByb2R1Y3QgLnByb2R1Y3QtbG9vcF9fY29udGVudDpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7IH1cbiAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByb2R1Y3QtbG9vcF9fY29udGVudCAucHJvZHVjdC1oZWFkaW5nLFxuICAgICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHNbY2xhc3MqPVwiY29sdW1ucy1cIl0gbGkucHJvZHVjdCAucHJvZHVjdC1sb29wX19jb250ZW50IC5wcm9kdWN0LWhlYWRpbmcge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByb2R1Y3QtbG9vcF9fY29udGVudCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSxcbiAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIGxpLnByb2R1Y3QgLnByb2R1Y3QtbG9vcF9fY29udGVudCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAubG9vcC1pbWFnZV9fd3JhcHBlcixcbiAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSBsaS5wcm9kdWN0IC5sb29wLWltYWdlX193cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7XG4gICAgICAgIGJvcmRlcjogMXB4IHZhcigtLWNvbG9yLXByaW1hcnkpIHNvbGlkO1xuICAgICAgICBtaW4td2lkdGg6IDIwMHB4OyB9XG4gICAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5sb29wLWltYWdlX193cmFwcGVyIGltZyxcbiAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIGxpLnByb2R1Y3QgLmxvb3AtaW1hZ2VfX3dyYXBwZXIgaW1nIHtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiA1MHB4OyB9XG4gICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCA+IGE6bm90KC5idXR0b24pLFxuICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIGxpLnByb2R1Y3QgPiBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCA+IGEgaW1nLFxuICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIGxpLnByb2R1Y3QgPiBhIGltZyB7XG4gICAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyAucHJvZHVjdC1ncm91cF9fdGVybS10aXRsZSxcbiAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHNbY2xhc3MqPVwiY29sdW1ucy1cIl0gLnByb2R1Y3QtZ3JvdXBfX3Rlcm0tdGl0bGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMC41cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7IH1cbiAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyAucHJvZHVjdC1ncm91cF9fdGVybS10aXRsZSBoMiwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIC5wcm9kdWN0LWdyb3VwX190ZXJtLXRpdGxlIC5oMixcbiAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSAucHJvZHVjdC1ncm91cF9fdGVybS10aXRsZSBoMixcbiAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSAucHJvZHVjdC1ncm91cF9fdGVybS10aXRsZSAuaDIge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTsgfVxuICAud29vY29tbWVyY2UgLmxvb3AtY29udGVudCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi53b29jb21tZXJjZSAucHJvZHVjdC1sYWJlbHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodC1ncmF5KTtcbiAgbWFyZ2luOiAwOyB9XG5cbi53b29jb21tZXJjZSAuYXZhaWxhYmlsaXR5LWljb246OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICBjb250ZW50OiBcIu+EkVwiO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG5cbi53b29jb21tZXJjZSAuYXZhaWxhYmlsaXR5LWljb24uaW4tc3RvY2sge1xuICBjb2xvcjogdmFyKC0tY29sb3Itc3VjY2VzcykgIWltcG9ydGFudDsgfVxuXG4ud29vY29tbWVyY2UgLmF2YWlsYWJpbGl0eS1pY29uLm91dC1vZi1zdG9jayB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1hbGVydCkgIWltcG9ydGFudDsgfVxuXG4ud29vY29tbWVyY2UgLmF2YWlsYWJpbGl0eS1pY29uLmF2YWlsYWJsZS1vbi1iYWNrb3JkZXIsIC53b29jb21tZXJjZSAuYXZhaWxhYmlsaXR5LWljb24ub24tYmFja29yZGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5vdGljZSkgIWltcG9ydGFudDsgfVxuXG4ud29vY29tbWVyY2UgLmF2YWlsYWJpbGl0eS1kZXNjcmlwdGlvbiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luOiAwOyB9XG4gIC53b29jb21tZXJjZSAuYXZhaWxhYmlsaXR5LWRlc2NyaXB0aW9uIHVsIGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLndvb2NvbW1lcmNlIC5hdmFpbGFiaWxpdHktZGVzY3JpcHRpb24gdWwgbGkgLmRlc2NyaXB0aW9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi53b29jb21tZXJjZSAubG9vcC1wcm9kdWN0X193cmFwcGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiB2YXIoLS1ncmlkKTtcbiAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gIC53b29jb21tZXJjZSAubG9vcC1wcm9kdWN0X193cmFwcGVyIGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gIC53b29jb21tZXJjZSAubG9vcC1wcm9kdWN0X193cmFwcGVyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodC1ncmF5KTsgfVxuICAud29vY29tbWVyY2UgLmxvb3AtcHJvZHVjdF9fd3JhcHBlciA+ICoge1xuICAgIHBhZGRpbmc6IHZhcigtLXRhYmxlLWNlbGwtcGFkZGluZyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLndvb2NvbW1lcmNlIC5sb29wLXByb2R1Y3RfX3dyYXBwZXIgPiAqOm5vdCgubG9vcC1pdGVtX190aXRsZSkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAud29vY29tbWVyY2UgLmxvb3AtcHJvZHVjdF9fd3JhcHBlciA+ICoubG9vcC1pdGVtX190aXRsZSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAud29vY29tbWVyY2UgLmxvb3AtcHJvZHVjdF9fd3JhcHBlciA+ICoubG9vcC1pdGVtX190aXRsZSBoMiwgLndvb2NvbW1lcmNlIC5sb29wLXByb2R1Y3RfX3dyYXBwZXIgPiAqLmxvb3AtaXRlbV9fdGl0bGUgLmgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgICAud29vY29tbWVyY2UgLmxvb3AtcHJvZHVjdF9fd3JhcHBlciA+ICoubG9vcC1pdGVtX19za3UsIC53b29jb21tZXJjZSAubG9vcC1wcm9kdWN0X193cmFwcGVyID4gKi5sb29wLWl0ZW1fX3VuaXQsIC53b29jb21tZXJjZSAubG9vcC1wcm9kdWN0X193cmFwcGVyID4gKi5sb29wLWl0ZW1fX3N1cHBsaWVyLCAud29vY29tbWVyY2UgLmxvb3AtcHJvZHVjdF9fd3JhcHBlciA+ICoubG9vcC1pdGVtX19lbGVjdHJpY2FsLW5yLCAud29vY29tbWVyY2UgLmxvb3AtcHJvZHVjdF9fd3JhcHBlciA+ICoubG9vcC1pdGVtX192ZW5kb3ItbWF0ZXJpYWwge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAud29vY29tbWVyY2UgLmxvb3AtcHJvZHVjdF9fd3JhcHBlciA+ICoubG9vcC1pdGVtX19za3Uge1xuICAgICAgd29yZC1icmVhazogYnJlYWstYWxsOyB9XG4gICAgLndvb2NvbW1lcmNlIC5sb29wLXByb2R1Y3RfX3dyYXBwZXIgPiAqLmxvb3AtaXRlbV9fYXZhaWxhYmlsaXR5IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLndvb2NvbW1lcmNlIC5sb29wLXByb2R1Y3RfX3dyYXBwZXIgPiAqLmxvb3AtaXRlbV9fZHJvcGRvd24ge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgLndvb2NvbW1lcmNlIC5sb29wLXByb2R1Y3RfX3dyYXBwZXIgPiAqLmxvb3AtaXRlbV9fZHJvcGRvd24ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgICAgLndvb2NvbW1lcmNlIC5sb29wLXByb2R1Y3RfX3dyYXBwZXIgPiAqLmxvb3AtaXRlbV9fZHJvcGRvd24gLmJ0bi1wcm9kdWN0LWluZm9fX3RvZ2dsZSB7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgICAgLndvb2NvbW1lcmNlIC5sb29wLXByb2R1Y3RfX3dyYXBwZXIgPiAqLmxvb3AtaXRlbV9fZHJvcGRvd24gLmJ0bi1wcm9kdWN0LWluZm9fX3RvZ2dsZTo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAgICAgY29udGVudDogXCLvgbhcIjtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgICAgICAgLndvb2NvbW1lcmNlIC5sb29wLXByb2R1Y3RfX3dyYXBwZXIgPiAqLmxvb3AtaXRlbV9fZHJvcGRvd24gLmJ0bi1wcm9kdWN0LWluZm9fX3RvZ2dsZS5vcGVuOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cblxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlLWNhcnQtZm9ybSxcbi53b29jb21tZXJjZS1jYXJ0IC5zaG9wX3RhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG5cbi53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgLnF1YW50aXR5IC5xdHkge1xuICB3aWR0aDogNXJlbTtcbiAgcGFkZGluZzogMXJlbSAwLjVyZW07IH1cblxuLndvb2NvbW1lcmNlLWNhcnQgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24gLmlucHV0LXRleHQge1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWdsb2JhbCk7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctYnV0dG9uLWlucHV0KTtcbiAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7XG4gIGZvbnQtc2l6ZTogMC45cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uIC5pbnB1dC10ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4ycmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMS4ycmVtOyB9IH1cbiAgLndvb2NvbW1lcmNlLWNhcnQgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24gLmlucHV0LXRleHQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmF5KTsgfVxuICAud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbWVkaXVtLWdyYXkpO1xuICAgIG9wYWNpdHk6IDAuNTsgfVxuXG4ud29vY29tbWVyY2UtY2FydCAuY2FydC1jb2xsYXRlcmFscyB7XG4gIHBhZGRpbmctdG9wOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC53b29jb21tZXJjZS1jYXJ0IC5jYXJ0LWNvbGxhdGVyYWxzIC5jcm9zcy1zZWxscyAucHJvZHVjdHMge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfSB9XG5cbi53b29jb21tZXJjZSB1bCNzaGlwcGluZ19tZXRob2QgbGkgaW5wdXQge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93Lndvb2NvbW1lcmNlLWludmFsaWQgbGFiZWwge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYWxlcnQpOyB9XG5cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB7XG4gIG1heC13aWR0aDogMzQwcHg7IH1cbiAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgPiBsaSA+IGEge1xuICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1nbG9iYWwpO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1idXR0b24taW5wdXQpO1xuICAgICAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItcHJpbWFyeSkgc29saWQ7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgPiBsaSA+IGE6aG92ZXIsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCA+IGxpID4gYTpmb2N1cywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsID4gbGkgPiBhOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsID4gbGkgPiBhW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgICAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgPiBsaSA+IGE6ZGlzYWJsZWQsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCA+IGxpID4gYTpkaXNhYmxlZFtkaXNhYmxlZF0ge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWJ1dHRvbi1pbnB1dCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgICAgIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCA+IGxpID4gYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgICAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZ2xvYmFsKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctYnV0dG9uLWlucHV0KTtcbiAgICAgIGJvcmRlcjogMXB4IHZhcigtLWNvbG9yLXByaW1hcnkpIHNvbGlkO1xuICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgPiBsaS5pcy1hY3RpdmUgPiBhOmhvdmVyLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgPiBsaS5pcy1hY3RpdmUgPiBhOmZvY3VzLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgPiBsaS5pcy1hY3RpdmUgPiBhOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsID4gbGkuaXMtYWN0aXZlID4gYVt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsID4gbGkuaXMtYWN0aXZlID4gYTpkaXNhYmxlZCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsID4gbGkuaXMtYWN0aXZlID4gYTpkaXNhYmxlZFtkaXNhYmxlZF0ge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWJ1dHRvbi1pbnB1dCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cblxuLndjLWJyZWFkY3J1bWJfX3dyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrLWdyYXkpO1xuICBwYWRkaW5nOiAwLjg1cmVtIDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLndjLWJyZWFkY3J1bWJfX3dyYXBwZXIge1xuICAgICAgcGFkZGluZzogMS4yNXJlbSAwOyB9IH1cbiAgLndjLWJyZWFkY3J1bWJfX3dyYXBwZXIgLndvb2NvbW1lcmNlLWJyZWFkY3J1bWIge1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICAud2MtYnJlYWRjcnVtYl9fd3JhcHBlciAud29vY29tbWVyY2UtYnJlYWRjcnVtYiBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cblxuLndjLWJhbm5lcl9fd3JhcHBlciAud2MtYmFubmVyIHtcbiAgaGVpZ2h0OiAyMHZ3O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLnByb2R1Y3QtZmlsdGVyID4gKiB7XG4gIGJvcmRlci10b3A6IDJweCB2YXIoLS1jb2xvci1wcmltYXJ5KSBzb2xpZDtcbiAgcGFkZGluZzogMS41cmVtIDA7IH1cblxuLnByb2R1Y3QtZmlsdGVyIC5hY3RpdmUtZmlsdGVycyAuYWN0aXZlLWZpbHRlcnNfX3RpdGxlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4ucHJvZHVjdC1maWx0ZXIgLmFjdGl2ZS1maWx0ZXJzIC5hY3RpdmUtZmlsdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07IH1cbiAgLnByb2R1Y3QtZmlsdGVyIC5hY3RpdmUtZmlsdGVycyAuYWN0aXZlLWZpbHRlciAucmVtb3ZlLWZpbHRlciB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5wcm9kdWN0LWZpbHRlciAuYWN0aXZlLWZpbHRlcnMgLmFjdGl2ZS1maWx0ZXIgLnJlbW92ZS1maWx0ZXI6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAgIGNvbnRlbnQ6IFwi74CNXCI7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG4gICAgLnByb2R1Y3QtZmlsdGVyIC5hY3RpdmUtZmlsdGVycyAuYWN0aXZlLWZpbHRlciAucmVtb3ZlLWZpbHRlcjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7IH1cblxuLnByb2R1Y3QtZmlsdGVyIC5zZWFyY2gtZmlsdGVyc19fd3JhcHBlciB7XG4gIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC5wcm9kdWN0LWZpbHRlciAuc2VhcmNoLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlci10b2dnbGVfX3dyYXBwZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZzogMXJlbSAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgICAucHJvZHVjdC1maWx0ZXIgLnNlYXJjaC1maWx0ZXJzX193cmFwcGVyIC5maWx0ZXItdG9nZ2xlX193cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5wcm9kdWN0LWZpbHRlciAuc2VhcmNoLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlci10b2dnbGVfX3dyYXBwZXIgI2ZpbHRlcl90b2dnbGVyOmFmdGVyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAgIGNvbnRlbnQ6IFwi74eeXCI7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5wcm9kdWN0LWZpbHRlciAuc2VhcmNoLWZpbHRlcnNfX3dyYXBwZXIgLnNlYXJjaC1maWx0ZXJzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5wcm9kdWN0LWZpbHRlciAuc2VhcmNoLWZpbHRlcnNfX3dyYXBwZXIgLnNlYXJjaC1maWx0ZXJzLmFjdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLnByb2R1Y3QtZmlsdGVyIC5zZWFyY2gtZmlsdGVyc19fd3JhcHBlciAuc2VhcmNoLWZpbHRlcnMgI2NoaWxkX2NhdCxcbiAgLnByb2R1Y3QtZmlsdGVyIC5zZWFyY2gtZmlsdGVyc19fd3JhcHBlciAuc2VhcmNoLWZpbHRlcnMgbGFiZWxbZm9yPVwiY2hpbGRfY2F0XCJdIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wcm9kdWN0LWZpbHRlciAuc2VhcmNoLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlci1yb3cge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwOyB9XG4gICAgLnByb2R1Y3QtZmlsdGVyIC5zZWFyY2gtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyLXJvdyA+IGxhYmVsIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgIC5wcm9kdWN0LWZpbHRlciAuc2VhcmNoLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlci1yb3cgZmllbGRzZXQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGdhcDogMC41cmVtOyB9XG4gICAgICAucHJvZHVjdC1maWx0ZXIgLnNlYXJjaC1maWx0ZXJzX193cmFwcGVyIC5maWx0ZXItcm93IGZpZWxkc2V0IGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAucHJvZHVjdC1maWx0ZXIgLnNlYXJjaC1maWx0ZXJzX193cmFwcGVyIC5maWx0ZXItcm93IGZpZWxkc2V0IGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgICAgIC5wcm9kdWN0LWZpbHRlciAuc2VhcmNoLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlci1yb3cgZmllbGRzZXQgaW5wdXRbdHlwZT1jaGVja2JveF06aG92ZXIgKyBsYWJlbCB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpOyB9XG4gICAgICAucHJvZHVjdC1maWx0ZXIgLnNlYXJjaC1maWx0ZXJzX193cmFwcGVyIC5maWx0ZXItcm93IGZpZWxkc2V0IGxhYmVsIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBtYXJnaW46IDA7IH1cbiAgLnByb2R1Y3QtZmlsdGVyIC5zZWFyY2gtZmlsdGVyc19fd3JhcHBlciBzZWxlY3QsXG4gIC5wcm9kdWN0LWZpbHRlciAuc2VhcmNoLWZpbHRlcnNfX3dyYXBwZXIgaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSkge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5wcm9kdWN0LWZpbHRlciAuc2VhcmNoLWZpbHRlcnNfX3dyYXBwZXIgc2VsZWN0OmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmF5KTsgfVxuICAucHJvZHVjdC1maWx0ZXIgLnNlYXJjaC1maWx0ZXJzX193cmFwcGVyIHNlbGVjdCBvcHRpb246ZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrLWdyYXkpOyB9XG4gIC5wcm9kdWN0LWZpbHRlciAuc2VhcmNoLWZpbHRlcnNfX3dyYXBwZXIgLnNlYXJjaGZpZWxkX193cmFwcGVyIC5zZWFyY2hmaWVsZF9fd3JhcHBlci1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5wcm9kdWN0LWZpbHRlciAuc2VhcmNoLWZpbHRlcnNfX3dyYXBwZXIgLnNlYXJjaGZpZWxkX193cmFwcGVyIHtcbiAgICAgIHdpZHRoOiBjYWxjKHZhcigtLWNvbnRhaW5lci13LXNpZGViYXIpIC0gdmFyKC0tc3BhY2luZy1ob3Jpem9udGFsLWdsb2JhbCkpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zZWFyY2gtZmllbGQtdG9wLW1hcmdpbik7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNlYXJjaC1maWVsZC1oZWlnaHQpOyB9IH1cbiAgLnByb2R1Y3QtZmlsdGVyIC5zZWFyY2gtZmlsdGVyc19fd3JhcHBlciAuc2VhcmNoZmllbGRfX3dyYXBwZXIgLnNlYXJjaGZvcm1fX2ZpZWxkIHtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICAucHJvZHVjdC1maWx0ZXIgLnNlYXJjaC1maWx0ZXJzX193cmFwcGVyIC5wcm9kdWN0LWZpbHRlcl9fc3VibWl0IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtOyB9XG5cbi5sb29wLWNvbnRlbnRfX2NhdGVnb3JpZXMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1ZnI7XG4gIG1hcmdpbjogMDsgfVxuICAubG9vcC1jb250ZW50X19jYXRlZ29yaWVzID4gKi5sb29wLWl0ZW1fX3RpdGxlOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwi74GhXCI7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG5cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBhIC5sb29wLWNvbnRlbnRfX2NhdGVnb3JpZXMsXG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHNbY2xhc3MqPVwiY29sdW1ucy1cIl0gYSAubG9vcC1jb250ZW50X19jYXRlZ29yaWVzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNWZyO1xuICBtYXJnaW46IDA7IH1cbiAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGEgLmxvb3AtY29udGVudF9fY2F0ZWdvcmllczpob3ZlcixcbiAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIGEgLmxvb3AtY29udGVudF9fY2F0ZWdvcmllczpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7IH1cbiAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGEgLmxvb3AtY29udGVudF9fY2F0ZWdvcmllcyA+ICosXG4gIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSBhIC5sb29wLWNvbnRlbnRfX2NhdGVnb3JpZXMgPiAqIHtcbiAgICBwYWRkaW5nOiAxcmVtOyB9XG4gICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGEgLmxvb3AtY29udGVudF9fY2F0ZWdvcmllcyA+ICoubG9vcC1pdGVtX19pbWFnZSxcbiAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHNbY2xhc3MqPVwiY29sdW1ucy1cIl0gYSAubG9vcC1jb250ZW50X19jYXRlZ29yaWVzID4gKi5sb29wLWl0ZW1fX2ltYWdlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpO1xuICAgICAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItcHJpbWFyeSkgc29saWQ7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgYSAubG9vcC1jb250ZW50X19jYXRlZ29yaWVzID4gKi5sb29wLWl0ZW1fX3RpdGxlLFxuICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSBhIC5sb29wLWNvbnRlbnRfX2NhdGVnb3JpZXMgPiAqLmxvb3AtaXRlbV9fdGl0bGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBib3JkZXI6IDFweCB2YXIoLS1jb2xvci1saWdodC1ncmF5KSBzb2xpZDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBhIC5sb29wLWNvbnRlbnRfX2NhdGVnb3JpZXMgPiAqLmxvb3AtaXRlbV9fdGl0bGUgaDIsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBhIC5sb29wLWNvbnRlbnRfX2NhdGVnb3JpZXMgPiAqLmxvb3AtaXRlbV9fdGl0bGUgLmgyLFxuICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIGEgLmxvb3AtY29udGVudF9fY2F0ZWdvcmllcyA+ICoubG9vcC1pdGVtX190aXRsZSBoMixcbiAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSBhIC5sb29wLWNvbnRlbnRfX2NhdGVnb3JpZXMgPiAqLmxvb3AtaXRlbV9fdGl0bGUgLmgyIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDYpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gICAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGEgLmxvb3AtY29udGVudF9fY2F0ZWdvcmllcyA+ICoubG9vcC1pdGVtX190aXRsZSBoMiwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGEgLmxvb3AtY29udGVudF9fY2F0ZWdvcmllcyA+ICoubG9vcC1pdGVtX190aXRsZSAuaDIsXG4gICAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIGEgLmxvb3AtY29udGVudF9fY2F0ZWdvcmllcyA+ICoubG9vcC1pdGVtX190aXRsZSBoMixcbiAgICAgICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHNbY2xhc3MqPVwiY29sdW1ucy1cIl0gYSAubG9vcC1jb250ZW50X19jYXRlZ29yaWVzID4gKi5sb29wLWl0ZW1fX3RpdGxlIC5oMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTsgfSB9XG5cbi53b29jb21tZXJjZSBmb3JtLmxvZ2luIHtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4ud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cge1xuICBwYWRkaW5nOiAwIDAgMXJlbSAwOyB9XG4gIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBpbnB1dC5pbnB1dC10ZXh0LFxuICAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgdGV4dGFyZWEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpO1xuICAgIGJvcmRlcjogbm9uZTsgfVxuXG4ud29vY29tbWVyY2UgLnVwc2VsbHMge1xuICB3aWR0aDogMTAwJTsgfVxuICAud29vY29tbWVyY2UgLnVwc2VsbHMgdWwucHJvZHVjdHMsXG4gIC53b29jb21tZXJjZSAudXBzZWxscyB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIGdhcDogMnJlbTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgLndvb2NvbW1lcmNlIC51cHNlbGxzIHVsLnByb2R1Y3RzLFxuICAgICAgLndvb2NvbW1lcmNlIC51cHNlbGxzIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgfSB9XG5cbi5wcm9kdWN0cy5yZWxhdGVkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci10b3A6IDNweCB2YXIoLS1jb2xvci1wcmltYXJ5KSBzb2xpZDtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsLWxnKTsgfVxuICAucHJvZHVjdHMucmVsYXRlZCBoMiwgLnByb2R1Y3RzLnJlbGF0ZWQgLmgyIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7IH1cbiAgLnByb2R1Y3RzLnJlbGF0ZWQgLnByb2R1Y3RzLmNvbHVtbnMtNCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IDFyZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgLnByb2R1Y3RzLnJlbGF0ZWQgLnByb2R1Y3RzLmNvbHVtbnMtNCB7XG4gICAgICAgIGdhcDogMnJlbTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgfSB9XG5cbi5wcm9kdWN0LWluZm9fX21vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodC1ncmF5KTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAucHJvZHVjdC1pbmZvX19tb2JpbGUuYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLnByb2R1Y3QtaW5mb19fbW9iaWxlIHRhYmxlIHRib2R5IHRyIHRoLFxuICAucHJvZHVjdC1pbmZvX19tb2JpbGUgdGFibGUgdGJvZHkgdHIgdGQge1xuICAgIGJvcmRlcjogMXB4IHZhcigtLWNvbG9yLXdoaXRlKSBzb2xpZDtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC43cmVtO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnByb2R1Y3Qtc2VhcmNoZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5wcm9kdWN0LXNlYXJjaGZvcm0gI3NlYXJjaGZvcm0ge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAucHJvZHVjdC1zZWFyY2hmb3JtICNzZWFyY2hmb3JtIC5zZWFyY2hmaWVsZF9fd3JhcHBlciAuc2VhcmNoZmllbGRfX3dyYXBwZXItY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAucHJvZHVjdC1zZWFyY2hmb3JtICNzZWFyY2hmb3JtIC5zZWFyY2hmaWVsZF9fd3JhcHBlciAuc2VhcmNoZmllbGRfX3dyYXBwZXItY29udGVudCAuc2VhcmNoZm9ybV9fZmllbGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5wb3N0LWJhbm5lcl9fd3JhcHBlciAucG9zdC1iYW5uZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAyN3Z3O1xuICBtaW4taGVpZ2h0OiB2YXIoLS1pbWFnZS1taW4taGVpZ2h0KTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbi5nZm9ybV93cmFwcGVyIHtcbiAgbWF4LXdpZHRoOiA3MDBweDsgfVxuICAuZ2Zvcm1fd3JhcHBlci5nZm9ybV9jZW50ZXJfd3JhcHBlciB7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX3ZhbGlkYXRpb25fZXJyb3JzIC5nZm9ybV9zdWJtaXNzaW9uX2Vycm9yIHtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICBjb2xvcjogcmVkOyB9XG4gIC5nZm9ybV93cmFwcGVyIC52YWxpZGF0aW9uX2Vycm9yIHtcbiAgICBjb2xvcjogcmVkOyB9XG4gIC5nZm9ybV93cmFwcGVyIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7IH1cbiAgICAgIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9maWVsZHMgLmdmaWVsZCAudmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgICAgICAgY29sb3I6IHJlZDsgfVxuICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmhpZGRlbl9sYWJlbCBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9maWVsZHMgLmdmaWVsZCAuZ2ZfbmFtZV9oYXNfMiB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdhcDogMnJlbTsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgLmdmX25hbWVfaGFzXzIge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgaW5wdXRbdHlwZT10ZXh0XSxcbiAgICAgIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9maWVsZHMgLmdmaWVsZCBpbnB1dFt0eXBlPW51bWJlcl0sXG4gICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgdGV4dGFyZWEsXG4gICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgc2VsZWN0IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodC1ncmF5KTtcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1nbG9iYWwpO1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWJ1dHRvbi1pbnB1dCk7XG4gICAgICAgIGJvcmRlcjogMXB4IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpIHNvbGlkO1xuICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIGlucHV0W3R5cGU9dGV4dF0sXG4gICAgICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIGlucHV0W3R5cGU9bnVtYmVyXSxcbiAgICAgICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgdGV4dGFyZWEsXG4gICAgICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIHNlbGVjdCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuMnJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMnJlbTsgfSB9XG4gICAgICAgIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9maWVsZHMgLmdmaWVsZCBpbnB1dFt0eXBlPXRleHRdOjpwbGFjZWhvbGRlcixcbiAgICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIGlucHV0W3R5cGU9bnVtYmVyXTo6cGxhY2Vob2xkZXIsXG4gICAgICAgIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9maWVsZHMgLmdmaWVsZCB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIsXG4gICAgICAgIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9maWVsZHMgLmdmaWVsZCBzZWxlY3Q6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmF5KTsgfVxuICAgICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgaW5wdXRbdHlwZT10ZXh0XTpkaXNhYmxlZCxcbiAgICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIGlucHV0W3R5cGU9bnVtYmVyXTpkaXNhYmxlZCxcbiAgICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIHRleHRhcmVhOmRpc2FibGVkLFxuICAgICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgc2VsZWN0OmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1tZWRpdW0tZ3JheSk7XG4gICAgICAgICAgb3BhY2l0eTogMC41OyB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgc2VsZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAyMHB4KSBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuOHJlbTsgfVxuICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIGxhYmVsLFxuICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIGxlZ2VuZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTsgfVxuICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmdmaWVsZF9odG1sIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9maWVsZHMgLmdmaWVsZCBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIC5naW5wdXRfY29udGFpbmVyX2NoZWNrYm94IHVsLmdmaWVsZF9jaGVja2JveCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAgIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9maWVsZHMgLmdmaWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9jaGVja2JveCB1bC5nZmllbGRfY2hlY2tib3ggbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAgICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgLmdpbnB1dF9jb250YWluZXJfY2hlY2tib3ggdWwuZ2ZpZWxkX2NoZWNrYm94IGxpIGlucHV0IHtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4OyB9XG4gICAgICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIC5naW5wdXRfY29udGFpbmVyX2NoZWNrYm94IHVsLmdmaWVsZF9jaGVja2JveCBsaSBsYWJlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTsgfVxuICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIC5naW5wdXRfY29udGFpbmVyX2ZpbGV1cGxvYWQgaW5wdXQge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuZ2ZpZWxkX3JhZGlvX3dyYXBwZXIgbGFiZWwsIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9maWVsZHMgLmdmaWVsZC5nZmllbGRfY2hlY2tib3hfd3JhcHBlciBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkX3JhZGlvIGxpLFxuICAgIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9maWVsZHMgLmdmaWVsZF9jaGVja2JveCBsaSB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGRfcmFkaW8gbGkgbGFiZWwsXG4gICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGRfY2hlY2tib3ggbGkgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9maWVsZHMgLmNsZWFyLW11bHRpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAgIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9maWVsZHMgLmNsZWFyLW11bHRpIGkge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2lucHV0X2NvbnRhaW5lcl90aW1lIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWdsb2JhbCk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWJ1dHRvbi1pbnB1dCk7XG4gICAgICBib3JkZXI6IDFweCB2YXIoLS1jb2xvci1wcmltYXJ5KSBzb2xpZDtcbiAgICAgIGZvbnQtc2l6ZTogMC45cmVtOyB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XTpob3ZlciwgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9mb290ZXIgaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciBpbnB1dFt0eXBlPXN1Ym1pdF1bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9mb290ZXIgaW5wdXRbdHlwZT1zdWJtaXRdOmRpc2FibGVkLCAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XTpkaXNhYmxlZFtkaXNhYmxlZF0ge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWJ1dHRvbi1pbnB1dCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cbiAgLmdmb3JtX3dyYXBwZXIuZm9ybV9fZnVsbF93aWR0aF93cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZ2Zvcm1fd3JhcHBlci5mb3JtX19mdWxsX3dpZHRoX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlci5mb3JtX19mdWxsX3dpZHRoX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTsgfVxuICAgICAgICAuZ2Zvcm1fd3JhcHBlci5mb3JtX19mdWxsX3dpZHRoX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmdmaWVsZF9odG1sIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAwOyB9XG5cbiNoZWFkZXIge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDk5OTk7IH1cblxuLmhlYWRlcl9fd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaGVhZGVyX193cmFwcGVyIC5zaXRlLWhlYWRlcl9fd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG4gICAgLmhlYWRlcl9fd3JhcHBlciAuc2l0ZS1oZWFkZXJfX3dyYXBwZXIgLnNpdGUtaGVhZGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLWFsaWdud2lkZS13aWR0aCk7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgLmhlYWRlcl9fd3JhcHBlciAuc2l0ZS1oZWFkZXJfX3dyYXBwZXIgLnNpdGUtaGVhZGVyIC5zaXRlLWhlYWRlcl9fY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAgICAgICAuaGVhZGVyX193cmFwcGVyIC5zaXRlLWhlYWRlcl9fd3JhcHBlciAuc2l0ZS1oZWFkZXIgLnNpdGUtaGVhZGVyX19jb250ZW50IHtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfSB9XG4gICAgICAgIC5oZWFkZXJfX3dyYXBwZXIgLnNpdGUtaGVhZGVyX193cmFwcGVyIC5zaXRlLWhlYWRlciAuc2l0ZS1oZWFkZXJfX2NvbnRlbnQgLnNpdGUtbG9nbyB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAgICAgLmhlYWRlcl9fd3JhcHBlciAuc2l0ZS1oZWFkZXJfX3dyYXBwZXIgLnNpdGUtaGVhZGVyIC5zaXRlLWhlYWRlcl9fY29udGVudCAuc2l0ZS1sb2dvIGltZyB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzLjJyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYuMjVyZW07IH1cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAuaGVhZGVyX193cmFwcGVyIC5zaXRlLWhlYWRlcl9fd3JhcHBlciAuc2l0ZS1oZWFkZXIgLnNpdGUtaGVhZGVyX19jb250ZW50IC5zaXRlLWxvZ28gaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE5cmVtOyB9IH1cbiAgICAgICAgLmhlYWRlcl9fd3JhcHBlciAuc2l0ZS1oZWFkZXJfX3dyYXBwZXIgLnNpdGUtaGVhZGVyIC5zaXRlLWhlYWRlcl9fY29udGVudCAubmF2YmFyX19saW5rcyB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGdhcDogMXJlbTsgfVxuICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgLmhlYWRlcl9fd3JhcHBlciAuc2l0ZS1oZWFkZXJfX3dyYXBwZXIgLnNpdGUtaGVhZGVyIC5zaXRlLWhlYWRlcl9fY29udGVudCAubmF2YmFyX19saW5rcyB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cbiAgICAgICAgICAuaGVhZGVyX193cmFwcGVyIC5zaXRlLWhlYWRlcl9fd3JhcHBlciAuc2l0ZS1oZWFkZXIgLnNpdGUtaGVhZGVyX19jb250ZW50IC5uYXZiYXJfX2xpbmtzIC5yZXF1ZXN0LWxpbmtzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDFyZW07IH1cbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgICAgICAgICAgICAuaGVhZGVyX193cmFwcGVyIC5zaXRlLWhlYWRlcl9fd3JhcHBlciAuc2l0ZS1oZWFkZXIgLnNpdGUtaGVhZGVyX19jb250ZW50IC5uYXZiYXJfX2xpbmtzIC5yZXF1ZXN0LWxpbmtzIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmhlYWRlcl9fd3JhcHBlciAuc2l0ZS1uYXYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW1lZGl1bS1ncmF5KTsgfVxuXG5mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1tZWRpdW0tZ3JheSk7XG4gIG1hcmdpbi10b3A6IDNyZW07IH1cbiAgZm9vdGVyIC5zaXRlLWZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgZ2FwOiAxcmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogdmFyKC0tcmVzcG9uc2l2ZS1hbGlnbndpZGUtd2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgZm9vdGVyIC5zaXRlLWZvb3RlciB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG4gICAgZm9vdGVyIC5zaXRlLWZvb3RlciBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgICBmb290ZXIgLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudF9fd3JhcHBlciAubmF2LWZvb3Rlcl9fY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgICAgIGdhcDogMS41cmVtO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgZm9vdGVyIC5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnRfX3dyYXBwZXIgLmZvb3Rlci1zb2NpYWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgZ2FwOiAwLjVyZW07IH1cbiAgICAgIGZvb3RlciAuc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50X193cmFwcGVyIC5mb290ZXItc29jaWFsIGEge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1mb250YXdlc29tZSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgICAgICAgZm9vdGVyIC5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnRfX3dyYXBwZXIgLmZvb3Rlci1zb2NpYWwgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpOyB9XG4gICAgICAgIGZvb3RlciAuc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50X193cmFwcGVyIC5mb290ZXItc29jaWFsIGEuaWNvbi1mYWNlYm9vazo6YmVmb3JlIHtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBCcmFuZHNcIjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgICAgIGNvbnRlbnQ6IFwi74KaXCI7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAgICAgICBmb290ZXIgLnNpdGUtZm9vdGVyIC5mb290ZXItY29udGVudF9fd3JhcHBlciAuZm9vdGVyLXNvY2lhbCBhLmljb24taW5zdGFncmFtOjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEJyYW5kc1wiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAgICAgY29udGVudDogXCLvha1cIjtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gICAgICAgIGZvb3RlciAuc2l0ZS1mb290ZXIgLmZvb3Rlci1jb250ZW50X193cmFwcGVyIC5mb290ZXItc29jaWFsIGEuaWNvbi10d2l0dGVyOjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEJyYW5kc1wiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAgICAgY29udGVudDogXCLvgplcIjtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gICAgZm9vdGVyIC5zaXRlLWZvb3RlciAuY29weXJpZ2h0IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrLWdyYXkpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5uYXZiYXItdG9nZ2xlciB7XG4gIG9yZGVyOiA0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgei1pbmRleDogOTk5OTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgcGFkZGluZzogMC4zcmVtO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIC5uYXZiYXItdG9nZ2xlcjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTsgfVxuICAubmF2YmFyLXRvZ2dsZXI6OmJlZm9yZSB7XG4gICAgd2lkdGg6IDEuM3JlbTtcbiAgICBoZWlnaHQ6IDEuM3JlbTsgfVxuICAubmF2YmFyLXRvZ2dsZXI6OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICBjb250ZW50OiBcIu+DiVwiO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubmF2YmFyX193cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAubmF2YmFyX193cmFwcGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgLm5hdmJhcl9fd3JhcHBlciAubmF2YmFyX19saW5rcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5uYXZiYXIge1xuICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5uYXZiYXIuZGVza3RvcC1tZW51IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAubmF2YmFyLm1vYmlsZS1tZW51IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAubmF2YmFyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9IH1cbiAgLm5hdmJhciAubmF2YmFyLW5hdiB1bC5uYXZiYXItbWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAubmF2YmFyIC5uYXZiYXItbmF2IHVsLm5hdmJhci1tZW51ID4gbGkgPiAuc3ViLW1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiA5OTk5OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAgICAgLm5hdmJhciAubmF2YmFyLW5hdiB1bC5uYXZiYXItbWVudSA+IGxpID4gLnN1Yi1tZW51IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5uYXZiYXIgLm5hdmJhci1uYXYgdWwubmF2YmFyLW1lbnUgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLm5hdmJhciAubmF2YmFyLW5hdiB1bC5uYXZiYXItbWVudSBsaSBhIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgIC5uYXZiYXIgLm5hdmJhci1uYXYgdWwubmF2YmFyLW1lbnUgbGkgPiAuc3ViLW1lbnUge1xuICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAubmF2YmFyIC5uYXZiYXItbmF2IHVsLm5hdmJhci1tZW51IGxpOmhvdmVyID4gYSwgLm5hdmJhciAubmF2YmFyLW5hdiB1bC5uYXZiYXItbWVudSBsaS5jdXJyZW50LW1lbnUtaXRlbSA+IGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC5uYXZiYXIgLm5hdmJhci1uYXYgdWwubmF2YmFyLW1lbnUgbGkuY3VycmVudF9wYWdlX3BhcmVudCA+IGEsIC5uYXZiYXIgLm5hdmJhci1uYXYgdWwubmF2YmFyLW1lbnUgbGkuY3VycmVudC1tZW51LWFuY2VzdG9yID4gYSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH0gfVxuICAgICAgLm5hdmJhciAubmF2YmFyLW5hdiB1bC5uYXZiYXItbWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyIC5zdWItbWVudSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5uYXZiYXIubW9iaWxlLW1lbnUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA5MCU7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAubmF2YmFyLm1vYmlsZS1tZW51IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAubmF2YmFyLm1vYmlsZS1tZW51IC5uYXZiYXItbmF2IC5uYXZiYXItbmF2X19jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5uYXZiYXIubW9iaWxlLW1lbnUgLm5hdmJhci1uYXYgLm5hdmJhci1uYXZfX2NvbnRlbnQgdWwubmF2YmFyLW1lbnUge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggdmFyKC0tY29sb3ItYmxhY2spIHNvbGlkOyB9XG4gICAgICAubmF2YmFyLm1vYmlsZS1tZW51IC5uYXZiYXItbmF2IC5uYXZiYXItbmF2X19jb250ZW50IHVsLm5hdmJhci1tZW51IGxpID4gYSB7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7IH1cbiAgICAgIC5uYXZiYXIubW9iaWxlLW1lbnUgLm5hdmJhci1uYXYgLm5hdmJhci1uYXZfX2NvbnRlbnQgdWwubmF2YmFyLW1lbnUgbGkgLnN1Yi1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLm5hdmJhci5tb2JpbGUtbWVudSAubmF2YmFyLW5hdiAubmF2YmFyLW5hdl9fY29udGVudCB1bC5uYXZiYXItbWVudSBsaSAuc3ViLW1lbnUgPiBsaSB7XG4gICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAgIC5uYXZiYXIubW9iaWxlLW1lbnUgLm5hdmJhci1uYXYgLm5hdmJhci1uYXZfX2NvbnRlbnQgdWwubmF2YmFyLW1lbnUgbGkgLnN1Yi1tZW51ID4gbGkgPiBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTsgfVxuICAgIC5uYXZiYXIubW9iaWxlLW1lbnUgLm5hdmJhci1uYXYgLm5hdmJhci1uYXZfX2NvbnRlbnQgLnJlcXVlc3QtbGlua3Mge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICBnYXA6IDAuNXJlbTtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgICAubmF2YmFyLm1vYmlsZS1tZW51IC5uYXZiYXItbmF2IC5uYXZiYXItbmF2X19jb250ZW50IC5yZXF1ZXN0LWxpbmtzIGEge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4ubmF2YmFyLmRlc2t0b3AtbWVudSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5uYXZiYXIuZGVza3RvcC1tZW51IC5uYXZiYXItbmF2IHVsLm5hdmJhci1tZW51IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gICAgLm5hdmJhci5kZXNrdG9wLW1lbnUgLm5hdmJhci1uYXYgdWwubmF2YmFyLW1lbnUgPiBsaSA+IC5zdWItbWVudSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7XG4gICAgICB0b3A6IDEwMCU7IH1cbiAgICAgIC5uYXZiYXIuZGVza3RvcC1tZW51IC5uYXZiYXItbmF2IHVsLm5hdmJhci1tZW51ID4gbGkgPiAuc3ViLW1lbnUgPiBsaSA+IGEge1xuICAgICAgICBwYWRkaW5nOiAwLjRyZW0gMXJlbTsgfVxuICAgIC5uYXZiYXIuZGVza3RvcC1tZW51IC5uYXZiYXItbmF2IHVsLm5hdmJhci1tZW51ID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW07IH1cblxuLm5hdi1mb290ZXJfX2NvbnRhaW5lciB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLm5hdi1mb290ZXJfX2NvbnRhaW5lciB1bC5uYXYtZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAubmF2LWZvb3Rlcl9fY29udGFpbmVyIHVsLm5hdi1mb290ZXIgPiBsaSA+IGEge1xuICAgICAgcGFkZGluZzogMC41cmVtOyB9XG4gICAgLm5hdi1mb290ZXJfX2NvbnRhaW5lciB1bC5uYXYtZm9vdGVyIGxpLm1lbnUtaXRlbSA+IC5zdWItbWVudSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgLm5hdi1mb290ZXJfX2NvbnRhaW5lciB1bC5uYXYtZm9vdGVyIGxpLm1lbnUtaXRlbSA+IC5zdWItbWVudSA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAubmF2LWZvb3Rlcl9fY29udGFpbmVyIHVsLm5hdi1mb290ZXIgbGkubWVudS1pdGVtID4gYTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmNvbnRhaW5lci13cmFwcGVyIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfVxuXG4ubmF2aWdhdGlvbi5wYWdpbmF0aW9uIHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfVxuICAubmF2aWdhdGlvbi5wYWdpbmF0aW9uIC5zY3JlZW4tcmVhZGVyLXRleHQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm5hdmlnYXRpb24ucGFnaW5hdGlvbiAubmF2LWxpbmtzIHNwYW4sXG4gIC5uYXZpZ2F0aW9uLnBhZ2luYXRpb24gLm5hdi1saW5rcyBhIHtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWdsb2JhbCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWJ1dHRvbi1pbnB1dCk7XG4gICAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItcHJpbWFyeSkgc29saWQ7XG4gICAgZm9udC1zaXplOiAwLjlyZW07IH1cbiAgICAubmF2aWdhdGlvbi5wYWdpbmF0aW9uIC5uYXYtbGlua3Mgc3Bhbjpob3ZlciwgLm5hdmlnYXRpb24ucGFnaW5hdGlvbiAubmF2LWxpbmtzIHNwYW46Zm9jdXMsIC5uYXZpZ2F0aW9uLnBhZ2luYXRpb24gLm5hdi1saW5rcyBzcGFuOmFjdGl2ZSxcbiAgICAubmF2aWdhdGlvbi5wYWdpbmF0aW9uIC5uYXYtbGlua3MgYTpob3ZlcixcbiAgICAubmF2aWdhdGlvbi5wYWdpbmF0aW9uIC5uYXYtbGlua3MgYTpmb2N1cyxcbiAgICAubmF2aWdhdGlvbi5wYWdpbmF0aW9uIC5uYXYtbGlua3MgYTphY3RpdmUge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLm5hdmlnYXRpb24ucGFnaW5hdGlvbiAubmF2LWxpbmtzIHNwYW5bdHlwZT1cInN1Ym1pdFwiXSxcbiAgICAubmF2aWdhdGlvbi5wYWdpbmF0aW9uIC5uYXYtbGlua3MgYVt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAubmF2aWdhdGlvbi5wYWdpbmF0aW9uIC5uYXYtbGlua3Mgc3BhbjpkaXNhYmxlZCwgLm5hdmlnYXRpb24ucGFnaW5hdGlvbiAubmF2LWxpbmtzIHNwYW46ZGlzYWJsZWRbZGlzYWJsZWRdLFxuICAgIC5uYXZpZ2F0aW9uLnBhZ2luYXRpb24gLm5hdi1saW5rcyBhOmRpc2FibGVkLFxuICAgIC5uYXZpZ2F0aW9uLnBhZ2luYXRpb24gLm5hdi1saW5rcyBhOmRpc2FibGVkW2Rpc2FibGVkXSB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWJ1dHRvbi1pbnB1dCk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG4gICAgLm5hdmlnYXRpb24ucGFnaW5hdGlvbiAubmF2LWxpbmtzIHNwYW46OmFmdGVyLFxuICAgIC5uYXZpZ2F0aW9uLnBhZ2luYXRpb24gLm5hdi1saW5rcyBhOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gIC5uYXZpZ2F0aW9uLnBhZ2luYXRpb24gLm5hdi1saW5rcyBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7IH1cblxuLnNpbmdsZSAucG9zdC10aHVtYm5haWwtaW1nIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBoZWlnaHQ6IDI1dnc7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLWltYWdlLW1pbi1oZWlnaHQpO1xuICBtYXgtaGVpZ2h0OiA2MHJlbTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNpbmdsZS1wb3N0IC5lbnRyeS1jb250ZW50ID4gKiB7XG4gIG1heC13aWR0aDogdmFyKC0tcmVzcG9uc2l2ZS1hbGlnbmRlZmF1bHQtd2lkdGgpOyB9XG5cbi5zaW5nbGUtcG9zdCAuZW50cnkge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG4gIGJvcmRlci1ib3R0b206IDJweCB2YXIoLS1jb2xvci1saWdodC1ncmF5KSBzb2xpZDsgfVxuXG4uZW50cnktbWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogMC42cmVtIDA7XG4gIGJvcmRlci10b3A6IDJweCB2YXIoLS1jb2xvci1saWdodC1ncmF5KSBzb2xpZDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5lbnRyeS1tZXRhIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuICAuZW50cnktbWV0YSBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5lbnRyeS1tZXRhIC5lbnRyeV9fY2F0ZWdvcnktbGlzdCB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLmVudHJ5LW1ldGEgLmVudHJ5X19jYXRlZ29yeS1saXN0IHVsID4gbGkgPiBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuZW50cnktbWV0YSAuZW50cnlfX3RhZy1saXN0IGEge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuICAuZW50cnktbWV0YSAuZW50cnlfX3NoYXJlLWxpbmtzIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5lbnRyeS1tZXRhIC5lbnRyeV9fc2hhcmUtbGlua3MgdWwgbGkge1xuICAgICAgcGFkZGluZzogMCAwLjdyZW07IH1cbiAgICAgIC5lbnRyeS1tZXRhIC5lbnRyeV9fc2hhcmUtbGlua3MgdWwgbGkgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWZvbnRhd2Vzb21lKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgICAgICAuZW50cnktbWV0YSAuZW50cnlfX3NoYXJlLWxpbmtzIHVsIGxpIGEuZmFjZWJvb2s6OmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgQnJhbmRzXCI7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgICAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAgICAgICBjb250ZW50OiBcIu+CmlwiO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgICAgICAgLmVudHJ5LW1ldGEgLmVudHJ5X19zaGFyZS1saW5rcyB1bCBsaSBhLmxpbmtlZGluOjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEJyYW5kc1wiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAgICAgY29udGVudDogXCLvgoxcIjtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gICAgICAgIC5lbnRyeS1tZXRhIC5lbnRyeV9fc2hhcmUtbGlua3MgdWwgbGkgYS50d2l0dGVyOjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEJyYW5kc1wiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAgICAgY29udGVudDogXCLvha1cIjtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5lbnRyeS1tZXRhID4gKiArICoge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKTtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAuZW50cnktbWV0YSA+ICogKyAqIHtcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKTsgfSB9XG5cbi5zaWRlYmFyIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDA7IH1cbiAgLnNpZGViYXIgdWwgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTsgfVxuXG4uc2lkZWJhciAucG9zdC1jYXRlZ29yaWVzID4gbGksXG4uc2lkZWJhciAucHJvZHVjdC1jYXRlZ29yaWVzID4gbGkge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uc2lkZWJhciAucG9zdC1jYXRlZ29yaWVzIGxpLmN1cnJlbnQtY2F0ID4gYSxcbi5zaWRlYmFyIC5wcm9kdWN0LWNhdGVnb3JpZXMgbGkuY3VycmVudC1jYXQgPiBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLnNpZGViYXIgLnBvc3QtY2F0ZWdvcmllcyBsaSA+IC5jaGlsZHJlbixcbi5zaWRlYmFyIC5wcm9kdWN0LWNhdGVnb3JpZXMgbGkgPiAuY2hpbGRyZW4ge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfVxuXG4uc2lkZWJhciAucHJvZHVjdC1jYXRlZ29yaWVzX190b2dnbGVyIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuc2lkZWJhciAucHJvZHVjdC1jYXRlZ29yaWVzX190b2dnbGVyIC50b2dnbGVyX19jYXJldDo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZ2xvYmFsKTtcbiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwi74SHXCI7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5zaWRlYmFyIC5wcm9kdWN0LWNhdGVnb3JpZXNfX3RvZ2dsZXIuY29sbGFwc2VkIC50b2dnbGVyX19jYXJldDo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuXG4uc2lkZWJhciBoMy5jb21wb25lbnQtc3VidGl0bGUsIC5zaWRlYmFyIC5jb21wb25lbnQtc3VidGl0bGUuaDMge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLXBhZ2UtaGVhZGVyKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1wYWdlLWhlYWRlcik7IH1cblxuLnNlYXJjaC1yZXN1bHRzIC5lbnRyeSB7XG4gIGJvcmRlci1ib3R0b206IDFweCB2YXIoLS1jb2xvci1saWdodC1ncmF5KSBzb2xpZDsgfVxuXG4uc2VhcmNoLXRvZ2dsZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBwYWRkaW5nOiAwLjNyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiBub25lOyB9XG4gIC5zZWFyY2gtdG9nZ2xlcjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTsgfVxuICAuc2VhcmNoLXRvZ2dsZXI6OmJlZm9yZSB7XG4gICAgd2lkdGg6IDEuM3JlbTtcbiAgICBoZWlnaHQ6IDEuM3JlbTsgfVxuICAuc2VhcmNoLXRvZ2dsZXI6OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICBjb250ZW50OiBcIu+AglwiO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7IH1cblxuLndjLXNlYXJjaGZvcm0td3JhcHBlciAuc2VhcmNoZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBwYWRkaW5nOiAwOyB9XG4gIC53Yy1zZWFyY2hmb3JtLXdyYXBwZXIgLnNlYXJjaGZvcm0gZm9ybSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAud2Mtc2VhcmNoZm9ybS13cmFwcGVyIC5zZWFyY2hmb3JtIGZvcm0gLnNlYXJjaGZvcm1fX2NvbnRlbnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGJvcmRlcjogMXB4IHZhcigtLWNvbG9yLXNlY29uZGFyeSkgc29saWQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogNTAwcHg7IH1cbiAgICAgIC53Yy1zZWFyY2hmb3JtLXdyYXBwZXIgLnNlYXJjaGZvcm0gZm9ybSAuc2VhcmNoZm9ybV9fY29udGVudCAuc2VhcmNoZm9ybV9fZmllbGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAud2Mtc2VhcmNoZm9ybS13cmFwcGVyIC5zZWFyY2hmb3JtIGZvcm0gLnNlYXJjaGZvcm1fX3N1Ym1pdCB7XG4gICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTsgfVxuICAgICAgLndjLXNlYXJjaGZvcm0td3JhcHBlciAuc2VhcmNoZm9ybSBmb3JtIC5zZWFyY2hmb3JtX19zdWJtaXQ6OmJlZm9yZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgICBjb250ZW50OiBcIu+AglwiO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcmVnZW50LWdyYXkpO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LWluZGVudDogMDsgfVxuXG4uYXJjaGl2ZS5hdXRob3IgLmVudHJ5IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpIHNvbGlkOyB9XG5cbi53b29jb21tZXJjZS1jYXJ0LWZvcm0gLnNob3BfdGFibGUgLmNvdXBvbiAuaW5wdXQtdGV4dCB7XG4gIHdpZHRoOiA4LjMxM3JlbSAhaW1wb3J0YW50OyB9XG5cbi52YXJpYXRpb25zX2Zvcm0gLnZhcmlhdGlvbnMgLnZhbHVlID4gc2VsZWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cblxuLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC5jb2wtMSxcbi53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCAuY29sLTIge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIC5mb3JtLXJvdyxcbi53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93LFxuLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLndvb2NvbW1lcmNlIC5jb2wyLXNldCAuY29sLTEsXG4ud29vY29tbWVyY2UtcGFnZSAuY29sMi1zZXQgLmNvbC0xLFxuLndvb2NvbW1lcmNlIC5jb2wyLXNldCAuY29sLTIsXG4ud29vY29tbWVyY2UtcGFnZSAuY29sMi1zZXQgLmNvbC0yIHtcbiAgbWF4LXdpZHRoOiB1bnNldDtcbiAgcGFkZGluZzogMDsgfVxuXG4ud29vY29tbWVyY2Ugc3Bhbi5vbnNhbGUsXG5zcGFuLm9uc2FsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWRhcmstZ3JheSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xuICBtaW4taGVpZ2h0OiBhdXRvO1xuICBtaW4td2lkdGg6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4ud29vY29tbWVyY2UtbWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tY29sb3Itc3VjY2Vzcyk7IH1cbiAgLndvb2NvbW1lcmNlLW1lc3NhZ2U6OmJlZm9yZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXN1Y2Nlc3MpOyB9XG5cbi53b29jb21tZXJjZS1lcnJvciB7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWNvbG9yLWFsZXJ0KTsgfVxuICAud29vY29tbWVyY2UtZXJyb3I6OmJlZm9yZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWFsZXJ0KTsgfVxuXG4ud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLndwLWJsb2NrIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5ibG9jay13cmFwcGVyIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfVxuXG4uYWxpZ25kZWZhdWx0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogdmFyKC0tcmVzcG9uc2l2ZS1hbGlnbmRlZmF1bHQtd2lkdGgpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5hbGlnbndpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLWFsaWdud2lkZS13aWR0aCk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmFsaWduZnVsbCB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uZW50cnktY29udGVudCA+ICoge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfVxuICAuZW50cnktY29udGVudCA+ICoge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogdmFyKC0tcmVzcG9uc2l2ZS1hbGlnbndpZGUtd2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuZW50cnktY29udGVudCA+ICouYWxpZ25mdWxsIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLndwLWJsb2NrLWJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLWFsaWdud2lkZS13aWR0aCk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLndwLWJsb2NrLWJ1dHRvbnMgPiAud3AtYmxvY2stYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7IH1cblxuLndwLWJsb2NrLXF1b3RlLmlzLXN0eWxlLWxhcmdlLCAud3AtYmxvY2stcXVvdGUuaXMtbGFyZ2Uge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgLnNsaWNrLXRyYWNrIC5zbGljay1zbGlkZSB7XG4gICAgaGVpZ2h0OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgICAuc2xpY2stdHJhY2sgLnNsaWNrLXNsaWRlID4gZGl2IHtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuXG4uc2xpY2stZG90cyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAwLjkzNzVyZW07IH1cbiAgLnNsaWNrLWRvdHMgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW1lZGl1bS1ncmF5KTtcbiAgICAgIG1hcmdpbjogMC4zMTI1cmVtO1xuICAgICAgd2lkdGg6IDAuNXJlbTtcbiAgICAgIGhlaWdodDogMC41cmVtO1xuICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTsgfVxuICAgIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24sIC5zbGljay1kb3RzIGxpOmhvdmVyIGJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cblxuLnNsaWNrLWFycm93IHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gIHotaW5kZXg6IDEwOyB9XG4gIC5zbGljay1hcnJvdy5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAtMS41NjI1cmVtOyB9XG4gICAgLnNsaWNrLWFycm93LnNsaWNrLXByZXY6OmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICBjb250ZW50OiBcIu+Bk1wiO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IC0xLjU2MjVyZW07IH1cbiAgICAuc2xpY2stYXJyb3cuc2xpY2stbmV4dDo6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAgIGNvbnRlbnQ6IFwi74GUXCI7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbi5jb21tZW50cy1hcmVhIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfVxuICAuY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXBseS10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC40cmVtOyB9XG4gIC5jb21tZW50cy1hcmVhIC5jb21tZW50LWZvcm0tY29tbWVudCA+IGxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuY29tbWVudHMtYXJlYSAuY29tbWVudC1mb3JtLWNvbW1lbnQgI2NvbW1lbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNDByZW07IH1cblxuLmNvbnRlbnQtYXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IHZhcigtLXJlc3BvbnNpdmUtYWxpZ253aWRlLXdpZHRoKTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc2VhcmNoLWZpZWxkLXRvcC1tYXJnaW4pOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29udGVudC1hcmVhX19zaWRlYmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9IH1cblxuLmNvbnRlbnQtYXJlYV9fc2lkZWJhciA+IC5lbnRyeS1jb250ZW50IHtcbiAgbWluLWhlaWdodDogNzB2aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuY29udGVudC1hcmVhX19zaWRlYmFyID4gLmVudHJ5LWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc2VhcmNoLWZpZWxkLWhlaWdodCk7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKHZhcigtLWNvbnRhaW5lci13LXNpZGViYXIpIC0gdmFyKC0tc3BhY2luZy1ob3Jpem9udGFsLWdsb2JhbCkpOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jb250ZW50LWFyZWFfX3NpZGViYXIgPiAuc2lkZWJhciB7XG4gICAgZmxleC1iYXNpczogY2FsYyh2YXIoLS1jb250YWluZXItc2lkZWJhcikgLSB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKSk7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbnRlbnQtYXJlYV9fc2lkZWJhciA+ICoge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctaG9yaXpvbnRhbC1nbG9iYWwpOyB9XG4gICAgLmNvbnRlbnQtYXJlYV9fc2lkZWJhciA+ICo6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5jb250ZW50LWFyZWFfX3NpZGViYXIgPiAqOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4ubG9naW4td3JhcHBlciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtZ2FwOiAycmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5sb2dpbi13cmFwcGVyIHtcbiAgICAgIGdyaWQtZ2FwOiA0cmVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG5cbi53b29jb21tZXJjZSAuYmF0Y2gtcHJvZHVjdHNfX3dyYXBwZXIgLmJhdGNoLXByb2R1Y3RzX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTsgfVxuXG4ud29vY29tbWVyY2UgLmJhdGNoLXByb2R1Y3RzX193cmFwcGVyIHRhYmxlLmJhdGNoLXByb2R1Y3RzIHRoZWFkIHRyLnByb2R1Y3QtYmF0Y2hfX2xhYmVscyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gIGNvbG9yOiB3aGl0ZTsgfVxuXG4ud29vY29tbWVyY2UgLmJhdGNoLXByb2R1Y3RzX193cmFwcGVyIHRhYmxlLmJhdGNoLXByb2R1Y3RzIHRyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7IH1cbiAgLndvb2NvbW1lcmNlIC5iYXRjaC1wcm9kdWN0c19fd3JhcHBlciB0YWJsZS5iYXRjaC1wcm9kdWN0cyB0ciB0ZCB7XG4gICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgYm9yZGVyOiAycHggd2hpdGUgc29saWQ7XG4gICAgbWluLXdpZHRoOiAxMDBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLndvb2NvbW1lcmNlIC5iYXRjaC1wcm9kdWN0c19fd3JhcHBlciB0YWJsZS5iYXRjaC1wcm9kdWN0cyB0ciB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtOyB9IH1cbiAgICAud29vY29tbWVyY2UgLmJhdGNoLXByb2R1Y3RzX193cmFwcGVyIHRhYmxlLmJhdGNoLXByb2R1Y3RzIHRyIHRkLnByb2R1Y3QtYWRkX3RvX2NhcnQge1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLndvb2NvbW1lcmNlIC5iYXRjaC1wcm9kdWN0c19fd3JhcHBlciB0YWJsZS5iYXRjaC1wcm9kdWN0cyB0ciB0ZC5wcm9kdWN0LWFkZF90b19jYXJ0IGZvcm0uY2FydCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgZ2FwOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLndvb2NvbW1lcmNlIC5iYXRjaC1wcm9kdWN0c19fd3JhcHBlciB0YWJsZS5iYXRjaC1wcm9kdWN0cyB0ciB0ZC5wcm9kdWN0LWFkZF90b19jYXJ0IGZvcm0uY2FydDo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgLndvb2NvbW1lcmNlIC5iYXRjaC1wcm9kdWN0c19fd3JhcHBlciB0YWJsZS5iYXRjaC1wcm9kdWN0cyB0ciB0ZC5wcm9kdWN0LWFkZF90b19jYXJ0IGZvcm0uY2FydCAucHJpY2Uge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgLndvb2NvbW1lcmNlIC5iYXRjaC1wcm9kdWN0c19fd3JhcHBlciB0YWJsZS5iYXRjaC1wcm9kdWN0cyB0ciB0ZC5wcm9kdWN0LWFkZF90b19jYXJ0IGZvcm0uY2FydCAuc2luZ2xlX2FkZF90b19jYXJ0X2J1dHRvbiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuLmFwcHJvdmFsLWZvcm1fX3dyYXBwZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDJyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmFwcHJvdmFsLWZvcm1fX3dyYXBwZXIge1xuICAgICAgZ2FwOiA0cmVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzZnIgMmZyOyB9IH1cbiAgLmFwcHJvdmFsLWZvcm1fX3dyYXBwZXIgLmlucHV0LWZpZWxkX19yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAuYXBwcm92YWwtZm9ybV9fd3JhcHBlciAuYXBwcm92YWwtZm9ybV9fdXNlci1pbmZvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5hcHByb3ZhbC1mb3JtX193cmFwcGVyIC5hcHByb3ZhbC1mb3JtX191c2VyLWluZm8gLmlucHV0LWZpZWxkX19yb3cge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgICAgIC5hcHByb3ZhbC1mb3JtX193cmFwcGVyIC5hcHByb3ZhbC1mb3JtX191c2VyLWluZm8gLmlucHV0LWZpZWxkX19yb3cgbGFiZWwge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgICAgLmFwcHJvdmFsLWZvcm1fX3dyYXBwZXIgLmFwcHJvdmFsLWZvcm1fX3VzZXItaW5mbyAuaW5wdXQtZmllbGRfX3JvdyBpbnB1dCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uYmxvY2stdGV4dGJsb2NrIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYmxvY2stdGV4dGJsb2NrIC50ZXh0YmxvY2std3JhcHBlci5uYXJyb3dfX3RleHRibG9jayB7XG4gICAgICB3aWR0aDogODUlO1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuYmxvY2stdGV4dGJsb2NrIC50ZXh0YmxvY2std3JhcHBlci5uYXJyb3dfX3RleHRibG9jayB7XG4gICAgICB3aWR0aDogNzAlOyB9IH1cblxuLmJsb2NrLXRleHRibG9ja19hbmRfaW1hZ2Uge1xuICBtYXgtd2lkdGg6IDI1MDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuYmxvY2stdGV4dGJsb2NrX2FuZF9pbWFnZSArIC5ibG9jay10ZXh0YmxvY2tfYW5kX2ltYWdlIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKSAqICgtMSkpOyB9XG4gIC5ibG9jay10ZXh0YmxvY2tfYW5kX2ltYWdlIC50ZXh0YmxvY2tfYW5kX2ltYWdlX193cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBncmlkOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAuYmxvY2stdGV4dGJsb2NrX2FuZF9pbWFnZSAudGV4dGJsb2NrX2FuZF9pbWFnZV9fd3JhcHBlciB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgIC5ibG9jay10ZXh0YmxvY2tfYW5kX2ltYWdlIC50ZXh0YmxvY2tfYW5kX2ltYWdlX193cmFwcGVyIC50ZXh0YmxvY2tfYW5kX2ltYWdlX19jb2x1bW4gLmNvbHVtbl9fY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IHZhcigtLXJlc3BvbnNpdmUtYWxpZ253aWRlLXdpZHRoKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAuYmxvY2stdGV4dGJsb2NrX2FuZF9pbWFnZSAudGV4dGJsb2NrX2FuZF9pbWFnZV9fd3JhcHBlciAudGV4dGJsb2NrX2FuZF9pbWFnZV9fY29sdW1uIC5jb2x1bW5fX2NvbnRlbnQge1xuICAgICAgICAgIG1heC13aWR0aDogY2FsYyh2YXIoLS1yZXNwb25zaXZlLWFsaWdud2lkZS13aWR0aCkgLyAyKTsgfSB9XG4gICAgLmJsb2NrLXRleHRibG9ja19hbmRfaW1hZ2UgLnRleHRibG9ja19hbmRfaW1hZ2VfX3dyYXBwZXIgLnRleHRibG9ja19hbmRfaW1hZ2VfX2ltYWdlIHtcbiAgICAgIC0taW1hZ2UtaGVpZ2h0OiAxNXJlbTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogdmFyKC0taW1hZ2UtaGVpZ2h0KTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLmJsb2NrLXRleHRibG9ja19hbmRfaW1hZ2UgLnRleHRibG9ja19hbmRfaW1hZ2VfX3dyYXBwZXIgLnRleHRibG9ja19hbmRfaW1hZ2VfX2ltYWdlIHtcbiAgICAgICAgICAtLWltYWdlLWhlaWdodDogMjByZW07IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAuYmxvY2stdGV4dGJsb2NrX2FuZF9pbWFnZSAudGV4dGJsb2NrX2FuZF9pbWFnZV9fd3JhcHBlciAudGV4dGJsb2NrX2FuZF9pbWFnZV9faW1hZ2Uge1xuICAgICAgICAgIC0taW1hZ2UtaGVpZ2h0OiAyNXJlbTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAuYmxvY2stdGV4dGJsb2NrX2FuZF9pbWFnZSAudGV4dGJsb2NrX2FuZF9pbWFnZV9fd3JhcHBlci5ub3JtYWwgLmNvbHVtbl9fY29udGVudCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfSB9XG4gICAgLmJsb2NrLXRleHRibG9ja19hbmRfaW1hZ2UgLnRleHRibG9ja19hbmRfaW1hZ2VfX3dyYXBwZXIucmV2ZXJzZSB7XG4gICAgICBkaXJlY3Rpb246IHJ0bDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC5ibG9jay10ZXh0YmxvY2tfYW5kX2ltYWdlIC50ZXh0YmxvY2tfYW5kX2ltYWdlX193cmFwcGVyLnJldmVyc2UgLmNvbHVtbl9fY29udGVudCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTsgfSB9XG5cbi5ibG9jay1sYXJnZV9pbWFnZSwgLnNpbmdsZSAucG9zdC10aHVtYm5haWwtaW1nIHtcbiAgbWF4LXdpZHRoOiAxNTYuMjVyZW07XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5ibG9jay1sYXJnZV9pbWFnZSAubGFyZ2VfaW1hZ2VfX3dyYXBwZXIsIC5zaW5nbGUgLnBvc3QtdGh1bWJuYWlsLWltZyAubGFyZ2VfaW1hZ2VfX3dyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5ibG9jay1sYXJnZV9pbWFnZSAubGFyZ2VfaW1hZ2VfX3dyYXBwZXIgLmxhcmdlX2ltYWdlX19iZywgLnNpbmdsZSAucG9zdC10aHVtYm5haWwtaW1nIC5sYXJnZV9pbWFnZV9fd3JhcHBlciAubGFyZ2VfaW1hZ2VfX2JnIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMjV2dztcbiAgICAgIG1pbi1oZWlnaHQ6IDE4Ljc1cmVtO1xuICAgICAgbWF4LWhlaWdodDogNDMuNzVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgLmJsb2NrLWxhcmdlX2ltYWdlIC5sYXJnZV9pbWFnZV9fd3JhcHBlciAubGFyZ2VfaW1hZ2VfX2JnIC5jb2x1bW5fX2NvbnRlbnQsIC5zaW5nbGUgLnBvc3QtdGh1bWJuYWlsLWltZyAubGFyZ2VfaW1hZ2VfX3dyYXBwZXIgLmxhcmdlX2ltYWdlX19iZyAuY29sdW1uX19jb250ZW50IHtcbiAgICAgICAgei1pbmRleDogOTk5OTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC5ibG9jay1sYXJnZV9pbWFnZSAubGFyZ2VfaW1hZ2VfX3dyYXBwZXIgLmxhcmdlX2ltYWdlX19iZyAuY29sdW1uX19jb250ZW50IC5ibG9jay10aXRsZSwgLnNpbmdsZSAucG9zdC10aHVtYm5haWwtaW1nIC5sYXJnZV9pbWFnZV9fd3JhcHBlciAubGFyZ2VfaW1hZ2VfX2JnIC5jb2x1bW5fX2NvbnRlbnQgLmJsb2NrLXRpdGxlIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG5cbi5ibG9jay1oZXJvX3NsaWRlciAuaGVyby1zbGlkZXJfX3dyYXBwZXIgLmhlcm8tc2xpZGVyX19zbGlkZSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgaGVpZ2h0OiA0MHZ3O1xuICBtaW4taGVpZ2h0OiAzMnJlbTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTsgfVxuICAuYmxvY2staGVyb19zbGlkZXIgLmhlcm8tc2xpZGVyX193cmFwcGVyIC5oZXJvLXNsaWRlcl9fc2xpZGUgLmhlcm8tc2xpZGVyX19zbGlkZV9fY29udGVudCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7IH1cbiAgICAuYmxvY2staGVyb19zbGlkZXIgLmhlcm8tc2xpZGVyX193cmFwcGVyIC5oZXJvLXNsaWRlcl9fc2xpZGUgLmhlcm8tc2xpZGVyX19zbGlkZV9fY29udGVudCAuYmxvY2stdGl0bGUge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTsgfVxuXG4uYmxvY2staGVyb19zbGlkZXIgLmhlcm8tc2xpZGVyX193cmFwcGVyIC5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5ibG9jay1tYXAgLmFjZi1tYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzNy41cmVtOyB9XG4gIC5ibG9jay1tYXAgLmFjZi1tYXAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuXG4uYmxvY2stbWFwIC5tYXAge1xuICBoZWlnaHQ6IDI1cmVtO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuYmxvY2stbWFwIC5tYXAge1xuICAgICAgaGVpZ2h0OiAzNy41cmVtOyB9IH1cblxuLmJsb2NrLWNvbnRhY3RzIC5jb250YWN0cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7IH1cbiAgLmJsb2NrLWNvbnRhY3RzIC5jb250YWN0cyAuY29udGFjdHNfX3dyYXBwZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgLmJsb2NrLWNvbnRhY3RzIC5jb250YWN0cyAuY29udGFjdHNfX3dyYXBwZXIge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cbiAgLmJsb2NrLWNvbnRhY3RzIC5jb250YWN0cyAuY29udGFjdF9fd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5ibG9jay1jb250YWN0cyAuY29udGFjdHMgLmNvbnRhY3RfX3dyYXBwZXIgLmNvbnRhY3QtaW1hZ2Uge1xuICAgICAgbWluLXdpZHRoOiAxMi41cmVtO1xuICAgICAgbWluLWhlaWdodDogMTIuNXJlbTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAgICAgLmJsb2NrLWNvbnRhY3RzIC5jb250YWN0cyAuY29udGFjdF9fd3JhcHBlciAuY29udGFjdC1pbWFnZSB7XG4gICAgICAgICAgbWluLXdpZHRoOiAxMHJlbTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxMHJlbTsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgICAgLmJsb2NrLWNvbnRhY3RzIC5jb250YWN0cyAuY29udGFjdF9fd3JhcHBlciAuY29udGFjdC1pbWFnZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLmJsb2NrLWNvbnRhY3RzIC5jb250YWN0cyAuY29udGFjdF9fd3JhcHBlciAuY29udGFjdC1pbmZvIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMC45Mzc1cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuYmxvY2stY29udGFjdHMgLmNvbnRhY3RzIC5jb250YWN0X193cmFwcGVyIC5jb250YWN0LWluZm8ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIC5ibG9jay1jb250YWN0cyAuY29udGFjdHMgLmNvbnRhY3RfX3dyYXBwZXIgLmNvbnRhY3QtaW5mbyBoMywgLmJsb2NrLWNvbnRhY3RzIC5jb250YWN0cyAuY29udGFjdF9fd3JhcHBlciAuY29udGFjdC1pbmZvIC5oMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7IH1cbiAgICAgIC5ibG9jay1jb250YWN0cyAuY29udGFjdHMgLmNvbnRhY3RfX3dyYXBwZXIgLmNvbnRhY3QtaW5mbyAuaDUge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTsgfVxuICAgICAgLmJsb2NrLWNvbnRhY3RzIC5jb250YWN0cyAuY29udGFjdF9fd3JhcHBlciAuY29udGFjdC1pbmZvIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLmJsb2NrLWNvbnRhY3RfaW5mbyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7IH1cbiAgLmJsb2NrLWNvbnRhY3RfaW5mbyAuY29sdW1uX19jb250ZW50IHAge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAuYmxvY2stY29udGFjdF9pbmZvIC5jb2x1bW5fX2NvbnRlbnQgcCA+IGEge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAuYmxvY2stY29udGFjdF9pbmZvIC5jb2x1bW5fX2NvbnRlbnQgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xODc1cmVtOyB9IH1cblxuLmJsb2NrLWFjY29yZGlvbiB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7IH1cbiAgLmJsb2NrLWFjY29yZGlvbiAuYWNjb3JkaW9uX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwLjkzNzVyZW07IH1cblxuLmJsb2NrLXRhYnMge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpOyB9XG4gIC5ibG9jay10YWJzIC50YWJfX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IDAuOTM3NXJlbTsgfVxuXG4ud2MtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMge1xuICBtYXJnaW46IDA7IH1cbiAgLndjLWJsb2NrLWdyaWQgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3JkZXI6IDAuMDYyNXJlbSB2YXIoLS1jb2xvci1saWdodC1ncmF5KSBzb2xpZDtcbiAgICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgLndjLWJsb2NrLWdyaWQgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0ID4gKiB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC53Yy1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1hZGQtdG8tY2FydCB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAud2MtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtYWRkLXRvLWNhcnQgPiBhLFxuICAgICAgLndjLWJsb2NrLWdyaWQgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWFkZC10by1jYXJ0ID4gYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuLndwLWJsb2NrLWNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpO1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC53cC1ibG9jay1jb2x1bW46bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKTsgfVxuICAud3AtYmxvY2stY29sdW1uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy1ob3Jpem9udGFsLWdsb2JhbCk7IH1cbiAgLndwLWJsb2NrLWNvbHVtbjpub3QoOm9ubHktY2hpbGQpIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTsgfVxuICAud3AtYmxvY2stY29sdW1ucyB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMm4gLSAxKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAud3AtYmxvY2stY29sdW1uOm5vdCg6b25seS1jaGlsZCkge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gdmFyKC0tc3BhY2luZy1ob3Jpem9udGFsLWdsb2JhbCkpICFpbXBvcnRhbnQ7XG4gICAgZmxleC1ncm93OiAwOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC53cC1ibG9jay1jb2x1bW4ge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7IH0gfVxuXG4ud3AtYmxvY2stZ3JvdXAuaGFzLWJhY2tncm91bmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsLWxnKSAwOyB9XG5cbi53cC1ibG9jay1ncm91cCAud3AtYmxvY2stZ3JvdXBfX2lubmVyLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IHZhcigtLXJlc3BvbnNpdmUtYWxpZ253aWRlLXdpZHRoKTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuIiwiOnJvb3Qge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9I3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC8vIFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQ6ICN7JGdyYWRpZW50fTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuXG4vLyBSb290XG4vL1xuLy8gQWJpbGl0eSB0byB0aGUgdmFsdWUgb2YgdGhlIHJvb3QgZm9udCBzaXplcywgYWZmZWN0aW5nIHRoZSB2YWx1ZSBvZiBgcmVtYC5cbi8vIG51bGwgYnkgZGVmYXVsdCwgdGh1cyBub3RoaW5nIGlzIGdlbmVyYXRlZC5cblxuOnJvb3Qge1xuICBmb250LXNpemU6ICRmb250LXNpemUtcm9vdDtcblxuICBAaWYgJGVuYWJsZS1zbW9vdGgtc2Nyb2xsIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbi8vIDQuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246ICRib2R5LXRleHQtYWxpZ247XG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gM1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNFxufVxuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBSZXNldCBGaXJlZm94J3MgZ3JheSBjb2xvclxuLy8gMi4gU2V0IGNvcnJlY3QgaGVpZ2h0IGFuZCBwcmV2ZW50IHRoZSBgc2l6ZWAgYXR0cmlidXRlIHRvIG1ha2UgdGhlIGBocmAgbG9vayBsaWtlIGFuIGlucHV0IGZpZWxkXG5cbmhyIHtcbiAgbWFyZ2luOiAkaHItbWFyZ2luLXkgMDtcbiAgY29sb3I6ICRoci1jb2xvcjsgLy8gMVxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlcjogMDtcbiAgb3BhY2l0eTogJGhyLW9wYWNpdHk7XG59XG5cbmhyOm5vdChbc2l6ZV0pIHtcbiAgaGVpZ2h0OiAkaHItaGVpZ2h0OyAvLyAyXG59XG5cblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIDEuIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vLyAgICBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gICAgbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuXG4laGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7IC8vIDFcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtc3R5bGU6ICRoZWFkaW5ncy1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xufVxuXG5oMSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTtcbn1cblxuaDIge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG59XG5cbmgzIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemUpO1xufVxuXG5oNCB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbn1cblxuaDUge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG59XG5cbmg2IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNi1mb250LXNpemUpO1xufVxuXG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLWJzLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1icy1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA0XG59XG5cblxuLy8gQWRkcmVzc1xuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vLyBMaXN0c1xuXG5vbCxcbnVsIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuLy8gMS4gVW5kbyBicm93c2VyIGRlZmF1bHRcblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIDFcbn1cblxuXG4vLyBCbG9ja3F1b3RlXG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIFN0cm9uZ1xuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyO1xufVxuXG5cbi8vIFNtYWxsXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gTWFya1xuXG5tYXJrIHtcbiAgcGFkZGluZzogJG1hcmstcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1hcmstYmc7XG59XG5cblxuLy8gU3ViIGFuZCBTdXBcbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHN1Yi1zdXAtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gICYsXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIENvZGVcblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWNvZGU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gIGRpcmVjdGlvbjogbHRyICN7XCIvKiBydGw6aWdub3JlICovXCJ9O1xuICB1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGU7XG59XG5cbi8vIDEuIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuLy8gMi4gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbi8vIDMuIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAxcmVtOyAvLyAyXG4gIG92ZXJmbG93OiBhdXRvOyAvLyAzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIEltYWdlcyBhbmQgY29udGVudFxuXG5pbWcsXG5zdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcblxudGFibGUge1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cbnRoZWFkLFxudGJvZHksXG50Zm9vdCxcbnRyLFxudGQsXG50aCB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xufVxuXG5cbi8vIEZvcm1zXG4vL1xuLy8gMS4gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcblxuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBFeHBsaWNpdGx5IHJlbW92ZSBmb2N1cyBvdXRsaW5lIGluIENocm9taXVtIHdoZW4gaXQgc2hvdWxkbid0IGJlXG4vLyB2aXNpYmxlIChlLmcuIGFzIHJlc3VsdCBvZiBtb3VzZSBjbGljayBvciB0b3VjaCB0YXApLiBJdCBhbHJlYWR5XG4vLyBzaG91bGQgYmUgZG9pbmcgdGhpcyBhdXRvbWF0aWNhbGx5LCBidXQgc2VlbXMgdG8gY3VycmVudGx5IGJlXG4vLyBjb25mdXNlZCBhbmQgYXBwbGllcyBpdHMgdmVyeSB2aXNpYmxlIHR3by10b25lIG91dGxpbmUgYW55d2F5LlxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuXG4gIC8vIFVuZG8gdGhlIG9wYWNpdHkgY2hhbmdlIGZyb20gQ2hyb21lXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gUmVtb3ZlIHRoZSBkcm9wZG93biBhcnJvdyBpbiBDaHJvbWUgZnJvbSBpbnB1dHMgYnVpbHQgd2l0aCBkYXRhbGlzdHMuXG4vLyBTZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzU0OTk3MTE4XG5cbltsaXN0XTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMy4gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG5cbiAgQGlmICRlbmFibGUtYnV0dG9uLXBvaW50ZXJzIHtcbiAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLy8gMS4gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7IC8vIDFcbn1cblxuLy8gMS4gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbi8vICAgIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuLy8gICAgU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbi8vICAgIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbi8vIDIuIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG4gIG1hcmdpbjogMDsgLy8gMlxuICBib3JkZXI6IDA7IC8vIDJcbn1cblxuLy8gMS4gQnkgdXNpbmcgYGZsb2F0OiBsZWZ0YCwgdGhlIGxlZ2VuZCB3aWxsIGJlaGF2ZSBsaWtlIGEgYmxvY2sgZWxlbWVudC5cbi8vICAgIFRoaXMgd2F5IHRoZSBib3JkZXIgb2YgYSBmaWVsZHNldCB3cmFwcyBhcm91bmQgdGhlIGxlZ2VuZCBpZiBwcmVzZW50LlxuLy8gMi4gRml4IHdyYXBwaW5nIGJ1Zy5cbi8vICAgIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5NzEyXG5cbmxlZ2VuZCB7XG4gIGZsb2F0OiBsZWZ0OyAvLyAxXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGVnZW5kLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVnZW5kLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVnZW5kLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuICArICoge1xuICAgIGNsZWFyOiBsZWZ0OyAvLyAyXG4gIH1cbn1cblxuLy8gRml4IGhlaWdodCBvZiBpbnB1dHMgd2l0aCBhIHR5cGUgb2YgZGF0ZXRpbWUtbG9jYWwsIGRhdGUsIG1vbnRoLCB3ZWVrLCBvciB0aW1lXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODg0MlxuXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1maWVsZHMtd3JhcHBlcixcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taW51dGUsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbW9udGgtZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkIHtcbiAgcGFkZGluZzogMDtcbn1cblxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbi8vIDIuIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbi8vICAgIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuLy8gICAgYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuLy8gICAgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMVxuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMlxufVxuXG4vLyAxLiBBIGZldyBpbnB1dCB0eXBlcyBzaG91bGQgc3RheSBMVFJcbi8vIFNlZSBodHRwczovL3J0bHN0eWxpbmcuY29tL3Bvc3RzL3J0bC1zdHlsaW5nI2Zvcm0taW5wdXRzXG4vLyAyLiBSVEwgb25seSBvdXRwdXRcbi8vIFNlZSBodHRwczovL3J0bGNzcy5jb20vbGVhcm4vdXNhZ2UtZ3VpZGUvY29udHJvbC1kaXJlY3RpdmVzLyNyYXdcblxuLyogcnRsOnJhdzpcblt0eXBlPVwidGVsXCJdLFxuW3R5cGU9XCJ1cmxcIl0sXG5bdHlwZT1cImVtYWlsXCJdLFxuW3R5cGU9XCJudW1iZXJcIl0ge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbiovXG5cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBSZW1vdmUgcGFkZGluZyBhcm91bmQgY29sb3IgcGlja2VycyBpbiB3ZWJraXQgYnJvd3NlcnNcblxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuXG4vLyBJbmhlcml0IGZvbnQgZmFtaWx5IGFuZCBsaW5lIGhlaWdodCBmb3IgZmlsZSBpbnB1dCBidXR0b25zXG5cbjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBmb250OiBpbmhlcml0O1xufVxuXG4vLyAxLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YFxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDFcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy8gUmVtb3ZlIGJvcmRlciBmcm9tIGlmcmFtZVxuXG5pZnJhbWUge1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFN1bW1hcnlcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gMVxuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLy8gUHJvZ3Jlc3Ncbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuXG4vLyBIaWRkZW4gYXR0cmlidXRlXG4vL1xuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZS5cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3ItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxuJGdyYXlzOiAoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3JzLW1hcFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLXZhcmlhYmxlc1xuJGJsdWU6ICAgICMwZDZlZmQgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNkNjMzODQgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzE5ODc1NCAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMwZGNhZjAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3JzLW1hcFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvcnMtbWFwXG4kdGhlbWUtY29sb3JzOiAoXG4gIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmtcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1tYXBcblxuLy8gVGhlIGNvbnRyYXN0IHJhdGlvIHRvIHJlYWNoIGFnYWluc3Qgd2hpdGUsIHRvIGRldGVybWluZSBpZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJsaWdodFwiIHRvIFwiZGFya1wiLiBBY2NlcHRhYmxlIHZhbHVlcyBmb3IgV0NBRyAyLjAgYXJlIDMsIDQuNSBhbmQgNy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRzIwLyN2aXN1YWwtYXVkaW8tY29udHJhc3QtY29udHJhc3RcbiRtaW4tY29udHJhc3QtcmF0aW86ICAgNC41ICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJGNvbG9yLWNvbnRyYXN0LWRhcms6ICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRibHVlLTEwMDogdGludC1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcbiRibHVlLTIwMDogdGludC1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTMwMDogdGludC1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTQwMDogdGludC1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTUwMDogJGJsdWUgIWRlZmF1bHQ7XG4kYmx1ZS02MDA6IHNoYWRlLWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNzAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTgwMDogc2hhZGUtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS05MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuXG4kaW5kaWdvLTEwMDogdGludC1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuJGluZGlnby0yMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMzAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTQwMDogdGludC1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby01MDA6ICRpbmRpZ28gIWRlZmF1bHQ7XG4kaW5kaWdvLTYwMDogc2hhZGUtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNzAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby04MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTkwMDogc2hhZGUtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcblxuJHB1cnBsZS0xMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMjAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTMwMDogdGludC1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS00MDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNTAwOiAkcHVycGxlICFkZWZhdWx0O1xuJHB1cnBsZS02MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTcwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtODAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS05MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRwaW5rLTEwMDogdGludC1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcbiRwaW5rLTIwMDogdGludC1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTMwMDogdGludC1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTQwMDogdGludC1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTUwMDogJHBpbmsgIWRlZmF1bHQ7XG4kcGluay02MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNzAwOiBzaGFkZS1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTgwMDogc2hhZGUtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay05MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuXG4kcmVkLTEwMDogdGludC1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuJHJlZC0yMDA6IHRpbnQtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtMzAwOiB0aW50LWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTQwMDogdGludC1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC01MDA6ICRyZWQgIWRlZmF1bHQ7XG4kcmVkLTYwMDogc2hhZGUtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNzAwOiBzaGFkZS1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC04MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTkwMDogc2hhZGUtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcblxuJG9yYW5nZS0xMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMjAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTMwMDogdGludC1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS00MDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNTAwOiAkb3JhbmdlICFkZWZhdWx0O1xuJG9yYW5nZS02MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTcwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtODAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS05MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG5cbiR5ZWxsb3ctMTAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTIwMDogdGludC1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy0zMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNDAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTUwMDogJHllbGxvdyAhZGVmYXVsdDtcbiR5ZWxsb3ctNjAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy03MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTgwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctOTAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuXG4kZ3JlZW4tMTAwOiB0aW50LWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcbiRncmVlbi0yMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTMwMDogdGludC1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNDAwOiB0aW50LWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi01MDA6ICRncmVlbiAhZGVmYXVsdDtcbiRncmVlbi02MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi03MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi04MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi05MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcblxuJHRlYWwtMTAwOiB0aW50LWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuJHRlYWwtMjAwOiB0aW50LWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtMzAwOiB0aW50LWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtNDAwOiB0aW50LWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNTAwOiAkdGVhbCAhZGVmYXVsdDtcbiR0ZWFsLTYwMDogc2hhZGUtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC03MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtODAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTkwMDogc2hhZGUtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG5cbiRjeWFuLTEwMDogdGludC1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcbiRjeWFuLTIwMDogdGludC1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTMwMDogdGludC1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTQwMDogdGludC1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTUwMDogJGN5YW4gIWRlZmF1bHQ7XG4kY3lhbi02MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNzAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTgwMDogc2hhZGUtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi05MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVkdWNlZC1tb3Rpb246ICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNtb290aC1zY3JvbGw6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtYnV0dG9uLXBvaW50ZXJzOiAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJmczogICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtbmVnYXRpdmUtbWFyZ2luczogICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllczogIHRydWUgIWRlZmF1bHQ7XG5cbi8vIFByZWZpeCBmb3IgOnJvb3QgQ1NTIHZhcmlhYmxlc1xuXG4kdmFyaWFibGUtcHJlZml4OiAgICAgICAgICAgICBicy0gIWRlZmF1bHQ7XG5cbi8vIEdyYWRpZW50XG4vL1xuLy8gVGhlIGdyYWRpZW50IHdoaWNoIGlzIGFkZGVkIHRvIGNvbXBvbmVudHMgaWYgYCRlbmFibGUtZ3JhZGllbnRzYCBpcyBgdHJ1ZWBcbi8vIFRoaXMgZ3JhZGllbnQgaXMgYWxzbyBhZGRlZCB0byBlbGVtZW50cyB3aXRoIGAuYmctZ3JhZGllbnRgXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdmFyaWFibGUtZ3JhZGllbnRcbiRncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgkd2hpdGUsIC4xNSksIHJnYmEoJHdoaXRlLCAwKSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZhcmlhYmxlLWdyYWRpZW50XG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6IChcbiAgMDogMCxcbiAgMTogJHNwYWNlciAvIDQsXG4gIDI6ICRzcGFjZXIgLyAyLFxuICAzOiAkc3BhY2VyLFxuICA0OiAkc3BhY2VyICogMS41LFxuICA1OiAkc3BhY2VyICogMyxcbikgIWRlZmF1bHQ7XG5cbiRuZWdhdGl2ZS1zcGFjZXJzOiBpZigkZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnMsIG5lZ2F0aXZpZnktbWFwKCRzcGFjZXJzKSwgbnVsbCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwYWNlci12YXJpYWJsZXMtbWFwc1xuXG4vLyBQb3NpdGlvblxuLy9cbi8vIERlZmluZSB0aGUgZWRnZSBwb3NpdGlvbmluZyBhbmNob3JzIG9mIHRoZSBwb3NpdGlvbiB1dGlsaXRpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3NpdGlvbi1tYXBcbiRwb3NpdGlvbi12YWx1ZXM6IChcbiAgMDogMCxcbiAgNTA6IDUwJSxcbiAgMTAwOiAxMDAlXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3NpdGlvbi1tYXBcblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS10ZXh0LWFsaWduOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4kbGluay1zaGFkZS1wZXJjZW50YWdlOiAgICAgICAgICAgICAgICAgICAyMCUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBzaGlmdC1jb2xvcigkbGluay1jb2xvciwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnQ6ICAgICAgICAgICBhZnRlciAhZGVmYXVsdDtcbiRzdHJldGNoZWQtbGluay16LWluZGV4OiAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyaWQtYnJlYWtwb2ludHNcbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4LFxuICB4eGw6IDE0MDBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JpZC1icmVha3BvaW50c1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbnRhaW5lci1tYXgtd2lkdGhzXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweCxcbiAgeHhsOiAxMzIwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbnRhaW5lci1tYXgtd2lkdGhzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuJGd1dHRlcnM6ICRzcGFjZXJzICFkZWZhdWx0O1xuXG4vLyBDb250YWluZXIgcGFkZGluZ1xuXG4kY29udGFpbmVyLXBhZGRpbmcteDogJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMiAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXZhcmlhYmxlc1xuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aHM6IChcbiAgMTogMXB4LFxuICAyOiAycHgsXG4gIDM6IDNweCxcbiAgNDogNHB4LFxuICA1OiA1cHhcbikgIWRlZmF1bHQ7XG5cbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1waWxsOiAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJveC1zaGFkb3ctdmFyaWFibGVzXG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWluc2V0OiAgICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJveC1zaGFkb3ctdmFyaWFibGVzXG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtdmFyaWFibGVzXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC12YXJpYWJsZXNcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtdHJhbnNpdGlvblxuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtdHJhbnNpdGlvblxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbi8vIHNjc3MtZG9jcy1zdGFydCBhc3BlY3QtcmF0aW9zXG4kYXNwZWN0LXJhdGlvczogKFxuICBcIjF4MVwiOiAxMDAlLFxuICBcIjR4M1wiOiBjYWxjKDMgLyA0ICogMTAwJSksXG4gIFwiMTZ4OVwiOiBjYWxjKDkgLyAxNiAqIDEwMCUpLFxuICBcIjIxeDlcIjogY2FsYyg5IC8gMjEgKiAxMDAlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYXNwZWN0LXJhdGlvc1xuLy8gc3R5bGVsaW50LWVuYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC12YXJpYWJsZXNcbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Zm9udC1zYW5zLXNlcmlmKSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1jb2RlOiAgICAgICAgICAgIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LW1vbm9zcGFjZSkgIWRlZmF1bHQ7XG5cbi8vICRmb250LXNpemUtcm9vdCBlZmZlY3RzIHRoZSB2YWx1ZSBvZiBgcmVtYCwgd2hpY2ggaXMgdXNlZCBmb3IgYXMgd2VsbCBmb250IHNpemVzLCBwYWRkaW5ncyBhbmQgbWFyZ2luc1xuLy8gJGZvbnQtc2l6ZS1iYXNlIGVmZmVjdHMgdGhlIGZvbnQgc2l6ZSBvZiB0aGUgYm9keSB0ZXh0XG4kZm9udC1zaXplLXJvb3Q6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDIgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtc2l6ZXNcbiRmb250LXNpemVzOiAoXG4gIDE6ICRoMS1mb250LXNpemUsXG4gIDI6ICRoMi1mb250LXNpemUsXG4gIDM6ICRoMy1mb250LXNpemUsXG4gIDQ6ICRoNC1mb250LXNpemUsXG4gIDU6ICRoNS1mb250LXNpemUsXG4gIDY6ICRoNi1mb250LXNpemVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtc2l6ZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGhlYWRpbmdzLXZhcmlhYmxlc1xuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtc3R5bGU6ICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGhlYWRpbmdzLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZGlzcGxheS1oZWFkaW5nc1xuJGRpc3BsYXktZm9udC1zaXplczogKFxuICAxOiA1cmVtLFxuICAyOiA0LjVyZW0sXG4gIDM6IDRyZW0sXG4gIDQ6IDMuNXJlbSxcbiAgNTogM3JlbSxcbiAgNjogMi41cmVtXG4pICFkZWZhdWx0O1xuXG4kZGlzcGxheS1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZGlzcGxheS1oZWFkaW5nc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdHlwZS12YXJpYWJsZXNcbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIC44NzVlbSAhZGVmYXVsdDtcblxuJHN1Yi1zdXAtZm9udC1zaXplOiAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGluaXRpYWxpc20tZm9udC1zaXplOiAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb290ZXItY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGhyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaHItb3BhY2l0eTogICAgICAgICAgICAgICAgICAuMjUgIWRlZmF1bHQ7XG5cbiRsZWdlbmQtbWFyZ2luLWJvdHRvbTogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGxlZ2VuZC1mb250LXNpemU6ICAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGxlZ2VuZC1mb250LXdlaWdodDogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdHlwZS12YXJpYWJsZXNcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYWJsZXNcbiR0YWJsZS1jZWxsLXBhZGRpbmcteTogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy14OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXktc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXgtc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jZWxsLXZlcnRpY2FsLWFsaWduOiAgIHRvcCAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtY29sb3I6ICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yOiAgICAgLjA1ICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmc6ICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmctZmFjdG9yOiAgICAgIC4xICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnLWZhY3RvcjogICAgICAgLjA3NSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtaG92ZXItYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci1mYWN0b3I6ICAgICAgICAgLjEgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiBjdXJyZW50Q29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctc2NhbGU6ICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWxvb3BcbiR0YWJsZS12YXJpYW50czogKFxuICBcInByaW1hcnlcIjogICAgc2hpZnQtY29sb3IoJHByaW1hcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic2Vjb25kYXJ5XCI6ICBzaGlmdC1jb2xvcigkc2Vjb25kYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInN1Y2Nlc3NcIjogICAgc2hpZnQtY29sb3IoJHN1Y2Nlc3MsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiaW5mb1wiOiAgICAgICBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJ3YXJuaW5nXCI6ICAgIHNoaWZ0LWNvbG9yKCR3YXJuaW5nLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImRhbmdlclwiOiAgICAgc2hpZnQtY29sb3IoJGRhbmdlciwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtbG9vcFxuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYmx1cjogICAgICAgICAgMCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogICAgMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYWJsZXNcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1jb2xvcjogICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudDogICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudDogICAgMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50OiAgICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50OiAgMjUlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAgIDEwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEZvcm1zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXRleHQtdmFyaWFibGVzXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tbGFiZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA1MCUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgLyAyKSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1pbnB1dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tY2hlY2stdmFyaWFibGVzXG4kZm9ybS1jaGVjay1pbnB1dC13aWR0aDogICAgICAgICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1taW4taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ6ICAgICAgICAgICAgICAgICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI6ICAgICAgICAgIGJyaWdodG5lc3MoOTAlKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGwzIDNsNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMicgZmlsbD0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBoOCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC41ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtZGlzYWJsZWQtb3BhY2l0eTogICAgICAgICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1idG4tY2hlY2stZGlzYWJsZWQtb3BhY2l0eTogICAgJGJ0bi1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLWVuZDogICAgMXJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1jaGVjay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tc3dpdGNoLXZhcmlhYmxlc1xuJGZvcm0tc3dpdGNoLWNvbG9yOiAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjI1KSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAyZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1iZy1pbWFnZTogICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1czogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXRyYW5zaXRpb246ICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yOiAgICAgICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2U6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtZm9jdXMtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZTogICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjogcmlnaHQgY2VudGVyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBpbnB1dC1ncm91cC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tc2VsZWN0LXZhcmlhYmxlc1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgICAgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgZm9yIGJhY2tncm91bmQtaW1hZ2VcbiRmb3JtLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uOiAgICAgICAgICAgcmlnaHQgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgICAxNnB4IDEycHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2Jz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMiA1bDYgNiA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctZW5kOiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMi41ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgIGNlbnRlciByaWdodCAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRmb3JtLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcblxuJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIEVkZ2VcbiRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA3MCUpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb246ICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tcmFuZ2UtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZpbGUtdmFyaWFibGVzXG4kZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnOiAgICAgICBzaGFkZS1jb2xvcigkZm9ybS1maWxlLWJ1dHRvbi1iZywgNSUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZpbGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuJGZvcm0tZmxvYXRpbmctaGVpZ2h0OiAgICAgICAgICAgIGFkZCgzLjVyZW0sICRpbnB1dC1oZWlnaHQtYm9yZGVyKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDogICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy15OiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ6ICAgMS42MjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI6ICAgLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHk6ICAgICAuNjUgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm06ICAgc2NhbGUoLjg1KSB0cmFuc2xhdGVZKC0uNXJlbSkgdHJhbnNsYXRlWCguMTVyZW0pICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmVlZGJhY2stdmFyaWFibGVzXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc3R5bGU6ICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zdHlsZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgICRzdWNjZXNzICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgJGRhbmdlciAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmVlZGJhY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKFxuICBcInZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICksXG4gIFwiaW52YWxpZFwiOiAoXG4gICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcbiAgKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB6aW5kZXgtc3RhY2tcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhczogICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDgwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtc3RhY2tcblxuXG4vLyBOYXZzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdmFyaWFibGVzXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC1zaXplOiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWxpbmstdHJhbnNpdGlvbjogICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdi12YXJpYWJsZXNcblxuXG4vLyBOYXZiYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci12YXJpYWJsZXNcbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgLyAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1tYXJnaW4tZW5kOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDogICAgICAgICRidG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbjogICAgICAgICBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci10aGVtZS12YXJpYWJsZXNcbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNTUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjU1KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItdGhlbWUtdmFyaWFibGVzXG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tdmFyaWFibGVzXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgc3VidHJhY3QoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMsICRkcm9wZG93bi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIHNoYWRlLWNvbG9yKCRncmF5LTkwMCwgMTAlKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAkc3BhY2VyIC8gNCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZzogICAgICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG4kZHJvcGRvd24tZGFyay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1iZzogICAgICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3I6ICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZzogICAgICAgICAgJGRyb3Bkb3duLWRpdmlkZXItYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3gtc2hhZG93OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1jb2xvcjogICAgICAgICAgJGRyb3Bkb3duLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnOiAgICAgICByZ2JhKCR3aGl0ZSwgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yOiAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWJnOiAgICAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcjogICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcblxuXG4vLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydDogICAgICAgICAgIC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi12YXJpYWJsZXNcblxuXG4vLyBDYXJkc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZC12YXJpYWJsZXNcbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtdGl0bGUtc3BhY2VyLXk6ICAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgLyAyICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXggIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJkLXZhcmlhYmxlc1xuXG4vLyBBY2NvcmRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFjY29yZGlvbi12YXJpYWJsZXNcbiRhY2NvcmRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgIHN1YnRyYWN0KCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cywgJGFjY29yZGlvbi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteDogICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGFjY29yZGlvbi1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWJnOiAgICAgICAgICAgICAgICAgICAgICRhY2NvcmRpb24tYmcgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24sIGJvcmRlci1yYWRpdXMgLjE1cyBlYXNlICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgOTAlKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHNoYWRlLWNvbG9yKCRwcmltYXJ5LCAxMCUpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGFjY29yZGlvbi1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtOiAgICAgICAgICAgICAgICByb3RhdGUoLTE4MGRlZykgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWljb246ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWNvbG9yfSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb246ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yfSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBhY2NvcmRpb24tdmFyaWFibGVzXG5cbi8vIFRvb2x0aXBzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLXZhcmlhYmxlc1xuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICRzcGFjZXIgLyA0ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtdmFyaWFibGVzXG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICBudWxsICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtZmVlZGJhY2stdmFyaWFibGVzXG5cblxuLy8gUG9wb3ZlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvcG92ZXItdmFyaWFibGVzXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgc3VidHJhY3QoJHBvcG92ZXItYm9yZGVyLXJhZGl1cywgJHBvcG92ZXItYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBzaGFkZS1jb2xvcigkcG9wb3Zlci1iZywgNiUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItdmFyaWFibGVzXG5cblxuLy8gVG9hc3RzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC12YXJpYWJsZXNcbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xuJHRvYXN0LXNwYWNpbmc6ICAgICAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC12YXJpYWJsZXNcblxuXG4vLyBCYWRnZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJhZGdlLXZhcmlhYmxlc1xuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4zNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjY1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYmFkZ2UtdmFyaWFibGVzXG5cblxuLy8gTW9kYWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC12YXJpYWJsZXNcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAkYm94LXNoYWRvdy1zbSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLXZhcmlhYmxlc1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtdmFyaWFibGVzXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRhbGVydC1iZy1zY2FsZTogICAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItc2NhbGU6ICAgICAgICAgICAgLTcwJSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1zY2FsZTogICAgICAgICAgICAgNDAlICFkZWZhdWx0O1xuJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjogICAkYWxlcnQtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gM3ggY292ZXJzIHdpZHRoIG9mIHggcGx1cyBkZWZhdWx0IHBhZGRpbmcgb24gZWl0aGVyIHNpZGVcbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtdmFyaWFibGVzXG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtdmFyaWFibGVzXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLXZhcmlhYmxlc1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtdmFyaWFibGVzXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tYmctc2NhbGU6ICAgICAgICAgIC04MCUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLWNvbG9yLXNjYWxlOiAgICAgICA0MCUgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRodW1ibmFpbC12YXJpYWJsZXNcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgJGJveC1zaGFkb3ctc20gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRodW1ibmFpbC12YXJpYWJsZXNcblxuXG4vLyBGaWd1cmVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmaWd1cmUtdmFyaWFibGVzXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmaWd1cmUtdmFyaWFibGVzXG5cblxuLy8gQnJlYWRjcnVtYnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJyZWFkY3J1bWItdmFyaWFibGVzXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkOiAgICAgICAgJGJyZWFkY3J1bWItZGl2aWRlciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItdmFyaWFibGVzXG5cbi8vIENhcm91c2VsXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJvdXNlbC12YXJpYWJsZXNcbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLW9wYWNpdHk6ICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtb3BhY2l0eTogIDEgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXNwYWNlcjogICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMnJlbSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfSc+PHBhdGggZD0nTTExLjM1NCAxLjY0NmEuNS41IDAgMCAxIDAgLjcwOEw1LjcwNyA4bDUuNjQ3IDUuNjQ2YS41LjUgMCAwIDEtLjcwOC43MDhsLTYtNmEuNS41IDAgMCAxIDAtLjcwOGw2LTZhLjUuNSAwIDAgMSAuNzA4IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfSc+PHBhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cbiRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc6ICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yOiAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjogIGludmVydCgxKSBncmF5c2NhbGUoMTAwKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2Fyb3VzZWwtdmFyaWFibGVzXG5cblxuLy8gU3Bpbm5lcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItdmFyaWFibGVzXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItdmVydGljYWwtYWxpZ246ICAtLjEyNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgICAuMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogLjc1cyAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci12YXJpYWJsZXNcblxuXG4vLyBDbG9zZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2xvc2UtdmFyaWFibGVzXG4kYnRuLWNsb3NlLXdpZHRoOiAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtaGVpZ2h0OiAgICAgICAgICAgJGJ0bi1jbG9zZS13aWR0aCAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy14OiAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXBhZGRpbmcteTogICAgICAgICRidG4tY2xvc2UtcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1jb2xvcjogICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWJnOiAgICAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRidG4tY2xvc2UtY29sb3J9Jz48cGF0aCBkPSdNLjI5My4yOTNhMSAxIDAgMDExLjQxNCAwTDggNi41ODYgMTQuMjkzLjI5M2ExIDEgMCAxMTEuNDE0IDEuNDE0TDkuNDE0IDhsNi4yOTMgNi4yOTNhMSAxIDAgMDEtMS40MTQgMS40MTRMOCA5LjQxNGwtNi4yOTMgNi4yOTNhMSAxIDAgMDEtMS40MTQtMS40MTRMNi41ODYgOCAuMjkzIDEuNzA3YTEgMSAwIDAxMC0xLjQxNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tY2xvc2Utb3BhY2l0eTogICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICAgIC43NSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogICAgMSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogLjI1ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS13aGl0ZS1maWx0ZXI6ICAgICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCUpIGJyaWdodG5lc3MoMjAwJSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNsb3NlLXZhcmlhYmxlc1xuXG5cbi8vIE9mZmNhbnZhc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuJG9mZmNhbnZhcy1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXBhZGRpbmcteDogICAgICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtaG9yaXpvbnRhbC13aWR0aDogICAgICAgIDQwMHB4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHQ6ICAgICAgICAgMzB2aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgIC4zcyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICRtb2RhbC10aXRsZS1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmctY29sb3I6ICAgICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJnICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1jb2xvcjogICAgICAgICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtY29sb3IgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBvZmZjYW52YXMtdmFyaWFibGVzXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG5cbi8vIFNDU1MgUkZTIG1peGluXG4vL1xuLy8gQXV0b21hdGVkIHJlc3BvbnNpdmUgdmFsdWVzIGZvciBmb250IHNpemVzLCBwYWRkaW5ncywgbWFyZ2lucyBhbmQgbXVjaCBtb3JlXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvYmxvYi9tYXN0ZXIvTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogJHJmcy1iYXNlLXZhbHVlIC8gKCRyZnMtYmFzZS12YWx1ZSAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHJlbSB7XG4gICRyZnMtYmFzZS12YWx1ZTogJHJmcy1iYXNlLXZhbHVlIC8gKCRyZnMtYmFzZS12YWx1ZSAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcHgge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSByZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIENhbGN1bGF0ZSB0aGUgbWVkaWEgcXVlcnkgdmFsdWVcbiRyZnMtbXEtdmFsdWU6IGlmKCRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4LCAjeyRyZnMtYnJlYWtwb2ludH1weCwgI3skcmZzLWJyZWFrcG9pbnQgLyAkcmZzLXJlbS12YWx1ZX0jeyRyZnMtYnJlYWtwb2ludC11bml0fSk7XG4kcmZzLW1xLXByb3BlcnR5LXdpZHRoOiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtd2lkdGgsIG1pbi13aWR0aCk7XG4kcmZzLW1xLXByb3BlcnR5LWhlaWdodDogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgbWF4LWhlaWdodCwgbWluLWhlaWdodCk7XG5cbi8vIEludGVybmFsIG1peGluIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIG1lZGlhIHF1ZXJ5IG5lZWRzIHRvIGJlIHVzZWRcbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSB7XG4gICAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pLCAoI3skcmZzLW1xLXByb3BlcnR5LWhlaWdodH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSkgYW5kICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBkaXNhYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLXJ1bGUge1xuICBAaWYgJHJmcy1jbGFzcyA9PSBkaXNhYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LCB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIHByb3BlcnR5XG4gICAgJixcbiAgICAuZGlzYWJsZS1yZnMgJixcbiAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcmZzLWNsYXNzID09IGVuYWJsZSBhbmQgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgLmVuYWJsZS1yZnMgJixcbiAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZW5hYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5LXJ1bGUge1xuXG4gIEBpZiAkcmZzLWNsYXNzID09IGVuYWJsZSB7XG4gICAgQGlmICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSB7XG4gICAgICAuZW5hYmxlLXJmcyAmLFxuICAgICAgJi5lbmFibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHJmcy1jbGFzcyA9PSBkaXNhYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICAgJi5kaXNhYmxlLXJmcyB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSBmb3JtYXR0ZWQgbm9uLXJlc3BvbnNpdmUgdmFsdWVcbkBmdW5jdGlvbiByZnMtdmFsdWUoJHZhbHVlcykge1xuICAvLyBDb252ZXJ0IHRvIGxpc3RcbiAgJHZhbHVlczogaWYodHlwZS1vZigkdmFsdWVzKSAhPSBsaXN0LCAoJHZhbHVlcywpLCAkdmFsdWVzKTtcblxuICAkdmFsOiAnJztcblxuICAvLyBMb29wIG92ZXIgZWFjaCB2YWx1ZSBhbmQgY2FsY3VsYXRlIHZhbHVlXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgJHZhbHVlID09IDAge1xuICAgICAgJHZhbDogJHZhbCArICcgMCc7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArICcgJyArIGlmKCRyZnMtdW5pdCA9PSByZW0sICN7JHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAkcmZzLXJlbS12YWx1ZSl9cmVtLCAkdmFsdWUpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHVuaXQgPT0gcmVtIHtcbiAgICAgICAgLy8gQ29udmVydCB0byBweCBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArICcgJyArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3skdmFsdWUgLyAoJHZhbHVlICogMCArIDEpICogJHJmcy1yZW0tdmFsdWV9cHgsICR2YWx1ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6ICcnO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgJyAwJztcbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgJHZhbHVlO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSB7XG4gICAgICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJHZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbiAgICAgICAgJHZhbHVlOiAkdmFsdWUgLyAoJHZhbHVlICogMCArIGlmKCR1bml0ID09IHB4LCAxLCAxIC8gJHJmcy1yZW0tdmFsdWUpKTtcblxuICAgICAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIHZhbHVlIGlzIGdyZWF0ZXIgdGhhbiB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICBAaWYgYWJzKCR2YWx1ZSkgPD0gJHJmcy1iYXNlLXZhbHVlIG9yIG5vdCAkZW5hYmxlLXJmcyB7XG4gICAgICAgICAgJHZhbDogJHZhbCArICcgJyArICBpZigkcmZzLXVuaXQgPT0gcmVtLCAjeyR2YWx1ZSAvICRyZnMtcmVtLXZhbHVlfXJlbSwgI3skdmFsdWV9cHgpO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtbWluOiAkcmZzLWJhc2UtdmFsdWUgKyAoYWJzKCR2YWx1ZSkgLSAkcmZzLWJhc2UtdmFsdWUpIC8gJHJmcy1mYWN0b3I7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3skdmFsdWUtbWluIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyR2YWx1ZS1taW59cHgpO1xuXG4gICAgICAgICAgLy8gVXNlIG5lZ2F0aXZlIHZhbHVlIGlmIG5lZWRlZFxuICAgICAgICAgICRtaW4td2lkdGg6IGlmKCR2YWx1ZSA8IDAsIC0kbWluLXdpZHRoLCAkbWluLXdpZHRoKTtcblxuICAgICAgICAgIC8vIFVzZSBgdm1pbmAgaWYgdHdvLWRpbWVuc2lvbmFsIGlzIGVuYWJsZWRcbiAgICAgICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICAgICAkdmFyaWFibGUtd2lkdGg6ICN7JHZhbHVlLWRpZmYgKiAxMDAgLyAkcmZzLWJyZWFrcG9pbnR9I3skdmFyaWFibGUtdW5pdH07XG5cbiAgICAgICAgICAvLyBSZXR1cm4gdGhlIGNhbGN1bGF0ZWQgdmFsdWVcbiAgICAgICAgICAkdmFsOiAkdmFsICsgJyBjYWxjKCcgKyAkbWluLXdpZHRoICsgaWYoJHZhbHVlIDwgMCwgJyAtICcsICcgKyAnKSArICR2YXJpYWJsZS13aWR0aCArICcpJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gUkZTIG1peGluXG5AbWl4aW4gcmZzKCR2YWx1ZXMsICRwcm9wZXJ0eTogZm9udC1zaXplKSB7XG4gIEBpZiAkdmFsdWVzICE9IG51bGwge1xuICAgICR2YWw6IHJmcy12YWx1ZSgkdmFsdWVzKTtcbiAgICAkZmx1aWRWYWw6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKTtcblxuICAgIC8vIERvIG5vdCBwcmludCB0aGUgbWVkaWEgcXVlcnkgaWYgcmVzcG9uc2l2ZSAmIG5vbi1yZXNwb25zaXZlIHZhbHVlcyBhcmUgdGhlIHNhbWVcbiAgICBAaWYgJHZhbCA9PSAkZmx1aWRWYWwge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICR2YWwsICRmbHVpZFZhbCk7XG5cbiAgICAgICAgLy8gSW5jbHVkZSBzYWZhcmkgaWZyYW1lIHJlc2l6ZSBmaXggaWYgbmVlZGVkXG4gICAgICAgIG1pbi13aWR0aDogaWYoJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4LCAoMCAqIDF2dyksIG51bGwpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5LXJ1bGUge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICRmbHVpZFZhbCwgJHZhbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFNob3J0aGFuZCBoZWxwZXIgbWl4aW5zXG5AbWl4aW4gZm9udC1zaXplKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlKTtcbn1cblxuQG1peGluIHBhZGRpbmcoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmcpO1xufVxuXG5AbWl4aW4gcGFkZGluZy10b3AoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctdG9wKTtcbn1cblxuQG1peGluIHBhZGRpbmctcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctcmlnaHQpO1xufVxuXG5AbWl4aW4gcGFkZGluZy1ib3R0b20oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctYm90dG9tKTtcbn1cblxuQG1peGluIHBhZGRpbmctbGVmdCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1sZWZ0KTtcbn1cblxuQG1peGluIG1hcmdpbigkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luKTtcbn1cblxuQG1peGluIG1hcmdpbi10b3AoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi10b3ApO1xufVxuXG5AbWl4aW4gbWFyZ2luLXJpZ2h0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tcmlnaHQpO1xufVxuXG5AbWl4aW4gbWFyZ2luLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLWJvdHRvbSk7XG59XG5cbkBtaXhpbiBtYXJnaW4tbGVmdCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLWxlZnQpO1xufVxuIiwiLy8gQm9vdHN0cmFwIGZ1bmN0aW9uc1xuLy9cbi8vIFV0aWxpdHkgbWl4aW5zIGFuZCBmdW5jdGlvbnMgZm9yIGV2YWx1YXRpbmcgc291cmNlIGNvZGUgYWNyb3NzIG91ciB2YXJpYWJsZXMsIG1hcHMsIGFuZCBtaXhpbnMuXG5cbi8vIEFzY2VuZGluZ1xuLy8gVXNlZCB0byBldmFsdWF0ZSBTYXNzIG1hcHMgbGlrZSBvdXIgZ3JpZCBicmVha3BvaW50cy5cbkBtaXhpbiBfYXNzZXJ0LWFzY2VuZGluZygkbWFwLCAkbWFwLW5hbWUpIHtcbiAgJHByZXYta2V5OiBudWxsO1xuICAkcHJldi1udW06IG51bGw7XG4gIEBlYWNoICRrZXksICRudW0gaW4gJG1hcCB7XG4gICAgQGlmICRwcmV2LW51bSA9PSBudWxsIG9yIHVuaXQoJG51bSkgPT0gXCIlXCIgb3IgdW5pdCgkcHJldi1udW0pID09IFwiJVwiIHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9IEBlbHNlIGlmIG5vdCBjb21wYXJhYmxlKCRwcmV2LW51bSwgJG51bSkge1xuICAgICAgQHdhcm4gXCJQb3RlbnRpYWxseSBpbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aG9zZSB1bml0IG1ha2VzIGl0IGluY29tcGFyYWJsZSB0byAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9IEBlbHNlIGlmICRwcmV2LW51bSA+PSAkbnVtIHtcbiAgICAgIEB3YXJuIFwiSW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hpY2ggaXNuJ3QgZ3JlYXRlciB0aGFuICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH1cbiAgICAkcHJldi1rZXk6ICRrZXk7XG4gICAgJHByZXYtbnVtOiAkbnVtO1xuICB9XG59XG5cbi8vIFN0YXJ0cyBhdCB6ZXJvXG4vLyBVc2VkIHRvIGVuc3VyZSB0aGUgbWluLXdpZHRoIG9mIHRoZSBsb3dlc3QgYnJlYWtwb2ludCBzdGFydHMgYXQgMC5cbkBtaXhpbiBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRtYXAsICRtYXAtbmFtZTogXCIkZ3JpZC1icmVha3BvaW50c1wiKSB7XG4gIEBpZiBsZW5ndGgoJG1hcCkgPiAwIHtcbiAgICAkdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAgICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICAgIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgICBAd2FybiBcIkZpcnN0IGJyZWFrcG9pbnQgaW4gI3skbWFwLW5hbWV9IG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gICAgfVxuICB9XG59XG5cbi8vIEludGVybmFsIEJvb3RzdHJhcCBmdW5jdGlvbiB0byB0dXJuIG1hcHMgaW50byBpdHMgbmVnYXRpdmUgdmFyaWFudC5cbi8vIEl0IHByZWZpeGVzIHRoZSBrZXlzIHdpdGggYG5gIGFuZCBtYWtlcyB0aGUgdmFsdWUgbmVnYXRpdmUuXG5AZnVuY3Rpb24gbmVnYXRpdmlmeS1tYXAoJG1hcCkge1xuICAkcmVzdWx0OiAoKTtcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgIEBpZiAka2V5ICE9IDAge1xuICAgICAgJHJlc3VsdDogbWFwLW1lcmdlKCRyZXN1bHQsIChcIm5cIiArICRrZXk6ICgtJHZhbHVlKSkpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIEdldCBtdWx0aXBsZSBrZXlzIGZyb20gYSBzYXNzIG1hcFxuQGZ1bmN0aW9uIG1hcC1nZXQtbXVsdGlwbGUoJG1hcCwgJHZhbHVlcykge1xuICAkcmVzdWx0OiAoKTtcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgIEBpZiAoaW5kZXgoJHZhbHVlcywgJGtleSkgIT0gbnVsbCkge1xuICAgICAgJHJlc3VsdDogbWFwLW1lcmdlKCRyZXN1bHQsICgka2V5OiAkdmFsdWUpKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXG4vLyBVc2VkIG9uIG91ciBTVkcgaWNvbiBiYWNrZ3JvdW5kcyBmb3IgY3VzdG9tIGZvcm1zLlxuLy9cbi8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbi8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gU2VlIGh0dHBzOi8vY29kZXBlbi5pby9rZXZpbndlYmVyL3Blbi9kWFdvUndcbi8vXG4vLyBSZXF1aXJlcyB0aGUgdXNlIG9mIHF1b3RlcyBhcm91bmQgZGF0YSBVUklzLlxuXG5AZnVuY3Rpb24gZXNjYXBlLXN2Zygkc3RyaW5nKSB7XG4gIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJkYXRhOmltYWdlL3N2Zyt4bWxcIikge1xuICAgIEBlYWNoICRjaGFyLCAkZW5jb2RlZCBpbiAkZXNjYXBlZC1jaGFyYWN0ZXJzIHtcbiAgICAgIC8vIERvIG5vdCBlc2NhcGUgdGhlIHVybCBicmFja2V0c1xuICAgICAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcInVybChcIikgPT0gMSB7XG4gICAgICAgICRzdHJpbmc6IHVybChcIiN7c3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsIDYsIC0zKSwgJGNoYXIsICRlbmNvZGVkKX1cIik7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHN0cmluZzogc3RyLXJlcGxhY2UoJHN0cmluZywgJGNoYXIsICRlbmNvZGVkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIENvbG9yIGNvbnRyYXN0XG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzAxNjhcblxuLy8gQSBsaXN0IG9mIHByZS1jYWxjdWxhdGVkIG51bWJlcnMgb2YgcG93KCgkdmFsdWUgLyAyNTUgKyAuMDU1KSAvIDEuMDU1LCAyLjQpLiAoZnJvbSAwIHRvIDI1NSlcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1wYXR0ZXJuXG4kX2x1bWluYW5jZS1saXN0OiAuMDAwOCAuMDAxIC4wMDExIC4wMDEzIC4wMDE1IC4wMDE3IC4wMDIgLjAwMjIgLjAwMjUgLjAwMjcgLjAwMyAuMDAzMyAuMDAzNyAuMDA0IC4wMDQ0IC4wMDQ4IC4wMDUyIC4wMDU2IC4wMDYgLjAwNjUgLjAwNyAuMDA3NSAuMDA4IC4wMDg2IC4wMDkxIC4wMDk3IC4wMTAzIC4wMTEgLjAxMTYgLjAxMjMgLjAxMyAuMDEzNyAuMDE0NCAuMDE1MiAuMDE2IC4wMTY4IC4wMTc2IC4wMTg1IC4wMTk0IC4wMjAzIC4wMjEyIC4wMjIyIC4wMjMyIC4wMjQyIC4wMjUyIC4wMjYyIC4wMjczIC4wMjg0IC4wMjk2IC4wMzA3IC4wMzE5IC4wMzMxIC4wMzQzIC4wMzU2IC4wMzY5IC4wMzgyIC4wMzk1IC4wNDA5IC4wNDIzIC4wNDM3IC4wNDUyIC4wNDY3IC4wNDgyIC4wNDk3IC4wNTEzIC4wNTI5IC4wNTQ1IC4wNTYxIC4wNTc4IC4wNTk1IC4wNjEyIC4wNjMgLjA2NDggLjA2NjYgLjA2ODUgLjA3MDQgLjA3MjMgLjA3NDIgLjA3NjIgLjA3ODIgLjA4MDIgLjA4MjMgLjA4NDQgLjA4NjUgLjA4ODcgLjA5MDggLjA5MzEgLjA5NTMgLjA5NzYgLjA5OTkgLjEwMjIgLjEwNDYgLjEwNyAuMTA5NSAuMTExOSAuMTE0NCAuMTE3IC4xMTk1IC4xMjIxIC4xMjQ4IC4xMjc0IC4xMzAxIC4xMzI5IC4xMzU2IC4xMzg0IC4xNDEzIC4xNDQxIC4xNDcgLjE1IC4xNTI5IC4xNTU5IC4xNTkgLjE2MiAuMTY1MSAuMTY4MyAuMTcxNCAuMTc0NiAuMTc3OSAuMTgxMiAuMTg0NSAuMTg3OCAuMTkxMiAuMTk0NiAuMTk4MSAuMjAxNiAuMjA1MSAuMjA4NiAuMjEyMiAuMjE1OSAuMjE5NSAuMjIzMiAuMjI3IC4yMzA3IC4yMzQ2IC4yMzg0IC4yNDIzIC4yNDYyIC4yNTAyIC4yNTQyIC4yNTgyIC4yNjIzIC4yNjY0IC4yNzA1IC4yNzQ3IC4yNzg5IC4yODMxIC4yODc0IC4yOTE4IC4yOTYxIC4zMDA1IC4zMDUgLjMwOTUgLjMxNCAuMzE4NSAuMzIzMSAuMzI3OCAuMzMyNSAuMzM3MiAuMzQxOSAuMzQ2NyAuMzUxNSAuMzU2NCAuMzYxMyAuMzY2MyAuMzcxMiAuMzc2MyAuMzgxMyAuMzg2NCAuMzkxNiAuMzk2OCAuNDAyIC40MDcyIC40MTI1IC40MTc5IC40MjMzIC40Mjg3IC40MzQyIC40Mzk3IC40NDUyIC40NTA4IC40NTY0IC40NjIxIC40Njc4IC40NzM1IC40NzkzIC40ODUxIC40OTEgLjQ5NjkgLjUwMjkgLjUwODkgLjUxNDkgLjUyMSAuNTI3MSAuNTMzMyAuNTM5NSAuNTQ1NyAuNTUyIC41NTgzIC41NjQ3IC41NzExIC41Nzc2IC41ODQxIC41OTA2IC41OTcyIC42MDM4IC42MTA1IC42MTcyIC42MjQgLjYzMDggLjYzNzYgLjY0NDUgLjY1MTQgLjY1ODQgLjY2NTQgLjY3MjQgLjY3OTUgLjY4NjcgLjY5MzkgLjcwMTEgLjcwODQgLjcxNTcgLjcyMzEgLjczMDUgLjczNzkgLjc0NTQgLjc1MjkgLjc2MDUgLjc2ODIgLjc3NTggLjc4MzUgLjc5MTMgLjc5OTEgLjgwNyAuODE0OCAuODIyOCAuODMwOCAuODM4OCAuODQ2OSAuODU1IC44NjMyIC44NzE0IC44Nzk2IC44ODc5IC44OTYzIC45MDQ3IC45MTMxIC45MjE2IC45MzAxIC45Mzg3IC45NDczIC45NTYgLjk2NDcgLjk3MzQgLjk4MjMgLjk5MTEgMTtcblxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAkY29sb3ItY29udHJhc3QtZGFyazogJGNvbG9yLWNvbnRyYXN0LWRhcmssICRjb2xvci1jb250cmFzdC1saWdodDogJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCAkbWluLWNvbnRyYXN0LXJhdGlvOiAkbWluLWNvbnRyYXN0LXJhdGlvKSB7XG4gICRmb3JlZ3JvdW5kczogJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCAkY29sb3ItY29udHJhc3QtZGFyaywgJHdoaXRlLCAkYmxhY2s7XG4gICRtYXgtcmF0aW86IDA7XG4gICRtYXgtcmF0aW8tY29sb3I6IG51bGw7XG5cbiAgQGVhY2ggJGNvbG9yIGluICRmb3JlZ3JvdW5kcyB7XG4gICAgJGNvbnRyYXN0LXJhdGlvOiBjb250cmFzdC1yYXRpbygkYmFja2dyb3VuZCwgJGNvbG9yKTtcbiAgICBAaWYgJGNvbnRyYXN0LXJhdGlvID4gJG1pbi1jb250cmFzdC1yYXRpbyB7XG4gICAgICBAcmV0dXJuICRjb2xvcjtcbiAgICB9IEBlbHNlIGlmICRjb250cmFzdC1yYXRpbyA+ICRtYXgtcmF0aW8ge1xuICAgICAgJG1heC1yYXRpbzogJGNvbnRyYXN0LXJhdGlvO1xuICAgICAgJG1heC1yYXRpby1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIEB3YXJuIFwiRm91bmQgbm8gY29sb3IgbGVhZGluZyB0byAjeyRtaW4tY29udHJhc3QtcmF0aW99OjEgY29udHJhc3QgcmF0aW8gYWdhaW5zdCAjeyRiYWNrZ3JvdW5kfS4uLlwiO1xuXG4gIEByZXR1cm4gJG1heC1yYXRpby1jb2xvcjtcbn1cblxuQGZ1bmN0aW9uIGNvbnRyYXN0LXJhdGlvKCRiYWNrZ3JvdW5kLCAkZm9yZWdyb3VuZDogJGNvbG9yLWNvbnRyYXN0LWxpZ2h0KSB7XG4gICRsMTogbHVtaW5hbmNlKCRiYWNrZ3JvdW5kKTtcbiAgJGwyOiBsdW1pbmFuY2Uob3BhcXVlKCRiYWNrZ3JvdW5kLCAkZm9yZWdyb3VuZCkpO1xuXG4gIEByZXR1cm4gaWYoJGwxID4gJGwyLCAoJGwxICsgLjA1KSAvICgkbDIgKyAuMDUpLCAoJGwyICsgLjA1KSAvICgkbDEgKyAuMDUpKTtcbn1cblxuLy8gUmV0dXJuIFdDQUcyLjAgcmVsYXRpdmUgbHVtaW5hbmNlXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1dBSS9HTC93aWtpL1JlbGF0aXZlX2x1bWluYW5jZVxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAtVEVDSFMvRzE3Lmh0bWwjRzE3LXRlc3RzXG5AZnVuY3Rpb24gbHVtaW5hbmNlKCRjb2xvcikge1xuICAkcmdiOiAoXG4gICAgXCJyXCI6IHJlZCgkY29sb3IpLFxuICAgIFwiZ1wiOiBncmVlbigkY29sb3IpLFxuICAgIFwiYlwiOiBibHVlKCRjb2xvcilcbiAgKTtcblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRyZ2Ige1xuICAgICR2YWx1ZTogaWYoJHZhbHVlIC8gMjU1IDwgLjAzOTI4LCAkdmFsdWUgLyAyNTUgLyAxMi45MiwgbnRoKCRfbHVtaW5hbmNlLWxpc3QsICR2YWx1ZSArIDEpKTtcbiAgICAkcmdiOiBtYXAtbWVyZ2UoJHJnYiwgKCRuYW1lOiAkdmFsdWUpKTtcbiAgfVxuXG4gIEByZXR1cm4gKG1hcC1nZXQoJHJnYiwgXCJyXCIpICogLjIxMjYpICsgKG1hcC1nZXQoJHJnYiwgXCJnXCIpICogLjcxNTIpICsgKG1hcC1nZXQoJHJnYiwgXCJiXCIpICogLjA3MjIpO1xufVxuXG4vLyBSZXR1cm4gb3BhcXVlIGNvbG9yXG4vLyBvcGFxdWUoI2ZmZiwgcmdiYSgwLCAwLCAwLCAuNSkpID0+ICM4MDgwODBcbkBmdW5jdGlvbiBvcGFxdWUoJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kKSB7XG4gIEByZXR1cm4gbWl4KHJnYmEoJGZvcmVncm91bmQsIDEpLCAkYmFja2dyb3VuZCwgb3BhY2l0eSgkZm9yZWdyb3VuZCkgKiAxMDApO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItZnVuY3Rpb25zXG4vLyBUaW50IGEgY29sb3I6IG1peCBhIGNvbG9yIHdpdGggd2hpdGVcbkBmdW5jdGlvbiB0aW50LWNvbG9yKCRjb2xvciwgJHdlaWdodCkge1xuICBAcmV0dXJuIG1peCh3aGl0ZSwgJGNvbG9yLCAkd2VpZ2h0KTtcbn1cblxuLy8gU2hhZGUgYSBjb2xvcjogbWl4IGEgY29sb3Igd2l0aCBibGFja1xuQGZ1bmN0aW9uIHNoYWRlLWNvbG9yKCRjb2xvciwgJHdlaWdodCkge1xuICBAcmV0dXJuIG1peChibGFjaywgJGNvbG9yLCAkd2VpZ2h0KTtcbn1cblxuLy8gU2hhZGUgdGhlIGNvbG9yIGlmIHRoZSB3ZWlnaHQgaXMgcG9zaXRpdmUsIGVsc2UgdGludCBpdFxuQGZ1bmN0aW9uIHNoaWZ0LWNvbG9yKCRjb2xvciwgJHdlaWdodCkge1xuICBAcmV0dXJuIGlmKCR3ZWlnaHQgPiAwLCBzaGFkZS1jb2xvcigkY29sb3IsICR3ZWlnaHQpLCB0aW50LWNvbG9yKCRjb2xvciwgLSR3ZWlnaHQpKTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItZnVuY3Rpb25zXG5cbi8vIFJldHVybiB2YWxpZCBjYWxjXG5AZnVuY3Rpb24gYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgKyAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSAtICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiAtIFwiKSArICR2YWx1ZTIpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLW1peGluc1xuIiwiLy9cbi8vIEhlYWRpbmdzXG4vL1xuLmgxIHtcbiAgQGV4dGVuZCBoMTtcbn1cblxuLmgyIHtcbiAgQGV4dGVuZCBoMjtcbn1cblxuLmgzIHtcbiAgQGV4dGVuZCBoMztcbn1cblxuLmg0IHtcbiAgQGV4dGVuZCBoNDtcbn1cblxuLmg1IHtcbiAgQGV4dGVuZCBoNTtcbn1cblxuLmg2IHtcbiAgQGV4dGVuZCBoNjtcbn1cblxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG5AZWFjaCAkZGlzcGxheSwgJGZvbnQtc2l6ZSBpbiAkZGlzcGxheS1mb250LXNpemVzIHtcbiAgLmRpc3BsYXktI3skZGlzcGxheX0ge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogJGRpc3BsYXktZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xuICB9XG59XG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cbi5zbWFsbCB7XG4gIEBleHRlbmQgc21hbGw7XG59XG5cbi5tYXJrIHtcbiAgQGV4dGVuZCBtYXJrO1xufVxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbml0aWFsaXNtLWZvbnQtc2l6ZSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9udC1zaXplKTtcblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IC0kYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFjY29yZGlvbi1idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXkgJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRhY2NvcmRpb24tYnV0dG9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBSZXNldCBidXR0b24gc3R5bGVcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1idXR0b24tYmc7XG4gIGJvcmRlcjogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRhY2NvcmRpb24tdHJhbnNpdGlvbik7XG5cbiAgJjpub3QoLmNvbGxhcHNlZCkge1xuICAgIGNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKCRhY2NvcmRpb24tYm9yZGVyLXdpZHRoICogLTEpIDAgJGFjY29yZGlvbi1ib3JkZXItY29sb3I7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uKTtcbiAgICAgIHRyYW5zZm9ybTogJGFjY29yZGlvbi1pY29uLXRyYW5zZm9ybTtcbiAgICB9XG4gIH1cblxuICAvLyBBY2NvcmRpb24gaWNvblxuICAmOjphZnRlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6ICRhY2NvcmRpb24taWNvbi13aWR0aDtcbiAgICBoZWlnaHQ6ICRhY2NvcmRpb24taWNvbi13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRhY2NvcmRpb24taWNvbi13aWR0aDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9uKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGJvcmRlci1jb2xvcjogJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4uYWNjb3JkaW9uLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5hY2NvcmRpb24taXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRhY2NvcmRpb24tYmc7XG4gIGJvcmRlcjogJGFjY29yZGlvbi1ib3JkZXItd2lkdGggc29saWQgJGFjY29yZGlvbi1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cblxuICAvLyBPbmx5IHNldCBhIGJvcmRlci1yYWRpdXMgb24gdGhlIGxhc3QgaXRlbSBpZiB0aGUgYWNjb3JkaW9uIGlzIGNvbGxhcHNlZFxuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzKTtcblxuICAgIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgICYuY29sbGFwc2VkIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG59XG5cbi5hY2NvcmRpb24tYm9keSB7XG4gIHBhZGRpbmc6ICRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXkgJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteDtcbn1cblxuXG4vLyBGbHVzaCBhY2NvcmRpb24gaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGFjY29yZGlvbiBpdGVtcyBlZGdlLXRvLWVkZ2UuXG5cbi5hY2NvcmRpb24tZmx1c2gge1xuICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7IGJvcmRlci10b3A6IDA7IH1cbiAgICAmOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAwOyB9XG5cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24gYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdi1saW5rLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbmF2LWxpbmstZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkbmF2LWxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbmF2LWxpbmstdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRuYXYtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIFByZXZlbnRzIGFjdGl2ZSAubmF2LWxpbmsgdGFiIG92ZXJsYXBwaW5nIGZvY3VzIG91dGxpbmUgb2YgcHJldmlvdXMvbmV4dCAubmF2LWxpbmtcbiAgICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmcpO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtZmlsbCxcbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIE1ha2Ugc3VyZSBidXR0b24gd2lsbCBncm93XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JhZGllbnQtYmctbWl4aW5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3I6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWdyYWRpZW50KTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1iZy1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JhZGllbnQtbWl4aW5zXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogbnVsbCwgJGVuZC1wZXJjZW50OiBudWxsKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LW1peGluc1xuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3BlbmQsXG4uZHJvcGRvd24sXG4uZHJvcHN0YXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldCgpO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24tcGFkZGluZy14O1xuICBtYXJnaW46IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgbWFyZ2luIG9mIHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZHJvcGRvd24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRkcm9wZG93bi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG5cbiAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlc3BvbnNpdmUtYnJlYWtwb2ludHNcbi8vIFdlIGRlbGliZXJhdGVseSBoYXJkY29kZSB0aGUgYGJzLWAgcHJlZml4IGJlY2F1c2Ugd2UgY2hlY2tcbi8vIHRoaXMgY3VzdG9tIHByb3BlcnR5IGluIEpTIHRvIGRldGVybWluZSBQb3BwZXIncyBwb3NpdGlvbmluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1zdGFydCB7XG4gICAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogYXV0byAje1wiLyogcnRsOmlnbm9yZSAqL1wifTtcbiAgICAgICAgbGVmdDogMCAje1wiLyogcnRsOmlnbm9yZSAqL1wifTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1lbmQge1xuICAgICAgLS1icy1wb3NpdGlvbjogZW5kO1xuXG4gICAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgICAgIHJpZ2h0OiAwICN7XCIvKiBydGw6aWdub3JlICovXCJ9O1xuICAgICAgICBsZWZ0OiBhdXRvICN7XCIvKiBydGw6aWdub3JlICovXCJ9O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3BlbmQge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChlbmQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcHN0YXJ0IHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHN0YXJ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46ICRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZHJvcGRvd24tZGl2aWRlci1iZztcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuXG4gIC8vIFByZXZlbnQgZHJvcGRvd24gb3ZlcmZsb3cgaWYgdGhlcmUncyBubyBwYWRkaW5nXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yNzcwM1xuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1oZWFkZXItcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbn1cblxuLy8gRGFyayBkcm9wZG93bnNcbi5kcm9wZG93bi1tZW51LWRhcmsge1xuICBjb2xvcjogJGRyb3Bkb3duLWRhcmstY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1kYXJrLWJnO1xuICBib3JkZXItY29sb3I6ICRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tZGFyay1ib3gtc2hhZG93KTtcblxuICAuZHJvcGRvd24taXRlbSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstY29sb3I7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItY29sb3I7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnKTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3I7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZyk7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1kaXZpZGVyIHtcbiAgICBib3JkZXItY29sb3I6ICRkcm9wZG93bi1kYXJrLWRpdmlkZXItYmc7XG4gIH1cblxuICAuZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstbGluay1jb2xvcjtcbiAgfVxuXG4gIC5kcm9wZG93bi1oZWFkZXIge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3I7XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC1taXhpbnNcbkBtaXhpbiBjYXJldC1kb3duIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LWVuZCB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1zdGFydCB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZW5kIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZW5kKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gc3RhcnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXN0YXJ0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LW1peGluc1xuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KG1kLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiAgYnJlYWtwb2ludC1tYXgoJG5leHQpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLXBhZGRpbmcteTtcbiAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7IC8vIGRlZmF1bHQ6IG51bGxcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItcGFkZGluZy15O1xuICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItcGFkZGluZy14OyAvLyBkZWZhdWx0OiBudWxsXG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAvLyBUaGUgYGZsZXgtd3JhcGAgcHJvcGVydHkgaXMgaW5oZXJpdGVkIHRvIHNpbXBsaWZ5IHRoZSBleHBhbmRlZCBuYXZiYXJzXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gID4gLmNvbnRhaW5lcixcbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1icmFuZC1tYXJnaW4tZW5kO1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9c2Nyb2xsLWhlaWdodCwgNzV2aCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZXhwYW5kLWxvb3Bcbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXVuaW9uLWNsYXNzLW5hbWVcbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItZXhwYW5kLWxvb3BcblxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4vLyBEYXJrIGxpbmtzIGFnYWluc3QgYSBsaWdodCBiYWNrZ3JvdW5kXG4ubmF2YmFyLWxpZ2h0IHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgIGEsXG4gICAgYTpob3ZlcixcbiAgICBhOmZvY3VzICB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIFdoaXRlIGxpbmtzIGFnYWluc3QgYSBkYXJrIGJhY2tncm91bmRcbi5uYXZiYXItZGFyayB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtY29sb3I7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBhLFxuICAgIGE6aG92ZXIsXG4gICAgYTpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbGxhcHNlLWNsYXNzZXNcbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNvbGxhcHNlLWNsYXNzZXNcbiIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xuICBzcmM6IHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLWxpZ2h0LTMwMC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtbGlnaHQtMzAwLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtbGlnaHQtMzAwLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgIHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLWxpZ2h0LTMwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtbGlnaHQtMzAwLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogYmxvY2s7XG4gIHNyYzogdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtcmVndWxhci00MDAuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtcmVndWxhci00MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtcmVndWxhci00MDAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgIHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLXJlZ3VsYXItNDAwLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtZGlzcGxheTogYmxvY2s7XG4gIHNyYzogdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtc29saWQtOTAwLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1zb2xpZC05MDAuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1zb2xpZC05MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtc29saWQtOTAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1zb2xpZC05MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgQnJhbmRzXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1icmFuZHMtNDAwLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1icmFuZHMtNDAwLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgdXJsKFwiLi4vZm9udGF3ZXNvbWUvd2ViZm9udHMvZmEtYnJhbmRzLTQwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1icmFuZHMtNDAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1icmFuZHMtNDAwLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IER1b3RvbmVcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xuICBzcmM6IHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLWR1b3RvbmUtOTAwLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1kdW90b25lLTkwMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLFxuICAgIHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLWR1b3RvbmUtOTAwLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgIHVybChcIi4uL2ZvbnRhd2Vzb21lL3dlYmZvbnRzL2ZhLWR1b3RvbmUtOTAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICB1cmwoXCIuLi9mb250YXdlc29tZS93ZWJmb250cy9mYS1kdW90b25lLTkwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0RNIFNhbnMnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvRE1TYW5zLVZhcmlhYmxlRm9udF9vcHN6LHdnaHQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIGZvbnQtd2VpZ2h0OiAxMDAgOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRE0gU2Fucyc7XG4gIHNyYzogdXJsKCcuLi9mb250cy9ETVNhbnMtSXRhbGljLVZhcmlhYmxlRm9udF9vcHN6LHdnaHQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIGZvbnQtd2VpZ2h0OiAxMDAgOTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn0iLCIkaGVhZGluZ3M6IFwiaDFcIiwgXCJoMlwiLCBcImgzXCIsIFwiaDRcIiwgXCJoNVwiLCBcImg2XCIsIFwiLmgxXCIsIFwiLmgyXCIsIFwiLmgzXCIsIFwiLmg0XCIsIFwiLmg1XCIsXG4gIFwiLmg2XCI7XG5cbjpyb290IHtcbiAgLS1mb250LWZhbWlseS1wcmltYXJ5OiAnRE0gU2FucycsIHNhbnMtc2VyaWY7XG4gIC0tZm9udC1zaXplLWZvbnRhd2Vzb21lOiAxLjRyZW07XG4gIC0tZm9udC1zaXplLWJhc2U6IDFyZW07XG4gIC0tZm9udC1zaXplLXh4bDogMS44cmVtO1xuICAtLWZvbnQtc2l6ZS14bDogMS43cmVtO1xuICAtLWZvbnQtc2l6ZS1sZzogMS42cmVtO1xuICAtLWZvbnQtc2l6ZS1tZDogMS40cmVtO1xuICAtLWZvbnQtc2l6ZS1zbTogMS4xcmVtO1xuICAtLWZvbnQtc2l6ZS14czogMC45cmVtO1xuICAtLWZvbnQtc2l6ZS14eHM6IDAuNzVyZW07XG5cbiAgLS1mb250LXNpemUtaDE6IHZhcigtLWZvbnQtc2l6ZS14eGwpO1xuICAtLWZvbnQtc2l6ZS1oMjogdmFyKC0tZm9udC1zaXplLXhsKTtcbiAgLS1mb250LXNpemUtaDM6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gIC0tZm9udC1zaXplLWg0OiB2YXIoLS1mb250LXNpemUtbWQpO1xuICAtLWZvbnQtc2l6ZS1oNTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgLS1mb250LXNpemUtaDY6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcblxuICAtLXRyYW5zaXRpb24tZ2xvYmFsOiAwLjE1cyBlYXNlO1xuXG4gIC0tc3BhY2luZy1nbG9iYWw6IDFyZW07XG4gIC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWw6IDEuNXJlbTtcbiAgLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbC1sZzogMi41cmVtO1xuICAtLXNwYWNpbmctaG9yaXpvbnRhbC1nbG9iYWw6IDFyZW07XG4gIC0tc3BhY2luZy1ncmlkLWdhcDogY2FsYyh2YXIoLS1zcGFjaW5nLWdsb2JhbCkgKiAyKTtcbiAgLS1zcGFjaW5nLWJ1dHRvbi1pbnB1dDogMC43cmVtIDAuOXJlbTtcbiAgLS1zcGFjaW5nLXBhZ2UtaGVhZGVyOiAyLjVyZW07XG5cbiAgLS1zZWFyY2gtZmllbGQtaGVpZ2h0OiA5MHB4O1xuICAtLXNlYXJjaC1maWVsZC10b3AtbWFyZ2luOiAycmVtO1xuXG4gIC0tcmVzcG9uc2l2ZS1hbGlnbmRlZmF1bHQtd2lkdGg6IG1pbihjYWxjKDEwMHZ3IC0gKDIgKiB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKSkpLFxuICAgICAgMTA4MHB4KTtcbiAgLS1yZXNwb25zaXZlLWFsaWdud2lkZS13aWR0aDogbWluKGNhbGMoMTAwdncgLSAoMiAqIHZhcigtLXNwYWNpbmctaG9yaXpvbnRhbC1nbG9iYWwpKSksXG4gICAgICAxMjYwcHgpO1xuXG4gIC0tY29udGFpbmVyLXNpZGViYXI6IGNhbGModmFyKC0tcmVzcG9uc2l2ZS1hbGlnbndpZGUtd2lkdGgpIC8gNCk7XG4gIC0tY29udGFpbmVyLXctc2lkZWJhcjogY2FsYygodmFyKC0tcmVzcG9uc2l2ZS1hbGlnbndpZGUtd2lkdGgpIC8gNCkgKiAzKTtcblxuICAtLWltYWdlLW1pbi1oZWlnaHQ6IDI4cmVtO1xuXG4gIC0tY29sb3ItcHJpbWFyeTogI2ZkNzEyMjtcbiAgLS1jb2xvci1zZWNvbmRhcnk6ICMyMjNjNTI7XG4gIC0tY29sb3ItYmxhY2s6ICMwMDA7XG4gIC0tY29sb3Itd2hpdGU6ICNmZmY7XG4gIC0tY29sb3ItZGFyay1ncmF5OiAjOWQ5ZDljO1xuICAtLWNvbG9yLW1lZGl1bS1ncmF5OiAjYzZjNmM2O1xuICAtLWNvbG9yLXJlZ2VudC1ncmF5OiAjOTNhMGE5O1xuICAtLWNvbG9yLWxpZ2h0LWdyYXk6ICNmN2Y4Zjk7XG4gIC0tY29sb3Itd2MtbGlnaHQtZ3JheTogdmFyKC0td2Mtc2Vjb25kYXJ5KTtcbiAgLS1jb2xvci13Yy1tZWRpdW0tZ3JheTogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAtLWNvbG9yLXdjLWRhcmstZ3JheTogdmFyKC0td2Mtc3VidGV4dCk7XG4gIC0tY29sb3Itc3VjY2VzczogIzE2OWQyNjtcbiAgLS1jb2xvci1hbGVydDogI2M0MGExNDtcbiAgLS1jb2xvci1ub3RpY2U6ICNlM2RjMTc7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgIC0tc2VhcmNoLWZpZWxkLXRvcC1tYXJnaW46IDRyZW07XG4gICAgLS1zcGFjaW5nLWJ1dHRvbi1pbnB1dDogMS4xcmVtIDEuNnJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAtLWZvbnQtc2l6ZS14eGw6IDIuNHJlbTtcbiAgICAtLWZvbnQtc2l6ZS14bDogMi4ycmVtO1xuICAgIC0tZm9udC1zaXplLWxnOiAxLjlyZW07XG4gICAgLS1mb250LXNpemUtbWQ6IDEuNnJlbTtcbiAgICAtLWZvbnQtc2l6ZS1zbTogMS4ycmVtO1xuICB9XG59IiwiQHVzZSBcInNhc3M6Y29sb3JcIjtcblxuQG1peGluIGNvbHVtbiB7XG4gIHBhZGRpbmctbGVmdDogcmVtKDE1KTtcbiAgcGFkZGluZy1yaWdodDogcmVtKDE1KTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtaXhpbiBjb2x1bW4tdi1wYWRkaW5nKCRkaXJlY3Rpb246IGFsbCkge1xuICAkdG9wOiBmYWxzZTtcbiAgJGJvdHRvbTogZmFsc2U7XG5cbiAgQGlmICRkaXJlY3Rpb24gPT0gdG9wIHtcbiAgICAkdG9wOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBib3R0b20ge1xuICAgICRib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbiAgfSBAZWxzZSB7XG4gICAgJHRvcDogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpO1xuICAgICRib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbiAgfVxuXG4gIEBpZiAoJHRvcCkge1xuICAgIHBhZGRpbmctdG9wOiAkdG9wO1xuICB9XG5cbiAgQGlmICgkYm90dG9tKSB7XG4gICAgcGFkZGluZy1ib3R0b206ICRib3R0b207XG4gIH1cbn1cblxuQG1peGluIGNvbnRhaW5lcigkd2lkdGg6IC0tcmVzcG9uc2l2ZS1hbGlnbndpZGUtd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogdmFyKCR3aWR0aCk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbkBtaXhpbiBsaXN0LXJlc2V0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDA7XG59XG5cbkBtaXhpbiBpbWFnZS1jb3ZlciB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuQG1peGluIGJ0bi1yZXNldCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1peGluIGZhZGUtb3ZlcmxheSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHotaW5kZXg6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIG9wYWNpdHk6IDAuMztcbn1cblxuQG1peGluIGhlcm8taW1hZ2Uge1xuICBAaW5jbHVkZSBpbWFnZS1jb3ZlcjtcbiAgaGVpZ2h0OiA0MHZ3O1xuICBtaW4taGVpZ2h0OiAzMnJlbTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbn1cblxuQG1peGluIGhlcm8taW1hZ2UtY29udGVudCB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgY29sdW1uLXYtcGFkZGluZztcblxuICAuYmxvY2stdGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIH1cbn1cblxuXG5AbWl4aW4gYnRuIHtcbiAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1nbG9iYWwpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1idXR0b24taW5wdXQpO1xuICBib3JkZXI6IDFweCB2YXIoLS1jb2xvci1wcmltYXJ5KSBzb2xpZDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICZbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWRbZGlzYWJsZWRdIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWJ1dHRvbi1pbnB1dCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgfVxufVxuXG5cbkBtaXhpbiBidG4tYWx0IHtcbiAgQGluY2x1ZGUgYnRuO1xuXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIH1cbn1cblxuXG5AbWl4aW4gaW5wdXQtZmllbGQge1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWdsb2JhbCk7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctYnV0dG9uLWlucHV0KTtcbiAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIHBhZGRpbmctbGVmdDogMS4ycmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMnJlbTtcbiAgfVxuXG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmF5KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW1lZGl1bS1ncmF5KTtcbiAgICBvcGFjaXR5OiAwLjU7XG4gIH1cbn1cblxuQG1peGluIGhlYWRlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgcGFkZGluZzogMC4zcmVtO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogbm9uZTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB3aWR0aDogMS4zcmVtO1xuICAgIGhlaWdodDogMS4zcmVtO1xuICB9XG59XG5cbkBtaXhpbiBmb250YXdlc29tZS1iYXNpY3MoJGNvbnRlbnQ6IG51bGwsICRmb250LXdlaWdodDogbm9ybWFsKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIGNvbnRlbnQ6ICRjb250ZW50O1xuXG4gIEBpZiAoJGZvbnQtd2VpZ2h0ICE9IG51bGwpIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0O1xuICB9XG59XG5cbkBtaXhpbiBmb250YXdlc29tZSgkY29udGVudDogbnVsbCwgJGZvbnQtd2VpZ2h0OiBub3JtYWwpIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gIEBpbmNsdWRlIGZvbnRhd2Vzb21lLWJhc2ljcygkY29udGVudCwgJGZvbnQtd2VpZ2h0KTtcbn1cblxuQG1peGluIGZhLWJyYW5kcygkY29udGVudDogbnVsbCwgJGZvbnQtd2VpZ2h0OiBub3JtYWwpIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgQnJhbmRzXCI7XG4gIEBpbmNsdWRlIGZvbnRhd2Vzb21lLWJhc2ljcygkY29udGVudCwgJGZvbnQtd2VpZ2h0KTtcbn1cblxuQG1peGluIHRpdGxlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbn1cblxuQG1peGluIGNvbXBvbmVudC10aXRsZSB7XG4gIEBpbmNsdWRlIHRpdGxlO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14bCk7XG59XG5cbkBtaXhpbiBjb21wb25lbnQtc3VidGl0bGUge1xuICBAaW5jbHVkZSB0aXRsZTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDUpO1xufVxuXG5AbWl4aW4gd2MtcHJpY2Uge1xuICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbkBtaXhpbiBsb29wLWVudHJ5IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpIHNvbGlkO1xufVxuXG5cbkBtaXhpbiBjb2xvci10ZXh0KCRjb2xvci1wcmltYXJ5OiAtLWNvbG9yLXByaW1hcnksICRjb2xvci1zZWNvbmRhcnk6IC0tY29sb3Itc2Vjb25kYXJ5KSB7XG4gIGNvbG9yOiB2YXIoJGNvbG9yLXByaW1hcnkpO1xuXG4gIGEge1xuICAgIGNvbG9yOiB2YXIoJGNvbG9yLXByaW1hcnkpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKCRjb2xvci1zZWNvbmRhcnkpO1xuICAgIH1cbiAgfVxuXG4gIEBlYWNoICR2YWx1ZSBpbiAkaGVhZGluZ3Mge1xuICAgICN7JHZhbHVlfSB7XG4gICAgICBjb2xvcjogdmFyKCRjb2xvci1wcmltYXJ5KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGNvbG9yLWJhY2tncm91bmQoJGJhY2tncm91bmQtY29sb3I6IC0tY29sb3Itd2hpdGUsICRlbGVtZW50LWNvbG9yOiAtLWNvbG9yLXByaW1hcnkpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCRiYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAuYnRuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoJGVsZW1lbnQtY29sb3IpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCRlbGVtZW50LWNvbG9yKTtcbiAgfVxufVxuIiwiYm9keSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1wcmltYXJ5KTtcbn1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbmEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZ2xvYmFsKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG5ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpO1xuICBib3JkZXItbGVmdDogMnB4IHZhcigtLWNvbG9yLXByaW1hcnkpIHNvbGlkO1xufVxuXG5AZWFjaCAkdmFsdWUgaW4gJGhlYWRpbmdzIHtcbiAgI3skdmFsdWV9IHtcbiAgICBAaW5jbHVkZSB0aXRsZTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgIGh5cGhlbnM6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbmgxLFxuLmgxLFxuLnBhZ2UtdGl0bGUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMSk7XG5cbiAgPiBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgfVxufVxuXG5oMixcbi5oMixcbi5lbnRyeS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgyKTtcbn1cblxuaDMsXG4uaDMge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7XG59XG5cbmg0LFxuLmg0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xufVxuXG5oNSxcbi5oNSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg1KTtcbn1cblxuaDYsXG4uaDYge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XG59XG5cbi5ibG9jay10aXRsZSxcbi5jb21wb25lbnQtdGl0bGUge1xuICBAaW5jbHVkZSBjb21wb25lbnQtdGl0bGU7XG59XG5cbi5jb21wb25lbnQtc3VidGl0bGUsXG4uYmxvY2stc3VidGl0bGUge1xuICBAaW5jbHVkZSBjb21wb25lbnQtc3VidGl0bGU7XG59XG5cbi5idXR0b24sXG4uYnRuLFxuLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gIEBpbmNsdWRlIGJ0bjtcbn1cblxuaW5wdXQge1xuICBAaW5jbHVkZSBpbnB1dC1maWVsZDtcbn1cblxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBAaW5jbHVkZSBpbnB1dC1maWVsZDtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5sZWdlbmQge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5jb250YWluZXIge1xuICBAaW5jbHVkZSBjb250YWluZXI7XG59XG4iLCIuYmctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgZmFkZS1vdmVybGF5O1xuICB9XG59XG5cbiNicmVhZGNydW1icyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5wYWdlLWhlYWRlcixcbi5lbnRyeS1jb250ZW50ID4gLndvb2NvbW1lcmNlLXByb2R1Y3RzLWhlYWRlciB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctcGFnZS1oZWFkZXIpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXBhZ2UtaGVhZGVyKTtcblxuICBAaW5jbHVkZSBjb250YWluZXI7XG59XG5cbi5pbWFnZSB7XG4gIEBpbmNsdWRlIGltYWdlLWNvdmVyO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5zY3JvbGwtZGlzYWJsZWQge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuLmhlYWRlci1pY29uX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uaGVhZGVyLWljb24ge1xuICBAaW5jbHVkZSBoZWFkZXItaWNvbjtcbn1cblxuLnNyLW9ubHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZC1ub25lIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuXG4uaGFzLXByaW1hcnktYmFja2dyb3VuZC1jb2xvciB7XG4gIEBpbmNsdWRlIGNvbG9yLWJhY2tncm91bmQoLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuLmhhcy1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvciB7XG4gIEBpbmNsdWRlIGNvbG9yLWJhY2tncm91bmQoLS1jb2xvci1zZWNvbmRhcnkpO1xufVxuXG4uaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3Ige1xuICBAaW5jbHVkZSBjb2xvci1iYWNrZ3JvdW5kKC0tY29sb3ItYmxhY2spO1xufVxuXG4uaGFzLXdoaXRlLWJhY2tncm91bmQtY29sb3Ige1xuICBAaW5jbHVkZSBjb2xvci1iYWNrZ3JvdW5kKC0tY29sb3Itd2hpdGUpO1xufVxuXG5cbi5oYXMtcHJpbWFyeS1jb2xvciB7XG4gIEBpbmNsdWRlIGNvbG9yLXRleHQ7XG59XG5cbi5oYXMtc2Vjb25kYXJ5LWNvbG9yIHtcbiAgQGluY2x1ZGUgY29sb3ItdGV4dCgtLWNvbG9yLXNlY29uZGFyeSwgLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuLmhhcy13aGl0ZS1jb2xvciB7XG4gIEBpbmNsdWRlIGNvbG9yLXRleHQoLS1jb2xvci13aGl0ZSwgLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuLmhhcy1ibGFjay1jb2xvciB7XG4gIEBpbmNsdWRlIGNvbG9yLXRleHQoLS1jb2xvci1ibGFjayk7XG59XG4iLCIud29vY29tbWVyY2Uge1xuICBidXR0b24uYnV0dG9uLFxuICBidXR0b24uYnV0dG9uLmFsdCxcbiAgYnV0dG9uLmJ1dHRvbi5kaXNhYmxlZCxcbiAgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQsXG4gIGEuYnV0dG9uLFxuICBhLmJ1dHRvbi5hbHQge1xuICAgIEBpbmNsdWRlIGJ0bjtcbiAgfVxuXG4gIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHtcbiAgICB1bC5wYWdlLW51bWJlcnMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICA+IGEsXG4gICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuY3VycmVudCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY2FydC1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGhlYWRlci1pY29uO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgZm9udGF3ZXNvbWUoXCJcXGYwN2FcIiwgMjAwKTtcbiAgfVxuXG4gIC5wcm9kdWN0LWNvdW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMnB4O1xuICAgIHJpZ2h0OiAtNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4cyk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiAxLjI1cmVtO1xuICAgIGhlaWdodDogMS4yNXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cblxuLnByb2ZpbGUtYnRuIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbn1cbiIsIi53b29jb21tZXJjZSxcbi53b29jb21tZXJjZS1wYWdlIHtcbiAgI2NvbnRlbnQge1xuICAgIGRpdi5wcm9kdWN0IHtcbiAgICAgIC0tcHJvZHVjdC1zZWN0aW9uLS1nYXA6IDJyZW07XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgLS1wcm9kdWN0LXNlY3Rpb24tLWdhcDogM3JlbTtcbiAgICAgIH1cblxuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGdhcDogdmFyKC0tcHJvZHVjdC1zZWN0aW9uLS1nYXApO1xuXG4gICAgICBkaXYuaW1hZ2VzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoNTAlIC0gdmFyKC0tcHJvZHVjdC1zZWN0aW9uLS1nYXApIC8gMik7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDQwJSAtIHZhcigtLXByb2R1Y3Qtc2VjdGlvbi0tZ2FwKSAvIDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGl2LnN1bW1hcnkuZW50cnktc3VtbWFyeSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgIG1heC13aWR0aDogY2FsYyg1MCUgLSB2YXIoLS1wcm9kdWN0LXNlY3Rpb24tLWdhcCkgLyAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoNjAlIC0gdmFyKC0tcHJvZHVjdC1zZWN0aW9uLS1nYXApIC8gMik7XG4gICAgICAgIH1cblxuICAgICAgICAuc2luZ2xlLXByb2R1Y3RfX2NhdGVnb3JpZXMge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnByb2R1Y3RfbWV0YSB7XG4gICAgICAgIC5za3Vfd3JhcHBlciB7XG4gICAgICAgICAgc3Bhbi5za3Uge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5wcm9kdWN0LXNwZWNzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgdHIge1xuICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHdoaXRlIHNvbGlkO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnByb2R1Y3QtYXZhaWxpYmlsaXR5IHtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpIDFyZW0gdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpIDA7XG5cbiAgICAgICAgLmF2YWlsYWJpbGl0eS1pY29uIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucHJvZHVjdC1wcmljZV9faGVhZGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgfVxuXG4gICAgICBwLnByaWNlLFxuICAgICAgc3Bhbi5wcmljZSB7XG4gICAgICAgIEBpbmNsdWRlIHdjLXByaWNlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgIC5wcm9kdWN0LXF0eV9fZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICB9XG5cbiAgICAgIGZvcm0uY2FydCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMXJlbTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgZ2FwOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnF1YW50aXR5IHtcbiAgICAgICAgLnF0eSB7XG4gICAgICAgICAgd2lkdGg6IDQuNXJlbTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIHdpZHRoOiA2cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAud29vY29tbWVyY2UtdGFicyB7XG4gICAgICAgIHVsLnRhYnMge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuXG4gICAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxpLFxuICAgICAgICAgIGxpOjpiZWZvcmUsXG4gICAgICAgICAgbGk6OmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG5cbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcblxuICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIsXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0YWJsZS5sYXBwX19wcm9kdWN0LW1ldGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodC1ncmF5KTtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgdHIge1xuICAgICAgICAgICAgdGgsXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgIGJvcmRlcjogMXB4IHZhcigtLWNvbG9yLXdoaXRlKSBzb2xpZDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMC41cmVtO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIud29vY29tbWVyY2Uge1xuICAtLXRhYmxlLWNlbGwtcGFkZGluZzogMC41cmVtO1xuICAtLWdyaWQ6IDVmciAyZnIgMmZyIDFmciAxZnI7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIC0tZ3JpZDogNWZyIHJlcGVhdCg0LCAzZnIpIDJmciAyZnI7XG4gIH1cblxuICB1bC5wcm9kdWN0cyxcbiAgdWwucHJvZHVjdHNbY2xhc3MqPVwiY29sdW1ucy1cIl0ge1xuICAgIEBpbmNsdWRlIGxpc3QtcmVzZXQ7XG5cbiAgICBmb250LXNpemU6IDAuOXJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBsaS5wcm9kdWN0IHtcbiAgICAgIEBpbmNsdWRlIGxvb3AtcHJvZHVjdDtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1ncm91cF9fdGVybS10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcGFkZGluZzogMXJlbSAwLjVyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodC1ncmF5KTtcblxuICAgICAgaDIge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubG9vcC1jb250ZW50IHtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIkBtaXhpbiBsb29wLXByb2R1Y3Qge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmbG9hdDogbm9uZTtcbiAgY2xlYXI6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBhIHtcbiAgICAucHJvZHVjdC1sb29wX19jb250ZW50IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuXG4gICAgICAucHJpY2Uge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wcmljZSB7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgYS5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gIH1cblxuICBhLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fbGluayB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcblxuICAgIC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLFxuICAgIC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSB7XG4gICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgICAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSxcbiAgICAgIC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0LWxvb3BfX2NvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gICAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LWhlYWRpbmcge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSB7XG4gICAgICBAaW5jbHVkZSBjb21wb25lbnQtc3VidGl0bGU7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG5cbiAgLmxvb3AtaW1hZ2VfX3dyYXBwZXIge1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7XG4gICAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItcHJpbWFyeSkgc29saWQ7XG4gICAgbWluLXdpZHRoOiAyMDBweDtcblxuICAgIGltZyB7XG4gICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xuICAgIH1cbiAgfVxuXG4gID4gYSB7XG4gICAgJjpub3QoLmJ1dHRvbikge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIud29vY29tbWVyY2Uge1xuICAucHJvZHVjdC1sYWJlbHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5hdmFpbGFiaWxpdHktaWNvbiB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGZvbnRhd2Vzb21lKFwiXFxmMTExXCIsIGJvbGQpO1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIH1cblxuICAgICYuaW4tc3RvY2sge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXN1Y2Nlc3MpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5vdXQtb2Ytc3RvY2sge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWFsZXJ0KSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuYXZhaWxhYmxlLW9uLWJhY2tvcmRlcixcbiAgICAmLm9uLWJhY2tvcmRlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3Itbm90aWNlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5hdmFpbGFiaWxpdHktZGVzY3JpcHRpb24ge1xuICAgIHVsIHtcbiAgICAgIEBpbmNsdWRlIGxpc3QtcmVzZXQ7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubG9vcC1wcm9kdWN0X193cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdmFyKC0tZ3JpZCk7XG4gICAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7XG4gICAgfVxuXG4gICAgPiAqIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXRhYmxlLWNlbGwtcGFkZGluZyk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgJjpub3QoLmxvb3AtaXRlbV9fdGl0bGUpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgJi5sb29wLWl0ZW1fX3RpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubG9vcC1pdGVtX19za3UsXG4gICAgICAmLmxvb3AtaXRlbV9fdW5pdCxcbiAgICAgICYubG9vcC1pdGVtX19zdXBwbGllcixcbiAgICAgICYubG9vcC1pdGVtX19lbGVjdHJpY2FsLW5yLFxuICAgICAgJi5sb29wLWl0ZW1fX3ZlbmRvci1tYXRlcmlhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5sb29wLWl0ZW1fX3NrdSB7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgICAgIH1cblxuICAgICAgJi5sb29wLWl0ZW1fX2F2YWlsYWJpbGl0eSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAmLmxvb3AtaXRlbV9fZHJvcGRvd24ge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4tcHJvZHVjdC1pbmZvX190b2dnbGUge1xuICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udGF3ZXNvbWUoXCJcXGYwNzhcIiwgYm9sZCk7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIud29vY29tbWVyY2UtY2FydCB7XG4gIC53b29jb21tZXJjZS1jYXJ0LWZvcm0sXG4gIC5zaG9wX3RhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIH1cblxuICB0YWJsZS5jYXJ0IHtcbiAgICAucXVhbnRpdHkge1xuICAgICAgLnF0eSB7XG4gICAgICAgIHdpZHRoOiA1cmVtO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDAuNXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0ZC5hY3Rpb25zIHtcbiAgICAgIC5jb3Vwb24ge1xuICAgICAgICAuaW5wdXQtdGV4dCB7XG4gICAgICAgICAgQGluY2x1ZGUgaW5wdXQtZmllbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2FydC1jb2xsYXRlcmFscyB7XG4gICAgcGFkZGluZy10b3A6IHJlbSgyMCk7XG5cbiAgICAuY3Jvc3Mtc2VsbHMge1xuICAgICAgLnByb2R1Y3RzIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBmdW5jdGlvbiByZW0oJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogMTZweDtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSBcIiVcIiB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIC8vIFVzaW5nIHJlbSBhcyBiYXNlIGFsbG93cyBjb3JyZWN0IHNjYWxpbmdcbiAgQGlmIHVuaXQoJGJhc2UpID09IFwicmVtXCIge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgJGNvdW50ID09IDEge1xuICAgIEByZXR1cm4gLXpmLXRvLXJlbSgkdmFsdWVzLCAkYmFzZSk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb3VudCB7XG4gICAgJHJlbS12YWx1ZXM6IGFwcGVuZCgkcmVtLXZhbHVlcywgLXpmLXRvLXJlbShudGgoJHZhbHVlcywgJGkpLCAkYmFzZSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVtLXZhbHVlcztcbn1cblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSBcIm51bWJlclwiIHtcbiAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtKCksIHdoaWNoIGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09IFwiZW1cIiB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHJlbSBpZiB1bml0cyBmb3IgJHZhbHVlIGlzIG5vdCByZW0gb3IgZW1cbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSBcInJlbVwiIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cbiIsIi53b29jb21tZXJjZSB7XG4gIHVsI3NoaXBwaW5nX21ldGhvZCB7XG4gICAgbGkgaW5wdXQge1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIH1cbiAgfVxuXG4gIGZvcm0ge1xuICAgIC5mb3JtLXJvdyB7XG4gICAgICAmLndvb2NvbW1lcmNlLWludmFsaWQgbGFiZWwge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYWxlcnQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLndvb2NvbW1lcmNlLWFjY291bnQge1xuICAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24ge1xuICAgIG1heC13aWR0aDogMzQwcHg7XG5cbiAgICB1bCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgPiBsaSB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnRuLWFsdDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLndjLWJyZWFkY3J1bWJfX3dyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrLWdyYXkpO1xuICBwYWRkaW5nOiAwLjg1cmVtIDA7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMDtcbiAgfVxuXG4gIC53b29jb21tZXJjZS1icmVhZGNydW1iIHtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIH1cbiAgfVxufVxuIiwiLndjLWJhbm5lcl9fd3JhcHBlciB7XG4gIC53Yy1iYW5uZXIge1xuICAgIGhlaWdodDogMjB2dztcbiAgICBAaW5jbHVkZSBpbWFnZS1jb3ZlcjtcbiAgfVxufVxuIiwiLnByb2R1Y3QtZmlsdGVyIHtcclxuICAvLyBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XHJcblxyXG4gID4qIHtcclxuICAgIGJvcmRlci10b3A6IDJweCB2YXIoLS1jb2xvci1wcmltYXJ5KSBzb2xpZDtcclxuICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xyXG4gIH1cclxuXHJcbiAgLmFjdGl2ZS1maWx0ZXJzIHtcclxuICAgIC5hY3RpdmUtZmlsdGVyc19fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgfVxyXG5cclxuICAgIC5hY3RpdmUtZmlsdGVyIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XHJcblxyXG4gICAgICAucmVtb3ZlLWZpbHRlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnRuLXJlc2V0O1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmb250YXdlc29tZSgnXFxmMDBkJywgYm9sZCk7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNlYXJjaC1maWx0ZXJzX193cmFwcGVyIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG5cclxuICAgIC5maWx0ZXItdG9nZ2xlX193cmFwcGVyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgcGFkZGluZzogMXJlbSAwO1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICNmaWx0ZXJfdG9nZ2xlciB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmb250YXdlc29tZSgnXFxmMWRlJywgbm9ybWFsKTtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoLWZpbHRlcnMge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICNjaGlsZF9jYXQsXHJcbiAgICAgIGxhYmVsW2Zvcj1cImNoaWxkX2NhdFwiXSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZmlsdGVyLXJvdyB7XHJcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xyXG5cclxuICAgICAgPmxhYmVsIHtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGdhcDogMC41cmVtO1xyXG5cclxuICAgICAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICAgICY6Y2hlY2tlZCtsYWJlbCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpob3ZlcitsYWJlbCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3QsXHJcbiAgICBpbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdKSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIHNlbGVjdCB7XHJcbiAgICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrLWdyYXkpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBvcHRpb24ge1xyXG4gICAgICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmstZ3JheSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNlYXJjaGZpZWxkX193cmFwcGVyIHtcclxuICAgICAgLnNlYXJjaGZpZWxkX193cmFwcGVyLWNvbnRlbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICB3aWR0aDogY2FsYyh2YXIoLS1jb250YWluZXItdy1zaWRlYmFyKSAtIHZhcigtLXNwYWNpbmctaG9yaXpvbnRhbC1nbG9iYWwpKTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNlYXJjaC1maWVsZC10b3AtbWFyZ2luKTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXNlYXJjaC1maWVsZC1oZWlnaHQpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuc2VhcmNoZm9ybV9fZmllbGQge1xyXG4gICAgICAgIG1heC13aWR0aDogNDAwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1Y3QtZmlsdGVyX19zdWJtaXQge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xyXG4gICAgfVxyXG4gIH1cclxufSIsIi5sb29wLWNvbnRlbnRfX2NhdGVnb3JpZXMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1ZnI7XG4gIG1hcmdpbjogMDtcblxuICA+ICoge1xuICAgICYubG9vcC1pdGVtX190aXRsZSB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRhd2Vzb21lKFwiXFxmMDYxXCIpO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlIHtcbiAgdWwucHJvZHVjdHMsXG4gIHVsLnByb2R1Y3RzW2NsYXNzKj1cImNvbHVtbnMtXCJdIHtcbiAgICBhIHtcbiAgICAgIC5sb29wLWNvbnRlbnRfX2NhdGVnb3JpZXMge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1ZnI7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodC1ncmF5KTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgcGFkZGluZzogMXJlbTtcblxuICAgICAgICAgICYubG9vcC1pdGVtX19pbWFnZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodC1ncmF5KTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHZhcigtLWNvbG9yLXByaW1hcnkpIHNvbGlkO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNTBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgaW1hZ2UtY292ZXI7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5sb29wLWl0ZW1fX3RpdGxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg2KTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIud29vY29tbWVyY2Uge1xuICBmb3JtLmxvZ2luIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLndvb2NvbW1lcmNlIHtcbiAgZm9ybSB7XG4gICAgLmZvcm0tcm93IHtcbiAgICAgIHBhZGRpbmc6IDAgMCAxcmVtIDA7XG5cbiAgICAgIGlucHV0LmlucHV0LXRleHQsXG4gICAgICB0ZXh0YXJlYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIud29vY29tbWVyY2Uge1xuICAudXBzZWxscyB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICB1bC5wcm9kdWN0cyxcbiAgICB1bC5wcm9kdWN0c1tjbGFzcyo9XCJjb2x1bW5zLVwiXSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIGdhcDogMnJlbTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucHJvZHVjdHMucmVsYXRlZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItdG9wOiAzcHggdmFyKC0tY29sb3ItcHJpbWFyeSkgc29saWQ7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbC1sZyk7XG5cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgzKTtcbiAgfVxuXG4gIC5wcm9kdWN0cyB7XG4gICAgJi5jb2x1bW5zLTQge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdhcDogMXJlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZ2FwOiAycmVtO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnByb2R1Y3QtaW5mb19fbW9iaWxlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpO1xuXG4gICYuYWN0aXZlIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlIHtcbiAgICB0Ym9keSB7XG5cbiAgICAgIHRyIHtcbiAgICAgICAgdGgsXG4gICAgICAgIHRkIHtcbiAgICAgICAgICBib3JkZXI6IDFweCB2YXIoLS1jb2xvci13aGl0ZSkgc29saWQ7XG4gICAgICAgICAgcGFkZGluZzogMC41cmVtIDAuN3JlbTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucHJvZHVjdC1zZWFyY2hmb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgI3NlYXJjaGZvcm0ge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuc2VhcmNoZmllbGRfX3dyYXBwZXIge1xuICAgICAgLnNlYXJjaGZpZWxkX193cmFwcGVyLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgIC5zZWFyY2hmb3JtX19maWVsZCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucG9zdC1iYW5uZXJfX3dyYXBwZXIge1xuICAucG9zdC1iYW5uZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDI3dnc7XG4gICAgbWluLWhlaWdodDogdmFyKC0taW1hZ2UtbWluLWhlaWdodCk7XG5cbiAgICBAaW5jbHVkZSBpbWFnZS1jb3ZlcjtcbiAgfVxufVxuIiwiLmdmb3JtX3dyYXBwZXIge1xuICBtYXgtd2lkdGg6IDcwMHB4O1xuXG4gICYuZ2Zvcm1fY2VudGVyX3dyYXBwZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLmdmb3JtX3ZhbGlkYXRpb25fZXJyb3JzIHtcbiAgICAuZ2Zvcm1fc3VibWlzc2lvbl9lcnJvciB7XG4gICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgIGNvbG9yOiByZWQ7XG4gICAgfVxuICB9XG5cbiAgLnZhbGlkYXRpb25fZXJyb3Ige1xuICAgIGNvbG9yOiByZWQ7XG4gIH1cblxuICB1bCB7XG4gICAgQGluY2x1ZGUgbGlzdC1yZXNldDtcbiAgfVxuXG4gIC5nZm9ybV9maWVsZHMge1xuICAgIEBpbmNsdWRlIGxpc3QtcmVzZXQ7XG5cbiAgICAuZ2ZpZWxkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG5cbiAgICAgIC52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICAgICAgICBjb2xvcjogcmVkO1xuICAgICAgfVxuXG4gICAgICAmLmhpZGRlbl9sYWJlbCBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5nZl9uYW1lX2hhc18yIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAycmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9dGV4dF0sXG4gICAgICBpbnB1dFt0eXBlPW51bWJlcl0sXG4gICAgICB0ZXh0YXJlYSxcbiAgICAgIHNlbGVjdCB7XG4gICAgICAgIEBpbmNsdWRlIGlucHV0LWZpZWxkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAyMHB4KSBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuOHJlbTtcbiAgICAgIH1cblxuICAgICAgbGFiZWwsXG4gICAgICBsZWdlbmQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gICAgICB9XG5cbiAgICAgICYuZ2ZpZWxkX2h0bWwgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtKDEwKTtcbiAgICAgIH1cblxuICAgICAgLmdpbnB1dF9jb250YWluZXJfY2hlY2tib3gge1xuICAgICAgICB1bC5nZmllbGRfY2hlY2tib3gge1xuICAgICAgICAgIEBpbmNsdWRlIGxpc3QtcmVzZXQ7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMTApO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZ2lucHV0X2NvbnRhaW5lcl9maWxldXBsb2FkIHtcbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5nZmllbGRfcmFkaW9fd3JhcHBlcixcbiAgICAgICYuZ2ZpZWxkX2NoZWNrYm94X3dyYXBwZXIge1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2ZpZWxkX3JhZGlvLFxuICAgIC5nZmllbGRfY2hlY2tib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jbGVhci1tdWx0aSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICBpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2lucHV0X2NvbnRhaW5lcl90aW1lIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gIH1cblxuICAuZ2Zvcm1fZm9vdGVyIHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgICAgQGluY2x1ZGUgYnRuO1xuICAgIH1cbiAgfVxuXG4gICYuZm9ybV9fZnVsbF93aWR0aF93cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuZ2Zvcm1fZmllbGRzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgIC5nZmllbGQge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuXG4gICAgICAgICYuZ2ZpZWxkX2h0bWwge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiNoZWFkZXIge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDk5OTk7XG59XG5cbi5oZWFkZXJfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLnNpdGUtaGVhZGVyX193cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cbiAgICAuc2l0ZS1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gICAgICAuc2l0ZS1oZWFkZXJfX2NvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNpdGUtbG9nbyB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMuMnJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNi4yNXJlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE5cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXJfX2xpbmtzIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgZ2FwOiAxcmVtO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnJlcXVlc3QtbGlua3Mge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogMXJlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAuc2l0ZS1uYXYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW1lZGl1bS1ncmF5KTtcbiAgfVxufVxuIiwiZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbWVkaXVtLWdyYXkpO1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuXG4gIC5zaXRlLWZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgZ2FwOiAxcmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgfVxuXG4gICAgLmZvb3Rlci1jb250ZW50X193cmFwcGVyIHtcblxuICAgICAgLm5hdi1mb290ZXJfX2NvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICAgICAgICBnYXA6IDEuNXJlbTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5mb290ZXItc29jaWFsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGdhcDogMC41cmVtO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWZvbnRhd2Vzb21lKTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5pY29uLWZhY2Vib29rIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZhLWJyYW5kcyhcIlxcZjA5YVwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmljb24taW5zdGFncmFtIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZhLWJyYW5kcyhcIlxcZjE2ZFwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmljb24tdHdpdHRlciB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmYS1icmFuZHMoXCJcXGYwOTlcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvcHlyaWdodCB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmF5KTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn0iLCIubmF2YmFyLXRvZ2dsZXIge1xuICBvcmRlcjogNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHotaW5kZXg6IDk5OTk7XG4gIEBpbmNsdWRlIGhlYWRlci1pY29uO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBmb250YXdlc29tZShcIlxcZjBjOVwiLCBub3JtYWwpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLm5hdmJhcl9fd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAubmF2YmFyX19saW5rcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5cbi5uYXZiYXIge1xuICBwYWRkaW5nOiAwO1xuXG4gICYuZGVza3RvcC1tZW51IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5tb2JpbGUtbWVudSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgdWwubmF2YmFyLW1lbnUge1xuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgQGluY2x1ZGUgbGlzdC1yZXNldDtcblxuICAgICAgPiBsaSB7XG4gICAgICAgID4gLnN1Yi1tZW51IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgei1pbmRleDogOTk5OTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLnN1Yi1tZW51IHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJi5jdXJyZW50LW1lbnUtaXRlbSB7XG4gICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuY3VycmVudF9wYWdlX3BhcmVudCxcbiAgICAgICAgJi5jdXJyZW50LW1lbnUtYW5jZXN0b3Ige1xuICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3ZlciB7XG4gICAgICAgICAgLnN1Yi1tZW51IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm5hdmJhci5tb2JpbGUtbWVudSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDkwJTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXZiYXItbmF2X19jb250ZW50IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICB1bC5uYXZiYXItbWVudSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXI6IDFweCB2YXIoLS1jb2xvci1saWdodC1ncmF5KSBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHZhcigtLWNvbG9yLWJsYWNrKSBzb2xpZDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHZhcigtLWNvbG9yLWxpZ2h0LWdyYXkpIHNvbGlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zdWItbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucmVxdWVzdC1saW5rcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubmF2YmFyLmRlc2t0b3AtbWVudSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG4gIC5uYXZiYXItbmF2IHtcbiAgICB1bC5uYXZiYXItbWVudSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgID4gbGkge1xuICAgICAgICA+IC5zdWItbWVudSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyOiAxcHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7XG4gICAgICAgICAgdG9wOiAxMDAlO1xuXG4gICAgICAgICAgPiBsaSA+IGEge1xuICAgICAgICAgICAgcGFkZGluZzogMC40cmVtIDFyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubmF2LWZvb3Rlcl9fY29udGFpbmVyIHtcbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcblxuICAgICYubmF2LWZvb3RlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgIEBpbmNsdWRlIGxpc3QtcmVzZXQ7XG5cbiAgICAgID4gbGkge1xuICAgICAgICA+IGEge1xuICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBsaS5tZW51LWl0ZW0ge1xuICAgICAgICA+IC5zdWItbWVudSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IGEge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmNvbnRhaW5lci13cmFwcGVyIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbn1cbiIsIi8vIC5lbnRyeS1jb250ZW50IHtcbi8vICAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLWFsaWduZGVmYXVsdC13aWR0aCk7XG4vLyB9XG5cbi5uYXZpZ2F0aW9uLnBhZ2luYXRpb24ge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpO1xuXG4gIC5zY3JlZW4tcmVhZGVyLXRleHQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubmF2LWxpbmtzIHtcbiAgICBzcGFuLFxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgYnRuO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIH1cbiAgfVxufVxuIiwiLnNpbmdsZSB7XG4gIC5wb3N0LXRodW1ibmFpbC1pbWcge1xuICAgIEBleHRlbmQgLmJsb2NrLWxhcmdlX2ltYWdlO1xuICAgIEBpbmNsdWRlIGltYWdlLWNvdmVyO1xuICAgIGhlaWdodDogMjV2dztcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS1pbWFnZS1taW4taGVpZ2h0KTtcbiAgICBtYXgtaGVpZ2h0OiA2MHJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uc2luZ2xlLXBvc3Qge1xuICAuZW50cnktY29udGVudCB7XG4gICAgPiAqIHtcbiAgICAgIG1heC13aWR0aDogdmFyKC0tcmVzcG9uc2l2ZS1hbGlnbmRlZmF1bHQtd2lkdGgpO1xuICAgIH1cbiAgfVxuXG4gIC5lbnRyeSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpO1xuICAgIGJvcmRlci1ib3R0b206IDJweCB2YXIoLS1jb2xvci1saWdodC1ncmF5KSBzb2xpZDtcbiAgfVxufVxuXG4uZW50cnktbWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogMC42cmVtIDA7XG4gIGJvcmRlci10b3A6IDJweCB2YXIoLS1jb2xvci1saWdodC1ncmF5KSBzb2xpZDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLmVudHJ5X19jYXRlZ29yeS1saXN0IHtcbiAgICB1bCB7XG4gICAgICBAaW5jbHVkZSBsaXN0LXJlc2V0O1xuXG4gICAgICA+IGxpIHtcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZW50cnlfX3RhZy1saXN0IHtcbiAgICBhIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG4gIH1cblxuICAuZW50cnlfX3NoYXJlLWxpbmtzIHtcbiAgICB1bCB7XG4gICAgICBAaW5jbHVkZSBsaXN0LXJlc2V0O1xuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgbGkge1xuICAgICAgICBwYWRkaW5nOiAwIDAuN3JlbTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1mb250YXdlc29tZSk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICAgICAgICAgICYuZmFjZWJvb2s6OmJlZm9yZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmYS1icmFuZHMoXCJcXGYwOWFcIik7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5saW5rZWRpbjo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZhLWJyYW5kcyhcIlxcZjA4Y1wiKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnR3aXR0ZXI6OmJlZm9yZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmYS1icmFuZHMoXCJcXGYxNmRcIik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgPiAqICsgKiB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKTtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1ob3Jpem9udGFsLWdsb2JhbCk7XG4gICAgfVxuICB9XG59XG4iLCIuc2lkZWJhciB7XG4gIHVsIHtcbiAgICBAaW5jbHVkZSBsaXN0LXJlc2V0O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIH1cbiAgfVxuXG4gIC5wb3N0LWNhdGVnb3JpZXMsXG4gIC5wcm9kdWN0LWNhdGVnb3JpZXMge1xuICAgID4gbGkge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgJi5jdXJyZW50LWNhdCB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgPiAuY2hpbGRyZW4ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSg4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucHJvZHVjdC1jYXRlZ29yaWVzX190b2dnbGVyIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgLnRvZ2dsZXJfX2NhcmV0IHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZ2xvYmFsKTtcbiAgICAgICAgQGluY2x1ZGUgZm9udGF3ZXNvbWUoXCJcXGYxMDdcIiwgbm9ybWFsKTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAudG9nZ2xlcl9fY2FyZXQge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaDMuY29tcG9uZW50LXN1YnRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLXBhZ2UtaGVhZGVyKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXBhZ2UtaGVhZGVyKTtcbiAgfVxufVxuIiwiLnNlYXJjaC1yZXN1bHRzIHtcbiAgLmVudHJ5IHtcbiAgICBAaW5jbHVkZSBsb29wLWVudHJ5O1xuICB9XG59XG5cbi5zZWFyY2gtdG9nZ2xlciB7XG4gIEBpbmNsdWRlIGhlYWRlci1pY29uO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgZm9udGF3ZXNvbWUoXCJcXGYwMDJcIiwgMjAwKTtcbiAgfVxufVxuXG4ud2Mtc2VhcmNoZm9ybS13cmFwcGVyIHtcbiAgLnNlYXJjaGZvcm0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgZm9ybSB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLnNlYXJjaGZvcm1fX2NvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBib3JkZXI6IDFweCB2YXIoLS1jb2xvci1zZWNvbmRhcnkpIHNvbGlkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcblxuICAgICAgICAuc2VhcmNoZm9ybV9fZmllbGQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc2VhcmNoZm9ybV9fc3VibWl0IHtcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIEBpbmNsdWRlIGZvbnRhd2Vzb21lKFwiXFxmMDAyXCIsIG5vcm1hbCk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXJlZ2VudC1ncmF5KTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5hcmNoaXZlLmF1dGhvciB7XG4gIC5lbnRyeSB7XG4gICAgQGluY2x1ZGUgbG9vcC1lbnRyeTtcbiAgfVxufVxuIiwiLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAuc2hvcF90YWJsZSAuY291cG9uIC5pbnB1dC10ZXh0IHtcbiAgd2lkdGg6IDguMzEzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi52YXJpYXRpb25zX2Zvcm0gLnZhcmlhdGlvbnMgLnZhbHVlID4gc2VsZWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG59XG5cbi53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCAuY29sLTEsXG4ud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgLmNvbC0yIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93LFxuLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuZm9ybS1yb3csXG4ud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndvb2NvbW1lcmNlIC5jb2wyLXNldCAuY29sLTEsXG4ud29vY29tbWVyY2UtcGFnZSAuY29sMi1zZXQgLmNvbC0xLFxuLndvb2NvbW1lcmNlIC5jb2wyLXNldCAuY29sLTIsXG4ud29vY29tbWVyY2UtcGFnZSAuY29sMi1zZXQgLmNvbC0yIHtcbiAgbWF4LXdpZHRoOiB1bnNldDtcbiAgcGFkZGluZzogMDtcbn1cblxuLndvb2NvbW1lcmNlIHNwYW4ub25zYWxlLFxuc3Bhbi5vbnNhbGUge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrLWdyYXkpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBwYWRkaW5nOiByZW0oMTApO1xuICBtaW4taGVpZ2h0OiBhdXRvO1xuICBtaW4td2lkdGg6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWNvbG9yLXN1Y2Nlc3MpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXN1Y2Nlc3MpO1xuICB9XG59XG5cbi53b29jb21tZXJjZS1lcnJvciB7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWNvbG9yLWFsZXJ0KTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1hbGVydCk7XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlIHtcbiAgdGFibGUuc2hvcF90YWJsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuIiwiLndwLWJsb2NrIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uYmxvY2std3JhcHBlciB7XG4gIEBpbmNsdWRlIGNvbHVtbi12LXBhZGRpbmc7XG59XG5cbi5hbGlnbmRlZmF1bHQge1xuICBAaW5jbHVkZSBjb250YWluZXIoLS1yZXNwb25zaXZlLWFsaWduZGVmYXVsdC13aWR0aCk7XG59XG5cbi5hbGlnbndpZGUge1xuICBAaW5jbHVkZSBjb250YWluZXI7XG59XG5cbi5hbGlnbmZ1bGwge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5lbnRyeS1jb250ZW50IHtcbiAgPiAqIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpO1xuXG4gICAgJjpub3QoLmFsaWduZnVsbCwgLmlzLXN0eWxlLWxhcmdlKSB7XG4gICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgfVxuXG4gICAgJi5hbGlnbmZ1bGwge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4ud3AtYmxvY2stYnV0dG9ucyB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcblxuICA+IC53cC1ibG9jay1idXR0b24ge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4ud3AtYmxvY2stcXVvdGUge1xuICAmLmlzLXN0eWxlLWxhcmdlLFxuICAmLmlzLWxhcmdlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG4gIH1cbn1cbiIsIi5zbGljay10cmFjayB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcblxuICAuc2xpY2stc2xpZGUge1xuICAgIGhlaWdodDogaW5oZXJpdCAhaW1wb3J0YW50O1xuXG4gICAgPiBkaXYge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4uc2xpY2stZG90cyB7XG4gIEBpbmNsdWRlIGxpc3QtcmVzZXQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IHJlbSgxNSk7XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIGJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBidG4tcmVzZXQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1tZWRpdW0tZ3JheSk7XG4gICAgICBtYXJnaW46IHJlbSg1KTtcbiAgICAgIHdpZHRoOiByZW0oOCk7XG4gICAgICBoZWlnaHQ6IHJlbSg4KTtcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDEwKTtcbiAgICB9XG5cbiAgICAmLnNsaWNrLWFjdGl2ZSxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNsaWNrLWFycm93IHtcbiAgQGluY2x1ZGUgYnRuLXJlc2V0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGZvbnQtc2l6ZTogcmVtKDMwKTtcbiAgei1pbmRleDogMTA7XG5cbiAgJi5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiByZW0oLTI1KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBmb250YXdlc29tZShcIlxcZjA1M1wiKTtcbiAgICB9XG4gIH1cblxuICAmLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiByZW0oLTI1KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBmb250YXdlc29tZShcIlxcZjA1NFwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5jb21tZW50cy1hcmVhIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcblxuICAuY29tbWVudC1yZXBseS10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC40cmVtO1xuICB9XG5cbiAgLmNvbW1lbnQtZm9ybS1jb21tZW50IHtcbiAgICA+IGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICNjb21tZW50IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiA0MHJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi5jb250ZW50LWFyZWEge1xuICBAaW5jbHVkZSBjb250YWluZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNlYXJjaC1maWVsZC10b3AtbWFyZ2luKTtcblxufVxuXG4uY29udGVudC1hcmVhX19zaWRlYmFyIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICA+IC5lbnRyeS1jb250ZW50IHtcbiAgICBtaW4taGVpZ2h0OiA3MHZoO1xuXG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zZWFyY2gtZmllbGQtaGVpZ2h0KTtcbiAgICAgIGZsZXgtYmFzaXM6IGNhbGModmFyKC0tY29udGFpbmVyLXctc2lkZWJhcikgLSB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKSk7XG4gICAgfVxuICB9XG5cbiAgPiAuc2lkZWJhciB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgZmxleC1iYXNpczogY2FsYyh2YXIoLS1jb250YWluZXItc2lkZWJhcikgLSB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKSk7XG4gICAgfVxuICB9XG5cbiAgPiAqIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy1ob3Jpem9udGFsLWdsb2JhbCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctaG9yaXpvbnRhbC1nbG9iYWwpO1xuXG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJcbi5sb2dpbi13cmFwcGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1nYXA6IDJyZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIGdyaWQtZ2FwOiA0cmVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gIH1cbn1cbiIsIi53b29jb21tZXJjZSB7XG4gIC5iYXRjaC1wcm9kdWN0c19fd3JhcHBlciB7XG4gICAgLmJhdGNoLXByb2R1Y3RzX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gICAgfVxuXG4gICAgdGFibGUuYmF0Y2gtcHJvZHVjdHMge1xuICAgICAgdGhlYWQge1xuICAgICAgICB0ci5wcm9kdWN0LWJhdGNoX19sYWJlbHMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQtZ3JheSk7XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgICAgIGJvcmRlcjogMnB4IHdoaXRlIHNvbGlkO1xuICAgICAgICAgIG1pbi13aWR0aDogMTAwcHg7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnByb2R1Y3QtYWRkX3RvX2NhcnQge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgZm9ybS5jYXJ0IHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBnYXA6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5zaW5nbGVfYWRkX3RvX2NhcnRfYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmFwcHJvdmFsLWZvcm1fX3dyYXBwZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDJyZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgIGdhcDogNHJlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDNmciAyZnI7XG4gIH1cblxuICAuaW5wdXQtZmllbGRfX3JvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgLmFwcHJvdmFsLWZvcm1fX3VzZXItaW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgLmlucHV0LWZpZWxkX19yb3cge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2stdGV4dGJsb2NrIHtcbiAgQGluY2x1ZGUgY29sdW1uLXYtcGFkZGluZztcblxuICAudGV4dGJsb2NrLXdyYXBwZXIge1xuICAgICYubmFycm93X190ZXh0YmxvY2sge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICB3aWR0aDogODUlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrLXRleHRibG9ja19hbmRfaW1hZ2Uge1xuICBtYXgtd2lkdGg6IDI1MDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgKyAuYmxvY2stdGV4dGJsb2NrX2FuZF9pbWFnZSB7XG4gICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpICogKC0xKSk7XG4gICB9XG5cbiAgLnRleHRibG9ja19hbmRfaW1hZ2VfX3dyYXBwZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cblxuICAgIC50ZXh0YmxvY2tfYW5kX2ltYWdlX19jb2x1bW4ge1xuICAgICAgLmNvbHVtbl9fY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgIG1heC13aWR0aDogY2FsYyh2YXIoLS1yZXNwb25zaXZlLWFsaWdud2lkZS13aWR0aCkgLyAyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0YmxvY2tfYW5kX2ltYWdlX19pbWFnZSB7XG4gICAgICAtLWltYWdlLWhlaWdodDogMTVyZW07XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgLS1pbWFnZS1oZWlnaHQ6IDIwcmVtO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIC0taW1hZ2UtaGVpZ2h0OiAyNXJlbTtcbiAgICAgIH1cblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pbWFnZS1oZWlnaHQpO1xuICAgICAgQGluY2x1ZGUgaW1hZ2UtY292ZXI7XG4gICAgfVxuXG4gICAgJi5ub3JtYWwge1xuICAgICAgLmNvbHVtbl9fY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctdmVydGljYWwtZ2xvYmFsKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYucmV2ZXJzZSB7XG4gICAgICBkaXJlY3Rpb246IHJ0bDtcblxuICAgICAgLmNvbHVtbl9fY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gKyAuYmxvY2stdGV4dGJsb2NrX2FuZF9pbWFnZSB7XG4gIC8vICAgbWFyZ2luLXRvcDogMDtcbiAgLy8gfVxuXG4gIC8vIH4gLmJsb2NrLXRleHRibG9ja19hbmRfaW1hZ2Uge1xuICAvLyAgIG1hcmdpbi1ib3R0b206IDA7XG4gIC8vIH1cbn1cbiIsIi5ibG9jay1sYXJnZV9pbWFnZSB7XG4gIG1heC13aWR0aDogcmVtKDI1MDApO1xuICBtYXJnaW46IDAgYXV0bztcblxuICAubGFyZ2VfaW1hZ2VfX3dyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5sYXJnZV9pbWFnZV9fYmcge1xuICAgICAgQGluY2x1ZGUgaW1hZ2UtY292ZXI7XG4gICAgICBAaW5jbHVkZSBjb2x1bW47XG5cbiAgICAgIGhlaWdodDogMjV2dztcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbSgzMDApO1xuICAgICAgbWF4LWhlaWdodDogcmVtKDcwMCk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgLmNvbHVtbl9fY29udGVudCB7XG4gICAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuYmxvY2stdGl0bGUge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5ibG9jay1oZXJvX3NsaWRlciB7XG4gIC5oZXJvLXNsaWRlcl9fd3JhcHBlciB7XG4gICAgLmhlcm8tc2xpZGVyX19zbGlkZSB7XG4gICAgICBAaW5jbHVkZSBoZXJvLWltYWdlO1xuXG4gICAgICAuaGVyby1zbGlkZXJfX3NsaWRlX19jb250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgaGVyby1pbWFnZS1jb250ZW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay1kb3RzIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrLW1hcCB7XG4gIC5hY2YtbWFwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IHJlbSg2MDApO1xuXG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5tYXAge1xuICAgIGhlaWdodDogcmVtKDQwMCk7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICBoZWlnaHQ6IHJlbSg2MDApO1xuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrLWNvbnRhY3RzIHtcbiAgLmNvbnRhY3RzIHtcbiAgICBAaW5jbHVkZSBjb2x1bW4tdi1wYWRkaW5nO1xuXG4gICAgLmNvbnRhY3RzX193cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLWdhcDogcmVtKDMwKTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb250YWN0X193cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgIC5jb250YWN0LWltYWdlIHtcbiAgICAgICAgbWluLXdpZHRoOiByZW0oMjAwKTtcbiAgICAgICAgbWluLWhlaWdodDogcmVtKDIwMCk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAgICAgICBtaW4td2lkdGg6IHJlbSgxNjApO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbSgxNjApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29udGFjdC1pbmZvIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICBwYWRkaW5nOiByZW0oMjAgMTUpO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMTUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg1KTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oNSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNSk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrLWNvbnRhY3RfaW5mbyB7XG4gIEBpbmNsdWRlIGNvbHVtbi12LXBhZGRpbmc7XG5cbiAgLmNvbHVtbl9fY29udGVudCB7XG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTApO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgPiBhIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrLWFjY29yZGlvbiB7XG4gIEBpbmNsdWRlIGNvbHVtbi12LXBhZGRpbmc7XG5cbiAgLmFjY29yZGlvbl9fY29udGVudCB7XG4gICAgcGFkZGluZzogcmVtKDE1KTtcbiAgfVxufVxuIiwiLmJsb2NrLXRhYnMge1xuICBAaW5jbHVkZSBjb2x1bW4tdi1wYWRkaW5nO1xuXG4gIC50YWJfX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IHJlbSgxNSk7XG4gIH1cbn1cbiIsIi53Yy1ibG9jay1ncmlkIHtcbiAgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCB7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgYm9yZGVyOiByZW0oMSkgdmFyKC0tY29sb3ItbGlnaHQtZ3JheSkgc29saWQ7XG4gICAgICBwYWRkaW5nOiByZW0oMTUpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICAgPiAqIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cblxuICAgICAgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtYWRkLXRvLWNhcnQge1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICA+IGEsXG4gICAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIud3AtYmxvY2stY29sdW1ucyB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy12ZXJ0aWNhbC1nbG9iYWwpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbCk7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAud3AtYmxvY2stY29sdW1uOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1ob3Jpem9udGFsLWdsb2JhbCk7XG4gIH1cblxuICAud3AtYmxvY2stY29sdW1uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy1ob3Jpem9udGFsLWdsb2JhbCk7XG4gIH1cblxuICAud3AtYmxvY2stY29sdW1uOm5vdCg6b25seS1jaGlsZCkge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICB9XG5cbiAgLndwLWJsb2NrLWNvbHVtbnMge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbihzbSwgbGcpIHtcbiAgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMm4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy1ob3Jpem9udGFsLWdsb2JhbCk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG5cbiAgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMm4gLSAxKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC53cC1ibG9jay1jb2x1bW46bm90KDpvbmx5LWNoaWxkKSB7XG4gICAgZmxleC1iYXNpczogY2FsYyg1MCUgLSB2YXIoLS1zcGFjaW5nLWhvcml6b250YWwtZ2xvYmFsKSkgIWltcG9ydGFudDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gIC53cC1ibG9jay1jb2x1bW4ge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gIH1cbn1cbiIsIi53cC1ibG9jay1ncm91cCB7XG4gICYuaGFzLWJhY2tncm91bmQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXZlcnRpY2FsLWdsb2JhbC1sZykgMDtcbiAgfVxuXG4gIC53cC1ibG9jay1ncm91cF9faW5uZXItY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gIH1cbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=*/