/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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_location_finder.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/**
 * Form Elements Mixin
 * Apply consistent form styling to any block
 *
 * @param {string} $block - BEM block name (e.g., 'ce-contacts')
 *
 * USAGE:
 * @use 'components/form-elements' as form;
 * @include form.form-elements('ce-contacts');
 */
.ce-location-finder .ce-location-finder__input {
  width: 100%;
  padding: 0.75rem 1rem;
  border: 1px solid #8BA4D0;
  border-radius: 0.5rem;
  font-size: 1rem;
  line-height: 1.5;
  color: #1A171B;
  background-color: #FFFFFF;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}
.ce-location-finder .ce-location-finder__input::-webkit-input-placeholder {
  color: #5B718F;
}
.ce-location-finder .ce-location-finder__input::-moz-placeholder {
  color: #5B718F;
}
.ce-location-finder .ce-location-finder__input::placeholder {
  color: #5B718F;
}
.ce-location-finder .ce-location-finder__input:hover:not(:disabled):not(.error):not(.is-invalid) {
  border-color: #003885;
}
.ce-location-finder .ce-location-finder__input:focus {
  outline: none;
  border-color: #003885;
  box-shadow: 0 0 0 3px rgba(0, 56, 133, 0.1);
}
.ce-location-finder .ce-location-finder__input:disabled {
  background-color: #CCD8E8;
  cursor: not-allowed;
  opacity: 0.6;
}
.ce-location-finder .ce-location-finder__input:invalid:not(:-moz-placeholder) {
  border-color: #cc0000;
  background-color: rgba(220, 53, 69, 0.05);
}
.ce-location-finder .ce-location-finder__input.error, .ce-location-finder .ce-location-finder__input.is-invalid, .ce-location-finder .ce-location-finder__input:invalid:not(:placeholder-shown) {
  border-color: #cc0000;
  background-color: rgba(220, 53, 69, 0.05);
}
.ce-location-finder .ce-location-finder__input:invalid:not(:-moz-placeholder):focus {
  box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.1);
}
.ce-location-finder .ce-location-finder__input.error:focus, .ce-location-finder .ce-location-finder__input.is-invalid:focus, .ce-location-finder .ce-location-finder__input:invalid:not(:placeholder-shown):focus {
  box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.1);
}
.ce-location-finder .ce-location-finder__input.is-valid {
  border-color: #28a745;
  background-color: rgba(40, 167, 69, 0.05);
}
.ce-location-finder .ce-location-finder__input.is-valid:focus {
  box-shadow: 0 0 0 3px rgba(40, 167, 69, 0.1);
}
.ce-location-finder .ce-location-finder__textarea {
  width: 100%;
  padding: 0.75rem 1rem;
  border: 1px solid #8BA4D0;
  border-radius: 0.5rem;
  font-size: 1rem;
  line-height: 1.5;
  color: #1A171B;
  background-color: #FFFFFF;
  resize: vertical;
  min-height: 120px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}
.ce-location-finder .ce-location-finder__textarea::-webkit-input-placeholder {
  color: #5B718F;
}
.ce-location-finder .ce-location-finder__textarea::-moz-placeholder {
  color: #5B718F;
}
.ce-location-finder .ce-location-finder__textarea::placeholder {
  color: #5B718F;
}
.ce-location-finder .ce-location-finder__textarea:hover:not(:disabled):not(.error) {
  border-color: #003885;
}
.ce-location-finder .ce-location-finder__textarea:focus {
  outline: none;
  border-color: #003885;
  box-shadow: 0 0 0 3px rgba(0, 56, 133, 0.1);
}
.ce-location-finder .ce-location-finder__textarea.error {
  border-color: #cc0000;
  background-color: rgba(220, 53, 69, 0.05);
}
.ce-location-finder .ce-location-finder__textarea.error:focus {
  box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.1);
}
.ce-location-finder .ce-location-finder__select {
  width: 100%;
  padding: 0.75rem 2.5rem 0.75rem 1rem;
  border: 1px solid #8BA4D0;
  border-radius: 0.5rem;
  font-size: 1rem;
  line-height: 1.5;
  color: #1A171B;
  background-color: #FFFFFF;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.ce-location-finder .ce-location-finder__select:hover:not(:disabled):not(.error) {
  border-color: #003885;
}
.ce-location-finder .ce-location-finder__select:focus {
  outline: none;
  border-color: #003885;
  box-shadow: 0 0 0 3px rgba(0, 56, 133, 0.1);
}
.ce-location-finder .ce-location-finder__select:disabled {
  background-color: #CCD8E8;
  cursor: not-allowed;
  opacity: 0.6;
}
.ce-location-finder .ce-location-finder__select.error {
  border-color: #cc0000;
  background-color: rgba(220, 53, 69, 0.05);
}
.ce-location-finder .ce-location-finder__select.error:focus {
  box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.1);
}
.ce-location-finder .ce-location-finder__select-wrapper {
  position: relative;
  width: 100%;
}
.ce-location-finder .ce-location-finder__select-icon {
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: #738AC2;
  transition: transform 0.2s ease;
}
.ce-location-finder .ce-location-finder__checkbox {
  width: 1.25rem;
  height: 1.25rem;
  border: 1px solid #8BA4D0;
  border-radius: 0.25rem;
  cursor: pointer;
  flex-shrink: 0;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.ce-location-finder .ce-location-finder__checkbox:hover:not(:disabled) {
  border-color: #003885;
}
.ce-location-finder .ce-location-finder__checkbox:focus {
  outline: none;
  border-color: #003885;
  box-shadow: 0 0 0 3px rgba(0, 56, 133, 0.1);
}
.ce-location-finder .ce-location-finder__checkbox:checked {
  background-color: #003885;
  border-color: #003885;
}
.ce-location-finder .ce-location-finder__checkbox:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}
.ce-location-finder .ce-location-finder__checkbox-wrapper {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.ce-location-finder .ce-location-finder__checkbox-label {
  font-size: 0.875rem;
  line-height: 1.5;
  color: #394863;
  cursor: pointer;
}
.ce-location-finder .ce-location-finder__radio {
  width: 1.125rem;
  height: 1.125rem;
  border: 1px solid #8BA4D0;
  cursor: pointer;
  flex-shrink: 0;
  transition: border-color 0.2s ease;
}
.ce-location-finder .ce-location-finder__radio:hover:not(:disabled) {
  border-color: #003885;
}
.ce-location-finder .ce-location-finder__radio:focus {
  outline: none;
  border-color: #003885;
  box-shadow: 0 0 0 3px rgba(0, 56, 133, 0.1);
}
.ce-location-finder .ce-location-finder__radio:checked {
  border-color: #003885;
}
.ce-location-finder .ce-location-finder__radio:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}
.ce-location-finder .ce-location-finder__radio-group {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.ce-location-finder .ce-location-finder__radio-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.ce-location-finder .ce-location-finder__radio-label {
  font-size: 1rem;
  line-height: 1.5;
  color: #394863;
  cursor: pointer;
}
.ce-location-finder .ce-location-finder__label {
  display: block;
  margin-bottom: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: #394863;
}
.ce-location-finder .ce-location-finder__label--required::after {
  content: " *";
  color: #cc0000;
}
.ce-location-finder .ce-location-finder__legend {
  display: block;
  margin-bottom: 0.75rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: #394863;
}
.ce-location-finder .ce-location-finder__legend--required::after {
  content: " *";
  color: #cc0000;
}
.ce-location-finder .ce-location-finder__fieldset {
  border: 0;
  padding: 0;
  margin: 0;
}
.ce-location-finder .ce-location-finder__error {
  display: block;
  margin-top: 0.375rem;
  font-size: 0.875rem;
  color: #cc0000;
}
.ce-location-finder .ce-location-finder__error:empty {
  display: none;
}
.ce-location-finder .ce-location-finder__error::before {
  content: "⚠ ";
}
.ce-location-finder .ce-location-finder__field-group {
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .ce-location-finder .ce-location-finder__field-group {
    margin-bottom: 1.75rem;
  }
}
.ce-location-finder .ce-location-finder__grid {
  display: grid;
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .ce-location-finder .ce-location-finder__grid--2-cols {
    grid-template-columns: repeat(2, 1fr);
  }
}
.ce-location-finder .ce-location-finder__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.ce-location-finder .ce-location-finder__honeypot {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  opacity: 0;
}
.ce-location-finder .ce-location-finder__custom-select {
  position: relative;
  width: auto;
}
.ce-location-finder .ce-location-finder__select-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0.75rem 1rem;
  border: 1px solid #8BA4D0;
  border-radius: 0.5rem;
  font-size: 1rem;
  line-height: 1.5;
  color: #1A171B;
  background-color: #FFFFFF;
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  text-align: left;
}
.ce-location-finder .ce-location-finder__select-trigger:hover {
  border-color: #003885;
}
.ce-location-finder .ce-location-finder__select-trigger:focus-visible {
  outline: none;
  border-color: #003885;
  box-shadow: 0 0 0 3px rgba(0, 56, 133, 0.1);
}
.ce-location-finder .ce-location-finder__select-trigger[aria-expanded=true] {
  border-color: #003885;
}
.ce-location-finder .ce-location-finder__select-trigger[aria-expanded=true] .ce-location-finder__select-icon {
  transform: rotate(180deg) translateY(50%);
}
.ce-location-finder .ce-location-finder__select-value {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ce-location-finder .ce-location-finder__select-icon {
  flex-shrink: 0;
  margin-left: 0.5rem;
  color: #738AC2;
  transition: transform 0.2s ease;
}
.ce-location-finder .ce-location-finder__select-menu {
  position: absolute;
  top: calc(100% + 0.25rem);
  left: 0;
  right: 0;
  max-height: 300px;
  overflow-y: auto;
  background-color: #FFFFFF;
  border: 1px solid #8BA4D0;
  border-radius: 0.5rem;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  z-index: 50;
  list-style: none;
  margin: 0;
  padding: 0;
}
.ce-location-finder .ce-location-finder__select-menu.hidden {
  display: none;
}
.ce-location-finder .ce-location-finder__select-menu:not(.hidden) {
  animation: slideDown 0.2s ease-out;
}
.ce-location-finder .ce-location-finder__select-menu::-webkit-scrollbar {
  width: 8px;
}
.ce-location-finder .ce-location-finder__select-menu::-webkit-scrollbar-track {
  background: #CCD8E8;
  border-radius: 4px;
}
.ce-location-finder .ce-location-finder__select-menu::-webkit-scrollbar-thumb {
  background: #738AC2;
  border-radius: 4px;
}
.ce-location-finder .ce-location-finder__select-menu::-webkit-scrollbar-thumb:hover {
  background: #5B718F;
}
.ce-location-finder .ce-location-finder__select-option button {
  display: block;
  width: 100%;
  padding: 0.75rem 1rem;
  border: 0;
  background: none;
  text-align: left;
  font-size: 1rem;
  color: #1A171B;
  cursor: pointer;
  transition: background-color 0.15s ease;
}
.ce-location-finder .ce-location-finder__select-option button:hover {
  background-color: #F2F5F9;
}
.ce-location-finder .ce-location-finder__select-option button:focus-visible {
  outline: 2px solid #003885;
  outline-offset: -2px;
}
.ce-location-finder .ce-location-finder__select-option button[aria-selected=true] {
  background-color: #CCD8E8;
  font-weight: 600;
  color: #003885;
}
.ce-location-finder .ce-location-finder__select-option:first-child button {
  border-radius: 0.5rem 0.5rem 0 0;
}
.ce-location-finder .ce-location-finder__select-option:last-child button {
  border-radius: 0 0 0.5rem 0.5rem;
}
@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.ce-location-finder__filter-container {
  margin-bottom: 2rem;
  padding: 1.5rem 0;
}
@media (min-width: 768px) {
  .ce-location-finder__filter-container {
    padding: 2rem 0;
  }
}
.ce-location-finder__filter-grid {
  display: grid;
  gap: 1rem;
}
@media (min-width: 768px) {
  .ce-location-finder__filter-grid {
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .ce-location-finder__filter-grid {
    gap: 2rem;
  }
}
.ce-location-finder__filter-item {
  width: 100%;
}
.ce-location-finder__filter-item--location {
  display: flex;
  gap: 0.5rem;
  align-items: flex-start;
}
@media (min-width: 768px) {
  .ce-location-finder__filter-item--location {
    gap: 0.75rem;
  }
}
.ce-location-finder__location-input-wrapper {
  flex: 1;
}
.ce-location-finder__location-input {
  width: 100%;
  padding: 0.75rem 1rem;
  border: 1px solid #8BA4D0;
  border-radius: 0.5rem;
  font-size: 1rem;
  line-height: 1.5;
  color: #1A171B;
  background-color: #FFFFFF;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.ce-location-finder__location-input::-webkit-input-placeholder {
  color: #5B718F;
}
.ce-location-finder__location-input::-moz-placeholder {
  color: #5B718F;
}
.ce-location-finder__location-input::placeholder {
  color: #5B718F;
}
.ce-location-finder__location-input:hover {
  border-color: #003885;
}
.ce-location-finder__location-input:focus {
  outline: none;
  border-color: #003885;
  box-shadow: 0 0 0 3px rgba(0, 56, 133, 0.1);
}
.ce-location-finder__custom-select--range {
  width: auto;
  min-width: 120px;
}
.ce-location-finder__select-trigger--range {
  padding: 0.75rem 1rem;
}
.ce-location-finder__search-button {
  padding: 0.875rem 1.5rem;
  border: 2px solid #003885;
  border-radius: 0.5rem;
  font-size: 1rem;
  line-height: 1.125rem;
  font-weight: 600;
  color: #FFFFFF;
  background-color: #003885;
  cursor: pointer;
  white-space: nowrap;
  transition: background-color 0.3s ease, color 0.3s ease, transform 0.2s ease;
}
.ce-location-finder__search-button:hover:not(:disabled) {
  background-color: #FFFFFF;
  color: #003885;
}
.ce-location-finder__search-button:focus-visible {
  outline: 2px solid #003885;
  outline-offset: 2px;
}
.ce-location-finder__search-button:active {
  transform: translateY(1px);
}
.ce-location-finder__search-button.hidden {
  display: none;
}
.ce-location-finder__search-button:disabled, .ce-location-finder__search-button[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.ce-location-finder__map {
  position: relative;
  width: 100%;
  height: 400px;
  border-radius: 10px;
  overflow: hidden;
  background-color: #CCD8E8;
}
@media (min-width: 768px) {
  .ce-location-finder__map {
    height: 500px;
  }
}
@media (min-width: 1024px) {
  .ce-location-finder__map {
    height: 600px;
  }
}
.ce-location-finder__map .infowindow-headline {
  font-size: 1.125rem;
  font-weight: 700;
  color: #1A171B;
  margin-bottom: 0.25rem;
}
.ce-location-finder__map #bodyContent {
  font-size: 1rem;
  line-height: 1.5;
  color: #1A171B;
}
.ce-location-finder__map #bodyContent p:empty {
  display: none;
}
.ce-location-finder__map #bodyContent a {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  color: #003885;
  text-decoration: none;
}
.ce-location-finder__map #bodyContent a .icon-kontakt-notfall {
  color: #cc0000;
}
.ce-location-finder__map-blocked {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  background-color: #FFFFFF;
  z-index: 10;
  text-align: center;
}
.ce-location-finder__map-blocked.hidden {
  display: none;
}
.ce-location-finder__map-icon {
  width: 60px;
  height: 60px;
  margin-bottom: 1.5rem;
  opacity: 0.7;
}
@media (min-width: 768px) {
  .ce-location-finder__map-icon {
    width: 80px;
    height: 80px;
  }
}
.ce-location-finder__map-headline {
  font-size: 1.5rem;
  font-weight: 600;
  color: #1A1F37;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .ce-location-finder__map-headline {
    font-size: 1.875rem;
  }
}
.ce-location-finder__map-text {
  max-width: 500px;
  font-size: 1rem;
  line-height: 1.6;
  color: #394863;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .ce-location-finder__map-text {
    margin-bottom: 2rem;
  }
}
.ce-location-finder__map-button {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  border: 2px solid #003885;
  border-radius: 50px;
  font-size: 1.125rem;
  font-weight: 700;
  color: #FFFFFF;
  background-color: #003885;
  cursor: pointer;
  transition: background-color 0.3s ease, color 0.3s ease, transform 0.2s ease;
}
.ce-location-finder__map-button:hover {
  background-color: #FFFFFF;
  color: #003885;
}
.ce-location-finder__map-button:focus-visible {
  outline: 2px solid #003885;
  outline-offset: 2px;
}
.ce-location-finder__map-button:active {
  transform: translateY(1px);
}
.ce-location-finder__map-button .icon-pfeil-rechts {
  transition: transform 0.2s ease;
}
.ce-location-finder__map-button:hover .icon-pfeil-rechts {
  transform: translateX(0.25rem);
}
.ce-location-finder__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VfbG9jYXRpb25fZmluZGVyLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUNTaEI7Ozs7Ozs7OztFQUFBO0FBZ0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY0NkVTtFRGVWLHlCQ2hCVTtFRGlCVjtBRGJKO0FDZUk7RUFDRSxjQ1hXO0FGRmpCO0FDWUk7RUFDRSxjQ1hXO0FGRmpCO0FDWUk7RUFDRSxjQ1hXO0FGRmpCO0FDZ0JJO0VBQ0UscUJDN0JVO0FGZWhCO0FDaUJJO0VBQ0U7RUFDQSxxQkNsQ1U7RURtQ1Y7QURmTjtBQ2tCSTtFQUNFLHlCQzdCVztFRDhCWDtFQUNBO0FEaEJOO0FDb0JJO0VBR0UscUJDVlE7RURXUix5Q0NQYztBRmJwQjtBQ2dCSTtFQUdFLHFCQ1ZRO0VEV1IseUNDUGM7QUZicEI7QUNzQk07RUFDRTtBRHBCUjtBQ21CTTtFQUNFO0FEcEJSO0FDeUJJO0VBQ0UscUJDbkJVO0VEb0JWLHlDQ2RnQjtBRlR0QjtBQ3lCTTtFQUNFO0FEdkJSO0FDZ0NFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY0N4RVU7RUR5RVYseUJDMUVVO0VEMkVWO0VBQ0E7RUFDQTtBRDlCSjtBQ2dDSTtFQUNFLGNDdkVXO0FGeUNqQjtBQzZCSTtFQUNFLGNDdkVXO0FGeUNqQjtBQzZCSTtFQUNFLGNDdkVXO0FGeUNqQjtBQ2lDSTtFQUNFLHFCQ3pGVTtBRjBEaEI7QUNrQ0k7RUFDRTtFQUNBLHFCQzlGVTtFRCtGVjtBRGhDTjtBQ21DSTtFQUNFLHFCQzdEUTtFRDhEUix5Q0MxRGM7QUZ5QnBCO0FDbUNNO0VBQ0U7QURqQ1I7QUMwQ0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjQ2pIVTtFRGtIVix5QkNuSFU7RURvSFY7RUFDQTtLQUFBO1VBQUE7RUFDQTtBRHhDSjtBQzBDSTtFQUNFLHFCQzlIVTtBRnNGaEI7QUMyQ0k7RUFDRTtFQUNBLHFCQ25JVTtFRG9JVjtBRHpDTjtBQzRDSTtFQUNFLHlCQzlIVztFRCtIWDtFQUNBO0FEMUNOO0FDNkNJO0VBQ0UscUJDeEdRO0VEeUdSLHlDQ3JHYztBRjBEcEI7QUM2Q007RUFDRTtBRDNDUjtBQ2dERTtFQUNFO0VBQ0E7QUQ5Q0o7QUNpREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY0NySmE7RURzSmI7QUQvQ0o7QUNzREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRHBESjtBQ3NESTtFQUNFLHFCQ3BMVTtBRmdJaEI7QUN1REk7RUFDRTtFQUNBLHFCQ3pMVTtFRDBMVjtBRHJETjtBQ3dESTtFQUNFLHlCQzlMVTtFRCtMVixxQkMvTFU7QUZ5SWhCO0FDeURJO0VBQ0U7RUFDQTtBRHZETjtBQzJERTtFQUNFO0VBQ0E7RUFDQTtBRHpESjtBQzRERTtFQUNFO0VBQ0E7RUFDQSxjQ2pNYTtFRGtNYjtBRDFESjtBQ2lFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRC9ESjtBQ2lFSTtFQUNFLHFCQ2xPVTtBRm1LaEI7QUNrRUk7RUFDRTtFQUNBLHFCQ3ZPVTtFRHdPVjtBRGhFTjtBQ21FSTtFQUNFLHFCQzVPVTtBRjJLaEI7QUNvRUk7RUFDRTtFQUNBO0FEbEVOO0FDc0VFO0VBQ0U7RUFDQTtFQUNBO0FEcEVKO0FDdUVFO0VBQ0U7RUFDQTtFQUNBO0FEckVKO0FDd0VFO0VBQ0U7RUFDQTtFQUNBLGNDcFBhO0VEcVBiO0FEdEVKO0FDNkVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjQ2pRYTtBRnNMakI7QUM2RUk7RUFDRTtFQUNBLGNDL09RO0FGb0tkO0FDK0VFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjQzlRYTtBRmlNakI7QUMrRUk7RUFDRTtFQUNBLGNDNVBRO0FGK0tkO0FDcUZFO0VBQ0U7RUFDQTtFQUNBO0FEbkZKO0FDMEZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY0NsUlU7QUYwTGQ7QUMwRkk7RUFDRTtBRHhGTjtBQzJGSTtFQUNFO0FEekZOO0FDaUdFO0VBQ0U7QUQvRko7QUczTkk7RUZ5VEY7SUFJSTtFRDlGSjtBQUNGO0FDcUdFO0VBQ0U7RUFDQTtBRG5HSjtBR3BPSTtFRnlVQTtJQUVJO0VEbkdOO0FBQ0Y7QUMyR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUR6R0o7QUNnSEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEOUdKO0FDcUhFO0VBQ0U7RUFDQTtBRG5ISjtBQ3NIRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGNDdllVO0VEd1lWLHlCQ3pZVTtFRDBZVjtFQUNBO0VBQ0E7QURwSEo7QUNzSEk7RUFDRSxxQkNwWlU7QUZnU2hCO0FDdUhJO0VBQ0U7RUFDQSxxQkN6WlU7RUQwWlY7QURySE47QUN3SEk7RUFDRSxxQkM5WlU7QUZ3U2hCO0FDd0hNO0VBQ0U7QUR0SFI7QUMySEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBRHpISjtBQzRIRTtFQUNFO0VBQ0E7RUFDQSxjQ25hYTtFRG9hYjtBRDFISjtBQzZIRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCQ3RiVTtFRHViVjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRDNISjtBQzZISTtFQUNFO0FEM0hOO0FDOEhJO0VBQ0U7QUQ1SE47QUNnSUk7RUFDRTtBRDlITjtBQ2lJSTtFQUNFLG1CQ3hjVztFRHljWDtBRC9ITjtBQ2tJSTtFQUNFLG1CQzFjVztFRDJjWDtBRGhJTjtBQ2tJTTtFQUNFLG1CQzdjUztBRjZVakI7QUNzSUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGNDbmVRO0VEb2VSO0VBQ0E7QURwSU47QUNzSU07RUFDRSx5QkNyZVE7QUZpV2hCO0FDdUlNO0VBQ0U7RUFDQTtBRHJJUjtBQ3dJTTtFQUNFLHlCQzdlUztFRDhlVDtFQUNBLGNDemZRO0FGbVhoQjtBQzBJSTtFQUNFO0FEeElOO0FDMklJO0VBQ0U7QUR6SU47QUM4SUU7RUFDRTtJQUNFO0lBQ0E7RUQ1SUo7RUM4SUU7SUFDRTtJQUNBO0VENUlKO0FBQ0Y7QUF6WEU7RUFDRTtFQUNBO0FBMlhKO0FHelhJO0VISkY7SUFJSTtFQTZYSjtBQUNGO0FBMVhFO0VBQ0U7RUFDQTtBQTRYSjtBR2xZSTtFSElGO0lBS0k7SUFDQTtFQTZYSjtBQUNGO0FHeFlJO0VISUY7SUFVSTtFQThYSjtBQUNGO0FBM1hFO0VBQ0U7QUE2WEo7QUEzWEk7RUFDRTtFQUNBO0VBQ0E7QUE2WE47QUdyWkk7RUhxQkE7SUFNSTtFQThYTjtBQUNGO0FBdFhFO0VBQ0U7QUF3WEo7QUFyWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjRXZEVTtFRndEVix5QkV6RFU7RUYwRFY7QUF1WEo7QUFyWEk7RUFDRSxjRXBEVztBRjJhakI7QUF4WEk7RUFDRSxjRXBEVztBRjJhakI7QUF4WEk7RUFDRSxjRXBEVztBRjJhakI7QUFwWEk7RUFDRSxxQkV0RVU7QUY0YmhCO0FBblhJO0VBQ0U7RUFDQSxxQkUzRVU7RUY0RVY7QUFxWE47QUE3V0U7RUFDRTtFQUNBO0FBK1dKO0FBNVdFO0VBQ0U7QUE4V0o7QUF2V0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjRW5HVTtFRm9HVix5QkV6R1k7RUYwR1o7RUFDQTtFQUNBO0FBeVdKO0FBdldJO0VBQ0UseUJFMUdRO0VGMkdSLGNFaEhVO0FGeWRoQjtBQXRXSTtFQUNFO0VBQ0E7QUF3V047QUFyV0k7RUFDRTtBQXVXTjtBQXBXSTtFQUNFO0FBc1dOO0FBcFdJO0VBRUU7RUFDQTtFQUNBO0FBcVdOO0FBN1ZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCRXZJYTtBRnNlakI7QUdsZUk7RUg2SEY7SUFTSTtFQWdXSjtBQUNGO0FHdmVJO0VINkhGO0lBYUk7RUFpV0o7QUFDRjtBQTdWSTtFQUNFO0VBQ0E7RUFDQSxjRTFKUTtFRjJKUjtBQStWTjtBQTdWSTtFQUNFO0VBQ0E7RUFDQSxjRWhLUTtBRitmZDtBQTlWTTtFQUNFO0FBZ1dSO0FBOVZNO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY0U5S1E7RUYrS1I7QUFnV1I7QUEvVlE7RUFDSSxjRTNJRTtBRjRlZDtBQXZWRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJFak1VO0VGa01WO0VBQ0E7QUF5Vko7QUF2Vkk7RUFDRTtBQXlWTjtBQXJWRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBdVZKO0FHNWhCSTtFSGlNRjtJQU9JO0lBQ0E7RUF3Vko7QUFDRjtBQXJWRTtFQUNFO0VBQ0E7RUFDQSxjRTVNYTtFRjZNYjtBQXVWSjtBR3hpQkk7RUg2TUY7SUFPSTtFQXdWSjtBQUNGO0FBclZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY0UxTmE7RUYyTmI7QUF1Vko7QUdwakJJO0VId05GO0lBUUk7RUF3Vko7QUFDRjtBQXJWRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjRXRQVTtFRnVQVix5QkU1UFk7RUY2UFo7RUFDQTtBQXVWSjtBQXJWSTtFQUNFLHlCRTVQUTtFRjZQUixjRWxRVTtBRnlsQmhCO0FBcFZJO0VBQ0U7RUFDQTtBQXNWTjtBQW5WSTtFQUNFO0FBcVZOO0FBbFZJO0VBQ0U7QUFvVk47QUFqVkk7RUFDRTtBQW1WTjtBQTNVRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTZVSjtBQXRVRTtFQUNFO0lBQ0U7SUFDQTtFQXdVSjtFQXRVRTtJQUNFO0lBQ0E7RUF3VUo7QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Njc3MvcGx1Z2lucy9jZV9sb2NhdGlvbl9maW5kZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Nzcy9jb21wb25lbnRzL19mb3JtLWVsZW1lbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Njc3MvaG9zcGl0YWwvZ2xvYmFsL19jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Nzcy9ob3NwaXRhbC9nbG9iYWwvX2JyZWFrcG9pbnRzLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRklMRTogYXNzZXRzL3Njc3MvcGx1Z2lucy9jZV9sb2NhdGlvbl9maW5kZXIuc2Nzc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AdXNlICcuLi9ob3NwaXRhbC9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5AdXNlICcuLi9ob3NwaXRhbC9nbG9iYWwvYnJlYWtwb2ludHMnIGFzIGJwO1xuQHVzZSAnLi4vY29tcG9uZW50cy9mb3JtLWVsZW1lbnRzJyBhcyBmb3JtO1xuXG4kYmxvY2s6ICdjZS1sb2NhdGlvbi1maW5kZXInO1xuXG4uI3skYmxvY2t9IHtcblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIEFQUExZIEZPUk0gRUxFTUVOVCBTVFlMRVNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIEBpbmNsdWRlIGZvcm0uZm9ybS1lbGVtZW50cygkYmxvY2spO1xuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gRklMVEVSIENPTlRBSU5FUlxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgJl9fZmlsdGVyLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMDtcbiAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdtZCcpIHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICB9XG4gIH1cblxuICAmX19maWx0ZXItZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IDFyZW07XG5cbiAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdtZCcpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIGdhcDogMS41cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ2xnJykge1xuICAgICAgZ2FwOiAycmVtO1xuICAgIH1cbiAgfVxuXG4gICZfX2ZpbHRlci1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYtLWxvY2F0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IDAuNXJlbTtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdtZCcpIHtcbiAgICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gTE9DQVRJT04gSU5QVVRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gICZfX2xvY2F0aW9uLWlucHV0LXdyYXBwZXIge1xuICAgIGZsZXg6IDE7XG4gIH1cblxuICAmX19sb2NhdGlvbi1pbnB1dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9ycy4kY29sb3ItZ3JleS0zMDA7XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLWJsYWNrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9ycy4kY29sb3Itd2hpdGU7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2U7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogY29sb3JzLiRjb2xvci1ncmV5LTUwMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogY29sb3JzLiRjb2xvci1wcmltYXJ5O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJvcmRlci1jb2xvcjogY29sb3JzLiRjb2xvci1wcmltYXJ5O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoY29sb3JzLiRjb2xvci1wcmltYXJ5LCAwLjEpO1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gUkFOR0UgU0VMRUNUIChDT01QQUNUKVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgJl9fY3VzdG9tLXNlbGVjdC0tcmFuZ2Uge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1pbi13aWR0aDogMTIwcHg7XG4gIH1cblxuICAmX19zZWxlY3QtdHJpZ2dlci0tcmFuZ2Uge1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gU0VBUkNIIEJVVFRPTlxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgJl9fc2VhcmNoLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogMC44NzVyZW0gMS41cmVtO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9ycy4kY29sb3ItcHJpbWFyeTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLXdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9ycy4kY29sb3ItcHJpbWFyeTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZSwgY29sb3IgMC4zcyBlYXNlLCB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuXG4gICAgJjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcnMuJGNvbG9yLXdoaXRlO1xuICAgICAgY29sb3I6IGNvbG9ycy4kY29sb3ItcHJpbWFyeTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgb3V0bGluZTogMnB4IHNvbGlkIGNvbG9ycy4kY29sb3ItcHJpbWFyeTtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG4gICAgfVxuXG4gICAgJi5oaWRkZW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdIHtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIE1BUCBDT05UQUlORVJcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gICZfX21hcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNDAwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9ycy4kY29sb3ItZ3JleS0xMDA7XG5cbiAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdtZCcpIHtcbiAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludCgnbGcnKSB7XG4gICAgICBoZWlnaHQ6IDYwMHB4O1xuICAgIH1cblxuICAgIC8vIExhYmVscyBpbiBtYXAgaWZyYW1lXG5cbiAgICAuaW5mb3dpbmRvdy1oZWFkbGluZSB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLWJsYWNrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICB9XG4gICAgI2JvZHlDb250ZW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICBjb2xvcjogY29sb3JzLiRjb2xvci1ibGFjaztcbiAgICAgIHA6ZW1wdHkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDAuMjVyZW07XG4gICAgICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgLmljb24ta29udGFrdC1ub3RmYWxsIHtcbiAgICAgICAgICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLWVycm9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBNQVAgQkxPQ0tFRCBPVkVSTEFZXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAmX19tYXAtYmxvY2tlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAycmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9ycy4kY29sb3Itd2hpdGU7XG4gICAgei1pbmRleDogMTA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJi5oaWRkZW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmX19tYXAtaWNvbiB7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICBvcGFjaXR5OiAwLjc7XG5cbiAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdtZCcpIHtcbiAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgIH1cbiAgfVxuXG4gICZfX21hcC1oZWFkbGluZSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogY29sb3JzLiRjb2xvci1ncmV5LTkwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludCgnbWQnKSB7XG4gICAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgIH1cbiAgfVxuXG4gICZfX21hcC10ZXh0IHtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLWdyZXktNzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ21kJykge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG4gIH1cblxuICAmX19tYXAtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9ycy4kY29sb3ItcHJpbWFyeTtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogY29sb3JzLiRjb2xvci13aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcnMuJGNvbG9yLXByaW1hcnk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlLCBjb2xvciAwLjNzIGVhc2UsIHRyYW5zZm9ybSAwLjJzIGVhc2U7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9ycy4kY29sb3Itd2hpdGU7XG4gICAgICBjb2xvcjogY29sb3JzLiRjb2xvci1wcmltYXJ5O1xuICAgIH1cblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBvdXRsaW5lOiAycHggc29saWQgY29sb3JzLiRjb2xvci1wcmltYXJ5O1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTtcbiAgICB9XG5cbiAgICAuaWNvbi1wZmVpbC1yZWNodHMge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIC5pY29uLXBmZWlsLXJlY2h0cyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMC4yNXJlbSk7XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBTQ1JFRU4gUkVBREVSIE9OTFlcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gICZfX3NyLW9ubHkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gQU5JTUFUSU9OU1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgQGtleWZyYW1lcyBzbGlkZURvd24ge1xuICAgIGZyb20ge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBGSUxFOiBhc3NldHMvc2Nzcy9jb21wb25lbnRzL19mb3JtLWVsZW1lbnRzLnNjc3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJldXNhYmxlIGZvcm0gZWxlbWVudCBzdHlsZXMgZm9yIGNvbnNpc3RlbnQgZm9ybSBVSSBhY3Jvc3MgdGhlIHByb2plY3Rcbi8vIFVzZWQgYnk6IGNlX2NvbnRhY3RzLCBjZV9uZXdzIChmaWx0ZXIpLCBhbmQgb3RoZXIgZm9ybSBjb21wb25lbnRzXG5cbkB1c2UgJy4uL2hvc3BpdGFsL2dsb2JhbC9jb2xvcnMnIGFzIGNvbG9ycztcbkB1c2UgJy4uL2hvc3BpdGFsL2dsb2JhbC9icmVha3BvaW50cycgYXMgYnA7XG5cbi8qKlxuICogRm9ybSBFbGVtZW50cyBNaXhpblxuICogQXBwbHkgY29uc2lzdGVudCBmb3JtIHN0eWxpbmcgdG8gYW55IGJsb2NrXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9ICRibG9jayAtIEJFTSBibG9jayBuYW1lIChlLmcuLCAnY2UtY29udGFjdHMnKVxuICpcbiAqIFVTQUdFOlxuICogQHVzZSAnY29tcG9uZW50cy9mb3JtLWVsZW1lbnRzJyBhcyBmb3JtO1xuICogQGluY2x1ZGUgZm9ybS5mb3JtLWVsZW1lbnRzKCdjZS1jb250YWN0cycpO1xuICovXG5AbWl4aW4gZm9ybS1lbGVtZW50cygkYmxvY2spIHtcblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIElOUFVUIEZJRUxEUyAoVGV4dCwgRW1haWwsIFRlbCwgZXRjLilcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC4jeyRibG9ja31fX2lucHV0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgY29sb3JzLiRjb2xvci1ncmV5LTMwMDtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6IGNvbG9ycy4kY29sb3ItYmxhY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3JzLiRjb2xvci13aGl0ZTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogY29sb3JzLiRjb2xvci1ncmV5LTUwMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZXJyb3IpOm5vdCguaXMtaW52YWxpZCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcnMuJGNvbG9yLXByaW1hcnk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcnMuJGNvbG9yLXByaW1hcnk7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYShjb2xvcnMuJGNvbG9yLXByaW1hcnksIDAuMSk7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcnMuJGNvbG9yLWdyZXktMTAwO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG5cbiAgICAvLyBFcnJvciBzdGF0ZVxuICAgICYuZXJyb3IsXG4gICAgJi5pcy1pbnZhbGlkLFxuICAgICY6aW52YWxpZDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICBib3JkZXItY29sb3I6IGNvbG9ycy4kY29sb3ItZXJyb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcnMuJGNvbG9yLWVycm9yLWxpZ2h0O1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IGNvbG9ycy4kY29sb3ItZXJyb3Itc2hhZG93O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZhbGlkIHN0YXRlXG4gICAgJi5pcy12YWxpZCB7XG4gICAgICBib3JkZXItY29sb3I6IGNvbG9ycy4kY29sb3Itc3VjY2VzcztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9ycy4kY29sb3Itc3VjY2Vzcy1saWdodDtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCBjb2xvcnMuJGNvbG9yLXN1Y2Nlc3Mtc2hhZG93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gVEVYVEFSRUFcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC4jeyRibG9ja31fX3RleHRhcmVhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgY29sb3JzLiRjb2xvci1ncmV5LTMwMDtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6IGNvbG9ycy4kY29sb3ItYmxhY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3JzLiRjb2xvci13aGl0ZTtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xuICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLWdyZXktNTAwO1xuICAgIH1cblxuICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KC5lcnJvcikge1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcnMuJGNvbG9yLXByaW1hcnk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcnMuJGNvbG9yLXByaW1hcnk7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYShjb2xvcnMuJGNvbG9yLXByaW1hcnksIDAuMSk7XG4gICAgfVxuXG4gICAgJi5lcnJvciB7XG4gICAgICBib3JkZXItY29sb3I6IGNvbG9ycy4kY29sb3ItZXJyb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcnMuJGNvbG9yLWVycm9yLWxpZ2h0O1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IGNvbG9ycy4kY29sb3ItZXJyb3Itc2hhZG93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gU0VMRUNUIERST1BET1dOXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAuI3skYmxvY2t9X19zZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMi41cmVtIDAuNzVyZW0gMXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcnMuJGNvbG9yLWdyZXktMzAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBjb2xvcjogY29sb3JzLiRjb2xvci1ibGFjaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcnMuJGNvbG9yLXdoaXRlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuXG4gICAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoLmVycm9yKSB7XG4gICAgICBib3JkZXItY29sb3I6IGNvbG9ycy4kY29sb3ItcHJpbWFyeTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBib3JkZXItY29sb3I6IGNvbG9ycy4kY29sb3ItcHJpbWFyeTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKGNvbG9ycy4kY29sb3ItcHJpbWFyeSwgMC4xKTtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9ycy4kY29sb3ItZ3JleS0xMDA7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgb3BhY2l0eTogMC42O1xuICAgIH1cblxuICAgICYuZXJyb3Ige1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcnMuJGNvbG9yLWVycm9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3JzLiRjb2xvci1lcnJvci1saWdodDtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCBjb2xvcnMuJGNvbG9yLWVycm9yLXNoYWRvdztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skYmxvY2t9X19zZWxlY3Qtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLiN7JGJsb2NrfV9fc2VsZWN0LWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMC43NXJlbTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29sb3I6IGNvbG9ycy4kY29sb3ItZ3JleS00MDA7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gQ0hFQ0tCT1hcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC4jeyRibG9ja31fX2NoZWNrYm94IHtcbiAgICB3aWR0aDogMS4yNXJlbTtcbiAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgY29sb3JzLiRjb2xvci1ncmV5LTMwMDtcbiAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcblxuICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcnMuJGNvbG9yLXByaW1hcnk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcnMuJGNvbG9yLXByaW1hcnk7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYShjb2xvcnMuJGNvbG9yLXByaW1hcnksIDAuMSk7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9ycy4kY29sb3ItcHJpbWFyeTtcbiAgICAgIGJvcmRlci1jb2xvcjogY29sb3JzLiRjb2xvci1wcmltYXJ5O1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG4gIH1cblxuICAuI3skYmxvY2t9X19jaGVja2JveC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogMC43NXJlbTtcbiAgfVxuXG4gIC4jeyRibG9ja31fX2NoZWNrYm94LWxhYmVsIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6IGNvbG9ycy4kY29sb3ItZ3JleS03MDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBSQURJTyBCVVRUT05TXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAuI3skYmxvY2t9X19yYWRpbyB7XG4gICAgd2lkdGg6IDEuMTI1cmVtO1xuICAgIGhlaWdodDogMS4xMjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgY29sb3JzLiRjb2xvci1ncmV5LTMwMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcblxuICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcnMuJGNvbG9yLXByaW1hcnk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcnMuJGNvbG9yLXByaW1hcnk7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYShjb2xvcnMuJGNvbG9yLXByaW1hcnksIDAuMSk7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogY29sb3JzLiRjb2xvci1wcmltYXJ5O1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG4gIH1cblxuICAuI3skYmxvY2t9X19yYWRpby1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAxLjVyZW07XG4gIH1cblxuICAuI3skYmxvY2t9X19yYWRpby1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjVyZW07XG4gIH1cblxuICAuI3skYmxvY2t9X19yYWRpby1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6IGNvbG9ycy4kY29sb3ItZ3JleS03MDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBMQUJFTFNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC4jeyRibG9ja31fX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLWdyZXktNzAwO1xuXG4gICAgJi0tcmVxdWlyZWQ6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcgKic7XG4gICAgICBjb2xvcjogY29sb3JzLiRjb2xvci1lcnJvcjtcbiAgICB9XG4gIH1cblxuICAuI3skYmxvY2t9X19sZWdlbmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLWdyZXktNzAwO1xuXG4gICAgJi0tcmVxdWlyZWQ6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcgKic7XG4gICAgICBjb2xvcjogY29sb3JzLiRjb2xvci1lcnJvcjtcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIEZJRUxEU0VUXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAuI3skYmxvY2t9X19maWVsZHNldCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBFUlJPUiBNRVNTQUdFU1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLiN7JGJsb2NrfV9fZXJyb3Ige1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDAuMzc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6IGNvbG9ycy4kY29sb3ItZXJyb3I7XG5cbiAgICAmOmVtcHR5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICfimqAgJztcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIEZJRUxEIEdST1VQU1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLiN7JGJsb2NrfV9fZmllbGQtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ21kJykge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS43NXJlbTtcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIEdSSUQgTEFZT1VUXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAuI3skYmxvY2t9X19ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogMS41cmVtO1xuXG4gICAgJi0tMi1jb2xzIHtcbiAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ21kJykge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gU0NSRUVOIFJFQURFUiBPTkxZXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAuI3skYmxvY2t9X19zci1vbmx5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIEhPTkVZUE9UIChoaWRkZW4gc3BhbSBwcm90ZWN0aW9uKVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLiN7JGJsb2NrfV9faG9uZXlwb3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtOTk5OXB4O1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gQ1VTVE9NIFNFTEVDVCBEUk9QRE9XTlxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLiN7JGJsb2NrfV9fY3VzdG9tLXNlbGVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLiN7JGJsb2NrfV9fc2VsZWN0LXRyaWdnZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9ycy4kY29sb3ItZ3JleS0zMDA7XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLWJsYWNrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9ycy4kY29sb3Itd2hpdGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogY29sb3JzLiRjb2xvci1wcmltYXJ5O1xuICAgIH1cblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcnMuJGNvbG9yLXByaW1hcnk7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYShjb2xvcnMuJGNvbG9yLXByaW1hcnksIDAuMSk7XG4gICAgfVxuXG4gICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICBib3JkZXItY29sb3I6IGNvbG9ycy4kY29sb3ItcHJpbWFyeTtcblxuICAgICAgLiN7JGJsb2NrfV9fc2VsZWN0LWljb24ge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZVkoNTAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skYmxvY2t9X19zZWxlY3QtdmFsdWUge1xuICAgIGZsZXg6IDE7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLiN7JGJsb2NrfV9fc2VsZWN0LWljb24ge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgY29sb3I6IGNvbG9ycy4kY29sb3ItZ3JleS00MDA7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcbiAgfVxuXG4gIC4jeyRibG9ja31fX3NlbGVjdC1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDEwMCUgKyAwLjI1cmVtKTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3JzLiRjb2xvci13aGl0ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcnMuJGNvbG9yLWdyZXktMzAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICBib3gtc2hhZG93OiAwIDRweCA2cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMSksIDAgMnB4IDRweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4wNik7XG4gICAgei1pbmRleDogNTA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICYuaGlkZGVuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpub3QoLmhpZGRlbikge1xuICAgICAgYW5pbWF0aW9uOiBzbGlkZURvd24gMC4ycyBlYXNlLW91dDtcbiAgICB9XG5cbiAgICAvLyBTY3JvbGxiYXIgc3R5bGluZ1xuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgYmFja2dyb3VuZDogY29sb3JzLiRjb2xvci1ncmV5LTEwMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kOiBjb2xvcnMuJGNvbG9yLWdyZXktNDAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3JzLiRjb2xvci1ncmV5LTUwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skYmxvY2t9X19zZWxlY3Qtb3B0aW9uIHtcbiAgICBidXR0b24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgY29sb3I6IGNvbG9ycy4kY29sb3ItYmxhY2s7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcnMuJGNvbG9yLWdyZXktNTA7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCBjb2xvcnMuJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAgICAgfVxuXG4gICAgICAmW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3JzLiRjb2xvci1ncmV5LTEwMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgY29sb3I6IGNvbG9ycy4kY29sb3ItcHJpbWFyeTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkIGJ1dHRvbiB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW0gMC41cmVtIDAgMDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgYnV0dG9uIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwLjVyZW0gMC41cmVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFuaW1hdGlvbiBmb3IgZHJvcGRvd25cbiAgQGtleWZyYW1lcyBzbGlkZURvd24ge1xuICAgIGZyb20ge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9ob3NwaXRhbC9nbG9iYWwvX2NvbG9ycy5zY3NzXG5AdXNlICdzYXNzOmNvbG9yJztcbi8vIEJhc2UgaG9zcGl0YWwgY29sb3JzIGZyb20gZGVzaWduIGRvY3VtZW50XG4kY29sb3ItaG9zcGl0YWwtYmx1ZTogIzAwMzg4NTsgICAgICAgICAgICAgIC8vIEhvc3BpdGFsIHByaW1hcnkgYmx1ZVxuJGNvbG9yLWhvc3BpdGFsLWJsdWUtZ3JleS1kYXJrOiAjNUI3MThGOyAgICAvLyBIb3NwaXRhbCBibHVlLWdyZXkgZGFya1xuJGNvbG9yLWhvc3BpdGFsLWJsdWUtZ3JleS1saWdodDogI0NDRDhFODsgICAvLyBIb3NwaXRhbCBibHVlLWdyZXkgbGlnaHRcbiRjb2xvci1ob3NwaXRhbC1ibHVlLWdyZXktbGlnaHRlcjogI0YyRjVGOTsgLy8gSG9zcGl0YWwgYmx1ZS1ncmV5IGxpZ2h0ZXJcbiRjb2xvci1ob3NwaXRhbC1vcmFuZ2U6ICNERDlENUY7ICAgICAgICAgICAgLy8gSG9zcGl0YWwgb3JhbmdlIChzdGFuZG9ydClcbiRjb2xvci1ob3NwaXRhbC1vcmFuZ2UtbGlnaHRlcjogI0Y4RUJERjsgICAgLy8gSG9zcGl0YWwgb3JhbmdlIGxpZ2h0ZXJcbiRjb2xvci1ob3NwaXRhbC1tYWdlbnRhOiAjQzUwMDdCO1xuXG4vLyBTZW1hbnRpYyBjb2xvcnNcbiRjb2xvci1wcmltYXJ5OiAjMDAzODg1OyAgICAgLy8gUHJpbWFyeSBjb2xvciAoaG9zcGl0YWwgYmx1ZSlcbiRjb2xvci1zZWNvbmRhcnk6ICM1QjcxOEY7ICAgLy8gU2Vjb25kYXJ5IGNvbG9yIChibHVlLWdyZXkgZGFyaylcbiRjb2xvci1hY2NlbnQ6ICNERDlENUY7ICAgICAgLy8gQWNjZW50IGNvbG9yIChob3NwaXRhbCBvcmFuZ2UpXG5cbi8vIFV0aWxpdHkgY29sb3JzXG4kY29sb3Itd2hpdGU6ICNGRkZGRkY7ICAgICAgIC8vIFdoaXRlIGNvbG9yIGZvciBiYWNrZ3JvdW5kc1xuJGNvbG9yLWJsYWNrOiAjMUExNzFCOyAgICAgICAvLyBCbGFjayBjb2xvciBmb3IgdGV4dFxuXG4vLyBFeHRlbmRlZCBncmV5cyBiYXNlZCBvbiBob3NwaXRhbCBibHVlLWdyZXkgcGFsZXR0ZVxuJGNvbG9yLWdyZXktNTA6ICNGMkY1Rjk7ICAgICAvLyBCbHVlLUdyZXktTGlnaHRlclxuJGNvbG9yLWdyZXktMTAwOiAjQ0NEOEU4OyAgICAvLyBCbHVlLUdyZXktTGlnaHRcbiRjb2xvci1ncmV5LTIwMDogI0E4QkREQjsgICAgLy8gSW50ZXJwb2xhdGVkXG4kY29sb3ItZ3JleS0zMDA6ICM4QkE0RDA7ICAgIC8vIEludGVycG9sYXRlZFxuJGNvbG9yLWdyZXktNDAwOiAjNzM4QUMyOyAgICAvLyBJbnRlcnBvbGF0ZWRcbiRjb2xvci1ncmV5LTUwMDogIzVCNzE4RjsgICAgLy8gQmx1ZS1HcmV5LURhcmtcbiRjb2xvci1ncmV5LTYwMDogIzRBNUQ3OTsgICAgLy8gRGFya2VyIHZhcmlhbnRcbiRjb2xvci1ncmV5LTcwMDogIzM5NDg2MzsgICAgLy8gRGFya2VyIHZhcmlhbnRcbiRjb2xvci1ncmV5LTgwMDogIzI4MzM0RDsgICAgLy8gRGFya2VyIHZhcmlhbnRcbiRjb2xvci1ncmV5LTkwMDogIzFBMUYzNzsgICAgLy8gRGFya2VyIHZhcmlhbnRcbiRjb2xvci1ncmV5LTk1MDogIzBGMTIyMTsgICAgLy8gQWxtb3N0IGJsYWNrXG5cbi8vIEhvdmVyIHN0YXRlcyBhbmQgZGVyaXZlZCBjb2xvcnNcbiRjb2xvci1ob3NwaXRhbC1ibHVlLWhvdmVyOiBjb2xvci5hZGp1c3QoJGNvbG9yLWhvc3BpdGFsLWJsdWUsICRsaWdodG5lc3M6IC0xMCUpO1xuJGNvbG9yLWhvc3BpdGFsLW9yYW5nZS1ob3ZlcjogY29sb3IuYWRqdXN0KCRjb2xvci1ob3NwaXRhbC1vcmFuZ2UsICRsaWdodG5lc3M6IC0xMCUpO1xuJGNvbG9yLXByaW1hcnktaG92ZXI6IGNvbG9yLmFkanVzdCgkY29sb3ItcHJpbWFyeSwgJGxpZ2h0bmVzczogLTEwJSk7XG4kY29sb3Itc2Vjb25kYXJ5LWhvdmVyOiBjb2xvci5hZGp1c3QoJGNvbG9yLXNlY29uZGFyeSwgJGxpZ2h0bmVzczogLTEwJSk7XG4kY29sb3ItYWNjZW50LWhvdmVyOiBjb2xvci5hZGp1c3QoJGNvbG9yLWFjY2VudCwgJGxpZ2h0bmVzczogLTEwJSk7XG5cbi8vIE92ZXJsYXkgY29sb3JzIGZvciBiYWNrZ3JvdW5kc1xuJGNvbG9yLW92ZXJsYXktc206IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiRjb2xvci1vdmVybGF5LW1kOiByZ2JhKDAsIDAsIDAsIDAuNjUpO1xuJGNvbG9yLW92ZXJsYXktbGc6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG5cbiRjb2xvci1vdmVybGF5LWxpZ2h0LXNtOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4kY29sb3Itb3ZlcmxheS1saWdodC1tZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjY1KTtcbiRjb2xvci1vdmVybGF5LWxpZ2h0LWxnOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuXG4vLyBFcnJvciBhbmQgc3RhdHVzIGNvbG9yc1xuJGNvbG9yLWVycm9yOiAjY2MwMDAwOyAgICAgICAvLyBFcnJvciBjb2xvciAocmVkKVxuJGNvbG9yLXN1Y2Nlc3M6ICMyOGE3NDU7ICAgICAvLyBTdWNjZXNzIGNvbG9yIChncmVlbilcbiRjb2xvci13YXJuaW5nOiAjZmZjMTA3OyAgICAgLy8gV2FybmluZyBjb2xvciAoeWVsbG93KVxuXG4kY29sb3ItZXJyb3ItbGlnaHQ6IHJnYmEoMjIwLCA1MywgNjksIDAuMDUpOyAvLyBMaWdodCByZWQgZm9yIGJhY2tncm91bmRzXG4kY29sb3ItZXJyb3Itc2hhZG93OiByZ2JhKDIyMCwgNTMsIDY5LCAwLjEpOyAvLyBMaWdodCByZWQgZm9yIGZvY3VzIHNoYWRvd3NcblxuJGNvbG9yLXN1Y2Nlc3MtbGlnaHQ6IHJnYmEoNDAsIDE2NywgNjksIDAuMDUpO1xuJGNvbG9yLXN1Y2Nlc3Mtc2hhZG93OiByZ2JhKDQwLCAxNjcsIDY5LCAwLjEpO1xuXG4vLyBDU1MgUGFyZW50IGFuZCBTaWJsaW5nIFdlYnNpdGUgQ29sb3JzXG5cbiRjb2xvci1tYWluLXBhZ2U6IHJnYigxOTcsIDAsIDEyMyk7IC8vIFBpbmsgKFBhcmVudC9NYWluIHBhZ2UpXG4kY29sb3Itc2VuaW9yLWhlbHA6IHJnYig5MSwgMjEsIDY2KTsgLy8gRGFyayBSZWQgKFNlbmlvciBIZWxwIHNpYmxpbmcgcGFnZSlcbiRjb2xvci1wZW9wbGUtd2l0aC1kaXNhYmlsaXRpZXM6IHJnYigyMzgsIDEyNywgMCk7ICAvLyBPcmFuZ2UgKFBlb3BsZSB3aXRoIERpc2FiaWxpdGllcyBzaWJsaW5nIHBhZ2UpXG4kY29sb3ItcmVoYWJpbGl0YXRpb246IHJnYigyNTEsIDE4OSwgMjMpOyAvLyBZZWxsb3cgKFJlaGFiaWxpdGF0aW9uIHNpYmxpbmcgcGFnZSlcbiRjb2xvci1jaGlsZHJlbi1raWRzLWZhbWlseTogcmdiKDEzNywgMTg2LCAyMyk7IC8vIEdyZWVuIChDaGlsZHJlbiwgS2lkcyAmIEZhbWlseSBzaWJsaW5nIHBhZ2UpXG4kY29sb3ItaG9zcGljZTogcmdiKDEsIDExMSwgMTgzKTsgLy8gQmx1ZSAoSG9zcGljZSBzaWJsaW5nIHBhZ2UpXG4kY29sb3ItaG9tZWxlc3M6IHJnYigzMywgMTE5LCAxMTApOyAvLyBUZWFsIChIb21lbGVzcyBzaWJsaW5nIHBhZ2UpXG4iLCIvLyBBVVRPLUdFTkVSQVRFRCBGSUxFIGZyb20gc2NyaXB0cy9idWlsZC1icmVha3BvaW50cy5qc1xuLy8gRE8gTk9UIEVESVQgRElSRUNUTFlcbi8vIFNvdXJjZTogcG9zdGNzcy5jb25maWcuanMgQlJFQUtQT0lOVFNcblxuLy8gSW1wb3J0IFNhc3MgbWFwIG1vZHVsZVxuQHVzZSBcInNhc3M6bWFwXCI7XG5cbi8vIEJyZWFrcG9pbnQgdmFsdWVzIGZyb20gcG9zdGNzcy5jb25maWcuanNcbiRicmVha3BvaW50LXNtOiA2NDBweDtcbiRicmVha3BvaW50LW1kOiA3NjhweDtcbiRicmVha3BvaW50LWxnOiAxMDI0cHg7XG4kYnJlYWtwb2ludC14bDogMTI4MHB4O1xuJGJyZWFrcG9pbnQtMnhsOiAxNTM2cHg7XG5cbi8vIE1hcCBmb3IgcHJvZ3JhbW1hdGljIGFjY2Vzc1xuJGJyZWFrcG9pbnRzOiAoXG4gICdzbSc6ICRicmVha3BvaW50LXNtLFxuICAnbWQnOiAkYnJlYWtwb2ludC1tZCxcbiAgJ2xnJzogJGJyZWFrcG9pbnQtbGcsXG4gICd4bCc6ICRicmVha3BvaW50LXhsLFxuICAnMnhsJzogJGJyZWFrcG9pbnQtMnhsXG4pO1xuXG4vLyBNaXhpbiBmb3IgZWFzeSBtZWRpYSBxdWVyaWVzIGJhc2VkIG9uIGRlZmluZWQgYnJlYWtwb2ludHNcbkBtaXhpbiBicmVha3BvaW50KCRwb2ludCkge1xuICBAaWYgbWFwLmhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkcG9pbnQpIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLmdldCgkYnJlYWtwb2ludHMsICRwb2ludCkpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJCcmVha3BvaW50ICcjeyRwb2ludH0nIGlzIG5vdCBkZWZpbmVkIGluICRicmVha3BvaW50cyBtYXAuXCI7XG4gIH1cbn1cblxuLy8gTWl4aW4gZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzIChzbWFsbGVyIHRoYW4gYSBicmVha3BvaW50KVxuQG1peGluIGJyZWFrcG9pbnQtZG93bigkcG9pbnQpIHtcbiAgQGlmIG1hcC5oYXMta2V5KCRicmVha3BvaW50cywgJHBvaW50KSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAkcG9pbnQpIC0gMXB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiQnJlYWtwb2ludCAnI3skcG9pbnR9JyBpcyBub3QgZGVmaW5lZCBpbiAkYnJlYWtwb2ludHMgbWFwLlwiO1xuICB9XG59XG5cbi8vIE1peGluIGZvciBjcmVhdGluZyBzdHlsZXMgYmV0d2VlbiB0d28gYnJlYWtwb2ludHNcbkBtaXhpbiBicmVha3BvaW50LWJldHdlZW4oJG1pbiwgJG1heCkge1xuICBAaWYgbWFwLmhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbWluKSBhbmQgbWFwLmhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbWF4KSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAkbWluKSkgYW5kIChtYXgtd2lkdGg6IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAkbWF4KSAtIDFweCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcIkJyZWFrcG9pbnQgJyN7JG1pbn0nIG9yICcjeyRtYXh9JyBpcyBub3QgZGVmaW5lZCBpbiAkYnJlYWtwb2ludHMgbWFwLlwiO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/