/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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 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__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: 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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QUM5bUJJO0VBQ0U7RUFDQTtBRGduQk47QUMzbUJRO0VBQ0U7QUQ2bUJWO0FDNW1CVTtFQUNFO0VBQ0E7RUFDQTtBRDhtQlo7QUN2bUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEMG1CSjtBSWgxQkk7RUgyT0E7SUFDRTtFRHltQko7RUN0bUJFO0lBQ0U7RUR3bUJKO0VDcm1CRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VEdW1CSjtBQUNGO0FDbm1CRTtFQUNFO0lBQ0U7RURxbUJKO0FBQ0Y7QUNqbUJFO0VBQ0U7SUFDRTtFRG1tQko7RUNqbUJJO0lBQ0U7SUFDQTtFRG1tQk47RUNobUJJO0lBQ0U7SUFDQTtFRGttQk47QUFDRjtBQzdsQkU7RUFDRTtJQUNFO0VEK2xCSjtFQzdsQkk7SUFDRTtJQUNBO0lBQ0E7RUQrbEJOO0VDNWxCSTtJQUNFO0lBQ0E7RUQ4bEJOO0FBQ0Y7QUN6bEJFO0VBQ0U7RUFDQTtBRDJsQko7QUszNUJFO0VBQ0U7QUw4NUJKO0FLeDVCSTs7RUFDRTtBTDI1Qk47QUt0NUJFO0VBQ0U7QUx3NUJKO0FLcjVCRTtFQUNFO0FMdTVCSjtBS241QkU7O0VBRUU7QUxxNUJKO0FLbDVCSTs7RUFDRTtBTHE1Qk47QUtsNUJJOztFQUNFO0FMcTVCTjtBS2w1Qkk7O0VBQ0U7QUxxNUJOO0FLbDVCSTs7RUFDRTtBTHE1Qk47QUs5NEJNOztFQUVFO0FMZzVCUjtBSzU0Qkk7RUFDRTtBTDg0Qk47QUs1NEJNOztFQUVFO0VBQ0E7QUw4NEJSO0FLeDRCRTs7RUFFRTtBTDA0Qko7QUt0NEJFO0VBQ0U7RUFDQTtBTHc0Qko7QUFqOEJFO0VBQ0U7QUFtOEJKO0FBLzdCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFpOEJKO0FBNTdCQTtFQUNFO0FBKzdCRjtBSXY4Qkk7RUpPSjtJQUlJO0VBZzhCRjtBQUNGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9qdWdlbmQtZnVlci1ldXJvcGEvLi9hc3NldHMvc2Nzcy9wbHVnaW5zL2NlX2pmZWV2ZW50c19ldmVudGxpc3Quc2NzcyIsIndlYnBhY2s6Ly9qdWdlbmQtZnVlci1ldXJvcGEvLi9hc3NldHMvc2Nzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fY29weXJpZ2h0LnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvZ2xvYmFsL19jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly9qdWdlbmQtZnVlci1ldXJvcGEvLi9hc3NldHMvc2Nzcy9nbG9iYWwvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fZXZlbnQtYmFzZS1saXN0LnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fZmlsdGVyLWRyb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fYWN0aXZlLWZpbHRlcnMuc2NzcyIsIndlYnBhY2s6Ly9qdWdlbmQtZnVlci1ldXJvcGEvLi9hc3NldHMvc2Nzcy9jb21wb25lbnRzL19tb2JpbGUtdG9nZ2xlLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fc2VhcmNoLWZpbHRlci5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2FqYXgtbG9hZG1vcmUuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBhc3NldHMvc2Nzcy9wbHVnaW5zL2NlX2pmZWV2ZW50c19ldmVudGxpc3Quc2Nzc1xuQHVzZSAnLi4vZ2xvYmFsL2NvbG9ycycgYXMgY29sb3JzO1xuQHVzZSAnLi4vZ2xvYmFsL2JyZWFrcG9pbnRzJyBhcyBicDtcbkB1c2UgJy4uL2NvbXBvbmVudHMvZmlsdGVyLWRyb3Bkb3duJyBhcyBmaWx0ZXI7XG5AdXNlICcuLi9jb21wb25lbnRzL2FjdGl2ZS1maWx0ZXJzJyBhcyBhY3RpdmU7XG5AdXNlICcuLi9jb21wb25lbnRzL21vYmlsZS10b2dnbGUnIGFzIHRvZ2dsZTtcbkB1c2UgJy4uL2NvbXBvbmVudHMvc2VhcmNoLWZpbHRlcicgYXMgc2VhcmNoO1xuQHVzZSAnLi4vY29tcG9uZW50cy9hamF4LWxvYWRtb3JlJyBhcyBsb2FkbW9yZTtcbkB1c2UgJy4uL2NvbXBvbmVudHMvcGFnaW5hdGlvbicgYXMgcGFnaW5hdGlvbjtcbkB1c2UgJy4uL2NvbXBvbmVudHMvZXZlbnQtYmFzZS1saXN0JyBhcyBldmVudC1iYXNlO1xuXG4vLyBCbG9jayBmb3IgQkVNLU1ldGhvZG9sb2d5XG4kYmxvY2s6ICdjZS1qZmVldmVudHNfZXZlbnRsaXN0JztcblxuLy8gVXNlIENvbXBvbmVudC1NaXhpbnMgKHNhbWUgYXMgcHVibGljYXRpb25zIC0gbm8gYWxwaGFiZXQgZmlsdGVyKVxuQGluY2x1ZGUgZmlsdGVyLmZpbHRlci1kcm9wZG93bigkYmxvY2spO1xuQGluY2x1ZGUgYWN0aXZlLmFjdGl2ZS1maWx0ZXJzKCRibG9jayk7XG5AaW5jbHVkZSB0b2dnbGUubW9iaWxlLXRvZ2dsZSgkYmxvY2spO1xuQGluY2x1ZGUgc2VhcmNoLnNlYXJjaC1maWx0ZXIoJGJsb2NrKTtcbkBpbmNsdWRlIGxvYWRtb3JlLmxvYWRtb3JlKCRibG9jayk7XG5AaW5jbHVkZSBwYWdpbmF0aW9uLnBhZ2luYXRpb24oJGJsb2NrKTtcblxuLy8gUGx1Z2luLXNwZWNpZmljIFN0eWxlc1xuLiN7JGJsb2NrfSB7XG4gIC8vIEluY2x1ZGUgc2hhcmVkIGV2ZW50IGJhc2Ugc3R5bGVzXG4gIEBpbmNsdWRlIGV2ZW50LWJhc2UuZXZlbnQtYmFzZS1zdHlsZXMoJGJsb2NrKTtcblxuICAvLyBGaWx0ZXIgc2VjdGlvbiBzcGVjaWZpYyB0byBmdWxsIGV2ZW50IGxpc3RcbiAgJl9fZmlsdGVyLXNlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cblxuICAvLyBObyBSZXN1bHRzIE1lc3NhZ2VcbiAgJl9fbm8tcmVzdWx0cyB7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXksIGNvbG9ycy4kY29sb3ItamZlLWdyYXkpO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBtYXJnaW46IDJyZW0gMDtcbiAgfVxufVxuXG4vLyBGaWx0ZXIgU3VibWl0IEJ1dHRvblxuLmZpbHRlci1zdWJtaXQge1xuICBtaW4td2lkdGg6IDE1MHB4O1xuXG4gIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQtZG93bignbGcnKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIGFzc2V0cy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2Nzc1xuQHVzZSAnLi4vZ2xvYmFsL2NvbG9ycycgYXMgY29sb3JzO1xuQHVzZSAnLi4vZ2xvYmFsL2JyZWFrcG9pbnRzJyBhcyBicDtcblxuLyoqXG4gKiBVbml2ZXJzYWwgcGFnaW5hdGlvbiBjb21wb25lbnQgbWl4aW5cbiAqIFByb3ZpZGVzIGNvbXBsZXRlIHN0eWxpbmcgZm9yIHBhZ2luYXRlZCBjb250ZW50IG5hdmlnYXRpb25cbiAqL1xuQG1peGluIHBhZ2luYXRpb24oJGJsb2NrKSB7XG4gIC8vIFZpc3VhbCBjb25maWd1cmF0aW9uXG4gICRvdXRsaW5lLXdpZHRoOiAycHg7XG4gICRvdXRsaW5lLW9mZnNldDogMnB4O1xuICAkdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgJHRyYW5zaXRpb24tZWFzaW5nOiBlYXNlO1xuICAkYm9yZGVyLXJhZGl1czogMDtcbiAgJGJvcmRlci13aWR0aDogM3B4O1xuICAkbWluLXRvdWNoLXNpemU6IDQ0cHg7IC8vIE1pbmltdW0gdG91Y2ggdGFyZ2V0IHNpemUgZm9yIGFjY2Vzc2liaWxpdHlcbiAgJGxpbmstdW5kZXJsaW5lOiBub25lOyAvLyBObyB1bmRlcmxpbmUgZm9yIGxpbmtzIGJ5IGRlZmF1bHRcblxuICAvLyBDb2xvcnMgLSB1c2luZyBDU1MgdmFyaWFibGVzIGZvciB0aGVtZSBmbGV4aWJpbGl0eVxuICAkcGFnaW5hdGlvbi1wcmltYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuICAkcGFnaW5hdGlvbi1zZWNvbmRhcnktY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSwgY29sb3JzLiRjb2xvci1qZmUteWVsbG93KTtcbiAgJHBhZ2luYXRpb24tdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAkcGFnaW5hdGlvbi1iZy1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUsIGNvbG9ycy4kY29sb3Itd2hpdGUpO1xuICAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgJHBhZ2luYXRpb24taG92ZXItYmctY29sb3I6IHRyYW5zcGFyZW50O1xuICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXktZGFyaywgY29sb3JzLiRjb2xvci1qZmUtZ3JheS1kYXJrKTtcbiAgJHBhZ2luYXRpb24tZGlzYWJsZWQtYmctY29sb3I6IHZhcigtLWNvbG9yLWpmZS1hbG1vc3Qtd2hpdGUsIGNvbG9ycy4kY29sb3ItamZlLWFsbW9zdC13aGl0ZSk7XG4gICRwYWdpbmF0aW9uLWN1cnJlbnQtYmctY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSwgY29sb3JzLiRjb2xvci1qZmUteWVsbG93KTtcbiAgJHBhZ2luYXRpb24tY3VycmVudC10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG5cbiAgLiN7JGJsb2NrfSB7XG4gICAgLy8gTWFpbiBwYWdpbmF0aW9uIGNvbnRhaW5lclxuICAgICZfX3BhZ2luYXRpb24ge1xuICAgICAgbWFyZ2luOiAycmVtIDA7XG5cbiAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ2xnJykge1xuICAgICAgICBtYXJnaW46IDNyZW0gMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBQYWdpbmF0aW9uIHdyYXBwZXJcbiAgICAmX19wYWdpbmF0aW9uLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBQYWdpbmF0aW9uIGxpc3RcbiAgICB1bC4jeyRibG9ja31fX3BhZ2luYXRpb24tbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZ2FwOiAwLjI1cmVtO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdzbScpIHtcbiAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW5kaXZpZHVhbCBwYWdpbmF0aW9uIGl0ZW1zXG4gICAgbGkuI3skYmxvY2t9X19wYWdpbmF0aW9uLWl0ZW0ge1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgLy8gUGFnZSBudW1iZXIgaXRlbXNcbiAgICAgICYtLXBhZ2Uge1xuICAgICAgICAvLyBEZWZhdWx0IHN0eWxpbmcgaGFuZGxlZCBieSBwYWdpbmF0aW9uLWxpbmtcbiAgICAgIH1cblxuICAgICAgLy8gQ3VycmVudCBwYWdlIGl0ZW1cbiAgICAgICYtLWN1cnJlbnQge1xuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbmsge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtYmctY29sb3I7XG4gICAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtdGV4dC1jb2xvcjtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtYmctY29sb3I7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tY3VycmVudC1iZy1jb2xvcjtcbiAgICAgICAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1jdXJyZW50LXRleHQtY29sb3I7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFByZXZpb3VzL05leHQgaXRlbXNcbiAgICAgICYtLXByZXZpb3VzLFxuICAgICAgJi0tbmV4dCB7XG4gICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluayB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGdhcDogMC4yNXJlbTtcbiAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcblxuICAgICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIERpc2FibGVkIHN0YXRlIGZvciBwcmV2aW91cy9uZXh0XG4gICAgICAmLS1kaXNhYmxlZCB7XG4gICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluayB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmctY29sb3I7XG4gICAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmctY29sb3I7XG4gICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmctY29sb3I7XG4gICAgICAgICAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUGFnaW5hdGlvbiBsaW5rcyAoYm90aCA8YT4gYW5kIDxzcGFuPiBlbGVtZW50cylcbiAgICBhLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rLFxuICAgIHNwYW4uI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbmsge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1pbi13aWR0aDogJG1pbi10b3VjaC1zaXplO1xuICAgICAgbWluLWhlaWdodDogJG1pbi10b3VjaC1zaXplO1xuICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmctY29sb3I7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tdGV4dC1jb2xvcjtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLXVuZGVybGluZTtcbiAgICAgIHRyYW5zaXRpb246XG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICBjb2xvciAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmcsXG4gICAgICAgIGJvcmRlci1jb2xvciAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmcsXG4gICAgICAgIHRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmcsXG4gICAgICAgIGJveC1zaGFkb3cgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nO1xuXG4gICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdzbScpIHtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAvLyBIb3ZlciBhbmQgZm9jdXMgc3RhdGVzIGZvciBpbnRlcmFjdGl2ZSBsaW5rc1xuICAgICAgJjpob3Zlcjpub3QoJi0tZGlzYWJsZWQpOm5vdCgmLS1jdXJyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnLWNvbG9yO1xuICAgICAgICBib3JkZXI6ICAgJGJvcmRlci13aWR0aCBzb2xpZCAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgb3V0bGluZTogJG91dGxpbmUtd2lkdGggc29saWQgJHBhZ2luYXRpb24tcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6ICRvdXRsaW5lLW9mZnNldDtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmU6bm90KCYtLWRpc2FibGVkKTpub3QoJi0tY3VycmVudCkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICB9XG5cbiAgICAgIC8vIEN1cnJlbnQgcGFnZSBzdHlsaW5nIChzcGFuIGVsZW1lbnQpXG4gICAgICAmLS1jdXJyZW50IHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1jdXJyZW50LWJnLWNvbG9yO1xuICAgICAgICBjb2xvcjogJHBhZ2luYXRpb24tY3VycmVudC10ZXh0LWNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtYmctY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB9XG5cbiAgICAgIC8vIERpc2FibGVkIHN0YXRlIHN0eWxpbmdcbiAgICAgICYtLWRpc2FibGVkIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmctY29sb3I7XG4gICAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZy1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgLy8gUHJldmlvdXMgbGluayBzcGVjaWZpYyBzdHlsaW5nXG4gICAgICAmLS1wcmV2aW91cyB7XG4gICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tdGV4dCB7XG4gICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWljb24ge1xuICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE5leHQgbGluayBzcGVjaWZpYyBzdHlsaW5nXG4gICAgICAmLS1uZXh0IHtcbiAgICAgICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi10ZXh0IHtcbiAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24taWNvbiB7XG4gICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBQYWdlIG51bWJlciBkaXNwbGF5XG4gICAgJl9fcGFnaW5hdGlvbi1udW1iZXIge1xuICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLy8gTmF2aWdhdGlvbiB0ZXh0IChQcmV2aW91cy9OZXh0KVxuICAgICZfX3BhZ2luYXRpb24tdGV4dCB7XG4gICAgICAgIC8vIFNSIG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogLTFweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIH1cblxuICAgIC8vIE5hdmlnYXRpb24gaWNvbnNcbiAgICAmX19wYWdpbmF0aW9uLWljb24ge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgLy8gRWxsaXBzaXMgaXRlbVxuICAgICZfX3BhZ2luYXRpb24taXRlbS0tZWxsaXBzaXMge1xuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbmstLWVsbGlwc2lzIHtcbiAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTY3JlZW4gcmVhZGVyIG9ubHkgY29udGVudFxuICAuc3Itb25seSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IC0xcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBhZGp1c3RtZW50c1xuICBAaW5jbHVkZSBicC5icmVha3BvaW50LWRvd24oJ3NtJykge1xuICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICB9XG5cbiAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpc3Qge1xuICAgICAgZ2FwOiAwLjEyNXJlbTtcbiAgICB9XG5cbiAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbmsge1xuICAgICAgbWluLXdpZHRoOiA0MHB4O1xuICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICAgIHBhZGRpbmc6IDAuMzc1cmVtO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB9XG4gIH1cblxuICAvLyBQcmludCBzdHlsZXNcbiAgQG1lZGlhIHByaW50IHtcbiAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZWR1Y2VkIG1vdGlvbiBzdXBwb3J0XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgICAgICY6aG92ZXI6bm90KCYtLWRpc2FibGVkKTpub3QoJi0tY3VycmVudCkge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlOm5vdCgmLS1kaXNhYmxlZCk6bm90KCYtLWN1cnJlbnQpIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEhpZ2ggY29udHJhc3QgbW9kZSBzdXBwb3J0XG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rIHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcblxuICAgICAgJi0tY3VycmVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEhpZ2hsaWdodDtcbiAgICAgICAgY29sb3I6IEhpZ2hsaWdodFRleHQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogSGlnaGxpZ2h0O1xuICAgICAgfVxuXG4gICAgICAmLS1kaXNhYmxlZCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogR3JheVRleHQ7XG4gICAgICAgIGNvbG9yOiBHcmF5VGV4dDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBGb2N1cyBtYW5hZ2VtZW50IGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uXG4gIC4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluazpmb2N1cyB7XG4gICAgei1pbmRleDogMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cbiIsIi8vIGFzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2NvcHlyaWdodC5zY3NzXG5AdXNlICcuLi9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5AdXNlICcuLi9nbG9iYWwvYnJlYWtwb2ludHMnIGFzIGJwO1xuXG4vKipcbiAqIFJldXNhYmxlIGNvcHlyaWdodCBvdmVybGF5IGNvbXBvbmVudFxuICpcbiAqIFVzYWdlOlxuICogPGRpdiBjbGFzcz1cImNvcHlyaWdodFwiPsKpIDIwMjQgUGhvdG9ncmFwaGVyIE5hbWU8L2Rpdj5cbiAqIDxkaXYgY2xhc3M9XCJjb3B5cmlnaHQgY29weXJpZ2h0LS10b3AtbGVmdFwiPsKpIDIwMjQgUGhvdG9ncmFwaGVyIE5hbWU8L2Rpdj5cbiAqIDxkaXYgY2xhc3M9XCJjb3B5cmlnaHQgY29weXJpZ2h0LS1tYXNvbnJ5XCI+wqkgMjAyNCBQaG90b2dyYXBoZXIgTmFtZTwvZGl2PlxuICovXG5cbi8vIEJsb2NrIG5hbWVcbiRibG9jazogJ2NvcHlyaWdodCc7XG5cbi8vIENvbmZpZ3VyYXRpb24gdmFyaWFibGVzXG4kY29weXJpZ2h0LWJnLWNvbG9yOiBjb2xvcnMuJGNvbG9yLW92ZXJsYXktbWQgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LXRleHQtY29sb3I6IGNvbG9ycy4kY29sb3Itd2hpdGUgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LWZvbnQtc2l6ZTogMC43NXJlbSAhZGVmYXVsdDtcbiRjb3B5cmlnaHQtcGFkZGluZy15OiAycHggIWRlZmF1bHQ7XG4kY29weXJpZ2h0LXBhZGRpbmcteDogNnB4ICFkZWZhdWx0O1xuJGNvcHlyaWdodC1ib3JkZXItcmFkaXVzOiAycHggIWRlZmF1bHQ7XG4kY29weXJpZ2h0LXNwYWNpbmc6IDhweCAhZGVmYXVsdDtcblxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDb3B5cmlnaHQgQ29tcG9uZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLiN7JGJsb2NrfSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb3B5cmlnaHQtYmctY29sb3I7XG4gICAgY29sb3I6ICRjb3B5cmlnaHQtdGV4dC1jb2xvcjtcbiAgICBwYWRkaW5nOiAkY29weXJpZ2h0LXBhZGRpbmcteSAkY29weXJpZ2h0LXBhZGRpbmcteDtcbiAgICBmb250LXNpemU6ICRjb3B5cmlnaHQtZm9udC1zaXplO1xuICAgIGJvcmRlci1yYWRpdXM6ICRjb3B5cmlnaHQtYm9yZGVyLXJhZGl1cztcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBEb24ndCBpbnRlcmZlcmUgd2l0aCBjbGlja3Mgb24gcGFyZW50XG4gICAgbWluLXdpZHRoOiBtYXgtY29udGVudDtcbiAgICAvLyBEZWZhdWx0IHBvc2l0aW9uOiBib3R0b20tcmlnaHRcbiAgICBib3R0b206ICRjb3B5cmlnaHQtc3BhY2luZztcbiAgICByaWdodDogJGNvcHlyaWdodC1zcGFjaW5nO1xuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBQb3NpdGlvbiBtb2RpZmllcnNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gVG9wLXJpZ2h0IHBvc2l0aW9uXG4gICAgJi0tdG9wLXJpZ2h0IHtcbiAgICAgICAgdG9wOiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgICAgIHJpZ2h0OiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgICAgIGJvdHRvbTogYXV0bztcbiAgICB9XG5cbiAgICAvLyBUb3AtbGVmdCBwb3NpdGlvblxuICAgICYtLXRvcC1sZWZ0IHtcbiAgICAgICAgdG9wOiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgICAgIGxlZnQ6ICRjb3B5cmlnaHQtc3BhY2luZztcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGJvdHRvbTogYXV0bztcbiAgICB9XG5cbiAgICAvLyBCb3R0b20tbGVmdCBwb3NpdGlvblxuICAgICYtLWJvdHRvbS1sZWZ0IHtcbiAgICAgICAgYm90dG9tOiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgICAgIGxlZnQ6ICRjb3B5cmlnaHQtc3BhY2luZztcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gRWRnZSBwb3NpdGlvbiAobm8gc3BhY2luZywgbm8gYm9yZGVyLXJhZGl1cykgLSBzaGFyZWQgYmFzZVxuICAgICYtLWVkZ2UsXG4gICAgJi0tbWFzb25yeSxcbiAgICAmLS1jb2xsYWdlIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gICAgLy8gTW9kYWwvTGlnaHRib3ggcG9zaXRpb24gKG91dHNpZGUgaW1hZ2UsIGFib3ZlKVxuICAgICYtLW1vZGFsIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAtMjJweDtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdtZCcpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIHRvcDogLTMycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIFN0eWxlIG1vZGlmaWVyc1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBMaWdodCBiYWNrZ3JvdW5kIHZhcmlhbnRcbiAgICAmLS1saWdodCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoY29sb3JzLiRjb2xvci13aGl0ZSwgMC45KTtcbiAgICAgICAgY29sb3I6IGNvbG9ycy4kY29sb3ItYmxhY2s7XG4gICAgfVxuXG4gICAgLy8gRGFyayBiYWNrZ3JvdW5kIHZhcmlhbnQgKG1vcmUgb3BhcXVlKVxuICAgICYtLWRhcmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGNvbG9ycy4kY29sb3ItYmxhY2ssIDAuOCk7XG4gICAgICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLXdoaXRlO1xuICAgIH1cblxuICAgIC8vIFRyYW5zcGFyZW50IHZhcmlhbnQgKHN1YnRsZSlcbiAgICAmLS10cmFuc3BhcmVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDRweCByZ2JhKGNvbG9ycy4kY29sb3ItYmxhY2ssIDAuOCk7XG4gICAgfVxuXG4gICAgLy8gTGFyZ2VyIHRleHQgc2l6ZVxuICAgICYtLWxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICB9XG5cbiAgICAvLyBIaWRkZW4gb24gc21hbGwgc2NyZWVuc1xuICAgICYtLWhpZGUtbW9iaWxlIHtcbiAgICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludC1kb3duKCdzbScpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTaG93IG9ubHkgb24gaG92ZXIgKHJlcXVpcmVzIHBhcmVudCB0byBoYXZlIGhvdmVyIHN0YXRlKVxuICAgICYtLWhvdmVyLXNob3cge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcblxuICAgICAgICAqOmhvdmVyID4gJixcbiAgICAgICAgKjpmb2N1cy13aXRoaW4gPiAmIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9fY29sb3JzLnNjc3NcblxuLy8gQmFzZSBjb2xvcnMgZnJvbSBkZXNpZ24gZG9jdW1lbnRcbiRjb2xvci1qZmUtbGlnaHRibHVlOiAjMDA5ZGRmOyAgICAgICAgICAvLyBKRkUgbGlnaHQgYmx1ZVxuJGNvbG9yLWpmZS15ZWxsb3c6ICNmZmNjMDA7ICAgICAgICAgICAgIC8vIEpGRSB5ZWxsb3dcbiRjb2xvci1qZmUtYWxtb3N0LXdoaXRlOiAjZmFmYWZhOyAgICAgICAgLy8gSkZFIGFsbW9zdCB3aGl0ZSAoYmFja2dyb3VuZCBvcHRpb24pXG4kY29sb3ItamZlLWdyYXk6ICNmM2YzZjI7ICAgICAgICAgICAgICAgLy8gSkZFIGdyYXkgKGJhY2tncm91bmQgb3B0aW9uKVxuJGNvbG9yLWpmZS1ncmF5LW1lZGl1bTogI0NGQ0ZDRjsgICAgICAgIC8vIEpGRSBtZWRpdW0gZ3JheSAoZm9yIGJvcmRlcnMgZXRjLilcbiRjb2xvci1qZmUtZ3JheS1kYXJrOiByZ2JhKDE4OSwgMTg5LCAxODksIDEpOyAvLyBKRkUgZGFyayBncmF5IChmb3IgZGFya2VyIGJvcmRlcnMgZXRjLilcbiRjb2xvci1qZmUtZ3JheS1kYXJrZXI6cmdiYSgxMDUsIDEwNSwgMTA1LCAxKTsgLy8gSkZFIGRhcmtlciBncmF5IChGb3JtIGRlc2NyaXB0aW9uIHRleHQgZXRjLilcbi8vIFByb2dyYW0gc3BlY2lmaWMgY29sb3JzXG4kY29sb3ItZS1qdWdlbmQtYmx1ZTogIzAwMzM5OTsgICAgICAgICAgLy8gRXJhc211cysgWW91dGggYmx1ZVxuJGNvbG9yLWVzay1tYWdlbnRhOiAjZTUwMDZjOyAgICAgICAgICAgIC8vIEVTQyBtYWdlbnRhXG4kY29sb3ItZS1zcG9ydC1vcmFuZ2U6ICNlMzUzMGY7ICAgICAgICAgLy8gRXJhc211cysgU3BvcnQgb3JhbmdlXG5cbi8vIFV0aWxpdHkgY29sb3JzXG4kY29sb3Itd2hpdGU6ICNmZmZmZmY7ICAgICAgICAgICAgICAvLyBXaGl0ZSBjb2xvciBmb3IgYmFja2dyb3VuZHNcbiRjb2xvci1ibGFjazogIzAwMDAwMDsgICAgICAgICAgICAgIC8vIEJsYWNrIGNvbG9yIGZvciB0ZXh0XG4kY29sb3Itb3ZlcmxheS1zbTogcmdiYSgwLCAwLCAwLCAwLjMpO1xuJGNvbG9yLW92ZXJsYXktbWQ6IHJnYmEoMCwgMCwgMCwgMC42NSk7XG4kY29sb3Itb3ZlcmxheS1sZzogcmdiYSgwLCAwLCAwLCAwLjg1KTtcblxuLy8gU2Vjb25kYXJ5IGFuZCBkZXJpdmVkIGNvbG9yc1xuJGNvbG9yLWpmZS15ZWxsb3ctaG92ZXI6ICNFQkJDMDA7ICAgICAgIC8vIEhvdmVyIHN0YXRlIGZvciBKRkUgeWVsbG93XG4kY29sb3ItZS1qdWdlbmQtaG92ZXI6ICMwMDJiODA7ICAgICAgICAgLy8gSG92ZXIgc3RhdGUgZm9yIEVyYXNtdXMrIFlvdXRoIGJsdWVcbiRjb2xvci1lc2staG92ZXI6ICNkMDAwNjI7ICAgICAgICAgICAgICAvLyBIb3ZlciBzdGF0ZSBmb3IgRVNDIG1hZ2VudGFcbiRjb2xvci1lLXNwb3J0LWhvdmVyOiAjYzk0OTBkOyAgICAgICAgICAvLyBIb3ZlciBzdGF0ZSBmb3IgRXJhc211cysgU3BvcnQgb3JhbmdlXG5cbi8vIEVycm9yIGFuZCB3YXJuaW5nIGNvbG9yc1xuJGNvbG9yLWVycm9yOiAjZGYwMDAwOyAgICAgICAgICAgICAgICAvLyBFcnJvciBjb2xvciAocmVkKVxuJGNvbG9yLWVycm9yLWJnOiAjZGYwMDAwMWE7ICAgICAgICAgICAgIC8vIEVycm9yIGJhY2tncm91bmQgY29sb3IgKGxpZ2h0IHJlZClcbiRjb2xvci13YXJuaW5nOiAjZmZiMzAwOyAgICAgICAgICAgICAgLy8gV2FybmluZyBjb2xvciAoeWVsbG93KVxuJGNvbG9yLXdhcm5pbmctYmc6ICNmZmIzMDAxYTsgICAgICAgICAgLy8gV2FybmluZyBiYWNrZ3JvdW5kIGNvbG9yIChsaWdodCB5ZWxsb3cpXG4kY29sb3Itc3VjY2VzczogIzk1ZGYwMDsgICAgICAgICAgICAgIC8vIFN1Y2Nlc3MgY29sb3IgKGdyZWVuKVxuJGNvbG9yLXN1Y2Nlc3MtYmc6ICM5NWRmMDAxYTsgICAgICAgICAgLy8gU3VjY2VzcyBiYWNrZ3JvdW5kIGNvbG9yIChsaWdodCBncmVlbilcbiIsIi8vIEFVVE8tR0VORVJBVEVEIEZJTEUgZnJvbSBidWlsZC1icmVha3BvaW50cy5qc1xuLy8gRE8gTk9UIEVESVQgRElSRUNUTFlcblxuLy8gSW1wb3J0IFNhc3MgbWFwIG1vZHVsZVxuQHVzZSBcInNhc3M6bWFwXCI7XG5cbi8vIEJyZWFrcG9pbnQgdmFsdWVzXG4kYnJlYWtwb2ludC1zbTogNjQwcHg7XG4kYnJlYWtwb2ludC1tZDogNzY4cHg7XG4kYnJlYWtwb2ludC1sZzogMTAyNHB4O1xuJGJyZWFrcG9pbnQteGw6IDEyODBweDtcbiRicmVha3BvaW50LTJ4bDogMTUzNnB4O1xuXG4vLyBNYXAgZm9yIHByb2dyYW1tYXRpYyBhY2Nlc3NcbiRicmVha3BvaW50czogKFxuICAnc20nOiAkYnJlYWtwb2ludC1zbSxcbiAgJ21kJzogJGJyZWFrcG9pbnQtbWQsXG4gICdsZyc6ICRicmVha3BvaW50LWxnLFxuICAneGwnOiAkYnJlYWtwb2ludC14bCxcbiAgJzJ4bCc6ICRicmVha3BvaW50LTJ4bFxuKTtcblxuLy8gTWl4aW4gZm9yIGVhc3kgbWVkaWEgcXVlcmllcyBiYXNlZCBvbiBkZWZpbmVkIGJyZWFrcG9pbnRzXG5AbWl4aW4gYnJlYWtwb2ludCgkcG9pbnQpIHtcbiAgQGlmIG1hcC5oYXMta2V5KCRicmVha3BvaW50cywgJHBvaW50KSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAkcG9pbnQpKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiQnJlYWtwb2ludCAnI3skcG9pbnR9JyBpcyBub3QgZGVmaW5lZCBpbiAkYnJlYWtwb2ludHMgbWFwLlwiO1xuICB9XG59XG5cbi8vIE1peGluIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllcyAoc21hbGxlciB0aGFuIGEgYnJlYWtwb2ludClcbkBtaXhpbiBicmVha3BvaW50LWRvd24oJHBvaW50KSB7XG4gIEBpZiBtYXAuaGFzLWtleSgkYnJlYWtwb2ludHMsICRwb2ludCkge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJHBvaW50KSAtIDFweCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcIkJyZWFrcG9pbnQgJyN7JHBvaW50fScgaXMgbm90IGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzIG1hcC5cIjtcbiAgfVxufVxuXG4vLyBNaXhpbiBmb3IgY3JlYXRpbmcgc3R5bGVzIGJldHdlZW4gdHdvIGJyZWFrcG9pbnRzXG5AbWl4aW4gYnJlYWtwb2ludC1iZXR3ZWVuKCRtaW4sICRtYXgpIHtcbiAgQGlmIG1hcC5oYXMta2V5KCRicmVha3BvaW50cywgJG1pbikgYW5kIG1hcC5oYXMta2V5KCRicmVha3BvaW50cywgJG1heCkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJG1pbikpIGFuZCAobWF4LXdpZHRoOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJG1heCkgLSAxcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJCcmVha3BvaW50ICcjeyRtaW59JyBvciAnI3skbWF4fScgaXMgbm90IGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzIG1hcC5cIjtcbiAgfVxufVxuIiwiLy8gYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fZXZlbnQtYmFzZS1saXN0LnNjc3Ncbi8vIEJhc2Ugc3R5bGVzIGZvciBldmVudCBsaXN0IGNvbXBvbmVudHMgLSBzaGFyZWQgYmV0d2VlbiBwcmV2aWV3IGFuZCBmdWxsIGxpc3RcbkB1c2UgJy4uL2dsb2JhbC9jb2xvcnMnIGFzIGNvbG9ycztcbkB1c2UgJy4uL2NvbXBvbmVudHMvY29weXJpZ2h0JztcblxuLyoqXG4gKiBCYXNlIGV2ZW50IGl0ZW0gc3R5bGVzIG1peGluXG4gKiBDb250YWlucyBjb21tb24gc3R5bGVzIGZvciBldmVudCBpdGVtcyB1c2VkIGluIGJvdGggcHJldmlldyBhbmQgZnVsbCBsaXN0XG4gKiBAcGFyYW0ge3N0cmluZ30gJGJsb2NrIC0gVGhlIEJFTSBibG9jayBjbGFzcyBuYW1lXG4gKi9cbkBtaXhpbiBldmVudC1iYXNlLXN0eWxlcygkYmxvY2spIHtcbiAgLy8gSGlnaGxpZ2h0IGFycm93IGljb24gc3R5bGluZ1xuICAuI3skYmxvY2t9X19oaWdobGlnaHQtYXJyb3ctaWNvbiB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSwgY29sb3JzLiRjb2xvci1qZmUteWVsbG93KTtcbiAgfVxuXG4gIC8vIEhpZ2hsaWdodCBsaW5rIGhvdmVyIGFuZCBmb2N1cyBzdGF0ZXNcbiAgLiN7JGJsb2NrfV9faGlnaGxpZ2h0LWxpbms6aG92ZXIsXG4gIC4jeyRibG9ja31fX2hpZ2hsaWdodC1saW5rOmZvY3VzIHtcbiAgICAuI3skYmxvY2t9X19oaWdobGlnaHQtYXJyb3ctaWNvbiB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAgIH1cbiAgfVxuXG4gIC8vIEV2ZW50IGl0ZW0gbWV0YSBzdHlsaW5nXG4gIC4jeyRibG9ja31fX2V2ZW50LWl0ZW0tbWV0YSB7XG4gICAgd2lkdGg6IDE4MHB4O1xuICB9XG5cbiAgLiN7JGJsb2NrfV9faGlnaGxpZ2h0LXRleHQtY29udGVudC13cmFwcGVyOm5vdCguYmctamZlLWdyYXksLmJnLXBhcGVyLXRleHR1cmUpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSwgY29sb3JzLiRjb2xvci13aGl0ZSk7XG4gIH1cblxuICAvLyBFdmVudCBoZWFkbGluZSBzdHlsaW5nIHdpdGggY29sb3IgdmFyaWFudHNcbiAgaDIuI3skYmxvY2t9X19ldmVudC1pdGVtLWhlYWRsaW5lLFxuICBoMy4jeyRibG9ja31fX2V2ZW50LWl0ZW0taGVhZGxpbmUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuXG4gICAgLy8gQnJhbmQgY29sb3IgdmFyaWFudHNcbiAgICAmLnRleHQtZS1qdWdlbmQtYmx1ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItZS1qdWdlbmQtYmx1ZSwgY29sb3JzLiRjb2xvci1lLWp1Z2VuZC1ibHVlKTtcbiAgICB9XG5cbiAgICAmLnRleHQtZS1zcG9ydC1vcmFuZ2Uge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWUtc3BvcnQtb3JhbmdlLCBjb2xvcnMuJGNvbG9yLWUtc3BvcnQtb3JhbmdlKTtcbiAgICB9XG5cbiAgICAmLnRleHQtZXNrLW1hZ2VudGEge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWVzay1tYWdlbnRhLCBjb2xvcnMuJGNvbG9yLWVzay1tYWdlbnRhKTtcbiAgICB9XG5cbiAgICAmLnRleHQtamZlLWxpZ2h0Ymx1ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItamZlLWxpZ2h0Ymx1ZSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgICB9XG4gIH1cblxuICAvLyBFdmVudCBsaW5rIHN0eWxpbmcgd2l0aCBob3ZlciBhbmQgZm9jdXMgc3RhdGVzXG4gIC4jeyRibG9ja31fX2V2ZW50LWl0ZW0tbGluayB7XG4gICAgJjpob3ZlciB7XG4gICAgICBoMi4jeyRibG9ja31fX2V2ZW50LWl0ZW0taGVhZGxpbmUsXG4gICAgICBoMy4jeyRibG9ja31fX2V2ZW50LWl0ZW0taGVhZGxpbmUge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgIGgyLiN7JGJsb2NrfV9fZXZlbnQtaXRlbS1oZWFkbGluZSxcbiAgICAgIGgzLiN7JGJsb2NrfV9fZXZlbnQtaXRlbS1oZWFkbGluZSB7XG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIE5FVzogRXZlbnQgdHlwZS9jYXRlZ29yeSBiYWRnZSBzdHlsaW5nXG4gIC4jeyRibG9ja31fX2V2ZW50LWl0ZW0tdHlwZSxcbiAgLiN7JGJsb2NrfV9fZXZlbnQtaXRlbS1jYXRlZ29yeS1uYW1lIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG5cbiAgLy8gTkVXOiBUaW1lIGluZm9ybWF0aW9uIHN0eWxpbmdcbiAgLiN7JGJsb2NrfV9fZXZlbnQtaXRlbS10aW1lIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIGFzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2ZpbHRlci1kcm9wZG93bi5zY3NzXG5AdXNlICcuLi9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5AdXNlICcuLi9nbG9iYWwvYnJlYWtwb2ludHMnIGFzIGJwO1xuXG4vLyBNaXhpbnMgZm9yIHRoZSBmaWx0ZXIgZHJvcGRvd25cbkBtaXhpbiBmaWx0ZXItZHJvcGRvd24oJGJsb2NrKSB7XG4gIC8vIFZpc3VhbCBjb25maWd1cmF0aW9uXG4gICRvdXRsaW5lLXdpZHRoOiAycHg7XG4gICRvdXRsaW5lLW9mZnNldDogMnB4O1xuICAkdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgJHRyYW5zaXRpb24tZWFzaW5nOiBlYXNlO1xuICAkYm9yZGVyLXJhZGl1czogMDtcblxuICAvLyBDb2xvcnMgLSB1c2luZyBDU1MgdmFyaWFibGVzIHRvIHJlc3BlY3Qgc2l0ZS1zcGVjaWZpYyB0aGVtZXNcbiAgJGZpbHRlci1wcmltYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuICAkZmlsdGVyLXNlY29uZGFyeS1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS15ZWxsb3cpO1xuICAkZmlsdGVyLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgJGZpbHRlci1iZy1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUsIGNvbG9ycy4kY29sb3Itd2hpdGUpO1xuICAkZmlsdGVyLWJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAkZmlsdGVyLWhvdmVyLWJnLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUtZ3JheSwgY29sb3JzLiRjb2xvci1qZmUtZ3JheSk7XG4gICRmaWx0ZXItYWN0aXZlLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuICAkZmlsdGVyLXNlbGVjdGVkLWJnOiB2YXIoLS1jb2xvci1qZmUtZ3JheSwgY29sb3JzLiRjb2xvci1qZmUtZ3JheSk7XG4gICRmaWx0ZXItc2VsZWN0ZWQtYm9yZGVyOiB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuXG4gIC4jeyRibG9ja30ge1xuICAgICZfX2NhdGVnb3J5LWZpbHRlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBTdHlsZXNcbiAgICAmX19kcm9wZG93biB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtaW4td2lkdGg6IDI0MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdtZCcpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgLy8gRHJvcGRvd24gdG9nZ2xlIGJ1dHRvblxuICAgICAgJi10b2dnbGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItYmctY29sb3I7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZmlsdGVyLWJvcmRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgY29sb3I6ICRmaWx0ZXItdGV4dC1jb2xvcjtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICBib3JkZXItY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICAgIGJveC1zaGFkb3cgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGZpbHRlci1hY3RpdmUtY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgIG91dGxpbmU6ICRvdXRsaW5lLXdpZHRoIHNvbGlkICRmaWx0ZXItYWN0aXZlLWNvbG9yO1xuICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAkb3V0bGluZS1vZmZzZXQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFeHBhbmRlZCBzdGF0ZVxuICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRmaWx0ZXItYWN0aXZlLWNvbG9yO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG5cbiAgICAgICAgICAuI3skYmxvY2t9X19kcm9wZG93bi1pY29uIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5oYXMtc2VsZWN0aW9ucyB7XG4gICAgICAgICAgLiN7JGJsb2NrfV9fZHJvcGRvd24tbGFiZWwge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gTGFiZWwgaW5zaWRlIGRyb3Bkb3duIHRvZ2dsZVxuICAgICAgJi1sYWJlbCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIH1cblxuICAgICAgLy8gRHJvcGRvd24gYXJyb3cgaWNvblxuICAgICAgJi1pY29uIHtcbiAgICAgICAgd2lkdGg6IDFyZW07XG4gICAgICAgIGhlaWdodDogMXJlbTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIERyb3Bkb3duIG1lbnVcbiAgICAgICYtbWVudSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgLy8gUG9zaXRpb24gdGhlIGRyb3Bkb3duIG1lbnUgZGlyZWN0bHkgYmVsb3cgaXRzIHRyaWdnZXIgZWxlbWVudFxuICAgICAgICB0b3A6IGNhbGMoMTAwJSAtIDFweCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpbHRlci1iZy1jb2xvcjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGZpbHRlci1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAkZmlsdGVyLXByaW1hcnktY29sb3I7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBib3gtc2hhZG93OiAwIDRweCA2cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4gICAgICAgIC8vIEhpZGRlbiBzdGF0ZSAoaGFuZGxlZCBieSBKUylcbiAgICAgICAgJltoaWRkZW5dIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ3hsJykge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2NHB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBJbmRpdmlkdWFsIGRyb3Bkb3duIG9wdGlvblxuICAgICAgJi1vcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlsdGVyLXByaW1hcnktY29sb3I7XG4gICAgICAgICAgY29sb3I6ICRmaWx0ZXItYmctY29sb3I7XG4gICAgICAgICAgLiN7JGJsb2NrfV9fb3B0aW9uLWNoZWNrYm94IHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGZpbHRlci1iZy1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICBjb2xvcjogJGZpbHRlci1iZy1jb2xvcjtcbiAgICAgICAgICAuI3skYmxvY2t9X19vcHRpb24tY2hlY2tib3gge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZmlsdGVyLWJnLWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFNlbGVjdGVkIHN0YXRlXG4gICAgICAgICZbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItc2VsZWN0ZWQtYmc7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAkZmlsdGVyLXNlbGVjdGVkLWJvcmRlcjtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoMXJlbSAtIDNweCk7XG5cbiAgICAgICAgICAuI3skYmxvY2t9X19vcHRpb24tY2hlY2tib3gge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZmlsdGVyLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItYmctY29sb3I7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6Zm9jdXMsICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpbHRlci1wcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgY29sb3I6ICRmaWx0ZXItYmctY29sb3I7XG4gICAgICAgICAgICAuI3skYmxvY2t9X19vcHRpb24tY2hlY2tib3gge1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRmaWx0ZXItYmctY29sb3I7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItc2VsZWN0ZWQtYmc7XG4gICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENoZWNrYm94IGluZGljYXRvclxuICAgICZfX29wdGlvbi1jaGVja2JveCB7XG4gICAgICBtaW4td2lkdGg6IDEuNXJlbTtcbiAgICAgIGhlaWdodDogMS41cmVtO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGZpbHRlci1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC4xMjVyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICBib3JkZXItY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDFyZW07XG4gICAgICAgIGhlaWdodDogLjVyZW07XG4gICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJGZpbHRlci1hY3RpdmUtY29sb3I7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkZmlsdGVyLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgdG9wOiA0MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE9wdGlvbiB0ZXh0XG4gICAgJl9fb3B0aW9uLXRleHQge1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBjb3VudGVyXG4gICAgJl9fZHJvcGRvd24tY291bnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGhlaWdodDogMS41cmVtO1xuICAgICAgd2lkdGg6IDEuNXJlbTtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgJi52aXNpYmxlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZWR1Y2VkIG1vdGlvbiBzdXBwb3J0XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLiN7JGJsb2NrfV9fZHJvcGRvd24tdG9nZ2xlLFxuICAgIC4jeyRibG9ja31fX2Ryb3Bkb3duLWljb24sXG4gICAgLiN7JGJsb2NrfV9fb3B0aW9uLWNoZWNrYm94IHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gSGlnaCBjb250cmFzdCBtb2RlIHN1cHBvcnRcbiAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAuI3skYmxvY2t9X19kcm9wZG93bi10b2dnbGUsXG4gICAgLiN7JGJsb2NrfV9fZHJvcGRvd24tb3B0aW9uIHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIGFzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2FjdGl2ZS1maWx0ZXJzLnNjc3NcbkB1c2UgJy4uL2dsb2JhbC9jb2xvcnMnIGFzIGNvbG9ycztcblxuQG1peGluIGFjdGl2ZS1maWx0ZXJzKCRibG9jaykge1xuICAgIC8vIFZpc3VhbCBjb25maWd1cmF0aW9uXG4gICAgJG91dGxpbmUtd2lkdGg6IDJweDtcbiAgICAkb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICAkdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgICAkdHJhbnNpdGlvbi1lYXNpbmc6IGVhc2U7XG4gICAgJGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAvLyBDb2xvcnNcbiAgICAkZmlsdGVyLXByaW1hcnktY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnksIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSk7XG4gICAgJGZpbHRlci1zZWNvbmRhcnktYmctY29sb3I6IHZhcigtLWNvbG9yLWpmZS1hbG1vc3Qtd2hpdGUsIGNvbG9ycy4kY29sb3ItamZlLWFsbW9zdC13aGl0ZSk7XG4gICAgJGZpbHRlci1hY3RpdmUtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnksIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSk7XG5cbiAgICAuI3skYmxvY2t9IHtcblxuICAgICAgICAvLyBBY3RpdmUgRmlsdGVyc1xuICAgICAgICAmX19hY3RpdmUtZmlsdGVycy1jb250YWluZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItc2Vjb25kYXJ5LWJnLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fYWN0aXZlLWZpbHRlcnMtbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwuI3skYmxvY2t9X19hY3RpdmUtZmlsdGVycy1saXN0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBnYXA6IDAuNXJlbTtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkuI3skYmxvY2t9X19hY3RpdmUtZmlsdGVyLWl0ZW0ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fYWN0aXZlLWZpbHRlci1yZW1vdmUsXG4gICAgICAgICZfX2FjdGl2ZS1maWx0ZXItcmVtb3ZlLWFsbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBnYXA6IDAuMTI1cmVtO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZyxcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nO1xuICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHg7XG4gICAgICAgICAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiA0cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2FjdGl2ZS1maWx0ZXItcmVtb3ZlIHtcbiAgICAgICAgICAgID5zcGFuIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6ICRvdXRsaW5lLXdpZHRoIHNvbGlkICRmaWx0ZXItYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAkb3V0bGluZS1vZmZzZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSZW1vdmUgYWxsIGZpbHRlcnMgYnV0dG9uXG4gICAgICAgICZfX2FjdGl2ZS1maWx0ZXItcmVtb3ZlLWFsbCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgZ2FwOiAuNzVyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuXG4gICAgICAgICAgICA+c3BhbiB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUteWVsbG93LCBjb2xvcnMuJGNvbG9yLWpmZS15ZWxsb3cpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgICAgICA+c3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlZHVjZWQgbW90aW9uIHN1cHBvcnRcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuXG4gICAgICAgIC4jeyRibG9ja31fX2FjdGl2ZS1maWx0ZXItcmVtb3ZlLFxuICAgICAgICAuI3skYmxvY2t9X19hY3RpdmUtZmlsdGVyLXJlbW92ZS1hbGwge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhpZ2ggY29udHJhc3QgbW9kZSBzdXBwb3J0XG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcblxuICAgICAgICAuI3skYmxvY2t9X19hY3RpdmUtZmlsdGVyLXJlbW92ZSxcbiAgICAgICAgLiN7JGJsb2NrfV9fYWN0aXZlLWZpbHRlci1yZW1vdmUtYWxsIHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIGFzc2V0cy9zY3NzL2NvbXBvbmVudHMvX21vYmlsZS10b2dnbGUuc2Nzc1xuQHVzZSAnLi4vZ2xvYmFsL2NvbG9ycycgYXMgY29sb3JzO1xuQHVzZSAnLi4vZ2xvYmFsL2JyZWFrcG9pbnRzJyBhcyBicDtcblxuQG1peGluIG1vYmlsZS10b2dnbGUoJGJsb2NrKSB7XG4gIC8vIFZpc3VhbCBjb25maWd1cmF0aW9uXG4gICRvdXRsaW5lLXdpZHRoOiAycHg7XG4gICRvdXRsaW5lLW9mZnNldDogMnB4O1xuICAkdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgJHRyYW5zaXRpb24tZWFzaW5nOiBlYXNlO1xuXG4gIC8vIENvbG9yc1xuICAkZmlsdGVyLXByaW1hcnktY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnksIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSk7XG4gICRmaWx0ZXItc2Vjb25kYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnksIGNvbG9ycy4kY29sb3ItamZlLXllbGxvdyk7XG4gICRmaWx0ZXItdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAkZmlsdGVyLWdyYXktYmctY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5KTtcbiAgJGZpbHRlci1ncmF5LW1lZGl1bS1iZy1jb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXktbWVkaXVtLCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5LW1lZGl1bSk7XG5cbiAgLiN7JGJsb2NrfSB7XG4gICAgLy8gRmlsdGVyLUZvcm0gU3R5bGluZ1xuICAgICZfX2ZpbHRlci1mb3JtIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLy8gRmlsdGVyIFRvZ2dsZSBCdXR0b25cbiAgICAmX19maWx0ZXItdG9nZ2xlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBnYXA6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItZ3JheS1iZy1jb2xvcjtcbiAgICAgIGNvbG9yOiAkZmlsdGVyLXRleHQtY29sb3I7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246XG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICBib3JkZXItY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpbHRlci1ncmF5LW1lZGl1bS1iZy1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZmlsdGVyLXByaW1hcnktY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIG91dGxpbmU6ICRvdXRsaW5lLXdpZHRoIHNvbGlkICRmaWx0ZXItcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6ICRvdXRsaW5lLW9mZnNldDtcbiAgICAgIH1cblxuICAgICAgLy8gSWNvbiBmb3IgYXJyb3cgYW5pbWF0aW9uXG4gICAgICAmLWFycm93LWljb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgfVxuXG4gICAgICAvLyBJY29uIGZvciBmaWx0ZXJcbiAgICAgICYtZmlsdGVyLWljb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpbHRlci1zZWNvbmRhcnktY29sb3I7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6YXV0bztcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4cGFuZGVkIHN0YXRlXG4gICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgLiN7JGJsb2NrfV9fZmlsdGVyLXRvZ2dsZS1hcnJvdy1pY29uIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE9ubHkgc2hvdyBvbiBtb2JpbGVcbiAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQtZG93bignbGcnKSAge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZpbHRlciBDb250ZW50XG4gICAgJl9fZmlsdGVyLWNvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludCgnbGcnKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItZ3JheS1iZy1jb2xvcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTW9iaWxlIHJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbiAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludC1kb3duKCdsZycpIHtcbiAgICAuI3skYmxvY2t9X19maWx0ZXItY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpbHRlci1ncmF5LWJnLWNvbG9yO1xuICAgICAgJi5pcy12aXNpYmxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlZHVjZWQgbW90aW9uIHN1cHBvcnRcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuI3skYmxvY2t9X19maWx0ZXItdG9nZ2xlLWFycm93LWljb24sXG4gICAgLiN7JGJsb2NrfV9fZmlsdGVyLXRvZ2dsZS1maWx0ZXItaWNvbiB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fc2VhcmNoLWZpbHRlci5zY3NzXG5AdXNlICcuLi9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5AdXNlICcuLi9nbG9iYWwvYnJlYWtwb2ludHMnIGFzIGJwO1xuXG5AbWl4aW4gc2VhcmNoLWZpbHRlcigkYmxvY2spIHtcbiAgLy8gVmlzdWFsIGNvbmZpZ3VyYXRpb25cbiAgJG91dGxpbmUtd2lkdGg6IDJweDtcbiAgJG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICAkdHJhbnNpdGlvbi1lYXNpbmc6IGVhc2U7XG4gICRib3JkZXItcmFkaXVzOiAwO1xuXG4gIC8vIENvbG9yc1xuICAkZmlsdGVyLXByaW1hcnktY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnksIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSk7XG4gICRmaWx0ZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICRmaWx0ZXItYmctY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlLCBjb2xvcnMuJGNvbG9yLXdoaXRlKTtcblxuICAuI3skYmxvY2t9IHtcbiAgICAmX19zZWFyY2gtZmlsdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludCgnbWQnKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2VhcmNoLWxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG5cbiAgICAmX19zZWFyY2gtaW5wdXQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGZpbHRlci1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWx0ZXItYmctY29sb3I7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRmaWx0ZXItcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgb3V0bGluZTogJG91dGxpbmUtd2lkdGggc29saWQgJGZpbHRlci1wcmltYXJ5LWNvbG9yO1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogJG91dGxpbmUtb2Zmc2V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlZHVjZWQgbW90aW9uIHN1cHBvcnRcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuI3skYmxvY2t9X19zZWFyY2gtaW5wdXQge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIlxuLy8gYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fYWpheC1sb2FkbW9yZS5zY3NzXG5AdXNlICcuLi9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5AdXNlICcuLi9nbG9iYWwvYnJlYWtwb2ludHMnIGFzIGJwO1xuXG5AbWl4aW4gbG9hZG1vcmUoJGJsb2NrKSB7XG4gIC8vIFZpc3VhbCBjb25maWd1cmF0aW9uXG4gICRvdXRsaW5lLXdpZHRoOiAycHg7XG4gICRvdXRsaW5lLW9mZnNldDogMnB4O1xuICAkdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgJHRyYW5zaXRpb24tZWFzaW5nOiBlYXNlO1xuICAkYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gIC8vIENvbG9yc1xuICAkbG9hZG1vcmUtcHJpbWFyeS1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgJGxvYWRtb3JlLXByaW1hcnktaG92ZXItY29sb3I6IHZhcigtLWNvbG9yLWpmZS15ZWxsb3csIGNvbG9ycy4kY29sb3ItamZlLXllbGxvdyk7XG4gICRsb2FkbW9yZS10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSwgY29sb3JzLiRjb2xvci13aGl0ZSk7XG4gICRsb2FkbW9yZS1kaXNhYmxlZC1iZy1jb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXktbWVkaXVtLCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5LW1lZGl1bSk7XG4gICRsb2FkbW9yZS1kaXNhYmxlZC10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICRsb2FkbW9yZS1lcnJvci1iZy1jb2xvcjogdmFyKC0tY29sb3ItZXJyb3IsIGNvbG9ycy4kY29sb3ItZXJyb3IpO1xuICAkbG9hZG1vcmUtZXJyb3ItdGV4dC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUsIGNvbG9ycy4kY29sb3Itd2hpdGUpO1xuICAkbG9hZG1vcmUtbG9hZGluZy1iZy1jb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXksIGNvbG9ycy4kY29sb3ItamZlLWdyYXkpO1xuXG4gIC4jeyRibG9ja30ge1xuICAgIC8vIExvYWRNb3JlIENvbnRhaW5lclxuICAgICZfX2xvYWRtb3JlLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAzcmVtIDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLy8gTG9hZE1vcmUgQnV0dG9uXG4gICAgJl9fbG9hZG1vcmUtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAycmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxvYWRtb3JlLXByaW1hcnktY29sb3I7XG4gICAgICBjb2xvcjogJGxvYWRtb3JlLXRleHQtY29sb3I7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246XG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICBib3gtc2hhZG93ICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcblxuICAgICAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoLmlzLWRpc2FibGVkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsb2FkbW9yZS1wcmltYXJ5LWhvdmVyLWNvbG9yO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICBvdXRsaW5lOiAkb3V0bGluZS13aWR0aCBzb2xpZCAkbG9hZG1vcmUtcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6ICRvdXRsaW5lLW9mZnNldDtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmU6bm90KDpkaXNhYmxlZCk6bm90KC5pcy1kaXNhYmxlZCkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICB9XG5cbiAgICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgICAmOmRpc2FibGVkLFxuICAgICAgJi5pcy1kaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsb2FkbW9yZS1kaXNhYmxlZC1iZy1jb2xvcjtcbiAgICAgICAgY29sb3I6ICRsb2FkbW9yZS1kaXNhYmxlZC10ZXh0LWNvbG9yO1xuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxvYWRtb3JlLWRpc2FibGVkLWJnLWNvbG9yO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIExvYWRpbmcgc3RhdGUgaW5kaWNhdG9yXG4gICAgICAmLmlzLWxvYWRpbmcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB3aWR0aDogMS4yNXJlbTtcbiAgICAgICAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgICAgICAgbWFyZ2luOiAtMC42MjVyZW0gMCAwIC0wLjYyNXJlbTtcbiAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGxvYWRtb3JlLXRleHQtY29sb3I7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMb2FkaW5nIGluZGljYXRvciAoc2VwYXJhdGUgZWxlbWVudClcbiAgICAmX19sb2FkaW5nIHtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbG9hZG1vcmUtbG9hZGluZy1iZy1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG5cbiAgICAgICYuaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLy8gTG9hZGluZyBzcGlubmVyXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFcnJvciBtZXNzYWdlXG4gICAgJl9fZXJyb3Ige1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsb2FkbW9yZS1lcnJvci1iZy1jb2xvcjtcbiAgICAgIGNvbG9yOiAkbG9hZG1vcmUtZXJyb3ItdGV4dC1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICYuaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLy8gUmV0cnkgYnV0dG9uIGluc2lkZSBlcnJvciBtZXNzYWdlXG4gICAgICAucmV0cnktYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgb3V0bGluZTogJG91dGxpbmUtd2lkdGggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAkb3V0bGluZS1vZmZzZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGYWxsYmFjayBtZXNzYWdlIHdoZW4gQUpBWCBmYWlscyBjb21wbGV0ZWx5XG4gICAgJl9fYWpheC1mYWxsYmFjayxcbiAgICAmX19mYWxsYmFjay1tZXNzYWdlIHtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbG9hZG1vcmUtbG9hZGluZy1iZy1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLy8gTGFiZWxzIGNvbnRhaW5lciAoaGlkZGVuIGRhdGEgY29udGFpbmVyKVxuICAgICZfX2xvYWRtb3JlLWxhYmVscyxcbiAgICAmX190ZW1wbGF0ZS1sYWJlbHMge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogLTk5OTlweDtcblxuICAgICAgJlthcmlhLWhpZGRlbj1cInRydWVcIl0ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gS2V5ZnJhbWUgYW5pbWF0aW9uIGZvciBsb2FkaW5nIHNwaW5uZXJcbiAgQGtleWZyYW1lcyBzcGluIHtcbiAgICAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbiAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludC1kb3duKCdzbScpIHtcbiAgICAuI3skYmxvY2t9X19sb2FkbW9yZS1idXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIH1cblxuICAgIC4jeyRibG9ja31fX2xvYWRtb3JlLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVkdWNlZCBtb3Rpb24gc3VwcG9ydFxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC4jeyRibG9ja31fX2xvYWRtb3JlLWJ1dHRvbiB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdCguaXMtZGlzYWJsZWQpIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOmFjdGl2ZTpub3QoOmRpc2FibGVkKTpub3QoLmlzLWRpc2FibGVkKSB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJi5pcy1sb2FkaW5nOjphZnRlciB7XG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGxvYWRtb3JlLXRleHQtY29sb3I7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JGJsb2NrfV9fbG9hZGluZzo6YmVmb3JlIHtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBzcGluIHtcbiAgICAgIDAlLCAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSGlnaCBjb250cmFzdCBtb2RlIHN1cHBvcnRcbiAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAuI3skYmxvY2t9X19sb2FkbW9yZS1idXR0b24ge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgY3VycmVudENvbG9yO1xuXG4gICAgICAmOmRpc2FibGVkLFxuICAgICAgJi5pcy1kaXNhYmxlZCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogR3JheVRleHQ7XG4gICAgICAgIGNvbG9yOiBHcmF5VGV4dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuI3skYmxvY2t9X19sb2FkaW5nLFxuICAgIC4jeyRibG9ja31fX2Vycm9yLFxuICAgIC4jeyRibG9ja31fX2FqYXgtZmFsbGJhY2ssXG4gICAgLiN7JGJsb2NrfV9fZmFsbGJhY2stbWVzc2FnZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gUHJpbnQgc3R5bGVzXG4gIEBtZWRpYSBwcmludCB7XG4gICAgLiN7JGJsb2NrfV9fbG9hZG1vcmUtY29udGFpbmVyLFxuICAgIC4jeyRibG9ja31fX2xvYWRpbmcsXG4gICAgLiN7JGJsb2NrfV9fZXJyb3Ige1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==*/