.micromodal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.6); }

.micromodal-container {
  box-sizing: border-box;
  max-width: 900px;
  max-height: 100vh;
  padding: 20px;
  overflow-y: auto;
  background-color: #fff;
  border-radius: 5px; }

.micromodal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 0; }

.micromodal-title {
  margin-top: 0;
  margin-bottom: 0; }

.micromodal-close {
  margin-left: auto;
  font-size: 16px;
  color: #333;
  background: transparent;
  border: 0; }

.micromodal-header .micromodal-close::before {
  content: '\2715'; }

.micromodal-content {
  margin-top: 20px; }

.micromodal {
  display: none; }

.micromodal.is-open {
  display: block; }

.lc-link-no-wrap {
  word-break: break-all; }

.lc-text-success {
  color: #007b69; }

.lc-text-danger {
  color: #e05554; }

.lc-scroll-message {
  display: block;
  padding: 10px;
  margin-bottom: 20px;
  border: 1px solid #d2d3d5;
  border-radius: 10px; }
  @media (min-width: 64em) {
    .lc-scroll-message {
      display: none; } }

.lc-scroll-message-always-display {
  display: block; }

.lc-font-weight-bold {
  font-weight: 700; }

.lc-d-inline {
  display: inline; }

* {
  box-sizing: border-box; }

.calendar--upcoming {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start; }
  .calendar--upcoming .event-card {
    margin: 0; }
  .calendar--upcoming .calendar__item {
    display: flex;
    align-items: stretch;
    width: 100%;
    padding: 0 0 10px;
    margin: 0; }
    @media (min-width: 48em) {
      .calendar--upcoming .calendar__item {
        width: 50%;
        padding: 0 0 10px 10px; }
        .calendar--upcoming .calendar__item:nth-child(2n+1) {
          padding-left: 0; } }
    @media (min-width: 64em) {
      .calendar--upcoming .calendar__item {
        width: 33%;
        padding: 0 10px 10px; }
        .calendar--upcoming .calendar__item:nth-child(2n+1) {
          padding-left: 10px; }
        .calendar--upcoming .calendar__item:nth-child(3n+1) {
          padding-right: 0; }
        .calendar--upcoming .calendar__item:nth-child(3n) {
          padding-left: 0; } }

/**
 * Calendar month display.
 *
 * All padding and font-sizes in the month display
 * should uses em units (not rem or px), as defined
 * in the calendar component's local variables partial.
 * The reasoning for that is so that font-sizes can be
 * defined relative to each other, and then the overall
 * font/padding sizes of the calendar can be adjusted
 * proportionally while only modifying the root font
 * size on the .calendar--month container.
 */
.calendar--month {
  font-size: 12px;
  background-color: #fff; }
  @media (min-width: 48em) {
    .calendar--month .desktop-hide {
      display: none; } }
  .calendar--month .mobile-hide {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px); }
    @media (min-width: 64em) {
      .calendar--month .mobile-hide {
        position: relative !important;
        width: auto;
        height: auto;
        overflow: visible;
        clip: auto; } }
  .calendar--month .event-card {
    position: relative; }
  .calendar--month .lc-event__registration-icon-container {
    display: flex;
    width: 100%; }
  .calendar--month .lc-event__registration-icon,
  .calendar--month .lc-event__registration-payment-icon {
    margin: .5rem 1rem .5rem 0; }

.calendar__week .event-card__title,
.calendar__week .event-card__details,
.calendar__week .event-card__room {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px); }
  @media (min-width: 48em) {
    .calendar__week .event-card__title,
    .calendar__week .event-card__details,
    .calendar__week .event-card__room {
      position: relative !important;
      width: auto;
      width: 100%;
      height: auto;
      overflow: visible;
      clip: auto; } }

.calendar--month .has-events,
.calendar--week .has-events,
.calendar--day .has-events,
.calendar__week .has-events {
  background-color: #efefef; }

.calendar--month .node--type-lc-closing,
.calendar--week .node--type-lc-closing,
.calendar--day .node--type-lc-closing,
.calendar__week .node--type-lc-closing {
  border: 3px solid #e05554; }

.calendar--month .node--type-lc-reservation,
.calendar--week .node--type-lc-reservation,
.calendar--day .node--type-lc-reservation,
.calendar__week .node--type-lc-reservation {
  border: 3px solid #007b69; }

.calendar--month .all-day,
.calendar--week .all-day,
.calendar--day .all-day,
.calendar__week .all-day {
  border: 3px solid #0098db; }

.calendar--month .private-event,
.calendar--week .private-event,
.calendar--day .private-event,
.calendar__week .private-event {
  border: 3px solid #31809f; }

.calendar--month .has-conflict,
.calendar--week .has-conflict,
.calendar--day .has-conflict,
.calendar__week .has-conflict {
  border: 3px solid #903986; }

.calendar--month .moderation-state--archived,
.calendar--month .moderation-state--draft,
.calendar--month .moderation-state--lc-draft,
.calendar--month .moderation-state--lc_draft,
.calendar--week .moderation-state--archived,
.calendar--week .moderation-state--draft,
.calendar--week .moderation-state--lc-draft,
.calendar--week .moderation-state--lc_draft,
.calendar--day .moderation-state--archived,
.calendar--day .moderation-state--draft,
.calendar--day .moderation-state--lc-draft,
.calendar--day .moderation-state--lc_draft,
.calendar__week .moderation-state--archived,
.calendar__week .moderation-state--draft,
.calendar__week .moderation-state--lc-draft,
.calendar__week .moderation-state--lc_draft {
  border: 3px solid #333; }

.calendar--month .moderation-state--draft,
.calendar--month .moderation-state--lc-draft,
.calendar--month .moderation-state--lc_draft,
.calendar--week .moderation-state--draft,
.calendar--week .moderation-state--lc-draft,
.calendar--week .moderation-state--lc_draft,
.calendar--day .moderation-state--draft,
.calendar--day .moderation-state--lc-draft,
.calendar--day .moderation-state--lc_draft,
.calendar__week .moderation-state--draft,
.calendar__week .moderation-state--lc-draft,
.calendar__week .moderation-state--lc_draft {
  background-color: #fff4f4; }

.calendar__numbers .calendar__day.calendar__day--current {
  color: #fff;
  background-color: #778898;
  transition: background ease-in-out 250ms; }

/**
 * Header and pager
 *
 * The header and pager use flexbox to
 * layout and vertically center the header
 * items.
 */
.calendar--month .calendar__wrap--header .calendar__month-pager,
.calendar--month .calendar__month-pager--lower,
.calendar-week-pager,
.calendar-day-pager {
  display: flex;
  flex: 1;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 600px;
  padding: 10px 0;
  margin: 0 auto;
  text-align: center; }
  @media (min-width: 48em) {
    .calendar--month .calendar__wrap--header .calendar__month-pager,
    .calendar--month .calendar__month-pager--lower,
    .calendar-week-pager,
    .calendar-day-pager {
      width: auto;
      padding-right: 20px; }
      .calendar--month .calendar__wrap--header .calendar__month-pager.calendar__month-pager--lower,
      .calendar--month .calendar__month-pager--lower.calendar__month-pager--lower,
      .calendar-week-pager.calendar__month-pager--lower,
      .calendar-day-pager.calendar__month-pager--lower {
        padding-top: 10px;
        padding-right: 0; } }
  .calendar--month .calendar__wrap--header .calendar__month-pager .mobile-hide,
  .calendar--month .calendar__month-pager--lower .mobile-hide,
  .calendar-week-pager .mobile-hide,
  .calendar-day-pager .mobile-hide {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px); }
    @media (min-width: 48em) {
      .calendar--month .calendar__wrap--header .calendar__month-pager .mobile-hide,
      .calendar--month .calendar__month-pager--lower .mobile-hide,
      .calendar-week-pager .mobile-hide,
      .calendar-day-pager .mobile-hide {
        position: relative !important;
        width: auto;
        height: auto;
        overflow: visible; } }

.calendar__wrap--header {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-end;
  justify-content: flex-end;
  width: 100%; }
  @media (min-width: 48em) {
    .calendar__wrap--header {
      flex-direction: row; } }

.calendar__wrap--header,
.calendar__wrap--title {
  font-size: 14px; }
  .calendar__wrap--header .calendar__title h2,
  .calendar__wrap--title .calendar__title h2 {
    margin: 0; }
    @media (max-width: 48em) {
      .calendar__wrap--header .calendar__title h2,
      .calendar__wrap--title .calendar__title h2 {
        font-size: 16px; } }

@media (max-width: 48em) {
  .calendar__wrap--title {
    display: none; } }

.calendar__pager {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  line-height: 1; }
  .calendar__pager::before {
    padding: 0;
    content: ''; }

.calendar__title {
  order: 1;
  margin: 0;
  text-transform: uppercase; }

.button.calendar__pager--left,
.button.calendar__pager--right {
  display: block;
  width: 30px;
  height: 30px;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background-color: #00549f;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 20px;
  border-radius: 5px;
  transition: background-color ease-in-out .25s; }
  .button.calendar__pager--left:hover, .button.calendar__pager--left:focus,
  .button.calendar__pager--right:hover,
  .button.calendar__pager--right:focus {
    background-color: #31809f;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px; }

.button.calendar__pager--left {
  order: 0;
  background-image: url("../assets/dist/images/pager-arrow-prev.svg"); }
  .button.calendar__pager--left:hover, .button.calendar__pager--left:focus {
    background-image: url("../assets/dist/images/pager-arrow-prev.svg"); }

.button.calendar__pager--right {
  order: 2;
  background-image: url("../assets/dist/images/pager-arrow-next.svg"); }
  .button.calendar__pager--right:hover, .button.calendar__pager--right:focus {
    background-image: url("../assets/dist/images/pager-arrow-next.svg"); }

/**
 * Grid styling
 *
 * The grid styling for the single-day event
 * cells uses flexbox containers for the row
 * and 1/7 of the container for the width on
 * each item. The first item in the row is
 * always the multi-day event cell, which is 100%
 * wide, and uses it's own grid to control
 * layout for multi-day events.
 */
.calendar__wrap--grid {
  position: relative;
  border: 2px solid #d1d1d1; }

.calendar__row--header,
.calendar__row--content,
.calendar__numbers {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start; }

@media (max-width: 48em) {
  .calendar__row--footer {
    display: none; } }

.calendar__day,
.calendar__day--number {
  position: relative;
  width: 100%;
  padding: 5px; }
  @media (min-width: 48em) {
    .calendar__day,
    .calendar__day--number {
      width: 14.28571%; } }

.calendar__day {
  background-color: #fff; }
  @media (min-width: 48em) {
    .calendar__day {
      min-height: 25px; } }

@media (min-width: 48em) {
  .calenar__day--number {
    min-height: 0; } }

.calendar__day--header {
  min-height: 0;
  text-align: center; }

.calendar__day--blank {
  display: none; }
  @media (min-width: 48em) {
    .calendar__day--blank {
      display: block; } }

.calendar__row--content .calendar__day--blank {
  min-height: 5rem; }

.calendar__day--outside {
  background-color: #efefef; }

/**
 * Calendar borders
 *
 * External borders are wrapped around the
 * .calendar__week element, while internal borders
 * are absolutely positioned empty divs.
 */
.calendar__week {
  position: relative;
  border-top: 2px solid #d1d1d1; }
  @media (min-width: 48em) {
    .calendar__week {
      padding-top: 25px; } }

.calendar__week--empty {
  display: none; }
  @media (min-width: 48em) {
    .calendar__week--empty {
      display: block; } }

.calendar__bar {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  display: none;
  width: 1px;
  height: 100%;
  color: #d1d1d1;
  box-shadow: inset 0 0 0 1px, -1px 0 0 0;
  opacity: .25; }
  @media (min-width: 48em) {
    .calendar__bar {
      display: block; } }

.calendar__bar--1 {
  left: 14.28571%; }

.calendar__bar--2 {
  left: 28.57143%; }

.calendar__bar--3 {
  left: 42.85714%; }

.calendar__bar--4 {
  left: 57.14286%; }

.calendar__bar--5 {
  left: 71.42857%; }

.calendar__bar--6 {
  left: 85.71429%; }

/**
 * Link overlays
 *
 * Each day in the calendar has an associated list of days
 * that is stored below the calendar that contains more
 * information. To access this information, there are link
 * overlays positioned absolutely above the day cells.
 */
.calendar__numbers {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  width: 100%;
  height: 100%;
  font-size: 11px;
  line-height: 1; }
  @media (min-width: 48em) {
    .calendar__numbers {
      height: 20px; } }

.calendar__number-day--multi {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px); }

/**
 * Multi-day grids
 *
 * Unlike the regular grid cells for the calendar, which
 * use flexbox, the multi-day grids use Singularity GS's
 * float grid-spans so that they can start at arbitrary
 * points within the grid. Clearing has to be applied
 * manually via a clear class, applied when the template
 * is first generated.
 */
.calendar__day--multi {
  width: 100%;
  padding: 5px;
  background-color: #f9f9f9; }
  .calendar__day--multi::after {
    display: table;
    clear: both;
    content: ''; }
  @media (min-width: 48em) {
    .calendar__day--multi {
      padding: 0; } }

.calendar__day-span--1-1 {
  float: left;
  width: 14.28571%;
  margin-right: -100%;
  margin-left: 0;
  clear: none; }

.calendar__day-span--1-7 {
  float: right;
  width: 14.28571%;
  margin-right: 0;
  margin-left: 0;
  clear: none; }

.calendar__day-span--2-1 {
  float: left;
  width: 28.57143%;
  margin-right: -100%;
  margin-left: 0;
  clear: none; }

.calendar__day-span--2-2 {
  float: left;
  width: 28.57143%;
  margin-right: -100%;
  margin-left: 14.28571%;
  clear: none; }

.calendar__day-span--2-3 {
  float: left;
  width: 28.57143%;
  margin-right: -100%;
  margin-left: 28.57143%;
  clear: none; }

.calendar__day-span--2-4 {
  float: left;
  width: 28.57143%;
  margin-right: -100%;
  margin-left: 42.85714%;
  clear: none; }

.calendar__day-span--2-5 {
  float: left;
  width: 28.57143%;
  margin-right: -100%;
  margin-left: 57.14286%;
  clear: none; }

.calendar__day-span--2-6 {
  float: right;
  width: 28.57143%;
  margin-right: 0;
  margin-left: 0;
  clear: none; }

.calendar__day-span--3-1 {
  float: left;
  width: 42.85714%;
  margin-right: -100%;
  margin-left: 0;
  clear: none; }

.calendar__day-span--3-2 {
  float: left;
  width: 42.85714%;
  margin-right: -100%;
  margin-left: 14.28571%;
  clear: none; }

.calendar__day-span--3-3 {
  float: left;
  width: 42.85714%;
  margin-right: -100%;
  margin-left: 28.57143%;
  clear: none; }

.calendar__day-span--3-4 {
  float: left;
  width: 42.85714%;
  margin-right: -100%;
  margin-left: 42.85714%;
  clear: none; }

.calendar__day-span--3-5 {
  float: right;
  width: 42.85714%;
  margin-right: 0;
  margin-left: 0;
  clear: none; }

.calendar__day-span--4-1 {
  float: left;
  width: 57.14286%;
  margin-right: -100%;
  margin-left: 0;
  clear: none; }

.calendar__day-span--4-2 {
  float: left;
  width: 57.14286%;
  margin-right: -100%;
  margin-left: 14.28571%;
  clear: none; }

.calendar__day-span--4-3 {
  float: left;
  width: 57.14286%;
  margin-right: -100%;
  margin-left: 28.57143%;
  clear: none; }

.calendar__day-span--4-4 {
  float: right;
  width: 57.14286%;
  margin-right: 0;
  margin-left: 0;
  clear: none; }

.calendar__day-span--5-1 {
  float: left;
  width: 71.42857%;
  margin-right: -100%;
  margin-left: 0;
  clear: none; }

.calendar__day-span--5-2 {
  float: left;
  width: 71.42857%;
  margin-right: -100%;
  margin-left: 14.28571%;
  clear: none; }

.calendar__day-span--5-3 {
  float: right;
  width: 71.42857%;
  margin-right: 0;
  margin-left: 0;
  clear: none; }

.calendar__day-span--6-1 {
  float: left;
  width: 85.71429%;
  margin-right: -100%;
  margin-left: 0;
  clear: none; }

.calendar__day-span--6-2 {
  float: right;
  width: 85.71429%;
  margin-right: 0;
  margin-left: 0;
  clear: none; }

.calendar__day-span--7-1 {
  float: right;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
  clear: none; }

.calendar__day-span {
  padding: 0 .8px; }
  @media (max-width: 48em) {
    .calendar__day-span {
      width: 100%;
      margin-right: 0;
      margin-left: 0; } }

.calendar__day-span--clear {
  clear: both; }

/**
 * Calendar List Styling
 *
 * In addition to the 30-day grid, there's a list view
 * for easier usage on mobile that appears below the
 * normal 30-day calendar. It's brought up a fixed
 * position whenever the user touches it's associated
 * day on the calendar grid.
 */
.calendar__day-header {
  margin-top: 0; }
  @media (min-width: 48em) {
    .calendar__day-header {
      display: none; } }

.calendar__mobile-list {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  max-width: 100%;
  padding: 15px;
  overflow-y: auto;
  background-color: rgba(255, 255, 255, 0.95);
  transition: all 250ms ease-in-out;
  transform: scale(0); }
  .calendar__mobile-list.list {
    z-index: 50;
    transform: scale(1); }
  .calendar__mobile-list .event-card--sparse .time--end,
  .calendar__mobile-list .event-card--sparse .time--separator {
    position: relative !important;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto; }
  .calendar__mobile-list .event-card--sparse .time--start .event-card__day--inline,
  .calendar__mobile-list .event-card--sparse .time--start .event-card__separator {
    position: relative !important;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto; }

.calendar__list,
.calendar__list-item,
.calendar__list--day,
.calendar__list-item--day {
  padding: 0;
  margin: 0;
  list-style-type: none; }

.calendar__list-item {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: flex-start;
  padding: 15px 0;
  border-bottom: 2px solid #d1d1d1; }

.calendar__list-title {
  padding-right: 8px;
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  text-align: center; }

.calendar__list--day {
  flex-grow: 1; }

.kids {
  color: #fff;
  background-color: #ffbd0a;
  border-color: #e19f00; }
  .kids a:hover {
    color: #4aaca2; }
  .kids h2,
  .kids h3,
  .kids h4 {
    color: #fff; }

.teens {
  color: #fff;
  background-color: #3d4246;
  border-color: #1f2428; }
  .teens h2,
  .teens h3,
  .teens h4 {
    color: #fff; }

.adult {
  color: #fff;
  background-color: #4aaca2;
  border-color: #2c8e84; }
  .adult h2,
  .adult h3,
  .adult h4 {
    color: #fff; }
  .adult a {
    color: #57b7df; }
    .adult a:focus, .adult a:hover, .adult a:active {
      color: #ffbd0a;
      text-decoration: none; }

.calendar-picker {
  position: relative;
  display: block; }

.calendar-picker-title {
  position: relative;
  z-index: 20;
  display: block; }

.calendar-picker-title h2 {
  margin: 0; }

.calendar-picker-input {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  display: block;
  height: auto;
  opacity: 0; }
  .calendar-picker.active .calendar-picker-input {
    margin-top: 10px;
    opacity: 1;
    transition: transform ease-in-out .25s, opacity ease-in-out .25s;
    transform: translate3d(0, 100%, 0); }

.calendar__month-pager--lower {
  margin-bottom: 2.2rem; }
  @media (min-width: 48em) {
    .calendar__month-pager--lower {
      float: right; } }

.calendar-picker-link--lower {
  font-size: 16px; }
  @media (min-width: 48em) {
    .calendar-picker-link--lower {
      font-size: 18px; } }
  .calendar-picker-link--lower p {
    margin: 0; }

@media (min-width: 48em) {
  .calendar__pager--right-lower {
    margin-right: 0; } }

.ie10 .calendar--month .node--view-mode-teaser.event-card--sparse,
.ie11 .calendar--month .node--view-mode-teaser.event-card--sparse {
  flex-wrap: nowrap; }

.ie10 .calendar__wrap--header,
.ie11 .calendar__wrap--header {
  display: block; }
  .ie10 .calendar__wrap--header::after,
  .ie11 .calendar__wrap--header::after {
    display: table;
    clear: both;
    content: ''; }
  .ie10 .calendar__wrap--header .tabs,
  .ie11 .calendar__wrap--header .tabs {
    text-align: right; }
  @media (min-width: 48em) {
    .ie10 .calendar__wrap--header .calendar__month-pager,
    .ie11 .calendar__wrap--header .calendar__month-pager {
      float: left; } }
  @media (min-width: 48em) {
    .ie10 .calendar__wrap--header .calendar__menu-tasks,
    .ie11 .calendar__wrap--header .calendar__menu-tasks {
      float: right; } }

@media (min-width: 48em) {
  .ie10 .calendar__wrap--tilte,
  .ie11 .calendar__wrap--tilte {
    clear: both; } }

.lc-form--calendar-filters .pager__items {
  text-align: center; }
  @media (min-width: 48em) {
    .lc-form--calendar-filters .pager__items {
      text-align: right; } }

.calendar-picker-input--lower {
  z-index: 1; }

.calendar__month-pager--lower .calendar__pager {
  z-index: 2; }

.lc-form__content {
  width: 100%; }
  @media (min-width: 64em) {
    .lc-form__content {
      float: left;
      padding-left: 0; }
      .lc-form__content.active {
        width: 75%;
        padding-left: 20px; } }

@media (min-width: 48em) {
  .ie .calendar__wrap--title {
    width: 100%; } }

.ie .calendar__title {
  z-index: 1; }

.ie .calendar__pager {
  z-index: 2; }

span.lc-event__age-group.lc-event__age-group--child.lc-event__age-group--no-link {
  color: #333; }

.calendar__day-ajax.white-popup .mfp-close {
  position: absolute;
  top: 0;
  right: 5px;
  z-index: 10000;
  width: 40px;
  height: 40px;
  line-height: 40px;
  background-color: #333;
  border-radius: 50%; }
  @media (min-width: 48em) {
    .calendar__day-ajax.white-popup .mfp-close {
      top: -10px;
      right: 5px; } }
  @media (min-width: 64em) {
    .calendar__day-ajax.white-popup .mfp-close {
      top: -15px;
      right: 5px; } }
  .calendar__day-ajax.white-popup .mfp-close:hover, .calendar__day-ajax.white-popup .mfp-close:focus {
    top: 0;
    right: 5px;
    background-color: #333; }
    @media (min-width: 48em) {
      .calendar__day-ajax.white-popup .mfp-close:hover, .calendar__day-ajax.white-popup .mfp-close:focus {
        top: -10px;
        right: 5px; } }
    @media (min-width: 64em) {
      .calendar__day-ajax.white-popup .mfp-close:hover, .calendar__day-ajax.white-popup .mfp-close:focus {
        top: -15px;
        right: 5px; } }

.path-events .mfp-bg {
  background: rgba(255, 255, 255, 0.9); }

.calendar__day-ajax {
  margin-right: 60px; }
  @media (min-width: 48em) {
    .calendar__day-ajax {
      margin-right: 15px; } }
  @media (min-width: 64em) {
    .calendar__day-ajax {
      padding: 0; } }
  .calendar__day-ajax .calendar__day-ajax-content {
    width: 400px;
    max-width: 100%;
    height: calc(100vh - 20px);
    padding: 20px 5px 20px 20px;
    margin: 0 auto;
    background: #fff;
    border: 2px solid #333;
    border-radius: 12px; }
    @media (min-width: 48em) {
      .calendar__day-ajax .calendar__day-ajax-content {
        height: calc(100vh - 60px); } }
    @media (min-width: 64em) {
      .calendar__day-ajax .calendar__day-ajax-content {
        height: 80vh; } }
    .calendar__day-ajax .calendar__day-ajax-content .lc-event--upcoming {
      width: 100%;
      padding: 0;
      margin: 0 0 10px; }
    .calendar__day-ajax .calendar__day-ajax-content .calendar__day-title {
      margin: 0;
      font-weight: 700;
      line-height: 1.5; }
  .calendar__day-ajax .calendar__day-ajax-wrap {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
    padding-right: 15px; }
  .calendar__day-ajax .calendar__day-wrap--additional {
    position: relative;
    height: 100%;
    max-height: 100%;
    overflow-y: auto; }
    .calendar__day-ajax .calendar__day-wrap--additional .calendar__day--ajax {
      width: 100%; }

.micromodal .calendar__day-ajax {
  margin-right: 0; }

.micromodal .calendar__day-ajax .calendar__day-ajax-content {
  padding: 0;
  border: 0;
  border-radius: 0; }

.micromodal .calendar__day-ajax-wrap {
  padding-right: 0; }

.calendar .calendar__day-load {
  padding: 5px;
  text-align: center;
  border-radius: 5px; }

.block-lc-calendar .calendar__links .calendar__link {
  margin-left: 0;
  list-style-type: none; }

.lc-skip-button {
  width: 100%;
  margin-top: 20px;
  margin-bottom: 20px; }
  @media (min-width: 48em) {
    .lc-skip-button {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0 0 0 0);
      border: 0; }
      .lc-skip-button:active, .lc-skip-button:focus {
        position: static !important;
        width: auto;
        height: auto;
        overflow: auto;
        clip: auto; } }

.calendar--month--suppress-excess-events .calendar__day--outside {
  display: none; }
  @media (min-width: 48em) {
    .calendar--month--suppress-excess-events .calendar__day--outside {
      display: block; } }

.calendar__numbers {
  z-index: 0; }

.lc-week {
  display: block;
  width: 100%;
  margin-bottom: 1rem;
  overflow: scroll; }
  @media (min-width: 64em) {
    .lc-week {
      display: table;
      overflow: auto;
      table-layout: fixed; } }
  .lc-week .lc-week-day {
    vertical-align: top; }
  .lc-week .lc-week-day-col {
    width: 12.5%; }
    @media (min-width: 64em) {
      .lc-week .lc-week-day-col {
        width: auto; } }
    .lc-week .lc-week-day-col.active {
      background-color: #efefef; }
  .lc-week .lc-week-time .all-day-row {
    border-top: none;
    border-bottom: none; }
  .lc-week .lc-week-time-col {
    width: 12.5%; }
    @media (min-width: 64em) {
      .lc-week .lc-week-time-col {
        width: 10%; } }
  .lc-week th,
  .lc-week td {
    padding: 5px;
    color: #000;
    background-color: transparent;
    border: 1px solid #d2d3d5; }
  .lc-week tbody {
    vertical-align: inherit; }
    .lc-week tbody + tbody {
      border-top: 2px solid #d2d3d5; }
  .lc-week td {
    border-bottom: 1px solid #d2d3d5; }
  .lc-week thead th {
    vertical-align: bottom;
    border-bottom-color: #dee2e6; }

.lc-day .all-day-row, .lc-day .lc-day-room-col:first-of-type, .lc-day .lc-day-time th {
  position: sticky;
  z-index: 3;
  background-color: #fff; }

.lc-day {
  display: block;
  width: 100%;
  margin-bottom: 1rem;
  overflow-x: scroll;
  overflow-y: visible;
  border-spacing: 0;
  border-collapse: separate;
  border-top: 2px solid #d2d3d5;
  border-left: 2px solid #d2d3d5; }
  .lc-day th,
  .lc-day td {
    border: 0; }
  .lc-day th,
  .lc-day td {
    border-right: 2px solid #d2d3d5;
    border-bottom: 2px solid #d2d3d5; }
  .lc-day .lc-day-room {
    vertical-align: top; }
  .lc-day .lc-day-branch-col {
    font-size: large; }
  .lc-day .lc-day-branch-col,
  .lc-day .lc-day-room-col {
    width: 12.5%; }
    @media (min-width: 64em) {
      .lc-day .lc-day-branch-col,
      .lc-day .lc-day-room-col {
        width: auto; } }
    .lc-day .lc-day-branch-col.active,
    .lc-day .lc-day-room-col.active {
      background-color: #efefef; }
  .lc-day th,
  .lc-day td {
    padding: 5px;
    color: #000;
    background-color: transparent; }
  .lc-day tbody {
    vertical-align: inherit; }
  .lc-day thead th {
    vertical-align: bottom; }
  .lc-day .event-card {
    min-width: 175px; }
  .lc-day tr:not(.lc-day-all-day-row) .event-card {
    background-color: transparent;
    border: 0; }
  .lc-day .all-day-row {
    left: 0; }
  .lc-day .lc-day-room-col:first-of-type {
    left: 0; }
  .lc-day .lc-day-time th {
    left: 0; }

.lc-menu-tasks {
  overflow: hidden;
  text-align: right; }
  .lc-menu-tasks a {
    padding: 10px; }

/* Registration Notifications */
.lc-messages__message {
  padding: 0 10px;
  margin-bottom: 5px;
  background-color: #d2d3d5; }

.lc-date-icon {
  display: flex;
  flex-direction: column; }

.lc-date-icon__item {
  width: 3.5rem;
  text-align: center;
  text-transform: uppercase;
  border: 2px solid #00549f;
  border-bottom: none; }

.lc-date-icon__item:last-child {
  border-bottom: 2px solid #00549f; }

.date-icon__year {
  padding-bottom: 5px;
  font-size: 10px; }

.lc-date-icon__item--month {
  line-height: 2;
  color: #fff;
  background-color: #00549f; }

.lc-date-icon__item--day {
  font-size: 28px;
  line-height: 1.2;
  color: #333;
  border-top: none; }

.lc-date-icon__item--multi-day {
  display: flex;
  justify-content: center;
  font-size: 18px; }

.lc-date-icon__item--day-name {
  font-size: 12px;
  line-height: 1.2;
  border-top: none; }

.lc-event__sidebar .lc-date-icon__item--day {
  line-height: 1;
  border-bottom: none; }

.lc-event__sidebar .lc-date-icon__item--year {
  padding-bottom: 5px;
  font-size: 12px;
  line-height: 1;
  border-top: none; }

.lc-event__event-details--upcoming .lc-date-icon__item--year {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0; }

.event-card {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  justify-content: flex-start;
  width: 100%;
  padding: 20px;
  background: #efefef; }

.event-card,
.event-card__top,
.event-card__bottom {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  justify-content: flex-start;
  width: 100%; }

.event-card__title {
  margin: 0; }

.event-card__room {
  margin-bottom: 5px;
  font-weight: 700; }

.event-card__day {
  font-size: 14px; }

.event-card__time {
  font-size: 18px;
  font-weight: 300; }

.event-card__date {
  order: 0; }

.event-card__details {
  flex-grow: 1;
  order: 1;
  margin-bottom: 15px; }

.event-card__labels {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stetch;
  justify-content: space-between;
  order: 2;
  width: 100%;
  padding: 0;
  margin: 0; }

.event-card__label {
  flex-grow: 1;
  padding: 10px 5px 0;
  margin: 0;
  text-align: center;
  list-style-type: none; }
  .event-card__label .link {
    display: block;
    padding: .625em;
    color: #fff;
    background-color: #999; }

.lc-event__wrapper {
  display: flex;
  flex: 1;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  line-height: 25px; }
  @media (min-width: 48em) {
    .lc-event__wrapper {
      flex-direction: row; } }

.lc-event__details {
  display: flex;
  width: 100%;
  padding: 10px 0; }
  .lc-event__details h2 {
    margin: 0; }

.lc-event__title {
  margin: 0;
  line-height: 1; }

.lc-event__upcoming {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  width: 100%; }

.lc-event__month-summary {
  display: flex; }

/* color coding strip */
.lc-event__color-coding {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  width: 6px;
  min-width: 6px; }

.lc-event__color-indicator {
  display: flex;
  flex: 1;
  order: 0;
  padding: 3px; }

.lc-event__event-details {
  flex: 1;
  width: calc(100% - 16px);
  margin-left: 5px; }

.no-color-coding .lc-event__event-details {
  margin-left: 0; }

.no-color-coding .lc-event__month-details .lc-date-icon {
  padding-left: 0; }

.event-card--full {
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between; }

.event-card--sparse.node--view-mode-teaser {
  flex-wrap: nowrap;
  padding: 5px;
  margin-bottom: 5px; }
  .event-card--sparse.node--view-mode-teaser h2,
  .event-card--sparse.node--view-mode-teaser h3,
  .event-card--sparse.node--view-mode-teaser h4 {
    margin: 0; }
  .event-card--sparse.node--view-mode-teaser .lc-event__details {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start; }
  .event-card--sparse.node--view-mode-teaser .event-card__title,
  .event-card--sparse.node--view-mode-teaser .event-card__room,
  .event-card--sparse.node--view-mode-teaser .event-card__day-time {
    width: 100%;
    font-size: 16px;
    line-height: 1.2; }
  .event-card--sparse.node--view-mode-teaser .event-card__title {
    order: 1;
    font-weight: 700;
    border-bottom: 1px solid #333; }
  .event-card--sparse.node--view-mode-teaser .event-card__room {
    order: 2;
    font-style: italic;
    font-weight: 400; }
  .event-card--sparse.node--view-mode-teaser .event-card__details {
    order: 0;
    width: 100%;
    margin: 0; }
  .event-card--sparse.node--view-mode-teaser .event-card__day-time {
    font-size: 12px; }
  .event-card--sparse.node--view-mode-teaser .time--end,
  .event-card--sparse.node--view-mode-teaser .time--separator {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    border: 0; }
  .event-card--sparse.node--view-mode-teaser .time--start .event-card__day--inline,
  .event-card--sparse.node--view-mode-teaser .time--start .event-card__separator {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    border: 0; }
  .calendar__day--multi .event-card--sparse.node--view-mode-teaser .event-card__title,
  .calendar__day--multi .event-card--sparse.node--view-mode-teaser .event-card__room,
  .calendar__day--multi .event-card--sparse.node--view-mode-teaser .event-card__day-time {
    width: 100%;
    margin: 0 10px 0 0; }
  .calendar__day--multi .event-card--sparse.node--view-mode-teaser .time--end,
  .calendar__day--multi .event-card--sparse.node--view-mode-teaser .time--separator {
    position: static !important;
    width: auto;
    height: auto;
    overflow: auto;
    clip: auto; }
  .calendar__day--multi .event-card--sparse.node--view-mode-teaser .time--start .event-card__day--inline,
  .calendar__day--multi .event-card--sparse.node--view-mode-teaser .time--start .event-card__separator {
    position: static !important;
    width: auto;
    height: auto;
    overflow: auto;
    clip: auto; }

.calendar__day--multi .event-card__title,
.calendar__day--multi .event-card__room,
.calendar__day--multi .event-card__day-time {
  width: 100%;
  margin: 0 .625em 0 0; }

.calendar__day--multi .time--end,
.calendar__day--multi .time--separator,
.calendar__day--multi .time--start .event-card__day--inline,
.calendar__day--multi .time--start .event-card__separator {
  position: relative !important;
  width: auto;
  height: auto;
  overflow: visible; }

.date-location__other-dates .date-location__toggle {
  width: 100%;
  padding: 5px; }

.date-location__other-dates .date-location__toggle,
.date-location__other-dates .date-location__repeats-item {
  margin-bottom: 5px;
  font-weight: 700;
  color: #333;
  background-color: #ddd;
  transition: background ease-in-out 500ms; }
  .date-location__other-dates .date-location__toggle:hover, .date-location__other-dates .date-location__toggle:focus,
  .date-location__other-dates .date-location__repeats-item:hover,
  .date-location__other-dates .date-location__repeats-item:focus {
    background-color: #bbb;
    outline: none; }

.date-location__other-dates .date-location__wrapper {
  max-height: 0;
  overflow: hidden;
  transition: all ease-in-out 500ms; }
  .date-location__other-dates .date-location__wrapper.active {
    max-height: 100%; }

.date-location__other-dates .date-location__repeats-list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0;
  margin: 0; }

.date-location__other-dates .date-location__repeats-item {
  width: 49%;
  list-style-type: none; }

.date-location__other-dates .date-location__repeats-link {
  display: block;
  color: #333;
  text-align: center; }

.lc-event--code-unpublished {
  padding: 5px;
  border: 5px solid #d2d3d5; }

.lc-event--code-public-reservation {
  padding: 5px;
  border: 5px solid #007b69; }

.lc-event--code-private-event {
  padding: 5px;
  border: 5px solid #00549f; }

.lc-event--code-has-conflict {
  padding: 5px;
  border: 5px solid #00549f; }

.lc-event--code-room-reserved {
  padding: 5px;
  border: 5px solid #007b69; }

.lc-event__key {
  text-transform: uppercase; }

.lc-event__key--cancelled {
  color: #e05554; }

.lc-event__color-indicator {
  background-color: #d2d3d5; }

.page-events-upcoming .lc-event__wrapper {
  margin-left: 10px; }

.lc-event__color-indicator--adult,
.lc-event__color-indicator--adults {
  background-color: #0098db; }

.lc-event__color-indicator--everyone {
  background-color: #007b69; }

.lc-event__color-indicator--family,
.lc-event__color-indicator--children {
  background-color: #903986; }

.lc-event__color-indicator--infant,
.lc-event__color-indicator--babies {
  background-color: #f3ec7a; }

.lc-event__color-indicator--kids {
  background-color: #fed100; }

.lc-event__color-indicator--preschool {
  background-color: #d7a900; }

.lc-event__color-indicator--school-age {
  background-color: #f68d74; }

.lc-event__color-indicator--teen,
.lc-event__color-indicator--teens {
  background-color: #e05554; }

.lc-event__color-indicator--toddler {
  background-color: #c23736; }

.lc-event__color-indicator--toddler-one {
  background-color: #35bcac; }

.node--type-lc-closing .lc-event__color-indicator {
  background-color: #e05554; }

.node--type-lc-closing .lc-event__color-coding--age,
.node--type-lc-closing .lc-event__color-coding--program {
  display: none; }

.ie10 .lc-event__event-details,
.ie11 .lc-event__event-details {
  flex: inherit; }

.lc-registration-label {
  margin: 0;
  font-size: larger;
  font-weight: 700; }

.lc-event__month-summary .lc-registration-label {
  margin-top: 10px; }

body.lc-no-scroll {
  position: fixed;
  width: 100%;
  overflow-y: scroll; }

.lc-branch-modal {
  position: relative; }

.lc-branch-modal__wrapper {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100%;
  height: 100%;
  padding: 32px;
  background-color: rgba(0, 0, 0, 0.5); }

.lc-branch-modal__container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  height: 100%;
  background-color: #fff;
  box-shadow: 0 5px 15px 0 #37424a; }

.lc-branch-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 100px;
  padding: 20px;
  background-color: #00549f; }
  @media (min-width: 48em) {
    .lc-branch-modal__header {
      min-height: inherit; } }

.lc-branch-modal__title {
  margin: 0;
  font-size: 14px;
  color: #fff;
  text-transform: uppercase; }
  @media (min-width: 48em) {
    .lc-branch-modal__title {
      font-size: 18px; } }

.lc-branch-modal__content-wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  padding: 20px;
  overflow-y: scroll; }

.lc-branch-modal__content {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
  padding: 10px;
  margin: 10px 0; }
  @media (min-width: 48em) {
    .lc-branch-modal__content {
      width: 49%; } }
  @media (min-width: 64em) {
    .lc-branch-modal__content {
      width: 32%; } }

.lc-branch-modal__branch-select {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  border: 2px solid #f0f0f0; }
  .lc-branch-modal__branch-select:hover, .lc-branch-modal__branch-select:focus {
    background-color: transparent;
    border: 2px solid #f0f0f0;
    outline: none; }
  .lc-branch-modal__branch-select.active {
    border: 2px solid #1797d4; }

.lc-branch-modal__image-container {
  width: 25%;
  height: auto;
  padding-right: 10px; }
  @media (min-width: 48em) {
    .lc-branch-modal__image-container {
      width: 33.33333%; } }
  .lc-branch-modal__image-container img {
    width: 100%; }

.lc-branch-modal__branch-info {
  flex-grow: 1;
  width: 75%;
  font-size: 14px;
  text-align: left; }
  @media (min-width: 48em) {
    .lc-branch-modal__branch-info {
      width: 66.66667%;
      font-size: 16px;
      text-align: left; } }

.lc-branch-modal__branch-title {
  margin: 0;
  font-size: 16px; }
  @media (min-width: 48em) {
    .lc-branch-modal__branch-title {
      font-size: 18px; } }

.lc-branch-modal__exit {
  margin-right: 0;
  margin-left: 0; }

.lc-branch-modal__address {
  line-height: 1; }

.lc-branch-modal__checkboxes {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important; }
  .lc-branch-modal__checkboxes input,
  .lc-branch-modal__checkboxes label,
  .lc-branch-modal__checkboxes .form-type-checkbox {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    border: 0; }

.lc-branch-modal__submit {
  display: block;
  margin: 0 auto;
  margin-top: 10px;
  margin-bottom: 10px; }
  @media (min-width: 48em) {
    .lc-branch-modal__submit {
      margin-top: 0;
      margin-bottom: 20px; } }

.lc-branch-modal__wrapper {
  left: -9999px;
  opacity: 0;
  transition: opacity ease-in-out 250ms .5s; }
  .lc-branch-modal__wrapper .lc-branch-modal__container {
    transition: transform ease-in-out 250ms .5s;
    transform: scale(0); }
  .lc-branch-modal__wrapper.open {
    left: 0;
    opacity: 1; }
    .lc-branch-modal__wrapper.open .lc-branch-modal__container {
      transform: scale(1); }

.lc-branch-modal__form {
  display: block;
  width: 100%;
  padding-right: 20px;
  padding-left: 20px;
  margin-top: 20px;
  margin-bottom: 20px; }
  @media (min-width: 64em) {
    .lc-branch-modal__form {
      flex-direction: row;
      width: auto; } }
  .lc-branch-modal__form .button {
    width: 100%;
    height: 48px;
    margin: 5px 0;
    text-align: center; }
    @media (min-width: 64em) {
      .lc-branch-modal__form .button {
        width: auto;
        margin: 0 5px; } }
  .lc-branch-modal__form .lc-branch-modal__select-all,
  .lc-branch-modal__form .lc-branch-modal__reset {
    display: inline-block;
    width: 49%;
    padding: 1.25rem 0;
    text-align: left; }
    @media (min-width: 64em) {
      .lc-branch-modal__form .lc-branch-modal__select-all,
      .lc-branch-modal__form .lc-branch-modal__reset {
        width: auto;
        padding-right: inherit;
        padding-left: inherit;
        margin: 0 5px; } }
  .lc-branch-modal__form .lc-branch-modal__select-all {
    text-align: left; }
  .lc-branch-modal__form .lc-branch-modal__reset {
    text-align: right; }

.lc-featured-event-row {
  position: relative;
  display: flex;
  flex-direction: row; }
  .lc-featured-event-row .lc-event__color-coding {
    margin-right: 20px; }

.lc-featured-event-content-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -10px;
  margin-left: -10px;
  width: 100%; }
  .lc-featured-event-content-row .lc-featured-event-image,
  .lc-featured-event-content-row .lc-featured-event-content {
    position: relative;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px; }
  @media (min-width: 64em) {
    .lc-featured-event-content-row .lc-featured-event-image {
      flex: 0 0 25%;
      max-width: 25%; } }
  @media (min-width: 64em) {
    .lc-featured-event-content-row .lc-featured-event-content {
      flex: 0 0 75%;
      max-width: 75%; } }

.lc-featured-event-row-terms {
  display: flex;
  flex-wrap: wrap;
  margin-right: -10px;
  margin-left: -10px;
  width: 50%;
  padding-right: 0;
  padding-left: 0; }

.lc-featured-event-program-type {
  position: relative;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px; }
  @media (min-width: 64em) {
    .lc-featured-event-program-type {
      flex: 0 0 50%;
      max-width: 50%; } }

.lc-featured-event {
  /* stylelint-disable-next-line rule */
  z-index: auto !important;
  padding: 0;
  background-color: transparent; }
  .lc-featured-event .lc-event__month-details {
    right: auto;
    left: 100%;
    opacity: 0; }
    .lc-featured-event .lc-event__month-details.event-direction-left {
      right: 100%;
      left: auto; }
  .lc-featured-event:hover .lc-event__month-details {
    opacity: 1;
    transition: transform 500ms ease-in-out 250ms;
    transform: translate3d(-100%, 0, 0); }
    .lc-featured-event:hover .lc-event__month-details.event-direction-left {
      transform: translate3d(100%, 0, 0); }

.lc-featured-events-container {
  padding: 10px 20px;
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid #d2d3d5;
  border-radius: 5px; }

.lc-featured-events {
  -webkit-user-select: unset;
     -moz-user-select: unset;
      -ms-user-select: unset;
          user-select: unset; }
  .lc-featured-events .lc-featured-event:not(:first-of-type) {
    display: none; }
  .lc-featured-events.slick-initialized .lc-featured-event {
    display: block; }
  .lc-featured-events .slick-track,
  .lc-featured-events .slick-list {
    /* stylelint-disable-next-line declaration-no-important */
    transform: none !important; }

.lc-featured-events-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 10px; }
  .lc-featured-events-controls .slick-arrow {
    position: relative;
    top: auto;
    bottom: auto;
    width: 20px;
    height: 20px;
    font-size: 0;
    background-color: transparent;
    background-size: contain;
    border: 0; }
    .lc-featured-events-controls .slick-arrow.slick-prev {
      left: 0;
      background-image: url(../assets/dist/icons/chevron-left-black.svg); }
    .lc-featured-events-controls .slick-arrow.slick-next {
      right: 0;
      background-image: url(../assets/dist/icons/chevron-right-black.svg); }
  .lc-featured-events-controls .slick-dots {
    position: relative;
    display: flex;
    flex-direction: row;
    padding: 0;
    margin: 0;
    list-style: none; }
    .lc-featured-events-controls .slick-dots > li {
      display: flex;
      align-items: center;
      list-style: none; }
    .lc-featured-events-controls .slick-dots button {
      width: 10px;
      height: 10px;
      min-height: auto;
      padding: 0;
      margin-right: 5px;
      margin-left: 5px;
      font-size: 0;
      background-color: #000;
      border: 0;
      border-radius: 50%;
      opacity: .25;
      transition: opacity 250ms; }
      .lc-featured-events-controls .slick-dots button:hover, .lc-featured-events-controls .slick-dots button:focus, .lc-featured-events-controls .slick-dots button:active {
        opacity: .5; }
    .lc-featured-events-controls .slick-dots .slick-active button {
      opacity: .5; }

.lc-featured-event-btn {
  margin-top: 10px; }

.lc-form .form-submit {
  margin-top: 10px; }

.lc-form .lc-form__half .form-text,
.lc-form .lc-form__full .form-text {
  margin: 0; }

.lc-form__flex-wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 2px solid #efefef; }
  .lc-form__flex-wrapper .form-item {
    margin-bottom: 0; }

.lc-form__half {
  flex: initial;
  padding-right: 5px; }
  .lc-form__half .form-item,
  .lc-form__half .form-text,
  .lc-form__half .form-select {
    display: block;
    width: 100%; }
  .lc-form__half:nth-child(even) {
    padding-right: 0; }

.lc-form__half--flex {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: flex-start; }

.lc-form__full {
  width: 100%; }
  .lc-form__full .form-item,
  .lc-form__full .form-text,
  .lc-form__full .form-select {
    display: block;
    width: 100%; }

.lc-form--reserve-by-time .form-item,
.lc-form--reserve-by-time .form-select,
.lc-form--reserve-by-time .form-text,
.lc-form--reserve-by-time .form-type-select,
.lc-form--reserve-by-time .form-type-date-popup,
.lc-form--reserve-by-time .form-submit,
.lc-form--reserve-by-time .container-inline-date {
  float: none;
  width: 100%; }
  @media (min-width: 48em) {
    .lc-form--reserve-by-time .form-item,
    .lc-form--reserve-by-time .form-select,
    .lc-form--reserve-by-time .form-text,
    .lc-form--reserve-by-time .form-type-select,
    .lc-form--reserve-by-time .form-type-date-popup,
    .lc-form--reserve-by-time .form-submit,
    .lc-form--reserve-by-time .container-inline-date {
      float: none;
      width: auto; } }

.lc-form--reserve-by-time .form-item,
.lc-form--reserve-by-time .container-inline {
  padding-bottom: 10px; }

.lc-form--reserve-by-time .container-inline-date {
  display: block;
  float: none; }
  .lc-form--reserve-by-time .container-inline-date .form-item,
  .lc-form--reserve-by-time .container-inline-date .form-item input {
    float: none;
    width: 100%; }
    @media (min-width: 48em) {
      .lc-form--reserve-by-time .container-inline-date .form-item,
      .lc-form--reserve-by-time .container-inline-date .form-item input {
        float: left;
        width: auto; } }
  @media (min-width: 48em) {
    .lc-form--reserve-by-time .container-inline-date {
      float: left;
      margin-left: 5px;
      clear: none; } }

@media (min-width: 48em) {
  .lc-form--reserve-by-time .form-type-select {
    clear: left; } }

@media (min-width: 64em) {
  .lc-form--reserve-by-time .form-type-select {
    clear: none; } }

@media (min-width: 48em) {
  .lc-form--reserve-by-time .form-submit {
    margin: 0 0 0 5px; } }

.block--lc-gmap .block__title {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0; }

.lc-form__message {
  padding: 1rem;
  margin-bottom: 2rem;
  background-color: #efefef; }

/* form */
.lc-form-container {
  padding: 10px;
  border: 2px solid #efefef; }

.lc-form input[type='text'],
.lc-form input[type='email'],
.lc-form input[type='password'],
.node-lc-reservation-form input[type='text'],
.node-lc-reservation-form input[type='email'],
.node-lc-reservation-form input[type='password'],
.node-lc-event-form input[type='text'],
.node-lc-event-form input[type='email'],
.node-lc-event-form input[type='password'],
.node-lc-closing-form input[type='text'],
.node-lc-closing-form input[type='email'],
.node-lc-closing-form input[type='password'] {
  box-sizing: border-box;
  width: 100%; }

.lc-form select,
.node-lc-reservation-form select,
.node-lc-event-form select,
.node-lc-closing-form select {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  border-color: #efefef; }
  @media (min-width: 48em) {
    .lc-form select,
    .node-lc-reservation-form select,
    .node-lc-event-form select,
    .node-lc-closing-form select {
      width: unset; } }

.lc-form #ajax-phone-wrapper {
  width: 100%;
  padding-right: 0; }
  @media (min-width: 64em) {
    .lc-form #ajax-phone-wrapper {
      display: inline-block;
      width: 40%;
      padding-right: .5em; } }

.lc-form #ajax-phone-extension-wrapper {
  width: 100%; }
  @media (min-width: 64em) {
    .lc-form #ajax-phone-extension-wrapper {
      display: inline-block;
      width: 20%; } }

.form-tel {
  width: 100%; }

.lc-event__subtitle {
  margin: 0;
  line-height: 1.5; }

h4.lc-event__subtitle {
  font-weight: 700; }

.lc-event__details {
  display: flex; }
  .lc-event__details .lc-event-info {
    padding-left: 10px; }
  .lc-event__details .lc-event-info__item {
    line-height: 1.2; }

.lc-event__registration-icon,
.lc-event__registration-payment-icon {
  width: 16px;
  min-width: 16px;
  height: auto;
  padding: 0;
  margin: 5px 10px 0 5px;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain; }

.lc-event__registration-icon {
  margin-top: 0;
  background-image: url("../assets/dist/icons/pencil-square-o-black.svg"); }

.lc-event__registration-payment-icon {
  background-image: url("../assets/dist/icons/dollar-sign-solid.svg"); }

.lc-event__month-details {
  position: fixed;
  top: 0;
  left: 100%;
  z-index: 10050;
  display: none;
  width: 300px;
  height: 100%;
  padding: 40px 30px;
  overflow-y: hidden;
  background: #fff;
  border: 2px solid #778898;
  border-top: none !important;
  border-bottom: none !important;
  opacity: 0;
  transition: transform 500ms ease-in-out 250ms, opacity 0s 750ms;
  transform: translate3d(0, 0, 0); }
  @media (min-width: 48em) {
    .lc-event__month-details {
      display: block; } }

.calendar--day .lc-day-room .node--type-lc-event .lc-event__month-details {
  right: auto;
  left: 100%;
  opacity: 0; }
  .calendar--day .lc-day-room .node--type-lc-event .lc-event__month-details.event-direction-left {
    right: 100%;
    left: auto; }

.calendar--day .lc-day-room .node--type-lc-event:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(-100%, 0, 0); }
  .calendar--day .lc-day-room .node--type-lc-event:hover .lc-event__month-details.event-direction-left {
    transform: translate3d(100%, 0, 0); }

.calendar--day .lc-day-room:nth-child(5) .node--type-lc-event .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .calendar--day .lc-day-room:nth-child(5) .node--type-lc-event .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.calendar--day .lc-day-room:nth-child(5) .node--type-lc-event:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .calendar--day .lc-day-room:nth-child(5) .node--type-lc-event:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

.calendar--day .lc-day-room:nth-child(6) .node--type-lc-event .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .calendar--day .lc-day-room:nth-child(6) .node--type-lc-event .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.calendar--day .lc-day-room:nth-child(6) .node--type-lc-event:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .calendar--day .lc-day-room:nth-child(6) .node--type-lc-event:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

.calendar--day .lc-day-room:nth-child(7) .node--type-lc-event .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .calendar--day .lc-day-room:nth-child(7) .node--type-lc-event .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.calendar--day .lc-day-room:nth-child(7) .node--type-lc-event:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .calendar--day .lc-day-room:nth-child(7) .node--type-lc-event:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

.calendar--day .lc-day-room:nth-child(8) .node--type-lc-event .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .calendar--day .lc-day-room:nth-child(8) .node--type-lc-event .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.calendar--day .lc-day-room:nth-child(8) .node--type-lc-event:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .calendar--day .lc-day-room:nth-child(8) .node--type-lc-event:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

.calendar--week .lc-week-day .node--type-lc-event .lc-event__month-details {
  right: auto;
  left: 100%;
  opacity: 0; }
  .calendar--week .lc-week-day .node--type-lc-event .lc-event__month-details.event-direction-left {
    right: 100%;
    left: auto; }

.calendar--week .lc-week-day .node--type-lc-event:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(-100%, 0, 0); }
  .calendar--week .lc-week-day .node--type-lc-event:hover .lc-event__month-details.event-direction-left {
    transform: translate3d(100%, 0, 0); }

.calendar--week .lc-week-day:nth-child(5) .node--type-lc-event .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .calendar--week .lc-week-day:nth-child(5) .node--type-lc-event .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.calendar--week .lc-week-day:nth-child(5) .node--type-lc-event:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .calendar--week .lc-week-day:nth-child(5) .node--type-lc-event:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

.calendar--week .lc-week-day:nth-child(6) .node--type-lc-event .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .calendar--week .lc-week-day:nth-child(6) .node--type-lc-event .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.calendar--week .lc-week-day:nth-child(6) .node--type-lc-event:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .calendar--week .lc-week-day:nth-child(6) .node--type-lc-event:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

.calendar--week .lc-week-day:nth-child(7) .node--type-lc-event .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .calendar--week .lc-week-day:nth-child(7) .node--type-lc-event .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.calendar--week .lc-week-day:nth-child(7) .node--type-lc-event:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .calendar--week .lc-week-day:nth-child(7) .node--type-lc-event:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

.calendar--week .lc-week-day:nth-child(8) .node--type-lc-event .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .calendar--week .lc-week-day:nth-child(8) .node--type-lc-event .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.calendar--week .lc-week-day:nth-child(8) .node--type-lc-event:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .calendar--week .lc-week-day:nth-child(8) .node--type-lc-event:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

.calendar--month .calendar__day--multi .event-card .lc-event__month-details,
.calendar--month .calendar__day .event-card .lc-event__month-details {
  right: auto;
  left: 100%;
  opacity: 0; }
  .calendar--month .calendar__day--multi .event-card .lc-event__month-details.event-direction-left,
  .calendar--month .calendar__day .event-card .lc-event__month-details.event-direction-left {
    right: 100%;
    left: auto; }

.calendar--month .calendar__day--multi .event-card:hover .lc-event__month-details,
.calendar--month .calendar__day .event-card:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(-100%, 0, 0); }
  .calendar--month .calendar__day--multi .event-card:hover .lc-event__month-details.event-direction-left,
  .calendar--month .calendar__day .event-card:hover .lc-event__month-details.event-direction-left {
    transform: translate3d(100%, 0, 0); }

.calendar--month .calendar__day:nth-child(5) .event-card .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .calendar--month .calendar__day:nth-child(5) .event-card .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.calendar--month .calendar__day:nth-child(5) .event-card:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .calendar--month .calendar__day:nth-child(5) .event-card:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

.calendar--month .calendar__day:nth-child(6) .event-card .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .calendar--month .calendar__day:nth-child(6) .event-card .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.calendar--month .calendar__day:nth-child(6) .event-card:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .calendar--month .calendar__day:nth-child(6) .event-card:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

.calendar--month .calendar__day:nth-child(7) .event-card .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .calendar--month .calendar__day:nth-child(7) .event-card .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.calendar--month .calendar__day:nth-child(7) .event-card:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .calendar--month .calendar__day:nth-child(7) .event-card:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

.calendar--month .calendar__day:nth-child(8) .event-card .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .calendar--month .calendar__day:nth-child(8) .event-card .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.calendar--month .calendar__day:nth-child(8) .event-card:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .calendar--month .calendar__day:nth-child(8) .event-card:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

@media (min-width: 48em) {
  .calendar--upcoming .lc-event--upcoming .lc-event__month-details {
    right: auto;
    left: 100%;
    opacity: 0; }
    .calendar--upcoming .lc-event--upcoming .lc-event__month-details.event-direction-left {
      right: 100%;
      left: auto; }
  .calendar--upcoming .lc-event--upcoming:hover .lc-event__month-details {
    opacity: 1;
    transition: transform 500ms ease-in-out 250ms;
    transform: translate3d(-100%, 0, 0); }
    .calendar--upcoming .lc-event--upcoming:hover .lc-event__month-details.event-direction-left {
      transform: translate3d(100%, 0, 0); }
  .calendar--upcoming .lc-event--upcoming:nth-child(2n+2) .lc-event__month-details {
    right: 100%;
    left: auto;
    opacity: 0; }
    .calendar--upcoming .lc-event--upcoming:nth-child(2n+2) .lc-event__month-details.event-direction-right {
      right: auto;
      left: 100%; }
  .calendar--upcoming .lc-event--upcoming:nth-child(2n+2):hover .lc-event__month-details {
    opacity: 1;
    transition: transform 500ms ease-in-out 250ms;
    transform: translate3d(100%, 0, 0); }
    .calendar--upcoming .lc-event--upcoming:nth-child(2n+2):hover .lc-event__month-details.event-direction-right {
      transform: translate3d(-100%, 0, 0); } }

@media (min-width: 64em) {
  .calendar--upcoming .lc-event--upcoming:nth-child(3n+1) .lc-event__month-details {
    right: auto;
    left: 100%;
    opacity: 0; }
    .calendar--upcoming .lc-event--upcoming:nth-child(3n+1) .lc-event__month-details.event-direction-left {
      right: 100%;
      left: auto; }
  .calendar--upcoming .lc-event--upcoming:nth-child(3n+1):hover .lc-event__month-details {
    opacity: 1;
    transition: transform 500ms ease-in-out 250ms;
    transform: translate3d(-100%, 0, 0); }
    .calendar--upcoming .lc-event--upcoming:nth-child(3n+1):hover .lc-event__month-details.event-direction-left {
      transform: translate3d(100%, 0, 0); }
  .calendar--upcoming .lc-event--upcoming:nth-child(3n+2) .lc-event__month-details {
    right: 100%;
    left: auto;
    opacity: 0; }
    .calendar--upcoming .lc-event--upcoming:nth-child(3n+2) .lc-event__month-details.event-direction-right {
      right: auto;
      left: 100%; }
  .calendar--upcoming .lc-event--upcoming:nth-child(3n+2):hover .lc-event__month-details {
    opacity: 1;
    transition: transform 500ms ease-in-out 250ms;
    transform: translate3d(100%, 0, 0); }
    .calendar--upcoming .lc-event--upcoming:nth-child(3n+2):hover .lc-event__month-details.event-direction-right {
      transform: translate3d(-100%, 0, 0); }
  .calendar--upcoming .lc-event--upcoming:nth-child(3n+3) .lc-event__month-details {
    right: 100%;
    left: auto;
    opacity: 0; }
    .calendar--upcoming .lc-event--upcoming:nth-child(3n+3) .lc-event__month-details.event-direction-right {
      right: auto;
      left: 100%; }
  .calendar--upcoming .lc-event--upcoming:nth-child(3n+3):hover .lc-event__month-details {
    opacity: 1;
    transition: transform 500ms ease-in-out 250ms;
    transform: translate3d(100%, 0, 0); }
    .calendar--upcoming .lc-event--upcoming:nth-child(3n+3):hover .lc-event__month-details.event-direction-right {
      transform: translate3d(-100%, 0, 0); } }

.block-lc-calendar-upcoming-block .calendar--upcoming.hover-left .lc-event--upcoming .lc-event__month-details {
  right: 100%;
  left: auto;
  opacity: 0; }
  .block-lc-calendar-upcoming-block .calendar--upcoming.hover-left .lc-event--upcoming .lc-event__month-details.event-direction-right {
    right: auto;
    left: 100%; }

.block-lc-calendar-upcoming-block .calendar--upcoming.hover-left .lc-event--upcoming:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(100%, 0, 0); }
  .block-lc-calendar-upcoming-block .calendar--upcoming.hover-left .lc-event--upcoming:hover .lc-event__month-details.event-direction-right {
    transform: translate3d(-100%, 0, 0); }

.block-lc-calendar-upcoming-block .calendar--upcoming.hover-right .lc-event--upcoming .lc-event__month-details {
  right: auto;
  left: 100%;
  opacity: 0; }
  .block-lc-calendar-upcoming-block .calendar--upcoming.hover-right .lc-event--upcoming .lc-event__month-details.event-direction-left {
    right: 100%;
    left: auto; }

.block-lc-calendar-upcoming-block .calendar--upcoming.hover-right .lc-event--upcoming:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(-100%, 0, 0); }
  .block-lc-calendar-upcoming-block .calendar--upcoming.hover-right .lc-event--upcoming:hover .lc-event__month-details.event-direction-left {
    transform: translate3d(100%, 0, 0); }

.white-popup .lc-event .lc-event__month-details {
  right: auto;
  left: 100%;
  opacity: 0; }
  .white-popup .lc-event .lc-event__month-details.event-direction-left {
    right: 100%;
    left: auto; }

.white-popup .lc-event:hover .lc-event__month-details {
  opacity: 1;
  transition: transform 500ms ease-in-out 250ms;
  transform: translate3d(-100%, 0, 0); }
  .white-popup .lc-event:hover .lc-event__month-details.event-direction-left {
    transform: translate3d(100%, 0, 0); }

.lc-event__month-details {
  line-height: 1; }
  .lc-event__month-details .lc-event__container {
    margin-bottom: 5px;
    font-size: 14px; }
  .lc-event__month-details .lc-event__title--details {
    font-size: 18px; }
  .lc-event__month-details .lc-event__title--state {
    margin-top: 0;
    color: #e05554;
    text-transform: uppercase; }
  .lc-event__month-details .lc-event__date {
    margin-bottom: 5px;
    font-size: 16px;
    line-height: 1.25; }
  .lc-event__month-details .date-location__room {
    color: #778898; }
  .lc-event__month-details .lc-event__age-groups,
  .lc-event__month-details .lc-event__body {
    padding: 0; }
  .lc-event__month-details .lc-event__contact {
    padding-bottom: 5px; }

@media (min-width: 48em) {
  .lc-event.desktop-hide {
    display: none; } }

.lc-event_room-setup-notes > div {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  margin-top: 10px;
  margin-right: 0;
  margin-bottom: 10px;
  margin-left: 0;
  border-left: 2px solid #00549f; }

.lc-event__menu-tasks {
  width: 100%; }
  @media (min-width: 64em) {
    .lc-event__menu-tasks {
      text-align: right; } }

.lc-event__wrapper {
  display: flex;
  flex: 1;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  clear: both;
  line-height: 25px; }
  @media (min-width: 48em) {
    .lc-event__wrapper {
      flex-direction: row; } }

.lc-event__content .lc-event__label {
  font-weight: 700; }

.location-address {
  padding: 20px 0 0 0; }

.lc-event__sidebar .lc-event__details {
  padding: 5px;
  border: 2px solid #00549f; }

.lc-event__sidebar .lc-event-info__cancelled {
  color: #e05554;
  text-transform: uppercase; }

/* Gmap */
.lc-event-location .lc-event__subtitle {
  margin: 0; }

.lc-event-location .lc-address__line {
  line-height: 1.2; }

/* Repeat Dates */
.lc-repeating-dates__toggle,
.lc-repeating-dates__link {
  color: #333;
  background-color: #d2d3d5;
  border: none;
  transition: background ease-in-out 500ms; }
  .lc-repeating-dates__toggle:hover, .lc-repeating-dates__toggle:focus,
  .lc-repeating-dates__link:hover,
  .lc-repeating-dates__link:focus {
    background-color: #778898;
    border: none; }

.lc-repeating-dates__toggle {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  padding: 5px;
  margin: 5px 0;
  line-height: 1; }
  .lc-repeating-dates__toggle:hover, .lc-repeating-dates__toggle:focus {
    outline: none; }

.lc-repeating-dates__toggle-icon {
  display: block;
  width: 15px;
  height: 15px;
  margin-left: 10px;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background-image: url("../assets/dist/icons/chevron-down.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 15px;
  transition: all ease-in-out 250ms;
  transform: rotate(0deg); }

.lc-repeating-dates__toggle.open .lc-repeating-dates__toggle-icon {
  transform: rotate(180deg); }

.lc-repeating-dates__wrapper {
  max-height: 0;
  overflow: hidden;
  transition: all ease-in-out 500ms; }

.lc-repeating-dates__list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0;
  margin: 0; }

.lc-repeating-dates__item {
  width: 49%;
  margin-bottom: 5px;
  list-style-type: none; }
  .lc-repeating-dates__item.lc-repeating-date-master > .lc-repeating-dates__link::before {
    color: currentColor;
    content: '\2605'; }

.lc-repeating-dates__link {
  display: block;
  text-align: center; }

/* Categories styling */
.lc-event__categories {
  line-height: 1.7; }
  .lc-event__categories a {
    border-bottom: none; }

/* Registraion Form */
.lc-event__info-item {
  line-height: 1.7; }

.lc-event__sidebar--second::after {
  display: table;
  clear: both;
  content: ''; }

@media (min-width: 48em) {
  .lc-event__sidebar--second {
    flex: initial;
    width: 100%; } }

@media (min-width: 64em) {
  .lc-event__sidebar--second {
    flex: 1;
    width: 200px; } }

.calendar__wrap--upcoming {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  width: 100%; }

.lc-event--upcoming {
  width: 100%;
  margin-bottom: 10px; }
  @media (min-width: 48em) {
    .lc-event--upcoming {
      width: 50%; }
      .lc-event--upcoming:nth-child(2n-1) {
        padding-right: 5px; }
      .lc-event--upcoming:nth-child(2n) {
        padding-left: 5px; } }
  @media (min-width: 64em) {
    .lc-event--upcoming {
      width: 33.333%;
      margin-bottom: 15px; }
      .lc-event--upcoming:nth-child(2n-1), .lc-event--upcoming:nth-child(2n) {
        padding-right: 0;
        padding-left: 0; }
      .lc-event--upcoming:nth-child(3n-2) {
        padding-right: 10px; }
      .lc-event--upcoming:nth-child(3n-1) {
        padding: 0 5px; }
      .lc-event--upcoming:nth-child(3n) {
        padding-left: 10px; } }
  .lc-event--upcoming .event-card {
    height: 100%;
    padding: 10px;
    background-color: #efefef;
    border: 2px solid #778898; }
  .lc-event--upcoming .lc-event__event-details--upcoming {
    display: flex; }
  .lc-event--upcoming .lc-date-icon__item--day {
    padding-bottom: 5px; }

.lc-event__event-details--lc_registrant_print > * {
  float: left; }

.lc-event__title,
.lc-event__title--details {
  margin: 0; }

.lc-event__info {
  padding-left: 10px; }
  .lc-event__info .lc-event__title,
  .lc-event__info .lc-event__title--details {
    margin: 0;
    font-size: 18px; }

.lc-event__month-details .lc-date-icon {
  padding-left: 5px; }

.lc-event__month-details .lc-date-icon__item--day {
  padding: 0;
  border-bottom: none; }

.lc-event__month-details .lc-date-icon__item--year {
  padding-bottom: 5px;
  font-size: 12px;
  border-top: none; }

.lc-event-info__item--categories {
  font-size: 14px; }

.block-lc-calendar-upcoming-block .lc-event--upcoming {
  width: 100%; }

.block-lc-calendar-upcoming-block .lc-event:nth-child(2n-1), .block-lc-calendar-upcoming-block .lc-event:nth-child(2n), .block-lc-calendar-upcoming-block .lc-event:nth-child(3n-2), .block-lc-calendar-upcoming-block .lc-event:nth-child(3n-1), .block-lc-calendar-upcoming-block .lc-event:nth-child(3n) {
  padding: 0; }

.block-lc-calendar-upcoming-block .event-card {
  padding: 0; }

.block-lc-calendar-upcoming-block .lc-event__event-details {
  padding: 10px 10px 10px 0; }

.scroll-info {
  padding: 1rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 1px solid;
  border-radius: 4px; }

.lc-event__registration-list .view-content {
  overflow-x: scroll;
  overflow-y: hidden; }

.lc-event__registration-list th,
.lc-event__registration-list td {
  white-space: nowrap; }

.lc-event__registration-list td .dropbutton-widget {
  position: relative; }
  .lc-event__registration-list td .dropbutton-widget button:hover, .lc-event__registration-list td .dropbutton-widget button:focus, .lc-event__registration-list td .dropbutton-widget button:active {
    background-color: transparent; }

.ie10 .lc-event__sidebar--first .lc-event-info,
.ie11 .lc-event__sidebar--first .lc-event-info {
  width: 100%; }

.ie10 .lc-event__sidebar--first .lc-event__branch-image a,
.ie11 .lc-event__sidebar--first .lc-event__branch-image a {
  width: 100%; }

.ie10 .lc-event__featured-image,
.ie11 .lc-event__featured-image {
  overflow: hidden; }
  .ie10 .lc-event__featured-image .open-popup-link,
  .ie11 .lc-event__featured-image .open-popup-link {
    width: 100%; }

.ie10 .calendar__wrap--header,
.ie11 .calendar__wrap--header {
  display: block; }

.lc-event-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin-right: -10px;
  margin-left: -10px; }
  .lc-event-wrapper .lc-event-sidebar,
  .lc-event-wrapper .lc-event-content {
    position: relative;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
    margin-bottom: 20px; }
    @media (min-width: 64em) {
      .lc-event-wrapper .lc-event-sidebar,
      .lc-event-wrapper .lc-event-content {
        margin-bottom: unset; } }
  @media (min-width: 64em) {
    .lc-event-wrapper .lc-event-sidebar {
      flex: 0 0 25%;
      max-width: 25%; } }
  @media (min-width: 64em) {
    .lc-event-wrapper .lc-event-content {
      flex: 0 0 50%;
      max-width: 50%; } }
  .lc-event-wrapper .lc-event-details {
    display: flex;
    flex-wrap: wrap;
    margin-right: -5px;
    margin-left: -5px; }
  .lc-event-wrapper .lc-date-icon,
  .lc-event-wrapper .lc-event-info {
    position: relative;
    width: 100%;
    padding-right: 5px;
    padding-left: 5px; }
  .lc-event-wrapper .lc-date-icon {
    flex: 0 0 3.5rem; }
    .lc-event-wrapper .lc-date-icon .lc-date-icon__item {
      width: auto; }
  .lc-event-wrapper .lc-event-info {
    flex: 2; }
    .lc-event-wrapper .lc-event-info .lc-event-subtitle {
      line-height: 1; }
  .lc-event-wrapper .lc-event-info-cancelled {
    color: #e05554;
    text-transform: uppercase; }
  .lc-event-wrapper .lc-event-room-setup-image img {
    border: 1px solid #d2d3d5;
    border-radius: 5px; }
  .lc-event-wrapper .lc-event-section {
    margin-bottom: 10px; }

@media (min-width: 64em) {
  .node--type-lc-closing .lc-event-content {
    flex: 0 0 75%;
    max-width: 75%; } }

.lc-closing-color {
  color: #e05554; }

.lc-reservation-options__links {
  display: flex;
  flex-wrap: wrap;
  margin-right: -10px;
  margin-left: -10px;
  padding: 0;
  margin-top: 0;
  margin-bottom: 0; }

.lc-reservation-btn {
  position: relative;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px;
  margin-bottom: 10px;
  list-style-type: none; }
  @media (min-width: 64em) {
    .lc-reservation-btn {
      flex: 0 0 33.33333%;
      max-width: 33.33333%; } }
  .lc-reservation-btn a {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    padding: 20px 40px;
    font-size: 16px;
    line-height: 1;
    text-align: center;
    text-transform: uppercase; }
    @media (min-width: 64em) {
      .lc-reservation-btn a {
        font-size: 28px; } }
    .lc-reservation-btn a svg {
      display: block;
      height: 115px;
      margin-right: auto;
      margin-bottom: 1rem;
      margin-left: auto; }
    .lc-reservation-btn a svg path {
      fill: currentColor; }
    .lc-reservation-btn a svg g {
      stroke: currentColor; }

.reservation-types {
  display: flex;
  flex-wrap: wrap;
  margin-right: -10px;
  margin-left: -10px; }
  .reservation-types .reservation-type {
    position: relative;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
    margin-bottom: 20px; }
    @media (min-width: 64em) {
      .reservation-types .reservation-type {
        flex: 0 0 33.33333%;
        max-width: 33.33333%; } }
    .reservation-types .reservation-type a {
      width: 100%; }

.lc-reservation-options__link--room a::after {
  background-image: url("../assets/dist/icons/building.svg"); }

.lc-reservation-options__link--time a::after {
  background-image: url("../assets/dist/icons/clock.svg"); }

.lc-reservation-options__link--date a::after {
  background-image: url("../assets/dist/icons/calendar.svg"); }

.lc-available-rooms {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start; }

.lc-available-rooms__group-label {
  width: 100%; }

.lc-available-rooms__group {
  width: 100%; }
  @media (min-width: 48em) {
    .lc-available-rooms__group {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      align-items: stretch;
      justify-content: flex-start; } }

.lc-available-rooms {
  display: flex;
  flex-wrap: wrap;
  margin-right: -10px;
  margin-left: -10px; }

.lc-available-rooms__row {
  position: relative;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px;
  margin-bottom: 20px; }
  @media (min-width: 48em) {
    .lc-available-rooms__row {
      flex: 0 0 33.33333%;
      max-width: 33.33333%; } }

.lc-available-rooms__content {
  height: 100%;
  padding: 20px;
  border: 1px solid #d2d3d5;
  border-radius: 5px; }
  .lc-available-rooms__content .lc-available-rooms__room {
    display: flex;
    flex-direction: column;
    height: 100%; }
    .lc-available-rooms__content .lc-available-rooms__room .buttons {
      margin-top: auto; }
  .lc-available-rooms__content .button {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
    margin-left: 0; }
    .lc-available-rooms__content .button:last-of-type {
      margin-bottom: 0; }

.lc-available-rooms__image {
  display: block;
  text-align: center;
  border: none; }
  .lc-available-rooms__image:hover, .lc-available-rooms__image:focus {
    border: none; }

.lc-available-rooms__group-label {
  margin-right: 10px;
  margin-left: 10px; }

.lc-available-rooms__room .buttons.button {
  width: 100%;
  padding: 5px 10px; }

.lc-available-rooms__date {
  margin-bottom: 10px; }

.lc-available-rooms--error-message-container {
  position: relative;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px; }

.lc-room-full .lc-reservation-openings-time-blocks {
  margin: 20px 0; }
  .lc-room-full .lc-reservation-openings-time-blocks:first-child {
    margin-top: 0; }

.lc-room-full .room-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -10px;
  margin-left: -10px; }

.lc-room-full .room-column {
  position: relative;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px; }
  @media (min-width: 64em) {
    .lc-room-full .room-column {
      flex: 0 0 50%;
      max-width: 50%; } }

.lc-room-full .lc-room-featured-image {
  position: relative;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px;
  margin-bottom: 2rem; }
  @media (min-width: 64em) {
    .lc-room-full .lc-room-featured-image {
      flex: 0 0 50%;
      max-width: 50%; } }

.lc-room-full .lc-room-setups-wrapper {
  position: relative;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px; }
  @media (min-width: 64em) {
    .lc-room-full .lc-room-setups-wrapper {
      flex: 0 0 50%;
      max-width: 50%; } }
  .lc-room-full .lc-room-setups-wrapper .lc-room-setups {
    display: flex;
    flex-wrap: wrap;
    margin-right: -10px;
    margin-left: -10px;
    padding: 0;
    margin-bottom: 0;
    list-style: none; }
    .lc-room-full .lc-room-setups-wrapper .lc-room-setups .room-setups-content {
      position: relative;
      width: 100%;
      padding-right: 10px;
      padding-left: 10px;
      flex: 0 0 50%;
      max-width: 50%;
      margin-bottom: 20px; }
      @media (min-width: 48em) {
        .lc-room-full .lc-room-setups-wrapper .lc-room-setups .room-setups-content {
          flex: 0 0 25%;
          max-width: 25%; } }
      .lc-room-full .lc-room-setups-wrapper .lc-room-setups .room-setups-content:hover .room-setups__title, .lc-room-full .lc-room-setups-wrapper .lc-room-setups .room-setups-content:focus .room-setups__title {
        opacity: 1; }
      .lc-room-full .lc-room-setups-wrapper .lc-room-setups .room-setups-content .room-setups__image {
        position: relative;
        display: flex;
        align-items: center;
        width: 100%;
        height: 100%;
        padding: .5rem;
        overflow: hidden;
        border: 1px solid #d2d3d5;
        border-radius: 5px; }
        @media (min-width: 48em) {
          .lc-room-full .lc-room-setups-wrapper .lc-room-setups .room-setups-content .room-setups__image {
            height: 121px; } }
      .lc-room-full .lc-room-setups-wrapper .lc-room-setups .room-setups-content .room-setups__title {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 999;
        width: 100%;
        height: 100%;
        padding: .5rem;
        color: #fff;
        background-color: rgba(51, 51, 51, 0.8);
        opacity: 0;
        transition: opacity .3s; }
    .lc-room-full .lc-room-setups-wrapper .lc-room-setups.lc-hidden-setups:not(.show) {
      display: none; }
  .lc-room-full .lc-room-setups-wrapper .lc-room-setup-toggle {
    float: right;
    margin-bottom: 2rem; }

.lc-room-full .lc-room-details .room-field {
  margin-bottom: 10px; }

.lc-room-full .lc-reservation-week-display {
  display: flex; }

.lc-room-full .lc-reservation-week-display {
  margin: 0 20px;
  overflow: scroll; }
  @media (min-width: 64em) {
    .lc-room-full .lc-reservation-week-display {
      margin: 0;
      overflow: hidden; } }

.lc-room-full .lc-reservation-openings {
  flex: 1 1 0;
  max-width: 100%; }
  .lc-room-full .lc-reservation-openings h3 {
    padding: 10px;
    margin: 0;
    font-size: 18px;
    text-align: center;
    white-space: nowrap;
    border: 1px solid #d2d3d5;
    border-right: 0; }
  .lc-room-full .lc-reservation-openings.today h3 {
    background-color: #efefef; }
  .lc-room-full .lc-reservation-openings:first-of-type h3 {
    border-top-left-radius: 10px; }
  .lc-room-full .lc-reservation-openings:first-of-type .lc-reservation-openings-hours {
    border-bottom-left-radius: 10px; }
  .lc-room-full .lc-reservation-openings:first-of-type .lc-reservation-openings-hour:last-of-type .lc-reservation-openings-quarter:last-of-type {
    border-bottom-left-radius: 10px; }
  .lc-room-full .lc-reservation-openings .lc-reservation-openings-actions {
    line-height: 0; }
  .lc-room-full .lc-reservation-openings:last-of-type h3 {
    border-right: 1px solid #d2d3d5;
    border-top-right-radius: 10px; }
  .lc-room-full .lc-reservation-openings:last-of-type .lc-reservation-openings-hours {
    border-right: 1px solid #d2d3d5; }
  .lc-room-full .lc-reservation-openings:last-of-type .lc-reservation-openings-hours {
    border-bottom-right-radius: 10px; }
  .lc-room-full .lc-reservation-openings:last-of-type .lc-reservation-openings-hour:last-of-type .lc-reservation-openings-quarter:last-of-type {
    border-bottom-right-radius: 10px; }

.lc-room-full .lc-reservation-openings-hours {
  display: block;
  padding: 0;
  margin: 0;
  border-left: 1px solid #d2d3d5; }

.lc-room-full .lc-reservation-openings-hour {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin: 0; }

.lc-room-full .lc-reservation-openings-time--hour {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 33.333%;
  margin-right: 0;
  margin-left: 0;
  clear: both; }

.lc-room-full .lc-reservation-openings-quarters {
  width: 100%;
  padding: 0;
  margin: 0;
  font-size: 14px;
  border-left: none; }

.lc-room-full .lc-reservation-openings-quarter {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  padding: 5px;
  margin: 0;
  color: #778898;
  border-bottom: 1px solid #d2d3d5; }

.lc-room-full .lc-reservation-openings-quarter--blocked {
  background-color: #efefef; }

.lc-form--reserve-room-openings .form-submit {
  margin: 0; }

.lc-form--reserve-room-openings .lc-form__filters {
  float: none;
  width: 100%;
  padding: 0;
  background-color: transparent; }
  .lc-form--reserve-room-openings .lc-form__filters label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    border: 0; }
  .lc-form--reserve-room-openings .lc-form__filters .form-group {
    margin: 0; }
  .lc-form--reserve-room-openings .lc-form__filters .lc-reservation-date-container > .form-wrapper {
    display: flex;
    flex-wrap: wrap; }
    .lc-form--reserve-room-openings .lc-form__filters .lc-reservation-date-container > .form-wrapper .form-item-selected-date {
      margin-right: 10px; }
    .lc-form--reserve-room-openings .lc-form__filters .lc-reservation-date-container > .form-wrapper .form-date {
      height: 100%; }
    .lc-form--reserve-room-openings .lc-form__filters .lc-reservation-date-container > .form-wrapper .form-date::-webkit-inner-spin-button {
      margin: auto; }
    .lc-form--reserve-room-openings .lc-form__filters .lc-reservation-date-container > .form-wrapper .form-submit {
      margin-top: 0; }

.lc-form--reserve-room-openings .lc-form__filters-container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  border: 0;
  border-radius: 0; }

.lc-form--reserve-room-openings .lc-form__next,
.lc-form--reserve-room-openings .lc-form__last {
  display: block;
  width: 50px;
  height: 50px;
  margin: 20px 0;
  font-size: 0;
  background-image: url(../assets/dist/icons/chevron-left-black.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 65%; }

.lc-form--reserve-room-openings .lc-form__next {
  background-image: url(../assets/dist/icons/chevron-right-black.svg); }

.lc-reservation-openings-time {
  flex-grow: 1; }

.lc-reservation-openings-button {
  position: relative;
  width: 44px;
  height: 22px;
  padding: 0;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap; }
  .lc-reservation-openings-button::before, .lc-reservation-openings-button::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 4px;
    height: 12px;
    margin: auto;
    content: '';
    background-color: currentColor; }
  .lc-reservation-openings-button::after {
    width: 12px;
    height: 4px; }

.lc-reservation-openings-hide-text {
  width: 45px;
  height: 25px;
  padding: 0;
  margin: 0;
  overflow: hidden;
  text-indent: 9999px;
  white-space: nowrap; }

.ie10 .lc-room--full .room-setups__image,
.ie11 .lc-room--full .room-setups__image {
  width: 100%; }
  .ie10 .lc-room--full .room-setups__image img,
  .ie11 .lc-room--full .room-setups__image img {
    margin: 0 auto; }

.ie10 .lc-room--full .room-setups__title,
.ie11 .lc-room--full .room-setups__title {
  width: 100%; }

/* Toggle Filters */
.lc-form__header {
  display: block;
  width: 100%; }
  .lc-form__header::after {
    display: table;
    clear: both;
    content: ''; }

.button.lc-form__toggle {
  float: none;
  width: 100%;
  padding: 10px;
  margin-right: 0;
  margin-bottom: 10px;
  margin-left: 0;
  clear: both;
  font-size: 18px;
  color: #fff;
  text-align: left;
  background-color: #00549f;
  background-image: none;
  border: 0;
  border-radius: 0; }
  @media (min-width: 64em) {
    .button.lc-form__toggle {
      float: left;
      width: 25%;
      margin-bottom: 0; } }
  .button.lc-form__toggle.active {
    margin-bottom: 0; }
  .button.lc-form__toggle::before {
    display: block;
    float: left;
    width: 40px;
    height: 20px;
    content: '';
    background-image: url("../assets/dist/icons/list.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain; }
  .button.lc-form__toggle:hover, .button.lc-form__toggle:focus {
    color: #fff;
    background-color: #31809f;
    background-image: none; }

.lc-form__filters {
  position: relative;
  display: block;
  float: none;
  width: 100%;
  padding: 10px 20px;
  margin: 0;
  margin-right: 0;
  margin-bottom: 20px;
  overflow: hidden;
  clear: left;
  color: #fff;
  background-color: #00549f; }
  .lc-form__filters select {
    color: #000; }
  @media (min-width: 64em) {
    .lc-form__filters {
      float: left;
      width: 25%; } }
  .lc-form__filters.collapsed {
    display: none; }

.form-type-date {
  color: #778898; }

.lc-form__filters-container {
  transition: all ease-in-out .25s; }
  .lc-form__filters-container .form-item,
  .lc-form__filters-container .form-actions {
    margin-top: 0;
    margin-bottom: 0; }
  .lc-form__filters-container .form-checkboxes .form-item,
  .lc-form__filters-container .form-radios .form-item {
    margin-top: 0;
    margin-bottom: 0; }
  .lc-form__filters-container details {
    border: 0; }
    .lc-form__filters-container details > div {
      padding: 5px 10px;
      color: #333;
      background-color: #fff; }
    .lc-form__filters-container details > summary {
      width: 100%;
      padding: 10px 0 5px 0;
      font-weight: 700;
      color: #fff;
      list-style: none;
      border-bottom: 2px solid #fff; }
      .lc-form__filters-container details > summary::-webkit-details-marker {
        display: none; }
      .lc-form__filters-container details > summary::after {
        display: block;
        float: right;
        width: 18px;
        height: 18px;
        content: '';
        background-image: url("../assets/dist/icons/chevron-circle-down.svg");
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain; }
  .lc-form__filters-container details[open] > summary::after {
    transform: rotate(180deg); }
  .lc-form__filters-container .fieldset-wrapper {
    padding: 5px 10px;
    overflow: hidden;
    color: #333;
    background-color: #fff; }
    .lc-form__filters-container .fieldset-wrapper.collapsed {
      max-height: 0;
      padding: 0 10px;
      overflow: hidden; }
  .lc-form__filters-container .lc-checkbox-wrapper {
    margin-bottom: 5px; }
  .lc-form__filters-container .form-group:not(.form-check) > label {
    font-weight: 700; }

.color-coding .lc-checkbox-wrapper .form-item {
  padding: 5px;
  background-color: #efefef;
  border-left: 5px solid #efefef; }

@media (min-width: 48em) {
  .lc-room__room-openings .lc-form__filters-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start; } }

.lc-room__room-openings .form-item {
  margin-right: 10px; }

.lc-room__room-openings .form-actions {
  padding-top: 10px; }
  @media (min-width: 48em) {
    .lc-room__room-openings .form-actions {
      padding-top: 23px; } }

.lc-room__room-openings .form-submit {
  margin-top: 0; }

.lc-room__room-openings .form-date {
  border: 1px solid #778898; }

.lc-room__room-openings .lc-form__filters {
  float: none;
  width: 100%;
  padding: 10px 0;
  background-color: transparent; }

.color-coding .lc-checkbox-wrapper--adult .form-item,
.color-coding .lc-checkbox-wrapper--adults .form-item {
  border-left-color: #0098db; }

.color-coding .lc-checkbox-wrapper--everyone .form-item {
  border-left-color: #007b69; }

.color-coding .lc-checkbox-wrapper--family .form-item,
.color-coding .lc-checkbox-wrapper--children .form-item {
  border-left-color: #903986; }

.color-coding .lc-checkbox-wrapper--infant .form-item,
.color-coding .lc-checkbox-wrapper--babies .form-item {
  border-left-color: #f3ec7a; }

.color-coding .lc-checkbox-wrapper--kids .form-item {
  border-left-color: #fed100; }

.color-coding .lc-checkbox-wrapper--preschool .form-item {
  border-left-color: #d7a900; }

.color-coding .lc-checkbox-wrapper--school-age .form-item {
  border-left-color: #f68d74; }

.color-coding .lc-checkbox-wrapper--teen .form-item,
.color-coding .lc-checkbox-wrapper--teens .form-item {
  border-left-color: #e05554; }

.color-coding .lc-checkbox-wrapper--toddler .form-item {
  border-left-color: #c23736; }

.color-coding .lc-checkbox-wrapper--toddler-one .form-item {
  border-left-color: #35bcac; }

.lc-form .hide-filter {
  display: none !important; }

.mfp-wrap .mfp-inline-holder .mfp-content {
  width: 100%; }
  @media (min-width: 48em) {
    .mfp-wrap .mfp-inline-holder .mfp-content {
      width: auto; } }

.lc-event-actions__list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  flex-grow: 1;
  align-items: stretch;
  padding: 0;
  margin: 5px 0; }

.lc-event-actions__item {
  flex: none;
  width: auto;
  min-width: 0;
  margin-right: 10px;
  margin-bottom: 10px;
  font-size: 12px;
  list-style-type: none; }
  .lc-event-actions__item a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 5px 10px;
    margin: 0;
    color: #fff;
    background-color: #00549f; }
    .lc-event-actions__item a:hover, .lc-event-actions__item a:focus {
      color: #fff; }

.lc-event-actions__container {
  background-color: #fff; }
  .lc-event-actions__container .header {
    padding: 20px 10px;
    color: #fff;
    background-color: #00549f; }
    .lc-event-actions__container .header h2 {
      margin: 0; }
  .lc-event-actions__container .body {
    padding: 10px 20px; }
  .lc-event-actions__container .links {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center; }
  .lc-event-actions__container ul {
    padding: 0;
    margin: 0; }
  .lc-event-actions__container li {
    display: block;
    float: left;
    padding: 0;
    margin: 0;
    list-style-type: none; }
    .lc-event-actions__container li.messages__item {
      float: none;
      clear: both; }
  .lc-event-actions__container a {
    display: inline-block;
    padding: 5px 10px;
    margin: 0 10px 10px 0;
    color: #fff;
    background-color: #00549f;
    border-radius: 10px; }
    @media (min-width: 64em) {
      .lc-event-actions__container a {
        margin-top: 10px;
        margin-bottom: 0; } }
    .lc-event-actions__container a:hover, .lc-event-actions__container a:focus {
      color: #fff; }

.white-popup .mfp-close {
  width: 64px;
  height: 64px;
  color: #fff;
  background-color: #0098db;
  opacity: 1;
  transition: background ease-in-out .25s; }
  .white-popup .mfp-close:hover, .white-popup .mfp-close:focus {
    background-color: #00549f; }
  .white-popup .mfp-close:active {
    top: 0; }

.white-popup .lc-event-actions__icon {
  position: relative;
  top: 3px;
  width: 17px;
  height: 17px;
  background-size: 17px; }

.lc-event-actions__social-icon a {
  width: 60px;
  height: 60px;
  padding: 0;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 40px; }

.lc-event-actions__icon {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 0;
  background-position: center;
  background-size: 16px; }
  @media (min-width: 27.5em) {
    .lc-event-actions__icon {
      margin-right: 10px; } }

.lc-event-actions__text {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px); }
  @media (min-width: 27.5em) {
    .lc-event-actions__text {
      position: static;
      width: auto;
      height: auto;
      overflow: auto;
      clip: auto; } }

.lc-event-actions__icon--calendar {
  background-image: url("../assets/dist/icons/calendar.svg"); }

.lc-event-actions__icon--print {
  background-image: url("../assets/dist/icons/print.svg"); }

.lc-event-actions__icon--share {
  background-image: url("../assets/dist/icons/mail-forward.svg"); }

.lc-event-actions__icon--google,
.lc-event-actions__icon--ical {
  background-image: url("../assets/dist/icons/google.svg"); }

.lc-event-actions__icon--reminder {
  background-image: url("../assets/dist/icons/clock-o.svg"); }

.lc-event-actions__icon--pencil {
  background-image: url("../assets/dist/icons/pencil-square-o.svg"); }

.lc-event-actions__social-icon--facebook a {
  background-image: url("../assets/dist/icons/facebook.svg"); }

.lc-event-actions__social-icon--twitter a {
  background-image: url("../assets/dist/icons/twitter.svg"); }

.lc-event-actions__social-icon--linkedin a {
  background-image: url("../assets/dist/icons/linkedin.svg"); }

.lc-event-actions__social-icon--email a {
  background-image: url("../assets/dist/icons/envelope.svg"); }

#attendance-fieldset-wrapper .lc-form__flex-wrapper {
  align-items: stretch;
  padding-bottom: 5px;
  margin-bottom: 10px; }

#attendance-fieldset-wrapper .form-item,
#attendance-fieldset-wrapper .form-actions {
  margin-top: 0; }

#attendance-fieldset-wrapper .form-select,
#attendance-fieldset-wrapper .form-text,
#attendance-fieldset-wrapper .lc-form__remove {
  min-height: 30px;
  margin: 2px 0;
  border-color: #d2d3d5;
  border-radius: 5px; }

#attendance-fieldset-wrapper .form-select,
#attendance-fieldset-wrapper .lc-form__remove {
  background-color: #efefef;
  transition: background ease-in-out 250ms; }
  #attendance-fieldset-wrapper .form-select:hover, #attendance-fieldset-wrapper .form-select:focus,
  #attendance-fieldset-wrapper .lc-form__remove:hover,
  #attendance-fieldset-wrapper .lc-form__remove:focus {
    background-color: #efefef; }

#attendance-fieldset-wrapper .form-select {
  padding: 0 5px;
  padding-right: 1.2rem;
  background-image: url("../assets/dist/icons/angle-down-black.svg");
  background-repeat: no-repeat;
  background-position: center right;
  background-size: 1.3rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }

#attendance-fieldset-wrapper .lc-form__remove {
  margin-left: 10px;
  background-image: none; }

.block-lc-branch-select {
  width: 100%; }
  .block-lc-branch-select h2 {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px); }
    @media (min-width: 64em) {
      .block-lc-branch-select h2 {
        position: relative;
        width: 100%;
        height: 100%;
        overflow: visible; } }

.lc-branch-select__wrapper {
  width: 100%;
  max-height: 0;
  overflow: hidden;
  transition: all ease-in-out 250ms; }
  @media (min-width: 64em) {
    .lc-branch-select__wrapper {
      max-height: 100% !important;
      overflow: visible; } }

.lc-branch-select__wrapper--open {
  max-height: 100% !important;
  overflow: visible; }

.lc-branch-select__select-input {
  width: 100%;
  padding-right: 20px;
  margin-bottom: 10px;
  color: #fff;
  background-color: #0098db;
  background-image: url("../assets/dist/icons/angle-down.svg"), none;
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 25px;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }

.lc-branch-select-disabled {
  background-image: none; }
  .lc-branch-select-disabled::before, .lc-branch-select-disabled::after {
    content: none !important; }

.lc-branch-select__branch.active-branch {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px; }

.lc-branch-select__address,
.lc-branch-select__hours {
  position: relative;
  width: 100%;
  padding-right: 5px;
  padding-left: 5px;
  padding-top: 5px;
  padding-bottom: 5px; }
  @media (min-width: 48em) {
    .lc-branch-select__address,
    .lc-branch-select__hours {
      flex: 0 0 50%;
      max-width: 50%; } }

.lc-branch-select__hours {
  border: 1px solid #efefef; }

.js-hours-toggle {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 100;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  order: 0;
  padding: 5px;
  font-size: 10px;
  color: #fff;
  text-transform: uppercase;
  background-color: #00549f;
  border-radius: 4px; }
  .js-hours-toggle:hover, .js-hours-toggle:focus, .js-hours-toggle:active {
    background-color: #0098db;
    outline: none; }
  @media (min-width: 64em) {
    .js-hours-toggle {
      display: none; } }

.hours-toggle__icon {
  padding: 0;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  position: relative;
  top: 0;
  z-index: 100;
  display: block;
  width: 24px;
  height: 24px;
  margin: 0 auto;
  margin-bottom: 2.5px;
  font-size: 16px;
  color: #fff;
  background-color: #00549f;
  border-radius: 35px;
  box-shadow: inset 0 0 0 10px #fff; }
  .hours-toggle__icon:hover, .hours-toggle__icon:focus {
    outline: none; }
  .hours-toggle__icon::before, .hours-toggle__icon::after {
    position: absolute;
    top: -7px;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    width: 2px;
    height: 7px;
    margin: auto;
    content: ' ';
    background-color: #00549f;
    border-radius: 4px;
    transition: all ease-in-out .1s;
    transition: transform cubic-bezier(0.42, 0, 0.19, 1.35) 0.75s;
    transform: rotate(0deg);
    transform-origin: bottom; }
  .hours-toggle__icon::before {
    top: -10px;
    height: 10px; }
  .hours-toggle__icon::after {
    transform: rotate(45deg); }
  .hours-toggle__icon.open::before {
    transform: rotate(540deg); }
  .hours-toggle__icon.open::after {
    transform: rotate(135deg); }

.lc-branch-select__collapse-button:hover, .lc-branch-select__collapse-button:focus {
  outline: none; }

.lc-branch-select__collapsed-wrapper {
  display: none; }
  .lc-branch-select__collapsed-wrapper.open {
    display: block; }

.layout__section--announcements {
  width: 100%; }
  .layout__section--announcements .views-field-title {
    font-size: 22px; }

.braintree-method .braintree-method__check {
  padding: 0 10px; }
  .braintree-method .braintree-method__check svg {
    height: inherit; }

#lc-payment-button {
  margin-bottom: 20px; }

.lc-fees,
.lc-fees__fee {
  padding: 0;
  margin: 0;
  list-style-type: none; }

.lc-fees__fee {
  display: flex;
  flex-direction: row;
  align-items: bottom;
  justify-content: space-between;
  padding: 5px 0;
  font-size: 12px;
  border-top: 1px solid #d2d3d5; }
  .lc-fees__fee:first-child {
    border-top: none; }

.lc-fees__fee--total {
  font-size: 18px;
  border-bottom: 2px solid #000; }

.lc-registration-list .item-list li {
  padding-bottom: 10px;
  margin: 0;
  margin-bottom: 10px;
  list-style-type: none;
  border-bottom: 2px solid #778898; }
  .lc-registration-list .item-list li:last-child {
    border-bottom: none; }

.lc-registration-list .registration-wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start; }

.lc-registration-list .registration__items {
  width: 100%;
  margin-bottom: 10px; }
  @media (min-width: 48em) {
    .lc-registration-list .registration__items {
      width: 33.333%; } }
  @media (min-width: 64em) {
    .lc-registration-list .registration__items {
      width: 25%; } }

@media (min-width: 48em) {
  .lc-registration-list .registration__items--contact-info {
    padding-right: 20px; } }

@media (min-width: 48em) {
  .lc-registration-list .registration__items--registrant-info {
    padding: 0 10px; } }

@media (min-width: 48em) {
  .lc-registration-list .registration__items--event-info {
    padding-left: 20px; } }

.lc-registration-list .registration__items--special {
  width: 100%; }

.lc-registration-list .registration-item--name {
  width: 100%;
  font-size: 22px;
  font-weight: 700; }

.lc-event__registration-list tbody tr {
  border-bottom: 1px solid #999; }
  .lc-event__registration-list tbody tr .dropbutton-multiple {
    padding-right: 0; }

.lc-event__registration-list tbody tr:nth-child(even) {
  background-color: #f1f1f1; }

.form-item-reg-save-state {
  padding: 10px;
  border: 1px solid #d2d3d5;
  border-radius: 5px; }

.lc-registrant-heading {
  margin-top: 20px;
  margin-bottom: 20px; }

.lc-registrant-subheading {
  margin-bottom: 20px; }

.lc-registration-field {
  margin-bottom: 10px; }

.field--name-field-lc-registration-reference {
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #d2d3d5; }

.lc-closing-location__address:not(:last-child) {
  padding-bottom: 20px; }

@media print {
  * {
    color: #000 !important;
    background: transparent !important; }
  /**
 * Calendar month display.
 *
 * All padding and font-sizes in the month display
 * should uses em units (not rem or px), as defined
 * in the calendar component's local variables partial.
 * The reasoning for that is so that font-sizes can be
 * defined relative to each other, and then the overall
 * font/padding sizes of the calendar can be adjusted
 * proportionally while only modifying the root font
 * size on the .calendar--month container.
 */
  .calendar--month {
    font-size: 12px;
    background-color: #fff; }
    .calendar--month .mobile-hide {
      position: relative !important;
      width: auto;
      height: auto;
      overflow: visible;
      clip: auto; }
    .calendar--month .event-card {
      position: relative; }
    .calendar--month .lc-event__registration-icon,
    .calendar--month .lc-event__registration-payment-icon {
      margin-right: 0; }
  .calendar__week .event-card__title,
  .calendar__week .event-card__details,
  .calendar__week .event-card__room {
    position: relative !important;
    width: auto;
    width: 100%;
    height: auto;
    overflow: visible;
    clip: auto; }
  .calendar--month .node--type-lc-closing,
  .calendar__week .node--type-lc-closing {
    border: 3px solid #e05554; }
  .calendar--month .node--type-lc-reservation,
  .calendar__week .node--type-lc-reservation {
    border: 3px solid #007b69; }
  .calendar--month .all-day,
  .calendar__week .all-day {
    border: 3px solid #0098db; }
  .calendar--month .private-event,
  .calendar__week .private-event {
    border: 3px solid #31809f; }
  .calendar--month .has-conflict,
  .calendar__week .has-conflict {
    border: 3px solid #903986; }
  a.calendar__day--current {
    color: #fff;
    background-color: #778898;
    transition: background ease-in-out 250ms; }
  /**
 * Header and pager
 *
 * The header and pager use flexbox to
 * layout and vertically center the header
 * items.
 */
  .calendar__month-pager {
    display: flex;
    flex: 1;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    width: auto;
    max-width: 600px;
    padding: 10px 0;
    margin: 0 auto;
    text-align: center; }
  .calendar__wrap--header {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-end;
    justify-content: flex-end;
    width: 100%; }
  .calendar__wrap--header,
  .calendar__wrap--title {
    font-size: 14px; }
    .calendar__wrap--header .calendar__title h2,
    .calendar__wrap--title .calendar__title h2 {
      margin: 0;
      font-size: 16px; }
  .calendar__wrap--title {
    display: block; }
  .calendar__pager {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    line-height: 1; }
    .calendar__pager::before {
      padding: 0;
      content: ''; }
  .calendar__title {
    order: 1;
    margin: 0;
    text-transform: uppercase; }
  .button.calendar__pager--left,
  .button.calendar__pager--right {
    display: block;
    width: 30px;
    height: 30px;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background-color: #00549f;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px;
    border-radius: 5px;
    transition: background ease-in-out .25s; }
  .button.calendar__pager--left {
    order: 0;
    background-image: url("../assets/dist/images/pager-arrow-prev.svg"); }
  .button.calendar__pager--right {
    order: 2;
    background-image: url("../assets/dist/images/pager-arrow-next.svg"); }
  /**
 * Grid styling
 *
 * The grid styling for the single-day event
 * cells uses flexbox containers for the row
 * and 1/7 of the container for the width on
 * each item. The first item in the row is
 * always the multi-day event cell, which is 100%
 * wide, and uses it's own grid to control
 * layout for multi-day events.
 */
  .calendar__wrap--grid {
    position: relative;
    border: 2px solid #d1d1d1; }
  .calendar__row--header,
  .calendar__row--content,
  .calendar__numbers {
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start; }
  .calendar__row--footer {
    display: block; }
  .calendar__day,
  .calendar__day--number {
    position: relative;
    width: 14.28571%;
    padding: 5px; }
  .calendar__day--multi {
    width: 100%; }
    .calendar__day--multi .event-card {
      border: 2px solid #000; }
  .calendar__day {
    min-height: 25px;
    background-color: #fff; }
  .calenar__day--number {
    min-height: 0; }
  .calendar__day--header {
    min-height: 0;
    text-align: center; }
  .calendar__day--blank {
    display: block; }
  .calendar__row--content .calendar__day--blank {
    min-height: 5rem; }
  .calendar__day--outside {
    background-color: #efefef; }
  /**
 * Calendar borders
 *
 * External borders are wrapped around the
 * .calendar__week element, while internal borders
 * are absolutely positioned empty divs.
 */
  .calendar__week {
    position: relative;
    padding-top: 25px;
    border-top: 2px solid #d1d1d1; }
  .calendar__week--empty {
    display: block; }
  .calendar__bar {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    display: block;
    width: 1px;
    height: 100%;
    color: #d1d1d1;
    box-shadow: inset 0 0 0 1px, -1px 0 0 0;
    opacity: .25; }
  .calendar__bar--1 {
    left: 14.28571%; }
  .calendar__bar--2 {
    left: 28.57143%; }
  .calendar__bar--3 {
    left: 42.85714%; }
  .calendar__bar--4 {
    left: 57.14286%; }
  .calendar__bar--5 {
    left: 71.42857%; }
  .calendar__bar--6 {
    left: 85.71429%; }
  /**
 * Link overlays
 *
 * Each day in the calendar has an associated list of days
 * that is stored below the calendar that contains more
 * information. To access this information, there are link
 * overlays positioned absolutely above the day cells.
 */
  .calendar__numbers {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 15;
    width: 100%;
    height: 20px;
    font-size: 11px;
    line-height: 1; }
  .calendar__number-day--multi {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px); }
  /**
 * Multi-day grids
 *
 * Unlike the regular grid cells for the calendar, which
 * use flexbox, the multi-day grids use Singularity GS's
 * float grid-spans so that they can start at arbitrary
 * points within the grid. Clearing has to be applied
 * manually via a clear class, applied when the template
 * is first generated.
 */
  .calendar__day--multi {
    width: 100%;
    background-color: #f9f9f9; }
    .calendar__day--multi::after {
      display: table;
      clear: both;
      content: ''; }
  .calendar__day-span--1-1 {
    float: left;
    width: 14.28571%;
    margin-right: -100%;
    margin-left: 0;
    clear: none; }
  .calendar__day-span--1-7 {
    float: right;
    width: 14.28571%;
    margin-right: 0;
    margin-left: 0;
    clear: none; }
  .calendar__day-span--2-1 {
    float: left;
    width: 28.57143%;
    margin-right: -100%;
    margin-left: 0;
    clear: none; }
  .calendar__day-span--2-2 {
    float: left;
    width: 28.57143%;
    margin-right: -100%;
    margin-left: 14.28571%;
    clear: none; }
  .calendar__day-span--2-3 {
    float: left;
    width: 28.57143%;
    margin-right: -100%;
    margin-left: 28.57143%;
    clear: none; }
  .calendar__day-span--2-4 {
    float: left;
    width: 28.57143%;
    margin-right: -100%;
    margin-left: 42.85714%;
    clear: none; }
  .calendar__day-span--2-5 {
    float: left;
    width: 28.57143%;
    margin-right: -100%;
    margin-left: 57.14286%;
    clear: none; }
  .calendar__day-span--2-6 {
    float: right;
    width: 28.57143%;
    margin-right: 0;
    margin-left: 0;
    clear: none; }
  .calendar__day-span--3-1 {
    float: left;
    width: 42.85714%;
    margin-right: -100%;
    margin-left: 0;
    clear: none; }
  .calendar__day-span--3-2 {
    float: left;
    width: 42.85714%;
    margin-right: -100%;
    margin-left: 14.28571%;
    clear: none; }
  .calendar__day-span--3-3 {
    float: left;
    width: 42.85714%;
    margin-right: -100%;
    margin-left: 28.57143%;
    clear: none; }
  .calendar__day-span--3-4 {
    float: left;
    width: 42.85714%;
    margin-right: -100%;
    margin-left: 42.85714%;
    clear: none; }
  .calendar__day-span--3-5 {
    float: right;
    width: 42.85714%;
    margin-right: 0;
    margin-left: 0;
    clear: none; }
  .calendar__day-span--4-1 {
    float: left;
    width: 57.14286%;
    margin-right: -100%;
    margin-left: 0;
    clear: none; }
  .calendar__day-span--4-2 {
    float: left;
    width: 57.14286%;
    margin-right: -100%;
    margin-left: 14.28571%;
    clear: none; }
  .calendar__day-span--4-3 {
    float: left;
    width: 57.14286%;
    margin-right: -100%;
    margin-left: 28.57143%;
    clear: none; }
  .calendar__day-span--4-4 {
    float: right;
    width: 57.14286%;
    margin-right: 0;
    margin-left: 0;
    clear: none; }
  .calendar__day-span--5-1 {
    float: left;
    width: 71.42857%;
    margin-right: -100%;
    margin-left: 0;
    clear: none; }
  .calendar__day-span--5-2 {
    float: left;
    width: 71.42857%;
    margin-right: -100%;
    margin-left: 14.28571%;
    clear: none; }
  .calendar__day-span--5-3 {
    float: right;
    width: 71.42857%;
    margin-right: 0;
    margin-left: 0;
    clear: none; }
  .calendar__day-span--6-1 {
    float: left;
    width: 85.71429%;
    margin-right: -100%;
    margin-left: 0;
    clear: none; }
  .calendar__day-span--6-2 {
    float: right;
    width: 85.71429%;
    margin-right: 0;
    margin-left: 0;
    clear: none; }
  .calendar__day-span--7-1 {
    float: right;
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    clear: none; }
  .calendar__day-span {
    display: block; }
  .calendar__day-span--clear {
    clear: both; }
  /**
 * Calendar List Styling
 *
 * In addition to the 30-day grid, there's a list view
 * for easier usage on mobile that appears below the
 * normal 30-day calendar. It's brought up a fixed
 * position whenever the user touches it's associated
 * day on the calendar grid.
 */
  .calendar__day-header {
    display: none; }
  .calendar__mobile-list {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    max-width: 100%;
    padding: 15px;
    overflow-y: auto;
    background-color: rgba(255, 255, 255, 0.95);
    transition: all 250ms ease-in-out;
    transform: scale(0); }
    .calendar__mobile-list.list {
      z-index: 50;
      transform: scale(1); }
    .calendar__mobile-list .event-card--sparse .time--end,
    .calendar__mobile-list .event-card--sparse .time--separator {
      position: relative !important;
      width: auto;
      height: auto;
      overflow: visible;
      clip: auto; }
    .calendar__mobile-list .event-card--sparse .time--start .event-card__day--inline,
    .calendar__mobile-list .event-card--sparse .time--start .event-card__separator {
      position: relative !important;
      width: auto;
      height: auto;
      overflow: visible;
      clip: auto; }
  .calendar__list,
  .calendar__list-item,
  .calendar__list--day,
  .calendar__list-item--day {
    padding: 0;
    margin: 0;
    list-style-type: none; }
  .calendar__list-item {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 15px 0;
    border-bottom: 2px solid #d1d1d1; }
  .calendar__list-title {
    padding-right: 8px;
    margin: 0;
    font-size: 14px;
    font-weight: 700;
    text-align: center; }
  .calendar__list--day {
    flex-grow: 1; }
  .kids {
    color: #fff;
    background-color: #ffbd0a;
    border-color: #e19f00; }
    .kids a:hover {
      color: #4aaca2; }
    .kids h2,
    .kids h3,
    .kids h4 {
      color: #fff; }
  .teens {
    color: #fff;
    background-color: #3d4246;
    border-color: #1f2428; }
    .teens h2,
    .teens h3,
    .teens h4 {
      color: #fff; }
  .adult {
    color: #fff;
    background-color: #4aaca2;
    border-color: #2c8e84; }
    .adult h2,
    .adult h3,
    .adult h4 {
      color: #fff; }
    .adult a {
      color: #57b7df; }
      .adult a:focus, .adult a:hover, .adult a:active {
        color: #ffbd0a;
        text-decoration: none; }
  .calendar-picker {
    position: relative;
    display: block; }
  .calendar-picker-title {
    position: relative;
    z-index: 20;
    display: block; }
  .calendar-picker-input {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    display: block;
    height: auto;
    opacity: 0; }
    .calendar-picker.active .calendar-picker-input {
      opacity: 1;
      transition: transform ease-in-out .25s, opacity ease-in-out .25s;
      transform: translate3d(0, 100%, 0); }
  .calendar__menu-tasks {
    display: none; }
  .lc-event__event-details h3 {
    font-size: 11px !important; }
  .lc-event__link {
    text-transform: none !important; }
  .lc-event__date {
    font-size: 9px; }
  .lc-event.desktop-hide {
    display: none; }
  .lc-event__key {
    font-size: 9px; }
  .announcement {
    display: none; }
  .lc-event-actions,
  .lc-event__month-details,
  .lc-event__registration-list,
  .lc-repeating-dates__toggle-icon,
  .lc-repeating-dates,
  .lc-event-location-map,
  .lc-event-branch-image,
  .scroll-info,
  .tooltip,
  .lc-event-registrant-list-title,
  .lc-event-location__email {
    display: none; }
  .tooltip {
    visibility: hidden; }
  .lc-event__wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start; }
    .lc-event__wrapper p,
    .lc-event__wrapper .lc-messages,
    .lc-event__wrapper .lc-event__categories,
    .lc-event__wrapper .lc-event-info,
    .lc-event__wrapper .lc-event-location__address,
    .lc-event__wrapper .lc-event__info-item {
      font-size: 11px; }
  .lc-address__name,
  .lc-event__subtitle {
    font-size: 13px !important; }
  h3.lc-event__subtitle.lc-address__name {
    line-height: 1; }
  .lc-event__sidebar--first {
    width: 25%; }
  .lc-repeating-dates__toggle {
    width: inherit;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1; }
  .lc-repeating-dates__wrapper {
    max-height: 100% !important; }
  .lc-repeating-dates__list {
    display: block;
    width: inherit; }
  .lc-repeating-dates__link {
    padding: 2px 0 !important;
    text-align: left; }
  .lc-repeating-dates__item {
    width: inherit;
    margin: 0; }
  .lc-event__content {
    width: 75%; }
    .lc-event__content .lc-form {
      display: none; }
  .lc-messages,
  .lc-messages__message {
    padding: 0 !important;
    border: 0 !important; }
  .lc-print-row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -10px;
    margin-left: -10px; }
  .lc-print-column {
    position: relative;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
    flex: 0 0 50%;
    max-width: 50%; }
  .lc-event-wrapper .lc-event-sidebar,
  .lc-event-wrapper .lc-event-content {
    flex: 0 0 100%;
    max-width: 100%; }
  .lc-event__categories {
    margin-bottom: 10px; }
  .lc-messages {
    margin-bottom: 10px; }
  .lc-form__header,
  .lc-form__filters {
    display: none; }
  .lc-registration-list .item-list li {
    padding-bottom: 0;
    margin-bottom: 5px; }
  .lc-registration-list .registration__items {
    width: 25%;
    margin-bottom: 5px;
    font-size: 10px; }
    .lc-registration-list .registration__items p {
      margin-bottom: 5px; }
  .lc-registration-list .registration__items--contact-info {
    padding-right: 20px; }
  .lc-registration-list .registration__items--registrant-info {
    padding: 0 10px; }
  .lc-registration-list .registration__items--event-info {
    padding-left: 20px; }
  .lc-registration-list .registration__items--special {
    width: 100%; }
  .lc-registration-list .registration-item--name {
    font-size: 14px; }
  .lc-registration-print-btn {
    display: none !important; }
  .button__print {
    display: none !important; }
  .view-filters {
    display: none; }
  .region-highlighted {
    display: none; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UvYmFzZS9fYmFzZS5zY3NzIiwidXRpbHMvX2NvbG9ycy5zY3NzIiwidXRpbHMvX3ZhcmlhYmxlcy5zY3NzIiwidXRpbHMvX3R5cG9ncmFwaHkuc2NzcyIsInZlbmRvci9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvX2JyZWFrcG9pbnQuc2NzcyIsImJhc2UvdHlwb2dyYXBoeS9fdHlwb2dyYXBoeS5zY3NzIiwiY29tcG9uZW50cy9jYWxlbmRhci9fY2FsZW5kYXIuc2NzcyIsInN0eWxlcy5jc3MiLCJ1dGlscy9fbWl4aW5zLnNjc3MiLCJjb21wb25lbnRzL2NhbGVuZGFyLW1vbnRoL19jYWxlbmRhci1tb250aC5zY3NzIiwiY29tcG9uZW50cy9jYWxlbmRhci13ZWVrL19jYWxlbmRhci13ZWVrLnNjc3MiLCJjb21wb25lbnRzL2NhbGVuZGFyLWRheS9fY2FsZW5kYXItZGF5LnNjc3MiLCJjb21wb25lbnRzL2xjLW1lbnUtdGFza3MvX2xjLW1lbnUtdGFza3Muc2NzcyIsImNvbXBvbmVudHMvbGMtbWVzc2FnZXMvX2xjLW1lc3NhZ2VzLnNjc3MiLCJjb21wb25lbnRzL2RhdGUtaWNvbi9fZGF0ZS1pY29uLnNjc3MiLCJjb21wb25lbnRzL2V2ZW50LWNhcmQvX2V2ZW50LWNhcmQuc2NzcyIsImNvbXBvbmVudHMvbGMtYnJhbmNoLW1vZGFsL19sYy1icmFuY2gtbW9kYWwuc2NzcyIsImNvbXBvbmVudHMvbGMtZmVhdHVyZWQtZXZlbnRzL19sYy1mZWF0dXJlZC1ldmVudHMuc2NzcyIsImNvbXBvbmVudHMvbGMtZm9ybS9fbGMtZm9ybS5zY3NzIiwiY29tcG9uZW50cy9sYy1ldmVudC9fbGMtZXZlbnQuc2NzcyIsImNvbXBvbmVudHMvbGMtZXZlbnQvX2xjLWV2ZW50LS1mdWxsLnNjc3MiLCJjb21wb25lbnRzL3Jlc2VydmF0aW9ucy9fcmVzZXJ2YXRpb25zLnNjc3MiLCJjb21wb25lbnRzL2xjLWZvcm0tZmlsdGVycy9fbGMtZm9ybS1maWx0ZXJzLnNjc3MiLCJjb21wb25lbnRzL2xjLWV2ZW50LWFjdGlvbnMvX2xjLWV2ZW50LWFjdGlvbnMuc2NzcyIsImNvbXBvbmVudHMvbGMtYnJhbmNoLXNlbGVjdC9fbGMtYnJhbmNoLXNlbGVjdC5zY3NzIiwiY29tcG9uZW50cy9sYy1hbm5vdW5jZW1lbnRzL19sYy1hbm5vdW5jZW1lbnRzLnNjc3MiLCJjb21wb25lbnRzL2xjLXBheW1lbnRzL19sYy1wYXltZW50cy5zY3NzIiwiY29tcG9uZW50cy9sYy1mZWVzL19sYy1mZWVzLnNjc3MiLCJjb21wb25lbnRzL2xjLXJlZ2lzdHJhdGlvbnMvX2xjLXJlZ2lzdHJhdGlvbnMuc2NzcyIsImNvbXBvbmVudHMvbGMtY2xvc2luZy9fbGMtY2xvc2luZy5zY3NzIiwicHJpbnQuc2NzcyIsImJhc2UvYmFzZS9fYmFzZS5wcmludC5zY3NzIiwiY29tcG9uZW50cy9jYWxlbmRhci9fY2FsZW5kYXIucHJpbnQuc2NzcyIsImNvbXBvbmVudHMvZXZlbnQtY2FyZC9fZXZlbnQtY2FyZC5wcmludC5zY3NzIiwiY29tcG9uZW50cy9sYy1hbm5vdW5jZW1lbnRzL19sYy1hbm5vdW5jZW1lbnRzLnByaW50LnNjc3MiLCJjb21wb25lbnRzL2xjLWV2ZW50L19sYy1ldmVudC5wcmludC5zY3NzIiwiY29tcG9uZW50cy9sYy1mb3JtLWZpbHRlcnMvX2xjLWZvcm0tZmlsdGVycy5wcmludC5zY3NzIiwiY29tcG9uZW50cy9sYy1yZWdpc3RyYXRpb25zL19sYy1yZWdpc3RyYXRpb25zLnByaW50LnNjc3MiLCJjb21wb25lbnRzL2xjLXJlcG9ydHMvX2xjLXJlcG9ydHMucHJpbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGVBQWU7RUFDZixNQUFNO0VBQ04sUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsYUFBYTtFQUNiLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLDhCQzBDWSxFQUFBOztBRHZDZDtFQUNFLHNCQUFzQjtFQUN0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QUFBLEVBQ2QiLCJmaWxlIjoic3R5bGVzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5taWNyb21vZGFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA1MDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHJnYmEoY29sb3IoYmxhY2ssIGJhc2UpLCAuNik7XG59XG5cbi5taWNyb21vZGFsLWNvbnRhaW5lciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1heC13aWR0aDogOTAwcHg7XG4gIG1heC1oZWlnaHQ6IDEwMHZoO1xuICBwYWRkaW5nOiAkcGFkZGluZy1tZDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIGJhc2UpO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJkLXNtO1xufVxuXG4ubWljcm9tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ubWljcm9tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5taWNyb21vZGFsLWNsb3NlIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogJGZvbnQtYi1zbTtcbiAgY29sb3I6IGNvbG9yKGJsYWNrLCBsaWdodCk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi5taWNyb21vZGFsLWhlYWRlciAubWljcm9tb2RhbC1jbG9zZTo6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcMjcxNSc7XG59XG5cbi5taWNyb21vZGFsLWNvbnRlbnQge1xuICBtYXJnaW4tdG9wOiAkcGFkZGluZy1tZDtcbn1cblxuLm1pY3JvbW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWljcm9tb2RhbC5pcy1vcGVuIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5sYy1saW5rLW5vLXdyYXAge1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG59XG5cbi8vLyBGYWxsYmFjayBjb2xvciBjbGFzc2VzIGZvciB3aGVuIEJvb3RzdHJhcCBpc24ndCBwcmVzZW50LiBUaGVzZSB3aWxsIGFsd2F5c1xuLy8vIGJlIG92ZXJyaWRkZW4gYmVjYXVzZSBCb290c3RyYXAgdXNlcyAhaW1wb3J0YW50IGZvciB0aGVzZSB1dGlsaXRpZXMuXG4ubGMtdGV4dC1zdWNjZXNzIHtcbiAgY29sb3I6IGNvbG9yKGdyZWVuLCBiYXNlKTtcbn1cblxuLmxjLXRleHQtZGFuZ2VyIHtcbiAgY29sb3I6IGNvbG9yKHJlZCwgYmFzZSk7XG59XG5cbi5sYy1zY3JvbGwtbWVzc2FnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFkZGluZy1zbTtcbiAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmctbWQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGdyYXksIGxpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yZC1tZDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tZCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmxjLXNjcm9sbC1tZXNzYWdlLWFsd2F5cy1kaXNwbGF5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCIvLyBDb2xvcnNcbi8vXG4vLyBOYW1lZCB1c2luZyB0cDovL2NoaXIuYWcvcHJvamVjdHMvbmFtZS10aGF0LWNvbG9yXG4vL1xuLy8gQ29sb3JzIGFyZSBzdG9yZWQgaW4gYSBtYXAgdGhhdCBjYW4gYmUgYWNjZXNzZWQgdmlhXG4vLyB0aGUgW2NvbG9yKCkgZnVuY3Rpb25dKCNrc3NyZWYtdXRpbHMtZnVuY3Rpb25zLWNvbG9yKS5cbi8vXG4vLyBTdHlsZWd1aWRlOiB1dGlscy5jb2xvcnNcblxuLy8gUHJpbWFyeVxuJGNvbG9yOiAoXG4gIHJlZDogKFxuICAgIGJhc2U6ICNlMDU1NTQsXG4gICAgbGlnaHQ6ICNmNjhkNzQsXG4gICAgZGFyazogI2MyMzczNixcbiAgKSxcbiAgb3JhbmdlOiAoXG4gICAgYmFzZTogI2ZmYTAyZixcbiAgICBsaWdodDogI2ZmYmU0ZCxcbiAgICBkYXJrOiAjZDQ3NjAwLFxuICApLFxuICB5ZWxsb3c6IChcbiAgICBiYXNlOiAjZmVkMTAwLFxuICAgIGxpZ2h0OiAjZjNlYzdhLFxuICAgIGRhcms6ICNkN2E5MDAsXG4gICksXG4gIGdyZWVuOiAoXG4gICAgYmFzZTogIzAwN2I2OSxcbiAgICBsaWdodDogIzM1YmNhYyxcbiAgICBkYXJrOiAjOWJjNTNkLFxuICApLFxuICBibHVlOiAoXG4gICAgYmFzZTogIzAwNTQ5ZixcbiAgICBsaWdodDogIzAwOThkYixcbiAgICBkYXJrOiAjMzE4MDlmLFxuICApLFxuICBwdXJwbGU6IChcbiAgICBiYXNlOiAjOTAzOTg2LFxuICAgIGxpZ2h0OiAjYWU1N2E0LFxuICAgIGRhcms6ICM3MjFiNjgsXG4gICksXG4gIHdoaXRlOiAoXG4gICAgYmFzZTogI2ZmZixcbiAgICBsaWdodDogI2ZmZixcbiAgICBkYXJrOiAjZWZlZmVmLFxuICApLFxuICBncmF5OiAoXG4gICAgYmFzZTogIzc3ODg5OCxcbiAgICBsaWdodDogI2QyZDNkNSxcbiAgICBkYXJrOiAjMzMzLFxuICApLFxuICBibGFjazogKFxuICAgIGJhc2U6ICMwMDAsXG4gICAgbGlnaHQ6ICMzMzMsXG4gICAgZGFyazogIzAwMCxcbiAgKSxcbik7XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBTdHlsZWd1aWRlOiB1dGlscy52YXJpYWJsZXNcblxuLy8vdXNlZFxuJGFzc2V0LXBhdGg6ICcuLi9hc3NldHMvZGlzdCc7XG4kYXNzZXQtc3JjLXBhdGg6ICcuLi9hc3NldHMvc3JjJztcbiRhc3NldC1mb250LXBhdGg6ICcuLi9hc3NldHMvZm9udHMnO1xuXG4vLyBQYWRkaW5nXG4kc2l0ZS1wYWRkaW5nOiAgICAyMHB4O1xuJGNvbnRlbnQtcGFkZGluZzogMjBweDtcblxuJHBhZGRpbmcteHM6IDVweDtcbiRwYWRkaW5nLXNtOiAxMHB4O1xuJHBhZGRpbmctbWQ6IDIwcHg7XG4kcGFkZGluZy1sZzogNDBweDtcbiRwYWRkaW5nLXhsOiA2MHB4O1xuXG4vLyBCb3JkZXIgUmFkaXVzXG4kYm9yZGVyLXJkLXNtOiA1cHg7XG4kYm9yZGVyLXJkLW1kOiAxMHB4O1xuJGJvcmRlci1yZC1sZzogMTVweDtcblxuLy8gQnV0dG9uIEhlaWdodHNcbiRidXR0b24tbWluLWhlaWdodC1zbTogNDNweDtcbiRidXR0b24tbWluLWhlaWdodC1sZzogNThweDtcblxuLy8gU2l0ZSBhbmQgQ29udGVudCBNYXggV2lkdGhzXG4kc2l0ZS1tYXgtdzogMTAyMHB4O1xuJGNvbnRlbnQtbWF4LXc6IDg2MHB4O1xuXG4vLyBBbmltYXRpb24gU3BlZWRzXG4kYW5pbS1zdGFuZGFyZDogZWFzZS1pbi1vdXQ7XG4kYW5pbS1wb3A6IGN1YmljLWJlemllciguNDIsIDAsIC4xOSwgMS4zNSk7XG4kYW5pbS1zcGVlZC1mYXN0ZXI6IDEwMG1zO1xuJGFuaW0tc3BlZWQtZmFzdDogMjUwbXM7XG4kYW5pbS1zcGVlZC1tb2RlcmF0ZTogNTAwbXM7XG4kYW5pbS1zcGVlZC1zbG93OiA4MDBtcztcbiRhbmltLXNwZWVkLXNsb3dlcjogMTAwMG1zO1xuXG4vLyBaLUluZGV4XG4vL1xuLy8gWi1pbmRpY2VzIGFyZSBzdG9yZWQgaW4gYSBtYXAgdGhhdCBjYW4gYmUgYWNjZXNzZWRcbi8vIHZpYSB0aGUgW3pnZXQoKSBmdW5jdGlvbl0oI2tzc3JlZi11dGlscy1mdW5jdGlvbnMtemdldCkuXG4vLyBEZWZhdWx0IHotaW5kaWNlcyBhcmUgbmFtZWQgYmFzZWQgb24gdGhlXG4vLyBbYXRtb3NwaGVyaWMgcmVnaW9uc10oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQWx0aXR1ZGUjQXRtb3NwaGVyaWNfcmVnaW9ucyksXG4vLyB3aGlsZSBjdXN0b20gei1pbmRpY2VzIHNob3VsZCBiZSBuYW1lZCBiYXNlZCBvbiB0aGVpciBjb21wb25lbnQuXG4vL1xuLy8gKipFeGFtcGxlIHVzYWdlOioqXG4vLyA8cHJlIGNsYXNzPVwicHJldHR5cHJpbnQgbGluZW51bXMgbGFuZy1jc3NcIj5cbi8vIC5mb28ge1xuLy8gICB6LWluZGV4OiB6Z2V0KGdyb3VuZCk7XG4vLyB9XG4vL1xuLy8gLmJhciB7XG4vLyAgIHBvc2l0aW9uOiBmaXhlZDtcbi8vICAgdG9wOiAzMCU7XG4vLyAgIGxlZnQ6IDMwJTtcbi8vICAgcmlnaHQ6IDMwJTtcbi8vICAgYm90dG9tOiAzMCU7XG4vLyAgIHdpZHRoOiBhdXRvO1xuLy8gICBoZWlnaHQ6IGF1dG87XG4vLyAgIHotaW5kZXg6IHpnZXQobW9kYWwpO1xuLy8gfVxuLy8gPC9wcmU+XG4vL1xuLy8gLSBleG8gLSA1MFxuLy8gLSB0aGVybW8gLSA0MFxuLy8gLSBtZXNvIC0gMzBcbi8vIC0gc3RyYXRvIC0gMjBcbi8vIC0gdHJvcG8gLSAxMFxuLy8gLSBncm91bmQgLSAwXG4vLyAtIGluZmVybm8gLSAtMVxuLy9cbi8vIFN0eWxlZ3VpZGU6IHV0aWxzLnZhcmlhYmxlcy56LWluZGV4LW1hcHNcblxuLy8gWi1pbmRleCBiYXNlIHZhcmlhYmxlcy4gRE8gTk9UIE1PRElGWVxuJHppLW1heDogICAxMDAwMDtcbiR6aS1leG86ICAgICAgNTA7XG4kemktdGhlcm1vOiAgIDQwO1xuJHppLW1lc286ICAgICAzMDtcbiR6aS1zdHJhdG86ICAgMjA7XG4kemktdHJvcG86ICAgIDEwO1xuJHppLWdyb3VuZDogICAwO1xuJHppLWluZmVybm86ICAtMTtcblxuLy8gWi1pbmRleCBtYXBcbiR6aS1tYXA6IChcbiAgbWF4OiAgICAgICR6aS1tYXgsXG4gIGV4bzogICAgICAkemktZXhvLFxuICB0aGVybW86ICAgJHppLXRoZXJtbyxcbiAgbWVzbzogICAgICR6aS1tZXNvLFxuICBzdHJhdG86ICAgJHppLXN0cmF0byxcbiAgdHJvcG86ICAgICR6aS10cm9wbyxcbiAgZ3JvdW5kOiAgICR6aS1ncm91bmQsXG4gIGluZmVybm86ICAkemktaW5mZXJubyxcbiAgY2FyZDogJHppLXRyb3BvLFxuICBtb2RhbDogJHppLW1heCxcbik7XG4iLCIvLyBUeXBvZ3JhcGh5XG4vL1xuLy8gVHlwb2dyYXBoeSB2YXJpYWJsZXMgc2hvdWxkIGJlIGRlZmluZWQgaGVyZS4gRm9udHMgYXJlIGxvYWRlZCBpblxuLy8gYGJhc2UvdHlwb2dyYXBoeS9fdHlwb2dyYXBoeS5zY3NzYFxuLy9cbi8vIC0gRm9udCBzdGFja3MgYXJlIGRlZmluZWQgc3VjaCBhcyBgJGZvbnQtc3RhY2stYmFzZTogJ0xhdG8nLCBzYW5zLXNlcmlmO2AuXG4vLyAtIEZvbnQgd2VpZ2h0cyBhcmUgZGVmaW5lZCBhYnNvbHV0ZWx5LCByYXRoZXIgdGhhblxuLy8gICB3aXRoIHJlbGF0aXZlIHVuaXRzIGxpa2UgYGxpZ2h0ZXJgIG9yIGBib2xkZXJgXG4vLyAtIEZvbnQgc2l6ZXMgYXJlIGRlZmluZWQgd2l0aCBzaXplIGtleXdvcmRzLCBsaWtlIHRoZVxuLy8gICBwYWRkaW5nIHZhcmlhYmxlcy4gQWRkaXRpb25hbCBmb250IHZhcmlhYmxlcyBjYW4gYmVcbi8vICAgY3JlYXRlZCBhcyBuZWVkZWQuXG4vL1xuLy8gU3R5bGVndWlkZTogdXRpbHMudHlwb2dyYXBoeVxuJGZvbnQtc3RhY2stYmFzZTogJ0xpYnJlIEJhc2tlcnZpbGxlJywgc2VyaWY7XG4kZm9udC1zdGFjay1zZWNvbmRhcnk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuJGZvbnQtc3RhY2stdGVydGlhcnk6ICRmb250LXN0YWNrLXNlY29uZGFyeTtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAzMDA7XG4kZm9udC13ZWlnaHQtcmVndWxhcjogNDAwO1xuJGZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcbiRmb250LXdlaWdodC1ibGFjazogOTAwO1xuXG4vLyBVc2luZyBweCBpbnN0ZWFkIG9mIHJlbSBiZWNhdXNlIHdlIGNhbm5vdCByZWxpYWJseSBzZXQgdXAgdGhlIGNvbnZlcnNpb24gZm9yIHRoZSBodG1sXG4vLyBlbGVtZW50J3MgYmFzZSBmb250IHNpemUgdW50aWwgd2Uga25vdyBleGFjdGx5IHdoYXQgdGhlbWUgd2UncmUgdXNpbmcuXG4kZm9udC1oLXh4bDogOTRweDtcbiRmb250LWgteGw6IDU1cHg7XG4kZm9udC1oLWxnOiAzNnB4O1xuJGZvbnQtaC1tZDogMjhweDtcbiRmb250LWgtc206IDI1cHg7XG4kZm9udC1oLXhzOiAyMnB4O1xuJGZvbnQtaC14eHM6IDE4cHg7XG5cbiRmb250LWIteHhsOiAkZm9udC1oLW1kO1xuJGZvbnQtYi14bDogJGZvbnQtaC1zbTtcbiRmb250LWItbGc6ICRmb250LWgteHM7XG4kZm9udC1iLW1kOiAkZm9udC1oLXh4cztcbiRmb250LWItc206IDE2cHg7XG4kZm9udC1iLXhzOiAxNHB4O1xuJGZvbnQtYi14eHM6IDEycHg7XG4kZm9udC1iLXRpbnk6IDEwcHg7XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIERlZmF1bHQgVmFyaWFibGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIERlZmF1bHQgRmVhdHVyZXNcbiRicmVha3BvaW50LWRlZmF1bHQtbWVkaWE6ICAgICAgYWxsICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtZGVmYXVsdC1mZWF0dXJlOiAgICBtaW4td2lkdGggIWRlZmF1bHQ7XG4kYnJlYWtwb2ludC1kZWZhdWx0LXBhaXI6ICAgICAgIHdpZHRoICFkZWZhdWx0O1xuXG4vLyBEZWZhdWx0IFRyYW5zZm9ybXNcbiRicmVha3BvaW50LWZvcmNlLW1lZGlhLWFsbDogICAgZmFsc2UgIWRlZmF1bHQ7XG4kYnJlYWtwb2ludC10by1lbXM6ICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtcmVzb2x1dGlvbnM6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG4vLyBEZWZhdWx0IE5vIFF1ZXJ5IE9wdGlvbnNcbiRicmVha3BvaW50LW5vLXF1ZXJpZXM6ICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kYnJlYWtwb2ludC1uby1xdWVyeS1mYWxsYmFja3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEZWZ0YXVsdCBCYXNlIEZvbnQgU2l6ZVxuJGJyZWFrcG9pbnQtYmFzZS1mb250LXNpemU6ICAgICAxNnB4ICFkZWZhdWx0O1xuXG4vLyBMZWdhY3kgU3ludGF4IFN1cHBvcnRcbiRicmVha3BvaW50LWxlZ2FjeS1zeW50YXg6ICAgICAgZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSW1wb3J0c1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AaW1wb3J0ICdicmVha3BvaW50L2NvbnRleHQnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9oZWxwZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcGFyc2Vycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L25vLXF1ZXJ5JztcblxuQGltcG9ydCAnYnJlYWtwb2ludC9yZXNwb25kLXRvJztcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCcmVha3BvaW50IE1peGluXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuQG1peGluIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIC8vIFJlc2V0IGNvbnRleHRzXG4gIEBpbmNsdWRlIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cygpO1xuXG4gICRicmVha3BvaW50OiBicmVha3BvaW50KCRxdWVyeSwgZmFsc2UpO1xuXG4gICRxdWVyeS1zdHJpbmc6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeScpO1xuICAkcXVlcnktZmFsbGJhY2s6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdmYWxsYmFjaycpO1xuXG4gICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdjb250ZXh0IGhvbGRlcicpICFnbG9iYWw7XG4gICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeSBjb3VudCcpICFnbG9iYWw7XG5cbiAgLy8gQWxsb3cgZm9yIGFuIGFzLW5lZWRlZCBvdmVycmlkZSBvciB1c2FnZSBvZiBubyBxdWVyeSBmYWxsYmFjay5cbiAgQGlmICRuby1xdWVyeSAhPSBmYWxzZSB7XG4gICAgJHF1ZXJ5LWZhbGxiYWNrOiAkbm8tcXVlcnk7XG4gIH1cblxuICBAaWYgJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlIHtcbiAgICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgnbm8tcXVlcnknLCAkcXVlcnktZmFsbGJhY2spO1xuICB9XG5cbiAgLy8gUHJpbnQgT3V0IFF1ZXJ5IFN0cmluZ1xuICBAaWYgbm90ICRicmVha3BvaW50LW5vLXF1ZXJpZXMge1xuICAgIEBtZWRpYSAjeyRxdWVyeS1zdHJpbmd9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYnJlYWtwb2ludC1uby1xdWVyeS1mYWxsYmFja3MgIT0gZmFsc2Ugb3IgJGJyZWFrcG9pbnQtbm8tcXVlcmllcyA9PSB0cnVlIHtcblxuICAgICR0eXBlOiB0eXBlLW9mKCRicmVha3BvaW50LW5vLXF1ZXJ5LWZhbGxiYWNrcyk7XG4gICAgJHByaW50OiBmYWxzZTtcblxuICAgIEBpZiAoJHR5cGUgPT0gJ2Jvb2wnKSB7XG4gICAgICAkcHJpbnQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnc3RyaW5nJykge1xuICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayA9PSAkYnJlYWtwb2ludC1uby1xdWVyeS1mYWxsYmFja3Mge1xuICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnbGlzdCcpIHtcbiAgICAgIEBlYWNoICR3cmFwcGVyIGluICRicmVha3BvaW50LW5vLXF1ZXJ5LWZhbGxiYWNrcyB7XG4gICAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gJHdyYXBwZXIge1xuICAgICAgICAgICRwcmludDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdyaXRlIEZhbGxiYWNrXG4gICAgQGlmICgkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2UpIGFuZCAoJHByaW50ID09IHRydWUpIHtcbiAgICAgICR0eXBlLWZhbGxiYWNrOiB0eXBlLW9mKCRxdWVyeS1mYWxsYmFjayk7XG5cbiAgICAgIEBpZiAoJHR5cGUtZmFsbGJhY2sgIT0gJ2Jvb2wnKSB7XG4gICAgICAgICN7JHF1ZXJ5LWZhbGxiYWNrfSAmIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcbn1cblxuXG5AbWl4aW4gbXEoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnkpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLmxjLWZvbnQtd2VpZ2h0LWJvbGQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4ubGMtZC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG4iLCIqIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmNhbGVuZGFyLS11cGNvbWluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuZXZlbnQtY2FyZCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLmNhbGVuZGFyX19pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMCAkcGFkZGluZy1zbTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nOiAwIDAgJHBhZGRpbmctc20gJHBhZGRpbmctc207XG5cbiAgICAgICY6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1tZCkge1xuICAgICAgd2lkdGg6IDMzJTtcbiAgICAgIHBhZGRpbmc6IDAgJHBhZGRpbmctc20gJHBhZGRpbmctc207XG5cbiAgICAgICY6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZy1zbTtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoM24rMSkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgzbikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogQ2FsZW5kYXIgbW9udGggZGlzcGxheS5cbiAqXG4gKiBBbGwgcGFkZGluZyBhbmQgZm9udC1zaXplcyBpbiB0aGUgbW9udGggZGlzcGxheVxuICogc2hvdWxkIHVzZXMgZW0gdW5pdHMgKG5vdCByZW0gb3IgcHgpLCBhcyBkZWZpbmVkXG4gKiBpbiB0aGUgY2FsZW5kYXIgY29tcG9uZW50J3MgbG9jYWwgdmFyaWFibGVzIHBhcnRpYWwuXG4gKiBUaGUgcmVhc29uaW5nIGZvciB0aGF0IGlzIHNvIHRoYXQgZm9udC1zaXplcyBjYW4gYmVcbiAqIGRlZmluZWQgcmVsYXRpdmUgdG8gZWFjaCBvdGhlciwgYW5kIHRoZW4gdGhlIG92ZXJhbGxcbiAqIGZvbnQvcGFkZGluZyBzaXplcyBvZiB0aGUgY2FsZW5kYXIgY2FuIGJlIGFkanVzdGVkXG4gKiBwcm9wb3J0aW9uYWxseSB3aGlsZSBvbmx5IG1vZGlmeWluZyB0aGUgcm9vdCBmb250XG4gKiBzaXplIG9uIHRoZSAuY2FsZW5kYXItLW1vbnRoIGNvbnRhaW5lci5cbiAqL1xuLmNhbGVuZGFyLS1tb250aCB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYi14eHM7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcblxuICAuZGVza3RvcC1oaWRlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLm1vYmlsZS1oaWRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLW1kKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICBjbGlwOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5ldmVudC1jYXJkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAubGMtZXZlbnRfX3JlZ2lzdHJhdGlvbi1pY29uLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5sYy1ldmVudF9fcmVnaXN0cmF0aW9uLWljb24sXG4gIC5sYy1ldmVudF9fcmVnaXN0cmF0aW9uLXBheW1lbnQtaWNvbiB7XG4gICAgbWFyZ2luOiAuNXJlbSAxcmVtIC41cmVtIDA7XG4gIH1cbn1cblxuLmNhbGVuZGFyX193ZWVrIHtcbiAgLmV2ZW50LWNhcmRfX3RpdGxlLFxuICAuZXZlbnQtY2FyZF9fZGV0YWlscyxcbiAgLmV2ZW50LWNhcmRfX3Jvb20ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgY2xpcDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLmNhbGVuZGFyLS1tb250aCxcbi5jYWxlbmRhci0td2Vlayxcbi5jYWxlbmRhci0tZGF5LFxuLmNhbGVuZGFyX193ZWVrIHtcbiAgLmhhcy1ldmVudHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBkYXJrKTtcbiAgfVxuXG4gIC5ub2RlLS10eXBlLWxjLWNsb3Npbmcge1xuICAgIGJvcmRlcjogM3B4IHNvbGlkIGNvbG9yKHJlZCwgYmFzZSk7XG4gIH1cblxuICAubm9kZS0tdHlwZS1sYy1yZXNlcnZhdGlvbiB7XG4gICAgYm9yZGVyOiAzcHggc29saWQgY29sb3IoZ3JlZW4sIGJhc2UpO1xuICB9XG5cbiAgLmFsbC1kYXkge1xuICAgIGJvcmRlcjogM3B4IHNvbGlkIGNvbG9yKGJsdWUsIGxpZ2h0KTtcbiAgfVxuXG4gIC5wcml2YXRlLWV2ZW50IHtcbiAgICBib3JkZXI6IDNweCBzb2xpZCBjb2xvcihibHVlLCBkYXJrKTtcbiAgfVxuXG4gIC5oYXMtY29uZmxpY3Qge1xuICAgIGJvcmRlcjogM3B4IHNvbGlkIGNvbG9yKHB1cnBsZSwgYmFzZSk7XG4gIH1cblxuICAubW9kZXJhdGlvbi1zdGF0ZS0tYXJjaGl2ZWQsXG4gIC5tb2RlcmF0aW9uLXN0YXRlLS1kcmFmdCxcbiAgLm1vZGVyYXRpb24tc3RhdGUtLWxjLWRyYWZ0LFxuICAubW9kZXJhdGlvbi1zdGF0ZS0tbGNfZHJhZnQge1xuICAgIGJvcmRlcjogM3B4IHNvbGlkIGNvbG9yKGdyYXksIGRhcmspO1xuICB9XG5cbiAgLm1vZGVyYXRpb24tc3RhdGUtLWRyYWZ0LFxuICAubW9kZXJhdGlvbi1zdGF0ZS0tbGMtZHJhZnQsXG4gIC5tb2RlcmF0aW9uLXN0YXRlLS1sY19kcmFmdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjRmNDtcbiAgfVxufVxuXG4uY2FsZW5kYXJfX251bWJlcnMgLmNhbGVuZGFyX19kYXkuY2FsZW5kYXJfX2RheS0tY3VycmVudCB7XG4gIGNvbG9yOiBjb2xvcih3aGl0ZSwgYmFzZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyYXksIGJhc2UpO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICRhbmltLXN0YW5kYXJkICRhbmltLXNwZWVkLWZhc3Q7XG59XG5cbi8qKlxuICogSGVhZGVyIGFuZCBwYWdlclxuICpcbiAqIFRoZSBoZWFkZXIgYW5kIHBhZ2VyIHVzZSBmbGV4Ym94IHRvXG4gKiBsYXlvdXQgYW5kIHZlcnRpY2FsbHkgY2VudGVyIHRoZSBoZWFkZXJcbiAqIGl0ZW1zLlxuICovXG4uY2FsZW5kYXItLW1vbnRoIC5jYWxlbmRhcl9fd3JhcC0taGVhZGVyIC5jYWxlbmRhcl9fbW9udGgtcGFnZXIsXG4uY2FsZW5kYXItLW1vbnRoIC5jYWxlbmRhcl9fbW9udGgtcGFnZXItLWxvd2VyLFxuLmNhbGVuZGFyLXdlZWstcGFnZXIsXG4uY2FsZW5kYXItZGF5LXBhZ2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXNtIDA7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmctbWQ7XG5cbiAgICAmLmNhbGVuZGFyX19tb250aC1wYWdlci0tbG93ZXIge1xuICAgICAgcGFkZGluZy10b3A6ICRwYWRkaW5nLXNtO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAubW9iaWxlLWhpZGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG4gIH1cbn1cblxuLmNhbGVuZGFyX193cmFwLS1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB3aWR0aDogMTAwJTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5cbi5jYWxlbmRhcl9fd3JhcC0taGVhZGVyLFxuLmNhbGVuZGFyX193cmFwLS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYi14cztcblxuICAuY2FsZW5kYXJfX3RpdGxlIGgyIHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20tLW1pbikge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1iLXNtO1xuICAgIH1cbiAgfVxufVxuXG4uY2FsZW5kYXJfX3dyYXAtLXRpdGxlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtLS1taW4pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jYWxlbmRhcl9fcGFnZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb250ZW50OiAnJztcbiAgfVxufVxuXG4uY2FsZW5kYXJfX3RpdGxlIHtcbiAgb3JkZXI6IDE7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJ1dHRvbi5jYWxlbmRhcl9fcGFnZXItLWxlZnQsXG4uYnV0dG9uLmNhbGVuZGFyX19wYWdlci0tcmlnaHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsdWUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwcHg7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmQtc207XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgZWFzZS1pbi1vdXQgLjI1cztcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibHVlLCBkYXJrKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHg7XG4gIH1cbn1cblxuLmJ1dHRvbi5jYWxlbmRhcl9fcGFnZXItLWxlZnQge1xuICBvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldC1wYXRofS9pbWFnZXMvcGFnZXItYXJyb3ctcHJldi5zdmcnKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0LXBhdGh9L2ltYWdlcy9wYWdlci1hcnJvdy1wcmV2LnN2ZycpO1xuICB9XG59XG5cbi5idXR0b24uY2FsZW5kYXJfX3BhZ2VyLS1yaWdodCB7XG4gIG9yZGVyOiAyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0LXBhdGh9L2ltYWdlcy9wYWdlci1hcnJvdy1uZXh0LnN2ZycpO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXQtcGF0aH0vaW1hZ2VzL3BhZ2VyLWFycm93LW5leHQuc3ZnJyk7XG4gIH1cbn1cblxuXG4vKipcbiAqIEdyaWQgc3R5bGluZ1xuICpcbiAqIFRoZSBncmlkIHN0eWxpbmcgZm9yIHRoZSBzaW5nbGUtZGF5IGV2ZW50XG4gKiBjZWxscyB1c2VzIGZsZXhib3ggY29udGFpbmVycyBmb3IgdGhlIHJvd1xuICogYW5kIDEvNyBvZiB0aGUgY29udGFpbmVyIGZvciB0aGUgd2lkdGggb25cbiAqIGVhY2ggaXRlbS4gVGhlIGZpcnN0IGl0ZW0gaW4gdGhlIHJvdyBpc1xuICogYWx3YXlzIHRoZSBtdWx0aS1kYXkgZXZlbnQgY2VsbCwgd2hpY2ggaXMgMTAwJVxuICogd2lkZSwgYW5kIHVzZXMgaXQncyBvd24gZ3JpZCB0byBjb250cm9sXG4gKiBsYXlvdXQgZm9yIG11bHRpLWRheSBldmVudHMuXG4gKi9cbi5jYWxlbmRhcl9fd3JhcC0tZ3JpZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAycHggc29saWQgI2QxZDFkMTtcbn1cblxuLmNhbGVuZGFyX19yb3ctLWhlYWRlcixcbi5jYWxlbmRhcl9fcm93LS1jb250ZW50LFxuLmNhbGVuZGFyX19udW1iZXJzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5jYWxlbmRhcl9fcm93LS1mb290ZXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20tLW1pbikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNhbGVuZGFyX19kYXksXG4uY2FsZW5kYXJfX2RheS0tbnVtYmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJHBhZGRpbmcteHM7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTtcbiAgfVxufVxuXG4uY2FsZW5kYXJfX2RheSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBiYXNlKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICBtaW4taGVpZ2h0OiAyNXB4O1xuICB9XG59XG5cbi5jYWxlbmFyX19kYXktLW51bWJlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cbn1cblxuLmNhbGVuZGFyX19kYXktLWhlYWRlciB7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNhbGVuZGFyX19kYXktLWJsYW5rIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uY2FsZW5kYXJfX3Jvdy0tY29udGVudCAuY2FsZW5kYXJfX2RheS0tYmxhbmsge1xuICBtaW4taGVpZ2h0OiA1cmVtO1xufVxuXG4uY2FsZW5kYXJfX2RheS0tb3V0c2lkZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBkYXJrKTtcbn1cblxuLyoqXG4gKiBDYWxlbmRhciBib3JkZXJzXG4gKlxuICogRXh0ZXJuYWwgYm9yZGVycyBhcmUgd3JhcHBlZCBhcm91bmQgdGhlXG4gKiAuY2FsZW5kYXJfX3dlZWsgZWxlbWVudCwgd2hpbGUgaW50ZXJuYWwgYm9yZGVyc1xuICogYXJlIGFic29sdXRlbHkgcG9zaXRpb25lZCBlbXB0eSBkaXZzLlxuICovXG4uY2FsZW5kYXJfX3dlZWsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZDFkMWQxO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICB9XG59XG5cbi5jYWxlbmRhcl9fd2Vlay0tZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5jYWxlbmRhcl9fYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgY29sb3I6ICNkMWQxZDE7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCwgLTFweCAwIDAgMDtcbiAgb3BhY2l0eTogLjI1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5jYWxlbmRhcl9fYmFyLS0xIHtcbiAgbGVmdDogMTQuMjg1NzElO1xufVxuXG4uY2FsZW5kYXJfX2Jhci0tMiB7XG4gIGxlZnQ6IDI4LjU3MTQzJTtcbn1cblxuLmNhbGVuZGFyX19iYXItLTMge1xuICBsZWZ0OiA0Mi44NTcxNCU7XG59XG5cbi5jYWxlbmRhcl9fYmFyLS00IHtcbiAgbGVmdDogNTcuMTQyODYlO1xufVxuXG4uY2FsZW5kYXJfX2Jhci0tNSB7XG4gIGxlZnQ6IDcxLjQyODU3JTtcbn1cblxuLmNhbGVuZGFyX19iYXItLTYge1xuICBsZWZ0OiA4NS43MTQyOSU7XG59XG5cbi8qKlxuICogTGluayBvdmVybGF5c1xuICpcbiAqIEVhY2ggZGF5IGluIHRoZSBjYWxlbmRhciBoYXMgYW4gYXNzb2NpYXRlZCBsaXN0IG9mIGRheXNcbiAqIHRoYXQgaXMgc3RvcmVkIGJlbG93IHRoZSBjYWxlbmRhciB0aGF0IGNvbnRhaW5zIG1vcmVcbiAqIGluZm9ybWF0aW9uLiBUbyBhY2Nlc3MgdGhpcyBpbmZvcm1hdGlvbiwgdGhlcmUgYXJlIGxpbmtcbiAqIG92ZXJsYXlzIHBvc2l0aW9uZWQgYWJzb2x1dGVseSBhYm92ZSB0aGUgZGF5IGNlbGxzLlxuICovXG4uY2FsZW5kYXJfX251bWJlcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICB9XG59XG5cbi5jYWxlbmRhcl9fbnVtYmVyLWRheS0tbXVsdGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbn1cblxuLyoqXG4gKiBNdWx0aS1kYXkgZ3JpZHNcbiAqXG4gKiBVbmxpa2UgdGhlIHJlZ3VsYXIgZ3JpZCBjZWxscyBmb3IgdGhlIGNhbGVuZGFyLCB3aGljaFxuICogdXNlIGZsZXhib3gsIHRoZSBtdWx0aS1kYXkgZ3JpZHMgdXNlIFNpbmd1bGFyaXR5IEdTJ3NcbiAqIGZsb2F0IGdyaWQtc3BhbnMgc28gdGhhdCB0aGV5IGNhbiBzdGFydCBhdCBhcmJpdHJhcnlcbiAqIHBvaW50cyB3aXRoaW4gdGhlIGdyaWQuIENsZWFyaW5nIGhhcyB0byBiZSBhcHBsaWVkXG4gKiBtYW51YWxseSB2aWEgYSBjbGVhciBjbGFzcywgYXBwbGllZCB3aGVuIHRoZSB0ZW1wbGF0ZVxuICogaXMgZmlyc3QgZ2VuZXJhdGVkLlxuICovXG4uY2FsZW5kYXJfX2RheS0tbXVsdGkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJHBhZGRpbmcteHM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0xLTEge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDE0LjI4NTcxJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0xLTcge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiAxNC4yODU3MSU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0yLTEge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0yLTIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDE0LjI4NTcxJTtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTItMyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjguNTcxNDMlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMjguNTcxNDMlO1xuICBjbGVhcjogbm9uZTtcbn1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tMi00IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyOC41NzE0MyU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIG1hcmdpbi1sZWZ0OiA0Mi44NTcxNCU7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0yLTUge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDU3LjE0Mjg2JTtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTItNiB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTMtMSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNDIuODU3MTQlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTMtMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNDIuODU3MTQlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMTQuMjg1NzElO1xuICBjbGVhcjogbm9uZTtcbn1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tMy0zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA0Mi44NTcxNCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAyOC41NzE0MyU7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0zLTQge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDQyLjg1NzE0JTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDQyLjg1NzE0JTtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTMtNSB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDQyLjg1NzE0JTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTQtMSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNTcuMTQyODYlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTQtMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNTcuMTQyODYlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMTQuMjg1NzElO1xuICBjbGVhcjogbm9uZTtcbn1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tNC0zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA1Ny4xNDI4NiU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAyOC41NzE0MyU7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS00LTQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiA1Ny4xNDI4NiU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS01LTEge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDcxLjQyODU3JTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS01LTIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDcxLjQyODU3JTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDE0LjI4NTcxJTtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTUtMyB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDcxLjQyODU3JTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTYtMSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogODUuNzE0MjklO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTYtMiB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDg1LjcxNDI5JTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTctMSB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuIHtcbiAgcGFkZGluZzogMCAuOHB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXNtLS1taW4pIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tY2xlYXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLyoqXG4gKiBDYWxlbmRhciBMaXN0IFN0eWxpbmdcbiAqXG4gKiBJbiBhZGRpdGlvbiB0byB0aGUgMzAtZGF5IGdyaWQsIHRoZXJlJ3MgYSBsaXN0IHZpZXdcbiAqIGZvciBlYXNpZXIgdXNhZ2Ugb24gbW9iaWxlIHRoYXQgYXBwZWFycyBiZWxvdyB0aGVcbiAqIG5vcm1hbCAzMC1kYXkgY2FsZW5kYXIuIEl0J3MgYnJvdWdodCB1cCBhIGZpeGVkXG4gKiBwb3NpdGlvbiB3aGVuZXZlciB0aGUgdXNlciB0b3VjaGVzIGl0J3MgYXNzb2NpYXRlZFxuICogZGF5IG9uIHRoZSBjYWxlbmRhciBncmlkLlxuICovXG4uY2FsZW5kYXJfX2RheS1oZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXNtKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY2FsZW5kYXJfX21vYmlsZS1saXN0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxNXB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC45NSk7XG4gIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLWluLW91dDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcblxuICAmLmxpc3Qge1xuICAgIHotaW5kZXg6IDUwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAuZXZlbnQtY2FyZC0tc3BhcnNlIHtcbiAgICAudGltZS0tZW5kLFxuICAgIC50aW1lLS1zZXBhcmF0b3Ige1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgY2xpcDogYXV0bztcbiAgICB9XG5cbiAgICAudGltZS0tc3RhcnQgLmV2ZW50LWNhcmRfX2RheS0taW5saW5lLFxuICAgIC50aW1lLS1zdGFydCAuZXZlbnQtY2FyZF9fc2VwYXJhdG9yIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIGNsaXA6IGF1dG87XG4gICAgfVxuICB9XG59XG5cblxuLmNhbGVuZGFyX19saXN0LFxuLmNhbGVuZGFyX19saXN0LWl0ZW0sXG4uY2FsZW5kYXJfX2xpc3QtLWRheSxcbi5jYWxlbmRhcl9fbGlzdC1pdGVtLS1kYXkge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLmNhbGVuZGFyX19saXN0LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgcGFkZGluZzogMTVweCAwO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2QxZDFkMTtcbn1cblxuLmNhbGVuZGFyX19saXN0LXRpdGxlIHtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYi14cztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY2FsZW5kYXJfX2xpc3QtLWRheSB7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuLmtpZHMge1xuICBjb2xvcjogY29sb3Iod2hpdGUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiZDBhO1xuICBib3JkZXItY29sb3I6ICNlMTlmMDA7XG5cbiAgYTpob3ZlciB7XG4gICAgY29sb3I6ICM0YWFjYTI7XG4gIH1cblxuICBoMixcbiAgaDMsXG4gIGg0IHtcbiAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xuICB9XG59XG5cbi50ZWVucyB7XG4gIGNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZDQyNDY7XG4gIGJvcmRlci1jb2xvcjogIzFmMjQyODtcblxuICBoMixcbiAgaDMsXG4gIGg0IHtcbiAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xuICB9XG59XG5cbi5hZHVsdCB7XG4gIGNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YWFjYTI7XG4gIGJvcmRlci1jb2xvcjogIzJjOGU4NDtcbiAgaDIsXG4gIGgzLFxuICBoNCB7XG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAjNTdiN2RmO1xuXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjZmZiZDBhO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNb250aGx5IE5hdmlnYXRpb25cbi5jYWxlbmRhci1waWNrZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2FsZW5kYXItcGlja2VyLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYWxlbmRhci1waWNrZXItdGl0bGUgaDIge1xuICBtYXJnaW46IDA7XG59XG5cbi5jYWxlbmRhci1waWNrZXItaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIG9wYWNpdHk6IDA7XG5cbiAgLmNhbGVuZGFyLXBpY2tlci5hY3RpdmUgJiB7XG4gICAgbWFyZ2luLXRvcDogJHBhZGRpbmctc207XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQgLjI1cywgb3BhY2l0eSBlYXNlLWluLW91dCAuMjVzO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIH1cbn1cblxuLmNhbGVuZGFyX19tb250aC1wYWdlci0tbG93ZXIge1xuICBtYXJnaW4tYm90dG9tOiAyLjJyZW07XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5jYWxlbmRhci1waWNrZXItbGluay0tbG93ZXIge1xuICBmb250LXNpemU6ICRmb250LWItc207XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1iLW1kO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi5jYWxlbmRhcl9fcGFnZXItLXJpZ2h0LWxvd2VyIHtcblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLy8gSUUgRkl4ZXMuXG4uaWUxMCxcbi5pZTExIHtcbiAgLmNhbGVuZGFyLS1tb250aCB7XG4gICAgLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIuZXZlbnQtY2FyZC0tc3BhcnNlIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIH1cbiAgfVxuXG4gIC5jYWxlbmRhcl9fd3JhcC0taGVhZGVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgLnRhYnMge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgLmNhbGVuZGFyX19tb250aC1wYWdlciB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNhbGVuZGFyX19tZW51LXRhc2tzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNhbGVuZGFyX193cmFwLS10aWx0ZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gIH1cbn1cblxuLmxjLWZvcm0tLWNhbGVuZGFyLWZpbHRlcnMgLnBhZ2VyX19pdGVtcyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4uY2FsZW5kYXItcGlja2VyLWlucHV0LS1sb3dlciB7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5jYWxlbmRhcl9fbW9udGgtcGFnZXItLWxvd2VyIHtcbiAgLmNhbGVuZGFyX19wYWdlciB7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuXG4vLyBTYWZhcmkgRml4LlxuLmxjLWZvcm1fX2NvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtbWQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZy1tZDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSUUgRml4LlxuLmllIHtcbiAgLmNhbGVuZGFyX193cmFwLS10aXRsZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuY2FsZW5kYXJfX3RpdGxlIHtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLmNhbGVuZGFyX19wYWdlciB7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuXG5zcGFuLmxjLWV2ZW50X19hZ2UtZ3JvdXAubGMtZXZlbnRfX2FnZS1ncm91cC0tY2hpbGQubGMtZXZlbnRfX2FnZS1ncm91cC0tbm8tbGluayB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4uY2FsZW5kYXJfX2RheS1hamF4LndoaXRlLXBvcHVwIHtcbiAgLm1mcC1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogNXB4O1xuICAgIHotaW5kZXg6IHpnZXQobW9kYWwpO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmF5LCBkYXJrLCArIDMwKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICAgIHRvcDogLTEwcHg7XG4gICAgICByaWdodDogNXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1tZCkge1xuICAgICAgdG9wOiAtMTVweDtcbiAgICAgIHJpZ2h0OiA1cHg7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmF5LCBkYXJrKTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1tZCkge1xuICAgICAgICB0b3A6IC0xNXB4O1xuICAgICAgICByaWdodDogNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucGF0aC1ldmVudHMge1xuICAubWZwLWJnIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKGNvbG9yKHdoaXRlKSwgLjkpO1xuICB9XG59XG5cbi5jYWxlbmRhcl9fZGF5LWFqYXgge1xuICBtYXJnaW4tcmlnaHQ6IDYwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLW1kKSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5jYWxlbmRhcl9fZGF5LWFqYXgtY29udGVudCB7XG4gICAgd2lkdGg6IDQwMHB4O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAyMHB4KTtcbiAgICBwYWRkaW5nOiAyMHB4IDVweCAyMHB4IDIwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgYmFja2dyb3VuZDogY29sb3Iod2hpdGUpO1xuICAgIC8vIGJveC1zaGFkb3c6IDAgMCAyMHB4IDBweCByZ2JhKGNvbG9yKGJsYWNrKSwgMC4yNSk7XG4gICAgYm9yZGVyOiAycHggc29saWQgY29sb3IoZ3JheSwgZGFyayk7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNjBweCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLW1kKSB7XG4gICAgICBoZWlnaHQ6IDgwdmg7XG4gICAgfVxuXG4gICAgLmxjLWV2ZW50LS11cGNvbWluZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIH1cblxuICAgIC5jYWxlbmRhcl9fZGF5LXRpdGxlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuICB9XG5cbiAgLmNhbGVuZGFyX19kYXktYWpheC13cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxuXG4gIC5jYWxlbmRhcl9fZGF5LXdyYXAtLWFkZGl0aW9uYWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgLmNhbGVuZGFyX19kYXktLWFqYXgge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi5taWNyb21vZGFsIHtcbiAgLmNhbGVuZGFyX19kYXktYWpheCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmNhbGVuZGFyX19kYXktYWpheCAuY2FsZW5kYXJfX2RheS1hamF4LWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAuY2FsZW5kYXJfX2RheS1hamF4LXdyYXAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmNhbGVuZGFyIHtcbiAgLmNhbGVuZGFyX19kYXktbG9hZCB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteHM7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmQtc207XG4gIH1cbn1cblxuLmJsb2NrLWxjLWNhbGVuZGFyIHtcbiAgLmNhbGVuZGFyX19saW5rcyAuY2FsZW5kYXJfX2xpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgfVxufVxuXG4ubGMtc2tpcC1idXR0b24ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1zbSkge1xuICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGU7XG4gIH1cblxuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogJHBhZGRpbmctbWQ7XG4gIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLW1kO1xufVxuXG4uY2FsZW5kYXItLW1vbnRoLS1zdXBwcmVzcy1leGNlc3MtZXZlbnRzIC5jYWxlbmRhcl9fZGF5LS1vdXRzaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1zbSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCIubWljcm9tb2RhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7IH1cblxuLm1pY3JvbW9kYWwtY29udGFpbmVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWF4LXdpZHRoOiA5MDBweDtcbiAgbWF4LWhlaWdodDogMTAwdmg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG4ubWljcm9tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5taWNyb21vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubWljcm9tb2RhbC1jbG9zZSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwOyB9XG5cbi5taWNyb21vZGFsLWhlYWRlciAubWljcm9tb2RhbC1jbG9zZTo6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcMjcxNSc7IH1cblxuLm1pY3JvbW9kYWwtY29udGVudCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cblxuLm1pY3JvbW9kYWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5taWNyb21vZGFsLmlzLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubGMtbGluay1uby13cmFwIHtcbiAgd29yZC1icmVhazogYnJlYWstYWxsOyB9XG5cbi5sYy10ZXh0LXN1Y2Nlc3Mge1xuICBjb2xvcjogIzAwN2I2OTsgfVxuXG4ubGMtdGV4dC1kYW5nZXIge1xuICBjb2xvcjogI2UwNTU1NDsgfVxuXG4ubGMtc2Nyb2xsLW1lc3NhZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2QyZDNkNTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sYy1zY3JvbGwtbWVzc2FnZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmxjLXNjcm9sbC1tZXNzYWdlLWFsd2F5cy1kaXNwbGF5IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmxjLWZvbnQtd2VpZ2h0LWJvbGQge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5sYy1kLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZTsgfVxuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4uY2FsZW5kYXItLXVwY29taW5nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5jYWxlbmRhci0tdXBjb21pbmcgLmV2ZW50LWNhcmQge1xuICAgIG1hcmdpbjogMDsgfVxuICAuY2FsZW5kYXItLXVwY29taW5nIC5jYWxlbmRhcl9faXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDAgMTBweDtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmNhbGVuZGFyLS11cGNvbWluZyAuY2FsZW5kYXJfX2l0ZW0ge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMTBweCAxMHB4OyB9XG4gICAgICAgIC5jYWxlbmRhci0tdXBjb21pbmcgLmNhbGVuZGFyX19pdGVtOm50aC1jaGlsZCgybisxKSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNhbGVuZGFyLS11cGNvbWluZyAuY2FsZW5kYXJfX2l0ZW0ge1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMTBweDsgfVxuICAgICAgICAuY2FsZW5kYXItLXVwY29taW5nIC5jYWxlbmRhcl9faXRlbTpudGgtY2hpbGQoMm4rMSkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDsgfVxuICAgICAgICAuY2FsZW5kYXItLXVwY29taW5nIC5jYWxlbmRhcl9faXRlbTpudGgtY2hpbGQoM24rMSkge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgICAgLmNhbGVuZGFyLS11cGNvbWluZyAuY2FsZW5kYXJfX2l0ZW06bnRoLWNoaWxkKDNuKSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLyoqXG4gKiBDYWxlbmRhciBtb250aCBkaXNwbGF5LlxuICpcbiAqIEFsbCBwYWRkaW5nIGFuZCBmb250LXNpemVzIGluIHRoZSBtb250aCBkaXNwbGF5XG4gKiBzaG91bGQgdXNlcyBlbSB1bml0cyAobm90IHJlbSBvciBweCksIGFzIGRlZmluZWRcbiAqIGluIHRoZSBjYWxlbmRhciBjb21wb25lbnQncyBsb2NhbCB2YXJpYWJsZXMgcGFydGlhbC5cbiAqIFRoZSByZWFzb25pbmcgZm9yIHRoYXQgaXMgc28gdGhhdCBmb250LXNpemVzIGNhbiBiZVxuICogZGVmaW5lZCByZWxhdGl2ZSB0byBlYWNoIG90aGVyLCBhbmQgdGhlbiB0aGUgb3ZlcmFsbFxuICogZm9udC9wYWRkaW5nIHNpemVzIG9mIHRoZSBjYWxlbmRhciBjYW4gYmUgYWRqdXN0ZWRcbiAqIHByb3BvcnRpb25hbGx5IHdoaWxlIG9ubHkgbW9kaWZ5aW5nIHRoZSByb290IGZvbnRcbiAqIHNpemUgb24gdGhlIC5jYWxlbmRhci0tbW9udGggY29udGFpbmVyLlxuICovXG4uY2FsZW5kYXItLW1vbnRoIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNhbGVuZGFyLS1tb250aCAuZGVza3RvcC1oaWRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuY2FsZW5kYXItLW1vbnRoIC5tb2JpbGUtaGlkZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY2FsZW5kYXItLW1vbnRoIC5tb2JpbGUtaGlkZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgY2xpcDogYXV0bzsgfSB9XG4gIC5jYWxlbmRhci0tbW9udGggLmV2ZW50LWNhcmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuY2FsZW5kYXItLW1vbnRoIC5sYy1ldmVudF9fcmVnaXN0cmF0aW9uLWljb24tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5jYWxlbmRhci0tbW9udGggLmxjLWV2ZW50X19yZWdpc3RyYXRpb24taWNvbixcbiAgLmNhbGVuZGFyLS1tb250aCAubGMtZXZlbnRfX3JlZ2lzdHJhdGlvbi1wYXltZW50LWljb24ge1xuICAgIG1hcmdpbjogLjVyZW0gMXJlbSAuNXJlbSAwOyB9XG5cbi5jYWxlbmRhcl9fd2VlayAuZXZlbnQtY2FyZF9fdGl0bGUsXG4uY2FsZW5kYXJfX3dlZWsgLmV2ZW50LWNhcmRfX2RldGFpbHMsXG4uY2FsZW5kYXJfX3dlZWsgLmV2ZW50LWNhcmRfX3Jvb20ge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jYWxlbmRhcl9fd2VlayAuZXZlbnQtY2FyZF9fdGl0bGUsXG4gICAgLmNhbGVuZGFyX193ZWVrIC5ldmVudC1jYXJkX19kZXRhaWxzLFxuICAgIC5jYWxlbmRhcl9fd2VlayAuZXZlbnQtY2FyZF9fcm9vbSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIGNsaXA6IGF1dG87IH0gfVxuXG4uY2FsZW5kYXItLW1vbnRoIC5oYXMtZXZlbnRzLFxuLmNhbGVuZGFyLS13ZWVrIC5oYXMtZXZlbnRzLFxuLmNhbGVuZGFyLS1kYXkgLmhhcy1ldmVudHMsXG4uY2FsZW5kYXJfX3dlZWsgLmhhcy1ldmVudHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmOyB9XG5cbi5jYWxlbmRhci0tbW9udGggLm5vZGUtLXR5cGUtbGMtY2xvc2luZyxcbi5jYWxlbmRhci0td2VlayAubm9kZS0tdHlwZS1sYy1jbG9zaW5nLFxuLmNhbGVuZGFyLS1kYXkgLm5vZGUtLXR5cGUtbGMtY2xvc2luZyxcbi5jYWxlbmRhcl9fd2VlayAubm9kZS0tdHlwZS1sYy1jbG9zaW5nIHtcbiAgYm9yZGVyOiAzcHggc29saWQgI2UwNTU1NDsgfVxuXG4uY2FsZW5kYXItLW1vbnRoIC5ub2RlLS10eXBlLWxjLXJlc2VydmF0aW9uLFxuLmNhbGVuZGFyLS13ZWVrIC5ub2RlLS10eXBlLWxjLXJlc2VydmF0aW9uLFxuLmNhbGVuZGFyLS1kYXkgLm5vZGUtLXR5cGUtbGMtcmVzZXJ2YXRpb24sXG4uY2FsZW5kYXJfX3dlZWsgLm5vZGUtLXR5cGUtbGMtcmVzZXJ2YXRpb24ge1xuICBib3JkZXI6IDNweCBzb2xpZCAjMDA3YjY5OyB9XG5cbi5jYWxlbmRhci0tbW9udGggLmFsbC1kYXksXG4uY2FsZW5kYXItLXdlZWsgLmFsbC1kYXksXG4uY2FsZW5kYXItLWRheSAuYWxsLWRheSxcbi5jYWxlbmRhcl9fd2VlayAuYWxsLWRheSB7XG4gIGJvcmRlcjogM3B4IHNvbGlkICMwMDk4ZGI7IH1cblxuLmNhbGVuZGFyLS1tb250aCAucHJpdmF0ZS1ldmVudCxcbi5jYWxlbmRhci0td2VlayAucHJpdmF0ZS1ldmVudCxcbi5jYWxlbmRhci0tZGF5IC5wcml2YXRlLWV2ZW50LFxuLmNhbGVuZGFyX193ZWVrIC5wcml2YXRlLWV2ZW50IHtcbiAgYm9yZGVyOiAzcHggc29saWQgIzMxODA5ZjsgfVxuXG4uY2FsZW5kYXItLW1vbnRoIC5oYXMtY29uZmxpY3QsXG4uY2FsZW5kYXItLXdlZWsgLmhhcy1jb25mbGljdCxcbi5jYWxlbmRhci0tZGF5IC5oYXMtY29uZmxpY3QsXG4uY2FsZW5kYXJfX3dlZWsgLmhhcy1jb25mbGljdCB7XG4gIGJvcmRlcjogM3B4IHNvbGlkICM5MDM5ODY7IH1cblxuLmNhbGVuZGFyLS1tb250aCAubW9kZXJhdGlvbi1zdGF0ZS0tYXJjaGl2ZWQsXG4uY2FsZW5kYXItLW1vbnRoIC5tb2RlcmF0aW9uLXN0YXRlLS1kcmFmdCxcbi5jYWxlbmRhci0tbW9udGggLm1vZGVyYXRpb24tc3RhdGUtLWxjLWRyYWZ0LFxuLmNhbGVuZGFyLS1tb250aCAubW9kZXJhdGlvbi1zdGF0ZS0tbGNfZHJhZnQsXG4uY2FsZW5kYXItLXdlZWsgLm1vZGVyYXRpb24tc3RhdGUtLWFyY2hpdmVkLFxuLmNhbGVuZGFyLS13ZWVrIC5tb2RlcmF0aW9uLXN0YXRlLS1kcmFmdCxcbi5jYWxlbmRhci0td2VlayAubW9kZXJhdGlvbi1zdGF0ZS0tbGMtZHJhZnQsXG4uY2FsZW5kYXItLXdlZWsgLm1vZGVyYXRpb24tc3RhdGUtLWxjX2RyYWZ0LFxuLmNhbGVuZGFyLS1kYXkgLm1vZGVyYXRpb24tc3RhdGUtLWFyY2hpdmVkLFxuLmNhbGVuZGFyLS1kYXkgLm1vZGVyYXRpb24tc3RhdGUtLWRyYWZ0LFxuLmNhbGVuZGFyLS1kYXkgLm1vZGVyYXRpb24tc3RhdGUtLWxjLWRyYWZ0LFxuLmNhbGVuZGFyLS1kYXkgLm1vZGVyYXRpb24tc3RhdGUtLWxjX2RyYWZ0LFxuLmNhbGVuZGFyX193ZWVrIC5tb2RlcmF0aW9uLXN0YXRlLS1hcmNoaXZlZCxcbi5jYWxlbmRhcl9fd2VlayAubW9kZXJhdGlvbi1zdGF0ZS0tZHJhZnQsXG4uY2FsZW5kYXJfX3dlZWsgLm1vZGVyYXRpb24tc3RhdGUtLWxjLWRyYWZ0LFxuLmNhbGVuZGFyX193ZWVrIC5tb2RlcmF0aW9uLXN0YXRlLS1sY19kcmFmdCB7XG4gIGJvcmRlcjogM3B4IHNvbGlkICMzMzM7IH1cblxuLmNhbGVuZGFyLS1tb250aCAubW9kZXJhdGlvbi1zdGF0ZS0tZHJhZnQsXG4uY2FsZW5kYXItLW1vbnRoIC5tb2RlcmF0aW9uLXN0YXRlLS1sYy1kcmFmdCxcbi5jYWxlbmRhci0tbW9udGggLm1vZGVyYXRpb24tc3RhdGUtLWxjX2RyYWZ0LFxuLmNhbGVuZGFyLS13ZWVrIC5tb2RlcmF0aW9uLXN0YXRlLS1kcmFmdCxcbi5jYWxlbmRhci0td2VlayAubW9kZXJhdGlvbi1zdGF0ZS0tbGMtZHJhZnQsXG4uY2FsZW5kYXItLXdlZWsgLm1vZGVyYXRpb24tc3RhdGUtLWxjX2RyYWZ0LFxuLmNhbGVuZGFyLS1kYXkgLm1vZGVyYXRpb24tc3RhdGUtLWRyYWZ0LFxuLmNhbGVuZGFyLS1kYXkgLm1vZGVyYXRpb24tc3RhdGUtLWxjLWRyYWZ0LFxuLmNhbGVuZGFyLS1kYXkgLm1vZGVyYXRpb24tc3RhdGUtLWxjX2RyYWZ0LFxuLmNhbGVuZGFyX193ZWVrIC5tb2RlcmF0aW9uLXN0YXRlLS1kcmFmdCxcbi5jYWxlbmRhcl9fd2VlayAubW9kZXJhdGlvbi1zdGF0ZS0tbGMtZHJhZnQsXG4uY2FsZW5kYXJfX3dlZWsgLm1vZGVyYXRpb24tc3RhdGUtLWxjX2RyYWZ0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjRmNDsgfVxuXG4uY2FsZW5kYXJfX251bWJlcnMgLmNhbGVuZGFyX19kYXkuY2FsZW5kYXJfX2RheS0tY3VycmVudCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc4ODk4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIGVhc2UtaW4tb3V0IDI1MG1zOyB9XG5cbi8qKlxuICogSGVhZGVyIGFuZCBwYWdlclxuICpcbiAqIFRoZSBoZWFkZXIgYW5kIHBhZ2VyIHVzZSBmbGV4Ym94IHRvXG4gKiBsYXlvdXQgYW5kIHZlcnRpY2FsbHkgY2VudGVyIHRoZSBoZWFkZXJcbiAqIGl0ZW1zLlxuICovXG4uY2FsZW5kYXItLW1vbnRoIC5jYWxlbmRhcl9fd3JhcC0taGVhZGVyIC5jYWxlbmRhcl9fbW9udGgtcGFnZXIsXG4uY2FsZW5kYXItLW1vbnRoIC5jYWxlbmRhcl9fbW9udGgtcGFnZXItLWxvd2VyLFxuLmNhbGVuZGFyLXdlZWstcGFnZXIsXG4uY2FsZW5kYXItZGF5LXBhZ2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX193cmFwLS1oZWFkZXIgLmNhbGVuZGFyX19tb250aC1wYWdlcixcbiAgICAuY2FsZW5kYXItLW1vbnRoIC5jYWxlbmRhcl9fbW9udGgtcGFnZXItLWxvd2VyLFxuICAgIC5jYWxlbmRhci13ZWVrLXBhZ2VyLFxuICAgIC5jYWxlbmRhci1kYXktcGFnZXIge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gICAgICAuY2FsZW5kYXItLW1vbnRoIC5jYWxlbmRhcl9fd3JhcC0taGVhZGVyIC5jYWxlbmRhcl9fbW9udGgtcGFnZXIuY2FsZW5kYXJfX21vbnRoLXBhZ2VyLS1sb3dlcixcbiAgICAgIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19tb250aC1wYWdlci0tbG93ZXIuY2FsZW5kYXJfX21vbnRoLXBhZ2VyLS1sb3dlcixcbiAgICAgIC5jYWxlbmRhci13ZWVrLXBhZ2VyLmNhbGVuZGFyX19tb250aC1wYWdlci0tbG93ZXIsXG4gICAgICAuY2FsZW5kYXItZGF5LXBhZ2VyLmNhbGVuZGFyX19tb250aC1wYWdlci0tbG93ZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG4gIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX193cmFwLS1oZWFkZXIgLmNhbGVuZGFyX19tb250aC1wYWdlciAubW9iaWxlLWhpZGUsXG4gIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19tb250aC1wYWdlci0tbG93ZXIgLm1vYmlsZS1oaWRlLFxuICAuY2FsZW5kYXItd2Vlay1wYWdlciAubW9iaWxlLWhpZGUsXG4gIC5jYWxlbmRhci1kYXktcGFnZXIgLm1vYmlsZS1oaWRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX193cmFwLS1oZWFkZXIgLmNhbGVuZGFyX19tb250aC1wYWdlciAubW9iaWxlLWhpZGUsXG4gICAgICAuY2FsZW5kYXItLW1vbnRoIC5jYWxlbmRhcl9fbW9udGgtcGFnZXItLWxvd2VyIC5tb2JpbGUtaGlkZSxcbiAgICAgIC5jYWxlbmRhci13ZWVrLXBhZ2VyIC5tb2JpbGUtaGlkZSxcbiAgICAgIC5jYWxlbmRhci1kYXktcGFnZXIgLm1vYmlsZS1oaWRlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9IH1cblxuLmNhbGVuZGFyX193cmFwLS1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jYWxlbmRhcl9fd3JhcC0taGVhZGVyIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuXG4uY2FsZW5kYXJfX3dyYXAtLWhlYWRlcixcbi5jYWxlbmRhcl9fd3JhcC0tdGl0bGUge1xuICBmb250LXNpemU6IDE0cHg7IH1cbiAgLmNhbGVuZGFyX193cmFwLS1oZWFkZXIgLmNhbGVuZGFyX190aXRsZSBoMixcbiAgLmNhbGVuZGFyX193cmFwLS10aXRsZSAuY2FsZW5kYXJfX3RpdGxlIGgyIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDhlbSkge1xuICAgICAgLmNhbGVuZGFyX193cmFwLS1oZWFkZXIgLmNhbGVuZGFyX190aXRsZSBoMixcbiAgICAgIC5jYWxlbmRhcl9fd3JhcC0tdGl0bGUgLmNhbGVuZGFyX190aXRsZSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5jYWxlbmRhcl9fd3JhcC0tdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uY2FsZW5kYXJfX3BhZ2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTsgfVxuICAuY2FsZW5kYXJfX3BhZ2VyOjpiZWZvcmUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29udGVudDogJyc7IH1cblxuLmNhbGVuZGFyX190aXRsZSB7XG4gIG9yZGVyOiAxO1xuICBtYXJnaW46IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmJ1dHRvbi5jYWxlbmRhcl9fcGFnZXItLWxlZnQsXG4uYnV0dG9uLmNhbGVuZGFyX19wYWdlci0tcmlnaHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDU0OWY7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIGVhc2UtaW4tb3V0IC4yNXM7IH1cbiAgLmJ1dHRvbi5jYWxlbmRhcl9fcGFnZXItLWxlZnQ6aG92ZXIsIC5idXR0b24uY2FsZW5kYXJfX3BhZ2VyLS1sZWZ0OmZvY3VzLFxuICAuYnV0dG9uLmNhbGVuZGFyX19wYWdlci0tcmlnaHQ6aG92ZXIsXG4gIC5idXR0b24uY2FsZW5kYXJfX3BhZ2VyLS1yaWdodDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxODA5ZjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHg7IH1cblxuLmJ1dHRvbi5jYWxlbmRhcl9fcGFnZXItLWxlZnQge1xuICBvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2Rpc3QvaW1hZ2VzL3BhZ2VyLWFycm93LXByZXYuc3ZnXCIpOyB9XG4gIC5idXR0b24uY2FsZW5kYXJfX3BhZ2VyLS1sZWZ0OmhvdmVyLCAuYnV0dG9uLmNhbGVuZGFyX19wYWdlci0tbGVmdDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2Rpc3QvaW1hZ2VzL3BhZ2VyLWFycm93LXByZXYuc3ZnXCIpOyB9XG5cbi5idXR0b24uY2FsZW5kYXJfX3BhZ2VyLS1yaWdodCB7XG4gIG9yZGVyOiAyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9hc3NldHMvZGlzdC9pbWFnZXMvcGFnZXItYXJyb3ctbmV4dC5zdmdcIik7IH1cbiAgLmJ1dHRvbi5jYWxlbmRhcl9fcGFnZXItLXJpZ2h0OmhvdmVyLCAuYnV0dG9uLmNhbGVuZGFyX19wYWdlci0tcmlnaHQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2Fzc2V0cy9kaXN0L2ltYWdlcy9wYWdlci1hcnJvdy1uZXh0LnN2Z1wiKTsgfVxuXG4vKipcbiAqIEdyaWQgc3R5bGluZ1xuICpcbiAqIFRoZSBncmlkIHN0eWxpbmcgZm9yIHRoZSBzaW5nbGUtZGF5IGV2ZW50XG4gKiBjZWxscyB1c2VzIGZsZXhib3ggY29udGFpbmVycyBmb3IgdGhlIHJvd1xuICogYW5kIDEvNyBvZiB0aGUgY29udGFpbmVyIGZvciB0aGUgd2lkdGggb25cbiAqIGVhY2ggaXRlbS4gVGhlIGZpcnN0IGl0ZW0gaW4gdGhlIHJvdyBpc1xuICogYWx3YXlzIHRoZSBtdWx0aS1kYXkgZXZlbnQgY2VsbCwgd2hpY2ggaXMgMTAwJVxuICogd2lkZSwgYW5kIHVzZXMgaXQncyBvd24gZ3JpZCB0byBjb250cm9sXG4gKiBsYXlvdXQgZm9yIG11bHRpLWRheSBldmVudHMuXG4gKi9cbi5jYWxlbmRhcl9fd3JhcC0tZ3JpZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAycHggc29saWQgI2QxZDFkMTsgfVxuXG4uY2FsZW5kYXJfX3Jvdy0taGVhZGVyLFxuLmNhbGVuZGFyX19yb3ctLWNvbnRlbnQsXG4uY2FsZW5kYXJfX251bWJlcnMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDhlbSkge1xuICAuY2FsZW5kYXJfX3Jvdy0tZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNhbGVuZGFyX19kYXksXG4uY2FsZW5kYXJfX2RheS0tbnVtYmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNhbGVuZGFyX19kYXksXG4gICAgLmNhbGVuZGFyX19kYXktLW51bWJlciB7XG4gICAgICB3aWR0aDogMTQuMjg1NzElOyB9IH1cblxuLmNhbGVuZGFyX19kYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNhbGVuZGFyX19kYXkge1xuICAgICAgbWluLWhlaWdodDogMjVweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jYWxlbmFyX19kYXktLW51bWJlciB7XG4gICAgbWluLWhlaWdodDogMDsgfSB9XG5cbi5jYWxlbmRhcl9fZGF5LS1oZWFkZXIge1xuICBtaW4taGVpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmNhbGVuZGFyX19kYXktLWJsYW5rIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jYWxlbmRhcl9fZGF5LS1ibGFuayB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5jYWxlbmRhcl9fcm93LS1jb250ZW50IC5jYWxlbmRhcl9fZGF5LS1ibGFuayB7XG4gIG1pbi1oZWlnaHQ6IDVyZW07IH1cblxuLmNhbGVuZGFyX19kYXktLW91dHNpZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmOyB9XG5cbi8qKlxuICogQ2FsZW5kYXIgYm9yZGVyc1xuICpcbiAqIEV4dGVybmFsIGJvcmRlcnMgYXJlIHdyYXBwZWQgYXJvdW5kIHRoZVxuICogLmNhbGVuZGFyX193ZWVrIGVsZW1lbnQsIHdoaWxlIGludGVybmFsIGJvcmRlcnNcbiAqIGFyZSBhYnNvbHV0ZWx5IHBvc2l0aW9uZWQgZW1wdHkgZGl2cy5cbiAqL1xuLmNhbGVuZGFyX193ZWVrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2QxZDFkMTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jYWxlbmRhcl9fd2VlayB7XG4gICAgICBwYWRkaW5nLXRvcDogMjVweDsgfSB9XG5cbi5jYWxlbmRhcl9fd2Vlay0tZW1wdHkge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNhbGVuZGFyX193ZWVrLS1lbXB0eSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5jYWxlbmRhcl9fYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgY29sb3I6ICNkMWQxZDE7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCwgLTFweCAwIDAgMDtcbiAgb3BhY2l0eTogLjI1OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNhbGVuZGFyX19iYXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uY2FsZW5kYXJfX2Jhci0tMSB7XG4gIGxlZnQ6IDE0LjI4NTcxJTsgfVxuXG4uY2FsZW5kYXJfX2Jhci0tMiB7XG4gIGxlZnQ6IDI4LjU3MTQzJTsgfVxuXG4uY2FsZW5kYXJfX2Jhci0tMyB7XG4gIGxlZnQ6IDQyLjg1NzE0JTsgfVxuXG4uY2FsZW5kYXJfX2Jhci0tNCB7XG4gIGxlZnQ6IDU3LjE0Mjg2JTsgfVxuXG4uY2FsZW5kYXJfX2Jhci0tNSB7XG4gIGxlZnQ6IDcxLjQyODU3JTsgfVxuXG4uY2FsZW5kYXJfX2Jhci0tNiB7XG4gIGxlZnQ6IDg1LjcxNDI5JTsgfVxuXG4vKipcbiAqIExpbmsgb3ZlcmxheXNcbiAqXG4gKiBFYWNoIGRheSBpbiB0aGUgY2FsZW5kYXIgaGFzIGFuIGFzc29jaWF0ZWQgbGlzdCBvZiBkYXlzXG4gKiB0aGF0IGlzIHN0b3JlZCBiZWxvdyB0aGUgY2FsZW5kYXIgdGhhdCBjb250YWlucyBtb3JlXG4gKiBpbmZvcm1hdGlvbi4gVG8gYWNjZXNzIHRoaXMgaW5mb3JtYXRpb24sIHRoZXJlIGFyZSBsaW5rXG4gKiBvdmVybGF5cyBwb3NpdGlvbmVkIGFic29sdXRlbHkgYWJvdmUgdGhlIGRheSBjZWxscy5cbiAqL1xuLmNhbGVuZGFyX19udW1iZXJzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE1O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNhbGVuZGFyX19udW1iZXJzIHtcbiAgICAgIGhlaWdodDogMjBweDsgfSB9XG5cbi5jYWxlbmRhcl9fbnVtYmVyLWRheS0tbXVsdGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTsgfVxuXG4vKipcbiAqIE11bHRpLWRheSBncmlkc1xuICpcbiAqIFVubGlrZSB0aGUgcmVndWxhciBncmlkIGNlbGxzIGZvciB0aGUgY2FsZW5kYXIsIHdoaWNoXG4gKiB1c2UgZmxleGJveCwgdGhlIG11bHRpLWRheSBncmlkcyB1c2UgU2luZ3VsYXJpdHkgR1Mnc1xuICogZmxvYXQgZ3JpZC1zcGFucyBzbyB0aGF0IHRoZXkgY2FuIHN0YXJ0IGF0IGFyYml0cmFyeVxuICogcG9pbnRzIHdpdGhpbiB0aGUgZ3JpZC4gQ2xlYXJpbmcgaGFzIHRvIGJlIGFwcGxpZWRcbiAqIG1hbnVhbGx5IHZpYSBhIGNsZWFyIGNsYXNzLCBhcHBsaWVkIHdoZW4gdGhlIHRlbXBsYXRlXG4gKiBpcyBmaXJzdCBnZW5lcmF0ZWQuXG4gKi9cbi5jYWxlbmRhcl9fZGF5LS1tdWx0aSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7IH1cbiAgLmNhbGVuZGFyX19kYXktLW11bHRpOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogJyc7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY2FsZW5kYXJfX2RheS0tbXVsdGkge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTEtMSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTQuMjg1NzElO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7IH1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tMS03IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogMTQuMjg1NzElO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBjbGVhcjogbm9uZTsgfVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0yLTEge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lOyB9XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTItMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjguNTcxNDMlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMTQuMjg1NzElO1xuICBjbGVhcjogbm9uZTsgfVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0yLTMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDI4LjU3MTQzJTtcbiAgY2xlYXI6IG5vbmU7IH1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tMi00IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyOC41NzE0MyU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIG1hcmdpbi1sZWZ0OiA0Mi44NTcxNCU7XG4gIGNsZWFyOiBub25lOyB9XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTItNSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjguNTcxNDMlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogNTcuMTQyODYlO1xuICBjbGVhcjogbm9uZTsgfVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0yLTYge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiAyOC41NzE0MyU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lOyB9XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTMtMSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNDIuODU3MTQlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7IH1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tMy0yIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA0Mi44NTcxNCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAxNC4yODU3MSU7XG4gIGNsZWFyOiBub25lOyB9XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTMtMyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNDIuODU3MTQlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMjguNTcxNDMlO1xuICBjbGVhcjogbm9uZTsgfVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0zLTQge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDQyLjg1NzE0JTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDQyLjg1NzE0JTtcbiAgY2xlYXI6IG5vbmU7IH1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tMy01IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogNDIuODU3MTQlO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBjbGVhcjogbm9uZTsgfVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS00LTEge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDU3LjE0Mjg2JTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lOyB9XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTQtMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNTcuMTQyODYlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMTQuMjg1NzElO1xuICBjbGVhcjogbm9uZTsgfVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS00LTMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDU3LjE0Mjg2JTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDI4LjU3MTQzJTtcbiAgY2xlYXI6IG5vbmU7IH1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tNC00IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogNTcuMTQyODYlO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBjbGVhcjogbm9uZTsgfVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS01LTEge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDcxLjQyODU3JTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lOyB9XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTUtMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNzEuNDI4NTclO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMTQuMjg1NzElO1xuICBjbGVhcjogbm9uZTsgfVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS01LTMge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiA3MS40Mjg1NyU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lOyB9XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTYtMSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogODUuNzE0MjklO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7IH1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tNi0yIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogODUuNzE0MjklO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBjbGVhcjogbm9uZTsgfVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS03LTEge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBjbGVhcjogbm9uZTsgfVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuIHtcbiAgcGFkZGluZzogMCAuOHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gICAgLmNhbGVuZGFyX19kYXktc3BhbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tY2xlYXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4vKipcbiAqIENhbGVuZGFyIExpc3QgU3R5bGluZ1xuICpcbiAqIEluIGFkZGl0aW9uIHRvIHRoZSAzMC1kYXkgZ3JpZCwgdGhlcmUncyBhIGxpc3Qgdmlld1xuICogZm9yIGVhc2llciB1c2FnZSBvbiBtb2JpbGUgdGhhdCBhcHBlYXJzIGJlbG93IHRoZVxuICogbm9ybWFsIDMwLWRheSBjYWxlbmRhci4gSXQncyBicm91Z2h0IHVwIGEgZml4ZWRcbiAqIHBvc2l0aW9uIHdoZW5ldmVyIHRoZSB1c2VyIHRvdWNoZXMgaXQncyBhc3NvY2lhdGVkXG4gKiBkYXkgb24gdGhlIGNhbGVuZGFyIGdyaWQuXG4gKi9cbi5jYWxlbmRhcl9fZGF5LWhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY2FsZW5kYXJfX2RheS1oZWFkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5jYWxlbmRhcl9fbW9iaWxlLWxpc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSk7XG4gIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLWluLW91dDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfVxuICAuY2FsZW5kYXJfX21vYmlsZS1saXN0Lmxpc3Qge1xuICAgIHotaW5kZXg6IDUwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgLmNhbGVuZGFyX19tb2JpbGUtbGlzdCAuZXZlbnQtY2FyZC0tc3BhcnNlIC50aW1lLS1lbmQsXG4gIC5jYWxlbmRhcl9fbW9iaWxlLWxpc3QgLmV2ZW50LWNhcmQtLXNwYXJzZSAudGltZS0tc2VwYXJhdG9yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bzsgfVxuICAuY2FsZW5kYXJfX21vYmlsZS1saXN0IC5ldmVudC1jYXJkLS1zcGFyc2UgLnRpbWUtLXN0YXJ0IC5ldmVudC1jYXJkX19kYXktLWlubGluZSxcbiAgLmNhbGVuZGFyX19tb2JpbGUtbGlzdCAuZXZlbnQtY2FyZC0tc3BhcnNlIC50aW1lLS1zdGFydCAuZXZlbnQtY2FyZF9fc2VwYXJhdG9yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bzsgfVxuXG4uY2FsZW5kYXJfX2xpc3QsXG4uY2FsZW5kYXJfX2xpc3QtaXRlbSxcbi5jYWxlbmRhcl9fbGlzdC0tZGF5LFxuLmNhbGVuZGFyX19saXN0LWl0ZW0tLWRheSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG5cbi5jYWxlbmRhcl9fbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHBhZGRpbmc6IDE1cHggMDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkMWQxZDE7IH1cblxuLmNhbGVuZGFyX19saXN0LXRpdGxlIHtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5jYWxlbmRhcl9fbGlzdC0tZGF5IHtcbiAgZmxleC1ncm93OiAxOyB9XG5cbi5raWRzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmJkMGE7XG4gIGJvcmRlci1jb2xvcjogI2UxOWYwMDsgfVxuICAua2lkcyBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzRhYWNhMjsgfVxuICAua2lkcyBoMixcbiAgLmtpZHMgaDMsXG4gIC5raWRzIGg0IHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4udGVlbnMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNkNDI0NjtcbiAgYm9yZGVyLWNvbG9yOiAjMWYyNDI4OyB9XG4gIC50ZWVucyBoMixcbiAgLnRlZW5zIGgzLFxuICAudGVlbnMgaDQge1xuICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5hZHVsdCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGFhY2EyO1xuICBib3JkZXItY29sb3I6ICMyYzhlODQ7IH1cbiAgLmFkdWx0IGgyLFxuICAuYWR1bHQgaDMsXG4gIC5hZHVsdCBoNCB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLmFkdWx0IGEge1xuICAgIGNvbG9yOiAjNTdiN2RmOyB9XG4gICAgLmFkdWx0IGE6Zm9jdXMsIC5hZHVsdCBhOmhvdmVyLCAuYWR1bHQgYTphY3RpdmUge1xuICAgICAgY29sb3I6ICNmZmJkMGE7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmNhbGVuZGFyLXBpY2tlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmNhbGVuZGFyLXBpY2tlci10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjA7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5jYWxlbmRhci1waWNrZXItdGl0bGUgaDIge1xuICBtYXJnaW46IDA7IH1cblxuLmNhbGVuZGFyLXBpY2tlci1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgb3BhY2l0eTogMDsgfVxuICAuY2FsZW5kYXItcGlja2VyLmFjdGl2ZSAuY2FsZW5kYXItcGlja2VyLWlucHV0IHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2UtaW4tb3V0IC4yNXMsIG9wYWNpdHkgZWFzZS1pbi1vdXQgLjI1cztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOyB9XG5cbi5jYWxlbmRhcl9fbW9udGgtcGFnZXItLWxvd2VyIHtcbiAgbWFyZ2luLWJvdHRvbTogMi4ycmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNhbGVuZGFyX19tb250aC1wYWdlci0tbG93ZXIge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmNhbGVuZGFyLXBpY2tlci1saW5rLS1sb3dlciB7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jYWxlbmRhci1waWNrZXItbGluay0tbG93ZXIge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cbiAgLmNhbGVuZGFyLXBpY2tlci1saW5rLS1sb3dlciBwIHtcbiAgICBtYXJnaW46IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNhbGVuZGFyX19wYWdlci0tcmlnaHQtbG93ZXIge1xuICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5pZTEwIC5jYWxlbmRhci0tbW9udGggLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIuZXZlbnQtY2FyZC0tc3BhcnNlLFxuLmllMTEgLmNhbGVuZGFyLS1tb250aCAubm9kZS0tdmlldy1tb2RlLXRlYXNlci5ldmVudC1jYXJkLS1zcGFyc2Uge1xuICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuXG4uaWUxMCAuY2FsZW5kYXJfX3dyYXAtLWhlYWRlcixcbi5pZTExIC5jYWxlbmRhcl9fd3JhcC0taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmllMTAgLmNhbGVuZGFyX193cmFwLS1oZWFkZXI6OmFmdGVyLFxuICAuaWUxMSAuY2FsZW5kYXJfX3dyYXAtLWhlYWRlcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5pZTEwIC5jYWxlbmRhcl9fd3JhcC0taGVhZGVyIC50YWJzLFxuICAuaWUxMSAuY2FsZW5kYXJfX3dyYXAtLWhlYWRlciAudGFicyB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuaWUxMCAuY2FsZW5kYXJfX3dyYXAtLWhlYWRlciAuY2FsZW5kYXJfX21vbnRoLXBhZ2VyLFxuICAgIC5pZTExIC5jYWxlbmRhcl9fd3JhcC0taGVhZGVyIC5jYWxlbmRhcl9fbW9udGgtcGFnZXIge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5pZTEwIC5jYWxlbmRhcl9fd3JhcC0taGVhZGVyIC5jYWxlbmRhcl9fbWVudS10YXNrcyxcbiAgICAuaWUxMSAuY2FsZW5kYXJfX3dyYXAtLWhlYWRlciAuY2FsZW5kYXJfX21lbnUtdGFza3Mge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmllMTAgLmNhbGVuZGFyX193cmFwLS10aWx0ZSxcbiAgLmllMTEgLmNhbGVuZGFyX193cmFwLS10aWx0ZSB7XG4gICAgY2xlYXI6IGJvdGg7IH0gfVxuXG4ubGMtZm9ybS0tY2FsZW5kYXItZmlsdGVycyAucGFnZXJfX2l0ZW1zIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxjLWZvcm0tLWNhbGVuZGFyLWZpbHRlcnMgLnBhZ2VyX19pdGVtcyB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG5cbi5jYWxlbmRhci1waWNrZXItaW5wdXQtLWxvd2VyIHtcbiAgei1pbmRleDogMTsgfVxuXG4uY2FsZW5kYXJfX21vbnRoLXBhZ2VyLS1sb3dlciAuY2FsZW5kYXJfX3BhZ2VyIHtcbiAgei1pbmRleDogMjsgfVxuXG4ubGMtZm9ybV9fY29udGVudCB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxjLWZvcm1fX2NvbnRlbnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgIC5sYy1mb3JtX19jb250ZW50LmFjdGl2ZSB7XG4gICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5pZSAuY2FsZW5kYXJfX3dyYXAtLXRpdGxlIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5pZSAuY2FsZW5kYXJfX3RpdGxlIHtcbiAgei1pbmRleDogMTsgfVxuXG4uaWUgLmNhbGVuZGFyX19wYWdlciB7XG4gIHotaW5kZXg6IDI7IH1cblxuc3Bhbi5sYy1ldmVudF9fYWdlLWdyb3VwLmxjLWV2ZW50X19hZ2UtZ3JvdXAtLWNoaWxkLmxjLWV2ZW50X19hZ2UtZ3JvdXAtLW5vLWxpbmsge1xuICBjb2xvcjogIzMzMzsgfVxuXG4uY2FsZW5kYXJfX2RheS1hamF4LndoaXRlLXBvcHVwIC5tZnAtY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDVweDtcbiAgei1pbmRleDogMTAwMDA7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY2FsZW5kYXJfX2RheS1hamF4LndoaXRlLXBvcHVwIC5tZnAtY2xvc2Uge1xuICAgICAgdG9wOiAtMTBweDtcbiAgICAgIHJpZ2h0OiA1cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jYWxlbmRhcl9fZGF5LWFqYXgud2hpdGUtcG9wdXAgLm1mcC1jbG9zZSB7XG4gICAgICB0b3A6IC0xNXB4O1xuICAgICAgcmlnaHQ6IDVweDsgfSB9XG4gIC5jYWxlbmRhcl9fZGF5LWFqYXgud2hpdGUtcG9wdXAgLm1mcC1jbG9zZTpob3ZlciwgLmNhbGVuZGFyX19kYXktYWpheC53aGl0ZS1wb3B1cCAubWZwLWNsb3NlOmZvY3VzIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5jYWxlbmRhcl9fZGF5LWFqYXgud2hpdGUtcG9wdXAgLm1mcC1jbG9zZTpob3ZlciwgLmNhbGVuZGFyX19kYXktYWpheC53aGl0ZS1wb3B1cCAubWZwLWNsb3NlOmZvY3VzIHtcbiAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgcmlnaHQ6IDVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jYWxlbmRhcl9fZGF5LWFqYXgud2hpdGUtcG9wdXAgLm1mcC1jbG9zZTpob3ZlciwgLmNhbGVuZGFyX19kYXktYWpheC53aGl0ZS1wb3B1cCAubWZwLWNsb3NlOmZvY3VzIHtcbiAgICAgICAgdG9wOiAtMTVweDtcbiAgICAgICAgcmlnaHQ6IDVweDsgfSB9XG5cbi5wYXRoLWV2ZW50cyAubWZwLWJnIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpOyB9XG5cbi5jYWxlbmRhcl9fZGF5LWFqYXgge1xuICBtYXJnaW4tcmlnaHQ6IDYwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY2FsZW5kYXJfX2RheS1hamF4IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNhbGVuZGFyX19kYXktYWpheCB7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgLmNhbGVuZGFyX19kYXktYWpheCAuY2FsZW5kYXJfX2RheS1hamF4LWNvbnRlbnQge1xuICAgIHdpZHRoOiA0MDBweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjBweCk7XG4gICAgcGFkZGluZzogMjBweCA1cHggMjBweCAyMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzMzMztcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5jYWxlbmRhcl9fZGF5LWFqYXggLmNhbGVuZGFyX19kYXktYWpheC1jb250ZW50IHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNjBweCk7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY2FsZW5kYXJfX2RheS1hamF4IC5jYWxlbmRhcl9fZGF5LWFqYXgtY29udGVudCB7XG4gICAgICAgIGhlaWdodDogODB2aDsgfSB9XG4gICAgLmNhbGVuZGFyX19kYXktYWpheCAuY2FsZW5kYXJfX2RheS1hamF4LWNvbnRlbnQgLmxjLWV2ZW50LS11cGNvbWluZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4OyB9XG4gICAgLmNhbGVuZGFyX19kYXktYWpheCAuY2FsZW5kYXJfX2RheS1hamF4LWNvbnRlbnQgLmNhbGVuZGFyX19kYXktdGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgLmNhbGVuZGFyX19kYXktYWpheCAuY2FsZW5kYXJfX2RheS1hamF4LXdyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG4gIC5jYWxlbmRhcl9fZGF5LWFqYXggLmNhbGVuZGFyX19kYXktd3JhcC0tYWRkaXRpb25hbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgICAuY2FsZW5kYXJfX2RheS1hamF4IC5jYWxlbmRhcl9fZGF5LXdyYXAtLWFkZGl0aW9uYWwgLmNhbGVuZGFyX19kYXktLWFqYXgge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cblxuLm1pY3JvbW9kYWwgLmNhbGVuZGFyX19kYXktYWpheCB7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG4ubWljcm9tb2RhbCAuY2FsZW5kYXJfX2RheS1hamF4IC5jYWxlbmRhcl9fZGF5LWFqYXgtY29udGVudCB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubWljcm9tb2RhbCAuY2FsZW5kYXJfX2RheS1hamF4LXdyYXAge1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5jYWxlbmRhciAuY2FsZW5kYXJfX2RheS1sb2FkIHtcbiAgcGFkZGluZzogNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG4uYmxvY2stbGMtY2FsZW5kYXIgLmNhbGVuZGFyX19saW5rcyAuY2FsZW5kYXJfX2xpbmsge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG5cbi5sYy1za2lwLWJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxjLXNraXAtYnV0dG9uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IC0xcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgICAgIGJvcmRlcjogMDsgfVxuICAgICAgLmxjLXNraXAtYnV0dG9uOmFjdGl2ZSwgLmxjLXNraXAtYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgY2xpcDogYXV0bzsgfSB9XG5cbi5jYWxlbmRhci0tbW9udGgtLXN1cHByZXNzLWV4Y2Vzcy1ldmVudHMgLmNhbGVuZGFyX19kYXktLW91dHNpZGUge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNhbGVuZGFyLS1tb250aC0tc3VwcHJlc3MtZXhjZXNzLWV2ZW50cyAuY2FsZW5kYXJfX2RheS0tb3V0c2lkZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5jYWxlbmRhcl9fbnVtYmVycyB7XG4gIHotaW5kZXg6IDA7IH1cblxuLmxjLXdlZWsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG92ZXJmbG93OiBzY3JvbGw7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGMtd2VlayB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDsgfSB9XG4gIC5sYy13ZWVrIC5sYy13ZWVrLWRheSB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAubGMtd2VlayAubGMtd2Vlay1kYXktY29sIHtcbiAgICB3aWR0aDogMTIuNSU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxjLXdlZWsgLmxjLXdlZWstZGF5LWNvbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgICAubGMtd2VlayAubGMtd2Vlay1kYXktY29sLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmOyB9XG4gIC5sYy13ZWVrIC5sYy13ZWVrLXRpbWUgLmFsbC1kYXktcm93IHtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgLmxjLXdlZWsgLmxjLXdlZWstdGltZS1jb2wge1xuICAgIHdpZHRoOiAxMi41JTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGMtd2VlayAubGMtd2Vlay10aW1lLWNvbCB7XG4gICAgICAgIHdpZHRoOiAxMCU7IH0gfVxuICAubGMtd2VlayB0aCxcbiAgLmxjLXdlZWsgdGQge1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDJkM2Q1OyB9XG4gIC5sYy13ZWVrIHRib2R5IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDsgfVxuICAgIC5sYy13ZWVrIHRib2R5ICsgdGJvZHkge1xuICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNkMmQzZDU7IH1cbiAgLmxjLXdlZWsgdGQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDJkM2Q1OyB9XG4gIC5sYy13ZWVrIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNkZWUyZTY7IH1cblxuLmxjLWRheSAuYWxsLWRheS1yb3csIC5sYy1kYXkgLmxjLWRheS1yb29tLWNvbDpmaXJzdC1vZi10eXBlLCAubGMtZGF5IC5sYy1kYXktdGltZSB0aCB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHotaW5kZXg6IDM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLmxjLWRheSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNkMmQzZDU7XG4gIGJvcmRlci1sZWZ0OiAycHggc29saWQgI2QyZDNkNTsgfVxuICAubGMtZGF5IHRoLFxuICAubGMtZGF5IHRkIHtcbiAgICBib3JkZXI6IDA7IH1cbiAgLmxjLWRheSB0aCxcbiAgLmxjLWRheSB0ZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgI2QyZDNkNTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2QyZDNkNTsgfVxuICAubGMtZGF5IC5sYy1kYXktcm9vbSB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAubGMtZGF5IC5sYy1kYXktYnJhbmNoLWNvbCB7XG4gICAgZm9udC1zaXplOiBsYXJnZTsgfVxuICAubGMtZGF5IC5sYy1kYXktYnJhbmNoLWNvbCxcbiAgLmxjLWRheSAubGMtZGF5LXJvb20tY29sIHtcbiAgICB3aWR0aDogMTIuNSU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxjLWRheSAubGMtZGF5LWJyYW5jaC1jb2wsXG4gICAgICAubGMtZGF5IC5sYy1kYXktcm9vbS1jb2wge1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gICAgLmxjLWRheSAubGMtZGF5LWJyYW5jaC1jb2wuYWN0aXZlLFxuICAgIC5sYy1kYXkgLmxjLWRheS1yb29tLWNvbC5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjsgfVxuICAubGMtZGF5IHRoLFxuICAubGMtZGF5IHRkIHtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmxjLWRheSB0Ym9keSB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7IH1cbiAgLmxjLWRheSB0aGVhZCB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuICAubGMtZGF5IC5ldmVudC1jYXJkIHtcbiAgICBtaW4td2lkdGg6IDE3NXB4OyB9XG4gIC5sYy1kYXkgdHI6bm90KC5sYy1kYXktYWxsLWRheS1yb3cpIC5ldmVudC1jYXJkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7IH1cbiAgLmxjLWRheSAuYWxsLWRheS1yb3cge1xuICAgIGxlZnQ6IDA7IH1cbiAgLmxjLWRheSAubGMtZGF5LXJvb20tY29sOmZpcnN0LW9mLXR5cGUge1xuICAgIGxlZnQ6IDA7IH1cbiAgLmxjLWRheSAubGMtZGF5LXRpbWUgdGgge1xuICAgIGxlZnQ6IDA7IH1cblxuLmxjLW1lbnUtdGFza3Mge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubGMtbWVudS10YXNrcyBhIHtcbiAgICBwYWRkaW5nOiAxMHB4OyB9XG5cbi8qIFJlZ2lzdHJhdGlvbiBOb3RpZmljYXRpb25zICovXG4ubGMtbWVzc2FnZXNfX21lc3NhZ2Uge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyZDNkNTsgfVxuXG4ubGMtZGF0ZS1pY29uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4ubGMtZGF0ZS1pY29uX19pdGVtIHtcbiAgd2lkdGg6IDMuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMDA1NDlmO1xuICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi5sYy1kYXRlLWljb25fX2l0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDA1NDlmOyB9XG5cbi5kYXRlLWljb25fX3llYXIge1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICBmb250LXNpemU6IDEwcHg7IH1cblxuLmxjLWRhdGUtaWNvbl9faXRlbS0tbW9udGgge1xuICBsaW5lLWhlaWdodDogMjtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDU0OWY7IH1cblxuLmxjLWRhdGUtaWNvbl9faXRlbS0tZGF5IHtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBjb2xvcjogIzMzMztcbiAgYm9yZGVyLXRvcDogbm9uZTsgfVxuXG4ubGMtZGF0ZS1pY29uX19pdGVtLS1tdWx0aS1kYXkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG5cbi5sYy1kYXRlLWljb25fX2l0ZW0tLWRheS1uYW1lIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBib3JkZXItdG9wOiBub25lOyB9XG5cbi5sYy1ldmVudF9fc2lkZWJhciAubGMtZGF0ZS1pY29uX19pdGVtLS1kYXkge1xuICBsaW5lLWhlaWdodDogMTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4ubGMtZXZlbnRfX3NpZGViYXIgLmxjLWRhdGUtaWNvbl9faXRlbS0teWVhciB7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJvcmRlci10b3A6IG5vbmU7IH1cblxuLmxjLWV2ZW50X19ldmVudC1kZXRhaWxzLS11cGNvbWluZyAubGMtZGF0ZS1pY29uX19pdGVtLS15ZWFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICBib3JkZXI6IDA7IH1cblxuLmV2ZW50LWNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZDogI2VmZWZlZjsgfVxuXG4uZXZlbnQtY2FyZCxcbi5ldmVudC1jYXJkX190b3AsXG4uZXZlbnQtY2FyZF9fYm90dG9tIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5ldmVudC1jYXJkX190aXRsZSB7XG4gIG1hcmdpbjogMDsgfVxuXG4uZXZlbnQtY2FyZF9fcm9vbSB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uZXZlbnQtY2FyZF9fZGF5IHtcbiAgZm9udC1zaXplOiAxNHB4OyB9XG5cbi5ldmVudC1jYXJkX190aW1lIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbi5ldmVudC1jYXJkX19kYXRlIHtcbiAgb3JkZXI6IDA7IH1cblxuLmV2ZW50LWNhcmRfX2RldGFpbHMge1xuICBmbGV4LWdyb3c6IDE7XG4gIG9yZGVyOiAxO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbi5ldmVudC1jYXJkX19sYWJlbHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdGV0Y2g7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgb3JkZXI6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7IH1cblxuLmV2ZW50LWNhcmRfX2xhYmVsIHtcbiAgZmxleC1ncm93OiAxO1xuICBwYWRkaW5nOiAxMHB4IDVweCAwO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIC5ldmVudC1jYXJkX19sYWJlbCAubGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogLjYyNWVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTk7IH1cblxuLmxjLWV2ZW50X193cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBsaW5lLWhlaWdodDogMjVweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5sYy1ldmVudF9fd3JhcHBlciB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cblxuLmxjLWV2ZW50X19kZXRhaWxzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEwcHggMDsgfVxuICAubGMtZXZlbnRfX2RldGFpbHMgaDIge1xuICAgIG1hcmdpbjogMDsgfVxuXG4ubGMtZXZlbnRfX3RpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG4ubGMtZXZlbnRfX3VwY29taW5nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB3aWR0aDogMTAwJTsgfVxuXG4ubGMtZXZlbnRfX21vbnRoLXN1bW1hcnkge1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi8qIGNvbG9yIGNvZGluZyBzdHJpcCAqL1xuLmxjLWV2ZW50X19jb2xvci1jb2Rpbmcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHdpZHRoOiA2cHg7XG4gIG1pbi13aWR0aDogNnB4OyB9XG5cbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgb3JkZXI6IDA7XG4gIHBhZGRpbmc6IDNweDsgfVxuXG4ubGMtZXZlbnRfX2V2ZW50LWRldGFpbHMge1xuICBmbGV4OiAxO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7IH1cblxuLm5vLWNvbG9yLWNvZGluZyAubGMtZXZlbnRfX2V2ZW50LWRldGFpbHMge1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4ubm8tY29sb3ItY29kaW5nIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyAubGMtZGF0ZS1pY29uIHtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5ldmVudC1jYXJkLS1mdWxsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLmV2ZW50LWNhcmQtLXNwYXJzZS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIHtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIHBhZGRpbmc6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gIC5ldmVudC1jYXJkLS1zcGFyc2Uubm9kZS0tdmlldy1tb2RlLXRlYXNlciBoMixcbiAgLmV2ZW50LWNhcmQtLXNwYXJzZS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIGgzLFxuICAuZXZlbnQtY2FyZC0tc3BhcnNlLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgaDQge1xuICAgIG1hcmdpbjogMDsgfVxuICAuZXZlbnQtY2FyZC0tc3BhcnNlLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgLmxjLWV2ZW50X19kZXRhaWxzIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLmV2ZW50LWNhcmQtLXNwYXJzZS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIC5ldmVudC1jYXJkX190aXRsZSxcbiAgLmV2ZW50LWNhcmQtLXNwYXJzZS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIC5ldmVudC1jYXJkX19yb29tLFxuICAuZXZlbnQtY2FyZC0tc3BhcnNlLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgLmV2ZW50LWNhcmRfX2RheS10aW1lIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAuZXZlbnQtY2FyZC0tc3BhcnNlLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgLmV2ZW50LWNhcmRfX3RpdGxlIHtcbiAgICBvcmRlcjogMTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzMzOyB9XG4gIC5ldmVudC1jYXJkLS1zcGFyc2Uubm9kZS0tdmlldy1tb2RlLXRlYXNlciAuZXZlbnQtY2FyZF9fcm9vbSB7XG4gICAgb3JkZXI6IDI7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmV2ZW50LWNhcmQtLXNwYXJzZS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIC5ldmVudC1jYXJkX19kZXRhaWxzIHtcbiAgICBvcmRlcjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmV2ZW50LWNhcmQtLXNwYXJzZS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIC5ldmVudC1jYXJkX19kYXktdGltZSB7XG4gICAgZm9udC1zaXplOiAxMnB4OyB9XG4gIC5ldmVudC1jYXJkLS1zcGFyc2Uubm9kZS0tdmlldy1tb2RlLXRlYXNlciAudGltZS0tZW5kLFxuICAuZXZlbnQtY2FyZC0tc3BhcnNlLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgLnRpbWUtLXNlcGFyYXRvciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IC0xcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgIGJvcmRlcjogMDsgfVxuICAuZXZlbnQtY2FyZC0tc3BhcnNlLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgLnRpbWUtLXN0YXJ0IC5ldmVudC1jYXJkX19kYXktLWlubGluZSxcbiAgLmV2ZW50LWNhcmQtLXNwYXJzZS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIC50aW1lLS1zdGFydCAuZXZlbnQtY2FyZF9fc2VwYXJhdG9yIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gICAgYm9yZGVyOiAwOyB9XG4gIC5jYWxlbmRhcl9fZGF5LS1tdWx0aSAuZXZlbnQtY2FyZC0tc3BhcnNlLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgLmV2ZW50LWNhcmRfX3RpdGxlLFxuICAuY2FsZW5kYXJfX2RheS0tbXVsdGkgLmV2ZW50LWNhcmQtLXNwYXJzZS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIC5ldmVudC1jYXJkX19yb29tLFxuICAuY2FsZW5kYXJfX2RheS0tbXVsdGkgLmV2ZW50LWNhcmQtLXNwYXJzZS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIC5ldmVudC1jYXJkX19kYXktdGltZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIDEwcHggMCAwOyB9XG4gIC5jYWxlbmRhcl9fZGF5LS1tdWx0aSAuZXZlbnQtY2FyZC0tc3BhcnNlLm5vZGUtLXZpZXctbW9kZS10ZWFzZXIgLnRpbWUtLWVuZCxcbiAgLmNhbGVuZGFyX19kYXktLW11bHRpIC5ldmVudC1jYXJkLS1zcGFyc2Uubm9kZS0tdmlldy1tb2RlLXRlYXNlciAudGltZS0tc2VwYXJhdG9yIHtcbiAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIGNsaXA6IGF1dG87IH1cbiAgLmNhbGVuZGFyX19kYXktLW11bHRpIC5ldmVudC1jYXJkLS1zcGFyc2Uubm9kZS0tdmlldy1tb2RlLXRlYXNlciAudGltZS0tc3RhcnQgLmV2ZW50LWNhcmRfX2RheS0taW5saW5lLFxuICAuY2FsZW5kYXJfX2RheS0tbXVsdGkgLmV2ZW50LWNhcmQtLXNwYXJzZS5ub2RlLS12aWV3LW1vZGUtdGVhc2VyIC50aW1lLS1zdGFydCAuZXZlbnQtY2FyZF9fc2VwYXJhdG9yIHtcbiAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIGNsaXA6IGF1dG87IH1cblxuLmNhbGVuZGFyX19kYXktLW11bHRpIC5ldmVudC1jYXJkX190aXRsZSxcbi5jYWxlbmRhcl9fZGF5LS1tdWx0aSAuZXZlbnQtY2FyZF9fcm9vbSxcbi5jYWxlbmRhcl9fZGF5LS1tdWx0aSAuZXZlbnQtY2FyZF9fZGF5LXRpbWUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIC42MjVlbSAwIDA7IH1cblxuLmNhbGVuZGFyX19kYXktLW11bHRpIC50aW1lLS1lbmQsXG4uY2FsZW5kYXJfX2RheS0tbXVsdGkgLnRpbWUtLXNlcGFyYXRvcixcbi5jYWxlbmRhcl9fZGF5LS1tdWx0aSAudGltZS0tc3RhcnQgLmV2ZW50LWNhcmRfX2RheS0taW5saW5lLFxuLmNhbGVuZGFyX19kYXktLW11bHRpIC50aW1lLS1zdGFydCAuZXZlbnQtY2FyZF9fc2VwYXJhdG9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi5kYXRlLWxvY2F0aW9uX19vdGhlci1kYXRlcyAuZGF0ZS1sb2NhdGlvbl9fdG9nZ2xlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDVweDsgfVxuXG4uZGF0ZS1sb2NhdGlvbl9fb3RoZXItZGF0ZXMgLmRhdGUtbG9jYXRpb25fX3RvZ2dsZSxcbi5kYXRlLWxvY2F0aW9uX19vdGhlci1kYXRlcyAuZGF0ZS1sb2NhdGlvbl9fcmVwZWF0cy1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCBlYXNlLWluLW91dCA1MDBtczsgfVxuICAuZGF0ZS1sb2NhdGlvbl9fb3RoZXItZGF0ZXMgLmRhdGUtbG9jYXRpb25fX3RvZ2dsZTpob3ZlciwgLmRhdGUtbG9jYXRpb25fX290aGVyLWRhdGVzIC5kYXRlLWxvY2F0aW9uX190b2dnbGU6Zm9jdXMsXG4gIC5kYXRlLWxvY2F0aW9uX19vdGhlci1kYXRlcyAuZGF0ZS1sb2NhdGlvbl9fcmVwZWF0cy1pdGVtOmhvdmVyLFxuICAuZGF0ZS1sb2NhdGlvbl9fb3RoZXItZGF0ZXMgLmRhdGUtbG9jYXRpb25fX3JlcGVhdHMtaXRlbTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JiYjtcbiAgICBvdXRsaW5lOiBub25lOyB9XG5cbi5kYXRlLWxvY2F0aW9uX19vdGhlci1kYXRlcyAuZGF0ZS1sb2NhdGlvbl9fd3JhcHBlciB7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCA1MDBtczsgfVxuICAuZGF0ZS1sb2NhdGlvbl9fb3RoZXItZGF0ZXMgLmRhdGUtbG9jYXRpb25fX3dyYXBwZXIuYWN0aXZlIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG5cbi5kYXRlLWxvY2F0aW9uX19vdGhlci1kYXRlcyAuZGF0ZS1sb2NhdGlvbl9fcmVwZWF0cy1saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDsgfVxuXG4uZGF0ZS1sb2NhdGlvbl9fb3RoZXItZGF0ZXMgLmRhdGUtbG9jYXRpb25fX3JlcGVhdHMtaXRlbSB7XG4gIHdpZHRoOiA0OSU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuXG4uZGF0ZS1sb2NhdGlvbl9fb3RoZXItZGF0ZXMgLmRhdGUtbG9jYXRpb25fX3JlcGVhdHMtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzMzMztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5sYy1ldmVudC0tY29kZS11bnB1Ymxpc2hlZCB7XG4gIHBhZGRpbmc6IDVweDtcbiAgYm9yZGVyOiA1cHggc29saWQgI2QyZDNkNTsgfVxuXG4ubGMtZXZlbnQtLWNvZGUtcHVibGljLXJlc2VydmF0aW9uIHtcbiAgcGFkZGluZzogNXB4O1xuICBib3JkZXI6IDVweCBzb2xpZCAjMDA3YjY5OyB9XG5cbi5sYy1ldmVudC0tY29kZS1wcml2YXRlLWV2ZW50IHtcbiAgcGFkZGluZzogNXB4O1xuICBib3JkZXI6IDVweCBzb2xpZCAjMDA1NDlmOyB9XG5cbi5sYy1ldmVudC0tY29kZS1oYXMtY29uZmxpY3Qge1xuICBwYWRkaW5nOiA1cHg7XG4gIGJvcmRlcjogNXB4IHNvbGlkICMwMDU0OWY7IH1cblxuLmxjLWV2ZW50LS1jb2RlLXJvb20tcmVzZXJ2ZWQge1xuICBwYWRkaW5nOiA1cHg7XG4gIGJvcmRlcjogNXB4IHNvbGlkICMwMDdiNjk7IH1cblxuLmxjLWV2ZW50X19rZXkge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5sYy1ldmVudF9fa2V5LS1jYW5jZWxsZWQge1xuICBjb2xvcjogI2UwNTU1NDsgfVxuXG4ubGMtZXZlbnRfX2NvbG9yLWluZGljYXRvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMmQzZDU7IH1cblxuLnBhZ2UtZXZlbnRzLXVwY29taW5nIC5sYy1ldmVudF9fd3JhcHBlciB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1hZHVsdCxcbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1hZHVsdHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5OGRiOyB9XG5cbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1ldmVyeW9uZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiNjk7IH1cblxuLmxjLWV2ZW50X19jb2xvci1pbmRpY2F0b3ItLWZhbWlseSxcbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1jaGlsZHJlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MDM5ODY7IH1cblxuLmxjLWV2ZW50X19jb2xvci1pbmRpY2F0b3ItLWluZmFudCxcbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1iYWJpZXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNlYzdhOyB9XG5cbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1raWRzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZDEwMDsgfVxuXG4ubGMtZXZlbnRfX2NvbG9yLWluZGljYXRvci0tcHJlc2Nob29sIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q3YTkwMDsgfVxuXG4ubGMtZXZlbnRfX2NvbG9yLWluZGljYXRvci0tc2Nob29sLWFnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNjhkNzQ7IH1cblxuLmxjLWV2ZW50X19jb2xvci1pbmRpY2F0b3ItLXRlZW4sXG4ubGMtZXZlbnRfX2NvbG9yLWluZGljYXRvci0tdGVlbnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTA1NTU0OyB9XG5cbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS10b2RkbGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MyMzczNjsgfVxuXG4ubGMtZXZlbnRfX2NvbG9yLWluZGljYXRvci0tdG9kZGxlci1vbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzViY2FjOyB9XG5cbi5ub2RlLS10eXBlLWxjLWNsb3NpbmcgLmxjLWV2ZW50X19jb2xvci1pbmRpY2F0b3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTA1NTU0OyB9XG5cbi5ub2RlLS10eXBlLWxjLWNsb3NpbmcgLmxjLWV2ZW50X19jb2xvci1jb2RpbmctLWFnZSxcbi5ub2RlLS10eXBlLWxjLWNsb3NpbmcgLmxjLWV2ZW50X19jb2xvci1jb2RpbmctLXByb2dyYW0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5pZTEwIC5sYy1ldmVudF9fZXZlbnQtZGV0YWlscyxcbi5pZTExIC5sYy1ldmVudF9fZXZlbnQtZGV0YWlscyB7XG4gIGZsZXg6IGluaGVyaXQ7IH1cblxuLmxjLXJlZ2lzdHJhdGlvbi1sYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiBsYXJnZXI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmxjLWV2ZW50X19tb250aC1zdW1tYXJ5IC5sYy1yZWdpc3RyYXRpb24tbGFiZWwge1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbmJvZHkubGMtbm8tc2Nyb2xsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9XG5cbi5sYy1icmFuY2gtbW9kYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmxjLWJyYW5jaC1tb2RhbF9fd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDAwMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMzJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG5cbi5sYy1icmFuY2gtbW9kYWxfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDVweCAxNXB4IDAgIzM3NDI0YTsgfVxuXG4ubGMtYnJhbmNoLW1vZGFsX19oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTQ5ZjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5sYy1icmFuY2gtbW9kYWxfX2hlYWRlciB7XG4gICAgICBtaW4taGVpZ2h0OiBpbmhlcml0OyB9IH1cblxuLmxjLWJyYW5jaC1tb2RhbF9fdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubGMtYnJhbmNoLW1vZGFsX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuXG4ubGMtYnJhbmNoLW1vZGFsX19jb250ZW50LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuXG4ubGMtYnJhbmNoLW1vZGFsX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4O1xuICBtYXJnaW46IDEwcHggMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5sYy1icmFuY2gtbW9kYWxfX2NvbnRlbnQge1xuICAgICAgd2lkdGg6IDQ5JTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxjLWJyYW5jaC1tb2RhbF9fY29udGVudCB7XG4gICAgICB3aWR0aDogMzIlOyB9IH1cblxuLmxjLWJyYW5jaC1tb2RhbF9fYnJhbmNoLXNlbGVjdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAycHggc29saWQgI2YwZjBmMDsgfVxuICAubGMtYnJhbmNoLW1vZGFsX19icmFuY2gtc2VsZWN0OmhvdmVyLCAubGMtYnJhbmNoLW1vZGFsX19icmFuY2gtc2VsZWN0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZjBmMGYwO1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLmxjLWJyYW5jaC1tb2RhbF9fYnJhbmNoLXNlbGVjdC5hY3RpdmUge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICMxNzk3ZDQ7IH1cblxuLmxjLWJyYW5jaC1tb2RhbF9faW1hZ2UtY29udGFpbmVyIHtcbiAgd2lkdGg6IDI1JTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxjLWJyYW5jaC1tb2RhbF9faW1hZ2UtY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH0gfVxuICAubGMtYnJhbmNoLW1vZGFsX19pbWFnZS1jb250YWluZXIgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4ubGMtYnJhbmNoLW1vZGFsX19icmFuY2gtaW5mbyB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgd2lkdGg6IDc1JTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxjLWJyYW5jaC1tb2RhbF9fYnJhbmNoLWluZm8ge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuXG4ubGMtYnJhbmNoLW1vZGFsX19icmFuY2gtdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5sYy1icmFuY2gtbW9kYWxfX2JyYW5jaC10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuXG4ubGMtYnJhbmNoLW1vZGFsX19leGl0IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4ubGMtYnJhbmNoLW1vZGFsX19hZGRyZXNzIHtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLmxjLWJyYW5jaC1tb2RhbF9fY2hlY2tib3hlcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDsgfVxuICAubGMtYnJhbmNoLW1vZGFsX19jaGVja2JveGVzIGlucHV0LFxuICAubGMtYnJhbmNoLW1vZGFsX19jaGVja2JveGVzIGxhYmVsLFxuICAubGMtYnJhbmNoLW1vZGFsX19jaGVja2JveGVzIC5mb3JtLXR5cGUtY2hlY2tib3gge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgICBib3JkZXI6IDA7IH1cblxuLmxjLWJyYW5jaC1tb2RhbF9fc3VibWl0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxjLWJyYW5jaC1tb2RhbF9fc3VibWl0IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cblxuLmxjLWJyYW5jaC1tb2RhbF9fd3JhcHBlciB7XG4gIGxlZnQ6IC05OTk5cHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZS1pbi1vdXQgMjUwbXMgLjVzOyB9XG4gIC5sYy1icmFuY2gtbW9kYWxfX3dyYXBwZXIgLmxjLWJyYW5jaC1tb2RhbF9fY29udGFpbmVyIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQgMjUwbXMgLjVzO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbiAgLmxjLWJyYW5jaC1tb2RhbF9fd3JhcHBlci5vcGVuIHtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgICAubGMtYnJhbmNoLW1vZGFsX193cmFwcGVyLm9wZW4gLmxjLWJyYW5jaC1tb2RhbF9fY29udGFpbmVyIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cblxuLmxjLWJyYW5jaC1tb2RhbF9fZm9ybSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxjLWJyYW5jaC1tb2RhbF9fZm9ybSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICAubGMtYnJhbmNoLW1vZGFsX19mb3JtIC5idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNDhweDtcbiAgICBtYXJnaW46IDVweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGMtYnJhbmNoLW1vZGFsX19mb3JtIC5idXR0b24ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwIDVweDsgfSB9XG4gIC5sYy1icmFuY2gtbW9kYWxfX2Zvcm0gLmxjLWJyYW5jaC1tb2RhbF9fc2VsZWN0LWFsbCxcbiAgLmxjLWJyYW5jaC1tb2RhbF9fZm9ybSAubGMtYnJhbmNoLW1vZGFsX19yZXNldCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiA0OSU7XG4gICAgcGFkZGluZzogMS4yNXJlbSAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxjLWJyYW5jaC1tb2RhbF9fZm9ybSAubGMtYnJhbmNoLW1vZGFsX19zZWxlY3QtYWxsLFxuICAgICAgLmxjLWJyYW5jaC1tb2RhbF9fZm9ybSAubGMtYnJhbmNoLW1vZGFsX19yZXNldCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBpbmhlcml0O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IGluaGVyaXQ7XG4gICAgICAgIG1hcmdpbjogMCA1cHg7IH0gfVxuICAubGMtYnJhbmNoLW1vZGFsX19mb3JtIC5sYy1icmFuY2gtbW9kYWxfX3NlbGVjdC1hbGwge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmxjLWJyYW5jaC1tb2RhbF9fZm9ybSAubGMtYnJhbmNoLW1vZGFsX19yZXNldCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLmxjLWZlYXR1cmVkLWV2ZW50LXJvdyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubGMtZmVhdHVyZWQtZXZlbnQtcm93IC5sYy1ldmVudF9fY29sb3ItY29kaW5nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cblxuLmxjLWZlYXR1cmVkLWV2ZW50LWNvbnRlbnQtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5sYy1mZWF0dXJlZC1ldmVudC1jb250ZW50LXJvdyAubGMtZmVhdHVyZWQtZXZlbnQtaW1hZ2UsXG4gIC5sYy1mZWF0dXJlZC1ldmVudC1jb250ZW50LXJvdyAubGMtZmVhdHVyZWQtZXZlbnQtY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxjLWZlYXR1cmVkLWV2ZW50LWNvbnRlbnQtcm93IC5sYy1mZWF0dXJlZC1ldmVudC1pbWFnZSB7XG4gICAgICBmbGV4OiAwIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sYy1mZWF0dXJlZC1ldmVudC1jb250ZW50LXJvdyAubGMtZmVhdHVyZWQtZXZlbnQtY29udGVudCB7XG4gICAgICBmbGV4OiAwIDAgNzUlO1xuICAgICAgbWF4LXdpZHRoOiA3NSU7IH0gfVxuXG4ubGMtZmVhdHVyZWQtZXZlbnQtcm93LXRlcm1zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIHdpZHRoOiA1MCU7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4ubGMtZmVhdHVyZWQtZXZlbnQtcHJvZ3JhbS10eXBlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxjLWZlYXR1cmVkLWV2ZW50LXByb2dyYW0tdHlwZSB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuXG4ubGMtZmVhdHVyZWQtZXZlbnQge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcnVsZSAqL1xuICB6LWluZGV4OiBhdXRvICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5sYy1mZWF0dXJlZC1ldmVudCAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgb3BhY2l0eTogMDsgfVxuICAgIC5sYy1mZWF0dXJlZC1ldmVudCAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLWxlZnQge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvOyB9XG4gIC5sYy1mZWF0dXJlZC1ldmVudDpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UtaW4tb3V0IDI1MG1zO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG4gICAgLmxjLWZlYXR1cmVkLWV2ZW50OmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tbGVmdCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG5cbi5sYy1mZWF0dXJlZC1ldmVudHMtY29udGFpbmVyIHtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDJkM2Q1O1xuICBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuLmxjLWZlYXR1cmVkLWV2ZW50cyB7XG4gIHVzZXItc2VsZWN0OiB1bnNldDsgfVxuICAubGMtZmVhdHVyZWQtZXZlbnRzIC5sYy1mZWF0dXJlZC1ldmVudDpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5sYy1mZWF0dXJlZC1ldmVudHMuc2xpY2staW5pdGlhbGl6ZWQgLmxjLWZlYXR1cmVkLWV2ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAubGMtZmVhdHVyZWQtZXZlbnRzIC5zbGljay10cmFjayxcbiAgLmxjLWZlYXR1cmVkLWV2ZW50cyAuc2xpY2stbGlzdCB7XG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5sYy1mZWF0dXJlZC1ldmVudHMtY29udHJvbHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAubGMtZmVhdHVyZWQtZXZlbnRzLWNvbnRyb2xzIC5zbGljay1hcnJvdyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IGF1dG87XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYm9yZGVyOiAwOyB9XG4gICAgLmxjLWZlYXR1cmVkLWV2ZW50cy1jb250cm9scyAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2Fzc2V0cy9kaXN0L2ljb25zL2NoZXZyb24tbGVmdC1ibGFjay5zdmcpOyB9XG4gICAgLmxjLWZlYXR1cmVkLWV2ZW50cy1jb250cm9scyAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9hc3NldHMvZGlzdC9pY29ucy9jaGV2cm9uLXJpZ2h0LWJsYWNrLnN2Zyk7IH1cbiAgLmxjLWZlYXR1cmVkLWV2ZW50cy1jb250cm9scyAuc2xpY2stZG90cyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgLmxjLWZlYXR1cmVkLWV2ZW50cy1jb250cm9scyAuc2xpY2stZG90cyA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5sYy1mZWF0dXJlZC1ldmVudHMtY29udHJvbHMgLnNsaWNrLWRvdHMgYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgb3BhY2l0eTogLjI1O1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtczsgfVxuICAgICAgLmxjLWZlYXR1cmVkLWV2ZW50cy1jb250cm9scyAuc2xpY2stZG90cyBidXR0b246aG92ZXIsIC5sYy1mZWF0dXJlZC1ldmVudHMtY29udHJvbHMgLnNsaWNrLWRvdHMgYnV0dG9uOmZvY3VzLCAubGMtZmVhdHVyZWQtZXZlbnRzLWNvbnRyb2xzIC5zbGljay1kb3RzIGJ1dHRvbjphY3RpdmUge1xuICAgICAgICBvcGFjaXR5OiAuNTsgfVxuICAgIC5sYy1mZWF0dXJlZC1ldmVudHMtY29udHJvbHMgLnNsaWNrLWRvdHMgLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICAgICAgb3BhY2l0eTogLjU7IH1cblxuLmxjLWZlYXR1cmVkLWV2ZW50LWJ0biB7XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLmxjLWZvcm0gLmZvcm0tc3VibWl0IHtcbiAgbWFyZ2luLXRvcDogMTBweDsgfVxuXG4ubGMtZm9ybSAubGMtZm9ybV9faGFsZiAuZm9ybS10ZXh0LFxuLmxjLWZvcm0gLmxjLWZvcm1fX2Z1bGwgLmZvcm0tdGV4dCB7XG4gIG1hcmdpbjogMDsgfVxuXG4ubGMtZm9ybV9fZmxleC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlZmVmZWY7IH1cbiAgLmxjLWZvcm1fX2ZsZXgtd3JhcHBlciAuZm9ybS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5sYy1mb3JtX19oYWxmIHtcbiAgZmxleDogaW5pdGlhbDtcbiAgcGFkZGluZy1yaWdodDogNXB4OyB9XG4gIC5sYy1mb3JtX19oYWxmIC5mb3JtLWl0ZW0sXG4gIC5sYy1mb3JtX19oYWxmIC5mb3JtLXRleHQsXG4gIC5sYy1mb3JtX19oYWxmIC5mb3JtLXNlbGVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxjLWZvcm1fX2hhbGY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5sYy1mb3JtX19oYWxmLS1mbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLmxjLWZvcm1fX2Z1bGwge1xuICB3aWR0aDogMTAwJTsgfVxuICAubGMtZm9ybV9fZnVsbCAuZm9ybS1pdGVtLFxuICAubGMtZm9ybV9fZnVsbCAuZm9ybS10ZXh0LFxuICAubGMtZm9ybV9fZnVsbCAuZm9ybS1zZWxlY3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5sYy1mb3JtLS1yZXNlcnZlLWJ5LXRpbWUgLmZvcm0taXRlbSxcbi5sYy1mb3JtLS1yZXNlcnZlLWJ5LXRpbWUgLmZvcm0tc2VsZWN0LFxuLmxjLWZvcm0tLXJlc2VydmUtYnktdGltZSAuZm9ybS10ZXh0LFxuLmxjLWZvcm0tLXJlc2VydmUtYnktdGltZSAuZm9ybS10eXBlLXNlbGVjdCxcbi5sYy1mb3JtLS1yZXNlcnZlLWJ5LXRpbWUgLmZvcm0tdHlwZS1kYXRlLXBvcHVwLFxuLmxjLWZvcm0tLXJlc2VydmUtYnktdGltZSAuZm9ybS1zdWJtaXQsXG4ubGMtZm9ybS0tcmVzZXJ2ZS1ieS10aW1lIC5jb250YWluZXItaW5saW5lLWRhdGUge1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubGMtZm9ybS0tcmVzZXJ2ZS1ieS10aW1lIC5mb3JtLWl0ZW0sXG4gICAgLmxjLWZvcm0tLXJlc2VydmUtYnktdGltZSAuZm9ybS1zZWxlY3QsXG4gICAgLmxjLWZvcm0tLXJlc2VydmUtYnktdGltZSAuZm9ybS10ZXh0LFxuICAgIC5sYy1mb3JtLS1yZXNlcnZlLWJ5LXRpbWUgLmZvcm0tdHlwZS1zZWxlY3QsXG4gICAgLmxjLWZvcm0tLXJlc2VydmUtYnktdGltZSAuZm9ybS10eXBlLWRhdGUtcG9wdXAsXG4gICAgLmxjLWZvcm0tLXJlc2VydmUtYnktdGltZSAuZm9ybS1zdWJtaXQsXG4gICAgLmxjLWZvcm0tLXJlc2VydmUtYnktdGltZSAuY29udGFpbmVyLWlubGluZS1kYXRlIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IGF1dG87IH0gfVxuXG4ubGMtZm9ybS0tcmVzZXJ2ZS1ieS10aW1lIC5mb3JtLWl0ZW0sXG4ubGMtZm9ybS0tcmVzZXJ2ZS1ieS10aW1lIC5jb250YWluZXItaW5saW5lIHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cblxuLmxjLWZvcm0tLXJlc2VydmUtYnktdGltZSAuY29udGFpbmVyLWlubGluZS1kYXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lOyB9XG4gIC5sYy1mb3JtLS1yZXNlcnZlLWJ5LXRpbWUgLmNvbnRhaW5lci1pbmxpbmUtZGF0ZSAuZm9ybS1pdGVtLFxuICAubGMtZm9ybS0tcmVzZXJ2ZS1ieS10aW1lIC5jb250YWluZXItaW5saW5lLWRhdGUgLmZvcm0taXRlbSBpbnB1dCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmxjLWZvcm0tLXJlc2VydmUtYnktdGltZSAuY29udGFpbmVyLWlubGluZS1kYXRlIC5mb3JtLWl0ZW0sXG4gICAgICAubGMtZm9ybS0tcmVzZXJ2ZS1ieS10aW1lIC5jb250YWluZXItaW5saW5lLWRhdGUgLmZvcm0taXRlbSBpbnB1dCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxjLWZvcm0tLXJlc2VydmUtYnktdGltZSAuY29udGFpbmVyLWlubGluZS1kYXRlIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgIGNsZWFyOiBub25lOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxjLWZvcm0tLXJlc2VydmUtYnktdGltZSAuZm9ybS10eXBlLXNlbGVjdCB7XG4gICAgY2xlYXI6IGxlZnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGMtZm9ybS0tcmVzZXJ2ZS1ieS10aW1lIC5mb3JtLXR5cGUtc2VsZWN0IHtcbiAgICBjbGVhcjogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sYy1mb3JtLS1yZXNlcnZlLWJ5LXRpbWUgLmZvcm0tc3VibWl0IHtcbiAgICBtYXJnaW46IDAgMCAwIDVweDsgfSB9XG5cbi5ibG9jay0tbGMtZ21hcCAuYmxvY2tfX3RpdGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICBib3JkZXI6IDA7IH1cblxuLmxjLWZvcm1fX21lc3NhZ2Uge1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmOyB9XG5cbi8qIGZvcm0gKi9cbi5sYy1mb3JtLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlZmVmZWY7IH1cblxuLmxjLWZvcm0gaW5wdXRbdHlwZT0ndGV4dCddLFxuLmxjLWZvcm0gaW5wdXRbdHlwZT0nZW1haWwnXSxcbi5sYy1mb3JtIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sXG4ubm9kZS1sYy1yZXNlcnZhdGlvbi1mb3JtIGlucHV0W3R5cGU9J3RleHQnXSxcbi5ub2RlLWxjLXJlc2VydmF0aW9uLWZvcm0gaW5wdXRbdHlwZT0nZW1haWwnXSxcbi5ub2RlLWxjLXJlc2VydmF0aW9uLWZvcm0gaW5wdXRbdHlwZT0ncGFzc3dvcmQnXSxcbi5ub2RlLWxjLWV2ZW50LWZvcm0gaW5wdXRbdHlwZT0ndGV4dCddLFxuLm5vZGUtbGMtZXZlbnQtZm9ybSBpbnB1dFt0eXBlPSdlbWFpbCddLFxuLm5vZGUtbGMtZXZlbnQtZm9ybSBpbnB1dFt0eXBlPSdwYXNzd29yZCddLFxuLm5vZGUtbGMtY2xvc2luZy1mb3JtIGlucHV0W3R5cGU9J3RleHQnXSxcbi5ub2RlLWxjLWNsb3NpbmctZm9ybSBpbnB1dFt0eXBlPSdlbWFpbCddLFxuLm5vZGUtbGMtY2xvc2luZy1mb3JtIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTsgfVxuXG4ubGMtZm9ybSBzZWxlY3QsXG4ubm9kZS1sYy1yZXNlcnZhdGlvbi1mb3JtIHNlbGVjdCxcbi5ub2RlLWxjLWV2ZW50LWZvcm0gc2VsZWN0LFxuLm5vZGUtbGMtY2xvc2luZy1mb3JtIHNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyLWNvbG9yOiAjZWZlZmVmOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxjLWZvcm0gc2VsZWN0LFxuICAgIC5ub2RlLWxjLXJlc2VydmF0aW9uLWZvcm0gc2VsZWN0LFxuICAgIC5ub2RlLWxjLWV2ZW50LWZvcm0gc2VsZWN0LFxuICAgIC5ub2RlLWxjLWNsb3NpbmctZm9ybSBzZWxlY3Qge1xuICAgICAgd2lkdGg6IHVuc2V0OyB9IH1cblxuLmxjLWZvcm0gI2FqYXgtcGhvbmUtd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxjLWZvcm0gI2FqYXgtcGhvbmUtd3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogNDAlO1xuICAgICAgcGFkZGluZy1yaWdodDogLjVlbTsgfSB9XG5cbi5sYy1mb3JtICNhamF4LXBob25lLWV4dGVuc2lvbi13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGMtZm9ybSAjYWpheC1waG9uZS1leHRlbnNpb24td3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMjAlOyB9IH1cblxuLmZvcm0tdGVsIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmxjLWV2ZW50X19zdWJ0aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG5oNC5sYy1ldmVudF9fc3VidGl0bGUge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5sYy1ldmVudF9fZGV0YWlscyB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmxjLWV2ZW50X19kZXRhaWxzIC5sYy1ldmVudC1pbmZvIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cbiAgLmxjLWV2ZW50X19kZXRhaWxzIC5sYy1ldmVudC1pbmZvX19pdGVtIHtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG5cbi5sYy1ldmVudF9fcmVnaXN0cmF0aW9uLWljb24sXG4ubGMtZXZlbnRfX3JlZ2lzdHJhdGlvbi1wYXltZW50LWljb24ge1xuICB3aWR0aDogMTZweDtcbiAgbWluLXdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogNXB4IDEwcHggMCA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtaW5kZW50OiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsgfVxuXG4ubGMtZXZlbnRfX3JlZ2lzdHJhdGlvbi1pY29uIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2Rpc3QvaWNvbnMvcGVuY2lsLXNxdWFyZS1vLWJsYWNrLnN2Z1wiKTsgfVxuXG4ubGMtZXZlbnRfX3JlZ2lzdHJhdGlvbi1wYXltZW50LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9hc3NldHMvZGlzdC9pY29ucy9kb2xsYXItc2lnbi1zb2xpZC5zdmdcIik7IH1cblxuLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDUwO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogNDBweCAzMHB4O1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM3Nzg4OTg7XG4gIGJvcmRlci10b3A6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZS1pbi1vdXQgMjUwbXMsIG9wYWNpdHkgMHMgNzUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uY2FsZW5kYXItLWRheSAubGMtZGF5LXJvb20gLm5vZGUtLXR5cGUtbGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7XG4gIG9wYWNpdHk6IDA7IH1cbiAgLmNhbGVuZGFyLS1kYXkgLmxjLWRheS1yb29tIC5ub2RlLS10eXBlLWxjLWV2ZW50IC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tbGVmdCB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuXG4uY2FsZW5kYXItLWRheSAubGMtZGF5LXJvb20gLm5vZGUtLXR5cGUtbGMtZXZlbnQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UtaW4tb3V0IDI1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsgfVxuICAuY2FsZW5kYXItLWRheSAubGMtZGF5LXJvb20gLm5vZGUtLXR5cGUtbGMtZXZlbnQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1sZWZ0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG5cbi5jYWxlbmRhci0tZGF5IC5sYy1kYXktcm9vbTpudGgtY2hpbGQoNSkgLm5vZGUtLXR5cGUtbGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG9wYWNpdHk6IDA7IH1cbiAgLmNhbGVuZGFyLS1kYXkgLmxjLWRheS1yb29tOm50aC1jaGlsZCg1KSAubm9kZS0tdHlwZS1sYy1ldmVudCAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLXJpZ2h0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG5cbi5jYWxlbmRhci0tZGF5IC5sYy1kYXktcm9vbTpudGgtY2hpbGQoNSkgLm5vZGUtLXR5cGUtbGMtZXZlbnQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UtaW4tb3V0IDI1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gIC5jYWxlbmRhci0tZGF5IC5sYy1kYXktcm9vbTpudGgtY2hpbGQoNSkgLm5vZGUtLXR5cGUtbGMtZXZlbnQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7IH1cblxuLmNhbGVuZGFyLS1kYXkgLmxjLWRheS1yb29tOm50aC1jaGlsZCg2KSAubm9kZS0tdHlwZS1sYy1ldmVudCAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bztcbiAgb3BhY2l0eTogMDsgfVxuICAuY2FsZW5kYXItLWRheSAubGMtZGF5LXJvb206bnRoLWNoaWxkKDYpIC5ub2RlLS10eXBlLWxjLWV2ZW50IC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cblxuLmNhbGVuZGFyLS1kYXkgLmxjLWRheS1yb29tOm50aC1jaGlsZCg2KSAubm9kZS0tdHlwZS1sYy1ldmVudDpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZS1pbi1vdXQgMjUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cbiAgLmNhbGVuZGFyLS1kYXkgLmxjLWRheS1yb29tOm50aC1jaGlsZCg2KSAubm9kZS0tdHlwZS1sYy1ldmVudDpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLXJpZ2h0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsgfVxuXG4uY2FsZW5kYXItLWRheSAubGMtZGF5LXJvb206bnRoLWNoaWxkKDcpIC5ub2RlLS10eXBlLWxjLWV2ZW50IC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xuICBvcGFjaXR5OiAwOyB9XG4gIC5jYWxlbmRhci0tZGF5IC5sYy1kYXktcm9vbTpudGgtY2hpbGQoNykgLm5vZGUtLXR5cGUtbGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1yaWdodCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuXG4uY2FsZW5kYXItLWRheSAubGMtZGF5LXJvb206bnRoLWNoaWxkKDcpIC5ub2RlLS10eXBlLWxjLWV2ZW50OmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlLWluLW91dCAyNTBtcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsgfVxuICAuY2FsZW5kYXItLWRheSAubGMtZGF5LXJvb206bnRoLWNoaWxkKDcpIC5ub2RlLS10eXBlLWxjLWV2ZW50OmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG5cbi5jYWxlbmRhci0tZGF5IC5sYy1kYXktcm9vbTpudGgtY2hpbGQoOCkgLm5vZGUtLXR5cGUtbGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG9wYWNpdHk6IDA7IH1cbiAgLmNhbGVuZGFyLS1kYXkgLmxjLWRheS1yb29tOm50aC1jaGlsZCg4KSAubm9kZS0tdHlwZS1sYy1ldmVudCAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLXJpZ2h0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG5cbi5jYWxlbmRhci0tZGF5IC5sYy1kYXktcm9vbTpudGgtY2hpbGQoOCkgLm5vZGUtLXR5cGUtbGMtZXZlbnQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UtaW4tb3V0IDI1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gIC5jYWxlbmRhci0tZGF5IC5sYy1kYXktcm9vbTpudGgtY2hpbGQoOCkgLm5vZGUtLXR5cGUtbGMtZXZlbnQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7IH1cblxuLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheSAubm9kZS0tdHlwZS1sYy1ldmVudCAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbiAgb3BhY2l0eTogMDsgfVxuICAuY2FsZW5kYXItLXdlZWsgLmxjLXdlZWstZGF5IC5ub2RlLS10eXBlLWxjLWV2ZW50IC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tbGVmdCB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuXG4uY2FsZW5kYXItLXdlZWsgLmxjLXdlZWstZGF5IC5ub2RlLS10eXBlLWxjLWV2ZW50OmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlLWluLW91dCAyNTBtcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7IH1cbiAgLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheSAubm9kZS0tdHlwZS1sYy1ldmVudDpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLWxlZnQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cblxuLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheTpudGgtY2hpbGQoNSkgLm5vZGUtLXR5cGUtbGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG9wYWNpdHk6IDA7IH1cbiAgLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheTpudGgtY2hpbGQoNSkgLm5vZGUtLXR5cGUtbGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1yaWdodCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuXG4uY2FsZW5kYXItLXdlZWsgLmxjLXdlZWstZGF5Om50aC1jaGlsZCg1KSAubm9kZS0tdHlwZS1sYy1ldmVudDpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZS1pbi1vdXQgMjUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cbiAgLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheTpudGgtY2hpbGQoNSkgLm5vZGUtLXR5cGUtbGMtZXZlbnQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7IH1cblxuLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheTpudGgtY2hpbGQoNikgLm5vZGUtLXR5cGUtbGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG9wYWNpdHk6IDA7IH1cbiAgLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheTpudGgtY2hpbGQoNikgLm5vZGUtLXR5cGUtbGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1yaWdodCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuXG4uY2FsZW5kYXItLXdlZWsgLmxjLXdlZWstZGF5Om50aC1jaGlsZCg2KSAubm9kZS0tdHlwZS1sYy1ldmVudDpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZS1pbi1vdXQgMjUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cbiAgLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheTpudGgtY2hpbGQoNikgLm5vZGUtLXR5cGUtbGMtZXZlbnQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7IH1cblxuLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheTpudGgtY2hpbGQoNykgLm5vZGUtLXR5cGUtbGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG9wYWNpdHk6IDA7IH1cbiAgLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheTpudGgtY2hpbGQoNykgLm5vZGUtLXR5cGUtbGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1yaWdodCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuXG4uY2FsZW5kYXItLXdlZWsgLmxjLXdlZWstZGF5Om50aC1jaGlsZCg3KSAubm9kZS0tdHlwZS1sYy1ldmVudDpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZS1pbi1vdXQgMjUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cbiAgLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheTpudGgtY2hpbGQoNykgLm5vZGUtLXR5cGUtbGMtZXZlbnQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7IH1cblxuLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheTpudGgtY2hpbGQoOCkgLm5vZGUtLXR5cGUtbGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG9wYWNpdHk6IDA7IH1cbiAgLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheTpudGgtY2hpbGQoOCkgLm5vZGUtLXR5cGUtbGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1yaWdodCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuXG4uY2FsZW5kYXItLXdlZWsgLmxjLXdlZWstZGF5Om50aC1jaGlsZCg4KSAubm9kZS0tdHlwZS1sYy1ldmVudDpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZS1pbi1vdXQgMjUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cbiAgLmNhbGVuZGFyLS13ZWVrIC5sYy13ZWVrLWRheTpudGgtY2hpbGQoOCkgLm5vZGUtLXR5cGUtbGMtZXZlbnQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7IH1cblxuLmNhbGVuZGFyLS1tb250aCAuY2FsZW5kYXJfX2RheS0tbXVsdGkgLmV2ZW50LWNhcmQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLFxuLmNhbGVuZGFyLS1tb250aCAuY2FsZW5kYXJfX2RheSAuZXZlbnQtY2FyZCAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbiAgb3BhY2l0eTogMDsgfVxuICAuY2FsZW5kYXItLW1vbnRoIC5jYWxlbmRhcl9fZGF5LS1tdWx0aSAuZXZlbnQtY2FyZCAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLWxlZnQsXG4gIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXkgLmV2ZW50LWNhcmQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1sZWZ0IHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG5cbi5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXktLW11bHRpIC5ldmVudC1jYXJkOmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyxcbi5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXkgLmV2ZW50LWNhcmQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UtaW4tb3V0IDI1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsgfVxuICAuY2FsZW5kYXItLW1vbnRoIC5jYWxlbmRhcl9fZGF5LS1tdWx0aSAuZXZlbnQtY2FyZDpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLWxlZnQsXG4gIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXkgLmV2ZW50LWNhcmQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1sZWZ0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG5cbi5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXk6bnRoLWNoaWxkKDUpIC5ldmVudC1jYXJkIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xuICBvcGFjaXR5OiAwOyB9XG4gIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXk6bnRoLWNoaWxkKDUpIC5ldmVudC1jYXJkIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cblxuLmNhbGVuZGFyLS1tb250aCAuY2FsZW5kYXJfX2RheTpudGgtY2hpbGQoNSkgLmV2ZW50LWNhcmQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UtaW4tb3V0IDI1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXk6bnRoLWNoaWxkKDUpIC5ldmVudC1jYXJkOmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG5cbi5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXk6bnRoLWNoaWxkKDYpIC5ldmVudC1jYXJkIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xuICBvcGFjaXR5OiAwOyB9XG4gIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXk6bnRoLWNoaWxkKDYpIC5ldmVudC1jYXJkIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cblxuLmNhbGVuZGFyLS1tb250aCAuY2FsZW5kYXJfX2RheTpudGgtY2hpbGQoNikgLmV2ZW50LWNhcmQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UtaW4tb3V0IDI1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXk6bnRoLWNoaWxkKDYpIC5ldmVudC1jYXJkOmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG5cbi5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXk6bnRoLWNoaWxkKDcpIC5ldmVudC1jYXJkIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xuICBvcGFjaXR5OiAwOyB9XG4gIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXk6bnRoLWNoaWxkKDcpIC5ldmVudC1jYXJkIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cblxuLmNhbGVuZGFyLS1tb250aCAuY2FsZW5kYXJfX2RheTpudGgtY2hpbGQoNykgLmV2ZW50LWNhcmQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UtaW4tb3V0IDI1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXk6bnRoLWNoaWxkKDcpIC5ldmVudC1jYXJkOmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG5cbi5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXk6bnRoLWNoaWxkKDgpIC5ldmVudC1jYXJkIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xuICBvcGFjaXR5OiAwOyB9XG4gIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXk6bnRoLWNoaWxkKDgpIC5ldmVudC1jYXJkIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cblxuLmNhbGVuZGFyLS1tb250aCAuY2FsZW5kYXJfX2RheTpudGgtY2hpbGQoOCkgLmV2ZW50LWNhcmQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UtaW4tb3V0IDI1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gIC5jYWxlbmRhci0tbW9udGggLmNhbGVuZGFyX19kYXk6bnRoLWNoaWxkKDgpIC5ldmVudC1jYXJkOmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jYWxlbmRhci0tdXBjb21pbmcgLmxjLWV2ZW50LS11cGNvbWluZyAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgb3BhY2l0eTogMDsgfVxuICAgIC5jYWxlbmRhci0tdXBjb21pbmcgLmxjLWV2ZW50LS11cGNvbWluZyAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLWxlZnQge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvOyB9XG4gIC5jYWxlbmRhci0tdXBjb21pbmcgLmxjLWV2ZW50LS11cGNvbWluZzpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UtaW4tb3V0IDI1MG1zO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG4gICAgLmNhbGVuZGFyLS11cGNvbWluZyAubGMtZXZlbnQtLXVwY29taW5nOmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tbGVmdCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gIC5jYWxlbmRhci0tdXBjb21pbmcgLmxjLWV2ZW50LS11cGNvbWluZzpudGgtY2hpbGQoMm4rMikgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgICAuY2FsZW5kYXItLXVwY29taW5nIC5sYy1ldmVudC0tdXBjb21pbmc6bnRoLWNoaWxkKDJuKzIpIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlOyB9XG4gIC5jYWxlbmRhci0tdXBjb21pbmcgLmxjLWV2ZW50LS11cGNvbWluZzpudGgtY2hpbGQoMm4rMik6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlLWluLW91dCAyNTBtcztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gICAgLmNhbGVuZGFyLS11cGNvbWluZyAubGMtZXZlbnQtLXVwY29taW5nOm50aC1jaGlsZCgybisyKTpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLXJpZ2h0IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNhbGVuZGFyLS11cGNvbWluZyAubGMtZXZlbnQtLXVwY29taW5nOm50aC1jaGlsZCgzbisxKSAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgb3BhY2l0eTogMDsgfVxuICAgIC5jYWxlbmRhci0tdXBjb21pbmcgLmxjLWV2ZW50LS11cGNvbWluZzpudGgtY2hpbGQoM24rMSkgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1sZWZ0IHtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bzsgfVxuICAuY2FsZW5kYXItLXVwY29taW5nIC5sYy1ldmVudC0tdXBjb21pbmc6bnRoLWNoaWxkKDNuKzEpOmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZS1pbi1vdXQgMjUwbXM7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7IH1cbiAgICAuY2FsZW5kYXItLXVwY29taW5nIC5sYy1ldmVudC0tdXBjb21pbmc6bnRoLWNoaWxkKDNuKzEpOmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tbGVmdCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gIC5jYWxlbmRhci0tdXBjb21pbmcgLmxjLWV2ZW50LS11cGNvbWluZzpudGgtY2hpbGQoM24rMikgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgICAuY2FsZW5kYXItLXVwY29taW5nIC5sYy1ldmVudC0tdXBjb21pbmc6bnRoLWNoaWxkKDNuKzIpIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlOyB9XG4gIC5jYWxlbmRhci0tdXBjb21pbmcgLmxjLWV2ZW50LS11cGNvbWluZzpudGgtY2hpbGQoM24rMik6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlLWluLW91dCAyNTBtcztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gICAgLmNhbGVuZGFyLS11cGNvbWluZyAubGMtZXZlbnQtLXVwY29taW5nOm50aC1jaGlsZCgzbisyKTpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLXJpZ2h0IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG4gIC5jYWxlbmRhci0tdXBjb21pbmcgLmxjLWV2ZW50LS11cGNvbWluZzpudGgtY2hpbGQoM24rMykgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgICAuY2FsZW5kYXItLXVwY29taW5nIC5sYy1ldmVudC0tdXBjb21pbmc6bnRoLWNoaWxkKDNuKzMpIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlOyB9XG4gIC5jYWxlbmRhci0tdXBjb21pbmcgLmxjLWV2ZW50LS11cGNvbWluZzpudGgtY2hpbGQoM24rMyk6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlLWluLW91dCAyNTBtcztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gICAgLmNhbGVuZGFyLS11cGNvbWluZyAubGMtZXZlbnQtLXVwY29taW5nOm50aC1jaGlsZCgzbiszKTpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLXJpZ2h0IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9IH1cblxuLmJsb2NrLWxjLWNhbGVuZGFyLXVwY29taW5nLWJsb2NrIC5jYWxlbmRhci0tdXBjb21pbmcuaG92ZXItbGVmdCAubGMtZXZlbnQtLXVwY29taW5nIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xuICBvcGFjaXR5OiAwOyB9XG4gIC5ibG9jay1sYy1jYWxlbmRhci11cGNvbWluZy1ibG9jayAuY2FsZW5kYXItLXVwY29taW5nLmhvdmVyLWxlZnQgLmxjLWV2ZW50LS11cGNvbWluZyAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLXJpZ2h0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG5cbi5ibG9jay1sYy1jYWxlbmRhci11cGNvbWluZy1ibG9jayAuY2FsZW5kYXItLXVwY29taW5nLmhvdmVyLWxlZnQgLmxjLWV2ZW50LS11cGNvbWluZzpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZS1pbi1vdXQgMjUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cbiAgLmJsb2NrLWxjLWNhbGVuZGFyLXVwY29taW5nLWJsb2NrIC5jYWxlbmRhci0tdXBjb21pbmcuaG92ZXItbGVmdCAubGMtZXZlbnQtLXVwY29taW5nOmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscy5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG5cbi5ibG9jay1sYy1jYWxlbmRhci11cGNvbWluZy1ibG9jayAuY2FsZW5kYXItLXVwY29taW5nLmhvdmVyLXJpZ2h0IC5sYy1ldmVudC0tdXBjb21pbmcgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7XG4gIG9wYWNpdHk6IDA7IH1cbiAgLmJsb2NrLWxjLWNhbGVuZGFyLXVwY29taW5nLWJsb2NrIC5jYWxlbmRhci0tdXBjb21pbmcuaG92ZXItcmlnaHQgLmxjLWV2ZW50LS11cGNvbWluZyAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLWxlZnQge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cblxuLmJsb2NrLWxjLWNhbGVuZGFyLXVwY29taW5nLWJsb2NrIC5jYWxlbmRhci0tdXBjb21pbmcuaG92ZXItcmlnaHQgLmxjLWV2ZW50LS11cGNvbWluZzpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZS1pbi1vdXQgMjUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG4gIC5ibG9jay1sYy1jYWxlbmRhci11cGNvbWluZy1ibG9jayAuY2FsZW5kYXItLXVwY29taW5nLmhvdmVyLXJpZ2h0IC5sYy1ldmVudC0tdXBjb21pbmc6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1sZWZ0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG5cbi53aGl0ZS1wb3B1cCAubGMtZXZlbnQgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7XG4gIG9wYWNpdHk6IDA7IH1cbiAgLndoaXRlLXBvcHVwIC5sYy1ldmVudCAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMuZXZlbnQtZGlyZWN0aW9uLWxlZnQge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cblxuLndoaXRlLXBvcHVwIC5sYy1ldmVudDpob3ZlciAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZS1pbi1vdXQgMjUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG4gIC53aGl0ZS1wb3B1cCAubGMtZXZlbnQ6aG92ZXIgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLmV2ZW50LWRpcmVjdGlvbi1sZWZ0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG5cbi5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyAubGMtZXZlbnRfX2NvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMgLmxjLWV2ZW50X190aXRsZS0tZGV0YWlscyB7XG4gICAgZm9udC1zaXplOiAxOHB4OyB9XG4gIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyAubGMtZXZlbnRfX3RpdGxlLS1zdGF0ZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBjb2xvcjogI2UwNTU1NDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyAubGMtZXZlbnRfX2RhdGUge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7IH1cbiAgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIC5kYXRlLWxvY2F0aW9uX19yb29tIHtcbiAgICBjb2xvcjogIzc3ODg5ODsgfVxuICAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMgLmxjLWV2ZW50X19hZ2UtZ3JvdXBzLFxuICAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMgLmxjLWV2ZW50X19ib2R5IHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyAubGMtZXZlbnRfX2NvbnRhY3Qge1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxjLWV2ZW50LmRlc2t0b3AtaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5sYy1ldmVudF9yb29tLXNldHVwLW5vdGVzID4gZGl2IHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJvcmRlci1sZWZ0OiAycHggc29saWQgIzAwNTQ5ZjsgfVxuXG4ubGMtZXZlbnRfX21lbnUtdGFza3Mge1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sYy1ldmVudF9fbWVudS10YXNrcyB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG5cbi5sYy1ldmVudF9fd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDE7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgY2xlYXI6IGJvdGg7XG4gIGxpbmUtaGVpZ2h0OiAyNXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxjLWV2ZW50X193cmFwcGVyIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuXG4ubGMtZXZlbnRfX2NvbnRlbnQgLmxjLWV2ZW50X19sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmxvY2F0aW9uLWFkZHJlc3Mge1xuICBwYWRkaW5nOiAyMHB4IDAgMCAwOyB9XG5cbi5sYy1ldmVudF9fc2lkZWJhciAubGMtZXZlbnRfX2RldGFpbHMge1xuICBwYWRkaW5nOiA1cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMDU0OWY7IH1cblxuLmxjLWV2ZW50X19zaWRlYmFyIC5sYy1ldmVudC1pbmZvX19jYW5jZWxsZWQge1xuICBjb2xvcjogI2UwNTU1NDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4vKiBHbWFwICovXG4ubGMtZXZlbnQtbG9jYXRpb24gLmxjLWV2ZW50X19zdWJ0aXRsZSB7XG4gIG1hcmdpbjogMDsgfVxuXG4ubGMtZXZlbnQtbG9jYXRpb24gLmxjLWFkZHJlc3NfX2xpbmUge1xuICBsaW5lLWhlaWdodDogMS4yOyB9XG5cbi8qIFJlcGVhdCBEYXRlcyAqL1xuLmxjLXJlcGVhdGluZy1kYXRlc19fdG9nZ2xlLFxuLmxjLXJlcGVhdGluZy1kYXRlc19fbGluayB7XG4gIGNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDJkM2Q1O1xuICBib3JkZXI6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgZWFzZS1pbi1vdXQgNTAwbXM7IH1cbiAgLmxjLXJlcGVhdGluZy1kYXRlc19fdG9nZ2xlOmhvdmVyLCAubGMtcmVwZWF0aW5nLWRhdGVzX190b2dnbGU6Zm9jdXMsXG4gIC5sYy1yZXBlYXRpbmctZGF0ZXNfX2xpbms6aG92ZXIsXG4gIC5sYy1yZXBlYXRpbmctZGF0ZXNfX2xpbms6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3Nzg4OTg7XG4gICAgYm9yZGVyOiBub25lOyB9XG5cbi5sYy1yZXBlYXRpbmctZGF0ZXNfX3RvZ2dsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA1cHg7XG4gIG1hcmdpbjogNXB4IDA7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5sYy1yZXBlYXRpbmctZGF0ZXNfX3RvZ2dsZTpob3ZlciwgLmxjLXJlcGVhdGluZy1kYXRlc19fdG9nZ2xlOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG5cbi5sYy1yZXBlYXRpbmctZGF0ZXNfX3RvZ2dsZS1pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxNXB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWluZGVudDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2Rpc3QvaWNvbnMvY2hldnJvbi1kb3duLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMjUwbXM7XG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG5cbi5sYy1yZXBlYXRpbmctZGF0ZXNfX3RvZ2dsZS5vcGVuIC5sYy1yZXBlYXRpbmctZGF0ZXNfX3RvZ2dsZS1pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuXG4ubGMtcmVwZWF0aW5nLWRhdGVzX193cmFwcGVyIHtcbiAgbWF4LWhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0IDUwMG1zOyB9XG5cbi5sYy1yZXBlYXRpbmctZGF0ZXNfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwOyB9XG5cbi5sYy1yZXBlYXRpbmctZGF0ZXNfX2l0ZW0ge1xuICB3aWR0aDogNDklO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAubGMtcmVwZWF0aW5nLWRhdGVzX19pdGVtLmxjLXJlcGVhdGluZy1kYXRlLW1hc3RlciA+IC5sYy1yZXBlYXRpbmctZGF0ZXNfX2xpbms6OmJlZm9yZSB7XG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICBjb250ZW50OiAnXFwyNjA1JzsgfVxuXG4ubGMtcmVwZWF0aW5nLWRhdGVzX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4vKiBDYXRlZ29yaWVzIHN0eWxpbmcgKi9cbi5sYy1ldmVudF9fY2F0ZWdvcmllcyB7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7IH1cbiAgLmxjLWV2ZW50X19jYXRlZ29yaWVzIGEge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cblxuLyogUmVnaXN0cmFpb24gRm9ybSAqL1xuLmxjLWV2ZW50X19pbmZvLWl0ZW0ge1xuICBsaW5lLWhlaWdodDogMS43OyB9XG5cbi5sYy1ldmVudF9fc2lkZWJhci0tc2Vjb25kOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogJyc7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxjLWV2ZW50X19zaWRlYmFyLS1zZWNvbmQge1xuICAgIGZsZXg6IGluaXRpYWw7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGMtZXZlbnRfX3NpZGViYXItLXNlY29uZCB7XG4gICAgZmxleDogMTtcbiAgICB3aWR0aDogMjAwcHg7IH0gfVxuXG4uY2FsZW5kYXJfX3dyYXAtLXVwY29taW5nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB3aWR0aDogMTAwJTsgfVxuXG4ubGMtZXZlbnQtLXVwY29taW5nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubGMtZXZlbnQtLXVwY29taW5nIHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAgIC5sYy1ldmVudC0tdXBjb21pbmc6bnRoLWNoaWxkKDJuLTEpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNXB4OyB9XG4gICAgICAubGMtZXZlbnQtLXVwY29taW5nOm50aC1jaGlsZCgybikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxjLWV2ZW50LS11cGNvbWluZyB7XG4gICAgICB3aWR0aDogMzMuMzMzJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgICAgIC5sYy1ldmVudC0tdXBjb21pbmc6bnRoLWNoaWxkKDJuLTEpLCAubGMtZXZlbnQtLXVwY29taW5nOm50aC1jaGlsZCgybikge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgIC5sYy1ldmVudC0tdXBjb21pbmc6bnRoLWNoaWxkKDNuLTIpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDsgfVxuICAgICAgLmxjLWV2ZW50LS11cGNvbWluZzpudGgtY2hpbGQoM24tMSkge1xuICAgICAgICBwYWRkaW5nOiAwIDVweDsgfVxuICAgICAgLmxjLWV2ZW50LS11cGNvbWluZzpudGgtY2hpbGQoM24pIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9IH1cbiAgLmxjLWV2ZW50LS11cGNvbWluZyAuZXZlbnQtY2FyZCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjNzc4ODk4OyB9XG4gIC5sYy1ldmVudC0tdXBjb21pbmcgLmxjLWV2ZW50X19ldmVudC1kZXRhaWxzLS11cGNvbWluZyB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubGMtZXZlbnQtLXVwY29taW5nIC5sYy1kYXRlLWljb25fX2l0ZW0tLWRheSB7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDsgfVxuXG4ubGMtZXZlbnRfX2V2ZW50LWRldGFpbHMtLWxjX3JlZ2lzdHJhbnRfcHJpbnQgPiAqIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmxjLWV2ZW50X190aXRsZSxcbi5sYy1ldmVudF9fdGl0bGUtLWRldGFpbHMge1xuICBtYXJnaW46IDA7IH1cblxuLmxjLWV2ZW50X19pbmZvIHtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XG4gIC5sYy1ldmVudF9faW5mbyAubGMtZXZlbnRfX3RpdGxlLFxuICAubGMtZXZlbnRfX2luZm8gLmxjLWV2ZW50X190aXRsZS0tZGV0YWlscyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuXG4ubGMtZXZlbnRfX21vbnRoLWRldGFpbHMgLmxjLWRhdGUtaWNvbiB7XG4gIHBhZGRpbmctbGVmdDogNXB4OyB9XG5cbi5sYy1ldmVudF9fbW9udGgtZGV0YWlscyAubGMtZGF0ZS1pY29uX19pdGVtLS1kYXkge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi5sYy1ldmVudF9fbW9udGgtZGV0YWlscyAubGMtZGF0ZS1pY29uX19pdGVtLS15ZWFyIHtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBib3JkZXItdG9wOiBub25lOyB9XG5cbi5sYy1ldmVudC1pbmZvX19pdGVtLS1jYXRlZ29yaWVzIHtcbiAgZm9udC1zaXplOiAxNHB4OyB9XG5cbi5ibG9jay1sYy1jYWxlbmRhci11cGNvbWluZy1ibG9jayAubGMtZXZlbnQtLXVwY29taW5nIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmJsb2NrLWxjLWNhbGVuZGFyLXVwY29taW5nLWJsb2NrIC5sYy1ldmVudDpudGgtY2hpbGQoMm4tMSksIC5ibG9jay1sYy1jYWxlbmRhci11cGNvbWluZy1ibG9jayAubGMtZXZlbnQ6bnRoLWNoaWxkKDJuKSwgLmJsb2NrLWxjLWNhbGVuZGFyLXVwY29taW5nLWJsb2NrIC5sYy1ldmVudDpudGgtY2hpbGQoM24tMiksIC5ibG9jay1sYy1jYWxlbmRhci11cGNvbWluZy1ibG9jayAubGMtZXZlbnQ6bnRoLWNoaWxkKDNuLTEpLCAuYmxvY2stbGMtY2FsZW5kYXItdXBjb21pbmctYmxvY2sgLmxjLWV2ZW50Om50aC1jaGlsZCgzbikge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5ibG9jay1sYy1jYWxlbmRhci11cGNvbWluZy1ibG9jayAuZXZlbnQtY2FyZCB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmJsb2NrLWxjLWNhbGVuZGFyLXVwY29taW5nLWJsb2NrIC5sYy1ldmVudF9fZXZlbnQtZGV0YWlscyB7XG4gIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDA7IH1cblxuLnNjcm9sbC1pbmZvIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuXG4ubGMtZXZlbnRfX3JlZ2lzdHJhdGlvbi1saXN0IC52aWV3LWNvbnRlbnQge1xuICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG4ubGMtZXZlbnRfX3JlZ2lzdHJhdGlvbi1saXN0IHRoLFxuLmxjLWV2ZW50X19yZWdpc3RyYXRpb24tbGlzdCB0ZCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmxjLWV2ZW50X19yZWdpc3RyYXRpb24tbGlzdCB0ZCAuZHJvcGJ1dHRvbi13aWRnZXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmxjLWV2ZW50X19yZWdpc3RyYXRpb24tbGlzdCB0ZCAuZHJvcGJ1dHRvbi13aWRnZXQgYnV0dG9uOmhvdmVyLCAubGMtZXZlbnRfX3JlZ2lzdHJhdGlvbi1saXN0IHRkIC5kcm9wYnV0dG9uLXdpZGdldCBidXR0b246Zm9jdXMsIC5sYy1ldmVudF9fcmVnaXN0cmF0aW9uLWxpc3QgdGQgLmRyb3BidXR0b24td2lkZ2V0IGJ1dHRvbjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5pZTEwIC5sYy1ldmVudF9fc2lkZWJhci0tZmlyc3QgLmxjLWV2ZW50LWluZm8sXG4uaWUxMSAubGMtZXZlbnRfX3NpZGViYXItLWZpcnN0IC5sYy1ldmVudC1pbmZvIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmllMTAgLmxjLWV2ZW50X19zaWRlYmFyLS1maXJzdCAubGMtZXZlbnRfX2JyYW5jaC1pbWFnZSBhLFxuLmllMTEgLmxjLWV2ZW50X19zaWRlYmFyLS1maXJzdCAubGMtZXZlbnRfX2JyYW5jaC1pbWFnZSBhIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmllMTAgLmxjLWV2ZW50X19mZWF0dXJlZC1pbWFnZSxcbi5pZTExIC5sYy1ldmVudF9fZmVhdHVyZWQtaW1hZ2Uge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5pZTEwIC5sYy1ldmVudF9fZmVhdHVyZWQtaW1hZ2UgLm9wZW4tcG9wdXAtbGluayxcbiAgLmllMTEgLmxjLWV2ZW50X19mZWF0dXJlZC1pbWFnZSAub3Blbi1wb3B1cC1saW5rIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uaWUxMCAuY2FsZW5kYXJfX3dyYXAtLWhlYWRlcixcbi5pZTExIC5jYWxlbmRhcl9fd3JhcC0taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmxjLWV2ZW50LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtMTBweDsgfVxuICAubGMtZXZlbnQtd3JhcHBlciAubGMtZXZlbnQtc2lkZWJhcixcbiAgLmxjLWV2ZW50LXdyYXBwZXIgLmxjLWV2ZW50LWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5sYy1ldmVudC13cmFwcGVyIC5sYy1ldmVudC1zaWRlYmFyLFxuICAgICAgLmxjLWV2ZW50LXdyYXBwZXIgLmxjLWV2ZW50LWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB1bnNldDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxjLWV2ZW50LXdyYXBwZXIgLmxjLWV2ZW50LXNpZGViYXIge1xuICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGMtZXZlbnQtd3JhcHBlciAubGMtZXZlbnQtY29udGVudCB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuICAubGMtZXZlbnQtd3JhcHBlciAubGMtZXZlbnQtZGV0YWlscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtNXB4OyB9XG4gIC5sYy1ldmVudC13cmFwcGVyIC5sYy1kYXRlLWljb24sXG4gIC5sYy1ldmVudC13cmFwcGVyIC5sYy1ldmVudC1pbmZvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgIHBhZGRpbmctbGVmdDogNXB4OyB9XG4gIC5sYy1ldmVudC13cmFwcGVyIC5sYy1kYXRlLWljb24ge1xuICAgIGZsZXg6IDAgMCAzLjVyZW07IH1cbiAgICAubGMtZXZlbnQtd3JhcHBlciAubGMtZGF0ZS1pY29uIC5sYy1kYXRlLWljb25fX2l0ZW0ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgLmxjLWV2ZW50LXdyYXBwZXIgLmxjLWV2ZW50LWluZm8ge1xuICAgIGZsZXg6IDI7IH1cbiAgICAubGMtZXZlbnQtd3JhcHBlciAubGMtZXZlbnQtaW5mbyAubGMtZXZlbnQtc3VidGl0bGUge1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLmxjLWV2ZW50LXdyYXBwZXIgLmxjLWV2ZW50LWluZm8tY2FuY2VsbGVkIHtcbiAgICBjb2xvcjogI2UwNTU1NDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5sYy1ldmVudC13cmFwcGVyIC5sYy1ldmVudC1yb29tLXNldHVwLWltYWdlIGltZyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2QyZDNkNTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cbiAgLmxjLWV2ZW50LXdyYXBwZXIgLmxjLWV2ZW50LXNlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5vZGUtLXR5cGUtbGMtY2xvc2luZyAubGMtZXZlbnQtY29udGVudCB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfSB9XG5cbi5sYy1jbG9zaW5nLWNvbG9yIHtcbiAgY29sb3I6ICNlMDU1NTQ7IH1cblxuLmxjLXJlc2VydmF0aW9uLW9wdGlvbnNfX2xpbmtzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmxjLXJlc2VydmF0aW9uLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxjLXJlc2VydmF0aW9uLWJ0biB7XG4gICAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH0gfVxuICAubGMtcmVzZXJ2YXRpb24tYnRuIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5sYy1yZXNlcnZhdGlvbi1idG4gYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDsgfSB9XG4gICAgLmxjLXJlc2VydmF0aW9uLWJ0biBhIHN2ZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTE1cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAubGMtcmVzZXJ2YXRpb24tYnRuIGEgc3ZnIHBhdGgge1xuICAgICAgZmlsbDogY3VycmVudENvbG9yOyB9XG4gICAgLmxjLXJlc2VydmF0aW9uLWJ0biBhIHN2ZyBnIHtcbiAgICAgIHN0cm9rZTogY3VycmVudENvbG9yOyB9XG5cbi5yZXNlcnZhdGlvbi10eXBlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4OyB9XG4gIC5yZXNlcnZhdGlvbi10eXBlcyAucmVzZXJ2YXRpb24tdHlwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnJlc2VydmF0aW9uLXR5cGVzIC5yZXNlcnZhdGlvbi10eXBlIHtcbiAgICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH0gfVxuICAgIC5yZXNlcnZhdGlvbi10eXBlcyAucmVzZXJ2YXRpb24tdHlwZSBhIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5sYy1yZXNlcnZhdGlvbi1vcHRpb25zX19saW5rLS1yb29tIGE6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2Rpc3QvaWNvbnMvYnVpbGRpbmcuc3ZnXCIpOyB9XG5cbi5sYy1yZXNlcnZhdGlvbi1vcHRpb25zX19saW5rLS10aW1lIGE6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2Rpc3QvaWNvbnMvY2xvY2suc3ZnXCIpOyB9XG5cbi5sYy1yZXNlcnZhdGlvbi1vcHRpb25zX19saW5rLS1kYXRlIGE6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2Rpc3QvaWNvbnMvY2FsZW5kYXIuc3ZnXCIpOyB9XG5cbi5sYy1hdmFpbGFibGUtcm9vbXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4ubGMtYXZhaWxhYmxlLXJvb21zX19ncm91cC1sYWJlbCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5sYy1hdmFpbGFibGUtcm9vbXNfX2dyb3VwIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubGMtYXZhaWxhYmxlLXJvb21zX19ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9IH1cblxuLmxjLWF2YWlsYWJsZS1yb29tcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4OyB9XG5cbi5sYy1hdmFpbGFibGUtcm9vbXNfX3JvdyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5sYy1hdmFpbGFibGUtcm9vbXNfX3JvdyB7XG4gICAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH0gfVxuXG4ubGMtYXZhaWxhYmxlLXJvb21zX19jb250ZW50IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDJkM2Q1O1xuICBib3JkZXItcmFkaXVzOiA1cHg7IH1cbiAgLmxjLWF2YWlsYWJsZS1yb29tc19fY29udGVudCAubGMtYXZhaWxhYmxlLXJvb21zX19yb29tIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmxjLWF2YWlsYWJsZS1yb29tc19fY29udGVudCAubGMtYXZhaWxhYmxlLXJvb21zX19yb29tIC5idXR0b25zIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG87IH1cbiAgLmxjLWF2YWlsYWJsZS1yb29tc19fY29udGVudCAuYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5sYy1hdmFpbGFibGUtcm9vbXNfX2NvbnRlbnQgLmJ1dHRvbjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubGMtYXZhaWxhYmxlLXJvb21zX19pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAubGMtYXZhaWxhYmxlLXJvb21zX19pbWFnZTpob3ZlciwgLmxjLWF2YWlsYWJsZS1yb29tc19faW1hZ2U6Zm9jdXMge1xuICAgIGJvcmRlcjogbm9uZTsgfVxuXG4ubGMtYXZhaWxhYmxlLXJvb21zX19ncm91cC1sYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLmxjLWF2YWlsYWJsZS1yb29tc19fcm9vbSAuYnV0dG9ucy5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNXB4IDEwcHg7IH1cblxuLmxjLWF2YWlsYWJsZS1yb29tc19fZGF0ZSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmxjLWF2YWlsYWJsZS1yb29tcy0tZXJyb3ItbWVzc2FnZS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cblxuLmxjLXJvb20tZnVsbCAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtdGltZS1ibG9ja3Mge1xuICBtYXJnaW46IDIwcHggMDsgfVxuICAubGMtcm9vbS1mdWxsIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy10aW1lLWJsb2NrczpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG4ubGMtcm9vbS1mdWxsIC5yb29tLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4OyB9XG5cbi5sYy1yb29tLWZ1bGwgLnJvb20tY29sdW1uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxjLXJvb20tZnVsbCAucm9vbS1jb2x1bW4ge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9IH1cblxuLmxjLXJvb20tZnVsbCAubGMtcm9vbS1mZWF0dXJlZC1pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sYy1yb29tLWZ1bGwgLmxjLXJvb20tZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9IH1cblxuLmxjLXJvb20tZnVsbCAubGMtcm9vbS1zZXR1cHMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sYy1yb29tLWZ1bGwgLmxjLXJvb20tc2V0dXBzLXdyYXBwZXIge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9IH1cbiAgLmxjLXJvb20tZnVsbCAubGMtcm9vbS1zZXR1cHMtd3JhcHBlciAubGMtcm9vbS1zZXR1cHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgLmxjLXJvb20tZnVsbCAubGMtcm9vbS1zZXR1cHMtd3JhcHBlciAubGMtcm9vbS1zZXR1cHMgLnJvb20tc2V0dXBzLWNvbnRlbnQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLmxjLXJvb20tZnVsbCAubGMtcm9vbS1zZXR1cHMtd3JhcHBlciAubGMtcm9vbS1zZXR1cHMgLnJvb20tc2V0dXBzLWNvbnRlbnQge1xuICAgICAgICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyNSU7IH0gfVxuICAgICAgLmxjLXJvb20tZnVsbCAubGMtcm9vbS1zZXR1cHMtd3JhcHBlciAubGMtcm9vbS1zZXR1cHMgLnJvb20tc2V0dXBzLWNvbnRlbnQ6aG92ZXIgLnJvb20tc2V0dXBzX190aXRsZSwgLmxjLXJvb20tZnVsbCAubGMtcm9vbS1zZXR1cHMtd3JhcHBlciAubGMtcm9vbS1zZXR1cHMgLnJvb20tc2V0dXBzLWNvbnRlbnQ6Zm9jdXMgLnJvb20tc2V0dXBzX190aXRsZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIC5sYy1yb29tLWZ1bGwgLmxjLXJvb20tc2V0dXBzLXdyYXBwZXIgLmxjLXJvb20tc2V0dXBzIC5yb29tLXNldHVwcy1jb250ZW50IC5yb29tLXNldHVwc19faW1hZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IC41cmVtO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZDJkM2Q1O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgICAubGMtcm9vbS1mdWxsIC5sYy1yb29tLXNldHVwcy13cmFwcGVyIC5sYy1yb29tLXNldHVwcyAucm9vbS1zZXR1cHMtY29udGVudCAucm9vbS1zZXR1cHNfX2ltYWdlIHtcbiAgICAgICAgICAgIGhlaWdodDogMTIxcHg7IH0gfVxuICAgICAgLmxjLXJvb20tZnVsbCAubGMtcm9vbS1zZXR1cHMtd3JhcHBlciAubGMtcm9vbS1zZXR1cHMgLnJvb20tc2V0dXBzLWNvbnRlbnQgLnJvb20tc2V0dXBzX190aXRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IC41cmVtO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAwLjgpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zczsgfVxuICAgIC5sYy1yb29tLWZ1bGwgLmxjLXJvb20tc2V0dXBzLXdyYXBwZXIgLmxjLXJvb20tc2V0dXBzLmxjLWhpZGRlbi1zZXR1cHM6bm90KC5zaG93KSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5sYy1yb29tLWZ1bGwgLmxjLXJvb20tc2V0dXBzLXdyYXBwZXIgLmxjLXJvb20tc2V0dXAtdG9nZ2xlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuXG4ubGMtcm9vbS1mdWxsIC5sYy1yb29tLWRldGFpbHMgLnJvb20tZmllbGQge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5sYy1yb29tLWZ1bGwgLmxjLXJlc2VydmF0aW9uLXdlZWstZGlzcGxheSB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmxjLXJvb20tZnVsbCAubGMtcmVzZXJ2YXRpb24td2Vlay1kaXNwbGF5IHtcbiAgbWFyZ2luOiAwIDIwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGMtcm9vbS1mdWxsIC5sYy1yZXNlcnZhdGlvbi13ZWVrLWRpc3BsYXkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG5cbi5sYy1yb29tLWZ1bGwgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzIHtcbiAgZmxleDogMSAxIDA7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICAubGMtcm9vbS1mdWxsIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncyBoMyB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkMmQzZDU7XG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gIC5sYy1yb29tLWZ1bGwgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzLnRvZGF5IGgzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmOyB9XG4gIC5sYy1yb29tLWZ1bGwgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzOmZpcnN0LW9mLXR5cGUgaDMge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwcHg7IH1cbiAgLmxjLXJvb20tZnVsbCAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3M6Zmlyc3Qtb2YtdHlwZSAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtaG91cnMge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDEwcHg7IH1cbiAgLmxjLXJvb20tZnVsbCAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3M6Zmlyc3Qtb2YtdHlwZSAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtaG91cjpsYXN0LW9mLXR5cGUgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzLXF1YXJ0ZXI6bGFzdC1vZi10eXBlIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMHB4OyB9XG4gIC5sYy1yb29tLWZ1bGwgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy1hY3Rpb25zIHtcbiAgICBsaW5lLWhlaWdodDogMDsgfVxuICAubGMtcm9vbS1mdWxsIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5nczpsYXN0LW9mLXR5cGUgaDMge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkMmQzZDU7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEwcHg7IH1cbiAgLmxjLXJvb20tZnVsbCAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3M6bGFzdC1vZi10eXBlIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy1ob3VycyB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2QyZDNkNTsgfVxuICAubGMtcm9vbS1mdWxsIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5nczpsYXN0LW9mLXR5cGUgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzLWhvdXJzIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTBweDsgfVxuICAubGMtcm9vbS1mdWxsIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5nczpsYXN0LW9mLXR5cGUgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzLWhvdXI6bGFzdC1vZi10eXBlIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy1xdWFydGVyOmxhc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDEwcHg7IH1cblxuLmxjLXJvb20tZnVsbCAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtaG91cnMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkMmQzZDU7IH1cblxuLmxjLXJvb20tZnVsbCAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtaG91ciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbWFyZ2luOiAwOyB9XG5cbi5sYy1yb29tLWZ1bGwgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzLXRpbWUtLWhvdXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDMzLjMzMyU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5sYy1yb29tLWZ1bGwgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzLXF1YXJ0ZXJzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBib3JkZXItbGVmdDogbm9uZTsgfVxuXG4ubGMtcm9vbS1mdWxsIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy1xdWFydGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiA1cHg7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICM3Nzg4OTg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDJkM2Q1OyB9XG5cbi5sYy1yb29tLWZ1bGwgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzLXF1YXJ0ZXItLWJsb2NrZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmOyB9XG5cbi5sYy1mb3JtLS1yZXNlcnZlLXJvb20tb3BlbmluZ3MgLmZvcm0tc3VibWl0IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5sYy1mb3JtLS1yZXNlcnZlLXJvb20tb3BlbmluZ3MgLmxjLWZvcm1fX2ZpbHRlcnMge1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5sYy1mb3JtLS1yZXNlcnZlLXJvb20tb3BlbmluZ3MgLmxjLWZvcm1fX2ZpbHRlcnMgbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgICBib3JkZXI6IDA7IH1cbiAgLmxjLWZvcm0tLXJlc2VydmUtcm9vbS1vcGVuaW5ncyAubGMtZm9ybV9fZmlsdGVycyAuZm9ybS1ncm91cCB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5sYy1mb3JtLS1yZXNlcnZlLXJvb20tb3BlbmluZ3MgLmxjLWZvcm1fX2ZpbHRlcnMgLmxjLXJlc2VydmF0aW9uLWRhdGUtY29udGFpbmVyID4gLmZvcm0td3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGMtZm9ybS0tcmVzZXJ2ZS1yb29tLW9wZW5pbmdzIC5sYy1mb3JtX19maWx0ZXJzIC5sYy1yZXNlcnZhdGlvbi1kYXRlLWNvbnRhaW5lciA+IC5mb3JtLXdyYXBwZXIgLmZvcm0taXRlbS1zZWxlY3RlZC1kYXRlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIC5sYy1mb3JtLS1yZXNlcnZlLXJvb20tb3BlbmluZ3MgLmxjLWZvcm1fX2ZpbHRlcnMgLmxjLXJlc2VydmF0aW9uLWRhdGUtY29udGFpbmVyID4gLmZvcm0td3JhcHBlciAuZm9ybS1kYXRlIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5sYy1mb3JtLS1yZXNlcnZlLXJvb20tb3BlbmluZ3MgLmxjLWZvcm1fX2ZpbHRlcnMgLmxjLXJlc2VydmF0aW9uLWRhdGUtY29udGFpbmVyID4gLmZvcm0td3JhcHBlciAuZm9ybS1kYXRlOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIG1hcmdpbjogYXV0bzsgfVxuICAgIC5sYy1mb3JtLS1yZXNlcnZlLXJvb20tb3BlbmluZ3MgLmxjLWZvcm1fX2ZpbHRlcnMgLmxjLXJlc2VydmF0aW9uLWRhdGUtY29udGFpbmVyID4gLmZvcm0td3JhcHBlciAuZm9ybS1zdWJtaXQge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuXG4ubGMtZm9ybS0tcmVzZXJ2ZS1yb29tLW9wZW5pbmdzIC5sYy1mb3JtX19maWx0ZXJzLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5sYy1mb3JtLS1yZXNlcnZlLXJvb20tb3BlbmluZ3MgLmxjLWZvcm1fX25leHQsXG4ubGMtZm9ybS0tcmVzZXJ2ZS1yb29tLW9wZW5pbmdzIC5sYy1mb3JtX19sYXN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG1hcmdpbjogMjBweCAwO1xuICBmb250LXNpemU6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9hc3NldHMvZGlzdC9pY29ucy9jaGV2cm9uLWxlZnQtYmxhY2suc3ZnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDY1JTsgfVxuXG4ubGMtZm9ybS0tcmVzZXJ2ZS1yb29tLW9wZW5pbmdzIC5sYy1mb3JtX19uZXh0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2Fzc2V0cy9kaXN0L2ljb25zL2NoZXZyb24tcmlnaHQtYmxhY2suc3ZnKTsgfVxuXG4ubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtdGltZSB7XG4gIGZsZXgtZ3JvdzogMTsgfVxuXG4ubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiAyMnB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWluZGVudDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtYnV0dG9uOjpiZWZvcmUsIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy1idXR0b246OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiA0cHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7IH1cbiAgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzLWJ1dHRvbjo6YWZ0ZXIge1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogNHB4OyB9XG5cbi5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy1oaWRlLXRleHQge1xuICB3aWR0aDogNDVweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtaW5kZW50OiA5OTk5cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmllMTAgLmxjLXJvb20tLWZ1bGwgLnJvb20tc2V0dXBzX19pbWFnZSxcbi5pZTExIC5sYy1yb29tLS1mdWxsIC5yb29tLXNldHVwc19faW1hZ2Uge1xuICB3aWR0aDogMTAwJTsgfVxuICAuaWUxMCAubGMtcm9vbS0tZnVsbCAucm9vbS1zZXR1cHNfX2ltYWdlIGltZyxcbiAgLmllMTEgLmxjLXJvb20tLWZ1bGwgLnJvb20tc2V0dXBzX19pbWFnZSBpbWcge1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5pZTEwIC5sYy1yb29tLS1mdWxsIC5yb29tLXNldHVwc19fdGl0bGUsXG4uaWUxMSAubGMtcm9vbS0tZnVsbCAucm9vbS1zZXR1cHNfX3RpdGxlIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyogVG9nZ2xlIEZpbHRlcnMgKi9cbi5sYy1mb3JtX19oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmxjLWZvcm1fX2hlYWRlcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6ICcnOyB9XG5cbi5idXR0b24ubGMtZm9ybV9fdG9nZ2xlIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBjbGVhcjogYm90aDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTQ5ZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJ1dHRvbi5sYy1mb3JtX190b2dnbGUge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjUlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5idXR0b24ubGMtZm9ybV9fdG9nZ2xlLmFjdGl2ZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuYnV0dG9uLmxjLWZvcm1fX3RvZ2dsZTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2Rpc3QvaWNvbnMvbGlzdC5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG4gIC5idXR0b24ubGMtZm9ybV9fdG9nZ2xlOmhvdmVyLCAuYnV0dG9uLmxjLWZvcm1fX3RvZ2dsZTpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxODA5ZjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi5sYy1mb3JtX19maWx0ZXJzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGVhcjogbGVmdDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDU0OWY7IH1cbiAgLmxjLWZvcm1fX2ZpbHRlcnMgc2VsZWN0IHtcbiAgICBjb2xvcjogIzAwMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sYy1mb3JtX19maWx0ZXJzIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDI1JTsgfSB9XG4gIC5sYy1mb3JtX19maWx0ZXJzLmNvbGxhcHNlZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm9ybS10eXBlLWRhdGUge1xuICBjb2xvcjogIzc3ODg5ODsgfVxuXG4ubGMtZm9ybV9fZmlsdGVycy1jb250YWluZXIge1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgLjI1czsgfVxuICAubGMtZm9ybV9fZmlsdGVycy1jb250YWluZXIgLmZvcm0taXRlbSxcbiAgLmxjLWZvcm1fX2ZpbHRlcnMtY29udGFpbmVyIC5mb3JtLWFjdGlvbnMge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubGMtZm9ybV9fZmlsdGVycy1jb250YWluZXIgLmZvcm0tY2hlY2tib3hlcyAuZm9ybS1pdGVtLFxuICAubGMtZm9ybV9fZmlsdGVycy1jb250YWluZXIgLmZvcm0tcmFkaW9zIC5mb3JtLWl0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubGMtZm9ybV9fZmlsdGVycy1jb250YWluZXIgZGV0YWlscyB7XG4gICAgYm9yZGVyOiAwOyB9XG4gICAgLmxjLWZvcm1fX2ZpbHRlcnMtY29udGFpbmVyIGRldGFpbHMgPiBkaXYge1xuICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICBjb2xvcjogIzMzMztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAubGMtZm9ybV9fZmlsdGVycy1jb250YWluZXIgZGV0YWlscyA+IHN1bW1hcnkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAxMHB4IDAgNXB4IDA7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmY7IH1cbiAgICAgIC5sYy1mb3JtX19maWx0ZXJzLWNvbnRhaW5lciBkZXRhaWxzID4gc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5sYy1mb3JtX19maWx0ZXJzLWNvbnRhaW5lciBkZXRhaWxzID4gc3VtbWFyeTo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2Rpc3QvaWNvbnMvY2hldnJvbi1jaXJjbGUtZG93bi5zdmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG4gIC5sYy1mb3JtX19maWx0ZXJzLWNvbnRhaW5lciBkZXRhaWxzW29wZW5dID4gc3VtbWFyeTo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgLmxjLWZvcm1fX2ZpbHRlcnMtY29udGFpbmVyIC5maWVsZHNldC13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAubGMtZm9ybV9fZmlsdGVycy1jb250YWluZXIgLmZpZWxkc2V0LXdyYXBwZXIuY29sbGFwc2VkIHtcbiAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5sYy1mb3JtX19maWx0ZXJzLWNvbnRhaW5lciAubGMtY2hlY2tib3gtd3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gIC5sYy1mb3JtX19maWx0ZXJzLWNvbnRhaW5lciAuZm9ybS1ncm91cDpub3QoLmZvcm0tY2hlY2spID4gbGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmNvbG9yLWNvZGluZyAubGMtY2hlY2tib3gtd3JhcHBlciAuZm9ybS1pdGVtIHtcbiAgcGFkZGluZzogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmO1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICNlZmVmZWY7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxjLXJvb21fX3Jvb20tb3BlbmluZ3MgLmxjLWZvcm1fX2ZpbHRlcnMtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfSB9XG5cbi5sYy1yb29tX19yb29tLW9wZW5pbmdzIC5mb3JtLWl0ZW0ge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cblxuLmxjLXJvb21fX3Jvb20tb3BlbmluZ3MgLmZvcm0tYWN0aW9ucyB7XG4gIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxjLXJvb21fX3Jvb20tb3BlbmluZ3MgLmZvcm0tYWN0aW9ucyB7XG4gICAgICBwYWRkaW5nLXRvcDogMjNweDsgfSB9XG5cbi5sYy1yb29tX19yb29tLW9wZW5pbmdzIC5mb3JtLXN1Ym1pdCB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLmxjLXJvb21fX3Jvb20tb3BlbmluZ3MgLmZvcm0tZGF0ZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3Nzg4OTg7IH1cblxuLmxjLXJvb21fX3Jvb20tb3BlbmluZ3MgLmxjLWZvcm1fX2ZpbHRlcnMge1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmNvbG9yLWNvZGluZyAubGMtY2hlY2tib3gtd3JhcHBlci0tYWR1bHQgLmZvcm0taXRlbSxcbi5jb2xvci1jb2RpbmcgLmxjLWNoZWNrYm94LXdyYXBwZXItLWFkdWx0cyAuZm9ybS1pdGVtIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMwMDk4ZGI7IH1cblxuLmNvbG9yLWNvZGluZyAubGMtY2hlY2tib3gtd3JhcHBlci0tZXZlcnlvbmUgLmZvcm0taXRlbSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjMDA3YjY5OyB9XG5cbi5jb2xvci1jb2RpbmcgLmxjLWNoZWNrYm94LXdyYXBwZXItLWZhbWlseSAuZm9ybS1pdGVtLFxuLmNvbG9yLWNvZGluZyAubGMtY2hlY2tib3gtd3JhcHBlci0tY2hpbGRyZW4gLmZvcm0taXRlbSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjOTAzOTg2OyB9XG5cbi5jb2xvci1jb2RpbmcgLmxjLWNoZWNrYm94LXdyYXBwZXItLWluZmFudCAuZm9ybS1pdGVtLFxuLmNvbG9yLWNvZGluZyAubGMtY2hlY2tib3gtd3JhcHBlci0tYmFiaWVzIC5mb3JtLWl0ZW0ge1xuICBib3JkZXItbGVmdC1jb2xvcjogI2YzZWM3YTsgfVxuXG4uY29sb3ItY29kaW5nIC5sYy1jaGVja2JveC13cmFwcGVyLS1raWRzIC5mb3JtLWl0ZW0ge1xuICBib3JkZXItbGVmdC1jb2xvcjogI2ZlZDEwMDsgfVxuXG4uY29sb3ItY29kaW5nIC5sYy1jaGVja2JveC13cmFwcGVyLS1wcmVzY2hvb2wgLmZvcm0taXRlbSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZDdhOTAwOyB9XG5cbi5jb2xvci1jb2RpbmcgLmxjLWNoZWNrYm94LXdyYXBwZXItLXNjaG9vbC1hZ2UgLmZvcm0taXRlbSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZjY4ZDc0OyB9XG5cbi5jb2xvci1jb2RpbmcgLmxjLWNoZWNrYm94LXdyYXBwZXItLXRlZW4gLmZvcm0taXRlbSxcbi5jb2xvci1jb2RpbmcgLmxjLWNoZWNrYm94LXdyYXBwZXItLXRlZW5zIC5mb3JtLWl0ZW0ge1xuICBib3JkZXItbGVmdC1jb2xvcjogI2UwNTU1NDsgfVxuXG4uY29sb3ItY29kaW5nIC5sYy1jaGVja2JveC13cmFwcGVyLS10b2RkbGVyIC5mb3JtLWl0ZW0ge1xuICBib3JkZXItbGVmdC1jb2xvcjogI2MyMzczNjsgfVxuXG4uY29sb3ItY29kaW5nIC5sYy1jaGVja2JveC13cmFwcGVyLS10b2RkbGVyLW9uZSAuZm9ybS1pdGVtIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMzNWJjYWM7IH1cblxuLmxjLWZvcm0gLmhpZGUtZmlsdGVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5tZnAtd3JhcCAubWZwLWlubGluZS1ob2xkZXIgLm1mcC1jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubWZwLXdyYXAgLm1mcC1pbmxpbmUtaG9sZGVyIC5tZnAtY29udGVudCB7XG4gICAgICB3aWR0aDogYXV0bzsgfSB9XG5cbi5sYy1ldmVudC1hY3Rpb25zX19saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWdyb3c6IDE7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDVweCAwOyB9XG5cbi5sYy1ldmVudC1hY3Rpb25zX19pdGVtIHtcbiAgZmxleDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi13aWR0aDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAubGMtZXZlbnQtYWN0aW9uc19faXRlbSBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU0OWY7IH1cbiAgICAubGMtZXZlbnQtYWN0aW9uc19faXRlbSBhOmhvdmVyLCAubGMtZXZlbnQtYWN0aW9uc19faXRlbSBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5sYy1ldmVudC1hY3Rpb25zX19jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIC5sYy1ldmVudC1hY3Rpb25zX19jb250YWluZXIgLmhlYWRlciB7XG4gICAgcGFkZGluZzogMjBweCAxMHB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU0OWY7IH1cbiAgICAubGMtZXZlbnQtYWN0aW9uc19fY29udGFpbmVyIC5oZWFkZXIgaDIge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gIC5sYy1ldmVudC1hY3Rpb25zX19jb250YWluZXIgLmJvZHkge1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDsgfVxuICAubGMtZXZlbnQtYWN0aW9uc19fY29udGFpbmVyIC5saW5rcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAubGMtZXZlbnQtYWN0aW9uc19fY29udGFpbmVyIHVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDsgfVxuICAubGMtZXZlbnQtYWN0aW9uc19fY29udGFpbmVyIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgICAubGMtZXZlbnQtYWN0aW9uc19fY29udGFpbmVyIGxpLm1lc3NhZ2VzX19pdGVtIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLmxjLWV2ZW50LWFjdGlvbnNfX2NvbnRhaW5lciBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgbWFyZ2luOiAwIDEwcHggMTBweCAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU0OWY7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGMtZXZlbnQtYWN0aW9uc19fY29udGFpbmVyIGEge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgICAubGMtZXZlbnQtYWN0aW9uc19fY29udGFpbmVyIGE6aG92ZXIsIC5sYy1ldmVudC1hY3Rpb25zX19jb250YWluZXIgYTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuXG4ud2hpdGUtcG9wdXAgLm1mcC1jbG9zZSB7XG4gIHdpZHRoOiA2NHB4O1xuICBoZWlnaHQ6IDY0cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5OGRiO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIGVhc2UtaW4tb3V0IC4yNXM7IH1cbiAgLndoaXRlLXBvcHVwIC5tZnAtY2xvc2U6aG92ZXIsIC53aGl0ZS1wb3B1cCAubWZwLWNsb3NlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NDlmOyB9XG4gIC53aGl0ZS1wb3B1cCAubWZwLWNsb3NlOmFjdGl2ZSB7XG4gICAgdG9wOiAwOyB9XG5cbi53aGl0ZS1wb3B1cCAubGMtZXZlbnQtYWN0aW9uc19faWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAzcHg7XG4gIHdpZHRoOiAxN3B4O1xuICBoZWlnaHQ6IDE3cHg7XG4gIGJhY2tncm91bmQtc2l6ZTogMTdweDsgfVxuXG4ubGMtZXZlbnQtYWN0aW9uc19fc29jaWFsLWljb24gYSB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtaW5kZW50OiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogNDBweDsgfVxuXG4ubGMtZXZlbnQtYWN0aW9uc19faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTZweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMjcuNWVtKSB7XG4gICAgLmxjLWV2ZW50LWFjdGlvbnNfX2ljb24ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9IH1cblxuLmxjLWV2ZW50LWFjdGlvbnNfX3RleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDI3LjVlbSkge1xuICAgIC5sYy1ldmVudC1hY3Rpb25zX190ZXh0IHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgY2xpcDogYXV0bzsgfSB9XG5cbi5sYy1ldmVudC1hY3Rpb25zX19pY29uLS1jYWxlbmRhciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2Fzc2V0cy9kaXN0L2ljb25zL2NhbGVuZGFyLnN2Z1wiKTsgfVxuXG4ubGMtZXZlbnQtYWN0aW9uc19faWNvbi0tcHJpbnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9hc3NldHMvZGlzdC9pY29ucy9wcmludC5zdmdcIik7IH1cblxuLmxjLWV2ZW50LWFjdGlvbnNfX2ljb24tLXNoYXJlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2Rpc3QvaWNvbnMvbWFpbC1mb3J3YXJkLnN2Z1wiKTsgfVxuXG4ubGMtZXZlbnQtYWN0aW9uc19faWNvbi0tZ29vZ2xlLFxuLmxjLWV2ZW50LWFjdGlvbnNfX2ljb24tLWljYWwge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9hc3NldHMvZGlzdC9pY29ucy9nb29nbGUuc3ZnXCIpOyB9XG5cbi5sYy1ldmVudC1hY3Rpb25zX19pY29uLS1yZW1pbmRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2Fzc2V0cy9kaXN0L2ljb25zL2Nsb2NrLW8uc3ZnXCIpOyB9XG5cbi5sYy1ldmVudC1hY3Rpb25zX19pY29uLS1wZW5jaWwge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9hc3NldHMvZGlzdC9pY29ucy9wZW5jaWwtc3F1YXJlLW8uc3ZnXCIpOyB9XG5cbi5sYy1ldmVudC1hY3Rpb25zX19zb2NpYWwtaWNvbi0tZmFjZWJvb2sgYSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2Fzc2V0cy9kaXN0L2ljb25zL2ZhY2Vib29rLnN2Z1wiKTsgfVxuXG4ubGMtZXZlbnQtYWN0aW9uc19fc29jaWFsLWljb24tLXR3aXR0ZXIgYSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2Fzc2V0cy9kaXN0L2ljb25zL3R3aXR0ZXIuc3ZnXCIpOyB9XG5cbi5sYy1ldmVudC1hY3Rpb25zX19zb2NpYWwtaWNvbi0tbGlua2VkaW4gYSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2Fzc2V0cy9kaXN0L2ljb25zL2xpbmtlZGluLnN2Z1wiKTsgfVxuXG4ubGMtZXZlbnQtYWN0aW9uc19fc29jaWFsLWljb24tLWVtYWlsIGEge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9hc3NldHMvZGlzdC9pY29ucy9lbnZlbG9wZS5zdmdcIik7IH1cblxuI2F0dGVuZGFuY2UtZmllbGRzZXQtd3JhcHBlciAubGMtZm9ybV9fZmxleC13cmFwcGVyIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuI2F0dGVuZGFuY2UtZmllbGRzZXQtd3JhcHBlciAuZm9ybS1pdGVtLFxuI2F0dGVuZGFuY2UtZmllbGRzZXQtd3JhcHBlciAuZm9ybS1hY3Rpb25zIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4jYXR0ZW5kYW5jZS1maWVsZHNldC13cmFwcGVyIC5mb3JtLXNlbGVjdCxcbiNhdHRlbmRhbmNlLWZpZWxkc2V0LXdyYXBwZXIgLmZvcm0tdGV4dCxcbiNhdHRlbmRhbmNlLWZpZWxkc2V0LXdyYXBwZXIgLmxjLWZvcm1fX3JlbW92ZSB7XG4gIG1pbi1oZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbjogMnB4IDA7XG4gIGJvcmRlci1jb2xvcjogI2QyZDNkNTtcbiAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG5cbiNhdHRlbmRhbmNlLWZpZWxkc2V0LXdyYXBwZXIgLmZvcm0tc2VsZWN0LFxuI2F0dGVuZGFuY2UtZmllbGRzZXQtd3JhcHBlciAubGMtZm9ybV9fcmVtb3ZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCBlYXNlLWluLW91dCAyNTBtczsgfVxuICAjYXR0ZW5kYW5jZS1maWVsZHNldC13cmFwcGVyIC5mb3JtLXNlbGVjdDpob3ZlciwgI2F0dGVuZGFuY2UtZmllbGRzZXQtd3JhcHBlciAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4gICNhdHRlbmRhbmNlLWZpZWxkc2V0LXdyYXBwZXIgLmxjLWZvcm1fX3JlbW92ZTpob3ZlcixcbiAgI2F0dGVuZGFuY2UtZmllbGRzZXQtd3JhcHBlciAubGMtZm9ybV9fcmVtb3ZlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmOyB9XG5cbiNhdHRlbmRhbmNlLWZpZWxkc2V0LXdyYXBwZXIgLmZvcm0tc2VsZWN0IHtcbiAgcGFkZGluZzogMCA1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEuMnJlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2Rpc3QvaWNvbnMvYW5nbGUtZG93bi1ibGFjay5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgYmFja2dyb3VuZC1zaXplOiAxLjNyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cblxuI2F0dGVuZGFuY2UtZmllbGRzZXQtd3JhcHBlciAubGMtZm9ybV9fcmVtb3ZlIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLmJsb2NrLWxjLWJyYW5jaC1zZWxlY3Qge1xuICB3aWR0aDogMTAwJTsgfVxuICAuYmxvY2stbGMtYnJhbmNoLXNlbGVjdCBoMiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJsb2NrLWxjLWJyYW5jaC1zZWxlY3QgaDIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9IH1cblxuLmxjLWJyYW5jaC1zZWxlY3RfX3dyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0IDI1MG1zOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxjLWJyYW5jaC1zZWxlY3RfX3dyYXBwZXIge1xuICAgICAgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IH0gfVxuXG4ubGMtYnJhbmNoLXNlbGVjdF9fd3JhcHBlci0tb3BlbiB7XG4gIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLmxjLWJyYW5jaC1zZWxlY3RfX3NlbGVjdC1pbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwOThkYjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2Rpc3QvaWNvbnMvYW5nbGUtZG93bi5zdmdcIiksIG5vbmU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDFyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4ubGMtYnJhbmNoLXNlbGVjdC1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLmxjLWJyYW5jaC1zZWxlY3QtZGlzYWJsZWQ6OmJlZm9yZSwgLmxjLWJyYW5jaC1zZWxlY3QtZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmxjLWJyYW5jaC1zZWxlY3RfX2JyYW5jaC5hY3RpdmUtYnJhbmNoIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC01cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4OyB9XG5cbi5sYy1icmFuY2gtc2VsZWN0X19hZGRyZXNzLFxuLmxjLWJyYW5jaC1zZWxlY3RfX2hvdXJzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgcGFkZGluZy10b3A6IDVweDtcbiAgcGFkZGluZy1ib3R0b206IDVweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5sYy1icmFuY2gtc2VsZWN0X19hZGRyZXNzLFxuICAgIC5sYy1icmFuY2gtc2VsZWN0X19ob3VycyB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuXG4ubGMtYnJhbmNoLXNlbGVjdF9faG91cnMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWZlZmVmOyB9XG5cbi5qcy1ob3Vycy10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjBweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIHotaW5kZXg6IDEwMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3JkZXI6IDA7XG4gIHBhZGRpbmc6IDVweDtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTQ5ZjtcbiAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC5qcy1ob3Vycy10b2dnbGU6aG92ZXIsIC5qcy1ob3Vycy10b2dnbGU6Zm9jdXMsIC5qcy1ob3Vycy10b2dnbGU6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5OGRiO1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuanMtaG91cnMtdG9nZ2xlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uaG91cnMtdG9nZ2xlX19pY29uIHtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMi41cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDU0OWY7XG4gIGJvcmRlci1yYWRpdXM6IDM1cHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDEwcHggI2ZmZjsgfVxuICAuaG91cnMtdG9nZ2xlX19pY29uOmhvdmVyLCAuaG91cnMtdG9nZ2xlX19pY29uOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5ob3Vycy10b2dnbGVfX2ljb246OmJlZm9yZSwgLmhvdXJzLXRvZ2dsZV9faWNvbjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC03cHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDJweDtcbiAgICBoZWlnaHQ6IDdweDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgY29udGVudDogJyAnO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU0OWY7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAuMXM7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGN1YmljLWJlemllcigwLjQyLCAwLCAwLjE5LCAxLjM1KSAwLjc1cztcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207IH1cbiAgLmhvdXJzLXRvZ2dsZV9faWNvbjo6YmVmb3JlIHtcbiAgICB0b3A6IC0xMHB4O1xuICAgIGhlaWdodDogMTBweDsgfVxuICAuaG91cnMtdG9nZ2xlX19pY29uOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG4gIC5ob3Vycy10b2dnbGVfX2ljb24ub3Blbjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg1NDBkZWcpOyB9XG4gIC5ob3Vycy10b2dnbGVfX2ljb24ub3Blbjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7IH1cblxuLmxjLWJyYW5jaC1zZWxlY3RfX2NvbGxhcHNlLWJ1dHRvbjpob3ZlciwgLmxjLWJyYW5jaC1zZWxlY3RfX2NvbGxhcHNlLWJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuLmxjLWJyYW5jaC1zZWxlY3RfX2NvbGxhcHNlZC13cmFwcGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAubGMtYnJhbmNoLXNlbGVjdF9fY29sbGFwc2VkLXdyYXBwZXIub3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmxheW91dF9fc2VjdGlvbi0tYW5ub3VuY2VtZW50cyB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXlvdXRfX3NlY3Rpb24tLWFubm91bmNlbWVudHMgLnZpZXdzLWZpZWxkLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIycHg7IH1cblxuLmJyYWludHJlZS1tZXRob2QgLmJyYWludHJlZS1tZXRob2RfX2NoZWNrIHtcbiAgcGFkZGluZzogMCAxMHB4OyB9XG4gIC5icmFpbnRyZWUtbWV0aG9kIC5icmFpbnRyZWUtbWV0aG9kX19jaGVjayBzdmcge1xuICAgIGhlaWdodDogaW5oZXJpdDsgfVxuXG4jbGMtcGF5bWVudC1idXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5sYy1mZWVzLFxuLmxjLWZlZXNfX2ZlZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG5cbi5sYy1mZWVzX19mZWUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogYm90dG9tO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDVweCAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDJkM2Q1OyB9XG4gIC5sYy1mZWVzX19mZWU6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3A6IG5vbmU7IH1cblxuLmxjLWZlZXNfX2ZlZS0tdG90YWwge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDAwOyB9XG5cbi5sYy1yZWdpc3RyYXRpb24tbGlzdCAuaXRlbS1saXN0IGxpIHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzc3ODg5ODsgfVxuICAubGMtcmVnaXN0cmF0aW9uLWxpc3QgLml0ZW0tbGlzdCBsaTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi5sYy1yZWdpc3RyYXRpb24tbGlzdCAucmVnaXN0cmF0aW9uLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLmxjLXJlZ2lzdHJhdGlvbi1saXN0IC5yZWdpc3RyYXRpb25fX2l0ZW1zIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubGMtcmVnaXN0cmF0aW9uLWxpc3QgLnJlZ2lzdHJhdGlvbl9faXRlbXMge1xuICAgICAgd2lkdGg6IDMzLjMzMyU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sYy1yZWdpc3RyYXRpb24tbGlzdCAucmVnaXN0cmF0aW9uX19pdGVtcyB7XG4gICAgICB3aWR0aDogMjUlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxjLXJlZ2lzdHJhdGlvbi1saXN0IC5yZWdpc3RyYXRpb25fX2l0ZW1zLS1jb250YWN0LWluZm8ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAubGMtcmVnaXN0cmF0aW9uLWxpc3QgLnJlZ2lzdHJhdGlvbl9faXRlbXMtLXJlZ2lzdHJhbnQtaW5mbyB7XG4gICAgcGFkZGluZzogMCAxMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxjLXJlZ2lzdHJhdGlvbi1saXN0IC5yZWdpc3RyYXRpb25fX2l0ZW1zLS1ldmVudC1pbmZvIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH0gfVxuXG4ubGMtcmVnaXN0cmF0aW9uLWxpc3QgLnJlZ2lzdHJhdGlvbl9faXRlbXMtLXNwZWNpYWwge1xuICB3aWR0aDogMTAwJTsgfVxuXG4ubGMtcmVnaXN0cmF0aW9uLWxpc3QgLnJlZ2lzdHJhdGlvbi1pdGVtLS1uYW1lIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4ubGMtZXZlbnRfX3JlZ2lzdHJhdGlvbi1saXN0IHRib2R5IHRyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5OTk7IH1cbiAgLmxjLWV2ZW50X19yZWdpc3RyYXRpb24tbGlzdCB0Ym9keSB0ciAuZHJvcGJ1dHRvbi1tdWx0aXBsZSB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4ubGMtZXZlbnRfX3JlZ2lzdHJhdGlvbi1saXN0IHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7IH1cblxuLmZvcm0taXRlbS1yZWctc2F2ZS1zdGF0ZSB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkMmQzZDU7XG4gIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG4ubGMtcmVnaXN0cmFudC1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4ubGMtcmVnaXN0cmFudC1zdWJoZWFkaW5nIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4ubGMtcmVnaXN0cmF0aW9uLWZpZWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uZmllbGQtLW5hbWUtZmllbGQtbGMtcmVnaXN0cmF0aW9uLXJlZmVyZW5jZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2QyZDNkNTsgfVxuXG4ubGMtY2xvc2luZy1sb2NhdGlvbl9fYWRkcmVzczpub3QoOmxhc3QtY2hpbGQpIHtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG4gIC8qKlxuICogQ2FsZW5kYXIgbW9udGggZGlzcGxheS5cbiAqXG4gKiBBbGwgcGFkZGluZyBhbmQgZm9udC1zaXplcyBpbiB0aGUgbW9udGggZGlzcGxheVxuICogc2hvdWxkIHVzZXMgZW0gdW5pdHMgKG5vdCByZW0gb3IgcHgpLCBhcyBkZWZpbmVkXG4gKiBpbiB0aGUgY2FsZW5kYXIgY29tcG9uZW50J3MgbG9jYWwgdmFyaWFibGVzIHBhcnRpYWwuXG4gKiBUaGUgcmVhc29uaW5nIGZvciB0aGF0IGlzIHNvIHRoYXQgZm9udC1zaXplcyBjYW4gYmVcbiAqIGRlZmluZWQgcmVsYXRpdmUgdG8gZWFjaCBvdGhlciwgYW5kIHRoZW4gdGhlIG92ZXJhbGxcbiAqIGZvbnQvcGFkZGluZyBzaXplcyBvZiB0aGUgY2FsZW5kYXIgY2FuIGJlIGFkanVzdGVkXG4gKiBwcm9wb3J0aW9uYWxseSB3aGlsZSBvbmx5IG1vZGlmeWluZyB0aGUgcm9vdCBmb250XG4gKiBzaXplIG9uIHRoZSAuY2FsZW5kYXItLW1vbnRoIGNvbnRhaW5lci5cbiAqL1xuICAuY2FsZW5kYXItLW1vbnRoIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIC5jYWxlbmRhci0tbW9udGggLm1vYmlsZS1oaWRlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIGNsaXA6IGF1dG87IH1cbiAgICAuY2FsZW5kYXItLW1vbnRoIC5ldmVudC1jYXJkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5jYWxlbmRhci0tbW9udGggLmxjLWV2ZW50X19yZWdpc3RyYXRpb24taWNvbixcbiAgICAuY2FsZW5kYXItLW1vbnRoIC5sYy1ldmVudF9fcmVnaXN0cmF0aW9uLXBheW1lbnQtaWNvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmNhbGVuZGFyX193ZWVrIC5ldmVudC1jYXJkX190aXRsZSxcbiAgLmNhbGVuZGFyX193ZWVrIC5ldmVudC1jYXJkX19kZXRhaWxzLFxuICAuY2FsZW5kYXJfX3dlZWsgLmV2ZW50LWNhcmRfX3Jvb20ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvOyB9XG4gIC5jYWxlbmRhci0tbW9udGggLm5vZGUtLXR5cGUtbGMtY2xvc2luZyxcbiAgLmNhbGVuZGFyX193ZWVrIC5ub2RlLS10eXBlLWxjLWNsb3Npbmcge1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICNlMDU1NTQ7IH1cbiAgLmNhbGVuZGFyLS1tb250aCAubm9kZS0tdHlwZS1sYy1yZXNlcnZhdGlvbixcbiAgLmNhbGVuZGFyX193ZWVrIC5ub2RlLS10eXBlLWxjLXJlc2VydmF0aW9uIHtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAjMDA3YjY5OyB9XG4gIC5jYWxlbmRhci0tbW9udGggLmFsbC1kYXksXG4gIC5jYWxlbmRhcl9fd2VlayAuYWxsLWRheSB7XG4gICAgYm9yZGVyOiAzcHggc29saWQgIzAwOThkYjsgfVxuICAuY2FsZW5kYXItLW1vbnRoIC5wcml2YXRlLWV2ZW50LFxuICAuY2FsZW5kYXJfX3dlZWsgLnByaXZhdGUtZXZlbnQge1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICMzMTgwOWY7IH1cbiAgLmNhbGVuZGFyLS1tb250aCAuaGFzLWNvbmZsaWN0LFxuICAuY2FsZW5kYXJfX3dlZWsgLmhhcy1jb25mbGljdCB7XG4gICAgYm9yZGVyOiAzcHggc29saWQgIzkwMzk4NjsgfVxuICBhLmNhbGVuZGFyX19kYXktLWN1cnJlbnQge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3Nzg4OTg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCBlYXNlLWluLW91dCAyNTBtczsgfVxuICAvKipcbiAqIEhlYWRlciBhbmQgcGFnZXJcbiAqXG4gKiBUaGUgaGVhZGVyIGFuZCBwYWdlciB1c2UgZmxleGJveCB0b1xuICogbGF5b3V0IGFuZCB2ZXJ0aWNhbGx5IGNlbnRlciB0aGUgaGVhZGVyXG4gKiBpdGVtcy5cbiAqL1xuICAuY2FsZW5kYXJfX21vbnRoLXBhZ2VyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDE7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmNhbGVuZGFyX193cmFwLS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuY2FsZW5kYXJfX3dyYXAtLWhlYWRlcixcbiAgLmNhbGVuZGFyX193cmFwLS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgLmNhbGVuZGFyX193cmFwLS1oZWFkZXIgLmNhbGVuZGFyX190aXRsZSBoMixcbiAgICAuY2FsZW5kYXJfX3dyYXAtLXRpdGxlIC5jYWxlbmRhcl9fdGl0bGUgaDIge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gIC5jYWxlbmRhcl9fd3JhcC0tdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jYWxlbmRhcl9fcGFnZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgLmNhbGVuZGFyX19wYWdlcjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjb250ZW50OiAnJzsgfVxuICAuY2FsZW5kYXJfX3RpdGxlIHtcbiAgICBvcmRlcjogMTtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuYnV0dG9uLmNhbGVuZGFyX19wYWdlci0tbGVmdCxcbiAgLmJ1dHRvbi5jYWxlbmRhcl9fcGFnZXItLXJpZ2h0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWluZGVudDogMTAwJTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU0OWY7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIGVhc2UtaW4tb3V0IC4yNXM7IH1cbiAgLmJ1dHRvbi5jYWxlbmRhcl9fcGFnZXItLWxlZnQge1xuICAgIG9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2Fzc2V0cy9kaXN0L2ltYWdlcy9wYWdlci1hcnJvdy1wcmV2LnN2Z1wiKTsgfVxuICAuYnV0dG9uLmNhbGVuZGFyX19wYWdlci0tcmlnaHQge1xuICAgIG9yZGVyOiAyO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2Fzc2V0cy9kaXN0L2ltYWdlcy9wYWdlci1hcnJvdy1uZXh0LnN2Z1wiKTsgfVxuICAvKipcbiAqIEdyaWQgc3R5bGluZ1xuICpcbiAqIFRoZSBncmlkIHN0eWxpbmcgZm9yIHRoZSBzaW5nbGUtZGF5IGV2ZW50XG4gKiBjZWxscyB1c2VzIGZsZXhib3ggY29udGFpbmVycyBmb3IgdGhlIHJvd1xuICogYW5kIDEvNyBvZiB0aGUgY29udGFpbmVyIGZvciB0aGUgd2lkdGggb25cbiAqIGVhY2ggaXRlbS4gVGhlIGZpcnN0IGl0ZW0gaW4gdGhlIHJvdyBpc1xuICogYWx3YXlzIHRoZSBtdWx0aS1kYXkgZXZlbnQgY2VsbCwgd2hpY2ggaXMgMTAwJVxuICogd2lkZSwgYW5kIHVzZXMgaXQncyBvd24gZ3JpZCB0byBjb250cm9sXG4gKiBsYXlvdXQgZm9yIG11bHRpLWRheSBldmVudHMuXG4gKi9cbiAgLmNhbGVuZGFyX193cmFwLS1ncmlkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2QxZDFkMTsgfVxuICAuY2FsZW5kYXJfX3Jvdy0taGVhZGVyLFxuICAuY2FsZW5kYXJfX3Jvdy0tY29udGVudCxcbiAgLmNhbGVuZGFyX19udW1iZXJzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLmNhbGVuZGFyX19yb3ctLWZvb3RlciB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmNhbGVuZGFyX19kYXksXG4gIC5jYWxlbmRhcl9fZGF5LS1udW1iZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTQuMjg1NzElO1xuICAgIHBhZGRpbmc6IDVweDsgfVxuICAuY2FsZW5kYXJfX2RheS0tbXVsdGkge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmNhbGVuZGFyX19kYXktLW11bHRpIC5ldmVudC1jYXJkIHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMwMDA7IH1cbiAgLmNhbGVuZGFyX19kYXkge1xuICAgIG1pbi1oZWlnaHQ6IDI1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAuY2FsZW5hcl9fZGF5LS1udW1iZXIge1xuICAgIG1pbi1oZWlnaHQ6IDA7IH1cbiAgLmNhbGVuZGFyX19kYXktLWhlYWRlciB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmNhbGVuZGFyX19kYXktLWJsYW5rIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuY2FsZW5kYXJfX3Jvdy0tY29udGVudCAuY2FsZW5kYXJfX2RheS0tYmxhbmsge1xuICAgIG1pbi1oZWlnaHQ6IDVyZW07IH1cbiAgLmNhbGVuZGFyX19kYXktLW91dHNpZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7IH1cbiAgLyoqXG4gKiBDYWxlbmRhciBib3JkZXJzXG4gKlxuICogRXh0ZXJuYWwgYm9yZGVycyBhcmUgd3JhcHBlZCBhcm91bmQgdGhlXG4gKiAuY2FsZW5kYXJfX3dlZWsgZWxlbWVudCwgd2hpbGUgaW50ZXJuYWwgYm9yZGVyc1xuICogYXJlIGFic29sdXRlbHkgcG9zaXRpb25lZCBlbXB0eSBkaXZzLlxuICovXG4gIC5jYWxlbmRhcl9fd2VlayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZDFkMWQxOyB9XG4gIC5jYWxlbmRhcl9fd2Vlay0tZW1wdHkge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jYWxlbmRhcl9fYmFyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjb2xvcjogI2QxZDFkMTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHgsIC0xcHggMCAwIDA7XG4gICAgb3BhY2l0eTogLjI1OyB9XG4gIC5jYWxlbmRhcl9fYmFyLS0xIHtcbiAgICBsZWZ0OiAxNC4yODU3MSU7IH1cbiAgLmNhbGVuZGFyX19iYXItLTIge1xuICAgIGxlZnQ6IDI4LjU3MTQzJTsgfVxuICAuY2FsZW5kYXJfX2Jhci0tMyB7XG4gICAgbGVmdDogNDIuODU3MTQlOyB9XG4gIC5jYWxlbmRhcl9fYmFyLS00IHtcbiAgICBsZWZ0OiA1Ny4xNDI4NiU7IH1cbiAgLmNhbGVuZGFyX19iYXItLTUge1xuICAgIGxlZnQ6IDcxLjQyODU3JTsgfVxuICAuY2FsZW5kYXJfX2Jhci0tNiB7XG4gICAgbGVmdDogODUuNzE0MjklOyB9XG4gIC8qKlxuICogTGluayBvdmVybGF5c1xuICpcbiAqIEVhY2ggZGF5IGluIHRoZSBjYWxlbmRhciBoYXMgYW4gYXNzb2NpYXRlZCBsaXN0IG9mIGRheXNcbiAqIHRoYXQgaXMgc3RvcmVkIGJlbG93IHRoZSBjYWxlbmRhciB0aGF0IGNvbnRhaW5zIG1vcmVcbiAqIGluZm9ybWF0aW9uLiBUbyBhY2Nlc3MgdGhpcyBpbmZvcm1hdGlvbiwgdGhlcmUgYXJlIGxpbmtcbiAqIG92ZXJsYXlzIHBvc2l0aW9uZWQgYWJzb2x1dGVseSBhYm92ZSB0aGUgZGF5IGNlbGxzLlxuICovXG4gIC5jYWxlbmRhcl9fbnVtYmVycyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxNTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5jYWxlbmRhcl9fbnVtYmVyLWRheS0tbXVsdGkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7IH1cbiAgLyoqXG4gKiBNdWx0aS1kYXkgZ3JpZHNcbiAqXG4gKiBVbmxpa2UgdGhlIHJlZ3VsYXIgZ3JpZCBjZWxscyBmb3IgdGhlIGNhbGVuZGFyLCB3aGljaFxuICogdXNlIGZsZXhib3gsIHRoZSBtdWx0aS1kYXkgZ3JpZHMgdXNlIFNpbmd1bGFyaXR5IEdTJ3NcbiAqIGZsb2F0IGdyaWQtc3BhbnMgc28gdGhhdCB0aGV5IGNhbiBzdGFydCBhdCBhcmJpdHJhcnlcbiAqIHBvaW50cyB3aXRoaW4gdGhlIGdyaWQuIENsZWFyaW5nIGhhcyB0byBiZSBhcHBsaWVkXG4gKiBtYW51YWxseSB2aWEgYSBjbGVhciBjbGFzcywgYXBwbGllZCB3aGVuIHRoZSB0ZW1wbGF0ZVxuICogaXMgZmlyc3QgZ2VuZXJhdGVkLlxuICovXG4gIC5jYWxlbmRhcl9fZGF5LS1tdWx0aSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTsgfVxuICAgIC5jYWxlbmRhcl9fZGF5LS1tdWx0aTo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5jYWxlbmRhcl9fZGF5LXNwYW4tLTEtMSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5jYWxlbmRhcl9fZGF5LXNwYW4tLTEtNyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAxNC4yODU3MSU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5jYWxlbmRhcl9fZGF5LXNwYW4tLTItMSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5jYWxlbmRhcl9fZGF5LXNwYW4tLTItMiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAxNC4yODU3MSU7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNhbGVuZGFyX19kYXktc3Bhbi0tMi0zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjguNTcxNDMlO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDI4LjU3MTQzJTtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuY2FsZW5kYXJfX2RheS1zcGFuLS0yLTQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyOC41NzE0MyU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogNDIuODU3MTQlO1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5jYWxlbmRhcl9fZGF5LXNwYW4tLTItNSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiA1Ny4xNDI4NiU7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNhbGVuZGFyX19kYXktc3Bhbi0tMi02IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNhbGVuZGFyX19kYXktc3Bhbi0tMy0xIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNDIuODU3MTQlO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNhbGVuZGFyX19kYXktc3Bhbi0tMy0yIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNDIuODU3MTQlO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDE0LjI4NTcxJTtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuY2FsZW5kYXJfX2RheS1zcGFuLS0zLTMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA0Mi44NTcxNCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMjguNTcxNDMlO1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5jYWxlbmRhcl9fZGF5LXNwYW4tLTMtNCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDQyLjg1NzE0JTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiA0Mi44NTcxNCU7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNhbGVuZGFyX19kYXktc3Bhbi0tMy01IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDQyLjg1NzE0JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNhbGVuZGFyX19kYXktc3Bhbi0tNC0xIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTcuMTQyODYlO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNhbGVuZGFyX19kYXktc3Bhbi0tNC0yIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTcuMTQyODYlO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDE0LjI4NTcxJTtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuY2FsZW5kYXJfX2RheS1zcGFuLS00LTMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1Ny4xNDI4NiU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMjguNTcxNDMlO1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5jYWxlbmRhcl9fZGF5LXNwYW4tLTQtNCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA1Ny4xNDI4NiU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5jYWxlbmRhcl9fZGF5LXNwYW4tLTUtMSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDcxLjQyODU3JTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5jYWxlbmRhcl9fZGF5LXNwYW4tLTUtMiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDcxLjQyODU3JTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAxNC4yODU3MSU7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNhbGVuZGFyX19kYXktc3Bhbi0tNS0zIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDcxLjQyODU3JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNhbGVuZGFyX19kYXktc3Bhbi0tNi0xIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogODUuNzE0MjklO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNhbGVuZGFyX19kYXktc3Bhbi0tNi0yIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDg1LjcxNDI5JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNhbGVuZGFyX19kYXktc3Bhbi0tNy0xIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5jYWxlbmRhcl9fZGF5LXNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jYWxlbmRhcl9fZGF5LXNwYW4tLWNsZWFyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAvKipcbiAqIENhbGVuZGFyIExpc3QgU3R5bGluZ1xuICpcbiAqIEluIGFkZGl0aW9uIHRvIHRoZSAzMC1kYXkgZ3JpZCwgdGhlcmUncyBhIGxpc3Qgdmlld1xuICogZm9yIGVhc2llciB1c2FnZSBvbiBtb2JpbGUgdGhhdCBhcHBlYXJzIGJlbG93IHRoZVxuICogbm9ybWFsIDMwLWRheSBjYWxlbmRhci4gSXQncyBicm91Z2h0IHVwIGEgZml4ZWRcbiAqIHBvc2l0aW9uIHdoZW5ldmVyIHRoZSB1c2VyIHRvdWNoZXMgaXQncyBhc3NvY2lhdGVkXG4gKiBkYXkgb24gdGhlIGNhbGVuZGFyIGdyaWQuXG4gKi9cbiAgLmNhbGVuZGFyX19kYXktaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5jYWxlbmRhcl9fbW9iaWxlLWxpc3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApOyB9XG4gICAgLmNhbGVuZGFyX19tb2JpbGUtbGlzdC5saXN0IHtcbiAgICAgIHotaW5kZXg6IDUwO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAgIC5jYWxlbmRhcl9fbW9iaWxlLWxpc3QgLmV2ZW50LWNhcmQtLXNwYXJzZSAudGltZS0tZW5kLFxuICAgIC5jYWxlbmRhcl9fbW9iaWxlLWxpc3QgLmV2ZW50LWNhcmQtLXNwYXJzZSAudGltZS0tc2VwYXJhdG9yIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIGNsaXA6IGF1dG87IH1cbiAgICAuY2FsZW5kYXJfX21vYmlsZS1saXN0IC5ldmVudC1jYXJkLS1zcGFyc2UgLnRpbWUtLXN0YXJ0IC5ldmVudC1jYXJkX19kYXktLWlubGluZSxcbiAgICAuY2FsZW5kYXJfX21vYmlsZS1saXN0IC5ldmVudC1jYXJkLS1zcGFyc2UgLnRpbWUtLXN0YXJ0IC5ldmVudC1jYXJkX19zZXBhcmF0b3Ige1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgY2xpcDogYXV0bzsgfVxuICAuY2FsZW5kYXJfX2xpc3QsXG4gIC5jYWxlbmRhcl9fbGlzdC1pdGVtLFxuICAuY2FsZW5kYXJfX2xpc3QtLWRheSxcbiAgLmNhbGVuZGFyX19saXN0LWl0ZW0tLWRheSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIC5jYWxlbmRhcl9fbGlzdC1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2QxZDFkMTsgfVxuICAuY2FsZW5kYXJfX2xpc3QtdGl0bGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5jYWxlbmRhcl9fbGlzdC0tZGF5IHtcbiAgICBmbGV4LWdyb3c6IDE7IH1cbiAgLmtpZHMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJkMGE7XG4gICAgYm9yZGVyLWNvbG9yOiAjZTE5ZjAwOyB9XG4gICAgLmtpZHMgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzRhYWNhMjsgfVxuICAgIC5raWRzIGgyLFxuICAgIC5raWRzIGgzLFxuICAgIC5raWRzIGg0IHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC50ZWVucyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNkNDI0NjtcbiAgICBib3JkZXItY29sb3I6ICMxZjI0Mjg7IH1cbiAgICAudGVlbnMgaDIsXG4gICAgLnRlZW5zIGgzLFxuICAgIC50ZWVucyBoNCB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAuYWR1bHQge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0YWFjYTI7XG4gICAgYm9yZGVyLWNvbG9yOiAjMmM4ZTg0OyB9XG4gICAgLmFkdWx0IGgyLFxuICAgIC5hZHVsdCBoMyxcbiAgICAuYWR1bHQgaDQge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYWR1bHQgYSB7XG4gICAgICBjb2xvcjogIzU3YjdkZjsgfVxuICAgICAgLmFkdWx0IGE6Zm9jdXMsIC5hZHVsdCBhOmhvdmVyLCAuYWR1bHQgYTphY3RpdmUge1xuICAgICAgICBjb2xvcjogI2ZmYmQwYTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5jYWxlbmRhci1waWNrZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuY2FsZW5kYXItcGlja2VyLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjA7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmNhbGVuZGFyLXBpY2tlci1pbnB1dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvcGFjaXR5OiAwOyB9XG4gICAgLmNhbGVuZGFyLXBpY2tlci5hY3RpdmUgLmNhbGVuZGFyLXBpY2tlci1pbnB1dCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2UtaW4tb3V0IC4yNXMsIG9wYWNpdHkgZWFzZS1pbi1vdXQgLjI1cztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7IH1cbiAgLmNhbGVuZGFyX19tZW51LXRhc2tzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5sYy1ldmVudF9fZXZlbnQtZGV0YWlscyBoMyB7XG4gICAgZm9udC1zaXplOiAxMXB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxjLWV2ZW50X19saW5rIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5sYy1ldmVudF9fZGF0ZSB7XG4gICAgZm9udC1zaXplOiA5cHg7IH1cbiAgLmxjLWV2ZW50LmRlc2t0b3AtaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubGMtZXZlbnRfX2tleSB7XG4gICAgZm9udC1zaXplOiA5cHg7IH1cbiAgLmFubm91bmNlbWVudCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubGMtZXZlbnQtYWN0aW9ucyxcbiAgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzLFxuICAubGMtZXZlbnRfX3JlZ2lzdHJhdGlvbi1saXN0LFxuICAubGMtcmVwZWF0aW5nLWRhdGVzX190b2dnbGUtaWNvbixcbiAgLmxjLXJlcGVhdGluZy1kYXRlcyxcbiAgLmxjLWV2ZW50LWxvY2F0aW9uLW1hcCxcbiAgLmxjLWV2ZW50LWJyYW5jaC1pbWFnZSxcbiAgLnNjcm9sbC1pbmZvLFxuICAudG9vbHRpcCxcbiAgLmxjLWV2ZW50LXJlZ2lzdHJhbnQtbGlzdC10aXRsZSxcbiAgLmxjLWV2ZW50LWxvY2F0aW9uX19lbWFpbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAudG9vbHRpcCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5sYy1ldmVudF9fd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAubGMtZXZlbnRfX3dyYXBwZXIgcCxcbiAgICAubGMtZXZlbnRfX3dyYXBwZXIgLmxjLW1lc3NhZ2VzLFxuICAgIC5sYy1ldmVudF9fd3JhcHBlciAubGMtZXZlbnRfX2NhdGVnb3JpZXMsXG4gICAgLmxjLWV2ZW50X193cmFwcGVyIC5sYy1ldmVudC1pbmZvLFxuICAgIC5sYy1ldmVudF9fd3JhcHBlciAubGMtZXZlbnQtbG9jYXRpb25fX2FkZHJlc3MsXG4gICAgLmxjLWV2ZW50X193cmFwcGVyIC5sYy1ldmVudF9faW5mby1pdGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfVxuICAubGMtYWRkcmVzc19fbmFtZSxcbiAgLmxjLWV2ZW50X19zdWJ0aXRsZSB7XG4gICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7IH1cbiAgaDMubGMtZXZlbnRfX3N1YnRpdGxlLmxjLWFkZHJlc3NfX25hbWUge1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5sYy1ldmVudF9fc2lkZWJhci0tZmlyc3Qge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxjLXJlcGVhdGluZy1kYXRlc19fdG9nZ2xlIHtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLmxjLXJlcGVhdGluZy1kYXRlc19fd3JhcHBlciB7XG4gICAgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIC5sYy1yZXBlYXRpbmctZGF0ZXNfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBpbmhlcml0OyB9XG4gIC5sYy1yZXBlYXRpbmctZGF0ZXNfX2xpbmsge1xuICAgIHBhZGRpbmc6IDJweCAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubGMtcmVwZWF0aW5nLWRhdGVzX19pdGVtIHtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmxjLWV2ZW50X19jb250ZW50IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gICAgLmxjLWV2ZW50X19jb250ZW50IC5sYy1mb3JtIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmxjLW1lc3NhZ2VzLFxuICAubGMtbWVzc2FnZXNfX21lc3NhZ2Uge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuICAubGMtcHJpbnQtcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDsgfVxuICAubGMtcHJpbnQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubGMtZXZlbnQtd3JhcHBlciAubGMtZXZlbnQtc2lkZWJhcixcbiAgLmxjLWV2ZW50LXdyYXBwZXIgLmxjLWV2ZW50LWNvbnRlbnQge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAubGMtZXZlbnRfX2NhdGVnb3JpZXMge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgLmxjLW1lc3NhZ2VzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5sYy1mb3JtX19oZWFkZXIsXG4gIC5sYy1mb3JtX19maWx0ZXJzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5sYy1yZWdpc3RyYXRpb24tbGlzdCAuaXRlbS1saXN0IGxpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH1cbiAgLmxjLXJlZ2lzdHJhdGlvbi1saXN0IC5yZWdpc3RyYXRpb25fX2l0ZW1zIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBmb250LXNpemU6IDEwcHg7IH1cbiAgICAubGMtcmVnaXN0cmF0aW9uLWxpc3QgLnJlZ2lzdHJhdGlvbl9faXRlbXMgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH1cbiAgLmxjLXJlZ2lzdHJhdGlvbi1saXN0IC5yZWdpc3RyYXRpb25fX2l0ZW1zLS1jb250YWN0LWluZm8ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgLmxjLXJlZ2lzdHJhdGlvbi1saXN0IC5yZWdpc3RyYXRpb25fX2l0ZW1zLS1yZWdpc3RyYW50LWluZm8ge1xuICAgIHBhZGRpbmc6IDAgMTBweDsgfVxuICAubGMtcmVnaXN0cmF0aW9uLWxpc3QgLnJlZ2lzdHJhdGlvbl9faXRlbXMtLWV2ZW50LWluZm8ge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAubGMtcmVnaXN0cmF0aW9uLWxpc3QgLnJlZ2lzdHJhdGlvbl9faXRlbXMtLXNwZWNpYWwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYy1yZWdpc3RyYXRpb24tbGlzdCAucmVnaXN0cmF0aW9uLWl0ZW0tLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAubGMtcmVnaXN0cmF0aW9uLXByaW50LWJ0biB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5idXR0b25fX3ByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnZpZXctZmlsdGVycyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAucmVnaW9uLWhpZ2hsaWdodGVkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cbiIsIi8vIE1peGluc1xuLy9cbi8vIE1peGlucyB1c2VkIGZvciByZXBldGl0aXZlIHByb3BlcnRpZXMuIElmIGEgbWl4aW5cbi8vIGRvZXNuJ3QgaGF2ZSBhbnkgcGFyYW1ldGVycywgdGhlIHBhcmVudGhlc2VzIGFyZVxuLy8gb3B0aW9uYWwuXG4vL1xuLy8gKipFeGFtcGxlczoqKlxuLy8gPHByZSBjbGFzcz1cInByZXR0eXByaW50IGxpbmVudW1zIGxhbmctY3NzXCI+XG4vLyAuZm9vIHtcbi8vICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4vL1xuLy8gICAuYmFyIHtcbi8vICAgICBAaW5jbHVkZSBidXR0b24oY29sb3IoYmx1ZV9vc2NhciksIGNvbG9yKHdoaXRlKSk7XG4vLyAgICAgZmxvYXQ6IGxlZnQ7XG4vLyAgIH1cbi8vIH1cbi8vIDwvcHJlPlxuLy9cbi8vIFN0eWxlZ3VpZGU6IHV0aWxzLm1peGluc1xuXG4vLyBjbGVhcmZpeFxuLy9cbi8vIE1peGluIHRvIGNsZWFyIGEgY29udGFpbmVyIGRpdiB0aGF0IGhhcyBmbG9hdGVkXG4vLyBlbGVtZW50cyBpbnNpZGUgaXQuXG4vL1xuLy8gU3R5bGVndWlkZTogdXRpbHMubWl4aW5zLmNsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogJyc7XG4gIH1cbn1cblxuLy8gaW1hZ2UtcmVwbGFjZVxuLy9cbi8vIEhpZGUgdGV4dCBvbiBhbiBlbGVtZW50IGFjY2Vzc2libHkgdXNpbmcgdGhlIFtTY290dFxuLy8gS2VsbHVtIG1ldGhvZF0oaHR0cDovL3d3dy56ZWxkbWFuLmNvbS8yMDEyLzAzLzAxL3JlcGxhY2luZy10aGUtOTk5OXB4LWhhY2stbmV3LWltYWdlLXJlcGxhY2VtZW50Lylcbi8vIG9mIGltYWdlIHJlcGxhY2VtZW50LlxuLy9cbi8vIFN0eWxlZ3VpZGU6IHV0aWxzLm1peGlucy5pbWFnZS1yZXBsYWNlXG5AbWl4aW4gaW1hZ2UtcmVwbGFjZSgkaW5kZW50OiAxMDAlKSB7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtaW5kZW50OiAkaW5kZW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vLyB2aXN1YWxseS1oaWRkZW4gKGZvcm1lcmx5IGVsZW1lbnQtaW52aXNpYmxlIGluIGRydXBhbCA3KVxuLy9cbi8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgYWNjZXNzaWJsZS5cbi8vIFNlZSBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5XG4vL1xuLy8gU3R5bGVndWlkZTogdXRpbHMubWl4aW5zLmVsZW1lbnQtaW52aXNpYmxlXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIHZpc3VhbGx5LWhpZGRlbi1vZmYgKGZvcm1lcmx5IGVsZW1lbnQtaW52aXNpYmxlLW9mZiBpbiBkcnVwYWwgNylcbi8vXG4vLyBOZWdhdGUgdGhlIGVmZmVjdHMgb2YgdGhlIGVsZW1lbnQtaW52aXNpYmxlIG1peGluLlxuLy9cbi8vIFN0eWxlZ3VpZGU6IHV0aWxzLm1peGlucy5lbGVtZW50LWludmlzaWJsZVxuQG1peGluIHZpc3VhbGx5LWhpZGRlbi1vZmYge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiBhdXRvO1xuICBjbGlwOiBhdXRvO1xufVxuXG4vLyB2aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlXG4vL1xuLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4gYnkgZGVmYXVsdCwgYnV0IHZpc2libGUgd2hlbiBmb2N1c2VkLlxuLy9cbi8vIFN0eWxlZ3VpZGU6IHV0aWxzLm1peGlucy52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbjtcblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuLW9mZjtcbiAgfVxufVxuXG4vLyB2aXNpYmlsaXR5LWhpZGVcbi8vXG4vLyBDb21wbGV0ZWx5IGhpZGUgZWxlbWVudCwgaW5jbHVkaW5nIGZyb20gc2NyZWVuIHJlYWRlcnMuXG4vL1xuLy8gU3R5bGVndWlkZTogdXRpbHMubWl4aW5zLnZpc2liaWxpdHktaGlkZVxuQG1peGluIHZpc2liaWxpdHktaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLy8gcHJpbnQoJGRlY2xhcmF0aW9ucylcbi8vXG4vLyBIZWxwZXIgbWl4aW4gdG8gcHJpbnQgc2FzcyBtYXBzLlxuLy9cbi8vIEV4YW1wbGU6IGBAaW5jbHVkZSBwcmludCgkY29uZmlndXJhdGlvbik7YFxuLy9cbi8vIFN0eWxlZ3VpZGU6IHV0aWxzLm1peGlucy5wcmludFxuQG1peGluIHByaW50KCRkZWNsYXJhdGlvbnMpIHtcbiAgQGVhY2ggJHByb3BlcnR5LCAkdmFsdWUgaW4gJGRlY2xhcmF0aW9ucyB7XG4gICAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gIH1cbn1cblxuLy8gdHJ1bmNhdGVcbi8vXG4vLyBUcnVuY2F0ZSBhbiBlbGVtZW50J3MgdGV4dCB3aXRoIGFuIGVsbGlwc2lzLlxuLy9cbi8vIFN0eWxlZ3VpZGU6IHV0aWxzLm1peGlucy50cnVuY2F0ZVxuQG1peGluIHRydW5jYXRlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8vIGJ1dHRvbigkYmcsICRjb2xvciwgJHBhZGRpbmcsICRjb3JuZXItcmFkaXVzLCAkaG92ZXItYmcsICRob3Zlci1jb2xvcilcbi8vXG4vLyBNaXhpbiBmb3Igc3RhbmRhcmQgYnV0dG9ucy4gQWxsIHBhcmFtZXRlcnMgaGF2ZSBkZWZhdWx0IHZhbHVlcy5cbi8vXG4vLyAqKkV4YW1wbGUgVXNhZ2U6Kipcbi8vIDxwcmUgY2xhc3M9XCJwcmV0dHlwcmludCBsaW5lbnVtcyBsYW5nLWNzc1wiPlxuLy8gLmZvbyB7XG4vLyAgIEBpbmNsdWRlIGJ1dHRvbjtcbi8vIH1cbi8vXG4vLyAuYmFyIHtcbi8vICAgQGluY2x1ZGUgYnV0dG9uKGNvbG9yKGJsdWVfb3NjYXIpLCBjb2xvcih3aGl0ZSksIDJyZW0sIDAuNXJlbSk7XG4vLyB9XG4vL1xuLy8gLmJheiB7XG4vLyAgIEBpbmNsdWRlIGJ1dHRvbihjb2xvcihibHVlX29zY2FyKSwgY29sb3Iod2hpdGUpLCAkaG92ZXItYmc6IGNvbG9yKGdyZWVuX2FjaWQpKTtcbi8vIH1cbi8vIDwvcHJlPlxuLy9cbi8vICRiZyAoIzY2NikgLSBCYWNrZ3JvdW5kIGNvbG9yXG4vLyAkY29sb3IgKCNmZmYpIC0gVGV4dCBjb2xvclxuLy8gJHBhZGRpbmcgKDEuMjVyZW0gMnJlbSkgLSBQYWRkaW5nIGZvciB0aGUgYnV0dG9uXG4vLyAkY29ybmVyLXJhZGl1cyAoNHB4KSAtIEJvcmRlciByYWRpdXMgdG8gdXNlIG9uIHRoZSBidXR0b25cbi8vICRob3Zlci1iZyAtIEhvdmVyIGJhY2tncm91bmQgY29sb3IgKGRlZmF1bHRzIHRvIDMwIGRlZyBodWUgc2hpZnQgb2YgJGJhY2tncm91bmQpXG4vLyAkaG92ZXItY29sb3IgLSBIb3ZlciB0ZXh0IGNvbG9yIChkZWZhdWx0cyB0byAkY29sb3IpXG4vL1xuLy8gU3R5bGVndWlkZTogdXRpbHMubWl4aW5zLmJ1dHRvblxuQG1peGluIGJ1dHRvbigkYmc6ICMyNzkzYzcsICRjb2xvcjogI2ZmZiwgJHBhZGRpbmc6IDEuMjVyZW0gMnJlbSwgJGNvcm5lci1yYWRpdXM6IDRweCwgJGhvdmVyLWJnOiBhZGp1c3QtaHVlKCRiZywgLTMwKSwgJGhvdmVyLWNvbG9yOiAkY29sb3IpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4taGVpZ2h0OiAkYnV0dG9uLW1pbi1oZWlnaHQtc207XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAkY29ybmVyLXJhZGl1cztcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmc7XG4gIH1cbn1cblxuLy8gZGVrZXJuKCRtYXJnaW4pXG4vL1xuLy8gUmVkdWNlIHJpZ2h0IG1hcmdlIHRvIGRlLWtlcm4gdGhlIGl0ZW0uXG4vL1xuLy8gU3R5bGVndWlkZTogdXRpbHMubWl4aW5zLmRla2VyblxuQG1peGluIGRla2VybigkbWFyZ2luOiAkcGFkZGluZy1zbSkge1xuICBtYXJnaW4tcmlnaHQ6IC0oJG1hcmdpbiAvIDIpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgIG1hcmdpbi1yaWdodDogLSgkbWFyZ2luKTtcbiAgfVxufVxuXG4vLy8gRGlzcGxheSB0aGUgZXZlbnQgZGV0YWlscyBob3ZlciBjYXJkIG9uIHRoZSByaWdodCBzaWRlIG9mIHRoZSBzY3JlZW4uXG5AbWl4aW4gZXZlbnQtZGV0YWlscy1vcGVuLXJpZ2h0IHtcbiAgLmxjLWV2ZW50X19tb250aC1kZXRhaWxzIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICAmLmV2ZW50LWRpcmVjdGlvbi1sZWZ0IHtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGFuaW0tc3BlZWQtbW9kZXJhdGUgJGFuaW0tc3RhbmRhcmQgJGFuaW0tc3BlZWQtZmFzdDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcblxuICAgICYuZXZlbnQtZGlyZWN0aW9uLWxlZnQge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIERpc3BsYXkgdGhlIGV2ZW50IGRldGFpbHMgaG92ZXIgY2FyZCBvbiB0aGUgbGVmdCBzaWRlIG9mIHRoZSBzY3JlZW4uXG5AbWl4aW4gZXZlbnQtZGV0YWlscy1vcGVuLWxlZnQge1xuICAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgb3BhY2l0eTogMDtcblxuICAgICYuZXZlbnQtZGlyZWN0aW9uLXJpZ2h0IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIC5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGFuaW0tc3BlZWQtbW9kZXJhdGUgJGFuaW0tc3RhbmRhcmQgJGFuaW0tc3BlZWQtZmFzdDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuXG4gICAgJi5ldmVudC1kaXJlY3Rpb24tcmlnaHQge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgfVxuICB9XG59XG5cbi8vIE1ha2VzIGEgY29sdW1uIHJvdyBzaW1pbGFyIHRvIEJvb3RzdHJhcCA0J3MgYC5yb3dgIGNsYXNzXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJHBhZGRpbmctc20pIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyO1xuICBtYXJnaW4tbGVmdDogLSRndXR0ZXI7XG59XG5cbi8vIFJlbmRlcnMgdGhlIGRlZmF1bHQgY29sdW1uIGNsYXNzZXMsIHNpbWlsYXIgdG8gQm9vdHN0cmFwIDQncyBgLmNvbC0xMmBcbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkcGFkZGluZy1zbSkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXI7XG59XG5cbi8vIFJlbmRlcnMgYSBwYXJ0aWN1bGFyIGNvbHVtbiBzaXplIGJhc2VkIG9uIGEgMTIgY29sdW1uIHdpZHRoIGdyaWRcbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6IDEyKSB7XG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xuICBtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG59XG4iLCIuY2FsZW5kYXJfX251bWJlcnMge1xuICB6LWluZGV4OiAwO1xufVxuIiwiLmxjLXdlZWsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG92ZXJmbG93OiBzY3JvbGw7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWQpIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB9XG5cbiAgLmxjLXdlZWstZGF5IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgLmxjLXdlZWstZGF5LWNvbCB7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvIDgpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWQpIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBkYXJrKTtcbiAgICB9XG4gIH1cblxuICAubGMtd2Vlay10aW1lIHtcbiAgICAuYWxsLWRheS1yb3cge1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmxjLXdlZWstdGltZS1jb2wge1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyA4KTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1kKSB7XG4gICAgICB3aWR0aDogMTAlO1xuICAgIH1cbiAgfVxuXG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteHM7XG4gICAgY29sb3I6IGNvbG9yKGJsYWNrLCBiYXNlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcihncmF5LCBsaWdodCk7XG4gIH1cblxuICB0Ym9keSB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG5cbiAgICArIHRib2R5IHtcbiAgICAgIGJvcmRlci10b3A6ICgyICogMXB4KSBzb2xpZCBjb2xvcihncmF5LCBsaWdodCk7XG4gICAgfVxuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjb2xvcihncmF5LCBsaWdodCk7XG4gIH1cblxuICB0aGVhZCB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZGVlMmU2O1xuICB9XG59XG4iLCIkY2FsZW5kYXItZGF5LWJvcmRlci13aWR0aDogMnB4O1xuJGNhbGVuZGFyLWRheS1ib3JkZXItY29sb3I6IGNvbG9yKGdyYXksIGxpZ2h0KTtcbiRjYWxlbmRhci1kYXktYm9yZGVyOiAkY2FsZW5kYXItZGF5LWJvcmRlci13aWR0aCBzb2xpZCAkY2FsZW5kYXItZGF5LWJvcmRlci1jb2xvcjtcblxuJXN0aWNreS1jb2x1bW4ge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB6LWluZGV4OiAzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgYmFzZSk7XG59XG5cbi5sYy1kYXkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gIGJvcmRlci10b3A6ICRjYWxlbmRhci1kYXktYm9yZGVyO1xuICBib3JkZXItbGVmdDogJGNhbGVuZGFyLWRheS1ib3JkZXI7XG5cbiAgLy8gUmVzZXQgdGFibGUgc3R5bGVzLlxuICB0aCxcbiAgdGQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAkY2FsZW5kYXItZGF5LWJvcmRlcjtcbiAgICBib3JkZXItYm90dG9tOiAkY2FsZW5kYXItZGF5LWJvcmRlcjtcbiAgfVxuXG4gIC5sYy1kYXktcm9vbSB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gIC5sYy1kYXktYnJhbmNoLWNvbCB7XG4gICAgZm9udC1zaXplOiBsYXJnZTtcbiAgfVxuXG4gIC5sYy1kYXktYnJhbmNoLWNvbCxcbiAgLmxjLWRheS1yb29tLWNvbCB7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvIDgpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWQpIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBkYXJrKTtcbiAgICB9XG4gIH1cblxuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXhzO1xuICAgIGNvbG9yOiBjb2xvcihibGFjaywgYmFzZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICB0Ym9keSB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG4gIH1cblxuICB0aGVhZCB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgfVxuXG4gIC5ldmVudC1jYXJkIHtcbiAgICBtaW4td2lkdGg6IDE3NXB4O1xuICB9XG5cbiAgdHI6bm90KC5sYy1kYXktYWxsLWRheS1yb3cpIC5ldmVudC1jYXJkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBBcHBseSB0aGUgc3RpY2t5IGNvbHVtbiBzdHlsZXMuXG4gIC5hbGwtZGF5LXJvdyB7XG4gICAgQGV4dGVuZCAlc3RpY2t5LWNvbHVtbjtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLmxjLWRheS1yb29tLWNvbDpmaXJzdC1vZi10eXBlIHtcbiAgICBAZXh0ZW5kICVzdGlja3ktY29sdW1uO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAubGMtZGF5LXRpbWUgdGgge1xuICAgIEBleHRlbmQgJXN0aWNreS1jb2x1bW47XG4gICAgbGVmdDogMDtcbiAgfVxufVxuIiwiLmxjLW1lbnUtdGFza3Mge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICBhIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICB9XG59XG4iLCIvKiBSZWdpc3RyYXRpb24gTm90aWZpY2F0aW9ucyAqL1xuLmxjLW1lc3NhZ2VzX19tZXNzYWdlIHtcbiAgcGFkZGluZzogMCAkcGFkZGluZy1zbTtcbiAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmcteHM7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyYXksIGxpZ2h0KTtcbn1cbiIsIi8vIERhdGUgSWNvblxuLy9cbi8vIFNpbXBsZSBjYWxlbmRhciBpY29uIHRoYXQgY2FuIGJlIHVzZWQgd2hlbiBkaXNwbGF5aW5nXG4vLyBhIGRhdGUgaW4gYSBtb250aC9kYXkgZm9ybWF0LiBQcmltYXJpbHkgdXNlZCBvbiB0aGVcbi8vICoqRXZlbnQgLSBDYXJkKiogY29tcG9uZW50LlxuLy9cbi8vIE1hcmt1cDogZGF0ZS1pY29uLnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogY29tcG9uZW50cy5jYWxlbmRhci4xMC1kYXRlLWljb25cblxuLmxjLWRhdGUtaWNvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5sYy1kYXRlLWljb25fX2l0ZW0ge1xuICB3aWR0aDogMy41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKGJsdWUpO1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4ubGMtZGF0ZS1pY29uX19pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgY29sb3IoYmx1ZSk7XG59XG5cbi5kYXRlLWljb25fX3llYXIge1xuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmcteHM7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYi10aW55O1xufVxuXG4ubGMtZGF0ZS1pY29uX19pdGVtLS1tb250aCB7XG4gIGxpbmUtaGVpZ2h0OiAyO1xuICBjb2xvcjogY29sb3Iod2hpdGUsIGJhc2UpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibHVlLCBiYXNlKTtcbn1cblxuLmxjLWRhdGUtaWNvbl9faXRlbS0tZGF5IHtcbiAgZm9udC1zaXplOiAkZm9udC1oLW1kO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBjb2xvcjogY29sb3IoZ3JheSwgZGFyayk7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi5sYy1kYXRlLWljb25fX2l0ZW0tLW11bHRpLWRheSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXNpemU6ICRmb250LWgteHhzO1xufVxuXG4ubGMtZGF0ZS1pY29uX19pdGVtLS1kYXktbmFtZSB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYi14eHM7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGdWxsIGV2ZW50IGRhdGUgaWNvblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5sYy1ldmVudF9fc2lkZWJhciB7XG4gIC5sYy1kYXRlLWljb25fX2l0ZW0tLWRheSB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuXG4gIC5sYy1kYXRlLWljb25fX2l0ZW0tLXllYXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZy14cztcbiAgICBmb250LXNpemU6ICRmb250LWIteHhzO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gIH1cbn1cblxuLy8gSGlkZSB5ZWFyIGZyb20gdXBjb21pbmcgcGFnZVxuLmxjLWV2ZW50X19ldmVudC1kZXRhaWxzLS11cGNvbWluZyAubGMtZGF0ZS1pY29uX19pdGVtLS15ZWFyIHtcbiAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuO1xufVxuIiwiLy8gRXZlbnQgLSBDYXJkXG4vL1xuLy8gQ2FyZCBkaXNwbGF5IG9mIGV2ZW50IGRldGFpbHMuXG4vL1xuLy8gVXNlZCBvbjpcbi8vICAgLSBVcGNvbWluZyAocGFuZSlcbi8vICAgLSBVcGNvbWluZyAocGFnZSlcbi8vICAgLSBDYWxlbmRhclxuLy8gICAtIEluZGl2aWR1YWwgRXZlbnQgKHNpZGViYXIpXG4vL1xuLy8gLmV2ZW50LWNhcmQtLXNwYXJzZSAtIENvbmRlbnNlZCBkaXNwbGF5IHdpdGggbGltaXRlZFxuLy8gICBpbmZvcm1hdGlvbiB1c2VkIG9uIGNhbGVuZGFyIG1vbnRoL3dlZWsgZGlzcGxheXNcbi8vIC5ldmVudC1jYXJkLS10ZWFzZXIgLSBTdW1tYXJ5IGRpc3BsYXkgdXNlZCBvbiB0ZWFzZXJcbi8vICAgdmlld3MsIHN1Y2ggYXMgY29udGVudCBwYW5lcy4gRG9lcyBub3QgaW5jbHVkZSB0YWdzLFxuLy8gICBhbmQgdGltZSBpcyBpbmxpbmUgd2l0aCBkYXRlLlxuLy8gLmV2ZW50LWNhcmQtLWZ1bGwgLSBGdWxsIGRpc3BsYXkgdXNlZCBvbiBwYWdlIHZpZXdzIG9yXG4vLyAgIG90aGVyIGRpc3BsYXlzIHRoYXQgZmVhdHVyZSBtb3JlIHJvb20gZm9yIHRoZSBjb250ZW50LlxuLy8gICBEYXRlIGlzIG9uIGEgc2VwYXJhdGUgbGluZSBmcm9tIHRpbWUsIGFuZCB0YWdzIGFyZVxuLy8gICBzdXBwb3J0ZWQuXG4vL1xuLy8gTWFya3VwOiBldmVudC1jYXJkLnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogY29tcG9uZW50cy5jYWxlbmRhci4yMC1ldmVudC1jYXJkXG5cbiRjb2xvci1jb2RpbmctaW5kaWNhdG9yLXdpZHRoOiA2cHg7XG4kZXZlbnQtY2FyZC1jb250ZW50LXdpZHRoOiBjYWxjKDEwMCUgLSAjeyRjb2xvci1jb2RpbmctaW5kaWNhdG9yLXdpZHRoICsgJHBhZGRpbmctc219KTtcblxuLy8gT3ZlcmFsbCBjYXJkIHNldHVwLiBTZWUgYGRhdGUtaWNvbmAgY29tcG9uZW50LlxuLmV2ZW50LWNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJHBhZGRpbmctbWQ7XG4gIGJhY2tncm91bmQ6IGNvbG9yKHdoaXRlLCBkYXJrKTtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBHZW5lcmFsIENhcmQgU3R5bGluZ1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZXZlbnQtY2FyZCxcbi5ldmVudC1jYXJkX190b3AsXG4uZXZlbnQtY2FyZF9fYm90dG9tIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZXZlbnQtY2FyZF9fdGl0bGUge1xuICBtYXJnaW46IDA7XG59XG5cbi5ldmVudC1jYXJkX19yb29tIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmcteHM7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5ldmVudC1jYXJkX19kYXkge1xuICBmb250LXNpemU6ICRmb250LWIteHM7XG59XG5cbi5ldmVudC1jYXJkX190aW1lIHtcbiAgZm9udC1zaXplOiAkZm9udC1oLXh4cztcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLmV2ZW50LWNhcmRfX2RhdGUge1xuICBvcmRlcjogMDtcbn1cblxuLmV2ZW50LWNhcmRfX2RldGFpbHMge1xuICBmbGV4LWdyb3c6IDE7XG4gIG9yZGVyOiAxO1xuICBtYXJnaW4tYm90dG9tOiAoJHBhZGRpbmctc20gKyAkcGFkZGluZy14cyk7XG59XG5cbi5ldmVudC1jYXJkX19sYWJlbHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdGV0Y2g7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgb3JkZXI6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi5ldmVudC1jYXJkX19sYWJlbCB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgcGFkZGluZzogJHBhZGRpbmctc20gJHBhZGRpbmcteHMgMDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAubGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogLjYyNWVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTk7XG4gIH1cbn1cblxuLmxjLWV2ZW50X193cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBsaW5lLWhlaWdodDogJHBhZGRpbmctbWQgKyAkcGFkZGluZy14cztcblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5cbi5sYy1ldmVudF9fZGV0YWlscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkcGFkZGluZy1zbSAwO1xuXG4gIGgyIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLmxjLWV2ZW50X190aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5sYy1ldmVudF9fdXBjb21pbmcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubGMtZXZlbnRfX21vbnRoLXN1bW1hcnkge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vKiBjb2xvciBjb2Rpbmcgc3RyaXAgKi9cbi5sYy1ldmVudF9fY29sb3ItY29kaW5nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICB3aWR0aDogJGNvbG9yLWNvZGluZy1pbmRpY2F0b3Itd2lkdGg7XG4gIG1pbi13aWR0aDogJGNvbG9yLWNvZGluZy1pbmRpY2F0b3Itd2lkdGg7XG59XG5cbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgb3JkZXI6IDA7XG4gIHBhZGRpbmc6IDNweDtcbn1cblxuLmxjLWV2ZW50X19ldmVudC1kZXRhaWxzIHtcbiAgZmxleDogMTtcbiAgd2lkdGg6ICRldmVudC1jYXJkLWNvbnRlbnQtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiAkcGFkZGluZy14cztcbn1cblxuLm5vLWNvbG9yLWNvZGluZyB7XG4gIC5sYy1ldmVudF9fZXZlbnQtZGV0YWlscyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAubGMtZXZlbnRfX21vbnRoLWRldGFpbHMgLmxjLWRhdGUtaWNvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRnVsbCBDYXJkIFN0eWxpbmdcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmV2ZW50LWNhcmQtLWZ1bGwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTcGFyc2UgQ2FyZCBTdHlsaW5nXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5ldmVudC1jYXJkLS1zcGFyc2Uubm9kZS0tdmlldy1tb2RlLXRlYXNlciB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBwYWRkaW5nOiAkcGFkZGluZy14cztcbiAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmcteHM7XG5cbiAgaDIsXG4gIGgzLFxuICBoNCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLmxjLWV2ZW50X19kZXRhaWxzIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cblxuICAuZXZlbnQtY2FyZF9fdGl0bGUsXG4gIC5ldmVudC1jYXJkX19yb29tLFxuICAuZXZlbnQtY2FyZF9fZGF5LXRpbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYi1zbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgLmV2ZW50LWNhcmRfX3RpdGxlIHtcbiAgICBvcmRlcjogMTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjb2xvcihncmF5LCBkYXJrKTtcbiAgfVxuXG4gIC5ldmVudC1jYXJkX19yb29tIHtcbiAgICBvcmRlcjogMjtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIC5ldmVudC1jYXJkX19kZXRhaWxzIHtcbiAgICBvcmRlcjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuZXZlbnQtY2FyZF9fZGF5LXRpbWUge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYi14eHM7XG4gIH1cblxuICAvLyBIaWRlIGV4dHJhIHRleHRcbiAgLnRpbWUtLWVuZCxcbiAgLnRpbWUtLXNlcGFyYXRvciB7XG4gICAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuO1xuICB9XG5cbiAgLnRpbWUtLXN0YXJ0IHtcbiAgICAuZXZlbnQtY2FyZF9fZGF5LS1pbmxpbmUsXG4gICAgLmV2ZW50LWNhcmRfX3NlcGFyYXRvciB7XG4gICAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gTXVsdGktZGF5XG4gIC5jYWxlbmRhcl9fZGF5LS1tdWx0aSAmIHtcbiAgICAuZXZlbnQtY2FyZF9fdGl0bGUsXG4gICAgLmV2ZW50LWNhcmRfX3Jvb20sXG4gICAgLmV2ZW50LWNhcmRfX2RheS10aW1lIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwICRwYWRkaW5nLXNtIDAgMDtcbiAgICB9XG5cbiAgICAudGltZS0tZW5kLFxuICAgIC50aW1lLS1zZXBhcmF0b3Ige1xuICAgICAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuLW9mZjtcbiAgICB9XG5cbiAgICAudGltZS0tc3RhcnQge1xuICAgICAgLmV2ZW50LWNhcmRfX2RheS0taW5saW5lLFxuICAgICAgLmV2ZW50LWNhcmRfX3NlcGFyYXRvciB7XG4gICAgICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbi1vZmY7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jYWxlbmRhcl9fZGF5LS1tdWx0aSB7XG4gIC5ldmVudC1jYXJkX190aXRsZSxcbiAgLmV2ZW50LWNhcmRfX3Jvb20sXG4gIC5ldmVudC1jYXJkX19kYXktdGltZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIC42MjVlbSAwIDA7XG4gIH1cblxuICAudGltZS0tZW5kLFxuICAudGltZS0tc2VwYXJhdG9yLFxuICAudGltZS0tc3RhcnQgLmV2ZW50LWNhcmRfX2RheS0taW5saW5lLFxuICAudGltZS0tc3RhcnQgLmV2ZW50LWNhcmRfX3NlcGFyYXRvciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmVwZWF0IERhdGVzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5kYXRlLWxvY2F0aW9uX19vdGhlci1kYXRlcyB7XG4gIC5kYXRlLWxvY2F0aW9uX190b2dnbGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXhzO1xuICB9XG5cbiAgLmRhdGUtbG9jYXRpb25fX3RvZ2dsZSxcbiAgLmRhdGUtbG9jYXRpb25fX3JlcGVhdHMtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmcteHM7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogIzMzMztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgJGFuaW0tc3RhbmRhcmQgJGFuaW0tc3BlZWQtbW9kZXJhdGU7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JiYjtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmRhdGUtbG9jYXRpb25fX3dyYXBwZXIge1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJGFuaW0tc3RhbmRhcmQgJGFuaW0tc3BlZWQtbW9kZXJhdGU7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5kYXRlLWxvY2F0aW9uX19yZXBlYXRzLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLmRhdGUtbG9jYXRpb25fX3JlcGVhdHMtaXRlbSB7XG4gICAgd2lkdGg6IDQ5JTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIH1cblxuICAuZGF0ZS1sb2NhdGlvbl9fcmVwZWF0cy1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzMzMztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBOb2RlIFJlbGF0ZWQgQ29sb3JzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5sYy1ldmVudC0tY29kZS11bnB1Ymxpc2hlZCB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXhzO1xuICBib3JkZXI6IDVweCBzb2xpZCBjb2xvcihncmF5LCBsaWdodCk7XG59XG5cbi5sYy1ldmVudC0tY29kZS1wdWJsaWMtcmVzZXJ2YXRpb24ge1xuICBwYWRkaW5nOiAkcGFkZGluZy14cztcbiAgYm9yZGVyOiA1cHggc29saWQgY29sb3IoZ3JlZW4sIGJhc2UpO1xufVxuXG4ubGMtZXZlbnQtLWNvZGUtcHJpdmF0ZS1ldmVudCB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXhzO1xuICBib3JkZXI6IDVweCBzb2xpZCBjb2xvcihibHVlLCBiYXNlKTtcbn1cblxuLmxjLWV2ZW50LS1jb2RlLWhhcy1jb25mbGljdCB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXhzO1xuICBib3JkZXI6IDVweCBzb2xpZCBjb2xvcihibHVlLCBiYXNlKTtcbn1cblxuLmxjLWV2ZW50LS1jb2RlLXJvb20tcmVzZXJ2ZWQge1xuICBwYWRkaW5nOiAkcGFkZGluZy14cztcbiAgYm9yZGVyOiA1cHggc29saWQgY29sb3IoZ3JlZW4sIGJhc2UpO1xufVxuXG4ubGMtZXZlbnRfX2tleSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5sYy1ldmVudF9fa2V5LS1jYW5jZWxsZWQge1xuICBjb2xvcjogY29sb3IocmVkLCBiYXNlKTtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBCZWdpbiBBZ2UgUmVsYXRlZCBDb2xvciBzdHlsZXNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmxjLWV2ZW50X19jb2xvci1pbmRpY2F0b3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmF5LCBsaWdodCk7XG59XG5cbi5wYWdlLWV2ZW50cy11cGNvbWluZyB7XG4gIC5sYy1ldmVudF9fd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6ICRwYWRkaW5nLXNtO1xuICB9XG59XG5cbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1hZHVsdCxcbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1hZHVsdHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibHVlLCBsaWdodCk7XG59XG5cbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1ldmVyeW9uZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyZWVuLCBiYXNlKTtcbn1cblxuLmxjLWV2ZW50X19jb2xvci1pbmRpY2F0b3ItLWZhbWlseSxcbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1jaGlsZHJlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHB1cnBsZSwgYmFzZSk7XG59XG5cbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1pbmZhbnQsXG4ubGMtZXZlbnRfX2NvbG9yLWluZGljYXRvci0tYmFiaWVzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoeWVsbG93LCBsaWdodCk7XG59XG5cbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1raWRzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoeWVsbG93KTtcbn1cblxuLmxjLWV2ZW50X19jb2xvci1pbmRpY2F0b3ItLXByZXNjaG9vbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHllbGxvdywgZGFyayk7XG59XG5cbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS1zY2hvb2wtYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocmVkLCBsaWdodCk7XG59XG5cbi5sYy1ldmVudF9fY29sb3ItaW5kaWNhdG9yLS10ZWVuLFxuLmxjLWV2ZW50X19jb2xvci1pbmRpY2F0b3ItLXRlZW5zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocmVkKTtcbn1cblxuLmxjLWV2ZW50X19jb2xvci1pbmRpY2F0b3ItLXRvZGRsZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihyZWQsIGRhcmspO1xufVxuXG4ubGMtZXZlbnRfX2NvbG9yLWluZGljYXRvci0tdG9kZGxlci1vbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmVlbiwgbGlnaHQpO1xufVxuXG4ubm9kZS0tdHlwZS1sYy1jbG9zaW5nIHtcbiAgLmxjLWV2ZW50X19jb2xvci1pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHJlZCwgYmFzZSk7XG4gIH1cblxuICAubGMtZXZlbnRfX2NvbG9yLWNvZGluZy0tYWdlLFxuICAubGMtZXZlbnRfX2NvbG9yLWNvZGluZy0tcHJvZ3JhbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIElFIEZpeGVzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pZTEwLFxuLmllMTEge1xuICAubGMtZXZlbnRfX2V2ZW50LWRldGFpbHMge1xuICAgIGZsZXg6IGluaGVyaXQ7XG4gIH1cbn1cblxuLmxjLXJlZ2lzdHJhdGlvbi1sYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiBsYXJnZXI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5sYy1ldmVudF9fbW9udGgtc3VtbWFyeSAubGMtcmVnaXN0cmF0aW9uLWxhYmVsIHtcbiAgbWFyZ2luLXRvcDogJHBhZGRpbmctc207XG59XG4iLCJib2R5LmxjLW5vLXNjcm9sbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLmxjLWJyYW5jaC1tb2RhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmxjLWJyYW5jaC1tb2RhbF9fd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiB6Z2V0KG1vZGFsKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMzJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuNSk7XG59XG5cbi5sYy1icmFuY2gtbW9kYWxfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgYmFzZSk7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDE1cHggMCAjMzc0MjRhO1xufVxuXG4ubGMtYnJhbmNoLW1vZGFsX19oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgcGFkZGluZzogJHBhZGRpbmctbWQ7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsdWUsIGJhc2UpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cblxuLmxjLWJyYW5jaC1tb2RhbF9fdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYi14cztcbiAgY29sb3I6IGNvbG9yKHdoaXRlLCBiYXNlKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICBmb250LXNpemU6ICRmb250LWItbWQ7XG4gIH1cbn1cblxuLmxjLWJyYW5jaC1tb2RhbF9fY29udGVudC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAkcGFkZGluZy1tZDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuXG4ubGMtYnJhbmNoLW1vZGFsX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkcGFkZGluZy1zbTtcbiAgbWFyZ2luOiAkcGFkZGluZy1zbSAwO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgIHdpZHRoOiA0OSU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtbWQpIHtcbiAgICB3aWR0aDogMzIlO1xuICB9XG59XG5cbi5sYy1icmFuY2gtbW9kYWxfX2JyYW5jaC1zZWxlY3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmMGYwZjA7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2YwZjBmMDtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICMxNzk3ZDQ7XG4gIH1cbn1cblxuLmxjLWJyYW5jaC1tb2RhbF9faW1hZ2UtY29udGFpbmVyIHtcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvIDQpO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nLXNtO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAzKTtcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmxjLWJyYW5jaC1tb2RhbF9fYnJhbmNoLWluZm8ge1xuICBmbGV4LWdyb3c6IDE7XG4gIHdpZHRoOiBwZXJjZW50YWdlKDMgLyA0KTtcbiAgZm9udC1zaXplOiAkZm9udC1iLXhzO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDIgLyAzKTtcbiAgICBmb250LXNpemU6ICRmb250LWItc207XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG4ubGMtYnJhbmNoLW1vZGFsX19icmFuY2gtdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYi1zbTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICBmb250LXNpemU6ICRmb250LWgteHhzO1xuICB9XG59XG5cbi5sYy1icmFuY2gtbW9kYWxfX2V4aXQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ubGMtYnJhbmNoLW1vZGFsX19hZGRyZXNzIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5sYy1icmFuY2gtbW9kYWxfX2NoZWNrYm94ZXMge1xuICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW47XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXG4gIGlucHV0LFxuICBsYWJlbCxcbiAgLmZvcm0tdHlwZS1jaGVja2JveCB7XG4gICAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuO1xuICB9XG59XG5cbi5sYy1icmFuY2gtbW9kYWxfX3N1Ym1pdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWFyZ2luLXRvcDogJHBhZGRpbmctc207XG4gIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLXNtO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmctbWQ7XG4gIH1cbn1cblxuLmxjLWJyYW5jaC1tb2RhbF9fd3JhcHBlciB7XG4gIGxlZnQ6IC05OTk5cHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZS1pbi1vdXQgMjUwbXMgLjVzO1xuXG4gIC5sYy1icmFuY2gtbW9kYWxfX2NvbnRhaW5lciB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2UtaW4tb3V0IDI1MG1zIC41cztcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG5cbiAgJi5vcGVuIHtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDE7XG5cbiAgICAubGMtYnJhbmNoLW1vZGFsX19jb250YWluZXIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG4gIH1cbn1cblxuLmxjLWJyYW5jaC1tb2RhbF9fZm9ybSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmctbWQ7XG4gIHBhZGRpbmctbGVmdDogJHBhZGRpbmctbWQ7XG4gIG1hcmdpbi10b3A6ICRwYWRkaW5nLW1kO1xuICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy1tZDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tZCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAuYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgbWFyZ2luOiAkcGFkZGluZy14cyAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1kKSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbjogMCAkcGFkZGluZy14cztcbiAgICB9XG4gIH1cblxuICAubGMtYnJhbmNoLW1vZGFsX19zZWxlY3QtYWxsLFxuICAubGMtYnJhbmNoLW1vZGFsX19yZXNldCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiA0OSU7XG4gICAgcGFkZGluZzogMS4yNXJlbSAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tZCkge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBpbmhlcml0O1xuICAgICAgcGFkZGluZy1sZWZ0OiBpbmhlcml0O1xuICAgICAgbWFyZ2luOiAwICRwYWRkaW5nLXhzO1xuICAgIH1cbiAgfVxuXG4gIC5sYy1icmFuY2gtbW9kYWxfX3NlbGVjdC1hbGwge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAubGMtYnJhbmNoLW1vZGFsX19yZXNldCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbiIsIi5sYy1mZWF0dXJlZC1ldmVudC1yb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgLmxjLWV2ZW50X19jb2xvci1jb2Rpbmcge1xuICAgIG1hcmdpbi1yaWdodDogJHBhZGRpbmctbWQ7XG4gIH1cbn1cblxuLmxjLWZlYXR1cmVkLWV2ZW50LWNvbnRlbnQtcm93IHtcbiAgQGluY2x1ZGUgbWFrZS1yb3coKTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLmxjLWZlYXR1cmVkLWV2ZW50LWltYWdlLFxuICAubGMtZmVhdHVyZWQtZXZlbnQtY29udGVudCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb2wtcmVhZHkoKTtcbiAgfVxuXG4gIC5sYy1mZWF0dXJlZC1ldmVudC1pbWFnZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWQpIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UtY29sKDMpO1xuICAgIH1cbiAgfVxuXG4gIC5sYy1mZWF0dXJlZC1ldmVudC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tZCkge1xuICAgICAgQGluY2x1ZGUgbWFrZS1jb2woOSk7XG4gICAgfVxuICB9XG59XG5cbi5sYy1mZWF0dXJlZC1ldmVudC1yb3ctdGVybXMge1xuICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuXG4gIHdpZHRoOiA1MCU7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmxjLWZlYXR1cmVkLWV2ZW50LXByb2dyYW0tdHlwZSB7XG4gIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5KCk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWQpIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbCg2KTtcbiAgfVxufVxuXG4ubGMtZmVhdHVyZWQtZXZlbnQge1xuICBAaW5jbHVkZSBldmVudC1kZXRhaWxzLW9wZW4tcmlnaHQ7XG5cbiAgLy8gV2l0aG91dCB0aGlzLCB0aGUgc2xpZGVyIHdpbGwgb3ZlcmxheSB0aGUgRHJ1cGFsIDggYWRtaW4gbWVudSBiYXIuXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBydWxlICovXG4gIHotaW5kZXg6IGF1dG8gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5sYy1mZWF0dXJlZC1ldmVudHMtY29udGFpbmVyIHtcbiAgcGFkZGluZzogJHBhZGRpbmctc20gJHBhZGRpbmctbWQ7XG4gIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLW1kO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgYmFzZSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGdyYXksIGxpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yZC1zbTtcbn1cblxuLmxjLWZlYXR1cmVkLWV2ZW50cyB7XG4gIHVzZXItc2VsZWN0OiB1bnNldDtcblxuICAubGMtZmVhdHVyZWQtZXZlbnQ6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYuc2xpY2staW5pdGlhbGl6ZWQgLmxjLWZlYXR1cmVkLWV2ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5zbGljay10cmFjayxcbiAgLnNsaWNrLWxpc3Qge1xuICAgIC8vIFRyYW5zZm9ybSBtdXN0IGJlIGRpc2FibGVkIGZvciB0aGUgaG92ZXIgcGFuZWxzIHRvIGFuaW1hdGUgcHJvcGVybHkuXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5sYy1mZWF0dXJlZC1ldmVudHMtY29udHJvbHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogJHBhZGRpbmctc207XG5cbiAgLnNsaWNrLWFycm93IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB3aWR0aDogJHBhZGRpbmctbWQ7XG4gICAgaGVpZ2h0OiAkcGFkZGluZy1tZDtcbiAgICBmb250LXNpemU6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJvcmRlcjogMDtcblxuICAgICYuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCN7JGFzc2V0LXBhdGh9L2ljb25zL2NoZXZyb24tbGVmdC1ibGFjay5zdmcpO1xuICAgIH1cblxuICAgICYuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgjeyRhc3NldC1wYXRofS9pY29ucy9jaGV2cm9uLXJpZ2h0LWJsYWNrLnN2Zyk7XG4gICAgfVxuICB9XG5cbiAgLnNsaWNrLWRvdHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgID4gbGkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICB3aWR0aDogJHBhZGRpbmctc207XG4gICAgICBoZWlnaHQ6ICRwYWRkaW5nLXNtO1xuICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRwYWRkaW5nLXhzO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRwYWRkaW5nLXhzO1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmxhY2ssIGJhc2UpO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgb3BhY2l0eTogLjI1O1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkYW5pbS1zcGVlZC1mYXN0O1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICAgICAgb3BhY2l0eTogLjU7XG4gICAgfVxuICB9XG59XG5cbi5sYy1mZWF0dXJlZC1ldmVudC1idG4ge1xuICBtYXJnaW4tdG9wOiAkcGFkZGluZy1zbTtcbn1cbiIsIi5sYy1mb3JtIHtcbiAgLmxjLWZvcm1fX2FkZCB7XG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSwgbGlnaHQpO1xuICB9XG5cbiAgLmxjLWZvcm1fX3JlbW92ZSB7XG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogY29sb3IocmVkKTtcbiAgfVxuXG4gIC8vIFRPRE86IGFkZGl0aW9uYWwgdGVzdGluZ1xuICAuZm9ybS1zdWJtaXQge1xuICAgIG1hcmdpbi10b3A6ICRwYWRkaW5nLXNtO1xuICB9XG5cbiAgLmxjLWZvcm1fX2hhbGYsXG4gIC5sYy1mb3JtX19mdWxsIHtcbiAgICAuZm9ybS10ZXh0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmxjLWZvcm1fX2ZsZXgtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nLXNtO1xuICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy1zbTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGNvbG9yKHdoaXRlLCBkYXJrKTtcblxuICAuZm9ybS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5sYy1mb3JtX19oYWxmIHtcbiAgZmxleDogaW5pdGlhbDtcbiAgLy8gd2lkdGg6IDUwJTtcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmcteHM7XG5cbiAgLmZvcm0taXRlbSxcbiAgLmZvcm0tdGV4dCxcbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIC8vIHBhZGRpbmctbGVmdDogJHBhZGRpbmcteHM7XG4gIH1cbn1cblxuLmxjLWZvcm1fX2hhbGYtLWZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLmxjLWZvcm1fX2Z1bGwge1xuICB3aWR0aDogMTAwJTtcblxuICAuZm9ybS1pdGVtLFxuICAuZm9ybS10ZXh0LFxuICAuZm9ybS1zZWxlY3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5sYy1mb3JtLS1yZXNlcnZlLWJ5LXRpbWUge1xuICAuZm9ybS1pdGVtLFxuICAuZm9ybS1zZWxlY3QsXG4gIC5mb3JtLXRleHQsXG4gIC5mb3JtLXR5cGUtc2VsZWN0LFxuICAuZm9ybS10eXBlLWRhdGUtcG9wdXAsXG4gIC5mb3JtLXN1Ym1pdCxcbiAgLmNvbnRhaW5lci1pbmxpbmUtZGF0ZSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLmZvcm0taXRlbSxcbiAgLmNvbnRhaW5lci1pbmxpbmUge1xuICAgIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZy1zbTtcbiAgfVxuXG4gIC5jb250YWluZXItaW5saW5lLWRhdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuXG4gICAgLmZvcm0taXRlbSxcbiAgICAuZm9ybS1pdGVtIGlucHV0IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkcGFkZGluZy14cztcbiAgICAgIGNsZWFyOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXR5cGUtc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICAgIGNsZWFyOiBsZWZ0O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1tZCkge1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tc3VibWl0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgJHBhZGRpbmcteHM7XG4gICAgfVxuICB9XG59XG5cbi5ibG9jay0tbGMtZ21hcCAuYmxvY2tfX3RpdGxlIHtcbiAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuO1xufVxuXG4ubGMtZm9ybV9fbWVzc2FnZSB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBkYXJrKTtcbn1cblxuLy8gLmxjLWZvcm1fX3JlbW92ZS0tbiB7XG4vLyAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXQtcGF0aH0vaWNvbnMvdGltZXMuc3ZnJyk7XG4vLyAgIGJhY2tncm91bmQtc2l6ZTogMnJlbTtcbi8vICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuLy8gICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuLy8gICBkaXNwbGF5OiBibG9jaztcbi8vICAgcGFkZGluZzogMDtcbi8vICAgbWFyZ2luOiAwIDAgMCAxcmVtO1xuLy8gICB3aWR0aDogMy44cmVtO1xuLy8gICBoZWlnaHQ6IDMuOHJlbTtcbi8vICAgbGluZS1oZWlnaHQ6IDE7XG4vLyAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuLy8gICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuLy8gICBvdmVyZmxvdzogaGlkZGVuO1xuXG4vLyAgIC5sYy1mb3JtICYuZm9ybS1zdWJtaXQge1xuLy8gICAgIG1hcmdpbi10b3A6IDA7XG4vLyAgIH1cbi8vIH1cblxuLyogZm9ybSAqL1xuLy8gLnBhbmUtZm9ybSB7XG4vLyAgIHNlbGVjdCB7XG4vLyAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbi8vICAgICB3aWR0aDogMTAwJTtcblxuLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuLy8gICAgICAgd2lkdGg6IGluaGVyaXQ7XG4vLyAgICAgfVxuLy8gICB9XG4vLyB9XG5cbi5sYy1mb3JtLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKHdoaXRlLCBkYXJrKTtcbn1cblxuLmxjLWZvcm0sXG4ubm9kZS1sYy1yZXNlcnZhdGlvbi1mb3JtLFxuLm5vZGUtbGMtZXZlbnQtZm9ybSxcbi5ub2RlLWxjLWNsb3NpbmctZm9ybSB7XG4gIGlucHV0W3R5cGU9J3RleHQnXSxcbiAgaW5wdXRbdHlwZT0nZW1haWwnXSxcbiAgaW5wdXRbdHlwZT0ncGFzc3dvcmQnXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIHNlbGVjdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGJvcmRlci1jb2xvcjogY29sb3Iod2hpdGUsIGRhcmspO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgICB3aWR0aDogdW5zZXQ7XG4gICAgfVxuICB9XG59XG5cbi5sYy1mb3JtICNhamF4LXBob25lLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tZCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogNDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IC41ZW07XG4gIH1cbn1cblxuLmxjLWZvcm0gI2FqYXgtcGhvbmUtZXh0ZW5zaW9uLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tZCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMjAlO1xuICB9XG59XG5cbi5mb3JtLXRlbCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gR2VuZXJhbCBTdHlsaW5nXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEBUT0RPOiBGaWd1cmUgb3V0IGhvdyB0byBnZXQgdGhpcyB6LWluZGV4IHdvcmtpbmcuXG4vLyAubGMtZXZlbnQge1xuLy8gICBwb3NpdGlvbjogcmVsYXRpdmU7XG4vLyAgIHotaW5kZXg6IHpnZXQodHJvcG8pO1xuLy8gfVxuXG4ubGMtZXZlbnRfX3N1YnRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG5oNC5sYy1ldmVudF9fc3VidGl0bGUge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG59XG5cbi5sYy1ldmVudF9fZGV0YWlscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLmxjLWV2ZW50LWluZm8ge1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmctc207XG4gIH1cblxuICAubGMtZXZlbnQtaW5mb19faXRlbSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgfVxufVxuXG4ubGMtZXZlbnRfX3JlZ2lzdHJhdGlvbi1pY29uLFxuLmxjLWV2ZW50X19yZWdpc3RyYXRpb24tcGF5bWVudC1pY29uIHtcbiAgd2lkdGg6IDE2cHg7XG4gIG1pbi13aWR0aDogMTZweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDVweCAxMHB4IDAgNXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWluZGVudDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG59XG5cbi5sYy1ldmVudF9fcmVnaXN0cmF0aW9uLWljb24ge1xuICBtYXJnaW4tdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0LXBhdGh9L2ljb25zL3BlbmNpbC1zcXVhcmUtby1ibGFjay5zdmcnKTtcbn1cblxuLmxjLWV2ZW50X19yZWdpc3RyYXRpb24tcGF5bWVudC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldC1wYXRofS9pY29ucy9kb2xsYXItc2lnbi1zb2xpZC5zdmcnKTtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNb250aCBIb3ZlclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogemdldChtYXgpICsgNTA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAkcGFkZGluZy1sZyAoJHBhZGRpbmctc20gKyAkcGFkZGluZy1tZCk7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogY29sb3Iod2hpdGUpO1xuICBib3JkZXI6IDJweCBzb2xpZCBjb2xvcihncmF5LCBiYXNlKTtcbiAgYm9yZGVyLXRvcDogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkYW5pbS1zcGVlZC1tb2RlcmF0ZSAkYW5pbS1zdGFuZGFyZCAkYW5pbS1zcGVlZC1mYXN0LCBvcGFjaXR5IDBzICgkYW5pbS1zcGVlZC1tb2RlcmF0ZSArICRhbmltLXNwZWVkLWZhc3QpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5jYWxlbmRhci0tZGF5IHtcbiAgLmxjLWRheS1yb29tIC5ub2RlLS10eXBlLWxjLWV2ZW50IHtcbiAgICBAaW5jbHVkZSBldmVudC1kZXRhaWxzLW9wZW4tcmlnaHQ7XG4gIH1cblxuICBAZm9yICRpIGZyb20gNSB0aHJvdWdoIDgge1xuICAgIC5sYy1kYXktcm9vbTpudGgtY2hpbGQoI3skaX0pIC5ub2RlLS10eXBlLWxjLWV2ZW50IHtcbiAgICAgIEBpbmNsdWRlIGV2ZW50LWRldGFpbHMtb3Blbi1sZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4uY2FsZW5kYXItLXdlZWsge1xuICAubGMtd2Vlay1kYXkgLm5vZGUtLXR5cGUtbGMtZXZlbnQge1xuICAgIEBpbmNsdWRlIGV2ZW50LWRldGFpbHMtb3Blbi1yaWdodDtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSA1IHRocm91Z2ggOCB7XG4gICAgLmxjLXdlZWstZGF5Om50aC1jaGlsZCgjeyRpfSkgLm5vZGUtLXR5cGUtbGMtZXZlbnQge1xuICAgICAgQGluY2x1ZGUgZXZlbnQtZGV0YWlscy1vcGVuLWxlZnQ7XG4gICAgfVxuICB9XG59XG5cbi5jYWxlbmRhci0tbW9udGgge1xuICAuY2FsZW5kYXJfX2RheS0tbXVsdGkgLmV2ZW50LWNhcmQsXG4gIC5jYWxlbmRhcl9fZGF5IC5ldmVudC1jYXJkIHtcbiAgICBAaW5jbHVkZSBldmVudC1kZXRhaWxzLW9wZW4tcmlnaHQ7XG4gIH1cblxuICBAZm9yICRpIGZyb20gNSB0aHJvdWdoIDgge1xuICAgIC5jYWxlbmRhcl9fZGF5Om50aC1jaGlsZCgjeyRpfSkgLmV2ZW50LWNhcmQge1xuICAgICAgQGluY2x1ZGUgZXZlbnQtZGV0YWlscy1vcGVuLWxlZnQ7XG4gICAgfVxuICB9XG59XG5cbi5jYWxlbmRhci0tdXBjb21pbmcge1xuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICAubGMtZXZlbnQtLXVwY29taW5nIHtcbiAgICAgIEBpbmNsdWRlIGV2ZW50LWRldGFpbHMtb3Blbi1yaWdodDtcbiAgICB9XG5cbiAgICAubGMtZXZlbnQtLXVwY29taW5nOm50aC1jaGlsZCgybisyKSB7XG4gICAgICBAaW5jbHVkZSBldmVudC1kZXRhaWxzLW9wZW4tbGVmdDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtbWQpIHtcbiAgICAubGMtZXZlbnQtLXVwY29taW5nOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICBAaW5jbHVkZSBldmVudC1kZXRhaWxzLW9wZW4tcmlnaHQ7XG4gICAgfVxuXG4gICAgLmxjLWV2ZW50LS11cGNvbWluZzpudGgtY2hpbGQoM24rMikge1xuICAgICAgQGluY2x1ZGUgZXZlbnQtZGV0YWlscy1vcGVuLWxlZnQ7XG4gICAgfVxuXG4gICAgLmxjLWV2ZW50LS11cGNvbWluZzpudGgtY2hpbGQoM24rMykge1xuICAgICAgQGluY2x1ZGUgZXZlbnQtZGV0YWlscy1vcGVuLWxlZnQ7XG4gICAgfVxuICB9XG59XG5cbi5ibG9jay1sYy1jYWxlbmRhci11cGNvbWluZy1ibG9jayB7XG4gIC5jYWxlbmRhci0tdXBjb21pbmcuaG92ZXItbGVmdCAubGMtZXZlbnQtLXVwY29taW5nIHtcbiAgICBAaW5jbHVkZSBldmVudC1kZXRhaWxzLW9wZW4tbGVmdDtcbiAgfVxuXG4gIC5jYWxlbmRhci0tdXBjb21pbmcuaG92ZXItcmlnaHQgLmxjLWV2ZW50LS11cGNvbWluZyB7XG4gICAgQGluY2x1ZGUgZXZlbnQtZGV0YWlscy1vcGVuLXJpZ2h0O1xuICB9XG59XG5cbi53aGl0ZS1wb3B1cCAubGMtZXZlbnQge1xuICBAaW5jbHVkZSBldmVudC1kZXRhaWxzLW9wZW4tcmlnaHQ7XG59XG5cbi5sYy1ldmVudF9fbW9udGgtZGV0YWlscyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIC5sYy1ldmVudF9fY29udGFpbmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy14cztcbiAgICBmb250LXNpemU6ICRmb250LWIteHM7XG4gIH1cblxuICAubGMtZXZlbnRfX3RpdGxlLS1kZXRhaWxzIHtcbiAgICBmb250LXNpemU6ICRmb250LWgteHhzO1xuICB9XG5cbiAgLmxjLWV2ZW50X190aXRsZS0tc3RhdGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgY29sb3I6IGNvbG9yKHJlZCwgYmFzZSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gIC5sYy1ldmVudF9fZGF0ZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmcteHM7XG4gICAgZm9udC1zaXplOiAkZm9udC1iLXNtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICB9XG5cbiAgLmRhdGUtbG9jYXRpb25fX3Jvb20ge1xuICAgIGNvbG9yOiBjb2xvcihncmF5LCBiYXNlKTtcbiAgfVxuXG4gIC5sYy1ldmVudF9fYWdlLWdyb3VwcyxcbiAgLmxjLWV2ZW50X19ib2R5IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmxjLWV2ZW50X19jb250YWN0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmcteHM7XG4gIH1cbn1cblxuLy8gTW9iaWxlXG4ubGMtZXZlbnQge1xuICAmLmRlc2t0b3AtaGlkZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ubGMtZXZlbnRfcm9vbS1zZXR1cC1ub3RlcyB7XG4gID4gZGl2IHtcbiAgICBwYWRkaW5nLXRvcDogJHBhZGRpbmctc207XG4gICAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nLXNtO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmctc207XG4gICAgbWFyZ2luLXRvcDogJHBhZGRpbmctc207XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLXNtO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgY29sb3IoYmx1ZSwgYmFzZSk7XG4gIH1cbn1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTWVudSBUYXNrcy9UYWJzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5sYy1ldmVudF9fbWVudS10YXNrcyB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1kKSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGbGV4Ym94IGxheW91dFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubGMtZXZlbnRfX3dyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGNsZWFyOiBib3RoO1xuICBsaW5lLWhlaWdodDogJHBhZGRpbmctbWQgKyAkcGFkZGluZy14cztcblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5cbi5sYy1ldmVudF9fY29udGVudCB7XG4gIC5sYy1ldmVudF9fbGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbn1cblxuLmxvY2F0aW9uLWFkZHJlc3Mge1xuICBwYWRkaW5nOiAkcGFkZGluZy1tZCAwIDAgMDtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGaXJzdCBTaWRlYmFyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5sYy1ldmVudF9fc2lkZWJhciB7XG4gIC5sYy1ldmVudF9fZGV0YWlscyB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteHM7XG4gICAgYm9yZGVyOiAycHggc29saWQgY29sb3IoYmx1ZSk7XG4gIH1cblxuICAubGMtZXZlbnQtaW5mb19fY2FuY2VsbGVkIHtcbiAgICBjb2xvcjogY29sb3IocmVkLCBiYXNlKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5cbi8qIEdtYXAgKi9cbi5sYy1ldmVudC1sb2NhdGlvbiAubGMtZXZlbnRfX3N1YnRpdGxlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ubGMtZXZlbnQtbG9jYXRpb24gLmxjLWFkZHJlc3NfX2xpbmUge1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4vKiBSZXBlYXQgRGF0ZXMgKi9cbi5sYy1yZXBlYXRpbmctZGF0ZXNfX3RvZ2dsZSxcbi5sYy1yZXBlYXRpbmctZGF0ZXNfX2xpbmsge1xuICBjb2xvcjogY29sb3IoZ3JheSwgZGFyayk7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyYXksIGxpZ2h0KTtcbiAgYm9yZGVyOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICRhbmltLXN0YW5kYXJkICRhbmltLXNwZWVkLW1vZGVyYXRlO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyYXksIGJhc2UpO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxufVxuXG4ubGMtcmVwZWF0aW5nLWRhdGVzX190b2dnbGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJHBhZGRpbmcteHM7XG4gIG1hcmdpbjogJHBhZGRpbmcteHMgMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG4ubGMtcmVwZWF0aW5nLWRhdGVzX190b2dnbGUtaWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTVweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBtYXJnaW4tbGVmdDogJHBhZGRpbmctc207XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtaW5kZW50OiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0LXBhdGh9L2ljb25zL2NoZXZyb24tZG93bi5zdmcnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgJGFuaW0tc3RhbmRhcmQgJGFuaW0tc3BlZWQtZmFzdDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG59XG5cbi5sYy1yZXBlYXRpbmctZGF0ZXNfX3RvZ2dsZS5vcGVuIHtcbiAgLmxjLXJlcGVhdGluZy1kYXRlc19fdG9nZ2xlLWljb24ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbn1cblxuLmxjLXJlcGVhdGluZy1kYXRlc19fd3JhcHBlciB7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAkYW5pbS1zdGFuZGFyZCAkYW5pbS1zcGVlZC1tb2RlcmF0ZTtcbn1cblxuLmxjLXJlcGVhdGluZy1kYXRlc19fbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi5sYy1yZXBlYXRpbmctZGF0ZXNfX2l0ZW0ge1xuICB3aWR0aDogNDklO1xuICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy14cztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICYubGMtcmVwZWF0aW5nLWRhdGUtbWFzdGVyID4gLmxjLXJlcGVhdGluZy1kYXRlc19fbGluazo6YmVmb3JlIHtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgIGNvbnRlbnQ6ICdcXDI2MDUnO1xuICB9XG59XG5cbi5sYy1yZXBlYXRpbmctZGF0ZXNfX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTWFpbiBjb250ZW50IGFyZWFcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKiBDYXRlZ29yaWVzIHN0eWxpbmcgKi9cbi5sYy1ldmVudF9fY2F0ZWdvcmllcyB7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG5cbiAgYSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxufVxuXG4vKiBSZWdpc3RyYWlvbiBGb3JtICovXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2Vjb25kIFNpZGViYXJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmxjLWV2ZW50X19pbmZvLWl0ZW0ge1xuICBsaW5lLWhlaWdodDogMS43O1xufVxuXG5cbi5sYy1ldmVudF9fc2lkZWJhci0tc2Vjb25kIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgZmxleDogaW5pdGlhbDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1tZCkge1xuICAgIGZsZXg6IDE7XG4gICAgd2lkdGg6IDIwMHB4O1xuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVXBjb21pbmcgUGFnZVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uY2FsZW5kYXJfX3dyYXAtLXVwY29taW5nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmxjLWV2ZW50LS11cGNvbWluZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy1zbTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICB3aWR0aDogNTAlO1xuXG4gICAgJjpudGgtY2hpbGQoMm4tMSkge1xuICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmcteHM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmcteHM7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLW1kKSB7XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmctc20gKyAkcGFkZGluZy14cztcblxuICAgICY6bnRoLWNoaWxkKDJuLTEpLFxuICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDNuLTIpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nLXNtO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDNuLTEpIHtcbiAgICAgIHBhZGRpbmc6IDAgJHBhZGRpbmcteHM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoM24pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmctc207XG4gICAgfVxuICB9XG5cbiAgLmV2ZW50LWNhcmQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgZGFyayk7XG4gICAgYm9yZGVyOiAycHggc29saWQgY29sb3IoZ3JheSwgYmFzZSk7XG4gIH1cblxuICAubGMtZXZlbnRfX2V2ZW50LWRldGFpbHMtLXVwY29taW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLmxjLWRhdGUtaWNvbl9faXRlbS0tZGF5IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmcteHM7XG4gIH1cbn1cblxuLmxjLWV2ZW50X19ldmVudC1kZXRhaWxzLS1sY19yZWdpc3RyYW50X3ByaW50ID4gKiB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4ubGMtZXZlbnRfX3RpdGxlLFxuLmxjLWV2ZW50X190aXRsZS0tZGV0YWlscyB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmxjLWV2ZW50X19pbmZvIHtcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZy1zbTtcblxuICAubGMtZXZlbnRfX3RpdGxlLFxuICAubGMtZXZlbnRfX3RpdGxlLS1kZXRhaWxzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAkZm9udC1oLXh4cztcbiAgfVxufVxuXG4ubGMtZXZlbnRfX21vbnRoLWRldGFpbHMge1xuICAubGMtZGF0ZS1pY29uIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nLXhzO1xuICB9XG5cbiAgLmxjLWRhdGUtaWNvbl9faXRlbS0tZGF5IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cblxuICAubGMtZGF0ZS1pY29uX19pdGVtLS15ZWFyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmcteHM7XG4gICAgZm9udC1zaXplOiAkZm9udC1iLXh4cztcbiAgICBib3JkZXItdG9wOiBub25lO1xuICB9XG59XG5cbi5sYy1ldmVudC1pbmZvX19pdGVtLS1jYXRlZ29yaWVzIHtcbiAgZm9udC1zaXplOiAkZm9udC1iLXhzO1xufVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBVcGNvbWluZyBCbG9ja1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYmxvY2stbGMtY2FsZW5kYXItdXBjb21pbmctYmxvY2sge1xuICAubGMtZXZlbnQtLXVwY29taW5nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5sYy1ldmVudCB7XG4gICAgJjpudGgtY2hpbGQoMm4tMSksXG4gICAgJjpudGgtY2hpbGQoMm4pLFxuICAgICY6bnRoLWNoaWxkKDNuLTIpLFxuICAgICY6bnRoLWNoaWxkKDNuLTEpLFxuICAgICY6bnRoLWNoaWxkKDNuKSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5ldmVudC1jYXJkIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmxjLWV2ZW50X19ldmVudC1kZXRhaWxzIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbSAkcGFkZGluZy1zbSAkcGFkZGluZy1zbSAwO1xuICB9XG59XG5cbi5zY3JvbGwtaW5mbyB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5sYy1ldmVudF9fcmVnaXN0cmF0aW9uLWxpc3Qge1xuICAudmlldy1jb250ZW50IHtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICB9XG5cbiAgdGgsXG4gIHRkIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgdGQgLmRyb3BidXR0b24td2lkZ2V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBidXR0b24ge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMsXG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBJRSBGaXhlcy5cbi5pZTEwLFxuLmllMTEge1xuICAubGMtZXZlbnRfX3NpZGViYXItLWZpcnN0IHtcbiAgICAubGMtZXZlbnQtaW5mbyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubGMtZXZlbnRfX2JyYW5jaC1pbWFnZSB7XG4gICAgICBhIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmxjLWV2ZW50X19mZWF0dXJlZC1pbWFnZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5vcGVuLXBvcHVwLWxpbmsge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmNhbGVuZGFyX193cmFwLS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5sYy1ldmVudC13cmFwcGVyIHtcbiAgQGluY2x1ZGUgbWFrZS1yb3c7XG5cbiAgLmxjLWV2ZW50LXNpZGViYXIsXG4gIC5sYy1ldmVudC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeTtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy1tZDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1kKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB1bnNldDtcbiAgICB9XG4gIH1cblxuICAubGMtZXZlbnQtc2lkZWJhciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWQpIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UtY29sKDMpO1xuICAgIH1cbiAgfVxuXG4gIC5sYy1ldmVudC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tZCkge1xuICAgICAgQGluY2x1ZGUgbWFrZS1jb2woNik7XG4gICAgfVxuICB9XG5cbiAgLmxjLWV2ZW50LWRldGFpbHMge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCRwYWRkaW5nLXhzKTtcbiAgfVxuXG4gIC5sYy1kYXRlLWljb24sXG4gIC5sYy1ldmVudC1pbmZvIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeSgkcGFkZGluZy14cyk7XG4gIH1cblxuICAubGMtZGF0ZS1pY29uIHtcbiAgICBmbGV4OiAwIDAgMy41cmVtO1xuXG4gICAgLmxjLWRhdGUtaWNvbl9faXRlbSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cblxuICAubGMtZXZlbnQtaW5mbyB7XG4gICAgZmxleDogMjtcblxuICAgIC5sYy1ldmVudC1zdWJ0aXRsZSB7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG4gIH1cblxuICAubGMtZXZlbnQtaW5mby1jYW5jZWxsZWQge1xuICAgIGNvbG9yOiBjb2xvcihyZWQsIGJhc2UpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cblxuICAubGMtZXZlbnQtcm9vbS1zZXR1cC1pbWFnZSBpbWcge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGdyYXksIGxpZ2h0KTtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJkLXNtO1xuICB9XG5cbiAgLmxjLWV2ZW50LXNlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLXNtO1xuICB9XG59XG5cbi5ub2RlLS10eXBlLWxjLWNsb3NpbmcgLmxjLWV2ZW50LWNvbnRlbnQge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tZCkge1xuICAgIEBpbmNsdWRlIG1ha2UtY29sKDkpO1xuICB9XG59XG5cbi5sYy1jbG9zaW5nLWNvbG9yIHtcbiAgY29sb3I6IGNvbG9yKHJlZCwgYmFzZSk7XG59XG4iLCIvLyBSZXNlcnZlIHJvb20gbGFuZGluZyBwYWdlLlxuLmxjLXJlc2VydmF0aW9uLW9wdGlvbnNfX2xpbmtzIHtcbiAgQGluY2x1ZGUgbWFrZS1yb3c7XG5cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmxjLXJlc2VydmF0aW9uLWJ0biB7XG4gIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5O1xuXG4gIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLXNtO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLW1kKSB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb2woNCk7XG4gIH1cblxuICBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogJHBhZGRpbmctbWQgJHBhZGRpbmctbGc7XG4gICAgZm9udC1zaXplOiAkZm9udC1iLXNtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLW1kKSB7XG4gICAgICBmb250LXNpemU6ICRmb250LWgtbWQ7XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxMTVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgcGF0aCB7XG4gICAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICAgIH1cblxuICAgICAgZyB7XG4gICAgICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucmVzZXJ2YXRpb24tdHlwZXMge1xuICBAaW5jbHVkZSBtYWtlLXJvdztcblxuICAucmVzZXJ2YXRpb24tdHlwZSB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb2wtcmVhZHk7XG5cbiAgICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy1tZDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1tZCkge1xuICAgICAgQGluY2x1ZGUgbWFrZS1jb2woNCk7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLmxjLXJlc2VydmF0aW9uLW9wdGlvbnNfX2xpbmstLXJvb20gYSB7XG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0LXBhdGh9L2ljb25zL2J1aWxkaW5nLnN2ZycpO1xuICB9XG59XG5cbi5sYy1yZXNlcnZhdGlvbi1vcHRpb25zX19saW5rLS10aW1lIGEge1xuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldC1wYXRofS9pY29ucy9jbG9jay5zdmcnKTtcbiAgfVxufVxuXG4ubGMtcmVzZXJ2YXRpb24tb3B0aW9uc19fbGluay0tZGF0ZSBhIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXQtcGF0aH0vaWNvbnMvY2FsZW5kYXIuc3ZnJyk7XG4gIH1cbn1cblxuLy8gUmVzZXJ2ZSByb29tIHJvb20gbGFuZGluZyBwYWdlLlxuLmxjLWF2YWlsYWJsZS1yb29tcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4ubGMtYXZhaWxhYmxlLXJvb21zX19ncm91cC1sYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubGMtYXZhaWxhYmxlLXJvb21zX19ncm91cCB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG59XG5cbi5sYy1hdmFpbGFibGUtcm9vbXMge1xuICBAaW5jbHVkZSBtYWtlLXJvdztcbn1cblxuLmxjLWF2YWlsYWJsZS1yb29tc19fcm93IHtcbiAgQGluY2x1ZGUgbWFrZS1jb2wtcmVhZHk7XG5cbiAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmctbWQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb2woNCk7XG4gIH1cbn1cblxuLmxjLWF2YWlsYWJsZS1yb29tc19fY29udGVudCB7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogJHBhZGRpbmctbWQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGdyZXksIGxpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yZC1zbTtcblxuICAubGMtYXZhaWxhYmxlLXJvb21zX19yb29tIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLmJ1dHRvbnMge1xuICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICB9XG4gIH1cblxuICAuYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmctc207XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4ubGMtYXZhaWxhYmxlLXJvb21zX19pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogbm9uZTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbn1cblxuLmxjLWF2YWlsYWJsZS1yb29tc19fZ3JvdXAtbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6ICRwYWRkaW5nLXNtO1xuICBtYXJnaW4tbGVmdDogJHBhZGRpbmctc207XG59XG5cbi5sYy1hdmFpbGFibGUtcm9vbXNfX3Jvb20ge1xuICAuYnV0dG9ucy5idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXhzICRwYWRkaW5nLXNtO1xuICB9XG59XG5cbi5sYy1hdmFpbGFibGUtcm9vbXNfX2RhdGUge1xuICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy1zbTtcbn1cblxuLmxjLWF2YWlsYWJsZS1yb29tcy0tZXJyb3ItbWVzc2FnZS1jb250YWluZXIge1xuICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeSgpO1xufVxuXG4vLyBJbmRpdmlkdWFsIFJvb21zLlxuLmxjLXJvb20tZnVsbCB7XG4gIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy10aW1lLWJsb2NrcyB7XG4gICAgbWFyZ2luOiAkcGFkZGluZy1tZCAwO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5yb29tLXJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3c7XG4gIH1cblxuICAucm9vbS1jb2x1bW4ge1xuICAgIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWQpIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UtY29sKDYpO1xuICAgIH1cbiAgfVxuXG4gIC5sYy1yb29tLWZlYXR1cmVkLWltYWdlIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeTtcblxuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tZCkge1xuICAgICAgQGluY2x1ZGUgbWFrZS1jb2woNik7XG4gICAgfVxuICB9XG5cbiAgLmxjLXJvb20tc2V0dXBzLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWQpIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UtY29sKDYpO1xuICAgIH1cblxuICAgIC5sYy1yb29tLXNldHVwcyB7XG4gICAgICBAaW5jbHVkZSBtYWtlLXJvdztcblxuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICAucm9vbS1zZXR1cHMtY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5O1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCg2KTtcblxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy1tZDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1zbSkge1xuICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKDMpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgLnJvb20tc2V0dXBzX190aXRsZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yb29tLXNldHVwc19faW1hZ2Uge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IC41cmVtO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgY29sb3IoZ3JleSwgbGlnaHQpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmQtc207XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1zbSkge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMjFweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucm9vbS1zZXR1cHNfX3RpdGxlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAuNXJlbTtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGNvbG9yKGdyZXksIGRhcmspLCAuOCk7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmxjLWhpZGRlbi1zZXR1cHM6bm90KC5zaG93KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmxjLXJvb20tc2V0dXAtdG9nZ2xlIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuICB9XG5cbiAgLmxjLXJvb20tZGV0YWlscyB7XG4gICAgLnJvb20tZmllbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmctc207XG4gICAgfVxuICB9XG5cbiAgLy8gV2VlayB2aWV3IHN0eWxpbmdcbiAgLmxjLXJlc2VydmF0aW9uLXdlZWstZGlzcGxheSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC5sYy1yZXNlcnZhdGlvbi13ZWVrLWRpc3BsYXkge1xuICAgIG1hcmdpbjogMCAkcGFkZGluZy1tZDtcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWQpIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICBoMyB7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy1zbTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtYi1tZDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcihncmF5LCBsaWdodCk7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJi50b2RheSB7XG4gICAgICBoMyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBkYXJrKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgaDMge1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJkLW1kO1xuICAgICAgfVxuXG4gICAgICAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtaG91cnMge1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJkLW1kO1xuICAgICAgfVxuXG4gICAgICAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtaG91cjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtcXVhcnRlcjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmQtbWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtYWN0aW9ucyB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICB9XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBoMyB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGNvbG9yKGdyYXksIGxpZ2h0KTtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmQtbWQ7XG4gICAgICB9XG5cbiAgICAgIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy1ob3VycyB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGNvbG9yKGdyYXksIGxpZ2h0KTtcbiAgICAgIH1cblxuICAgICAgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzLWhvdXJzIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmQtbWQ7XG4gICAgICB9XG5cbiAgICAgIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy1ob3VyOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy1xdWFydGVyOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmQtbWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtaG91cnMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgY29sb3IoZ3JheSwgbGlnaHQpO1xuICB9XG5cbiAgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzLWhvdXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy10aW1lLS1ob3VyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG5cbiAgLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzLXF1YXJ0ZXJzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6ICRmb250LWIteHM7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIH1cblxuICAubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtcXVhcnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXhzO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogY29sb3IoZ3JheSwgYmFzZSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGNvbG9yKGdyYXksIGxpZ2h0KTtcbiAgfVxuXG4gIC5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy1xdWFydGVyLS1ibG9ja2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgZGFyayk7XG4gIH1cbn1cblxuLmxjLWZvcm0tLXJlc2VydmUtcm9vbS1vcGVuaW5ncyB7XG4gIC5mb3JtLXN1Ym1pdCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLmxjLWZvcm1fX2ZpbHRlcnMge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICBsYWJlbCB7XG4gICAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW47XG4gICAgfVxuXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5sYy1yZXNlcnZhdGlvbi1kYXRlLWNvbnRhaW5lciA+IC5mb3JtLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgLmZvcm0taXRlbS1zZWxlY3RlZC1kYXRlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkcGFkZGluZy1zbTtcbiAgICAgIH1cblxuICAgICAgLmZvcm0tZGF0ZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLmZvcm0tZGF0ZTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIH1cblxuICAgICAgLmZvcm0tc3VibWl0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubGMtZm9ybV9fZmlsdGVycy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgLmxjLWZvcm1fX25leHQsXG4gIC5sYy1mb3JtX19sYXN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbWFyZ2luOiAkcGFkZGluZy1tZCAwO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoI3skYXNzZXQtcGF0aH0vaWNvbnMvY2hldnJvbi1sZWZ0LWJsYWNrLnN2Zyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiA2NSU7XG4gIH1cblxuICAubGMtZm9ybV9fbmV4dCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCN7JGFzc2V0LXBhdGh9L2ljb25zL2NoZXZyb24tcmlnaHQtYmxhY2suc3ZnKTtcbiAgfVxufVxuXG4ubGMtcmVzZXJ2YXRpb24tb3BlbmluZ3MtdGltZSB7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuLmxjLXJlc2VydmF0aW9uLW9wZW5pbmdzLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogMjJweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogNHB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogNHB4O1xuICB9XG59XG5cbi5sYy1yZXNlcnZhdGlvbi1vcGVuaW5ncy1oaWRlLXRleHQge1xuICB3aWR0aDogNDVweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtaW5kZW50OiA5OTk5cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8vIElFIEZpeGVzLlxuLmllMTAsXG4uaWUxMSB7XG4gIC5sYy1yb29tLS1mdWxsIHtcbiAgICAucm9vbS1zZXR1cHNfX2ltYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucm9vbS1zZXR1cHNfX3RpdGxlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuIiwiLyogVG9nZ2xlIEZpbHRlcnMgKi9cbi5sYy1mb3JtX19oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG59XG5cbi5idXR0b24ubGMtZm9ybV9fdG9nZ2xlIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkcGFkZGluZy1zbTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy1zbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXNpemU6ICRmb250LWgteHhzO1xuICBjb2xvcjogY29sb3Iod2hpdGUsIGJhc2UpO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibHVlLCBiYXNlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1tZCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldC1wYXRofS9pY29ucy9saXN0LnN2ZycpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSwgZGFyayk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG4ubGMtZm9ybV9fZmlsdGVycyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJHBhZGRpbmctc20gJHBhZGRpbmctbWQ7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy1tZDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xlYXI6IGxlZnQ7XG4gIGNvbG9yOiBjb2xvcih3aGl0ZSwgYmFzZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsdWUsIGJhc2UpO1xuXG4gIHNlbGVjdCB7XG4gICAgY29sb3I6ICMwMDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtbWQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgJi5jb2xsYXBzZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmZvcm0tdHlwZS1kYXRlIHtcbiAgY29sb3I6IGNvbG9yKGdyYXkpO1xufVxuXG4ubGMtZm9ybV9fZmlsdGVycy1jb250YWluZXIge1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgLjI1cztcblxuICAuZm9ybS1pdGVtLFxuICAuZm9ybS1hY3Rpb25zIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZm9ybS1jaGVja2JveGVzIC5mb3JtLWl0ZW0sXG4gIC5mb3JtLXJhZGlvcyAuZm9ybS1pdGVtIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBkZXRhaWxzIHtcbiAgICBib3JkZXI6IDA7XG5cbiAgICA+IGRpdiB7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy14cyAkcGFkZGluZy1zbTtcbiAgICAgIGNvbG9yOiBjb2xvcihibGFjaywgbGlnaHQpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIGJhc2UpO1xuICAgIH1cblxuICAgID4gc3VtbWFyeSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtIDAgJHBhZGRpbmcteHMgMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIGNvbG9yOiBjb2xvcih3aGl0ZSwgYmFzZSk7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGNvbG9yKHdoaXRlLCBiYXNlKTtcblxuICAgICAgJjo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXQtcGF0aH0vaWNvbnMvY2hldnJvbi1jaXJjbGUtZG93bi5zdmcnKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZGV0YWlsc1tvcGVuXSA+IHN1bW1hcnk6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG5cbiAgLmZpZWxkc2V0LXdyYXBwZXIge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXhzICRwYWRkaW5nLXNtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY29sb3I6IGNvbG9yKGJsYWNrLCBsaWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIGJhc2UpO1xuXG4gICAgJi5jb2xsYXBzZWQge1xuICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDAgJHBhZGRpbmctc207XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIC5sYy1jaGVja2JveC13cmFwcGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy14cztcbiAgfVxuXG4gIC5mb3JtLWdyb3VwOm5vdCguZm9ybS1jaGVjaykgPiBsYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxufVxuXG4uY29sb3ItY29kaW5nIHtcbiAgLmxjLWNoZWNrYm94LXdyYXBwZXIgLmZvcm0taXRlbSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteHM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIGRhcmspO1xuICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgY29sb3Iod2hpdGUsIGRhcmspO1xuICB9XG59XG5cbi8vIFN0eWxlIGZvciByb29tIGZpbHRlcnMuXG4ubGMtcm9vbV9fcm9vbS1vcGVuaW5ncyB7XG4gIC5sYy1mb3JtX19maWx0ZXJzLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWl0ZW0ge1xuICAgIG1hcmdpbi1yaWdodDogJHBhZGRpbmctc207XG4gIH1cblxuICAuZm9ybS1hY3Rpb25zIHtcbiAgICBwYWRkaW5nLXRvcDogJHBhZGRpbmctc207XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyM3B4O1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXN1Ym1pdCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC5mb3JtLWRhdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGdyYXksIGJhc2UpO1xuICB9XG5cbiAgLmxjLWZvcm1fX2ZpbHRlcnMge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtIDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8gQWdlIFJlbGF0ZWQgQ29sb3JzLlxuLmNvbG9yLWNvZGluZyAubGMtY2hlY2tib3gtd3JhcHBlci0tYWR1bHQgLmZvcm0taXRlbSxcbi5jb2xvci1jb2RpbmcgLmxjLWNoZWNrYm94LXdyYXBwZXItLWFkdWx0cyAuZm9ybS1pdGVtIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IGNvbG9yKGJsdWUsIGxpZ2h0KTtcbn1cblxuLmNvbG9yLWNvZGluZyAubGMtY2hlY2tib3gtd3JhcHBlci0tZXZlcnlvbmUgLmZvcm0taXRlbSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiBjb2xvcihncmVlbiwgYmFzZSk7XG59XG5cbi5jb2xvci1jb2RpbmcgLmxjLWNoZWNrYm94LXdyYXBwZXItLWZhbWlseSAuZm9ybS1pdGVtLFxuLmNvbG9yLWNvZGluZyAubGMtY2hlY2tib3gtd3JhcHBlci0tY2hpbGRyZW4gLmZvcm0taXRlbSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiBjb2xvcihwdXJwbGUsIGJhc2UpO1xufVxuXG4uY29sb3ItY29kaW5nIC5sYy1jaGVja2JveC13cmFwcGVyLS1pbmZhbnQgLmZvcm0taXRlbSxcbi5jb2xvci1jb2RpbmcgLmxjLWNoZWNrYm94LXdyYXBwZXItLWJhYmllcyAuZm9ybS1pdGVtIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IGNvbG9yKHllbGxvdywgbGlnaHQpO1xufVxuXG4uY29sb3ItY29kaW5nIC5sYy1jaGVja2JveC13cmFwcGVyLS1raWRzIC5mb3JtLWl0ZW0ge1xuICBib3JkZXItbGVmdC1jb2xvcjogY29sb3IoeWVsbG93LCBiYXNlKTtcbn1cblxuLmNvbG9yLWNvZGluZyAubGMtY2hlY2tib3gtd3JhcHBlci0tcHJlc2Nob29sIC5mb3JtLWl0ZW0ge1xuICBib3JkZXItbGVmdC1jb2xvcjogY29sb3IoeWVsbG93LCBkYXJrKTtcbn1cblxuLmNvbG9yLWNvZGluZyAubGMtY2hlY2tib3gtd3JhcHBlci0tc2Nob29sLWFnZSAuZm9ybS1pdGVtIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IGNvbG9yKHJlZCwgbGlnaHQpO1xufVxuXG4uY29sb3ItY29kaW5nIC5sYy1jaGVja2JveC13cmFwcGVyLS10ZWVuIC5mb3JtLWl0ZW0sXG4uY29sb3ItY29kaW5nIC5sYy1jaGVja2JveC13cmFwcGVyLS10ZWVucyAuZm9ybS1pdGVtIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IGNvbG9yKHJlZCwgYmFzZSk7XG59XG5cbi5jb2xvci1jb2RpbmcgLmxjLWNoZWNrYm94LXdyYXBwZXItLXRvZGRsZXIgLmZvcm0taXRlbSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiBjb2xvcihyZWQsIGRhcmspO1xufVxuXG4uY29sb3ItY29kaW5nIC5sYy1jaGVja2JveC13cmFwcGVyLS10b2RkbGVyLW9uZSAuZm9ybS1pdGVtIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IGNvbG9yKGdyZWVuLCBsaWdodCk7XG59XG5cbi5sYy1mb3JtIC5oaWRlLWZpbHRlciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi5tZnAtd3JhcCAubWZwLWlubGluZS1ob2xkZXIgLm1mcC1jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmxjLWV2ZW50LWFjdGlvbnNfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZ3JvdzogMTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogJHBhZGRpbmcteHMgMDtcbn1cblxuLmxjLWV2ZW50LWFjdGlvbnNfX2l0ZW0ge1xuICBmbGV4OiBub25lO1xuICB3aWR0aDogYXV0bztcbiAgbWluLXdpZHRoOiAwO1xuICBtYXJnaW4tcmlnaHQ6ICRwYWRkaW5nLXNtO1xuICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy1zbTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXhzICRwYWRkaW5nLXNtO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsdWUsIGJhc2UpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gICAgfVxuICB9XG59XG5cbi8vIFdoaXRlIHBvcC11cCBibG9ja3MuXG4ubGMtZXZlbnQtYWN0aW9uc19fY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIGJhc2UpO1xuXG4gIC5oZWFkZXIge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLW1kICRwYWRkaW5nLXNtO1xuICAgIGNvbG9yOiBjb2xvcih3aGl0ZSwgYmFzZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSwgYmFzZSk7XG5cbiAgICBoMiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLmJvZHkge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtICRwYWRkaW5nLW1kO1xuICB9XG5cbiAgLmxpbmtzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgdWwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICYubWVzc2FnZXNfX2l0ZW0ge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gIH1cblxuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteHMgJHBhZGRpbmctc207XG4gICAgbWFyZ2luOiAwICRwYWRkaW5nLXNtICRwYWRkaW5nLXNtIDA7XG4gICAgY29sb3I6IGNvbG9yKHdoaXRlLCBiYXNlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibHVlLCBiYXNlKTtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJkLW1kO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWQpIHtcbiAgICAgIG1hcmdpbi10b3A6ICRwYWRkaW5nLXNtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6IGNvbG9yKHdoaXRlLCBiYXNlKTtcbiAgICB9XG4gIH1cbn1cblxuLndoaXRlLXBvcHVwIHtcbiAgLm1mcC1jbG9zZSB7XG4gICAgd2lkdGg6IDY0cHg7XG4gICAgaGVpZ2h0OiA2NHB4O1xuICAgIGNvbG9yOiBjb2xvcih3aGl0ZSwgYmFzZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSwgbGlnaHQpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCBlYXNlLWluLW91dCAuMjVzO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsdWUsIGJhc2UpO1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG4gIH1cblxuICAubGMtZXZlbnQtYWN0aW9uc19faWNvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogM3B4O1xuICAgIHdpZHRoOiAxN3B4O1xuICAgIGhlaWdodDogMTdweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE3cHg7XG4gIH1cbn1cblxuLmxjLWV2ZW50LWFjdGlvbnNfX3NvY2lhbC1pY29uIGEge1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWluZGVudDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHg7XG59XG5cbi5sYy1ldmVudC1hY3Rpb25zX19pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNnB4O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC14cykge1xuICAgIG1hcmdpbi1yaWdodDogJHBhZGRpbmctc207XG4gIH1cbn1cblxuLmxjLWV2ZW50LWFjdGlvbnNfX3RleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXhzKSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgY2xpcDogYXV0bztcbiAgfVxufVxuXG4ubGMtZXZlbnQtYWN0aW9uc19faWNvbi0tY2FsZW5kYXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0LXBhdGh9L2ljb25zL2NhbGVuZGFyLnN2ZycpO1xufVxuXG4ubGMtZXZlbnQtYWN0aW9uc19faWNvbi0tcHJpbnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0LXBhdGh9L2ljb25zL3ByaW50LnN2ZycpO1xufVxuXG4ubGMtZXZlbnQtYWN0aW9uc19faWNvbi0tc2hhcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0LXBhdGh9L2ljb25zL21haWwtZm9yd2FyZC5zdmcnKTtcbn1cblxuLmxjLWV2ZW50LWFjdGlvbnNfX2ljb24tLWdvb2dsZSxcbi5sYy1ldmVudC1hY3Rpb25zX19pY29uLS1pY2FsIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldC1wYXRofS9pY29ucy9nb29nbGUuc3ZnJyk7XG59XG5cbi5sYy1ldmVudC1hY3Rpb25zX19pY29uLS1yZW1pbmRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXQtcGF0aH0vaWNvbnMvY2xvY2stby5zdmcnKTtcbn1cblxuLmxjLWV2ZW50LWFjdGlvbnNfX2ljb24tLXBlbmNpbCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXQtcGF0aH0vaWNvbnMvcGVuY2lsLXNxdWFyZS1vLnN2ZycpO1xufVxuXG4ubGMtZXZlbnQtYWN0aW9uc19fc29jaWFsLWljb24tLWZhY2Vib29rIGEge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0LXBhdGh9L2ljb25zL2ZhY2Vib29rLnN2ZycpO1xufVxuXG4ubGMtZXZlbnQtYWN0aW9uc19fc29jaWFsLWljb24tLXR3aXR0ZXIgYSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXQtcGF0aH0vaWNvbnMvdHdpdHRlci5zdmcnKTtcbn1cblxuLmxjLWV2ZW50LWFjdGlvbnNfX3NvY2lhbC1pY29uLS1saW5rZWRpbiBhIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldC1wYXRofS9pY29ucy9saW5rZWRpbi5zdmcnKTtcbn1cblxuLmxjLWV2ZW50LWFjdGlvbnNfX3NvY2lhbC1pY29uLS1lbWFpbCBhIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldC1wYXRofS9pY29ucy9lbnZlbG9wZS5zdmcnKTtcbn1cblxuLy8gQXR0ZW5kYW5jZSBwZXIgR3JvdXAuXG4jYXR0ZW5kYW5jZS1maWVsZHNldC13cmFwcGVyIHtcbiAgLmxjLWZvcm1fX2ZsZXgtd3JhcHBlciB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nLXhzO1xuICAgIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLXNtO1xuICB9XG5cbiAgLmZvcm0taXRlbSxcbiAgLmZvcm0tYWN0aW9ucyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCxcbiAgLmZvcm0tdGV4dCxcbiAgLmxjLWZvcm1fX3JlbW92ZSB7XG4gICAgbWluLWhlaWdodDogMzBweDtcbiAgICBtYXJnaW46IDJweCAwO1xuICAgIGJvcmRlci1jb2xvcjogY29sb3IoZ3JheSwgbGlnaHQpO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmQtc207XG4gIH1cblxuICAuZm9ybS1zZWxlY3QsXG4gIC5sYy1mb3JtX19yZW1vdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBkYXJrKTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICRhbmltLXN0YW5kYXJkICRhbmltLXNwZWVkLWZhc3Q7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIGRhcmssIC0gMzApO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgcGFkZGluZzogMCAkcGFkZGluZy14cztcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjJyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldC1wYXRofS9pY29ucy9hbmdsZS1kb3duLWJsYWNrLnN2ZycpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMS4zcmVtO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAubGMtZm9ybV9fcmVtb3ZlIHtcbiAgICBtYXJnaW4tbGVmdDogJHBhZGRpbmctc207XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuIiwiLmJsb2NrLWxjLWJyYW5jaC1zZWxlY3Qge1xuICB3aWR0aDogMTAwJTtcblxuICBoMiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtbWQpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuICB9XG59XG5cbi5sYy1icmFuY2gtc2VsZWN0X193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAkYW5pbS1zdGFuZGFyZCAkYW5pbS1zcGVlZC1mYXN0O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1tZCkge1xuICAgIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxufVxuXG4ubGMtYnJhbmNoLXNlbGVjdF9fd3JhcHBlci0tb3BlbiB7XG4gIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5sYy1icmFuY2gtc2VsZWN0X19zZWxlY3QtaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmctbWQ7XG4gIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLXNtO1xuICBjb2xvcjogY29sb3Iod2hpdGUsIGJhc2UpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibHVlLCBsaWdodCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXQtcGF0aH0vaWNvbnMvYW5nbGUtZG93bi5zdmcnKSwgbm9uZTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4ubGMtYnJhbmNoLXNlbGVjdC1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5sYy1icmFuY2gtc2VsZWN0X19icmFuY2guYWN0aXZlLWJyYW5jaCB7XG4gIEBpbmNsdWRlIG1ha2Utcm93KDVweCk7XG59XG5cbi5sYy1icmFuY2gtc2VsZWN0X19hZGRyZXNzLFxuLmxjLWJyYW5jaC1zZWxlY3RfX2hvdXJzIHtcbiAgQGluY2x1ZGUgbWFrZS1jb2wtcmVhZHkoNXB4KTtcbiAgcGFkZGluZy10b3A6ICRwYWRkaW5nLXhzO1xuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmcteHM7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb2woNik7XG4gIH1cbn1cblxuLmxjLWJyYW5jaC1zZWxlY3RfX2hvdXJzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgY29sb3Iod2hpdGUsIGRhcmspO1xufVxuXG4vLyBIb3VycyBUb2dnbGUgSWNvblxuLmpzLWhvdXJzLXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAkcGFkZGluZy1tZDtcbiAgcmlnaHQ6ICRwYWRkaW5nLW1kO1xuICB6LWluZGV4OiAxMDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG9yZGVyOiAwO1xuICBwYWRkaW5nOiA1cHg7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgY29sb3I6IGNvbG9yKHdoaXRlLCBiYXNlKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSwgYmFzZSk7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSwgbGlnaHQpO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAvLyBAVE9ETzogVGllIHRoaXMgaW50byB0aGUgY29sbGFwc2Ugc2l0ZSB2YXJpYWJsZSwgc28gdGhhdCBpdCBkb2Vzbid0XG4gIC8vIGhhdmUgdG8gYmUgaGFuZGxlZCB3aXRoIGEgdGhlbWUgb3ZlcnJpZGUuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1tZCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhvdXJzLXRvZ2dsZV9faWNvbiB7XG4gIEBpbmNsdWRlIGltYWdlLXJlcGxhY2U7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMi41cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgY29sb3I6IGNvbG9yKHdoaXRlLCBiYXNlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSwgYmFzZSk7XG4gIGJvcmRlci1yYWRpdXM6IDM1cHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDEwcHggY29sb3Iod2hpdGUsIGJhc2UpO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtN3B4O1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAycHg7XG4gICAgaGVpZ2h0OiA3cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibHVlLCBiYXNlKTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0IC4xcztcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gY3ViaWMtYmV6aWVyKC40MiwgMCwgLjE5LCAxLjM1KSAuNzVzO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgdG9wOiAtMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB9XG5cbiAgJi5vcGVuIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNTQwZGVnKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBEZWZhdWx0IGNvbGxhcHNlZCBzdHlsaW5nLlxuLmxjLWJyYW5jaC1zZWxlY3RfX2NvbGxhcHNlLWJ1dHRvbiB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuLmxjLWJyYW5jaC1zZWxlY3RfX2NvbGxhcHNlZC13cmFwcGVyIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLm9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCIubGF5b3V0X19zZWN0aW9uLS1hbm5vdW5jZW1lbnRzIHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLnZpZXdzLWZpZWxkLXRpdGxlIHtcbiAgICBmb250LXNpemU6ICRmb250LWgteHM7XG4gIH1cbn1cbiIsIi5icmFpbnRyZWUtbWV0aG9kIHtcbiAgLmJyYWludHJlZS1tZXRob2RfX2NoZWNrIHtcbiAgICBwYWRkaW5nOiAwICRwYWRkaW5nLXNtO1xuXG4gICAgc3ZnIHtcbiAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cblxuI2xjLXBheW1lbnQtYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmctbWQ7XG59XG4iLCIubGMtZmVlcyxcbi5sYy1mZWVzX19mZWUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLmxjLWZlZXNfX2ZlZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBib3R0b207XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogJHBhZGRpbmcteHMgMDtcbiAgZm9udC1zaXplOiAkZm9udC1iLXh4cztcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGNvbG9yKGdyYXksIGxpZ2h0KTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICB9XG59XG5cbi5sYy1mZWVzX19mZWUtLXRvdGFsIHtcbiAgZm9udC1zaXplOiAkZm9udC1iLW1kO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzAwMDtcbn1cbiIsIi8vIFJlZ2lzdHJhdGlvbiBQcmludCBQYWdlIFN0eWxpbmcuXG4ubGMtcmVnaXN0cmF0aW9uLWxpc3Qge1xuICAuaXRlbS1saXN0IGxpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmctc207XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLXNtO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgY29sb3IoZ3JheSwgYmFzZSk7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAucmVnaXN0cmF0aW9uLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgLnJlZ2lzdHJhdGlvbl9faXRlbXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLXNtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgICB3aWR0aDogMzMuMzMzJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtbWQpIHtcbiAgICAgIHdpZHRoOiAyNSU7XG4gICAgfVxuICB9XG5cbiAgLnJlZ2lzdHJhdGlvbl9faXRlbXMtLWNvbnRhY3QtaW5mbyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLXNtKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZy1tZDtcbiAgICB9XG4gIH1cblxuICAucmVnaXN0cmF0aW9uX19pdGVtcy0tcmVnaXN0cmFudC1pbmZvIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtc20pIHtcbiAgICAgIHBhZGRpbmc6IDAgJHBhZGRpbmctc207XG4gICAgfVxuICB9XG5cbiAgLnJlZ2lzdHJhdGlvbl9faXRlbXMtLWV2ZW50LWluZm8ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKCRicC1zbSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZy1tZDtcbiAgICB9XG4gIH1cblxuICAucmVnaXN0cmF0aW9uX19pdGVtcy0tc3BlY2lhbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucmVnaXN0cmF0aW9uLWl0ZW0tLW5hbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYi1sZztcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG5cbi5sYy1ldmVudF9fcmVnaXN0cmF0aW9uLWxpc3Qge1xuICB0Ym9keSB7XG4gICAgdHIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5OTk7XG5cbiAgICAgIC5kcm9wYnV0dG9uLW11bHRpcGxlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0taXRlbS1yZWctc2F2ZS1zdGF0ZSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXNtO1xuICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcihncmV5LCBsaWdodCk7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmQtc207XG59XG5cbi5sYy1yZWdpc3RyYW50LWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAkcGFkZGluZy1tZDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmctbWQ7XG59XG5cbi5sYy1yZWdpc3RyYW50LXN1YmhlYWRpbmcge1xuICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy1tZDtcbn1cblxuLmxjLXJlZ2lzdHJhdGlvbi1maWVsZCB7XG4gIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLXNtO1xufVxuXG4uZmllbGQtLW5hbWUtZmllbGQtbGMtcmVnaXN0cmF0aW9uLXJlZmVyZW5jZSB7XG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZy1zbTtcbiAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmctc207XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjb2xvcihncmV5LCBsaWdodCk7XG59XG4iLCIubGMtY2xvc2luZy1sb2NhdGlvbl9fYWRkcmVzczpub3QoOmxhc3QtY2hpbGQpIHtcbiAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nLW1kO1xufVxuIiwiQG1lZGlhIHByaW50IHtcbiAgLy8gVXRpbGl0aWVzXG4gIC8vXG4gIC8vIEltcG9ydCB2YXJpYWJsZXMgYW5kIG1peGluc1xuICAvLyBTaG91bGQgY29udGFpbiBOTyBjc3Mgb3V0cHV0LlxuICAvLyBPbmx5IHZhcmlhYmxlcyAvIG1peGlucyAvIHNldHRpbmdzLlxuICBAaW1wb3J0ICdpbml0LWJhc2UnO1xuXG4gIC8vIEJhc2VcbiAgQGltcG9ydCAnYmFzZS9pbXBvcnQucHJpbnQnO1xuXG4gIC8vIENvbXBvbmVudHNcbiAgQGltcG9ydCAnY29tcG9uZW50cy9pbXBvcnQucHJpbnQnO1xufVxuIiwiKiB7XG4gIGNvbG9yOiBjb2xvcihibGFjaywgYmFzZSkgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8qKlxuICogQ2FsZW5kYXIgbW9udGggZGlzcGxheS5cbiAqXG4gKiBBbGwgcGFkZGluZyBhbmQgZm9udC1zaXplcyBpbiB0aGUgbW9udGggZGlzcGxheVxuICogc2hvdWxkIHVzZXMgZW0gdW5pdHMgKG5vdCByZW0gb3IgcHgpLCBhcyBkZWZpbmVkXG4gKiBpbiB0aGUgY2FsZW5kYXIgY29tcG9uZW50J3MgbG9jYWwgdmFyaWFibGVzIHBhcnRpYWwuXG4gKiBUaGUgcmVhc29uaW5nIGZvciB0aGF0IGlzIHNvIHRoYXQgZm9udC1zaXplcyBjYW4gYmVcbiAqIGRlZmluZWQgcmVsYXRpdmUgdG8gZWFjaCBvdGhlciwgYW5kIHRoZW4gdGhlIG92ZXJhbGxcbiAqIGZvbnQvcGFkZGluZyBzaXplcyBvZiB0aGUgY2FsZW5kYXIgY2FuIGJlIGFkanVzdGVkXG4gKiBwcm9wb3J0aW9uYWxseSB3aGlsZSBvbmx5IG1vZGlmeWluZyB0aGUgcm9vdCBmb250XG4gKiBzaXplIG9uIHRoZSAuY2FsZW5kYXItLW1vbnRoIGNvbnRhaW5lci5cbiAqL1xuLmNhbGVuZGFyLS1tb250aCB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtYi14eHM7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcblxuICAubW9iaWxlLWhpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICB9XG5cbiAgLmV2ZW50LWNhcmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5sYy1ldmVudF9fcmVnaXN0cmF0aW9uLWljb24sXG4gIC5sYy1ldmVudF9fcmVnaXN0cmF0aW9uLXBheW1lbnQtaWNvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5jYWxlbmRhcl9fd2VlayB7XG4gIC5ldmVudC1jYXJkX190aXRsZSxcbiAgLmV2ZW50LWNhcmRfX2RldGFpbHMsXG4gIC5ldmVudC1jYXJkX19yb29tIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgfVxufVxuXG4uY2FsZW5kYXItLW1vbnRoLFxuLmNhbGVuZGFyX193ZWVrIHtcbiAgLm5vZGUtLXR5cGUtbGMtY2xvc2luZyB7XG4gICAgYm9yZGVyOiAzcHggc29saWQgY29sb3IocmVkLCBiYXNlKTtcbiAgfVxuXG4gIC5ub2RlLS10eXBlLWxjLXJlc2VydmF0aW9uIHtcbiAgICBib3JkZXI6IDNweCBzb2xpZCBjb2xvcihncmVlbiwgYmFzZSk7XG4gIH1cblxuICAuYWxsLWRheSB7XG4gICAgYm9yZGVyOiAzcHggc29saWQgY29sb3IoYmx1ZSwgbGlnaHQpO1xuICB9XG5cbiAgLnByaXZhdGUtZXZlbnQge1xuICAgIGJvcmRlcjogM3B4IHNvbGlkIGNvbG9yKGJsdWUsIGRhcmspO1xuICB9XG5cbiAgLmhhcy1jb25mbGljdCB7XG4gICAgYm9yZGVyOiAzcHggc29saWQgY29sb3IocHVycGxlLCBiYXNlKTtcbiAgfVxufVxuXG5hLmNhbGVuZGFyX19kYXktLWN1cnJlbnQge1xuICBjb2xvcjogY29sb3Iod2hpdGUsIGJhc2UpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmF5LCBiYXNlKTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkYW5pbS1zdGFuZGFyZCAkYW5pbS1zcGVlZC1mYXN0O1xufVxuXG4vKipcbiAqIEhlYWRlciBhbmQgcGFnZXJcbiAqXG4gKiBUaGUgaGVhZGVyIGFuZCBwYWdlciB1c2UgZmxleGJveCB0b1xuICogbGF5b3V0IGFuZCB2ZXJ0aWNhbGx5IGNlbnRlciB0aGUgaGVhZGVyXG4gKiBpdGVtcy5cbiAqL1xuLmNhbGVuZGFyX19tb250aC1wYWdlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDE7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDYwMHB4O1xuICBwYWRkaW5nOiAkcGFkZGluZy1zbSAwO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY2FsZW5kYXJfX3dyYXAtLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY2FsZW5kYXJfX3dyYXAtLWhlYWRlcixcbi5jYWxlbmRhcl9fd3JhcC0tdGl0bGUge1xuICBmb250LXNpemU6ICRmb250LWIteHM7XG5cbiAgLmNhbGVuZGFyX190aXRsZSBoMiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYi1zbTtcbiAgfVxufVxuXG4uY2FsZW5kYXJfX3dyYXAtLXRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYWxlbmRhcl9fcGFnZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb250ZW50OiAnJztcbiAgfVxufVxuXG4uY2FsZW5kYXJfX3RpdGxlIHtcbiAgb3JkZXI6IDE7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJ1dHRvbi5jYWxlbmRhcl9fcGFnZXItLWxlZnQsXG4uYnV0dG9uLmNhbGVuZGFyX19wYWdlci0tcmlnaHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsdWUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yZC1zbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCBlYXNlLWluLW91dCAuMjVzO1xufVxuXG4uYnV0dG9uLmNhbGVuZGFyX19wYWdlci0tbGVmdCB7XG4gIG9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0LXBhdGh9L2ltYWdlcy9wYWdlci1hcnJvdy1wcmV2LnN2ZycpO1xufVxuXG4uYnV0dG9uLmNhbGVuZGFyX19wYWdlci0tcmlnaHQge1xuICBvcmRlcjogMjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldC1wYXRofS9pbWFnZXMvcGFnZXItYXJyb3ctbmV4dC5zdmcnKTtcbn1cblxuXG4vKipcbiAqIEdyaWQgc3R5bGluZ1xuICpcbiAqIFRoZSBncmlkIHN0eWxpbmcgZm9yIHRoZSBzaW5nbGUtZGF5IGV2ZW50XG4gKiBjZWxscyB1c2VzIGZsZXhib3ggY29udGFpbmVycyBmb3IgdGhlIHJvd1xuICogYW5kIDEvNyBvZiB0aGUgY29udGFpbmVyIGZvciB0aGUgd2lkdGggb25cbiAqIGVhY2ggaXRlbS4gVGhlIGZpcnN0IGl0ZW0gaW4gdGhlIHJvdyBpc1xuICogYWx3YXlzIHRoZSBtdWx0aS1kYXkgZXZlbnQgY2VsbCwgd2hpY2ggaXMgMTAwJVxuICogd2lkZSwgYW5kIHVzZXMgaXQncyBvd24gZ3JpZCB0byBjb250cm9sXG4gKiBsYXlvdXQgZm9yIG11bHRpLWRheSBldmVudHMuXG4gKi9cbi5jYWxlbmRhcl9fd3JhcC0tZ3JpZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAycHggc29saWQgI2QxZDFkMTtcbn1cblxuLmNhbGVuZGFyX19yb3ctLWhlYWRlcixcbi5jYWxlbmRhcl9fcm93LS1jb250ZW50LFxuLmNhbGVuZGFyX19udW1iZXJzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5jYWxlbmRhcl9fcm93LS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhbGVuZGFyX19kYXksXG4uY2FsZW5kYXJfX2RheS0tbnVtYmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTQuMjg1NzElO1xuICBwYWRkaW5nOiAkcGFkZGluZy14cztcbn1cblxuLmNhbGVuZGFyX19kYXktLW11bHRpIHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLmV2ZW50LWNhcmQge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKGJsYWNrLCBiYXNlKTtcbiAgfVxufVxuXG4uY2FsZW5kYXJfX2RheSB7XG4gIG1pbi1oZWlnaHQ6IDI1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBiYXNlKTtcbn1cblxuLmNhbGVuYXJfX2RheS0tbnVtYmVyIHtcbiAgbWluLWhlaWdodDogMDtcbn1cblxuLmNhbGVuZGFyX19kYXktLWhlYWRlciB7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNhbGVuZGFyX19kYXktLWJsYW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYWxlbmRhcl9fcm93LS1jb250ZW50IC5jYWxlbmRhcl9fZGF5LS1ibGFuayB7XG4gIG1pbi1oZWlnaHQ6IDVyZW07XG59XG5cbi5jYWxlbmRhcl9fZGF5LS1vdXRzaWRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIGRhcmspO1xufVxuXG4vKipcbiAqIENhbGVuZGFyIGJvcmRlcnNcbiAqXG4gKiBFeHRlcm5hbCBib3JkZXJzIGFyZSB3cmFwcGVkIGFyb3VuZCB0aGVcbiAqIC5jYWxlbmRhcl9fd2VlayBlbGVtZW50LCB3aGlsZSBpbnRlcm5hbCBib3JkZXJzXG4gKiBhcmUgYWJzb2x1dGVseSBwb3NpdGlvbmVkIGVtcHR5IGRpdnMuXG4gKi9cbi5jYWxlbmRhcl9fd2VlayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDI1cHg7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZDFkMWQxO1xufVxuXG4uY2FsZW5kYXJfX3dlZWstLWVtcHR5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYWxlbmRhcl9fYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbG9yOiAjZDFkMWQxO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHgsIC0xcHggMCAwIDA7XG4gIG9wYWNpdHk6IC4yNTtcbn1cblxuLmNhbGVuZGFyX19iYXItLTEge1xuICBsZWZ0OiAxNC4yODU3MSU7XG59XG5cbi5jYWxlbmRhcl9fYmFyLS0yIHtcbiAgbGVmdDogMjguNTcxNDMlO1xufVxuXG4uY2FsZW5kYXJfX2Jhci0tMyB7XG4gIGxlZnQ6IDQyLjg1NzE0JTtcbn1cblxuLmNhbGVuZGFyX19iYXItLTQge1xuICBsZWZ0OiA1Ny4xNDI4NiU7XG59XG5cbi5jYWxlbmRhcl9fYmFyLS01IHtcbiAgbGVmdDogNzEuNDI4NTclO1xufVxuXG4uY2FsZW5kYXJfX2Jhci0tNiB7XG4gIGxlZnQ6IDg1LjcxNDI5JTtcbn1cblxuLyoqXG4gKiBMaW5rIG92ZXJsYXlzXG4gKlxuICogRWFjaCBkYXkgaW4gdGhlIGNhbGVuZGFyIGhhcyBhbiBhc3NvY2lhdGVkIGxpc3Qgb2YgZGF5c1xuICogdGhhdCBpcyBzdG9yZWQgYmVsb3cgdGhlIGNhbGVuZGFyIHRoYXQgY29udGFpbnMgbW9yZVxuICogaW5mb3JtYXRpb24uIFRvIGFjY2VzcyB0aGlzIGluZm9ybWF0aW9uLCB0aGVyZSBhcmUgbGlua1xuICogb3ZlcmxheXMgcG9zaXRpb25lZCBhYnNvbHV0ZWx5IGFib3ZlIHRoZSBkYXkgY2VsbHMuXG4gKi9cbi5jYWxlbmRhcl9fbnVtYmVycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjBweDtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmNhbGVuZGFyX19udW1iZXItZGF5LS1tdWx0aSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xufVxuXG4vKipcbiAqIE11bHRpLWRheSBncmlkc1xuICpcbiAqIFVubGlrZSB0aGUgcmVndWxhciBncmlkIGNlbGxzIGZvciB0aGUgY2FsZW5kYXIsIHdoaWNoXG4gKiB1c2UgZmxleGJveCwgdGhlIG11bHRpLWRheSBncmlkcyB1c2UgU2luZ3VsYXJpdHkgR1Mnc1xuICogZmxvYXQgZ3JpZC1zcGFucyBzbyB0aGF0IHRoZXkgY2FuIHN0YXJ0IGF0IGFyYml0cmFyeVxuICogcG9pbnRzIHdpdGhpbiB0aGUgZ3JpZC4gQ2xlYXJpbmcgaGFzIHRvIGJlIGFwcGxpZWRcbiAqIG1hbnVhbGx5IHZpYSBhIGNsZWFyIGNsYXNzLCBhcHBsaWVkIHdoZW4gdGhlIHRlbXBsYXRlXG4gKiBpcyBmaXJzdCBnZW5lcmF0ZWQuXG4gKi9cbi5jYWxlbmRhcl9fZGF5LS1tdWx0aSB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xuXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiAnJztcbiAgfVxufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0xLTEge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDE0LjI4NTcxJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0xLTcge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiAxNC4yODU3MSU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0yLTEge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0yLTIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDE0LjI4NTcxJTtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTItMyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjguNTcxNDMlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMjguNTcxNDMlO1xuICBjbGVhcjogbm9uZTtcbn1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tMi00IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyOC41NzE0MyU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIG1hcmdpbi1sZWZ0OiA0Mi44NTcxNCU7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0yLTUge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDU3LjE0Mjg2JTtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTItNiB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTMtMSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNDIuODU3MTQlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTMtMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNDIuODU3MTQlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMTQuMjg1NzElO1xuICBjbGVhcjogbm9uZTtcbn1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tMy0zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA0Mi44NTcxNCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAyOC41NzE0MyU7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS0zLTQge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDQyLjg1NzE0JTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDQyLjg1NzE0JTtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTMtNSB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDQyLjg1NzE0JTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTQtMSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNTcuMTQyODYlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTQtMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNTcuMTQyODYlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMTQuMjg1NzElO1xuICBjbGVhcjogbm9uZTtcbn1cblxuLmNhbGVuZGFyX19kYXktc3Bhbi0tNC0zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA1Ny4xNDI4NiU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAyOC41NzE0MyU7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS00LTQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiA1Ny4xNDI4NiU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS01LTEge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDcxLjQyODU3JTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuLS01LTIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDcxLjQyODU3JTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDE0LjI4NTcxJTtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTUtMyB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDcxLjQyODU3JTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTYtMSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogODUuNzE0MjklO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTYtMiB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDg1LjcxNDI5JTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLTctMSB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uY2FsZW5kYXJfX2RheS1zcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYWxlbmRhcl9fZGF5LXNwYW4tLWNsZWFyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi8qKlxuICogQ2FsZW5kYXIgTGlzdCBTdHlsaW5nXG4gKlxuICogSW4gYWRkaXRpb24gdG8gdGhlIDMwLWRheSBncmlkLCB0aGVyZSdzIGEgbGlzdCB2aWV3XG4gKiBmb3IgZWFzaWVyIHVzYWdlIG9uIG1vYmlsZSB0aGF0IGFwcGVhcnMgYmVsb3cgdGhlXG4gKiBub3JtYWwgMzAtZGF5IGNhbGVuZGFyLiBJdCdzIGJyb3VnaHQgdXAgYSBmaXhlZFxuICogcG9zaXRpb24gd2hlbmV2ZXIgdGhlIHVzZXIgdG91Y2hlcyBpdCdzIGFzc29jaWF0ZWRcbiAqIGRheSBvbiB0aGUgY2FsZW5kYXIgZ3JpZC5cbiAqL1xuLmNhbGVuZGFyX19kYXktaGVhZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNhbGVuZGFyX19tb2JpbGUtbGlzdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTVweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuOTUpO1xuICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG5cbiAgJi5saXN0IHtcbiAgICB6LWluZGV4OiA1MDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgLmV2ZW50LWNhcmQtLXNwYXJzZSB7XG4gICAgLnRpbWUtLWVuZCxcbiAgICAudGltZS0tc2VwYXJhdG9yIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIGNsaXA6IGF1dG87XG4gICAgfVxuXG4gICAgLnRpbWUtLXN0YXJ0IC5ldmVudC1jYXJkX19kYXktLWlubGluZSxcbiAgICAudGltZS0tc3RhcnQgLmV2ZW50LWNhcmRfX3NlcGFyYXRvciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICBjbGlwOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG5cbi5jYWxlbmRhcl9fbGlzdCxcbi5jYWxlbmRhcl9fbGlzdC1pdGVtLFxuLmNhbGVuZGFyX19saXN0LS1kYXksXG4uY2FsZW5kYXJfX2xpc3QtaXRlbS0tZGF5IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5jYWxlbmRhcl9fbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHBhZGRpbmc6IDE1cHggMDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkMWQxZDE7XG59XG5cbi5jYWxlbmRhcl9fbGlzdC10aXRsZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6ICRmb250LWIteHM7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNhbGVuZGFyX19saXN0LS1kYXkge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi5raWRzIHtcbiAgY29sb3I6IGNvbG9yKHdoaXRlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYmQwYTtcbiAgYm9yZGVyLWNvbG9yOiAjZTE5ZjAwO1xuXG4gIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjNGFhY2EyO1xuICB9XG5cbiAgaDIsXG4gIGgzLFxuICBoNCB7XG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcbiAgfVxufVxuXG4udGVlbnMge1xuICBjb2xvcjogY29sb3Iod2hpdGUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Q0MjQ2O1xuICBib3JkZXItY29sb3I6ICMxZjI0Mjg7XG5cbiAgaDIsXG4gIGgzLFxuICBoNCB7XG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcbiAgfVxufVxuXG4uYWR1bHQge1xuICBjb2xvcjogY29sb3Iod2hpdGUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGFhY2EyO1xuICBib3JkZXItY29sb3I6ICMyYzhlODQ7XG4gIGgyLFxuICBoMyxcbiAgaDQge1xuICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogIzU3YjdkZjtcblxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogI2ZmYmQwYTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTW9udGhseSBOYXZpZ2F0aW9uXG4uY2FsZW5kYXItcGlja2VyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhbGVuZGFyLXBpY2tlci10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2FsZW5kYXItcGlja2VyLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvcGFjaXR5OiAwO1xuXG4gIC5jYWxlbmRhci1waWNrZXIuYWN0aXZlICYge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2UtaW4tb3V0IC4yNXMsIG9wYWNpdHkgZWFzZS1pbi1vdXQgLjI1cztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB9XG59XG5cbi8vIE5hdmlnYXRpb24gdGFicy5cbi5jYWxlbmRhcl9fbWVudS10YXNrcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIubGMtZXZlbnRfX2V2ZW50LWRldGFpbHMgaDMge1xuICBmb250LXNpemU6IDExcHggIWltcG9ydGFudDtcbn1cblxuLmxjLWV2ZW50X19saW5rIHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmxjLWV2ZW50X19kYXRlIHtcbiAgZm9udC1zaXplOiA5cHg7XG59XG5cbi5sYy1ldmVudC5kZXNrdG9wLWhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubGMtZXZlbnRfX2tleSB7XG4gIGZvbnQtc2l6ZTogOXB4O1xufVxuIiwiLmFubm91bmNlbWVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIubGMtZXZlbnQtYWN0aW9ucyxcbi5sYy1ldmVudF9fbW9udGgtZGV0YWlscyxcbi5sYy1ldmVudF9fcmVnaXN0cmF0aW9uLWxpc3QsXG4ubGMtcmVwZWF0aW5nLWRhdGVzX190b2dnbGUtaWNvbixcbi5sYy1yZXBlYXRpbmctZGF0ZXMsXG4ubGMtZXZlbnQtbG9jYXRpb24tbWFwLFxuLmxjLWV2ZW50LWJyYW5jaC1pbWFnZSxcbi5zY3JvbGwtaW5mbyxcbi50b29sdGlwLFxuLmxjLWV2ZW50LXJlZ2lzdHJhbnQtbGlzdC10aXRsZSxcbi5sYy1ldmVudC1sb2NhdGlvbl9fZW1haWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udG9vbHRpcCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLy8gRm9udCBzaXplcy5cbi5sYy1ldmVudF9fd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIHAsXG4gIC5sYy1tZXNzYWdlcyxcbiAgLmxjLWV2ZW50X19jYXRlZ29yaWVzLFxuICAubGMtZXZlbnQtaW5mbyxcbiAgLmxjLWV2ZW50LWxvY2F0aW9uX19hZGRyZXNzLFxuICAubGMtZXZlbnRfX2luZm8taXRlbSB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICB9XG59XG5cbi5sYy1hZGRyZXNzX19uYW1lLFxuLmxjLWV2ZW50X19zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xufVxuXG5oMy5sYy1ldmVudF9fc3VidGl0bGUubGMtYWRkcmVzc19fbmFtZSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4vLyBGaXJzdCBTaWRlYmFyLlxuLmxjLWV2ZW50X19zaWRlYmFyLS1maXJzdCB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5sYy1yZXBlYXRpbmctZGF0ZXNfX3RvZ2dsZSB7XG4gIHdpZHRoOiBpbmhlcml0O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmxjLXJlcGVhdGluZy1kYXRlc19fd3JhcHBlciB7XG4gIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLmxjLXJlcGVhdGluZy1kYXRlc19fbGlzdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogaW5oZXJpdDtcbn1cblxuLmxjLXJlcGVhdGluZy1kYXRlc19fbGluayB7XG4gIHBhZGRpbmc6IDJweCAwICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5sYy1yZXBlYXRpbmctZGF0ZXNfX2l0ZW0ge1xuICB3aWR0aDogaW5oZXJpdDtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBDb250ZW50IGFyZWEuXG4ubGMtZXZlbnRfX2NvbnRlbnQge1xuICB3aWR0aDogNzUlO1xuXG4gIC5sYy1mb3JtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5sYy1tZXNzYWdlcyxcbi5sYy1tZXNzYWdlc19fbWVzc2FnZSB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5sYy1wcmludC1yb3cge1xuICBAaW5jbHVkZSBtYWtlLXJvdygpO1xufVxuXG4ubGMtcHJpbnQtY29sdW1uIHtcbiAgQGluY2x1ZGUgbWFrZS1jb2wtcmVhZHkoKTtcbiAgQGluY2x1ZGUgbWFrZS1jb2woNik7XG59XG5cbi5sYy1ldmVudC13cmFwcGVyIHtcbiAgLmxjLWV2ZW50LXNpZGViYXIsXG4gIC5sYy1ldmVudC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbCgxMik7XG4gIH1cbn1cblxuLmxjLWV2ZW50X19jYXRlZ29yaWVzIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmctc207XG59XG5cbi5sYy1tZXNzYWdlcyB7XG4gIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLXNtO1xufVxuIiwiLmxjLWZvcm1fX2hlYWRlcixcbi5sYy1mb3JtX19maWx0ZXJzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8vIFJlZ2lzdHJhdGlvbiBQcmludCBQYWdlIFN0eWxpbmcuXG4ubGMtcmVnaXN0cmF0aW9uLWxpc3Qge1xuICAuaXRlbS1saXN0IGxpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFkZGluZy14cztcbiAgfVxuXG4gIC5yZWdpc3RyYXRpb25fX2l0ZW1zIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIG1hcmdpbi1ib3R0b206ICRwYWRkaW5nLXhzO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcblxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHBhZGRpbmcteHM7XG4gICAgfVxuICB9XG5cbiAgLnJlZ2lzdHJhdGlvbl9faXRlbXMtLWNvbnRhY3QtaW5mbyB7XG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmctbWQ7XG4gIH1cblxuICAucmVnaXN0cmF0aW9uX19pdGVtcy0tcmVnaXN0cmFudC1pbmZvIHtcbiAgICBwYWRkaW5nOiAwICRwYWRkaW5nLXNtO1xuICB9XG5cbiAgLnJlZ2lzdHJhdGlvbl9faXRlbXMtLWV2ZW50LWluZm8ge1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmctbWQ7XG4gIH1cblxuICAucmVnaXN0cmF0aW9uX19pdGVtcy0tc3BlY2lhbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucmVnaXN0cmF0aW9uLWl0ZW0tLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtYi14cztcbiAgfVxufVxuXG4ubGMtcmVnaXN0cmF0aW9uLXByaW50LWJ0biB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi5idXR0b25fX3ByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udmlldy1maWx0ZXJzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnJlZ2lvbi1oaWdobGlnaHRlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iXX0= */
