/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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/plugins/ce_jfecontacts_contactlist.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* 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;
}
.ce-jfecontacts_contactlist__category-filter {
  width: 100%;
}
.ce-jfecontacts_contactlist__dropdown {
  position: relative;
  min-width: 240px;
  width: 100%;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .ce-jfecontacts_contactlist__dropdown {
    margin-bottom: 0;
  }
}
.ce-jfecontacts_contactlist__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-family: inherit;
  font-size: 1rem;
  color: var(--color-black, #000000);
  text-align: left;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.ce-jfecontacts_contactlist__dropdown-toggle:hover {
  border-color: var(--color-primary, #009ddf);
}
.ce-jfecontacts_contactlist__dropdown-toggle:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfecontacts_contactlist__dropdown-toggle[aria-expanded=true] {
  border-color: var(--color-primary, #009ddf);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.ce-jfecontacts_contactlist__dropdown-toggle[aria-expanded=true] .ce-jfecontacts_contactlist__dropdown-icon {
  transform: rotate(180deg);
}
.ce-jfecontacts_contactlist__dropdown-toggle.has-selections .ce-jfecontacts_contactlist__dropdown-label {
  font-weight: 600;
}
.ce-jfecontacts_contactlist__dropdown-label {
  margin-right: 0.5rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 600;
  font-size: 1.125rem;
}
.ce-jfecontacts_contactlist__dropdown-icon {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  position: relative;
  transition: transform 0.2s ease;
}
.ce-jfecontacts_contactlist__dropdown-icon::after {
  position: absolute;
  top: 50%;
  transform-origin: center;
  content: "";
}
.ce-jfecontacts_contactlist__dropdown-icon::after {
  right: 0;
  transform: translateY(-50%) rotate(0deg);
}
.ce-jfecontacts_contactlist__dropdown-menu {
  position: absolute;
  top: calc(100% - 1px);
  left: 0;
  width: 100%;
  max-height: 300px;
  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-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  z-index: 10;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.ce-jfecontacts_contactlist__dropdown-menu[hidden] {
  display: none;
}
@media (min-width: 1280px) {
  .ce-jfecontacts_contactlist__dropdown-menu {
    width: calc(100% + 64px);
  }
}
.ce-jfecontacts_contactlist__dropdown-option {
  display: flex;
  align-items: center;
  padding: 0.5rem 1rem;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.ce-jfecontacts_contactlist__dropdown-option:hover {
  background-color: var(--color-primary, #009ddf);
  color: var(--color-white, #ffffff);
}
.ce-jfecontacts_contactlist__dropdown-option:hover .ce-jfecontacts_contactlist__option-checkbox {
  border-color: var(--color-white, #ffffff);
}
.ce-jfecontacts_contactlist__dropdown-option:focus {
  outline: none;
  background-color: var(--color-primary, #009ddf);
  color: var(--color-white, #ffffff);
}
.ce-jfecontacts_contactlist__dropdown-option:focus .ce-jfecontacts_contactlist__option-checkbox {
  border-color: var(--color-white, #ffffff);
}
.ce-jfecontacts_contactlist__dropdown-option[aria-selected=true] {
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-left: 3px solid var(--color-primary, #009ddf);
  padding-left: calc(1rem - 3px);
}
.ce-jfecontacts_contactlist__dropdown-option[aria-selected=true] .ce-jfecontacts_contactlist__option-checkbox {
  border-color: var(--color-primary, #009ddf);
  background-color: var(--color-white, #ffffff);
}
.ce-jfecontacts_contactlist__dropdown-option[aria-selected=true] .ce-jfecontacts_contactlist__option-checkbox::before {
  opacity: 1;
}
.ce-jfecontacts_contactlist__dropdown-option[aria-selected=true]:focus, .ce-jfecontacts_contactlist__dropdown-option[aria-selected=true]:hover {
  background-color: var(--color-primary, #009ddf);
  color: var(--color-white, #ffffff);
}
.ce-jfecontacts_contactlist__dropdown-option[aria-selected=true]:focus .ce-jfecontacts_contactlist__option-checkbox, .ce-jfecontacts_contactlist__dropdown-option[aria-selected=true]:hover .ce-jfecontacts_contactlist__option-checkbox {
  border-color: var(--color-white, #ffffff);
  background-color: var(--color-jfe-gray, #f3f3f2);
}
.ce-jfecontacts_contactlist__dropdown-option[aria-selected=true]:focus .ce-jfecontacts_contactlist__option-checkbox::before, .ce-jfecontacts_contactlist__dropdown-option[aria-selected=true]:hover .ce-jfecontacts_contactlist__option-checkbox::before {
  opacity: 1;
}
.ce-jfecontacts_contactlist__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;
  align-self: flex-start;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.ce-jfecontacts_contactlist__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;
}
.ce-jfecontacts_contactlist__option-text {
  flex-grow: 1;
  font-size: 1.125rem;
}
.ce-jfecontacts_contactlist__dropdown-counter {
  margin-left: auto;
  margin-right: 1rem;
  font-size: 0.875rem;
  font-weight: 600;
  opacity: 0;
  transition: opacity 0.2s ease;
  display: flex;
  height: 1.5rem;
  width: 1.5rem;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: var(--color-secondary, #ffcc00);
}
.ce-jfecontacts_contactlist__dropdown-counter.visible {
  opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfecontacts_contactlist__dropdown-toggle,
  .ce-jfecontacts_contactlist__dropdown-icon,
  .ce-jfecontacts_contactlist__option-checkbox {
    transition: none;
  }
}
@media (forced-colors: active) {
  .ce-jfecontacts_contactlist__dropdown-toggle,
  .ce-jfecontacts_contactlist__dropdown-option {
    border: 2px solid currentColor;
  }
}
.ce-jfecontacts_contactlist__active-filters-container {
  padding: 1rem;
  background-color: var(--color-jfe-almost-white, #fafafa);
}
.ce-jfecontacts_contactlist__active-filters-label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
}
.ce-jfecontacts_contactlist ul.ce-jfecontacts_contactlist__active-filters-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
  max-width: initial;
}
.ce-jfecontacts_contactlist li.ce-jfecontacts_contactlist__active-filter-item {
  margin-bottom: 0;
}
.ce-jfecontacts_contactlist li.ce-jfecontacts_contactlist__active-filter-item::before {
  content: none;
}
.ce-jfecontacts_contactlist__active-filter-remove, .ce-jfecontacts_contactlist__active-filter-remove-all {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0;
  font-size: 1rem;
  gap: 0.125rem;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}
.ce-jfecontacts_contactlist__active-filter-remove > span, .ce-jfecontacts_contactlist__active-filter-remove-all > span {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
.ce-jfecontacts_contactlist__active-filter-remove > span {
  text-decoration-color: transparent;
}
.ce-jfecontacts_contactlist__active-filter-remove:hover {
  background-color: transparent;
}
.ce-jfecontacts_contactlist__active-filter-remove:hover > span {
  text-decoration-color: var(--color-black, #000000);
}
.ce-jfecontacts_contactlist__active-filter-remove:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfecontacts_contactlist__active-filter-remove-all {
  background-color: transparent;
  border-color: transparent;
  font-weight: 600;
  gap: 0.75rem;
  font-size: 1.125rem;
}
.ce-jfecontacts_contactlist__active-filter-remove-all > span {
  text-decoration-color: var(--color-jfe-yellow, #ffcc00);
}
.ce-jfecontacts_contactlist__active-filter-remove-all:hover > span, .ce-jfecontacts_contactlist__active-filter-remove-all:focus-visible > span {
  text-decoration-color: var(--color-black, #000000);
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfecontacts_contactlist__active-filter-remove,
  .ce-jfecontacts_contactlist__active-filter-remove-all {
    transition: none;
  }
}
@media (forced-colors: active) {
  .ce-jfecontacts_contactlist__active-filter-remove,
  .ce-jfecontacts_contactlist__active-filter-remove-all {
    border: 2px solid currentColor;
  }
}
.ce-jfecontacts_contactlist__alphabet-filter {
  padding: 1.5rem 0;
  background-color: var(--color-white, #ffffff);
}
@media (min-width: 1024px) {
  .ce-jfecontacts_contactlist__alphabet-filter {
    padding: 1.5rem 0;
  }
}
.ce-jfecontacts_contactlist__alphabet-headline {
  margin-bottom: 0.5rem;
  font-weight: 600;
  font-size: 1rem;
}
.ce-jfecontacts_contactlist__alphabet-container {
  margin-top: 1rem;
}
.ce-jfecontacts_contactlist__alphabet-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-start;
  margin-bottom: 0;
}
.ce-jfecontacts_contactlist__alphabet-item {
  margin: 0;
}
.ce-jfecontacts_contactlist__alphabet-item::before {
  content: "";
  background-color: transparent;
}
.ce-jfecontacts_contactlist__filter-letter {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 2.5rem;
  height: 2.5rem;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  background-color: var(--color-white, #ffffff);
  font-weight: 400;
  padding: 1rem;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.ce-jfecontacts_contactlist__filter-letter:hover {
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-color: var(--color-primary, #009ddf);
}
.ce-jfecontacts_contactlist__filter-letter:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfecontacts_contactlist__filter-letter--active {
  background-color: var(--color-white, #ffffff);
  border-color: var(--color-primary, #009ddf);
  font-weight: 600;
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfecontacts_contactlist__filter-letter {
    transition: none;
  }
}
@media (forced-colors: active) {
  .ce-jfecontacts_contactlist__filter-letter {
    border: 2px solid currentColor;
  }
  .ce-jfecontacts_contactlist__filter-letter--active {
    background-color: Highlight;
    color: HighlightText;
  }
}
.ce-jfecontacts_contactlist__filter-form {
  padding: 0;
}
.ce-jfecontacts_contactlist__filter-toggle {
  display: none;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 0.5rem;
  padding: 0.75rem 1rem;
  background-color: var(--color-jfe-gray, #f3f3f2);
  color: var(--color-black, #000000);
  font-weight: 600;
  margin-bottom: 0;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}
.ce-jfecontacts_contactlist__filter-toggle:hover {
  background-color: var(--color-jfe-gray-medium, #CFCFCF);
  border-color: var(--color-primary, #009ddf);
}
.ce-jfecontacts_contactlist__filter-toggle:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfecontacts_contactlist__filter-toggle-arrow-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  transition: transform 0.2s ease;
  font-size: 1.25rem;
}
.ce-jfecontacts_contactlist__filter-toggle-filter-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  background-color: var(--color-secondary, #ffcc00);
  transition: transform 0.2s ease;
  font-size: 1.25rem;
  border-radius: 50%;
  margin-right: auto;
  flex-shrink: 0;
}
.ce-jfecontacts_contactlist__filter-toggle[aria-expanded=true] .ce-jfecontacts_contactlist__filter-toggle-arrow-icon {
  transform: rotate(180deg);
}
@media (max-width: 1023px) {
  .ce-jfecontacts_contactlist__filter-toggle {
    display: flex;
  }
}
@media (min-width: 1024px) {
  .ce-jfecontacts_contactlist__filter-content {
    background-color: var(--color-jfe-gray, #f3f3f2);
    padding-top: 2rem;
  }
}
@media (max-width: 1023px) {
  .ce-jfecontacts_contactlist__filter-content {
    display: none;
    background-color: var(--color-jfe-gray, #f3f3f2);
  }
  .ce-jfecontacts_contactlist__filter-content.is-visible {
    display: block;
    padding-top: 2rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfecontacts_contactlist__filter-toggle-arrow-icon,
  .ce-jfecontacts_contactlist__filter-toggle-filter-icon {
    transition: none;
  }
}
.ce-jfecontacts_contactlist h3.ce-jfecontacts_contactlist__contact-name,
.ce-jfecontacts_contactlist h3.ce-jfecontacts_contactlist__name {
  color: var(--color-black, #000000);
  margin-bottom: 0.25rem;
  font-size: clamp(24px, 0.5vw + 22px, 28px);
  font-weight: 700;
  line-height: 1.3;
}
.ce-jfecontacts_contactlist__section-label {
  display: block;
  color: var(--color-black, #000000);
}
.ce-jfecontacts_contactlist__experience-badges, .ce-jfecontacts_contactlist__requestsfor-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.ce-jfecontacts_contactlist__experience-badge, .ce-jfecontacts_contactlist__requestsfor-badge {
  display: inline-block;
  padding: 0.375rem 0.875rem;
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-radius: 1.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.4;
  color: var(--color-black, #000000);
  white-space: nowrap;
}
.ce-jfecontacts_contactlist__picture {
  width: 200px;
  height: 200px;
  display: block;
}
.ce-jfecontacts_contactlist__phone, .ce-jfecontacts_contactlist__email, .ce-jfecontacts_contactlist__link-wrapper {
  font-size: clamp(16px, 0.5vw + 14px, 20px);
  font-family: "Calibri", sans-serif, "Aleo", serif;
  font-weight: 500;
  line-height: 1.5;
}
.ce-jfecontacts_contactlist__phone a, .ce-jfecontacts_contactlist__email a, .ce-jfecontacts_contactlist__link-wrapper a {
  color: var(--color-black, #000000);
  text-decoration-line: underline;
  text-decoration-color: var(--color-secondary);
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
  transition: all 0.2s ease;
}
.ce-jfecontacts_contactlist__phone a:hover, .ce-jfecontacts_contactlist__phone a:focus, .ce-jfecontacts_contactlist__email a:hover, .ce-jfecontacts_contactlist__email a:focus, .ce-jfecontacts_contactlist__link-wrapper a:hover, .ce-jfecontacts_contactlist__link-wrapper a:focus {
  color: var(--color-black, #000000);
  text-decoration-color: var(--color-black, #000000);
}
.ce-jfecontacts_contactlist__phone a:focus-visible, .ce-jfecontacts_contactlist__email a:focus-visible, .ce-jfecontacts_contactlist__link-wrapper a:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.ce-jfecontacts_contactlist__location, .ce-jfecontacts_contactlist__contact-location {
  font-size: clamp(16px, 0.5vw + 14px, 20px);
  font-family: "Calibri", sans-serif, "Aleo", serif;
  font-weight: 500;
  line-height: 1.5;
}
.ce-jfecontacts_contactlist__user-status {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.ce-jfecontacts_contactlist__break-indicator, .ce-jfecontacts_contactlist__available-indicator {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 0.75rem;
  border-radius: 2rem;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.2;
}
.ce-jfecontacts_contactlist__break-indicator {
  background-color: var(--color-warning-bg);
  color: var(--color-black);
  border: 1px solid var(--color-warning);
}
.ce-jfecontacts_contactlist__available-indicator {
  background-color: var(--color-success-bg);
  color: var(--color-black);
  border: 1px solid var(--color-success);
}
.ce-jfecontacts_contactlist__break-icon, .ce-jfecontacts_contactlist__available-icon {
  font-size: 1rem;
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  background-color: var(--color-white, #ffffff);
  border: 1px solid;
}
.ce-jfecontacts_contactlist__break-icon {
  border-color: var(--color-warning);
}
.ce-jfecontacts_contactlist__available-icon {
  border-color: var(--color-success);
}
.ce-jfecontacts_contactlist ul.ce-jfecontacts_contactlist__contact-list {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}
.ce-jfecontacts_contactlist ul.ce-jfecontacts_contactlist__contact-list li.ce-jfecontacts_contactlist__contact-card {
  padding-left: 0;
  margin-bottom: 0;
}
.ce-jfecontacts_contactlist ul.ce-jfecontacts_contactlist__contact-list li.ce-jfecontacts_contactlist__contact-card::before {
  content: none;
}
.ce-jfecontacts_contactlist__filter-section {
  margin-bottom: 2rem;
}
.ce-jfecontacts_contactlist .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;
}
.ce-jfecontacts_contactlist__list {
  list-style: none;
  padding: 128px 0 0 0;
  margin: 0;
}
@media (min-width: 1024px) {
  .ce-jfecontacts_contactlist__list {
    padding: 64px 0 0 0;
  }
}
.ce-jfecontacts_contactlist__list li::before {
  content: "";
  background-color: transparent;
}
.ce-jfecontacts_contactlist__no-results {
  padding: 2rem;
  text-align: center;
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-radius: 4px;
  margin: 2rem 0;
}
.filter-submit {
  min-width: 150px;
}
@media (max-width: 1023px) {
  .filter-submit {
    width: 100%;
  }
}

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