@charset "UTF-8";
/**
 * 
 */
/**
 * 
 */
/**
 * Bootstrap.
 *
 * Extra small   [mobile]           <576px    (0px    -> 575px)
 * Small         [mobile landscape] ≥576px    (576px  -> 767px)
 * Medium        [tablet]           ≥768px    (768px  -> 991px)
 * Large         [desktop]          ≥992px    (992px  -> 1199px)
 * Extra large   [large-desktop]    ≥1200px   (1200px -> ∞)
 *
 * General sizing info.
 * 
 * 320px — 480px:       Mobile devices.
 * 481px — 767px:       Mobile landscape.
 * 768px — 1024px:      Tablet, Small screens, laptops.
 * 1025px — 1200px:     Desktops, large screens.
 * 1201px and more —    Extra large screens, TV.
 */
/**
 * bootstrap xs. (mobile).
 */
/**
 * bootstrap sm. (mobile landscape).
 */
/**
 * bootstrap md. (tablet).
 */
/**
 * bootstrap lg. (desktop).
 */
/**
 * bootstrap xl. (large desktop).
 */
/**
 * bootstrap xxl. (extra large desktop).
 */
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/**
 * body.
 */
body {
  /**
   * Background.
   */
}

/**
 * p.
 */
p {
  /**
   * Font related.
   */
  line-height: 1.3;
  /**
   * 
   */
  font-size: 15px;
}

/**
 * ul.
 */
ul {
  /**
   * li.
   */
}
ul li {
  /**
   * Margin.
   */
  margin-bottom: 10px;
  /**
   * &:last-child.
   */
}
ul li:last-child {
  /**
   * Margin.
   */
  margin-bottom: 0;
}

/**
 * button.
 */
button {
  /**
   * Padding.
   */
  padding: 10px 10px 10px 10px;
  /**
   * Border.
   */
  border: 0;
  /**
   * Font related.
   */
  text-transform: uppercase;
  font-size: 14px;
}

/**
 * 
 */
/**
 * .button.
 */
.button {
  /**
   * Padding.
   */
  padding: 14px 20px 14px 20px;
  /**
   * Background.
   */
  background-color: #45db7f;
  /**
   * Border.
   */
  border-radius: 8px;
  /**
   * Font related.
   */
  color: white;
  letter-spacing: 1px;
  /**
   * Cursor.
   */
  cursor: pointer;
  /**
   * Outline.
   */
  outline: none !important;
  /**
   * &:hover.
   */
  /**
   * &--disable.
   */
}
.button:hover {
  /**
   * Background.
   */
  background-color: #2bb862;
}
.button--disable {
  /**
   * Pointer.
   */
  pointer-events: none;
  /**
   * Background.
   */
  background-color: rgba(0, 0, 0, 0.2);
}

/**
 * .fourohfour-wrapper.
 */
.fourohfour-wrapper {
  /**
   * Background.
   */
  background-color: white;
  /**
   * .fourohfour.
   */
}
.fourohfour-wrapper .fourohfour {
  /**
   * Padding.
   */
  padding-top: 200px;
  padding-bottom: 400px;
}

/**
 * .common-panel-bookingformdemo-wrapper.
 */
.common-panel-bookingformdemo-wrapper {
  /**
   * .common-panel-bookingformdemo-container.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container {
  /**
   * .two-col.
   */
  /**
   * .booking-header.
   */
  /**
   * 
   */
  /**
   * .calendar-day-number.
   */
  /**
   * .slots-indicator.
   */
  /**
   * .booking-breadcrumb-wrapper.
   */
  /**
   * .booking-breadcrumb.
   */
  /**
   * .booking-process.
   */
  /**
   * .basket.
   */
  /**
   * .basket-list.
   */
  /**
   * .service-categories.
   */
  /**
   * .service-category.
   */
  /**
   * .service.
   */
  /**
   * .booking-days.
   */
  /**
   * .booking-day-list.
   */
  /**
   * .booking-slots.
   */
  /**
   * .booking-slot-list.
   */
  /**
   * .customer-details.
   */
  /**
   * .staff-services.
   */
  /**
   * .staff-service.
   */
  /**
   * .payment-details.
   */
  /**
   * .form-fields.
   */
  /**
   * .pre-customer-details-login.
   */
  /**
   * .booking-notes.
   */
  /**
   * .booking-terms-and-conditions.
   */
  /**
   * .booking-success.
   */
  /**
   * .confirm-and-pay.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .two-col {
  /**
   * Display.
   */
  display: flex;
  /**
   * Gpa.
   */
  gap: 20px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-header {
  /**
   * Background.
   */
  background-color: #44e080;
  /**
   * Border.
   */
  border-radius: 10px;
  /**
   * Font related.
   */
  color: white;
  /**
   * Margin.
   */
  margin-top: 40px;
  /**
   * Padding.
   */
  padding: 40px 30px 40px 30px;
  /**
   * &__heading.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-header__heading {
  /**
   * Display.
   */
  display: flex;
  /**
   * Flex.
   */
  align-items: center;
  /**
   * i.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-header__heading i {
  /**
   * Display.
   */
  display: inline-block;
  /**
   * Font related.
   */
  font-size: 26px;
  /**
   * Margin.
   */
  margin-right: 10px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .vc-date {
  /**
   * 
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container [data-vc-theme=light] .vc-date[data-vc-date-selected] .vc-date__btn {
  background-color: #44e080;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container [data-vc-theme=light] .vc-date[data-vc-date-selected] .vc-date__btn .slots-indicator--has-slots::after {
  opacity: 0;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .vc-date__btn {
  outline: none;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container [data-vc-theme=light] .vc-date[data-vc-date-today] .vc-date__btn {
  color: black !important;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container [data-vc-theme=light] .vc-week__day[data-vc-week-day-off] {
  color: black !important;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container [data-vc-theme=light] .vc-date[data-vc-date-weekend] .vc-date__btn {
  color: black !important;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container [data-vc-theme=light] .vc-date[data-vc-date-weekend] .vc-date__btn:hover {
  background-color: #e3ffee;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .calendar-day-number {
  /**
   * 
   */
  padding-top: 0.125rem;
  /**
   * Opactiy.
   */
  opacity: 0.5;
  /**
   * &--has-slots.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .calendar-day-number--has-slots {
  /**
   * Opacity.
   */
  opacity: 1;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .slots-indicator {
  /**
   * &::after.
   */
  /**
   * &--has-slots.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .slots-indicator::after {
  /**
   * Content.
   */
  content: "";
  /**
   * Display.
   */
  display: block;
  /**
   * Sizing.
   */
  width: 5px;
  height: 5px;
  /**
   * Border.
   */
  border-radius: 100%;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .slots-indicator--has-slots {
  /**
   * 
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .slots-indicator--has-slots::after {
  background-color: #2bb862 !important;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-breadcrumb-wrapper {
  /**
   * 
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-breadcrumb {
  /**
   * Margin.
   */
  margin-bottom: 0px;
  margin-top: 20px;
  /**
   * Dispay.
   */
  display: flex;
  /**
   * &__item.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-breadcrumb__item {
  /**
   * Margin.
   */
  margin-right: 10px;
  margin-bottom: 0;
  /**
   * Display.
   */
  display: flex;
  /**
   * Flex.
   */
  align-items: center;
  /**
   * Font related.
   */
  font-size: 14px;
  /**
   * p.
   */
  /**
   * a.s
   */
  /**
   * &--active.
   */
  /**
   * &:last-child.
   */
  /**
   * &::after.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-breadcrumb__item p {
  /**
   * Font related.
   */
  font-size: 14px;
  /**
   * Opacity.
   */
  opacity: 0.5;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-breadcrumb__item a {
  /**
   * Font related.
   */
  color: black;
  text-decoration: none;
  /**
   * &:hover.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-breadcrumb__item a:hover {
  /**
   * Font related.
   */
  color: #2bb862;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-breadcrumb__item--active {
  /**
   * Font related.
   */
  font-weight: bold;
  /**
   * p.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-breadcrumb__item--active p {
  /**
   * Opacity.
   */
  opacity: 1;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-breadcrumb__item:last-child {
  /**
   * &::after.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-breadcrumb__item:last-child::after {
  /**
   * Content.
   */
  content: none;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-breadcrumb__item::after {
  /**
   * Content.
   */
  content: ">";
  /**
   * Padding.
   */
  padding-left: 10px;
  /**
   * Display.
   */
  display: inline-block;
  /**
   * 
   */
  font-weight: normal;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-process {
  /**
   * Margin.
   */
  margin-top: 20px;
  /**
   * Display.
   */
  display: flex;
  /**
   * Flex.
   */
  gap: 20px;
  /**
   * &__main.
   */
  /**
   * &__sidebar.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-process__main {
  /**
   * Flex.
   */
  flex-grow: 1;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-process__sidebar {
  /**
   * Sizing.
   */
  min-width: 300px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket {
  /**
   * 
   */
  position: relative;
  /**
   * Padding.
   */
  padding: 20px 20px 20px 20px;
  /**
   * Border.
   */
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  /**
   * Background.
   */
  background-color: white;
  /**
   * Sizing.
   */
  /**
   * &--disable.
   */
  /**
   * &__section-title.
   */
  /**
   * &__edit-section.
   */
  /**
   * &__empty-message.
   */
  /**
   * button.
   */
  /**
   * &__customer.
   */
  /**
   * &__date-and-time.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket--disable {
  /**
   * 
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket--disable::after {
  /**
   * Content.
   */
  content: "";
  /**
   * Background.
   */
  background-color: rgba(0, 0, 0, 0.3);
  /**
   * Position.
   */
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /**
   * Z-index.
   */
  z-index: 100;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket__section-title {
  /**
   * Display.
   */
  display: flex;
  /**
   * Flex.
   */
  justify-content: space-between;
  /**
   * Margin.
   */
  margin-bottom: 5px;
  /**
   * Font related.
   */
  text-transform: uppercase;
  font-size: 14px;
  font-weight: bold;
  color: #2bb862;
  /**
   * i.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket__section-title i {
  /**
   * Margin.
   */
  margin-right: 6px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket__edit-section {
  /**
   * Font related.
   */
  color: #2bb862;
  text-decoration: none;
  /**
   * &:hover.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket__edit-section:hover {
  /**
   * Font related.
   */
  color: black;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket__empty-message {
  /**
   * Margin.
   */
  margin-bottom: 0;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket button {
  /**
   * Sizing.
   */
  width: 100%;
  /**
   * @keyframes.
   */
  /**
   * i.
   */
}
@keyframes rotating {
  from {
    -webkit-transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
  }
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket button i {
  /**
   * Margin.
   */
  margin-right: 5px;
  /**
   * Animation.
   */
  animation: rotating 2s linear infinite;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket__customer {
  /**
   * Margin.
   */
  margin-bottom: 20px;
  /**
   * &-title.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket__customer-title {
  /**
   * Display.
   */
  display: flex;
  /**
   * Flex.
   */
  justify-content: space-between;
  /**
   * Margin.
   */
  margin-bottom: 5px;
  /**
   * Font related.
   */
  text-transform: uppercase;
  font-size: 14px;
  font-weight: bold;
  color: #2bb862;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket__date-and-time {
  /**
   * &-title.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket__date-and-time-title {
  /**
   * Display.
   */
  display: flex;
  /**
   * Flex.
   */
  justify-content: space-between;
  /**
   * Margin.
   */
  margin-bottom: 5px;
  /**
   * Font related.
   */
  text-transform: uppercase;
  font-size: 14px;
  font-weight: bold;
  color: #2bb862;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket-list {
  /**
   * Margin.
   */
  margin-bottom: 20px;
  /**
   * &__item.
   */
  /**
   * &__title.
   */
  /**
   * &__staff.
   */
  /**
   * &__col-text.
   */
  /**
   * &__col-price.
   */
  /**
   * &__price.
   */
  /**
   * &__remove.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket-list__item {
  /**
   * Display.
   */
  display: flex;
  /**
   * Border.
   */
  /**
   * Margin.
   */
  /**
   * Padding.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket-list__title {
  /**
   * Font related.
   */
  font-weight: bold;
  font-size: 14px;
  /**
   * Display.
   */
  display: block;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket-list__staff {
  /**
   * Font related.
   */
  font-size: 14px;
  /**
   * Display.
   */
  display: block;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket-list__col-text {
  /**
   * Flex.
   */
  flex-grow: 1;
  /**
   * Font related.
   */
  line-height: 1.3;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket-list__col-price {
  /**
   * Size.
   */
  max-width: 65px;
  min-width: 65px;
  /**
   * Font related.
   */
  text-align: right;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket-list__price {
  /**
   * Size.
   */
  font-size: 14px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .basket-list__remove {
  /**
   * Display.
   */
  /**
   * Font related.
   */
  color: rgb(250, 100, 100);
  /**
   * Cursor.
   */
  cursor: pointer;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-categories {
  /**
   * 
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category {
  /**
   * Position.
   */
  position: relative;
  /**
   * Background.
   */
  background-color: white;
  /**
   * Border.
   */
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  /**
   * Margin.
   */
  margin-bottom: 20px;
  /**
   * &::after.
   */
  /**
   * &--disable.
   */
  /**
   * &--open.
   */
  /**
   * &:hover.
   */
  /**
   * &__inset.
   */
  /**
   * &__title.
   */
  /**
   * &__header.
   */
  /**
   * &__header-image-col.
   */
  /**
   * &__description.
   */
  /**
   * &__body.
   */
  /**
   * &__toggle-arrow-wrapper.
   */
  /**
   * &__toggle-arrow.
   */
  /**
   * &__header-image-col.
   */
  /**
   * &__header-text-col.
   */
  /**
   * &__image-wrapper.
   */
  /**
   * .service-category.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category::after {
  /**
   * Content.
   */
  content: none;
  /**
   * Background.
   */
  background-color: rgba(0, 0, 0, 0.3);
  /**
   * Position.
   */
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /**
   * Border.
   */
  border-radius: 8px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category--disable {
  /**
   * &::after.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category--disable::after {
  /**
   * 
   */
  content: "";
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category--open {
  /**
   * .service-category__toggle-arrow.
   */
  /**
   * .service-category__body.
   */
  /**
   * .service-category__header.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category--open .service-category__toggle-arrow {
  /**
   * Transform.
   */
  transform: rotate(180deg);
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category--open .service-category__body {
  /**
   * Display.
   */
  display: block;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category--open .service-category__header {
  /**
   * Border.
   */
  border-bottom: 1px solid rgb(211, 211, 211);
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category:hover {
  /**
   * Background.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category__inset {
  /**
   * Padding.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category__title {
  /**
   * Font related.
   */
  font-size: 20px;
  font-weight: bold;
  /**
   * Margin.
   */
  margin-bottom: 10px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category__header {
  /**
   * Position.
   */
  position: relative;
  /**
   * Display.
   */
  display: flex;
  /**
   * Cursor.
   */
  cursor: pointer;
  /**
   * Padding.
   */
  padding: 20px 20px 25px 20px;
  /**
   * Border.
   */
  border-radius: 10px;
  /**
   * Background.
   */
  background-color: rgb(246, 246, 246);
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category__header-image-col {
  /**
   * 
   */
  padding-top: 12px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category__description {
  /**
   * Padding.
   */
  padding-right: 40px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category__body {
  /**
   * Display.
   */
  display: none;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category__toggle-arrow-wrapper {
  /**
   * Position.
   */
  position: absolute;
  right: 20px;
  top: 50%;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category__toggle-arrow {
  /**
   * Sizing.
   */
  width: 20px;
  /**
   * Transition.
   */
  transition: transform 0.2s ease;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category__header-image-col {
  /**
   * Sizing.
   */
  width: 90px;
  min-width: 90px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category__header-text-col {
  /**
   * Flex.
   */
  flex-grow: 1;
  /**
   * Padding.
   */
  padding-top: 8px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category__image-wrapper {
  /**
   * Sizing.
   */
  width: 70px;
  height: 70px;
  /**
   * Border.
   */
  border-radius: 100%;
  /**
   * Background.
   */
  background-color: rgb(212, 212, 212);
  background-position: center;
  background-size: cover;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service-category .service-category {
  /**
   * Padding.
   */
  margin-left: 20px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service {
  /**
   * Display.
   */
  display: flex;
  /**
   * Border.
   */
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  /**
   * Margin.
   */
  /**
   * Padding.
   */
  padding: 20px;
  /**
   * &__col-image.
   */
  /**
   * &__col-text.
   */
  /**
   * &__item.
   */
  /**
   * &__header.
   */
  /**
   * &__footer.
   */
  /**
   * &__title.
   */
  /**
   * &__price.
   */
  /**
   * &__duration.
   */
  /**
   * &__itme-description.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service:last-child {
  border-bottom: 0;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service__col-image {
  /**
   * Sizing.
   */
  width: 90px;
  min-width: 90px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service__col-text {
  /**
   * Flex.
   */
  flex-grow: 1;
  /**
   * Padding.
   */
  padding-top: 8px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service__item {
  /**
   * Display.
   */
  display: block;
  /**
   * Margin.
   */
  margin-bottom: 20px;
  /**
   * Padding.
   */
  padding-bottom: 20px;
  /**
   * Border.
   */
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service__header {
  /**
   * Display.
   */
  display: flex;
  /**
   * Flex.
   */
  justify-content: space-between;
  /**
   * Padding.
   */
  padding-bottom: 5px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service__footer {
  /**
   * Padding.
   */
  padding-bottom: 20px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service__title {
  /**
   * Font related.
   */
  font-size: 18px;
  font-weight: bold;
  line-height: 18px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service__price {
  /**
   * Display.
   */
  display: inline-block;
  /**
   * Font related.
   */
  font-size: 15px;
  /**
   * span.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service__price span {
  /**
   * Font related.
   */
  font-weight: bold;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service__duration {
  /**
   * Position.
   */
  position: relative;
  /**
   * Display.
   */
  display: inline-block;
  /**
   * Border.
   */
  border-radius: 5px;
  /**
   * Font related.
   */
  color: rgb(153, 153, 153);
  font-weight: bold;
  font-size: 15px;
  line-height: 18px;
  /**
   * span.
   */
  /**
   * &::before.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service__duration span {
  /**
   * Position.
   */
  position: relative;
  /**
   * Z-index.
   */
  z-index: 1;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service__duration::before {
  /**
   * Content,
   */
  /**
   * Background.
   */
  background-color: #edecfe;
  /**
   * Position.
   */
  position: absolute;
  top: -4px;
  left: -6px;
  right: -6px;
  bottom: -4px;
  /**
   * Z-index.
   */
  z-index: 0;
  /**
   * Border.
   */
  border-radius: 6px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .service__description {
  /**
   * Padding.
   */
  padding-top: 5px;
  /**
   * Margin.
   */
  margin-bottom: 15px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-days {
  /**
   * Position.
   */
  position: relative;
  /**
   * Border.
   */
  border: 1px solid rgba(0, 0, 0, 0.1);
  /**
   * Sizing.
   */
  width: 100%;
  /**
   * &--disable.
   */
  /**
   * &__previous-next-buttons.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-days--disable {
  /**
   * 
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-days--disable::after {
  /**
   * Content.
   */
  content: "";
  /**
   * Background.
   */
  background-color: rgba(0, 0, 0, 0.3);
  /**
   * Position.
   */
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /**
   * Z-index.
   */
  z-index: 100;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-days__previous-next-buttons {
  /**
   * Padding.
   */
  padding: 20px;
  /**
   * Display.
   */
  display: flex;
  /**
   * Flex.
   */
  justify-content: space-between;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-day-list {
  /**
   * Margin.
   */
  margin-bottom: 20px;
  /**
   * Padding.
   */
  padding: 20px;
  /**
   * &__item.
   */
  /**
   * &__list.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-day-list__item {
  /**
   * Margin.
   */
  margin-right: 10px;
  /**
   * &.active.
   */
  /**
   * &.disable.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-day-list__item.active {
  /**
   * .booking-day-list__link.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-day-list__item.active .booking-day-list__link {
  /**
   * Background.
   */
  background-color: rgb(89, 237, 173);
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-day-list__item.disable {
  /**
   * Opacity.
   */
  opacity: 0.4;
  /**
   * Pointer.
   */
  pointer-events: none;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-day-list__list {
  /**
   * Display.
   */
  display: flex;
  /**
   * Flex.
   */
  flex-wrap: wrap;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slots {
  /**
   * Margin.
   */
  margin-bottom: 20px;
  margin-top: 20px;
  /**
   * Padding.
   */
  padding: 20px;
  /**
   * Position.
   */
  position: relative;
  /**
   * &__title.
   */
  /**
   * &__column.
   */
  /**
   * &__column-title.
   */
  /**
   * &--disable.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slots__title {
  /**
   * Font related.
   */
  font-weight: bold;
  /**
   * Margin.
   */
  margin-bottom: 15px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slots__column {
  /**
   * Sizing.
   */
  width: 50%;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slots__column-title {
  /**
   * Font related.
   */
  font-size: 14px;
  text-transform: uppercase;
  color: rgb(159, 159, 159);
  letter-spacing: 1px;
  /**
   * Margin.
   */
  margin-bottom: 10px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slots--disable {
  /**
   * 
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slots--disable::after {
  /**
   * Content.
   */
  content: "";
  /**
   * Background.
   */
  background-color: rgba(0, 0, 0, 0.3);
  /**
   * Position.
   */
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /**
   * Z-index.
   */
  z-index: 100;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slot-list {
  /**
   * Display.
   */
  display: flex;
  /**
   * Flex.
   */
  gap: 20px;
  /**
   * &__list.
   */
  /**
   * &__item.
   */
  /**
   * &__link.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slot-list__list {
  /**
   * .
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slot-list__item {
  /**
   * &.active.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slot-list__item.active {
  /**
   * .booking-slot-list__link.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slot-list__item.active .booking-slot-list__link {
  /**
   * Background.
   */
  background-color: #45db7f;
  /**
   * Font related.
   */
  color: black;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slot-list__link {
  /**
   * Display.
   */
  display: inline-block;
  /**
   * Border.
   */
  background-color: #45db7f;
  /**
   * Font related.
   */
  color: white;
  text-decoration: none;
  text-align: center;
  /**
   * Padding.
   */
  padding: 12px 10px 12px 10px;
  /**
   * Sizing.
   */
  width: 100%;
  /**
   * Border.
   */
  border-radius: 6px;
  /**
   * &:hover.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-slot-list__link:hover {
  /**
   * Background.
   */
  background-color: #2bb862;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .customer-details {
  /**
   * Border.
   */
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  /**
   * Margin.
   */
  margin-bottom: 20px;
  /**
   * Padding.
   */
  padding: 20px;
  /**
   * Sizing.
   */
  min-width: 500px;
  /**
   * &__title.
   */
  /**
   * &__have-account.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .customer-details__title {
  /**
   * Font related.
   */
  font-weight: bold;
  /**
   * Margin.
   */
  margin-bottom: 20px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .customer-details__have-account {
  /**
   * Margin.
   */
  margin-left: 15px;
  /**
   * Font related.
   */
  color: rgb(100, 100, 100);
  text-decoration: none;
  /**
   * &:hover.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .customer-details__have-account:hover {
  /**
   * Font related.
   */
  color: black;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service {
  /**
   * Margin.
   */
  margin-bottom: 10px;
  /**
   * Flex.
   */
  display: flex;
  /**
   * Border.
   */
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  padding: 20px;
  /**
   * 
   */
  /**
   * &__image-col.
   */
  /**
   * &__text-col.
   */
  /**
   * &__button-col.
   */
  /**
   * &__row-title.
   */
  /**
   * &__description.
   */
  /**
   * &__image-wrapper.
   */
  /**
   * &__choose-staff,
   * &__unchoose-staff.
   */
  /**
   * &__unchoose-staff.
   */
  /**
   * &__row-title.
   */
  /**
   * &__list.
   */
  /**
   * &__item.
   */
  /**
   * &__name.
   */
  /**
   * &__description.
   */
  /**
   * &__duration.
   */
  /**
   * &__price.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service.active {
  background-color: #effff6;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__image-col {
  /**
   * Sizing.
   */
  width: 70px;
  min-width: 70px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__text-col {
  /**
   * Flex.
   */
  flex-grow: 1;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__button-col {
  /**
   * Display.
   */
  display: flex;
  /**
   * Flex.
   */
  align-items: center;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__row-title {
  /**
   * Margin.
   */
  margin-bottom: 5px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__description {
  /**
   * Font related.
   */
  font-size: 15px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__image-wrapper {
  /**
   * Sizing.
   */
  width: 50px;
  height: 50px;
  /**
   * Border.
   */
  border-radius: 100%;
  /**
   * 
   */
  background-color: #8f8bdc;
  /**
   * Background.
   */
  background-color: rgb(212, 212, 212);
  background-position: center;
  background-size: cover;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__choose-staff, .common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__unchoose-staff {
  /**
   * Padding.
   */
  padding-top: 14px;
  padding-bottom: 14px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__unchoose-staff {
  /**
   * 
   */
  background-color: #45db7f;
  /**
   * 
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__unchoose-staff:hover {
  background-color: #2bb862;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__row-title {
  /**
   * Padding.
   */
  padding-bottom: 5px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__list {
  /**
   * Margin.
   */
  margin-left: 20px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__item {
  /**
   * Margin.
   */
  margin-bottom: 10px;
  /**
   * Padding.
   */
  padding: 20px;
  /**
   * Border.
   */
  border: 1px solid rgba(0, 0, 0, 0.1);
  /**
   * Sizing
   */
  width: 70%;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__name {
  /**
   * Font related.
   */
  font-weight: bold;
  font-size: 15px;
  /**
   * Margin.
   */
  margin-bottom: 5px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__description {
  /**
   * Margin.
   */
  margin-bottom: 10px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__duration {
  /**
   * Display.
   */
  display: none;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .staff-service__price {
  /**
   * Display.
   */
  display: inline-block;
  /**
   * Font related.
   */
  font-size: 15px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .payment-details {
  /**
   * Border.
   */
  border: 1px solid rgba(0, 0, 0, 0.1);
  /**
   * Margin.
   */
  margin-bottom: 20px;
  /**
   * Padding.
   */
  padding: 20px;
  /**
   * &__title.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .payment-details__title {
  /**
   * Font related.
   */
  font-weight: bold;
  /**
   * Margin.
   */
  margin-bottom: 20px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .form-fields {
  /**
   * Display.
   */
  display: flex;
  /**
   * Flex.
   */
  flex-wrap: wrap;
  gap: 20px;
  /**
   * &__field-wrapper.
   */
  /** 
   * &__field-label.
   */
  /**
   * textarea.
   */
  /** 
   * &__field-type-text,
   * &__field-type-textarea.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .form-fields__field-wrapper {
  /**
   * Display.
   */
  margin-bottom: 15px;
  /**
   * Sizing.
   */
  width: 48%;
  /**
   * &--full-width.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .form-fields__field-wrapper--full-width {
  /**
   * Sizing.
   */
  width: 100%;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .form-fields__field-label {
  /**
   * Display.
   */
  display: block;
  /**
   * Margin.
   */
  margin-bottom: 8px;
  /**
   * Font related.
   */
  font-size: 14px;
  font-weight: bold;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .form-fields textarea {
  /**
   * Sizing.
   */
  width: 100%;
  min-height: 100px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .form-fields__field-type-text, .common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .form-fields__field-type-textarea {
  /**
   * Padding.
   */
  padding: 12px;
  /**
   * Sizing.
   */
  width: 100%;
  /**
   * Border.
   */
  border-radius: 8px;
  border: 1px solid #44e080;
  /**
   * Font related.
   */
  font-size: 14px;
  /**
   * &::placeholder.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .form-fields__field-type-text::-moz-placeholder, .common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .form-fields__field-type-textarea::-moz-placeholder {
  /**
   * Font related.
   */
  color: rgb(183, 183, 183);
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .form-fields__field-type-text::placeholder, .common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .form-fields__field-type-textarea::placeholder {
  /**
   * Font related.
   */
  color: rgb(183, 183, 183);
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .pre-customer-details-login {
  /**
   * Padding.
   */
  padding: 20px;
  /**
   * Border.
   */
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  /**
   * &__title.
   */
  /**
   * &__no-account.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .pre-customer-details-login__title {
  /**
   * Font related.
   */
  font-weight: bold;
  /**
   * Margin.
   */
  margin-bottom: 20px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .pre-customer-details-login__no-account {
  /**
   * Margin.
   */
  margin-left: 15px;
  /**
   * Font related.
   */
  color: rgb(100, 100, 100);
  text-decoration: none;
  /**
   * 
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .pre-customer-details-login__no-account:hover {
  /**
   * 
   */
  color: black;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-notes {
  /**
   * Padding.
   */
  padding: 20px 20px 5px 20px;
  /**
   * Margin.
   */
  margin-bottom: 20px;
  /**
   * Border.
   */
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 10px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-terms-and-conditions {
  /**
   * Padding.
   */
  padding: 20px 20px 5px 20px;
  /**
   * Margin.
   */
  margin-bottom: 20px;
  /**
   * Border.
   */
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  /**
   * &__title.
   */
  /**
   * .form-fields.
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-terms-and-conditions__title {
  /**
   * Font related.
   */
  font-weight: bold;
  /**
   * Margin.
   */
  margin-bottom: 20px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-terms-and-conditions .form-fields {
  /**
   * Margin.
   */
  margin-top: 20px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-success {
  /**
   * 
   */
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .booking-success__title {
  /**
   * Font related.
   */
  font-size: 20px;
  font-weight: bold;
  color: #44e080;
  text-align: center;
  /**
   * Padding.
   */
  padding: 20px 20px 20px 20px;
  /**
   * Margin.
   */
  margin-bottom: 20px;
  /**
   * Border.
   */
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 10px;
}
.common-panel-bookingformdemo-wrapper .common-panel-bookingformdemo-container .confirm-and-pay {
  /**
   * Padding.
   */
  padding: 20px 20px 20px 20px;
  /**
   * Margin.
   */
  margin-bottom: 20px;
  /**
   * Border.
   */
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  /**
   * Font related.
   */
  text-align: center;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy5zY3NzIiwiZ2VuZXJpYy9fYnJlYWtwb2ludHMuc2NzcyIsImdlbmVyaWMvX3Jlc2V0LnNjc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJiYXNlL19jb2xvdXJzLnNjc3MiLCJjb21wb25lbnRzL2NvbW1vbi9fYnV0dG9uLnNjc3MiLCJsYXlvdXRzL3BhZ2VzL19mb3Vyb2hmb3VyLnNjc3MiLCJwYW5lbHMvY29tbW9uL19ib29raW5nZm9ybWRlbW8uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FDTkE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWtCQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFVQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUNqRUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQWFDO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRDtBQUNBO0FBQUE7RUFFQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7QUFBQTtFQUVDO0VBQ0E7OztBQUVEO0VBQ0M7RUFDQTs7O0FDNUNEO0FBQUE7QUFBQTtBQUlBO0FBRUk7QUFBQTtBQUFBOzs7QUFRSjtBQUFBO0FBQUE7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7OztBQUlKO0FBQUE7QUFBQTtBQUlBO0FBRUk7QUFBQTtBQUFBOztBQUlBO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7O0FBSUE7QUFFSTtBQUFBO0FBQUE7RUFJQTs7O0FBUVo7QUFBQTtBQUFBO0FBSUE7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7RUFDQTs7O0FDN0ZKO0FBQUE7QUFBQTtBQ0FBO0FBQUE7QUFBQTtBQUlBO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQSxrQkRYUTtBQ2FSO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7RUFDQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7QUFjQTtBQUFBO0FBQUE7O0FBVkE7QUFFSTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7OztBQ3pFUjtBQUFBO0FBQUE7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBOztBQUlBO0FBRUk7QUFBQTtBQUFBO0VBSUE7RUFDQTs7O0FDdkJSO0FBQUE7QUFBQTtBQUlBO0FBRUk7QUFBQTtBQUFBOztBQUlBO0FBRUk7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTtBQW9GQTtBQUFBO0FBQUE7QUE0REE7QUFBQTtBQUFBO0FBa0NBO0FBQUE7QUFBQTtBQTJEQTtBQUFBO0FBQUE7QUFZQTtBQUFBO0FBQUE7QUF5TEE7QUFBQTtBQUFBO0FBc0RBO0FBQUE7QUFBQTtBQTRUQTtBQUFBO0FBQUE7QUF3S0E7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBeVlBO0FBQUE7QUFBQTtBQXlUQTtBQUFBO0FBQUE7QUFnR0E7QUFBQTtBQUFBO0FBK0ZBO0FBQUE7QUFBQTtBQWdJQTtBQUFBO0FBQUE7QUFnSUE7QUFBQTtBQUFBO0FBd0ZBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQXNVQTtBQUFBO0FBQUE7QUE4Q0E7QUFBQTtBQUFBO0FBbUpBO0FBQUE7QUFBQTtBQTRFQTtBQUFBO0FBQUE7QUEyQkE7QUFBQTtBQUFBO0FBNkRBO0FBQUE7QUFBQTtBQTRDQTtBQUFBO0FBQUE7O0FBdDZGQTtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBOztBQUlBO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTs7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTs7QUFZWjtBQUVJO0FBQUE7QUFBQTs7QUFNSjtFQUVJOztBQUlJO0VBR0k7O0FBU1o7RUFFSTs7QUFJSjtFQUVJOztBQUlKO0VBRUk7O0FBSUo7RUFFSTs7QUFJSjtFQUVJOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTs7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBOztBQVVSO0FBRUk7QUFBQTtBQUFBO0FBaUNBO0FBQUE7QUFBQTs7QUE3QkE7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7RUFDQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBOztBQUlBO0VBRUk7O0FBWVo7QUFFSTtBQUFBO0FBQUE7O0FBVUo7QUFFSTtBQUFBO0FBQUE7RUFJQTtFQUNBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7O0FBSUE7QUFFSTtBQUFBO0FBQUE7RUFJQTtFQUNBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTtBQTZCQTtBQUFBO0FBQUE7QUE0QkE7QUFBQTtBQUFBO0FBc0JBO0FBQUE7QUFBQTs7QUEvRkE7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7RUFDQTtBQUVBO0FBQUE7QUFBQTs7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBOztBQVVSO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7O0FBSUE7QUFFSTtBQUFBO0FBQUE7RUFJQTs7QUFVUjtBQUVJO0FBQUE7QUFBQTs7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBOztBQVVSO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBWVo7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7QUFjQTtBQUFBO0FBQUE7O0FBVkE7QUFFSTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBOztBQVVSO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0VBQ0E7QUFFQTtBQUFBO0FBQUE7RUFNQTtBQUVBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQTRDQTtBQUFBO0FBQUE7QUFpREE7QUFBQTtBQUFBO0FBNkJBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQStDQTtBQUFBO0FBQUE7QUFpREE7QUFBQTtBQUFBOztBQXBPQTtBQUVJO0FBQUE7QUFBQTs7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBVVI7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtFQUNBO0VBQ0E7RUFDQTtBQUVBO0FBQUE7QUFBQTs7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBOztBQVVSO0FBRUk7QUFBQTtBQUFBO0VBSUE7RUFDQTtBQUVBO0FBQUE7QUFBQTs7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBOztBQVVSO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTs7QUFUQTtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7O0FBUVI7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVVSO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7O0FBSUE7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtFQUNBO0VBQ0E7RUFDQTs7QUFVUjtBQUVJO0FBQUE7QUFBQTs7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0VBQ0E7RUFDQTtFQUNBOztBQVlaO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7QUFnQ0E7QUFBQTtBQUFBO0FBcUJBO0FBQUE7QUFBQTtBQW9CQTtBQUFBO0FBQUE7QUFvQkE7QUFBQTtBQUFBO0FBcUJBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTs7QUE1SEE7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTs7QUFZSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0VBQ0E7QUFFQTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7RUFDQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVVSO0FBRUk7QUFBQTtBQUFBOztBQVVKO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0VBQ0E7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtBQW9DQTtBQUFBO0FBQUE7QUFzQkE7QUFBQTtBQUFBO0FBb0RBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQXFCQTtBQUFBO0FBQUE7QUE0Q0E7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBZ0JBO0FBQUE7QUFBQTtBQW9CQTtBQUFBO0FBQUE7QUFlQTtBQUFBO0FBQUE7QUFvQkE7QUFBQTtBQUFBO0FBOEJBO0FBQUE7QUFBQTs7QUF0VkE7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBOztBQUlBO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBVVI7QUFFSTtBQUFBO0FBQUE7QUFjQTtBQUFBO0FBQUE7QUFjQTtBQUFBO0FBQUE7O0FBeEJBO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0VBQ0E7RUFDQTs7QUFVUjtBQUVJO0FBQUE7QUFBQTs7QUFZSjtBQUVJO0FBQUE7QUFBQTs7QUFZSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0VBQ0E7QUFFQTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0VBQ0E7RUFDQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTtFQUNBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0VBQ0E7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0VBQ0E7RUFDQTs7QUFTSjtBQUVJO0FBQUE7QUFBQTtFQUlBOztBQVVSO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQVFBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0FBZUE7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTtBQWdDQTtBQUFBO0FBQUE7QUEwQkE7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBZ0JBO0FBQUE7QUFBQTtBQWtDQTtBQUFBO0FBQUE7QUFrR0E7QUFBQTtBQUFBOztBQWpSQTtFQUVJOztBQW9CSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0VBQ0E7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0VBQ0E7RUFDQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7O0FBSUE7QUFFSTtBQUFBO0FBQUE7RUFJQTs7QUFVUjtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUtBO0VBQ0E7RUFDQTtFQUNBO0FBRUE7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTs7QUFoQkE7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTs7QUFVUjtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBVVI7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7QUE0Q0E7QUFBQTtBQUFBOztBQXhDQTtBQUVJO0FBQUE7QUFBQTs7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBVVI7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBVVI7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0FBdURBO0FBQUE7QUFBQTs7QUFuREE7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtBQXNCQTtBQUFBO0FBQUE7O0FBbEJBO0FBRUk7QUFBQTtBQUFBOztBQUlBO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBVVI7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVNSO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTs7QUFVUjtBQUVJO0FBQUE7QUFBQTtFQUlBO0VBQ0E7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQXVCQTtBQUFBO0FBQUE7O0FBckRBO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7RUFDQTtFQUNBO0VBQ0E7QUFFQTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTs7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBWVo7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0FBWUE7QUFBQTtBQUFBO0FBb0NBO0FBQUE7QUFBQTs7QUE1Q0E7QUFFSTtBQUFBO0FBQUE7O0FBVUo7QUFFSTtBQUFBO0FBQUE7O0FBSUE7QUFFSTtBQUFBO0FBQUE7O0FBSUE7QUFFSTtBQUFBO0FBQUE7RUFJQSxrQkh4aUVaO0FHMGlFWTtBQUFBO0FBQUE7RUFJQTs7QUFZWjtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUEsa0JIdGtFSjtBR3drRUk7QUFBQTtBQUFBO0VBSUE7RUFDQTtFQUNBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBOztBQUlBO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBWVo7QUFFSTtBQUFBO0FBQUE7RUFJQTtFQUNBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0FBb0JBO0FBQUE7QUFBQTs7QUFoQkE7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtFQUNBO0FBRUE7QUFBQTtBQUFBOztBQUlBO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBMEJaO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQVFBO0VBRUE7RUFFQTtBQUVBO0FBQUE7QUFBQTtBQVVBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQW9CQTtBQUFBO0FBQUE7QUFjQTtBQUFBO0FBQUE7QUFjQTtBQUFBO0FBQUE7QUFtQ0E7QUFBQTtBQUFBO0FBQUE7QUFpQkE7QUFBQTtBQUFBO0FBd0JBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQWNBO0FBQUE7QUFBQTtBQWdDQTtBQUFBO0FBQUE7QUFxQkE7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBOztBQTVRQTtFQUVJOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7RUFDQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTtFQUNBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0VBQ0E7RUFDQTs7QUFTSjtBQUdJO0FBQUE7QUFBQTtFQUlBO0VBQ0E7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTs7QUFJQTtFQUVJOztBQVVSO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7RUFDQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBVVI7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7O0FBSUE7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBOztBQVVSO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtFQUNBO0FBRUE7QUFBQTtBQUFBO0FBa0NBO0FBQUE7QUFBQTtBQTJCQTtBQUFBO0FBQUE7QUFlQTtBQUFBO0FBQUE7QUFBQTs7QUF4RUE7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBOztBQUlBO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBVVI7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7RUFDQTs7QUFRSjtBQUVJO0FBQUE7QUFBQTtFQUlBO0VBQ0E7O0FBU0o7QUFHSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7RUFDQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBOztBQUlBO0FBRUk7QUFBQTtBQUFBO0VBSUE7O0FBYVo7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0VBQ0E7QUFFQTtBQUFBO0FBQUE7QUFvQkE7QUFBQTtBQUFBOztBQWhCQTtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0VBQ0E7QUFFQTtBQUFBO0FBQUE7O0FBSUE7QUFFSTtBQUFBO0FBQUE7RUFJQTs7QUFZWjtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtFQUNBOztBQVFKO0FBRUk7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0VBQ0E7QUFFQTtBQUFBO0FBQUE7QUFvQkE7QUFBQTtBQUFBOztBQWhCQTtBQUVJO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7O0FBUUo7QUFFSTtBQUFBO0FBQUE7RUFJQTs7QUFVUjtBQUVJO0FBQUE7QUFBQTs7QUFJQTtBQUVJO0FBQUE7QUFBQTtFQUlBO0VBQ0E7RUFDQTtFQUNBO0FBRUE7QUFBQTtBQUFBO0VBSUE7QUFFQTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0VBQ0E7O0FBVVI7QUFFSTtBQUFBO0FBQUE7RUFJQTtBQUVBO0FBQUE7QUFBQTtFQUlBO0FBRUE7QUFBQTtBQUFBO0VBSUE7RUFDQTtBQUVBO0FBQUE7QUFBQTtFQUlBIiwiZmlsZSI6InN0eWxlcy5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFxuICovXG5cbkBpbXBvcnQgXCJub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnRcIjtcblxuLyoqXG4gKiBcbiAqL1xuXG5cbkBpbXBvcnQgXCIvVXNlcnMvbW0vU2l0ZXMva2F0by9zcmMvc2Fzcy9nZW5lcmljL19icmVha3BvaW50cy5zY3NzXCI7XG5AaW1wb3J0IFwiL1VzZXJzL21tL1NpdGVzL2thdG8vc3JjL3Nhc3MvZ2VuZXJpYy9fcmVzZXQuc2Nzc1wiO1xuXG5cbkBpbXBvcnQgXCIvVXNlcnMvbW0vU2l0ZXMva2F0by9zcmMvc2Fzcy9iYXNlL19iYXNlLnNjc3NcIjtcbkBpbXBvcnQgXCIvVXNlcnMvbW0vU2l0ZXMva2F0by9zcmMvc2Fzcy9iYXNlL19jb2xvdXJzLnNjc3NcIjtcbkBpbXBvcnQgXCIvVXNlcnMvbW0vU2l0ZXMva2F0by9zcmMvc2Fzcy9iYXNlL19kZWJ1Zy5zY3NzXCI7XG5cbkBpbXBvcnQgXCIvVXNlcnMvbW0vU2l0ZXMva2F0by9zcmMvc2Fzcy9jb21wb25lbnRzL2NvbW1vbi9fYnV0dG9uLnNjc3NcIjtcblxuQGltcG9ydCBcIi9Vc2Vycy9tbS9TaXRlcy9rYXRvL3NyYy9zYXNzL2xheW91dHMvcGFnZXMvX2ZvdXJvaGZvdXIuc2Nzc1wiO1xuXG5AaW1wb3J0IFwiL1VzZXJzL21tL1NpdGVzL2thdG8vc3JjL3Nhc3MvcGFuZWxzL2NvbW1vbi9fYm9va2luZ2Zvcm1kZW1vLnNjc3NcIjtcblxuXG4gIiwiLyoqXG4gKiBCb290c3RyYXAuXG4gKlxuICogRXh0cmEgc21hbGwgICBbbW9iaWxlXSAgICAgICAgICAgPDU3NnB4ICAgICgwcHggICAgLT4gNTc1cHgpXG4gKiBTbWFsbCAgICAgICAgIFttb2JpbGUgbGFuZHNjYXBlXSDiiaU1NzZweCAgICAoNTc2cHggIC0+IDc2N3B4KVxuICogTWVkaXVtICAgICAgICBbdGFibGV0XSAgICAgICAgICAg4omlNzY4cHggICAgKDc2OHB4ICAtPiA5OTFweClcbiAqIExhcmdlICAgICAgICAgW2Rlc2t0b3BdICAgICAgICAgIOKJpTk5MnB4ICAgICg5OTJweCAgLT4gMTE5OXB4KVxuICogRXh0cmEgbGFyZ2UgICBbbGFyZ2UtZGVza3RvcF0gICAg4omlMTIwMHB4ICAgKDEyMDBweCAtPiDiiJ4pXG4gKlxuICogR2VuZXJhbCBzaXppbmcgaW5mby5cbiAqIFxuICogMzIwcHjigIrigJTigIo0ODBweDogICAgICAgTW9iaWxlIGRldmljZXMuXG4gKiA0ODFweOKAiuKAlOKAijc2N3B4OiAgICAgICBNb2JpbGUgbGFuZHNjYXBlLlxuICogNzY4cHjigIrigJTigIoxMDI0cHg6ICAgICAgVGFibGV0LCBTbWFsbCBzY3JlZW5zLCBsYXB0b3BzLlxuICogMTAyNXB44oCK4oCU4oCKMTIwMHB4OiAgICAgRGVza3RvcHMsIGxhcmdlIHNjcmVlbnMuXG4gKiAxMjAxcHggYW5kIG1vcmXigIrigJTigIogICBFeHRyYSBsYXJnZSBzY3JlZW5zLCBUVi5cbiAqL1xuXG4vKipcbiAqIGJvb3RzdHJhcCB4cy4gKG1vYmlsZSkuXG4gKi9cblxuJGJzLWV4dHJhLXNtYWxsOiBtYXgtd2lkdGggNTc1cHg7XG4kYnMtZXh0cmEtc21hbGwtb25seTogJGJzLWV4dHJhLXNtYWxsO1xuJGItbW9iaWxlOiAkYnMtZXh0cmEtc21hbGw7XG4kYi1tb2JpbGUtb25seTogJGJzLWV4dHJhLXNtYWxsLW9ubHk7XG5cbi8qKlxuICogYm9vdHN0cmFwIHNtLiAobW9iaWxlIGxhbmRzY2FwZSkuXG4gKi9cblxuJGJzLXNtYWxsOiBtaW4td2lkdGggNTc2cHg7XG4kYnMtc21hbGwtb25seTogNTc2cHggNzY3cHg7XG4kYi1tb2JpbGUtbGFuZHNjYXBlOiAkYnMtc21hbGw7XG4kYi1tb2JpbGUtbGFuZHNjYXBlLW9ubHk6ICRicy1zbWFsbC1vbmx5O1xuJGItZGYtbW9iaWxlLWxhbmRzY2FwZTogbWF4LXdpZHRoIDc2N3B4O1xuXG4vKipcbiAqIGJvb3RzdHJhcCBtZC4gKHRhYmxldCkuXG4gKi9cblxuJGJzLW1lZGl1bTogbWluLXdpZHRoIDc2OHB4O1xuJGJzLW1lZGl1bS1vbmx5OiA3NjhweCA5OTFweDtcbiRiLXRhYmxldDogJGJzLW1lZGl1bTtcbiRiLXRhYmxldC1vbmx5OiAkYnMtbWVkaXVtLW9ubHk7XG4kYi1kZi10YWJsZXQ6IG1heC13aWR0aCA5OTFweDtcblxuLyoqXG4gKiBib290c3RyYXAgbGcuIChkZXNrdG9wKS5cbiAqL1xuXG4kYnMtbGFyZ2U6IG1pbi13aWR0aCA5OTJweDtcbiRicy1sYXJnZS1vbmx5OiA5OTJweCAxMTk5cHg7XG4kYi1kZXNrdG9wOiAkYnMtbGFyZ2U7XG4kYi1kZXNrdG9wLW9ubHk6ICRicy1sYXJnZS1vbmx5O1xuXG4vKipcbiAqIGJvb3RzdHJhcCB4bC4gKGxhcmdlIGRlc2t0b3ApLlxuICovXG5cbiRicy1leHRyYS1sYXJnZTogbWluLXdpZHRoIDEyMDBweDtcbiRicy1leHRyYS1sYXJnZS1vbmx5OiAxMjAwcHggMTM5OXB4O1xuJGItbGFyZ2UtZGVza3RvcDogJGJzLWV4dHJhLWxhcmdlO1xuJGItbGFyZ2UtZGVza3RvcC1vbmx5OiAkYnMtZXh0cmEtbGFyZ2Utb25seTtcblxuLyoqXG4gKiBib290c3RyYXAgeHhsLiAoZXh0cmEgbGFyZ2UgZGVza3RvcCkuXG4gKi9cblxuJGJzLWV4dHJhLWV4dHJhLWxhcmdlOiBtaW4td2lkdGggMTQwMHB4O1xuJGJzLWV4dHJhLWV4dHJhLWxhcmdlLW9ubHk6ICRicy1leHRyYS1leHRyYS1sYXJnZTtcbiRiLWV4dHJhLWxhcmdlLWRlc2t0b3A6ICRicy1leHRyYS1leHRyYS1sYXJnZTtcbiRiLWV4dHJhLWxhcmdlLWRlc2t0b3Atb25seTogJGJzLWV4dHJhLWV4dHJhLWxhcmdlLW9ubHk7XG4iLCIvKiBodHRwOi8vbWV5ZXJ3ZWIuY29tL2VyaWMvdG9vbHMvY3NzL3Jlc2V0L1xuICAgdjIuMCB8IDIwMTEwMTI2XG4gICBMaWNlbnNlOiBub25lIChwdWJsaWMgZG9tYWluKVxuKi9cblxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxuYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcbmIsIHUsIGksIGNlbnRlcixcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsXG5maWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXG5tZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0Ym9yZGVyOiAwO1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG4vKiBIVE1MNSBkaXNwbGF5LXJvbGUgcmVzZXQgZm9yIG9sZGVyIGJyb3dzZXJzICovXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLFxuZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5ib2R5IHtcblx0bGluZS1oZWlnaHQ6IDE7XG59XG5vbCwgdWwge1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuYmxvY2txdW90ZSwgcSB7XG5cdHF1b3Rlczogbm9uZTtcbn1cbmJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyLFxucTpiZWZvcmUsIHE6YWZ0ZXIge1xuXHRjb250ZW50OiAnJztcblx0Y29udGVudDogbm9uZTtcbn1cbnRhYmxlIHtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblx0Ym9yZGVyLXNwYWNpbmc6IDA7XG59XG4iLCIvKipcbiAqIGJvZHkuXG4gKi9cblxuYm9keSB7XG4gICAgXG4gICAgLyoqXG4gICAgICogQmFja2dyb3VuZC5cbiAgICAgKi9cblxuICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gICAgIFxufVxuXG4vKipcbiAqIHAuXG4gKi9cblxucCB7XG5cbiAgICAvKipcbiAgICAgKiBGb250IHJlbGF0ZWQuXG4gICAgICovXG5cbiAgICBsaW5lLWhlaWdodDogMS4zO1xuXG4gICAgLyoqXG4gICAgICogXG4gICAgICovXG5cbiAgICBmb250LXNpemU6IDE1cHg7XG5cbn1cblxuLyoqXG4gKiB1bC5cbiAqL1xuXG51bCB7XG5cbiAgICAvKipcbiAgICAgKiBsaS5cbiAgICAgKi9cblxuICAgIGxpIHtcbiAgICAgICAgICAgIFxuICAgICAgICAvKipcbiAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgKi9cblxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiAmOmxhc3QtY2hpbGQuXG4gICAgICAgICAqL1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8qKlxuICogYnV0dG9uLlxuICovXG5cbmJ1dHRvbiB7XG4gICBcbiAgICAvKipcbiAgICAgKiBQYWRkaW5nLlxuICAgICAqL1xuXG4gICAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMTBweDtcblxuICAgIC8qKlxuICAgICAqIEJvcmRlci5cbiAgICAgKi9cblxuICAgIGJvcmRlcjogMDtcblxuICAgIC8qKlxuICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgKi9cblxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuXG5cbn1cbiIsIi8qKlxuICogXG4gKi9cblxuLy8gJGJyYW5kLW9uZTogcmdiKDg2LCAyNTUsIDIwMik7XG4kYnJhbmQtb25lOiAjNDVkYjdmOyIsIi8qKlxuICogLmJ1dHRvbi5cbiAqL1xuXG4uYnV0dG9uIHtcbiAgICBcbiAgICAvKipcbiAgICAgKiBQYWRkaW5nLlxuICAgICAqL1xuXG4gICAgcGFkZGluZzogMTRweCAyMHB4IDE0cHggMjBweDtcblxuICAgIC8qKlxuICAgICAqIEJhY2tncm91bmQuXG4gICAgICovXG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtb25lO1xuXG4gICAgLyoqXG4gICAgICogQm9yZGVyLlxuICAgICAqL1xuXG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuXG4gICAgLyoqXG4gICAgICogRm9udCByZWxhdGVkLlxuICAgICAqL1xuXG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG5cbiAgICAvKipcbiAgICAgKiBDdXJzb3IuXG4gICAgICovXG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAvKipcbiAgICAgKiBPdXRsaW5lLlxuICAgICAqL1xuXG4gICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgLyoqXG4gICAgICogJjpob3Zlci5cbiAgICAgKi9cblxuICAgICY6aG92ZXIge1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBCYWNrZ3JvdW5kLlxuICAgICAgICAgKi9cblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmJiODYyO1xuXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogJi0tZGlzYWJsZS5cbiAgICAgKi9cblxuICAgICYtLWRpc2FibGUge1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBQb2ludGVyLlxuICAgICAgICAgKi9cblxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICAvKipcbiAgICAgICAgICogQmFja2dyb3VuZC5cbiAgICAgICAgICovXG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSggYmxhY2ssIDAuMiApO1xuXG4gICAgfVxuXG59XG4iLCIvKipcbiAqIC5mb3Vyb2hmb3VyLXdyYXBwZXIuXG4gKi9cblxuLmZvdXJvaGZvdXItd3JhcHBlciB7XG4gICAgXG4gICAgLyoqXG4gICAgICogQmFja2dyb3VuZC5cbiAgICAgKi9cblxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICAgLyoqXG4gICAgICogLmZvdXJvaGZvdXIuXG4gICAgICovXG4gICAgXG4gICAgLmZvdXJvaGZvdXIge1xuICAgICAgICBcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAqL1xuICAgIFxuICAgICAgICBwYWRkaW5nLXRvcDogMjAwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MDBweDtcbiAgICBcbiAgICB9XG5cbn1cbiIsIi8qKlxuICogLmNvbW1vbi1wYW5lbC1ib29raW5nZm9ybWRlbW8td3JhcHBlci5cbiAqL1xuXG4uY29tbW9uLXBhbmVsLWJvb2tpbmdmb3JtZGVtby13cmFwcGVyIHtcblxuICAgIC8qKlxuICAgICAqIC5jb21tb24tcGFuZWwtYm9va2luZ2Zvcm1kZW1vLWNvbnRhaW5lci5cbiAgICAgKi9cblxuICAgIC5jb21tb24tcGFuZWwtYm9va2luZ2Zvcm1kZW1vLWNvbnRhaW5lciB7XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIC50d28tY29sLlxuICAgICAgICAgKi9cblxuICAgICAgICAudHdvLWNvbCB7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogRGlzcGxheS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIEdwYS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBnYXA6IDIwcHg7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiAuYm9va2luZy1oZWFkZXIuXG4gICAgICAgICAqL1xuXG4gICAgICAgIC5ib29raW5nLWhlYWRlciB7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQmFja2dyb3VuZC5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDRlMDgwO1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIEJvcmRlci5cbiAgICAgICAgICAgICAqL1xuICAgICAgICBcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBNYXJnaW4uXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBQYWRkaW5nLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMzBweCA0MHB4IDMwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9faGVhZGluZy5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19oZWFkaW5nIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRmxleC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBpLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgaSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBcbiAgICAgICAgICovXG5cbiAgICAgICAgLnZjLWRhdGUge1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgfVxuXG4gICAgICAgIFtkYXRhLXZjLXRoZW1lPWxpZ2h0XSAudmMtZGF0ZVtkYXRhLXZjLWRhdGUtc2VsZWN0ZWRdIC52Yy1kYXRlX19idG4ge1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDRlMDgwO1xuXG4gICAgICAgICAgICAuc2xvdHMtaW5kaWNhdG9yLS1oYXMtc2xvdHMge1xuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAudmMtZGF0ZV9fYnRuIHtcblxuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAgICB9XG5cbiAgICAgICAgW2RhdGEtdmMtdGhlbWU9bGlnaHRdIC52Yy1kYXRlW2RhdGEtdmMtZGF0ZS10b2RheV0gLnZjLWRhdGVfX2J0biB7IFxuXG4gICAgICAgICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcblxuICAgICAgICB9XG5cbiAgICAgICAgW2RhdGEtdmMtdGhlbWU9bGlnaHRdIC52Yy13ZWVrX19kYXlbZGF0YS12Yy13ZWVrLWRheS1vZmZdIHtcblxuICAgICAgICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIFtkYXRhLXZjLXRoZW1lPWxpZ2h0XSAudmMtZGF0ZVtkYXRhLXZjLWRhdGUtd2Vla2VuZF0gLnZjLWRhdGVfX2J0biB7XG5cbiAgICAgICAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuXG4gICAgICAgIH1cblxuICAgICAgICBbZGF0YS12Yy10aGVtZT1saWdodF0gLnZjLWRhdGVbZGF0YS12Yy1kYXRlLXdlZWtlbmRdIC52Yy1kYXRlX19idG46aG92ZXIge1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNmZmVlXG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiAuY2FsZW5kYXItZGF5LW51bWJlci5cbiAgICAgICAgICovXG5cbiAgICAgICAgLmNhbGVuZGFyLWRheS1udW1iZXIge1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAuMTI1cmVtO1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIE9wYWN0aXkuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICYtLWhhcy1zbG90cy5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmLS1oYXMtc2xvdHMge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogT3BhY2l0eS5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIC5zbG90cy1pbmRpY2F0b3IuXG4gICAgICAgICAqL1xuXG4gICAgICAgIC5zbG90cy1pbmRpY2F0b3Ige1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICY6OmFmdGVyLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIENvbnRlbnQuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFNpemluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBCb3JkZXIuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJi0taGFzLXNsb3RzLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICYtLWhhcy1zbG90cyB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBcbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcblxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmJiODYyICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH0gICAgICAgICAgICBcblxuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIC5ib29raW5nLWJyZWFkY3J1bWItd3JhcHBlci5cbiAgICAgICAgICovXG5cbiAgICAgICAgLmJvb2tpbmctYnJlYWRjcnVtYi13cmFwcGVyIHtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBcbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgIH1cblxuICAgICAgICAvKipcbiAgICAgICAgICogLmJvb2tpbmctYnJlYWRjcnVtYi5cbiAgICAgICAgICovXG5cbiAgICAgICAgLmJvb2tpbmctYnJlYWRjcnVtYiB7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogRGlzcGF5LlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9faXRlbS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19pdGVtIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRGlzcGxheS5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBGbGV4LlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIHAuXG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBwIHtcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIE9wYWNpdHkuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIGEuc1xuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgYSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqICY6aG92ZXIuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzJiYjg2MjtcblxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiAmLS1hY3RpdmUuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAmLS1hY3RpdmUge1xuXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBGb250IHJlbGF0ZWQuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBwLlxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICBwIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAgICAgKiBPcGFjaXR5LlxuICAgICAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogJjpsYXN0LWNoaWxkLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogJjo6YWZ0ZXIuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAgICAgKiBDb250ZW50LlxuICAgICAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogJjo6YWZ0ZXIuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIENvbnRlbnQuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICc+JztcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBQYWRkaW5nLlxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH0gICAgICAgICAgICBcblxuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIC5ib29raW5nLXByb2Nlc3MuXG4gICAgICAgICAqL1xuXG4gICAgICAgIC5ib29raW5nLXByb2Nlc3Mge1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAqL1xuICAgICAgICBcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogRGlzcGxheS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIEZsZXguXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgZ2FwOiAyMHB4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX21haW4uXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fbWFpbiB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBGbGV4LlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fc2lkZWJhci5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19zaWRlYmFyIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFNpemluZy5cbiAgICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMzAwcHg7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKipcbiAgICAgICAgICogLmJhc2tldC5cbiAgICAgICAgICovXG5cbiAgICAgICAgLmJhc2tldCB7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDIwcHggMjBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBCb3JkZXIuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSggYmxhY2ssIDAuMiApO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBCYWNrZ3JvdW5kLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIGJsYWNrLCAwLjA1ICk7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFNpemluZy5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAvLyBtaW4td2lkdGg6IDMwMHB4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICYtLWRpc2FibGUuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJi0tZGlzYWJsZSB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBcbiAgICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIENvbnRlbnQuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBCYWNrZ3JvdW5kLlxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCBibGFjaywgMC4zICk7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIFBvc2l0aW9uLlxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogWi1pbmRleC5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTAwO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fc2VjdGlvbi10aXRsZS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19zZWN0aW9uLXRpdGxlIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRmxleC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMmJiODYyO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogaS5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGkge1xuXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBNYXJnaW4uXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fZWRpdC1zZWN0aW9uLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX2VkaXQtc2VjdGlvbiB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBGb250IHJlbGF0ZWQuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBjb2xvcjogIzJiYjg2MjtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiAmOmhvdmVyLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fZW1wdHktbWVzc2FnZS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19lbXB0eS1tZXNzYWdlIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBidXR0b24uXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgYnV0dG9uIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFNpemluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogQGtleWZyYW1lcy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIEBrZXlmcmFtZXMgcm90YXRpbmcge1xuICAgICAgICAgICAgICAgICAgICBmcm9te1xuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0b3tcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBpLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgaSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBBbmltYXRpb24uXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcm90YXRpbmcgMnMgbGluZWFyIGluZmluaXRlO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fY3VzdG9tZXIuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fY3VzdG9tZXIge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqICYtdGl0bGUuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAmLXRpdGxlIHtcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogRGlzcGxheS5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogRmxleC5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBNYXJnaW4uXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzJiYjg2MjtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX2RhdGUtYW5kLXRpbWUuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fZGF0ZS1hbmQtdGltZSB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiAmLXRpdGxlLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgJi10aXRsZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIEZsZXguXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMyYmI4NjI7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIC5iYXNrZXQtbGlzdC5cbiAgICAgICAgICovXG5cbiAgICAgICAgLmJhc2tldC1saXN0IHtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBNYXJnaW4uXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19pdGVtLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX2l0ZW0ge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRGlzcGxheS5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBCb3JkZXIuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSggYmxhY2ssIDAuMiApO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgLy8gbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAvLyBwYWRkaW5nLXRvcDogOXB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fdGl0bGUuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fdGl0bGUge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRGlzcGxheS5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fc3RhZmYuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fc3RhZmYge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRGlzcGxheS5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fY29sLXRleHQuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fY29sLXRleHQge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRmxleC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19jb2wtcHJpY2UuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fY29sLXByaWNlIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFNpemUuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDY1cHg7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA2NXB4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19wcmljZS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19wcmljZSB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBTaXplLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fcmVtb3ZlLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX3JlbW92ZSB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBEaXNwbGF5LlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgLy8gZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGNvbG9yOiByZ2IoMjUwLCAxMDAsIDEwMCk7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBDdXJzb3IuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIC5zZXJ2aWNlLWNhdGVnb3JpZXMuXG4gICAgICAgICAqL1xuICAgIFxuICAgICAgICAuc2VydmljZS1jYXRlZ29yaWVzIHtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBcbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgIH1cblxuICAgICAgICAvKipcbiAgICAgICAgICogLnNlcnZpY2UtY2F0ZWdvcnkuXG4gICAgICAgICAqL1xuXG4gICAgICAgIC5zZXJ2aWNlLWNhdGVnb3J5IHtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBQb3NpdGlvbi5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQmFja2dyb3VuZC5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBCb3JkZXIuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSggYmxhY2ssIDAuMiApO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBNYXJnaW4uXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmOjphZnRlci5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBDb250ZW50LlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEJhY2tncm91bmQuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCBibGFjaywgMC4zICk7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBQb3NpdGlvbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBCb3JkZXIuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmLS1kaXNhYmxlLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICYtLWRpc2FibGUge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogJjo6YWZ0ZXIuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIFxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICYtLW9wZW4uXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJi0tb3BlbiB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiAuc2VydmljZS1jYXRlZ29yeV9fdG9nZ2xlLWFycm93LlxuICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC5zZXJ2aWNlLWNhdGVnb3J5X190b2dnbGUtYXJyb3cge1xuXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBUcmFuc2Zvcm0uXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogLnNlcnZpY2UtY2F0ZWdvcnlfX2JvZHkuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAuc2VydmljZS1jYXRlZ29yeV9fYm9keSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogLnNlcnZpY2UtY2F0ZWdvcnlfX2hlYWRlci5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIC5zZXJ2aWNlLWNhdGVnb3J5X19oZWFkZXIge1xuXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBCb3JkZXIuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoMjExLCAyMTEsIDIxMSk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJjpob3Zlci5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEJhY2tncm91bmQuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCBibGFjaywgMC4wMjUgKTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX2luc2V0LlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX2luc2V0IHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAvLyBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fdGl0bGUuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fdGl0bGUge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX2hlYWRlci5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19oZWFkZXIge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogUG9zaXRpb24uXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBEaXNwbGF5LlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEN1cnNvci5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMjVweCAyMHB4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogQm9yZGVyLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEJhY2tncm91bmQuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQ2LCAyNDYsIDI0Nik7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19oZWFkZXItaW1hZ2UtY29sLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX2hlYWRlci1pbWFnZS1jb2wge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX2Rlc2NyaXB0aW9uLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX2Rlc2NyaXB0aW9uIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fYm9keS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19ib2R5IHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fdG9nZ2xlLWFycm93LXdyYXBwZXIuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fdG9nZ2xlLWFycm93LXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogUG9zaXRpb24uXG4gICAgICAgICAgICAgICAgICovXG4gICAgXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fdG9nZ2xlLWFycm93LlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX3RvZ2dsZS1hcnJvdyB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBTaXppbmcuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFRyYW5zaXRpb24uXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9faGVhZGVyLWltYWdlLWNvbC5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19oZWFkZXItaW1hZ2UtY29sIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFNpemluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogOTBweDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX2hlYWRlci10ZXh0LWNvbC5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19oZWFkZXItdGV4dC1jb2wge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRmxleC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9faW1hZ2Utd3JhcHBlci5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19pbWFnZS13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFNpemluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNzBweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEJvcmRlci5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBCYWNrZ3JvdW5kLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIxMiwgMjEyLCAyMTIpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgICAgIFxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogLnNlcnZpY2UtY2F0ZWdvcnkuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgLnNlcnZpY2UtY2F0ZWdvcnkge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogUGFkZGluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiAuc2VydmljZS5cbiAgICAgICAgICovXG5cbiAgICAgICAgLnNlcnZpY2Uge1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBCb3JkZXIuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoYmxhY2ssIDAuMSk7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIC8vIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogUGFkZGluZy5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX2NvbC1pbWFnZS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19jb2wtaW1hZ2Uge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogU2l6aW5nLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA5MHB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fY29sLXRleHQuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fY29sLXRleHQge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRmxleC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9faXRlbS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19pdGVtIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBQYWRkaW5nLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBCb3JkZXIuXG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYShibGFjaywgMC4yKTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX2hlYWRlci5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19oZWFkZXIge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRGlzcGxheS5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBGbGV4LlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogUGFkZGluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19mb290ZXIuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fZm9vdGVyIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX3RpdGxlLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX3RpdGxlIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX3ByaWNlLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX3ByaWNlIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBGb250IHJlbGF0ZWQuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBzcGFuLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19kdXJhdGlvbi5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19kdXJhdGlvbiB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBQb3NpdGlvbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBCb3JkZXIuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBGb250IHJlbGF0ZWQuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAvLyBjb2xvcjogIzhmOGJkYztcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiKDE1MywgMTUzLCAxNTMpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIHNwYW4uXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogUG9zaXRpb24uXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogWi1pbmRleC5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqICY6OmJlZm9yZS5cbiAgICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIENvbnRlbnQsXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIEJhY2tncm91bmQuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZGVjZmU7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIFBvc2l0aW9uLlxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTRweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTZweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC02cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTRweDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIFotaW5kZXguXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIEJvcmRlci5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9faXRtZS1kZXNjcmlwdGlvbi5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19kZXNjcmlwdGlvbiB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBQYWRkaW5nLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIC5ib29raW5nLWRheXMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIC5ib29raW5nLWRheXMge1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFBvc2l0aW9uLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBCb3JkZXIuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYShibGFjaywgMC4xKTtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBTaXppbmcuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJi0tZGlzYWJsZS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmLS1kaXNhYmxlIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFxuICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogQ29udGVudC5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIEJhY2tncm91bmQuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIGJsYWNrLCAwLjMgKTtcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogUG9zaXRpb24uXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBaLWluZGV4LlxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDA7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19wcmV2aW91cy1uZXh0LWJ1dHRvbnMuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fcHJldmlvdXMtbmV4dC1idXR0b25zIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAgICAgICAgICovXG4gXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRmxleC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAvKipcbiAgICAgICAgICogLmJvb2tpbmctZGF5LWxpc3QuXG4gICAgICAgICAqL1xuXG4gICAgICAgIC5ib29raW5nLWRheS1saXN0IHtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBNYXJnaW4uXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBQYWRkaW5nLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9faXRlbS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICBcbiAgICAgICAgICAgICZfX2l0ZW0ge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogJi5hY3RpdmUuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIC5ib29raW5nLWRheS1saXN0X19saW5rLlxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICAuYm9va2luZy1kYXktbGlzdF9fbGluayB7XG4gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAgICAgKiBCYWNrZ3JvdW5kLlxuICAgICAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig4OSwgMjM3LCAxNzMpO1xuXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqICYuZGlzYWJsZS5cbiAgICAgICAgICAgICAgICAgKi9cbiAgICBcbiAgICAgICAgICAgICAgICAmLmRpc2FibGUge1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogT3BhY2l0eS5cbiAgICAgICAgICAgICAgICAgICAgICovXG4gICAgXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIFBvaW50ZXIuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuICAgIFxuICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fbGlzdC5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19saXN0IHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRmxleC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAvKipcbiAgICAgICAgICogLmJvb2tpbmctc2xvdHMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIC5ib29raW5nLXNsb3RzIHtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBNYXJnaW4uXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogUGFkZGluZy5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFBvc2l0aW9uLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX190aXRsZS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX190aXRsZSB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBGb250IHJlbGF0ZWQuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19jb2x1bW4uXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fY29sdW1uIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFNpemluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19jb2x1bW4tdGl0bGUuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fY29sdW1uLXRpdGxlIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiByZ2IoMTU5LCAxNTksIDE1OSk7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmLS1kaXNhYmxlLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICYtLWRpc2FibGUge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogXG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBDb250ZW50LlxuICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogQmFja2dyb3VuZC5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSggYmxhY2ssIDAuMyApO1xuXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBQb3NpdGlvbi5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIFotaW5kZXguXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAvKipcbiAgICAgICAgICogLmJvb2tpbmctc2xvdC1saXN0LlxuICAgICAgICAgKi9cblxuICAgICAgICAuYm9va2luZy1zbG90LWxpc3Qge1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBGbGV4LlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIGdhcDogMjBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19saXN0LlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX2xpc3Qge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9faXRlbS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICBcbiAgICAgICAgICAgICZfX2l0ZW0ge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogJi5hY3RpdmUuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIC5ib29raW5nLXNsb3QtbGlzdF9fbGluay5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgLmJvb2tpbmctc2xvdC1saXN0X19saW5rIHtcbiAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICAgICAqIEJhY2tncm91bmQuXG4gICAgICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLW9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAgICAgKiBGb250IHJlbGF0ZWQuXG4gICAgICAgICAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19saW5rLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX2xpbmsge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRGlzcGxheS5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEJvcmRlci5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1vbmU7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBGb250IHJlbGF0ZWQuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDEwcHggMTJweCAxMHB4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogU2l6aW5nLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBCb3JkZXIuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiAmOmhvdmVyLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIEJhY2tncm91bmQuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyYmI4NjI7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIC5jdXN0b21lci1kZXRhaWxzLlxuICAgICAgICAgKi9cblxuICAgICAgICAuY3VzdG9tZXItZGV0YWlscyB7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQm9yZGVyLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoYmxhY2ssIDAuMSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBTaXppbmcuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgbWluLXdpZHRoOiA1MDBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX190aXRsZS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX190aXRsZSB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBGb250IHJlbGF0ZWQuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19oYXZlLWFjY291bnQuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9faGF2ZS1hY2NvdW50IHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYigxMDAsIDEwMCwgMTAwKTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiAmOmhvdmVyLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiAuc3RhZmYtc2VydmljZXMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIC5zdGFmZi1zZXJ2aWNlcyB7XG5cbiAgICAgICAgICAgIC8vIGJvcmRlcjogMXB4IHNvbGlkIHJlZDtcblxuICAgICAgICAgICAgLy8gYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIC5zdGFmZi1zZXJ2aWNlLlxuICAgICAgICAgKi9cblxuICAgICAgICAuc3RhZmYtc2VydmljZSB7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogRmxleC5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIEJvcmRlci5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmVkO1xuXG4gICAgICAgICAgICAvLyBib3JkZXI6IDFweCBzb2xpZCAjZTRlM2ZhO1xuXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKGJsYWNrLCAwLjEpO1xuXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcblxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmZmZjY7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19pbWFnZS1jb2wuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9faW1hZ2UtY29sIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFNpemluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNzBweDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX3RleHQtY29sLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX3RleHQtY29sIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEZsZXguXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19idXR0b24tY29sLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX2J1dHRvbi1jb2wge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRGlzcGxheS5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBGbGV4LlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX3Jvdy10aXRsZS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19yb3ctdGl0bGUge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fZGVzY3JpcHRpb24uXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fZGVzY3JpcHRpb24ge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9faW1hZ2Utd3JhcHBlci5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19pbWFnZS13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFNpemluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEJvcmRlci5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBcbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4ZjhiZGM7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBCYWNrZ3JvdW5kLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIxMiwgMjEyLCAyMTIpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fY2hvb3NlLXN0YWZmLFxuICAgICAgICAgICAgICogJl9fdW5jaG9vc2Utc3RhZmYuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fY2hvb3NlLXN0YWZmLFxuICAgICAgICAgICAgJl9fdW5jaG9vc2Utc3RhZmYgeyBcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFBhZGRpbmcuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTRweDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX3VuY2hvb3NlLXN0YWZmLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX3VuY2hvb3NlLXN0YWZmIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQ1ZGI3ZjtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJiYjg2MjtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX3Jvdy10aXRsZS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19yb3ctdGl0bGUge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogUGFkZGluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19saXN0LlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX2xpc3Qge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7ICAgICAgICAgICAgICAgIFxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9faXRlbS5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX19pdGVtIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBQYWRkaW5nLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEJvcmRlci5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoYmxhY2ssIDAuMSk7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBTaXppbmdcbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19uYW1lLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX25hbWUge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fZGVzY3JpcHRpb24uXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fZGVzY3JpcHRpb24ge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX2R1cmF0aW9uLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX2R1cmF0aW9uIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fcHJpY2UuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fcHJpY2Uge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRGlzcGxheS5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAvKipcbiAgICAgICAgICogLnBheW1lbnQtZGV0YWlscy5cbiAgICAgICAgICovXG5cbiAgICAgICAgLnBheW1lbnQtZGV0YWlscyB7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQm9yZGVyLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoYmxhY2ssIDAuMSk7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogUGFkZGluZy5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX3RpdGxlLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX3RpdGxlIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAvKipcbiAgICAgICAgICogLmZvcm0tZmllbGRzLlxuICAgICAgICAgKi9cblxuICAgICAgICAuZm9ybS1maWVsZHMge1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBGbGV4LlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogMjBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiAmX19maWVsZC13cmFwcGVyLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX2ZpZWxkLXdyYXBwZXIge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRGlzcGxheS5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBTaXppbmcuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICB3aWR0aDogNDglO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogJi0tZnVsbC13aWR0aC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICYtLWZ1bGwtd2lkdGgge1xuXG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBTaXppbmcuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKiBcbiAgICAgICAgICAgICAqICZfX2ZpZWxkLWxhYmVsLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX2ZpZWxkLWxhYmVsIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIERpc3BsYXkuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIE1hcmdpbi5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIHRleHRhcmVhLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIHRleHRhcmVhIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFNpemluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKiBcbiAgICAgICAgICAgICAqICZfX2ZpZWxkLXR5cGUtdGV4dCxcbiAgICAgICAgICAgICAqICZfX2ZpZWxkLXR5cGUtdGV4dGFyZWEuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fZmllbGQtdHlwZS10ZXh0LFxuICAgICAgICAgICAgJl9fZmllbGQtdHlwZS10ZXh0YXJlYSB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBQYWRkaW5nLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTJweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIFNpemluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogQm9yZGVyLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM0NGUwODA7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBGb250IHJlbGF0ZWQuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiAmOjpwbGFjZWhvbGRlci5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYigxODMsIDE4MywgMTgzKTtcblxuICAgICAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgfVxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiAucHJlLWN1c3RvbWVyLWRldGFpbHMtbG9naW4uXG4gICAgICAgICAqL1xuXG4gICAgICAgIC5wcmUtY3VzdG9tZXItZGV0YWlscy1sb2dpbiB7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogUGFkZGluZy5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIEJvcmRlci5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCBibGFjaywgMC4yICk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX3RpdGxlLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICZfX3RpdGxlIHtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqICZfX25vLWFjY291bnQuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fbm8tYWNjb3VudCB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBNYXJnaW4uXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEZvbnQgcmVsYXRlZC5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIGNvbG9yOiByZ2IoMTAwLCAxMDAsIDEwMCk7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogXG4gICAgICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBibGFjaztcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAvKipcbiAgICAgICAgICogLmJvb2tpbmctbm90ZXMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIC5ib29raW5nLW5vdGVzIHtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBQYWRkaW5nLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCA1cHggMjBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBNYXJnaW4uXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBCb3JkZXIuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSggYmxhY2ssIDAuMiApO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcblxuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIC5ib29raW5nLXRlcm1zLWFuZC1jb25kaXRpb25zLlxuICAgICAgICAgKi9cblxuICAgICAgICAuYm9va2luZy10ZXJtcy1hbmQtY29uZGl0aW9ucyB7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogUGFkZGluZy5cbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHggNXB4IDIwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQm9yZGVyLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoIGJsYWNrLCAwLjIgKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogJl9fdGl0bGUuXG4gICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgJl9fdGl0bGUge1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBNYXJnaW4uXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogLmZvcm0tZmllbGRzLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIC5mb3JtLWZpZWxkcyB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBNYXJnaW4uXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiAuYm9va2luZy1zdWNjZXNzLlxuICAgICAgICAgKi9cblxuICAgICAgICAuYm9va2luZy1zdWNjZXNzIHtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBcbiAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAmX190aXRsZSB7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBGb250IHJlbGF0ZWQuXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM0NGUwODA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogUGFkZGluZy5cbiAgICAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBNYXJnaW4uXG4gICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogQm9yZGVyLlxuICAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSggYmxhY2ssIDAuMiApO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIC5jb25maXJtLWFuZC1wYXkuXG4gICAgICAgICAqL1xuICAgIFxuICAgICAgICAuY29uZmlybS1hbmQtcGF5IHtcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBQYWRkaW5nLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDIwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogTWFyZ2luLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQm9yZGVyLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoIGJsYWNrLCAwLjIgKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogRm9udCByZWxhdGVkLlxuICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cbiJdfQ== */
