@layer primefaces.tokens, primefaces.vendor, primefaces.components, primefaces.behaviors;

/* .yarn/cache/jquery-ui-npm-1.14.2-f86d3ea943-83b65744c4.zip/node_modules/jquery-ui/themes/base/datepicker.css */
@layer primefaces.vendor {
  .ui-datepicker {
    width: 17em;
    padding: .2em .2em 0;
    display: none;
  }
  .ui-datepicker .ui-datepicker-header {
    position: relative;
    padding: .2em 0;
  }
  .ui-datepicker .ui-datepicker-prev,
  .ui-datepicker .ui-datepicker-next {
    position: absolute;
    top: 2px;
    width: 1.8em;
    height: 1.8em;
  }
  .ui-datepicker .ui-datepicker-prev-hover,
  .ui-datepicker .ui-datepicker-next-hover {
    top: 1px;
  }
  .ui-datepicker .ui-datepicker-prev {
    left: 2px;
  }
  .ui-datepicker .ui-datepicker-next {
    right: 2px;
  }
  .ui-datepicker .ui-datepicker-prev-hover {
    left: 1px;
  }
  .ui-datepicker .ui-datepicker-next-hover {
    right: 1px;
  }
  .ui-datepicker .ui-datepicker-prev span,
  .ui-datepicker .ui-datepicker-next span {
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -8px;
    top: 50%;
    margin-top: -8px;
  }
  .ui-datepicker .ui-datepicker-title {
    margin: 0 2.3em;
    line-height: 1.8em;
    text-align: center;
  }
  .ui-datepicker .ui-datepicker-title select {
    font-size: 1em;
    margin: 1px 0;
  }
  .ui-datepicker select.ui-datepicker-month,
  .ui-datepicker select.ui-datepicker-year {
    width: 45%;
  }
  .ui-datepicker table {
    width: 100%;
    font-size: .9em;
    border-collapse: collapse;
    margin: 0 0 .4em;
  }
  .ui-datepicker th {
    padding: .7em .3em;
    text-align: center;
    font-weight: bold;
    border: 0;
  }
  .ui-datepicker td {
    border: 0;
    padding: 1px;
  }
  .ui-datepicker td span,
  .ui-datepicker td a {
    display: block;
    padding: .2em;
    text-align: right;
    text-decoration: none;
  }
  .ui-datepicker .ui-datepicker-buttonpane {
    background-image: none;
    margin: .7em 0 0 0;
    padding: 0 .2em;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
  }
  .ui-datepicker .ui-datepicker-buttonpane button {
    float: right;
    margin: .5em .2em .4em;
    cursor: pointer;
    padding: .2em .6em .3em .6em;
    width: auto;
    overflow: visible;
  }
  .ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
    float: left;
  }
  .ui-datepicker.ui-datepicker-multi {
    width: auto;
  }
  .ui-datepicker-multi .ui-datepicker-group {
    float: left;
  }
  .ui-datepicker-multi .ui-datepicker-group table {
    width: 95%;
    margin: 0 auto .4em;
  }
  .ui-datepicker-multi-2 .ui-datepicker-group {
    width: 50%;
  }
  .ui-datepicker-multi-3 .ui-datepicker-group {
    width: 33.3%;
  }
  .ui-datepicker-multi-4 .ui-datepicker-group {
    width: 25%;
  }
  .ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
  .ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
    border-left-width: 0;
  }
  .ui-datepicker-multi .ui-datepicker-buttonpane {
    clear: left;
  }
  .ui-datepicker-row-break {
    clear: both;
    width: 100%;
    font-size: 0;
  }
  .ui-datepicker-rtl {
    direction: rtl;
  }
  .ui-datepicker-rtl .ui-datepicker-prev {
    right: 2px;
    left: auto;
  }
  .ui-datepicker-rtl .ui-datepicker-next {
    left: 2px;
    right: auto;
  }
  .ui-datepicker-rtl .ui-datepicker-prev:hover {
    right: 1px;
    left: auto;
  }
  .ui-datepicker-rtl .ui-datepicker-next:hover {
    left: 1px;
    right: auto;
  }
  .ui-datepicker-rtl .ui-datepicker-buttonpane {
    clear: right;
  }
  .ui-datepicker-rtl .ui-datepicker-buttonpane button {
    float: left;
  }
  .ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
  .ui-datepicker-rtl .ui-datepicker-group {
    float: right;
  }
  .ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
  .ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
    border-right-width: 0;
    border-left-width: 1px;
  }
  .ui-datepicker .ui-icon {
    display: block;
    text-indent: -99999px;
    overflow: hidden;
    background-repeat: no-repeat;
    left: .5em;
    top: .3em;
  }
}

/* packages/calendar/calendar/src/calendar.css */
@layer primefaces.components {
  .ui-datepicker-multi .ui-datepicker-group {
    float: left;
    table {
      width: 95%;
      margin-inline: auto;
    }
  }
  .ui-datepicker-multi-2 .ui-datepicker-group {
    width: 50%;
  }
  .ui-datepicker-multi-3 .ui-datepicker-group {
    width: 33.3%;
  }
  .ui-datepicker-multi-4 .ui-datepicker-group {
    width: 25%;
  }
  .ui-datepicker-multi .ui-datepicker-buttonpane {
    clear: left;
  }
  .ui-datepicker-row-break {
    clear: both;
    width: 100%;
    font-size: 0;
  }
  .ui-datepicker-rtl {
    direction: rtl;
    .ui-datepicker-group {
      float: right;
    }
  }
  .ui-timepicker-div {
    .ui-widget-header {
      margin-bottom: var(--p-datepicker-time-picker-gap);
    }
    dl {
      text-align: start;
      dt {
        float: left;
        clear: left;
      }
    }
    td {
      font-size: var(--p-datepicker-time-picker-font-size);
    }
    .ui_tpicker_unit_hide {
      display: none;
    }
    .ui_tpicker_time .ui_tpicker_time_input {
      font-variant-numeric: tabular-nums;
      background: none;
      color: inherit;
      border: none;
      outline: none;
      border-bottom: 1px solid var(--p-form-field-border-color);
      width: 95%;
      &:focus {
        border-bottom-color: var(--p-form-field-focus-border-color);
      }
    }
  }
  .ui-tpicker-grid-label {
    background: none;
    border: none;
    margin: 0;
    padding: 0;
  }
  .ui-timepicker-rtl {
    direction: rtl;
    dl {
      text-align: right;
      dt {
        float: right;
        clear: right;
      }
    }
  }
  .ui-timepicker-div.ui-timepicker-oneLine {
    .ui_tpicker_time,
    dt {
      display: none;
    }
    .ui_tpicker_time_label {
      display: block;
    }
    dl {
      text-align: end;
      dd,
      dd > div {
        display: inline-block;
        margin: 0;
      }
      dd.ui_tpicker_minute::before,
      dd.ui_tpicker_second::before {
        content: ":";
        display: inline-block;
      }
      dd.ui_tpicker_millisec::before,
      dd.ui_tpicker_microsec::before {
        content: ".";
        display: inline-block;
      }
    }
    .ui_tpicker_unit_hide,
    .ui_tpicker_unit_hide::before {
      display: none;
    }
  }
  .ui-datepicker .ui-datepicker-current.ui-priority-secondary {
    opacity: 1;
  }
  .ui-datepicker {
    &.ui-datepicker-multi {
      width: auto !important;
    }
    .ui-datepicker-calendar {
      td.ui-datepicker-current-day > a,
      td.ui-datepicker-current-day > span {
        background: var(--p-datepicker-today-background);
        color: var(--p-datepicker-today-color);
        border: 0 none;
      }
      td.ui-datepicker-current-day > a:not(.ui-state-disabled):hover,
      td.ui-datepicker-current-day > a.ui-state-hover {
        background: var(--p-datepicker-date-hover-background);
        color: var(--p-datepicker-date-hover-color);
      }
      td.ui-datepicker-current-day > a.ui-state-active,
      td.ui-datepicker-current-day > span.ui-state-active {
        background: var(--p-datepicker-date-selected-background);
        color: var(--p-datepicker-date-selected-color);
        border: 0 none;
      }
      td.ui-datepicker-week-col {
        opacity: 1;
        color: var(--p-datepicker-week-number-color);
        font-size: var(--p-datepicker-week-number-font-size);
      }
    }
    .ui-timepicker-div {
      .ui-widget-header {
        background: transparent;
        color: inherit;
        border: 0 none;
        border-top: 1px solid var(--p-datepicker-time-picker-border-color);
        padding-top: var(--p-datepicker-time-picker-gap);
        font-weight: var(--p-datepicker-title-font-weight);
      }
      dl {
        margin: var(--p-datepicker-time-picker-gap) 0;
      }
      dl dt {
        padding: 0;
      }
      dl dt.ui_tpicker_time_label {
        padding: calc(var(--p-datepicker-time-picker-gap) / 2) 0;
      }
      dl dd {
        padding: calc(var(--p-datepicker-time-picker-gap) / 2) 0;
        margin: 0 var(--p-datepicker-time-picker-gap) var(--p-datepicker-time-picker-gap) 40%;
      }
    }
    .ui-timepicker-rtl dl dd {
      margin: 0 40% var(--p-datepicker-time-picker-gap) var(--p-datepicker-time-picker-gap);
    }
    .ui-timepicker-div.ui-timepicker-oneLine dl dd {
      margin: 0;
    }
    .ui-datepicker-buttonpane {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin: 0;
      padding: var(--p-datepicker-buttonbar-padding);
      background: transparent;
      color: inherit;
      border: 0 none;
      border-top: 1px solid var(--p-datepicker-buttonbar-border-color);
      border-radius: 0;
    }
    .ui-datepicker-buttonpane button {
      --_bg: var(--p-button-secondary-background);
      --_hover-bg: var(--p-button-secondary-hover-background);
      --_active-bg: var(--p-button-secondary-active-background);
      --_border: var(--p-button-secondary-border-color);
      --_hover-border: var(--p-button-secondary-hover-border-color);
      --_active-border: var(--p-button-secondary-active-border-color);
      --_color: var(--p-button-secondary-color);
      --_hover-color: var(--p-button-secondary-hover-color);
      --_active-color: var(--p-button-secondary-active-color);
      --_focus-ring-color: var(--p-button-secondary-focus-ring-color);
      --_focus-ring-shadow: var(--p-button-secondary-focus-ring-shadow);
      background: var(--p-button-secondary-background);
      color: var(--p-button-secondary-color);
      border: 1px solid var(--p-button-secondary-border-color);
      border-radius: var(--p-button-border-radius);
      transition:
        background var(--p-button-transition-duration),
        color var(--p-button-transition-duration),
        border-color var(--p-button-transition-duration),
        outline-color var(--p-button-transition-duration),
        box-shadow var(--p-button-transition-duration);
    }
    .ui-datepicker-buttonpane button {
      cursor: pointer;
      width: auto;
      overflow: visible;
      margin: 0;
      padding: var(--p-button-padding-y) var(--p-button-padding-x);
      font-family: inherit;
      font-size: var(--p-button-font-size);
      font-weight: var(--p-button-label-font-weight);
      line-height: var(--p-typography-line-height);
      opacity: 1;
    }
    .ui-datepicker-buttonpane button {
      &.ui-state-hover,
      &:not(:disabled):hover {
        background: var(--p-button-secondary-hover-background);
        border-color: var(--p-button-secondary-hover-border-color);
        color: var(--p-button-secondary-hover-color);
      }
      &.ui-state-focus,
      &:focus-visible {
        outline: var(--p-button-focus-ring-width) var(--p-button-focus-ring-style) var(--p-button-secondary-focus-ring-color);
        outline-offset: var(--p-button-focus-ring-offset);
        box-shadow: var(--p-button-secondary-focus-ring-shadow);
      }
      &.ui-state-active,
      &:not(:disabled):active {
        background: var(--p-button-secondary-active-background);
        border-color: var(--p-button-secondary-active-border-color);
        color: var(--p-button-secondary-active-color);
      }
    }
    .ui-datepicker-buttonpane .ui-g-6:first-child {
      text-align: start;
    }
    .ui-datepicker-buttonpane .ui-g-6:last-child {
      text-align: end;
    }
  }
  .ui-datepicker-rtl .ui-datepicker-next::before,
  .ui-datepicker-rtl .ui-datepicker-prev::before {
    scale: -1 1;
  }
}

/* packages/calendar/calendar/index.css */
/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21haW4vZnJvbnRlbmQvLnlhcm4vY2FjaGUvanF1ZXJ5LXVpLW5wbS0xLjE0LjItZjg2ZDNlYTk0My04M2I2NTc0NGM0LnppcC9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL2RhdGVwaWNrZXIuY3NzIiwgIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYWluL2Zyb250ZW5kL3BhY2thZ2VzL2NhbGVuZGFyL2NhbGVuZGFyL3NyYy9jYWxlbmRhci5jc3MiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qIVxuICogalF1ZXJ5IFVJIERhdGVwaWNrZXIgMS4xNC4yXG4gKiBodHRwczovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBPcGVuSlMgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwczovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHBzOi8vYXBpLmpxdWVyeXVpLmNvbS9kYXRlcGlja2VyLyN0aGVtaW5nXG4gKi9cbi51aS1kYXRlcGlja2VyIHtcblx0d2lkdGg6IDE3ZW07XG5cdHBhZGRpbmc6IC4yZW0gLjJlbSAwO1xuXHRkaXNwbGF5OiBub25lO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiAuMmVtIDA7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LFxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAycHg7XG5cdHdpZHRoOiAxLjhlbTtcblx0aGVpZ2h0OiAxLjhlbTtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIsXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyIHtcblx0dG9wOiAxcHg7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2IHtcblx0bGVmdDogMnB4O1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG5cdHJpZ2h0OiAycHg7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LWhvdmVyIHtcblx0bGVmdDogMXB4O1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dC1ob3ZlciB7XG5cdHJpZ2h0OiAxcHg7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2IHNwYW4sXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHNwYW4ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiA1MCU7XG5cdG1hcmdpbi1sZWZ0OiAtOHB4O1xuXHR0b3A6IDUwJTtcblx0bWFyZ2luLXRvcDogLThweDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXRpdGxlIHtcblx0bWFyZ2luOiAwIDIuM2VtO1xuXHRsaW5lLWhlaWdodDogMS44ZW07XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXRpdGxlIHNlbGVjdCB7XG5cdGZvbnQtc2l6ZTogMWVtO1xuXHRtYXJnaW46IDFweCAwO1xufVxuLnVpLWRhdGVwaWNrZXIgc2VsZWN0LnVpLWRhdGVwaWNrZXItbW9udGgsXG4udWktZGF0ZXBpY2tlciBzZWxlY3QudWktZGF0ZXBpY2tlci15ZWFyIHtcblx0d2lkdGg6IDQ1JTtcbn1cbi51aS1kYXRlcGlja2VyIHRhYmxlIHtcblx0d2lkdGg6IDEwMCU7XG5cdGZvbnQtc2l6ZTogLjllbTtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblx0bWFyZ2luOiAwIDAgLjRlbTtcbn1cbi51aS1kYXRlcGlja2VyIHRoIHtcblx0cGFkZGluZzogLjdlbSAuM2VtO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRib3JkZXI6IDA7XG59XG4udWktZGF0ZXBpY2tlciB0ZCB7XG5cdGJvcmRlcjogMDtcblx0cGFkZGluZzogMXB4O1xufVxuLnVpLWRhdGVwaWNrZXIgdGQgc3Bhbixcbi51aS1kYXRlcGlja2VyIHRkIGEge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZzogLjJlbTtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHRtYXJnaW46IC43ZW0gMCAwIDA7XG5cdHBhZGRpbmc6IDAgLjJlbTtcblx0Ym9yZGVyLWxlZnQ6IDA7XG5cdGJvcmRlci1yaWdodDogMDtcblx0Ym9yZGVyLWJvdHRvbTogMDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uIHtcblx0ZmxvYXQ6IHJpZ2h0O1xuXHRtYXJnaW46IC41ZW0gLjJlbSAuNGVtO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHBhZGRpbmc6IC4yZW0gLjZlbSAuM2VtIC42ZW07XG5cdHdpZHRoOiBhdXRvO1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uLnVpLWRhdGVwaWNrZXItY3VycmVudCB7XG5cdGZsb2F0OiBsZWZ0O1xufVxuXG4vKiB3aXRoIG11bHRpcGxlIGNhbGVuZGFycyAqL1xuLnVpLWRhdGVwaWNrZXIudWktZGF0ZXBpY2tlci1tdWx0aSB7XG5cdHdpZHRoOiBhdXRvO1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHRmbG9hdDogbGVmdDtcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwIHRhYmxlIHtcblx0d2lkdGg6IDk1JTtcblx0bWFyZ2luOiAwIGF1dG8gLjRlbTtcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpLTIgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHR3aWR0aDogNTAlO1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGktMyAudWktZGF0ZXBpY2tlci1ncm91cCB7XG5cdHdpZHRoOiAzMy4zJTtcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpLTQgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHR3aWR0aDogMjUlO1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbGFzdCAudWktZGF0ZXBpY2tlci1oZWFkZXIsXG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cC1taWRkbGUgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcblx0Ym9yZGVyLWxlZnQtd2lkdGg6IDA7XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHtcblx0Y2xlYXI6IGxlZnQ7XG59XG4udWktZGF0ZXBpY2tlci1yb3ctYnJlYWsge1xuXHRjbGVhcjogYm90aDtcblx0d2lkdGg6IDEwMCU7XG5cdGZvbnQtc2l6ZTogMDtcbn1cblxuLyogUlRMIHN1cHBvcnQgKi9cbi51aS1kYXRlcGlja2VyLXJ0bCB7XG5cdGRpcmVjdGlvbjogcnRsO1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLXByZXYge1xuXHRyaWdodDogMnB4O1xuXHRsZWZ0OiBhdXRvO1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLW5leHQge1xuXHRsZWZ0OiAycHg7XG5cdHJpZ2h0OiBhdXRvO1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLXByZXY6aG92ZXIge1xuXHRyaWdodDogMXB4O1xuXHRsZWZ0OiBhdXRvO1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLW5leHQ6aG92ZXIge1xuXHRsZWZ0OiAxcHg7XG5cdHJpZ2h0OiBhdXRvO1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUge1xuXHRjbGVhcjogcmlnaHQ7XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24ge1xuXHRmbG9hdDogbGVmdDtcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbi51aS1kYXRlcGlja2VyLWN1cnJlbnQsXG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHRmbG9hdDogcmlnaHQ7XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbGFzdCAudWktZGF0ZXBpY2tlci1oZWFkZXIsXG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbWlkZGxlIC51aS1kYXRlcGlja2VyLWhlYWRlciB7XG5cdGJvcmRlci1yaWdodC13aWR0aDogMDtcblx0Ym9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbn1cblxuLyogSWNvbnMgKi9cbi51aS1kYXRlcGlja2VyIC51aS1pY29uIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHRleHQtaW5kZW50OiAtOTk5OTlweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0bGVmdDogLjVlbTtcblx0dG9wOiAuM2VtO1xufVxuIiwgIi8qXG4gKiBDYWxlbmRhcjogcDpjYWxlbmRhciAoalF1ZXJ5IFVJIGRhdGVwaWNrZXIgKyB0aW1lcGlja2VyIGFkZG9uLCByZXBsYWNlZCBieSBwOmRhdGVQaWNrZXIpLCBsb2FkZWQgd2l0aCBjYWxlbmRhci9jYWxlbmRhci5qc1xuICogdG9nZXRoZXIgd2l0aCBkYXRlcGlja2VyL2RhdGVwaWNrZXIuY3NzICh0aGUgcGFuZWwsIGhlYWRlciwgZGF0ZXMgYW5kIHRyaWdnZXIgYnV0dG9uIGl0IHNoYXJlcyB3aXRoIHA6ZGF0ZVBpY2tlcikuXG4gKiBIZXJlIGV2ZXJ5dGhpbmcgb25seSBwOmNhbGVuZGFyIHJlbmRlcnM6IHNldmVyYWwgbW9udGhzLCBjdXJyZW50IGRheSwgd2VlayBjb2x1bW4sIGJ1dHRvbiBwYW5lLCBSVEwsIHRoZSB0aW1lIHBpY2tlclxuICogb2YgdGhlIHRpbWVwaWNrZXIgYWRkb247IHRoZSBqUXVlcnkgVUkgZGF0ZXBpY2tlciBDU1MgY29tZXMgd2l0aCBpdCAoY2FsZW5kYXIvY2FsZW5kYXIvaW5kZXguY3NzKS5cbiAqL1xuXG4vKiBwOmNhbGVuZGFyIHdpdGggbXVsdGlwbGUgbW9udGhzIChudW1iZXJPZk1vbnRocykgKi9cbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwIHtcbiAgICBmbG9hdDogbGVmdDtcblxuICAgIHRhYmxlIHtcbiAgICAgICAgd2lkdGg6IDk1JTtcbiAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICB9XG59XG5cbi51aS1kYXRlcGlja2VyLW11bHRpLTIgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuICAgIHdpZHRoOiA1MCU7XG59XG5cbi51aS1kYXRlcGlja2VyLW11bHRpLTMgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuICAgIHdpZHRoOiAzMy4zJTtcbn1cblxuLnVpLWRhdGVwaWNrZXItbXVsdGktNCAudWktZGF0ZXBpY2tlci1ncm91cCB7XG4gICAgd2lkdGg6IDI1JTtcbn1cblxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7XG4gICAgY2xlYXI6IGxlZnQ7XG59XG5cbi51aS1kYXRlcGlja2VyLXJvdy1icmVhayB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAwO1xufVxuXG4udWktZGF0ZXBpY2tlci1ydGwge1xuICAgIGRpcmVjdGlvbjogcnRsO1xuXG4gICAgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxufVxuXG4vKiBwOmNhbGVuZGFyIHRpbWUgcGlja2VyIChqUXVlcnkgVUkgdGltZXBpY2tlciBhZGRvbikgKi9cbi51aS10aW1lcGlja2VyLWRpdiB7XG4gICAgLnVpLXdpZGdldC1oZWFkZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wLWRhdGVwaWNrZXItdGltZS1waWNrZXItZ2FwKTtcbiAgICB9XG5cbiAgICBkbCB7XG4gICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuXG4gICAgICAgIGR0IHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0ZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcC1kYXRlcGlja2VyLXRpbWUtcGlja2VyLWZvbnQtc2l6ZSk7XG4gICAgfVxuXG4gICAgLnVpX3RwaWNrZXJfdW5pdF9oaWRlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAudWlfdHBpY2tlcl90aW1lIC51aV90cGlja2VyX3RpbWVfaW5wdXQge1xuICAgICAgICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tcC1mb3JtLWZpZWxkLWJvcmRlci1jb2xvcik7XG4gICAgICAgIHdpZHRoOiA5NSU7XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1wLWZvcm0tZmllbGQtZm9jdXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnVpLXRwaWNrZXItZ3JpZC1sYWJlbCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi51aS10aW1lcGlja2VyLXJ0bCB7XG4gICAgZGlyZWN0aW9uOiBydGw7XG5cbiAgICBkbCB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgIGR0IHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIGNsZWFyOiByaWdodDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogc2hvcnRlbmVkIHZlcnNpb24gKi9cbi51aS10aW1lcGlja2VyLWRpdi51aS10aW1lcGlja2VyLW9uZUxpbmUge1xuICAgIC51aV90cGlja2VyX3RpbWUsXG4gICAgZHQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC51aV90cGlja2VyX3RpbWVfbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBkbCB7XG4gICAgICAgIHRleHQtYWxpZ246IGVuZDtcblxuICAgICAgICBkZCxcbiAgICAgICAgZGQgPiBkaXYge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgZGQudWlfdHBpY2tlcl9taW51dGU6OmJlZm9yZSxcbiAgICAgICAgZGQudWlfdHBpY2tlcl9zZWNvbmQ6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIjpcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGRkLnVpX3RwaWNrZXJfbWlsbGlzZWM6OmJlZm9yZSxcbiAgICAgICAgZGQudWlfdHBpY2tlcl9taWNyb3NlYzo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiLlwiO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnVpX3RwaWNrZXJfdW5pdF9oaWRlLFxuICAgIC51aV90cGlja2VyX3VuaXRfaGlkZTo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi8qIHRoZSB0b2RheSBidXR0b24gb2YgdGhlIGJ1dHRvbiBwYW5lICovXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1jdXJyZW50LnVpLXByaW9yaXR5LXNlY29uZGFyeSB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLyogdGhlIGpRdWVyeSBVSSBkYXRlcGlja2VyIG9mIHA6Y2FsZW5kYXI6IHdoYXQgcDpkYXRlUGlja2VyIGRvZXMgbm90IHJlbmRlciAqL1xuLnVpLWRhdGVwaWNrZXIge1xuICAgIC8qIGpxdWVyeS11aSB3cml0ZXMgYW4gaW5saW5lIHdpZHRoIGZvciBudW1iZXJPZk1vbnRocyAqL1xuICAgICYudWktZGF0ZXBpY2tlci1tdWx0aSB7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIge1xuICAgICAgICB0ZC51aS1kYXRlcGlja2VyLWN1cnJlbnQtZGF5ID4gYSxcbiAgICAgICAgdGQudWktZGF0ZXBpY2tlci1jdXJyZW50LWRheSA+IHNwYW4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcC1kYXRlcGlja2VyLXRvZGF5LWJhY2tncm91bmQpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXAtZGF0ZXBpY2tlci10b2RheS1jb2xvcik7XG4gICAgICAgICAgICBib3JkZXI6IDAgbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRkLnVpLWRhdGVwaWNrZXItY3VycmVudC1kYXkgPiBhOm5vdCgudWktc3RhdGUtZGlzYWJsZWQpOmhvdmVyLFxuICAgICAgICB0ZC51aS1kYXRlcGlja2VyLWN1cnJlbnQtZGF5ID4gYS51aS1zdGF0ZS1ob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wLWRhdGVwaWNrZXItZGF0ZS1ob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wLWRhdGVwaWNrZXItZGF0ZS1ob3Zlci1jb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICB0ZC51aS1kYXRlcGlja2VyLWN1cnJlbnQtZGF5ID4gYS51aS1zdGF0ZS1hY3RpdmUsXG4gICAgICAgIHRkLnVpLWRhdGVwaWNrZXItY3VycmVudC1kYXkgPiBzcGFuLnVpLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wLWRhdGVwaWNrZXItZGF0ZS1zZWxlY3RlZC1iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wLWRhdGVwaWNrZXItZGF0ZS1zZWxlY3RlZC1jb2xvcik7XG4gICAgICAgICAgICBib3JkZXI6IDAgbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIHdlZWsgbnVtYmVycyAoc2hvd1dlZWspICovXG4gICAgICAgIHRkLnVpLWRhdGVwaWNrZXItd2Vlay1jb2wge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wLWRhdGVwaWNrZXItd2Vlay1udW1iZXItY29sb3IpO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wLWRhdGVwaWNrZXItd2Vlay1udW1iZXItZm9udC1zaXplKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIHA6Y2FsZW5kYXIgdGltZSBwaWNrZXIgKGpRdWVyeSBVSSB0aW1lcGlja2VyIGFkZG9uKSAqL1xuICAgIC51aS10aW1lcGlja2VyLWRpdiB7XG4gICAgICAgIC51aS13aWRnZXQtaGVhZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICBib3JkZXI6IDAgbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1wLWRhdGVwaWNrZXItdGltZS1waWNrZXItYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wLWRhdGVwaWNrZXItdGltZS1waWNrZXItZ2FwKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wLWRhdGVwaWNrZXItdGl0bGUtZm9udC13ZWlnaHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgZGwge1xuICAgICAgICAgICAgbWFyZ2luOiB2YXIoLS1wLWRhdGVwaWNrZXItdGltZS1waWNrZXItZ2FwKSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgZGwgZHQge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGRsIGR0LnVpX3RwaWNrZXJfdGltZV9sYWJlbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKHZhcigtLXAtZGF0ZXBpY2tlci10aW1lLXBpY2tlci1nYXApIC8gMikgMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGRsIGRkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGModmFyKC0tcC1kYXRlcGlja2VyLXRpbWUtcGlja2VyLWdhcCkgLyAyKSAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIHZhcigtLXAtZGF0ZXBpY2tlci10aW1lLXBpY2tlci1nYXApIHZhcigtLXAtZGF0ZXBpY2tlci10aW1lLXBpY2tlci1nYXApIDQwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC51aS10aW1lcGlja2VyLXJ0bCBkbCBkZCB7XG4gICAgICAgIG1hcmdpbjogMCA0MCUgdmFyKC0tcC1kYXRlcGlja2VyLXRpbWUtcGlja2VyLWdhcCkgdmFyKC0tcC1kYXRlcGlja2VyLXRpbWUtcGlja2VyLWdhcCk7XG4gICAgfVxuXG4gICAgLnVpLXRpbWVwaWNrZXItZGl2LnVpLXRpbWVwaWNrZXItb25lTGluZSBkbCBkZCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAvKiBidXR0b24gcGFuZTogc2Vjb25kYXJ5IGJ1dHRvbnMgKi9cbiAgICAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXAtZGF0ZXBpY2tlci1idXR0b25iYXItcGFkZGluZyk7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1wLWRhdGVwaWNrZXItYnV0dG9uYmFyLWJvcmRlci1jb2xvcik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24ge1xuICAgICAgICAtLV9iZzogdmFyKC0tcC1idXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQpO1xuICAgICAgICAtLV9ob3Zlci1iZzogdmFyKC0tcC1idXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJhY2tncm91bmQpO1xuICAgICAgICAtLV9hY3RpdmUtYmc6IHZhcigtLXAtYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgICAgIC0tX2JvcmRlcjogdmFyKC0tcC1idXR0b24tc2Vjb25kYXJ5LWJvcmRlci1jb2xvcik7XG4gICAgICAgIC0tX2hvdmVyLWJvcmRlcjogdmFyKC0tcC1idXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgICAgIC0tX2FjdGl2ZS1ib3JkZXI6IHZhcigtLXAtYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgLS1fY29sb3I6IHZhcigtLXAtYnV0dG9uLXNlY29uZGFyeS1jb2xvcik7XG4gICAgICAgIC0tX2hvdmVyLWNvbG9yOiB2YXIoLS1wLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXItY29sb3IpO1xuICAgICAgICAtLV9hY3RpdmUtY29sb3I6IHZhcigtLXAtYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtY29sb3IpO1xuICAgICAgICAtLV9mb2N1cy1yaW5nLWNvbG9yOiB2YXIoLS1wLWJ1dHRvbi1zZWNvbmRhcnktZm9jdXMtcmluZy1jb2xvcik7XG4gICAgICAgIC0tX2ZvY3VzLXJpbmctc2hhZG93OiB2YXIoLS1wLWJ1dHRvbi1zZWNvbmRhcnktZm9jdXMtcmluZy1zaGFkb3cpO1xuXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXAtYnV0dG9uLXNlY29uZGFyeS1iYWNrZ3JvdW5kKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXAtYnV0dG9uLXNlY29uZGFyeS1jb2xvcik7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXAtYnV0dG9uLXNlY29uZGFyeS1ib3JkZXItY29sb3IpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1wLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS1wLWJ1dHRvbi10cmFuc2l0aW9uLWR1cmF0aW9uKSwgY29sb3IgdmFyKC0tcC1idXR0b24tdHJhbnNpdGlvbi1kdXJhdGlvbiksXG4gICAgICAgICAgICBib3JkZXItY29sb3IgdmFyKC0tcC1idXR0b24tdHJhbnNpdGlvbi1kdXJhdGlvbiksIG91dGxpbmUtY29sb3IgdmFyKC0tcC1idXR0b24tdHJhbnNpdGlvbi1kdXJhdGlvbiksXG4gICAgICAgICAgICBib3gtc2hhZG93IHZhcigtLXAtYnV0dG9uLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICAgIH1cblxuICAgIC8qIHA6Y2FsZW5kYXIgYnV0dG9ucyBhcmUgcGxhaW4gPGJ1dHRvbj5zIHdpdGhvdXQgLnVpLWJ1dHRvbjogZ2l2ZSB0aGVtIHRoZSBidXR0b24gbWV0cmljcyAqL1xuICAgIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tcC1idXR0b24tcGFkZGluZy15KSB2YXIoLS1wLWJ1dHRvbi1wYWRkaW5nLXgpO1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wLWJ1dHRvbi1mb250LXNpemUpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tcC1idXR0b24tbGFiZWwtZm9udC13ZWlnaHQpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcC10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbiB7XG4gICAgICAgICYudWktc3RhdGUtaG92ZXIsXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcC1idXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJhY2tncm91bmQpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXItY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi51aS1zdGF0ZS1mb2N1cyxcbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgIG91dGxpbmU6IHZhcigtLXAtYnV0dG9uLWZvY3VzLXJpbmctd2lkdGgpIHZhcigtLXAtYnV0dG9uLWZvY3VzLXJpbmctc3R5bGUpIHZhcigtLXAtYnV0dG9uLXNlY29uZGFyeS1mb2N1cy1yaW5nLWNvbG9yKTtcbiAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiB2YXIoLS1wLWJ1dHRvbi1mb2N1cy1yaW5nLW9mZnNldCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1wLWJ1dHRvbi1zZWNvbmRhcnktZm9jdXMtcmluZy1zaGFkb3cpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi51aS1zdGF0ZS1hY3RpdmUsXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXAtYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXAtYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wLWJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlLWNvbG9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgLnVpLWctNjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgIH1cblxuICAgIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgLnVpLWctNjpsYXN0LWNoaWxkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogZW5kO1xuICAgIH1cbn1cblxuLyogcnRsOiB0aGUgYXJyb3dzIHBvaW50IHRoZSBvdGhlciB3YXkgKi9cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1uZXh0OjpiZWZvcmUsXG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItcHJldjo6YmVmb3Jl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 */
