/* VARIABLES */
:root {
  --vertical-flow: 2.4rem;
  --color-white: #fff;
  --color-black: #000;
  --space-mobile-small: 2.5rem;
  --space-mobile-medium: 5rem;
  --space-mobile-large: 10rem;
  --space-mobile-xlarge: 20rem;
  --space-desktop-small: 2.5rem;
  --space-desktop-medium: 5rem;
  --space-desktop-large: 10rem;
  --space-desktop-xlarge: 20rem;
}

/*  Padding */
/* Breakpoints */
/* Swiper */
/* HELPERS */
.visually-hidden {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

/* Libs general */
.theme-1 {
  --_body-background: rgb(242, 242, 242);
  --body-line-height: 1.5;
  --_border-radius: 1.6rem;
  --button-border-radius: var(--_border-radius);
  --_activity-accent-color: var(--color-secondary);
  --_team-tag-background: var(--color-secondary);
}
.theme-1[data-dev-mode=true] {
  --color-primary: rgb(243, 108, 10);
  --color-secondary: rgb(33, 142, 143);
  --body-font-family: "Montserrat-Medium", sans-serif;
  --body-font-weight: normal;
  --headings-font-family: "Kreon-Bold", serif;
  --headings-font-weight: 600;
}

.theme-1 {
  --_breadcrumb-dot-background: var(--color-secondary);
}

.theme-1 .footer {
  --_footer-headings-color: white;
  --_footer-background: var(--color-secondary);
  margin-top: 2rem;
}
.theme-1 .footer-brush {
  display: initial;
}

.theme-1 .job-postings-size {
  --_job-postings-size-background: white;
  --_job-postings-size-color: var(--color-secondary);
  --_job-postings-size-font-size: 1rem;
}
@media (max-width: 1199.98px) {
  .theme-1 .job-postings-size {
    --_job-postings-size-background: var(--color-secondary);
    --_job-postings-size-color: white;
  }
}

.theme-1 {
  --_main-menu-background: rgb(242,242,242);
  --_main-menu-justify: flex-end;
  --_main-menu-link-color: black;
  --_main-menu-link-color-hover: var(--color-primary);
  --_mobile-main-menu-text-color-hover: var(--color-primary);
}
@media (min-width: 1200px) {
  .theme-1 .main-menu-search-text {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
}

.theme-1 {
  --_menu-toggle-background: var(--color-secondary);
  --_menu-toggle-border-radius: 40%;
  --_menu-search-toggle-background: white;
}

.theme-1 {
  --_pagination-border-radius: 35%;
  --_pagination-background: white;
  --_pagination-background-hover: var(--color-secondary);
  --_pagination-text-color: inherit;
  --_pagination-text-color-hover: white;
}

.theme-1 .top-menu {
  --_top-menu-background: var(--color-secondary);
  --_top-menu-text-color: white;
}
.theme-1 .top-menu-header-brush {
  display: initial;
  position: absolute;
  bottom: 0;
  transform: translateY(0.1rem) scaleY(0.4);
  transform-origin: bottom;
}
.theme-1 .top-menu-header-brush-group {
  fill: var(--main-menu-background, var(--_main-menu-background, #f2f2f2));
}
.theme-1 .mobile-top-menu {
  --_mobile-top-menu-text-color: var(--color-secondary);
}

.theme-1 .article-card {
  --_article-card-employment-color: var(--color-primary);
  --_article-card-tag-background: var(--color-secondary);
}

.theme-1 .filter__wrapper {
  --_filter_input_title_display: block;
  --_filter_input_gap: 0.8rem;
  display: block;
}
@media (min-width: 992px) {
  .theme-1 .filter__wrapper {
    display: flex;
  }
}
.theme-1 .filter__sort {
  margin-top: 2rem;
}
@media (min-width: 992px) {
  .theme-1 .filter__sort {
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  .theme-1 .platter-filter__content--activities,
.theme-1 .platter-filter__content--articles {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1200px) {
  .theme-1 .platter-filter__content--teams {
    grid-template-columns: repeat(4, 1fr);
  }
}

.theme-1 .frontpage-header-title {
  font-size: 3rem;
  line-height: 1.1;
  letter-spacing: -0.02em;
}
@media (min-width: 992px) {
  .theme-1 .frontpage-header-title {
    font-size: 4rem;
  }
}
.theme-1 .frontpage-header-content h1 {
  font-size: 3rem;
}
.theme-1 .frontpage-header-content-inner {
  padding: 3.2rem;
  background-color: white;
  border-radius: 1.6rem;
}
@media (min-width: 992px) {
  .theme-1 .frontpage-header-content-inner {
    margin-left: calc( (100vw - 992px) / 2 + 15px);
  }
}
@media (min-width: 1200px) {
  .theme-1 .frontpage-header-content-inner {
    margin-left: calc( (100vw - 1200px) / 2 + 15px);
  }
}
@media (max-width: 991.98px) {
  .theme-1 .frontpage-header-content-inner {
    margin: -5rem 1.6rem 0 1.6rem;
  }
}
@media (min-width: 992px) {
  .theme-1 .frontpage-header-content-inner {
    padding: 5.6rem;
    max-width: 40rem;
    border-radius: 2.4rem;
  }
}
.theme-1 .frontpage-header-content-inner .front-page-header-text {
  color: rgba(23, 23, 23, 0.6);
  line-height: 1.5;
  letter-spacing: -0.02em;
}
.theme-1 .header-video {
  grid-area: 1/1/2/2;
}
@media (min-width: 992px) {
  .theme-1 .header-video {
    grid-area: 1/1/2/3;
    aspect-ratio: 1440/680;
  }
}
.theme-1 .frontpage-background-image {
  grid-area: 1/1/2/2;
}
@media (min-width: 992px) {
  .theme-1 .frontpage-background-image {
    grid-area: 1/1/2/3;
    position: absolute;
    inset: 0;
  }
}
.theme-1 .frontpage-background-image::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0.24;
  background-color: var(--header_image_before, var(--_header_image_before, var(--headings-font-color, black)));
}
.theme-1 .frontpage-header-play--theme-3 {
  display: none;
}
@media (max-width: 991.98px) {
  .theme-1 .frontpage-header-play {
    aspect-ratio: 1/0.8;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .theme-1 .frontpage-header-play .video-dialog-trigger {
    height: 7.2rem;
    width: 7.2rem;
  }
}
@media (min-width: 992px) {
  .theme-1 .frontpage-header-play {
    justify-self: center;
    align-self: center;
  }
  .theme-1 .frontpage-header-play .video-dialog-trigger {
    height: 8.8rem;
    width: 8.8rem;
  }
}

.theme-1 .header-entry-items {
  --_header_entry_items_border_radius: var(--_border-radius);
  --_header_entry_item_icon_background: var(--color-secondary);
  --_header_entry_item_icon_border_radius: 1.2rem;
  --_header_entry_item_description_color: rgba(23, 23, 23, 0.6);
}

.theme-1 .header {
  --_header_tags_background: var(--color-secondary);
  --_header_tags_color: white;
}

.theme-1 .team_member {
  --_team-background: transparent;
  --_team-content-padding: 2rem 0;
}
.theme-1 .team_member__image {
  border-radius: var(--border-radius, var(--_border-radius, 0));
  overflow: hidden;
}
.theme-1 .team_member__image img {
  transition: transform, 0.3s;
}
@media (prefers-reduced-motion: reduce) {
  .theme-1 .team_member__image img {
    transition: none;
  }
}
.theme-1 .team_member--link:hover .team_member__image img {
  transform: scale(1.1);
}

.theme-1 .testimonial {
  --_testimonial-svg-margin: 0 0 5rem;
  --_testimonial-padding: 0;
}

.theme-1 .accordion {
  --accordion-padding-block: 2rem;
  --accordion-padding-inline: 0;
  --accordion-background: transparent;
  --accordion-active-background: transparent;
}
.theme-1 .details-and-summary {
  margin-block-end: 0;
  border-block-end: solid 1px lightgrey;
}

.theme-1 {
  --_button-padding: 1.6rem 3rem;
  --_button-border-radius: 1.6rem;
  --_button-text-color: white;
}

.theme-1 {
  --_input-background: white;
  --_input-color: rgb(23, 23, 23);
  --_input-label-color: rgb(23, 23, 23);
  --_input-placeholder-color: #555;
  --_input-padding-block: 1.6rem;
  --_input-padding-inline: 3.2rem;
  --_input-border-radius: 1.6rem;
  --_input-border-color: transparent;
  --_input-focus-color: var(--color-primary);
  --_input-error-color: #c00;
  --_input-filename-background: rgba(23, 23, 23, 0.08);
}

.theme-1 .featured_page {
  --_featured_page-link-color: var(--color-primary);
  --_featured_page-content-padding: 0;
}
.theme-1 .featured_page--link .featured_page__content {
  padding-bottom: 7rem;
}
.theme-1 .featured_page--image .featured_page__content {
  border-top: solid 1px lightgrey;
}
.theme-1 .featured_page:not(.featured_page--image) .featured_page__title {
  padding-top: 0;
}

.theme-1 .image {
  --_image-title-background: var(--body-background, var(--_body-background, white));
  border-radius: 0;
}
.theme-1 .image .title {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: 0;
  left: 0;
  bottom: 0;
  top: unset;
}
.theme-1 .image.image--imgclip {
  border-radius: var(--border-radius, var(--_border-radius, 0));
}

.theme-1 .colleagues-section {
  --_colleagues-columns: repeat(4, 1fr);
}

.theme-1 .featured_activity .activity {
  gap: 3rem;
  --_featured_activity-background: white;
}
.theme-1 .featured_activity .activity__image {
  border-radius: var(--border-radius, var(--_border-radius, 0));
  overflow: hidden;
}
.theme-1 .featured_activity .activity__content {
  border-radius: var(--border-radius, var(--_border-radius, 0));
}

.theme-1 .impression-section {
  --_impression_swiper_title_color: black;
  --_impression_swiper_title_background: var(--body-background, var(--_body-background, white));
  --_impression_swiper_scrollbar_background_drag: var(--color-secondary);
  --_impression_swiper_btns_color: var(--color-secondary);
  --_impression_swiper_slide_before_display: none;
  --_impression_swiper_title_padding_mobile: 4px 1.6rem;
}

.theme-1 .testimonial-section {
  --_testimonial-display-slide: none;
  --_testimonial-bullet-background-active: var(--color-secondary);
  --_testimonial-bullet-border-active: var(--color-secondary);
  --_testimonial-opacity-slide: 0;
  --_testimonial-background: white;
  --_testimonial-padding: 0;
  --_testimonial-pagination-margin: 5rem 0 0;
}

.theme-1 .school_info_page__nav {
  padding: 1.5rem 2.4rem;
}
.theme-1 .school_info_page__nav ul li {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.theme-1 .school_info_page__nav ul li a::before {
  transition: background-color, 0.3s;
}
@media (prefers-reduced-motion: reduce) {
  .theme-1 .school_info_page__nav ul li a::before {
    transition: none;
  }
}
.theme-1 .school_info_page__nav ul li a {
  position: relative;
  display: flex;
  align-items: center;
  flex: 1 0 100%;
}
.theme-1 .school_info_page__nav ul li.active > a {
  padding-left: 2rem;
}
.theme-1 .school_info_page__nav ul li.active > a::before {
  width: 1rem;
  height: 1rem;
  border-radius: 100%;
  background-color: var(--color-primary);
  left: 0;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWVfMS5jc3MiLCJtYXBwaW5ncyI6IkFBQUE7QUNBQTtFQUNDO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QUNGRDs7QURZQTtBQThCQTtBQWdCQTtBRHJFQTtBR3lNQTtFQVJDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEOUtEOztBRnZCQTtBSUpBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FGOEJKO0FFNUJJO0VBRUk7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0FGNEJSOztBRzdDQTtFQUNJO0FIZ0RKOztBSWhESTtFQUNJO0VBQ0E7RUFFQTtBSmtEUjtBSS9DSTtFQUNJO0FKaURSOztBS3pESTtFQUNJO0VBQ0E7RUFDQTtBTDREUjtBTVNJO0VEeEVBO0lBTVE7SUFDQTtFTDZEVjtBQUNGOztBT3RFQTtFQUNJO0VBQ0E7RUFHQTtFQUNBO0VBRUE7QVBzRUo7QU1sQkk7RUNsREE7SU55TEg7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RURqSEM7QUFDRjs7QVF6RkE7RUFDSTtFQUNBO0VBRUE7QVIyRko7O0FTL0ZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVGtHSjs7QVV0R0k7RUFDSTtFQUNBO0FWeUdSO0FVdEdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVndHUjtBVXRHUTtFQUNJO0FWd0daO0FVcEdJO0VBQ0k7QVZzR1I7O0FXeEhJO0VBQ0k7RUFDQTtBWDJIUjs7QVk1SE07RUFDRztFQUNBO0VBQ0E7QVorSFQ7QU14RUk7RU0xREU7SUFLTTtFWmlJVjtBQUNGO0FZL0hNO0VBQ0c7QVppSVQ7QU1oRkk7RU1sREU7SUFHTTtFWm1JVjtBQUNGO0FNckZJO0VNMUNEOztJQUdNO0VaaUlQO0FBQ0Y7QU0zRkk7RU1uQ0Q7SUFFTTtFWmdJUDtBQUNGOztBYTFKUTtFQUNJO0VBQ0E7RUFDQTtBYjZKWjtBTXRHSTtFTzFESTtJQUtRO0ViK0pkO0FBQ0Y7QWExSlE7RUFFSTtBYjJKWjtBYXhKUTtFQUNJO0VBQ0E7RUFDQTtBYjBKWjtBTW5ISTtFTzFDSTtJQWFZO0Vib0psQjtBQUNGO0FNeEhJO0VPMUNJO0lBYVk7RWJ5SmxCO0FBQ0Y7QU1oSEk7RU92REk7SUFrQlE7RWJ5SmQ7QUFDRjtBTWxJSTtFTzFDSTtJQXFCUTtJQUNBO0lBQ0E7RWIySmQ7QUFDRjtBYXpKWTtFQUNJO0VBQ0E7RUFDQTtBYjJKaEI7QWFySkk7RUFDSTtBYnVKUjtBTWpKSTtFT1BBO0lBR1E7SUFDQTtFYnlKVjtBQUNGO0FhdkpJO0VBQ0k7QWJ5SlI7QU0xSkk7RU9BQTtJQUdRO0lBQ0E7SUFDQTtFYjJKVjtBQUNGO0FhekpRO0VBQ0k7RVp2RFg7RUFHQztFQU1BO0VBTUE7RUFJQTtFWXNDVTtFQUNBO0FiK0paO0FhdkpRO0VBQ0k7QWJ5Slo7QU1qS0k7RU9NQTtJQUtRO0lBQ0E7SUFDQTtJQUNBO0ViMEpWO0VheEpVO0lBQ0k7SUFDQTtFYjBKZDtBQUNGO0FNMUxJO0VPbUJBO0lBZ0JRO0lBQ0E7RWIySlY7RWF6SlU7SUFDSTtJQUNBO0ViMkpkO0FBQ0Y7O0FjL1BDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QWRrUUY7O0FldFFHO0VBQ0c7RUFDQTtBZnlRTjs7QWdCM1FHO0VBQ0c7RUFDQTtBaEI4UU47QWdCN1FNO0VBQ0c7RUFDQTtBaEIrUVQ7QWdCOVFTO0VDU0gsMkJEUk07QWhCZ1JaO0FpQnBRTTtFRGJHO0lDY0Q7RWpCdVFOO0FBQ0Y7QWdCL1FlO0VBQ0c7QWhCaVJsQjs7QWtCL1JHO0VBQ0c7RUFDQTtBbEJrU047O0FtQnBTRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuQnVTSjtBbUJwU0U7RUFDRTtFQUNBO0FuQnNTSjs7QW9CaFRBO0VBQ0k7RUFDQTtFQUNBO0FwQm1USjs7QXFCdFRBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtBckJ3VEQ7O0FzQm5VRztFQUNHO0VBQ0E7QXRCc1VOO0FzQnBVUztFQUNHO0F0QnNVWjtBc0JsVVM7RUFDRztBdEJvVVo7QXNCaFVTO0VBQ0c7QXRCa1VaOztBdUJqVkc7RUFDRztFQVVBO0F2QjJVTjtBdUJwVk07RUFDRztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZCc1ZUO0F1QmxWTTtFQUNHO0F2Qm9WVDs7QXdCaldHO0VBQ0c7QXhCb1dOOztBeUJwV007RUFDRztFQUNBO0F6QnVXVDtBeUJ0V1M7RUFDRztFQUNBO0F6QndXWjtBeUJ0V1M7RUFDRztBekJ3V1o7O0EwQmpYRztFQUNHO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUJvWE47O0EyQjFYRztFQUNHO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzQjZYTjs7QTRCbllNO0VBQ0c7QTVCc1lUO0E0QnBZWTtFQUNHO0VBQ0E7RUFDQTtBNUJzWWY7QTRCcFllO0VYTVQsa0NXTFk7QTVCc1lsQjtBaUI3WE07RVdWUztJWFdQO0VqQmdZTjtBQUNGO0E0QnpZZTtFQUNHO0VBQ0E7RUFDQTtFQUNBO0E1QjJZbEI7QTRCelllO0VBQ0c7QTVCMllsQjtBNEIxWWtCO0UzQitHakIsVzJCOUdpQztFM0IrR2pDLFkyQi9HaUM7RUFDYjtFQUNBO0VBQ0E7QTVCNllyQixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxhdGVzdGFydGVydGhlbWEvLi9zcmMvc3R5bGVzL3ZhcnMuc2NzcyIsIndlYnBhY2s6Ly9wbGF0ZXN0YXJ0ZXJ0aGVtYS8uL3NyYy9zdHlsZXMvdmFyaWFibGVzL3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL3BsYXRlc3RhcnRlcnRoZW1hLy4vc3JjL3N0eWxlcy8xLXRoZW1lcy90aGVtZS0xL3RoZW1lLTEuc2NzcyIsIndlYnBhY2s6Ly9wbGF0ZXN0YXJ0ZXJ0aGVtYS8uL3NyYy9zdHlsZXMvaGVscGVycy8wLW1peGlucy5zY3NzIiwid2VicGFjazovL3BsYXRlc3RhcnRlcnRoZW1hLy4vc3JjL3N0eWxlcy8xLXRoZW1lcy90aGVtZS0xL2NvbXBvbmVudHMvYm9keS5zY3NzIiwid2VicGFjazovL3BsYXRlc3RhcnRlcnRoZW1hLy4vc3JjL3N0eWxlcy8xLXRoZW1lcy90aGVtZS0xL2NvbXBvbmVudHMvYnJlYWRjcnVtYnMuc2NzcyIsIndlYnBhY2s6Ly9wbGF0ZXN0YXJ0ZXJ0aGVtYS8uL3NyYy9zdHlsZXMvMS10aGVtZXMvdGhlbWUtMS9jb21wb25lbnRzL2Zvb3Rlci5zY3NzIiwid2VicGFjazovL3BsYXRlc3RhcnRlcnRoZW1hLy4vc3JjL3N0eWxlcy8xLXRoZW1lcy90aGVtZS0xL2NvbXBvbmVudHMvam9iLXBvc3RpbmdzLXNpemUuc2NzcyIsIndlYnBhY2s6Ly9wbGF0ZXN0YXJ0ZXJ0aGVtYS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vcGxhdGVzdGFydGVydGhlbWEvLi9zcmMvc3R5bGVzLzEtdGhlbWVzL3RoZW1lLTEvY29tcG9uZW50cy9tYWluLW1lbnUuc2NzcyIsIndlYnBhY2s6Ly9wbGF0ZXN0YXJ0ZXJ0aGVtYS8uL3NyYy9zdHlsZXMvMS10aGVtZXMvdGhlbWUtMS9jb21wb25lbnRzL25hdi10b2dnbGVyLnNjc3MiLCJ3ZWJwYWNrOi8vcGxhdGVzdGFydGVydGhlbWEvLi9zcmMvc3R5bGVzLzEtdGhlbWVzL3RoZW1lLTEvY29tcG9uZW50cy9wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vcGxhdGVzdGFydGVydGhlbWEvLi9zcmMvc3R5bGVzLzEtdGhlbWVzL3RoZW1lLTEvY29tcG9uZW50cy90b3AtbWVudS5zY3NzIiwid2VicGFjazovL3BsYXRlc3RhcnRlcnRoZW1hLy4vc3JjL3N0eWxlcy8xLXRoZW1lcy90aGVtZS0xL2luY2x1ZGVzL2FydGljbGUtY2FyZC5zY3NzIiwid2VicGFjazovL3BsYXRlc3RhcnRlcnRoZW1hLy4vc3JjL3N0eWxlcy8xLXRoZW1lcy90aGVtZS0xL2luY2x1ZGVzL2ZpbHRlcnMuc2NzcyIsIndlYnBhY2s6Ly9wbGF0ZXN0YXJ0ZXJ0aGVtYS8uL3NyYy9zdHlsZXMvMS10aGVtZXMvdGhlbWUtMS9pbmNsdWRlcy9mcm9udHBhZ2UtaGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vcGxhdGVzdGFydGVydGhlbWEvLi9zcmMvc3R5bGVzLzEtdGhlbWVzL3RoZW1lLTEvaW5jbHVkZXMvaGVhZGVyLWVudHJ5LWl0ZW1zLnNjc3MiLCJ3ZWJwYWNrOi8vcGxhdGVzdGFydGVydGhlbWEvLi9zcmMvc3R5bGVzLzEtdGhlbWVzL3RoZW1lLTEvaW5jbHVkZXMvaGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vcGxhdGVzdGFydGVydGhlbWEvLi9zcmMvc3R5bGVzLzEtdGhlbWVzL3RoZW1lLTEvaW5jbHVkZXMvdGVhbS1tZW1iZXIuc2NzcyIsIndlYnBhY2s6Ly9wbGF0ZXN0YXJ0ZXJ0aGVtYS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly9wbGF0ZXN0YXJ0ZXJ0aGVtYS8uL3NyYy9zdHlsZXMvMS10aGVtZXMvdGhlbWUtMS9pbmNsdWRlcy90ZXN0aW1vbmlhbC5zY3NzIiwid2VicGFjazovL3BsYXRlc3RhcnRlcnRoZW1hLy4vc3JjL3N0eWxlcy8xLXRoZW1lcy90aGVtZS0xL2VsZW1lbnRzL2FjY29yZGlvbi5zY3NzIiwid2VicGFjazovL3BsYXRlc3RhcnRlcnRoZW1hLy4vc3JjL3N0eWxlcy8xLXRoZW1lcy90aGVtZS0xL2VsZW1lbnRzL2J1dHRvbi5zY3NzIiwid2VicGFjazovL3BsYXRlc3RhcnRlcnRoZW1hLy4vc3JjL3N0eWxlcy8xLXRoZW1lcy90aGVtZS0xL2VsZW1lbnRzL2NvbnRhY3RfZm9ybS5zY3NzIiwid2VicGFjazovL3BsYXRlc3RhcnRlcnRoZW1hLy4vc3JjL3N0eWxlcy8xLXRoZW1lcy90aGVtZS0xL2VsZW1lbnRzL2ZlYXR1cmVkX3BhZ2Uuc2NzcyIsIndlYnBhY2s6Ly9wbGF0ZXN0YXJ0ZXJ0aGVtYS8uL3NyYy9zdHlsZXMvMS10aGVtZXMvdGhlbWUtMS9lbGVtZW50cy9pbWFnZS5zY3NzIiwid2VicGFjazovL3BsYXRlc3RhcnRlcnRoZW1hLy4vc3JjL3N0eWxlcy8xLXRoZW1lcy90aGVtZS0xL3NlY3Rpb25zL2NvbGxlYWd1ZXMtc2VjdGlvbi5zY3NzIiwid2VicGFjazovL3BsYXRlc3RhcnRlcnRoZW1hLy4vc3JjL3N0eWxlcy8xLXRoZW1lcy90aGVtZS0xL3NlY3Rpb25zL2ZlYXR1cmVkX2FjdGl2aXR5LnNjc3MiLCJ3ZWJwYWNrOi8vcGxhdGVzdGFydGVydGhlbWEvLi9zcmMvc3R5bGVzLzEtdGhlbWVzL3RoZW1lLTEvc2VjdGlvbnMvaW1wcmVzc2lvbi1zZWN0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vcGxhdGVzdGFydGVydGhlbWEvLi9zcmMvc3R5bGVzLzEtdGhlbWVzL3RoZW1lLTEvc2VjdGlvbnMvdGVzdGltb25pYWwtc3dpcGVyLnNjc3MiLCJ3ZWJwYWNrOi8vcGxhdGVzdGFydGVydGhlbWEvLi9zcmMvc3R5bGVzLzEtdGhlbWVzL3RoZW1lLTEvcG9zdHMvc2Nob29sX2luZm8uc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBWQVJJQUJMRVMgKi9cbkBpbXBvcnQgXCJ2YXJpYWJsZXMvdmFyaWFibGVzLnNjc3NcIjtcbi8qIEhFTFBFUlMgKi9cbkBpbXBvcnQgXCJoZWxwZXJzLzAtbWl4aW5zLnNjc3NcIjtcbi8qIExpYnMgZ2VuZXJhbCAqL1xuQGltcG9ydCBcIi4uL2NvbmZpZy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiLi4vY29uZmlnL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9jb25maWcvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGluc1wiO1xuIiwiOnJvb3Qge1xuXHQtLXZlcnRpY2FsLWZsb3c6IDIuNHJlbTtcblx0LS1jb2xvci13aGl0ZTogI2ZmZjtcblx0LS1jb2xvci1ibGFjazogIzAwMDtcblxuXG5cdC8vIE5ldyBzcGFjZXMuXG5cdC0tc3BhY2UtbW9iaWxlLXNtYWxsOiAyLjVyZW07XG5cdC0tc3BhY2UtbW9iaWxlLW1lZGl1bTogNXJlbTtcblx0LS1zcGFjZS1tb2JpbGUtbGFyZ2U6IDEwcmVtO1xuXHQtLXNwYWNlLW1vYmlsZS14bGFyZ2U6IDIwcmVtO1xuXHRcblx0LS1zcGFjZS1kZXNrdG9wLXNtYWxsOiAyLjVyZW07XG5cdC0tc3BhY2UtZGVza3RvcC1tZWRpdW06IDVyZW07XG5cdC0tc3BhY2UtZGVza3RvcC1sYXJnZTogMTByZW07XG5cdC0tc3BhY2UtZGVza3RvcC14bGFyZ2U6IDIwcmVtO1xufVxuXG4kZmEtZm9udC1wYXRoOiAnL3RoZW1lL2Fzc2V0cy9mb250cy93ZWJmb250cyc7XG4vLyBUcmFuc2l0aW9uXG4kdHJhbnNpdGlvbjogKFxuXHRlYXNlOiBcImVhc2UtaW4tb3V0XCIsXG5cdHNwZWVkOiAwLjJzLFxuKTtcblxuLyogIFBhZGRpbmcgKi9cbiRwYWRkaW5nOiAoXG5cdHNtYWxsOiAxcmVtLFxuXHRtZWRpdW06IDNyZW0sXG5cdGxhcmdlOiA1cmVtLFxuXHRjb2x1bW4tbW9iaWxlOiAxNXB4LFxuXHRjb2x1bW4tZGVza3RvcDogMTVweCxcbik7XG4kbWluQ29sdW1uSGVpZ2h0OiA0cmVtO1xuXG4vLyBAc2VlIHNwYWNlLnNjc3NcbiRzcGFjZXMtbW9iaWxlOiAoXG5cdHM6IDIuNXJlbSxcblx0bTogNXJlbSxcblx0bDogMTByZW0sXG4pO1xuJHNwYWNlcy1kZXNrdG9wOiAoXG5cdHM6IG1hcC1nZXQoJHNwYWNlcy1tb2JpbGUsIHMpLFxuXHRtOiBtYXAtZ2V0KCRzcGFjZXMtbW9iaWxlLCBtKSxcblx0bDogbWFwLWdldCgkc3BhY2VzLW1vYmlsZSwgbCksXG4pO1xuXG4kc2VjdGlvblBhZGRpbmc6IDVyZW07XG4kc21hbGxGYWN0b3I6IDAuNTtcbiRsYXJnZUZhY3RvcjogMjtcblxuJG1heC1zZWN0aW9uczogMjA7XG5cbiRtb2JpbGVGYWN0b3I6IDAuNTtcblxuLyogQnJlYWtwb2ludHMgKi9cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG5cdHhzOiAwLFxuXHRzbTogNTc2cHgsXG5cdG1kOiA3NjhweCxcblx0bGc6IDk5MnB4LFxuXHR4bDogMTIwMHB4XG4pO1xuJGJwRG93bjogc207XG4kYnBVcDogbWQ7XG4kYnBEb3duTmF2OiBsZztcbiRicFVwTmF2OiB4bDtcblxuJGhlYWRlckJyZWFrcG9pbnQ6IGxnO1xuJGhlYWRlckJyZWFrcG9pbnREb3duOiBtZDtcblxuLyogU3dpcGVyICovXG4kc3dpcGVyLXRoZW1lLWNvbG9yOiBibGFjaztcbiRzd2lwZXItcHJlbG9hZGVyLWNvbG9yOiBibGFjaztcbiRzd2lwZXItbmF2aWdhdGlvbi1jb2xvcjogd2hpdGU7XG4kc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6IHdoaXRlO1xuJHN3aXBlci1uYXZpZ2F0aW9uLXNpemU6IDQ0cHg7XG4kcGFnaW5hdGlvbkNvbG9yTmFtZTogXCJibGFja1wiO1xuXG4vLyBaLWluZGV4IG1hcHBpbmc7XG4vLyBAc2VlOiBzdHlsZXMvaGVscGVycy8wLW1peGlucy5zY3NzXG4kei1pbmRleDogKFxuXHRtb2RhbDogMjAwLFxuXHRza2lwbGluazogMTkwLFxuXHR0b3BfbmF2aWdhdGlvbjogMTIxLFxuXHRuYXZpZ2F0aW9uOiAxMjAsXG5cdGhlYWRlcjogMTE1LFxuXHRtYXA6IDExMCxcblx0Zm9vdGVyOiAxMDAsXG4pO1xuIiwiLyogVkFSSUFCTEVTICovXG46cm9vdCB7XG4gIC0tdmVydGljYWwtZmxvdzogMi40cmVtO1xuICAtLWNvbG9yLXdoaXRlOiAjZmZmO1xuICAtLWNvbG9yLWJsYWNrOiAjMDAwO1xuICAtLXNwYWNlLW1vYmlsZS1zbWFsbDogMi41cmVtO1xuICAtLXNwYWNlLW1vYmlsZS1tZWRpdW06IDVyZW07XG4gIC0tc3BhY2UtbW9iaWxlLWxhcmdlOiAxMHJlbTtcbiAgLS1zcGFjZS1tb2JpbGUteGxhcmdlOiAyMHJlbTtcbiAgLS1zcGFjZS1kZXNrdG9wLXNtYWxsOiAyLjVyZW07XG4gIC0tc3BhY2UtZGVza3RvcC1tZWRpdW06IDVyZW07XG4gIC0tc3BhY2UtZGVza3RvcC1sYXJnZTogMTByZW07XG4gIC0tc3BhY2UtZGVza3RvcC14bGFyZ2U6IDIwcmVtO1xufVxuXG4vKiAgUGFkZGluZyAqL1xuLyogQnJlYWtwb2ludHMgKi9cbi8qIFN3aXBlciAqL1xuLyogSEVMUEVSUyAqL1xuLnZpc3VhbGx5LWhpZGRlbiB7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDFweDtcbn1cblxuLyogTGlicyBnZW5lcmFsICovXG4udGhlbWUtMSB7XG4gIC0tX2JvZHktYmFja2dyb3VuZDogcmdiKDI0MiwgMjQyLCAyNDIpO1xuICAtLWJvZHktbGluZS1oZWlnaHQ6IDEuNTtcbiAgLS1fYm9yZGVyLXJhZGl1czogMS42cmVtO1xuICAtLWJ1dHRvbi1ib3JkZXItcmFkaXVzOiB2YXIoLS1fYm9yZGVyLXJhZGl1cyk7XG4gIC0tX2FjdGl2aXR5LWFjY2VudC1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgLS1fdGVhbS10YWctYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbn1cbi50aGVtZS0xW2RhdGEtZGV2LW1vZGU9dHJ1ZV0ge1xuICAtLWNvbG9yLXByaW1hcnk6IHJnYigyNDMsIDEwOCwgMTApO1xuICAtLWNvbG9yLXNlY29uZGFyeTogcmdiKDMzLCAxNDIsIDE0Myk7XG4gIC0tYm9keS1mb250LWZhbWlseTogXCJNb250c2VycmF0LU1lZGl1bVwiLCBzYW5zLXNlcmlmO1xuICAtLWJvZHktZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgLS1oZWFkaW5ncy1mb250LWZhbWlseTogXCJLcmVvbi1Cb2xkXCIsIHNlcmlmO1xuICAtLWhlYWRpbmdzLWZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi50aGVtZS0xIHtcbiAgLS1fYnJlYWRjcnVtYi1kb3QtYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbn1cblxuLnRoZW1lLTEgLmZvb3RlciB7XG4gIC0tX2Zvb3Rlci1oZWFkaW5ncy1jb2xvcjogd2hpdGU7XG4gIC0tX2Zvb3Rlci1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuLnRoZW1lLTEgLmZvb3Rlci1icnVzaCB7XG4gIGRpc3BsYXk6IGluaXRpYWw7XG59XG5cbi50aGVtZS0xIC5qb2ItcG9zdGluZ3Mtc2l6ZSB7XG4gIC0tX2pvYi1wb3N0aW5ncy1zaXplLWJhY2tncm91bmQ6IHdoaXRlO1xuICAtLV9qb2ItcG9zdGluZ3Mtc2l6ZS1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgLS1fam9iLXBvc3RpbmdzLXNpemUtZm9udC1zaXplOiAxcmVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAudGhlbWUtMSAuam9iLXBvc3RpbmdzLXNpemUge1xuICAgIC0tX2pvYi1wb3N0aW5ncy1zaXplLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgLS1fam9iLXBvc3RpbmdzLXNpemUtY29sb3I6IHdoaXRlO1xuICB9XG59XG5cbi50aGVtZS0xIHtcbiAgLS1fbWFpbi1tZW51LWJhY2tncm91bmQ6IHJnYigyNDIsMjQyLDI0Mik7XG4gIC0tX21haW4tbWVudS1qdXN0aWZ5OiBmbGV4LWVuZDtcbiAgLS1fbWFpbi1tZW51LWxpbmstY29sb3I6IGJsYWNrO1xuICAtLV9tYWluLW1lbnUtbGluay1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gIC0tX21vYmlsZS1tYWluLW1lbnUtdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC50aGVtZS0xIC5tYWluLW1lbnUtc2VhcmNoLXRleHQge1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgd2lkdGg6IDFweDtcbiAgfVxufVxuXG4udGhlbWUtMSB7XG4gIC0tX21lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gIC0tX21lbnUtdG9nZ2xlLWJvcmRlci1yYWRpdXM6IDQwJTtcbiAgLS1fbWVudS1zZWFyY2gtdG9nZ2xlLWJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG4udGhlbWUtMSB7XG4gIC0tX3BhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogMzUlO1xuICAtLV9wYWdpbmF0aW9uLWJhY2tncm91bmQ6IHdoaXRlO1xuICAtLV9wYWdpbmF0aW9uLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gIC0tX3BhZ2luYXRpb24tdGV4dC1jb2xvcjogaW5oZXJpdDtcbiAgLS1fcGFnaW5hdGlvbi10ZXh0LWNvbG9yLWhvdmVyOiB3aGl0ZTtcbn1cblxuLnRoZW1lLTEgLnRvcC1tZW51IHtcbiAgLS1fdG9wLW1lbnUtYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgLS1fdG9wLW1lbnUtdGV4dC1jb2xvcjogd2hpdGU7XG59XG4udGhlbWUtMSAudG9wLW1lbnUtaGVhZGVyLWJydXNoIHtcbiAgZGlzcGxheTogaW5pdGlhbDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjFyZW0pIHNjYWxlWSgwLjQpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG59XG4udGhlbWUtMSAudG9wLW1lbnUtaGVhZGVyLWJydXNoLWdyb3VwIHtcbiAgZmlsbDogdmFyKC0tbWFpbi1tZW51LWJhY2tncm91bmQsIHZhcigtLV9tYWluLW1lbnUtYmFja2dyb3VuZCwgI2YyZjJmMikpO1xufVxuLnRoZW1lLTEgLm1vYmlsZS10b3AtbWVudSB7XG4gIC0tX21vYmlsZS10b3AtbWVudS10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xufVxuXG4udGhlbWUtMSAuYXJ0aWNsZS1jYXJkIHtcbiAgLS1fYXJ0aWNsZS1jYXJkLWVtcGxveW1lbnQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAtLV9hcnRpY2xlLWNhcmQtdGFnLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG59XG5cbi50aGVtZS0xIC5maWx0ZXJfX3dyYXBwZXIge1xuICAtLV9maWx0ZXJfaW5wdXRfdGl0bGVfZGlzcGxheTogYmxvY2s7XG4gIC0tX2ZpbHRlcl9pbnB1dF9nYXA6IDAuOHJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnRoZW1lLTEgLmZpbHRlcl9fd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuLnRoZW1lLTEgLmZpbHRlcl9fc29ydCB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnRoZW1lLTEgLmZpbHRlcl9fc29ydCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50aGVtZS0xIC5wbGF0dGVyLWZpbHRlcl9fY29udGVudC0tYWN0aXZpdGllcyxcbi50aGVtZS0xIC5wbGF0dGVyLWZpbHRlcl9fY29udGVudC0tYXJ0aWNsZXMge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRoZW1lLTEgLnBsYXR0ZXItZmlsdGVyX19jb250ZW50LS10ZWFtcyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgfVxufVxuXG4udGhlbWUtMSAuZnJvbnRwYWdlLWhlYWRlci10aXRsZSB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnRoZW1lLTEgLmZyb250cGFnZS1oZWFkZXItdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgfVxufVxuLnRoZW1lLTEgLmZyb250cGFnZS1oZWFkZXItY29udGVudCBoMSB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbn1cbi50aGVtZS0xIC5mcm9udHBhZ2UtaGVhZGVyLWNvbnRlbnQtaW5uZXIge1xuICBwYWRkaW5nOiAzLjJyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAxLjZyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnRoZW1lLTEgLmZyb250cGFnZS1oZWFkZXItY29udGVudC1pbm5lciB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoICgxMDB2dyAtIDk5MnB4KSAvIDIgKyAxNXB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudGhlbWUtMSAuZnJvbnRwYWdlLWhlYWRlci1jb250ZW50LWlubmVyIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyggKDEwMHZ3IC0gMTIwMHB4KSAvIDIgKyAxNXB4KTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC50aGVtZS0xIC5mcm9udHBhZ2UtaGVhZGVyLWNvbnRlbnQtaW5uZXIge1xuICAgIG1hcmdpbjogLTVyZW0gMS42cmVtIDAgMS42cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnRoZW1lLTEgLmZyb250cGFnZS1oZWFkZXItY29udGVudC1pbm5lciB7XG4gICAgcGFkZGluZzogNS42cmVtO1xuICAgIG1heC13aWR0aDogNDByZW07XG4gICAgYm9yZGVyLXJhZGl1czogMi40cmVtO1xuICB9XG59XG4udGhlbWUtMSAuZnJvbnRwYWdlLWhlYWRlci1jb250ZW50LWlubmVyIC5mcm9udC1wYWdlLWhlYWRlci10ZXh0IHtcbiAgY29sb3I6IHJnYmEoMjMsIDIzLCAyMywgMC42KTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG59XG4udGhlbWUtMSAuaGVhZGVyLXZpZGVvIHtcbiAgZ3JpZC1hcmVhOiAxLzEvMi8yO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC50aGVtZS0xIC5oZWFkZXItdmlkZW8ge1xuICAgIGdyaWQtYXJlYTogMS8xLzIvMztcbiAgICBhc3BlY3QtcmF0aW86IDE0NDAvNjgwO1xuICB9XG59XG4udGhlbWUtMSAuZnJvbnRwYWdlLWJhY2tncm91bmQtaW1hZ2Uge1xuICBncmlkLWFyZWE6IDEvMS8yLzI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnRoZW1lLTEgLmZyb250cGFnZS1iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICBncmlkLWFyZWE6IDEvMS8yLzM7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAwO1xuICB9XG59XG4udGhlbWUtMSAuZnJvbnRwYWdlLWJhY2tncm91bmQtaW1hZ2U6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMC4yNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taGVhZGVyX2ltYWdlX2JlZm9yZSwgdmFyKC0tX2hlYWRlcl9pbWFnZV9iZWZvcmUsIHZhcigtLWhlYWRpbmdzLWZvbnQtY29sb3IsIGJsYWNrKSkpO1xufVxuLnRoZW1lLTEgLmZyb250cGFnZS1oZWFkZXItcGxheS0tdGhlbWUtMyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnRoZW1lLTEgLmZyb250cGFnZS1oZWFkZXItcGxheSB7XG4gICAgYXNwZWN0LXJhdGlvOiAxLzAuODtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgLnRoZW1lLTEgLmZyb250cGFnZS1oZWFkZXItcGxheSAudmlkZW8tZGlhbG9nLXRyaWdnZXIge1xuICAgIGhlaWdodDogNy4ycmVtO1xuICAgIHdpZHRoOiA3LjJyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAudGhlbWUtMSAuZnJvbnRwYWdlLWhlYWRlci1wbGF5IHtcbiAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIH1cbiAgLnRoZW1lLTEgLmZyb250cGFnZS1oZWFkZXItcGxheSAudmlkZW8tZGlhbG9nLXRyaWdnZXIge1xuICAgIGhlaWdodDogOC44cmVtO1xuICAgIHdpZHRoOiA4LjhyZW07XG4gIH1cbn1cblxuLnRoZW1lLTEgLmhlYWRlci1lbnRyeS1pdGVtcyB7XG4gIC0tX2hlYWRlcl9lbnRyeV9pdGVtc19ib3JkZXJfcmFkaXVzOiB2YXIoLS1fYm9yZGVyLXJhZGl1cyk7XG4gIC0tX2hlYWRlcl9lbnRyeV9pdGVtX2ljb25fYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgLS1faGVhZGVyX2VudHJ5X2l0ZW1faWNvbl9ib3JkZXJfcmFkaXVzOiAxLjJyZW07XG4gIC0tX2hlYWRlcl9lbnRyeV9pdGVtX2Rlc2NyaXB0aW9uX2NvbG9yOiByZ2JhKDIzLCAyMywgMjMsIDAuNik7XG59XG5cbi50aGVtZS0xIC5oZWFkZXIge1xuICAtLV9oZWFkZXJfdGFnc19iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAtLV9oZWFkZXJfdGFnc19jb2xvcjogd2hpdGU7XG59XG5cbi50aGVtZS0xIC50ZWFtX21lbWJlciB7XG4gIC0tX3RlYW0tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIC0tX3RlYW0tY29udGVudC1wYWRkaW5nOiAycmVtIDA7XG59XG4udGhlbWUtMSAudGVhbV9tZW1iZXJfX2ltYWdlIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cywgdmFyKC0tX2JvcmRlci1yYWRpdXMsIDApKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi50aGVtZS0xIC50ZWFtX21lbWJlcl9faW1hZ2UgaW1nIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtLCAwLjNzO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnRoZW1lLTEgLnRlYW1fbWVtYmVyX19pbWFnZSBpbWcge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi50aGVtZS0xIC50ZWFtX21lbWJlci0tbGluazpob3ZlciAudGVhbV9tZW1iZXJfX2ltYWdlIGltZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cblxuLnRoZW1lLTEgLnRlc3RpbW9uaWFsIHtcbiAgLS1fdGVzdGltb25pYWwtc3ZnLW1hcmdpbjogMCAwIDVyZW07XG4gIC0tX3Rlc3RpbW9uaWFsLXBhZGRpbmc6IDA7XG59XG5cbi50aGVtZS0xIC5hY2NvcmRpb24ge1xuICAtLWFjY29yZGlvbi1wYWRkaW5nLWJsb2NrOiAycmVtO1xuICAtLWFjY29yZGlvbi1wYWRkaW5nLWlubGluZTogMDtcbiAgLS1hY2NvcmRpb24tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIC0tYWNjb3JkaW9uLWFjdGl2ZS1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbi50aGVtZS0xIC5kZXRhaWxzLWFuZC1zdW1tYXJ5IHtcbiAgbWFyZ2luLWJsb2NrLWVuZDogMDtcbiAgYm9yZGVyLWJsb2NrLWVuZDogc29saWQgMXB4IGxpZ2h0Z3JleTtcbn1cblxuLnRoZW1lLTEge1xuICAtLV9idXR0b24tcGFkZGluZzogMS42cmVtIDNyZW07XG4gIC0tX2J1dHRvbi1ib3JkZXItcmFkaXVzOiAxLjZyZW07XG4gIC0tX2J1dHRvbi10ZXh0LWNvbG9yOiB3aGl0ZTtcbn1cblxuLnRoZW1lLTEge1xuICAtLV9pbnB1dC1iYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgLS1faW5wdXQtY29sb3I6IHJnYigyMywgMjMsIDIzKTtcbiAgLS1faW5wdXQtbGFiZWwtY29sb3I6IHJnYigyMywgMjMsIDIzKTtcbiAgLS1faW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICM1NTU7XG4gIC0tX2lucHV0LXBhZGRpbmctYmxvY2s6IDEuNnJlbTtcbiAgLS1faW5wdXQtcGFkZGluZy1pbmxpbmU6IDMuMnJlbTtcbiAgLS1faW5wdXQtYm9yZGVyLXJhZGl1czogMS42cmVtO1xuICAtLV9pbnB1dC1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLV9pbnB1dC1mb2N1cy1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gIC0tX2lucHV0LWVycm9yLWNvbG9yOiAjYzAwO1xuICAtLV9pbnB1dC1maWxlbmFtZS1iYWNrZ3JvdW5kOiByZ2JhKDIzLCAyMywgMjMsIDAuMDgpO1xufVxuXG4udGhlbWUtMSAuZmVhdHVyZWRfcGFnZSB7XG4gIC0tX2ZlYXR1cmVkX3BhZ2UtbGluay1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gIC0tX2ZlYXR1cmVkX3BhZ2UtY29udGVudC1wYWRkaW5nOiAwO1xufVxuLnRoZW1lLTEgLmZlYXR1cmVkX3BhZ2UtLWxpbmsgLmZlYXR1cmVkX3BhZ2VfX2NvbnRlbnQge1xuICBwYWRkaW5nLWJvdHRvbTogN3JlbTtcbn1cbi50aGVtZS0xIC5mZWF0dXJlZF9wYWdlLS1pbWFnZSAuZmVhdHVyZWRfcGFnZV9fY29udGVudCB7XG4gIGJvcmRlci10b3A6IHNvbGlkIDFweCBsaWdodGdyZXk7XG59XG4udGhlbWUtMSAuZmVhdHVyZWRfcGFnZTpub3QoLmZlYXR1cmVkX3BhZ2UtLWltYWdlKSAuZmVhdHVyZWRfcGFnZV9fdGl0bGUge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLnRoZW1lLTEgLmltYWdlIHtcbiAgLS1faW1hZ2UtdGl0bGUtYmFja2dyb3VuZDogdmFyKC0tYm9keS1iYWNrZ3JvdW5kLCB2YXIoLS1fYm9keS1iYWNrZ3JvdW5kLCB3aGl0ZSkpO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLnRoZW1lLTEgLmltYWdlIC50aXRsZSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHRvcDogdW5zZXQ7XG59XG4udGhlbWUtMSAuaW1hZ2UuaW1hZ2UtLWltZ2NsaXAge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLCB2YXIoLS1fYm9yZGVyLXJhZGl1cywgMCkpO1xufVxuXG4udGhlbWUtMSAuY29sbGVhZ3Vlcy1zZWN0aW9uIHtcbiAgLS1fY29sbGVhZ3Vlcy1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbn1cblxuLnRoZW1lLTEgLmZlYXR1cmVkX2FjdGl2aXR5IC5hY3Rpdml0eSB7XG4gIGdhcDogM3JlbTtcbiAgLS1fZmVhdHVyZWRfYWN0aXZpdHktYmFja2dyb3VuZDogd2hpdGU7XG59XG4udGhlbWUtMSAuZmVhdHVyZWRfYWN0aXZpdHkgLmFjdGl2aXR5X19pbWFnZSB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMsIHZhcigtLV9ib3JkZXItcmFkaXVzLCAwKSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4udGhlbWUtMSAuZmVhdHVyZWRfYWN0aXZpdHkgLmFjdGl2aXR5X19jb250ZW50IHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cywgdmFyKC0tX2JvcmRlci1yYWRpdXMsIDApKTtcbn1cblxuLnRoZW1lLTEgLmltcHJlc3Npb24tc2VjdGlvbiB7XG4gIC0tX2ltcHJlc3Npb25fc3dpcGVyX3RpdGxlX2NvbG9yOiBibGFjaztcbiAgLS1faW1wcmVzc2lvbl9zd2lwZXJfdGl0bGVfYmFja2dyb3VuZDogdmFyKC0tYm9keS1iYWNrZ3JvdW5kLCB2YXIoLS1fYm9keS1iYWNrZ3JvdW5kLCB3aGl0ZSkpO1xuICAtLV9pbXByZXNzaW9uX3N3aXBlcl9zY3JvbGxiYXJfYmFja2dyb3VuZF9kcmFnOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAtLV9pbXByZXNzaW9uX3N3aXBlcl9idG5zX2NvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAtLV9pbXByZXNzaW9uX3N3aXBlcl9zbGlkZV9iZWZvcmVfZGlzcGxheTogbm9uZTtcbiAgLS1faW1wcmVzc2lvbl9zd2lwZXJfdGl0bGVfcGFkZGluZ19tb2JpbGU6IDRweCAxLjZyZW07XG59XG5cbi50aGVtZS0xIC50ZXN0aW1vbmlhbC1zZWN0aW9uIHtcbiAgLS1fdGVzdGltb25pYWwtZGlzcGxheS1zbGlkZTogbm9uZTtcbiAgLS1fdGVzdGltb25pYWwtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAtLV90ZXN0aW1vbmlhbC1idWxsZXQtYm9yZGVyLWFjdGl2ZTogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgLS1fdGVzdGltb25pYWwtb3BhY2l0eS1zbGlkZTogMDtcbiAgLS1fdGVzdGltb25pYWwtYmFja2dyb3VuZDogd2hpdGU7XG4gIC0tX3Rlc3RpbW9uaWFsLXBhZGRpbmc6IDA7XG4gIC0tX3Rlc3RpbW9uaWFsLXBhZ2luYXRpb24tbWFyZ2luOiA1cmVtIDAgMDtcbn1cblxuLnRoZW1lLTEgLnNjaG9vbF9pbmZvX3BhZ2VfX25hdiB7XG4gIHBhZGRpbmc6IDEuNXJlbSAyLjRyZW07XG59XG4udGhlbWUtMSAuc2Nob29sX2luZm9fcGFnZV9fbmF2IHVsIGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnRoZW1lLTEgLnNjaG9vbF9pbmZvX3BhZ2VfX25hdiB1bCBsaSBhOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yLCAwLjNzO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnRoZW1lLTEgLnNjaG9vbF9pbmZvX3BhZ2VfX25hdiB1bCBsaSBhOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi50aGVtZS0xIC5zY2hvb2xfaW5mb19wYWdlX19uYXYgdWwgbGkgYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleDogMSAwIDEwMCU7XG59XG4udGhlbWUtMSAuc2Nob29sX2luZm9fcGFnZV9fbmF2IHVsIGxpLmFjdGl2ZSA+IGEge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG4udGhlbWUtMSAuc2Nob29sX2luZm9fcGFnZV9fbmF2IHVsIGxpLmFjdGl2ZSA+IGE6OmJlZm9yZSB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICBsZWZ0OiAwO1xufSIsIkBtaXhpbiBwc2V1ZG8tYWJzb2x1dGUoJHRvcDogMCwgJGxlZnQ6IDApIHtcblx0Y29udGVudDogXCJcIjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6ICR0b3A7XG5cdGxlZnQ6ICRsZWZ0O1xufVxuXG5AbWl4aW4gcHNldWRvLWFic29sdXRlLWNvdmVyIHtcblx0QGluY2x1ZGUgcHNldWRvLWFic29sdXRlO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG5AbWl4aW4gY292ZXIoJGFsaWduOiBcInVuc2V0XCIpIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXG5cdEBpZiAkYWxpZ24gPT0gXCJyaWdodFwiIG9yICRhbGlnbiA9PSBcInVuc2V0XCIge1xuXHRcdHJpZ2h0OiAwO1xuXHR9IEBlbHNlIHtcblx0XHRsZWZ0OiAwO1xuXHR9XG5cblx0QGlmICRhbGlnbiA9PSBcInRvcFwiIG9yICRhbGlnbiA9PSBcInJpZ2h0XCIgb3IgJGFsaWduID09IFwibGVmdFwiIG9yICRhbGlnbiA9PSBcInVuc2V0XCIge1xuXHRcdHRvcDogMDtcblx0fSBAZWxzZSB7XG5cdFx0Ym90dG9tOiAwO1xuXHR9XG5cblx0QGlmICRhbGlnbiA9PSBcInRvcFwiIG9yICRhbGlnbiA9PSBcImJvdHRvbVwiIG9yICRhbGlnbiA9PSBcInVuc2V0XCIge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblx0QGlmICRhbGlnbiA9PSBcImxlZnRcIiBvciAkYWxpZ24gPT0gXCJyaWdodFwiIG9yICRhbGlnbiA9PSBcInVuc2V0XCIge1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxufVxuXG5AbWl4aW4gZmxleC1jIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuQG1peGluIGZsZXgtc2Mge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbkBtaXhpbiBmbGV4LWVjIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuQG1peGluIGZsZXgtY2Mge1xuXHRAaW5jbHVkZSBmbGV4LWM7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG5AbWl4aW4gZmxleC1jYiB7XG5cdEBpbmNsdWRlIGZsZXgtYztcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG5AbWl4aW4gZmxleC1jZSB7XG5cdEBpbmNsdWRlIGZsZXgtYztcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuQG1peGluIGZsZXgtY3Mge1xuXHRAaW5jbHVkZSBmbGV4LWM7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuQG1peGluIGZsZXgtY2Ege1xuXHRAaW5jbHVkZSBmbGV4LWM7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuXG5AbWl4aW4gZmxleGMtYyB7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbkBtaXhpbiBmbGV4Yy1jYyB7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdEBpbmNsdWRlIGZsZXgtYztcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbkBtaXhpbiBmbGV4Yy1jYiB7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdEBpbmNsdWRlIGZsZXgtYztcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG5AbWl4aW4gZmxleGMtY2Uge1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRAaW5jbHVkZSBmbGV4LWM7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbkBtaXhpbiBmbGV4Yy1jcyB7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdEBpbmNsdWRlIGZsZXgtYztcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG5AbWl4aW4gZmxleGMtY2Ege1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRAaW5jbHVkZSBmbGV4LWM7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuXG5AbWl4aW4gY292ZXItaW1nIHtcblx0QGluY2x1ZGUgY292ZXI7XG5cdG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG5AbWl4aW4gdHJhbnNpdGlvbigkYXR0cmlidXRlOiBhbGwsICRzcGVlZDogbWFwLWdldCgkdHJhbnNpdGlvbiwgXCJzcGVlZFwiKSwgJGVhc2U6IGVhc2UtaW4tb3V0KSB7XG5cdHRyYW5zaXRpb246ICRhdHRyaWJ1dGUgJHNwZWVkICRlYXNlO1xufVxuQG1peGluIG11bHRpcGxlVHJhbnNpdGlvbnMoJGF0dHJpYnV0ZXMsICRzcGVlZDogbWFwLWdldCgkdHJhbnNpdGlvbiwgXCJzcGVlZFwiKSwgJGVhc2U6IGVhc2UtaW4tb3V0KSB7XG5cdCR0cmFuc2l0aW9uOiAoKTtcblx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJGF0dHJpYnV0ZXMpIHtcblx0XHQkdHJhbnNpdGlvbjogYXBwZW5kKCR0cmFuc2l0aW9uLCAobnRoKCRhdHRyaWJ1dGVzLCAkaSkgJHNwZWVkICRlYXNlKSwgY29tbWEpO1xuXHR9XG5cdHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuXG5AbWl4aW4gYm94KCR3aWR0aCwgJGhlaWdodDogJHdpZHRoKSB7XG5cdHdpZHRoOiAkd2lkdGg7XG5cdGhlaWdodDogJGhlaWdodDtcbn1cblxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHkpIHtcblx0b3BhY2l0eTogJG9wYWNpdHk7XG5cdCRvcGFjaXR5LWllOiAkb3BhY2l0eSAqIDEwMDtcblx0ZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTsgLy9JRThcbn1cblxuQG1peGluIGZvbnQtc2l6ZSgkc2l6ZSwgJGJhc2U6IDE2KSB7XG5cdGZvbnQtc2l6ZTogJHNpemU7IC8vIGZhbGxiYWNrIGZvciBvbGQgYnJvd3NlcnNcblx0Zm9udC1zaXplOiAoJHNpemUgLyAkYmFzZSkgKiAxcmVtO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yLCAkb3JpZW50YXRpb24pIHtcblx0YmFja2dyb3VuZDogJHN0YXJ0LWNvbG9yO1xuXG5cdEBpZiAkb3JpZW50YXRpb249PSBcInZlcnRpY2FsXCIge1xuXHRcdGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuXHR9IEBlbHNlIGlmICRvcmllbnRhdGlvbj09IFwiaG9yaXpvbnRhbFwiIHtcblx0XHRiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuXHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcblx0fSBAZWxzZSB7XG5cdFx0YmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2VudGVyLCBlbGxpcHNlIGNvdmVyLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuXHRcdGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGNlbnRlciwgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcblx0fVxufVxuXG5AbWl4aW4gYmFja2dyb3VuZC1pbWFnZSgpIHtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbn1cblxuQG1peGluIHNjcm9sbCgpIHtcblx0b3ZlcmZsb3cteDogc2Nyb2xsO1xuXHQtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG5cdHNjcm9sbGJhci13aWR0aDogbm9uZTtcblxuXHQmOjotd2Via2l0LXNjcm9sbGJhciB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5AbWl4aW4gaW1nTGFyZ2UoJHNpemUsICRkaXJlY3Rpb24pIHtcblx0LmltYWdlLS1sYXJnZSB7XG5cdFx0bWFyZ2luLSN7JGRpcmVjdGlvbn06IC0kc2l6ZTtcblx0XHRoZWlnaHQ6IGNhbGMoMTAwJSArICgyICogI3skc2l6ZX0pKTtcblx0fVxufVxuXG4vLyBAbWl4aW4gY29sb3IoJHR5cGUpIHtcbi8vIFx0QGVhY2ggJG5hbWUsICRjb2RlIGluICRjb2xvcnMge1xuLy8gXHRcdCYtLSN7JG5hbWV9IHtcbi8vIFx0XHRcdCN7JHR5cGV9OiAkY29kZSAhaW1wb3J0YW50O1xuLy8gXHRcdH1cbi8vIFx0fVxuLy8gfVxuXG4vLyBUaGlzIGlzIGEgYWNjZXNzaWJsZSB3YXkgb2YgJ2hpZGluZycgc29tZXRoaW5nLlxuLy8gQHNlZTogaHR0cHM6Ly9nZXRib290c3RyYXAuY29tL2RvY3MvNS4wL2hlbHBlcnMvdmlzdWFsbHktaGlkZGVuL1xuQG1peGluIHZpc3VhbGx5LWhpZGRlbiB7XG5cdGNsaXA6IHJlY3QoMCAwIDAgMCk7XG5cdGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcblx0aGVpZ2h0OiAxcHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0d2lkdGg6IDFweDtcbn1cbi52aXN1YWxseS1oaWRkZW4ge1xuXHRAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW47XG59XG5cbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbk5hbWUsICRkdXJhdGlvbiwgJGZpbGxNb2RlOiBcImZvcndhcmRzXCIpIHtcblx0YW5pbWF0aW9uLW5hbWU6ICN7JGFuaW1hdGlvbk5hbWV9O1xuXHRhbmltYXRpb24tZHVyYXRpb246ICN7JGR1cmF0aW9ufTtcblx0YW5pbWF0aW9uLWZpbGwtbW9kZTogI3skZmlsbE1vZGV9O1xufVxuXG5AbWl4aW4gdmVydGljYWxBbmltYXRpb24oJGFuaW1hdGlvbk5hbWUsICRkdXJhdGlvbjogMnMpIHtcblx0JGZyb206IDEwMCU7XG5cdCR0bzogMCU7XG5cdEBpZiAkYW5pbWF0aW9uTmFtZSA9PSBcImFuaW1hdGlvbkRvd25cIiB7XG5cdFx0JGZyb206IC0xMDAlO1xuXHRcdCR0bzogMCU7XG5cdH1cblx0YW5pbWF0aW9uLW5hbWU6ICN7JGFuaW1hdGlvbk5hbWV9O1xuXHRhbmltYXRpb24tZHVyYXRpb246ICN7JGR1cmF0aW9ufTtcblx0YW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG5cblx0QGtleWZyYW1lcyAjeyRhbmltYXRpb25OYW1lfSB7XG5cdFx0ZnJvbSB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0QGlmICRhbmltYXRpb25OYW1lICE9IFwiYW5pbWF0aW9uRmFkZVwiIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKCN7JGZyb219KTtcblx0XHRcdH1cblx0XHR9XG5cdFx0dG8ge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdEBpZiAkYW5pbWF0aW9uTmFtZSAhPSBcImFuaW1hdGlvbkZhZGVcIiB7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgjeyR0b30pO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5AZnVuY3Rpb24gei1pbmRleCgka2V5KSB7XG5cdEByZXR1cm4gbWFwLWdldCgkei1pbmRleCwgJGtleSk7XG59XG5cbkBtaXhpbiB6LWluZGV4KCRrZXkpIHtcblx0ei1pbmRleDogei1pbmRleCgka2V5KTtcbn1cblxuQG1peGluIHNjYWxlZEZvbnRzKCkge1xuXHQkc2NhbGUtcmF0aW86IDAuMzMzO1xuXHRmb250LXNpemU6ICRib2R5X2ZvbnRTaXplO1xuXHRAZm9yICRpIGZyb20gMSB0aHJvdWdoIDYge1xuXHRcdC5oI3skaX0sXG5cdFx0aCN7JGl9IHtcblx0XHRcdC0tdGhpc0ZvbnRTaXplOiBjbGFtcChcblx0XHRcdFx0I3skYm9keV9mb250U2l6ZX0sXG5cdFx0XHRcdGNhbGMoKDEwMHZ3IC0gMTAwJSkgLyAoY2FsYygxMCArICN7JGl9KSkpLFxuXHRcdFx0XHRjYWxjKHZhcigtLWZvbnRzaXplX2gxKSAqICgjeyRzY2FsZS1yYXRpb30gKiBjYWxjKDYgLyBjYWxjKCN7JGl9ICsgMSkpKSlcblx0XHRcdCk7XG5cdFx0XHQtLWN1c3RvbUZvbnRTaXplOiBjbGFtcCgjeyRib2R5X2ZvbnRTaXplfSwgY2FsYygoMTAwdncgLSAxMDAlKSAvIChjYWxjKDEwICsgI3skaX0pKSksIHZhcigtLWZvbnRzaXplX2gjeyRpfSkpO1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1jdXN0b21Gb250U2l6ZSwgdmFyKC0tdGhpc0ZvbnRTaXplKSk7XG5cdFx0fVxuXHR9XG59XG4iLCIudGhlbWUtMSB7XG4gICAgLS1fYm9keS1iYWNrZ3JvdW5kOiByZ2IoMjQyLCAyNDIsIDI0Mik7XG4gICAgLS1ib2R5LWxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgLS1fYm9yZGVyLXJhZGl1czogMS42cmVtO1xuICAgIC0tYnV0dG9uLWJvcmRlci1yYWRpdXM6IHZhcigtLV9ib3JkZXItcmFkaXVzKTtcblxuICAgIC0tX2FjdGl2aXR5LWFjY2VudC1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICAtLV90ZWFtLXRhZy1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuXG4gICAgJltkYXRhLWRldi1tb2RlPVwidHJ1ZVwiXSB7XG4gICAgICAgIC8vIHRlbXBvcmFyeSBzdHlsaW5nLlxuICAgICAgICAtLWNvbG9yLXByaW1hcnk6IHJnYigyNDMsIDEwOCwgMTApO1xuICAgICAgICAtLWNvbG9yLXNlY29uZGFyeTogcmdiKDMzLCAxNDIsIDE0Myk7XG5cbiAgICAgICAgLS1ib2R5LWZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXQtTWVkaXVtXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIC0tYm9keS1mb250LXdlaWdodDogbm9ybWFsOyAvLyA1MDBcbiAgICAgICAgLS1oZWFkaW5ncy1mb250LWZhbWlseTogXCJLcmVvbi1Cb2xkXCIsIHNlcmlmO1xuICAgICAgICAtLWhlYWRpbmdzLWZvbnQtd2VpZ2h0OiA2MDA7IC8vIDQwMFxuICAgIH1cbn1cbiIsIi50aGVtZS0xIHtcbiAgICAtLV9icmVhZGNydW1iLWRvdC1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xufVxuIiwiLnRoZW1lLTEge1xuICAgIC5mb290ZXIge1xuICAgICAgICAtLV9mb290ZXItaGVhZGluZ3MtY29sb3I6IHdoaXRlO1xuICAgICAgICAtLV9mb290ZXItYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcblxuICAgICAgICBtYXJnaW4tdG9wOiAycmVtOyAvLyBhYml0IG9mIG9mZnNldCBmb3IgYnJ1c2g7XG4gICAgfVxuXG4gICAgLmZvb3Rlci1icnVzaCB7XG4gICAgICAgIGRpc3BsYXk6IGluaXRpYWw7XG4gICAgfVxufVxuIiwiLnRoZW1lLTEge1xuICAgIC5qb2ItcG9zdGluZ3Mtc2l6ZSB7XG4gICAgICAgIC0tX2pvYi1wb3N0aW5ncy1zaXplLWJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAtLV9qb2ItcG9zdGluZ3Mtc2l6ZS1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICAgICAgLS1fam9iLXBvc3RpbmdzLXNpemUtZm9udC1zaXplOiAxcmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnBEb3duTmF2KSB7XG4gICAgICAgICAgICAtLV9qb2ItcG9zdGluZ3Mtc2l6ZS1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAgICAgICAgICAgLS1fam9iLXBvc3RpbmdzLXNpemUtY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiAhPSBudWxsIGFuZCAkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIudGhlbWUtMSB7XG4gICAgLS1fbWFpbi1tZW51LWJhY2tncm91bmQ6IHJnYigyNDIsMjQyLDI0Mik7XG4gICAgLS1fbWFpbi1tZW51LWp1c3RpZnk6IGZsZXgtZW5kO1xuXG4gICAgLy8gTGlua3NcbiAgICAtLV9tYWluLW1lbnUtbGluay1jb2xvcjogYmxhY2s7XG4gICAgLS1fbWFpbi1tZW51LWxpbmstY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuXG4gICAgLS1fbW9iaWxlLW1haW4tbWVudS10ZXh0LWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgIC5tYWluLW1lbnUtc2VhcmNoLXRleHQge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicFVwTmF2KSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW47XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIudGhlbWUtMSB7XG4gICAgLS1fbWVudS10b2dnbGUtYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICAtLV9tZW51LXRvZ2dsZS1ib3JkZXItcmFkaXVzOiA0MCU7XG5cbiAgICAtLV9tZW51LXNlYXJjaC10b2dnbGUtYmFja2dyb3VuZDogd2hpdGU7XG59XG4iLCIudGhlbWUtMSB7XG4gICAgLS1fcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAzNSU7XG4gICAgLS1fcGFnaW5hdGlvbi1iYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAtLV9wYWdpbmF0aW9uLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgLS1fcGFnaW5hdGlvbi10ZXh0LWNvbG9yOiBpbmhlcml0O1xuICAgIC0tX3BhZ2luYXRpb24tdGV4dC1jb2xvci1ob3Zlcjogd2hpdGU7XG59XG4iLCIudGhlbWUtMSB7XG4gICAgLnRvcC1tZW51IHtcbiAgICAgICAgLS1fdG9wLW1lbnUtYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICAgICAgLS1fdG9wLW1lbnUtdGV4dC1jb2xvcjogd2hpdGU7XG4gICAgfVxuXG4gICAgLnRvcC1tZW51LWhlYWRlci1icnVzaCB7XG4gICAgICAgIGRpc3BsYXk6IGluaXRpYWw7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4xcmVtKSBzY2FsZVkoMC40KTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuXG4gICAgICAgICYtZ3JvdXAge1xuICAgICAgICAgICAgZmlsbDogdmFyKC0tbWFpbi1tZW51LWJhY2tncm91bmQsIHZhcigtLV9tYWluLW1lbnUtYmFja2dyb3VuZCwgcmdiKDI0MiwyNDIsMjQyKSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1vYmlsZS10b3AtbWVudSB7XG4gICAgICAgIC0tX21vYmlsZS10b3AtbWVudS10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAgIH1cbn1cbiIsIi50aGVtZS0xIHtcbiAgICAuYXJ0aWNsZS1jYXJkIHtcbiAgICAgICAgLS1fYXJ0aWNsZS1jYXJkLWVtcGxveW1lbnQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAtLV9hcnRpY2xlLWNhcmQtdGFnLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgfVxufVxuIiwiLnRoZW1lLTEge1xuICAgLmZpbHRlciB7XG4gICAgICAmX193cmFwcGVyIHtcbiAgICAgICAgIC0tX2ZpbHRlcl9pbnB1dF90aXRsZV9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgIC0tX2ZpbHRlcl9pbnB1dF9nYXA6IDAuOHJlbTtcbiAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgICAgICZfX3NvcnQge1xuICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICB9XG4gICAgICB9XG4gICB9XG5cbiAgIC5wbGF0dGVyLWZpbHRlcl9fY29udGVudC0tYWN0aXZpdGllcyxcbiAgIC5wbGF0dGVyLWZpbHRlcl9fY29udGVudC0tYXJ0aWNsZXMge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnBVcCkge1xuICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIH1cbiAgIH1cblxuICAgLnBsYXR0ZXItZmlsdGVyX19jb250ZW50LS10ZWFtcyB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgICAgfVxuICAgfVxufVxuIiwiLnRoZW1lLTEge1xuICAgIC5mcm9udHBhZ2UtaGVhZGVyIHtcbiAgICAgICAgJi10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRoZWFkZXJCcmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZyb250cGFnZS1oZWFkZXItY29udGVudCB7XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIC8vQGV4dGVuZCAuaGVhZGluZy0yO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzLjJyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEuNnJlbTtcblxuICAgICAgICAgICAgLy8gQWxpZ24gbWFyZ2luLWxlZnQgdGV4dCB3aXRoIGdyaWQ7XG4gICAgICAgICAgICAkaGVhZGVyLWlubmVyLWJyZWFrcG9pbnRzOiAoXG4gICAgICAgICAgICAgICAgLy9tZDogNzY4cHgsXG4gICAgICAgICAgICAgICAgICAgIGxnOiA5OTJweCxcbiAgICAgICAgICAgICAgICAgICAgeGw6IDEyMDBweFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGhlYWRlci1pbm5lci1icmVha3BvaW50cyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyggKDEwMHZ3IC0gI3skdmFsdWV9KSAvIDIgKyAje21hcC1nZXQoJHBhZGRpbmcsIGNvbHVtbi1tb2JpbGUpfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGhlYWRlckJyZWFrcG9pbnREb3duKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtNXJlbSAxLjZyZW0gMCAxLjZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRoZWFkZXJCcmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNS42cmVtO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDByZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMi40cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZnJvbnQtcGFnZS1oZWFkZXItdGV4dCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoMjMsIDIzLCAyMywgMC42KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuaGVhZGVyLXZpZGVvIHtcbiAgICAgICAgZ3JpZC1hcmVhOiAxLzEvMi8yO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRoZWFkZXJCcmVha3BvaW50KSB7XG4gICAgICAgICAgICBncmlkLWFyZWE6IDEvMS8yLzM7XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE0NDAvNjgwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5mcm9udHBhZ2UtYmFja2dyb3VuZC1pbWFnZSB7XG4gICAgICAgIGdyaWQtYXJlYTogMS8xLzIvMjtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkaGVhZGVyQnJlYWtwb2ludCkge1xuICAgICAgICAgICAgZ3JpZC1hcmVhOiAxLzEvMi8zO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNvdmVyO1xuICAgICAgICAgICAgb3BhY2l0eTogMC4yNDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLWhlYWRlcl9pbWFnZV9iZWZvcmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tX2hlYWRlcl9pbWFnZV9iZWZvcmUsIHZhcigtLWhlYWRpbmdzLWZvbnQtY29sb3IsIGJsYWNrKSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZnJvbnRwYWdlLWhlYWRlci1wbGF5IHtcbiAgICAgICAgJi0tdGhlbWUtMyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkaGVhZGVyQnJlYWtwb2ludERvd24pIHtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMS8wLjg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAudmlkZW8tZGlhbG9nLXRyaWdnZXIge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNy4ycmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3LjJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkaGVhZGVyQnJlYWtwb2ludCkge1xuICAgICAgICAgICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC52aWRlby1kaWFsb2ctdHJpZ2dlciB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4LjhyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDguOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi50aGVtZS0xIHtcblx0LmhlYWRlci1lbnRyeS1pdGVtcyB7XG5cdFx0LS1faGVhZGVyX2VudHJ5X2l0ZW1zX2JvcmRlcl9yYWRpdXM6IHZhcigtLV9ib3JkZXItcmFkaXVzKTtcblx0XHQtLV9oZWFkZXJfZW50cnlfaXRlbV9pY29uX2JhY2tncm91bmQ6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG5cdFx0LS1faGVhZGVyX2VudHJ5X2l0ZW1faWNvbl9ib3JkZXJfcmFkaXVzOiAxLjJyZW07XG5cdFx0LS1faGVhZGVyX2VudHJ5X2l0ZW1fZGVzY3JpcHRpb25fY29sb3I6IHJnYmEoMjMsIDIzLCAyMywgMC42KTtcblx0fVxufVxuIiwiLnRoZW1lLTEge1xuICAgLmhlYWRlciB7XG4gICAgICAtLV9oZWFkZXJfdGFnc19iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAgICAgLS1faGVhZGVyX3RhZ3NfY29sb3I6IHdoaXRlO1xuICAgfVxufVxuIiwiLnRoZW1lLTEge1xuICAgLnRlYW1fbWVtYmVyIHtcbiAgICAgIC0tX3RlYW0tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAtLV90ZWFtLWNvbnRlbnQtcGFkZGluZzogMnJlbSAwO1xuICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cywgdmFyKC0tX2JvcmRlci1yYWRpdXMsIDApKTtcbiAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0sIDAuM3MpO1xuICAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi0tbGluayB7XG4gICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC50ZWFtX21lbWJlcl9faW1hZ2Uge1xuICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgIH1cbiAgICAgIH1cbiAgIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIudGhlbWUtMSB7XG4gICAudGVzdGltb25pYWwge1xuICAgICAgLS1fdGVzdGltb25pYWwtc3ZnLW1hcmdpbjogMCAwIDVyZW07XG4gICAgICAtLV90ZXN0aW1vbmlhbC1wYWRkaW5nOiAwO1xuICAgfVxufVxuIiwiLnRoZW1lLTEge1xuICAuYWNjb3JkaW9uIHtcbiAgICAtLWFjY29yZGlvbi1wYWRkaW5nLWJsb2NrOiAycmVtO1xuICAgIC0tYWNjb3JkaW9uLXBhZGRpbmctaW5saW5lOiAwO1xuICAgIC0tYWNjb3JkaW9uLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIC0tYWNjb3JkaW9uLWFjdGl2ZS1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC5kZXRhaWxzLWFuZC1zdW1tYXJ5IHtcbiAgICBtYXJnaW4tYmxvY2stZW5kOiAwO1xuICAgIGJvcmRlci1ibG9jay1lbmQ6IHNvbGlkIDFweCBsaWdodGdyZXk7XG4gIH1cbn1cbiIsIi50aGVtZS0xIHtcbiAgICAtLV9idXR0b24tcGFkZGluZzogMS42cmVtIDNyZW07XG4gICAgLS1fYnV0dG9uLWJvcmRlci1yYWRpdXM6IDEuNnJlbTtcbiAgICAtLV9idXR0b24tdGV4dC1jb2xvcjogd2hpdGU7XG59XG4iLCIudGhlbWUtMSB7XG5cdC0tX2lucHV0LWJhY2tncm91bmQ6IHdoaXRlO1xuXHQtLV9pbnB1dC1jb2xvcjogcmdiKDIzLCAyMywgMjMpO1xuXHQtLV9pbnB1dC1sYWJlbC1jb2xvcjogcmdiKDIzLCAyMywgMjMpO1xuXHQtLV9pbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogIzU1NTtcblx0LS1faW5wdXQtcGFkZGluZy1ibG9jazogMS42cmVtO1xuXHQtLV9pbnB1dC1wYWRkaW5nLWlubGluZTogMy4ycmVtO1xuXHQtLV9pbnB1dC1ib3JkZXItcmFkaXVzOiAxLjZyZW07XG5cdC0tX2lucHV0LWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdC0tX2lucHV0LWZvY3VzLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblx0LS1faW5wdXQtZXJyb3ItY29sb3I6ICNjMDA7XG5cblx0LS1faW5wdXQtZmlsZW5hbWUtYmFja2dyb3VuZDogcmdiYSgyMywgMjMsIDIzLCAwLjA4KTtcbn1cbiIsIi50aGVtZS0xIHtcbiAgIC5mZWF0dXJlZF9wYWdlIHtcbiAgICAgIC0tX2ZlYXR1cmVkX3BhZ2UtbGluay1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAtLV9mZWF0dXJlZF9wYWdlLWNvbnRlbnQtcGFkZGluZzogMDtcbiAgICAgICYtLWxpbmsge1xuICAgICAgICAgLmZlYXR1cmVkX3BhZ2VfX2NvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDdyZW07XG4gICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLS1pbWFnZSB7XG4gICAgICAgICAuZmVhdHVyZWRfcGFnZV9fY29udGVudCB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggbGlnaHRncmV5O1xuICAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpub3QoLmZlYXR1cmVkX3BhZ2UtLWltYWdlKSB7XG4gICAgICAgICAuZmVhdHVyZWRfcGFnZV9fdGl0bGUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICB9XG4gICAgICB9XG4gICB9XG59XG4iLCIudGhlbWUtMSB7XG4gICAuaW1hZ2Uge1xuICAgICAgLS1faW1hZ2UtdGl0bGUtYmFja2dyb3VuZDogdmFyKC0tYm9keS1iYWNrZ3JvdW5kLCB2YXIoLS1fYm9keS1iYWNrZ3JvdW5kLCB3aGl0ZSkpO1xuICAgICAgLnRpdGxlIHtcbiAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgdG9wOiB1bnNldDtcbiAgICAgIH1cbiAgICAgIC8vIFRvZ2dsZSBpcyBjb25uZWN0ZWQgdG8gJ2JvcmRlci1yYWRpdXMnIElmIHRob3Ugd2Fuc3QgYW4gaW1hZ2Ugd2l0aG91dCwgdG9nZ2xlIGl0IG9mZi5cbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAmLmltYWdlLS1pbWdjbGlwIHtcbiAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMsIHZhcigtLV9ib3JkZXItcmFkaXVzLCAwKSk7XG4gICAgICB9XG4gICB9XG59XG4iLCIudGhlbWUtMSB7XG4gICAuY29sbGVhZ3Vlcy1zZWN0aW9uIHtcbiAgICAgIC0tX2NvbGxlYWd1ZXMtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICB9XG59XG4iLCIudGhlbWUtMSB7XG4gICAuZmVhdHVyZWRfYWN0aXZpdHkge1xuICAgICAgLmFjdGl2aXR5IHtcbiAgICAgICAgIGdhcDogM3JlbTtcbiAgICAgICAgIC0tX2ZlYXR1cmVkX2FjdGl2aXR5LWJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cywgdmFyKC0tX2JvcmRlci1yYWRpdXMsIDApKTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICB9XG4gICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMsIHZhcigtLV9ib3JkZXItcmFkaXVzLCAwKSk7XG4gICAgICAgICB9XG4gICAgICB9XG4gICB9XG59XG4iLCIudGhlbWUtMSB7XG4gICAuaW1wcmVzc2lvbi1zZWN0aW9uIHtcbiAgICAgIC0tX2ltcHJlc3Npb25fc3dpcGVyX3RpdGxlX2NvbG9yOiBibGFjaztcbiAgICAgIC0tX2ltcHJlc3Npb25fc3dpcGVyX3RpdGxlX2JhY2tncm91bmQ6IHZhcigtLWJvZHktYmFja2dyb3VuZCwgdmFyKC0tX2JvZHktYmFja2dyb3VuZCwgd2hpdGUpKTtcbiAgICAgIC0tX2ltcHJlc3Npb25fc3dpcGVyX3Njcm9sbGJhcl9iYWNrZ3JvdW5kX2RyYWc6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgICAtLV9pbXByZXNzaW9uX3N3aXBlcl9idG5zX2NvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAgICAgLS1faW1wcmVzc2lvbl9zd2lwZXJfc2xpZGVfYmVmb3JlX2Rpc3BsYXk6IG5vbmU7XG4gICAgICAtLV9pbXByZXNzaW9uX3N3aXBlcl90aXRsZV9wYWRkaW5nX21vYmlsZTogNHB4IDEuNnJlbTtcbiAgIH1cbn1cbiIsIi50aGVtZS0xIHtcbiAgIC50ZXN0aW1vbmlhbC1zZWN0aW9uIHtcbiAgICAgIC0tX3Rlc3RpbW9uaWFsLWRpc3BsYXktc2xpZGU6IG5vbmU7XG4gICAgICAtLV90ZXN0aW1vbmlhbC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgICAtLV90ZXN0aW1vbmlhbC1idWxsZXQtYm9yZGVyLWFjdGl2ZTogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICAgIC0tX3Rlc3RpbW9uaWFsLW9wYWNpdHktc2xpZGU6IDA7XG4gICAgICAtLV90ZXN0aW1vbmlhbC1iYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIC0tX3Rlc3RpbW9uaWFsLXBhZGRpbmc6IDA7XG4gICAgICAtLV90ZXN0aW1vbmlhbC1wYWdpbmF0aW9uLW1hcmdpbjogNXJlbSAwIDA7XG4gICB9XG59XG4iLCIudGhlbWUtMSB7XG4gICAuc2Nob29sX2luZm9fcGFnZSB7XG4gICAgICAmX19uYXYge1xuICAgICAgICAgcGFkZGluZzogMS41cmVtIDIuNHJlbTtcbiAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICAgICBhOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yLCAwLjNzKTtcbiAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICYuYWN0aXZlID4gYSB7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94KDFyZW0pO1xuICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgfVxuICAgICAgfVxuICAgfVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/
