/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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_jfepublications_publicationlist.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/**
 * Universal pagination component mixin
 * Provides complete styling for paginated content navigation
 */
.ce-jfepublications_publicationlist__category-filter {
  width: 100%;
}
.ce-jfepublications_publicationlist__dropdown {
  position: relative;
  min-width: 240px;
  width: 100%;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .ce-jfepublications_publicationlist__dropdown {
    margin-bottom: 0;
  }
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__dropdown-toggle:hover {
  border-color: var(--color-primary, #009ddf);
}
.ce-jfepublications_publicationlist__dropdown-toggle:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfepublications_publicationlist__dropdown-toggle[aria-expanded=true] {
  border-color: var(--color-primary, #009ddf);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.ce-jfepublications_publicationlist__dropdown-toggle[aria-expanded=true] .ce-jfepublications_publicationlist__dropdown-icon {
  transform: rotate(180deg);
}
.ce-jfepublications_publicationlist__dropdown-toggle.has-selections .ce-jfepublications_publicationlist__dropdown-label {
  font-weight: 600;
}
.ce-jfepublications_publicationlist__dropdown-label {
  margin-right: 0.5rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 600;
  font-size: 1.125rem;
}
.ce-jfepublications_publicationlist__dropdown-icon {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  position: relative;
  transition: transform 0.2s ease;
}
.ce-jfepublications_publicationlist__dropdown-icon::after {
  position: absolute;
  top: 50%;
  transform-origin: center;
  content: "";
}
.ce-jfepublications_publicationlist__dropdown-icon::after {
  right: 0;
  transform: translateY(-50%) rotate(0deg);
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__dropdown-menu[hidden] {
  display: none;
}
@media (min-width: 1280px) {
  .ce-jfepublications_publicationlist__dropdown-menu {
    width: calc(100% + 64px);
  }
}
.ce-jfepublications_publicationlist__dropdown-option {
  display: flex;
  align-items: center;
  padding: 0.5rem 1rem;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.ce-jfepublications_publicationlist__dropdown-option:hover {
  background-color: var(--color-primary, #009ddf);
  color: var(--color-white, #ffffff);
}
.ce-jfepublications_publicationlist__dropdown-option:hover .ce-jfepublications_publicationlist__option-checkbox {
  border-color: var(--color-white, #ffffff);
}
.ce-jfepublications_publicationlist__dropdown-option:focus {
  outline: none;
  background-color: var(--color-primary, #009ddf);
  color: var(--color-white, #ffffff);
}
.ce-jfepublications_publicationlist__dropdown-option:focus .ce-jfepublications_publicationlist__option-checkbox {
  border-color: var(--color-white, #ffffff);
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__dropdown-option[aria-selected=true] .ce-jfepublications_publicationlist__option-checkbox {
  border-color: var(--color-primary, #009ddf);
  background-color: var(--color-white, #ffffff);
}
.ce-jfepublications_publicationlist__dropdown-option[aria-selected=true] .ce-jfepublications_publicationlist__option-checkbox::before {
  opacity: 1;
}
.ce-jfepublications_publicationlist__dropdown-option[aria-selected=true]:focus, .ce-jfepublications_publicationlist__dropdown-option[aria-selected=true]:hover {
  background-color: var(--color-primary, #009ddf);
  color: var(--color-white, #ffffff);
}
.ce-jfepublications_publicationlist__dropdown-option[aria-selected=true]:focus .ce-jfepublications_publicationlist__option-checkbox, .ce-jfepublications_publicationlist__dropdown-option[aria-selected=true]:hover .ce-jfepublications_publicationlist__option-checkbox {
  border-color: var(--color-white, #ffffff);
  background-color: var(--color-jfe-gray, #f3f3f2);
}
.ce-jfepublications_publicationlist__dropdown-option[aria-selected=true]:focus .ce-jfepublications_publicationlist__option-checkbox::before, .ce-jfepublications_publicationlist__dropdown-option[aria-selected=true]:hover .ce-jfepublications_publicationlist__option-checkbox::before {
  opacity: 1;
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__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-jfepublications_publicationlist__option-text {
  flex-grow: 1;
  font-size: 1.125rem;
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__dropdown-counter.visible {
  opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfepublications_publicationlist__dropdown-toggle,
  .ce-jfepublications_publicationlist__dropdown-icon,
  .ce-jfepublications_publicationlist__option-checkbox {
    transition: none;
  }
}
@media (forced-colors: active) {
  .ce-jfepublications_publicationlist__dropdown-toggle,
  .ce-jfepublications_publicationlist__dropdown-option {
    border: 2px solid currentColor;
  }
}
.ce-jfepublications_publicationlist__active-filters-container {
  padding: 1rem;
  background-color: var(--color-jfe-almost-white, #fafafa);
}
.ce-jfepublications_publicationlist__active-filters-label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
}
.ce-jfepublications_publicationlist ul.ce-jfepublications_publicationlist__active-filters-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
  max-width: initial;
}
.ce-jfepublications_publicationlist li.ce-jfepublications_publicationlist__active-filter-item {
  margin-bottom: 0;
}
.ce-jfepublications_publicationlist li.ce-jfepublications_publicationlist__active-filter-item::before {
  content: none;
}
.ce-jfepublications_publicationlist__active-filter-remove, .ce-jfepublications_publicationlist__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-jfepublications_publicationlist__active-filter-remove > span, .ce-jfepublications_publicationlist__active-filter-remove-all > span {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
.ce-jfepublications_publicationlist__active-filter-remove > span {
  text-decoration-color: transparent;
}
.ce-jfepublications_publicationlist__active-filter-remove:hover {
  background-color: transparent;
}
.ce-jfepublications_publicationlist__active-filter-remove:hover > span {
  text-decoration-color: var(--color-black, #000000);
}
.ce-jfepublications_publicationlist__active-filter-remove:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfepublications_publicationlist__active-filter-remove-all {
  background-color: transparent;
  border-color: transparent;
  font-weight: 600;
  gap: 0.75rem;
  font-size: 1.125rem;
}
.ce-jfepublications_publicationlist__active-filter-remove-all > span {
  text-decoration-color: var(--color-jfe-yellow, #ffcc00);
}
.ce-jfepublications_publicationlist__active-filter-remove-all:hover > span, .ce-jfepublications_publicationlist__active-filter-remove-all:focus-visible > span {
  text-decoration-color: var(--color-black, #000000);
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfepublications_publicationlist__active-filter-remove,
  .ce-jfepublications_publicationlist__active-filter-remove-all {
    transition: none;
  }
}
@media (forced-colors: active) {
  .ce-jfepublications_publicationlist__active-filter-remove,
  .ce-jfepublications_publicationlist__active-filter-remove-all {
    border: 2px solid currentColor;
  }
}
.ce-jfepublications_publicationlist__filter-form {
  padding: 0;
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__filter-toggle:hover {
  background-color: var(--color-jfe-gray-medium, #CFCFCF);
  border-color: var(--color-primary, #009ddf);
}
.ce-jfepublications_publicationlist__filter-toggle:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__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-jfepublications_publicationlist__filter-toggle[aria-expanded=true] .ce-jfepublications_publicationlist__filter-toggle-arrow-icon {
  transform: rotate(180deg);
}
@media (max-width: 1023px) {
  .ce-jfepublications_publicationlist__filter-toggle {
    display: flex;
  }
}
@media (min-width: 1024px) {
  .ce-jfepublications_publicationlist__filter-content {
    background-color: var(--color-jfe-gray, #f3f3f2);
    padding-top: 2rem;
  }
}
@media (max-width: 1023px) {
  .ce-jfepublications_publicationlist__filter-content {
    display: none;
    background-color: var(--color-jfe-gray, #f3f3f2);
  }
  .ce-jfepublications_publicationlist__filter-content.is-visible {
    display: block;
    padding-top: 2rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfepublications_publicationlist__filter-toggle-arrow-icon,
  .ce-jfepublications_publicationlist__filter-toggle-filter-icon {
    transition: none;
  }
}
.ce-jfepublications_publicationlist__search-filter {
  width: 100%;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .ce-jfepublications_publicationlist__search-filter {
    margin-bottom: 0;
  }
}
.ce-jfepublications_publicationlist__search-label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__search-input:hover, .ce-jfepublications_publicationlist__search-input:focus {
  border-color: var(--color-primary, #009ddf);
}
.ce-jfepublications_publicationlist__search-input:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfepublications_publicationlist__search-input {
    transition: none;
  }
}
.ce-jfepublications_publicationlist__loadmore-container {
  padding: 3rem 0;
  text-align: center;
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__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-jfepublications_publicationlist__loadmore-button:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfepublications_publicationlist__loadmore-button:active:not(:disabled):not(.is-disabled) {
  transform: translateY(0);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.ce-jfepublications_publicationlist__loadmore-button:disabled, .ce-jfepublications_publicationlist__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-jfepublications_publicationlist__loadmore-button:disabled:hover, .ce-jfepublications_publicationlist__loadmore-button.is-disabled:hover {
  background-color: var(--color-jfe-gray-medium, #CFCFCF);
  transform: none;
  box-shadow: none;
}
.ce-jfepublications_publicationlist__loadmore-button.is-loading {
  position: relative;
  color: transparent;
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__loading {
  padding: 1rem;
  text-align: center;
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-radius: 4px;
  margin: 1rem 0;
  font-style: italic;
}
.ce-jfepublications_publicationlist__loading.hidden {
  display: none;
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__error {
  padding: 1rem;
  background-color: var(--color-error, #df0000);
  color: var(--color-white, #ffffff);
  border-radius: 4px;
  margin: 1rem 0;
  text-align: center;
}
.ce-jfepublications_publicationlist__error.hidden {
  display: none;
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__error .retry-button:hover {
  background-color: rgba(255, 255, 255, 0.3);
}
.ce-jfepublications_publicationlist__error .retry-button:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.8);
  outline-offset: 2px;
}
.ce-jfepublications_publicationlist__ajax-fallback, .ce-jfepublications_publicationlist__fallback-message {
  padding: 1rem;
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-radius: 4px;
  margin: 1rem 0;
  text-align: center;
  font-style: italic;
}
.ce-jfepublications_publicationlist__loadmore-labels, .ce-jfepublications_publicationlist__template-labels {
  display: none !important;
  visibility: hidden;
  position: absolute;
  left: -9999px;
}
.ce-jfepublications_publicationlist__loadmore-labels[aria-hidden=true], .ce-jfepublications_publicationlist__template-labels[aria-hidden=true] {
  display: none !important;
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@media (max-width: 639px) {
  .ce-jfepublications_publicationlist__loadmore-button {
    width: 100%;
    max-width: 300px;
  }
  .ce-jfepublications_publicationlist__loadmore-container {
    padding: 2rem 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfepublications_publicationlist__loadmore-button {
    transition: none;
  }
  .ce-jfepublications_publicationlist__loadmore-button:hover:not(:disabled):not(.is-disabled) {
    transform: none;
  }
  .ce-jfepublications_publicationlist__loadmore-button:active:not(:disabled):not(.is-disabled) {
    transform: none;
  }
  .ce-jfepublications_publicationlist__loadmore-button.is-loading::after {
    animation: none;
    border: 2px solid var(--color-white, #ffffff);
    border-radius: 0;
  }
  .ce-jfepublications_publicationlist__loading::before {
    animation: none;
    border: 2px solid currentColor;
    border-radius: 0;
  }
  @keyframes spin {
    0%, 100% {
      transform: rotate(0deg);
    }
  }
}
@media (forced-colors: active) {
  .ce-jfepublications_publicationlist__loadmore-button {
    border: 2px solid currentColor;
  }
  .ce-jfepublications_publicationlist__loadmore-button:disabled, .ce-jfepublications_publicationlist__loadmore-button.is-disabled {
    border-color: GrayText;
    color: GrayText;
  }
  .ce-jfepublications_publicationlist__loading,
  .ce-jfepublications_publicationlist__error,
  .ce-jfepublications_publicationlist__ajax-fallback,
  .ce-jfepublications_publicationlist__fallback-message {
    border: 1px solid currentColor;
  }
}
@media print {
  .ce-jfepublications_publicationlist__loadmore-container,
  .ce-jfepublications_publicationlist__loading,
  .ce-jfepublications_publicationlist__error {
    display: none !important;
  }
}
.ce-jfepublications_publicationlist__pagination {
  margin: 2rem 0;
}
@media (min-width: 1024px) {
  .ce-jfepublications_publicationlist__pagination {
    margin: 3rem 0;
  }
}
.ce-jfepublications_publicationlist__pagination-container {
  display: flex;
  justify-content: center;
  width: 100%;
}
.ce-jfepublications_publicationlist ul.ce-jfepublications_publicationlist__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-jfepublications_publicationlist ul.ce-jfepublications_publicationlist__pagination-list {
    gap: 0.5rem;
  }
}
.ce-jfepublications_publicationlist li.ce-jfepublications_publicationlist__pagination-item {
  margin: 0;
}
.ce-jfepublications_publicationlist li.ce-jfepublications_publicationlist__pagination-item::before {
  content: none;
  background-color: transparent;
}
.ce-jfepublications_publicationlist li.ce-jfepublications_publicationlist__pagination-item--current .ce-jfepublications_publicationlist__pagination-link {
  background-color: var(--color-secondary, #ffcc00);
  color: var(--color-black, #000000);
  border-color: var(--color-secondary, #ffcc00);
  font-weight: 600;
}
.ce-jfepublications_publicationlist li.ce-jfepublications_publicationlist__pagination-item--current .ce-jfepublications_publicationlist__pagination-link:hover {
  background-color: var(--color-secondary, #ffcc00);
  color: var(--color-black, #000000);
  transform: none;
  cursor: default;
}
.ce-jfepublications_publicationlist li.ce-jfepublications_publicationlist__pagination-item--previous .ce-jfepublications_publicationlist__pagination-link, .ce-jfepublications_publicationlist li.ce-jfepublications_publicationlist__pagination-item--next .ce-jfepublications_publicationlist__pagination-link {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.5rem 0.75rem;
}
@media (min-width: 640px) {
  .ce-jfepublications_publicationlist li.ce-jfepublications_publicationlist__pagination-item--previous .ce-jfepublications_publicationlist__pagination-link, .ce-jfepublications_publicationlist li.ce-jfepublications_publicationlist__pagination-item--next .ce-jfepublications_publicationlist__pagination-link {
    gap: 0.5rem;
    padding: 0.75rem 1rem;
  }
}
.ce-jfepublications_publicationlist li.ce-jfepublications_publicationlist__pagination-item--disabled .ce-jfepublications_publicationlist__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-jfepublications_publicationlist li.ce-jfepublications_publicationlist__pagination-item--disabled .ce-jfepublications_publicationlist__pagination-link:hover {
  background-color: var(--color-jfe-almost-white, #fafafa);
  color: var(--color-jfe-gray-dark, rgb(189, 189, 189));
  transform: none;
}
.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__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-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link,
  .ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link {
    padding: 0.75rem;
    font-size: 1rem;
  }
}
.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link:hover:not(.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--disabled,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link--disabled):not(.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--current,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link--current),
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link:hover:not(.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--disabled,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link--disabled):not(.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--current,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__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-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link:focus-visible,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link:active:not(.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--disabled,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link--disabled):not(.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--current,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link--current),
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link:active:not(.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--disabled,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link--disabled):not(.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--current,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link--current) {
  transform: translateY(0);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--current,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__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-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--disabled,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__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-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--previous .ce-jfepublications_publicationlist__pagination-text,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link--previous .ce-jfepublications_publicationlist__pagination-text {
  order: 2;
}
.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--previous .ce-jfepublications_publicationlist__pagination-icon,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link--previous .ce-jfepublications_publicationlist__pagination-icon {
  order: 1;
}
.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--next .ce-jfepublications_publicationlist__pagination-text,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link--next .ce-jfepublications_publicationlist__pagination-text {
  order: 1;
}
.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__pagination-link--next .ce-jfepublications_publicationlist__pagination-icon,
.ce-jfepublications_publicationlist span.ce-jfepublications_publicationlist__pagination-link--next .ce-jfepublications_publicationlist__pagination-icon {
  order: 2;
}
.ce-jfepublications_publicationlist__pagination-number {
  font-weight: inherit;
}
.ce-jfepublications_publicationlist__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-jfepublications_publicationlist__pagination-icon {
  font-size: 1.25rem;
  line-height: 1;
}
.ce-jfepublications_publicationlist__pagination-item--ellipsis .ce-jfepublications_publicationlist__pagination-link--ellipsis {
  cursor: default;
}
.ce-jfepublications_publicationlist__pagination-item--ellipsis .ce-jfepublications_publicationlist__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-jfepublications_publicationlist__pagination-container {
    padding: 0 1rem;
  }
  .ce-jfepublications_publicationlist__pagination-list {
    gap: 0.125rem;
  }
  .ce-jfepublications_publicationlist__pagination-link {
    min-width: 40px;
    min-height: 40px;
    padding: 0.375rem;
    font-size: 0.875rem;
  }
}
@media print {
  .ce-jfepublications_publicationlist__pagination {
    display: none !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfepublications_publicationlist__pagination-link {
    transition: none;
  }
  .ce-jfepublications_publicationlist__pagination-link:hover:not(.ce-jfepublications_publicationlist__pagination-link--disabled):not(.ce-jfepublications_publicationlist__pagination-link--current) {
    transform: none;
    box-shadow: none;
  }
  .ce-jfepublications_publicationlist__pagination-link:active:not(.ce-jfepublications_publicationlist__pagination-link--disabled):not(.ce-jfepublications_publicationlist__pagination-link--current) {
    transform: none;
    box-shadow: none;
  }
}
@media (forced-colors: active) {
  .ce-jfepublications_publicationlist__pagination-link {
    border: 2px solid currentColor;
  }
  .ce-jfepublications_publicationlist__pagination-link--current {
    background-color: Highlight;
    color: HighlightText;
    border-color: Highlight;
  }
  .ce-jfepublications_publicationlist__pagination-link--disabled {
    border-color: GrayText;
    color: GrayText;
  }
}
.ce-jfepublications_publicationlist__pagination-link:focus {
  z-index: 1;
  position: relative;
}
.ce-jfepublications_publicationlist__filter-section {
  margin-bottom: 2rem;
}
.ce-jfepublications_publicationlist__list {
  list-style: none;
  padding: 64px 0 0 0;
  margin: 0;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
}
@media (min-width: 1280px) {
  .ce-jfepublications_publicationlist__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 3rem;
  }
}
.ce-jfepublications_publicationlist__list li::before {
  content: none;
  background-color: transparent;
}
.ce-jfepublications_publicationlist__no-results {
  padding: 2rem;
  text-align: center;
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-radius: 4px;
  margin: 2rem 0;
}
.ce-jfepublications_publicationlist__item {
  margin-bottom: 0;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  flex-shrink: 0;
  box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.2);
}
@media (min-width: 768px) {
  .ce-jfepublications_publicationlist__item {
    flex-direction: row;
  }
}
.ce-jfepublications_publicationlist__image-wrapper {
  width: 210px;
  height: 300px;
  overflow: hidden;
  display: flex;
  flex-shrink: 0;
  align-self: center;
}
.ce-jfepublications_publicationlist__image {
  width: 210px;
  margin: 0 auto;
  border: 1px solid var(--color-jfe-gray, #f3f3f2);
}
@media (min-width: 768px) {
  .ce-jfepublications_publicationlist__image {
    margin: 0;
    flex-shrink: 0;
  }
}
.ce-jfepublications_publicationlist__image img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
.ce-jfepublications_publicationlist__details {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  text-align: center;
}
@media (min-width: 768px) {
  .ce-jfepublications_publicationlist__details {
    text-align: left;
  }
}
.ce-jfepublications_publicationlist p.ce-jfepublications_publicationlist__date {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 1rem;
  color: var(--color-black, #000000);
}
.ce-jfepublications_publicationlist__name {
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 1rem;
  color: var(--color-black, #000000);
}
.ce-jfepublications_publicationlist p.ce-jfepublications_publicationlist__description {
  margin-bottom: 1.5rem;
  font-size: 1rem;
}
.ce-jfepublications_publicationlist h3.ce-jfepublications_publicationlist__title {
  margin-bottom: 0.5rem;
  color: var(--color-black, #000000);
}
.ce-jfepublications_publicationlist__link {
  margin-top: auto;
}
.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--color-black, #000000);
  text-decoration: none;
  font-weight: 500;
  transition: color 0.2s ease;
  text-decoration: none;
  justify-content: center;
}
@media (min-width: 768px) {
  .ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__link {
    justify-content: flex-start;
  }
}
.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__link:hover, .ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__link:focus {
  color: var(--color-black, #000000);
  text-decoration: underline;
}
.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__link:hover .ce-jfepublications_publicationlist__icon-wrapper, .ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__link:focus .ce-jfepublications_publicationlist__icon-wrapper {
  background-color: var(--color-secondary-hover, #EBBC00);
}
.ce-jfepublications_publicationlist a.ce-jfepublications_publicationlist__link:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfepublications_publicationlist__icon-wrapper {
  flex-shrink: 0;
}
.ce-jfepublications_publicationlist__description:empty, .ce-jfepublications_publicationlist__source:empty {
  display: none;
}

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