/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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_jfeevents_eventlist.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/**
 * Universal LoadMore component
 * Works for both AJAX-based (publications) and simple frontend show/hide (contacts) implementations
 */
/**
 * Universal pagination component mixin
 * Provides complete styling for paginated content navigation
 */
/**
 * Reusable copyright overlay component
 *
 * Usage:
 * <div class="copyright">© 2024 Photographer Name</div>
 * <div class="copyright copyright--top-left">© 2024 Photographer Name</div>
 * <div class="copyright copyright--masonry">© 2024 Photographer Name</div>
 */
.copyright {
  position: absolute;
  background-color: rgba(0, 0, 0, 0.65);
  color: #ffffff;
  padding: 2px 6px;
  font-size: 0.75rem;
  border-radius: 2px;
  line-height: 1.2;
  z-index: 10;
  pointer-events: none;
  min-width: -moz-max-content;
  min-width: max-content;
  bottom: 8px;
  right: 8px;
}
.copyright--top-right {
  top: 8px;
  right: 8px;
  bottom: auto;
}
.copyright--top-left {
  top: 8px;
  left: 8px;
  right: auto;
  bottom: auto;
}
.copyright--bottom-left {
  bottom: 8px;
  left: 8px;
  right: auto;
}
.copyright--edge, .copyright--masonry, .copyright--collage {
  bottom: 0;
  right: 0;
  border-radius: 0;
  white-space: nowrap;
}
.copyright--modal {
  position: absolute;
  right: 0;
  top: -22px;
  bottom: auto;
  display: block;
  padding: 0.25rem 0.5rem;
  margin: 0;
  font-weight: 400;
}
@media (min-width: 768px) {
  .copyright--modal {
    font-size: 1.25rem;
    top: -32px;
  }
}
.copyright--light {
  background-color: rgba(255, 255, 255, 0.9);
  color: #000000;
}
.copyright--dark {
  background-color: rgba(0, 0, 0, 0.8);
  color: #ffffff;
}
.copyright--transparent {
  background-color: transparent;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.8);
}
.copyright--large {
  font-size: 0.875rem;
  padding: 4px 8px;
}
@media (max-width: 639px) {
  .copyright--hide-mobile {
    display: none;
  }
}
.copyright--hover-show {
  opacity: 0;
  transition: opacity 0.3s ease;
}
*:hover > .copyright--hover-show, *:focus-within > .copyright--hover-show {
  opacity: 1;
}
/**
 * Base event item styles mixin
 * Contains common styles for event items used in both preview and full list
 * @param {string} $block - The BEM block class name
 */
.ce-jfeevents_eventlist__category-filter {
  width: 100%;
}
.ce-jfeevents_eventlist__dropdown {
  position: relative;
  min-width: 240px;
  width: 100%;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .ce-jfeevents_eventlist__dropdown {
    margin-bottom: 0;
  }
}
.ce-jfeevents_eventlist__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-jfeevents_eventlist__dropdown-toggle:hover {
  border-color: var(--color-primary, #009ddf);
}
.ce-jfeevents_eventlist__dropdown-toggle:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfeevents_eventlist__dropdown-toggle[aria-expanded=true] {
  border-color: var(--color-primary, #009ddf);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.ce-jfeevents_eventlist__dropdown-toggle[aria-expanded=true] .ce-jfeevents_eventlist__dropdown-icon {
  transform: rotate(180deg);
}
.ce-jfeevents_eventlist__dropdown-toggle.has-selections .ce-jfeevents_eventlist__dropdown-label {
  font-weight: 600;
}
.ce-jfeevents_eventlist__dropdown-label {
  margin-right: 0.5rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 600;
  font-size: 1.125rem;
}
.ce-jfeevents_eventlist__dropdown-icon {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  position: relative;
  transition: transform 0.2s ease;
}
.ce-jfeevents_eventlist__dropdown-icon::after {
  position: absolute;
  top: 50%;
  transform-origin: center;
  content: "";
}
.ce-jfeevents_eventlist__dropdown-icon::after {
  right: 0;
  transform: translateY(-50%) rotate(0deg);
}
.ce-jfeevents_eventlist__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-jfeevents_eventlist__dropdown-menu[hidden] {
  display: none;
}
@media (min-width: 1280px) {
  .ce-jfeevents_eventlist__dropdown-menu {
    width: calc(100% + 64px);
  }
}
.ce-jfeevents_eventlist__dropdown-option {
  display: flex;
  align-items: center;
  padding: 0.5rem 1rem;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.ce-jfeevents_eventlist__dropdown-option:hover {
  background-color: var(--color-primary, #009ddf);
  color: var(--color-white, #ffffff);
}
.ce-jfeevents_eventlist__dropdown-option:hover .ce-jfeevents_eventlist__option-checkbox {
  border-color: var(--color-white, #ffffff);
}
.ce-jfeevents_eventlist__dropdown-option:focus {
  outline: none;
  background-color: var(--color-primary, #009ddf);
  color: var(--color-white, #ffffff);
}
.ce-jfeevents_eventlist__dropdown-option:focus .ce-jfeevents_eventlist__option-checkbox {
  border-color: var(--color-white, #ffffff);
}
.ce-jfeevents_eventlist__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-jfeevents_eventlist__dropdown-option[aria-selected=true] .ce-jfeevents_eventlist__option-checkbox {
  border-color: var(--color-primary, #009ddf);
  background-color: var(--color-white, #ffffff);
}
.ce-jfeevents_eventlist__dropdown-option[aria-selected=true] .ce-jfeevents_eventlist__option-checkbox::before {
  opacity: 1;
}
.ce-jfeevents_eventlist__dropdown-option[aria-selected=true]:focus, .ce-jfeevents_eventlist__dropdown-option[aria-selected=true]:hover {
  background-color: var(--color-primary, #009ddf);
  color: var(--color-white, #ffffff);
}
.ce-jfeevents_eventlist__dropdown-option[aria-selected=true]:focus .ce-jfeevents_eventlist__option-checkbox, .ce-jfeevents_eventlist__dropdown-option[aria-selected=true]:hover .ce-jfeevents_eventlist__option-checkbox {
  border-color: var(--color-white, #ffffff);
  background-color: var(--color-jfe-gray, #f3f3f2);
}
.ce-jfeevents_eventlist__dropdown-option[aria-selected=true]:focus .ce-jfeevents_eventlist__option-checkbox::before, .ce-jfeevents_eventlist__dropdown-option[aria-selected=true]:hover .ce-jfeevents_eventlist__option-checkbox::before {
  opacity: 1;
}
.ce-jfeevents_eventlist__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-jfeevents_eventlist__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-jfeevents_eventlist__option-text {
  flex-grow: 1;
  font-size: 1.125rem;
}
.ce-jfeevents_eventlist__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-jfeevents_eventlist__dropdown-counter.visible {
  opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfeevents_eventlist__dropdown-toggle,
  .ce-jfeevents_eventlist__dropdown-icon,
  .ce-jfeevents_eventlist__option-checkbox {
    transition: none;
  }
}
@media (forced-colors: active) {
  .ce-jfeevents_eventlist__dropdown-toggle,
  .ce-jfeevents_eventlist__dropdown-option {
    border: 2px solid currentColor;
  }
}
.ce-jfeevents_eventlist__active-filters-container {
  padding: 1rem;
  background-color: var(--color-jfe-almost-white, #fafafa);
}
.ce-jfeevents_eventlist__active-filters-label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
}
.ce-jfeevents_eventlist ul.ce-jfeevents_eventlist__active-filters-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
  max-width: initial;
}
.ce-jfeevents_eventlist li.ce-jfeevents_eventlist__active-filter-item {
  margin-bottom: 0;
}
.ce-jfeevents_eventlist li.ce-jfeevents_eventlist__active-filter-item::before {
  content: none;
}
.ce-jfeevents_eventlist__active-filter-remove, .ce-jfeevents_eventlist__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-jfeevents_eventlist__active-filter-remove > span, .ce-jfeevents_eventlist__active-filter-remove-all > span {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
.ce-jfeevents_eventlist__active-filter-remove > span {
  text-decoration-color: transparent;
}
.ce-jfeevents_eventlist__active-filter-remove:hover {
  background-color: transparent;
}
.ce-jfeevents_eventlist__active-filter-remove:hover > span {
  text-decoration-color: var(--color-black, #000000);
}
.ce-jfeevents_eventlist__active-filter-remove:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfeevents_eventlist__active-filter-remove-all {
  background-color: transparent;
  border-color: transparent;
  font-weight: 600;
  gap: 0.75rem;
  font-size: 1.125rem;
}
.ce-jfeevents_eventlist__active-filter-remove-all > span {
  text-decoration-color: var(--color-jfe-yellow, #ffcc00);
}
.ce-jfeevents_eventlist__active-filter-remove-all:hover > span, .ce-jfeevents_eventlist__active-filter-remove-all:focus-visible > span {
  text-decoration-color: var(--color-black, #000000);
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfeevents_eventlist__active-filter-remove,
  .ce-jfeevents_eventlist__active-filter-remove-all {
    transition: none;
  }
}
@media (forced-colors: active) {
  .ce-jfeevents_eventlist__active-filter-remove,
  .ce-jfeevents_eventlist__active-filter-remove-all {
    border: 2px solid currentColor;
  }
}
.ce-jfeevents_eventlist__filter-form {
  padding: 0;
}
.ce-jfeevents_eventlist__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-jfeevents_eventlist__filter-toggle:hover {
  background-color: var(--color-jfe-gray-medium, #CFCFCF);
  border-color: var(--color-primary, #009ddf);
}
.ce-jfeevents_eventlist__filter-toggle:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfeevents_eventlist__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-jfeevents_eventlist__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-jfeevents_eventlist__filter-toggle[aria-expanded=true] .ce-jfeevents_eventlist__filter-toggle-arrow-icon {
  transform: rotate(180deg);
}
@media (max-width: 1023px) {
  .ce-jfeevents_eventlist__filter-toggle {
    display: flex;
  }
}
@media (min-width: 1024px) {
  .ce-jfeevents_eventlist__filter-content {
    background-color: var(--color-jfe-gray, #f3f3f2);
    padding-top: 2rem;
  }
}
@media (max-width: 1023px) {
  .ce-jfeevents_eventlist__filter-content {
    display: none;
    background-color: var(--color-jfe-gray, #f3f3f2);
  }
  .ce-jfeevents_eventlist__filter-content.is-visible {
    display: block;
    padding-top: 2rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfeevents_eventlist__filter-toggle-arrow-icon,
  .ce-jfeevents_eventlist__filter-toggle-filter-icon {
    transition: none;
  }
}
.ce-jfeevents_eventlist__search-filter {
  width: 100%;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .ce-jfeevents_eventlist__search-filter {
    margin-bottom: 0;
  }
}
.ce-jfeevents_eventlist__search-label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
}
.ce-jfeevents_eventlist__search-input {
  width: 100%;
  padding: 0.75rem 1rem;
  border-bottom: 1px solid var(--color-black, #000000);
  border-radius: 0;
  background-color: var(--color-white, #ffffff);
  font-family: inherit;
  font-size: 1rem;
  transition: border-color 0.2s ease;
}
.ce-jfeevents_eventlist__search-input:hover, .ce-jfeevents_eventlist__search-input:focus {
  border-color: var(--color-primary, #009ddf);
}
.ce-jfeevents_eventlist__search-input:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfeevents_eventlist__search-input {
    transition: none;
  }
}
.ce-jfeevents_eventlist__loadmore-container {
  padding: 3rem 0;
  text-align: center;
}
.ce-jfeevents_eventlist__loadmore-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 2rem;
  background-color: var(--color-primary, #009ddf);
  color: var(--color-white, #ffffff);
  border: none;
  border-radius: 4px;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}
.ce-jfeevents_eventlist__loadmore-button:hover:not(:disabled):not(.is-disabled) {
  background-color: var(--color-jfe-yellow, #ffcc00);
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}
.ce-jfeevents_eventlist__loadmore-button:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfeevents_eventlist__loadmore-button:active:not(:disabled):not(.is-disabled) {
  transform: translateY(0);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.ce-jfeevents_eventlist__loadmore-button:disabled, .ce-jfeevents_eventlist__loadmore-button.is-disabled {
  background-color: var(--color-jfe-gray-medium, #CFCFCF);
  color: var(--color-black, #000000);
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}
.ce-jfeevents_eventlist__loadmore-button:disabled:hover, .ce-jfeevents_eventlist__loadmore-button.is-disabled:hover {
  background-color: var(--color-jfe-gray-medium, #CFCFCF);
  transform: none;
  box-shadow: none;
}
.ce-jfeevents_eventlist__loadmore-button.is-loading {
  position: relative;
  color: transparent;
}
.ce-jfeevents_eventlist__loadmore-button.is-loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.25rem;
  height: 1.25rem;
  margin: -0.625rem 0 0 -0.625rem;
  border: 2px solid transparent;
  border-top: 2px solid var(--color-white, #ffffff);
  border-radius: 50%;
  animation: spin 1s linear infinite;
}
.ce-jfeevents_eventlist__loadmore-button.is-hidden {
  display: none;
}
.ce-jfeevents_eventlist__loadmore-counter {
  display: block;
  margin-top: 1rem;
  font-size: 0.875rem;
  color: var(--color-text-muted, #000000);
  opacity: 0.7;
}
.ce-jfeevents_eventlist__loading {
  padding: 1rem;
  text-align: center;
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-radius: 4px;
  margin: 1rem 0;
  font-style: italic;
}
.ce-jfeevents_eventlist__loading.hidden {
  display: none;
}
.ce-jfeevents_eventlist__loading::before {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  margin-right: 0.5rem;
  border: 2px solid transparent;
  border-top: 2px solid currentColor;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  vertical-align: middle;
}
.ce-jfeevents_eventlist__error {
  padding: 1rem;
  background-color: var(--color-error, #df0000);
  color: var(--color-white, #ffffff);
  border-radius: 4px;
  margin: 1rem 0;
  text-align: center;
}
.ce-jfeevents_eventlist__error.hidden {
  display: none;
}
.ce-jfeevents_eventlist__error .retry-button {
  display: inline-block;
  margin-top: 0.5rem;
  padding: 0.5rem 1rem;
  background-color: rgba(255, 255, 255, 0.2);
  color: inherit;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 4px;
  font-size: 0.875rem;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.ce-jfeevents_eventlist__error .retry-button:hover {
  background-color: rgba(255, 255, 255, 0.3);
}
.ce-jfeevents_eventlist__error .retry-button:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.8);
  outline-offset: 2px;
}
.ce-jfeevents_eventlist__ajax-fallback, .ce-jfeevents_eventlist__fallback-message {
  padding: 1rem;
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-radius: 4px;
  margin: 1rem 0;
  text-align: center;
  font-style: italic;
}
.ce-jfeevents_eventlist__loadmore-labels, .ce-jfeevents_eventlist__template-labels {
  display: none !important;
  visibility: hidden;
  position: absolute;
  left: -9999px;
}
.ce-jfeevents_eventlist__loadmore-labels[aria-hidden=true], .ce-jfeevents_eventlist__template-labels[aria-hidden=true] {
  display: none !important;
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@media (max-width: 639px) {
  .ce-jfeevents_eventlist__loadmore-button {
    width: 100%;
    max-width: 300px;
  }
  .ce-jfeevents_eventlist__loadmore-container {
    padding: 2rem 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfeevents_eventlist__loadmore-button {
    transition: none;
  }
  .ce-jfeevents_eventlist__loadmore-button:hover:not(:disabled):not(.is-disabled) {
    transform: none;
  }
  .ce-jfeevents_eventlist__loadmore-button:active:not(:disabled):not(.is-disabled) {
    transform: none;
  }
  .ce-jfeevents_eventlist__loadmore-button.is-loading::after {
    animation: none;
    border: 2px solid var(--color-white, #ffffff);
    border-radius: 0;
  }
  .ce-jfeevents_eventlist__loading::before {
    animation: none;
    border: 2px solid currentColor;
    border-radius: 0;
  }
  @keyframes spin {
    0%, 100% {
      transform: rotate(0deg);
    }
  }
}
@media (forced-colors: active) {
  .ce-jfeevents_eventlist__loadmore-button {
    border: 2px solid currentColor;
  }
  .ce-jfeevents_eventlist__loadmore-button:disabled, .ce-jfeevents_eventlist__loadmore-button.is-disabled {
    border-color: GrayText;
    color: GrayText;
  }
  .ce-jfeevents_eventlist__loading,
  .ce-jfeevents_eventlist__error,
  .ce-jfeevents_eventlist__ajax-fallback,
  .ce-jfeevents_eventlist__fallback-message {
    border: 1px solid currentColor;
  }
}
@media print {
  .ce-jfeevents_eventlist__loadmore-container,
  .ce-jfeevents_eventlist__loading,
  .ce-jfeevents_eventlist__error {
    display: none !important;
  }
}
.ce-jfeevents_eventlist__pagination {
  margin: 2rem 0;
}
@media (min-width: 1024px) {
  .ce-jfeevents_eventlist__pagination {
    margin: 3rem 0;
  }
}
.ce-jfeevents_eventlist__pagination-container {
  display: flex;
  justify-content: center;
  width: 100%;
}
.ce-jfeevents_eventlist ul.ce-jfeevents_eventlist__pagination-list {
  display: flex;
  list-style: none;
  padding: 0;
  margin-bottom: 0;
  gap: 0.25rem;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
@media (min-width: 640px) {
  .ce-jfeevents_eventlist ul.ce-jfeevents_eventlist__pagination-list {
    gap: 0.5rem;
  }
}
.ce-jfeevents_eventlist li.ce-jfeevents_eventlist__pagination-item {
  margin: 0;
}
.ce-jfeevents_eventlist li.ce-jfeevents_eventlist__pagination-item::before {
  content: none;
  background-color: transparent;
}
.ce-jfeevents_eventlist li.ce-jfeevents_eventlist__pagination-item--current .ce-jfeevents_eventlist__pagination-link {
  background-color: var(--color-secondary, #ffcc00);
  color: var(--color-black, #000000);
  border-color: var(--color-secondary, #ffcc00);
  font-weight: 600;
}
.ce-jfeevents_eventlist li.ce-jfeevents_eventlist__pagination-item--current .ce-jfeevents_eventlist__pagination-link:hover {
  background-color: var(--color-secondary, #ffcc00);
  color: var(--color-black, #000000);
  transform: none;
  cursor: default;
}
.ce-jfeevents_eventlist li.ce-jfeevents_eventlist__pagination-item--previous .ce-jfeevents_eventlist__pagination-link, .ce-jfeevents_eventlist li.ce-jfeevents_eventlist__pagination-item--next .ce-jfeevents_eventlist__pagination-link {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.5rem 0.75rem;
}
@media (min-width: 640px) {
  .ce-jfeevents_eventlist li.ce-jfeevents_eventlist__pagination-item--previous .ce-jfeevents_eventlist__pagination-link, .ce-jfeevents_eventlist li.ce-jfeevents_eventlist__pagination-item--next .ce-jfeevents_eventlist__pagination-link {
    gap: 0.5rem;
    padding: 0.75rem 1rem;
  }
}
.ce-jfeevents_eventlist li.ce-jfeevents_eventlist__pagination-item--disabled .ce-jfeevents_eventlist__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;
}
.ce-jfeevents_eventlist li.ce-jfeevents_eventlist__pagination-item--disabled .ce-jfeevents_eventlist__pagination-link:hover {
  background-color: var(--color-jfe-almost-white, #fafafa);
  color: var(--color-jfe-gray-dark, rgb(189, 189, 189));
  transform: none;
}
.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__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) {
  .ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link,
  .ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link {
    padding: 0.75rem;
    font-size: 1rem;
  }
}
.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link:hover:not(.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--disabled,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link--disabled):not(.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--current,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link--current),
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link:hover:not(.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--disabled,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link--disabled):not(.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--current,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__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);
}
.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link:focus-visible,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link:active:not(.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--disabled,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link--disabled):not(.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--current,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link--current),
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link:active:not(.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--disabled,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link--disabled):not(.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--current,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link--current) {
  transform: translateY(0);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--current,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__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;
}
.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--disabled,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__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);
}
.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--previous .ce-jfeevents_eventlist__pagination-text,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link--previous .ce-jfeevents_eventlist__pagination-text {
  order: 2;
}
.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--previous .ce-jfeevents_eventlist__pagination-icon,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link--previous .ce-jfeevents_eventlist__pagination-icon {
  order: 1;
}
.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--next .ce-jfeevents_eventlist__pagination-text,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link--next .ce-jfeevents_eventlist__pagination-text {
  order: 1;
}
.ce-jfeevents_eventlist a.ce-jfeevents_eventlist__pagination-link--next .ce-jfeevents_eventlist__pagination-icon,
.ce-jfeevents_eventlist span.ce-jfeevents_eventlist__pagination-link--next .ce-jfeevents_eventlist__pagination-icon {
  order: 2;
}
.ce-jfeevents_eventlist__pagination-number {
  font-weight: inherit;
}
.ce-jfeevents_eventlist__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;
}
.ce-jfeevents_eventlist__pagination-icon {
  font-size: 1.25rem;
  line-height: 1;
}
.ce-jfeevents_eventlist__pagination-item--ellipsis .ce-jfeevents_eventlist__pagination-link--ellipsis {
  cursor: default;
}
.ce-jfeevents_eventlist__pagination-item--ellipsis .ce-jfeevents_eventlist__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) {
  .ce-jfeevents_eventlist__pagination-container {
    padding: 0 1rem;
  }
  .ce-jfeevents_eventlist__pagination-list {
    gap: 0.125rem;
  }
  .ce-jfeevents_eventlist__pagination-link {
    min-width: 40px;
    min-height: 40px;
    padding: 0.375rem;
    font-size: 0.875rem;
  }
}
@media print {
  .ce-jfeevents_eventlist__pagination {
    display: none !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfeevents_eventlist__pagination-link {
    transition: none;
  }
  .ce-jfeevents_eventlist__pagination-link:hover:not(.ce-jfeevents_eventlist__pagination-link--disabled):not(.ce-jfeevents_eventlist__pagination-link--current) {
    transform: none;
    box-shadow: none;
  }
  .ce-jfeevents_eventlist__pagination-link:active:not(.ce-jfeevents_eventlist__pagination-link--disabled):not(.ce-jfeevents_eventlist__pagination-link--current) {
    transform: none;
    box-shadow: none;
  }
}
@media (forced-colors: active) {
  .ce-jfeevents_eventlist__pagination-link {
    border: 2px solid currentColor;
  }
  .ce-jfeevents_eventlist__pagination-link--current {
    background-color: Highlight;
    color: HighlightText;
    border-color: Highlight;
  }
  .ce-jfeevents_eventlist__pagination-link--disabled {
    border-color: GrayText;
    color: GrayText;
  }
}
.ce-jfeevents_eventlist__pagination-link:focus {
  z-index: 1;
  position: relative;
}
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__highlight-arrow-icon {
  color: var(--color-secondary, #ffcc00);
}
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__highlight-link:hover .ce-jfeevents_eventlist__highlight-arrow-icon,
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__highlight-link:focus .ce-jfeevents_eventlist__highlight-arrow-icon {
  color: var(--color-black, #000000);
}
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__event-item-meta {
  width: 100%;
}
@media (min-width: 1024px) {
  .ce-jfeevents_eventlist .ce-jfeevents_eventlist__event-item-meta {
    width: 180px;
  }
}
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__highlight-text-content-wrapper:not(.bg-jfe-gray, .bg-paper-texture) {
  background-color: var(--color-white, #ffffff);
}
.ce-jfeevents_eventlist h2.ce-jfeevents_eventlist__event-item-headline,
.ce-jfeevents_eventlist h3.ce-jfeevents_eventlist__event-item-headline {
  color: var(--color-primary, #009ddf);
}
.ce-jfeevents_eventlist h2.ce-jfeevents_eventlist__event-item-headline.text-e-jugend-blue,
.ce-jfeevents_eventlist h3.ce-jfeevents_eventlist__event-item-headline.text-e-jugend-blue {
  color: var(--color-e-jugend-blue, #003399);
}
.ce-jfeevents_eventlist h2.ce-jfeevents_eventlist__event-item-headline.text-e-sport-orange,
.ce-jfeevents_eventlist h3.ce-jfeevents_eventlist__event-item-headline.text-e-sport-orange {
  color: var(--color-e-sport-orange, #e3530f);
}
.ce-jfeevents_eventlist h2.ce-jfeevents_eventlist__event-item-headline.text-esk-magenta,
.ce-jfeevents_eventlist h3.ce-jfeevents_eventlist__event-item-headline.text-esk-magenta {
  color: var(--color-esk-magenta, #e5006c);
}
.ce-jfeevents_eventlist h2.ce-jfeevents_eventlist__event-item-headline.text-jfe-lightblue,
.ce-jfeevents_eventlist h3.ce-jfeevents_eventlist__event-item-headline.text-jfe-lightblue {
  color: var(--color-jfe-lightblue, #009ddf);
}
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__event-item-link:hover h2.ce-jfeevents_eventlist__event-item-headline,
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__event-item-link:hover h3.ce-jfeevents_eventlist__event-item-headline {
  text-decoration: underline;
}
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__event-item-link:focus {
  outline: none;
}
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__event-item-link:focus h2.ce-jfeevents_eventlist__event-item-headline,
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__event-item-link:focus h3.ce-jfeevents_eventlist__event-item-headline {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__event-item-type,
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__event-item-category-name {
  font-weight: 500;
}
.ce-jfeevents_eventlist .ce-jfeevents_eventlist__event-item-time {
  font-size: 0.875rem;
  font-weight: normal;
}
.ce-jfeevents_eventlist__filter-section {
  margin-bottom: 2rem;
}
.ce-jfeevents_eventlist__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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RUFtOUJGO0FBQ0YsQyIsInNvdXJjZXMiOlsid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL3BsdWdpbnMvY2VfamZlZXZlbnRzX2V2ZW50bGlzdC5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2xvYWRtb3JlLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2NvcHlyaWdodC5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2dsb2JhbC9fY29sb3JzLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvZ2xvYmFsL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2V2ZW50LWJhc2UtbGlzdC5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2ZpbHRlci1kcm9wZG93bi5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2FjdGl2ZS1maWx0ZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fbW9iaWxlLXRvZ2dsZS5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX3NlYXJjaC1maWx0ZXIuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBhc3NldHMvc2Nzcy9wbHVnaW5zL2NlX2pmZWV2ZW50c19ldmVudGxpc3Quc2Nzc1xuQHVzZSAnLi4vZ2xvYmFsL2NvbG9ycycgYXMgY29sb3JzO1xuQHVzZSAnLi4vZ2xvYmFsL2JyZWFrcG9pbnRzJyBhcyBicDtcbkB1c2UgJy4uL2NvbXBvbmVudHMvZmlsdGVyLWRyb3Bkb3duJyBhcyBmaWx0ZXI7XG5AdXNlICcuLi9jb21wb25lbnRzL2FjdGl2ZS1maWx0ZXJzJyBhcyBhY3RpdmU7XG5AdXNlICcuLi9jb21wb25lbnRzL21vYmlsZS10b2dnbGUnIGFzIHRvZ2dsZTtcbkB1c2UgJy4uL2NvbXBvbmVudHMvc2VhcmNoLWZpbHRlcicgYXMgc2VhcmNoO1xuQHVzZSAnLi4vY29tcG9uZW50cy9sb2FkbW9yZScgYXMgbG9hZG1vcmU7XG5AdXNlICcuLi9jb21wb25lbnRzL3BhZ2luYXRpb24nIGFzIHBhZ2luYXRpb247XG5AdXNlICcuLi9jb21wb25lbnRzL2V2ZW50LWJhc2UtbGlzdCcgYXMgZXZlbnQtYmFzZTtcblxuLy8gQmxvY2sgZm9yIEJFTS1NZXRob2RvbG9neVxuJGJsb2NrOiAnY2UtamZlZXZlbnRzX2V2ZW50bGlzdCc7XG5cbi8vIFVzZSBDb21wb25lbnQtTWl4aW5zIChzYW1lIGFzIHB1YmxpY2F0aW9ucyAtIG5vIGFscGhhYmV0IGZpbHRlcilcbkBpbmNsdWRlIGZpbHRlci5maWx0ZXItZHJvcGRvd24oJGJsb2NrKTtcbkBpbmNsdWRlIGFjdGl2ZS5hY3RpdmUtZmlsdGVycygkYmxvY2spO1xuQGluY2x1ZGUgdG9nZ2xlLm1vYmlsZS10b2dnbGUoJGJsb2NrKTtcbkBpbmNsdWRlIHNlYXJjaC5zZWFyY2gtZmlsdGVyKCRibG9jayk7XG5AaW5jbHVkZSBsb2FkbW9yZS5sb2FkbW9yZSgkYmxvY2spO1xuQGluY2x1ZGUgcGFnaW5hdGlvbi5wYWdpbmF0aW9uKCRibG9jayk7XG5cbi8vIFBsdWdpbi1zcGVjaWZpYyBTdHlsZXNcbi4jeyRibG9ja30ge1xuICAvLyBJbmNsdWRlIHNoYXJlZCBldmVudCBiYXNlIHN0eWxlc1xuICBAaW5jbHVkZSBldmVudC1iYXNlLmV2ZW50LWJhc2Utc3R5bGVzKCRibG9jayk7XG5cbiAgLy8gRmlsdGVyIHNlY3Rpb24gc3BlY2lmaWMgdG8gZnVsbCBldmVudCBsaXN0XG4gICZfX2ZpbHRlci1zZWN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG5cbiAgLy8gTm8gUmVzdWx0cyBNZXNzYWdlXG4gICZfX25vLXJlc3VsdHMge1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5KTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgbWFyZ2luOiAycmVtIDA7XG4gIH1cbn1cblxuLy8gRmlsdGVyIFN1Ym1pdCBCdXR0b25cbi5maWx0ZXItc3VibWl0IHtcbiAgbWluLXdpZHRoOiAxNTBweDtcblxuICBAaW5jbHVkZSBicC5icmVha3BvaW50LWRvd24oJ2xnJykge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9jb21wb25lbnRzL19sb2FkbW9yZS5zY3NzXG5AdXNlICcuLi9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5AdXNlICcuLi9nbG9iYWwvYnJlYWtwb2ludHMnIGFzIGJwO1xuXG4vKipcbiAqIFVuaXZlcnNhbCBMb2FkTW9yZSBjb21wb25lbnRcbiAqIFdvcmtzIGZvciBib3RoIEFKQVgtYmFzZWQgKHB1YmxpY2F0aW9ucykgYW5kIHNpbXBsZSBmcm9udGVuZCBzaG93L2hpZGUgKGNvbnRhY3RzKSBpbXBsZW1lbnRhdGlvbnNcbiAqL1xuQG1peGluIGxvYWRtb3JlKCRibG9jaykge1xuICAvLyBWaXN1YWwgY29uZmlndXJhdGlvblxuICAkb3V0bGluZS13aWR0aDogMnB4O1xuICAkb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgJHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICR0cmFuc2l0aW9uLWVhc2luZzogZWFzZTtcbiAgJGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAvLyBDb2xvcnNcbiAgJGxvYWRtb3JlLXByaW1hcnktY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnksIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSk7XG4gICRsb2FkbW9yZS1wcmltYXJ5LWhvdmVyLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUteWVsbG93LCBjb2xvcnMuJGNvbG9yLWpmZS15ZWxsb3cpO1xuICAkbG9hZG1vcmUtdGV4dC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUsIGNvbG9ycy4kY29sb3Itd2hpdGUpO1xuICAkbG9hZG1vcmUtZGlzYWJsZWQtYmctY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LW1lZGl1bSwgY29sb3JzLiRjb2xvci1qZmUtZ3JheS1tZWRpdW0pO1xuICAkbG9hZG1vcmUtZGlzYWJsZWQtdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAkbG9hZG1vcmUtZXJyb3ItYmctY29sb3I6IHZhcigtLWNvbG9yLWVycm9yLCBjb2xvcnMuJGNvbG9yLWVycm9yKTtcbiAgJGxvYWRtb3JlLWVycm9yLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlLCBjb2xvcnMuJGNvbG9yLXdoaXRlKTtcbiAgJGxvYWRtb3JlLWxvYWRpbmctYmctY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5KTtcblxuICAuI3skYmxvY2t9IHtcbiAgICAvLyBMb2FkTW9yZSBDb250YWluZXJcbiAgICAmX19sb2FkbW9yZS1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogM3JlbSAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC8vIExvYWRNb3JlIEJ1dHRvblxuICAgICZfX2xvYWRtb3JlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMnJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsb2FkbW9yZS1wcmltYXJ5LWNvbG9yO1xuICAgICAgY29sb3I6ICRsb2FkbW9yZS10ZXh0LWNvbG9yO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZyxcbiAgICAgICAgdHJhbnNmb3JtICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZyxcbiAgICAgICAgYm94LXNoYWRvdyAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG5cbiAgICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KC5pcy1kaXNhYmxlZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbG9hZG1vcmUtcHJpbWFyeS1ob3Zlci1jb2xvcjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDRweCA4cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgb3V0bGluZTogJG91dGxpbmUtd2lkdGggc29saWQgJGxvYWRtb3JlLXByaW1hcnktY29sb3I7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAkb3V0bGluZS1vZmZzZXQ7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpOm5vdCguaXMtZGlzYWJsZWQpIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgfVxuXG4gICAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICAgJjpkaXNhYmxlZCxcbiAgICAgICYuaXMtZGlzYWJsZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbG9hZG1vcmUtZGlzYWJsZWQtYmctY29sb3I7XG4gICAgICAgIGNvbG9yOiAkbG9hZG1vcmUtZGlzYWJsZWQtdGV4dC1jb2xvcjtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsb2FkbW9yZS1kaXNhYmxlZC1iZy1jb2xvcjtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBMb2FkaW5nIHN0YXRlIGluZGljYXRvclxuICAgICAgJi5pcy1sb2FkaW5nIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgd2lkdGg6IDEuMjVyZW07XG4gICAgICAgICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgICAgIG1hcmdpbjogLTAuNjI1cmVtIDAgMCAtMC42MjVyZW07XG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRsb2FkbW9yZS10ZXh0LWNvbG9yO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEhpZGRlbiBzdGF0ZSAoZm9yIHNpbXBsZSBsb2FkbW9yZSlcbiAgICAgICYuaXMtaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJdGVtIGNvdW50ZXIgKGZvciBzaW1wbGUgbG9hZG1vcmUpXG4gICAgJl9fbG9hZG1vcmUtY291bnRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQsIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAgICAgb3BhY2l0eTogMC43O1xuICAgIH1cblxuICAgIC8vIExvYWRpbmcgaW5kaWNhdG9yIChzZXBhcmF0ZSBlbGVtZW50KVxuICAgICZfX2xvYWRpbmcge1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsb2FkbW9yZS1sb2FkaW5nLWJnLWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBtYXJnaW46IDFyZW0gMDtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcblxuICAgICAgJi5oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAvLyBMb2FkaW5nIHNwaW5uZXJcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEVycm9yIG1lc3NhZ2VcbiAgICAmX19lcnJvciB7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxvYWRtb3JlLWVycm9yLWJnLWNvbG9yO1xuICAgICAgY29sb3I6ICRsb2FkbW9yZS1lcnJvci10ZXh0LWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBtYXJnaW46IDFyZW0gMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgJi5oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAvLyBSZXRyeSBidXR0b24gaW5zaWRlIGVycm9yIG1lc3NhZ2VcbiAgICAgIC5yZXRyeS1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICBvdXRsaW5lOiAkb3V0bGluZS13aWR0aCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICAgICAgb3V0bGluZS1vZmZzZXQ6ICRvdXRsaW5lLW9mZnNldDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZhbGxiYWNrIG1lc3NhZ2Ugd2hlbiBBSkFYIGZhaWxzIGNvbXBsZXRlbHlcbiAgICAmX19hamF4LWZhbGxiYWNrLFxuICAgICZfX2ZhbGxiYWNrLW1lc3NhZ2Uge1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsb2FkbW9yZS1sb2FkaW5nLWJnLWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBtYXJnaW46IDFyZW0gMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbiAgICAvLyBMYWJlbHMgY29udGFpbmVyIChoaWRkZW4gZGF0YSBjb250YWluZXIpXG4gICAgJl9fbG9hZG1vcmUtbGFiZWxzLFxuICAgICZfX3RlbXBsYXRlLWxhYmVscyB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtOTk5OXB4O1xuXG4gICAgICAmW2FyaWEtaGlkZGVuPVwidHJ1ZVwiXSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBLZXlmcmFtZSBhbmltYXRpb24gZm9yIGxvYWRpbmcgc3Bpbm5lclxuICBAa2V5ZnJhbWVzIHNwaW4ge1xuICAgIDAlIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBhZGp1c3RtZW50c1xuICBAaW5jbHVkZSBicC5icmVha3BvaW50LWRvd24oJ3NtJykge1xuICAgIC4jeyRibG9ja31fX2xvYWRtb3JlLWJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgfVxuXG4gICAgLiN7JGJsb2NrfV9fbG9hZG1vcmUtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICB9XG4gIH1cblxuICAvLyBSZWR1Y2VkIG1vdGlvbiBzdXBwb3J0XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLiN7JGJsb2NrfV9fbG9hZG1vcmUtYnV0dG9uIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KC5pcy1kaXNhYmxlZCkge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpOm5vdCguaXMtZGlzYWJsZWQpIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuXG4gICAgICAmLmlzLWxvYWRpbmc6OmFmdGVyIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkbG9hZG1vcmUtdGV4dC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuI3skYmxvY2t9X19sb2FkaW5nOjpiZWZvcmUge1xuICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgY3VycmVudENvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIHNwaW4ge1xuICAgICAgMCUsIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIaWdoIGNvbnRyYXN0IG1vZGUgc3VwcG9ydFxuICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgIC4jeyRibG9ja31fX2xvYWRtb3JlLWJ1dHRvbiB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG5cbiAgICAgICY6ZGlzYWJsZWQsXG4gICAgICAmLmlzLWRpc2FibGVkIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBHcmF5VGV4dDtcbiAgICAgICAgY29sb3I6IEdyYXlUZXh0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC4jeyRibG9ja31fX2xvYWRpbmcsXG4gICAgLiN7JGJsb2NrfV9fZXJyb3IsXG4gICAgLiN7JGJsb2NrfV9fYWpheC1mYWxsYmFjayxcbiAgICAuI3skYmxvY2t9X19mYWxsYmFjay1tZXNzYWdlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBQcmludCBzdHlsZXNcbiAgQG1lZGlhIHByaW50IHtcbiAgICAuI3skYmxvY2t9X19sb2FkbW9yZS1jb250YWluZXIsXG4gICAgLiN7JGJsb2NrfV9fbG9hZGluZyxcbiAgICAuI3skYmxvY2t9X19lcnJvciB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3NcbkB1c2UgJy4uL2dsb2JhbC9jb2xvcnMnIGFzIGNvbG9ycztcbkB1c2UgJy4uL2dsb2JhbC9icmVha3BvaW50cycgYXMgYnA7XG5cbi8qKlxuICogVW5pdmVyc2FsIHBhZ2luYXRpb24gY29tcG9uZW50IG1peGluXG4gKiBQcm92aWRlcyBjb21wbGV0ZSBzdHlsaW5nIGZvciBwYWdpbmF0ZWQgY29udGVudCBuYXZpZ2F0aW9uXG4gKi9cbkBtaXhpbiBwYWdpbmF0aW9uKCRibG9jaykge1xuICAvLyBWaXN1YWwgY29uZmlndXJhdGlvblxuICAkb3V0bGluZS13aWR0aDogMnB4O1xuICAkb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgJHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICR0cmFuc2l0aW9uLWVhc2luZzogZWFzZTtcbiAgJGJvcmRlci1yYWRpdXM6IDA7XG4gICRib3JkZXItd2lkdGg6IDNweDtcbiAgJG1pbi10b3VjaC1zaXplOiA0NHB4OyAvLyBNaW5pbXVtIHRvdWNoIHRhcmdldCBzaXplIGZvciBhY2Nlc3NpYmlsaXR5XG4gICRsaW5rLXVuZGVybGluZTogbm9uZTsgLy8gTm8gdW5kZXJsaW5lIGZvciBsaW5rcyBieSBkZWZhdWx0XG5cbiAgLy8gQ29sb3JzIC0gdXNpbmcgQ1NTIHZhcmlhYmxlcyBmb3IgdGhlbWUgZmxleGliaWxpdHlcbiAgJHBhZ2luYXRpb24tcHJpbWFyeS1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgJHBhZ2luYXRpb24tc2Vjb25kYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnksIGNvbG9ycy4kY29sb3ItamZlLXllbGxvdyk7XG4gICRwYWdpbmF0aW9uLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgJHBhZ2luYXRpb24tYmctY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlLCBjb2xvcnMuJGNvbG9yLXdoaXRlKTtcbiAgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICRwYWdpbmF0aW9uLWhvdmVyLWJnLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LWRhcmssIGNvbG9ycy4kY29sb3ItamZlLWdyYXktZGFyayk7XG4gICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUtYWxtb3N0LXdoaXRlLCBjb2xvcnMuJGNvbG9yLWpmZS1hbG1vc3Qtd2hpdGUpO1xuICAkcGFnaW5hdGlvbi1jdXJyZW50LWJnLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnksIGNvbG9ycy4kY29sb3ItamZlLXllbGxvdyk7XG4gICRwYWdpbmF0aW9uLWN1cnJlbnQtdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuXG4gIC4jeyRibG9ja30ge1xuICAgIC8vIE1haW4gcGFnaW5hdGlvbiBjb250YWluZXJcbiAgICAmX19wYWdpbmF0aW9uIHtcbiAgICAgIG1hcmdpbjogMnJlbSAwO1xuXG4gICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdsZycpIHtcbiAgICAgICAgbWFyZ2luOiAzcmVtIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUGFnaW5hdGlvbiB3cmFwcGVyXG4gICAgJl9fcGFnaW5hdGlvbi1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gUGFnaW5hdGlvbiBsaXN0XG4gICAgdWwuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpc3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGdhcDogMC4yNXJlbTtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludCgnc20nKSB7XG4gICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEluZGl2aWR1YWwgcGFnaW5hdGlvbiBpdGVtc1xuICAgIGxpLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1pdGVtIHtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICAgIC8vIFBhZ2UgbnVtYmVyIGl0ZW1zXG4gICAgICAmLS1wYWdlIHtcbiAgICAgICAgLy8gRGVmYXVsdCBzdHlsaW5nIGhhbmRsZWQgYnkgcGFnaW5hdGlvbi1saW5rXG4gICAgICB9XG5cbiAgICAgIC8vIEN1cnJlbnQgcGFnZSBpdGVtXG4gICAgICAmLS1jdXJyZW50IHtcbiAgICAgICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1jdXJyZW50LWJnLWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1jdXJyZW50LXRleHQtY29sb3I7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1jdXJyZW50LWJnLWNvbG9yO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtYmctY29sb3I7XG4gICAgICAgICAgICBjb2xvcjogJHBhZ2luYXRpb24tY3VycmVudC10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBQcmV2aW91cy9OZXh0IGl0ZW1zXG4gICAgICAmLS1wcmV2aW91cyxcbiAgICAgICYtLW5leHQge1xuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbmsge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBnYXA6IDAuMjVyZW07XG4gICAgICAgICAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG5cbiAgICAgICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdzbScpIHtcbiAgICAgICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBEaXNhYmxlZCBzdGF0ZSBmb3IgcHJldmlvdXMvbmV4dFxuICAgICAgJi0tZGlzYWJsZWQge1xuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbmsge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnLWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnLWNvbG9yO1xuICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnLWNvbG9yO1xuICAgICAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBhZ2luYXRpb24gbGlua3MgKGJvdGggPGE+IGFuZCA8c3Bhbj4gZWxlbWVudHMpXG4gICAgYS4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluayxcbiAgICBzcGFuLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtaW4td2lkdGg6ICRtaW4tdG91Y2gtc2l6ZTtcbiAgICAgIG1pbi1oZWlnaHQ6ICRtaW4tdG91Y2gtc2l6ZTtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnLWNvbG9yO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLXRleHQtY29sb3I7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay11bmRlcmxpbmU7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZyxcbiAgICAgICAgY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICBib3JkZXItY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICBib3gtc2hhZG93ICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcblxuICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludCgnc20nKSB7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLy8gSG92ZXIgYW5kIGZvY3VzIHN0YXRlcyBmb3IgaW50ZXJhY3RpdmUgbGlua3NcbiAgICAgICY6aG92ZXI6bm90KCYtLWRpc2FibGVkKTpub3QoJi0tY3VycmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZy1jb2xvcjtcbiAgICAgICAgYm9yZGVyOiAgICRib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIG91dGxpbmU6ICRvdXRsaW5lLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLXByaW1hcnktY29sb3I7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAkb3V0bGluZS1vZmZzZXQ7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlOm5vdCgmLS1kaXNhYmxlZCk6bm90KCYtLWN1cnJlbnQpIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgfVxuXG4gICAgICAvLyBDdXJyZW50IHBhZ2Ugc3R5bGluZyAoc3BhbiBlbGVtZW50KVxuICAgICAgJi0tY3VycmVudCB7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tY3VycmVudC1iZy1jb2xvcjtcbiAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtdGV4dC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1jdXJyZW50LWJnLWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgfVxuXG4gICAgICAvLyBEaXNhYmxlZCBzdGF0ZSBzdHlsaW5nXG4gICAgICAmLS1kaXNhYmxlZCB7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnLWNvbG9yO1xuICAgICAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmctY29sb3I7XG4gICAgICB9XG5cbiAgICAgIC8vIFByZXZpb3VzIGxpbmsgc3BlY2lmaWMgc3R5bGluZ1xuICAgICAgJi0tcHJldmlvdXMge1xuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLXRleHQge1xuICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1pY29uIHtcbiAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBOZXh0IGxpbmsgc3BlY2lmaWMgc3R5bGluZ1xuICAgICAgJi0tbmV4dCB7XG4gICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tdGV4dCB7XG4gICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWljb24ge1xuICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUGFnZSBudW1iZXIgZGlzcGxheVxuICAgICZfX3BhZ2luYXRpb24tbnVtYmVyIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8vIE5hdmlnYXRpb24gdGV4dCAoUHJldmlvdXMvTmV4dClcbiAgICAmX19wYWdpbmF0aW9uLXRleHQge1xuICAgICAgICAvLyBTUiBvbmx5IGZvciBzY3JlZW4gcmVhZGVyc1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IC0xcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICB9XG5cbiAgICAvLyBOYXZpZ2F0aW9uIGljb25zXG4gICAgJl9fcGFnaW5hdGlvbi1pY29uIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgIC8vIEVsbGlwc2lzIGl0ZW1cbiAgICAmX19wYWdpbmF0aW9uLWl0ZW0tLWVsbGlwc2lzIHtcbiAgICAgICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rLS1lbGxpcHNpcyB7XG4gICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciBvbmx5IGNvbnRlbnRcbiAgLnNyLW9ubHkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbiAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludC1kb3duKCdzbScpIHtcbiAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgfVxuXG4gICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saXN0IHtcbiAgICAgIGdhcDogMC4xMjVyZW07XG4gICAgfVxuXG4gICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rIHtcbiAgICAgIG1pbi13aWR0aDogNDBweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgICBwYWRkaW5nOiAwLjM3NXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgfVxuICB9XG5cbiAgLy8gUHJpbnQgc3R5bGVzXG4gIEBtZWRpYSBwcmludCB7XG4gICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbiB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVkdWNlZCBtb3Rpb24gc3VwcG9ydFxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluayB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyOm5vdCgmLS1kaXNhYmxlZCk6bm90KCYtLWN1cnJlbnQpIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOmFjdGl2ZTpub3QoJi0tZGlzYWJsZWQpOm5vdCgmLS1jdXJyZW50KSB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIaWdoIGNvbnRyYXN0IG1vZGUgc3VwcG9ydFxuICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluayB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG5cbiAgICAgICYtLWN1cnJlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBIaWdobGlnaHQ7XG4gICAgICAgIGNvbG9yOiBIaWdobGlnaHRUZXh0O1xuICAgICAgICBib3JkZXItY29sb3I6IEhpZ2hsaWdodDtcbiAgICAgIH1cblxuICAgICAgJi0tZGlzYWJsZWQge1xuICAgICAgICBib3JkZXItY29sb3I6IEdyYXlUZXh0O1xuICAgICAgICBjb2xvcjogR3JheVRleHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gRm9jdXMgbWFuYWdlbWVudCBmb3Iga2V5Ym9hcmQgbmF2aWdhdGlvblxuICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbms6Zm9jdXMge1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9jb21wb25lbnRzL19jb3B5cmlnaHQuc2Nzc1xuQHVzZSAnLi4vZ2xvYmFsL2NvbG9ycycgYXMgY29sb3JzO1xuQHVzZSAnLi4vZ2xvYmFsL2JyZWFrcG9pbnRzJyBhcyBicDtcblxuLyoqXG4gKiBSZXVzYWJsZSBjb3B5cmlnaHQgb3ZlcmxheSBjb21wb25lbnRcbiAqXG4gKiBVc2FnZTpcbiAqIDxkaXYgY2xhc3M9XCJjb3B5cmlnaHRcIj7CqSAyMDI0IFBob3RvZ3JhcGhlciBOYW1lPC9kaXY+XG4gKiA8ZGl2IGNsYXNzPVwiY29weXJpZ2h0IGNvcHlyaWdodC0tdG9wLWxlZnRcIj7CqSAyMDI0IFBob3RvZ3JhcGhlciBOYW1lPC9kaXY+XG4gKiA8ZGl2IGNsYXNzPVwiY29weXJpZ2h0IGNvcHlyaWdodC0tbWFzb25yeVwiPsKpIDIwMjQgUGhvdG9ncmFwaGVyIE5hbWU8L2Rpdj5cbiAqL1xuXG4vLyBCbG9jayBuYW1lXG4kYmxvY2s6ICdjb3B5cmlnaHQnO1xuXG4vLyBDb25maWd1cmF0aW9uIHZhcmlhYmxlc1xuJGNvcHlyaWdodC1iZy1jb2xvcjogY29sb3JzLiRjb2xvci1vdmVybGF5LW1kICFkZWZhdWx0O1xuJGNvcHlyaWdodC10ZXh0LWNvbG9yOiBjb2xvcnMuJGNvbG9yLXdoaXRlICFkZWZhdWx0O1xuJGNvcHlyaWdodC1mb250LXNpemU6IDAuNzVyZW0gIWRlZmF1bHQ7XG4kY29weXJpZ2h0LXBhZGRpbmcteTogMnB4ICFkZWZhdWx0O1xuJGNvcHlyaWdodC1wYWRkaW5nLXg6IDZweCAhZGVmYXVsdDtcbiRjb3B5cmlnaHQtYm9yZGVyLXJhZGl1czogMnB4ICFkZWZhdWx0O1xuJGNvcHlyaWdodC1zcGFjaW5nOiA4cHggIWRlZmF1bHQ7XG5cblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ29weXJpZ2h0IENvbXBvbmVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi4jeyRibG9ja30ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29weXJpZ2h0LWJnLWNvbG9yO1xuICAgIGNvbG9yOiAkY29weXJpZ2h0LXRleHQtY29sb3I7XG4gICAgcGFkZGluZzogJGNvcHlyaWdodC1wYWRkaW5nLXkgJGNvcHlyaWdodC1wYWRkaW5nLXg7XG4gICAgZm9udC1zaXplOiAkY29weXJpZ2h0LWZvbnQtc2l6ZTtcbiAgICBib3JkZXItcmFkaXVzOiAkY29weXJpZ2h0LWJvcmRlci1yYWRpdXM7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gRG9uJ3QgaW50ZXJmZXJlIHdpdGggY2xpY2tzIG9uIHBhcmVudFxuICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgLy8gRGVmYXVsdCBwb3NpdGlvbjogYm90dG9tLXJpZ2h0XG4gICAgYm90dG9tOiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgcmlnaHQ6ICRjb3B5cmlnaHQtc3BhY2luZztcblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gUG9zaXRpb24gbW9kaWZpZXJzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIFRvcC1yaWdodCBwb3NpdGlvblxuICAgICYtLXRvcC1yaWdodCB7XG4gICAgICAgIHRvcDogJGNvcHlyaWdodC1zcGFjaW5nO1xuICAgICAgICByaWdodDogJGNvcHlyaWdodC1zcGFjaW5nO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgfVxuXG4gICAgLy8gVG9wLWxlZnQgcG9zaXRpb25cbiAgICAmLS10b3AtbGVmdCB7XG4gICAgICAgIHRvcDogJGNvcHlyaWdodC1zcGFjaW5nO1xuICAgICAgICBsZWZ0OiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgfVxuXG4gICAgLy8gQm90dG9tLWxlZnQgcG9zaXRpb25cbiAgICAmLS1ib3R0b20tbGVmdCB7XG4gICAgICAgIGJvdHRvbTogJGNvcHlyaWdodC1zcGFjaW5nO1xuICAgICAgICBsZWZ0OiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC8vIEVkZ2UgcG9zaXRpb24gKG5vIHNwYWNpbmcsIG5vIGJvcmRlci1yYWRpdXMpIC0gc2hhcmVkIGJhc2VcbiAgICAmLS1lZGdlLFxuICAgICYtLW1hc29ucnksXG4gICAgJi0tY29sbGFnZSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICAgIC8vIE1vZGFsL0xpZ2h0Ym94IHBvc2l0aW9uIChvdXRzaWRlIGltYWdlLCBhYm92ZSlcbiAgICAmLS1tb2RhbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogLTIycHg7XG4gICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludCgnbWQnKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICB0b3A6IC0zMnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBTdHlsZSBtb2RpZmllcnNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gTGlnaHQgYmFja2dyb3VuZCB2YXJpYW50XG4gICAgJi0tbGlnaHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGNvbG9ycy4kY29sb3Itd2hpdGUsIDAuOSk7XG4gICAgICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLWJsYWNrO1xuICAgIH1cblxuICAgIC8vIERhcmsgYmFja2dyb3VuZCB2YXJpYW50IChtb3JlIG9wYXF1ZSlcbiAgICAmLS1kYXJrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShjb2xvcnMuJGNvbG9yLWJsYWNrLCAwLjgpO1xuICAgICAgICBjb2xvcjogY29sb3JzLiRjb2xvci13aGl0ZTtcbiAgICB9XG5cbiAgICAvLyBUcmFuc3BhcmVudCB2YXJpYW50IChzdWJ0bGUpXG4gICAgJi0tdHJhbnNwYXJlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCA0cHggcmdiYShjb2xvcnMuJGNvbG9yLWJsYWNrLCAwLjgpO1xuICAgIH1cblxuICAgIC8vIExhcmdlciB0ZXh0IHNpemVcbiAgICAmLS1sYXJnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIHBhZGRpbmc6IDRweCA4cHg7XG4gICAgfVxuXG4gICAgLy8gSGlkZGVuIG9uIHNtYWxsIHNjcmVlbnNcbiAgICAmLS1oaWRlLW1vYmlsZSB7XG4gICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQtZG93bignc20nKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2hvdyBvbmx5IG9uIGhvdmVyIChyZXF1aXJlcyBwYXJlbnQgdG8gaGF2ZSBob3ZlciBzdGF0ZSlcbiAgICAmLS1ob3Zlci1zaG93IHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG5cbiAgICAgICAgKjpob3ZlciA+ICYsXG4gICAgICAgICo6Zm9jdXMtd2l0aGluID4gJiB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gYXNzZXRzL3Njc3MvX2NvbG9ycy5zY3NzXG5cbi8vIEJhc2UgY29sb3JzIGZyb20gZGVzaWduIGRvY3VtZW50XG4kY29sb3ItamZlLWxpZ2h0Ymx1ZTogIzAwOWRkZjsgICAgICAgICAgLy8gSkZFIGxpZ2h0IGJsdWVcbiRjb2xvci1qZmUteWVsbG93OiAjZmZjYzAwOyAgICAgICAgICAgICAvLyBKRkUgeWVsbG93XG4kY29sb3ItamZlLWFsbW9zdC13aGl0ZTogI2ZhZmFmYTsgICAgICAgIC8vIEpGRSBhbG1vc3Qgd2hpdGUgKGJhY2tncm91bmQgb3B0aW9uKVxuJGNvbG9yLWpmZS1ncmF5OiAjZjNmM2YyOyAgICAgICAgICAgICAgIC8vIEpGRSBncmF5IChiYWNrZ3JvdW5kIG9wdGlvbilcbiRjb2xvci1qZmUtZ3JheS1tZWRpdW06ICNDRkNGQ0Y7ICAgICAgICAvLyBKRkUgbWVkaXVtIGdyYXkgKGZvciBib3JkZXJzIGV0Yy4pXG4kY29sb3ItamZlLWdyYXktZGFyazogcmdiYSgxODksIDE4OSwgMTg5LCAxKTsgLy8gSkZFIGRhcmsgZ3JheSAoZm9yIGRhcmtlciBib3JkZXJzIGV0Yy4pXG4kY29sb3ItamZlLWdyYXktZGFya2VyOnJnYmEoMTA1LCAxMDUsIDEwNSwgMSk7IC8vIEpGRSBkYXJrZXIgZ3JheSAoRm9ybSBkZXNjcmlwdGlvbiB0ZXh0IGV0Yy4pXG4vLyBQcm9ncmFtIHNwZWNpZmljIGNvbG9yc1xuJGNvbG9yLWUtanVnZW5kLWJsdWU6ICMwMDMzOTk7ICAgICAgICAgIC8vIEVyYXNtdXMrIFlvdXRoIGJsdWVcbiRjb2xvci1lc2stbWFnZW50YTogI2U1MDA2YzsgICAgICAgICAgICAvLyBFU0MgbWFnZW50YVxuJGNvbG9yLWUtc3BvcnQtb3JhbmdlOiAjZTM1MzBmOyAgICAgICAgIC8vIEVyYXNtdXMrIFNwb3J0IG9yYW5nZVxuXG4vLyBVdGlsaXR5IGNvbG9yc1xuJGNvbG9yLXdoaXRlOiAjZmZmZmZmOyAgICAgICAgICAgICAgLy8gV2hpdGUgY29sb3IgZm9yIGJhY2tncm91bmRzXG4kY29sb3ItYmxhY2s6ICMwMDAwMDA7ICAgICAgICAgICAgICAvLyBCbGFjayBjb2xvciBmb3IgdGV4dFxuJGNvbG9yLW92ZXJsYXktc206IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiRjb2xvci1vdmVybGF5LW1kOiByZ2JhKDAsIDAsIDAsIDAuNjUpO1xuJGNvbG9yLW92ZXJsYXktbGc6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG5cbi8vIFNlY29uZGFyeSBhbmQgZGVyaXZlZCBjb2xvcnNcbiRjb2xvci1qZmUteWVsbG93LWhvdmVyOiAjRUJCQzAwOyAgICAgICAvLyBIb3ZlciBzdGF0ZSBmb3IgSkZFIHllbGxvd1xuJGNvbG9yLWUtanVnZW5kLWhvdmVyOiAjMDAyYjgwOyAgICAgICAgIC8vIEhvdmVyIHN0YXRlIGZvciBFcmFzbXVzKyBZb3V0aCBibHVlXG4kY29sb3ItZXNrLWhvdmVyOiAjZDAwMDYyOyAgICAgICAgICAgICAgLy8gSG92ZXIgc3RhdGUgZm9yIEVTQyBtYWdlbnRhXG4kY29sb3ItZS1zcG9ydC1ob3ZlcjogI2M5NDkwZDsgICAgICAgICAgLy8gSG92ZXIgc3RhdGUgZm9yIEVyYXNtdXMrIFNwb3J0IG9yYW5nZVxuXG4vLyBFcnJvciBhbmQgd2FybmluZyBjb2xvcnNcbiRjb2xvci1lcnJvcjogI2RmMDAwMDsgICAgICAgICAgICAgICAgLy8gRXJyb3IgY29sb3IgKHJlZClcbiRjb2xvci1lcnJvci1iZzogI2RmMDAwMDFhOyAgICAgICAgICAgICAvLyBFcnJvciBiYWNrZ3JvdW5kIGNvbG9yIChsaWdodCByZWQpXG4kY29sb3Itd2FybmluZzogI2ZmYjMwMDsgICAgICAgICAgICAgIC8vIFdhcm5pbmcgY29sb3IgKHllbGxvdylcbiRjb2xvci13YXJuaW5nLWJnOiAjZmZiMzAwMWE7ICAgICAgICAgIC8vIFdhcm5pbmcgYmFja2dyb3VuZCBjb2xvciAobGlnaHQgeWVsbG93KVxuJGNvbG9yLXN1Y2Nlc3M6ICM5NWRmMDA7ICAgICAgICAgICAgICAvLyBTdWNjZXNzIGNvbG9yIChncmVlbilcbiRjb2xvci1zdWNjZXNzLWJnOiAjOTVkZjAwMWE7ICAgICAgICAgIC8vIFN1Y2Nlc3MgYmFja2dyb3VuZCBjb2xvciAobGlnaHQgZ3JlZW4pXG5cbi8vIENvbnNlbnQgb3ZlcmxheSBjb2xvcnMgKHR3by1jbGljayBzb2x1dGlvbiBmb3IgZXh0ZXJuYWwgY29udGVudClcbiRjb2xvci1jb25zZW50LW92ZXJsYXktYmc6ICMwMDlkZGY7XG4kY29sb3ItY29uc2VudC1vdmVybGF5LXRleHQ6ICNmZmZmZmY7XG4iLCIvLyBBVVRPLUdFTkVSQVRFRCBGSUxFIGZyb20gYnVpbGQtYnJlYWtwb2ludHMuanNcbi8vIERPIE5PVCBFRElUIERJUkVDVExZXG5cbi8vIEltcG9ydCBTYXNzIG1hcCBtb2R1bGVcbkB1c2UgXCJzYXNzOm1hcFwiO1xuXG4vLyBCcmVha3BvaW50IHZhbHVlc1xuJGJyZWFrcG9pbnQtc206IDY0MHB4O1xuJGJyZWFrcG9pbnQtbWQ6IDc2OHB4O1xuJGJyZWFrcG9pbnQtbGc6IDEwMjRweDtcbiRicmVha3BvaW50LXhsOiAxMjgwcHg7XG4kYnJlYWtwb2ludC0yeGw6IDE2NjRweDtcblxuLy8gTWFwIGZvciBwcm9ncmFtbWF0aWMgYWNjZXNzXG4kYnJlYWtwb2ludHM6IChcbiAgJ3NtJzogJGJyZWFrcG9pbnQtc20sXG4gICdtZCc6ICRicmVha3BvaW50LW1kLFxuICAnbGcnOiAkYnJlYWtwb2ludC1sZyxcbiAgJ3hsJzogJGJyZWFrcG9pbnQteGwsXG4gICcyeGwnOiAkYnJlYWtwb2ludC0yeGxcbik7XG5cbi8vIE1peGluIGZvciBlYXN5IG1lZGlhIHF1ZXJpZXMgYmFzZWQgb24gZGVmaW5lZCBicmVha3BvaW50c1xuQG1peGluIGJyZWFrcG9pbnQoJHBvaW50KSB7XG4gIEBpZiBtYXAuaGFzLWtleSgkYnJlYWtwb2ludHMsICRwb2ludCkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJHBvaW50KSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcIkJyZWFrcG9pbnQgJyN7JHBvaW50fScgaXMgbm90IGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzIG1hcC5cIjtcbiAgfVxufVxuXG4vLyBNaXhpbiBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXMgKHNtYWxsZXIgdGhhbiBhIGJyZWFrcG9pbnQpXG5AbWl4aW4gYnJlYWtwb2ludC1kb3duKCRwb2ludCkge1xuICBAaWYgbWFwLmhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkcG9pbnQpIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogbWFwLmdldCgkYnJlYWtwb2ludHMsICRwb2ludCkgLSAxcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJCcmVha3BvaW50ICcjeyRwb2ludH0nIGlzIG5vdCBkZWZpbmVkIGluICRicmVha3BvaW50cyBtYXAuXCI7XG4gIH1cbn1cblxuLy8gTWl4aW4gZm9yIGNyZWF0aW5nIHN0eWxlcyBiZXR3ZWVuIHR3byBicmVha3BvaW50c1xuQG1peGluIGJyZWFrcG9pbnQtYmV0d2VlbigkbWluLCAkbWF4KSB7XG4gIEBpZiBtYXAuaGFzLWtleSgkYnJlYWtwb2ludHMsICRtaW4pIGFuZCBtYXAuaGFzLWtleSgkYnJlYWtwb2ludHMsICRtYXgpIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLmdldCgkYnJlYWtwb2ludHMsICRtaW4pKSBhbmQgKG1heC13aWR0aDogbWFwLmdldCgkYnJlYWtwb2ludHMsICRtYXgpIC0gMXB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiQnJlYWtwb2ludCAnI3skbWlufScgb3IgJyN7JG1heH0nIGlzIG5vdCBkZWZpbmVkIGluICRicmVha3BvaW50cyBtYXAuXCI7XG4gIH1cbn1cbiIsIi8vIGFzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2V2ZW50LWJhc2UtbGlzdC5zY3NzXG4vLyBCYXNlIHN0eWxlcyBmb3IgZXZlbnQgbGlzdCBjb21wb25lbnRzIC0gc2hhcmVkIGJldHdlZW4gcHJldmlldyBhbmQgZnVsbCBsaXN0XG5AdXNlICcuLi9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5AdXNlICcuLi9nbG9iYWwvYnJlYWtwb2ludHMnIGFzIGJwO1xuQHVzZSAnLi4vY29tcG9uZW50cy9jb3B5cmlnaHQnO1xuXG4vKipcbiAqIEJhc2UgZXZlbnQgaXRlbSBzdHlsZXMgbWl4aW5cbiAqIENvbnRhaW5zIGNvbW1vbiBzdHlsZXMgZm9yIGV2ZW50IGl0ZW1zIHVzZWQgaW4gYm90aCBwcmV2aWV3IGFuZCBmdWxsIGxpc3RcbiAqIEBwYXJhbSB7c3RyaW5nfSAkYmxvY2sgLSBUaGUgQkVNIGJsb2NrIGNsYXNzIG5hbWVcbiAqL1xuQG1peGluIGV2ZW50LWJhc2Utc3R5bGVzKCRibG9jaykge1xuICAvLyBIaWdobGlnaHQgYXJyb3cgaWNvbiBzdHlsaW5nXG4gIC4jeyRibG9ja31fX2hpZ2hsaWdodC1hcnJvdy1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS15ZWxsb3cpO1xuICB9XG5cbiAgLy8gSGlnaGxpZ2h0IGxpbmsgaG92ZXIgYW5kIGZvY3VzIHN0YXRlc1xuICAuI3skYmxvY2t9X19oaWdobGlnaHQtbGluazpob3ZlcixcbiAgLiN7JGJsb2NrfV9faGlnaGxpZ2h0LWxpbms6Zm9jdXMge1xuICAgIC4jeyRibG9ja31fX2hpZ2hsaWdodC1hcnJvdy1pY29uIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgfVxuICB9XG5cbiAgLy8gRXZlbnQgaXRlbSBtZXRhIHN0eWxpbmdcbiAgLiN7JGJsb2NrfV9fZXZlbnQtaXRlbS1tZXRhIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ2xnJykge1xuICAgICAgd2lkdGg6IDE4MHB4O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRibG9ja31fX2hpZ2hsaWdodC10ZXh0LWNvbnRlbnQtd3JhcHBlcjpub3QoLmJnLWpmZS1ncmF5LC5iZy1wYXBlci10ZXh0dXJlKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUsIGNvbG9ycy4kY29sb3Itd2hpdGUpO1xuICB9XG5cbiAgLy8gRXZlbnQgaGVhZGxpbmUgc3R5bGluZyB3aXRoIGNvbG9yIHZhcmlhbnRzXG4gIGgyLiN7JGJsb2NrfV9fZXZlbnQtaXRlbS1oZWFkbGluZSxcbiAgaDMuI3skYmxvY2t9X19ldmVudC1pdGVtLWhlYWRsaW5lIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcblxuICAgIC8vIEJyYW5kIGNvbG9yIHZhcmlhbnRzXG4gICAgJi50ZXh0LWUtanVnZW5kLWJsdWUge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWUtanVnZW5kLWJsdWUsIGNvbG9ycy4kY29sb3ItZS1qdWdlbmQtYmx1ZSk7XG4gICAgfVxuXG4gICAgJi50ZXh0LWUtc3BvcnQtb3JhbmdlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lLXNwb3J0LW9yYW5nZSwgY29sb3JzLiRjb2xvci1lLXNwb3J0LW9yYW5nZSk7XG4gICAgfVxuXG4gICAgJi50ZXh0LWVzay1tYWdlbnRhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lc2stbWFnZW50YSwgY29sb3JzLiRjb2xvci1lc2stbWFnZW50YSk7XG4gICAgfVxuXG4gICAgJi50ZXh0LWpmZS1saWdodGJsdWUge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWpmZS1saWdodGJsdWUsIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRXZlbnQgbGluayBzdHlsaW5nIHdpdGggaG92ZXIgYW5kIGZvY3VzIHN0YXRlc1xuICAuI3skYmxvY2t9X19ldmVudC1pdGVtLWxpbmsge1xuICAgICY6aG92ZXIge1xuICAgICAgaDIuI3skYmxvY2t9X19ldmVudC1pdGVtLWhlYWRsaW5lLFxuICAgICAgaDMuI3skYmxvY2t9X19ldmVudC1pdGVtLWhlYWRsaW5lIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgICBoMi4jeyRibG9ja31fX2V2ZW50LWl0ZW0taGVhZGxpbmUsXG4gICAgICBoMy4jeyRibG9ja31fX2V2ZW50LWl0ZW0taGVhZGxpbmUge1xuICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBORVc6IEV2ZW50IHR5cGUvY2F0ZWdvcnkgYmFkZ2Ugc3R5bGluZ1xuICAuI3skYmxvY2t9X19ldmVudC1pdGVtLXR5cGUsXG4gIC4jeyRibG9ja31fX2V2ZW50LWl0ZW0tY2F0ZWdvcnktbmFtZSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gIC8vIE5FVzogVGltZSBpbmZvcm1hdGlvbiBzdHlsaW5nXG4gIC4jeyRibG9ja31fX2V2ZW50LWl0ZW0tdGltZSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9jb21wb25lbnRzL19maWx0ZXItZHJvcGRvd24uc2Nzc1xuQHVzZSAnLi4vZ2xvYmFsL2NvbG9ycycgYXMgY29sb3JzO1xuQHVzZSAnLi4vZ2xvYmFsL2JyZWFrcG9pbnRzJyBhcyBicDtcblxuLy8gTWl4aW5zIGZvciB0aGUgZmlsdGVyIGRyb3Bkb3duXG5AbWl4aW4gZmlsdGVyLWRyb3Bkb3duKCRibG9jaykge1xuICAvLyBWaXN1YWwgY29uZmlndXJhdGlvblxuICAkb3V0bGluZS13aWR0aDogMnB4O1xuICAkb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgJHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICR0cmFuc2l0aW9uLWVhc2luZzogZWFzZTtcbiAgJGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgLy8gQ29sb3JzIC0gdXNpbmcgQ1NTIHZhcmlhYmxlcyB0byByZXNwZWN0IHNpdGUtc3BlY2lmaWMgdGhlbWVzXG4gICRmaWx0ZXItcHJpbWFyeS1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgJGZpbHRlci1zZWNvbmRhcnktY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSwgY29sb3JzLiRjb2xvci1qZmUteWVsbG93KTtcbiAgJGZpbHRlci10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICRmaWx0ZXItYmctY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlLCBjb2xvcnMuJGNvbG9yLXdoaXRlKTtcbiAgJGZpbHRlci1ib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgJGZpbHRlci1ob3Zlci1iZy1jb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXksIGNvbG9ycy4kY29sb3ItamZlLWdyYXkpO1xuICAkZmlsdGVyLWFjdGl2ZS1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgJGZpbHRlci1zZWxlY3RlZC1iZzogdmFyKC0tY29sb3ItamZlLWdyYXksIGNvbG9ycy4kY29sb3ItamZlLWdyYXkpO1xuICAkZmlsdGVyLXNlbGVjdGVkLWJvcmRlcjogdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcblxuICAuI3skYmxvY2t9IHtcbiAgICAmX19jYXRlZ29yeS1maWx0ZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gU3R5bGVzXG4gICAgJl9fZHJvcGRvd24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWluLXdpZHRoOiAyNDBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludCgnbWQnKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIERyb3Bkb3duIHRvZ2dsZSBidXR0b25cbiAgICAgICYtdG9nZ2xlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlsdGVyLWJnLWNvbG9yO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGZpbHRlci1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGNvbG9yOiAkZmlsdGVyLXRleHQtY29sb3I7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgYm9yZGVyLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZyxcbiAgICAgICAgICBib3gtc2hhZG93ICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRmaWx0ZXItYWN0aXZlLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICBvdXRsaW5lOiAkb3V0bGluZS13aWR0aCBzb2xpZCAkZmlsdGVyLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICBvdXRsaW5lLW9mZnNldDogJG91dGxpbmUtb2Zmc2V0O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRXhwYW5kZWQgc3RhdGVcbiAgICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZmlsdGVyLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuXG4gICAgICAgICAgLiN7JGJsb2NrfV9fZHJvcGRvd24taWNvbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaGFzLXNlbGVjdGlvbnMge1xuICAgICAgICAgIC4jeyRibG9ja31fX2Ryb3Bkb3duLWxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIExhYmVsIGluc2lkZSBkcm9wZG93biB0b2dnbGVcbiAgICAgICYtbGFiZWwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICB9XG5cbiAgICAgIC8vIERyb3Bkb3duIGFycm93IGljb25cbiAgICAgICYtaWNvbiB7XG4gICAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBEcm9wZG93biBtZW51XG4gICAgICAmLW1lbnUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIC8vIFBvc2l0aW9uIHRoZSBkcm9wZG93biBtZW51IGRpcmVjdGx5IGJlbG93IGl0cyB0cmlnZ2VyIGVsZW1lbnRcbiAgICAgICAgdG9wOiBjYWxjKDEwMCUgLSAxcHgpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogMzAwcHg7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItYmctY29sb3I7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRmaWx0ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItdG9wOiAzcHggc29saWQgJGZpbHRlci1wcmltYXJ5LWNvbG9yO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgYm94LXNoYWRvdzogMCA0cHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcblxuICAgICAgICAvLyBIaWRkZW4gc3RhdGUgKGhhbmRsZWQgYnkgSlMpXG4gICAgICAgICZbaGlkZGVuXSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCd4bCcpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNjRweCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gSW5kaXZpZHVhbCBkcm9wZG93biBvcHRpb25cbiAgICAgICYtb3B0aW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpbHRlci1wcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkZmlsdGVyLWJnLWNvbG9yO1xuICAgICAgICAgIC4jeyRibG9ja31fX29wdGlvbi1jaGVja2JveCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRmaWx0ZXItYmctY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlsdGVyLXByaW1hcnktY29sb3I7XG4gICAgICAgICAgY29sb3I6ICRmaWx0ZXItYmctY29sb3I7XG4gICAgICAgICAgLiN7JGJsb2NrfV9fb3B0aW9uLWNoZWNrYm94IHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGZpbHRlci1iZy1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTZWxlY3RlZCBzdGF0ZVxuICAgICAgICAmW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlsdGVyLXNlbGVjdGVkLWJnO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgJGZpbHRlci1zZWxlY3RlZC1ib3JkZXI7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDFyZW0gLSAzcHgpO1xuXG4gICAgICAgICAgLiN7JGJsb2NrfV9fb3B0aW9uLWNoZWNrYm94IHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGZpbHRlci1hY3RpdmUtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlsdGVyLWJnLWNvbG9yO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmOmZvY3VzLCAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGNvbG9yOiAkZmlsdGVyLWJnLWNvbG9yO1xuICAgICAgICAgICAgLiN7JGJsb2NrfV9fb3B0aW9uLWNoZWNrYm94IHtcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZmlsdGVyLWJnLWNvbG9yO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlsdGVyLXNlbGVjdGVkLWJnO1xuICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDaGVja2JveCBpbmRpY2F0b3JcbiAgICAmX19vcHRpb24tY2hlY2tib3gge1xuICAgICAgbWluLXdpZHRoOiAxLjVyZW07XG4gICAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRmaWx0ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gICAgICBtYXJnaW4tdG9wOiAuMTI1cmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgYm9yZGVyLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZyxcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IC41cmVtO1xuICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRmaWx0ZXItYWN0aXZlLWNvbG9yO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGZpbHRlci1hY3RpdmUtY29sb3I7XG4gICAgICAgIHRvcDogNDAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBPcHRpb24gdGV4dFxuICAgICZfX29wdGlvbi10ZXh0IHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gY291bnRlclxuICAgICZfX2Ryb3Bkb3duLWNvdW50ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICAgIHdpZHRoOiAxLjVyZW07XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlsdGVyLXNlY29uZGFyeS1jb2xvcjtcbiAgICAgICYudmlzaWJsZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVkdWNlZCBtb3Rpb24gc3VwcG9ydFxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC4jeyRibG9ja31fX2Ryb3Bkb3duLXRvZ2dsZSxcbiAgICAuI3skYmxvY2t9X19kcm9wZG93bi1pY29uLFxuICAgIC4jeyRibG9ja31fX29wdGlvbi1jaGVja2JveCB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhpZ2ggY29udHJhc3QgbW9kZSBzdXBwb3J0XG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgLiN7JGJsb2NrfV9fZHJvcGRvd24tdG9nZ2xlLFxuICAgIC4jeyRibG9ja31fX2Ryb3Bkb3duLW9wdGlvbiB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9jb21wb25lbnRzL19hY3RpdmUtZmlsdGVycy5zY3NzXG5AdXNlICcuLi9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5cbkBtaXhpbiBhY3RpdmUtZmlsdGVycygkYmxvY2spIHtcbiAgICAvLyBWaXN1YWwgY29uZmlndXJhdGlvblxuICAgICRvdXRsaW5lLXdpZHRoOiAycHg7XG4gICAgJG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgJHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICAgJHRyYW5zaXRpb24tZWFzaW5nOiBlYXNlO1xuICAgICRib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgLy8gQ29sb3JzXG4gICAgJGZpbHRlci1wcmltYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuICAgICRmaWx0ZXItc2Vjb25kYXJ5LWJnLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUtYWxtb3N0LXdoaXRlLCBjb2xvcnMuJGNvbG9yLWpmZS1hbG1vc3Qtd2hpdGUpO1xuICAgICRmaWx0ZXItYWN0aXZlLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuXG4gICAgLiN7JGJsb2NrfSB7XG5cbiAgICAgICAgLy8gQWN0aXZlIEZpbHRlcnNcbiAgICAgICAgJl9fYWN0aXZlLWZpbHRlcnMtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlsdGVyLXNlY29uZGFyeS1iZy1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2FjdGl2ZS1maWx0ZXJzLWxhYmVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsLiN7JGJsb2NrfV9fYWN0aXZlLWZpbHRlcnMtbGlzdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpLiN7JGJsb2NrfV9fYWN0aXZlLWZpbHRlci1pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2FjdGl2ZS1maWx0ZXItcmVtb3ZlLFxuICAgICAgICAmX19hY3RpdmUtZmlsdGVyLXJlbW92ZS1hbGwge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjc1cmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgZ2FwOiAwLjEyNXJlbTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmcsXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcbiAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogMnB4O1xuICAgICAgICAgICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogNHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmX19hY3RpdmUtZmlsdGVyLXJlbW92ZSB7XG4gICAgICAgICAgICA+c3BhbiB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAkb3V0bGluZS13aWR0aCBzb2xpZCAkZmlsdGVyLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogJG91dGxpbmUtb2Zmc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmVtb3ZlIGFsbCBmaWx0ZXJzIGJ1dHRvblxuICAgICAgICAmX19hY3RpdmUtZmlsdGVyLXJlbW92ZS1hbGwge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGdhcDogLjc1cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcblxuICAgICAgICAgICAgPnNwYW4ge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sb3ItamZlLXllbGxvdywgY29sb3JzLiRjb2xvci1qZmUteWVsbG93KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgICAgICAgPnNwYW4ge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZWR1Y2VkIG1vdGlvbiBzdXBwb3J0XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcblxuICAgICAgICAuI3skYmxvY2t9X19hY3RpdmUtZmlsdGVyLXJlbW92ZSxcbiAgICAgICAgLiN7JGJsb2NrfV9fYWN0aXZlLWZpbHRlci1yZW1vdmUtYWxsIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIaWdoIGNvbnRyYXN0IG1vZGUgc3VwcG9ydFxuICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG5cbiAgICAgICAgLiN7JGJsb2NrfV9fYWN0aXZlLWZpbHRlci1yZW1vdmUsXG4gICAgICAgIC4jeyRibG9ja31fX2FjdGl2ZS1maWx0ZXItcmVtb3ZlLWFsbCB7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9jb21wb25lbnRzL19tb2JpbGUtdG9nZ2xlLnNjc3NcbkB1c2UgJy4uL2dsb2JhbC9jb2xvcnMnIGFzIGNvbG9ycztcbkB1c2UgJy4uL2dsb2JhbC9icmVha3BvaW50cycgYXMgYnA7XG5cbkBtaXhpbiBtb2JpbGUtdG9nZ2xlKCRibG9jaykge1xuICAvLyBWaXN1YWwgY29uZmlndXJhdGlvblxuICAkb3V0bGluZS13aWR0aDogMnB4O1xuICAkb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgJHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICR0cmFuc2l0aW9uLWVhc2luZzogZWFzZTtcblxuICAvLyBDb2xvcnNcbiAgJGZpbHRlci1wcmltYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuICAkZmlsdGVyLXNlY29uZGFyeS1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS15ZWxsb3cpO1xuICAkZmlsdGVyLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgJGZpbHRlci1ncmF5LWJnLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUtZ3JheSwgY29sb3JzLiRjb2xvci1qZmUtZ3JheSk7XG4gICRmaWx0ZXItZ3JheS1tZWRpdW0tYmctY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LW1lZGl1bSwgY29sb3JzLiRjb2xvci1qZmUtZ3JheS1tZWRpdW0pO1xuXG4gIC4jeyRibG9ja30ge1xuICAgIC8vIEZpbHRlci1Gb3JtIFN0eWxpbmdcbiAgICAmX19maWx0ZXItZm9ybSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIEZpbHRlciBUb2dnbGUgQnV0dG9uXG4gICAgJl9fZmlsdGVyLXRvZ2dsZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlsdGVyLWdyYXktYmctY29sb3I7XG4gICAgICBjb2xvcjogJGZpbHRlci10ZXh0LWNvbG9yO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZyxcbiAgICAgICAgYm9yZGVyLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItZ3JheS1tZWRpdW0tYmctY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGZpbHRlci1wcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICBvdXRsaW5lOiAkb3V0bGluZS13aWR0aCBzb2xpZCAkZmlsdGVyLXByaW1hcnktY29sb3I7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAkb3V0bGluZS1vZmZzZXQ7XG4gICAgICB9XG5cbiAgICAgIC8vIEljb24gZm9yIGFycm93IGFuaW1hdGlvblxuICAgICAgJi1hcnJvdy1pY29uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIH1cblxuICAgICAgLy8gSWNvbiBmb3IgZmlsdGVyXG4gICAgICAmLWZpbHRlci1pY29uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nO1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OmF1dG87XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBFeHBhbmRlZCBzdGF0ZVxuICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIC4jeyRibG9ja31fX2ZpbHRlci10b2dnbGUtYXJyb3ctaWNvbiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPbmx5IHNob3cgb24gbW9iaWxlXG4gICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50LWRvd24oJ2xnJykgIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGaWx0ZXIgQ29udGVudFxuICAgICZfX2ZpbHRlci1jb250ZW50IHtcbiAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ2xnJykge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlsdGVyLWdyYXktYmctY29sb3I7XG4gICAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIE1vYmlsZSByZXNwb25zaXZlIGFkanVzdG1lbnRzXG4gIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQtZG93bignbGcnKSB7XG4gICAgLiN7JGJsb2NrfV9fZmlsdGVyLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItZ3JheS1iZy1jb2xvcjtcbiAgICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZWR1Y2VkIG1vdGlvbiBzdXBwb3J0XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLiN7JGJsb2NrfV9fZmlsdGVyLXRvZ2dsZS1hcnJvdy1pY29uLFxuICAgIC4jeyRibG9ja31fX2ZpbHRlci10b2dnbGUtZmlsdGVyLWljb24ge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIGFzc2V0cy9zY3NzL2NvbXBvbmVudHMvX3NlYXJjaC1maWx0ZXIuc2Nzc1xuQHVzZSAnLi4vZ2xvYmFsL2NvbG9ycycgYXMgY29sb3JzO1xuQHVzZSAnLi4vZ2xvYmFsL2JyZWFrcG9pbnRzJyBhcyBicDtcblxuQG1peGluIHNlYXJjaC1maWx0ZXIoJGJsb2NrKSB7XG4gIC8vIFZpc3VhbCBjb25maWd1cmF0aW9uXG4gICRvdXRsaW5lLXdpZHRoOiAycHg7XG4gICRvdXRsaW5lLW9mZnNldDogMnB4O1xuICAkdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgJHRyYW5zaXRpb24tZWFzaW5nOiBlYXNlO1xuICAkYm9yZGVyLXJhZGl1czogMDtcblxuICAvLyBDb2xvcnNcbiAgJGZpbHRlci1wcmltYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuICAkZmlsdGVyLWJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAkZmlsdGVyLWJnLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSwgY29sb3JzLiRjb2xvci13aGl0ZSk7XG5cbiAgLiN7JGJsb2NrfSB7XG4gICAgJl9fc2VhcmNoLWZpbHRlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ21kJykge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX3NlYXJjaC1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgJl9fc2VhcmNoLWlucHV0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRmaWx0ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlsdGVyLWJnLWNvbG9yO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZmlsdGVyLXByaW1hcnktY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIG91dGxpbmU6ICRvdXRsaW5lLXdpZHRoIHNvbGlkICRmaWx0ZXItcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6ICRvdXRsaW5lLW9mZnNldDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZWR1Y2VkIG1vdGlvbiBzdXBwb3J0XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLiN7JGJsb2NrfV9fc2VhcmNoLWlucHV0IHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/