@charset "UTF-8";
.wcpw {
  /* Bootswatch variables place */
  /*!
   * Bootstrap v5.0.2 (https://getbootstrap.com/)
   * Copyright 2011-2021 The Bootstrap Authors
   * Copyright 2011-2021 Twitter, Inc.
   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
   */
  /* rtl:raw:
  [type="tel"],
  [type="url"],
  [type="email"],
  [type="number"] {
    direction: ltr;
  }
  */
  /*.figure {
    // Ensures the caption's text aligns with the image.
    display: inline-block;
  }

  .figure-img {
    margin-bottom: $spacer * .5;
    line-height: 1;
  }

  .figure-caption {
    @include font-size($figure-caption-font-size);
    color: $figure-caption-color;
  }*/
  /*.table-striped {
    > tbody > tr:nth-of-type(odd) {
      --wcpw-table-accent-bg: var(--wcpw-table-striped-bg);
      color: var(--wcpw-table-striped-color);
    }
  }

  // Active table
  //
  // The `.table-active` class can be added to highlight rows or cells

  .table-active {
    --wcpw-table-accent-bg: var(--wcpw-table-active-bg);
    color: var(--wcpw-table-active-color);
  }*/
  /*@include media-breakpoint-down($breakpoint) {
    .table-responsive {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
    }
  }*/
  /*@include media-breakpoint-down($breakpoint) {
    .table-responsive-xs {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
    }
  }*/
  /*@include media-breakpoint-down($breakpoint) {
    .table-responsive-sm {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
    }
  }*/
  /*@include media-breakpoint-down($breakpoint) {
    .table-responsive-md {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
    }
  }*/
  /*@include media-breakpoint-down($breakpoint) {
    .table-responsive-lg {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
    }
  }*/
  /*@include media-breakpoint-down($breakpoint) {
    .table-responsive-xl {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
    }
  }*/
  /*@include media-breakpoint-down($breakpoint) {
    .table-responsive-xxl {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
    }
  }*/
  /*.col-form-label {
    padding-top: add($input-padding-y, $input-border-width);
    padding-bottom: add($input-padding-y, $input-border-width);
    margin-bottom: 0; // Override the `<legend>` default
    @include font-size(inherit); // Override the `<legend>` default
    font-style: $form-label-font-style;
    font-weight: $form-label-font-weight;
    line-height: $input-line-height;
    color: $form-label-color;
  }

  .col-form-label-lg {
    padding-top: add($input-padding-y-lg, $input-border-width);
    padding-bottom: add($input-padding-y-lg, $input-border-width);
    @include font-size($input-font-size-lg);
  }

  .col-form-label-sm {
    padding-top: add($input-padding-y-sm, $input-border-width);
    padding-bottom: add($input-padding-y-sm, $input-border-width);
    @include font-size($input-font-size-sm);
  }*/
  /*
  .form-control-lg {
    min-height: $input-height-lg;
    padding: $input-padding-y-lg $input-padding-x-lg;
    @include font-size($input-font-size-lg);
    @include border-radius($input-border-radius-lg);

    &::file-selector-button {
      padding: $input-padding-y-lg $input-padding-x-lg;
      margin: (-$input-padding-y-lg) (-$input-padding-x-lg);
      margin-inline-end: $input-padding-x-lg;
    }

    &::-webkit-file-upload-button {
      padding: $input-padding-y-lg $input-padding-x-lg;
      margin: (-$input-padding-y-lg) (-$input-padding-x-lg);
      margin-inline-end: $input-padding-x-lg;
    }
  }*/
  /*.form-select-sm {
    padding-top: $form-select-padding-y-sm;
    padding-bottom: $form-select-padding-y-sm;
    padding-left: $form-select-padding-x-sm;
    @include font-size($form-select-font-size-sm);
  }

  .form-select-lg {
    padding-top: $form-select-padding-y-lg;
    padding-bottom: $form-select-padding-y-lg;
    padding-left: $form-select-padding-x-lg;
    @include font-size($form-select-font-size-lg);
  }*/
  /*.form-switch {
    padding-left: $form-switch-padding-start;

    .form-check-input {
      width: $form-switch-width;
      margin-left: $form-switch-padding-start * -1;
      background-image: escape-svg($form-switch-bg-image);
      background-position: left center;
      @include border-radius($form-switch-border-radius);
      @include transition($form-switch-transition);

      &:focus {
        background-image: escape-svg($form-switch-focus-bg-image);
      }

      &:checked {
        background-position: $form-switch-checked-bg-position;

        @if $enable-gradients {
          background-image: escape-svg($form-switch-checked-bg-image), var(--wcpw-gradient);
        } @else {
          background-image: escape-svg($form-switch-checked-bg-image);
        }
      }
    }
  }*/
  /*.btn-check {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none;

    &[disabled],
    &:disabled {
      + .btn {
        pointer-events: none;
        filter: none;
        opacity: $form-check-btn-check-disabled-opacity;
      }
    }
  }*/
  /*.btn-toolbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;

    .input-group {
      width: auto;
    }
  }*/
  /*.dropdown-toggle-split {
    padding-right: $btn-padding-x * .75;
    padding-left: $btn-padding-x * .75;

    &::after,
    .dropup &::after,
    .dropend &::after {
      margin-left: 0;
    }

    .dropstart &::before {
      margin-right: 0;
    }
  }

  .btn-sm + .dropdown-toggle-split {
    padding-right: $btn-padding-x-sm * .75;
    padding-left: $btn-padding-x-sm * .75;
  }

  .btn-lg + .dropdown-toggle-split {
    padding-right: $btn-padding-x-lg * .75;
    padding-left: $btn-padding-x-lg * .75;
  }


  // The clickable button for toggling the menu
  // Set the same inset shadow as the :active state
  .btn-group.show .dropdown-toggle {
    @include box-shadow($btn-active-box-shadow);

    // Show no shadow for `.btn-link` since it has no other button styles.
    &.btn-link {
      @include box-shadow(none);
    }
  }


  //
  // Vertical button groups
  //

  .btn-group-vertical {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;

    > .btn,
    > .btn-group {
      width: 100%;
    }

    > .btn:not(:first-child),
    > .btn-group:not(:first-child) {
      margin-top: -$btn-border-width;
    }

    // Reset rounded corners
    > .btn:not(:last-child):not(.dropdown-toggle),
    > .btn-group:not(:last-child) > .btn {
      @include border-bottom-radius(0);
    }

    > .btn ~ .btn,
    > .btn-group:not(:first-child) > .btn {
      @include border-top-radius(0);
    }
  }*/
  /*
  .nav-fill {
    > .nav-link,
    .nav-item {
      flex: 1 1 auto;
      text-align: center;
    }
  }

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

  .nav-fill,
  .nav-justified {
    .nav-item .nav-link {
      width: 100%; // Make sure button will grow
    }
  }


  // Tabbable tabs
  //
  // Hide tabbable panes to start, show them when `.active`

  .tab-content {
    > .tab-pane {
      display: none;
    }
    > .active {
      display: block;
    }
  }
  */
  /*.card-title {
    margin-bottom: $card-title-spacer-y;
  }

  .card-subtitle {
    margin-top: -$card-title-spacer-y * .5;
    margin-bottom: 0;
  }

  .card-text:last-child {
    margin-bottom: 0;
  }

  .card-link {
    &:hover {
      text-decoration: none;
    }

    + .card-link {
      margin-left: $card-spacer-x;
    }
  }*/
  /*.card-header-tabs {
    margin-right: -$card-cap-padding-x * .5;
    margin-bottom: -$card-cap-padding-y;
    margin-left: -$card-cap-padding-x * .5;
    border-bottom: 0;

    @if $nav-tabs-link-active-bg != $card-bg {
      .nav-link.active {
        background-color: $card-bg;
        border-bottom-color: $card-bg;
      }
    }
  }

  .card-header-pills {
    margin-right: -$card-cap-padding-x * .5;
    margin-left: -$card-cap-padding-x * .5;
  }

  // Card image
  .card-img-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: $card-img-overlay-padding;
    @include border-radius($card-inner-border-radius);
  }

  .card-img,
  .card-img-top,
  .card-img-bottom {
    width: 100%; // Required because we use flexbox and this inherently applies align-self: stretch
  }

  .card-img,
  .card-img-top {
    @include border-top-radius($card-inner-border-radius);
  }

  .card-img,
  .card-img-bottom {
    @include border-bottom-radius($card-inner-border-radius);
  }


  //
  // Card groups
  //

  .card-group {
    // The child selector allows nested `.card` within `.card-group`
    // to display properly.
    > .card {
      margin-bottom: $card-group-margin;
    }

    @include media-breakpoint-up(sm) {
      display: flex;
      flex-flow: row wrap;
      // The child selector allows nested `.card` within `.card-group`
      // to display properly.
      > .card {
        // Flexbugs #4: https://github.com/philipwalton/flexbugs#flexbug-4
        flex: 1 0 0%;
        margin-bottom: 0;

        + .card {
          margin-left: 0;
          border-left: 0;
        }

        // Handle rounded corners
        @if $enable-rounded {
          &:not(:last-child) {
            @include border-end-radius(0);

            .card-img-top,
            .card-header {
              // stylelint-disable-next-line property-disallowed-list
              border-top-right-radius: 0;
            }
            .card-img-bottom,
            .card-footer {
              // stylelint-disable-next-line property-disallowed-list
              border-bottom-right-radius: 0;
            }
          }

          &:not(:first-child) {
            @include border-start-radius(0);

            .card-img-top,
            .card-header {
              // stylelint-disable-next-line property-disallowed-list
              border-top-left-radius: 0;
            }
            .card-img-bottom,
            .card-footer {
              // stylelint-disable-next-line property-disallowed-list
              border-bottom-left-radius: 0;
            }
          }
        }
      }
    }
  }*/
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
}
.wcpw *,
.wcpw *::before,
.wcpw *::after {
  box-sizing: border-box;
}
.wcpw h4, .wcpw h3, .wcpw h2 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
}
.wcpw h2 {
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .wcpw h2 {
    font-size: 2rem;
  }
}
.wcpw h3 {
  font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  .wcpw h3 {
    font-size: 1.75rem;
  }
}
.wcpw h4 {
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .wcpw h4 {
    font-size: 1.5rem;
  }
}
.wcpw p {
  margin-top: 0;
  margin-bottom: 1rem;
}
.wcpw ul {
  padding-left: 2rem;
}
.wcpw ul,
.wcpw dl {
  margin-top: 0;
  margin-bottom: 1rem;
}
.wcpw dt {
  font-weight: 700;
}
.wcpw dd {
  margin: 0 0 0.5rem;
}
.wcpw a {
  color: #0d6efd;
  text-decoration: underline;
}
.wcpw a:hover {
  color: rgb(10.4, 88, 202.4);
}
.wcpw figure {
  margin: 0 0 1rem;
}
.wcpw img,
.wcpw svg {
  vertical-align: middle;
}
.wcpw table {
  caption-side: bottom;
  border-collapse: collapse;
}
.wcpw caption {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: #6c757d;
  text-align: left;
}
.wcpw th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}
.wcpw thead,
.wcpw tbody,
.wcpw tfoot,
.wcpw tr,
.wcpw td,
.wcpw th {
  border-color: inherit;
  border-style: solid;
  border-width: 0;
}
.wcpw label {
  display: inline-block;
}
.wcpw button {
  border-radius: 0;
}
.wcpw button:focus:not(:focus-visible) {
  outline: 0;
}
.wcpw input,
.wcpw button,
.wcpw select,
.wcpw optgroup,
.wcpw textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
.wcpw button,
.wcpw select {
  text-transform: none;
}
.wcpw [role=button] {
  cursor: pointer;
}
.wcpw select {
  word-wrap: normal;
}
.wcpw select:disabled {
  opacity: 1;
}
.wcpw [list]::-webkit-calendar-picker-indicator {
  display: none;
}
.wcpw button,
.wcpw [type=button],
.wcpw [type=reset],
.wcpw [type=submit] {
  -webkit-appearance: button;
}
.wcpw button:not(:disabled),
.wcpw [type=button]:not(:disabled),
.wcpw [type=reset]:not(:disabled),
.wcpw [type=submit]:not(:disabled) {
  cursor: pointer;
}
.wcpw ::-moz-focus-inner {
  padding: 0;
  border-style: none;
}
.wcpw textarea {
  resize: vertical;
}
.wcpw fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}
.wcpw 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) {
  .wcpw legend {
    font-size: 1.5rem;
  }
}
.wcpw legend + * {
  clear: left;
}
.wcpw ::-webkit-datetime-edit-fields-wrapper,
.wcpw ::-webkit-datetime-edit-text,
.wcpw ::-webkit-datetime-edit-minute,
.wcpw ::-webkit-datetime-edit-hour-field,
.wcpw ::-webkit-datetime-edit-day-field,
.wcpw ::-webkit-datetime-edit-month-field,
.wcpw ::-webkit-datetime-edit-year-field {
  padding: 0;
}
.wcpw ::-webkit-inner-spin-button {
  height: auto;
}
.wcpw ::-webkit-search-decoration {
  -webkit-appearance: none;
}
.wcpw ::-webkit-color-swatch-wrapper {
  padding: 0;
}
.wcpw ::-webkit-file-upload-button {
  font: inherit;
}
.wcpw ::file-selector-button {
  font: inherit;
}
.wcpw ::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}
.wcpw [hidden] {
  display: none !important;
}
.wcpw .img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}
.wcpw .table {
  --wcpw-table-bg: transparent;
  --wcpw-table-accent-bg: rgba(0, 0, 0, 0.02);
  --wcpw-table-striped-color: #212529;
  --wcpw-table-striped-bg: rgba(0, 0, 0, 0.05);
  --wcpw-table-active-color: #212529;
  --wcpw-table-active-bg: rgba(0, 0, 0, 0.1);
  --wcpw-table-hover-color: #212529;
  --wcpw-table-hover-bg: rgba(0, 0, 0, 0.075);
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
  vertical-align: top;
  border-color: #dee2e6;
}
.wcpw .table > :not(caption) > * > * {
  padding: 0.5rem 0.5rem;
  background-color: var(--wcpw-table-bg);
  border-bottom-width: 1px;
  box-shadow: inset 0 0 0 9999px var(--wcpw-table-accent-bg);
}
.wcpw .table > tbody {
  vertical-align: inherit;
}
.wcpw .table > thead {
  vertical-align: bottom;
}
.wcpw .table > :not(:last-child) > :last-child > * {
  border-bottom-color: #adb5bd;
}
.wcpw .table-sm > :not(caption) > * > * {
  padding: 0.25rem 0.25rem;
}
.wcpw .table-bordered > :not(caption) > * {
  border-width: 1px 0;
}
.wcpw .table-bordered > :not(caption) > * > * {
  border-width: 0 1px;
}
.wcpw .table-hover > tbody > tr:hover {
  --wcpw-table-accent-bg: var(--wcpw-table-hover-bg);
  color: var(--wcpw-table-hover-color);
}
.wcpw .form-label {
  margin-bottom: 0.5rem;
}
.wcpw .form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .wcpw .form-control {
    transition: none;
  }
}
.wcpw .form-control[type=file] {
  overflow: hidden;
}
.wcpw .form-control[type=file]:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.wcpw .form-control:focus {
  color: #212529;
  background-color: #fff;
  border-color: rgb(134, 182.5, 254);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}
.wcpw .form-control::-webkit-date-and-time-value {
  height: 1.5em;
}
.wcpw .form-control::-moz-placeholder {
  color: #6c757d;
  opacity: 1;
}
.wcpw .form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}
.wcpw .form-control:disabled, .wcpw .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}
.wcpw .form-control::-webkit-file-upload-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  -webkit-margin-end: 0.75rem;
          margin-inline-end: 0.75rem;
  color: #212529;
  background-color: #e9ecef;
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: 1px;
  border-radius: 0;
  -webkit-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;
  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;
}
.wcpw .form-control::file-selector-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  -webkit-margin-end: 0.75rem;
          margin-inline-end: 0.75rem;
  color: #212529;
  background-color: #e9ecef;
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: 1px;
  border-radius: 0;
  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;
}
@media (prefers-reduced-motion: reduce) {
  .wcpw .form-control::-webkit-file-upload-button {
    -webkit-transition: none;
    transition: none;
  }
  .wcpw .form-control::file-selector-button {
    transition: none;
  }
}
.wcpw .form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
  background-color: rgb(221.35, 224.2, 227.05);
}
.wcpw .form-control:hover:not(:disabled):not([readonly])::file-selector-button {
  background-color: rgb(221.35, 224.2, 227.05);
}
.wcpw .form-control::-webkit-file-upload-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  -webkit-margin-end: 0.75rem;
          margin-inline-end: 0.75rem;
  color: #212529;
  background-color: #e9ecef;
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: 1px;
  border-radius: 0;
  -webkit-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;
  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;
}
@media (prefers-reduced-motion: reduce) {
  .wcpw .form-control::-webkit-file-upload-button {
    -webkit-transition: none;
    transition: none;
  }
}
.wcpw .form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
  background-color: rgb(221.35, 224.2, 227.05);
}
.wcpw .form-control-sm {
  min-height: calc(1.5em + (0.5rem + 2px));
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
  /*&::file-selector-button {
    padding: $input-padding-y-sm $input-padding-x-sm;
    margin: (-$input-padding-y-sm) (-$input-padding-x-sm);
    margin-inline-end: $input-padding-x-sm;
  }

  &::-webkit-file-upload-button {
    padding: $input-padding-y-sm $input-padding-x-sm;
    margin: (-$input-padding-y-sm) (-$input-padding-x-sm);
    margin-inline-end: $input-padding-x-sm;
  }*/
}
.wcpw textarea.form-control {
  min-height: calc(1.5em + (0.75rem + 2px));
}
.wcpw .form-control-color {
  max-width: 3rem;
  height: auto;
  padding: 0.375rem;
}
.wcpw .form-control-color:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.wcpw .form-control-color::-moz-color-swatch {
  height: 1.5em;
  border-radius: 0.25rem;
}
.wcpw .form-control-color::-webkit-color-swatch {
  height: 1.5em;
  border-radius: 0.25rem;
}
.wcpw .form-select {
  display: block;
  width: 100%;
  padding: 0.375rem 2.25rem 0.375rem 0.75rem;
  -moz-padding-start: calc(0.75rem - 3px);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .wcpw .form-select {
    transition: none;
  }
}
.wcpw .form-select:focus {
  border-color: rgb(134, 182.5, 254);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}
.wcpw .form-select[multiple], .wcpw .form-select[size]:not([size="1"]) {
  padding-right: 0.75rem;
  background-image: none;
}
.wcpw .form-select:disabled {
  background-color: #e9ecef;
}
.wcpw .form-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #212529;
}
.wcpw .form-check {
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5em;
  margin-bottom: 0.125rem;
}
[dir=rtl] .wcpw .form-check {
  padding-right: 1.5em;
  padding-left: 0;
}
[dir=rtl] .wcpw .form-check .form-check-input {
  float: right;
  margin-left: 0;
  margin-right: -1.5em;
}

.wcpw .form-check .form-check-input {
  left: auto;
  z-index: 1;
  float: left;
  margin-left: -1.5em;
}
.wcpw .form-check-input {
  width: 1em;
  height: 1em;
  padding: 0;
  margin-top: 0.25em;
  vertical-align: top;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: 1px solid rgba(0, 0, 0, 0.25);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
}
.wcpw .form-check-input[type=checkbox] {
  border-radius: 0.25em;
}
.wcpw .form-check-input[type=radio] {
  border-radius: 50%;
}
.wcpw .form-check-input:active {
  filter: brightness(90%);
}
.wcpw .form-check-input:focus {
  border-color: rgb(134, 182.5, 254);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}
.wcpw .form-check-input:checked {
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.wcpw .form-check-input:checked[type=checkbox] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}
.wcpw .form-check-input:checked[type=radio] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
}
.wcpw .form-check-input[type=checkbox]:indeterminate {
  background-color: #0d6efd;
  border-color: #0d6efd;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}
.wcpw .form-check-input:disabled {
  pointer-events: none;
  filter: none;
  opacity: 0.5;
}
.wcpw .form-check-input[disabled] ~ .form-check-label, .wcpw .form-check-input:disabled ~ .form-check-label {
  opacity: 0.5;
}
.wcpw .form-check-inline {
  display: inline-block;
  margin-right: 1rem;
}
.wcpw .btn {
  display: inline-block;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  border-radius: 0.25rem;
  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;
}
@media (prefers-reduced-motion: reduce) {
  .wcpw .btn {
    transition: none;
  }
}
.wcpw .btn:hover {
  color: #212529;
}
.wcpw .btn:focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}
.wcpw .btn:disabled, .wcpw .btn.disabled, fieldset:disabled .wcpw .btn {
  pointer-events: none;
  opacity: 0.65;
}
.wcpw .btn-primary {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.wcpw .btn-primary:hover {
  color: #fff;
  background-color: rgb(11.05, 93.5, 215.05);
  border-color: rgb(10.4, 88, 202.4);
}
.wcpw .btn-primary:focus {
  color: #fff;
  background-color: rgb(11.05, 93.5, 215.05);
  border-color: rgb(10.4, 88, 202.4);
  box-shadow: 0 0 0 0.2rem rgba(49.3, 131.75, 253.3, 0.5);
}
.wcpw .btn-primary:active, .wcpw .btn-primary.active, .show > .wcpw .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: rgb(10.4, 88, 202.4);
  border-color: rgb(9.75, 82.5, 189.75);
}
.wcpw .btn-primary:active:focus, .wcpw .btn-primary.active:focus, .show > .wcpw .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(49.3, 131.75, 253.3, 0.5);
}
.wcpw .btn-primary:disabled, .wcpw .btn-primary.disabled {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.wcpw .btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.wcpw .btn-secondary:hover {
  color: #fff;
  background-color: rgb(91.8, 99.45, 106.25);
  border-color: rgb(86.4, 93.6, 100);
}
.wcpw .btn-secondary:focus {
  color: #fff;
  background-color: rgb(91.8, 99.45, 106.25);
  border-color: rgb(86.4, 93.6, 100);
  box-shadow: 0 0 0 0.2rem rgba(130.05, 137.7, 144.5, 0.5);
}
.wcpw .btn-secondary:active, .wcpw .btn-secondary.active, .show > .wcpw .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: rgb(86.4, 93.6, 100);
  border-color: rgb(81, 87.75, 93.75);
}
.wcpw .btn-secondary:active:focus, .wcpw .btn-secondary.active:focus, .show > .wcpw .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130.05, 137.7, 144.5, 0.5);
}
.wcpw .btn-secondary:disabled, .wcpw .btn-secondary.disabled {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.wcpw .btn-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}
.wcpw .btn-success:hover {
  color: #fff;
  background-color: rgb(34, 141.95, 58.65);
  border-color: rgb(32, 133.6, 55.2);
}
.wcpw .btn-success:focus {
  color: #fff;
  background-color: rgb(34, 141.95, 58.65);
  border-color: rgb(32, 133.6, 55.2);
  box-shadow: 0 0 0 0.2rem rgba(72.25, 180.2, 96.9, 0.5);
}
.wcpw .btn-success:active, .wcpw .btn-success.active, .show > .wcpw .btn-success.dropdown-toggle {
  color: #fff;
  background-color: rgb(32, 133.6, 55.2);
  border-color: rgb(30, 125.25, 51.75);
}
.wcpw .btn-success:active:focus, .wcpw .btn-success.active:focus, .show > .wcpw .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72.25, 180.2, 96.9, 0.5);
}
.wcpw .btn-success:disabled, .wcpw .btn-success.disabled {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}
.wcpw .btn-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.wcpw .btn-info:hover {
  color: #fff;
  background-color: rgb(19.55, 137.7, 156.4);
  border-color: rgb(18.4, 129.6, 147.2);
}
.wcpw .btn-info:focus {
  color: #fff;
  background-color: rgb(19.55, 137.7, 156.4);
  border-color: rgb(18.4, 129.6, 147.2);
  box-shadow: 0 0 0 0.2rem rgba(57.8, 175.95, 194.65, 0.5);
}
.wcpw .btn-info:active, .wcpw .btn-info.active, .show > .wcpw .btn-info.dropdown-toggle {
  color: #fff;
  background-color: rgb(18.4, 129.6, 147.2);
  border-color: rgb(17.25, 121.5, 138);
}
.wcpw .btn-info:active:focus, .wcpw .btn-info.active:focus, .show > .wcpw .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(57.8, 175.95, 194.65, 0.5);
}
.wcpw .btn-info:disabled, .wcpw .btn-info.disabled {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.wcpw .btn-warning {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}
.wcpw .btn-warning:hover {
  color: #000;
  background-color: rgb(255, 202.3, 44.2);
  border-color: rgb(255, 199.2, 31.8);
}
.wcpw .btn-warning:focus {
  color: #000;
  background-color: rgb(255, 202.3, 44.2);
  border-color: rgb(255, 199.2, 31.8);
  box-shadow: 0 0 0 0.2rem rgba(216.75, 164.05, 5.95, 0.5);
}
.wcpw .btn-warning:active, .wcpw .btn-warning.active, .show > .wcpw .btn-warning.dropdown-toggle {
  color: #000;
  background-color: rgb(255, 205.4, 56.6);
  border-color: rgb(255, 199.2, 31.8);
}
.wcpw .btn-warning:active:focus, .wcpw .btn-warning.active:focus, .show > .wcpw .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216.75, 164.05, 5.95, 0.5);
}
.wcpw .btn-warning:disabled, .wcpw .btn-warning.disabled {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}
.wcpw .btn-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.wcpw .btn-danger:hover {
  color: #fff;
  background-color: rgb(187, 45.05, 58.65);
  border-color: rgb(176, 42.4, 55.2);
}
.wcpw .btn-danger:focus {
  color: #fff;
  background-color: rgb(187, 45.05, 58.65);
  border-color: rgb(176, 42.4, 55.2);
  box-shadow: 0 0 0 0.2rem rgba(225.25, 83.3, 96.9, 0.5);
}
.wcpw .btn-danger:active, .wcpw .btn-danger.active, .show > .wcpw .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: rgb(176, 42.4, 55.2);
  border-color: rgb(165, 39.75, 51.75);
}
.wcpw .btn-danger:active:focus, .wcpw .btn-danger.active:focus, .show > .wcpw .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225.25, 83.3, 96.9, 0.5);
}
.wcpw .btn-danger:disabled, .wcpw .btn-danger.disabled {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.wcpw .btn-light {
  color: #000;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.wcpw .btn-light:hover {
  color: #000;
  background-color: rgb(249.05, 249.9, 250.75);
  border-color: rgb(248.7, 249.6, 250.5);
}
.wcpw .btn-light:focus {
  color: #000;
  background-color: rgb(249.05, 249.9, 250.75);
  border-color: rgb(248.7, 249.6, 250.5);
  box-shadow: 0 0 0 0.2rem rgba(210.8, 211.65, 212.5, 0.5);
}
.wcpw .btn-light:active, .wcpw .btn-light.active, .show > .wcpw .btn-light.dropdown-toggle {
  color: #000;
  background-color: rgb(249.4, 250.2, 251);
  border-color: rgb(248.7, 249.6, 250.5);
}
.wcpw .btn-light:active:focus, .wcpw .btn-light.active:focus, .show > .wcpw .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(210.8, 211.65, 212.5, 0.5);
}
.wcpw .btn-light:disabled, .wcpw .btn-light.disabled {
  color: #000;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.wcpw .btn-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.wcpw .btn-dark:hover {
  color: #fff;
  background-color: rgb(44.2, 49.3, 54.4);
  border-color: rgb(41.6, 46.4, 51.2);
}
.wcpw .btn-dark:focus {
  color: #fff;
  background-color: rgb(44.2, 49.3, 54.4);
  border-color: rgb(41.6, 46.4, 51.2);
  box-shadow: 0 0 0 0.2rem rgba(82.45, 87.55, 92.65, 0.5);
}
.wcpw .btn-dark:active, .wcpw .btn-dark.active, .show > .wcpw .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: rgb(41.6, 46.4, 51.2);
  border-color: rgb(39, 43.5, 48);
}
.wcpw .btn-dark:active:focus, .wcpw .btn-dark.active:focus, .show > .wcpw .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82.45, 87.55, 92.65, 0.5);
}
.wcpw .btn-dark:disabled, .wcpw .btn-dark.disabled {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.wcpw .btn-light.active, .wcpw .btn-light:hover {
  background-color: rgb(228.16, 229.08, 230);
}
.wcpw .btn-light:focus {
  background-color: rgb(233.12, 234.06, 235);
}
.wcpw .btn-outline-primary {
  color: #0d6efd;
  border-color: #0d6efd;
}
.wcpw .btn-outline-primary:hover {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.wcpw .btn-outline-primary:focus {
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.5);
}
.wcpw .btn-outline-primary:active, .wcpw .btn-outline-primary.active, .wcpw .btn-outline-primary.dropdown-toggle.show {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.wcpw .btn-outline-primary:active:focus, .wcpw .btn-outline-primary.active:focus, .wcpw .btn-outline-primary.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.5);
}
.wcpw .btn-outline-primary:disabled, .wcpw .btn-outline-primary.disabled {
  color: #0d6efd;
  background-color: transparent;
}
.wcpw .btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}
.wcpw .btn-outline-secondary:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.wcpw .btn-outline-secondary:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}
.wcpw .btn-outline-secondary:active, .wcpw .btn-outline-secondary.active, .wcpw .btn-outline-secondary.dropdown-toggle.show {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.wcpw .btn-outline-secondary:active:focus, .wcpw .btn-outline-secondary.active:focus, .wcpw .btn-outline-secondary.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}
.wcpw .btn-outline-secondary:disabled, .wcpw .btn-outline-secondary.disabled {
  color: #6c757d;
  background-color: transparent;
}
.wcpw .btn-outline-success {
  color: #28a745;
  border-color: #28a745;
}
.wcpw .btn-outline-success:hover {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}
.wcpw .btn-outline-success:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}
.wcpw .btn-outline-success:active, .wcpw .btn-outline-success.active, .wcpw .btn-outline-success.dropdown-toggle.show {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}
.wcpw .btn-outline-success:active:focus, .wcpw .btn-outline-success.active:focus, .wcpw .btn-outline-success.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}
.wcpw .btn-outline-success:disabled, .wcpw .btn-outline-success.disabled {
  color: #28a745;
  background-color: transparent;
}
.wcpw .btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}
.wcpw .btn-outline-info:hover {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.wcpw .btn-outline-info:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}
.wcpw .btn-outline-info:active, .wcpw .btn-outline-info.active, .wcpw .btn-outline-info.dropdown-toggle.show {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.wcpw .btn-outline-info:active:focus, .wcpw .btn-outline-info.active:focus, .wcpw .btn-outline-info.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}
.wcpw .btn-outline-info:disabled, .wcpw .btn-outline-info.disabled {
  color: #17a2b8;
  background-color: transparent;
}
.wcpw .btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}
.wcpw .btn-outline-warning:hover {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}
.wcpw .btn-outline-warning:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.wcpw .btn-outline-warning:active, .wcpw .btn-outline-warning.active, .wcpw .btn-outline-warning.dropdown-toggle.show {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}
.wcpw .btn-outline-warning:active:focus, .wcpw .btn-outline-warning.active:focus, .wcpw .btn-outline-warning.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.wcpw .btn-outline-warning:disabled, .wcpw .btn-outline-warning.disabled {
  color: #ffc107;
  background-color: transparent;
}
.wcpw .btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545;
}
.wcpw .btn-outline-danger:hover {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.wcpw .btn-outline-danger:focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}
.wcpw .btn-outline-danger:active, .wcpw .btn-outline-danger.active, .wcpw .btn-outline-danger.dropdown-toggle.show {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.wcpw .btn-outline-danger:active:focus, .wcpw .btn-outline-danger.active:focus, .wcpw .btn-outline-danger.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}
.wcpw .btn-outline-danger:disabled, .wcpw .btn-outline-danger.disabled {
  color: #dc3545;
  background-color: transparent;
}
.wcpw .btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}
.wcpw .btn-outline-light:hover {
  color: #000;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.wcpw .btn-outline-light:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}
.wcpw .btn-outline-light:active, .wcpw .btn-outline-light.active, .wcpw .btn-outline-light.dropdown-toggle.show {
  color: #000;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.wcpw .btn-outline-light:active:focus, .wcpw .btn-outline-light.active:focus, .wcpw .btn-outline-light.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}
.wcpw .btn-outline-light:disabled, .wcpw .btn-outline-light.disabled {
  color: #f8f9fa;
  background-color: transparent;
}
.wcpw .btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}
.wcpw .btn-outline-dark:hover {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.wcpw .btn-outline-dark:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}
.wcpw .btn-outline-dark:active, .wcpw .btn-outline-dark.active, .wcpw .btn-outline-dark.dropdown-toggle.show {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}
.wcpw .btn-outline-dark:active:focus, .wcpw .btn-outline-dark.active:focus, .wcpw .btn-outline-dark.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}
.wcpw .btn-outline-dark:disabled, .wcpw .btn-outline-dark.disabled {
  color: #343a40;
  background-color: transparent;
}
.wcpw .btn-link {
  font-weight: 400;
  color: #0d6efd;
  text-decoration: underline;
}
.wcpw .btn-link:hover {
  color: rgb(10.4, 88, 202.4);
}
.wcpw .btn-link:disabled, .wcpw .btn-link.disabled {
  color: #6c757d;
}
.wcpw .btn-lg {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}
.wcpw .btn-sm {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}
.wcpw .btn-group {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
  direction: ltr;
}
.wcpw .btn-group > .btn {
  position: relative;
  flex: 1 1 auto;
}
.wcpw .btn-group > .btn:hover,
.wcpw .btn-group > .btn:focus,
.wcpw .btn-group > .btn:active,
.wcpw .btn-group > .btn.active {
  z-index: 1;
}
.wcpw .btn-group > .btn:not(:first-child),
.wcpw .btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}
.wcpw .btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.wcpw .btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.wcpw .btn-group > .btn:nth-child(n+3),
.wcpw .btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.wcpw .nav {
  display: flex;
  flex-wrap: wrap;
  padding-right: 0;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.wcpw .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) {
  .wcpw .nav-link {
    transition: none;
  }
}
.wcpw .nav-link:hover, .wcpw .nav-link:focus {
  color: rgb(10.4, 88, 202.4);
}
.wcpw .nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}
.wcpw .nav-tabs {
  border-bottom: 0;
}
.wcpw .nav-tabs::after {
  content: "";
  flex: auto;
  border-bottom: 1px solid #dee2e6;
}
.wcpw .nav-tabs .nav-item {
  margin-bottom: 0;
}
.wcpw .nav-tabs .nav-link {
  margin-bottom: -1px;
  background: none;
  border: 1px solid transparent;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.wcpw .nav-tabs .nav-link:hover, .wcpw .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
  isolation: isolate;
}
.wcpw .nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-bottom: 1px solid #dee2e6;
}
.wcpw .nav-tabs .nav-link.active,
.wcpw .nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff;
}
.wcpw .nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.wcpw .nav-pills .nav-link {
  background: none;
  border: 0;
  border-radius: 0.25rem;
}
.wcpw .nav-pills .nav-link.active,
.wcpw .nav-pills .show > .nav-link {
  color: #fff;
  background-color: #0d6efd;
}
.wcpw .card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
  /*> .list-group {
    border-top: inherit;
    border-bottom: inherit;

    &:first-child {
      border-top-width: 0;
      @include border-top-radius($card-inner-border-radius);
    }

    &:last-child  {
      border-bottom-width: 0;
      @include border-bottom-radius($card-inner-border-radius);
    }
  }

  // Due to specificity of the above selector (`.card > .list-group`), we must
  // use a child selector here to prevent double borders.
  > .card-header + .list-group,
  > .list-group + .card-footer {
    border-top: 0;
  }*/
}
.wcpw .card > hr {
  margin-right: 0;
  margin-left: 0;
}
.wcpw .card-body {
  flex: 1 1 auto;
  padding: 1rem 1rem;
}
.wcpw .card-header {
  padding: 0.5rem 1rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}
.wcpw .card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}
.wcpw .card-footer {
  padding: 0.5rem 1rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}
.wcpw .card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}
.wcpw .pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
}
.wcpw .page-link {
  position: relative;
  display: block;
  color: #0d6efd;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid #dee2e6;
  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;
}
@media (prefers-reduced-motion: reduce) {
  .wcpw .page-link {
    transition: none;
  }
}
.wcpw .page-link:hover {
  z-index: 2;
  color: rgb(10.4, 88, 202.4);
  background-color: #e9ecef;
  border-color: #dee2e6;
}
.wcpw .page-link:focus {
  z-index: 3;
  color: rgb(10.4, 88, 202.4);
  background-color: #e9ecef;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}
.wcpw .page-item:not(:first-child) .page-link {
  margin-left: -1px;
}
.wcpw .page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.wcpw .page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
  border-color: #dee2e6;
}
.wcpw .page-link {
  padding: 0.375rem 0.75rem;
}
.wcpw .page-item:first-child .page-link {
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.wcpw .page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.wcpw .badge {
  display: inline-block;
  padding: 0.35em 0.65em;
  font-size: 0.75em;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
}
.wcpw .badge:empty {
  display: none;
}
.wcpw .btn .badge {
  position: relative;
  top: -1px;
}
@keyframes progress-bar-stripes {
  0% {
    background-position-x: 1rem;
  }
}
.wcpw .progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}
.wcpw .progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #0d6efd;
  transition: width 0.6s ease;
  border-radius: inherit;
}
@media (prefers-reduced-motion: reduce) {
  .wcpw .progress-bar {
    transition: none;
  }
}
.wcpw .btn-close {
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: 0.25em 0.25em;
  color: #000;
  background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
  border: 0;
  border-radius: 0.25rem;
  opacity: 0.5;
}
.wcpw .btn-close:hover {
  color: #000;
  text-decoration: none;
  opacity: 0.75;
}
.wcpw .btn-close:focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
  opacity: 1;
}
.wcpw .btn-close:disabled, .wcpw .btn-close.disabled {
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  opacity: 0.25;
}
.wcpw .btn-close-white {
  filter: invert(1) grayscale(100%) brightness(200%);
}
.wcpw .visually-hidden,
.wcpw .visually-hidden-focusable:not(:focus):not(:focus-within) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.wcpw .d-inline {
  display: inline !important;
}
.wcpw .d-inline-block {
  display: inline-block !important;
}
.wcpw .d-block {
  display: block !important;
}
.wcpw .d-grid {
  display: grid !important;
}
.wcpw .d-table {
  display: table !important;
}
.wcpw .d-table-row {
  display: table-row !important;
}
.wcpw .d-table-cell {
  display: table-cell !important;
}
.wcpw .d-flex {
  display: flex !important;
}
.wcpw .d-inline-flex {
  display: inline-flex !important;
}
.wcpw .d-none {
  display: none !important;
}
@media (min-width: 480px) {
  .wcpw .d-xs-inline {
    display: inline !important;
  }
  .wcpw .d-xs-inline-block {
    display: inline-block !important;
  }
  .wcpw .d-xs-block {
    display: block !important;
  }
  .wcpw .d-xs-grid {
    display: grid !important;
  }
  .wcpw .d-xs-table {
    display: table !important;
  }
  .wcpw .d-xs-table-row {
    display: table-row !important;
  }
  .wcpw .d-xs-table-cell {
    display: table-cell !important;
  }
  .wcpw .d-xs-flex {
    display: flex !important;
  }
  .wcpw .d-xs-inline-flex {
    display: inline-flex !important;
  }
  .wcpw .d-xs-none {
    display: none !important;
  }
}
@media (min-width: 576px) {
  .wcpw .d-sm-inline {
    display: inline !important;
  }
  .wcpw .d-sm-inline-block {
    display: inline-block !important;
  }
  .wcpw .d-sm-block {
    display: block !important;
  }
  .wcpw .d-sm-grid {
    display: grid !important;
  }
  .wcpw .d-sm-table {
    display: table !important;
  }
  .wcpw .d-sm-table-row {
    display: table-row !important;
  }
  .wcpw .d-sm-table-cell {
    display: table-cell !important;
  }
  .wcpw .d-sm-flex {
    display: flex !important;
  }
  .wcpw .d-sm-inline-flex {
    display: inline-flex !important;
  }
  .wcpw .d-sm-none {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .wcpw .d-md-inline {
    display: inline !important;
  }
  .wcpw .d-md-inline-block {
    display: inline-block !important;
  }
  .wcpw .d-md-block {
    display: block !important;
  }
  .wcpw .d-md-grid {
    display: grid !important;
  }
  .wcpw .d-md-table {
    display: table !important;
  }
  .wcpw .d-md-table-row {
    display: table-row !important;
  }
  .wcpw .d-md-table-cell {
    display: table-cell !important;
  }
  .wcpw .d-md-flex {
    display: flex !important;
  }
  .wcpw .d-md-inline-flex {
    display: inline-flex !important;
  }
  .wcpw .d-md-none {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .wcpw .d-lg-inline {
    display: inline !important;
  }
  .wcpw .d-lg-inline-block {
    display: inline-block !important;
  }
  .wcpw .d-lg-block {
    display: block !important;
  }
  .wcpw .d-lg-grid {
    display: grid !important;
  }
  .wcpw .d-lg-table {
    display: table !important;
  }
  .wcpw .d-lg-table-row {
    display: table-row !important;
  }
  .wcpw .d-lg-table-cell {
    display: table-cell !important;
  }
  .wcpw .d-lg-flex {
    display: flex !important;
  }
  .wcpw .d-lg-inline-flex {
    display: inline-flex !important;
  }
  .wcpw .d-lg-none {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .wcpw .d-xl-inline {
    display: inline !important;
  }
  .wcpw .d-xl-inline-block {
    display: inline-block !important;
  }
  .wcpw .d-xl-block {
    display: block !important;
  }
  .wcpw .d-xl-grid {
    display: grid !important;
  }
  .wcpw .d-xl-table {
    display: table !important;
  }
  .wcpw .d-xl-table-row {
    display: table-row !important;
  }
  .wcpw .d-xl-table-cell {
    display: table-cell !important;
  }
  .wcpw .d-xl-flex {
    display: flex !important;
  }
  .wcpw .d-xl-inline-flex {
    display: inline-flex !important;
  }
  .wcpw .d-xl-none {
    display: none !important;
  }
}
@media (min-width: 1400px) {
  .wcpw .d-xxl-inline {
    display: inline !important;
  }
  .wcpw .d-xxl-inline-block {
    display: inline-block !important;
  }
  .wcpw .d-xxl-block {
    display: block !important;
  }
  .wcpw .d-xxl-grid {
    display: grid !important;
  }
  .wcpw .d-xxl-table {
    display: table !important;
  }
  .wcpw .d-xxl-table-row {
    display: table-row !important;
  }
  .wcpw .d-xxl-table-cell {
    display: table-cell !important;
  }
  .wcpw .d-xxl-flex {
    display: flex !important;
  }
  .wcpw .d-xxl-inline-flex {
    display: inline-flex !important;
  }
  .wcpw .d-xxl-none {
    display: none !important;
  }
}
/* Bootswatch variables place */
@font-face {
  font-family: woocommerce-products-wizard;
  src: url("../fonts/icons.ttf");
  src: url("../fonts/icons.woff2") format("woff2"), url("../fonts/icons.woff") format("woff"), url("../fonts/icons.ttf") format("truetype");
}
.wcpw-outer-link::after, .wcpw-form-item.type-5 .wcpw-form-item-link .wcpw-form-item-title::after, .wcpw-form-item.type-9 .wcpw-form-item-link .wcpw-form-item-title::after, .wcpw-form-filter-field.is-image-radio .wcpw-form-filter-field-value-name::before, .wcpw-form-filter-field.is-image-checkbox .wcpw-form-filter-field-value-name::before {
  font-family: woocommerce-products-wizard;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  text-decoration: none;
  text-transform: none;
  vertical-align: middle;
}

.wcpw-spinner {
  position: -webkit-sticky;
  position: sticky;
  top: calc(50% - var(--wcpw-loading-spinner-size, 4rem) / 2);
  z-index: 10;
  display: block;
  width: var(--wcpw-loading-spinner-size, 4rem);
  height: var(--wcpw-loading-spinner-size, 4rem);
  margin: auto;
}
.wcpw-spinner-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.wcpw-spinner-bar {
  stroke: var(--wcpw-spinner-bar-stroke-color, #212529);
  stroke-width: var(--wcpw-spinner-bar-stroke-width, 6);
  stroke-opacity: var(--wcpw-spinner-bar-stroke-opacity, 0.3);
  fill: none;
}
.wcpw-spinner-fill {
  transition: stroke-dashoffset 0.1s ease-in-out;
  stroke-dashoffset: calc(100px - 1px * max(var(--wcpw-loading-spinner-min-value, 10), min(100, var(--wcpw-loading-progress, 10))));
  stroke: var(--wcpw-spinner-bar-stroke-color, #212529);
  stroke-width: var(--wcpw-spinner-fill-stroke-width, 6);
  stroke-opacity: var(--wcpw-spinner-fill-stroke-opacity, 1);
  fill: none;
}

.wcpw-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.wcpw-controls:empty {
  display: none;
}
.wcpw-controls-spacer {
  margin: auto;
}

.wcpw-control[aria-busy=true] {
  pointer-events: none;
  opacity: 0.65;
  background-image: url("../images/stripe-animated.svg");
}
.wcpw-control.is-widget-toggle {
  position: relative;
}
.wcpw-control.is-widget-toggle:is(.icon-start, .icon-left)::before, .wcpw-control.is-widget-toggle:is(.icon-end, .icon-right)::after {
  content: "\e004";
}
[dir=rtl] .wcpw-control.is-widget-toggle .wcpw-control-badge {
  transform: translate(50%, -25%);
}

.wcpw-control.is-widget-toggle .wcpw-control-badge {
  position: absolute;
  top: 0;
  inset-inline-start: 100%;
  min-width: 1.25rem;
  color: #fff;
  background-color: #0d6efd;
  border-radius: 1rem;
  transform: translate(-50%, -25%);
}
.wcpw-control.is-back:is(.icon-start, .icon-left)::before, .wcpw-control.is-back:is(.icon-end, .icon-right)::after {
  content: "\e001";
}
.wcpw-control.is-skip:is(.icon-start, .icon-left)::before, .wcpw-control.is-skip:is(.icon-end, .icon-right)::after {
  content: "\e005";
}
.wcpw-control.is-reset:is(.icon-start, .icon-left)::before, .wcpw-control.is-reset:is(.icon-end, .icon-right)::after {
  content: "\e00a";
}
.wcpw-control.is-start:is(.icon-start, .icon-left)::before, .wcpw-control.is-start:is(.icon-end, .icon-right)::after, .wcpw-control.is-next:is(.icon-start, .icon-left)::before, .wcpw-control.is-next:is(.icon-end, .icon-right)::after {
  content: "\e002";
}
.wcpw-control.is-result-pdf:is(.icon-start, .icon-left)::before, .wcpw-control.is-result-pdf:is(.icon-end, .icon-right)::after {
  content: "\e006";
}
.wcpw-control.is-to-results:is(.icon-start, .icon-left)::before, .wcpw-control.is-to-results:is(.icon-end, .icon-right)::after {
  content: "\e007";
}
.wcpw-control.is-share:is(.icon-start, .icon-left)::before, .wcpw-control.is-share:is(.icon-end, .icon-right)::after {
  content: "\e00b";
}
.wcpw-control.is-add-to-cart:is(.icon-start, .icon-left)::before, .wcpw-control.is-add-to-cart:is(.icon-end, .icon-right)::after {
  content: "\e004";
}
.wcpw-control.is-add-to-cart-repeat:is(.icon-start, .icon-left)::before, .wcpw-control.is-add-to-cart-repeat:is(.icon-end, .icon-right)::after {
  content: "\e003";
}
.wcpw-control.is-update-in-cart:is(.icon-start, .icon-left)::before, .wcpw-control.is-update-in-cart:is(.icon-end, .icon-right)::after {
  content: "\e003";
}
.wcpw-control.is-edit-in-cart:is(.icon-start, .icon-left)::before, .wcpw-control.is-edit-in-cart:is(.icon-end, .icon-right)::after {
  content: "\e009";
}
.wcpw-control.is-remove-from-cart:is(.icon-start, .icon-left)::before, .wcpw-control.is-remove-from-cart:is(.icon-end, .icon-right)::after {
  content: "\e00d";
}
.wcpw-control.is-filter-reset:is(.icon-start, .icon-left)::before, .wcpw-control.is-filter-reset:is(.icon-end, .icon-right)::after {
  content: "\e00a";
}
.wcpw-control.is-filter-submit:is(.icon-start, .icon-left)::before, .wcpw-control.is-filter-submit:is(.icon-end, .icon-right)::after {
  content: "\e00c";
}
.wcpw-control.is-step-toggle {
  margin-bottom: 0.5rem;
}
.wcpw-control.show-icon.btn-sm:is(.icon-start, .icon-left)::before, .wcpw-control.show-icon.btn-sm:is(.icon-end, .icon-right)::after, .wcpw-control.show-icon-on-mobile.btn-sm:is(.icon-start, .icon-left)::before, .wcpw-control.show-icon-on-mobile.btn-sm:is(.icon-end, .icon-right)::after {
  padding: 0 0.4em;
  transform: scale(1.5);
}
.wcpw-control.show-icon::after, .wcpw-control.show-icon::before, .wcpw-control.show-icon-on-mobile::after, .wcpw-control.show-icon-on-mobile::before {
  display: none;
}
.wcpw-control.show-icon:is(.icon-start, .icon-left)::before, .wcpw-control.show-icon:is(.icon-end, .icon-right)::after {
  font-family: woocommerce-products-wizard;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  text-decoration: none;
  text-transform: none;
  vertical-align: middle;
  display: inline-block;
  padding: 0 0.2em;
  line-height: inherit;
  font-size: 0.8em;
  transform: scale(1.2);
}
@media (max-width: 767.98px) {
  .wcpw-control.show-icon-on-mobile:is(.icon-start, .icon-left)::before, .wcpw-control.show-icon-on-mobile:is(.icon-end, .icon-right)::after {
    font-family: woocommerce-products-wizard;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    text-decoration: none;
    text-transform: none;
    vertical-align: middle;
    display: inline-block;
    padding: 0 0.2em;
    line-height: inherit;
    font-size: 0.8em;
    transform: scale(1.2);
  }
}
.wcpw-control.hide-text .wcpw-control-inner {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
@media (max-width: 767.98px) {
  .wcpw-control.hide-text-on-mobile .wcpw-control-inner {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
}
.wcpw-control-price[class] {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 0;
}
.wcpw-control-price-item {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.wcpw-control-price-item-name[class] {
  margin: 0;
  font-weight: normal;
}
.wcpw-control-price-item-value[class] {
  margin: 0;
  font-weight: bolder;
}

.wcpw-header {
  --wcpw-header-sticky-offset: 0;
  --wcpw-header-sticky-offset: var(--wcpw-header-sticky-offset-xxs, 0);
}
.wcpw-header.is-sticky {
  position: -webkit-sticky;
  position: sticky;
  top: var(--wcpw-header-sticky-offset, 0);
  right: 0;
  left: 0;
  z-index: var(--wcpw-header-stuck-z-index, 5);
  color: var(--wcpw-header-stuck-color, #212529);
  -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
          backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
}
.wcpw-header.is-sticky[stuck] {
  background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
  box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
}
@media (min-width: 480px) {
  .wcpw-header {
    --wcpw-header-sticky-offset: var(--wcpw-header-sticky-offset-xs, 0);
  }
}
@media (max-width: 479.98px) {
  .wcpw-header.is-sticky-xs {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-header-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    color: var(--wcpw-header-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-header.is-sticky-xs[stuck] {
    background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 480px) {
  .wcpw-header.is-sticky-up-xs {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-header-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    color: var(--wcpw-header-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-header.is-sticky-up-xs[stuck] {
    background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 576px) {
  .wcpw-header {
    --wcpw-header-sticky-offset: var(--wcpw-header-sticky-offset-sm, 0);
  }
}
@media (max-width: 575.98px) {
  .wcpw-header.is-sticky-sm {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-header-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    color: var(--wcpw-header-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-header.is-sticky-sm[stuck] {
    background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 576px) {
  .wcpw-header.is-sticky-up-sm {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-header-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    color: var(--wcpw-header-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-header.is-sticky-up-sm[stuck] {
    background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 768px) {
  .wcpw-header {
    --wcpw-header-sticky-offset: var(--wcpw-header-sticky-offset-md, 0);
  }
}
@media (max-width: 767.98px) {
  .wcpw-header.is-sticky-md {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-header-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    color: var(--wcpw-header-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-header.is-sticky-md[stuck] {
    background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 768px) {
  .wcpw-header.is-sticky-up-md {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-header-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    color: var(--wcpw-header-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-header.is-sticky-up-md[stuck] {
    background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 992px) {
  .wcpw-header {
    --wcpw-header-sticky-offset: var(--wcpw-header-sticky-offset-lg, 0);
  }
}
@media (max-width: 991.98px) {
  .wcpw-header.is-sticky-lg {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-header-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    color: var(--wcpw-header-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-header.is-sticky-lg[stuck] {
    background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 992px) {
  .wcpw-header.is-sticky-up-lg {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-header-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    color: var(--wcpw-header-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-header.is-sticky-up-lg[stuck] {
    background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 1200px) {
  .wcpw-header {
    --wcpw-header-sticky-offset: var(--wcpw-header-sticky-offset-xl, 0);
  }
}
@media (max-width: 1199.98px) {
  .wcpw-header.is-sticky-xl {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-header-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    color: var(--wcpw-header-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-header.is-sticky-xl[stuck] {
    background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 1200px) {
  .wcpw-header.is-sticky-up-xl {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-header-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    color: var(--wcpw-header-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-header.is-sticky-up-xl[stuck] {
    background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 1400px) {
  .wcpw-header {
    --wcpw-header-sticky-offset: var(--wcpw-header-sticky-offset-xxl, 0);
  }
}
@media (max-width: 1399.98px) {
  .wcpw-header.is-sticky-xxl {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-header-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    color: var(--wcpw-header-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-header.is-sticky-xxl[stuck] {
    background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 1400px) {
  .wcpw-header.is-sticky-up-xxl {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-header-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    color: var(--wcpw-header-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-header-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-header.is-sticky-up-xxl[stuck] {
    background-color: var(--wcpw-header-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-header-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}

.wcpw-main {
  grid-area: main;
}
.wcpw-main-row {
  --wcpw-main-row-gap: 1rem;
  display: grid;
  gap: 0 1rem;
  gap: 0 var(--wcpw-main-row-gap);
  grid-template-areas: "sidebar" "sidebar2" "main";
  grid-template-columns: auto;
  grid-template-columns: minmax(auto, 100%);
  --wcpw-sidebar-width: var(--wcpw-sidebar-width-xxs, 16rem);
}
@media (min-width: 480px) {
  .wcpw-main-row {
    --wcpw-sidebar-width: var(--wcpw-sidebar-width-xs, 16rem);
  }
}
@media (min-width: 576px) {
  .wcpw-main-row {
    --wcpw-sidebar-width: var(--wcpw-sidebar-width-sm, 16rem);
  }
}
@media (min-width: 768px) {
  .wcpw-main-row {
    --wcpw-sidebar-width: var(--wcpw-sidebar-width-md, 16rem);
  }
}
@media (min-width: 992px) {
  .wcpw-main-row {
    --wcpw-sidebar-width: var(--wcpw-sidebar-width-lg, 16rem);
  }
}
@media (min-width: 1200px) {
  .wcpw-main-row {
    --wcpw-sidebar-width: var(--wcpw-sidebar-width-xl, 16rem);
  }
}
@media (min-width: 1400px) {
  .wcpw-main-row {
    --wcpw-sidebar-width: var(--wcpw-sidebar-width-xxl, 16rem);
  }
}
.wcpw-main-row:not(.has-sidebar) {
  gap: 0;
}
.wcpw-main-row.is-sidebar-bottom {
  grid-template-areas: "main" "sidebar" "sidebar2";
}
@media (min-width: 768px) {
  .wcpw-main-row.is-sidebar-right {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "main sidebar" ". sidebar2";
    grid-template-columns: 1fr auto;
  }
  .wcpw-main-row.is-sidebar-right.has-sidebar {
    grid-template-columns: calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap)) auto;
  }
  .wcpw-main-row.is-sidebar-right .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-right > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-right .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
@media (min-width: 480px) {
  .wcpw-main-row.is-sidebar-right-xs {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "main sidebar" ". sidebar2";
    grid-template-columns: 1fr auto;
  }
  .wcpw-main-row.is-sidebar-right-xs.has-sidebar {
    grid-template-columns: calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap)) auto;
  }
  .wcpw-main-row.is-sidebar-right-xs .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-right-xs > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-right-xs .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
@media (min-width: 576px) {
  .wcpw-main-row.is-sidebar-right-sm {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "main sidebar" ". sidebar2";
    grid-template-columns: 1fr auto;
  }
  .wcpw-main-row.is-sidebar-right-sm.has-sidebar {
    grid-template-columns: calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap)) auto;
  }
  .wcpw-main-row.is-sidebar-right-sm .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-right-sm > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-right-sm .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
@media (min-width: 768px) {
  .wcpw-main-row.is-sidebar-right-md {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "main sidebar" ". sidebar2";
    grid-template-columns: 1fr auto;
  }
  .wcpw-main-row.is-sidebar-right-md.has-sidebar {
    grid-template-columns: calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap)) auto;
  }
  .wcpw-main-row.is-sidebar-right-md .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-right-md > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-right-md .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
@media (min-width: 992px) {
  .wcpw-main-row.is-sidebar-right-lg {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "main sidebar" ". sidebar2";
    grid-template-columns: 1fr auto;
  }
  .wcpw-main-row.is-sidebar-right-lg.has-sidebar {
    grid-template-columns: calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap)) auto;
  }
  .wcpw-main-row.is-sidebar-right-lg .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-right-lg > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-right-lg .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
@media (min-width: 1200px) {
  .wcpw-main-row.is-sidebar-right-xl {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "main sidebar" ". sidebar2";
    grid-template-columns: 1fr auto;
  }
  .wcpw-main-row.is-sidebar-right-xl.has-sidebar {
    grid-template-columns: calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap)) auto;
  }
  .wcpw-main-row.is-sidebar-right-xl .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-right-xl > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-right-xl .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
@media (min-width: 1400px) {
  .wcpw-main-row.is-sidebar-right-xxl {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "main sidebar" ". sidebar2";
    grid-template-columns: 1fr auto;
  }
  .wcpw-main-row.is-sidebar-right-xxl.has-sidebar {
    grid-template-columns: calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap)) auto;
  }
  .wcpw-main-row.is-sidebar-right-xxl .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-right-xxl > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-right-xxl .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
.wcpw-main-row.is-sidebar-right-always {
  grid-template-rows: 0fr 1fr;
  grid-template-areas: "main sidebar" ". sidebar2";
  grid-template-columns: 1fr auto;
}
.wcpw-main-row.is-sidebar-right-always.has-sidebar {
  grid-template-columns: calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap)) auto;
}
.wcpw-main-row.is-sidebar-right-always .wcpw-main {
  grid-row-start: 1;
  grid-row-end: -1;
}
.wcpw-main-row.is-sidebar-right-always > .wcpw-form-filter,
.wcpw-main-row.is-sidebar-right-always .wcpw-widget {
  width: var(--wcpw-sidebar-width, 16rem);
}
@media (min-width: 768px) {
  .wcpw-main-row.is-sidebar-left {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "sidebar main" "sidebar2 .";
    grid-template-columns: auto 1fr;
  }
  .wcpw-main-row.is-sidebar-left.has-sidebar {
    grid-template-columns: auto calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap));
  }
  .wcpw-main-row.is-sidebar-left .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-left > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-left .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
@media (min-width: 480px) {
  .wcpw-main-row.is-sidebar-left-xs {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "sidebar main" "sidebar2 .";
    grid-template-columns: auto 1fr;
  }
  .wcpw-main-row.is-sidebar-left-xs.has-sidebar {
    grid-template-columns: auto calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap));
  }
  .wcpw-main-row.is-sidebar-left-xs .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-left-xs > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-left-xs .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
@media (min-width: 576px) {
  .wcpw-main-row.is-sidebar-left-sm {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "sidebar main" "sidebar2 .";
    grid-template-columns: auto 1fr;
  }
  .wcpw-main-row.is-sidebar-left-sm.has-sidebar {
    grid-template-columns: auto calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap));
  }
  .wcpw-main-row.is-sidebar-left-sm .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-left-sm > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-left-sm .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
@media (min-width: 768px) {
  .wcpw-main-row.is-sidebar-left-md {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "sidebar main" "sidebar2 .";
    grid-template-columns: auto 1fr;
  }
  .wcpw-main-row.is-sidebar-left-md.has-sidebar {
    grid-template-columns: auto calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap));
  }
  .wcpw-main-row.is-sidebar-left-md .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-left-md > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-left-md .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
@media (min-width: 992px) {
  .wcpw-main-row.is-sidebar-left-lg {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "sidebar main" "sidebar2 .";
    grid-template-columns: auto 1fr;
  }
  .wcpw-main-row.is-sidebar-left-lg.has-sidebar {
    grid-template-columns: auto calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap));
  }
  .wcpw-main-row.is-sidebar-left-lg .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-left-lg > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-left-lg .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
@media (min-width: 1200px) {
  .wcpw-main-row.is-sidebar-left-xl {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "sidebar main" "sidebar2 .";
    grid-template-columns: auto 1fr;
  }
  .wcpw-main-row.is-sidebar-left-xl.has-sidebar {
    grid-template-columns: auto calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap));
  }
  .wcpw-main-row.is-sidebar-left-xl .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-left-xl > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-left-xl .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
@media (min-width: 1400px) {
  .wcpw-main-row.is-sidebar-left-xxl {
    grid-template-rows: 0fr 1fr;
    grid-template-areas: "sidebar main" "sidebar2 .";
    grid-template-columns: auto 1fr;
  }
  .wcpw-main-row.is-sidebar-left-xxl.has-sidebar {
    grid-template-columns: auto calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap));
  }
  .wcpw-main-row.is-sidebar-left-xxl .wcpw-main {
    grid-row-start: 1;
    grid-row-end: -1;
  }
  .wcpw-main-row.is-sidebar-left-xxl > .wcpw-form-filter,
  .wcpw-main-row.is-sidebar-left-xxl .wcpw-widget {
    width: var(--wcpw-sidebar-width, 16rem);
  }
}
.wcpw-main-row.is-sidebar-left-always {
  grid-template-rows: 0fr 1fr;
  grid-template-areas: "sidebar main" "sidebar2 .";
  grid-template-columns: auto 1fr;
}
.wcpw-main-row.is-sidebar-left-always.has-sidebar {
  grid-template-columns: auto calc(100% - var(--wcpw-sidebar-width) - var(--wcpw-main-row-gap));
}
.wcpw-main-row.is-sidebar-left-always .wcpw-main {
  grid-row-start: 1;
  grid-row-end: -1;
}
.wcpw-main-row.is-sidebar-left-always > .wcpw-form-filter,
.wcpw-main-row.is-sidebar-left-always .wcpw-widget {
  width: var(--wcpw-sidebar-width, 16rem);
}
.wcpw-main-row.is-expanded-sequence-mode .wcpw-form.is-active ~ .wcpw-form {
  pointer-events: none;
  opacity: var(--wcpw-step-disabled-opacity, 0.5);
  filter: var(--wcpw-step-disabled-filter, grayscale(0.5));
}

.wcpw-modal {
  margin: auto;
  padding: var(--wcpw-modal-padding, 1rem);
  width: var(--wcpw-modal-width, 800px);
  max-width: var(--wcpw-modal-max-width, 98vw);
  pointer-events: auto;
  background-color: var(--wcpw-modal-bg-color, #fff);
  background-clip: padding-box;
  border: var(--wcpw-modal-border, 1px solid rgba(0, 0, 0, 0.2));
  border-radius: var(--wcpw-modal-border-radius, 0.3rem);
  box-shadow: var(--wcpw-modal-box-shadow, 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075));
  outline: 0;
}
@media (prefers-reduced-motion: no-preference) {
  .wcpw-modal {
    animation: var(--wcpw-modal-animation, wcpw-modal forwards 0.25s);
    animation-timing-function: var(--wcpw-modal-animation-timing-function, ease-out);
  }
  .wcpw-modal[wcpw-reopen-modal=true], .wcpw-modal[wcpw-reopen-modal=true]::backdrop {
    animation: none;
  }
}
.wcpw-modal:target {
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1060;
  box-shadow: 0 0 0 100vw rgba(0, 0, 0, 0.5);
}
.wcpw-modal::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-backdrop-filter: var(--wcpw-modal-backdrop-filter, blur(1px));
          backdrop-filter: var(--wcpw-modal-backdrop-filter, blur(1px));
}
@media (prefers-reduced-motion: no-preference) {
  .wcpw-modal::backdrop {
    animation: var(--wcpw-modal-backdrop-animation, wcpw-modal-backdrop forwards 0.25s);
    animation-timing-function: var(--wcpw-modal-backdrop-animation-timing-function, linear);
  }
}
.wcpw-modal-close {
  position: absolute;
  top: 0.5rem;
  inset-inline-end: 0.5rem;
  z-index: 5;
}

html:has(.wcpw-modal[open]) {
  overflow: hidden;
}

@keyframes wcpw-modal {
  from {
    opacity: 0;
    transform: translate3d(0, -3rem, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes wcpw-modal-backdrop {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.wcpw-nav {
  --wcpw-nav-sticky-offset: 0;
  padding-bottom: 1rem;
  --wcpw-nav-sticky-offset: var(--wcpw-nav-sticky-offset-xxs, 0);
}
.wcpw-nav.is-sticky {
  position: -webkit-sticky;
  position: sticky;
  top: var(--wcpw-nav-sticky-offset, 0);
  right: 0;
  left: 0;
  z-index: 5;
  -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
          backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
  padding-top: 1rem;
}
.wcpw-nav.is-sticky[stuck] {
  background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
  box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
}
@media (min-width: 480px) {
  .wcpw-nav {
    --wcpw-nav-sticky-offset: var(--wcpw-nav-sticky-offset-xs, 0);
  }
}
@media (max-width: 479.98px) {
  .wcpw-nav.is-sticky-xs {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-nav-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
    padding-top: 1rem;
  }
  .wcpw-nav.is-sticky-xs[stuck] {
    background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
    box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 480px) {
  .wcpw-nav.is-sticky-up-xs {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-nav-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
    padding-top: 1rem;
  }
  .wcpw-nav.is-sticky-up-xs[stuck] {
    background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
    box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 576px) {
  .wcpw-nav {
    --wcpw-nav-sticky-offset: var(--wcpw-nav-sticky-offset-sm, 0);
  }
}
@media (max-width: 575.98px) {
  .wcpw-nav.is-sticky-sm {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-nav-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
    padding-top: 1rem;
  }
  .wcpw-nav.is-sticky-sm[stuck] {
    background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
    box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 576px) {
  .wcpw-nav.is-sticky-up-sm {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-nav-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
    padding-top: 1rem;
  }
  .wcpw-nav.is-sticky-up-sm[stuck] {
    background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
    box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 768px) {
  .wcpw-nav {
    --wcpw-nav-sticky-offset: var(--wcpw-nav-sticky-offset-md, 0);
  }
}
@media (max-width: 767.98px) {
  .wcpw-nav.is-sticky-md {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-nav-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
    padding-top: 1rem;
  }
  .wcpw-nav.is-sticky-md[stuck] {
    background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
    box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 768px) {
  .wcpw-nav.is-sticky-up-md {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-nav-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
    padding-top: 1rem;
  }
  .wcpw-nav.is-sticky-up-md[stuck] {
    background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
    box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 992px) {
  .wcpw-nav {
    --wcpw-nav-sticky-offset: var(--wcpw-nav-sticky-offset-lg, 0);
  }
}
@media (max-width: 991.98px) {
  .wcpw-nav.is-sticky-lg {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-nav-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
    padding-top: 1rem;
  }
  .wcpw-nav.is-sticky-lg[stuck] {
    background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
    box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 992px) {
  .wcpw-nav.is-sticky-up-lg {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-nav-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
    padding-top: 1rem;
  }
  .wcpw-nav.is-sticky-up-lg[stuck] {
    background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
    box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 1200px) {
  .wcpw-nav {
    --wcpw-nav-sticky-offset: var(--wcpw-nav-sticky-offset-xl, 0);
  }
}
@media (max-width: 1199.98px) {
  .wcpw-nav.is-sticky-xl {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-nav-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
    padding-top: 1rem;
  }
  .wcpw-nav.is-sticky-xl[stuck] {
    background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
    box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 1200px) {
  .wcpw-nav.is-sticky-up-xl {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-nav-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
    padding-top: 1rem;
  }
  .wcpw-nav.is-sticky-up-xl[stuck] {
    background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
    box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 1400px) {
  .wcpw-nav {
    --wcpw-nav-sticky-offset: var(--wcpw-nav-sticky-offset-xxl, 0);
  }
}
@media (max-width: 1399.98px) {
  .wcpw-nav.is-sticky-xxl {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-nav-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
    padding-top: 1rem;
  }
  .wcpw-nav.is-sticky-xxl[stuck] {
    background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
    box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 1400px) {
  .wcpw-nav.is-sticky-up-xxl {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-nav-sticky-offset, 0);
    right: 0;
    left: 0;
    z-index: 5;
    -webkit-backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-nav-stuck-backdrop-filter, blur(3px));
    padding-top: 1rem;
  }
  .wcpw-nav.is-sticky-up-xxl[stuck] {
    background-color: var(--wcpw-nav-stuck-bg, rgba(255, 255, 255, 0.75));
    box-shadow: var(--wcpw-nav-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
.wcpw-nav-button.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  margin-bottom: 0.5rem;
}
.wcpw-nav-button.btn.has-thumbnail {
  text-align: start;
}
.wcpw-nav-button-title {
  display: block;
  white-space: nowrap;
}
.wcpw-nav-button-sub-title {
  font-size: 0.9em;
}
.wcpw-nav-button-sub-title:empty {
  display: none;
}
.wcpw-nav-button-thumbnail {
  display: inline-block;
  width: auto;
  height: auto;
  max-width: var(--wcpw-nav-item-thumbnail-size, 2.5rem);
  max-height: var(--wcpw-nav-item-thumbnail-size, 2.5rem);
}
.wcpw-nav-list {
  display: flex;
  list-style: none;
  counter-reset: wcpw-nav;
}
.wcpw-nav-list[class] {
  margin: 0;
  padding: 0;
}
.wcpw-nav-list:is(.nav,
.is-line,
.is-line-horizontal,
.is-progress,
.is-panel) {
  flex-wrap: nowrap;
  overflow: auto;
  scroll-snap-type: x mandatory;
}
.wcpw-nav-list:is(.nav,
.is-line,
.is-line-horizontal,
.is-progress,
.is-panel)::-webkit-scrollbar {
  width: 16px;
  height: 16px;
  background-color: #fff;
}
.wcpw-nav-list:is(.nav,
.is-line,
.is-line-horizontal,
.is-progress,
.is-panel)::-webkit-scrollbar-track {
  background-color: #fff;
}
.wcpw-nav-list:is(.nav,
.is-line,
.is-line-horizontal,
.is-progress,
.is-panel)::-webkit-scrollbar-track:hover {
  background-color: #fff;
}
.wcpw-nav-list:is(.nav,
.is-line,
.is-line-horizontal,
.is-progress,
.is-panel)::-webkit-scrollbar-thumb {
  border: 5px solid #fff;
  border-radius: 16px;
  background-color: #ced4da;
}
.wcpw-nav-list:is(.nav,
.is-line,
.is-line-horizontal,
.is-progress,
.is-panel)::-webkit-scrollbar-thumb:hover {
  background-color: #adb5bd;
}
.wcpw-nav-list:is(.nav,
.is-line,
.is-line-horizontal,
.is-progress,
.is-panel)::-webkit-scrollbar-button {
  display: none;
}
.wcpw-nav-list:is(.nav,
.is-line,
.is-line-horizontal,
.is-progress,
.is-panel) .wcpw-nav-list-item {
  scroll-snap-align: start;
}
.wcpw-nav-list:is(.nav,
.is-line,
.is-line-horizontal,
.is-progress,
.is-panel) .nav-link {
  margin-bottom: 0;
}
.wcpw-nav-list.is-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.wcpw-nav-list.is-tabs {
  display: flex;
  flex-wrap: wrap;
}
.wcpw-nav-list.is-pills .nav-link {
  border: 0;
  background-color: transparent;
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) {
  justify-content: space-between;
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item {
  display: flex;
  flex: 1 0;
  padding: 0;
  margin: 0;
  text-align: center;
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item.past {
  color: var(--wcpw-nav-line-item-past-color, #28a745);
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item.past::after {
  border-color: var(--wcpw-nav-line-item-past-color, #28a745);
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item.past .wcpw-nav-list-item-button {
  color: var(--wcpw-nav-line-item-past-color, #28a745);
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item.past .wcpw-nav-list-item-button::before, .wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item.past .wcpw-nav-list-item-button::after {
  color: var(--wcpw-nav-line-item-past-circle-color, #fff);
  background-color: var(--wcpw-nav-line-item-past-circle-bg, #28a745);
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item.active {
  color: var(--wcpw-nav-line-item-active-color, #0d6efd);
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item.active .wcpw-nav-list-item-button {
  color: var(--wcpw-nav-line-item-active-color, #0d6efd);
  cursor: default;
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item.active .wcpw-nav-list-item-button::before, .wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item.active .wcpw-nav-list-item-button::after {
  color: var(--wcpw-nav-line-item-active-circle-color, #fff);
  background-color: var(--wcpw-nav-line-item-active-circle-bg, #0d6efd);
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item.disabled {
  color: var(--wcpw-nav-line-item-disabled-color, #6c757d);
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item-button[class] {
  position: relative;
  display: grid;
  justify-content: center;
  align-items: center;
  height: auto;
  border: 0;
  color: inherit;
  background: none;
  padding: 0 1rem;
  font-weight: normal;
  word-break: normal;
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item-button[disabled] {
  transform: var(--wcpw-nav-line-item-disabled-transform, scale(0.8));
  transform-origin: 50% calc(var(--wcpw-nav-line-item-circle-size, 2.5rem) * 0.5);
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item-button:not(.has-thumbnail)::before {
  content: counter(wcpw-nav);
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item-button::before {
  content: "";
  counter-increment: wcpw-nav;
  position: relative;
  z-index: 2;
  display: block;
  grid-area: thumbnail;
  box-shadow: var(--wcpw-nav-line-item-circle-box-shadow, none);
  background-color: var(--wcpw-nav-line-item-circle-bg, #e9ecef);
  border-radius: var(--wcpw-nav-line-item-circle-border-radius, 50%);
  min-width: var(--wcpw-nav-line-item-circle-size, 2.5rem);
  width: var(--wcpw-nav-line-item-circle-size, 2.5rem);
  height: var(--wcpw-nav-line-item-circle-size, 2.5rem);
  margin: auto;
  font-size: var(--wcpw-nav-line-item-circle-font-size, 1rem);
  font-weight: var(--wcpw-nav-line-item-circle-font-weight, bolder);
  line-height: var(--wcpw-nav-line-item-circle-size, 2.5rem);
  transition: opacity 0.25s ease-in-out;
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item-thumbnail {
  z-index: 3;
  display: block;
  grid-area: thumbnail;
  margin: auto;
  padding: 0.25rem;
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item-title {
  white-space: normal;
}
.wcpw-nav-list:is(.is-line,
.is-line-horizontal) .wcpw-nav-list-item-text {
  grid-area: text;
}
.wcpw-nav-list.is-line {
  margin-top: calc(var(--wcpw-nav-line-item-connect-line-width, 2px) * -1);
}
.wcpw-nav-list.is-line .wcpw-nav-list-item {
  flex-direction: column;
}
.wcpw-nav-list.is-line .wcpw-nav-list-item:last-child::after {
  width: 0;
}
.wcpw-nav-list.is-line .wcpw-nav-list-item::after {
  content: "";
  position: relative;
  order: -1;
  top: calc(var(--wcpw-nav-line-item-circle-size, 2.5rem) * 0.5 + var(--wcpw-nav-line-item-connect-line-width, 2px) * 0.5);
  width: calc(100% - var(--wcpw-nav-line-item-circle-size, 2.5rem) - 1rem);
  inset-inline-start: calc(50% + var(--wcpw-nav-line-item-circle-size, 2.5rem) * 0.5 + 0.5rem);
  border-bottom: var(--wcpw-nav-line-item-connect-line-width, 2px) var(--wcpw-nav-line-item-connect-line-style, solid) var(--wcpw-nav-line-item-connect-line-background, #e9ecef);
}
.wcpw-nav-list.is-line .wcpw-nav-list-item-button[class] {
  grid-template-areas: "thumbnail" "text";
  text-align: center;
}
.wcpw-nav-list.is-line-horizontal .wcpw-nav-list-item {
  align-items: center;
}
.wcpw-nav-list.is-line-horizontal .wcpw-nav-list-item:not(:last-child)::after {
  content: "";
  flex: 1;
  margin: 0 0.5rem;
  border-bottom: var(--wcpw-nav-line-item-connect-line-width, 2px) var(--wcpw-nav-line-item-connect-line-style, solid) var(--wcpw-nav-line-item-connect-line-background, #e9ecef);
}
.wcpw-nav-list.is-line-horizontal .wcpw-nav-list-item:last-child {
  flex: 0;
}
.wcpw-nav-list.is-line-horizontal .wcpw-nav-list-item-button[class] {
  padding: 0;
  grid-template-areas: "thumbnail text";
}
.wcpw-nav-list.is-line-horizontal .wcpw-nav-list-item-text {
  text-align: start;
}
.wcpw-nav-list.is-progress {
  justify-content: space-between;
  align-items: center;
}
.wcpw-nav-list.is-progress .wcpw-nav-list-item-button {
  position: relative;
  flex-wrap: wrap;
  border: 0;
  color: inherit;
  background: none;
  font-weight: normal;
  word-break: normal;
}
.wcpw-nav-list.is-progress .wcpw-nav-list-item-title {
  white-space: normal;
}
.wcpw-nav-list.is-panel {
  border: 1px solid #e9ecef;
  border-radius: 0.25rem;
}
.wcpw-nav-list.is-panel .wcpw-nav-list-item {
  display: flex;
  flex: 1;
}
.wcpw-nav-list.is-panel .wcpw-nav-list-item:not(:last-child) {
  -webkit-border-end: 1px solid #e9ecef;
          border-inline-end: 1px solid #e9ecef;
}
.wcpw-nav-list.is-panel .wcpw-nav-list-item:last-child .wcpw-nav-list-item-button::after {
  display: none;
}
.wcpw-nav-list.is-panel .wcpw-nav-list-item.past .wcpw-nav-list-item-button, .wcpw-nav-list.is-panel .wcpw-nav-list-item.active .wcpw-nav-list-item-button {
  background-color: #f8f9fa;
}
.wcpw-nav-list.is-panel .wcpw-nav-list-item-button {
  position: relative;
  justify-content: center;
  border: 0;
  width: 100%;
  padding: 0.5rem;
  color: inherit;
  background: #fff;
  font-weight: normal;
  word-break: normal;
}
.wcpw-nav-list.is-panel .wcpw-nav-list-item-button[disabled] {
  opacity: initial;
}
.wcpw-nav-list.is-panel .wcpw-nav-list-item-button[disabled] .wcpw-nav-list-item-text {
  opacity: 0.65;
}
.wcpw-nav-list.is-panel .wcpw-nav-list-item-button:hover, .wcpw-nav-list.is-panel .wcpw-nav-list-item-button:focus {
  background-color: #f8f9fa;
}
.wcpw-nav-list.is-panel .wcpw-nav-list-item-button::after {
  content: "";
  position: absolute;
  inset-inline-end: 0;
  inset-block-start: 50%;
  z-index: 1;
  width: 1rem;
  height: 1rem;
  -webkit-border-before: 1px solid #e9ecef;
          border-block-start: 1px solid #e9ecef;
  -webkit-border-end: 1px solid #e9ecef;
          border-inline-end: 1px solid #e9ecef;
  background-color: inherit;
  transform: rotate(45deg) translateY(-75%);
}
[dir=rtl] .wcpw-nav-list.is-panel .wcpw-nav-list-item-button::after {
  transform: rotate(-45deg) translateY(-75%);
}

.wcpw-nav-list-item.has-thumbnail .wcpw-nav-list-item-button {
  text-align: start;
}
.wcpw-nav-list-item-button[class] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 100%;
}
.wcpw-nav-list-item-button[class][disabled] {
  opacity: 0.65;
  cursor: default;
  color: inherit;
}
.wcpw-nav-list-item-title {
  display: block;
  white-space: nowrap;
}
.wcpw-nav-list-item-sub-title {
  font-size: 0.9em;
}
.wcpw-nav-list-item-sub-title:empty {
  display: none;
}
.wcpw-nav-list-item-thumbnail {
  display: inline-block;
  width: auto;
  height: auto;
  max-width: var(--wcpw-nav-item-thumbnail-size, 2.5rem);
  max-height: var(--wcpw-nav-item-thumbnail-size, 2.5rem);
}
.wcpw-nav-progress {
  margin-bottom: 1rem;
}
.wcpw-nav-progress-bar {
  width: calc(var(--wcpw-form-progress-current, 0) / var(--wcpw-form-progress-max, 0) * 100%);
}

.wcpw-double-range {
  --wcpw-range-track-bg: #e9ecef;
  --wcpw-range-fill-bg: #0d6efd;
  --wcpw-range-track-direction: right;
  --wcpw-range-tooltip-offset: -50%;
  --wcpw-range-from-position: 0%;
  --wcpw-range-to-position: 100%;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
[dir=rtl] .wcpw-double-range {
  --wcpw-range-track-direction: left;
  --wcpw-range-tooltip-offset: 50%;
}

.wcpw-double-range.has-tooltip::before, .wcpw-double-range.has-tooltip::after {
  position: absolute;
  bottom: 100%;
  z-index: 1;
  color: var(--wcpw-range-tooltip-color, #fff);
  background-color: var(--wcpw-range-tooltip-bg, #0d6efd);
  border-radius: var(--wcpw-range-tooltip-border-radius, 0.25rem);
  padding: var(--wcpw-range-tooltip-padding, 0 0.5rem);
  white-space: nowrap;
  transform: translateX(var(--wcpw-range-tooltip-offset, -50%));
}
.wcpw-double-range.has-tooltip::before {
  content: attr(data-value-prefix) attr(data-from-value) attr(data-value-suffix);
  inset-inline-start: var(--wcpw-range-from-position);
}
.wcpw-double-range.has-tooltip::after {
  content: attr(data-value-prefix) attr(data-to-value) attr(data-value-suffix);
  inset-inline-start: var(--wcpw-range-to-position);
}
.wcpw-double-range-sliders {
  position: relative;
  flex: 100%;
}
.wcpw-double-range-slider[class] {
  display: block;
  width: 100%;
  height: 2rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.wcpw-double-range-slider[class]::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.4rem;
  border: 0 solid transparent;
  border-radius: 0.25rem;
  background: #e9ecef;
  cursor: pointer;
}
.wcpw-double-range-slider[class]::-moz-range-track {
  width: 100%;
  height: 0.4rem;
  border: 0 solid transparent;
  border-radius: 0.25rem;
  background: #e9ecef;
  cursor: pointer;
}
.wcpw-double-range-slider[class]::-ms-track {
  width: 100%;
  height: 0.4rem;
  border: 0 solid transparent;
  border-radius: 0.25rem;
  background: #e9ecef;
  cursor: pointer;
}
.wcpw-double-range-slider[class]::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  border: 1px solid #dee2e6;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px #dee2e6;
  cursor: pointer;
}
.wcpw-double-range-slider[class]::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  border: 1px solid #dee2e6;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px #dee2e6;
  cursor: pointer;
}
.wcpw-double-range-slider[class]::-ms-thumb {
  width: 1rem;
  height: 1rem;
  border: 1px solid #dee2e6;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px #dee2e6;
  cursor: pointer;
}
.wcpw-double-range-slider[class]:focus::-webkit-slider-runnable-track {
  background: #e9ecef;
}
.wcpw-double-range-slider[class]:focus::-moz-range-track {
  background: #e9ecef;
}
.wcpw-double-range-slider[class]:focus::-ms-track {
  background: #e9ecef;
}
.wcpw-double-range-slider[class]:disabled {
  cursor: not-allowed;
}
.wcpw-double-range-slider[class]:disabled::-webkit-slider-runnable-track {
  background: #dee2e6;
}
.wcpw-double-range-slider[class]:disabled::-moz-range-track {
  background: #dee2e6;
}
.wcpw-double-range-slider[class]:disabled::-ms-track {
  background: #dee2e6;
}
.wcpw-double-range-slider[class]:disabled::-webkit-slider-thumb {
  background: #e9ecef;
}
.wcpw-double-range-slider[class]:disabled::-moz-range-thumb {
  background: #e9ecef;
}
.wcpw-double-range-slider[class]:disabled::-ms-thumb {
  background: #e9ecef;
}
.wcpw-double-range-slider[class]::-webkit-slider-thumb {
  -webkit-appearance: none;
  margin-top: -0.3rem;
}
.wcpw-double-range-slider[class].is-field-from {
  --wcpw-range-offset: calc(100% - var(--wcpw-range-to-position) + ((var(--wcpw-range-to-position) - var(--wcpw-range-from-position)) * 0.5));
  --wcpw-range-left-offset: var(--wcpw-range-offset);
  --wcpw-range-right-offset: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 1;
  background-color: transparent;
  -webkit-clip-path: inset(-1rem var(--wcpw-range-left-offset) -1rem var(--wcpw-range-right-offset));
          clip-path: inset(-1rem var(--wcpw-range-left-offset) -1rem var(--wcpw-range-right-offset));
}
[dir=rtl] .wcpw-double-range-slider[class].is-field-from {
  --wcpw-range-left-offset: 0;
  --wcpw-range-right-offset: var(--wcpw-range-offset);
}

.wcpw-double-range-slider[class].is-field-from::-webkit-slider-runnable-track, .wcpw-double-range-slider[class].is-field-from:focus::-webkit-slider-runnable-track {
  background-color: transparent;
}
.wcpw-double-range-slider[class].is-field-from::-moz-range-track, .wcpw-double-range-slider[class].is-field-from:focus::-moz-range-track {
  background-color: transparent;
}
.wcpw-double-range-slider[class].is-field-from::-ms-track, .wcpw-double-range-slider[class].is-field-from:focus::-ms-track {
  background-color: transparent;
}
.wcpw-double-range-slider[class].is-field-to:not(:disabled)::-webkit-slider-runnable-track {
  background: linear-gradient(to var(--wcpw-range-track-direction, right), var(--wcpw-range-track-bg) 0%, var(--wcpw-range-track-bg) var(--wcpw-range-from-position), var(--wcpw-range-fill-bg) var(--wcpw-range-from-position), var(--wcpw-range-fill-bg) var(--wcpw-range-to-position), var(--wcpw-range-track-bg) var(--wcpw-range-to-position), var(--wcpw-range-track-bg) 100%);
}
.wcpw-double-range-slider[class].is-field-to:not(:disabled)::-moz-range-track {
  background: linear-gradient(to var(--wcpw-range-track-direction, right), var(--wcpw-range-track-bg) 0%, var(--wcpw-range-track-bg) var(--wcpw-range-from-position), var(--wcpw-range-fill-bg) var(--wcpw-range-from-position), var(--wcpw-range-fill-bg) var(--wcpw-range-to-position), var(--wcpw-range-track-bg) var(--wcpw-range-to-position), var(--wcpw-range-track-bg) 100%);
}
.wcpw-double-range-slider[class].is-field-to:not(:disabled)::-ms-track {
  background: linear-gradient(to var(--wcpw-range-track-direction, right), var(--wcpw-range-track-bg) 0%, var(--wcpw-range-track-bg) var(--wcpw-range-from-position), var(--wcpw-range-fill-bg) var(--wcpw-range-from-position), var(--wcpw-range-fill-bg) var(--wcpw-range-to-position), var(--wcpw-range-track-bg) var(--wcpw-range-to-position), var(--wcpw-range-track-bg) 100%);
}
.wcpw-double-range-field {
  flex: 1 6rem;
}

.wcpw-form[aria-expanded=false] {
  display: none;
}
.wcpw-form[disabled] {
  pointer-events: none;
  opacity: var(--wcpw-step-disabled-opacity, 0.5);
  filter: var(--wcpw-step-disabled-filter, grayscale(0.5));
}
.wcpw-form[aria-busy=true] {
  --wcpw-loading-progress: 0;
  pointer-events: none;
  opacity: var(--wcpw-loading-opacity, 0.65);
  transition: var(--wcpw-loading-transition, opacity 0.25s linear);
}
.wcpw-form + .wcpw-form {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid #dee2e6;
}
.wcpw-form-layout.is-grid, .wcpw-form-layout.is-masonry, .wcpw-form-layout.is-carousel {
  --wcpw-grid-gap: 0.5rem;
  margin-right: calc(var(--wcpw-grid-gap, 0.5rem) * -1);
  margin-left: calc(var(--wcpw-grid-gap, 0.5rem) * -1);
  --wcpw-layout-grid-col-width: var(--wcpw-layout-grid-col-width-xxs, 20rem);
}
@media (min-width: 480px) {
  .wcpw-form-layout.is-grid, .wcpw-form-layout.is-masonry, .wcpw-form-layout.is-carousel {
    --wcpw-layout-grid-col-width: var(--wcpw-layout-grid-col-width-xs, 20rem);
  }
}
@media (min-width: 576px) {
  .wcpw-form-layout.is-grid, .wcpw-form-layout.is-masonry, .wcpw-form-layout.is-carousel {
    --wcpw-layout-grid-col-width: var(--wcpw-layout-grid-col-width-sm, 20rem);
  }
}
@media (min-width: 768px) {
  .wcpw-form-layout.is-grid, .wcpw-form-layout.is-masonry, .wcpw-form-layout.is-carousel {
    --wcpw-layout-grid-col-width: var(--wcpw-layout-grid-col-width-md, 20rem);
  }
}
@media (min-width: 992px) {
  .wcpw-form-layout.is-grid, .wcpw-form-layout.is-masonry, .wcpw-form-layout.is-carousel {
    --wcpw-layout-grid-col-width: var(--wcpw-layout-grid-col-width-lg, 20rem);
  }
}
@media (min-width: 1200px) {
  .wcpw-form-layout.is-grid, .wcpw-form-layout.is-masonry, .wcpw-form-layout.is-carousel {
    --wcpw-layout-grid-col-width: var(--wcpw-layout-grid-col-width-xl, 20rem);
  }
}
@media (min-width: 1400px) {
  .wcpw-form-layout.is-grid, .wcpw-form-layout.is-masonry, .wcpw-form-layout.is-carousel {
    --wcpw-layout-grid-col-width: var(--wcpw-layout-grid-col-width-xxl, 20rem);
  }
}
.wcpw-form-layout.is-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(var(--wcpw-layout-grid-col-width), 1fr));
}
.wcpw-form-layout.is-grid > * {
  margin-right: var(--wcpw-grid-gap, 0.5rem);
  margin-left: var(--wcpw-grid-gap, 0.5rem);
}
.wcpw-form-layout.is-masonry {
  display: flex;
  flex-wrap: wrap;
}
.wcpw-form-layout.is-masonry > * {
  padding-right: var(--wcpw-grid-gap, 0.5rem);
  padding-left: var(--wcpw-grid-gap, 0.5rem);
  max-width: var(--wcpw-layout-grid-col-width, 20rem);
}
.wcpw-form-layout.is-carousel {
  display: flex;
  scroll-snap-type: x mandatory;
  overflow: auto;
  transform: translate3d(0, 0, 0);
}
.wcpw-form-layout.is-carousel::-webkit-scrollbar {
  width: 16px;
  height: 16px;
  background-color: #fff;
}
.wcpw-form-layout.is-carousel::-webkit-scrollbar-track {
  background-color: #fff;
}
.wcpw-form-layout.is-carousel::-webkit-scrollbar-track:hover {
  background-color: #fff;
}
.wcpw-form-layout.is-carousel::-webkit-scrollbar-thumb {
  border: 5px solid #fff;
  border-radius: 16px;
  background-color: #ced4da;
}
.wcpw-form-layout.is-carousel::-webkit-scrollbar-thumb:hover {
  background-color: #adb5bd;
}
.wcpw-form-layout.is-carousel::-webkit-scrollbar-button {
  display: none;
}
.wcpw-form-layout.is-carousel > * {
  scroll-snap-align: start;
  flex: 0 0 auto;
  padding-right: var(--wcpw-grid-gap, 0.5rem);
  padding-left: var(--wcpw-grid-gap, 0.5rem);
  width: var(--wcpw-grid-item-width, 20rem);
}
.wcpw-form-layout.is-table {
  border: 1px solid #dee2e6;
}
.wcpw-form-layout.is-table .wcpw-form-item-title {
  display: inline;
}
.wcpw-form-layout.is-table .wcpw-form-item-thumbnail {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
}
.wcpw-form-progress-line {
  margin: 1rem 0;
}
.wcpw-form-progress-line-bar {
  position: relative;
  width: calc(var(--wcpw-step-progress-current, 0) / var(--wcpw-step-progress-max, 1) * 100%);
  max-width: 100%;
  counter-reset: wcpw-form-progress-max var(--wcpw-step-progress-max, 0);
}
.wcpw-form-progress-line-bar[class] {
  background-color: #28a745;
}
.wcpw-form-progress-line-bar::before {
  position: relative;
  z-index: 1;
  counter-reset: wcpw-form-progress-current var(--wcpw-step-progress-current, 0);
  content: counter(wcpw-form-progress-current) " / " counter(wcpw-form-progress-max);
}
.wcpw-form-progress-line-bar::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #dc3545;
  opacity: min(1, 1 - min(var(--wcpw-step-progress-max, 0) - var(--wcpw-step-progress-current, 0) + 1, var(--wcpw-step-progress-current, 0) - var(--wcpw-step-progress-min, 0) + 1));
  transition: opacity 0.25s ease-in-out;
}
.wcpw-form-description::after {
  display: block;
  clear: both;
  content: "";
}
@media (max-width: 575.98px) {
  .wcpw-form-description {
    margin-top: 1rem;
  }
}
.wcpw-form-controls {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0 1rem;
  margin-bottom: 0.5rem;
}
.wcpw-form-controls:empty {
  display: none;
}
.wcpw-form-products-per-page, .wcpw-form-order-by {
  display: flex;
  align-items: center;
  gap: 0 0.5rem;
  margin-bottom: 0.5rem;
}
.wcpw-form-products-per-page-label, .wcpw-form-order-by-label {
  white-space: nowrap;
}
.wcpw-form-products-per-page-submit, .wcpw-form-order-by-submit {
  white-space: nowrap;
}
.wcpw-form-filter {
  grid-area: sidebar;
  align-self: start;
  flex: 100%;
  margin-bottom: 1rem;
}
.wcpw-form-filter.panel.card {
  float: none;
  width: auto;
}
.wcpw-form-filter-title[class] {
  font-size: 1.25rem;
}
.wcpw-form-filter-content[aria-expanded=false] {
  display: none;
}
.wcpw-form-filter-content:target {
  display: block;
}
.wcpw-form-filter-toggle {
  display: block;
  color: inherit;
}
.wcpw-form-filter-toggle[aria-expanded=true]::after {
  transform: rotate(-180deg);
}
.wcpw-form-filter-toggle::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-width: 5px 5px 0 5px;
  border-style: solid;
  border-color: currentColor transparent transparent transparent;
  vertical-align: middle;
  transition: transform 0.25s ease-in-out;
}
.wcpw-form-filter-field[class] {
  margin-bottom: 1rem;
}
.wcpw-form-filter-field-title[class] {
  float: none;
}
.wcpw-form-filter-field.is-image-radio .wcpw-form-filter-field-value, .wcpw-form-filter-field.is-image-checkbox .wcpw-form-filter-field-value {
  display: inline-block;
  cursor: pointer;
  margin-bottom: 0.5rem;
  vertical-align: top;
  text-align: center;
}
.wcpw-form-filter-field.is-image-radio .wcpw-form-filter-field-value-label, .wcpw-form-filter-field.is-image-checkbox .wcpw-form-filter-field-value-label {
  position: relative;
  display: block;
  cursor: pointer;
}
.wcpw-form-filter-field.is-image-radio .wcpw-form-filter-field-value-thumbnail, .wcpw-form-filter-field.is-image-checkbox .wcpw-form-filter-field-value-thumbnail {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto 0.5rem;
  padding: 0.5rem;
  border: 1px solid #e9ecef;
  border-radius: 0.25rem;
}
.wcpw-form-filter-field.is-image-radio .wcpw-form-filter-field-value-thumbnail:hover, .wcpw-form-filter-field.is-image-radio .wcpw-form-filter-field-value-thumbnail:focus, .wcpw-form-filter-field.is-image-checkbox .wcpw-form-filter-field-value-thumbnail:hover, .wcpw-form-filter-field.is-image-checkbox .wcpw-form-filter-field-value-thumbnail:focus {
  border-color: #0d6efd;
}
.wcpw-form-filter-field.is-image-radio .wcpw-form-filter-field-value-name, .wcpw-form-filter-field.is-image-checkbox .wcpw-form-filter-field-value-name {
  font-weight: normal;
}
.wcpw-form-filter-field.is-image-radio .wcpw-form-filter-field-value-name::before, .wcpw-form-filter-field.is-image-checkbox .wcpw-form-filter-field-value-name::before {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  color: #fff;
  background-color: #28a745;
  font-size: 0.75em;
  text-align: center;
  line-height: 1.25rem;
}
.wcpw-form-filter-field.is-image-radio .wcpw-form-filter-field-value-input:checked ~ .wcpw-form-filter-field-value-thumbnail, .wcpw-form-filter-field.is-image-checkbox .wcpw-form-filter-field-value-input:checked ~ .wcpw-form-filter-field-value-thumbnail {
  border-color: #0d6efd;
}
.wcpw-form-filter-field.is-image-radio .wcpw-form-filter-field-value-input:checked ~ .wcpw-form-filter-field-value-name::before, .wcpw-form-filter-field.is-image-checkbox .wcpw-form-filter-field-value-input:checked ~ .wcpw-form-filter-field-value-name::before {
  content: "\e00c";
}
.wcpw-form-filter-footer {
  text-align: right;
}
.wcpw-form-pagination {
  overflow: auto;
  white-space: nowrap;
}
.wcpw-form-pagination-list {
  width: 100%;
  margin: 0;
}
.wcpw-form-pagination-list.pagination {
  display: flex;
  justify-content: center;
}
.wcpw-form-toggle-thumbnail {
  display: inline-block;
  width: auto;
  height: auto;
  max-width: var(--wcpw-nav-item-thumbnail-size, 2.5rem);
  max-height: var(--wcpw-nav-item-thumbnail-size, 2.5rem);
}

.wcpw-form-item {
  margin-bottom: 1rem;
}
.wcpw-form-item.panel.card {
  float: none;
  width: auto;
}
.wcpw-form-item.is-not-available-variation .wcpw-form-item-price {
  opacity: 0.65;
}
.wcpw-form-item.type-1 .wcpw-form-item-body, .wcpw-form-item.type-2 .wcpw-form-item-body, .wcpw-form-item.type-3 .wcpw-form-item-body, .wcpw-form-item.type-4 .wcpw-form-item-body {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1rem;
}
.wcpw-form-item.type-1 .wcpw-form-item-thumbnail-wrapper, .wcpw-form-item.type-2 .wcpw-form-item-thumbnail-wrapper, .wcpw-form-item.type-3 .wcpw-form-item-thumbnail-wrapper, .wcpw-form-item.type-4 .wcpw-form-item-thumbnail-wrapper {
  flex: 300px;
  max-width: 100%;
}
.wcpw-form-item.type-1 .wcpw-form-item-inner, .wcpw-form-item.type-2 .wcpw-form-item-inner, .wcpw-form-item.type-3 .wcpw-form-item-inner, .wcpw-form-item.type-4 .wcpw-form-item-inner {
  flex: 10 300px;
  max-width: 100%;
}
.wcpw-form-item.type-5 .wcpw-form-item-content, .wcpw-form-item.type-9 .wcpw-form-item-content {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1rem;
}
.wcpw-form-item.type-5 .wcpw-form-item-content-thumbnail, .wcpw-form-item.type-9 .wcpw-form-item-content-thumbnail {
  flex: 300px;
  max-width: 100%;
}
.wcpw-form-item.type-5 .wcpw-form-item-content-body, .wcpw-form-item.type-9 .wcpw-form-item-content-body {
  flex: 10 300px;
  max-width: 100%;
}
.wcpw-form-item.type-5 .wcpw-form-item-link .wcpw-form-item-title::after, .wcpw-form-item.type-9 .wcpw-form-item-link .wcpw-form-item-title::after {
  content: "\e008";
}
.wcpw-form-item.type-5 .wcpw-form-item-link .wcpw-form-item-title::after, .wcpw-form-item.type-9 .wcpw-form-item-link .wcpw-form-item-title::after {
  vertical-align: baseline;
}
.wcpw-form-item.type-5 .wcpw-form-item-modal .wcpw-form-item-title, .wcpw-form-item.type-9 .wcpw-form-item-modal .wcpw-form-item-title {
  font-size: 1.5rem;
  font-weight: bolder;
}
.wcpw-form-item.type-6 {
  position: relative;
  transition: box-shadow 0.25s ease;
}
@media (min-width: 576px) {
  .wcpw-form-item.type-6:hover, .wcpw-form-item.type-6:focus, .wcpw-form-item.type-6:focus-within {
    box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05), 0 0 4px rgba(0, 0, 0, 0.1);
  }
  .wcpw-form-item.type-6:hover .wcpw-form-item-inner, .wcpw-form-item.type-6:focus .wcpw-form-item-inner, .wcpw-form-item.type-6:focus-within .wcpw-form-item-inner {
    z-index: 6;
    height: auto;
    overflow: visible;
    opacity: 1;
  }
}
@media (min-width: 576px) {
  .wcpw-form-item.type-6 .wcpw-form-item-body {
    padding: 1rem 1rem 0.5rem;
  }
}
@media (min-width: 576px) {
  .wcpw-form-item.type-6 .wcpw-form-item-inner {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 0;
    flex: 1 100%;
    height: 0;
    overflow: hidden;
    opacity: 0;
    padding: 0 1rem 1rem;
    background-color: #fff;
    box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.1), 0 0 4px rgba(0, 0, 0, 0.2);
  }
  .wcpw-form-item.type-6 .wcpw-form-item-inner::before {
    content: "";
    position: absolute;
    top: -10px;
    right: 0;
    left: 0;
    z-index: 1;
    height: 10px;
    background-color: #fff;
  }
}
.wcpw-form-item.type-6 .wcpw-form-item-check {
  margin-bottom: 0.5rem;
}
.wcpw-form-item.type-1, .wcpw-form-item.type-2, .wcpw-form-item.type-3, .wcpw-form-item.type-7 {
  transition: box-shadow 0.25s ease;
}
.wcpw-form-item.type-1:hover, .wcpw-form-item.type-1:focus, .wcpw-form-item.type-1:focus-within, .wcpw-form-item.type-2:hover, .wcpw-form-item.type-2:focus, .wcpw-form-item.type-2:focus-within, .wcpw-form-item.type-3:hover, .wcpw-form-item.type-3:focus, .wcpw-form-item.type-3:focus-within, .wcpw-form-item.type-7:hover, .wcpw-form-item.type-7:focus, .wcpw-form-item.type-7:focus-within {
  box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05), 0 0 4px rgba(0, 0, 0, 0.1);
}
.wcpw-form-item.type-7 .wcpw-form-item-body {
  padding: 1rem;
}
.wcpw-form-item.type-7 .wcpw-form-item-body, .wcpw-form-item.type-8 .wcpw-form-item-body {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.wcpw-form-item.type-7 .wcpw-form-item-thumbnail, .wcpw-form-item.type-8 .wcpw-form-item-thumbnail {
  margin-bottom: 0;
}
.wcpw-form-item.type-7 .wcpw-form-item-inner, .wcpw-form-item.type-8 .wcpw-form-item-inner {
  flex: 1;
}
.wcpw-form-item.type-7 .wcpw-form-item-variations-item, .wcpw-form-item.type-8 .wcpw-form-item-variations-item {
  display: flex;
  flex-wrap: wrap;
}
.wcpw-form-item-title[class] {
  font-size: var(--wcpw-form-item-title-font-size, 1.25rem);
}
.wcpw-form-item-thumbnail {
  position: relative;
  background-color: #fff;
}
.wcpw-form-item-thumbnail-wrapper:empty {
  display: none;
}
.wcpw-form-item-thumbnail-link {
  display: block;
}
.wcpw-form-item-thumbnail-gallery {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
}
@media (hover: none) {
  .wcpw-form-item-thumbnail-gallery {
    position: static;
    flex-direction: row;
    scroll-snap-type: x mandatory;
    overflow-x: auto;
    overflow-y: hidden;
  }
  .wcpw-form-item-thumbnail-gallery::-webkit-scrollbar {
    width: 16px;
    height: 16px;
    background-color: #fff;
  }
  .wcpw-form-item-thumbnail-gallery::-webkit-scrollbar-track {
    background-color: #fff;
  }
  .wcpw-form-item-thumbnail-gallery::-webkit-scrollbar-track:hover {
    background-color: #fff;
  }
  .wcpw-form-item-thumbnail-gallery::-webkit-scrollbar-thumb {
    border: 5px solid #fff;
    border-radius: 16px;
    background-color: #ced4da;
  }
  .wcpw-form-item-thumbnail-gallery::-webkit-scrollbar-thumb:hover {
    background-color: #adb5bd;
  }
  .wcpw-form-item-thumbnail-gallery::-webkit-scrollbar-button {
    display: none;
  }
}
.wcpw-form-item-thumbnail-gallery.has-items-count-1 .wcpw-form-item-thumbnail-gallery-item::before {
  display: none;
}
.wcpw-form-item-thumbnail-gallery::before {
  content: "";
  display: block;
  padding-bottom: 100%;
}
.wcpw-form-item-thumbnail-gallery-wrapper {
  position: relative;
}
.wcpw-form-item-thumbnail-gallery-item {
  position: relative;
  z-index: 2;
  flex: 1;
  font-size: 0;
}
@media (hover: none) {
  .wcpw-form-item-thumbnail-gallery-item {
    position: static;
    flex-shrink: 0;
    flex-basis: 100%;
    margin-right: -100%;
  }
  .wcpw-form-item-thumbnail-gallery-item::before {
    display: none;
  }
}
.wcpw-form-item-thumbnail-gallery-item:hover::before, .wcpw-form-item-thumbnail-gallery-item:focus::before, .wcpw-form-item-thumbnail-gallery-item:focus-within::before {
  color: #fff;
  border-bottom-color: #0d6efd;
}
.wcpw-form-item-thumbnail-gallery-item:hover + .wcpw-form-item-thumbnail-gallery-item-image-wrapper, .wcpw-form-item-thumbnail-gallery-item:focus + .wcpw-form-item-thumbnail-gallery-item-image-wrapper, .wcpw-form-item-thumbnail-gallery-item:focus-within + .wcpw-form-item-thumbnail-gallery-item-image-wrapper {
  display: flex;
}
.wcpw-form-item-thumbnail-gallery-item.is-static + .wcpw-form-item-thumbnail-gallery-item-image-wrapper {
  display: flex;
  z-index: 0;
}
.wcpw-form-item-thumbnail-gallery-item::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  margin: 0 1px;
  border-bottom: 3px solid #ced4da;
  transition: border-bottom-color 0.25s ease-in-out;
}
.wcpw-form-item-thumbnail-gallery-item-image {
  width: auto;
  max-height: 100%;
}
.wcpw-form-item-thumbnail-gallery-item-image-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  display: none;
  align-items: center;
  background-color: #fff;
}
@media (hover: none) {
  .wcpw-form-item-thumbnail-gallery-item-image-wrapper {
    position: static;
    display: flex;
    flex: 1 0 100%;
    scroll-behavior: smooth;
    scroll-snap-align: center;
  }
}
@media (hover: none) {
  .wcpw-form-item-thumbnail-gallery-image[class] {
    display: none;
  }
}
.wcpw-form-item-thumbnail img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: auto;
}
.wcpw-form-item-thumbnail img.wp-post-image {
  margin-bottom: 0;
}
.wcpw-form-item-variations {
  display: flex;
  flex: 100%;
  flex-wrap: wrap;
  gap: 0 1rem;
}
.wcpw-form-item-variations[class] {
  margin-bottom: 0.5rem;
}
.wcpw-form-item-variations-item {
  align-items: center;
  flex: 300px;
  gap: 0 1rem;
}
.wcpw-form-item-variations-item.form-group {
  margin-bottom: 0.5rem;
}
.wcpw-form-item-variations-item-name-wrapper, .wcpw-form-item-variations-item-value-wrapper {
  flex: 1 120px;
  float: none;
}
.wcpw-form-item-variations-item-value.form-control {
  margin-bottom: 0.5rem;
}
.wcpw-form-item-variations-item-value-wrapper[class] {
  margin: 0;
}
.wcpw-form-item-variations-item-value-thumbnail {
  margin: 2px;
}
.wcpw-form-item-variations-item-value-caption.is-image {
  padding: 0;
}
.wcpw-form-item-variations-item-value-label {
  margin-bottom: 0.5rem;
}
.wcpw-form-item-variations-item-value-input.is-hidden:focus ~ .wcpw-form-item-variations-item-value-caption {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}
.wcpw-form-item-variations-item-value-input.is-hidden:checked ~ .wcpw-form-item-variations-item-value-caption {
  color: #fff;
  border-color: #6c757d;
  background-color: #6c757d;
}
.wcpw-form-item-variations-item-value-input.is-hidden:checked ~ .wcpw-form-item-variations-item-value-caption.is-image {
  border-color: #0d6efd;
}
.wcpw-form-item-variations-item-value-input.is-hidden[disabled] ~ .wcpw-form-item-variations-item-value-caption {
  color: #6c757d;
  background-color: transparent;
  cursor: not-allowed;
  opacity: 0.65;
}
.wcpw-form-item-variations-item-value-input.is-hidden[aria-busy=true] ~ .wcpw-form-item-variations-item-value-caption {
  background-image: url("../images/stripe-animated.svg");
}
.wcpw-form-item-variations-reset {
  margin-bottom: 0.5rem;
  font-size: 0.8em;
}
.wcpw-form-item-variations-reset-wrapper {
  display: flex;
  justify-content: flex-end;
  flex: 100%;
}
.wcpw-form-item-gallery {
  --wcpw-grid-gap: 0.5rem;
  display: flex;
  overflow: auto;
  scroll-snap-type: x mandatory;
  margin: 0 calc(var(--wcpw-grid-gap, 0.5rem) * -1) 0.5rem;
  transform: translate3d(0, 0, 0);
  --wcpw-item-gallery-column-width: var(--wcpw-item-gallery-column-width-xxs, 20rem);
}
.wcpw-form-item-gallery::-webkit-scrollbar {
  width: 16px;
  height: 16px;
  background-color: #fff;
}
.wcpw-form-item-gallery::-webkit-scrollbar-track {
  background-color: #fff;
}
.wcpw-form-item-gallery::-webkit-scrollbar-track:hover {
  background-color: #fff;
}
.wcpw-form-item-gallery::-webkit-scrollbar-thumb {
  border: 5px solid #fff;
  border-radius: 16px;
  background-color: #ced4da;
}
.wcpw-form-item-gallery::-webkit-scrollbar-thumb:hover {
  background-color: #adb5bd;
}
.wcpw-form-item-gallery::-webkit-scrollbar-button {
  display: none;
}
@media (min-width: 480px) {
  .wcpw-form-item-gallery {
    --wcpw-item-gallery-column-width: var(--wcpw-item-gallery-column-width-xs, 20rem);
  }
}
@media (min-width: 576px) {
  .wcpw-form-item-gallery {
    --wcpw-item-gallery-column-width: var(--wcpw-item-gallery-column-width-sm, 20rem);
  }
}
@media (min-width: 768px) {
  .wcpw-form-item-gallery {
    --wcpw-item-gallery-column-width: var(--wcpw-item-gallery-column-width-md, 20rem);
  }
}
@media (min-width: 992px) {
  .wcpw-form-item-gallery {
    --wcpw-item-gallery-column-width: var(--wcpw-item-gallery-column-width-lg, 20rem);
  }
}
@media (min-width: 1200px) {
  .wcpw-form-item-gallery {
    --wcpw-item-gallery-column-width: var(--wcpw-item-gallery-column-width-xl, 20rem);
  }
}
@media (min-width: 1400px) {
  .wcpw-form-item-gallery {
    --wcpw-item-gallery-column-width: var(--wcpw-item-gallery-column-width-xxl, 20rem);
  }
}
.wcpw-form-item-gallery > * {
  scroll-snap-align: start;
  flex: 0 0 auto;
  padding-right: var(--wcpw-grid-gap, 0.5rem);
  padding-left: var(--wcpw-grid-gap, 0.5rem);
  width: var(--wcpw-item-gallery-column-width, 20rem);
}
.wcpw-form-item-gallery-item {
  display: block;
  text-align: center;
}
.wcpw-form-item-tags {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  z-index: 3;
  line-height: 1;
}
.wcpw-form-item-tags-value {
  color: #fff;
  background-color: #0d6efd;
}
.wcpw-form-item-link {
  display: block;
}
.wcpw-form-item-availability {
  flex: 100%;
}
.wcpw-form-item-sku[class] {
  margin-bottom: 0.5rem;
}
.wcpw-form-item-sku-name, .wcpw-form-item-sku-value {
  display: inline;
  margin: auto;
}
.wcpw-form-item-sku-name {
  font-size: 0.875rem;
  line-height: 1.5;
}
.wcpw-form-item-sku-name[class] {
  font-weight: normal;
}
.wcpw-form-item-check {
  margin-bottom: 0.25rem;
}
.wcpw-form-item-check.custom-control {
  display: inline-flex;
}
.wcpw-form-item-choose {
  display: inline-block;
  vertical-align: baseline;
}
.wcpw-form-item-choose input.is-loading {
  pointer-events: none;
  opacity: var(--wcpw-loading-opacity, 0.65);
}
.wcpw-form-item-quantity {
  display: flex;
}
.wcpw-form-item-quantity .quantity {
  display: flex;
  flex: 1;
}
.wcpw-form-item-quantity .qty {
  max-width: 4rem;
}
.wcpw-form-item-price {
  display: inline-block;
  margin-bottom: 0.25rem;
  vertical-align: middle;
  font-size: var(--wcpw-form-item-price-font-size, 1.4rem);
  font-weight: var(--wcpw-form-item-price-font-weight, 700);
  line-height: 1;
}
.wcpw-form-item-price[class] {
  font-weight: normal;
  margin-bottom: 0.25rem;
}
.wcpw-form-item-price del {
  font-size: 1rem;
  line-height: 1.5;
}
.wcpw-form-item-price ins {
  text-decoration: none;
}
.wcpw-form-item-controls {
  margin-bottom: 0.25rem;
}
.wcpw-form-item-controls.input-group {
  width: auto;
}
.wcpw-form-item-control {
  white-space: nowrap;
}
.wcpw-form-item-footer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 0 0.5rem;
  clear: both;
  margin-bottom: 0;
}

section.wcpw form.wcpw-form-item-footer.cart[class] {
  margin-bottom: 0;
}
section.wcpw form.wcpw-form-item-footer.cart[class]::before, section.wcpw form.wcpw-form-item-footer.cart[class]::after {
  display: none;
}

@media (max-width: 575.98px) {
  .wcpw-results {
    margin-top: 1rem;
  }
}
.wcpw-results-table {
  border: 1px solid #dee2e6;
}
.wcpw-results-table.table td,
.wcpw-results-table.table th {
  vertical-align: baseline;
}
.wcpw-results-table-header {
  background-color: rgba(0, 0, 0, 0.02);
}
.wcpw-results-table-header-cell.is-value, .wcpw-results-table-header-cell.is-price, .wcpw-results-table-header-cell.is-quantity, .wcpw-results-table-header-cell.is-subtotal {
  text-align: right;
}
.wcpw-results-table-body-row.is-heading {
  text-align: center;
}
.wcpw-results-table-body-cell.is-remove, .wcpw-results-table-body-cell.is-thumbnail {
  width: 1%;
}
.wcpw-results-table-body-cell.is-product {
  width: 50%;
}
.wcpw-results-table-body-cell.is-price, .wcpw-results-table-body-cell.is-quantity, .wcpw-results-table-body-cell.is-subtotal {
  width: 10%;
  text-align: right;
  text-align: end;
}
.wcpw-results-table-body-cell.is-value {
  text-align: right;
  text-align: end;
}
.wcpw-results-table-body-cell[class]:empty {
  width: 0.1%;
  padding: 0;
}
.wcpw-results-table-footer {
  background-color: rgba(0, 0, 0, 0.02);
}
.wcpw-results-table-footer-cell.is-value {
  text-align: right;
  text-align: end;
}
.wcpw-results-item-remove {
  float: none !important;
}
.wcpw-results-item-remove-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.wcpw-results-item-thumbnail {
  display: inline-block;
  width: 68px;
  vertical-align: middle;
  text-align: center;
}
.wcpw-results-item-thumbnail[class] {
  margin: 0;
}
.wcpw-results-item-thumbnail img.img-thumbnail {
  margin: 0;
}
.wcpw-results-item-title {
  display: inline-block;
}
.wcpw-results-item-data {
  display: block;
}
.wcpw-results-item-data:not(:empty) {
  margin-top: 1rem;
}
.wcpw-results-step-thumbnail {
  vertical-align: middle;
}
.wcpw-results-step-thumbnail[class] {
  display: inline-block;
  max-width: 1.5rem;
  height: auto;
}
.wcpw-results-step-name {
  padding: 0 0.5rem;
  vertical-align: middle;
}

.wcpw-search-form {
  position: relative;
}
.wcpw-search-form-input[aria-busy=true] {
  background-image: url("../images/spinner.svg");
  background-repeat: no-repeat;
  background-position: center right;
  background-size: auto 100%;
}
.wcpw-search-form-input:focus ~ .wcpw-search-form-results {
  display: block;
}
.wcpw-search-form-results {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 5;
  display: none;
  max-height: min(90vh, 40rem);
  overflow: auto;
  list-style: none;
  background-color: var(--wcpw-search-form-bg, rgba(255, 255, 255, 0.9));
  color: var(--wcpw-search-form-color, #212529);
  box-shadow: var(--wcpw-search-form-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  -webkit-backdrop-filter: var(--wcpw-search-form-backdrop-filter, blur(5px));
          backdrop-filter: var(--wcpw-search-form-backdrop-filter, blur(5px));
}
.wcpw-search-form-results[class] {
  padding: 0;
  margin: 0;
}
.wcpw-search-form-results:focus, .wcpw-search-form-results:hover {
  display: block;
}
.wcpw-search-form-results:empty {
  display: none !important;
}
.wcpw-search-form-results li {
  list-style: none;
}
.wcpw-search-form-results li + li > a {
  border-top: 1px solid #e9ecef;
}
.wcpw-search-form-results a {
  display: block;
  padding: 0.5rem 1rem;
  text-decoration: none;
}

.wcpw-checkout-description .col2-set > .col-1,
.wcpw-checkout-description .col2-set > .col-2 {
  flex-basis: auto;
  max-width: none;
  width: auto;
}

.wcpw-table-responsive-wrapper {
  container-type: inline-size;
  container-name: wcpw-table-responsive;
}
@container wcpw-table-responsive (max-width: 575.98px) {
  .wcpw-table-responsive-hidden,
  .wcpw-table-responsive th {
    display: none;
  }
  .wcpw-table-responsive td[data-th] {
    display: block;
    width: auto !important;
    border-right: 0 !important;
    border-left: 0 !important;
    text-align: left;
    text-align: start;
  }
  .wcpw-table-responsive td[data-th]:empty {
    display: none;
  }
  .wcpw-table-responsive td[data-th]::before {
    content: attr(data-th);
    display: block;
    font-weight: bolder;
  }
  .wcpw-table-responsive tr:nth-child(even),
  .wcpw-table-responsive tr:nth-child(even) td {
    background-color: var(--wcpw-table-responsive-accent-bg, rgba(0, 0, 0, 0.02));
  }
}
@media (max-width: 575.98px) {
  .wcpw-table-responsive-hidden,
  .wcpw-table-responsive th {
    display: none;
  }
  .wcpw-table-responsive td[data-th] {
    display: block;
    width: auto !important;
    border-right: 0 !important;
    border-left: 0 !important;
    text-align: left;
    text-align: start;
  }
  .wcpw-table-responsive td[data-th]:empty {
    display: none;
  }
  .wcpw-table-responsive td[data-th]::before {
    content: attr(data-th);
    display: block;
    font-weight: bolder;
  }
  .wcpw-table-responsive tr:nth-child(even),
  .wcpw-table-responsive tr:nth-child(even) td {
    background-color: var(--wcpw-table-responsive-accent-bg, rgba(0, 0, 0, 0.02));
  }
}

.wcpw-widget {
  --wcpw-widget-sticky-offset: 0;
  color: #212529;
  background-color: #fff;
  margin-bottom: 1rem;
  overflow-y: hidden;
  --wcpw-widget-sticky-offset: var(--wcpw-widget-sticky-offset-xxs, 0);
}
.wcpw-widget[class] {
  grid-area: sidebar2;
  align-self: start;
}
.wcpw-widget.panel.card {
  float: none;
  width: auto;
}
@media (min-width: 768px) {
  .wcpw-widget.is-position-top .wcpw-widget-body, .wcpw-widget.is-position-bottom .wcpw-widget-body {
    display: flex;
  }
  .wcpw-widget.is-position-top .wcpw-widget-body-item, .wcpw-widget.is-position-bottom .wcpw-widget-body-item {
    border-bottom: 0;
  }
  .wcpw-widget.is-position-top .wcpw-widget-body-item:not(:last-child), .wcpw-widget.is-position-bottom .wcpw-widget-body-item:not(:last-child) {
    border-right: 1px solid #e9ecef;
  }
  .wcpw-widget.is-position-top .wcpw-widget-body-item.is-product, .wcpw-widget.is-position-top .wcpw-widget-body-item.is-product-placeholder, .wcpw-widget.is-position-top .wcpw-widget-body-item.is-field, .wcpw-widget.is-position-top .wcpw-widget-body-item.is-thumbnail, .wcpw-widget.is-position-bottom .wcpw-widget-body-item.is-product, .wcpw-widget.is-position-bottom .wcpw-widget-body-item.is-product-placeholder, .wcpw-widget.is-position-bottom .wcpw-widget-body-item.is-field, .wcpw-widget.is-position-bottom .wcpw-widget-body-item.is-thumbnail {
    min-width: 15rem;
  }
  .wcpw-widget.is-position-top .wcpw-widget-step-nav, .wcpw-widget.is-position-bottom .wcpw-widget-step-nav {
    height: 100%;
  }
}
.wcpw-widget.is-position-top[aria-expanded=false], .wcpw-widget.is-position-bottom[aria-expanded=false] {
  display: none;
}
.wcpw-widget[aria-expanded=false].toggle-always {
  display: none;
}
@media (max-width: 479.98px) {
  .wcpw-widget[aria-expanded=false].toggle-xs {
    display: none;
  }
}
@media (max-width: 575.98px) {
  .wcpw-widget[aria-expanded=false].toggle-sm {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .wcpw-widget[aria-expanded=false].toggle-md {
    display: none;
  }
}
@media (max-width: 991.98px) {
  .wcpw-widget[aria-expanded=false].toggle-lg {
    display: none;
  }
}
@media (max-width: 1199.98px) {
  .wcpw-widget[aria-expanded=false].toggle-xl {
    display: none;
  }
}
@media (max-width: 1399.98px) {
  .wcpw-widget[aria-expanded=false].toggle-xxl {
    display: none;
  }
}
@media (min-width: 480px) {
  .wcpw-widget.toggle-xs .wcpw-widget-close {
    display: none;
  }
}
@media (min-width: 576px) {
  .wcpw-widget.toggle-sm .wcpw-widget-close {
    display: none;
  }
}
@media (min-width: 768px) {
  .wcpw-widget.toggle-md .wcpw-widget-close {
    display: none;
  }
}
@media (min-width: 992px) {
  .wcpw-widget.toggle-lg .wcpw-widget-close {
    display: none;
  }
}
@media (min-width: 1200px) {
  .wcpw-widget.toggle-xl .wcpw-widget-close {
    display: none;
  }
}
@media (min-width: 1400px) {
  .wcpw-widget.toggle-xxl .wcpw-widget-close {
    display: none;
  }
}
.wcpw-widget:target {
  display: block;
}
.wcpw-widget.is-sticky {
  position: -webkit-sticky;
  position: sticky;
  top: var(--wcpw-widget-sticky-offset, 0);
  z-index: 4;
}
.wcpw-widget.is-sticky[stuck] {
  box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
}
.wcpw-widget.is-position-bottom.is-sticky {
  top: auto;
  bottom: var(--wcpw-widget-sticky-offset, 0);
}
@media (min-width: 480px) {
  .wcpw-widget {
    --wcpw-widget-sticky-offset: var(--wcpw-widget-sticky-offset-xs, 0);
  }
}
@media (max-width: 479.98px) {
  .wcpw-widget.is-sticky-xs {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-widget-sticky-offset, 0);
    z-index: 4;
  }
  .wcpw-widget.is-sticky-xs[stuck] {
    box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (max-width: 479.98px) {
  .wcpw-widget.is-position-bottom.is-sticky-xs {
    top: auto;
    bottom: var(--wcpw-widget-sticky-offset, 0);
  }
}
@media (min-width: 480px) {
  .wcpw-widget.is-sticky-up-xs {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-widget-sticky-offset, 0);
    z-index: 4;
  }
  .wcpw-widget.is-sticky-up-xs[stuck] {
    box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (max-width: 479.98px) {
  .wcpw-widget.is-position-bottom.is-sticky-up-xs {
    top: auto;
    bottom: var(--wcpw-widget-sticky-offset, 0);
  }
}
@media (min-width: 576px) {
  .wcpw-widget {
    --wcpw-widget-sticky-offset: var(--wcpw-widget-sticky-offset-sm, 0);
  }
}
@media (max-width: 575.98px) {
  .wcpw-widget.is-sticky-sm {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-widget-sticky-offset, 0);
    z-index: 4;
  }
  .wcpw-widget.is-sticky-sm[stuck] {
    box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (max-width: 575.98px) {
  .wcpw-widget.is-position-bottom.is-sticky-sm {
    top: auto;
    bottom: var(--wcpw-widget-sticky-offset, 0);
  }
}
@media (min-width: 576px) {
  .wcpw-widget.is-sticky-up-sm {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-widget-sticky-offset, 0);
    z-index: 4;
  }
  .wcpw-widget.is-sticky-up-sm[stuck] {
    box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (max-width: 575.98px) {
  .wcpw-widget.is-position-bottom.is-sticky-up-sm {
    top: auto;
    bottom: var(--wcpw-widget-sticky-offset, 0);
  }
}
@media (min-width: 768px) {
  .wcpw-widget {
    --wcpw-widget-sticky-offset: var(--wcpw-widget-sticky-offset-md, 0);
  }
}
@media (max-width: 767.98px) {
  .wcpw-widget.is-sticky-md {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-widget-sticky-offset, 0);
    z-index: 4;
  }
  .wcpw-widget.is-sticky-md[stuck] {
    box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (max-width: 767.98px) {
  .wcpw-widget.is-position-bottom.is-sticky-md {
    top: auto;
    bottom: var(--wcpw-widget-sticky-offset, 0);
  }
}
@media (min-width: 768px) {
  .wcpw-widget.is-sticky-up-md {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-widget-sticky-offset, 0);
    z-index: 4;
  }
  .wcpw-widget.is-sticky-up-md[stuck] {
    box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (max-width: 767.98px) {
  .wcpw-widget.is-position-bottom.is-sticky-up-md {
    top: auto;
    bottom: var(--wcpw-widget-sticky-offset, 0);
  }
}
@media (min-width: 992px) {
  .wcpw-widget {
    --wcpw-widget-sticky-offset: var(--wcpw-widget-sticky-offset-lg, 0);
  }
}
@media (max-width: 991.98px) {
  .wcpw-widget.is-sticky-lg {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-widget-sticky-offset, 0);
    z-index: 4;
  }
  .wcpw-widget.is-sticky-lg[stuck] {
    box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (max-width: 991.98px) {
  .wcpw-widget.is-position-bottom.is-sticky-lg {
    top: auto;
    bottom: var(--wcpw-widget-sticky-offset, 0);
  }
}
@media (min-width: 992px) {
  .wcpw-widget.is-sticky-up-lg {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-widget-sticky-offset, 0);
    z-index: 4;
  }
  .wcpw-widget.is-sticky-up-lg[stuck] {
    box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (max-width: 991.98px) {
  .wcpw-widget.is-position-bottom.is-sticky-up-lg {
    top: auto;
    bottom: var(--wcpw-widget-sticky-offset, 0);
  }
}
@media (min-width: 1200px) {
  .wcpw-widget {
    --wcpw-widget-sticky-offset: var(--wcpw-widget-sticky-offset-xl, 0);
  }
}
@media (max-width: 1199.98px) {
  .wcpw-widget.is-sticky-xl {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-widget-sticky-offset, 0);
    z-index: 4;
  }
  .wcpw-widget.is-sticky-xl[stuck] {
    box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (max-width: 1199.98px) {
  .wcpw-widget.is-position-bottom.is-sticky-xl {
    top: auto;
    bottom: var(--wcpw-widget-sticky-offset, 0);
  }
}
@media (min-width: 1200px) {
  .wcpw-widget.is-sticky-up-xl {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-widget-sticky-offset, 0);
    z-index: 4;
  }
  .wcpw-widget.is-sticky-up-xl[stuck] {
    box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (max-width: 1199.98px) {
  .wcpw-widget.is-position-bottom.is-sticky-up-xl {
    top: auto;
    bottom: var(--wcpw-widget-sticky-offset, 0);
  }
}
@media (min-width: 1400px) {
  .wcpw-widget {
    --wcpw-widget-sticky-offset: var(--wcpw-widget-sticky-offset-xxl, 0);
  }
}
@media (max-width: 1399.98px) {
  .wcpw-widget.is-sticky-xxl {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-widget-sticky-offset, 0);
    z-index: 4;
  }
  .wcpw-widget.is-sticky-xxl[stuck] {
    box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (max-width: 1399.98px) {
  .wcpw-widget.is-position-bottom.is-sticky-xxl {
    top: auto;
    bottom: var(--wcpw-widget-sticky-offset, 0);
  }
}
@media (min-width: 1400px) {
  .wcpw-widget.is-sticky-up-xxl {
    position: -webkit-sticky;
    position: sticky;
    top: var(--wcpw-widget-sticky-offset, 0);
    z-index: 4;
  }
  .wcpw-widget.is-sticky-up-xxl[stuck] {
    box-shadow: var(--wcpw-widget-stuck-box-shadow, 0 14px 10px -10px rgba(0, 0, 0, 0.1), 0 6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (max-width: 1399.98px) {
  .wcpw-widget.is-position-bottom.is-sticky-up-xxl {
    top: auto;
    bottom: var(--wcpw-widget-sticky-offset, 0);
  }
}
.wcpw-widget-close {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
}
.wcpw-widget-item[class] {
  margin: 0;
}
.wcpw-widget-item.is-product {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.wcpw-widget-item.is-product-placeholder {
  border: 2px dashed #e9ecef;
  border-radius: 0.25rem;
  padding: 2.5rem;
}
.wcpw-widget-item.is-total-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.wcpw-widget-item.is-total-row .wcpw-widget-item-name {
  flex: 1;
}
.wcpw-widget-item-header, .wcpw-widget-item-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.5rem;
}
.wcpw-widget-item-header {
  margin-bottom: 0.5rem;
}
.wcpw-widget-item-thumbnail {
  flex: 0 0 6rem;
  max-width: 40%;
}
.wcpw-widget-item-thumbnail[class] {
  margin-bottom: 0;
}
.wcpw-widget-item-thumbnail img.img-thumbnail {
  margin: 0;
}
.wcpw-widget-item-inner {
  flex: 1;
}
.wcpw-widget-item-title[class] {
  font-size: inherit;
  margin-bottom: 0;
}
.wcpw-widget-item-data {
  clear: both;
}
.wcpw-widget-item-value[class] {
  margin: 0;
}
.wcpw-widget-item .variation {
  margin-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}
.wcpw-widget-step-thumbnail {
  display: inline-block;
  vertical-align: middle;
}
.wcpw-widget-step-thumbnail[class] {
  width: 1.5rem;
  height: auto;
}
.wcpw-widget-step-name {
  vertical-align: middle;
}
.wcpw-widget-step-nav {
  display: flex;
  justify-content: center;
  gap: 0 0.5rem;
  flex: 1;
}
.wcpw-widget-step-nav.disabled {
  cursor: default;
}
.wcpw-widget-body {
  max-height: 100vh;
  max-height: calc(100vh - 40px);
  overflow: auto;
  scroll-snap-type: x mandatory;
  list-style: none;
}
.wcpw-widget-body::-webkit-scrollbar {
  width: 16px;
  height: 16px;
  background-color: #fff;
}
.wcpw-widget-body::-webkit-scrollbar-track {
  background-color: #fff;
}
.wcpw-widget-body::-webkit-scrollbar-track:hover {
  background-color: #fff;
}
.wcpw-widget-body::-webkit-scrollbar-thumb {
  border: 5px solid #fff;
  border-radius: 16px;
  background-color: #ced4da;
}
.wcpw-widget-body::-webkit-scrollbar-thumb:hover {
  background-color: #adb5bd;
}
.wcpw-widget-body::-webkit-scrollbar-button {
  display: none;
}
.wcpw-widget-body[class] {
  margin: 0;
  padding: 0;
}
.wcpw-widget-body-item {
  scroll-snap-align: start;
  padding: 0.5rem;
}
.wcpw-widget-body-item:not(:last-child) {
  border-bottom: 1px solid #e9ecef;
}
.wcpw-widget-body-item.is-heading {
  display: flex;
  align-items: center;
  font-weight: bolder;
  gap: 0.5rem;
}
.wcpw-widget-body-item.is-heading:not(.has-nav) {
  color: #212529;
  background-color: #f8f9fa;
}
.wcpw-widget-body-item.is-product, .wcpw-widget-body-item.is-product-placeholder, .wcpw-widget-body-item.is-field, .wcpw-widget-body-item.is-thumbnail {
  flex: 0 15rem;
}
.wcpw-widget-footer-row {
  display: flex;
  border-top: 1px solid #e9ecef;
}
.wcpw-widget-footer-row[class] {
  margin: 0;
}
.wcpw-widget-footer-cell {
  padding: 0.5rem;
}
.wcpw-widget-footer-cell[class] {
  margin: 0;
}
.wcpw-widget-footer-cell.is-name {
  flex: 1;
}
.wcpw-widget .wcpw-message {
  margin-bottom: 0;
}

.wcpw-footer {
  --wcpw-footer-sticky-offset: 0;
  --wcpw-footer-sticky-offset: var(--wcpw-footer-sticky-offset-xxs, 0);
}
.wcpw-footer.is-sticky {
  position: -webkit-sticky;
  position: sticky;
  right: 0;
  bottom: var(--wcpw-footer-sticky-offset, 0);
  left: 0;
  z-index: var(--wcpw-footer-stuck-z-index, 5);
  color: var(--wcpw-footer-stuck-color, #212529);
  -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
          backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
}
.wcpw-footer.is-sticky[stuck] {
  background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
  box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
}
@media (min-width: 480px) {
  .wcpw-footer {
    --wcpw-footer-sticky-offset: var(--wcpw-footer-sticky-offset-xs, 0);
  }
}
@media (max-width: 479.98px) {
  .wcpw-footer.is-sticky-xs {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    bottom: var(--wcpw-footer-sticky-offset, 0);
    left: 0;
    z-index: 5;
    color: var(--wcpw-footer-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-footer.is-sticky-xs[stuck] {
    background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 480px) {
  .wcpw-footer.is-sticky-up-xs {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    bottom: var(--wcpw-footer-sticky-offset, 0);
    left: 0;
    z-index: 5;
    color: var(--wcpw-footer-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-footer.is-sticky-up-xs[stuck] {
    background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 576px) {
  .wcpw-footer {
    --wcpw-footer-sticky-offset: var(--wcpw-footer-sticky-offset-sm, 0);
  }
}
@media (max-width: 575.98px) {
  .wcpw-footer.is-sticky-sm {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    bottom: var(--wcpw-footer-sticky-offset, 0);
    left: 0;
    z-index: 5;
    color: var(--wcpw-footer-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-footer.is-sticky-sm[stuck] {
    background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 576px) {
  .wcpw-footer.is-sticky-up-sm {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    bottom: var(--wcpw-footer-sticky-offset, 0);
    left: 0;
    z-index: 5;
    color: var(--wcpw-footer-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-footer.is-sticky-up-sm[stuck] {
    background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 768px) {
  .wcpw-footer {
    --wcpw-footer-sticky-offset: var(--wcpw-footer-sticky-offset-md, 0);
  }
}
@media (max-width: 767.98px) {
  .wcpw-footer.is-sticky-md {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    bottom: var(--wcpw-footer-sticky-offset, 0);
    left: 0;
    z-index: 5;
    color: var(--wcpw-footer-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-footer.is-sticky-md[stuck] {
    background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 768px) {
  .wcpw-footer.is-sticky-up-md {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    bottom: var(--wcpw-footer-sticky-offset, 0);
    left: 0;
    z-index: 5;
    color: var(--wcpw-footer-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-footer.is-sticky-up-md[stuck] {
    background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 992px) {
  .wcpw-footer {
    --wcpw-footer-sticky-offset: var(--wcpw-footer-sticky-offset-lg, 0);
  }
}
@media (max-width: 991.98px) {
  .wcpw-footer.is-sticky-lg {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    bottom: var(--wcpw-footer-sticky-offset, 0);
    left: 0;
    z-index: 5;
    color: var(--wcpw-footer-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-footer.is-sticky-lg[stuck] {
    background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 992px) {
  .wcpw-footer.is-sticky-up-lg {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    bottom: var(--wcpw-footer-sticky-offset, 0);
    left: 0;
    z-index: 5;
    color: var(--wcpw-footer-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-footer.is-sticky-up-lg[stuck] {
    background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 1200px) {
  .wcpw-footer {
    --wcpw-footer-sticky-offset: var(--wcpw-footer-sticky-offset-xl, 0);
  }
}
@media (max-width: 1199.98px) {
  .wcpw-footer.is-sticky-xl {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    bottom: var(--wcpw-footer-sticky-offset, 0);
    left: 0;
    z-index: 5;
    color: var(--wcpw-footer-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-footer.is-sticky-xl[stuck] {
    background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 1200px) {
  .wcpw-footer.is-sticky-up-xl {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    bottom: var(--wcpw-footer-sticky-offset, 0);
    left: 0;
    z-index: 5;
    color: var(--wcpw-footer-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-footer.is-sticky-up-xl[stuck] {
    background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 1400px) {
  .wcpw-footer {
    --wcpw-footer-sticky-offset: var(--wcpw-footer-sticky-offset-xxl, 0);
  }
}
@media (max-width: 1399.98px) {
  .wcpw-footer.is-sticky-xxl {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    bottom: var(--wcpw-footer-sticky-offset, 0);
    left: 0;
    z-index: 5;
    color: var(--wcpw-footer-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-footer.is-sticky-xxl[stuck] {
    background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}
@media (min-width: 1400px) {
  .wcpw-footer.is-sticky-up-xxl {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    bottom: var(--wcpw-footer-sticky-offset, 0);
    left: 0;
    z-index: 5;
    color: var(--wcpw-footer-stuck-color, #212529);
    -webkit-backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
            backdrop-filter: var(--wcpw-footer-stuck-backdrop-filter, blur(3px));
  }
  .wcpw-footer.is-sticky-up-xxl[stuck] {
    background-color: var(--wcpw-footer-stuck-bg, rgba(255, 255, 255, 0.9));
    box-shadow: var(--wcpw-footer-stuck-box-shadow, 0 -14px 10px -10px rgba(0, 0, 0, 0.1), 0 -6px 4px -4px rgba(0, 0, 0, 0.2));
  }
}

.wcpw-outer-link::after {
  content: "\e008";
}
.wcpw-outer-link::after {
  vertical-align: baseline;
}
@media (max-width: 479.98px) {
  .wcpw .is-visible-up-xs {
    display: none !important;
  }
}
@media (min-width: 480px) {
  .wcpw .is-visible-xs {
    display: none !important;
  }
}
@media (max-width: 575.98px) {
  .wcpw .is-visible-up-sm {
    display: none !important;
  }
}
@media (min-width: 576px) {
  .wcpw .is-visible-sm {
    display: none !important;
  }
}
@media (max-width: 767.98px) {
  .wcpw .is-visible-up-md {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .wcpw .is-visible-md {
    display: none !important;
  }
}
@media (max-width: 991.98px) {
  .wcpw .is-visible-up-lg {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .wcpw .is-visible-lg {
    display: none !important;
  }
}
@media (max-width: 1199.98px) {
  .wcpw .is-visible-up-xl {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .wcpw .is-visible-xl {
    display: none !important;
  }
}
@media (max-width: 1399.98px) {
  .wcpw .is-visible-up-xxl {
    display: none !important;
  }
}
@media (min-width: 1400px) {
  .wcpw .is-visible-xxl {
    display: none !important;
  }
}

.wcpw {
  position: relative;
}
.wcpw fieldset {
  background-color: transparent;
}
.wcpw legend {
  margin-right: 0;
  margin-left: 0;
  background-color: transparent;
  font-size: 1.25rem;
}
.wcpw-content.is-loading {
  --wcpw-loading-progress: 0;
  pointer-events: none;
  opacity: var(--wcpw-loading-opacity, 0.65);
  transition: var(--wcpw-loading-transition, opacity 0.25s linear);
}
.wcpw-content:not(.is-loading) + .wcpw-spinner-wrapper {
  display: none;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9mcm9udC9zY3NzL2FwcC1mdWxsLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9ib290c3RyYXAvYm9vdHN0cmFwLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9ib290c3RyYXAvX3JlYm9vdC5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvYm9vdHN0cmFwL19pbWFnZXMuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL2Jvb3RzdHJhcC9fdGFibGVzLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9ib290c3RyYXAvZm9ybXMvX2xhYmVscy5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvYm9vdHN0cmFwL2Zvcm1zL19mb3JtLWNvbnRyb2wuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL2Jvb3RzdHJhcC9mb3Jtcy9fZm9ybS1zZWxlY3Quc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL2Jvb3RzdHJhcC9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvYm9vdHN0cmFwL19idXR0b24tZ3JvdXAuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL2Jvb3RzdHJhcC9fbmF2LnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9ib290c3RyYXAvX2NhcmQuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL2Jvb3RzdHJhcC92ZW5kb3IvX3Jmcy5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL2Jvb3RzdHJhcC9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL2Jvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9ib290c3RyYXAvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9ib290c3RyYXAvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL2Jvb3RzdHJhcC9fYnV0dG9ucy5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvYm9vdHN0cmFwL21peGlucy9fYnV0dG9ucy5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvYm9vdHN0cmFwL19wYWdpbmF0aW9uLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9ib290c3RyYXAvbWl4aW5zL19saXN0cy5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvYm9vdHN0cmFwL19iYWRnZS5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvYm9vdHN0cmFwL19wcm9ncmVzcy5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvYm9vdHN0cmFwL19jbG9zZS5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvYm9vdHN0cmFwL2hlbHBlcnMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvYm9vdHN0cmFwL21peGlucy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9ib290c3RyYXAvbWl4aW5zL191dGlsaXRpZXMuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL2Jvb3RzdHJhcC9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9faWNvbnMuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL19zcGlubmVyLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9fY29udHJvbHMuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL19oZWFkZXIuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL19tYWluLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9fbW9kYWwuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL19uYXYuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL19taXhpbnMuc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL19yYW5nZS5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvX2Zvcm0uc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL2Jvb3RzdHJhcC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9fZm9ybS1pdGVtLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9fcmVzdWx0cy5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvX3NlYXJjaC5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvX2NoZWNrb3V0LnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9fdGFibGUtcmVzcG9uc2l2ZS5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvX3dpZGdldC5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvX2Zvb3Rlci5zY3NzIiwiaG9tZS90cm9sbC8lRDAlOTQlRDAlQkUlRDAlQkElRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIvTG9jYWxob3N0L3dwL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1wcm9kdWN0cy13aXphcmQvc3JjL2Zyb250L3Njc3MvX3V0aWxzLnNjc3MiLCJob21lL3Ryb2xsLyVEMCU5NCVEMCVCRSVEMCVCQSVEMSU4MyVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMSU4Qi9Mb2NhbGhvc3Qvd3Avd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZC9zcmMvZnJvbnQvc2Nzcy9faW5kZXguc2NzcyIsImhvbWUvdHJvbGwvJUQwJTk0JUQwJUJFJUQwJUJBJUQxJTgzJUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQxJThCL0xvY2FsaG9zdC93cC93cC1jb250ZW50L3BsdWdpbnMvd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkL3NyYy9mcm9udC9zY3NzL19yZXNldC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTtBQ3lFQTtBQ3pFQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUNraUJBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUN0Z0JBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FDdUVBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUE2Q0U7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FDbElGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQ29KQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUN6R0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQytEQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFnQ0E7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FDN0hBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBOENBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBOzs7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOzs7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FDeUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7OztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUM5REE7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QUFxQ0o7RUFDRTtFQUNBOztBQ3RISjtFQUNFLGVRNHBCc0M7O0FQN3BCeEM7RUFDRTtFQUNBO0VBQ0E7RU04UkksV0FMSTtFTnRSUixhTjRDbUI7RU0zQ25CLGFOOENpQjtFTTdDakI7RUFDQSxrQk5WTTtFTVdOO0VBQ0E7RUFDQTtFUUdFO0VFSEUsWVZNSjs7QVVGSTtFVmhCTjtJVWlCUTs7O0FWR047RUFDRTs7QUFFQTtFQUNFOztBQUtKO0VBQ0UsT050Qk87RU11QlAsa0JOaENJO0VNaUNKLGNPa3FCb0M7RVBqcUJwQztFQUtFLFlOd0J1Qjs7QU1qQjNCO0VBRUU7O0FBSUY7RUFDRSxPTi9DTztFTWlEUDs7QUFRRjtFQUVFLGtCTi9ETztFTWtFUDs7QUFJRjtFQUNFO0VBQ0E7RUFDQSxtQk84ZjBCO0VQN2YxQixPTm5FTztFaUJSVCxrQmpCQ1M7RU00RVA7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5Qk9xUjBCO0VQcFIxQjtFVXRFRSxZVnVFRjs7QVVuRUU7RVZ1REo7SVV0RE07OztBVnFFTjtFQUNFLGtCTyt2QjhCOztBUDV2QmhDO0VBQ0U7RUFDQTtFQUNBLG1CTzJlMEI7RVAxZTFCLE9OdEZPO0VpQlJULGtCakJDUztFTStGUDtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCT2tRMEI7RVBqUTFCO0VVekZFLFlWMEZGOztBVXRGRTtFVjBFSjtJVXpFTTs7O0FWd0ZOO0VBQ0Usa0JPNHVCOEI7O0FQMXNCbEM7RUFDRSxZT29rQnNDO0VQbmtCdEM7RU1tSkksV0FMSTtFRTdRTjtBUm1JRjtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBb0NBO0VBQ0UsWU95aEJvQzs7QVA1Z0J4QztFQUNFO0VBQ0E7RUFDQSxTT2dZNEI7O0FQOVg1QjtFQUNFOztBQUdGO0VBQ0U7RVEvTEE7O0FSbU1GO0VBQ0U7RVFwTUE7O0FQZEo7RUFDRTtFQUNBO0VBQ0E7RUFFQTtFSzJSSSxXQUxJO0VMblJSLGFQeUNtQjtFT3hDbkIsYVAyQ2lCO0VPMUNqQixPUEhTO0VPSVQsa0JQYk07RU9jTjtFQUNBO0VBQ0EscUJNa3hCa0M7RU5qeEJsQyxpQk1reEJrQztFTmp4QmxDO0VPRkU7RUVIRSxZVFFKO0VBQ0E7O0FTTEk7RVRmTjtJU2dCUTs7O0FUTU47RUFDRSxjTTBxQm9DO0VOenFCcEM7RUFLRSxZTW14QjRCOztBTi93QmhDO0VBRUUsZU1vaUIwQjtFTm5pQjFCOztBQUdGO0VBRUUsa0JQekNPOztBTzhDVDtFQUNFO0VBQ0E7O0FDakRKO0VBQ0U7RUFDQSxZS3V0QndDO0VMdHRCeEMsY0t1dEJ3QztFTHR0QnhDLGVLdXRCd0M7O0FMcnRCL0I7RUFDUCxlS210QnNDO0VMbHRCdEM7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBSUo7RUFDRSxPSzhyQndDO0VMN3JCeEMsUUs2ckJ3QztFTDVyQnhDO0VBQ0E7RUFDQTtFQUNBLGtCUmhDTTtFUWlDTjtFQUNBO0VBQ0E7RUFDQSxRS2dzQndDO0VML3JCeEM7RUFDQTs7QUFHQTtFTXpCRTs7QU42QkY7RUFFRSxlS3VyQnNDOztBTHByQnhDO0VBQ0UsUUs4cUJzQzs7QUwzcUJ4QztFQUNFLGNLNG9Cb0M7RUwzb0JwQztFQUNBLFlSTXlCOztBUUgzQjtFQUNFLGtCUmpERztFUWtESCxjUmxERzs7QVFvREg7RUFJSTs7QUFJSjtFQUlJOztBQUtOO0VBQ0Usa0JSdEVHO0VRdUVILGNSdkVHO0VRNEVEOztBQUlKO0VBQ0U7RUFDQTtFQUNBLFNLc3BCdUM7O0FML29CdkM7RUFDRSxTSzhvQnFDOztBTHJtQjNDO0VBQ0U7RUFDQSxjS3VtQmdDOztBS3h2QmxDO0VBQ0U7RUFFQSxhbEIrQ21CO0VrQjlDbkIsYWxCaURpQjtFa0JoRGpCLE9sQkdTO0VrQkZUO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VDOEdBO0VQc0tJLFdBTEk7RUU3UU47RUVIRSxZRUdKOztBRkNJO0VFaEJOO0lGaUJROzs7QUVBTjtFQUNFLE9sQlZPOztBa0JlVDtFQUNFO0VBQ0EsWWxCcUN5Qjs7QWtCdkIzQjtFQUdFO0VBQ0Es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RUFFRSxPQWpEZTtFQWtEZixrQk5ZVztFTVRYLGNOU1c7O0FLZmI7RUFFRTs7QUFHRjtFQUNFOztBQUtGO0VDUUEsT05KYTtFTUtiLGNOTGE7O0FNT2I7RUFDRSxPQVRZO0VBVVosa0JOVFc7RU1VWCxjTlZXOztBTWNiO0VBQ0U7O0FBS0Y7RUFHRSxPQXJCYTtFQXNCYixrQk54Qlc7RU15QlgsY056Qlc7O0FNMkJYO0VBS0k7O0FBS047RUFFRSxPTnZDVztFTXdDWDs7QUQ1Q0Y7RUNRQSxPTkphO0VNS2IsY05MYTs7QU1PYjtFQUNFLE9BVFk7RUFVWixrQk5UVztFTVVYLGNOVlc7O0FNY2I7RUFDRTs7QUFLRjtFQUdFLE9BckJhO0VBc0JiLGtCTnhCVztFTXlCWCxjTnpCVzs7QU0yQlg7RUFLSTs7QUFLTjtFQUVFLE9OdkNXO0VNd0NYOztBRDVDRjtFQ1FBLE9OSmE7RU1LYixjTkxhOztBTU9iO0VBQ0UsT0FUWTtFQVVaLGtCTlRXO0VNVVgsY05WVzs7QU1jYjtFQUNFOztBQUtGO0VBR0UsT0FyQmE7RUFzQmIsa0JOeEJXO0VNeUJYLGNOekJXOztBTTJCWDtFQUtJOztBQUtOO0VBRUUsT052Q1c7RU13Q1g7O0FENUNGO0VDUUEsT05KYTtFTUtiLGNOTGE7O0FNT2I7RUFDRSxPQVRZO0VBVVosa0JOVFc7RU1VWCxjTlZXOztBTWNiO0VBQ0U7O0FBS0Y7RUFHRSxPQXJCYTtFQXNCYixrQk54Qlc7RU15QlgsY056Qlc7O0FNMkJYO0VBS0k7O0FBS047RUFFRSxPTnZDVztFTXdDWDs7QUQ1Q0Y7RUNRQSxPTkphO0VNS2IsY05MYTs7QU1PYjtFQUNFLE9BVFk7RUFVWixrQk5UVztFTVVYLGNOVlc7O0FNY2I7RUFDRTs7QUFLRjtFQUdFLE9BckJhO0VBc0JiLGtCTnhCVztFTXlCWCxjTnpCVzs7QU0yQlg7RUFLSTs7QUFLTjtFQUVFLE9OdkNXO0VNd0NYOztBRDVDRjtFQ1FBLE9OSmE7RU1LYixjTkxhOztBTU9iO0VBQ0UsT0FUWTtFQVVaLGtCTlRXO0VNVVgsY05WVzs7QU1jYjtFQUNFOztBQUtGO0VBR0UsT0FyQmE7RUFzQmIsa0JOeEJXO0VNeUJYLGNOekJXOztBTTJCWDtFQUtJOztBQUtOO0VBRUUsT052Q1c7RU13Q1g7O0FENUNGO0VDUUEsT05KYTtFTUtiLGNOTGE7O0FNT2I7RUFDRSxPQVRZO0VBVVosa0JOVFc7RU1VWCxjTlZXOztBTWNiO0VBQ0U7O0FBS0Y7RUFHRSxPQXJCYTtFQXNCYixrQk54Qlc7RU15QlgsY056Qlc7O0FNMkJYO0VBS0k7O0FBS047RUFFRSxPTnZDVztFTXdDWDs7QUQ1Q0Y7RUNRQSxPTkphO0VNS2IsY05MYTs7QU1PYjtFQUNFLE9BVFk7RUFVWixrQk5UVztFTVVYLGNOVlc7O0FNY2I7RUFDRTs7QUFLRjtFQUdFLE9BckJhO0VBc0JiLGtCTnhCVztFTXlCWCxjTnpCVzs7QU0yQlg7RUFLSTs7QUFLTjtFQUVFLE9OdkNXO0VNd0NYOztBRGhDSjtFQUNFLGFsQm5DbUI7RWtCb0NuQixPbEIzRUs7RWtCNEVMLGlCTHFNd0M7O0FLbk14QztFQUNFLE9Mb01zQzs7QUs1THhDO0VBRUUsT2xCL0ZPOztBa0IwR1g7RUNZRTtFUHNLSSxXQUxJO0VFN1FOOztBSW9HSjtFQ1FFO0VQc0tJLFdBTEk7RUU3UU47O0FMbEJKO0VBR0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBOztBQU9GO0FBQUE7QUFBQTtBQUFBO0VBSUU7O0FBaUJGO0FBQUE7RUFFRTs7QUFJRjtBQUFBO0VLVkU7RUFDQTs7QUxrQkY7QUFBQTtFS0xFO0VBQ0E7O0FKN0NKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUdBLE9WSks7RVVLTDtFTUpJLFlOS0o7O0FNREk7RU5OTjtJTU9ROzs7QU5FTjtFQUVFLE9HeVFzQzs7QUhwUXhDO0VBQ0UsT1Z0Qk87RVV1QlA7RUFDQTs7QUFRSjtFQUNFOztBQUVBO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFSTlCQTtFQUNBOztBSmdDQTtFQUVFLGNHczJCOEI7RUhwMkI5Qjs7QUFHRjtFQUNFLE9WNURLO0VVNkRMO0VBQ0E7O0FBSUo7QUFBQTtFQUVFLE9WbkVPO0VVb0VQLGtCVjNFSTtFVTRFSixjR3kxQmdDOztBSHQxQmxDO0VBRUU7RUl4REE7RUFDQTs7QUptRUY7RUFDRTtFQUNBO0VJL0VBOztBSm1GRjtBQUFBO0VBRUUsT1ZyR0k7RWlCQ04sa0JqQldLOztBV1hQO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBLGtCWFJNO0VXU047RUFDQTtFR01FO0FIRUY7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUxBO0VBQ0U7RUFDQTs7QUEwQko7RUFHRTtFQUNBOztBQStCRjtFQUNFO0VBQ0E7RUFFQSxrQkVtL0JrQztFRmwvQmxDOztBQUVBO0VHbkVFOztBSHdFSjtFQUNFO0VBRUEsa0JFdytCa0M7RUZ2K0JsQzs7QUFFQTtFRzlFRTs7QU1uQko7RUFDRTtFQ0dBO0VBQ0E7O0FEQUY7RUFDRTtFQUNBO0VBQ0EsT3BCT0s7RW9CTkw7RUFDQSxrQnBCUE07RW9CUU47RUpLSSxZSUpKOztBSlFJO0VJZk47SUpnQlE7OztBSVBOO0VBQ0U7RUFDQSxPUGtSc0M7RU9oUnRDLGtCcEJiTztFb0JjUCxjcEJiTzs7QW9CZ0JUO0VBQ0U7RUFDQSxPUDBRc0M7RU96UXRDLGtCcEJwQk87RW9CcUJQLFNQMmdDZ0M7RU8xZ0NoQyxZcEJ1Q3lCOztBb0JsQzNCO0VBQ0UsYVA4L0JnQzs7QU8zL0JsQztFQUNFO0VBQ0EsT3BCbkNJO0VpQkNOLGtCakJXSztFb0J5QkgsY3BCekJHOztBb0I0Qkw7RUFDRSxPcEJuQ087RW9Cb0NQO0VBQ0Esa0JwQjNDSTtFb0I0Q0osY3BCekNPOztBc0JGVDtFQUNFOztBQU9JO0VScUNKO0VBQ0E7O0FRaENJO0VSaUJKO0VBQ0E7O0FTL0JKO0VBQ0U7RUFDQTtFWDhSSSxXQUxJO0VXdlJSLGFWMmE0QjtFVTFhNUI7RUFDQSxPdkJSTTtFdUJT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WTs7O0FsQndEUjtFa0JwRFE7SUFFUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7OztBbEIyQnBCO0VrQnBCUTtJQUVRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUVBO0lBQ0k7SUFDQTs7O0FsQlFwQjtFa0IvREo7SUFvQlk7OztBbEJ3RFI7RWtCcERRO0lBRVE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUE7SUFDSTtJQUNBOzs7QWxCMkJwQjtFa0JwQlE7SUFFUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7OztBbEJRcEI7RWtCL0RKO0lBb0JZOzs7QWxCd0RSO0VrQnBEUTtJQUVRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUVBO0lBQ0k7SUFDQTs7O0FsQjJCcEI7RWtCcEJRO0lBRVE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUE7SUFDSTtJQUNBOzs7QWxCUXBCO0VrQi9ESjtJQW9CWTs7O0FsQndEUjtFa0JwRFE7SUFFUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7OztBbEIyQnBCO0VrQnBCUTtJQUVRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUVBO0lBQ0k7SUFDQTs7OztBakIrQnBCO0VBT0k7O0FrQnpGQTtFQUNJOztBbkJ1RVI7RW1CakVRO0lBRVE7OztBbkJrRGhCO0VtQjVDUTtJQUVROzs7QW5CdURoQjtFbUJqRVE7SUFFUTs7O0FuQmtEaEI7RW1CNUNRO0lBRVE7OztBbkJ1RGhCO0VtQmpFUTtJQUVROzs7QW5Ca0RoQjtFbUI1Q1E7SUFFUTs7O0FuQnVEaEI7RW1CakVRO0lBRVE7OztBbkJrRGhCO0VtQjVDUTtJQUVROzs7QW5CdURoQjtFbUJqRVE7SUFFUTs7O0FuQmtEaEI7RW1CNUNRO0lBRVE7OztBbkJ1RGhCO0VtQmpFUTtJQUVROzs7QW5Ca0RoQjtFbUI1Q1E7SUFFUTs7OztBQ0ZwQjtFQUdJOztBQ3RCSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FEaUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBSUE7RUFDSSIsInNvdXJjZXNDb250ZW50IjpbIi53Y3B3IHtcbiAgICBAaW1wb3J0IFwidmFyaWFibGVzXCI7XG4gICAgQGltcG9ydCBcImJvb3RzdHJhcC9ib290c3RyYXBcIjtcblxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xufVxuXG5AaW1wb3J0IFwiYXBwLnNjc3NcIjtcbiIsIi8vIEJvb3RzdHJhcCA1IHZhcmlhYmxlc1xuJHZhcmlhYmxlLXByZWZpeDogd2Nwdy0gIWRlZmF1bHQ7XG5cbiR3aGl0ZTogI2ZmZjtcbiRncmF5LTEwMDogI2Y4ZjlmYTtcbiRncmF5LTIwMDogI2U5ZWNlZjtcbiRncmF5LTMwMDogI2RlZTJlNjtcbiRncmF5LTQwMDogI2NlZDRkYTtcbiRncmF5LTUwMDogI2FkYjViZDtcbiRncmF5LTYwMDogIzZjNzU3ZDtcbiRncmF5LTcwMDogIzQ5NTA1NztcbiRncmF5LTgwMDogIzM0M2E0MDtcbiRncmF5LTkwMDogIzIxMjUyOTtcbiRibGFjazogIzAwMDtcblxuJGJsdWU6ICMwZDZlZmQ7XG4kaW5kaWdvOiAjNjYxMGYyO1xuJHB1cnBsZTogIzZmNDJjMTtcbiRwaW5rOiAjZDYzMzg0O1xuJHJlZDogI2RjMzU0NTtcbiRvcmFuZ2U6ICNmZDdlMTQ7XG4keWVsbG93OiAjZmZjMTA3O1xuJGdyZWVuOiAjMjhhNzQ1O1xuJHRlYWw6ICMyMGM5OTc7XG4kY3lhbjogIzE3YTJiODtcblxuJHByaW1hcnk6ICRibHVlO1xuJHNlY29uZGFyeTogJGdyYXktNjAwO1xuJHN1Y2Nlc3M6ICRncmVlbjtcbiRpbmZvOiAkY3lhbjtcbiR3YXJuaW5nOiAkeWVsbG93O1xuJGRhbmdlcjogJHJlZDtcbiRsaWdodDogJGdyYXktMTAwO1xuJGRhcms6ICRncmF5LTgwMDtcblxuJGVuYWJsZS1kYXJrLW1vZGU6IGZhbHNlICFkZWZhdWx0O1xuXG4kbWluLWNvbnRyYXN0LXJhdGlvOiAzO1xuXG4kc3BhY2VyOiAxcmVtO1xuJHNwYWNlcnM6IChcbiAgICAwOiAwLFxuICAgIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcbiAgICAzOiAkc3BhY2VyLFxuICAgIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgICA1OiAoJHNwYWNlciAqIDMpXG4pO1xuXG4kYm9keS1iZzogJHdoaXRlO1xuJGJvZHktY29sb3I6ICRncmF5LTkwMDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAxcmVtOyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtc206ICRmb250LXNpemUtYmFzZSAqIC44NzU7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiA0MDA7XG4kZm9udC13ZWlnaHQtYmFzZTogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNTtcbiRsaW5lLWhlaWdodC1zbTogMS41O1xuXG4kYm9yZGVyLXJhZGl1czogLjI1cmVtO1xuXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogJHByaW1hcnk7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6IC4ycmVtO1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KTtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yO1xuXG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdztcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogLjY1O1xuXG4kdGFibGUtYWNjZW50LWJnOiByZ2JhKCRibGFjaywgLjAyKTtcblxuLyogQm9vdHN3YXRjaCB2YXJpYWJsZXMgcGxhY2UgKi9cblxuLy8gV29vQ29tbWVyY2UgUHJvZHVjdHMgV2l6YXJkIHZhcmlhYmxlc1xuJHNwYWNlci1tZDogbWFwLWdldCgkc3BhY2VycywgMykgIWRlZmF1bHQ7XG4kc3BhY2VyLXNtOiBtYXAtZ2V0KCRzcGFjZXJzLCAyKSAhZGVmYXVsdDtcbiRzcGFjZXIteHM6IG1hcC1nZXQoJHNwYWNlcnMsIDEpICFkZWZhdWx0O1xuXG4kbG9hZGluZy1vcGFjaXR5OiAwLjY1ICFkZWZhdWx0O1xuJGxvYWRpbmctdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kbG9hZGluZy1zcGlubmVyLW1pbi12YWx1ZTogMTAgIWRlZmF1bHQ7XG4kbG9hZGluZy1zcGlubmVyLXNpemU6IDRyZW0gIWRlZmF1bHQ7XG4kbG9hZGluZy1zcGlubmVyLWJhci1zdHJva2UtY29sb3I6ICRncmF5LTkwMCAhZGVmYXVsdDtcbiRsb2FkaW5nLXNwaW5uZXItYmFyLXN0cm9rZS13aWR0aDogNiAhZGVmYXVsdDtcbiRsb2FkaW5nLXNwaW5uZXItYmFyLXN0cm9rZS1vcGFjaXR5OiAwLjMgIWRlZmF1bHQ7XG4kbG9hZGluZy1zcGlubmVyLWZpbGwtc3Ryb2tlLWNvbG9yOiAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kbG9hZGluZy1zcGlubmVyLWZpbGwtc3Ryb2tlLXdpZHRoOiA2ICFkZWZhdWx0O1xuJGxvYWRpbmctc3Bpbm5lci1maWxsLXN0cm9rZS1vcGFjaXR5OiAxICFkZWZhdWx0O1xuXG4kaGVhZGVyLXN0dWNrLXotaW5kZXg6IDUgIWRlZmF1bHQ7XG4kaGVhZGVyLXN0dWNrLWNvbG9yOiAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRoZWFkZXItc3R1Y2stYmc6IHRyYW5zcGFyZW50aXplKCRib2R5LWJnLCAwLjEpICFkZWZhdWx0O1xuJGhlYWRlci1zdHVjay1ib3gtc2hhZG93OiAwIDE0cHggMTBweCAtMTBweCByZ2JhKDAsIDAsIDAsIC4xKSwgMCA2cHggNHB4IC00cHggcmdiYSgwLCAwLCAwLCAuMikgIWRlZmF1bHQ7XG4kaGVhZGVyLXN0dWNrLWJhY2tkcm9wLWZpbHRlcjogYmx1cigzcHgpICFkZWZhdWx0O1xuXG4kZm9vdGVyLXN0dWNrLXotaW5kZXg6IDUgIWRlZmF1bHQ7XG4kZm9vdGVyLXN0dWNrLWNvbG9yOiAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRmb290ZXItc3R1Y2stYmc6IHRyYW5zcGFyZW50aXplKCRib2R5LWJnLCAwLjEpICFkZWZhdWx0O1xuJGZvb3Rlci1zdHVjay1ib3gtc2hhZG93OiAwIC0xNHB4IDEwcHggLTEwcHggcmdiYSgwLCAwLCAwLCAuMSksIDAgLTZweCA0cHggLTRweCByZ2JhKDAsIDAsIDAsIC4yKSAhZGVmYXVsdDtcbiRmb290ZXItc3R1Y2stYmFja2Ryb3AtZmlsdGVyOiBibHVyKDNweCkgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLXdpZHRoOiAxNnJlbSAhZGVmYXVsdDtcblxuJHdpZGdldC1zdHVjay1ib3gtc2hhZG93OiAwIDE0cHggMTBweCAtMTBweCByZ2JhKDAsIDAsIDAsIC4xKSwgMCA2cHggNHB4IC00cHggcmdiYSgwLCAwLCAwLCAuMikgIWRlZmF1bHQ7XG5cbiRzdGVwLWRpc2FibGVkLW9wYWNpdHk6IDAuNSAhZGVmYXVsdDtcbiRzdGVwLWRpc2FibGVkLWZpbHRlcjogZ3JheXNjYWxlKDAuNSkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1yZXNwb25zaXZlLWFjY2VudC1iZzogJHRhYmxlLWFjY2VudC1iZyAhZGVmYXVsdDtcblxuJG5hdi1zdHVjay1iZzogdHJhbnNwYXJlbnRpemUoJGJvZHktYmcsIDAuMjUpICFkZWZhdWx0O1xuJG5hdi1zdHVjay1ib3gtc2hhZG93OiAwIDE0cHggMTBweCAtMTBweCByZ2JhKDAsIDAsIDAsIC4xKSwgMCA2cHggNHB4IC00cHggcmdiYSgwLCAwLCAwLCAuMikgIWRlZmF1bHQ7XG4kbmF2LXN0dWNrLWJhY2tkcm9wLWZpbHRlcjogYmx1cigzcHgpICFkZWZhdWx0O1xuXG4kbmF2LWl0ZW0tdGh1bWJuYWlsLXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluZS1pdGVtLWNpcmNsZS1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmUtaXRlbS1jaXJjbGUtYm94LXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcbiRuYXYtbGluZS1pdGVtLWNpcmNsZS1iZzogJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1saW5lLWl0ZW0tY2lyY2xlLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluZS1pdGVtLWNpcmNsZS1mb250LXdlaWdodDogYm9sZGVyICFkZWZhdWx0O1xuJG5hdi1saW5lLWl0ZW0tZGlzYWJsZWQtY29sb3I6ICRncmF5LTYwMCAhZGVmYXVsdDtcbiRuYXYtbGluZS1pdGVtLWRpc2FibGVkLXRyYW5zZm9ybTogc2NhbGUoMC44KSAhZGVmYXVsdDtcbiRuYXYtbGluZS1pdGVtLXBhc3QtY29sb3I6ICRzdWNjZXNzICFkZWZhdWx0O1xuJG5hdi1saW5lLWl0ZW0tcGFzdC1jaXJjbGUtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kbmF2LWxpbmUtaXRlbS1wYXN0LWNpcmNsZS1iZzogJHN1Y2Nlc3MgIWRlZmF1bHQ7XG4kbmF2LWxpbmUtaXRlbS1hY3RpdmUtY29sb3I6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJG5hdi1saW5lLWl0ZW0tYWN0aXZlLWNpcmNsZS1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRuYXYtbGluZS1pdGVtLWFjdGl2ZS1jaXJjbGUtYmc6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJG5hdi1saW5lLWl0ZW0tYWN0aXZlLWNpcmNsZS1vcGFjaXR5OiAwLjc1ICFkZWZhdWx0O1xuJG5hdi1saW5lLWl0ZW0tY29ubmVjdC1saW5lLXdpZHRoOiAycHggIWRlZmF1bHQ7XG4kbmF2LWxpbmUtaXRlbS1jb25uZWN0LWxpbmUtc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJG5hdi1saW5lLWl0ZW0tY29ubmVjdC1saW5lLWJhY2tncm91bmQ6ICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGZvcm0tbmV4dC10by1mb3JtLW1hcmdpbjogJHNwYWNlci1tZCAhZGVmYXVsdDtcbiRmb3JtLW5leHQtdG8tZm9ybS1wYWRkaW5nOiAkc3BhY2VyLW1kICFkZWZhdWx0O1xuJGZvcm0tbmV4dC10by1mb3JtLWJvcmRlcjogMXB4IHNvbGlkICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGZvcm0tZmlsdGVyLWZpZWxkLXRodW1ibmFpbC1ib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZm9ybS1maWx0ZXItZmllbGQtdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGZvcm0tZmlsdGVyLWZpZWxkLXRodW1ibmFpbC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiRmb3JtLWZpbHRlci1maWVsZC10aHVtYm5haWwtYWN0aXZlLWljb24tY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kZm9ybS1maWx0ZXItZmllbGQtdGh1bWJuYWlsLWFjdGl2ZS1pY29uLWJnOiAkc3VjY2VzcyAhZGVmYXVsdDtcblxuJGZvcm0taXRlbS10aXRsZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1pdGVtLXByaWNlLWZvbnQtc2l6ZTogMS40cmVtICFkZWZhdWx0O1xuJGZvcm0taXRlbS1wcmljZS1mb250LXdlaWdodDogNzAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNjcm9sbGJhci1zaXplOiAxNnB4ICFkZWZhdWx0O1xuJGN1c3RvbS1zY3JvbGxiYXItYmc6ICNmZmYgIWRlZmF1bHQ7XG4kY3VzdG9tLXNjcm9sbGJhci10cmFjay1iZzogI2ZmZiAhZGVmYXVsdDtcbiRjdXN0b20tc2Nyb2xsYmFyLXRyYWNrLWhvdmVyLWJnOiAjZmZmICFkZWZhdWx0O1xuJGN1c3RvbS1zY3JvbGxiYXItdGh1bWItYm9yZGVyOiA1cHggc29saWQgJGN1c3RvbS1zY3JvbGxiYXItYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNjcm9sbGJhci10aHVtYi1iZzogJGdyYXktNDAwICFkZWZhdWx0O1xuJGN1c3RvbS1zY3JvbGxiYXItdGh1bWItaG92ZXItYmc6ICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJHJhbmdlLWhlaWdodDogMnJlbSAhZGVmYXVsdDtcbiRyYW5nZS1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRyYW5nZS10cmFjay1zaXplOiAwLjRyZW0gIWRlZmF1bHQ7XG4kcmFuZ2UtdHJhY2stYmc6ICRncmF5LTIwMCAhZGVmYXVsdDtcbiRyYW5nZS1maWxsLWJnOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiRyYW5nZS1kaXNhYmxlZC10cmFjay1iZzogJGdyYXktMzAwICFkZWZhdWx0O1xuJHJhbmdlLWhhbmRsZS1zaXplOiAxcmVtICFkZWZhdWx0O1xuJHJhbmdlLWhhbmRsZS1ib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kcmFuZ2UtaGFuZGxlLWJvcmRlci1yYWRpdXM6IDUwJSAhZGVmYXVsdDtcbiRyYW5nZS1oYW5kbGUtYmc6ICNmZmYgIWRlZmF1bHQ7XG4kcmFuZ2UtZGlzYWJsZWQtaGFuZGxlLWJnOiAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcmFuZ2UtaGFuZGxlLXNoYWRvdzogMCAxcHggM3B4ICRncmF5LTMwMCAhZGVmYXVsdDtcbiRyYW5nZS10b29sdGlwLWJnOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiRyYW5nZS10b29sdGlwLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJHJhbmdlLXRvb2x0aXAtcGFkZGluZzogMCAwLjVyZW0gIWRlZmF1bHQ7XG4kcmFuZ2UtdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJHNlYXJjaC1mb3JtLWNvbG9yOiAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRzZWFyY2gtZm9ybS1iZzogdHJhbnNwYXJlbnRpemUoJGJvZHktYmcsIDAuMSkgIWRlZmF1bHQ7XG4kc2VhcmNoLWZvcm0tYm94LXNoYWRvdzogMCAxNHB4IDEwcHggLTEwcHggcmdiYSgwLCAwLCAwLCAuMSksIDAgNnB4IDRweCAtNHB4IHJnYmEoMCwgMCwgMCwgLjIpICFkZWZhdWx0O1xuJHNlYXJjaC1mb3JtLWJhY2tkcm9wLWZpbHRlcjogYmx1cig1cHgpICFkZWZhdWx0O1xuXG4kbW9kYWwtYW5pbWF0aW9uOiB3Y3B3LW1vZGFsIGZvcndhcmRzIDAuMjVzICFkZWZhdWx0O1xuJG1vZGFsLWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLWFuaW1hdGlvbjogd2Nwdy1tb2RhbC1iYWNrZHJvcCBmb3J3YXJkcyAwLjI1cyAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDFweCkgIWRlZmF1bHQ7XG4iLCIvKiFcbiAqIEJvb3RzdHJhcCB2NS4wLjIgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcbiAqL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW1wb3J0LXN0YWNrXG4vLyBDb25maWd1cmF0aW9uXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzXCI7XG5cbi8vIExheW91dCAmIGNvbXBvbmVudHNcbi8vIEBpbXBvcnQgXCJyb290XCI7XG5AaW1wb3J0IFwicmVib290XCI7XG4vLyBAaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuLy8gQGltcG9ydCBcImNvbnRhaW5lcnNcIjtcbi8vIEBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG4vLyBAaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbi8vIEBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcIm5hdlwiO1xuLy8gQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNhcmRcIjtcbi8vIEBpbXBvcnQgXCJhY2NvcmRpb25cIjtcbi8vIEBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJhZGdlXCI7XG4vLyBAaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuLy8gQGltcG9ydCBcImxpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjbG9zZVwiO1xuLy8gQGltcG9ydCBcInRvYXN0c1wiO1xuLy8gQGltcG9ydCBcIm1vZGFsXCI7XG4vLyBAaW1wb3J0IFwidG9vbHRpcFwiO1xuLy8gQGltcG9ydCBcInBvcG92ZXJcIjtcbi8vIEBpbXBvcnQgXCJjYXJvdXNlbFwiO1xuLy8gQGltcG9ydCBcInNwaW5uZXJzXCI7XG4vLyBAaW1wb3J0IFwib2ZmY2FudmFzXCI7XG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgXCJoZWxwZXJzXCI7XG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcInV0aWxpdGllcy9hcGlcIjtcbi8vIHNjc3MtZG9jcy1lbmQgaW1wb3J0LXN0YWNrXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblxuLy8gUm9vdFxuLy9cbi8vIEFiaWxpdHkgdG8gdGhlIHZhbHVlIG9mIHRoZSByb290IGZvbnQgc2l6ZXMsIGFmZmVjdGluZyB0aGUgdmFsdWUgb2YgYHJlbWAuXG4vLyBudWxsIGJ5IGRlZmF1bHQsIHRodXMgbm90aGluZyBpcyBnZW5lcmF0ZWQuXG5cbi8vOnJvb3Qge1xuLy8gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1yb290O1xuLy9cbi8vICBAaWYgJGVuYWJsZS1zbW9vdGgtc2Nyb2xsIHtcbi8vICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuLy8gICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbi8vICAgIH1cbi8vICB9XG4vL31cblxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4vLyA0LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuLy9ib2R5IHtcbi8vICBtYXJnaW46IDA7IC8vIDFcbi8vICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4vLyAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4vLyAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuLy8gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbi8vICBjb2xvcjogJGJvZHktY29sb3I7XG4vLyAgdGV4dC1hbGlnbjogJGJvZHktdGV4dC1hbGlnbjtcbi8vICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZzsgLy8gMlxuLy8gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gM1xuLy8gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA0XG4vL31cblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gUmVzZXQgRmlyZWZveCdzIGdyYXkgY29sb3Jcbi8vIDIuIFNldCBjb3JyZWN0IGhlaWdodCBhbmQgcHJldmVudCB0aGUgYHNpemVgIGF0dHJpYnV0ZSB0byBtYWtlIHRoZSBgaHJgIGxvb2sgbGlrZSBhbiBpbnB1dCBmaWVsZFxuXG4vL2hyIHtcbi8vICBtYXJnaW46ICRoci1tYXJnaW4teSAwO1xuLy8gIGNvbG9yOiAkaHItY29sb3I7IC8vIDFcbi8vICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4vLyAgYm9yZGVyOiAwO1xuLy8gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xuLy99XG4vL1xuLy9ocjpub3QoW3NpemVdKSB7XG4vLyAgaGVpZ2h0OiAkaHItaGVpZ2h0OyAvLyAyXG4vL31cblxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gMS4gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vICAgIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyAgICBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG5cbiVoZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogJGhlYWRpbmdzLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxIHtcbiAgLy9AZXh0ZW5kICVoZWFkaW5nO1xuICAvL0BpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTtcbn1cblxuaDIge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG59XG5cbmgzIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemUpO1xufVxuXG5oNCB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbn1cblxuaDUge1xuICAvL0BleHRlbmQgJWhlYWRpbmc7XG4gIC8vQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemUpO1xufVxuXG5oNiB7XG4gIC8vQGV4dGVuZCAlaGVhZGluZztcbiAgLy9AaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtYnMtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gNC4gUHJldmVudCB0aGUgdGV4dC1kZWNvcmF0aW9uIHRvIGJlIHNraXBwZWQuXG5cbi8vYWJiclt0aXRsZV0sXG4vL2FiYnJbZGF0YS1icy1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4vLyAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4vLyAgY3Vyc29yOiBoZWxwOyAvLyAzXG4vLyAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA0XG4vL31cblxuXG4vLyBBZGRyZXNzXG5cbi8vYWRkcmVzcyB7XG4vLyAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbi8vICBmb250LXN0eWxlOiBub3JtYWw7XG4vLyAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4vL31cblxuXG4vLyBMaXN0c1xuXG4vL29sLFxudWwge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG5cbi8vb2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICAvL21hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuLy8gMS4gVW5kbyBicm93c2VyIGRlZmF1bHRcblxuZGQge1xuICBtYXJnaW46IDAgMCAuNXJlbTsgLy8gMVxufVxuXG5cbi8vIEJsb2NrcXVvdGVcblxuLy9ibG9ja3F1b3RlIHtcbi8vICBtYXJnaW46IDAgMCAxcmVtO1xuLy99XG5cblxuLy8gU3Ryb25nXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxuXG5iLFxuc3Ryb25nIHtcbiAgLy9mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjtcbn1cblxuXG4vLyBTbWFsbFxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG5cbnNtYWxsIHtcbiAgLy9AaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gTWFya1xuXG4vL21hcmsge1xuLy8gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4vLyAgYmFja2dyb3VuZC1jb2xvcjogJG1hcmstYmc7XG4vL31cblxuXG4vLyBTdWIgYW5kIFN1cFxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuXG4vL3N1Yixcbi8vc3VwIHtcbi8vICBwb3NpdGlvbjogcmVsYXRpdmU7XG4vLyAgQGluY2x1ZGUgZm9udC1zaXplKCRzdWItc3VwLWZvbnQtc2l6ZSk7XG4vLyAgbGluZS1oZWlnaHQ6IDA7XG4vLyAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuLy99XG4vL1xuLy9zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuLy9zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy8gTGlua3NcblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cbn1cblxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpLlxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTk0MDJcblxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSkge1xuICAmLFxuICAmOmhvdmVyIHtcbiAgICAvL2NvbG9yOiBpbmhlcml0O1xuICAgIC8vdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gQ29kZVxuXG4vL3ByZSxcbi8vY29kZSxcbi8va2JkLFxuLy9zYW1wIHtcbi8vICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWNvZGU7XG4vLyAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbi8vICBkaXJlY3Rpb246IGx0ciAje1wiLyogcnRsOmlnbm9yZSAqL1wifTtcbi8vICB1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGU7XG4vL31cbi8vXG4vLy8vIDEuIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuLy8vLyAyLiBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuLy8vLyAzLiBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcbi8vXG4vL3ByZSB7XG4vLyAgZGlzcGxheTogYmxvY2s7XG4vLyAgbWFyZ2luLXRvcDogMDsgLy8gMVxuLy8gIG1hcmdpbi1ib3R0b206IDFyZW07IC8vIDJcbi8vICBvdmVyZmxvdzogYXV0bzsgLy8gM1xuLy8gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuLy8gIGNvbG9yOiAkcHJlLWNvbG9yO1xuLy9cbi8vICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuLy8gIGNvZGUge1xuLy8gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuLy8gICAgY29sb3I6IGluaGVyaXQ7XG4vLyAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4vLyAgfVxuLy99XG4vL1xuLy9jb2RlIHtcbi8vICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbi8vICBjb2xvcjogJGNvZGUtY29sb3I7XG4vLyAgd29yZC13cmFwOiBicmVhay13b3JkO1xuLy9cbi8vICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbi8vICBhID4gJiB7XG4vLyAgICBjb2xvcjogaW5oZXJpdDtcbi8vICB9XG4vL31cbi8vXG4vL2tiZCB7XG4vLyAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4vLyAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbi8vICBjb2xvcjogJGtiZC1jb2xvcjtcbi8vICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuLy8gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuLy9cbi8vICBrYmQge1xuLy8gICAgcGFkZGluZzogMDtcbi8vICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pO1xuLy8gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuLy8gIH1cbi8vfVxuXG5cbi8vIEZpZ3VyZXNcbi8vXG4vLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG5cbmltZyxcbnN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xuXG50YWJsZSB7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vLyAxLiBSZW1vdmVzIGZvbnQtd2VpZ2h0IGJvbGQgYnkgaW5oZXJpdGluZ1xuLy8gMi4gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBgdGV4dC1hbGlnbmAuXG4vLyAzLiBGaXggYWxpZ25tZW50IGZvciBTYWZhcmlcblxudGgge1xuICBmb250LXdlaWdodDogJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OyAvLyAxXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIDJcbiAgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQ7IC8vIDNcbn1cblxudGhlYWQsXG50Ym9keSxcbnRmb290LFxudHIsXG50ZCxcbnRoIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG59XG5cblxuLy8gRm9ybXNcbi8vXG4vLyAxLiBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gMVxufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIEV4cGxpY2l0bHkgcmVtb3ZlIGZvY3VzIG91dGxpbmUgaW4gQ2hyb21pdW0gd2hlbiBpdCBzaG91bGRuJ3QgYmVcbi8vIHZpc2libGUgKGUuZy4gYXMgcmVzdWx0IG9mIG1vdXNlIGNsaWNrIG9yIHRvdWNoIHRhcCkuIEl0IGFscmVhZHlcbi8vIHNob3VsZCBiZSBkb2luZyB0aGlzIGF1dG9tYXRpY2FsbHksIGJ1dCBzZWVtcyB0byBjdXJyZW50bHkgYmVcbi8vIGNvbmZ1c2VkIGFuZCBhcHBsaWVzIGl0cyB2ZXJ5IHZpc2libGUgdHdvLXRvbmUgb3V0bGluZSBhbnl3YXkuXG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnNlbGVjdCB7XG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbiAgd29yZC13cmFwOiBub3JtYWw7XG5cbiAgLy8gVW5kbyB0aGUgb3BhY2l0eSBjaGFuZ2UgZnJvbSBDaHJvbWVcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vLyBSZW1vdmUgdGhlIGRyb3Bkb3duIGFycm93IGluIENocm9tZSBmcm9tIGlucHV0cyBidWlsdCB3aXRoIGRhdGFsaXN0cy5cbi8vIFNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvNTQ5OTcxMThcblxuW2xpc3RdOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAzLiBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcblxuICBAaWYgJGVuYWJsZS1idXR0b24tcG9pbnRlcnMge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cblxuOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vLyAxLiBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDsgLy8gMVxufVxuXG4vLyAxLiBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuLy8gICAgdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4vLyAgICBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuLy8gICAgYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuLy8gMi4gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG5cbmZpZWxkc2V0IHtcbiAgbWluLXdpZHRoOiAwOyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAyXG4gIGJvcmRlcjogMDsgLy8gMlxufVxuXG4vLyAxLiBCeSB1c2luZyBgZmxvYXQ6IGxlZnRgLCB0aGUgbGVnZW5kIHdpbGwgYmVoYXZlIGxpa2UgYSBibG9jayBlbGVtZW50LlxuLy8gICAgVGhpcyB3YXkgdGhlIGJvcmRlciBvZiBhIGZpZWxkc2V0IHdyYXBzIGFyb3VuZCB0aGUgbGVnZW5kIGlmIHByZXNlbnQuXG4vLyAyLiBGaXggd3JhcHBpbmcgYnVnLlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjk3MTJcblxubGVnZW5kIHtcbiAgZmxvYXQ6IGxlZnQ7IC8vIDFcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRsZWdlbmQtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWdlbmQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWdlbmQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXG4gICsgKiB7XG4gICAgY2xlYXI6IGxlZnQ7IC8vIDJcbiAgfVxufVxuXG4vLyBGaXggaGVpZ2h0IG9mIGlucHV0cyB3aXRoIGEgdHlwZSBvZiBkYXRldGltZS1sb2NhbCwgZGF0ZSwgbW9udGgsIHdlZWssIG9yIHRpbWVcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4ODQyXG5cbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtdGV4dCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZSxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQge1xuICBwYWRkaW5nOiAwO1xufVxuXG46Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuLy8gMi4gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gICAgYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyAgICBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyAgICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC8vb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDFcbiAgLy8td2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMlxufVxuXG4vLyAxLiBBIGZldyBpbnB1dCB0eXBlcyBzaG91bGQgc3RheSBMVFJcbi8vIFNlZSBodHRwczovL3J0bHN0eWxpbmcuY29tL3Bvc3RzL3J0bC1zdHlsaW5nI2Zvcm0taW5wdXRzXG4vLyAyLiBSVEwgb25seSBvdXRwdXRcbi8vIFNlZSBodHRwczovL3J0bGNzcy5jb20vbGVhcm4vdXNhZ2UtZ3VpZGUvY29udHJvbC1kaXJlY3RpdmVzLyNyYXdcblxuLyogcnRsOnJhdzpcblt0eXBlPVwidGVsXCJdLFxuW3R5cGU9XCJ1cmxcIl0sXG5bdHlwZT1cImVtYWlsXCJdLFxuW3R5cGU9XCJudW1iZXJcIl0ge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbiovXG5cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBSZW1vdmUgcGFkZGluZyBhcm91bmQgY29sb3IgcGlja2VycyBpbiB3ZWJraXQgYnJvd3NlcnNcblxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuXG4vLyBJbmhlcml0IGZvbnQgZmFtaWx5IGFuZCBsaW5lIGhlaWdodCBmb3IgZmlsZSBpbnB1dCBidXR0b25zXG5cbjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBmb250OiBpbmhlcml0O1xufVxuXG4vLyAxLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YFxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDFcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG5cbi8vb3V0cHV0IHtcbi8vICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vL31cbi8vXG4vLy8vIFJlbW92ZSBib3JkZXIgZnJvbSBpZnJhbWVcbi8vXG4vL2lmcmFtZSB7XG4vLyAgYm9yZGVyOiAwO1xuLy99XG4vL1xuLy8vLyBTdW1tYXJ5XG4vLy8vXG4vLy8vIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuLy9cbi8vc3VtbWFyeSB7XG4vLyAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyAxXG4vLyAgY3Vyc29yOiBwb2ludGVyO1xuLy99XG5cblxuLy8gUHJvZ3Jlc3Ncbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG4vL3Byb2dyZXNzIHtcbi8vICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4vL31cblxuXG4vLyBIaWRkZW4gYXR0cmlidXRlXG4vL1xuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZS5cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICAvL0BpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4vKi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyICogLjU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59Ki9cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWJnOiAjeyR0YWJsZS1iZ307XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZzogI3skdGFibGUtYWNjZW50LWJnfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3skdGFibGUtc3RyaXBlZC1jb2xvcn07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtYmc6ICN7JHRhYmxlLXN0cmlwZWQtYmd9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY3RpdmUtY29sb3I6ICN7JHRhYmxlLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skdGFibGUtYWN0aXZlLWJnfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtaG92ZXItY29sb3I6ICN7JHRhYmxlLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JHRhYmxlLWhvdmVyLWJnfTtcblxuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgY29sb3I6ICR0YWJsZS1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246ICR0YWJsZS1jZWxsLXZlcnRpY2FsLWFsaWduO1xuICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgLy8gVGFyZ2V0IHRoICYgdGRcbiAgLy8gV2UgbmVlZCB0aGUgY2hpbGQgY29tYmluYXRvciB0byBwcmV2ZW50IHN0eWxlcyBsZWFraW5nIHRvIG5lc3RlZCB0YWJsZXMgd2hpY2ggZG9lc24ndCBoYXZlIGEgYC50YWJsZWAgY2xhc3MuXG4gIC8vIFdlIHVzZSB0aGUgdW5pdmVyc2FsIHNlbGVjdG9ycyBoZXJlIHRvIHNpbXBsaWZ5IHRoZSBzZWxlY3RvciAoZWxzZSB3ZSB3b3VsZCBuZWVkIDYgZGlmZmVyZW50IHNlbGVjdG9ycykuXG4gIC8vIEFub3RoZXIgYWR2YW50YWdlIGlzIHRoYXQgdGhpcyBnZW5lcmF0ZXMgbGVzcyBjb2RlIGFuZCBtYWtlcyB0aGUgc2VsZWN0b3IgbGVzcyBzcGVjaWZpYyBtYWtpbmcgaXQgZWFzaWVyIHRvIG92ZXJyaWRlLlxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15ICR0YWJsZS1jZWxsLXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYmcpO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY2NlbnQtYmcpO1xuICB9XG5cbiAgPiB0Ym9keSB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG4gIH1cblxuICA+IHRoZWFkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG5cbiAgLy8gSGlnaGxpZ2h0IGJvcmRlciBjb2xvciBiZXR3ZWVuIHRoZWFkLCB0Ym9keSBhbmQgdGZvb3QuXG4gID4gOm5vdCg6bGFzdC1jaGlsZCkgPiA6bGFzdC1jaGlsZCA+ICoge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0YWJsZS1ncm91cC1zZXBhcmF0b3ItY29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ2hhbmdlIHBsYWNlbWVudCBvZiBjYXB0aW9ucyB3aXRoIGEgY2xhc3Ncbi8vXG5cbi5jYXB0aW9uLXRvcCB7XG4gIC8vIGNhcHRpb24tc2lkZTogdG9wO1xufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtICR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG4vL1xuLy8gV2hlbiBib3JkZXJzIGFyZSBhZGRlZCBvbiBhbGwgc2lkZXMgb2YgdGhlIGNlbGxzLCB0aGUgY29ybmVycyBjYW4gcmVuZGVyIG9kZCB3aGVuXG4vLyB0aGVzZSBib3JkZXJzIGRvIG5vdCBoYXZlIHRoZSBzYW1lIGNvbG9yIG9yIGlmIHRoZXkgYXJlIHNlbWktdHJhbnNwYXJlbnQuXG4vLyBUaGVyZWZvciB3ZSBhZGQgdG9wIGFuZCBib3JkZXIgYm90dG9tcyB0byB0aGUgYHRyYHMgYW5kIGxlZnQgYW5kIHJpZ2h0IGJvcmRlcnNcbi8vIHRvIHRoZSBgdGRgcyBvciBgdGhgc1xuXG4udGFibGUtYm9yZGVyZWQge1xuICA+IDpub3QoY2FwdGlvbikgPiAqIHtcbiAgICBib3JkZXItd2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGggMDtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gICAgPiAqIHtcbiAgICAgIGJvcmRlci13aWR0aDogMCAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICAvL2JvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cbn1cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4vKi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWNjZW50LWJnOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gICAgY29sb3I6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgfVxufVxuXG4vLyBBY3RpdmUgdGFibGVcbi8vXG4vLyBUaGUgYC50YWJsZS1hY3RpdmVgIGNsYXNzIGNhbiBiZSBhZGRlZCB0byBoaWdobGlnaHQgcm93cyBvciBjZWxsc1xuXG4udGFibGUtYWN0aXZlIHtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWNjZW50LWJnOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWJnKTtcbiAgY29sb3I6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY3RpdmUtY29sb3IpO1xufSovXG5cbi8vIEhvdmVyIGVmZmVjdFxuLy9cbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcblxuLnRhYmxlLWhvdmVyIHtcbiAgPiB0Ym9keSA+IHRyOmhvdmVyIHtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY2NlbnQtYmc6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1iZyk7XG4gICAgY29sb3I6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1jb2xvcik7XG4gIH1cbn1cblxuXG4vLyBUYWJsZSB2YXJpYW50c1xuLy9cbi8vIFRhYmxlIHZhcmlhbnRzIHNldCB0aGUgdGFibGUgY2VsbCBiYWNrZ3JvdW5kcywgYm9yZGVyIGNvbG9yc1xuLy8gYW5kIHRoZSBjb2xvcnMgb2YgdGhlIHN0cmlwZWQsIGhvdmVyZWQgJiBhY3RpdmUgdGFibGVzXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0YWJsZS12YXJpYW50cyB7XG4gIC8vQGluY2x1ZGUgdGFibGUtdmFyaWFudCgkY29sb3IsICR2YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgLypAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAudGFibGUtcmVzcG9uc2l2ZSN7JGluZml4fSB7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIH1cbiAgfSovXG59XG4iLCIvL1xuLy8gTGFiZWxzXG4vL1xuXG4uZm9ybS1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWxhYmVsLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1sYWJlbC1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiAkZm9ybS1sYWJlbC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgKG9yIGxlZ2VuZClcbi8vIHRleHQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cbi8qLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xufSovXG4iLCIvL1xuLy8gR2VuZXJhbCBmb3JtIGNvbnRyb2xzIChwbHVzIGEgZmV3IHNwZWNpZmljIGhpZ2gtbGV2ZWwgaW50ZXJ2ZW50aW9ucylcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiZmlsZVwiXSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gcHJldmVudCBwc2V1ZG8gZWxlbWVudCBidXR0b24gb3ZlcmxhcFxuXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBBZGQgc29tZSBoZWlnaHQgdG8gZGF0ZSBpbnB1dHMgb24gaU9TXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjMzMDdcbiAgLy8gVE9ETzogd2UgY2FuIHJlbW92ZSB0aGlzIHdvcmthcm91bmQgb25jZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4OTU5IGlzIHJlc29sdmVkXG4gICY6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSB7XG4gICAgLy8gTXVsdGlwbHkgbGluZS1oZWlnaHQgYnkgMWVtIGlmIGl0IGhhcyBubyB1bml0XG4gICAgaGVpZ2h0OiBpZih1bml0KCRpbnB1dC1saW5lLWhlaWdodCkgPT0gXCJcIiwgJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtbGluZS1oZWlnaHQpO1xuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJjpkaXNhYmxlZCxcbiAgJltyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRmlsZSBpbnB1dCBidXR0b25zIHRoZW1pbmdcbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteSkgKC0kaW5wdXQtcGFkZGluZy14KTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogJGZvcm0tZmlsZS1idXR0b24tY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tZmlsZS1idXR0b24tYmcpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcbiAgfVxuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc7XG4gIH1cblxuICAmOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15KSAoLSRpbnB1dC1wYWRkaW5nLXgpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14O1xuICAgIGNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4vLy5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbi8vICBkaXNwbGF5OiBibG9jaztcbi8vICB3aWR0aDogMTAwJTtcbi8vICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XG4vLyAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4vLyAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbi8vICBjb2xvcjogJGlucHV0LXBsYWludGV4dC1jb2xvcjtcbi8vICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbi8vICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuLy8gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuLy9cbi8vICAmLmZvcm0tY29udHJvbC1zbSxcbi8vICAmLmZvcm0tY29udHJvbC1sZyB7XG4vLyAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuLy8gICAgcGFkZGluZy1sZWZ0OiAwO1xuLy8gIH1cbi8vfVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAgLyomOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LXNtKSAoLSRpbnB1dC1wYWRkaW5nLXgtc20pO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LXNtO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1zbSkgKC0kaW5wdXQtcGFkZGluZy14LXNtKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgfSovXG59XG4vKlxuLmZvcm0tY29udHJvbC1sZyB7XG4gIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcblxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LWxnKSAoLSRpbnB1dC1wYWRkaW5nLXgtbGcpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LWxnO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1sZykgKC0kaW5wdXQtcGFkZGluZy14LWxnKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1sZztcbiAgfVxufSovXG5cbi8vIE1ha2Ugc3VyZSB0ZXh0YXJlYXMgZG9uJ3Qgc2hyaW5rIHRvbyBtdWNoIHdoZW4gcmVzaXplZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjkxMjRcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxudGV4dGFyZWEge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtIHtcbiAgICAvL21pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgLy9taW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICB9XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4uZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgbWF4LXdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IGF1dG87IC8vIE92ZXJyaWRlIGZpeGVkIGJyb3dzZXIgaGVpZ2h0XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXk7XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6Oi1tb3otY29sb3Itc3dhdGNoIHtcbiAgICBoZWlnaHQ6IGlmKHVuaXQoJGlucHV0LWxpbmUtaGVpZ2h0KSA9PSBcIlwiLCAkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1saW5lLWhlaWdodCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XG4gICAgaGVpZ2h0OiBpZih1bml0KCRpbnB1dC1saW5lLWhlaWdodCkgPT0gXCJcIiwgJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtbGluZS1oZWlnaHQpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG4iLCIvLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuXG4uZm9ybS1zZWxlY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LXBhZGRpbmcteDtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcbiAgLW1vei1wYWRkaW5nLXN0YXJ0OiBzdWJ0cmFjdCgkZm9ybS1zZWxlY3QtcGFkZGluZy14LCAzcHgpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8zMjYzNlxuICBmb250LWZhbWlseTogJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1iZztcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplO1xuICBib3JkZXI6ICRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXNlbGVjdC10cmFuc2l0aW9uKTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3csICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIH1cbn1cblxuLyouZm9ybS1zZWxlY3Qtc20ge1xuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtc20pO1xufVxuXG4uZm9ybS1zZWxlY3QtbGcge1xuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtbGcpO1xufSovXG4iLCIvL1xuLy8gQ2hlY2svcmFkaW9cbi8vXG5cbi5mb3JtLWNoZWNrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTtcblxuICBAYXQtcm9vdCBbZGlyPVwicnRsXCJdICYge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgbGVmdDogYXV0bztcbiAgICB6LWluZGV4OiAxOyAvLyBib290c3RyYXAgNCs1IGZpeFxuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICB3aWR0aDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIGhlaWdodDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtYmFzZSAtICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoKSAqIC41OyAvLyBsaW5lLWhlaWdodCBtaW51cyBjaGVjayBoZWlnaHRcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtYmc7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBib3JkZXI6ICRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1jaGVjay10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBmaWx0ZXI6ICRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAmOmNoZWNrZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjtcblxuICAgICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSksIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpLCB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl06aW5kZXRlcm1pbmF0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSksIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpO1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGZpbHRlcjogbm9uZTtcbiAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5O1xuICB9XG5cbiAgLy8gVXNlIGRpc2FibGVkIGF0dHJpYnV0ZSBpbiBhZGRpdGlvbiBvZiA6ZGlzYWJsZWQgcHNldWRvLWNsYXNzXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAkZm9ybS1jaGVjay1sYWJlbC1jb2xvcjtcbiAgY3Vyc29yOiAkZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I7XG59XG5cbi8vXG4vLyBTd2l0Y2hcbi8vXG5cbi8qLmZvcm0tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgd2lkdGg6ICRmb3JtLXN3aXRjaC13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1iZy1pbWFnZSk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1zd2l0Y2gtdHJhbnNpdGlvbik7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlKTtcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb247XG5cbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpLCB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSovXG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLWVuZDtcbn1cblxuLyouYnRuLWNoZWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgKyAuYnRuIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZmlsdGVyOiBub25lO1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59Ki9cbiIsIi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cFxuLy8gLmJ0bi1ncm91cC12ZXJ0aWNhbFxue1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuICBkaXJlY3Rpb246IGx0cjsgLy8gZm9yY2VkIHRvIGZpeCB0aGUgUlRMIGJvcmRlciByYWRpdXMgYnVnc1xuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gIC8vPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLFxuICAvLz4gLmJ0bi1jaGVjazpmb2N1cyArIC5idG4sXG4gID4gLmJ0bjpob3ZlcixcbiAgPiAuYnRuOmZvY3VzLFxuICA+IC5idG46YWN0aXZlLFxuICA+IC5idG4uYWN0aXZlIHtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi8qLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufSovXG5cbi5idG4tZ3JvdXAge1xuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgfVxuXG4gIC8vIFRoZSBsZWZ0IHJhZGl1cyBzaG91bGQgYmUgMCBpZiB0aGUgYnV0dG9uIGlzOlxuICAvLyAtIHRoZSBcInRoaXJkIG9yIG1vcmVcIiBjaGlsZFxuICAvLyAtIHRoZSBzZWNvbmQgY2hpbGQgYW5kIHRoZSBwcmV2aW91cyBlbGVtZW50IGlzbid0IGAuYnRuLWNoZWNrYCAobWFraW5nIGl0IHRoZSBmaXJzdCBjaGlsZCB2aXN1YWxseSlcbiAgLy8gLSBwYXJ0IG9mIGEgYnRuLWdyb3VwIHdoaWNoIGlzbid0IHRoZSBmaXJzdCBjaGlsZFxuICA+IC5idG46bnRoLWNoaWxkKG4gKyAzKSxcbiAgLy8+IDpub3QoLmJ0bi1jaGVjaykgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4vLy5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4vLy5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi8qLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcGVuZCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcHN0YXJ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG4gfiAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufSovXG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdi1saW5rLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbmF2LWxpbmstZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkbmF2LWxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbmF2LWxpbmstdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRuYXYtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZmxleDogYXV0bztcbiAgICBib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICAvLyBQcmV2ZW50cyBhY3RpdmUgLm5hdi1saW5rIHRhYiBvdmVybGFwcGluZyBmb2N1cyBvdXRsaW5lIG9mIHByZXZpb3VzL25leHQgLm5hdi1saW5rXG4gICAgICBpc29sYXRpb246IGlzb2xhdGU7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmcpO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLypcbi5uYXYtZmlsbCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWZpbGwsXG4ubmF2LWp1c3RpZmllZCB7XG4gIC5uYXYtaXRlbSAubmF2LWxpbmsge1xuICAgIHdpZHRoOiAxMDAlOyAvLyBNYWtlIHN1cmUgYnV0dG9uIHdpbGwgZ3Jvd1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4qL1xuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6ICRjYXJkLWhlaWdodDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLyo+IC5saXN0LWdyb3VwIHtcbiAgICBib3JkZXItdG9wOiBpbmhlcml0O1xuICAgIGJvcmRlci1ib3R0b206IGluaGVyaXQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAvLyBEdWUgdG8gc3BlY2lmaWNpdHkgb2YgdGhlIGFib3ZlIHNlbGVjdG9yIChgLmNhcmQgPiAubGlzdC1ncm91cGApLCB3ZSBtdXN0XG4gIC8vIHVzZSBhIGNoaWxkIHNlbGVjdG9yIGhlcmUgdG8gcHJldmVudCBkb3VibGUgYm9yZGVycy5cbiAgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcbiAgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfSovXG59XG5cbi5jYXJkLWJvZHkge1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXG4gIC8vIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUsIGVuc3VyaW5nIGZvb3RlcnMgYXJlIGFsaWduZWQgdG8gdGhlIGJvdHRvbS5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY29sb3I7XG59XG5cbi8qLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC10aXRsZS1zcGFjZXIteTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtJGNhcmQtdGl0bGUtc3BhY2VyLXkgKiAuNTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xuICB9XG59Ki9cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtY2FwLXBhZGRpbmcteSAkY2FyZC1jYXAtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAkY2FyZC1jYXAtcGFkZGluZy15ICRjYXJkLWNhcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi8qLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1jYXAtcGFkZGluZy14ICogLjU7XG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1jYXAtcGFkZGluZy15O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLWNhcC1wYWRkaW5nLXggKiAuNTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICBAaWYgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICE9ICRjYXJkLWJnIHtcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNhcmQtYmc7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLWNhcC1wYWRkaW5nLXggKiAuNTtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1jYXAtcGFkZGluZy14ICogLjU7XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6ICRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3AsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZ3JvdXAtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59Ki9cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCByZXNwb25zaXZlIHZhbHVlcyBmb3IgZm9udCBzaXplcywgcGFkZGluZ3MsIG1hcmdpbnMgYW5kIG11Y2ggbW9yZVxuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2Jsb2IvbWFpbi9MSUNFTlNFKVxuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgdmFsdWVcbiRyZnMtYmFzZS12YWx1ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtdW5pdDogcmVtICFkZWZhdWx0O1xuXG5AaWYgJHJmcy11bml0ICE9IHJlbSBhbmQgJHJmcy11bml0ICE9IHB4IHtcbiAgQGVycm9yIFwiYCN7JHJmcy11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSB2YWx1ZXMgc3RhcnQgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBweCBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gZW0gYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHJlbSB7XG4gIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xufVxuXG4vLyBSZXNpemUgdmFsdWVzIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gbnVtYmVyIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gTW9kZS4gUG9zc2liaWxpdGllczogXCJtaW4tbWVkaWEtcXVlcnlcIiwgXCJtYXgtbWVkaWEtcXVlcnlcIlxuJHJmcy1tb2RlOiBtaW4tbWVkaWEtcXVlcnkgIWRlZmF1bHQ7XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZnMgdG8gZmFsc2VcbiRlbmFibGUtcmZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtdmFsdWUgdW5pdFxuJHJmcy1iYXNlLXZhbHVlLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLXZhbHVlKTtcblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHB4IHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWJhc2UtdmFsdWUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSByZW0ge1xuICAkcmZzLWJhc2UtdmFsdWU6IGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUsIGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IHB4IHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSByZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCBkaXZpZGUoJHJmcy1icmVha3BvaW50ICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhbGN1bGF0ZSB0aGUgbWVkaWEgcXVlcnkgdmFsdWVcbiRyZnMtbXEtdmFsdWU6IGlmKCRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4LCAjeyRyZnMtYnJlYWtwb2ludH1weCwgI3tkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLXJlbS12YWx1ZSl9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH0pO1xuJHJmcy1tcS1wcm9wZXJ0eS13aWR0aDogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgbWF4LXdpZHRoLCBtaW4td2lkdGgpO1xuJHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHQ6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC1oZWlnaHQsIG1pbi1oZWlnaHQpO1xuXG4vLyBJbnRlcm5hbCBtaXhpbiB1c2VkIHRvIGRldGVybWluZSB3aGljaCBtZWRpYSBxdWVyeSBuZWVkcyB0byBiZSB1c2VkXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeSB7XG4gIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgQGlmICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSwgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pIGFuZCAoI3skcmZzLW1xLXByb3BlcnR5LWhlaWdodH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZGlzYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1ydWxlIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gZGlzYWJsZSBhbmQgJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSB7XG4gICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSwgd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBwcm9wZXJ0eVxuICAgICYsXG4gICAgLmRpc2FibGUtcmZzICYsXG4gICAgJi5kaXNhYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHJmcy1jbGFzcyA9PSBlbmFibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgIC5lbmFibGUtcmZzICYsXG4gICAgJi5lbmFibGUtcmZzIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGVuYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeS1ydWxlIHtcblxuICBAaWYgJHJmcy1jbGFzcyA9PSBlbmFibGUge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgLmVuYWJsZS1yZnMgJixcbiAgICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICRyZnMtY2xhc3MgPT0gZGlzYWJsZSBhbmQgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICAuZGlzYWJsZS1yZnMgJixcbiAgICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgZm9ybWF0dGVkIG5vbi1yZXNwb25zaXZlIHZhbHVlXG5AZnVuY3Rpb24gcmZzLXZhbHVlKCR2YWx1ZXMpIHtcbiAgLy8gQ29udmVydCB0byBsaXN0XG4gICR2YWx1ZXM6IGlmKHR5cGUtb2YoJHZhbHVlcykgIT0gbGlzdCwgKCR2YWx1ZXMsKSwgJHZhbHVlcyk7XG5cbiAgJHZhbDogJyc7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyAnIDAnO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgQGlmICR1bml0ID09IHB4IHtcbiAgICAgICAgLy8gQ29udmVydCB0byByZW0gaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyAkcmZzLXJlbS12YWx1ZSl9cmVtLCAkdmFsdWUpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHVuaXQgPT0gcmVtIHtcbiAgICAgICAgLy8gQ29udmVydCB0byBweCBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArICcgJyArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSByZXNwb25zaXZlIHZhbHVlIGNhbGN1bGF0ZWQgYnkgUkZTXG5AZnVuY3Rpb24gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpIHtcbiAgLy8gQ29udmVydCB0byBsaXN0XG4gICR2YWx1ZXM6IGlmKHR5cGUtb2YoJHZhbHVlcykgIT0gbGlzdCwgKCR2YWx1ZXMsKSwgJHZhbHVlcyk7XG5cbiAgJHZhbDogJyc7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyAnIDAnO1xuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgIEBpZiBub3QgJHVuaXQgb3IgJHVuaXQgIT0gcHggYW5kICR1bml0ICE9IHJlbSB7XG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyAkdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6IGRpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgZGl2aWRlKDEsICRyZnMtcmVtLXZhbHVlKSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgIGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZSwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWV9cHgpO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtbWluOiAkcmZzLWJhc2UtdmFsdWUgKyBkaXZpZGUoYWJzKCR2YWx1ZSkgLSAkcmZzLWJhc2UtdmFsdWUsICRyZnMtZmFjdG9yKTtcblxuICAgICAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gJHZhbHVlIGFuZCB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICAgICR2YWx1ZS1kaWZmOiBhYnMoJHZhbHVlKSAtICR2YWx1ZS1taW47XG5cbiAgICAgICAgICAvLyBCYXNlIHZhbHVlIGZvcm1hdHRpbmdcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUtbWluLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyR2YWx1ZS1taW59cHgpO1xuXG4gICAgICAgICAgLy8gVXNlIG5lZ2F0aXZlIHZhbHVlIGlmIG5lZWRlZFxuICAgICAgICAgICRtaW4td2lkdGg6IGlmKCR2YWx1ZSA8IDAsIC0kbWluLXdpZHRoLCAkbWluLXdpZHRoKTtcblxuICAgICAgICAgIC8vIFVzZSBgdm1pbmAgaWYgdHdvLWRpbWVuc2lvbmFsIGlzIGVuYWJsZWRcbiAgICAgICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICAgICAkdmFyaWFibGUtd2lkdGg6ICN7ZGl2aWRlKCR2YWx1ZS1kaWZmICogMTAwLCAkcmZzLWJyZWFrcG9pbnQpfSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAgICAgLy8gUmV0dXJuIHRoZSBjYWxjdWxhdGVkIHZhbHVlXG4gICAgICAgICAgJHZhbDogJHZhbCArICcgY2FsYygnICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsICcgLSAnLCAnICsgJykgKyAkdmFyaWFibGUtd2lkdGggKyAnKSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIFJGUyBtaXhpblxuQG1peGluIHJmcygkdmFsdWVzLCAkcHJvcGVydHk6IGZvbnQtc2l6ZSkge1xuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XG4gICAgJGZsdWlkVmFsOiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlcyk7XG5cbiAgICAvLyBEbyBub3QgcHJpbnQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHJlc3BvbnNpdmUgJiBub24tcmVzcG9uc2l2ZSB2YWx1ZXMgYXJlIHRoZSBzYW1lXG4gICAgQGlmICR2YWwgPT0gJGZsdWlkVmFsIHtcbiAgICAgICN7JHByb3BlcnR5fTogJHZhbDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgX3Jmcy1ydWxlIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkdmFsLCAkZmx1aWRWYWwpO1xuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkZmx1aWRWYWwsICR2YWwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBTaG9ydGhhbmQgaGVscGVyIG1peGluc1xuQG1peGluIGZvbnQtc2l6ZSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSk7XG59XG5cbkBtaXhpbiBwYWRkaW5nKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nKTtcbn1cblxuQG1peGluIHBhZGRpbmctdG9wKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLXRvcCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXJpZ2h0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLXJpZ2h0KTtcbn1cblxuQG1peGluIHBhZGRpbmctYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWJvdHRvbSk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWxlZnQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctbGVmdCk7XG59XG5cbkBtaXhpbiBtYXJnaW4oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbik7XG59XG5cbkBtaXhpbiBtYXJnaW4tdG9wKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tdG9wKTtcbn1cblxuQG1peGluIG1hcmdpbi1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXJpZ2h0KTtcbn1cblxuQG1peGluIG1hcmdpbi1ib3R0b20oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1ib3R0b20pO1xufVxuXG5AbWl4aW4gbWFyZ2luLWxlZnQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1sZWZ0KTtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JheS1jb2xvci12YXJpYWJsZXNcbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JheS1jb2xvci12YXJpYWJsZXNcblxuLy8gZnVzdi1kaXNhYmxlXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JheS1jb2xvcnMtbWFwXG4kZ3JheXM6IChcbiAgXCIxMDBcIjogJGdyYXktMTAwLFxuICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgXCI0MDBcIjogJGdyYXktNDAwLFxuICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgXCI3MDBcIjogJGdyYXktNzAwLFxuICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gIFwiOTAwXCI6ICRncmF5LTkwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JheS1jb2xvcnMtbWFwXG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItdmFyaWFibGVzXG4kYmx1ZTogICAgIzBkNmVmZCAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2Q2MzM4NCAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMTk4NzU0ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzBkY2FmMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvcnMtbWFwXG4kY29sb3JzOiAoXG4gIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvcnMtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvci12YXJpYWJsZXNcbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1tYXBcbiR0aGVtZS1jb2xvcnM6IChcbiAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICBcImluZm9cIjogICAgICAgJGluZm8sXG4gIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFya1xuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3JzLW1hcFxuXG4vLyBUaGUgY29udHJhc3QgcmF0aW8gdG8gcmVhY2ggYWdhaW5zdCB3aGl0ZSwgdG8gZGV0ZXJtaW5lIGlmIGNvbG9yIGNoYW5nZXMgZnJvbSBcImxpZ2h0XCIgdG8gXCJkYXJrXCIuIEFjY2VwdGFibGUgdmFsdWVzIGZvciBXQ0FHIDIuMCBhcmUgMywgNC41IGFuZCA3LlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAvI3Zpc3VhbC1hdWRpby1jb250cmFzdC1jb250cmFzdFxuJG1pbi1jb250cmFzdC1yYXRpbzogICA0LjUgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4kY29sb3ItY29udHJhc3QtZGFyazogICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY29sb3ItY29udHJhc3QtbGlnaHQ6ICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGJsdWUtMTAwOiB0aW50LWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuJGJsdWUtMjAwOiB0aW50LWNvbG9yKCRibHVlLCA2MCUpICFkZWZhdWx0O1xuJGJsdWUtMzAwOiB0aW50LWNvbG9yKCRibHVlLCA0MCUpICFkZWZhdWx0O1xuJGJsdWUtNDAwOiB0aW50LWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNTAwOiAkYmx1ZSAhZGVmYXVsdDtcbiRibHVlLTYwMDogc2hhZGUtY29sb3IoJGJsdWUsIDIwJSkgIWRlZmF1bHQ7XG4kYmx1ZS03MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA0MCUpICFkZWZhdWx0O1xuJGJsdWUtODAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTkwMDogc2hhZGUtY29sb3IoJGJsdWUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRpbmRpZ28tMTAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDgwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTIwMDogdGludC1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xuJGluZGlnby0zMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNDAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDIwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTUwMDogJGluZGlnbyAhZGVmYXVsdDtcbiRpbmRpZ28tNjAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby03MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTgwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tOTAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuXG4kcHVycGxlLTEwMDogdGludC1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xuJHB1cnBsZS0yMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMzAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDQwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTQwMDogdGludC1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xuJHB1cnBsZS01MDA6ICRwdXJwbGUgIWRlZmF1bHQ7XG4kcHVycGxlLTYwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNzAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS04MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTkwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcblxuJHBpbmstMTAwOiB0aW50LWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuJHBpbmstMjAwOiB0aW50LWNvbG9yKCRwaW5rLCA2MCUpICFkZWZhdWx0O1xuJHBpbmstMzAwOiB0aW50LWNvbG9yKCRwaW5rLCA0MCUpICFkZWZhdWx0O1xuJHBpbmstNDAwOiB0aW50LWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNTAwOiAkcGluayAhZGVmYXVsdDtcbiRwaW5rLTYwMDogc2hhZGUtY29sb3IoJHBpbmssIDIwJSkgIWRlZmF1bHQ7XG4kcGluay03MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA0MCUpICFkZWZhdWx0O1xuJHBpbmstODAwOiBzaGFkZS1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTkwMDogc2hhZGUtY29sb3IoJHBpbmssIDgwJSkgIWRlZmF1bHQ7XG5cbiRyZWQtMTAwOiB0aW50LWNvbG9yKCRyZWQsIDgwJSkgIWRlZmF1bHQ7XG4kcmVkLTIwMDogdGludC1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xuJHJlZC0zMDA6IHRpbnQtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcbiRyZWQtNDAwOiB0aW50LWNvbG9yKCRyZWQsIDIwJSkgIWRlZmF1bHQ7XG4kcmVkLTUwMDogJHJlZCAhZGVmYXVsdDtcbiRyZWQtNjAwOiBzaGFkZS1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC03MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTgwMDogc2hhZGUtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtOTAwOiBzaGFkZS1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuXG4kb3JhbmdlLTEwMDogdGludC1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xuJG9yYW5nZS0yMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMzAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDQwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTQwMDogdGludC1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xuJG9yYW5nZS01MDA6ICRvcmFuZ2UgIWRlZmF1bHQ7XG4kb3JhbmdlLTYwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNzAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS04MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTkwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcblxuJHllbGxvdy0xMDA6IHRpbnQtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctMjAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDYwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTMwMDogdGludC1jb2xvcigkeWVsbG93LCA0MCUpICFkZWZhdWx0O1xuJHllbGxvdy00MDA6IHRpbnQtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNTAwOiAkeWVsbG93ICFkZWZhdWx0O1xuJHllbGxvdy02MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTcwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctODAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy05MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG5cbiRncmVlbi0xMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA4MCUpICFkZWZhdWx0O1xuJGdyZWVuLTIwMDogdGludC1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tMzAwOiB0aW50LWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi00MDA6IHRpbnQtY29sb3IoJGdyZWVuLCAyMCUpICFkZWZhdWx0O1xuJGdyZWVuLTUwMDogJGdyZWVuICFkZWZhdWx0O1xuJGdyZWVuLTYwMDogc2hhZGUtY29sb3IoJGdyZWVuLCAyMCUpICFkZWZhdWx0O1xuJGdyZWVuLTcwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA0MCUpICFkZWZhdWx0O1xuJGdyZWVuLTgwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTkwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA4MCUpICFkZWZhdWx0O1xuXG4kdGVhbC0xMDA6IHRpbnQtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG4kdGVhbC0yMDA6IHRpbnQtY29sb3IoJHRlYWwsIDYwJSkgIWRlZmF1bHQ7XG4kdGVhbC0zMDA6IHRpbnQtY29sb3IoJHRlYWwsIDQwJSkgIWRlZmF1bHQ7XG4kdGVhbC00MDA6IHRpbnQtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC01MDA6ICR0ZWFsICFkZWZhdWx0O1xuJHRlYWwtNjAwOiBzaGFkZS1jb2xvcigkdGVhbCwgMjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTcwMDogc2hhZGUtY29sb3IoJHRlYWwsIDQwJSkgIWRlZmF1bHQ7XG4kdGVhbC04MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtOTAwOiBzaGFkZS1jb2xvcigkdGVhbCwgODAlKSAhZGVmYXVsdDtcblxuJGN5YW4tMTAwOiB0aW50LWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuJGN5YW4tMjAwOiB0aW50LWNvbG9yKCRjeWFuLCA2MCUpICFkZWZhdWx0O1xuJGN5YW4tMzAwOiB0aW50LWNvbG9yKCRjeWFuLCA0MCUpICFkZWZhdWx0O1xuJGN5YW4tNDAwOiB0aW50LWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNTAwOiAkY3lhbiAhZGVmYXVsdDtcbiRjeWFuLTYwMDogc2hhZGUtY29sb3IoJGN5YW4sIDIwJSkgIWRlZmF1bHQ7XG4kY3lhbi03MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA0MCUpICFkZWZhdWx0O1xuJGN5YW4tODAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTkwMDogc2hhZGUtY29sb3IoJGN5YW4sIDgwJSkgIWRlZmF1bHQ7XG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIiwgXCIlM2NcIiksXG4gIChcIj5cIiwgXCIlM2VcIiksXG4gIChcIiNcIiwgXCIlMjNcIiksXG4gIChcIihcIiwgXCIlMjhcIiksXG4gIChcIilcIiwgXCIlMjlcIiksXG4pICFkZWZhdWx0O1xuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbjogICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc21vb3RoLXNjcm9sbDogICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1idXR0b24tcG9pbnRlcnM6ICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmZzOiAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1uZWdhdGl2ZS1tYXJnaW5zOiAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzOiAgdHJ1ZSAhZGVmYXVsdDtcblxuLy8gUHJlZml4IGZvciA6cm9vdCBDU1MgdmFyaWFibGVzXG5cbiR2YXJpYWJsZS1wcmVmaXg6ICAgICAgICAgICAgIGJzLSAhZGVmYXVsdDtcblxuLy8gR3JhZGllbnRcbi8vXG4vLyBUaGUgZ3JhZGllbnQgd2hpY2ggaXMgYWRkZWQgdG8gY29tcG9uZW50cyBpZiBgJGVuYWJsZS1ncmFkaWVudHNgIGlzIGB0cnVlYFxuLy8gVGhpcyBncmFkaWVudCBpcyBhbHNvIGFkZGVkIHRvIGVsZW1lbnRzIHdpdGggYC5iZy1ncmFkaWVudGBcbi8vIHNjc3MtZG9jcy1zdGFydCB2YXJpYWJsZS1ncmFkaWVudFxuJGdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKCR3aGl0ZSwgLjE1KSwgcmdiYSgkd2hpdGUsIDApKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdmFyaWFibGUtZ3JhZGllbnRcblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGFjZXItdmFyaWFibGVzLW1hcHNcbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKFxuICAwOiAwLFxuICAxOiAkc3BhY2VyICogLjI1LFxuICAyOiAkc3BhY2VyICogLjUsXG4gIDM6ICRzcGFjZXIsXG4gIDQ6ICRzcGFjZXIgKiAxLjUsXG4gIDU6ICRzcGFjZXIgKiAzLFxuKSAhZGVmYXVsdDtcblxuJG5lZ2F0aXZlLXNwYWNlcnM6IGlmKCRlbmFibGUtbmVnYXRpdmUtbWFyZ2lucywgbmVnYXRpdmlmeS1tYXAoJHNwYWNlcnMpLCBudWxsKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG5cbi8vIFBvc2l0aW9uXG4vL1xuLy8gRGVmaW5lIHRoZSBlZGdlIHBvc2l0aW9uaW5nIGFuY2hvcnMgb2YgdGhlIHBvc2l0aW9uIHV0aWxpdGllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvc2l0aW9uLW1hcFxuJHBvc2l0aW9uLXZhbHVlczogKFxuICAwOiAwLFxuICA1MDogNTAlLFxuICAxMDA6IDEwMCVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvc2l0aW9uLW1hcFxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRib2R5LXRleHQtYWxpZ246ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbiRsaW5rLXNoYWRlLXBlcmNlbnRhZ2U6ICAgICAgICAgICAgICAgICAgIDIwJSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIHNoaWZ0LWNvbG9yKCRsaW5rLWNvbG9yLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudDogICAgICAgICAgIGFmdGVyICFkZWZhdWx0O1xuJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg6ICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JpZC1icmVha3BvaW50c1xuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHhzOiAwLFxuICB4czogNDgwcHgsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHgsXG4gIHh4bDogMTQwMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmlkLWJyZWFrcG9pbnRzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29udGFpbmVyLW1heC13aWR0aHNcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICB4czogNDY2cHgsXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHgsXG4gIHh4bDogMTMyMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb250YWluZXItbWF4LXdpZHRoc1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cbiRndXR0ZXJzOiAkc3BhY2VycyAhZGVmYXVsdDtcblxuLy8gQ29udGFpbmVyIHBhZGRpbmdcblxuJGNvbnRhaW5lci1wYWRkaW5nLXg6ICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItdmFyaWFibGVzXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoczogKFxuICAxOiAxcHgsXG4gIDI6IDJweCxcbiAgMzogM3B4LFxuICA0OiA0cHgsXG4gIDU6IDVweFxuKSAhZGVmYXVsdDtcblxuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXBpbGw6ICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm94LXNoYWRvdy12YXJpYWJsZXNcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctaW5zZXQ6ICAgICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm94LXNoYWRvdy12YXJpYWJsZXNcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC12YXJpYWJsZXNcbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LXZhcmlhYmxlc1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xsYXBzZS10cmFuc2l0aW9uXG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS10cmFuc2l0aW9uXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFzcGVjdC1yYXRpb3NcbiRhc3BlY3QtcmF0aW9zOiAoXG4gIFwiMXgxXCI6IDEwMCUsXG4gIFwiNHgzXCI6IGNhbGMoMyAvIDQgKiAxMDAlKSxcbiAgXCIxNng5XCI6IGNhbGMoOSAvIDE2ICogMTAwJSksXG4gIFwiMjF4OVwiOiBjYWxjKDkgLyAyMSAqIDEwMCUpXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBhc3BlY3QtcmF0aW9zXG4vLyBzdHlsZWxpbnQtZW5hYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXZhcmlhYmxlc1xuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LXNhbnMtc2VyaWYpICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWNvZGU6ICAgICAgICAgICAgdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWZvbnQtbW9ub3NwYWNlKSAhZGVmYXVsdDtcblxuLy8gJGZvbnQtc2l6ZS1yb290IGFmZmVjdHMgdGhlIHZhbHVlIG9mIGByZW1gLCB3aGljaCBpcyB1c2VkIGZvciBhcyB3ZWxsIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBhbmQgbWFyZ2luc1xuLy8gJGZvbnQtc2l6ZS1iYXNlIGFmZmVjdHMgdGhlIGZvbnQgc2l6ZSBvZiB0aGUgYm9keSB0ZXh0XG4kZm9udC1zaXplLXJvb3Q6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDIgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtc2l6ZXNcbiRmb250LXNpemVzOiAoXG4gIDE6ICRoMS1mb250LXNpemUsXG4gIDI6ICRoMi1mb250LXNpemUsXG4gIDM6ICRoMy1mb250LXNpemUsXG4gIDQ6ICRoNC1mb250LXNpemUsXG4gIDU6ICRoNS1mb250LXNpemUsXG4gIDY6ICRoNi1mb250LXNpemVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtc2l6ZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGhlYWRpbmdzLXZhcmlhYmxlc1xuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXN0eWxlOiAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBoZWFkaW5ncy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRpc3BsYXktaGVhZGluZ3NcbiRkaXNwbGF5LWZvbnQtc2l6ZXM6IChcbiAgMTogNXJlbSxcbiAgMjogNC41cmVtLFxuICAzOiA0cmVtLFxuICA0OiAzLjVyZW0sXG4gIDU6IDNyZW0sXG4gIDY6IDIuNXJlbVxuKSAhZGVmYXVsdDtcblxuJGRpc3BsYXktZm9udC13ZWlnaHQ6IDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRpc3BsYXktaGVhZGluZ3NcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHR5cGUtdmFyaWFibGVzXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAuODc1ZW0gIWRlZmF1bHQ7XG5cbiRzdWItc3VwLWZvbnQtc2l6ZTogICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRpbml0aWFsaXNtLWZvbnQtc2l6ZTogICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRoci1jb2xvcjogICAgICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kaHItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGhyLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgLjI1ICFkZWZhdWx0O1xuXG4kbGVnZW5kLW1hcmdpbi1ib3R0b206ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC1zaXplOiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC13ZWlnaHQ6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHR5cGUtdmFyaWFibGVzXG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFibGVzXG4kdGFibGUtY2VsbC1wYWRkaW5nLXk6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteDogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY2VsbC12ZXJ0aWNhbC1hbGlnbjogICB0b3AgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtY29sb3I6ICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yOiAgICAgLjA1ICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmc6ICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmctZmFjdG9yOiAgICAgIC4xICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnLWZhY3RvcjogICAgICAgLjA3NSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtaG92ZXItYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci1mYWN0b3I6ICAgICAgICAgLjEgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctc2NhbGU6ICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWxvb3BcbiR0YWJsZS12YXJpYW50czogKFxuICBcInByaW1hcnlcIjogICAgc2hpZnQtY29sb3IoJHByaW1hcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic2Vjb25kYXJ5XCI6ICBzaGlmdC1jb2xvcigkc2Vjb25kYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInN1Y2Nlc3NcIjogICAgc2hpZnQtY29sb3IoJHN1Y2Nlc3MsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiaW5mb1wiOiAgICAgICBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJ3YXJuaW5nXCI6ICAgIHNoaWZ0LWNvbG9yKCR3YXJuaW5nLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImRhbmdlclwiOiAgICAgc2hpZnQtY29sb3IoJGRhbmdlciwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtbG9vcFxuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYmx1cjogICAgICAgICAgMCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogICAgMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYWJsZXNcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1jb2xvcjogICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudDogICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudDogICAgMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50OiAgICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50OiAgMjUlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAgIDEwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEZvcm1zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXRleHQtdmFyaWFibGVzXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tbGFiZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA1MCUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0taW5wdXQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuJGZvcm0tY2hlY2staW5wdXQtd2lkdGg6ICAgICAgICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWluLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0OiAgICAgICAgICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1hY3RpdmUtZmlsdGVyOiAgICAgICAgICBicmlnaHRuZXNzKDkwJSkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgIDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyOiAgICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBsMyAzbDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzInIGZpbGw9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwaDgnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk6ICAgICRidG4tZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ6ICAgIDFyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tY2hlY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcbiRmb3JtLXN3aXRjaC1jb2xvcjogICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgMmVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYmctaW1hZ2U6ICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXM6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC10cmFuc2l0aW9uOiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcjogICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2U6ICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb246IHJpZ2h0IGNlbnRlciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbnB1dC1ncm91cC12YXJpYWJsZXNcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIGZvciBiYWNrZ3JvdW5kLWltYWdlXG4kZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjogICAgICAgICAgIHJpZ2h0ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgICAgMTZweCAxMnB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDIuNSArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICBjZW50ZXIgcmlnaHQgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC10cmFuc2l0aW9uOiAgICAgICAgICAkaW5wdXQtdHJhbnNpdGlvbiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcblxuJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIEVkZ2VcbiRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA3MCUpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb246ICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tcmFuZ2UtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZpbGUtdmFyaWFibGVzXG4kZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnOiAgICAgICBzaGFkZS1jb2xvcigkZm9ybS1maWxlLWJ1dHRvbi1iZywgNSUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZpbGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuJGZvcm0tZmxvYXRpbmctaGVpZ2h0OiAgICAgICAgICAgIGFkZCgzLjVyZW0sICRpbnB1dC1oZWlnaHQtYm9yZGVyKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0OiAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy14OiAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXk6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDogICAxLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjogICAuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTogICAgIC42NSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTogICBzY2FsZSguODUpIHRyYW5zbGF0ZVkoLS41cmVtKSB0cmFuc2xhdGVYKC4xNXJlbSkgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTogICAgICAgICAgJGZvcm0tdGV4dC1mb250LXN0eWxlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgJHN1Y2Nlc3MgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICAkZGFuZ2VyICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfSc+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoXG4gIFwidmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgKSxcbiAgXCJpbnZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICApXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1zdGFja1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtb2ZmY2FudmFzOiAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwODAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1zdGFja1xuXG5cbi8vIE5hdnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi12YXJpYWJsZXNcbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXNpemU6ICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtbGluay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2LXZhcmlhYmxlc1xuXG5cbi8vIE5hdmJhclxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLXZhcmlhYmxlc1xuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtbWFyZ2luLWVuZDogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg6ICAgICAgICAkYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb246ICAgICAgICAgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItdGhlbWUtdmFyaWFibGVzXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjU1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLXRoZW1lLXZhcmlhYmxlc1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLXZhcmlhYmxlc1xuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIHN1YnRyYWN0KCRkcm9wZG93bi1ib3JkZXItcmFkaXVzLCAkZHJvcGRvd24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgc2hhZGUtY29sb3IoJGdyYXktOTAwLCAxMCUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgICRzcGFjZXIgKiAuMjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1kYXJrLXZhcmlhYmxlc1xuJGRyb3Bkb3duLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWRpdmlkZXItYmc6ICAgICAgICAgICRkcm9wZG93bi1kaXZpZGVyLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYm94LXNoYWRvdzogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstY29sb3I6ICAgICAgICAgICRkcm9wZG93bi1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcjogICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZzogICAgICAgcmdiYSgkd2hpdGUsIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1jb2xvcjogICAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZzogICAgICAkZHJvcGRvd24tbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWRpc2FibGVkLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3I6ICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG5cblxuLy8gUGFnaW5hdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi12YXJpYWJsZXNcbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ6ICAgICAgICAgICAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBhZ2luYXRpb24tdmFyaWFibGVzXG5cblxuLy8gQ2FyZHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmQtdmFyaWFibGVzXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLXNwYWNlci15OiAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAqIC41ICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXggIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZC12YXJpYWJsZXNcblxuLy8gQWNjb3JkaW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhY2NvcmRpb24tdmFyaWFibGVzXG4kYWNjb3JkaW9uLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICBzdWJ0cmFjdCgkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMsICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRhY2NvcmRpb24tY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1iZzogICAgICAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLWJnICFkZWZhdWx0O1xuJGFjY29yZGlvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uLCBib3JkZXItcmFkaXVzIC4xNXMgZWFzZSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDkwJSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICBzaGFkZS1jb2xvcigkcHJpbWFyeSwgMTAlKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRidG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRhY2NvcmRpb24tY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLXRyYW5zZm9ybTogICAgICAgICAgICAgICAgcm90YXRlKC0xODBkZWcpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1pY29uOiAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRhY2NvcmRpb24taWNvbi1jb2xvcn0nPjxwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcn0nPjxwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYWNjb3JkaW9uLXZhcmlhYmxlc1xuXG4vLyBUb29sdGlwc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC12YXJpYWJsZXNcbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC1mZWVkYmFjay12YXJpYWJsZXNcblxuXG4vLyBQb3BvdmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9wb3Zlci12YXJpYWJsZXNcbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBzdWJ0cmFjdCgkcG9wb3Zlci1ib3JkZXItcmFkaXVzLCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIHNoYWRlLWNvbG9yKCRwb3BvdmVyLWJnLCA2JSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcG9wb3Zlci12YXJpYWJsZXNcblxuXG4vLyBUb2FzdHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvYXN0LXZhcmlhYmxlc1xuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kdG9hc3Qtc3BhY2luZzogICAgICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvYXN0LXZhcmlhYmxlc1xuXG5cbi8vIEJhZGdlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYmFkZ2UtdmFyaWFibGVzXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjM1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBiYWRnZS12YXJpYWJsZXNcblxuXG4vLyBNb2RhbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLXZhcmlhYmxlc1xuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgICRib3gtc2hhZG93LXNtICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtdmFyaWFibGVzXG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC12YXJpYWJsZXNcbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGFsZXJ0LWJnLXNjYWxlOiAgICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1zY2FsZTogICAgICAgICAgICAtNzAlICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLXNjYWxlOiAgICAgICAgICAgICA0MCUgIWRlZmF1bHQ7XG4kYWxlcnQtZGlzbWlzc2libGUtcGFkZGluZy1yOiAgICRhbGVydC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyAzeCBjb3ZlcnMgd2lkdGggb2YgeCBwbHVzIGRlZmF1bHQgcGFkZGluZyBvbiBlaXRoZXIgc2lkZVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC12YXJpYWJsZXNcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy12YXJpYWJsZXNcbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICRib3gtc2hhZG93LWluc2V0ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtdmFyaWFibGVzXG5cblxuLy8gTGlzdCBncm91cFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC12YXJpYWJsZXNcbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tYmctc2NhbGU6ICAgICAgICAgIC04MCUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLWNvbG9yLXNjYWxlOiAgICAgICA0MCUgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRodW1ibmFpbC12YXJpYWJsZXNcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgJGJveC1zaGFkb3ctc20gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRodW1ibmFpbC12YXJpYWJsZXNcblxuXG4vLyBGaWd1cmVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmaWd1cmUtdmFyaWFibGVzXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmaWd1cmUtdmFyaWFibGVzXG5cblxuLy8gQnJlYWRjcnVtYnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJyZWFkY3J1bWItdmFyaWFibGVzXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkOiAgICAgICAgJGJyZWFkY3J1bWItZGl2aWRlciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItdmFyaWFibGVzXG5cbi8vIENhcm91c2VsXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJvdXNlbC12YXJpYWJsZXNcbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLW9wYWNpdHk6ICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtb3BhY2l0eTogIDEgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXNwYWNlcjogICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMnJlbSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfSc+PHBhdGggZD0nTTExLjM1NCAxLjY0NmEuNS41IDAgMCAxIDAgLjcwOEw1LjcwNyA4bDUuNjQ3IDUuNjQ2YS41LjUgMCAwIDEtLjcwOC43MDhsLTYtNmEuNS41IDAgMCAxIDAtLjcwOGw2LTZhLjUuNSAwIDAgMSAuNzA4IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfSc+PHBhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cbiRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc6ICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yOiAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjogIGludmVydCgxKSBncmF5c2NhbGUoMTAwKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2Fyb3VzZWwtdmFyaWFibGVzXG5cblxuLy8gU3Bpbm5lcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItdmFyaWFibGVzXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItdmVydGljYWwtYWxpZ246ICAtLjEyNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgICAuMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogLjc1cyAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci12YXJpYWJsZXNcblxuXG4vLyBDbG9zZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2xvc2UtdmFyaWFibGVzXG4kYnRuLWNsb3NlLXdpZHRoOiAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtaGVpZ2h0OiAgICAgICAgICAgJGJ0bi1jbG9zZS13aWR0aCAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy14OiAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXBhZGRpbmcteTogICAgICAgICRidG4tY2xvc2UtcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1jb2xvcjogICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWJnOiAgICAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRidG4tY2xvc2UtY29sb3J9Jz48cGF0aCBkPSdNLjI5My4yOTNhMSAxIDAgMDExLjQxNCAwTDggNi41ODYgMTQuMjkzLjI5M2ExIDEgMCAxMTEuNDE0IDEuNDE0TDkuNDE0IDhsNi4yOTMgNi4yOTNhMSAxIDAgMDEtMS40MTQgMS40MTRMOCA5LjQxNGwtNi4yOTMgNi4yOTNhMSAxIDAgMDEtMS40MTQtMS40MTRMNi41ODYgOCAuMjkzIDEuNzA3YTEgMSAwIDAxMC0xLjQxNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tY2xvc2Utb3BhY2l0eTogICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICAgIC43NSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogICAgMSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogLjI1ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS13aGl0ZS1maWx0ZXI6ICAgICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCUpIGJyaWdodG5lc3MoMjAwJSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNsb3NlLXZhcmlhYmxlc1xuXG5cbi8vIE9mZmNhbnZhc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuJG9mZmNhbnZhcy1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXBhZGRpbmcteDogICAgICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtaG9yaXpvbnRhbC13aWR0aDogICAgICAgIDQwMHB4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHQ6ICAgICAgICAgMzB2aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgIC4zcyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICRtb2RhbC10aXRsZS1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmctY29sb3I6ICAgICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJnICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1jb2xvcjogICAgICAgICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtY29sb3IgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBvZmZjYW52YXMtdmFyaWFibGVzXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLW1peGluc1xuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24gYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LWJnLW1peGluXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yOiBudWxsKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtYmctbWl4aW5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LW1peGluc1xuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IG51bGwsICRlbmQtcGVyY2VudDogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1taXhpbnNcbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRidG4tZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGJ0bi1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6ICRidG4td2hpdGUtc3BhY2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogaWYoJGVuYWJsZS1idXR0b24tcG9pbnRlcnMsIHBvaW50ZXIsIG51bGwpO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGJ0bi1mb250LXNpemUsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cblxuICAvLy5idG4tY2hlY2s6Zm9jdXMgKyAmLFxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgLy8uYnRuLWNoZWNrOmFjdGl2ZSArICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWZvY3VzLWJveC1zaGFkb3csICRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0OmRpc2FibGVkICYge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbG9vcHNcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbi5idG4tbGlnaHQge1xuICAmLmFjdGl2ZSxcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc2hhZGUtY29sb3IobWFwX2dldCgkdGhlbWUtY29sb3JzLCBcImxpZ2h0XCIpLCA4JSk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzaGFkZS1jb2xvcihtYXBfZ2V0KCR0aGVtZS1jb2xvcnMsIFwibGlnaHRcIiksIDYlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LWxvb3BzXG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGJ0bi1saW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRidG4tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoXG4gICRiYWNrZ3JvdW5kLFxuICAkYm9yZGVyLFxuICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSxcbiAgJGhvdmVyLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctdGludC1hbW91bnQpKSxcbiAgJGhvdmVyLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkaG92ZXItY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRob3Zlci1iYWNrZ3JvdW5kKSxcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQpKSxcbiAgJGFjdGl2ZS1ib3JkZXI6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpLFxuICAkZGlzYWJsZWQtYmFja2dyb3VuZDogJGJhY2tncm91bmQsXG4gICRkaXNhYmxlZC1ib3JkZXI6ICRib3JkZXIsXG4gICRkaXNhYmxlZC1jb2xvcjogY29sb3ItY29udHJhc3QoJGRpc2FibGVkLWJhY2tncm91bmQpXG4pIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAvLy5idG4tY2hlY2s6Zm9jdXMgKyAmLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peCgkY29sb3IsICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgLy8uYnRuLWNoZWNrOmFjdGl2ZSArICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICRhY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtYmFja2dyb3VuZDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkZGlzYWJsZWQtYm9yZGVyO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudChcbiAgJGNvbG9yLFxuICAkY29sb3ItaG92ZXI6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLFxuICAkYWN0aXZlLWJvcmRlcjogJGNvbG9yLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpXG4pIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gIC8vLmJ0bi1jaGVjazpmb2N1cyArICYsXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgfVxuXG4gIC8vLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgLy8uYnRuLWNoZWNrOmFjdGl2ZSArICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJi5kcm9wZG93bi10b2dnbGUuc2hvdyB7XG4gICAgY29sb3I6ICRhY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tc2l6ZS1taXhpblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLCAwKTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXNpemUtbWl4aW5cbiIsIi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xuICBib3JkZXI6ICRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHBhZ2luYXRpb24tdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1mb2N1cy1iZztcbiAgICBvdXRsaW5lOiAkcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lO1xuICAgIGJveC1zaGFkb3c6ICRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cbn1cblxuLnBhZ2UtaXRlbSB7XG4gICY6bm90KDpmaXJzdC1jaGlsZCkgLnBhZ2UtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6ICRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydDtcbiAgfVxuXG4gICYuYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkcGFnaW5hdGlvbi1hY3RpdmUtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cbkBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXksICRwYWdpbmF0aW9uLXBhZGRpbmcteCwgbnVsbCwgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cyk7XG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgLy9AaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIC8vQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLW1peGluXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC5wYWdlLWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIH1cblxuICAucGFnZS1pdGVtIHtcbiAgICBAaWYgJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0ID09ICgtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAvL0FkZCBib3JkZXItcmFkaXVzIHRvIGFsbCBwYWdlTGlua3MgaW4gY2FzZSB0aGV5IGhhdmUgbGVmdCBtYXJnaW5cbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi1taXhpblxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFkZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLWtleWZyYW1lc1xuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICBAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgICAwJSB7IGJhY2tncm91bmQtcG9zaXRpb24teDogJHByb2dyZXNzLWhlaWdodDsgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLWtleWZyYW1lc1xuXG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDsgLy8gY3VzdG9tXG59XG5cbi8vLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbi8vICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4vLyAgYmFja2dyb3VuZC1zaXplOiAkcHJvZ3Jlc3MtaGVpZ2h0ICRwcm9ncmVzcy1oZWlnaHQ7XG4vL31cblxuLy9AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4vLyAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4vLyAgICBhbmltYXRpb246ICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZyBwcm9ncmVzcy1iYXItc3RyaXBlcztcbi8vXG4vLyAgICBAaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiB7XG4vLyAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4vLyAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuLy8gICAgICB9XG4vLyAgICB9XG4vLyAgfVxuLy99XG4iLCIvLyB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgcHJvcGVydGllcyBpbmNsdWRlZCBmb3IgYnV0dG9uIHZlcnNpb24uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi5idG4tY2xvc2Uge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgd2lkdGg6ICRidG4tY2xvc2Utd2lkdGg7XG4gIGhlaWdodDogJGJ0bi1jbG9zZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRidG4tY2xvc2UtcGFkZGluZy15ICRidG4tY2xvc2UtcGFkZGluZy14O1xuICBjb2xvcjogJGJ0bi1jbG9zZS1jb2xvcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgZXNjYXBlLXN2ZygkYnRuLWNsb3NlLWJnKSBjZW50ZXIgLyAkYnRuLWNsb3NlLXdpZHRoIGF1dG8gbm8tcmVwZWF0OyAvLyBpbmNsdWRlIHRyYW5zcGFyZW50IGZvciBidXR0b24gZWxlbWVudHNcbiAgYm9yZGVyOiAwOyAvLyBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbiAgb3BhY2l0eTogJGJ0bi1jbG9zZS1vcGFjaXR5O1xuXG4gIC8vIE92ZXJyaWRlIDxhPidzIGhvdmVyIHN0eWxlXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYnRuLWNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiAkYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tY2xvc2UtZm9jdXMtc2hhZG93O1xuICAgIG9wYWNpdHk6ICRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIG9wYWNpdHk6ICRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTtcbiAgfVxufVxuXG4uYnRuLWNsb3NlLXdoaXRlIHtcbiAgZmlsdGVyOiAkYnRuLWNsb3NlLXdoaXRlLWZpbHRlcjtcbn1cbiIsIi8vXG4vLyBWaXN1YWxseSBoaWRkZW5cbi8vXG5cbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBIaWRlIGNvbnRlbnQgdmlzdWFsbHkgd2hpbGUga2VlcGluZyBpdCBhY2Nlc3NpYmxlIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuKCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi8vIFVzZSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZCwgb3Igb25lIG9mIGl0cyBjaGlsZCBlbGVtZW50cyBpcyBmb2N1c2VkXG4vLyAoaS5lLiB3aGVuIGZvY3VzIGlzIHdpdGhpbiB0aGUgZWxlbWVudC9jb250YWluZXIgdGhhdCB0aGUgY2xhc3Mgd2FzIGFwcGxpZWQgdG8pXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZSgpIHtcbiAgJjpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xuICB9XG59XG4iLCIvLyBVdGlsaXR5IGdlbmVyYXRvclxuLy8gVXNlZCB0byBnZW5lcmF0ZSB1dGlsaXRpZXMgJiBwcmludCB1dGlsaXRpZXNcbkBtaXhpbiBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgsICRpcy1yZnMtbWVkaWEtcXVlcnk6IGZhbHNlKSB7XG4gICR2YWx1ZXM6IG1hcC1nZXQoJHV0aWxpdHksIHZhbHVlcyk7XG5cbiAgLy8gSWYgdGhlIHZhbHVlcyBhcmUgYSBsaXN0IG9yIHN0cmluZywgY29udmVydCBpdCBpbnRvIGEgbWFwXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09IFwic3RyaW5nXCIgb3IgdHlwZS1vZihudGgoJHZhbHVlcywgMSkpICE9IFwibGlzdFwiIHtcbiAgICAkdmFsdWVzOiB6aXAoJHZhbHVlcywgJHZhbHVlcyk7XG4gIH1cblxuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgJHByb3BlcnRpZXM6IG1hcC1nZXQoJHV0aWxpdHksIHByb3BlcnR5KTtcblxuICAgIC8vIE11bHRpcGxlIHByb3BlcnRpZXMgYXJlIHBvc3NpYmxlLCBmb3IgZXhhbXBsZSB3aXRoIHZlcnRpY2FsIG9yIGhvcml6b250YWwgbWFyZ2lucyBvciBwYWRkaW5nc1xuICAgIEBpZiB0eXBlLW9mKCRwcm9wZXJ0aWVzKSA9PSBcInN0cmluZ1wiIHtcbiAgICAgICRwcm9wZXJ0aWVzOiBhcHBlbmQoKCksICRwcm9wZXJ0aWVzKTtcbiAgICB9XG5cbiAgICAvLyBVc2UgY3VzdG9tIGNsYXNzIGlmIHByZXNlbnRcbiAgICAkcHJvcGVydHktY2xhc3M6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjbGFzcyksIG1hcC1nZXQoJHV0aWxpdHksIGNsYXNzKSwgbnRoKCRwcm9wZXJ0aWVzLCAxKSk7XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZigkcHJvcGVydHktY2xhc3MgPT0gbnVsbCwgXCJcIiwgJHByb3BlcnR5LWNsYXNzKTtcblxuICAgIC8vIFN0YXRlIHBhcmFtcyB0byBnZW5lcmF0ZSBwc2V1ZG8tY2xhc3Nlc1xuICAgICRzdGF0ZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIHN0YXRlKSwgbWFwLWdldCgkdXRpbGl0eSwgc3RhdGUpLCAoKSk7XG5cbiAgICAkaW5maXg6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCBzdHItc2xpY2UoJGluZml4LCAxLCAxKSA9PSBcIi1cIiwgc3RyLXNsaWNlKCRpbmZpeCwgMiksICRpbmZpeCk7XG5cbiAgICAvLyBEb24ndCBwcmVmaXggaWYgdmFsdWUga2V5IGlzIG51bGwgKGVnLiB3aXRoIHNoYWRvdyBjbGFzcylcbiAgICAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXI6IGlmKCRrZXksIGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCAkaW5maXggPT0gXCJcIiwgXCJcIiwgXCItXCIpICsgJGtleSwgXCJcIik7XG5cbiAgICBAaWYgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSB7XG4gICAgICAvLyBJbnNpZGUgdGhlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgJGlzLXJmcy1tZWRpYS1xdWVyeSB7XG4gICAgICAgICR2YWw6IHJmcy12YWx1ZSgkdmFsdWUpO1xuXG4gICAgICAgIC8vIERvIG5vdCByZW5kZXIgYW55dGhpbmcgaWYgZmx1aWQgYW5kIG5vbiBmbHVpZCB2YWx1ZXMgYXJlIHRoZSBzYW1lXG4gICAgICAgICR2YWx1ZTogaWYoJHZhbCA9PSByZnMtZmx1aWQtdmFsdWUoJHZhbHVlKSwgbnVsbCwgJHZhbCk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICR2YWx1ZTogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGlzLXJ0bDogbWFwLWdldCgkdXRpbGl0eSwgcnRsKTtcblxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cbiAgICAgIH1cbiAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0ge1xuICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGVhY2ggJHBzZXVkbyBpbiAkc3RhdGUge1xuICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDplbmQ6cmVtb3ZlICovXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAaWYgbm90ICRuIHtcbiAgICBAZXJyb3IgXCJicmVha3BvaW50IGAjeyRuYW1lfWAgbm90IGZvdW5kIGluIGAjeyRicmVha3BvaW50c31gXCI7XG4gIH1cbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2Zcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IHdvb2NvbW1lcmNlLXByb2R1Y3RzLXdpemFyZDtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL2ljb25zLnR0ZlwiKTtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL2ljb25zLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgICB1cmwoXCIuLi9mb250cy9pY29ucy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL2ljb25zLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cblxuQG1peGluIGljb24tc3R5bGVzIHtcbiAgICBmb250LWZhbWlseTogd29vY29tbWVyY2UtcHJvZHVjdHMtd2l6YXJkO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgLy8gc3BlYWs6IG5vbmU7IC8vIG9ubHkgbmVjZXNzYXJ5IGlmIG5vdCB1c2luZyB0aGUgcHJpdmF0ZSB1bmljb2RlIHJhbmdlIChmaXJzdEdseXBoIG9wdGlvbilcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuJWljb24ge1xuICAgIEBpbmNsdWRlIGljb24tc3R5bGVzO1xufVxuXG5AZnVuY3Rpb24gaWNvbi1jaGFyKCRmaWxlbmFtZSkge1xuICAgICRjaGFyOiBcIlwiO1xuXG4gICAgQGlmICRmaWxlbmFtZSA9PSBhbmdsZS1sZWZ0IHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDAxXCI7XG4gICAgfVxuICAgIFxuICAgIEBpZiAkZmlsZW5hbWUgPT0gYW5nbGUtcmlnaHQge1xuICAgICAgICAkY2hhcjogXCJcXEUwMDJcIjtcbiAgICB9XG4gICAgXG4gICAgQGlmICRmaWxlbmFtZSA9PSBjYXJ0LXJlbG9hZCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwM1wiO1xuICAgIH1cbiAgICBcbiAgICBAaWYgJGZpbGVuYW1lID09IGNhcnQge1xuICAgICAgICAkY2hhcjogXCJcXEUwMDRcIjtcbiAgICB9XG4gICAgXG4gICAgQGlmICRmaWxlbmFtZSA9PSBjdXJ2ZS1hcnJvdy1yaWdodCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwNVwiO1xuICAgIH1cbiAgICBcbiAgICBAaWYgJGZpbGVuYW1lID09IGZpbGUge1xuICAgICAgICAkY2hhcjogXCJcXEUwMDZcIjtcbiAgICB9XG4gICAgXG4gICAgQGlmICRmaWxlbmFtZSA9PSBmbGFnIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDA3XCI7XG4gICAgfVxuICAgIFxuICAgIEBpZiAkZmlsZW5hbWUgPT0gbGluayB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwOFwiO1xuICAgIH1cbiAgICBcbiAgICBAaWYgJGZpbGVuYW1lID09IHBlbmNpbCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwOVwiO1xuICAgIH1cbiAgICBcbiAgICBAaWYgJGZpbGVuYW1lID09IHJlbG9hZCB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwQVwiO1xuICAgIH1cbiAgICBcbiAgICBAaWYgJGZpbGVuYW1lID09IHNoYXJlIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDBCXCI7XG4gICAgfVxuICAgIFxuICAgIEBpZiAkZmlsZW5hbWUgPT0gdGljayB7XG4gICAgICAgICRjaGFyOiBcIlxcRTAwQ1wiO1xuICAgIH1cbiAgICBcbiAgICBAaWYgJGZpbGVuYW1lID09IHRyYXNoIHtcbiAgICAgICAgJGNoYXI6IFwiXFxFMDBEXCI7XG4gICAgfVxuICAgIFxuXG4gICAgQHJldHVybiAkY2hhcjtcbn1cblxuQG1peGluIGljb24oJGZpbGVuYW1lLCAkaW5zZXJ0OiBiZWZvcmUsICRleHRlbmQ6IHRydWUpIHtcbiAgICAmOjojeyRpbnNlcnR9IHtcbiAgICAgICAgQGlmICRleHRlbmQge1xuICAgICAgICAgICAgQGV4dGVuZCAlaWNvbjtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBpY29uLXN0eWxlcztcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnRlbnQ6IGljb24tY2hhcigkZmlsZW5hbWUpO1xuICAgIH1cbn0iLCIud2Nwdy1zcGlubmVyIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogY2FsYyg1MCUgLSB2YXIoLS13Y3B3LWxvYWRpbmctc3Bpbm5lci1zaXplLCAkbG9hZGluZy1zcGlubmVyLXNpemUpIC8gMik7XG4gICAgei1pbmRleDogMTA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLXdjcHctbG9hZGluZy1zcGlubmVyLXNpemUsICRsb2FkaW5nLXNwaW5uZXItc2l6ZSk7XG4gICAgaGVpZ2h0OiB2YXIoLS13Y3B3LWxvYWRpbmctc3Bpbm5lci1zaXplLCAkbG9hZGluZy1zcGlubmVyLXNpemUpO1xuICAgIG1hcmdpbjogYXV0bztcblxuICAgICYtd3JhcHBlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICYtYmFyIHtcbiAgICAgICAgc3Ryb2tlOiB2YXIoLS13Y3B3LXNwaW5uZXItYmFyLXN0cm9rZS1jb2xvciwgJGxvYWRpbmctc3Bpbm5lci1iYXItc3Ryb2tlLWNvbG9yKTtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiB2YXIoLS13Y3B3LXNwaW5uZXItYmFyLXN0cm9rZS13aWR0aCwgJGxvYWRpbmctc3Bpbm5lci1iYXItc3Ryb2tlLXdpZHRoKTtcbiAgICAgICAgc3Ryb2tlLW9wYWNpdHk6IHZhcigtLXdjcHctc3Bpbm5lci1iYXItc3Ryb2tlLW9wYWNpdHksICRsb2FkaW5nLXNwaW5uZXItYmFyLXN0cm9rZS1vcGFjaXR5KTtcbiAgICAgICAgZmlsbDogbm9uZTtcbiAgICB9XG5cbiAgICAmLWZpbGwge1xuICAgICAgICB0cmFuc2l0aW9uOiBzdHJva2UtZGFzaG9mZnNldCAwLjFzIGVhc2UtaW4tb3V0O1xuICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogY2FsYygxMDBweCAtIDFweCAqIG1heCh2YXIoLS13Y3B3LWxvYWRpbmctc3Bpbm5lci1taW4tdmFsdWUsICRsb2FkaW5nLXNwaW5uZXItbWluLXZhbHVlKSwgbWluKDEwMCwgdmFyKC0td2Nwdy1sb2FkaW5nLXByb2dyZXNzLCAkbG9hZGluZy1zcGlubmVyLW1pbi12YWx1ZSkpKSk7XG4gICAgICAgIHN0cm9rZTogdmFyKC0td2Nwdy1zcGlubmVyLWJhci1zdHJva2UtY29sb3IsICRsb2FkaW5nLXNwaW5uZXItZmlsbC1zdHJva2UtY29sb3IpO1xuICAgICAgICBzdHJva2Utd2lkdGg6IHZhcigtLXdjcHctc3Bpbm5lci1maWxsLXN0cm9rZS13aWR0aCwgJGxvYWRpbmctc3Bpbm5lci1maWxsLXN0cm9rZS13aWR0aCk7XG4gICAgICAgIHN0cm9rZS1vcGFjaXR5OiB2YXIoLS13Y3B3LXNwaW5uZXItZmlsbC1zdHJva2Utb3BhY2l0eSwgJGxvYWRpbmctc3Bpbm5lci1maWxsLXN0cm9rZS1vcGFjaXR5KTtcbiAgICAgICAgZmlsbDogbm9uZTtcbiAgICB9XG59XG4iLCIud2Nwdy1jb250cm9scyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAkc3BhY2VyLXhzO1xuICAgIHBhZGRpbmctdG9wOiAkc3BhY2VyLXNtO1xuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2VyLXNtO1xuXG4gICAgJjplbXB0eSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi1zcGFjZXIge1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxufVxuXG4ud2Nwdy1jb250cm9sIHtcbiAgICAmW2FyaWEtYnVzeT1cInRydWVcIl0ge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvc3RyaXBlLWFuaW1hdGVkLnN2Z1wiKTtcbiAgICB9XG5cbiAgICAmLmlzLXdpZGdldC10b2dnbGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjppcyguaWNvbi1zdGFydCwgLmljb24tbGVmdCk6OmJlZm9yZSwgLy8gQHNpbmNlIDEyLjAuMCAtIG9sZGVyIHZlcnNpb25zIHN1cHBvcnRcbiAgICAgICAgJjppcyguaWNvbi1lbmQsIC5pY29uLXJpZ2h0KTo6YWZ0ZXIgeyAvLyBAc2luY2UgMTIuMC4wIC0gb2xkZXIgdmVyc2lvbnMgc3VwcG9ydFxuICAgICAgICAgICAgY29udGVudDogaWNvbi1jaGFyKGNhcnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy13aWRnZXQtdG9nZ2xlICYge1xuICAgICAgICAkc2VsZjogJjtcblxuICAgICAgICBAYXQtcm9vdCBbZGlyPVwicnRsXCJdICN7JHNlbGZ9IHtcbiAgICAgICAgICAgICYtYmFkZ2Uge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTI1JSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWJhZGdlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGluc2V0LWlubGluZS1zdGFydDogMTAwJTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMS4yNXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiBjb2xvci1jb250cmFzdCgkcHJpbWFyeSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMjUlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYmFjayB7XG4gICAgICAgICY6aXMoLmljb24tc3RhcnQsIC5pY29uLWxlZnQpOjpiZWZvcmUsIC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICY6aXMoLmljb24tZW5kLCAuaWNvbi1yaWdodCk6OmFmdGVyIHsgLy8gQHNpbmNlIDEyLjAuMCAtIG9sZGVyIHZlcnNpb25zIHN1cHBvcnRcbiAgICAgICAgICAgIGNvbnRlbnQ6IGljb24tY2hhcihhbmdsZS1sZWZ0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtc2tpcCB7XG4gICAgICAgICY6aXMoLmljb24tc3RhcnQsIC5pY29uLWxlZnQpOjpiZWZvcmUsIC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICY6aXMoLmljb24tZW5kLCAuaWNvbi1yaWdodCk6OmFmdGVyIHsgLy8gQHNpbmNlIDEyLjAuMCAtIG9sZGVyIHZlcnNpb25zIHN1cHBvcnRcbiAgICAgICAgICAgIGNvbnRlbnQ6IGljb24tY2hhcihjdXJ2ZS1hcnJvdy1yaWdodCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLXJlc2V0IHtcbiAgICAgICAgJjppcyguaWNvbi1zdGFydCwgLmljb24tbGVmdCk6OmJlZm9yZSwgLy8gQHNpbmNlIDEyLjAuMCAtIG9sZGVyIHZlcnNpb25zIHN1cHBvcnRcbiAgICAgICAgJjppcyguaWNvbi1lbmQsIC5pY29uLXJpZ2h0KTo6YWZ0ZXIgeyAvLyBAc2luY2UgMTIuMC4wIC0gb2xkZXIgdmVyc2lvbnMgc3VwcG9ydFxuICAgICAgICAgICAgY29udGVudDogaWNvbi1jaGFyKHJlbG9hZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLXN0YXJ0LFxuICAgICYuaXMtbmV4dCB7XG4gICAgICAgICY6aXMoLmljb24tc3RhcnQsIC5pY29uLWxlZnQpOjpiZWZvcmUsIC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICY6aXMoLmljb24tZW5kLCAuaWNvbi1yaWdodCk6OmFmdGVyIHsgLy8gQHNpbmNlIDEyLjAuMCAtIG9sZGVyIHZlcnNpb25zIHN1cHBvcnRcbiAgICAgICAgICAgIGNvbnRlbnQ6IGljb24tY2hhcihhbmdsZS1yaWdodCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLXJlc3VsdC1wZGYge1xuICAgICAgICAmOmlzKC5pY29uLXN0YXJ0LCAuaWNvbi1sZWZ0KTo6YmVmb3JlLCAvLyBAc2luY2UgMTIuMC4wIC0gb2xkZXIgdmVyc2lvbnMgc3VwcG9ydFxuICAgICAgICAmOmlzKC5pY29uLWVuZCwgLmljb24tcmlnaHQpOjphZnRlciB7IC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICAgICBjb250ZW50OiBpY29uLWNoYXIoZmlsZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLXRvLXJlc3VsdHMge1xuICAgICAgICAmOmlzKC5pY29uLXN0YXJ0LCAuaWNvbi1sZWZ0KTo6YmVmb3JlLCAvLyBAc2luY2UgMTIuMC4wIC0gb2xkZXIgdmVyc2lvbnMgc3VwcG9ydFxuICAgICAgICAmOmlzKC5pY29uLWVuZCwgLmljb24tcmlnaHQpOjphZnRlciB7IC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICAgICBjb250ZW50OiBpY29uLWNoYXIoZmxhZyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLXNoYXJlIHtcbiAgICAgICAgJjppcyguaWNvbi1zdGFydCwgLmljb24tbGVmdCk6OmJlZm9yZSwgLy8gQHNpbmNlIDEyLjAuMCAtIG9sZGVyIHZlcnNpb25zIHN1cHBvcnRcbiAgICAgICAgJjppcyguaWNvbi1lbmQsIC5pY29uLXJpZ2h0KTo6YWZ0ZXIgeyAvLyBAc2luY2UgMTIuMC4wIC0gb2xkZXIgdmVyc2lvbnMgc3VwcG9ydFxuICAgICAgICAgICAgY29udGVudDogaWNvbi1jaGFyKHNoYXJlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWRkLXRvLWNhcnQge1xuICAgICAgICAmOmlzKC5pY29uLXN0YXJ0LCAuaWNvbi1sZWZ0KTo6YmVmb3JlLCAvLyBAc2luY2UgMTIuMC4wIC0gb2xkZXIgdmVyc2lvbnMgc3VwcG9ydFxuICAgICAgICAmOmlzKC5pY29uLWVuZCwgLmljb24tcmlnaHQpOjphZnRlciB7IC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICAgICBjb250ZW50OiBpY29uLWNoYXIoY2FydCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFkZC10by1jYXJ0LXJlcGVhdCB7XG4gICAgICAgICY6aXMoLmljb24tc3RhcnQsIC5pY29uLWxlZnQpOjpiZWZvcmUsIC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICY6aXMoLmljb24tZW5kLCAuaWNvbi1yaWdodCk6OmFmdGVyIHsgLy8gQHNpbmNlIDEyLjAuMCAtIG9sZGVyIHZlcnNpb25zIHN1cHBvcnRcbiAgICAgICAgICAgIGNvbnRlbnQ6IGljb24tY2hhcihjYXJ0LXJlbG9hZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLXVwZGF0ZS1pbi1jYXJ0IHtcbiAgICAgICAgJjppcyguaWNvbi1zdGFydCwgLmljb24tbGVmdCk6OmJlZm9yZSwgLy8gQHNpbmNlIDEyLjAuMCAtIG9sZGVyIHZlcnNpb25zIHN1cHBvcnRcbiAgICAgICAgJjppcyguaWNvbi1lbmQsIC5pY29uLXJpZ2h0KTo6YWZ0ZXIgeyAvLyBAc2luY2UgMTIuMC4wIC0gb2xkZXIgdmVyc2lvbnMgc3VwcG9ydFxuICAgICAgICAgICAgY29udGVudDogaWNvbi1jaGFyKGNhcnQtcmVsb2FkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtZWRpdC1pbi1jYXJ0IHtcbiAgICAgICAgJjppcyguaWNvbi1zdGFydCwgLmljb24tbGVmdCk6OmJlZm9yZSwgLy8gQHNpbmNlIDEyLjAuMCAtIG9sZGVyIHZlcnNpb25zIHN1cHBvcnRcbiAgICAgICAgJjppcyguaWNvbi1lbmQsIC5pY29uLXJpZ2h0KTo6YWZ0ZXIgeyAvLyBAc2luY2UgMTIuMC4wIC0gb2xkZXIgdmVyc2lvbnMgc3VwcG9ydFxuICAgICAgICAgICAgY29udGVudDogaWNvbi1jaGFyKHBlbmNpbCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLXJlbW92ZS1mcm9tLWNhcnQge1xuICAgICAgICAmOmlzKC5pY29uLXN0YXJ0LCAuaWNvbi1sZWZ0KTo6YmVmb3JlLCAvLyBAc2luY2UgMTIuMC4wIC0gb2xkZXIgdmVyc2lvbnMgc3VwcG9ydFxuICAgICAgICAmOmlzKC5pY29uLWVuZCwgLmljb24tcmlnaHQpOjphZnRlciB7IC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICAgICBjb250ZW50OiBpY29uLWNoYXIodHJhc2gpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1maWx0ZXItcmVzZXQge1xuICAgICAgICAmOmlzKC5pY29uLXN0YXJ0LCAuaWNvbi1sZWZ0KTo6YmVmb3JlLCAvLyBAc2luY2UgMTIuMC4wIC0gb2xkZXIgdmVyc2lvbnMgc3VwcG9ydFxuICAgICAgICAmOmlzKC5pY29uLWVuZCwgLmljb24tcmlnaHQpOjphZnRlciB7IC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICAgICBjb250ZW50OiBpY29uLWNoYXIocmVsb2FkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtZmlsdGVyLXN1Ym1pdCB7XG4gICAgICAgICY6aXMoLmljb24tc3RhcnQsIC5pY29uLWxlZnQpOjpiZWZvcmUsIC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICY6aXMoLmljb24tZW5kLCAuaWNvbi1yaWdodCk6OmFmdGVyIHsgLy8gQHNpbmNlIDEyLjAuMCAtIG9sZGVyIHZlcnNpb25zIHN1cHBvcnRcbiAgICAgICAgICAgIGNvbnRlbnQ6IGljb24tY2hhcih0aWNrKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtc3RlcC10b2dnbGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLXNtO1xuICAgIH1cblxuICAgICYuc2hvdy1pY29uLFxuICAgICYuc2hvdy1pY29uLW9uLW1vYmlsZSB7XG4gICAgICAgICYuYnRuLXNtIHtcbiAgICAgICAgICAgICY6aXMoLmljb24tc3RhcnQsIC5pY29uLWxlZnQpOjpiZWZvcmUsIC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICAgICAmOmlzKC5pY29uLWVuZCwgLmljb24tcmlnaHQpOjphZnRlciB7IC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwLjRlbTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlcixcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNob3ctaWNvbiB7XG4gICAgICAgICY6aXMoLmljb24tc3RhcnQsIC5pY29uLWxlZnQpOjpiZWZvcmUsIC8vIEBzaW5jZSAxMi4wLjAgLSBvbGRlciB2ZXJzaW9ucyBzdXBwb3J0XG4gICAgICAgICY6aXMoLmljb24tZW5kLCAuaWNvbi1yaWdodCk6OmFmdGVyIHsgLy8gQHNpbmNlIDEyLjAuMCAtIG9sZGVyIHZlcnNpb25zIHN1cHBvcnRcbiAgICAgICAgICAgIEBpbmNsdWRlIGljb24tc3R5bGVzO1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAuMmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zaG93LWljb24tb24tbW9iaWxlIHtcbiAgICAgICAgJjppcyguaWNvbi1zdGFydCwgLmljb24tbGVmdCk6OmJlZm9yZSwgLy8gQHNpbmNlIDEyLjAuMCAtIG9sZGVyIHZlcnNpb25zIHN1cHBvcnRcbiAgICAgICAgJjppcyguaWNvbi1lbmQsIC5pY29uLXJpZ2h0KTo6YWZ0ZXIgeyAvLyBAc2luY2UgMTIuMC4wIC0gb2xkZXIgdmVyc2lvbnMgc3VwcG9ydFxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvbi1zdHlsZXM7XG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwLjJlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaGlkZS10ZXh0ICYge1xuICAgICAgICAmLWlubmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5oaWRlLXRleHQtb24tbW9iaWxlICYge1xuICAgICAgICAmLWlubmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1wcmljZSB7XG4gICAgICAgICZbY2xhc3NdIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgZ2FwOiAkc3BhY2VyLXNtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtaXRlbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgZ2FwOiAkc3BhY2VyLXNtO1xuXG4gICAgICAgICAgICAmLW5hbWVbY2xhc3NdIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi12YWx1ZVtjbGFzc10ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLndjcHctaGVhZGVyIHtcbiAgICAtLXdjcHctaGVhZGVyLXN0aWNreS1vZmZzZXQ6IDA7XG5cbiAgICAmLmlzLXN0aWNreSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogdmFyKC0td2Nwdy1oZWFkZXItc3RpY2t5LW9mZnNldCwgMCk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiB2YXIoLS13Y3B3LWhlYWRlci1zdHVjay16LWluZGV4LCAkaGVhZGVyLXN0dWNrLXotaW5kZXgpO1xuICAgICAgICBjb2xvcjogdmFyKC0td2Nwdy1oZWFkZXItc3R1Y2stY29sb3IsICRoZWFkZXItc3R1Y2stY29sb3IpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IHZhcigtLXdjcHctaGVhZGVyLXN0dWNrLWJhY2tkcm9wLWZpbHRlciwgJGhlYWRlci1zdHVjay1iYWNrZHJvcC1maWx0ZXIpO1xuXG4gICAgICAgICZbc3R1Y2tdIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdjcHctaGVhZGVyLXN0dWNrLWJnLCAkaGVhZGVyLXN0dWNrLWJnKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXdjcHctaGVhZGVyLXN0dWNrLWJveC1zaGFkb3csICRoZWFkZXItc3R1Y2stYm94LXNoYWRvdyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICAtLXdjcHctaGVhZGVyLXN0aWNreS1vZmZzZXQ6IHZhcigtLXdjcHctaGVhZGVyLXN0aWNreS1vZmZzZXQtI3skYnJlYWtwb2ludH0sIDApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChicmVha3BvaW50LW1heCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpKSB7XG4gICAgICAgICAgICAmLmlzLXN0aWNreS0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogdmFyKC0td2Nwdy1oZWFkZXItc3RpY2t5LW9mZnNldCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0td2Nwdy1oZWFkZXItc3R1Y2stY29sb3IsICRoZWFkZXItc3R1Y2stY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IHZhcigtLXdjcHctaGVhZGVyLXN0dWNrLWJhY2tkcm9wLWZpbHRlciwgJGhlYWRlci1zdHVjay1iYWNrZHJvcC1maWx0ZXIpO1xuXG4gICAgICAgICAgICAgICAgICAgICZbc3R1Y2tdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdjcHctaGVhZGVyLXN0dWNrLWJnLCAkaGVhZGVyLXN0dWNrLWJnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXdjcHctaGVhZGVyLXN0dWNrLWJveC1zaGFkb3csICRoZWFkZXItc3R1Y2stYm94LXNoYWRvdyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKGJyZWFrcG9pbnQtbWluKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykpIHtcbiAgICAgICAgICAgICYuaXMtc3RpY2t5LXVwLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogdmFyKC0td2Nwdy1oZWFkZXItc3RpY2t5LW9mZnNldCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0td2Nwdy1oZWFkZXItc3R1Y2stY29sb3IsICRoZWFkZXItc3R1Y2stY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IHZhcigtLXdjcHctaGVhZGVyLXN0dWNrLWJhY2tkcm9wLWZpbHRlciwgJGhlYWRlci1zdHVjay1iYWNrZHJvcC1maWx0ZXIpO1xuXG4gICAgICAgICAgICAgICAgICAgICZbc3R1Y2tdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdjcHctaGVhZGVyLXN0dWNrLWJnLCAkaGVhZGVyLXN0dWNrLWJnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXdjcHctaGVhZGVyLXN0dWNrLWJveC1zaGFkb3csICRoZWFkZXItc3R1Y2stYm94LXNoYWRvdyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIud2Nwdy1tYWluIHtcbiAgICBncmlkLWFyZWE6IG1haW47XG5cbiAgICAmLXJvdyB7XG4gICAgICAgIC0td2Nwdy1tYWluLXJvdy1nYXA6ICN7JHNwYWNlci1tZH07XG5cbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAwICN7JHNwYWNlci1tZH07XG4gICAgICAgIGdhcDogMCB2YXIoLS13Y3B3LW1haW4tcm93LWdhcCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwic2lkZWJhclwiIFwic2lkZWJhcjJcIiBcIm1haW5cIjtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heChhdXRvLCAxMDAlKTtcblxuICAgICAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgICAgIC0td2Nwdy1zaWRlYmFyLXdpZHRoOiB2YXIoLS13Y3B3LXNpZGViYXItd2lkdGgtI3skYnJlYWtwb2ludH0sICN7JHNpZGViYXItd2lkdGh9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBtaXhpbiBzaWRlYmFyLWxlZnQtcmlnaHQoJHNpZGU6IHJpZ2h0KSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDBmciAxZnI7XG5cbiAgICAgICAgICAgIEBpZiAkc2lkZSA9PSByaWdodCB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJtYWluIHNpZGViYXJcIiBcIi4gc2lkZWJhcjJcIjtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJzaWRlYmFyIG1haW5cIiBcInNpZGViYXIyIC5cIjtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBjYXJvdXNlbCB2aWV3IG92ZXJzY3JvbGwgYnVnIGZpeFxuICAgICAgICAgICAgJi5oYXMtc2lkZWJhciB7XG4gICAgICAgICAgICAgICAgQGlmICRzaWRlID09IHJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBjYWxjKDEwMCUgLSB2YXIoLS13Y3B3LXNpZGViYXItd2lkdGgpIC0gdmFyKC0td2Nwdy1tYWluLXJvdy1nYXApKSBhdXRvO1xuICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gY2FsYygxMDAlIC0gdmFyKC0td2Nwdy1zaWRlYmFyLXdpZHRoKSAtIHZhcigtLXdjcHctbWFpbi1yb3ctZ2FwKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAud2Nwdy1tYWluIHtcbiAgICAgICAgICAgICAgICBncmlkLXJvdy1zdGFydDogMTtcbiAgICAgICAgICAgICAgICBncmlkLXJvdy1lbmQ6IC0xO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IC53Y3B3LWZvcm0tZmlsdGVyLFxuICAgICAgICAgICAgLndjcHctd2lkZ2V0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0td2Nwdy1zaWRlYmFyLXdpZHRoLCAjeyRzaWRlYmFyLXdpZHRofSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBjYW4gdXNlICY6aGFzKC53Y3B3LW1haW46b25seS1jaGlsZCkgdGhlbiBmaXJlZm94IHdpbGwgYmUgcmVhZHlcbiAgICAgICAgJjpub3QoLmhhcy1zaWRlYmFyKSB7XG4gICAgICAgICAgICBnYXA6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLXNpZGViYXItYm90dG9tIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwibWFpblwiIFwic2lkZWJhclwiIFwic2lkZWJhcjJcIjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuaXMtc2lkZWJhci1yaWdodCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2lkZWJhci1sZWZ0LXJpZ2h0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICAgICAgQGlmIChicmVha3BvaW50LW1heCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpKSB7XG4gICAgICAgICAgICAgICAgJi5pcy1zaWRlYmFyLXJpZ2h0LSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc2lkZWJhci1sZWZ0LXJpZ2h0KCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLXNpZGViYXItcmlnaHQtYWx3YXlzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpZGViYXItbGVmdC1yaWdodCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1zaWRlYmFyLWxlZnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpZGViYXItbGVmdC1yaWdodChsZWZ0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAgICAgICBAaWYgKGJyZWFrcG9pbnQtbWF4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykpIHtcbiAgICAgICAgICAgICAgICAmLmlzLXNpZGViYXItbGVmdC0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpZGViYXItbGVmdC1yaWdodChsZWZ0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaXMtc2lkZWJhci1sZWZ0LWFsd2F5cyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaWRlYmFyLWxlZnQtcmlnaHQobGVmdCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLWV4cGFuZGVkLXNlcXVlbmNlLW1vZGUge1xuICAgICAgICAgICAgLndjcHctZm9ybS5pcy1hY3RpdmUge1xuICAgICAgICAgICAgICAgICYgfiAud2Nwdy1mb3JtIHtcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IHZhcigtLXdjcHctc3RlcC1kaXNhYmxlZC1vcGFjaXR5LCAkc3RlcC1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiB2YXIoLS13Y3B3LXN0ZXAtZGlzYWJsZWQtZmlsdGVyLCAkc3RlcC1kaXNhYmxlZC1maWx0ZXIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi53Y3B3LW1vZGFsIHtcbiAgICBjb2xvcjogJG1vZGFsLWNvbnRlbnQtY29sb3I7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBhZGRpbmc6IHZhcigtLXdjcHctbW9kYWwtcGFkZGluZywgJHNwYWNlci1tZCk7XG4gICAgd2lkdGg6IHZhcigtLXdjcHctbW9kYWwtd2lkdGgsICRtb2RhbC1sZyk7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS13Y3B3LW1vZGFsLW1heC13aWR0aCwgOTh2dyk7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2Nwdy1tb2RhbC1iZy1jb2xvciwgJG1vZGFsLWNvbnRlbnQtYmcpO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgYm9yZGVyOiB2YXIoLS13Y3B3LW1vZGFsLWJvcmRlciwgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0td2Nwdy1tb2RhbC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS13Y3B3LW1vZGFsLWJveC1zaGFkb3csICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAgIG91dGxpbmU6IDA7XG5cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiB2YXIoLS13Y3B3LW1vZGFsLWFuaW1hdGlvbiwgJG1vZGFsLWFuaW1hdGlvbik7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLXdjcHctbW9kYWwtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgJG1vZGFsLWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24pO1xuXG4gICAgICAgICZbd2Nwdy1yZW9wZW4tbW9kYWw9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgICYsXG4gICAgICAgICAgICAmOjpiYWNrZHJvcCB7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjp0YXJnZXQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDEwMHZ3IHRyYW5zcGFyZW50aXplKCRtb2RhbC1iYWNrZHJvcC1iZywgJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpO1xuICAgIH1cblxuICAgICY6OmJhY2tkcm9wIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRpemUoJG1vZGFsLWJhY2tkcm9wLWJnLCAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSk7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogdmFyKC0td2Nwdy1tb2RhbC1iYWNrZHJvcC1maWx0ZXIsICRtb2RhbC1iYWNrZHJvcC1maWx0ZXIpO1xuXG4gICAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiB2YXIoLS13Y3B3LW1vZGFsLWJhY2tkcm9wLWFuaW1hdGlvbiwgJG1vZGFsLWJhY2tkcm9wLWFuaW1hdGlvbik7XG4gICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS13Y3B3LW1vZGFsLWJhY2tkcm9wLWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sICRtb2RhbC1iYWNrZHJvcC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtY2xvc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogJHNwYWNlci1zbTtcbiAgICAgICAgaW5zZXQtaW5saW5lLWVuZDogJHNwYWNlci1zbTtcbiAgICAgICAgei1pbmRleDogNTtcbiAgICB9XG59XG5cbmh0bWw6aGFzKC53Y3B3LW1vZGFsW29wZW5dKSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuQGtleWZyYW1lcyB3Y3B3LW1vZGFsIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtM3JlbSwgMCk7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB3Y3B3LW1vZGFsLWJhY2tkcm9wIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxufVxuIiwiLndjcHctbmF2IHtcbiAgICAtLXdjcHctbmF2LXN0aWNreS1vZmZzZXQ6IDA7XG5cbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlci1tZDtcblxuICAgICYuaXMtc3RpY2t5IHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiB2YXIoLS13Y3B3LW5hdi1zdGlja3ktb2Zmc2V0LCAwKTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogdmFyKC0td2Nwdy1uYXYtc3R1Y2stYmFja2Ryb3AtZmlsdGVyLCAkbmF2LXN0dWNrLWJhY2tkcm9wLWZpbHRlcik7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkc3BhY2VyLW1kO1xuXG4gICAgICAgICZbc3R1Y2tdIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdjcHctbmF2LXN0dWNrLWJnLCAkbmF2LXN0dWNrLWJnKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXdjcHctbmF2LXN0dWNrLWJveC1zaGFkb3csICRuYXYtc3R1Y2stYm94LXNoYWRvdyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICAtLXdjcHctbmF2LXN0aWNreS1vZmZzZXQ6IHZhcigtLXdjcHctbmF2LXN0aWNreS1vZmZzZXQtI3skYnJlYWtwb2ludH0sIDApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChicmVha3BvaW50LW1heCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpKSB7XG4gICAgICAgICAgICAmLmlzLXN0aWNreS0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogdmFyKC0td2Nwdy1uYXYtc3RpY2t5LW9mZnNldCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IHZhcigtLXdjcHctbmF2LXN0dWNrLWJhY2tkcm9wLWZpbHRlciwgJG5hdi1zdHVjay1iYWNrZHJvcC1maWx0ZXIpO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogJHNwYWNlci1tZDtcblxuICAgICAgICAgICAgICAgICAgICAmW3N0dWNrXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13Y3B3LW5hdi1zdHVjay1iZywgJG5hdi1zdHVjay1iZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS13Y3B3LW5hdi1zdHVjay1ib3gtc2hhZG93LCAkbmF2LXN0dWNrLWJveC1zaGFkb3cpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChicmVha3BvaW50LW1pbigkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpKSB7XG4gICAgICAgICAgICAmLmlzLXN0aWNreS11cC0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IHZhcigtLXdjcHctbmF2LXN0aWNreS1vZmZzZXQsIDApO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiB2YXIoLS13Y3B3LW5hdi1zdHVjay1iYWNrZHJvcC1maWx0ZXIsICRuYXYtc3R1Y2stYmFja2Ryb3AtZmlsdGVyKTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6ICRzcGFjZXItbWQ7XG5cbiAgICAgICAgICAgICAgICAgICAgJltzdHVja10ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2Nwdy1uYXYtc3R1Y2stYmcsICRuYXYtc3R1Y2stYmcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0td2Nwdy1uYXYtc3R1Y2stYm94LXNoYWRvdywgJG5hdi1zdHVjay1ib3gtc2hhZG93KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtYnV0dG9uIHtcbiAgICAgICAgJi5idG4ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogJHNwYWNlci1zbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1zbTtcblxuICAgICAgICAgICAgJi5oYXMtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtdGl0bGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1zdWItdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjllbTtcblxuICAgICAgICAgICAgJjplbXB0eSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS13Y3B3LW5hdi1pdGVtLXRodW1ibmFpbC1zaXplLCAkbmF2LWl0ZW0tdGh1bWJuYWlsLXNpemUpO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogdmFyKC0td2Nwdy1uYXYtaXRlbS10aHVtYm5haWwtc2l6ZSwgJG5hdi1pdGVtLXRodW1ibmFpbC1zaXplKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGNvdW50ZXItcmVzZXQ6IHdjcHctbmF2O1xuXG4gICAgICAgICZbY2xhc3NdIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmlzKFxuICAgICAgICAgICAgLm5hdixcbiAgICAgICAgICAgIC5pcy1saW5lLFxuICAgICAgICAgICAgLmlzLWxpbmUtaG9yaXpvbnRhbCxcbiAgICAgICAgICAgIC5pcy1wcm9ncmVzcyxcbiAgICAgICAgICAgIC5pcy1wYW5lbFxuICAgICAgICApIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGN1c3RvbS1zY3JvbGwoKTtcblxuICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuXG4gICAgICAgICAgICAud2Nwdy1uYXYtbGlzdC1pdGVtIHtcbiAgICAgICAgICAgICAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaXMtYnV0dG9ucyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgZ2FwOiAkc3BhY2VyLXNtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy10YWJzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLXBpbGxzIHtcbiAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjppcyhcbiAgICAgICAgICAgIC5pcy1saW5lLFxuICAgICAgICAgICAgLmlzLWxpbmUtaG9yaXpvbnRhbFxuICAgICAgICApIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgLndjcHctbmF2LWxpc3QtaXRlbSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4OiAxIDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgJi5wYXN0IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXdjcHctbmF2LWxpbmUtaXRlbS1wYXN0LWNvbG9yLCAkbmF2LWxpbmUtaXRlbS1wYXN0LWNvbG9yKTtcblxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXdjcHctbmF2LWxpbmUtaXRlbS1wYXN0LWNvbG9yLCAkbmF2LWxpbmUtaXRlbS1wYXN0LWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC53Y3B3LW5hdi1saXN0LWl0ZW0tYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13Y3B3LW5hdi1saW5lLWl0ZW0tcGFzdC1jb2xvciwgJG5hdi1saW5lLWl0ZW0tcGFzdC1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0td2Nwdy1uYXYtbGluZS1pdGVtLXBhc3QtY2lyY2xlLWNvbG9yLCAkbmF2LWxpbmUtaXRlbS1wYXN0LWNpcmNsZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2Nwdy1uYXYtbGluZS1pdGVtLXBhc3QtY2lyY2xlLWJnLCAkbmF2LWxpbmUtaXRlbS1wYXN0LWNpcmNsZS1iZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13Y3B3LW5hdi1saW5lLWl0ZW0tYWN0aXZlLWNvbG9yLCAkbmF2LWxpbmUtaXRlbS1hY3RpdmUtY29sb3IpO1xuXG4gICAgICAgICAgICAgICAgICAgIC53Y3B3LW5hdi1saXN0LWl0ZW0tYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13Y3B3LW5hdi1saW5lLWl0ZW0tYWN0aXZlLWNvbG9yLCAkbmF2LWxpbmUtaXRlbS1hY3RpdmUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXdjcHctbmF2LWxpbmUtaXRlbS1hY3RpdmUtY2lyY2xlLWNvbG9yLCAkbmF2LWxpbmUtaXRlbS1hY3RpdmUtY2lyY2xlLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13Y3B3LW5hdi1saW5lLWl0ZW0tYWN0aXZlLWNpcmNsZS1iZywgJG5hdi1saW5lLWl0ZW0tYWN0aXZlLWNpcmNsZS1iZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXdjcHctbmF2LWxpbmUtaXRlbS1kaXNhYmxlZC1jb2xvciwgJG5hdi1saW5lLWl0ZW0tZGlzYWJsZWQtY29sb3IpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgJltjbGFzc10ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgJHNwYWNlci1tZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHZhcigtLXdjcHctbmF2LWxpbmUtaXRlbS1kaXNhYmxlZC10cmFuc2Zvcm0sICRuYXYtbGluZS1pdGVtLWRpc2FibGVkLXRyYW5zZm9ybSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgY2FsYyh2YXIoLS13Y3B3LW5hdi1saW5lLWl0ZW0tY2lyY2xlLXNpemUsICRuYXYtbGluZS1pdGVtLWNpcmNsZS1zaXplKSAqIDAuNSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm5vdCguaGFzLXRodW1ibmFpbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBjb3VudGVyKHdjcHctbmF2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IHdjcHctbmF2O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1hcmVhOiB0aHVtYm5haWw7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS13Y3B3LW5hdi1saW5lLWl0ZW0tY2lyY2xlLWJveC1zaGFkb3csICRuYXYtbGluZS1pdGVtLWNpcmNsZS1ib3gtc2hhZG93KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdjcHctbmF2LWxpbmUtaXRlbS1jaXJjbGUtYmcsICRuYXYtbGluZS1pdGVtLWNpcmNsZS1iZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS13Y3B3LW5hdi1saW5lLWl0ZW0tY2lyY2xlLWJvcmRlci1yYWRpdXMsIDUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IHZhcigtLXdjcHctbmF2LWxpbmUtaXRlbS1jaXJjbGUtc2l6ZSwgJG5hdi1saW5lLWl0ZW0tY2lyY2xlLXNpemUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLXdjcHctbmF2LWxpbmUtaXRlbS1jaXJjbGUtc2l6ZSwgJG5hdi1saW5lLWl0ZW0tY2lyY2xlLXNpemUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS13Y3B3LW5hdi1saW5lLWl0ZW0tY2lyY2xlLXNpemUsICRuYXYtbGluZS1pdGVtLWNpcmNsZS1zaXplKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0td2Nwdy1uYXYtbGluZS1pdGVtLWNpcmNsZS1mb250LXNpemUsICRuYXYtbGluZS1pdGVtLWNpcmNsZS1mb250LXNpemUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXdjcHctbmF2LWxpbmUtaXRlbS1jaXJjbGUtZm9udC13ZWlnaHQsICRuYXYtbGluZS1pdGVtLWNpcmNsZS1mb250LXdlaWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0td2Nwdy1uYXYtbGluZS1pdGVtLWNpcmNsZS1zaXplLCAkbmF2LWxpbmUtaXRlbS1jaXJjbGUtc2l6ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi10aHVtYm5haWwge1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1hcmVhOiB0aHVtYm5haWw7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJHNwYWNlci14cztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLXRleHQge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWFyZWE6IHRleHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1saW5lIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0td2Nwdy1uYXYtbGluZS1pdGVtLWNvbm5lY3QtbGluZS13aWR0aCwgJG5hdi1saW5lLWl0ZW0tY29ubmVjdC1saW5lLXdpZHRoKSAqIC0xKTtcblxuICAgICAgICAgICAgLndjcHctbmF2LWxpc3QtaXRlbSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAtMTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBjYWxjKHZhcigtLXdjcHctbmF2LWxpbmUtaXRlbS1jaXJjbGUtc2l6ZSwgJG5hdi1saW5lLWl0ZW0tY2lyY2xlLXNpemUpICogMC41ICsgdmFyKC0td2Nwdy1uYXYtbGluZS1pdGVtLWNvbm5lY3QtbGluZS13aWR0aCwgJG5hdi1saW5lLWl0ZW0tY29ubmVjdC1saW5lLXdpZHRoKSAqIDAuNSk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS13Y3B3LW5hdi1saW5lLWl0ZW0tY2lyY2xlLXNpemUsICRuYXYtbGluZS1pdGVtLWNpcmNsZS1zaXplKSAtICN7KCRzcGFjZXItc20gKiAyKX0pO1xuICAgICAgICAgICAgICAgICAgICBpbnNldC1pbmxpbmUtc3RhcnQ6IGNhbGMoNTAlICsgY2FsYyh2YXIoLS13Y3B3LW5hdi1saW5lLWl0ZW0tY2lyY2xlLXNpemUsICRuYXYtbGluZS1pdGVtLWNpcmNsZS1zaXplKSAqIDAuNSArICN7JHNwYWNlci1zbX0pKTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0td2Nwdy1uYXYtbGluZS1pdGVtLWNvbm5lY3QtbGluZS13aWR0aCwgJG5hdi1saW5lLWl0ZW0tY29ubmVjdC1saW5lLXdpZHRoKVxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0td2Nwdy1uYXYtbGluZS1pdGVtLWNvbm5lY3QtbGluZS1zdHlsZSwgJG5hdi1saW5lLWl0ZW0tY29ubmVjdC1saW5lLXN0eWxlKVxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0td2Nwdy1uYXYtbGluZS1pdGVtLWNvbm5lY3QtbGluZS1iYWNrZ3JvdW5kLCAkbmF2LWxpbmUtaXRlbS1jb25uZWN0LWxpbmUtYmFja2dyb3VuZCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi1idXR0b25bY2xhc3NdIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJ0aHVtYm5haWxcIiBcInRleHRcIjtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaXMtbGluZS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIC53Y3B3LW5hdi1saXN0LWl0ZW0ge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAkc3BhY2VyLXNtO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0td2Nwdy1uYXYtbGluZS1pdGVtLWNvbm5lY3QtbGluZS13aWR0aCwgJG5hdi1saW5lLWl0ZW0tY29ubmVjdC1saW5lLXdpZHRoKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXdjcHctbmF2LWxpbmUtaXRlbS1jb25uZWN0LWxpbmUtc3R5bGUsICRuYXYtbGluZS1pdGVtLWNvbm5lY3QtbGluZS1zdHlsZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS13Y3B3LW5hdi1saW5lLWl0ZW0tY29ubmVjdC1saW5lLWJhY2tncm91bmQsICRuYXYtbGluZS1pdGVtLWNvbm5lY3QtbGluZS1iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi1idXR0b25bY2xhc3NdIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJ0aHVtYm5haWwgdGV4dFwiO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaXMtcHJvZ3Jlc3Mge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgLndjcHctbmF2LWxpc3QtaXRlbSB7XG4gICAgICAgICAgICAgICAgJi1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgd29yZC1icmVhazogbm9ybWFsO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaXMtcGFuZWwge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktMjAwO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG5cbiAgICAgICAgICAgIC53Y3B3LW5hdi1saXN0LWl0ZW0ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcblxuICAgICAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1pbmxpbmUtZW5kOiAxcHggc29saWQgJGdyYXktMjAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIC53Y3B3LW5hdi1saXN0LWl0ZW0tYnV0dG9uOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5wYXN0LFxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgLndjcHctbmF2LWxpc3QtaXRlbS1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2VyLXNtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG5cbiAgICAgICAgICAgICAgICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogaW5pdGlhbDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLndjcHctbmF2LWxpc3QtaXRlbS10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LTEwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbnNldC1pbmxpbmUtZW5kOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgaW5zZXQtYmxvY2stc3RhcnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ibG9jay1zdGFydDogMXB4IHNvbGlkICRncmF5LTIwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1pbmxpbmUtZW5kOiAxcHggc29saWQgJGdyYXktMjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKC03NSUpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAYXQtcm9vdCBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlWSgtNzUlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtaXRlbSB7XG4gICAgICAgICAgICAmLmhhcy10aHVtYm5haWwgJiB7XG4gICAgICAgICAgICAgICAgJi1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtYnV0dG9uW2NsYXNzXSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGdhcDogJHNwYWNlci1zbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtdGl0bGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtc3ViLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOWVtO1xuXG4gICAgICAgICAgICAgICAgJjplbXB0eSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLXRodW1ibmFpbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXdjcHctbmF2LWl0ZW0tdGh1bWJuYWlsLXNpemUsICRuYXYtaXRlbS10aHVtYm5haWwtc2l6ZSk7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogdmFyKC0td2Nwdy1uYXYtaXRlbS10aHVtYm5haWwtc2l6ZSwgJG5hdi1pdGVtLXRodW1ibmFpbC1zaXplKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtcHJvZ3Jlc3Mge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLW1kO1xuXG4gICAgICAgICYtYmFyIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKHZhcigtLXdjcHctZm9ybS1wcm9ncmVzcy1jdXJyZW50LCAwKSAvIHZhcigtLXdjcHctZm9ybS1wcm9ncmVzcy1tYXgsIDApICogMTAwJSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAbWl4aW4gY3VzdG9tLXNjcm9sbCgpIHtcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIHdpZHRoOiAkY3VzdG9tLXNjcm9sbGJhci1zaXplO1xuICAgICAgICBoZWlnaHQ6ICRjdXN0b20tc2Nyb2xsYmFyLXNpemU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tc2Nyb2xsYmFyLWJnO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zY3JvbGxiYXItdHJhY2stYmc7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2s6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNjcm9sbGJhci10cmFjay1ob3Zlci1iZztcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgIGJvcmRlcjogJGN1c3RvbS1zY3JvbGxiYXItdGh1bWItYm9yZGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXNjcm9sbGJhci1zaXplO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNjcm9sbGJhci10aHVtYi1iZztcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tc2Nyb2xsYmFyLXRodW1iLWhvdmVyLWJnO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWl4aW4gcmFuZ2UtdHJhY2soJHByb3BlcnRpZXMpIHtcbiAgICAvLyBub3RlOiBkbyBub3QgY29tYmluZSBicm93c2VycyBzZWxlY3RvcnMgd2l0aCBjb21tYSAtIG5vdCB3b3JraW5nXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgICBAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgICBAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6Oi1tcy10cmFjayB7XG4gICAgICAgIEBlYWNoICRwcm9wZXJ0eSwgJHZhbHVlIGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgICN7JHByb3BlcnR5fTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gcmFuZ2UtaGFuZGxlKCRwcm9wZXJ0aWVzKSB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICBAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgICBAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICAgIEBlYWNoICRwcm9wZXJ0eSwgJHZhbHVlIGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgICN7JHByb3BlcnR5fTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gcmFuZ2UoKSB7XG4gICAgQGluY2x1ZGUgcmFuZ2UtdHJhY2soKFxuICAgICAgICB3aWR0aDogMTAwJSxcbiAgICAgICAgaGVpZ2h0OiAkcmFuZ2UtdHJhY2stc2l6ZSxcbiAgICAgICAgYm9yZGVyOiAwIHNvbGlkIHRyYW5zcGFyZW50LFxuICAgICAgICBib3JkZXItcmFkaXVzOiAkcmFuZ2UtYm9yZGVyLXJhZGl1cyxcbiAgICAgICAgYmFja2dyb3VuZDogJHJhbmdlLXRyYWNrLWJnLFxuICAgICAgICBjdXJzb3I6IHBvaW50ZXJcbiAgICApKTtcblxuICAgIEBpbmNsdWRlIHJhbmdlLWhhbmRsZSgoXG4gICAgICAgIHdpZHRoOiAkcmFuZ2UtaGFuZGxlLXNpemUsXG4gICAgICAgIGhlaWdodDogJHJhbmdlLWhhbmRsZS1zaXplLFxuICAgICAgICBib3JkZXI6ICRyYW5nZS1oYW5kbGUtYm9yZGVyLFxuICAgICAgICBib3JkZXItcmFkaXVzOiAkcmFuZ2UtaGFuZGxlLWJvcmRlci1yYWRpdXMsXG4gICAgICAgIGJhY2tncm91bmQ6ICRyYW5nZS1oYW5kbGUtYmcsXG4gICAgICAgIGJveC1zaGFkb3c6ICRyYW5nZS1oYW5kbGUtc2hhZG93LFxuICAgICAgICBjdXJzb3I6IHBvaW50ZXJcbiAgICApKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHJhbmdlLWhlaWdodDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIHJhbmdlLXRyYWNrKChiYWNrZ3JvdW5kOiAkcmFuZ2UtdHJhY2stYmcpKTtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgQGluY2x1ZGUgcmFuZ2UtdHJhY2soKGJhY2tncm91bmQ6ICRyYW5nZS1kaXNhYmxlZC10cmFjay1iZykpO1xuICAgICAgICBAaW5jbHVkZSByYW5nZS1oYW5kbGUoKGJhY2tncm91bmQ6ICRyYW5nZS1kaXNhYmxlZC1oYW5kbGUtYmcpKTtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgbWFyZ2luLXRvcDogKCRyYW5nZS10cmFjay1zaXplICogMC41KSAtICgkcmFuZ2UtaGFuZGxlLXNpemUgKiAwLjUpO1xuICAgIH1cbn1cbiIsIi53Y3B3IHtcbiAgICAmLWRvdWJsZS1yYW5nZSB7XG4gICAgICAgICRzZWxmOiAmO1xuXG4gICAgICAgIC0td2Nwdy1yYW5nZS10cmFjay1iZzogI3skcmFuZ2UtdHJhY2stYmd9O1xuICAgICAgICAtLXdjcHctcmFuZ2UtZmlsbC1iZzogI3skcmFuZ2UtZmlsbC1iZ307XG4gICAgICAgIC0td2Nwdy1yYW5nZS10cmFjay1kaXJlY3Rpb246IHJpZ2h0O1xuICAgICAgICAtLXdjcHctcmFuZ2UtdG9vbHRpcC1vZmZzZXQ6IC01MCU7XG4gICAgICAgIC0td2Nwdy1yYW5nZS1mcm9tLXBvc2l0aW9uOiAwJTtcbiAgICAgICAgLS13Y3B3LXJhbmdlLXRvLXBvc2l0aW9uOiAxMDAlO1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6ICRzcGFjZXItc207XG5cbiAgICAgICAgQGF0LXJvb3QgW2Rpcj1cInJ0bFwiXSAjeyRzZWxmfSB7XG4gICAgICAgICAgICAtLXdjcHctcmFuZ2UtdHJhY2stZGlyZWN0aW9uOiBsZWZ0O1xuICAgICAgICAgICAgLS13Y3B3LXJhbmdlLXRvb2x0aXAtb2Zmc2V0OiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhhcy10b29sdGlwIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXdjcHctcmFuZ2UtdG9vbHRpcC1jb2xvciwgJHJhbmdlLXRvb2x0aXAtY29sb3IpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdjcHctcmFuZ2UtdG9vbHRpcC1iZywgJHJhbmdlLXRvb2x0aXAtYmcpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXdjcHctcmFuZ2UtdG9vbHRpcC1ib3JkZXItcmFkaXVzLCAkcmFuZ2UtdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS13Y3B3LXJhbmdlLXRvb2x0aXAtcGFkZGluZywgJHJhbmdlLXRvb2x0aXAtcGFkZGluZyk7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgodmFyKC0td2Nwdy1yYW5nZS10b29sdGlwLW9mZnNldCwgLTUwJSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS12YWx1ZS1wcmVmaXgpIGF0dHIoZGF0YS1mcm9tLXZhbHVlKSBhdHRyKGRhdGEtdmFsdWUtc3VmZml4KTtcbiAgICAgICAgICAgICAgICBpbnNldC1pbmxpbmUtc3RhcnQ6IHZhcigtLXdjcHctcmFuZ2UtZnJvbS1wb3NpdGlvbik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtdmFsdWUtcHJlZml4KSBhdHRyKGRhdGEtdG8tdmFsdWUpIGF0dHIoZGF0YS12YWx1ZS1zdWZmaXgpO1xuICAgICAgICAgICAgICAgIGluc2V0LWlubGluZS1zdGFydDogdmFyKC0td2Nwdy1yYW5nZS10by1wb3NpdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLXNsaWRlcnMge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZmxleDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtc2xpZGVyW2NsYXNzXSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByYW5nZSgpO1xuXG4gICAgICAgICAgICAmLmlzLWZpZWxkLWZyb20ge1xuICAgICAgICAgICAgICAgICRzZWxmOiAmO1xuXG4gICAgICAgICAgICAgICAgLS13Y3B3LXJhbmdlLW9mZnNldDogY2FsYygxMDAlIC0gdmFyKC0td2Nwdy1yYW5nZS10by1wb3NpdGlvbikgKyAoKHZhcigtLXdjcHctcmFuZ2UtdG8tcG9zaXRpb24pIC0gdmFyKC0td2Nwdy1yYW5nZS1mcm9tLXBvc2l0aW9uKSkgKiAwLjUpKTtcbiAgICAgICAgICAgICAgICAtLXdjcHctcmFuZ2UtbGVmdC1vZmZzZXQ6IHZhcigtLXdjcHctcmFuZ2Utb2Zmc2V0KTtcbiAgICAgICAgICAgICAgICAtLXdjcHctcmFuZ2UtcmlnaHQtb2Zmc2V0OiAwO1xuXG4gICAgICAgICAgICAgICAgQGF0LXJvb3QgW2Rpcj1cInJ0bFwiXSAjeyRzZWxmfSB7XG4gICAgICAgICAgICAgICAgICAgIC0td2Nwdy1yYW5nZS1sZWZ0LW9mZnNldDogMDtcbiAgICAgICAgICAgICAgICAgICAgLS13Y3B3LXJhbmdlLXJpZ2h0LW9mZnNldDogdmFyKC0td2Nwdy1yYW5nZS1vZmZzZXQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBjbGlwLXBhdGg6IGluc2V0KCN7JHJhbmdlLWhhbmRsZS1zaXplICogLTF9IHZhcigtLXdjcHctcmFuZ2UtbGVmdC1vZmZzZXQpICN7JHJhbmdlLWhhbmRsZS1zaXplICogLTF9IHZhcigtLXdjcHctcmFuZ2UtcmlnaHQtb2Zmc2V0KSk7XG5cbiAgICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByYW5nZS10cmFjaygoYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaXMtZmllbGQtdG86bm90KDpkaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJhbmdlLXRyYWNrKChiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgICAgICAgICAgICAgIHRvIHZhcigtLXdjcHctcmFuZ2UtdHJhY2stZGlyZWN0aW9uLCByaWdodCksXG4gICAgICAgICAgICAgICAgICAgIHZhcigtLXdjcHctcmFuZ2UtdHJhY2stYmcpIDAlLCB2YXIoLS13Y3B3LXJhbmdlLXRyYWNrLWJnKSB2YXIoLS13Y3B3LXJhbmdlLWZyb20tcG9zaXRpb24pLFxuICAgICAgICAgICAgICAgICAgICB2YXIoLS13Y3B3LXJhbmdlLWZpbGwtYmcpIHZhcigtLXdjcHctcmFuZ2UtZnJvbS1wb3NpdGlvbiksXG4gICAgICAgICAgICAgICAgICAgIHZhcigtLXdjcHctcmFuZ2UtZmlsbC1iZykgdmFyKC0td2Nwdy1yYW5nZS10by1wb3NpdGlvbiksXG4gICAgICAgICAgICAgICAgICAgIHZhcigtLXdjcHctcmFuZ2UtdHJhY2stYmcpIHZhcigtLXdjcHctcmFuZ2UtdG8tcG9zaXRpb24pLFxuICAgICAgICAgICAgICAgICAgICB2YXIoLS13Y3B3LXJhbmdlLXRyYWNrLWJnKSAxMDAlXG4gICAgICAgICAgICAgICAgKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1maWVsZCB7XG4gICAgICAgICAgICBmbGV4OiAxIDZyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIud2Nwdy1mb3JtIHtcbiAgICAmW2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgb3BhY2l0eTogdmFyKC0td2Nwdy1zdGVwLWRpc2FibGVkLW9wYWNpdHksICRzdGVwLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgICAgICBmaWx0ZXI6IHZhcigtLXdjcHctc3RlcC1kaXNhYmxlZC1maWx0ZXIsICRzdGVwLWRpc2FibGVkLWZpbHRlcik7XG4gICAgfVxuXG4gICAgJlthcmlhLWJ1c3k9XCJ0cnVlXCJdIHtcbiAgICAgICAgLS13Y3B3LWxvYWRpbmctcHJvZ3Jlc3M6IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBvcGFjaXR5OiB2YXIoLS13Y3B3LWxvYWRpbmctb3BhY2l0eSwgJGxvYWRpbmctb3BhY2l0eSk7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXdjcHctbG9hZGluZy10cmFuc2l0aW9uLCAkbG9hZGluZy10cmFuc2l0aW9uKTtcbiAgICB9XG5cbiAgICAmICsgJiB7XG4gICAgICAgIG1hcmdpbi10b3A6ICRmb3JtLW5leHQtdG8tZm9ybS1tYXJnaW47XG4gICAgICAgIHBhZGRpbmctdG9wOiAkZm9ybS1uZXh0LXRvLWZvcm0tcGFkZGluZztcbiAgICAgICAgYm9yZGVyLXRvcDogJGZvcm0tbmV4dC10by1mb3JtLWJvcmRlcjtcbiAgICB9XG5cbiAgICAmLWxheW91dCB7XG4gICAgICAgICYuaXMtZ3JpZCxcbiAgICAgICAgJi5pcy1tYXNvbnJ5LFxuICAgICAgICAmLmlzLWNhcm91c2VsIHtcbiAgICAgICAgICAgIC0td2Nwdy1ncmlkLWdhcDogI3skc3BhY2VyLXNtfTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS13Y3B3LWdyaWQtZ2FwLCAkc3BhY2VyLXNtKSAqIC0xKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLXdjcHctZ3JpZC1nYXAsICRzcGFjZXItc20pICogLTEpO1xuXG4gICAgICAgICAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgLS13Y3B3LWxheW91dC1ncmlkLWNvbC13aWR0aDogdmFyKC0td2Nwdy1sYXlvdXQtZ3JpZC1jb2wtd2lkdGgtI3skYnJlYWtwb2ludH0sIDIwcmVtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLWdyaWQge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KHZhcigtLXdjcHctbGF5b3V0LWdyaWQtY29sLXdpZHRoKSwgMWZyKSk7XG5cbiAgICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS13Y3B3LWdyaWQtZ2FwLCAkc3BhY2VyLXNtKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0td2Nwdy1ncmlkLWdhcCwgJHNwYWNlci1zbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLW1hc29ucnkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS13Y3B3LWdyaWQtZ2FwLCAkc3BhY2VyLXNtKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXdjcHctZ3JpZC1nYXAsICRzcGFjZXItc20pO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogdmFyKC0td2Nwdy1sYXlvdXQtZ3JpZC1jb2wtd2lkdGgsIDIwcmVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaXMtY2Fyb3VzZWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgY3VzdG9tLXNjcm9sbCgpO1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IC8vIG1vYmlsZSBob3Jpem9udGFsIHNjcm9sbCBmaXhcblxuICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7XG4gICAgICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0td2Nwdy1ncmlkLWdhcCwgJHNwYWNlci1zbSk7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS13Y3B3LWdyaWQtZ2FwLCAkc3BhY2VyLXNtKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0td2Nwdy1ncmlkLWl0ZW0td2lkdGgsIDIwcmVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaXMtdGFibGUge1xuICAgICAgICAgICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgICAgICAgICAgIC53Y3B3LWZvcm0taXRlbSB7XG4gICAgICAgICAgICAgICAgJi10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTsgLy8gbmV3IGxpbmUgd2l0aCBsb25nIHRpdGxlcyBmaXhcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLXRodW1ibmFpbCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtcHJvZ3Jlc3Mge1xuICAgICAgICAmLWxpbmUge1xuICAgICAgICAgICAgbWFyZ2luOiAkc3BhY2VyLW1kIDA7XG5cbiAgICAgICAgICAgICYtYmFyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGModmFyKC0td2Nwdy1zdGVwLXByb2dyZXNzLWN1cnJlbnQsIDApIC8gdmFyKC0td2Nwdy1zdGVwLXByb2dyZXNzLW1heCwgMSkgKiAxMDAlKTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgY291bnRlci1yZXNldDogd2Nwdy1mb3JtLXByb2dyZXNzLW1heCB2YXIoLS13Y3B3LXN0ZXAtcHJvZ3Jlc3MtbWF4LCAwKTtcblxuICAgICAgICAgICAgICAgICZbY2xhc3NdIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN1Y2Nlc3M7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIHBlcmNlbnRhZ2Ugb3V0cHV0XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvdW50ZXItcmVzZXQ6IHdjcHctZm9ybS1wcm9ncmVzcyBjYWxjKHZhcigtLXdjcHctc3RlcC1wcm9ncmVzcy1jdXJyZW50LCAwKSAvIHZhcigtLXdjcHctc3RlcC1wcm9ncmVzcy1tYXgsIDEpICogMTAwKTtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29udGVudDogY291bnRlcih3Y3B3LWZvcm0tcHJvZ3Jlc3MpIFwiJVwiO1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIFwiY3VycmVudCAvIG1heFwiIG91dHB1dFxuICAgICAgICAgICAgICAgICAgICBjb3VudGVyLXJlc2V0OiB3Y3B3LWZvcm0tcHJvZ3Jlc3MtY3VycmVudCB2YXIoLS13Y3B3LXN0ZXAtcHJvZ3Jlc3MtY3VycmVudCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIod2Nwdy1mb3JtLXByb2dyZXNzLWN1cnJlbnQpIFwiXFwwMGEwL1xcMDBhMFwiIGNvdW50ZXIod2Nwdy1mb3JtLXByb2dyZXNzLW1heCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhbmdlcjtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogbWluKFxuICAgICAgICAgICAgICAgICAgICAgICAgMSxcbiAgICAgICAgICAgICAgICAgICAgICAgIDEgLSBtaW4oXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0td2Nwdy1zdGVwLXByb2dyZXNzLW1heCwgMCkgLSB2YXIoLS13Y3B3LXN0ZXAtcHJvZ3Jlc3MtY3VycmVudCwgMCkgKyAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXdjcHctc3RlcC1wcm9ncmVzcy1jdXJyZW50LCAwKSAtIHZhcigtLXdjcHctc3RlcC1wcm9ncmVzcy1taW4sIDApICsgMVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtZGVzY3JpcHRpb24ge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRzcGFjZXItbWQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWNvbnRyb2xzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGdhcDogMCAkc3BhY2VyLW1kO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLXNtO1xuXG4gICAgICAgICY6ZW1wdHkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtcHJvZHVjdHMtcGVyLXBhZ2UsXG4gICAgJi1vcmRlci1ieSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMCAkc3BhY2VyLXNtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLXNtO1xuXG4gICAgICAgICYtbGFiZWwge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtc3VibWl0IHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWZpbHRlciB7XG4gICAgICAgIGdyaWQtYXJlYTogc2lkZWJhcjtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgICAgIGZsZXg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXItbWQ7XG5cbiAgICAgICAgJi5wYW5lbC5jYXJkIHtcbiAgICAgICAgICAgIC8vIHdjIHNpbmdsZSBwcm9kdWN0IHRhYnMgQ1NTIG92ZXJ3cml0ZVxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICYtdGl0bGVbY2xhc3NdIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICAgICAgfVxuXG4gICAgICAgICYtY29udGVudCB7XG4gICAgICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjp0YXJnZXQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi10b2dnbGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiA1cHggNXB4IDAgNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWZpZWxkIHtcbiAgICAgICAgICAgICZbY2xhc3NdIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLW1kO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLXRpdGxlW2NsYXNzXSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaXMtaW1hZ2UtcmFkaW8sXG4gICAgICAgICAgICAmLmlzLWltYWdlLWNoZWNrYm94IHtcbiAgICAgICAgICAgICAgICAud2Nwdy1mb3JtLWZpbHRlci1maWVsZC12YWx1ZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLXNtO1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgJi1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJHNwYWNlci1zbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjZXItc207XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6ICRmb3JtLWZpbHRlci1maWVsZC10aHVtYm5haWwtYm9yZGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGZvcm0tZmlsdGVyLWZpZWxkLXRodW1ibmFpbC1ib3JkZXItcmFkaXVzO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1maWx0ZXItZmllbGQtdGh1bWJuYWlsLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLW5hbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kICVpY29uO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMC41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEuMjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGZvcm0tZmlsdGVyLWZpZWxkLXRodW1ibmFpbC1hY3RpdmUtaWNvbi1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWx0ZXItZmllbGQtdGh1bWJuYWlsLWFjdGl2ZS1pY29uLWJnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYtaW5wdXQge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmIH4gLndjcHctZm9ybS1maWx0ZXItZmllbGQtdmFsdWUtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1maWx0ZXItZmllbGQtdGh1bWJuYWlsLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJiB+IC53Y3B3LWZvcm0tZmlsdGVyLWZpZWxkLXZhbHVlLW5hbWU6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGljb24tY2hhcih0aWNrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWZvb3RlciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtcGFnaW5hdGlvbiB7XG4gICAgICAgIC8vIG1vYmlsZSB3aXRoIGxpbmcgcGFnaW5hdGlvbiBvdmVybGFwIGZpeFxuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAmLWxpc3Qge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICYucGFnaW5hdGlvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtdG9nZ2xlIHtcbiAgICAgICAgJi10aHVtYm5haWwge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXdjcHctbmF2LWl0ZW0tdGh1bWJuYWlsLXNpemUsICRuYXYtaXRlbS10aHVtYm5haWwtc2l6ZSk7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiB2YXIoLS13Y3B3LW5hdi1pdGVtLXRodW1ibmFpbC1zaXplLCAkbmF2LWl0ZW0tdGh1bWJuYWlsLXNpemUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNsZWFyZml4XG4iLCIud2Nwdy1mb3JtLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXItbWQ7XG5cbiAgICAmLnBhbmVsLmNhcmQge1xuICAgICAgICAvLyB3YyBzaW5nbGUgcHJvZHVjdCB0YWJzIENTUyBvdmVyd3JpdGVcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgICYuaXMtbm90LWF2YWlsYWJsZS12YXJpYXRpb24gJiB7XG4gICAgICAgICYtcHJpY2Uge1xuICAgICAgICAgICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi50eXBlLTEgJixcbiAgICAmLnR5cGUtMiAmLFxuICAgICYudHlwZS0zICYsXG4gICAgJi50eXBlLTQgJiB7XG4gICAgICAgICYtYm9keSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgZ2FwOiAwICRzcGFjZXItbWQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLXRodW1ibmFpbCB7XG4gICAgICAgICAgICAmLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGZsZXg6IDMwMHB4O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtaW5uZXIge1xuICAgICAgICAgICAgZmxleDogMTAgMzAwcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnR5cGUtNSxcbiAgICAmLnR5cGUtOSB7XG4gICAgICAgIC53Y3B3LWZvcm0taXRlbSB7XG4gICAgICAgICAgICAmLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIGdhcDogMCAkc3BhY2VyLW1kO1xuXG4gICAgICAgICAgICAgICAgJi10aHVtYm5haWwge1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiAzMDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtYm9keSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDEwIDMwMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWxpbmsge1xuICAgICAgICAgICAgICAgIC53Y3B3LWZvcm0taXRlbS10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGljb24obGluaywgYWZ0ZXIpO1xuXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1tb2RhbCB7XG4gICAgICAgICAgICAgICAgLndjcHctZm9ybS1pdGVtLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi50eXBlLTYge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4yNXMgZWFzZTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCAzcHggcmdiYSgwLCAwLCAwLCAuMDUpLCAwIDAgNHB4IHJnYmEoMCwgMCwgMCwgLjEpO1xuXG4gICAgICAgICAgICAgICAgLndjcHctZm9ybS1pdGVtLWlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogNjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnR5cGUtNiAmIHtcbiAgICAgICAgJi1ib2R5IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2VyLW1kICRzcGFjZXItbWQgJHNwYWNlci1zbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtaW5uZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgICAgIGZsZXg6IDEgMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgJHNwYWNlci1tZCAkc3BhY2VyLW1kO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggM3B4IHJnYmEoMCwwLDAsLjEpLCAwIDAgNHB4IHJnYmEoMCwwLDAsLjIpO1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtY2hlY2sge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1zbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYudHlwZS0xLFxuICAgICYudHlwZS0yLFxuICAgICYudHlwZS0zLFxuICAgICYudHlwZS03IHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjI1cyBlYXNlO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDNweCByZ2JhKDAsIDAsIDAsIC4wNSksIDAgMCA0cHggcmdiYSgwLCAwLCAwLCAuMSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnR5cGUtNyAmIHtcbiAgICAgICAgJi1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjZXItbWQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnR5cGUtNyAmLFxuICAgICYudHlwZS04ICYge1xuICAgICAgICAmLWJvZHkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogJHNwYWNlci1tZDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLWlubmVyIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAmLXZhcmlhdGlvbnMtaXRlbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi10aXRsZVtjbGFzc10ge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXdjcHctZm9ybS1pdGVtLXRpdGxlLWZvbnQtc2l6ZSwgJGZvcm0taXRlbS10aXRsZS1mb250LXNpemUpO1xuICAgIH1cblxuICAgICYtdGh1bWJuYWlsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcblxuICAgICAgICAmLXdyYXBwZXIge1xuICAgICAgICAgICAgJjplbXB0eSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtbGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgICYtZ2FsbGVyeSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgIEBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsKCk7XG5cbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaGFzLWl0ZW1zLWNvdW50LTEgJiB7XG4gICAgICAgICAgICAgICAgJi1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtaXRlbSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKGhvdmVyOiBub25lKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBjb2xvci1jb250cmFzdCgkcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYgKyAud2Nwdy1mb3JtLWl0ZW0tdGh1bWJuYWlsLWdhbGxlcnktaXRlbS1pbWFnZS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmlzLXN0YXRpYyB7XG4gICAgICAgICAgICAgICAgICAgICYgKyAud2Nwdy1mb3JtLWl0ZW0tdGh1bWJuYWlsLWdhbGxlcnktaXRlbS1pbWFnZS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMXB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGdyYXktNDAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICAmLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChob3Zlcjogbm9uZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWltYWdlIHtcbiAgICAgICAgICAgICAgICAmW2NsYXNzXSB7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG5cbiAgICAgICAgICAgICYud3AtcG9zdC1pbWFnZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gdGhlbWVzIHN0eWxlcyBvdmVyd3JpdGVcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtdmFyaWF0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXg6IDEwMCU7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiAwICRzcGFjZXItbWQ7XG5cbiAgICAgICAgJltjbGFzc10ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1zbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtaXRlbSB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZmxleDogMzAwcHg7XG4gICAgICAgICAgICBnYXA6IDAgJHNwYWNlci1tZDtcblxuICAgICAgICAgICAgJi5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLXNtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLW5hbWUsXG4gICAgICAgICAgICAmLXZhbHVlIHtcbiAgICAgICAgICAgICAgICAmLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxIDEyMHB4O1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtdmFsdWUge1xuICAgICAgICAgICAgICAgICYuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1zbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLXdyYXBwZXJbY2xhc3NdIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAycHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi1jYXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgJi5pcy1pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXItc207XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi1pbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGJ1dHRvbiBvciBpbWFnZVxuICAgICAgICAgICAgICAgICAgICAmLmlzLWhpZGRlbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIH4gLndjcHctZm9ybS1pdGVtLXZhcmlhdGlvbnMtaXRlbS12YWx1ZS1jYXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpjaGVja2VkIH4gLndjcHctZm9ybS1pdGVtLXZhcmlhdGlvbnMtaXRlbS12YWx1ZS1jYXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogY29sb3ItY29udHJhc3QoJHNlY29uZGFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmlzLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICZbZGlzYWJsZWRdIH4gLndjcHctZm9ybS1pdGVtLXZhcmlhdGlvbnMtaXRlbS12YWx1ZS1jYXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmW2FyaWEtYnVzeT1cInRydWVcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgfiAud2Nwdy1mb3JtLWl0ZW0tdmFyaWF0aW9ucy1pdGVtLXZhbHVlLWNhcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvc3RyaXBlLWFuaW1hdGVkLnN2Z1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLXJlc2V0IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXItc207XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuXG4gICAgICAgICAgICAmLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICBmbGV4OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1nYWxsZXJ5IHtcbiAgICAgICAgLS13Y3B3LWdyaWQtZ2FwOiAjeyRzcGFjZXItc219O1xuXG4gICAgICAgIEBpbmNsdWRlIGN1c3RvbS1zY3JvbGwoKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICAgICAgICBtYXJnaW46IDAgY2FsYyh2YXIoLS13Y3B3LWdyaWQtZ2FwLCAkc3BhY2VyLXNtKSAqIC0xKSAkc3BhY2VyLXNtO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyAvLyBtb2JpbGUgaG9yaXpvbnRhbCBzY3JvbGwgZml4XG5cbiAgICAgICAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAtLXdjcHctaXRlbS1nYWxsZXJ5LWNvbHVtbi13aWR0aDogdmFyKC0td2Nwdy1pdGVtLWdhbGxlcnktY29sdW1uLXdpZHRoLSN7JGJyZWFrcG9pbnR9LCAyMHJlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+ICoge1xuICAgICAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS13Y3B3LWdyaWQtZ2FwLCAkc3BhY2VyLXNtKTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0td2Nwdy1ncmlkLWdhcCwgJHNwYWNlci1zbSk7XG4gICAgICAgICAgICB3aWR0aDogdmFyKC0td2Nwdy1pdGVtLWdhbGxlcnktY29sdW1uLXdpZHRoLCAyMHJlbSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLXRhZ3Mge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMC41cmVtO1xuICAgICAgICBsZWZ0OiAwLjVyZW07XG4gICAgICAgIHotaW5kZXg6IDM7IC8vIHNlZSB0eXBlLTYgei1pbmRleFxuICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICAmLXZhbHVlIHtcbiAgICAgICAgICAgIGNvbG9yOiBjb2xvci1jb250cmFzdCgkcHJpbWFyeSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYtYXZhaWxhYmlsaXR5IHtcbiAgICAgICAgZmxleDogMTAwJTtcbiAgICB9XG5cbiAgICAmLXNrdSB7XG4gICAgICAgICZbY2xhc3NdIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXItc207XG4gICAgICAgIH1cblxuICAgICAgICAmLW5hbWUsXG4gICAgICAgICYtdmFsdWUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1uYW1lIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtc207XG5cbiAgICAgICAgICAgICZbY2xhc3NdIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1jaGVjayB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXIteHM7XG5cbiAgICAgICAgJi5jdXN0b20tY29udHJvbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtY2hvb3NlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICAgICAgaW5wdXQuaXMtbG9hZGluZyB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IHZhcigtLXdjcHctbG9hZGluZy1vcGFjaXR5LCAkbG9hZGluZy1vcGFjaXR5KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtcXVhbnRpdHkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgIC5xdWFudGl0eSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5xdHkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1wcmljZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlci14cztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS13Y3B3LWZvcm0taXRlbS1wcmljZS1mb250LXNpemUsICRmb3JtLWl0ZW0tcHJpY2UtZm9udC1zaXplKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXdjcHctZm9ybS1pdGVtLXByaWNlLWZvbnQtd2VpZ2h0LCAkZm9ybS1pdGVtLXByaWNlLWZvbnQtd2VpZ2h0KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAgICAgJltjbGFzc10ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXIteHM7XG4gICAgICAgIH1cblxuICAgICAgICBkZWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpbnMge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1jb250cm9scyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXIteHM7XG5cbiAgICAgICAgJi5pbnB1dC1ncm91cCB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtY29udHJvbCB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgJi1mb290ZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAwICRzcGFjZXItc207XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxuc2VjdGlvbi53Y3B3IGZvcm0ud2Nwdy1mb3JtLWl0ZW0tZm9vdGVyLmNhcnRbY2xhc3NdIHtcbiAgICAvLyBvdmVyd3JpdGUgbW9zdCBvZiBvdXRlciBzdHlsZXNcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4iLCIud2Nwdy1yZXN1bHRzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlci1tZDtcbiAgICB9XG5cbiAgICAmLXRhYmxlIHtcbiAgICAgICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgICAgICAgJi50YWJsZSB7XG4gICAgICAgICAgICB0ZCxcbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWNjZW50LWJnO1xuXG4gICAgICAgICAgICAmLWNlbGwge1xuICAgICAgICAgICAgICAgICYuaXMtdmFsdWUsXG4gICAgICAgICAgICAgICAgJi5pcy1wcmljZSxcbiAgICAgICAgICAgICAgICAmLmlzLXF1YW50aXR5LFxuICAgICAgICAgICAgICAgICYuaXMtc3VidG90YWwge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWJvZHkge1xuICAgICAgICAgICAgJi1yb3cge1xuICAgICAgICAgICAgICAgICYuaXMtaGVhZGluZyB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtY2VsbCB7XG4gICAgICAgICAgICAgICAgJi5pcy1yZW1vdmUsXG4gICAgICAgICAgICAgICAgJi5pcy10aHVtYm5haWx7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmlzLXByb2R1Y3Qge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaXMtcHJpY2UsXG4gICAgICAgICAgICAgICAgJi5pcy1xdWFudGl0eSxcbiAgICAgICAgICAgICAgICAmLmlzLXN1YnRvdGFsIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwJTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGVuZDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmlzLXZhbHVlIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGVuZDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmW2NsYXNzXTplbXB0eSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwLjElO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtZm9vdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG5cbiAgICAgICAgICAgICYtY2VsbCB7XG4gICAgICAgICAgICAgICAgJi5pcy12YWx1ZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBlbmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1pdGVtIHtcbiAgICAgICAgJi1yZW1vdmUge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJi10ZXh0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiA2OHB4O1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgJltjbGFzc10ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nLmltZy10aHVtYm5haWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtdGl0bGUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1kYXRhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAmOm5vdCg6ZW1wdHkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2VyLW1kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1zdGVwIHtcbiAgICAgICAgJi10aHVtYm5haWwge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAgICAgJltjbGFzc10ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLW5hbWUge1xuICAgICAgICAgICAgcGFkZGluZzogMCAkc3BhY2VyLXNtO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi53Y3B3LXNlYXJjaC1mb3JtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLWlucHV0IHtcbiAgICAgICAgJlthcmlhLWJ1c3k9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zcGlubmVyLnN2Z1wiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMgfiAud2Nwdy1zZWFyY2gtZm9ybS1yZXN1bHRzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1yZXN1bHRzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBtYXgtaGVpZ2h0OiBtaW4oOTB2aCwgNDByZW0pO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2Nwdy1zZWFyY2gtZm9ybS1iZywgJHNlYXJjaC1mb3JtLWJnKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXdjcHctc2VhcmNoLWZvcm0tY29sb3IsICRzZWFyY2gtZm9ybS1jb2xvcik7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXdjcHctc2VhcmNoLWZvcm0tYm94LXNoYWRvdywgJHNlYXJjaC1mb3JtLWJveC1zaGFkb3cpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IHZhcigtLXdjcHctc2VhcmNoLWZvcm0tYmFja2Ryb3AtZmlsdGVyLCAkc2VhcmNoLWZvcm0tYmFja2Ryb3AtZmlsdGVyKTtcblxuICAgICAgICAmW2NsYXNzXSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZW1wdHkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICAgICAgKyBsaSB7XG4gICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5LTIwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogJHNwYWNlci1zbSAkc3BhY2VyLW1kO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLndjcHctY2hlY2tvdXQge1xuICAgICYtZGVzY3JpcHRpb24ge1xuICAgICAgICAuY29sMi1zZXQge1xuICAgICAgICAgICAgPiAuY29sLTEsXG4gICAgICAgICAgICA+IC5jb2wtMiB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIud2Nwdy10YWJsZS1yZXNwb25zaXZlIHtcbiAgICBAbWl4aW4gd2Nwdy10YWJsZS1yZXNwb25zaXZlLXRvZ2dsZSgpIHtcbiAgICAgICAgJi1oaWRkZW4sXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICB0ZFtkYXRhLXRoXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG5cbiAgICAgICAgICAgICY6ZW1wdHkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLXRoKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdHIge1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgICAgICAgICYsXG4gICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13Y3B3LXRhYmxlLXJlc3BvbnNpdmUtYWNjZW50LWJnLCAkdGFibGUtcmVzcG9uc2l2ZS1hY2NlbnQtYmcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtd3JhcHBlciB7XG4gICAgICAgIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcbiAgICAgICAgY29udGFpbmVyLW5hbWU6IHdjcHctdGFibGUtcmVzcG9uc2l2ZTtcbiAgICB9XG5cbiAgICAkdmFsdWU6IGJyZWFrcG9pbnQtbWF4KHNtLCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAY29udGFpbmVyIHdjcHctdGFibGUtcmVzcG9uc2l2ZSAobWF4LXdpZHRoOiAjeyR2YWx1ZX0pIHtcbiAgICAgICAgQGluY2x1ZGUgd2Nwdy10YWJsZS1yZXNwb25zaXZlLXRvZ2dsZSgpO1xuICAgIH1cblxuICAgIC8vIHRvZG86IGtlZXAgb25seSBjb250YWluZXIgcXVlcmllcyBzb21lZGF5XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgIEBpbmNsdWRlIHdjcHctdGFibGUtcmVzcG9uc2l2ZS10b2dnbGUoKTtcbiAgICB9XG59XG4iLCIud2Nwdy13aWRnZXQge1xuICAgIC0td2Nwdy13aWRnZXQtc3RpY2t5LW9mZnNldDogMDtcblxuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLW1kO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcblxuICAgICZbY2xhc3NdIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBzaWRlYmFyMjtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgfVxuXG4gICAgJi5wYW5lbC5jYXJkIHtcbiAgICAgICAgLy8gd2Mgc2luZ2xlIHByb2R1Y3QgdGFicyBDU1Mgb3ZlcndyaXRlXG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAmLmlzLXBvc2l0aW9uLXRvcCxcbiAgICAmLmlzLXBvc2l0aW9uLWJvdHRvbSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgIC53Y3B3LXdpZGdldC1ib2R5IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAgICAgJi1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdyYXktMjAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5pcy1wcm9kdWN0LFxuICAgICAgICAgICAgICAgICAgICAmLmlzLXByb2R1Y3QtcGxhY2Vob2xkZXIsXG4gICAgICAgICAgICAgICAgICAgICYuaXMtZmllbGQsXG4gICAgICAgICAgICAgICAgICAgICYuaXMtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC53Y3B3LXdpZGdldC1zdGVwLW5hdiB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWV4cGFuZGVkPVwiZmFsc2VcIl0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdIHtcbiAgICAgICAgJi50b2dnbGUtYWx3YXlzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICAgICAgQGlmIChicmVha3BvaW50LW1heCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpKSB7XG4gICAgICAgICAgICAgICAgJi50b2dnbGUtI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICBAaWYgKGJyZWFrcG9pbnQtbWF4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykpIHtcbiAgICAgICAgICAgICYudG9nZ2xlLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICAgICAgICAud2Nwdy13aWRnZXQtY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjp0YXJnZXQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLmlzLXN0aWNreSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogdmFyKC0td2Nwdy13aWRnZXQtc3RpY2t5LW9mZnNldCwgMCk7XG4gICAgICAgIHotaW5kZXg6IDQ7XG5cbiAgICAgICAgJltzdHVja10ge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0td2Nwdy13aWRnZXQtc3R1Y2stYm94LXNoYWRvdywgJHdpZGdldC1zdHVjay1ib3gtc2hhZG93KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtcG9zaXRpb24tYm90dG9tIHtcbiAgICAgICAgJi5pcy1zdGlja3kge1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgYm90dG9tOiB2YXIoLS13Y3B3LXdpZGdldC1zdGlja3ktb2Zmc2V0LCAwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIC0td2Nwdy13aWRnZXQtc3RpY2t5LW9mZnNldDogdmFyKC0td2Nwdy13aWRnZXQtc3RpY2t5LW9mZnNldC0jeyRicmVha3BvaW50fSwgMCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKGJyZWFrcG9pbnQtbWF4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykpIHtcbiAgICAgICAgICAgICYuaXMtc3RpY2t5LSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiB2YXIoLS13Y3B3LXdpZGdldC1zdGlja3ktb2Zmc2V0LCAwKTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogNDtcblxuICAgICAgICAgICAgICAgICAgICAmW3N0dWNrXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS13Y3B3LXdpZGdldC1zdHVjay1ib3gtc2hhZG93LCAkd2lkZ2V0LXN0dWNrLWJveC1zaGFkb3cpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLXBvc2l0aW9uLWJvdHRvbSB7XG4gICAgICAgICAgICAgICAgJi5pcy1zdGlja3ktI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogdmFyKC0td2Nwdy13aWRnZXQtc3RpY2t5LW9mZnNldCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKGJyZWFrcG9pbnQtbWluKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykpIHtcbiAgICAgICAgICAgICYuaXMtc3RpY2t5LXVwLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogdmFyKC0td2Nwdy13aWRnZXQtc3RpY2t5LW9mZnNldCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDQ7XG5cbiAgICAgICAgICAgICAgICAgICAgJltzdHVja10ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0td2Nwdy13aWRnZXQtc3R1Y2stYm94LXNoYWRvdywgJHdpZGdldC1zdHVjay1ib3gtc2hhZG93KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pcy1wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgICAgICAgICAgICYuaXMtc3RpY2t5LXVwLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IHZhcigtLXdjcHctd2lkZ2V0LXN0aWNreS1vZmZzZXQsIDApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1jbG9zZSB7XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi1pdGVtIHtcbiAgICAgICAgJltjbGFzc10ge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1wcm9kdWN0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBnYXA6ICRzcGFjZXItbWQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLXByb2R1Y3QtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgYm9yZGVyOiAycHggZGFzaGVkICRncmF5LTIwMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgcGFkZGluZzogMi41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy10b3RhbC1yb3cge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogJHNwYWNlci1zbTtcblxuICAgICAgICAgICAgLndjcHctd2lkZ2V0LWl0ZW0tbmFtZSB7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtaGVhZGVyLFxuICAgICAgICAmLWZvb3RlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogJHNwYWNlci1zbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtaGVhZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZXItc207XG4gICAgICAgIH1cblxuICAgICAgICAmLXRodW1ibmFpbCB7XG4gICAgICAgICAgICBmbGV4OiAwIDAgNnJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAlO1xuXG4gICAgICAgICAgICAmW2NsYXNzXSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nLmltZy10aHVtYm5haWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtaW5uZXIge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtdGl0bGUge1xuICAgICAgICAgICAgJltjbGFzc10ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1kYXRhIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB9XG5cbiAgICAgICAgJi12YWx1ZSB7XG4gICAgICAgICAgICAmW2NsYXNzXSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnZhcmlhdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLXNtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtc3RlcCB7XG4gICAgICAgICYtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAgICZbY2xhc3NdIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtbmFtZSB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1uYXYge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAwICRzcGFjZXItc207XG4gICAgICAgICAgICBmbGV4OiAxO1xuXG4gICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWJvZHkge1xuICAgICAgICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsKCk7XG5cbiAgICAgICAgbWF4LWhlaWdodDogMTAwdmg7XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSA0MHB4KTsgLy8gbWFnaWNcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICAgICZbY2xhc3NdIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgICAgcGFkZGluZzogJHNwYWNlci1zbTtcblxuICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktMjAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLWhlYWRpbmcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICAgICAgICAgIGdhcDogJHNwYWNlci1zbTtcblxuICAgICAgICAgICAgICAgICY6bm90KC5oYXMtbmF2KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pcy1wcm9kdWN0LFxuICAgICAgICAgICAgJi5pcy1wcm9kdWN0LXBsYWNlaG9sZGVyLFxuICAgICAgICAgICAgJi5pcy1maWVsZCxcbiAgICAgICAgICAgICYuaXMtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDE1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1mb290ZXIge1xuICAgICAgICAmLXJvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5LTIwMDtcblxuICAgICAgICAgICAgJltjbGFzc10ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtY2VsbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2VyLXNtO1xuXG4gICAgICAgICAgICAmW2NsYXNzXSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLW5hbWUge1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud2Nwdy1tZXNzYWdlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG4iLCIud2Nwdy1mb290ZXIge1xuICAgIC0td2Nwdy1mb290ZXItc3RpY2t5LW9mZnNldDogMDtcblxuICAgICYuaXMtc3RpY2t5IHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogdmFyKC0td2Nwdy1mb290ZXItc3RpY2t5LW9mZnNldCwgMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IHZhcigtLXdjcHctZm9vdGVyLXN0dWNrLXotaW5kZXgsICRmb290ZXItc3R1Y2stei1pbmRleCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS13Y3B3LWZvb3Rlci1zdHVjay1jb2xvciwgJGZvb3Rlci1zdHVjay1jb2xvcik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogdmFyKC0td2Nwdy1mb290ZXItc3R1Y2stYmFja2Ryb3AtZmlsdGVyLCAkZm9vdGVyLXN0dWNrLWJhY2tkcm9wLWZpbHRlcik7XG5cbiAgICAgICAgJltzdHVja10ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2Nwdy1mb290ZXItc3R1Y2stYmcsICRmb290ZXItc3R1Y2stYmcpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0td2Nwdy1mb290ZXItc3R1Y2stYm94LXNoYWRvdywgJGZvb3Rlci1zdHVjay1ib3gtc2hhZG93KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIC0td2Nwdy1mb290ZXItc3RpY2t5LW9mZnNldDogdmFyKC0td2Nwdy1mb290ZXItc3RpY2t5LW9mZnNldC0jeyRicmVha3BvaW50fSwgMCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKGJyZWFrcG9pbnQtbWF4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykpIHtcbiAgICAgICAgICAgICYuaXMtc3RpY2t5LSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogdmFyKC0td2Nwdy1mb290ZXItc3RpY2t5LW9mZnNldCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13Y3B3LWZvb3Rlci1zdHVjay1jb2xvciwgJGZvb3Rlci1zdHVjay1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogdmFyKC0td2Nwdy1mb290ZXItc3R1Y2stYmFja2Ryb3AtZmlsdGVyLCAkZm9vdGVyLXN0dWNrLWJhY2tkcm9wLWZpbHRlcik7XG5cbiAgICAgICAgICAgICAgICAgICAgJltzdHVja10ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2Nwdy1mb290ZXItc3R1Y2stYmcsICRmb290ZXItc3R1Y2stYmcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0td2Nwdy1mb290ZXItc3R1Y2stYm94LXNoYWRvdywgJGZvb3Rlci1zdHVjay1ib3gtc2hhZG93KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAoYnJlYWtwb2ludC1taW4oJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSkge1xuICAgICAgICAgICAgJi5pcy1zdGlja3ktdXAtI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogdmFyKC0td2Nwdy1mb290ZXItc3RpY2t5LW9mZnNldCwgMCk7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13Y3B3LWZvb3Rlci1zdHVjay1jb2xvciwgJGZvb3Rlci1zdHVjay1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogdmFyKC0td2Nwdy1mb290ZXItc3R1Y2stYmFja2Ryb3AtZmlsdGVyLCAkZm9vdGVyLXN0dWNrLWJhY2tkcm9wLWZpbHRlcik7XG5cbiAgICAgICAgICAgICAgICAgICAgJltzdHVja10ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2Nwdy1mb290ZXItc3R1Y2stYmcsICRmb290ZXItc3R1Y2stYmcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0td2Nwdy1mb290ZXItc3R1Y2stYm94LXNoYWRvdywgJGZvb3Rlci1zdHVjay1ib3gtc2hhZG93KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi53Y3B3IHtcbiAgICAmLW91dGVyLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBpY29uKGxpbmssIGFmdGVyKTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICBAaWYgKGJyZWFrcG9pbnQtbWF4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykpIHtcbiAgICAgICAgICAgIC5pcy12aXNpYmxlLXVwLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAoYnJlYWtwb2ludC1taW4oJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSkge1xuICAgICAgICAgICAgLmlzLXZpc2libGUtI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJpY29uc1wiO1xuQGltcG9ydCBcInNwaW5uZXJcIjtcbkBpbXBvcnQgXCJjb250cm9sc1wiO1xuQGltcG9ydCBcImhlYWRlclwiO1xuQGltcG9ydCBcIm1haW5cIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcInJhbmdlXCI7XG5AaW1wb3J0IFwiZm9ybVwiO1xuQGltcG9ydCBcImZvcm0taXRlbVwiO1xuQGltcG9ydCBcInJlc3VsdHNcIjtcbkBpbXBvcnQgXCJzZWFyY2hcIjtcbkBpbXBvcnQgXCJjaGVja291dFwiO1xuQGltcG9ydCBcInRhYmxlLXJlc3BvbnNpdmVcIjtcbkBpbXBvcnQgXCJ3aWRnZXRcIjtcbkBpbXBvcnQgXCJmb290ZXJcIjtcbkBpbXBvcnQgXCJ1dGlsc1wiO1xuXG4ud2NwdyB7XG4gICAgQGltcG9ydCBcInJlc2V0XCI7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLWNvbnRlbnQge1xuICAgICAgICAmLmlzLWxvYWRpbmcge1xuICAgICAgICAgICAgLS13Y3B3LWxvYWRpbmctcHJvZ3Jlc3M6IDA7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IHZhcigtLXdjcHctbG9hZGluZy1vcGFjaXR5LCAkbG9hZGluZy1vcGFjaXR5KTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXdjcHctbG9hZGluZy10cmFuc2l0aW9uLCAkbG9hZGluZy10cmFuc2l0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KC5pcy1sb2FkaW5nKSArIHtcbiAgICAgICAgICAgIC53Y3B3LXNwaW5uZXItd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImZpZWxkc2V0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxubGVnZW5kIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuIl0sImZpbGUiOiJzcmMvZnJvbnQvc2Nzcy9hcHAtZnVsbC5jc3MifQ== */
