/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[3]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[4]!./assets/scss/extensions/solr_search.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
.shadow-md {
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.16);
}

/**
 * Solr Search Active Filters Component
 * Provides styling for the active filter display (filter chips/badges) in the Solr search interface
 */

/* aleo-600 - latin */

@font-face {
  font-display: swap;
  font-family: "Aleo";
  font-style: normal;
  font-weight: 600;
  src: url(/build/fonts/600.6cdcaa41.woff2) format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* rooney 600 - latin */

@font-face {
  font-display: swap;
  font-family: "Rooney";
  font-style: normal;
  font-weight: 600;
  src: url(/build/fonts/600.3ef60b2e.woff2) format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* calibri font family */

@font-face {
  font-display: swap;
  font-family: "Calibri";
  font-weight: 300;
  font-style: normal;
  src: url(/build/fonts/300.9baa67f0.woff2) format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

@font-face {
  font-display: swap;
  font-family: "Calibri";
  font-weight: 300;
  font-style: italic;
  src: url(/build/fonts/300i.cf87dc54.woff2) format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

@font-face {
  font-display: swap;
  font-family: "Calibri";
  font-weight: 400;
  font-style: normal;
  src: url(/build/fonts/400.551fd9d5.woff2) format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

@font-face {
  font-display: swap;
  font-family: "Calibri";
  font-weight: 400;
  font-style: italic;
  src: url(/build/fonts/400i.7fd7e2cf.woff2) format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

@font-face {
  font-display: swap;
  font-family: "Calibri";
  font-weight: 700;
  font-style: normal;
  src: url(/build/fonts/700.4308169e.woff2) format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

@font-face {
  font-display: swap;
  font-family: "Calibri";
  font-weight: 700;
  font-style: italic;
  src: url(/build/fonts/700i.740267d0.woff2) format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/**
 * Font family definitions for consistent usage across the project
 * These variables can be used in any file that imports this module
 */

.font-primary {
  font-family: "Rooney", serif;
}

.font-secondary {
  font-family: "Calibri", sans-serif, sans-serif;
}

/**
 * Solr Search Results Component
 * Styling for search result items and metadata
 */

/**
 * Solr Search Suggest/Autocomplete Component
 * Styling for search suggestions dropdown
 */

/**
 * Universal pagination component mixin
 * Provides complete styling for paginated content navigation
 */

.solr-search__wrapper {
  min-height: 50vh;
}

.solr-search__skip-link {
  position: absolute;
  top: -40px;
  left: 0;
  padding: 0.5rem 1rem;
  background-color: var(--color-primary, #009ddf);
  color: var(--color-white, #ffffff);
  z-index: 100;
}

.solr-search__skip-link:focus {
  top: 0;
}

.solr-search__title {
  margin-bottom: 2rem;
  color: var(--color-primary, #009ddf);
}

.solr-search__form-wrapper {
  margin-bottom: 2rem;
  background-color: var(--color-jfe-gray, #f3f3f2);
  padding: 2rem 0;
}

.solr-search__form-inner {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

@media (min-width: 1024px) {
  .solr-search__form-inner {
    flex-direction: row;
    align-items: flex-end;
  }
}

.solr-search__input-group {
  flex: 1;
  display: flex;
  gap: 0;
  align-items: flex-end;
}

.solr-search__label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
}

.solr-search__input-wrapper {
  position: relative;
  width: 100%;
}

.solr-search__input {
  width: 100%;
  height: 50px;
  padding: 0.75rem 1rem;
  border-bottom: 1px solid var(--color-black, #000000);
  border-radius: 0;
  font-size: 1rem;
  background-color: var(--color-white, #ffffff);
}

.solr-search__input:hover, .solr-search__input:focus-visible {
  border-color: var(--color-primary, #009ddf);
  outline: none;
}

@media (min-width: 1024px) {
  .solr-search__button-group {
    flex-shrink: 0;
  }
}

.solr-search__submit {
  width: 50px;
  height: 50px;
  background-color: var(--color-secondary, #ffcc00);
  border-bottom: 1px solid var(--color-primary, #009ddf);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.1s ease;
}

.solr-search__submit:hover {
  box-shadow: inset 0 0 0 2px var(--color-black, #000000);
}

.solr-search__submit:focus, .solr-search__submit:focus-visible {
  box-shadow: inset 0 0 0 2px var(--color-black, #000000);
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}

.solr-search__submit-text {
  margin-right: 0.5rem;
}

.solr-search__submit-icon {
  font-size: 1.5rem;
}

.solr-search__content {
  padding: 2rem 0;
}

.solr-search__dropdown {
  position: relative;
  margin-bottom: 1rem;
}

@media (min-width: 1024px) {
  .solr-search__dropdown {
    margin-bottom: 0;
  }
}

.solr-search__dropdown-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0.75rem 1rem;
  background-color: var(--color-white, #ffffff);
  border-bottom: 1px solid var(--color-black, #000000);
  border-radius: 0;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 600;
  transition: all 0.2s ease;
}

@media (min-width: 1024px) {
  .solr-search__dropdown-toggle {
    min-width: 250px;
  }
}

.solr-search__dropdown-toggle:hover, .solr-search__dropdown-toggle:focus-visible {
  border-color: var(--color-primary, #009ddf);
  outline: none;
}

.solr-search__dropdown-toggle.is-expanded .solr-search__dropdown-icon {
  transform: rotate(180deg);
}

.solr-search__dropdown-label {
  flex-grow: 1;
  text-align: left;
}

.solr-search__dropdown-counter {
  display: none;
  align-items: center;
  justify-content: center;
  min-width: 1.5rem;
  height: 1.5rem;
  padding: 0 0.5rem;
  margin-left: 0.5rem;
  background-color: var(--color-secondary, #ffcc00);
  border-radius: 50%;
  font-size: 0.75rem;
  font-weight: 700;
}

.solr-search__dropdown-counter.visible {
  display: flex;
}

.solr-search__dropdown-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  margin-left: 0.5rem;
  transition: transform 0.2s ease;
}

.solr-search__dropdown-menu {
  display: none;
  position: absolute;
  top: calc(100% + 0.5rem);
  left: 0;
  right: 0;
  background-color: var(--color-white, #ffffff);
  border: 1px solid var(--color-black, #000000);
  border-top: 3px solid var(--color-primary, #009ddf);
  border-radius: 0;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.16);
  z-index: 100;
  max-height: 400px;
  overflow-y: auto;
}

.solr-search__dropdown-menu.is-expanded {
  display: block;
}

@media (min-width: 1024px) {
  .solr-search__dropdown-menu {
    min-width: 350px;
  }
}

.solr-search__dropdown-option-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.solr-search__dropdown-option-item {
  border-bottom: 1px solid var(--color-jfe-gray, #f3f3f2);
}

.solr-search__dropdown-option-item:last-child {
  border-bottom: none;
}

.solr-search__dropdown-option {
  display: flex;
  align-items: flex-start;
  width: 100%;
  padding: 0.75rem 1rem;
  background-color: transparent;
  border: none;
  text-align: left;
  cursor: pointer;
  transition: background-color 0.2s ease;
  font-size: 1rem;
}

.solr-search__dropdown-option:hover, .solr-search__dropdown-option:focus-visible {
  background-color: var(--color-jfe-gray, #f3f3f2);
  outline: none;
}

.solr-search__dropdown-option.is-selected {
  background-color: var(--color-jfe-gray, #f3f3f2);
}

.solr-search__option-checkbox {
  min-width: 1.5rem;
  height: 1.5rem;
  border: 1px solid var(--color-black, #000000);
  border-radius: 0;
  margin-right: 0.75rem;
  margin-top: 0.125rem;
  position: relative;
  flex-shrink: 0;
  transition: all 0.2s ease;
}

.solr-search__option-checkbox::before {
  content: "";
  position: absolute;
  width: 1rem;
  height: 0.5rem;
  border-left: 2px solid var(--color-primary, #009ddf);
  border-bottom: 2px solid var(--color-primary, #009ddf);
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
  opacity: 0;
  transition: opacity 0.2s ease;
}

.solr-search__option-checkbox--checked::before {
  opacity: 1;
}

.solr-search__option-text {
  flex-grow: 1;
  line-height: 1.5;
}

.solr-search__option-count {
  font-size: 0.875rem;
  color: var(--color-jfe-gray-darker, rgb(105, 105, 105));
  margin-left: 0.25rem;
}

.solr-search__dropdown-actions {
  padding: 1rem;
  border-top: 1px solid var(--color-jfe-gray, #f3f3f2);
  background-color: var(--color-jfe-gray, #f3f3f2);
}

.solr-search__dropdown-apply {
  width: 100%;
  padding: 0.75rem 1.5rem;
  background-color: var(--color-primary, #009ddf);
  color: var(--color-white, #ffffff);
  border: none;
  border-radius: 0;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}

.solr-search__dropdown-apply:hover, .solr-search__dropdown-apply:focus-visible {
  background-color: rgb(0, 121.0941704036, 172);
  outline: 2px solid var(--color-black, #000000);
  outline-offset: 2px;
}

@media (min-width: 1024px) {
  .solr-search__filter-groups {
    display: flex;
    justify-content: flex-end;
    gap: 1rem;
  }
}

.solr-search__filter-section {
  background-color: var(--color-jfe-gray, #f3f3f2);
  padding: 0;
}

.solr-search__filter-form {
  width: 100%;
}

.solr-search__filter-content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: stretch;
}

@media (min-width: 1024px) {
  .solr-search__filter-content {
    flex-direction: row;
    align-items: flex-end;
    gap: 1.5rem;
  }
}

.solr-search__filter-submit {
  min-width: 210px;
  margin-top: -12px;
}

@media (max-width: 1023px) {
  .solr-search__filter-submit {
    width: 100%;
    margin-top: 0px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .solr-search__dropdown-toggle, .solr-search__dropdown-icon, .solr-search__option-checkbox {
    transition: none;
  }
}

.solr-search__active-filters-container {
  background-color: var(--color-jfe-almost-white, #fafafa);
  padding: 1rem;
  margin-bottom: 1.5rem;
  border-radius: 0;
}

.solr-search__active-filters-header {
  margin-bottom: 0.75rem;
}

.solr-search__active-filters-label {
  font-size: 1rem;
  font-weight: 600;
  color: var(--color-black, #000000);
}

.solr-search__active-filters-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.solr-search__active-filter-item {
  display: inline-flex;
}

.solr-search__active-filter-item--clear-all .solr-search__active-filter-remove-all {
  background-color: var(--color-jfe-gray, #f3f3f2);
}

.solr-search__active-filter-remove, .solr-search__active-filter-remove-all {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  background-color: var(--color-secondary, #ffcc00);
  color: var(--color-black, #000000);
  border: none;
  border-radius: 1.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.solr-search__active-filter-remove:hover, .solr-search__active-filter-remove-all:hover {
  opacity: 0.85;
}

.solr-search__active-filter-remove:focus-visible, .solr-search__active-filter-remove-all:focus-visible {
  outline: 2px solid var(--color-black, #000000);
  outline-offset: 2px;
}

.solr-search__active-filter-text {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.solr-search__active-filter-facet-name {
  font-weight: 700;
}

.solr-search__active-filter-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1;
}

.solr-search__metadata {
  margin-bottom: 2rem;
  padding-bottom: 1rem;
}

.solr-search__query-info {
  margin-bottom: 0.75rem;
  font-size: 0.875rem;
}

.solr-search__query-label {
  color: var(--color-black, #000000);
}

.solr-search__query-term {
  color: var(--color-black, #000000);
  font-weight: 600;
}

.solr-search__results-info {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.solr-search__results-count {
  font-size: 1.25rem;
}

.solr-search__count-text {
  color: var(--color-black, #000000);
}

.solr-search__per-page {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.solr-search__per-page-form {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.solr-search__per-page-label {
  font-size: 1.25rem;
  white-space: nowrap;
}

.solr-search__per-page-select {
  padding: 0.375rem 2rem 0.375rem 0.75rem;
  border-bottom: 2px solid var(--color-black, #000000);
  border-radius: 0;
  font-size: 1.25rem;
  background-color: var(--color-white, #ffffff);
  font-family: "Rooney", serif;
  cursor: pointer;
}

.solr-search__per-page-select:hover {
  border-color: var(--color-primary, #009ddf);
}

.solr-search__per-page-select:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}

.solr-search__results {
  margin-bottom: 3rem;
}

.solr-search__results-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.solr-search__results-item {
  margin-bottom: 0;
  opacity: 0;
  animation: fadeInUp 0.4s ease forwards;
}

.solr-search__results-item::before {
  content: none;
}

.solr-search__results-item:nth-child(1) {
  animation-delay: 0.05s;
}

.solr-search__results-item:nth-child(2) {
  animation-delay: 0.1s;
}

.solr-search__results-item:nth-child(3) {
  animation-delay: 0.15s;
}

.solr-search__results-item:nth-child(4) {
  animation-delay: 0.2s;
}

.solr-search__results-item:nth-child(5) {
  animation-delay: 0.25s;
}

.solr-search__results-item:nth-child(6) {
  animation-delay: 0.3s;
}

.solr-search__results-item:nth-child(7) {
  animation-delay: 0.35s;
}

.solr-search__results-item:nth-child(8) {
  animation-delay: 0.4s;
}

.solr-search__results-item:nth-child(9) {
  animation-delay: 0.45s;
}

.solr-search__results-item:nth-child(10) {
  animation-delay: 0.5s;
}

.solr-search__results-item:nth-child(11) {
  animation-delay: 0.55s;
}

.solr-search__results-item:nth-child(12) {
  animation-delay: 0.6s;
}

.solr-search__results-item:nth-child(13) {
  animation-delay: 0.65s;
}

.solr-search__results-item:nth-child(14) {
  animation-delay: 0.7s;
}

.solr-search__results-item:nth-child(15) {
  animation-delay: 0.75s;
}

.solr-search__results-item:nth-child(16) {
  animation-delay: 0.8s;
}

.solr-search__results-item:nth-child(17) {
  animation-delay: 0.85s;
}

.solr-search__results-item:nth-child(18) {
  animation-delay: 0.9s;
}

.solr-search__results-item:nth-child(19) {
  animation-delay: 0.95s;
}

.solr-search__results-item:nth-child(20) {
  animation-delay: 1s;
}

.solr-search__document {
  background-color: var(--color-white, #ffffff);
  border: none;
}

.solr-search__document--program-erasmus-youth {
  border-left-color: var(--color-e-jugend-blue, #003399);
}

.solr-search__document--program-erasmus-sport {
  border-left-color: var(--color-e-sport-orange, #e3530f);
}

.solr-search__document--program-esc {
  border-left-color: var(--color-esk-magenta, #e5006c);
}

.solr-search__document--program-europeers, .solr-search__document--program-salto, .solr-search__document--program-default {
  border-left-color: var(--color-primary, #009ddf);
}

.solr-search__document-header {
  margin-bottom: 1rem;
}

.solr-search__document-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
  font-size: 1rem;
}

.solr-search__document-type, .solr-search__document-date, .solr-search__program-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.solr-search__document-type {
  gap: 0.75rem;
}

.solr-search__document-icon, .solr-search__date-icon {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-jfe-yellow, #ffcc00);
  border-radius: 50%;
  font-size: 1.5rem;
}

.solr-search__program-badge {
  padding: 0.125rem 0.5rem;
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-radius: 0;
  font-weight: 600;
  font-size: 0.75rem;
}

.solr-search__document-content {
  margin-bottom: 1rem;
}

.solr-search__document-title {
  font-size: 1.25rem;
  margin-bottom: 0.75rem;
  line-height: 1.3;
}

.solr-search__document-link {
  color: var(--color-black, #000000);
  text-decoration: none;
  transition: underline 0.2s ease;
}

.solr-search__document-link:hover {
  text-decoration: underline;
}

.solr-search__document-link:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
  text-decoration: underline;
}

.solr-search__document-link mark,
.solr-search__document-link em {
  background-color: var(--color-jfe-yellow, #ffcc00);
  font-weight: 600;
  font-style: normal;
  padding: 0.125rem 0.25rem;
}

.solr-search p.solr-search__document-abstract {
  color: var(--color-black, #000000);
  line-height: 1.5;
  margin-bottom: 0;
}

.solr-search p.solr-search__document-abstract:last-of-type {
  margin-bottom: 0;
}

.solr-search p.solr-search__document-abstract mark,
.solr-search p.solr-search__document-abstract em,
.solr-search p.solr-search__document-abstract .hit {
  background-color: var(--color-jfe-yellow, #ffcc00);
  font-weight: 600;
  font-style: normal;
  padding: 0.125rem 0.25rem;
}

.solr-search__document-footer {
  padding-bottom: 1rem;
  border-bottom: 2px solid var(--color-jfe-gray-medium, #CFCFCF);
  margin-bottom: 1rem;
}

.solr-search__document-details {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin: 0;
}

.solr-search__document-detail-value {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
}

.solr-search__document-detail {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 1rem;
}

.solr-search__document-detail dt {
  font-weight: 600;
}

.solr-search__document-detail dd {
  margin: 0;
}

.solr-search__detail-icon {
  font-size: 1rem;
}

.solr-search__document-filetype {
  padding: 0.125rem 0.5rem;
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-radius: 0;
  font-weight: 600;
  text-transform: uppercase;
}

.solr-search__no-results {
  text-align: center;
  padding: 3rem 1rem;
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-radius: 0;
}

.solr-search__no-results-content {
  max-width: 600px;
  margin: 0 auto;
}

.solr-search__no-results-title {
  font-size: 1.5rem;
  margin-bottom: 1rem;
  color: var(--color-black, #000000);
}

.solr-search__no-results-text {
  margin-bottom: 1.5rem;
  color: var(--color-black, #000000);
}

.solr-search__no-results-suggestion {
  font-size: 0.875rem;
  margin-bottom: 2rem;
}

.solr-search__no-results-tips {
  text-align: left;
  padding: 1.5rem;
  background-color: var(--color-white, #ffffff);
  border-radius: 0;
}

.solr-search__tips-title {
  font-size: 1.125rem;
  margin-bottom: 1rem;
}

.solr-search__tips-list {
  list-style: disc;
  padding-left: 1.5rem;
  margin: 0;
}

.solr-search__tips-item {
  margin-bottom: 0.5rem;
}

.solr-search__tips-item::before {
  content: none;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .solr-search__results-item {
    animation: none;
    opacity: 1;
  }
}

.solr-search__suggestions {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  max-height: 400px;
  overflow-y: auto;
  background-color: var(--color-white, #ffffff);
  border: 1px solid var(--color-black, #000000);
  border-top: 3px solid var(--color-primary, #009ddf);
  border-radius: 0 0 0 0;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.16);
  z-index: 100;
}

.solr-search__suggestions.is-hidden {
  display: none;
}

.solr-search__suggestions.is-visible {
  display: block;
}

.solr-search__suggestions-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.solr-search__suggestions-group {
  padding: 0.75rem 1rem;
  background-color: var(--color-jfe-gray, #f3f3f2);
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--color-jfe-gray-darker, rgb(105, 105, 105));
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.solr-search__suggestions-item {
  margin-bottom: 0;
}

.solr-search__suggestions-item::before {
  content: none;
}

.solr-search__suggestions-item:not(:last-child) {
  border-bottom: 1px solid var(--color-jfe-gray-medium, #CFCFCF);
}

.solr-search__suggestions-item-content {
  display: block;
  padding: 0.75rem 1rem;
  color: var(--color-black, #000000);
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.solr-search__suggestions-item:hover .solr-search__suggestions-item-content, .solr-search__suggestions-item.is-active .solr-search__suggestions-item-content {
  background-color: var(--color-jfe-gray, #f3f3f2);
}

.solr-search__suggestions-item:focus {
  outline: none;
}

.solr-search__suggestions-item:focus-visible .solr-search__suggestions-item-content {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: -2px;
}

.solr-search__suggestions-item--document .solr-search__suggestions-item-content {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}

.solr-search__suggestions-highlight {
  font-weight: 600;
  background-color: var(--color-jfe-yellow, #ffcc00);
  padding: 0.125rem 0.25rem;
}

@media (prefers-reduced-motion: reduce) {
  .solr-search__suggestions-item-content {
    transition: none;
  }
}

.solr-search__pagination {
  margin: 2rem 0;
}

@media (min-width: 1024px) {
  .solr-search__pagination {
    margin: 3rem 0;
  }
}

.solr-search__pagination-container {
  display: flex;
  justify-content: center;
  width: 100%;
}

.solr-search ul.solr-search__pagination-list {
  display: flex;
  list-style: none;
  padding: 0;
  margin-bottom: 0;
  gap: 0.25rem;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
}

@media (min-width: 640px) {
  .solr-search ul.solr-search__pagination-list {
    gap: 0.5rem;
  }
}

.solr-search li.solr-search__pagination-item {
  margin: 0;
}

.solr-search li.solr-search__pagination-item::before {
  content: none;
  background-color: transparent;
}

@media (max-width: 639px) {
  .solr-search li.solr-search__pagination-item--hide-mobile {
    display: none !important;
  }
}

.solr-search li.solr-search__pagination-item--current .solr-search__pagination-link {
  background-color: var(--color-secondary, #ffcc00);
  color: var(--color-black, #000000);
  border-color: var(--color-secondary, #ffcc00);
  font-weight: 600;
}

.solr-search li.solr-search__pagination-item--current .solr-search__pagination-link:hover {
  background-color: var(--color-secondary, #ffcc00);
  color: var(--color-black, #000000);
  transform: none;
  cursor: default;
}

.solr-search li.solr-search__pagination-item--previous .solr-search__pagination-link, .solr-search li.solr-search__pagination-item--next .solr-search__pagination-link {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.5rem 0.75rem;
}

@media (min-width: 640px) {
  .solr-search li.solr-search__pagination-item--previous .solr-search__pagination-link, .solr-search li.solr-search__pagination-item--next .solr-search__pagination-link {
    gap: 0.5rem;
    padding: 0.75rem 1rem;
  }
}

.solr-search li.solr-search__pagination-item--disabled .solr-search__pagination-link {
  background-color: var(--color-jfe-almost-white, #fafafa);
  color: var(--color-jfe-gray-dark, rgb(189, 189, 189));
  border-color: var(--color-jfe-almost-white, #fafafa);
  cursor: not-allowed;
}

.solr-search li.solr-search__pagination-item--disabled .solr-search__pagination-link:hover {
  background-color: var(--color-jfe-almost-white, #fafafa);
  color: var(--color-jfe-gray-dark, rgb(189, 189, 189));
  transform: none;
}

.solr-search a.solr-search__pagination-link,
.solr-search span.solr-search__pagination-link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 0.5rem;
  background-color: var(--color-white, #ffffff);
  color: var(--color-black, #000000);
  border: 3px solid transparent;
  border-radius: 0;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

@media (min-width: 640px) {
  .solr-search a.solr-search__pagination-link,
  .solr-search span.solr-search__pagination-link {
    padding: 0.75rem;
    font-size: 1rem;
  }
}

.solr-search a.solr-search__pagination-link:hover:not(.solr-search a.solr-search__pagination-link--disabled,
.solr-search span.solr-search__pagination-link--disabled):not(.solr-search a.solr-search__pagination-link--current,
.solr-search span.solr-search__pagination-link--current),
.solr-search span.solr-search__pagination-link:hover:not(.solr-search a.solr-search__pagination-link--disabled,
.solr-search span.solr-search__pagination-link--disabled):not(.solr-search a.solr-search__pagination-link--current,
.solr-search span.solr-search__pagination-link--current) {
  background-color: transparent;
  border: 3px solid var(--color-black, #000000);
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.solr-search a.solr-search__pagination-link:focus-visible,
.solr-search span.solr-search__pagination-link:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}

.solr-search a.solr-search__pagination-link:active:not(.solr-search a.solr-search__pagination-link--disabled,
.solr-search span.solr-search__pagination-link--disabled):not(.solr-search a.solr-search__pagination-link--current,
.solr-search span.solr-search__pagination-link--current),
.solr-search span.solr-search__pagination-link:active:not(.solr-search a.solr-search__pagination-link--disabled,
.solr-search span.solr-search__pagination-link--disabled):not(.solr-search a.solr-search__pagination-link--current,
.solr-search span.solr-search__pagination-link--current) {
  transform: translateY(0);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.solr-search a.solr-search__pagination-link--current,
.solr-search span.solr-search__pagination-link--current {
  cursor: default;
  background-color: var(--color-secondary, #ffcc00);
  color: var(--color-black, #000000);
  border-color: var(--color-secondary, #ffcc00);
  font-weight: 600;
}

.solr-search a.solr-search__pagination-link--disabled,
.solr-search span.solr-search__pagination-link--disabled {
  cursor: not-allowed;
  background-color: var(--color-jfe-almost-white, #fafafa);
  color: var(--color-jfe-gray-dark, rgb(189, 189, 189));
  border-color: var(--color-jfe-almost-white, #fafafa);
}

.solr-search a.solr-search__pagination-link--previous .solr-search__pagination-text,
.solr-search span.solr-search__pagination-link--previous .solr-search__pagination-text {
  order: 2;
}

.solr-search a.solr-search__pagination-link--previous .solr-search__pagination-icon,
.solr-search span.solr-search__pagination-link--previous .solr-search__pagination-icon {
  order: 1;
}

.solr-search a.solr-search__pagination-link--next .solr-search__pagination-text,
.solr-search span.solr-search__pagination-link--next .solr-search__pagination-text {
  order: 1;
}

.solr-search a.solr-search__pagination-link--next .solr-search__pagination-icon,
.solr-search span.solr-search__pagination-link--next .solr-search__pagination-icon {
  order: 2;
}

.solr-search__pagination-number {
  font-weight: inherit;
}

.solr-search__pagination-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.solr-search__pagination-icon {
  font-size: 1.25rem;
  line-height: 1;
}

.solr-search__pagination-item--ellipsis .solr-search__pagination-link--ellipsis {
  cursor: default;
}

.solr-search__pagination-item--ellipsis .solr-search__pagination-link--ellipsis:hover {
  transform: none;
  box-shadow: none;
  border-color: transparent;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

@media (max-width: 639px) {
  .solr-search__pagination-container {
    padding: 0 1rem;
  }
  .solr-search__pagination-list {
    gap: 0.125rem;
  }
  .solr-search__pagination-link {
    min-width: 40px;
    min-height: 40px;
    padding: 0.375rem;
    font-size: 0.875rem;
  }
}

@media print {
  .solr-search__pagination {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .solr-search__pagination-link {
    transition: none;
  }
  .solr-search__pagination-link:hover:not(.solr-search__pagination-link--disabled):not(.solr-search__pagination-link--current) {
    transform: none;
    box-shadow: none;
  }
  .solr-search__pagination-link:active:not(.solr-search__pagination-link--disabled):not(.solr-search__pagination-link--current) {
    transform: none;
    box-shadow: none;
  }
}

@media (forced-colors: active) {
  .solr-search__pagination-link {
    border: 2px solid currentColor;
  }
  .solr-search__pagination-link--current {
    background-color: Highlight;
    color: HighlightText;
    border-color: Highlight;
  }
  .solr-search__pagination-link--disabled {
    border-color: GrayText;
    color: GrayText;
  }
}

.solr-search__pagination-link:focus {
  z-index: 1;
  position: relative;
}

.sr-only,
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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Z2NaOztBRzdiUTtFQUNJLGtDQXpCWTtFQTBCWjtBSCtiWjs7QUc1YlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIOGJaOztBRzNiUTtFQUNJO0FINmJaOztBRzFiUTtFQUNJLGtDQTFDWTtBSHNleEI7O0FHeGJRO0VBQ0k7RUFDQTtFQUNBO0FIMGJaOztBR3ZiUTtFQUNJO0VBQ0E7RUFDQTtBSHliWjs7QUd0YlE7RUFDSTtFQUNBO0FId2JaOztBR3JiUTtFQUNJO0VBQ0E7RUFDQSxnQkF0RVE7RUF1RVI7RUFDQSw2Q0FuRVU7RUFvRVYsNEJESFU7RUNJVjtBSHViWjs7QUdyYlk7RUFDSSwyQ0ExRVc7QUhpZ0IzQjs7QUdwYlk7RUFDSTtFQUNBLG1CQXJGSztBSDJnQnJCOztBR2piUTtFQUNJO0FIbWJaOztBR2hiUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSGtiWjs7QUcvYVE7RUFDSTtFQUNBO0VBQ0E7QUhpYlo7O0FHL2FZO0VBQ0k7QUhpYmhCOztBRzVhZ0I7RUFDSTtBSDhhcEI7O0FHL2FnQjtFQUNJO0FIaWJwQjs7QUdsYmdCO0VBQ0k7QUhvYnBCOztBR3JiZ0I7RUFDSTtBSHVicEI7O0FHeGJnQjtFQUNJO0FIMGJwQjs7QUczYmdCO0VBQ0k7QUg2YnBCOztBRzliZ0I7RUFDSTtBSGdjcEI7O0FHamNnQjtFQUNJO0FIbWNwQjs7QUdwY2dCO0VBQ0k7QUhzY3BCOztBR3ZjZ0I7RUFDSTtBSHljcEI7O0FHMWNnQjtFQUNJO0FINGNwQjs7QUc3Y2dCO0VBQ0k7QUgrY3BCOztBR2hkZ0I7RUFDSTtBSGtkcEI7O0FHbmRnQjtFQUNJO0FIcWRwQjs7QUd0ZGdCO0VBQ0k7QUh3ZHBCOztBR3pkZ0I7RUFDSTtBSDJkcEI7O0FHNWRnQjtFQUNJO0FIOGRwQjs7QUcvZGdCO0VBQ0k7QUhpZXBCOztBR2xlZ0I7RUFDSTtBSG9lcEI7O0FHcmVnQjtFQUNJO0FIdWVwQjs7QUdqZVE7RUFDSSw2Q0FsSFU7RUFtSFY7QUhtZVo7O0FHaGVZO0VBQ0k7QUhrZWhCOztBRzVkWTtFQUNJO0FIOGRo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O0VBQ0k7QUxzeUJaOztBS2x5QlE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUxteUJaOztBSy94QlE7RUFDSTtFQUNBO0FMaXlCWjs7QUs1eEJZO0VBQ0k7QUw4eEJoQjs7QUs3eEJnQjtFQUNJO0VBQ0E7RUFDQTtBTCt4QnBCOztBS3h4Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUwyeEJSOztBTXhoQ0k7RURrUUk7SUFDSTtFTDB4QlY7RUt2eEJNO0lBQ0k7RUx5eEJWO0VLdHhCTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VMd3hCVjtBQUNGOztBS3B4Qkk7RUFDSTtJQUNJO0VMc3hCVjtBQUNGOztBS2x4Qkk7RUFDSTtJQUNJO0VMb3hCVjtFS2x4QlU7SUFDSTtJQUNBO0VMb3hCZDtFS2p4QlU7SUFDSTtJQUNBO0VMbXhCZDtBQUNGOztBSzl3Qkk7RUFDSTtJQUNJO0VMZ3hCVjtFSzl3QlU7SUFDSTtJQUNBO0lBQ0E7RUxneEJkO0VLN3dCVTtJQUNJO0lBQ0E7RUwrd0JkO0FBQ0Y7O0FLMXdCSTtFQUNJO0VBQ0E7QUw0d0JSOztBQXBzQkE7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBdXNCSixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvZ2xvYmFsL19zaGFkb3dzLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvZXh0ZW5zaW9ucy9zb2xyX3NlYXJjaC5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX3NvbHItc2VhcmNoLWFjdGl2ZS1maWx0ZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvZ2xvYmFsL19mb250cy5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX3NvbHItc2VhcmNoLXJlc3VsdHMuc2NzcyIsIndlYnBhY2s6Ly9qdWdlbmQtZnVlci1ldXJvcGEvLi9hc3NldHMvc2Nzcy9jb21wb25lbnRzL19zb2xyLXNlYXJjaC1zdWdnZXN0LnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2dsb2JhbC9fYnJlYWtwb2ludHMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBhc3NldHMvc2Nzcy9nbG9iYWwvX3NoYWRvd3Muc2Nzc1xuXG4vLyBTaGFkb3cgdG9rZW4gZGVmaW5pdGlvbnNcbi8vIEJhc2VkIG9uIFRhaWx3aW5kJ3Mgc2hhZG93IHNjYWxlIGZvciBjb25zaXN0ZW5jeVxuLy8gQ3VycmVudGx5IHVzaW5nIG1kIGFzIGRlZmF1bHQsIGV4dGVuc2libGUgZm9yIGZ1dHVyZSBzaGFkb3cgdmFyaWFudHNcblxuLy8gU2hhZG93IHZhbHVlc1xuJG1kOiAycHggMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuJGRlZmF1bHQ6ICRtZDtcbiRzaGFkb3ctZGVmYXVsdDogJGRlZmF1bHQ7XG5cbi8vIEZ1dHVyZSBzaGFkb3cgZGVmaW5pdGlvbnMgY2FuIGJlIGFkZGVkIGhlcmU6XG4vLyAkc206IDAgMXB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4vLyAkbGc6IDAgMTBweCAxNXB4IC0zcHggcmdiYSgwLCAwLCAwLCAwLjEpLCAwIDRweCA2cHggLTRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4vLyAkeGw6IDAgMjBweCAyNXB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjEpLCAwIDhweCAxMHB4IC02cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuLy8gJDJ4bDogMCAyNXB4IDUwcHggLTEycHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbi8vICRpbm5lcjogaW5zZXQgMCAycHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbi8vICRub25lOiBub25lO1xuXG4vLyBNaXhpbiBmb3IgZWFzeSBhcHBsaWNhdGlvblxuLy8gVXNhZ2U6IEBpbmNsdWRlIHNoYWRvd3MuYXBwbHkoJ21kJykgb3IgQGluY2x1ZGUgc2hhZG93cy5hcHBseSgnZGVmYXVsdCcpXG5AbWl4aW4gYXBwbHkoJHNpemU6ICdkZWZhdWx0Jykge1xuICAgIEBpZiAkc2l6ZSA9PSAnbWQnIHtcbiAgICAgICAgYm94LXNoYWRvdzogJG1kO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAkZGVmYXVsdDtcbiAgICB9XG5cbiAgICAvLyBGdXR1cmUgc2l6ZSBvcHRpb25zIGNhbiBiZSBhZGRlZCBoZXJlOlxuICAgIC8vIEBlbHNlIGlmICRzaXplID09ICdzbScge1xuICAgIC8vICAgICBib3gtc2hhZG93OiAkc207XG4gICAgLy8gfSBAZWxzZSBpZiAkc2l6ZSA9PSAnbGcnIHtcbiAgICAvLyAgICAgYm94LXNoYWRvdzogJGxnO1xuICAgIC8vIH0gQGVsc2UgaWYgJHNpemUgPT0gJ3hsJyB7XG4gICAgLy8gICAgIGJveC1zaGFkb3c6ICR4bDtcbiAgICAvLyB9IEBlbHNlIGlmICRzaXplID09ICcyeGwnIHtcbiAgICAvLyAgICAgYm94LXNoYWRvdzogJDJ4bDtcbiAgICAvLyB9IEBlbHNlIGlmICRzaXplID09ICdpbm5lcicge1xuICAgIC8vICAgICBib3gtc2hhZG93OiAkaW5uZXI7XG4gICAgLy8gfSBAZWxzZSBpZiAkc2l6ZSA9PSAnbm9uZScge1xuICAgIC8vICAgICBib3gtc2hhZG93OiAkbm9uZTtcbiAgICAvLyB9XG59XG5cblxuLnNoYWRvdy1tZCB7XG4gICAgQGluY2x1ZGUgYXBwbHkoJ21kJyk7XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9leHRlbnNpb25zL3NvbHJfc2VhcmNoLnNjc3NcbkB1c2UgXCJzYXNzOmNvbG9yXCI7XG5AdXNlIFwiLi4vZ2xvYmFsL2NvbG9yc1wiIGFzIGNvbG9ycztcbkB1c2UgXCIuLi9nbG9iYWwvYnJlYWtwb2ludHNcIiBhcyBicDtcbkB1c2UgXCIuLi9nbG9iYWwvc2hhZG93c1wiIGFzIHNoYWRvd3M7XG5cbi8vIEltcG9ydCBjb21wb25lbnQgbWl4aW5zXG5AdXNlIFwiLi4vY29tcG9uZW50cy9zb2xyLXNlYXJjaC1hY3RpdmUtZmlsdGVyc1wiIGFzIGFjdGl2ZS1maWx0ZXJzO1xuQHVzZSBcIi4uL2NvbXBvbmVudHMvc29sci1zZWFyY2gtcmVzdWx0c1wiIGFzIHJlc3VsdHM7XG5AdXNlIFwiLi4vY29tcG9uZW50cy9zb2xyLXNlYXJjaC1zdWdnZXN0XCIgYXMgc3VnZ2VzdDtcbkB1c2UgXCIuLi9jb21wb25lbnRzL3BhZ2luYXRpb25cIiBhcyBwYWdpbmF0aW9uO1xuXG4vLyBCbG9jayBmb3IgQkVNLU1ldGhvZG9sb2d5XG4kYmxvY2s6IFwic29sci1zZWFyY2hcIjtcblxuLy8gQmFzZSB3cmFwcGVyIHN0eWxlc1xuLiN7JGJsb2NrfSB7XG4gICAgLy8gV3JhcHBlclxuICAgICZfX3dyYXBwZXIge1xuICAgICAgICBtaW4taGVpZ2h0OiA1MHZoO1xuICAgIH1cblxuICAgIC8vIFNraXAgbGluayBmb3IgYWNjZXNzaWJpbGl0eVxuICAgICZfX3NraXAtbGluayB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtNDBweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnksIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSwgY29sb3JzLiRjb2xvci13aGl0ZSk7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhlYWRlciBzZWN0aW9uIHdpdGggc2VhcmNoIGZvcm1cblxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgICB9XG5cbiAgICAvLyBTZWFyY2ggRm9ybVxuICAgICZfX2Zvcm0td3JhcHBlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5KTtcbiAgICAgICAgcGFkZGluZzogMnJlbSAwO1xuICAgIH1cblxuICAgICZfX2Zvcm0ge1xuICAgICAgICAvLyBGb3JtIGNvbnRhaW5lclxuICAgIH1cblxuICAgICZfX2Zvcm0taW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDFyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludChcImxnXCIpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJbnB1dCBHcm91cFxuICAgICZfX2lucHV0LWdyb3VwIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAwO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgJl9fbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICAgICZfX2lucHV0LXdyYXBwZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICZfX2lucHV0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlLCBjb2xvcnMuJGNvbG9yLXdoaXRlKTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiBHcm91cFxuICAgICZfX2J1dHRvbi1ncm91cCB7XG4gICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoXCJsZ1wiKSB7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3N1Ym1pdCB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSwgY29sb3JzLiRjb2xvci1qZmUteWVsbG93KTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkXG4gICAgICAgICAgICB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2U7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zdWJtaXQtdGV4dCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgIH1cblxuICAgICZfX3N1Ym1pdC1pY29uIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgfVxuXG4gICAgLy8gTWFpbiBjb250ZW50IGFyZWFcbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMnJlbSAwO1xuICAgIH1cblxuICAgICZfX21haW4ge1xuICAgICAgICAvLyBNYWluIHJlc3VsdHMgY29udGFpbmVyXG4gICAgfVxuXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIC8vIERST1BET1dOIEVOSEFOQ0VNRU5UUyAtIEFkZGl0aW9uYWwgc3R5bGVzIGZvciBkcm9wZG93biBmaWx0ZXJzXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gICAgLy8gRHJvcGRvd24gY29udGFpbmVyXG4gICAgJl9fZHJvcGRvd24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludChcImxnXCIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biB0b2dnbGUgYnV0dG9uXG4gICAgJl9fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSwgY29sb3JzLiRjb2xvci13aGl0ZSk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoXCJsZ1wiKSB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDI1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLWV4cGFuZGVkIHtcbiAgICAgICAgICAgIC4jeyRibG9ja31fX2Ryb3Bkb3duLWljb24ge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kcm9wZG93bi1sYWJlbCB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAmX19kcm9wZG93bi1jb3VudGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1pbi13aWR0aDogMS41cmVtO1xuICAgICAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSwgY29sb3JzLiRjb2xvci1qZmUteWVsbG93KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgJi52aXNpYmxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kcm9wZG93bi1pY29uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxLjVyZW07XG4gICAgICAgIGhlaWdodDogMS41cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIG1lbnVcbiAgICAmX19kcm9wZG93bi1tZW51IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IGNhbGMoMTAwJSArIDAuNXJlbSk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSwgY29sb3JzLiRjb2xvci13aGl0ZSk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHZhcigtLWNvbG9yLXByaW1hcnksIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IHNoYWRvd3MuJHNoYWRvdy1kZWZhdWx0O1xuICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgICYuaXMtZXhwYW5kZWQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KFwibGdcIikge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAzNTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Ryb3Bkb3duLW9wdGlvbi1saXN0IHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICZfX2Ryb3Bkb3duLW9wdGlvbi1pdGVtIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWpmZS1ncmF5LCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5KTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIG9wdGlvbiAoY2hlY2tib3ggc3R5bGUpXG4gICAgJl9fZHJvcGRvd24tb3B0aW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXksIGNvbG9ycy4kY29sb3ItamZlLWdyYXkpO1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuaXMtc2VsZWN0ZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXksIGNvbG9ycy4kY29sb3ItamZlLWdyYXkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2hlY2tib3ggaW5kaWNhdG9yXG4gICAgJl9fb3B0aW9uLWNoZWNrYm94IHtcbiAgICAgICAgbWluLXdpZHRoOiAxLjVyZW07XG4gICAgICAgIGhlaWdodDogMS41cmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMC4xMjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMC41cmVtO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZFxuICAgICAgICAgICAgICAgIHZhcigtLWNvbG9yLXByaW1hcnksIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWRcbiAgICAgICAgICAgICAgICB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuICAgICAgICAgICAgdG9wOiA0MCU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWNoZWNrZWQ6OmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fb3B0aW9uLXRleHQge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuXG4gICAgJl9fb3B0aW9uLWNvdW50IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LWRhcmtlciwgY29sb3JzLiRjb2xvci1qZmUtZ3JheS1kYXJrZXIpO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhY3Rpb25zXG4gICAgJl9fZHJvcGRvd24tYWN0aW9ucyB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1qZmUtZ3JheSwgY29sb3JzLiRjb2xvci1qZmUtZ3JheSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5KTtcbiAgICB9XG5cbiAgICAmX19kcm9wZG93bi1hcHBseSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlLCBjb2xvcnMuJGNvbG9yLXdoaXRlKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IuYWRqdXN0KFxuICAgICAgICAgICAgICAgIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSxcbiAgICAgICAgICAgICAgICAkbGlnaHRuZXNzOiAtMTAlXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGaWx0ZXIgZ3JvdXBzIGxheW91dCBvbiBkZXNrdG9wXG4gICAgJl9fZmlsdGVyLWdyb3VwcyB7XG4gICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoXCJsZ1wiKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZpbHRlciBzZWN0aW9uIChjb250YWluZXIgZm9yIGZpbHRlciBjb250ZW50KVxuICAgICZfX2ZpbHRlci1zZWN0aW9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXksIGNvbG9ycy4kY29sb3ItamZlLWdyYXkpO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIEZpbHRlciBmb3JtXG4gICAgJl9fZmlsdGVyLWZvcm0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBGaWx0ZXIgY29udGVudCAoZm9ybSBsYXlvdXQpXG4gICAgJl9fZmlsdGVyLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoXCJsZ1wiKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgZ2FwOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGaWx0ZXIgc3VibWl0IGJ1dHRvbiAtIHVzZXMgZ2xvYmFsIC5idG4uYnRuLS1zZWNvbmRhcnkgc3R5bGVzXG4gICAgJl9fZmlsdGVyLXN1Ym1pdCB7XG4gICAgICAgIG1pbi13aWR0aDogMjEwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQtZG93bihcImxnXCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVkdWNlZCBtb3Rpb24gc3VwcG9ydFxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgICZfX2Ryb3Bkb3duLXRvZ2dsZSxcbiAgICAgICAgJl9fZHJvcGRvd24taWNvbixcbiAgICAgICAgJl9fb3B0aW9uLWNoZWNrYm94IHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEluY2x1ZGUgY29tcG9uZW50IG1peGlucyAoa2VlcCBvbmx5IHdoYXQgd2UgbmVlZCwgc2tpcCBvbGQgZmlsdGVyIHN0cnVjdHVyZSlcbkBpbmNsdWRlIGFjdGl2ZS1maWx0ZXJzLnNvbHItc2VhcmNoLWFjdGl2ZS1maWx0ZXJzKCRibG9jayk7XG5AaW5jbHVkZSByZXN1bHRzLnNvbHItc2VhcmNoLXJlc3VsdHMoJGJsb2NrKTtcbkBpbmNsdWRlIHN1Z2dlc3Quc29sci1zZWFyY2gtc3VnZ2VzdCgkYmxvY2spO1xuQGluY2x1ZGUgcGFnaW5hdGlvbi5wYWdpbmF0aW9uKCRibG9jayk7XG5cbi8vIFV0aWxpdHkgY2xhc3MgZm9yIHZpc3VhbGx5IGhpZGRlbiBlbGVtZW50c1xuLnNyLW9ubHksXG4udmlzdWFsbHktaGlkZGVuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBib3JkZXItd2lkdGg6IDA7XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9jb21wb25lbnRzL19zb2xyLXNlYXJjaC1hY3RpdmUtZmlsdGVycy5zY3NzXG5AdXNlICcuLi9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5AdXNlICcuLi9nbG9iYWwvYnJlYWtwb2ludHMnIGFzIGJwO1xuQHVzZSAnLi4vZ2xvYmFsL3NoYWRvd3MnIGFzIHNoYWRvd3M7XG5cbi8qKlxuICogU29sciBTZWFyY2ggQWN0aXZlIEZpbHRlcnMgQ29tcG9uZW50XG4gKiBQcm92aWRlcyBzdHlsaW5nIGZvciB0aGUgYWN0aXZlIGZpbHRlciBkaXNwbGF5IChmaWx0ZXIgY2hpcHMvYmFkZ2VzKSBpbiB0aGUgU29sciBzZWFyY2ggaW50ZXJmYWNlXG4gKi9cbkBtaXhpbiBzb2xyLXNlYXJjaC1hY3RpdmUtZmlsdGVycygkYmxvY2spIHtcbiAgICAvLyBWaXN1YWwgY29uZmlndXJhdGlvblxuICAgICRvdXRsaW5lLXdpZHRoOiAycHg7XG4gICAgJG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgJHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICAgJHRyYW5zaXRpb24tZWFzaW5nOiBlYXNlO1xuICAgICRib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgLy8gQ29sb3JzXG4gICAgJGZpbHRlci1wcmltYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuICAgICRmaWx0ZXItc2Vjb25kYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnksIGNvbG9ycy4kY29sb3ItamZlLXllbGxvdyk7XG4gICAgJGZpbHRlci10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgJGZpbHRlci1iZy1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUsIGNvbG9ycy4kY29sb3Itd2hpdGUpO1xuICAgICRmaWx0ZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgJGZpbHRlci1ncmF5LWJnLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUtZ3JheSwgY29sb3JzLiRjb2xvci1qZmUtZ3JheSk7XG4gICAgJGZpbHRlci1ob3Zlci1iZy1jb2xvcjogJGZpbHRlci1zZWNvbmRhcnktY29sb3I7XG5cbiAgICAuI3skYmxvY2t9IHtcbiAgICAgICAgLy8gQWN0aXZlIEZpbHRlcnNcbiAgICAgICAgJl9fYWN0aXZlLWZpbHRlcnMtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWpmZS1hbG1vc3Qtd2hpdGUsIGNvbG9ycy4kY29sb3ItamZlLWFsbW9zdC13aGl0ZSk7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIH1cblxuICAgICAgICAmX19hY3RpdmUtZmlsdGVycy1oZWFkZXIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2FjdGl2ZS1maWx0ZXJzLWxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBjb2xvcjogJGZpbHRlci10ZXh0LWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fYWN0aXZlLWZpbHRlcnMtbGlzdCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBnYXA6IDAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2FjdGl2ZS1maWx0ZXItaXRlbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcblxuICAgICAgICAgICAgLy8gQ2xlYXIgYWxsIGJ1dHRvbiB2YXJpYW50XG4gICAgICAgICAgICAmLS1jbGVhci1hbGwge1xuICAgICAgICAgICAgICAgIC4jeyRibG9ja31fX2FjdGl2ZS1maWx0ZXItcmVtb3ZlLWFsbCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19hY3RpdmUtZmlsdGVyLXJlbW92ZSxcbiAgICAgICAgJl9fYWN0aXZlLWZpbHRlci1yZW1vdmUtYWxsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnksIGNvbG9ycy4kY29sb3ItamZlLXllbGxvdyk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMS41cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuODU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogJG91dGxpbmUtd2lkdGggc29saWQgJGZpbHRlci10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAkb3V0bGluZS1vZmZzZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19hY3RpdmUtZmlsdGVyLXRleHQge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDAuMjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19hY3RpdmUtZmlsdGVyLWZhY2V0LW5hbWUge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2FjdGl2ZS1maWx0ZXItaWNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gYXNzZXRzL3Njc3MvZ2xvYmFsL19mb250cy5zY3NzXG5cbi8qIGFsZW8tNjAwIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBmb250LWZhbWlseTogJ0FsZW8nO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHNyYzogdXJsKCcuLi8uLi9mb250cy9hbGVvLzYwMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICAvKiBDaHJvbWUgMzYrLCBPcGVyYSAyMyssIEZpcmVmb3ggMzkrLCBTYWZhcmkgMTIrLCBpT1MgMTArICovXG59XG5cbi8qIHJvb25leSA2MDAgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIGZvbnQtZmFtaWx5OiAnUm9vbmV5JztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBzcmM6IHVybCgnLi4vLi4vZm9udHMvcm9vbmV5LzYwMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICAvKiBDaHJvbWUgMzYrLCBPcGVyYSAyMyssIEZpcmVmb3ggMzkrLCBTYWZhcmkgMTIrLCBpT1MgMTArICovXG59XG5cbi8qIGNhbGlicmkgZm9udCBmYW1pbHkgKi9cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIGZvbnQtZmFtaWx5OiAnQ2FsaWJyaSc7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiB1cmwoJy4uLy4uL2ZvbnRzL2NhbGlicmkvMzAwLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICAgIC8qIENocm9tZSAzNissIE9wZXJhIDIzKywgRmlyZWZveCAzOSssIFNhZmFyaSAxMissIGlPUyAxMCsgKi9cbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIGZvbnQtZmFtaWx5OiAnQ2FsaWJyaSc7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgc3JjOiB1cmwoJy4uLy4uL2ZvbnRzL2NhbGlicmkvMzAwaS53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICAvKiBDaHJvbWUgMzYrLCBPcGVyYSAyMyssIEZpcmVmb3ggMzkrLCBTYWZhcmkgMTIrLCBpT1MgMTArICovXG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBmb250LWZhbWlseTogJ0NhbGlicmknO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogdXJsKCcuLi8uLi9mb250cy9jYWxpYnJpLzQwMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICAvKiBDaHJvbWUgMzYrLCBPcGVyYSAyMyssIEZpcmVmb3ggMzkrLCBTYWZhcmkgMTIrLCBpT1MgMTArICovXG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBmb250LWZhbWlseTogJ0NhbGlicmknO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogdXJsKCcuLi8uLi9mb250cy9jYWxpYnJpLzQwMGkud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgLyogQ2hyb21lIDM2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KywgU2FmYXJpIDEyKywgaU9TIDEwKyAqL1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgZm9udC1mYW1pbHk6ICdDYWxpYnJpJztcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IHVybCgnLi4vLi4vZm9udHMvY2FsaWJyaS83MDAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgLyogQ2hyb21lIDM2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KywgU2FmYXJpIDEyKywgaU9TIDEwKyAqL1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgZm9udC1mYW1pbHk6ICdDYWxpYnJpJztcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IHVybCgnLi4vLi4vZm9udHMvY2FsaWJyaS83MDBpLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICAgIC8qIENocm9tZSAzNissIE9wZXJhIDIzKywgRmlyZWZveCAzOSssIFNhZmFyaSAxMissIGlPUyAxMCsgKi9cbn1cblxuXG4vKipcbiAqIEZvbnQgZmFtaWx5IGRlZmluaXRpb25zIGZvciBjb25zaXN0ZW50IHVzYWdlIGFjcm9zcyB0aGUgcHJvamVjdFxuICogVGhlc2UgdmFyaWFibGVzIGNhbiBiZSB1c2VkIGluIGFueSBmaWxlIHRoYXQgaW1wb3J0cyB0aGlzIG1vZHVsZVxuICovXG5cblxuLy8gRm9udCBmYW1pbGllc1xuJGZvbnQtZmFtaWx5LXByaW1hcnk6ICdSb29uZXknLCBzZXJpZiAhZGVmYXVsdDsgLy8gRGVmYXVsdCBoZWFkbGluZVxuJGZvbnQtZmFtaWx5LXNlY29uZGFyeTogJ0NhbGlicmknLCBzYW5zLXNlcmlmICFkZWZhdWx0OyAvLyBCb2R5dGV4dFxuJGZvbnQtZmFtaWx5LWZhbGxiYWNrOiAnQWxlbycsIHNlcmlmICFkZWZhdWx0OyAvLyBGYWxsYmFjayBoZWFkbGluZVxuXG4vLyBTZW1hbnRpYyBmb250IGZhbWlsaWVzXG4kZm9udC1mYW1pbHktc2VyaWY6ICRmb250LWZhbWlseS1wcmltYXJ5ICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICRmb250LWZhbWlseS1zZWNvbmRhcnkgIWRlZmF1bHQ7XG5cbi8vIE5hdmlnYXRpb24gc3BlY2lmaWMgZm9udHMgKGlmIG5lZWRlZClcbiRmb250LWZhbWlseS1uYXZpZ2F0aW9uOiAkZm9udC1mYW1pbHktc2Vjb25kYXJ5ICFkZWZhdWx0O1xuXG4vLyBCdXR0b24gc3BlY2lmaWMgZm9udHMgKGlmIG5lZWRlZClcbiRmb250LWZhbWlseS1idXR0b25zOiAkZm9udC1mYW1pbHktc2Vjb25kYXJ5ICFkZWZhdWx0O1xuXG4uZm9udC1wcmltYXJ5IHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG59XG4uZm9udC1zZWNvbmRhcnkge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Vjb25kYXJ5LCBzYW5zLXNlcmlmO1xufVxuIiwiLy8gYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fc29sci1zZWFyY2gtcmVzdWx0cy5zY3NzXG5AdXNlIFwiLi4vZ2xvYmFsL2NvbG9yc1wiIGFzIGNvbG9ycztcbkB1c2UgXCIuLi9nbG9iYWwvYnJlYWtwb2ludHNcIiBhcyBicDtcbkB1c2UgXCIuLi9nbG9iYWwvc2hhZG93c1wiIGFzIHNoYWRvd3M7XG5AdXNlIFwiLi4vZ2xvYmFsL2ZvbnRzXCIgYXMgZm9udHM7XG5cbi8qKlxuICogU29sciBTZWFyY2ggUmVzdWx0cyBDb21wb25lbnRcbiAqIFN0eWxpbmcgZm9yIHNlYXJjaCByZXN1bHQgaXRlbXMgYW5kIG1ldGFkYXRhXG4gKi9cbkBtaXhpbiBzb2xyLXNlYXJjaC1yZXN1bHRzKCRibG9jaykge1xuICAgIC8vIFZpc3VhbCBjb25maWd1cmF0aW9uXG4gICAgJG91dGxpbmUtd2lkdGg6IDJweDtcbiAgICAkb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICAkdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgICAkdHJhbnNpdGlvbi1lYXNpbmc6IGVhc2U7XG4gICAgJGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAvLyBDb2xvcnNcbiAgICAkcmVzdWx0LXByaW1hcnktY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnksIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSk7XG4gICAgJHJlc3VsdC10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgJHJlc3VsdC1iZy1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUsIGNvbG9ycy4kY29sb3Itd2hpdGUpO1xuICAgICRyZXN1bHQtaG92ZXItYmctY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5KTtcbiAgICAkcmVzdWx0LWJvcmRlci1jb2xvcjogdmFyKFxuICAgICAgICAtLWNvbG9yLWpmZS1ncmF5LW1lZGl1bSxcbiAgICAgICAgY29sb3JzLiRjb2xvci1qZmUtZ3JheS1tZWRpdW1cbiAgICApO1xuXG4gICAgLiN7JGJsb2NrfSB7XG4gICAgICAgIC8vIFJlc3VsdHMgTWV0YWRhdGFcbiAgICAgICAgJl9fbWV0YWRhdGEge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcXVlcnktaW5mbyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3F1ZXJ5LWxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19xdWVyeS10ZXJtIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcmVzdWx0LXRleHQtY29sb3I7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcmVzdWx0cy1pbmZvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcmVzdWx0cy1jb3VudCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb3VudC10ZXh0IHtcbiAgICAgICAgICAgIGNvbG9yOiAkcmVzdWx0LXRleHQtY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQZXIgUGFnZSBTZWxlY3RvclxuICAgICAgICAmX19wZXItcGFnZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcGVyLXBhZ2UtZm9ybSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcGVyLXBhZ2UtbGFiZWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3Blci1wYWdlLXNlbGVjdCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjM3NXJlbSAycmVtIDAuMzc1cmVtIDAuNzVyZW07XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVzdWx0LWJnLWNvbG9yO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IGZvbnRzLiRmb250LWZhbWlseS1wcmltYXJ5O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRyZXN1bHQtcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAkb3V0bGluZS13aWR0aCBzb2xpZCAkcmVzdWx0LXByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6ICRvdXRsaW5lLW9mZnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJlc3VsdHMgTGlzdFxuICAgICAgICAmX19yZXN1bHRzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19yZXN1bHRzLWxpc3Qge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMS41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcmVzdWx0cy1pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5VcCAwLjRzIGVhc2UgZm9yd2FyZHM7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gU3RhZ2dlciBhbmltYXRpb25cbiAgICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMjAge1xuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKCN7JGl9KSB7XG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogI3skaSAqIDAuMDV9cztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEb2N1bWVudC9SZXN1bHQgSXRlbVxuICAgICAgICAmX19kb2N1bWVudCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVzdWx0LWJnLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICAvLyBQcm9ncmFtLXNwZWNpZmljIGJvcmRlciBjb2xvcnNcbiAgICAgICAgICAgICYtLXByb2dyYW0tZXJhc211cy15b3V0aCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcihcbiAgICAgICAgICAgICAgICAgICAgLS1jb2xvci1lLWp1Z2VuZC1ibHVlLFxuICAgICAgICAgICAgICAgICAgICBjb2xvcnMuJGNvbG9yLWUtanVnZW5kLWJsdWVcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1wcm9ncmFtLWVyYXNtdXMtc3BvcnQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoXG4gICAgICAgICAgICAgICAgICAgIC0tY29sb3ItZS1zcG9ydC1vcmFuZ2UsXG4gICAgICAgICAgICAgICAgICAgIGNvbG9ycy4kY29sb3ItZS1zcG9ydC1vcmFuZ2VcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1wcm9ncmFtLWVzYyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcihcbiAgICAgICAgICAgICAgICAgICAgLS1jb2xvci1lc2stbWFnZW50YSxcbiAgICAgICAgICAgICAgICAgICAgY29sb3JzLiRjb2xvci1lc2stbWFnZW50YVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLXByb2dyYW0tZXVyb3BlZXJzLFxuICAgICAgICAgICAgJi0tcHJvZ3JhbS1zYWx0byxcbiAgICAgICAgICAgICYtLXByb2dyYW0tZGVmYXVsdCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRyZXN1bHQtcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2RvY3VtZW50LWhlYWRlciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fZG9jdW1lbnQtbWV0YSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2RvY3VtZW50LXR5cGUsXG4gICAgICAgICZfX2RvY3VtZW50LWRhdGUsXG4gICAgICAgICZfX3Byb2dyYW0tYmFkZ2Uge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19kb2N1bWVudC10eXBlIHtcbiAgICAgICAgICAgIGdhcDogMC43NXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2RvY3VtZW50LWljb24sXG4gICAgICAgICZfX2RhdGUtaWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItamZlLXllbGxvdywgY29sb3JzLiRjb2xvci1qZmUteWVsbG93KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcHJvZ3JhbS1iYWRnZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUtZ3JheSwgY29sb3JzLiRjb2xvci1qZmUtZ3JheSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEb2N1bWVudCBDb250ZW50XG4gICAgICAgICZfX2RvY3VtZW50LWNvbnRlbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2RvY3VtZW50LXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fZG9jdW1lbnQtbGluayB7XG4gICAgICAgICAgICBjb2xvcjogJHJlc3VsdC10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdW5kZXJsaW5lICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogJG91dGxpbmUtd2lkdGggc29saWQgJHJlc3VsdC1wcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAkb3V0bGluZS1vZmZzZXQ7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEhpZ2hsaWdodGluZyBmcm9tIHNlYXJjaFxuICAgICAgICAgICAgbWFyayxcbiAgICAgICAgICAgIGVtIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXG4gICAgICAgICAgICAgICAgICAgIC0tY29sb3ItamZlLXllbGxvdyxcbiAgICAgICAgICAgICAgICAgICAgY29sb3JzLiRjb2xvci1qZmUteWVsbG93XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjI1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcC4jeyRibG9ja31fX2RvY3VtZW50LWFic3RyYWN0IHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIG1hcmssXG4gICAgICAgICAgICBlbSxcbiAgICAgICAgICAgIC5oaXQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcihcbiAgICAgICAgICAgICAgICAgICAgLS1jb2xvci1qZmUteWVsbG93LFxuICAgICAgICAgICAgICAgICAgICBjb2xvcnMuJGNvbG9yLWpmZS15ZWxsb3dcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEb2N1bWVudCBGb290ZXJcbiAgICAgICAgJl9fZG9jdW1lbnQtZm9vdGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRyZXN1bHQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2RvY3VtZW50LWRldGFpbHMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2RvY3VtZW50LWRldGFpbC12YWx1ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fZG9jdW1lbnQtZGV0YWlsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAwLjI1cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuXG4gICAgICAgICAgICBkdCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2RldGFpbC1pY29uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2RvY3VtZW50LWZpbGV0eXBlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMTI1cmVtIDAuNXJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBObyBSZXN1bHRzXG4gICAgICAgICZfX25vLXJlc3VsdHMge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogM3JlbSAxcmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXksIGNvbG9ycy4kY29sb3ItamZlLWdyYXkpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIH1cblxuICAgICAgICAmX19uby1yZXN1bHRzLWNvbnRlbnQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbm8tcmVzdWx0cy10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICBjb2xvcjogJHJlc3VsdC10ZXh0LWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbm8tcmVzdWx0cy10ZXh0IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19uby1yZXN1bHRzLXN1Z2dlc3Rpb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19uby1yZXN1bHRzLXRpcHMge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZXN1bHQtYmctY29sb3I7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RpcHMtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXBzLWxpc3Qge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogZGlzYztcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGlwcy1pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQW5pbWF0aW9uIGtleWZyYW1lc1xuICAgIEBrZXlmcmFtZXMgZmFkZUluVXAge1xuICAgICAgICBmcm9tIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gICAgICAgIH1cblxuICAgICAgICB0byB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVkdWNlZCBtb3Rpb24gc3VwcG9ydFxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIC4jeyRibG9ja31fX3Jlc3VsdHMtaXRlbSB7XG4gICAgICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fc29sci1zZWFyY2gtc3VnZ2VzdC5zY3NzXG5AdXNlICcuLi9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5AdXNlICcuLi9nbG9iYWwvYnJlYWtwb2ludHMnIGFzIGJwO1xuQHVzZSAnLi4vZ2xvYmFsL3NoYWRvd3MnIGFzIHNoYWRvd3M7XG5cbi8qKlxuICogU29sciBTZWFyY2ggU3VnZ2VzdC9BdXRvY29tcGxldGUgQ29tcG9uZW50XG4gKiBTdHlsaW5nIGZvciBzZWFyY2ggc3VnZ2VzdGlvbnMgZHJvcGRvd25cbiAqL1xuQG1peGluIHNvbHItc2VhcmNoLXN1Z2dlc3QoJGJsb2NrKSB7XG4gIC8vIFZpc3VhbCBjb25maWd1cmF0aW9uXG4gICRvdXRsaW5lLXdpZHRoOiAycHg7XG4gICRvdXRsaW5lLW9mZnNldDogMnB4O1xuICAkdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgJHRyYW5zaXRpb24tZWFzaW5nOiBlYXNlO1xuICAkYm9yZGVyLXJhZGl1czogMDtcblxuICAvLyBDb2xvcnNcbiAgJHN1Z2dlc3QtcHJpbWFyeS1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgJHN1Z2dlc3QtdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAkc3VnZ2VzdC1iZy1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUsIGNvbG9ycy4kY29sb3Itd2hpdGUpO1xuICAkc3VnZ2VzdC1ob3Zlci1iZy1jb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXksIGNvbG9ycy4kY29sb3ItamZlLWdyYXkpO1xuICAkc3VnZ2VzdC1ib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgJHN1Z2dlc3QtaGlnaGxpZ2h0LWJnOiB2YXIoLS1jb2xvci1qZmUteWVsbG93LCBjb2xvcnMuJGNvbG9yLWpmZS15ZWxsb3cpO1xuXG4gIC4jeyRibG9ja30ge1xuICAgIC8vIFN1Z2dlc3Rpb25zIENvbnRhaW5lclxuICAgICZfX3N1Z2dlc3Rpb25zIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1heC1oZWlnaHQ6IDQwMHB4O1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdWdnZXN0LWJnLWNvbG9yO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHN1Z2dlc3QtYm9yZGVyLWNvbG9yO1xuICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICRzdWdnZXN0LXByaW1hcnktY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIDAgJGJvcmRlci1yYWRpdXMgJGJvcmRlci1yYWRpdXM7XG4gICAgICBib3gtc2hhZG93OiBzaGFkb3dzLiRzaGFkb3ctZGVmYXVsdDtcbiAgICAgIHotaW5kZXg6IDEwMDtcblxuICAgICAgJi5pcy1oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmLmlzLXZpc2libGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zdWdnZXN0aW9ucy1saXN0IHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC8vIFN1Z2dlc3Rpb24gR3JvdXBzXG4gICAgJl9fc3VnZ2VzdGlvbnMtZ3JvdXAge1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXksIGNvbG9ycy4kY29sb3ItamZlLWdyYXkpO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXktZGFya2VyLCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5LWRhcmtlcik7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICB9XG5cbiAgICAvLyBTdWdnZXN0aW9uIEl0ZW1zXG4gICAgJl9fc3VnZ2VzdGlvbnMtaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItamZlLWdyYXktbWVkaXVtLCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5LW1lZGl1bSk7XG4gICAgICB9XG5cbiAgICAgIC8vIENvbnRlbnQgd3JhcHBlclxuICAgICAgJi1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICAgICAgY29sb3I6ICRzdWdnZXN0LXRleHQtY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcbiAgICAgIH1cblxuICAgICAgLy8gSG92ZXIgYW5kIGZvY3VzIHN0YXRlc1xuICAgICAgJjpob3ZlciAmLWNvbnRlbnQsXG4gICAgICAmLmlzLWFjdGl2ZSAmLWNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3VnZ2VzdC1ob3Zlci1iZy1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZSAmLWNvbnRlbnQge1xuICAgICAgICBvdXRsaW5lOiAkb3V0bGluZS13aWR0aCBzb2xpZCAkc3VnZ2VzdC1wcmltYXJ5LWNvbG9yO1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogLSN7JG91dGxpbmUtd2lkdGh9O1xuICAgICAgfVxuXG4gICAgICAvLyBTdWdnZXN0aW9uIHR5cGVzXG4gICAgICAmLS1zdWdnZXN0aW9uIHtcbiAgICAgICAgLy8gRGVmYXVsdCBzdHlsaW5nXG4gICAgICB9XG5cbiAgICAgICYtLWRvY3VtZW50IHtcbiAgICAgICAgLiN7JGJsb2NrfV9fc3VnZ2VzdGlvbnMtaXRlbS1jb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIGdhcDogMC43NXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhpZ2hsaWdodGVkIHRleHRcbiAgICAmX19zdWdnZXN0aW9ucy1oaWdobGlnaHQge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdWdnZXN0LWhpZ2hsaWdodC1iZztcbiAgICAgIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW07XG4gICAgfVxuICB9XG5cbiAgLy8gUmVkdWNlZCBtb3Rpb24gc3VwcG9ydFxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC4jeyRibG9ja31fX3N1Z2dlc3Rpb25zLWl0ZW0tY29udGVudCB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzXG5AdXNlIFwiLi4vZ2xvYmFsL2NvbG9yc1wiIGFzIGNvbG9ycztcbkB1c2UgXCIuLi9nbG9iYWwvYnJlYWtwb2ludHNcIiBhcyBicDtcblxuLyoqXG4gKiBVbml2ZXJzYWwgcGFnaW5hdGlvbiBjb21wb25lbnQgbWl4aW5cbiAqIFByb3ZpZGVzIGNvbXBsZXRlIHN0eWxpbmcgZm9yIHBhZ2luYXRlZCBjb250ZW50IG5hdmlnYXRpb25cbiAqL1xuQG1peGluIHBhZ2luYXRpb24oJGJsb2NrKSB7XG4gICAgLy8gVmlzdWFsIGNvbmZpZ3VyYXRpb25cbiAgICAkb3V0bGluZS13aWR0aDogMnB4O1xuICAgICRvdXRsaW5lLW9mZnNldDogMnB4O1xuICAgICR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICAgICR0cmFuc2l0aW9uLWVhc2luZzogZWFzZTtcbiAgICAkYm9yZGVyLXJhZGl1czogMDtcbiAgICAkYm9yZGVyLXdpZHRoOiAzcHg7XG4gICAgJG1pbi10b3VjaC1zaXplOiA0NHB4OyAvLyBNaW5pbXVtIHRvdWNoIHRhcmdldCBzaXplIGZvciBhY2Nlc3NpYmlsaXR5XG4gICAgJGxpbmstdW5kZXJsaW5lOiBub25lOyAvLyBObyB1bmRlcmxpbmUgZm9yIGxpbmtzIGJ5IGRlZmF1bHRcblxuICAgIC8vIENvbG9ycyAtIHVzaW5nIENTUyB2YXJpYWJsZXMgZm9yIHRoZW1lIGZsZXhpYmlsaXR5XG4gICAgJHBhZ2luYXRpb24tcHJpbWFyeS1jb2xvcjogdmFyKFxuICAgICAgICAtLWNvbG9yLXByaW1hcnksXG4gICAgICAgIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZVxuICAgICk7XG4gICAgJHBhZ2luYXRpb24tc2Vjb25kYXJ5LWNvbG9yOiB2YXIoXG4gICAgICAgIC0tY29sb3Itc2Vjb25kYXJ5LFxuICAgICAgICBjb2xvcnMuJGNvbG9yLWpmZS15ZWxsb3dcbiAgICApO1xuICAgICRwYWdpbmF0aW9uLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgICAkcGFnaW5hdGlvbi1iZy1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUsIGNvbG9ycy4kY29sb3Itd2hpdGUpO1xuICAgICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgJHBhZ2luYXRpb24taG92ZXItYmctY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiB2YXIoXG4gICAgICAgIC0tY29sb3ItamZlLWdyYXktZGFyayxcbiAgICAgICAgY29sb3JzLiRjb2xvci1qZmUtZ3JheS1kYXJrXG4gICAgKTtcbiAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZy1jb2xvcjogdmFyKFxuICAgICAgICAtLWNvbG9yLWpmZS1hbG1vc3Qtd2hpdGUsXG4gICAgICAgIGNvbG9ycy4kY29sb3ItamZlLWFsbW9zdC13aGl0ZVxuICAgICk7XG4gICAgJHBhZ2luYXRpb24tY3VycmVudC1iZy1jb2xvcjogdmFyKFxuICAgICAgICAtLWNvbG9yLXNlY29uZGFyeSxcbiAgICAgICAgY29sb3JzLiRjb2xvci1qZmUteWVsbG93XG4gICAgKTtcbiAgICAkcGFnaW5hdGlvbi1jdXJyZW50LXRleHQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcblxuICAgIC4jeyRibG9ja30ge1xuICAgICAgICAvLyBNYWluIHBhZ2luYXRpb24gY29udGFpbmVyXG4gICAgICAgICZfX3BhZ2luYXRpb24ge1xuICAgICAgICAgICAgbWFyZ2luOiAycmVtIDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoXCJsZ1wiKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAzcmVtIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQYWdpbmF0aW9uIHdyYXBwZXJcbiAgICAgICAgJl9fcGFnaW5hdGlvbi1jb250YWluZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQYWdpbmF0aW9uIGxpc3RcbiAgICAgICAgdWwuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpc3Qge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGdhcDogMC4yNXJlbTtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KFwic21cIikge1xuICAgICAgICAgICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW5kaXZpZHVhbCBwYWdpbmF0aW9uIGl0ZW1zXG4gICAgICAgIGxpLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBIaWRlIG5vbi1lc3NlbnRpYWwgcGFnZSBudW1iZXJzIG9uIG1vYmlsZSB0byBwcmV2ZW50IHdyYXBwaW5nXG4gICAgICAgICAgICAvLyBTaG93IG9ubHk6IHByZXYsIGZpcnN0LCBjdXJyZW50LCBsYXN0LCBuZXh0XG4gICAgICAgICAgICAmLS1oaWRlLW1vYmlsZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludC1kb3duKFwic21cIikge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBQYWdlIG51bWJlciBpdGVtc1xuICAgICAgICAgICAgJi0tcGFnZSB7XG4gICAgICAgICAgICAgICAgLy8gRGVmYXVsdCBzdHlsaW5nIGhhbmRsZWQgYnkgcGFnaW5hdGlvbi1saW5rXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEN1cnJlbnQgcGFnZSBpdGVtXG4gICAgICAgICAgICAmLS1jdXJyZW50IHtcbiAgICAgICAgICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbmsge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1jdXJyZW50LWJnLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHBhZ2luYXRpb24tY3VycmVudC10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtYmctY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1jdXJyZW50LWJnLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtdGV4dC1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gUHJldmlvdXMvTmV4dCBpdGVtc1xuICAgICAgICAgICAgJi0tcHJldmlvdXMsXG4gICAgICAgICAgICAmLS1uZXh0IHtcbiAgICAgICAgICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbmsge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDAuMjVyZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoXCJzbVwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBnYXA6IDAuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGUgZm9yIHByZXZpb3VzL25leHRcbiAgICAgICAgICAgICYtLWRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbmsge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZy1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmctY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQYWdpbmF0aW9uIGxpbmtzIChib3RoIDxhPiBhbmQgPHNwYW4+IGVsZW1lbnRzKVxuICAgICAgICBhLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rLFxuICAgICAgICBzcGFuLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBtaW4td2lkdGg6ICRtaW4tdG91Y2gtc2l6ZTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6ICRtaW4tdG91Y2gtc2l6ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnLWNvbG9yO1xuICAgICAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLXRleHQtY29sb3I7XG4gICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay11bmRlcmxpbmU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICAgICAgICAgIGNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZyxcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmcsXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdyAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoXCJzbVwiKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC43NXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEhvdmVyIGFuZCBmb2N1cyBzdGF0ZXMgZm9yIGludGVyYWN0aXZlIGxpbmtzXG4gICAgICAgICAgICAmOmhvdmVyOm5vdCgmLS1kaXNhYmxlZCk6bm90KCYtLWN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZy1jb2xvcjtcbiAgICAgICAgICAgICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6ICRvdXRsaW5lLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLXByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6ICRvdXRsaW5lLW9mZnNldDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphY3RpdmU6bm90KCYtLWRpc2FibGVkKTpub3QoJi0tY3VycmVudCkge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBDdXJyZW50IHBhZ2Ugc3R5bGluZyAoc3BhbiBlbGVtZW50KVxuICAgICAgICAgICAgJi0tY3VycmVudCB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtYmctY29sb3I7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtdGV4dC1jb2xvcjtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtYmctY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGUgc3R5bGluZ1xuICAgICAgICAgICAgJi0tZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmctY29sb3I7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmctY29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFByZXZpb3VzIGxpbmsgc3BlY2lmaWMgc3R5bGluZ1xuICAgICAgICAgICAgJi0tcHJldmlvdXMge1xuICAgICAgICAgICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24taWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTmV4dCBsaW5rIHNwZWNpZmljIHN0eWxpbmdcbiAgICAgICAgICAgICYtLW5leHQge1xuICAgICAgICAgICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24taWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFBhZ2UgbnVtYmVyIGRpc3BsYXlcbiAgICAgICAgJl9fcGFnaW5hdGlvbi1udW1iZXIge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBOYXZpZ2F0aW9uIHRleHQgKFByZXZpb3VzL05leHQpXG4gICAgICAgICZfX3BhZ2luYXRpb24tdGV4dCB7XG4gICAgICAgICAgICAvLyBTUiBvbmx5IGZvciBzY3JlZW4gcmVhZGVyc1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogLTFweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE5hdmlnYXRpb24gaWNvbnNcbiAgICAgICAgJl9fcGFnaW5hdGlvbi1pY29uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRWxsaXBzaXMgaXRlbVxuICAgICAgICAmX19wYWdpbmF0aW9uLWl0ZW0tLWVsbGlwc2lzIHtcbiAgICAgICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluay0tZWxsaXBzaXMge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNjcmVlbiByZWFkZXIgb25seSBjb250ZW50XG4gICAgLnNyLW9ubHkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IC0xcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIGFkanVzdG1lbnRzXG4gICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludC1kb3duKFwic21cIikge1xuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpc3Qge1xuICAgICAgICAgICAgZ2FwOiAwLjEyNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluayB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMC4zNzVyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUHJpbnQgc3R5bGVzXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZWR1Y2VkIG1vdGlvbiBzdXBwb3J0XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXI6bm90KCYtLWRpc2FibGVkKTpub3QoJi0tY3VycmVudCkge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFjdGl2ZTpub3QoJi0tZGlzYWJsZWQpOm5vdCgmLS1jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIaWdoIGNvbnRyYXN0IG1vZGUgc3VwcG9ydFxuICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluayB7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG5cbiAgICAgICAgICAgICYtLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEhpZ2hsaWdodDtcbiAgICAgICAgICAgICAgICBjb2xvcjogSGlnaGxpZ2h0VGV4dDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IEhpZ2hsaWdodDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogR3JheVRleHQ7XG4gICAgICAgICAgICAgICAgY29sb3I6IEdyYXlUZXh0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRm9jdXMgbWFuYWdlbWVudCBmb3Iga2V5Ym9hcmQgbmF2aWdhdGlvblxuICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluazpmb2N1cyB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG4iLCIvLyBBVVRPLUdFTkVSQVRFRCBGSUxFIGZyb20gYnVpbGQtYnJlYWtwb2ludHMuanNcbi8vIERPIE5PVCBFRElUIERJUkVDVExZXG5cbi8vIEltcG9ydCBTYXNzIG1hcCBtb2R1bGVcbkB1c2UgXCJzYXNzOm1hcFwiO1xuXG4vLyBCcmVha3BvaW50IHZhbHVlc1xuJGJyZWFrcG9pbnQtc206IDY0MHB4O1xuJGJyZWFrcG9pbnQtbWQ6IDc2OHB4O1xuJGJyZWFrcG9pbnQtbGc6IDEwMjRweDtcbiRicmVha3BvaW50LXhsOiAxMjgwcHg7XG4kYnJlYWtwb2ludC0yeGw6IDE2NjRweDtcblxuLy8gTWFwIGZvciBwcm9ncmFtbWF0aWMgYWNjZXNzXG4kYnJlYWtwb2ludHM6IChcbiAgJ3NtJzogJGJyZWFrcG9pbnQtc20sXG4gICdtZCc6ICRicmVha3BvaW50LW1kLFxuICAnbGcnOiAkYnJlYWtwb2ludC1sZyxcbiAgJ3hsJzogJGJyZWFrcG9pbnQteGwsXG4gICcyeGwnOiAkYnJlYWtwb2ludC0yeGxcbik7XG5cbi8vIE1peGluIGZvciBlYXN5IG1lZGlhIHF1ZXJpZXMgYmFzZWQgb24gZGVmaW5lZCBicmVha3BvaW50c1xuQG1peGluIGJyZWFrcG9pbnQoJHBvaW50KSB7XG4gIEBpZiBtYXAuaGFzLWtleSgkYnJlYWtwb2ludHMsICRwb2ludCkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJHBvaW50KSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcIkJyZWFrcG9pbnQgJyN7JHBvaW50fScgaXMgbm90IGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzIG1hcC5cIjtcbiAgfVxufVxuXG4vLyBNaXhpbiBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXMgKHNtYWxsZXIgdGhhbiBhIGJyZWFrcG9pbnQpXG5AbWl4aW4gYnJlYWtwb2ludC1kb3duKCRwb2ludCkge1xuICBAaWYgbWFwLmhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkcG9pbnQpIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogbWFwLmdldCgkYnJlYWtwb2ludHMsICRwb2ludCkgLSAxcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJCcmVha3BvaW50ICcjeyRwb2ludH0nIGlzIG5vdCBkZWZpbmVkIGluICRicmVha3BvaW50cyBtYXAuXCI7XG4gIH1cbn1cblxuLy8gTWl4aW4gZm9yIGNyZWF0aW5nIHN0eWxlcyBiZXR3ZWVuIHR3byBicmVha3BvaW50c1xuQG1peGluIGJyZWFrcG9pbnQtYmV0d2VlbigkbWluLCAkbWF4KSB7XG4gIEBpZiBtYXAuaGFzLWtleSgkYnJlYWtwb2ludHMsICRtaW4pIGFuZCBtYXAuaGFzLWtleSgkYnJlYWtwb2ludHMsICRtYXgpIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLmdldCgkYnJlYWtwb2ludHMsICRtaW4pKSBhbmQgKG1heC13aWR0aDogbWFwLmdldCgkYnJlYWtwb2ludHMsICRtYXgpIC0gMXB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiQnJlYWtwb2ludCAnI3skbWlufScgb3IgJyN7JG1heH0nIGlzIG5vdCBkZWZpbmVkIGluICRicmVha3BvaW50cyBtYXAuXCI7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/