/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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_jfeeuropeers_eventlist.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/**
 * Universal form components styling - Modular approach
 * Backwards compatible with existing form-components() mixin
 */
/**
 * Form Labels Mixin
 */
/**
 * Form Controls Mixin (Input, Textarea, Select)
 */
/**
 * Form Checks Mixin (Radio & Checkbox)
 */
/**
 * Form Validation Mixin
 */
/**
 * Form Layout Mixin (Floating, Groups, Actions)
 */
/**
 * Form Accessibility Mixin
 */
/**
 * Main form-components mixin - BACKWARDS COMPATIBLE
 * Includes all form styling components
 */
/**
 * Universal pagination component mixin
 * Provides complete styling for paginated content navigation
 */
/**
 * Reusable copyright overlay component
 *
 * Usage:
 * <div class="copyright">© 2024 Photographer Name</div>
 * <div class="copyright copyright--top-left">© 2024 Photographer Name</div>
 * <div class="copyright copyright--masonry">© 2024 Photographer Name</div>
 */
.copyright {
  position: absolute;
  background-color: rgba(0, 0, 0, 0.65);
  color: #ffffff;
  padding: 2px 6px;
  font-size: 0.75rem;
  border-radius: 2px;
  line-height: 1.2;
  z-index: 10;
  pointer-events: none;
  min-width: -moz-max-content;
  min-width: max-content;
  bottom: 8px;
  right: 8px;
}
.copyright--top-right {
  top: 8px;
  right: 8px;
  bottom: auto;
}
.copyright--top-left {
  top: 8px;
  left: 8px;
  right: auto;
  bottom: auto;
}
.copyright--bottom-left {
  bottom: 8px;
  left: 8px;
  right: auto;
}
.copyright--edge, .copyright--masonry, .copyright--collage {
  bottom: 0;
  right: 0;
  border-radius: 0;
  white-space: nowrap;
}
.copyright--modal {
  position: absolute;
  right: 0;
  top: -22px;
  bottom: auto;
  display: block;
  padding: 0.25rem 0.5rem;
  margin: 0;
  font-weight: 400;
}
@media (min-width: 768px) {
  .copyright--modal {
    font-size: 1.25rem;
    top: -32px;
  }
}
.copyright--light {
  background-color: rgba(255, 255, 255, 0.9);
  color: #000000;
}
.copyright--dark {
  background-color: rgba(0, 0, 0, 0.8);
  color: #ffffff;
}
.copyright--transparent {
  background-color: transparent;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.8);
}
.copyright--large {
  font-size: 0.875rem;
  padding: 4px 8px;
}
@media (max-width: 639px) {
  .copyright--hide-mobile {
    display: none;
  }
}
.copyright--hover-show {
  opacity: 0;
  transition: opacity 0.3s ease;
}
*:hover > .copyright--hover-show, *:focus-within > .copyright--hover-show {
  opacity: 1;
}
/**
 * Base event item styles mixin
 * Contains common styles for event items used in both preview and full list
 * @param {string} $block - The BEM block class name
 */
.ce-jfeeuropeers_eventlist__pagination {
  margin: 2rem 0;
}
@media (min-width: 1024px) {
  .ce-jfeeuropeers_eventlist__pagination {
    margin: 3rem 0;
  }
}
.ce-jfeeuropeers_eventlist__pagination-container {
  display: flex;
  justify-content: center;
  width: 100%;
}
.ce-jfeeuropeers_eventlist ul.ce-jfeeuropeers_eventlist__pagination-list {
  display: flex;
  list-style: none;
  padding: 0;
  margin-bottom: 0;
  gap: 0.25rem;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
@media (min-width: 640px) {
  .ce-jfeeuropeers_eventlist ul.ce-jfeeuropeers_eventlist__pagination-list {
    gap: 0.5rem;
  }
}
.ce-jfeeuropeers_eventlist li.ce-jfeeuropeers_eventlist__pagination-item {
  margin: 0;
}
.ce-jfeeuropeers_eventlist li.ce-jfeeuropeers_eventlist__pagination-item::before {
  content: none;
  background-color: transparent;
}
.ce-jfeeuropeers_eventlist li.ce-jfeeuropeers_eventlist__pagination-item--current .ce-jfeeuropeers_eventlist__pagination-link {
  background-color: var(--color-secondary, #ffcc00);
  color: var(--color-black, #000000);
  border-color: var(--color-secondary, #ffcc00);
  font-weight: 600;
}
.ce-jfeeuropeers_eventlist li.ce-jfeeuropeers_eventlist__pagination-item--current .ce-jfeeuropeers_eventlist__pagination-link:hover {
  background-color: var(--color-secondary, #ffcc00);
  color: var(--color-black, #000000);
  transform: none;
  cursor: default;
}
.ce-jfeeuropeers_eventlist li.ce-jfeeuropeers_eventlist__pagination-item--previous .ce-jfeeuropeers_eventlist__pagination-link, .ce-jfeeuropeers_eventlist li.ce-jfeeuropeers_eventlist__pagination-item--next .ce-jfeeuropeers_eventlist__pagination-link {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.5rem 0.75rem;
}
@media (min-width: 640px) {
  .ce-jfeeuropeers_eventlist li.ce-jfeeuropeers_eventlist__pagination-item--previous .ce-jfeeuropeers_eventlist__pagination-link, .ce-jfeeuropeers_eventlist li.ce-jfeeuropeers_eventlist__pagination-item--next .ce-jfeeuropeers_eventlist__pagination-link {
    gap: 0.5rem;
    padding: 0.75rem 1rem;
  }
}
.ce-jfeeuropeers_eventlist li.ce-jfeeuropeers_eventlist__pagination-item--disabled .ce-jfeeuropeers_eventlist__pagination-link {
  background-color: var(--color-jfe-almost-white, #fafafa);
  color: var(--color-jfe-gray-dark, rgb(189, 189, 189));
  border-color: var(--color-jfe-almost-white, #fafafa);
  cursor: not-allowed;
}
.ce-jfeeuropeers_eventlist li.ce-jfeeuropeers_eventlist__pagination-item--disabled .ce-jfeeuropeers_eventlist__pagination-link:hover {
  background-color: var(--color-jfe-almost-white, #fafafa);
  color: var(--color-jfe-gray-dark, rgb(189, 189, 189));
  transform: none;
}
.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 0.5rem;
  background-color: var(--color-white, #ffffff);
  color: var(--color-black, #000000);
  border: 3px solid transparent;
  border-radius: 0;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}
@media (min-width: 640px) {
  .ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link,
  .ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link {
    padding: 0.75rem;
    font-size: 1rem;
  }
}
.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link:hover:not(.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--disabled,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--disabled):not(.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--current,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--current),
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link:hover:not(.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--disabled,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--disabled):not(.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--current,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--current) {
  background-color: transparent;
  border: 3px solid var(--color-black, #000000);
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link:focus-visible,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link:active:not(.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--disabled,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--disabled):not(.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--current,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--current),
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link:active:not(.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--disabled,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--disabled):not(.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--current,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--current) {
  transform: translateY(0);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--current,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--current {
  cursor: default;
  background-color: var(--color-secondary, #ffcc00);
  color: var(--color-black, #000000);
  border-color: var(--color-secondary, #ffcc00);
  font-weight: 600;
}
.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--disabled,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--disabled {
  cursor: not-allowed;
  background-color: var(--color-jfe-almost-white, #fafafa);
  color: var(--color-jfe-gray-dark, rgb(189, 189, 189));
  border-color: var(--color-jfe-almost-white, #fafafa);
}
.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--previous .ce-jfeeuropeers_eventlist__pagination-text,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--previous .ce-jfeeuropeers_eventlist__pagination-text {
  order: 2;
}
.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--previous .ce-jfeeuropeers_eventlist__pagination-icon,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--previous .ce-jfeeuropeers_eventlist__pagination-icon {
  order: 1;
}
.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--next .ce-jfeeuropeers_eventlist__pagination-text,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--next .ce-jfeeuropeers_eventlist__pagination-text {
  order: 1;
}
.ce-jfeeuropeers_eventlist a.ce-jfeeuropeers_eventlist__pagination-link--next .ce-jfeeuropeers_eventlist__pagination-icon,
.ce-jfeeuropeers_eventlist span.ce-jfeeuropeers_eventlist__pagination-link--next .ce-jfeeuropeers_eventlist__pagination-icon {
  order: 2;
}
.ce-jfeeuropeers_eventlist__pagination-number {
  font-weight: inherit;
}
.ce-jfeeuropeers_eventlist__pagination-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.ce-jfeeuropeers_eventlist__pagination-icon {
  font-size: 1.25rem;
  line-height: 1;
}
.ce-jfeeuropeers_eventlist__pagination-item--ellipsis .ce-jfeeuropeers_eventlist__pagination-link--ellipsis {
  cursor: default;
}
.ce-jfeeuropeers_eventlist__pagination-item--ellipsis .ce-jfeeuropeers_eventlist__pagination-link--ellipsis:hover {
  transform: none;
  box-shadow: none;
  border-color: transparent;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
@media (max-width: 639px) {
  .ce-jfeeuropeers_eventlist__pagination-container {
    padding: 0 1rem;
  }
  .ce-jfeeuropeers_eventlist__pagination-list {
    gap: 0.125rem;
  }
  .ce-jfeeuropeers_eventlist__pagination-link {
    min-width: 40px;
    min-height: 40px;
    padding: 0.375rem;
    font-size: 0.875rem;
  }
}
@media print {
  .ce-jfeeuropeers_eventlist__pagination {
    display: none !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfeeuropeers_eventlist__pagination-link {
    transition: none;
  }
  .ce-jfeeuropeers_eventlist__pagination-link:hover:not(.ce-jfeeuropeers_eventlist__pagination-link--disabled):not(.ce-jfeeuropeers_eventlist__pagination-link--current) {
    transform: none;
    box-shadow: none;
  }
  .ce-jfeeuropeers_eventlist__pagination-link:active:not(.ce-jfeeuropeers_eventlist__pagination-link--disabled):not(.ce-jfeeuropeers_eventlist__pagination-link--current) {
    transform: none;
    box-shadow: none;
  }
}
@media (forced-colors: active) {
  .ce-jfeeuropeers_eventlist__pagination-link {
    border: 2px solid currentColor;
  }
  .ce-jfeeuropeers_eventlist__pagination-link--current {
    background-color: Highlight;
    color: HighlightText;
    border-color: Highlight;
  }
  .ce-jfeeuropeers_eventlist__pagination-link--disabled {
    border-color: GrayText;
    color: GrayText;
  }
}
.ce-jfeeuropeers_eventlist__pagination-link:focus {
  z-index: 1;
  position: relative;
}
/**
 * Event List Component
 * Displays a filterable list of events with search and date range filtering
 */
.ce-jfeeuropeers_eventlist .form-label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
  color: var(--color-black, #000000);
  font-size: 1rem;
  line-height: 1.4;
}
.ce-jfeeuropeers_eventlist .form-label.required::after {
  content: " *";
  color: var(--color-error, #df0000);
  font-weight: 700;
}
.ce-jfeeuropeers_eventlist .form-label .required {
  color: var(--color-error, #df0000);
  font-weight: 700;
}
.ce-jfeeuropeers_eventlist .form-label.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-jfeeuropeers_eventlist legend {
  font-size: 1.25rem;
  font-weight: 700;
}
.ce-jfeeuropeers_eventlist .form-control {
  display: block;
  width: 100%;
  padding: 0.75rem 1rem;
  font-size: 1rem;
  font-family: inherit;
  line-height: 1.4;
  color: var(--color-black, #000000);
  background-color: var(--color-white, #ffffff);
  background-clip: padding-box;
  border: none;
  border-bottom: 2px solid var(--color-black, #000000);
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.ce-jfeeuropeers_eventlist .form-control::-moz-placeholder {
  color: var(--color-jfe-gray-darker, rgb(105, 105, 105));
  opacity: 1;
}
.ce-jfeeuropeers_eventlist .form-control::placeholder {
  color: var(--color-jfe-gray-darker, rgb(105, 105, 105));
  opacity: 1;
}
.ce-jfeeuropeers_eventlist .form-control:hover:not(:disabled):not([readonly]) {
  border-bottom-color: var(--color-primary, #009ddf);
}
.ce-jfeeuropeers_eventlist .form-control:focus {
  border-bottom-color: var(--color-primary, #009ddf);
  outline: 0;
  box-shadow: 0 0 0 2px rgba(var(--color-primary, #009ddf), 0.25);
}
.ce-jfeeuropeers_eventlist .form-control:disabled, .ce-jfeeuropeers_eventlist .form-control[readonly] {
  background-color: var(--color-jfe-gray, #f3f3f2);
  color: var(--color-jfe-gray-dark, rgb(189, 189, 189));
  opacity: 1;
  cursor: not-allowed;
}
.ce-jfeeuropeers_eventlist .form-control.is-invalid {
  border-bottom-color: var(--color-error, #df0000);
}
.ce-jfeeuropeers_eventlist .form-control.is-invalid:focus {
  border-bottom-color: var(--color-error, #df0000);
  box-shadow: 0 0 0 2px rgba(var(--color-error, #df0000), 0.25);
}
.ce-jfeeuropeers_eventlist .form-control.is-valid {
  border-bottom-color: #95DF00;
}
.ce-jfeeuropeers_eventlist .form-control.is-valid:focus {
  border-bottom-color: #95DF00;
  box-shadow: 0 0 0 2px rgba(149, 223, 0, 0.25);
}
.ce-jfeeuropeers_eventlist textarea.form-control {
  min-height: 120px;
  resize: vertical;
  line-height: 1.5;
  border-top: 2px solid var(--color-black, #000000);
  border-left: 2px solid var(--color-black, #000000);
  border-right: 2px solid var(--color-black, #000000);
}
.ce-jfeeuropeers_eventlist textarea.form-control:hover:not(:disabled):not([readonly]) {
  border-color: var(--color-primary, #009ddf);
}
.ce-jfeeuropeers_eventlist textarea.form-control:focus {
  border-color: var(--color-primary, #009ddf);
}
.ce-jfeeuropeers_eventlist select.form-control:not([multiple]) {
  background-image: url(/build/images/IconArrowAccordion--Down.8e468af5.svg);
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  padding-right: 2.5rem;
  cursor: pointer;
  border: none;
  border-bottom: 2px solid var(--color-black, #000000);
}
.ce-jfeeuropeers_eventlist select.form-control:not([multiple])::-ms-expand {
  display: none;
}
.ce-jfeeuropeers_eventlist select.form-control:not([multiple]):hover:not(:disabled):not([readonly]) {
  border-bottom-color: var(--color-primary, #009ddf);
}
.ce-jfeeuropeers_eventlist select.form-control:not([multiple]):focus {
  border-bottom-color: var(--color-primary, #009ddf);
  background-image: url(/build/images/IconArrowAccordion--Up.2d71fcd5.svg);
}
.ce-jfeeuropeers_eventlist select.form-control:not([multiple]).is-invalid {
  border-bottom-color: var(--color-error, #df0000);
}
.ce-jfeeuropeers_eventlist select.form-control:not([multiple]).is-invalid:focus {
  border-bottom-color: var(--color-error, #df0000);
}
.ce-jfeeuropeers_eventlist select.form-control:not([multiple]).is-valid {
  border-bottom-color: #95DF00;
}
.ce-jfeeuropeers_eventlist select.form-control:not([multiple]).is-valid:focus {
  border-bottom-color: #95DF00;
}
.ce-jfeeuropeers_eventlist .form-check {
  display: block;
  min-height: 1.5rem;
  padding-left: 2rem;
  margin-bottom: 0.5rem;
  position: relative;
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input,
.ce-jfeeuropeers_eventlist .form-check [type=checkbox],
.ce-jfeeuropeers_eventlist .form-check [type=radio] {
  position: absolute;
  left: 0;
  top: 0.25rem;
  width: 1.25rem;
  height: 1.25rem;
  margin: 0;
  background-color: var(--color-white, #ffffff);
  border: 1px solid var(--color-black, #000000);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input::before,
.ce-jfeeuropeers_eventlist .form-check [type=checkbox]::before,
.ce-jfeeuropeers_eventlist .form-check [type=radio]::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input:hover:not(:disabled),
.ce-jfeeuropeers_eventlist .form-check [type=checkbox]:hover:not(:disabled),
.ce-jfeeuropeers_eventlist .form-check [type=radio]:hover:not(:disabled) {
  border-color: var(--color-primary, #009ddf);
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input:focus,
.ce-jfeeuropeers_eventlist .form-check [type=checkbox]:focus,
.ce-jfeeuropeers_eventlist .form-check [type=radio]:focus {
  border-color: var(--color-primary, #009ddf);
  outline: 0;
  box-shadow: 0 0 0 2px rgba(var(--color-primary, #009ddf), 0.25);
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input:checked,
.ce-jfeeuropeers_eventlist .form-check [type=checkbox]:checked,
.ce-jfeeuropeers_eventlist .form-check [type=radio]:checked {
  background-color: var(--color-primary, #009ddf);
  border-color: var(--color-primary, #009ddf);
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input:disabled,
.ce-jfeeuropeers_eventlist .form-check [type=checkbox]:disabled,
.ce-jfeeuropeers_eventlist .form-check [type=radio]:disabled {
  background-color: var(--color-jfe-gray, #f3f3f2);
  border-color: var(--color-jfe-gray-dark, rgb(189, 189, 189));
  cursor: not-allowed;
  opacity: 0.5;
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input.is-invalid,
.ce-jfeeuropeers_eventlist .form-check [type=checkbox].is-invalid,
.ce-jfeeuropeers_eventlist .form-check [type=radio].is-invalid {
  border-color: var(--color-error, #df0000);
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input.is-invalid:focus,
.ce-jfeeuropeers_eventlist .form-check [type=checkbox].is-invalid:focus,
.ce-jfeeuropeers_eventlist .form-check [type=radio].is-invalid:focus {
  box-shadow: 0 0 0 2px rgba(var(--color-error, #df0000), 0.25);
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input[type=checkbox],
.ce-jfeeuropeers_eventlist .form-check [type=checkbox] {
  border-radius: 2px;
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input[type=checkbox]:checked,
.ce-jfeeuropeers_eventlist .form-check [type=checkbox]:checked {
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27M6 10l3 3 6-6%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1rem 1rem;
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input[type=checkbox]:indeterminate,
.ce-jfeeuropeers_eventlist .form-check [type=checkbox]:indeterminate {
  background-color: var(--color-primary, #009ddf);
  border-color: var(--color-primary, #009ddf);
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27M6 10h8%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1rem 1rem;
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input[type=radio],
.ce-jfeeuropeers_eventlist .form-check [type=radio] {
  border-radius: 50%;
}
.ce-jfeeuropeers_eventlist .form-check .form-check-input[type=radio]:checked,
.ce-jfeeuropeers_eventlist .form-check [type=radio]:checked {
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%272%27 fill=%27%23fff%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1rem 1rem;
}
.ce-jfeeuropeers_eventlist .form-check .form-check-label {
  display: inline-block;
  color: var(--color-black, #000000);
  cursor: pointer;
  font-size: 1rem;
  line-height: 1.4;
  margin-bottom: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.ce-jfeeuropeers_eventlist .form-check .form-check-label.disabled {
  color: var(--color-jfe-gray-dark, rgb(189, 189, 189));
  cursor: not-allowed;
  opacity: 0.5;
}
.ce-jfeeuropeers_eventlist .form-check-inline {
  display: inline-block;
  margin-right: 1rem;
  margin-bottom: 0;
}
@media (min-width: 640px) {
  .ce-jfeeuropeers_eventlist .form-check-inline {
    margin-right: 1.5rem;
  }
}
.ce-jfeeuropeers_eventlist .form-text {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.875rem;
  color: var(--color-jfe-gray-darker, rgb(105, 105, 105));
  line-height: 1.4;
}
.ce-jfeeuropeers_eventlist .form-text.text-danger, .ce-jfeeuropeers_eventlist .form-text.invalid-feedback {
  color: var(--color-error, #df0000);
}
.ce-jfeeuropeers_eventlist .form-text.text-success, .ce-jfeeuropeers_eventlist .form-text.valid-feedback {
  color: #95DF00;
}
.ce-jfeeuropeers_eventlist .invalid-feedback {
  display: none;
  margin-top: 0.25rem;
  font-size: 0.875rem;
  color: var(--color-black, #000000);
  line-height: 1.4;
  padding-left: 1.5rem;
  position: relative;
}
.ce-jfeeuropeers_eventlist .invalid-feedback::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1.25rem;
  height: 1.25rem;
  color: var(--color-black, #000000);
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27%23000%27 d=%27M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8 2.146 2.854Z%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 75% 75%;
  border-radius: 50%;
  border: 3px solid var(--color-error, #df0000);
  display: flex;
  align-items: center;
  justify-content: center;
}
.form-control.is-invalid ~ .ce-jfeeuropeers_eventlist .invalid-feedback, .form-check-input.is-invalid ~ .ce-jfeeuropeers_eventlist .invalid-feedback {
  display: block;
}
.ce-jfeeuropeers_eventlist .valid-feedback {
  display: none;
  margin-top: 0.25rem;
  font-size: 0.875rem;
  color: #95DF00;
  line-height: 1.4;
}
.form-control.is-valid ~ .ce-jfeeuropeers_eventlist .valid-feedback, .form-check-input.is-valid ~ .ce-jfeeuropeers_eventlist .valid-feedback {
  display: block;
}
.ce-jfeeuropeers_eventlist .validation-summary {
  margin-bottom: 1.5rem;
  padding: 1rem 1.25rem;
  border: 2px solid var(--color-error, #df0000);
  border-radius: 4px;
  background-color: color-mix(in srgb, var(--color-error, #df0000) 5%, var(--color-white, #ffffff));
}
@media (min-width: 640px) {
  .ce-jfeeuropeers_eventlist .validation-summary {
    padding: 1.25rem 1.5rem;
  }
}
.ce-jfeeuropeers_eventlist .validation-summary .alert-heading {
  margin: 0 0 0.75rem 0;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-error, #df0000);
  line-height: 1.3;
}
@media (min-width: 640px) {
  .ce-jfeeuropeers_eventlist .validation-summary .alert-heading {
    font-size: 1.25rem;
  }
}
.ce-jfeeuropeers_eventlist .validation-summary .alert-message {
  margin: 0 0 1rem 0;
  font-size: 0.9rem;
  color: color-mix(in srgb, var(--color-error, #df0000) 85%, black);
  line-height: 1.4;
}
@media (min-width: 640px) {
  .ce-jfeeuropeers_eventlist .validation-summary .alert-message {
    font-size: 1rem;
  }
}
.ce-jfeeuropeers_eventlist .validation-summary-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ce-jfeeuropeers_eventlist .validation-summary-list .validation-summary-item {
  margin-bottom: 0.5rem;
  padding-left: 1.5rem;
  position: relative;
  line-height: 1.4;
}
.ce-jfeeuropeers_eventlist .validation-summary-list .validation-summary-item:last-child {
  margin-bottom: 0;
}
.ce-jfeeuropeers_eventlist .validation-summary-list .validation-summary-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.2rem;
  width: 1rem;
  height: 1rem;
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27%23dc3545%27 d=%27M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z%27/%3e%3cpath fill=%27%23dc3545%27 d=%27M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-size: contain;
  flex-shrink: 0;
}
.ce-jfeeuropeers_eventlist .validation-summary-list .validation-summary-item a {
  color: var(--color-error, #df0000);
  text-decoration: underline;
  font-weight: 500;
  transition: color 0.2s ease;
}
.ce-jfeeuropeers_eventlist .validation-summary-list .validation-summary-item a:hover, .ce-jfeeuropeers_eventlist .validation-summary-list .validation-summary-item a:focus {
  color: color-mix(in srgb, var(--color-error, #df0000) 85%, black);
  text-decoration: none;
}
.ce-jfeeuropeers_eventlist .validation-summary-list .validation-summary-item a:focus-visible {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
  border-radius: 2px;
}
.ce-jfeeuropeers_eventlist .validation-summary {
  animation: slideInFromTop 0.3s ease-out;
}
@keyframes slideInFromTop {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.ce-jfeeuropeers_eventlist .form-floating {
  position: relative;
}
.ce-jfeeuropeers_eventlist .form-floating .form-control {
  padding: 1rem 0.75rem 0.5rem;
}
.ce-jfeeuropeers_eventlist .form-floating .form-control::-moz-placeholder {
  color: transparent;
}
.ce-jfeeuropeers_eventlist .form-floating .form-control::placeholder {
  color: transparent;
}
.ce-jfeeuropeers_eventlist .form-floating .form-control:not(:-moz-placeholder) ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.ce-jfeeuropeers_eventlist .form-floating .form-control:focus ~ label, .ce-jfeeuropeers_eventlist .form-floating .form-control:not(:placeholder-shown) ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.ce-jfeeuropeers_eventlist .form-floating label {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 1rem 0.75rem;
  overflow: hidden;
  text-align: start;
  text-overflow: ellipsis;
  white-space: nowrap;
  pointer-events: none;
  border: 1px solid transparent;
  transform-origin: 0 0;
  transition: opacity 0.2s ease, transform 0.2s ease;
}
.ce-jfeeuropeers_eventlist .form-group {
  margin-bottom: 3rem;
}
.ce-jfeeuropeers_eventlist .form-group:last-child {
  margin-bottom: 0;
}
.ce-jfeeuropeers_eventlist .form-section {
  margin-bottom: 2rem;
}
.ce-jfeeuropeers_eventlist .form-section:last-child {
  margin-bottom: 0;
}
.ce-jfeeuropeers_eventlist .form-section h2, .ce-jfeeuropeers_eventlist .form-section h3, .ce-jfeeuropeers_eventlist .form-section h4 {
  margin-bottom: 1rem;
  color: var(--color-black, #000000);
}
.ce-jfeeuropeers_eventlist .form-section .required {
  color: var(--color-error, #df0000);
  font-weight: 700;
}
.ce-jfeeuropeers_eventlist .form-actions {
  display: flex;
  gap: 1rem;
  margin-top: 2rem;
  flex-wrap: wrap;
}
@media (min-width: 640px) {
  .ce-jfeeuropeers_eventlist .form-actions {
    flex-wrap: nowrap;
  }
}
.ce-jfeeuropeers_eventlist .form-actions .btn {
  flex: 1;
  min-width: 120px;
}
@media (min-width: 640px) {
  .ce-jfeeuropeers_eventlist .form-actions .btn {
    flex: 0 0 auto;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ce-jfeeuropeers_eventlist .form-control,
  .ce-jfeeuropeers_eventlist .form-check-input,
  .ce-jfeeuropeers_eventlist .form-floating label {
    transition: none;
  }
}
@media (forced-colors: active) {
  .ce-jfeeuropeers_eventlist .form-control,
  .ce-jfeeuropeers_eventlist .form-check-input {
    border-width: 2px;
  }
  .ce-jfeeuropeers_eventlist .validation-summary {
    border: 2px solid ButtonText;
    background-color: ButtonFace;
  }
  .ce-jfeeuropeers_eventlist .validation-summary .validation-summary-item::before {
    background-image: none;
    border: 1px solid ButtonText;
    border-radius: 50%;
  }
}
@media print {
  .ce-jfeeuropeers_eventlist .form-control,
  .ce-jfeeuropeers_eventlist .form-check-input {
    border: 1px solid black !important;
    box-shadow: none !important;
  }
  .ce-jfeeuropeers_eventlist .validation-summary {
    border: 2px solid black !important;
    background-color: white !important;
  }
  .ce-jfeeuropeers_eventlist .validation-summary .alert-heading,
  .ce-jfeeuropeers_eventlist .validation-summary .alert-message,
  .ce-jfeeuropeers_eventlist .validation-summary .validation-summary-item a {
    color: black !important;
  }
  .ce-jfeeuropeers_eventlist .validation-summary .validation-summary-item::before {
    display: none !important;
  }
}
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__highlight-arrow-icon {
  color: var(--color-secondary, #ffcc00);
}
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__highlight-link:hover .ce-jfeeuropeers_eventlist__highlight-arrow-icon,
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__highlight-link:focus .ce-jfeeuropeers_eventlist__highlight-arrow-icon {
  color: var(--color-black, #000000);
}
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__event-item-meta {
  width: 180px;
}
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__highlight-text-content-wrapper:not(.bg-jfe-gray, .bg-paper-texture) {
  background-color: var(--color-white, #ffffff);
}
.ce-jfeeuropeers_eventlist h2.ce-jfeeuropeers_eventlist__event-item-headline,
.ce-jfeeuropeers_eventlist h3.ce-jfeeuropeers_eventlist__event-item-headline {
  color: var(--color-primary, #009ddf);
}
.ce-jfeeuropeers_eventlist h2.ce-jfeeuropeers_eventlist__event-item-headline.text-e-jugend-blue,
.ce-jfeeuropeers_eventlist h3.ce-jfeeuropeers_eventlist__event-item-headline.text-e-jugend-blue {
  color: var(--color-e-jugend-blue, #003399);
}
.ce-jfeeuropeers_eventlist h2.ce-jfeeuropeers_eventlist__event-item-headline.text-e-sport-orange,
.ce-jfeeuropeers_eventlist h3.ce-jfeeuropeers_eventlist__event-item-headline.text-e-sport-orange {
  color: var(--color-e-sport-orange, #e3530f);
}
.ce-jfeeuropeers_eventlist h2.ce-jfeeuropeers_eventlist__event-item-headline.text-esk-magenta,
.ce-jfeeuropeers_eventlist h3.ce-jfeeuropeers_eventlist__event-item-headline.text-esk-magenta {
  color: var(--color-esk-magenta, #e5006c);
}
.ce-jfeeuropeers_eventlist h2.ce-jfeeuropeers_eventlist__event-item-headline.text-jfe-lightblue,
.ce-jfeeuropeers_eventlist h3.ce-jfeeuropeers_eventlist__event-item-headline.text-jfe-lightblue {
  color: var(--color-jfe-lightblue, #009ddf);
}
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__event-item-link:hover h2.ce-jfeeuropeers_eventlist__event-item-headline,
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__event-item-link:hover h3.ce-jfeeuropeers_eventlist__event-item-headline {
  text-decoration: underline;
}
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__event-item-link:focus {
  outline: none;
}
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__event-item-link:focus h2.ce-jfeeuropeers_eventlist__event-item-headline,
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__event-item-link:focus h3.ce-jfeeuropeers_eventlist__event-item-headline {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__event-item-type,
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__event-item-category-name {
  font-weight: 500;
}
.ce-jfeeuropeers_eventlist .ce-jfeeuropeers_eventlist__event-item-time {
  font-size: 0.875rem;
  font-weight: normal;
}
.ce-jfeeuropeers_eventlist__header {
  margin-block-end: 2rem;
}
.ce-jfeeuropeers_eventlist__title {
  font-size: 2rem;
  font-weight: 700;
  color: var(--color-black, #000000);
  margin: 0;
  line-height: 1.2;
}
@media (min-width: 768px) {
  .ce-jfeeuropeers_eventlist__title {
    font-size: 2.5rem;
  }
}
.ce-jfeeuropeers_eventlist__filter {
  margin-block-end: 2rem;
  background-color: var(--color-jfe-gray);
  padding: 2rem 0;
}
.ce-jfeeuropeers_eventlist__filter-form {
  width: 100%;
}
.ce-jfeeuropeers_eventlist__filter-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  align-items: center;
}
@media (min-width: 768px) {
  .ce-jfeeuropeers_eventlist__filter-grid {
    grid-template-columns: 2fr 1.5fr 1fr 1fr auto;
  }
}
.ce-jfeeuropeers_eventlist__filter-item {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
@media (min-width: 768px) {
  .ce-jfeeuropeers_eventlist__filter-item--search {
    grid-column: 1;
  }
}
@media (min-width: 768px) {
  .ce-jfeeuropeers_eventlist__filter-item--type {
    grid-column: 2;
  }
}
@media (min-width: 768px) {
  .ce-jfeeuropeers_eventlist__filter-item--date-from {
    grid-column: 3;
  }
}
@media (min-width: 768px) {
  .ce-jfeeuropeers_eventlist__filter-item--date-to {
    grid-column: 4;
  }
}
@media (min-width: 768px) {
  .ce-jfeeuropeers_eventlist__filter-item--submit {
    grid-column: 5;
  }
}
.ce-jfeeuropeers_eventlist__filter-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 2rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--color-black, #000000);
  background-color: var(--color-jfe-yellow, #ffcc00);
  border: 2px solid var(--color-black, #000000);
  border-radius: 0;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
  min-height: 44px;
}
.ce-jfeeuropeers_eventlist__filter-submit:hover, .ce-jfeeuropeers_eventlist__filter-submit:focus {
  background-color: var(--color-jfe-lightblue, #009ddf);
  outline: 2px solid var(--color-black, #000000);
  outline-offset: 2px;
}
.ce-jfeeuropeers_eventlist__filter-submit:active {
  transform: translateY(1px);
}
.ce-jfeeuropeers_eventlist__filter-submit:disabled {
  background-color: var(--color-jfe-gray, #f3f3f2);
  color: var(--color-jfe-gray-darker, rgb(105, 105, 105));
  cursor: not-allowed;
  opacity: 0.6;
}
.ce-jfeeuropeers_eventlist__divider {
  height: 2px;
  background-color: var(--color-black, #000000);
  margin-block: 2rem;
}
.ce-jfeeuropeers_eventlist__list {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.ce-jfeeuropeers_eventlist__event-item-location {
  font-weight: 500;
}
.ce-jfeeuropeers_eventlist__no-results {
  padding: 3rem 2rem;
  text-align: center;
  background-color: var(--color-jfe-gray-light, #f5f5f5);
  border: 2px solid var(--color-jfe-gray, #f3f3f2);
  border-radius: 0;
}
.ce-jfeeuropeers_eventlist__no-results-text {
  font-size: 1.125rem;
  color: var(--color-jfe-gray-darker, rgb(105, 105, 105));
  margin: 0;
}
.ce-jfeeuropeers_eventlist__loading {
  padding: 3rem 2rem;
  text-align: center;
  font-size: 1.125rem;
  color: var(--color-jfe-gray-darker, rgb(105, 105, 105));
}
.ce-jfeeuropeers_eventlist__js-labels {
  display: none;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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RUFDQTtBQXExQlI7QUFsMUJJO0VBQ0k7RUFDQTtFQUNBO0FBbzFCUjtBQTkwQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQWcxQlI7QUExMEJJO0VBQ0k7QUE0MEJSLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9qdWdlbmQtZnVlci1ldXJvcGEvLi9hc3NldHMvc2Nzcy9wbHVnaW5zL2NlX2pmZWV1cm9wZWVyc19ldmVudGxpc3Quc2NzcyIsIndlYnBhY2s6Ly9qdWdlbmQtZnVlci1ldXJvcGEvLi9hc3NldHMvc2Nzcy9jb21wb25lbnRzL19mb3JtLWNvbXBvbmVudHMuc2NzcyIsIndlYnBhY2s6Ly9qdWdlbmQtZnVlci1ldXJvcGEvLi9hc3NldHMvc2Nzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fY29weXJpZ2h0LnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvZ2xvYmFsL19jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly9qdWdlbmQtZnVlci1ldXJvcGEvLi9hc3NldHMvc2Nzcy9nbG9iYWwvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fZXZlbnQtYmFzZS1saXN0LnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gYXNzZXRzL3Njc3MvcGx1Z2lucy9jZV9qZmVldXJvcGVlcnNfZXZlbnRsaXN0LnNjc3NcblxuQHVzZSAnLi4vZ2xvYmFsL2NvbG9ycycgYXMgY29sb3JzO1xuQHVzZSAnLi4vZ2xvYmFsL2JyZWFrcG9pbnRzJyBhcyBicDtcbkB1c2UgJy4uL2NvbXBvbmVudHMvZm9ybS1jb21wb25lbnRzJyBhcyBmb3JtLWNvbXBvbmVudHM7XG5AdXNlICcuLi9jb21wb25lbnRzL3BhZ2luYXRpb24nIGFzIHBhZ2luYXRpb247XG5AdXNlICcuLi9jb21wb25lbnRzL2V2ZW50LWJhc2UtbGlzdCcgYXMgZXZlbnQtYmFzZTtcblxuLy8gQmxvY2sgZm9yIEJFTS1NZXRob2RvbG9neVxuJGJsb2NrOiAnY2UtamZlZXVyb3BlZXJzX2V2ZW50bGlzdCc7XG5cbkBpbmNsdWRlIHBhZ2luYXRpb24ucGFnaW5hdGlvbigkYmxvY2spO1xuXG4vKipcbiAqIEV2ZW50IExpc3QgQ29tcG9uZW50XG4gKiBEaXNwbGF5cyBhIGZpbHRlcmFibGUgbGlzdCBvZiBldmVudHMgd2l0aCBzZWFyY2ggYW5kIGRhdGUgcmFuZ2UgZmlsdGVyaW5nXG4gKi9cbi4jeyRibG9ja30ge1xuICAgIC8vIEluY2x1ZGUgZm9ybSBjb21wb25lbnQgc3R5bGVzIGZvciBmaWx0ZXIgZm9ybVxuICAgIEBpbmNsdWRlIGZvcm0tY29tcG9uZW50cy5mb3JtLWNvbXBvbmVudHMoKTtcblxuICAgIC8vIEluY2x1ZGUgc2hhcmVkIGV2ZW50IGJhc2Ugc3R5bGVzXG4gICAgQGluY2x1ZGUgZXZlbnQtYmFzZS5ldmVudC1iYXNlLXN0eWxlcygkYmxvY2spO1xuXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLy8gSGVhZGVyXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgJl9faGVhZGVyIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMnJlbTtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ21kJykge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAvLyBGaWx0ZXIgU2VjdGlvblxuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICZfX2ZpbHRlciB7XG4gICAgICAgIG1hcmdpbi1ibG9jay1lbmQ6IDJyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5KTtcbiAgICAgICAgcGFkZGluZzogMnJlbSAwO1xuICAgIH1cblxuICAgICZfX2ZpbHRlci1mb3JtIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJl9fZmlsdGVyLWdyaWQge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ21kJykge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyZnIgMS41ZnIgMWZyIDFmciBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZmlsdGVyLWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDAuNXJlbTtcblxuICAgICAgICAvLyBGdWxsIHdpZHRoIG9uIG1vYmlsZVxuICAgICAgICAmLS1zZWFyY2gge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludCgnbWQnKSB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS10eXBlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ21kJykge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tZGF0ZS1mcm9tIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ21kJykge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tZGF0ZS10byB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdtZCcpIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogNDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLXN1Ym1pdCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdtZCcpIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ZpbHRlci1zdWJtaXQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMnJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUteWVsbG93LCBjb2xvcnMuJGNvbG9yLWpmZS15ZWxsb3cpO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWpmZS1saWdodGJsdWUsIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSk7XG4gICAgICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUtZ3JheSwgY29sb3JzLiRjb2xvci1qZmUtZ3JheSk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXktZGFya2VyLCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5LWRhcmtlcik7XG4gICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLy8gRGl2aWRlclxuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICZfX2RpdmlkZXIge1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuICAgICAgICBtYXJnaW4tYmxvY2s6IDJyZW07XG4gICAgfVxuXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLy8gRXZlbnQgTGlzdFxuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICZfX2xpc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDA7XG4gICAgfVxuXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLy8gRXZlbnQgSXRlbSBDYXJkIC0gTGF5b3V0IHNwZWNpZmljXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgJl9fZXZlbnQtaXRlbS1jYXJkIHtcbiAgICAgICAgLy8gQ2FyZC1zcGVjaWZpYyBzdHlsaW5nIGlmIG5lZWRlZFxuICAgICAgICAvLyBCYXNlIGxpbmsgc3R5bGVzIGFyZSBoYW5kbGVkIGJ5IGV2ZW50LWJhc2UtbGlzdC5zY3NzXG4gICAgfVxuXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLy8gRXZlbnQgSXRlbSBEZXRhaWxzIENvbnRhaW5lclxuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICZfX2V2ZW50LWl0ZW0tZGV0YWlscyB7XG4gICAgICAgIC8vIERldGFpbHMgY29udGFpbmVyIHN0eWxpbmdcbiAgICAgICAgLy8gSGVhZGxpbmUgc3R5bGVzIGFyZSBoYW5kbGVkIGJ5IGV2ZW50LWJhc2UtbGlzdC5zY3NzXG4gICAgfVxuXG5cblxuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIC8vIEV2ZW50IEl0ZW0gTG9jYXRpb25cbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAmX19ldmVudC1pdGVtLWxvY2F0aW9uIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG5cbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAvLyBObyBSZXN1bHRzIFN0YXRlXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgJl9fbm8tcmVzdWx0cyB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gMnJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUtZ3JheS1saWdodCwgI2Y1ZjVmNSk7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWpmZS1ncmF5LCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG5cbiAgICAmX19uby1yZXN1bHRzLXRleHQge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXktZGFya2VyLCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5LWRhcmtlcik7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAvLyBMb2FkaW5nIFN0YXRlXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgJl9fbG9hZGluZyB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gMnJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItamZlLWdyYXktZGFya2VyLCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5LWRhcmtlcik7XG4gICAgfVxuXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLy8gSGlkZGVuIEpTIExhYmVscyBDb250YWluZXJcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAmX19qcy1sYWJlbHMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbiIsIi8vIGFzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2Zvcm0tY29tcG9uZW50cy5zY3NzXG5AdXNlICcuLi9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5AdXNlICcuLi9nbG9iYWwvYnJlYWtwb2ludHMnIGFzIGJwO1xuXG4vKipcbiAqIFVuaXZlcnNhbCBmb3JtIGNvbXBvbmVudHMgc3R5bGluZyAtIE1vZHVsYXIgYXBwcm9hY2hcbiAqIEJhY2t3YXJkcyBjb21wYXRpYmxlIHdpdGggZXhpc3RpbmcgZm9ybS1jb21wb25lbnRzKCkgbWl4aW5cbiAqL1xuXG4vLyBWaXN1YWwgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMgKHNoYXJlZCBhY3Jvc3MgYWxsIG1peGlucylcbiRvdXRsaW5lLXdpZHRoOiAycHggIWRlZmF1bHQ7XG4kb3V0bGluZS1vZmZzZXQ6IDJweCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZWFzaW5nOiBlYXNlICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXM6IDAgIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kZm9jdXMtYm9yZGVyLXdpZHRoOiAycHggIWRlZmF1bHQ7XG4kbWluLXRvdWNoLXNpemU6IDQ0cHggIWRlZmF1bHQ7XG5cbi8vIENvbG9ycyAtIHVzaW5nIENTUyB2YXJpYWJsZXMgZm9yIHRoZW1lIGZsZXhpYmlsaXR5XG4kZm9ybS1wcmltYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpICFkZWZhdWx0O1xuJGZvcm0tc2Vjb25kYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnksIGNvbG9ycy4kY29sb3ItamZlLXllbGxvdykgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjaykgIWRlZmF1bHQ7XG4kZm9ybS1iZy1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUsIGNvbG9ycy4kY29sb3Itd2hpdGUpICFkZWZhdWx0O1xuJGZvcm0tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjaykgIWRlZmF1bHQ7XG4kZm9ybS1mb2N1cy1ib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnksIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSkgIWRlZmF1bHQ7XG4kZm9ybS1lcnJvci1jb2xvcjogdmFyKC0tY29sb3ItZXJyb3IsIGNvbG9ycy4kY29sb3ItZXJyb3IpICFkZWZhdWx0O1xuJGZvcm0tc3VjY2Vzcy1jb2xvcjogIzk1REYwMCAhZGVmYXVsdDtcbiRmb3JtLWRpc2FibGVkLWJnLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUtZ3JheSwgY29sb3JzLiRjb2xvci1qZmUtZ3JheSkgIWRlZmF1bHQ7XG4kZm9ybS1kaXNhYmxlZC10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1qZmUtZ3JheS1kYXJrLCBjb2xvcnMuJGNvbG9yLWpmZS1ncmF5LWRhcmspICFkZWZhdWx0O1xuJGZvcm0tcGxhY2Vob2xkZXItY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LWRhcmtlciwgY29sb3JzLiRjb2xvci1qZmUtZ3JheS1kYXJrZXIpICFkZWZhdWx0O1xuXG4kcmFkaW8tY2hlY2tlZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMicgZmlsbD0nJTIzZmZmJy8lM2UlM2Mvc3ZnJTNlXCIpICFkZWZhdWx0O1xuXG4vKipcbiAqIEZvcm0gTGFiZWxzIE1peGluXG4gKi9cbkBtaXhpbiBmb3JtLWxhYmVscygpIHtcbiAgICAuZm9ybS1sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGNvbG9yOiAkZm9ybS10ZXh0LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgICAgICAgLy8gUmVxdWlyZWQgZmllbGQgaW5kaWNhdG9yXG4gICAgICAgICYucmVxdWlyZWQ6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiICpcIjtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9ybS1lcnJvci1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cblxuICAgICAgICAucmVxdWlyZWQge1xuICAgICAgICAgICAgY29sb3I6ICRmb3JtLWVycm9yLWNvbG9yO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIExhYmVsIGZvciBzY3JlZW4gcmVhZGVycyBvbmx5XG4gICAgICAgICYuc3Itb25seSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAtMXB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGVnZW5kIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbn1cblxuLyoqXG4gKiBGb3JtIENvbnRyb2xzIE1peGluIChJbnB1dCwgVGV4dGFyZWEsIFNlbGVjdClcbiAqL1xuQG1peGluIGZvcm0tY29udHJvbHMoKSB7XG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICBjb2xvcjogJGZvcm0tdGV4dC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tYmctY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRmb3JtLWJvcmRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICBib3JkZXItY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICAgICAgYm94LXNoYWRvdyAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG5cbiAgICAgICAgLy8gUGxhY2Vob2xkZXIgc3R5bGluZ1xuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogJGZvcm0tcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGZvcm0tZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9jdXMgc3RhdGVcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZm9ybS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJG91dGxpbmUtd2lkdGggcmdiYSgkZm9ybS1mb2N1cy1ib3JkZXItY29sb3IsIDAuMjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAgICAgJjpkaXNhYmxlZCxcbiAgICAgICAgJltyZWFkb25seV0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZGlzYWJsZWQtYmctY29sb3I7XG4gICAgICAgICAgICBjb2xvcjogJGZvcm0tZGlzYWJsZWQtdGV4dC1jb2xvcjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW52YWxpZCBzdGF0ZSAob25seSB3aXRoIGV4cGxpY2l0IGNsYXNzKVxuICAgICAgICAmLmlzLWludmFsaWQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGZvcm0tZXJyb3ItY29sb3I7XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRmb3JtLWVycm9yLWNvbG9yO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRvdXRsaW5lLXdpZHRoIHJnYmEoJGZvcm0tZXJyb3ItY29sb3IsIDAuMjUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gVmFsaWQgc3RhdGUgKG9ubHkgd2l0aCBleHBsaWNpdCBjbGFzcylcbiAgICAgICAgJi5pcy12YWxpZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZm9ybS1zdWNjZXNzLWNvbG9yO1xuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZm9ybS1zdWNjZXNzLWNvbG9yO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRvdXRsaW5lLXdpZHRoIHJnYmEoJGZvcm0tc3VjY2Vzcy1jb2xvciwgMC4yNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUZXh0YXJlYSBzcGVjaWZpYyBzdHlsaW5nXG4gICAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICAgICAgbWluLWhlaWdodDogMTIwcHg7XG4gICAgICAgIHJlc2l6ZTogdmVydGljYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkZm9ybS1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJGZvcm0tYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkZm9ybS1ib3JkZXItY29sb3I7XG5cbiAgICAgICAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGZvcm0tZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2VsZWN0IHNwZWNpZmljIHN0eWxpbmcgKGV4Y2x1ZGluZyBtdWx0aXNlbGVjdClcbiAgICBzZWxlY3QuZm9ybS1jb250cm9sOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9pY29ucy9TVkcvVUkvSWNvbkFycm93QWNjb3JkaW9uLS1Eb3duLnN2Z1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC43NXJlbSBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTZweCAxMnB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyLjVyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGZvcm0tYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgIC8vIFJlbW92ZSBkZWZhdWx0IGFycm93IGluIElFXG4gICAgICAgICY6Oi1tcy1leHBhbmQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhvdmVyIHN0YXRlIGZvciBzZWxlY3RcbiAgICAgICAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGZvcm0tZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9jdXMgc3RhdGUgZm9yIHNlbGVjdFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRmb3JtLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9pY29ucy9TVkcvVUkvSWNvbkFycm93QWNjb3JkaW9uLS1VcC5zdmdcIik7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbnZhbGlkIHN0YXRlIChvbmx5IHdpdGggZXhwbGljaXQgY2xhc3MpXG4gICAgICAgICYuaXMtaW52YWxpZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZm9ybS1lcnJvci1jb2xvcjtcblxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGZvcm0tZXJyb3ItY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBWYWxpZCBzdGF0ZSAob25seSB3aXRoIGV4cGxpY2l0IGNsYXNzKVxuICAgICAgICAmLmlzLXZhbGlkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRmb3JtLXN1Y2Nlc3MtY29sb3I7XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRmb3JtLXN1Y2Nlc3MtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuICogRm9ybSBDaGVja3MgTWl4aW4gKFJhZGlvICYgQ2hlY2tib3gpXG4gKi9cbkBtaXhpbiBmb3JtLWNoZWNrcygpIHtcbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtaW4taGVpZ2h0OiAxLjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLy8gRm9ybSBjaGVjayBpbnB1dCAocmFkaW8gJiBjaGVja2JveClcbiAgICAgICAgLmZvcm0tY2hlY2staW5wdXQsXG4gICAgICAgIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gICAgICAgIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMC4yNXJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxLjI1cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tYmctY29sb3I7XG4gICAgICAgICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGZvcm0tYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmcsXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZyxcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93ICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcblxuICAgICAgICAgICAgLy8gRW5zdXJlIG1pbmltdW0gdG91Y2ggdGFyZ2V0IHNpemVcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogJG1pbi10b3VjaC1zaXplO1xuICAgICAgICAgICAgICAgIGhlaWdodDogJG1pbi10b3VjaC1zaXplO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogJG1pbi10b3VjaC1zaXplO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6ICRtaW4tdG91Y2gtc2l6ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGZvcm0tZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBGb2N1cyBzdGF0ZVxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkb3V0bGluZS13aWR0aCByZ2JhKCRmb3JtLWZvY3VzLWJvcmRlci1jb2xvciwgMC4yNSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIENoZWNrZWQgc3RhdGVcbiAgICAgICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGZvcm0tZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZGlzYWJsZWQtYmctY29sb3I7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1kaXNhYmxlZC10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBJbnZhbGlkIHN0YXRlIChvbmx5IHdpdGggZXhwbGljaXQgY2xhc3MpXG4gICAgICAgICAgICAmLmlzLWludmFsaWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGZvcm0tZXJyb3ItY29sb3I7XG5cbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJG91dGxpbmUtd2lkdGggcmdiYSgkZm9ybS1lcnJvci1jb2xvciwgMC4yNSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ2hlY2tib3ggc3BlY2lmaWMgc3R5bGluZ1xuICAgICAgICAuZm9ybS1jaGVjay1pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gICAgICAgIFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuXG4gICAgICAgICAgICAvLyBDaGVja21hcmtcbiAgICAgICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZmZmJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBsMyAzIDYtNicvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDFyZW0gMXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gSW5kZXRlcm1pbmF0ZSBzdGF0ZVxuICAgICAgICAgICAgJjppbmRldGVybWluYXRlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZmZmJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBoOCcvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDFyZW0gMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJhZGlvIGJ1dHRvbiBzcGVjaWZpYyBzdHlsaW5nXG4gICAgICAgIC5mb3JtLWNoZWNrLWlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICAgICAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgICAgIC8vIFJhZGlvIGRvdFxuICAgICAgICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkcmFkaW8tY2hlY2tlZC1pbWFnZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDFyZW0gMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZvcm0gY2hlY2sgbGFiZWxcbiAgICAgICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgY29sb3I6ICRmb3JtLXRleHQtY29sb3I7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgICAgICAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRmb3JtLWRpc2FibGVkLXRleHQtY29sb3I7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJbmxpbmUgZm9ybSBjaGVja3NcbiAgICAuZm9ybS1jaGVjay1pbmxpbmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdzbScpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIEZvcm0gVmFsaWRhdGlvbiBNaXhpblxuICovXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uKCkge1xuICAgIC8vIEZvcm0gdGV4dCAoaGVscCB0ZXh0LCBlcnJvciBtZXNzYWdlcylcbiAgICAuZm9ybS10ZXh0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGNvbG9yOiAkZm9ybS1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICAgICAgICAvLyBFcnJvciB0ZXh0XG4gICAgICAgICYudGV4dC1kYW5nZXIsXG4gICAgICAgICYuaW52YWxpZC1mZWVkYmFjayB7XG4gICAgICAgICAgICBjb2xvcjogJGZvcm0tZXJyb3ItY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdWNjZXNzIHRleHRcbiAgICAgICAgJi50ZXh0LXN1Y2Nlc3MsXG4gICAgICAgICYudmFsaWQtZmVlZGJhY2sge1xuICAgICAgICAgICAgY29sb3I6ICRmb3JtLXN1Y2Nlc3MtY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJbnZhbGlkIGZlZWRiYWNrIChlcnJvciBtZXNzYWdlcylcbiAgICAuaW52YWxpZC1mZWVkYmFjayB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IC8vIEluaXRpYWxseSBoaWRkZW5cbiAgICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgY29sb3I6ICRmb3JtLXRleHQtY29sb3I7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgd2lkdGg6IDEuMjVyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgICAgICAgICBjb2xvcjogJGZvcm0tdGV4dC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNlJTNjcGF0aCBmaWxsPSclMjMwMDAnIGQ9J00yLjE0NiAyLjg1NGEuNS41IDAgMSAxIC43MDgtLjcwOEw4IDcuMjkzbDUuMTQ2LTUuMTQ3YS41LjUgMCAwIDEgLjcwOC43MDhMOC43MDcgOGw1LjE0NyA1LjE0NmEuNS41IDAgMCAxLS43MDguNzA4TDggOC43MDdsLTUuMTQ2IDUuMTQ3YS41LjUgMCAwIDEtLjcwOC0uNzA4TDcuMjkzIDggMi4xNDYgMi44NTRaJy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDc1JSA3NSU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAkZm9ybS1lcnJvci1jb2xvcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHNob3cgd2hlbiBwYXJlbnQgaGFzIGludmFsaWQgZmllbGRcbiAgICAgICAgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkfiYsXG4gICAgICAgIC5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWR+JiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZhbGlkIGZlZWRiYWNrIChzdWNjZXNzIG1lc3NhZ2VzKVxuICAgIC52YWxpZC1mZWVkYmFjayB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IC8vIEluaXRpYWxseSBoaWRkZW5cbiAgICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgY29sb3I6ICRmb3JtLXN1Y2Nlc3MtY29sb3I7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgICAgICAgLy8gT25seSBzaG93IHdoZW4gcGFyZW50IGhhcyB2YWxpZCBmaWVsZFxuICAgICAgICAuZm9ybS1jb250cm9sLmlzLXZhbGlkfiYsXG4gICAgICAgIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkfiYge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBWYWxpZGF0aW9uIFN1bW1hcnkgU3R5bGVzXG4gICAgLnZhbGlkYXRpb24tc3VtbWFyeSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgcGFkZGluZzogMXJlbSAxLjI1cmVtO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkZm9ybS1lcnJvci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tY29sb3ItZXJyb3IsICN7Y29sb3JzLiRjb2xvci1lcnJvcn0pIDUlLCB2YXIoLS1jb2xvci13aGl0ZSwgI3tjb2xvcnMuJGNvbG9yLXdoaXRlfSkpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAgICAgcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuYWxlcnQtaGVhZGluZyB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwLjc1cmVtIDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9ybS1lcnJvci1jb2xvcjtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hbGVydC1tZXNzYWdlIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICAgICAgY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1jb2xvci1lcnJvciwgI3tjb2xvcnMuJGNvbG9yLWVycm9yfSkgODUlLCBibGFjayk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdzbScpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBWYWxpZGF0aW9uIFN1bW1hcnkgTGlzdFxuICAgIC52YWxpZGF0aW9uLXN1bW1hcnktbGlzdCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICAudmFsaWRhdGlvbi1zdW1tYXJ5LWl0ZW0ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEVycm9yIGljb25cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAwLjJyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDFyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNlJTNjcGF0aCBmaWxsPSclMjNkYzM1NDUnIGQ9J004IDE1QTcgNyAwIDEgMSA4IDFhNyA3IDAgMCAxIDAgMTR6bTAgMUE4IDggMCAxIDAgOCAwYTggOCAwIDAgMCAwIDE2eicvJTNlJTNjcGF0aCBmaWxsPSclMjNkYzM1NDUnIGQ9J003LjAwMiAxMWExIDEgMCAxIDEgMiAwIDEgMSAwIDAgMS0yIDB6TTcuMSA0Ljk5NWEuOTA1LjkwNSAwIDEgMSAxLjggMGwtLjM1IDMuNTA3YS41NTIuNTUyIDAgMCAxLTEuMSAwTDcuMSA0Ljk5NXonLyUzZSUzYy9zdmclM2VcIik7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9ybS1lcnJvci1jb2xvcjtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tY29sb3ItZXJyb3IsICN7Y29sb3JzLiRjb2xvci1lcnJvcn0pIDg1JSwgYmxhY2spO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkICRmb3JtLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFuaW1hdGlvbiBmb3IgdmFsaWRhdGlvbiBzdW1tYXJ5XG4gICAgLnZhbGlkYXRpb24tc3VtbWFyeSB7XG4gICAgICAgIGFuaW1hdGlvbjogc2xpZGVJbkZyb21Ub3AgMC4zcyBlYXNlLW91dDtcblxuICAgICAgICBAa2V5ZnJhbWVzIHNsaWRlSW5Gcm9tVG9wIHtcbiAgICAgICAgICAgIGZyb20ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRvIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG4gKiBGb3JtIExheW91dCBNaXhpbiAoRmxvYXRpbmcsIEdyb3VwcywgQWN0aW9ucylcbiAqL1xuQG1peGluIGZvcm0tbGF5b3V0KCkge1xuICAgIC8vIEZvcm0gZmxvYXRpbmcgbGFiZWxzIChpZiBuZWVkZWQpXG4gICAgLmZvcm0tZmxvYXRpbmcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDAuNzVyZW0gMC41cmVtO1xuXG4gICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICAgICAgICAgICAgfmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC42NTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjg1KSB0cmFuc2xhdGVZKC0wLjVyZW0pIHRyYW5zbGF0ZVgoMC4xNXJlbSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgICAgIG9wYWNpdHkgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGb3JtIGdyb3VwcyBmb3Igc3BhY2luZ1xuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZvcm0gc2VjdGlvbnNcbiAgICAuZm9ybS1zZWN0aW9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyLCBoMywgaDQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9ybS10ZXh0LWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJlcXVpcmVkIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9ybS1lcnJvci1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGb3JtIGFjdGlvbnMgKGJ1dHRvbnMpXG4gICAgLmZvcm0tYWN0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQoJ3NtJykge1xuICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEyMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdzbScpIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG4gKiBGb3JtIEFjY2Vzc2liaWxpdHkgTWl4aW5cbiAqL1xuQG1peGluIGZvcm0tYWNjZXNzaWJpbGl0eSgpIHtcbiAgICAvLyBSZWR1Y2VkIG1vdGlvbiBzdXBwb3J0XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgLmZvcm0tY29udHJvbCxcbiAgICAgICAgLmZvcm0tY2hlY2staW5wdXQsXG4gICAgICAgIC5mb3JtLWZsb2F0aW5nIGxhYmVsIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIaWdoIGNvbnRyYXN0IG1vZGUgc3VwcG9ydFxuICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnZhbGlkYXRpb24tc3VtbWFyeSB7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBCdXR0b25UZXh0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQnV0dG9uRmFjZTtcblxuICAgICAgICAgICAgLnZhbGlkYXRpb24tc3VtbWFyeS1pdGVtOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgQnV0dG9uVGV4dDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBQcmludCBzdHlsZXNcbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICAuZm9ybS1jb250cm9sLFxuICAgICAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnZhbGlkYXRpb24tc3VtbWFyeSB7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBibGFjayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgLmFsZXJ0LWhlYWRpbmcsXG4gICAgICAgICAgICAuYWxlcnQtbWVzc2FnZSxcbiAgICAgICAgICAgIC52YWxpZGF0aW9uLXN1bW1hcnktaXRlbSBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnZhbGlkYXRpb24tc3VtbWFyeS1pdGVtOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG4gKiBNYWluIGZvcm0tY29tcG9uZW50cyBtaXhpbiAtIEJBQ0tXQVJEUyBDT01QQVRJQkxFXG4gKiBJbmNsdWRlcyBhbGwgZm9ybSBzdHlsaW5nIGNvbXBvbmVudHNcbiAqL1xuQG1peGluIGZvcm0tY29tcG9uZW50cygpIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVscygpO1xuICAgIEBpbmNsdWRlIGZvcm0tY29udHJvbHMoKTtcbiAgICBAaW5jbHVkZSBmb3JtLWNoZWNrcygpO1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbigpO1xuICAgIEBpbmNsdWRlIGZvcm0tbGF5b3V0KCk7XG4gICAgQGluY2x1ZGUgZm9ybS1hY2Nlc3NpYmlsaXR5KCk7XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3NcbkB1c2UgJy4uL2dsb2JhbC9jb2xvcnMnIGFzIGNvbG9ycztcbkB1c2UgJy4uL2dsb2JhbC9icmVha3BvaW50cycgYXMgYnA7XG5cbi8qKlxuICogVW5pdmVyc2FsIHBhZ2luYXRpb24gY29tcG9uZW50IG1peGluXG4gKiBQcm92aWRlcyBjb21wbGV0ZSBzdHlsaW5nIGZvciBwYWdpbmF0ZWQgY29udGVudCBuYXZpZ2F0aW9uXG4gKi9cbkBtaXhpbiBwYWdpbmF0aW9uKCRibG9jaykge1xuICAvLyBWaXN1YWwgY29uZmlndXJhdGlvblxuICAkb3V0bGluZS13aWR0aDogMnB4O1xuICAkb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgJHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICR0cmFuc2l0aW9uLWVhc2luZzogZWFzZTtcbiAgJGJvcmRlci1yYWRpdXM6IDA7XG4gICRib3JkZXItd2lkdGg6IDNweDtcbiAgJG1pbi10b3VjaC1zaXplOiA0NHB4OyAvLyBNaW5pbXVtIHRvdWNoIHRhcmdldCBzaXplIGZvciBhY2Nlc3NpYmlsaXR5XG4gICRsaW5rLXVuZGVybGluZTogbm9uZTsgLy8gTm8gdW5kZXJsaW5lIGZvciBsaW5rcyBieSBkZWZhdWx0XG5cbiAgLy8gQ29sb3JzIC0gdXNpbmcgQ1NTIHZhcmlhYmxlcyBmb3IgdGhlbWUgZmxleGliaWxpdHlcbiAgJHBhZ2luYXRpb24tcHJpbWFyeS1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgJHBhZ2luYXRpb24tc2Vjb25kYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnksIGNvbG9ycy4kY29sb3ItamZlLXllbGxvdyk7XG4gICRwYWdpbmF0aW9uLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgJHBhZ2luYXRpb24tYmctY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlLCBjb2xvcnMuJGNvbG9yLXdoaXRlKTtcbiAgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICRwYWdpbmF0aW9uLWhvdmVyLWJnLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6IHZhcigtLWNvbG9yLWpmZS1ncmF5LWRhcmssIGNvbG9ycy4kY29sb3ItamZlLWdyYXktZGFyayk7XG4gICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnLWNvbG9yOiB2YXIoLS1jb2xvci1qZmUtYWxtb3N0LXdoaXRlLCBjb2xvcnMuJGNvbG9yLWpmZS1hbG1vc3Qtd2hpdGUpO1xuICAkcGFnaW5hdGlvbi1jdXJyZW50LWJnLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnksIGNvbG9ycy4kY29sb3ItamZlLXllbGxvdyk7XG4gICRwYWdpbmF0aW9uLWN1cnJlbnQtdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2ssIGNvbG9ycy4kY29sb3ItYmxhY2spO1xuXG4gIC4jeyRibG9ja30ge1xuICAgIC8vIE1haW4gcGFnaW5hdGlvbiBjb250YWluZXJcbiAgICAmX19wYWdpbmF0aW9uIHtcbiAgICAgIG1hcmdpbjogMnJlbSAwO1xuXG4gICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdsZycpIHtcbiAgICAgICAgbWFyZ2luOiAzcmVtIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUGFnaW5hdGlvbiB3cmFwcGVyXG4gICAgJl9fcGFnaW5hdGlvbi1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gUGFnaW5hdGlvbiBsaXN0XG4gICAgdWwuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpc3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGdhcDogMC4yNXJlbTtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludCgnc20nKSB7XG4gICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEluZGl2aWR1YWwgcGFnaW5hdGlvbiBpdGVtc1xuICAgIGxpLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1pdGVtIHtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICAgIC8vIFBhZ2UgbnVtYmVyIGl0ZW1zXG4gICAgICAmLS1wYWdlIHtcbiAgICAgICAgLy8gRGVmYXVsdCBzdHlsaW5nIGhhbmRsZWQgYnkgcGFnaW5hdGlvbi1saW5rXG4gICAgICB9XG5cbiAgICAgIC8vIEN1cnJlbnQgcGFnZSBpdGVtXG4gICAgICAmLS1jdXJyZW50IHtcbiAgICAgICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1jdXJyZW50LWJnLWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1jdXJyZW50LXRleHQtY29sb3I7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1jdXJyZW50LWJnLWNvbG9yO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtYmctY29sb3I7XG4gICAgICAgICAgICBjb2xvcjogJHBhZ2luYXRpb24tY3VycmVudC10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBQcmV2aW91cy9OZXh0IGl0ZW1zXG4gICAgICAmLS1wcmV2aW91cyxcbiAgICAgICYtLW5leHQge1xuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbmsge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBnYXA6IDAuMjVyZW07XG4gICAgICAgICAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG5cbiAgICAgICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdzbScpIHtcbiAgICAgICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBEaXNhYmxlZCBzdGF0ZSBmb3IgcHJldmlvdXMvbmV4dFxuICAgICAgJi0tZGlzYWJsZWQge1xuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbmsge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnLWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnLWNvbG9yO1xuICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnLWNvbG9yO1xuICAgICAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBhZ2luYXRpb24gbGlua3MgKGJvdGggPGE+IGFuZCA8c3Bhbj4gZWxlbWVudHMpXG4gICAgYS4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluayxcbiAgICBzcGFuLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtaW4td2lkdGg6ICRtaW4tdG91Y2gtc2l6ZTtcbiAgICAgIG1pbi1oZWlnaHQ6ICRtaW4tdG91Y2gtc2l6ZTtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnLWNvbG9yO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLXRleHQtY29sb3I7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay11bmRlcmxpbmU7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZyxcbiAgICAgICAgY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICBib3JkZXItY29sb3IgJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tZHVyYXRpb24gJHRyYW5zaXRpb24tZWFzaW5nLFxuICAgICAgICBib3gtc2hhZG93ICR0cmFuc2l0aW9uLWR1cmF0aW9uICR0cmFuc2l0aW9uLWVhc2luZztcblxuICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludCgnc20nKSB7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLy8gSG92ZXIgYW5kIGZvY3VzIHN0YXRlcyBmb3IgaW50ZXJhY3RpdmUgbGlua3NcbiAgICAgICY6aG92ZXI6bm90KCYtLWRpc2FibGVkKTpub3QoJi0tY3VycmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZy1jb2xvcjtcbiAgICAgICAgYm9yZGVyOiAgICRib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIG91dGxpbmU6ICRvdXRsaW5lLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLXByaW1hcnktY29sb3I7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAkb3V0bGluZS1vZmZzZXQ7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlOm5vdCgmLS1kaXNhYmxlZCk6bm90KCYtLWN1cnJlbnQpIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgfVxuXG4gICAgICAvLyBDdXJyZW50IHBhZ2Ugc3R5bGluZyAoc3BhbiBlbGVtZW50KVxuICAgICAgJi0tY3VycmVudCB7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tY3VycmVudC1iZy1jb2xvcjtcbiAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWN1cnJlbnQtdGV4dC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1jdXJyZW50LWJnLWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgfVxuXG4gICAgICAvLyBEaXNhYmxlZCBzdGF0ZSBzdHlsaW5nXG4gICAgICAmLS1kaXNhYmxlZCB7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnLWNvbG9yO1xuICAgICAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmctY29sb3I7XG4gICAgICB9XG5cbiAgICAgIC8vIFByZXZpb3VzIGxpbmsgc3BlY2lmaWMgc3R5bGluZ1xuICAgICAgJi0tcHJldmlvdXMge1xuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLXRleHQge1xuICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1pY29uIHtcbiAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBOZXh0IGxpbmsgc3BlY2lmaWMgc3R5bGluZ1xuICAgICAgJi0tbmV4dCB7XG4gICAgICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tdGV4dCB7XG4gICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWljb24ge1xuICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUGFnZSBudW1iZXIgZGlzcGxheVxuICAgICZfX3BhZ2luYXRpb24tbnVtYmVyIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8vIE5hdmlnYXRpb24gdGV4dCAoUHJldmlvdXMvTmV4dClcbiAgICAmX19wYWdpbmF0aW9uLXRleHQge1xuICAgICAgICAvLyBTUiBvbmx5IGZvciBzY3JlZW4gcmVhZGVyc1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IC0xcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICB9XG5cbiAgICAvLyBOYXZpZ2F0aW9uIGljb25zXG4gICAgJl9fcGFnaW5hdGlvbi1pY29uIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgIC8vIEVsbGlwc2lzIGl0ZW1cbiAgICAmX19wYWdpbmF0aW9uLWl0ZW0tLWVsbGlwc2lzIHtcbiAgICAgICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rLS1lbGxpcHNpcyB7XG4gICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciBvbmx5IGNvbnRlbnRcbiAgLnNyLW9ubHkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbiAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludC1kb3duKCdzbScpIHtcbiAgICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgfVxuXG4gICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saXN0IHtcbiAgICAgIGdhcDogMC4xMjVyZW07XG4gICAgfVxuXG4gICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbi1saW5rIHtcbiAgICAgIG1pbi13aWR0aDogNDBweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgICBwYWRkaW5nOiAwLjM3NXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgfVxuICB9XG5cbiAgLy8gUHJpbnQgc3R5bGVzXG4gIEBtZWRpYSBwcmludCB7XG4gICAgLiN7JGJsb2NrfV9fcGFnaW5hdGlvbiB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVkdWNlZCBtb3Rpb24gc3VwcG9ydFxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluayB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyOm5vdCgmLS1kaXNhYmxlZCk6bm90KCYtLWN1cnJlbnQpIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOmFjdGl2ZTpub3QoJi0tZGlzYWJsZWQpOm5vdCgmLS1jdXJyZW50KSB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIaWdoIGNvbnRyYXN0IG1vZGUgc3VwcG9ydFxuICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgIC4jeyRibG9ja31fX3BhZ2luYXRpb24tbGluayB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG5cbiAgICAgICYtLWN1cnJlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBIaWdobGlnaHQ7XG4gICAgICAgIGNvbG9yOiBIaWdobGlnaHRUZXh0O1xuICAgICAgICBib3JkZXItY29sb3I6IEhpZ2hsaWdodDtcbiAgICAgIH1cblxuICAgICAgJi0tZGlzYWJsZWQge1xuICAgICAgICBib3JkZXItY29sb3I6IEdyYXlUZXh0O1xuICAgICAgICBjb2xvcjogR3JheVRleHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gRm9jdXMgbWFuYWdlbWVudCBmb3Iga2V5Ym9hcmQgbmF2aWdhdGlvblxuICAuI3skYmxvY2t9X19wYWdpbmF0aW9uLWxpbms6Zm9jdXMge1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9jb21wb25lbnRzL19jb3B5cmlnaHQuc2Nzc1xuQHVzZSAnLi4vZ2xvYmFsL2NvbG9ycycgYXMgY29sb3JzO1xuQHVzZSAnLi4vZ2xvYmFsL2JyZWFrcG9pbnRzJyBhcyBicDtcblxuLyoqXG4gKiBSZXVzYWJsZSBjb3B5cmlnaHQgb3ZlcmxheSBjb21wb25lbnRcbiAqXG4gKiBVc2FnZTpcbiAqIDxkaXYgY2xhc3M9XCJjb3B5cmlnaHRcIj7CqSAyMDI0IFBob3RvZ3JhcGhlciBOYW1lPC9kaXY+XG4gKiA8ZGl2IGNsYXNzPVwiY29weXJpZ2h0IGNvcHlyaWdodC0tdG9wLWxlZnRcIj7CqSAyMDI0IFBob3RvZ3JhcGhlciBOYW1lPC9kaXY+XG4gKiA8ZGl2IGNsYXNzPVwiY29weXJpZ2h0IGNvcHlyaWdodC0tbWFzb25yeVwiPsKpIDIwMjQgUGhvdG9ncmFwaGVyIE5hbWU8L2Rpdj5cbiAqL1xuXG4vLyBCbG9jayBuYW1lXG4kYmxvY2s6ICdjb3B5cmlnaHQnO1xuXG4vLyBDb25maWd1cmF0aW9uIHZhcmlhYmxlc1xuJGNvcHlyaWdodC1iZy1jb2xvcjogY29sb3JzLiRjb2xvci1vdmVybGF5LW1kICFkZWZhdWx0O1xuJGNvcHlyaWdodC10ZXh0LWNvbG9yOiBjb2xvcnMuJGNvbG9yLXdoaXRlICFkZWZhdWx0O1xuJGNvcHlyaWdodC1mb250LXNpemU6IDAuNzVyZW0gIWRlZmF1bHQ7XG4kY29weXJpZ2h0LXBhZGRpbmcteTogMnB4ICFkZWZhdWx0O1xuJGNvcHlyaWdodC1wYWRkaW5nLXg6IDZweCAhZGVmYXVsdDtcbiRjb3B5cmlnaHQtYm9yZGVyLXJhZGl1czogMnB4ICFkZWZhdWx0O1xuJGNvcHlyaWdodC1zcGFjaW5nOiA4cHggIWRlZmF1bHQ7XG5cblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ29weXJpZ2h0IENvbXBvbmVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi4jeyRibG9ja30ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29weXJpZ2h0LWJnLWNvbG9yO1xuICAgIGNvbG9yOiAkY29weXJpZ2h0LXRleHQtY29sb3I7XG4gICAgcGFkZGluZzogJGNvcHlyaWdodC1wYWRkaW5nLXkgJGNvcHlyaWdodC1wYWRkaW5nLXg7XG4gICAgZm9udC1zaXplOiAkY29weXJpZ2h0LWZvbnQtc2l6ZTtcbiAgICBib3JkZXItcmFkaXVzOiAkY29weXJpZ2h0LWJvcmRlci1yYWRpdXM7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gRG9uJ3QgaW50ZXJmZXJlIHdpdGggY2xpY2tzIG9uIHBhcmVudFxuICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgLy8gRGVmYXVsdCBwb3NpdGlvbjogYm90dG9tLXJpZ2h0XG4gICAgYm90dG9tOiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgcmlnaHQ6ICRjb3B5cmlnaHQtc3BhY2luZztcblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gUG9zaXRpb24gbW9kaWZpZXJzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8vIFRvcC1yaWdodCBwb3NpdGlvblxuICAgICYtLXRvcC1yaWdodCB7XG4gICAgICAgIHRvcDogJGNvcHlyaWdodC1zcGFjaW5nO1xuICAgICAgICByaWdodDogJGNvcHlyaWdodC1zcGFjaW5nO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgfVxuXG4gICAgLy8gVG9wLWxlZnQgcG9zaXRpb25cbiAgICAmLS10b3AtbGVmdCB7XG4gICAgICAgIHRvcDogJGNvcHlyaWdodC1zcGFjaW5nO1xuICAgICAgICBsZWZ0OiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgfVxuXG4gICAgLy8gQm90dG9tLWxlZnQgcG9zaXRpb25cbiAgICAmLS1ib3R0b20tbGVmdCB7XG4gICAgICAgIGJvdHRvbTogJGNvcHlyaWdodC1zcGFjaW5nO1xuICAgICAgICBsZWZ0OiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC8vIEVkZ2UgcG9zaXRpb24gKG5vIHNwYWNpbmcsIG5vIGJvcmRlci1yYWRpdXMpIC0gc2hhcmVkIGJhc2VcbiAgICAmLS1lZGdlLFxuICAgICYtLW1hc29ucnksXG4gICAgJi0tY29sbGFnZSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICAgIC8vIE1vZGFsL0xpZ2h0Ym94IHBvc2l0aW9uIChvdXRzaWRlIGltYWdlLCBhYm92ZSlcbiAgICAmLS1tb2RhbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogLTIycHg7XG4gICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludCgnbWQnKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICB0b3A6IC0zMnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBTdHlsZSBtb2RpZmllcnNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gTGlnaHQgYmFja2dyb3VuZCB2YXJpYW50XG4gICAgJi0tbGlnaHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGNvbG9ycy4kY29sb3Itd2hpdGUsIDAuOSk7XG4gICAgICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLWJsYWNrO1xuICAgIH1cblxuICAgIC8vIERhcmsgYmFja2dyb3VuZCB2YXJpYW50IChtb3JlIG9wYXF1ZSlcbiAgICAmLS1kYXJrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShjb2xvcnMuJGNvbG9yLWJsYWNrLCAwLjgpO1xuICAgICAgICBjb2xvcjogY29sb3JzLiRjb2xvci13aGl0ZTtcbiAgICB9XG5cbiAgICAvLyBUcmFuc3BhcmVudCB2YXJpYW50IChzdWJ0bGUpXG4gICAgJi0tdHJhbnNwYXJlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCA0cHggcmdiYShjb2xvcnMuJGNvbG9yLWJsYWNrLCAwLjgpO1xuICAgIH1cblxuICAgIC8vIExhcmdlciB0ZXh0IHNpemVcbiAgICAmLS1sYXJnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIHBhZGRpbmc6IDRweCA4cHg7XG4gICAgfVxuXG4gICAgLy8gSGlkZGVuIG9uIHNtYWxsIHNjcmVlbnNcbiAgICAmLS1oaWRlLW1vYmlsZSB7XG4gICAgICAgIEBpbmNsdWRlIGJwLmJyZWFrcG9pbnQtZG93bignc20nKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2hvdyBvbmx5IG9uIGhvdmVyIChyZXF1aXJlcyBwYXJlbnQgdG8gaGF2ZSBob3ZlciBzdGF0ZSlcbiAgICAmLS1ob3Zlci1zaG93IHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG5cbiAgICAgICAgKjpob3ZlciA+ICYsXG4gICAgICAgICo6Zm9jdXMtd2l0aGluID4gJiB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gYXNzZXRzL3Njc3MvX2NvbG9ycy5zY3NzXG5cbi8vIEJhc2UgY29sb3JzIGZyb20gZGVzaWduIGRvY3VtZW50XG4kY29sb3ItamZlLWxpZ2h0Ymx1ZTogIzAwOWRkZjsgICAgICAgICAgLy8gSkZFIGxpZ2h0IGJsdWVcbiRjb2xvci1qZmUteWVsbG93OiAjZmZjYzAwOyAgICAgICAgICAgICAvLyBKRkUgeWVsbG93XG4kY29sb3ItamZlLWFsbW9zdC13aGl0ZTogI2ZhZmFmYTsgICAgICAgIC8vIEpGRSBhbG1vc3Qgd2hpdGUgKGJhY2tncm91bmQgb3B0aW9uKVxuJGNvbG9yLWpmZS1ncmF5OiAjZjNmM2YyOyAgICAgICAgICAgICAgIC8vIEpGRSBncmF5IChiYWNrZ3JvdW5kIG9wdGlvbilcbiRjb2xvci1qZmUtZ3JheS1tZWRpdW06ICNDRkNGQ0Y7ICAgICAgICAvLyBKRkUgbWVkaXVtIGdyYXkgKGZvciBib3JkZXJzIGV0Yy4pXG4kY29sb3ItamZlLWdyYXktZGFyazogcmdiYSgxODksIDE4OSwgMTg5LCAxKTsgLy8gSkZFIGRhcmsgZ3JheSAoZm9yIGRhcmtlciBib3JkZXJzIGV0Yy4pXG4kY29sb3ItamZlLWdyYXktZGFya2VyOnJnYmEoMTA1LCAxMDUsIDEwNSwgMSk7IC8vIEpGRSBkYXJrZXIgZ3JheSAoRm9ybSBkZXNjcmlwdGlvbiB0ZXh0IGV0Yy4pXG4vLyBQcm9ncmFtIHNwZWNpZmljIGNvbG9yc1xuJGNvbG9yLWUtanVnZW5kLWJsdWU6ICMwMDMzOTk7ICAgICAgICAgIC8vIEVyYXNtdXMrIFlvdXRoIGJsdWVcbiRjb2xvci1lc2stbWFnZW50YTogI2U1MDA2YzsgICAgICAgICAgICAvLyBFU0MgbWFnZW50YVxuJGNvbG9yLWUtc3BvcnQtb3JhbmdlOiAjZTM1MzBmOyAgICAgICAgIC8vIEVyYXNtdXMrIFNwb3J0IG9yYW5nZVxuXG4vLyBVdGlsaXR5IGNvbG9yc1xuJGNvbG9yLXdoaXRlOiAjZmZmZmZmOyAgICAgICAgICAgICAgLy8gV2hpdGUgY29sb3IgZm9yIGJhY2tncm91bmRzXG4kY29sb3ItYmxhY2s6ICMwMDAwMDA7ICAgICAgICAgICAgICAvLyBCbGFjayBjb2xvciBmb3IgdGV4dFxuJGNvbG9yLW92ZXJsYXktc206IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiRjb2xvci1vdmVybGF5LW1kOiByZ2JhKDAsIDAsIDAsIDAuNjUpO1xuJGNvbG9yLW92ZXJsYXktbGc6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG5cbi8vIFNlY29uZGFyeSBhbmQgZGVyaXZlZCBjb2xvcnNcbiRjb2xvci1qZmUteWVsbG93LWhvdmVyOiAjRUJCQzAwOyAgICAgICAvLyBIb3ZlciBzdGF0ZSBmb3IgSkZFIHllbGxvd1xuJGNvbG9yLWUtanVnZW5kLWhvdmVyOiAjMDAyYjgwOyAgICAgICAgIC8vIEhvdmVyIHN0YXRlIGZvciBFcmFzbXVzKyBZb3V0aCBibHVlXG4kY29sb3ItZXNrLWhvdmVyOiAjZDAwMDYyOyAgICAgICAgICAgICAgLy8gSG92ZXIgc3RhdGUgZm9yIEVTQyBtYWdlbnRhXG4kY29sb3ItZS1zcG9ydC1ob3ZlcjogI2M5NDkwZDsgICAgICAgICAgLy8gSG92ZXIgc3RhdGUgZm9yIEVyYXNtdXMrIFNwb3J0IG9yYW5nZVxuXG4vLyBFcnJvciBhbmQgd2FybmluZyBjb2xvcnNcbiRjb2xvci1lcnJvcjogI2RmMDAwMDsgICAgICAgICAgICAgICAgLy8gRXJyb3IgY29sb3IgKHJlZClcbiRjb2xvci1lcnJvci1iZzogI2RmMDAwMDFhOyAgICAgICAgICAgICAvLyBFcnJvciBiYWNrZ3JvdW5kIGNvbG9yIChsaWdodCByZWQpXG4kY29sb3Itd2FybmluZzogI2ZmYjMwMDsgICAgICAgICAgICAgIC8vIFdhcm5pbmcgY29sb3IgKHllbGxvdylcbiRjb2xvci13YXJuaW5nLWJnOiAjZmZiMzAwMWE7ICAgICAgICAgIC8vIFdhcm5pbmcgYmFja2dyb3VuZCBjb2xvciAobGlnaHQgeWVsbG93KVxuJGNvbG9yLXN1Y2Nlc3M6ICM5NWRmMDA7ICAgICAgICAgICAgICAvLyBTdWNjZXNzIGNvbG9yIChncmVlbilcbiRjb2xvci1zdWNjZXNzLWJnOiAjOTVkZjAwMWE7ICAgICAgICAgIC8vIFN1Y2Nlc3MgYmFja2dyb3VuZCBjb2xvciAobGlnaHQgZ3JlZW4pXG4iLCIvLyBBVVRPLUdFTkVSQVRFRCBGSUxFIGZyb20gYnVpbGQtYnJlYWtwb2ludHMuanNcbi8vIERPIE5PVCBFRElUIERJUkVDVExZXG5cbi8vIEltcG9ydCBTYXNzIG1hcCBtb2R1bGVcbkB1c2UgXCJzYXNzOm1hcFwiO1xuXG4vLyBCcmVha3BvaW50IHZhbHVlc1xuJGJyZWFrcG9pbnQtc206IDY0MHB4O1xuJGJyZWFrcG9pbnQtbWQ6IDc2OHB4O1xuJGJyZWFrcG9pbnQtbGc6IDEwMjRweDtcbiRicmVha3BvaW50LXhsOiAxMjgwcHg7XG4kYnJlYWtwb2ludC0yeGw6IDE1MzZweDtcblxuLy8gTWFwIGZvciBwcm9ncmFtbWF0aWMgYWNjZXNzXG4kYnJlYWtwb2ludHM6IChcbiAgJ3NtJzogJGJyZWFrcG9pbnQtc20sXG4gICdtZCc6ICRicmVha3BvaW50LW1kLFxuICAnbGcnOiAkYnJlYWtwb2ludC1sZyxcbiAgJ3hsJzogJGJyZWFrcG9pbnQteGwsXG4gICcyeGwnOiAkYnJlYWtwb2ludC0yeGxcbik7XG5cbi8vIE1peGluIGZvciBlYXN5IG1lZGlhIHF1ZXJpZXMgYmFzZWQgb24gZGVmaW5lZCBicmVha3BvaW50c1xuQG1peGluIGJyZWFrcG9pbnQoJHBvaW50KSB7XG4gIEBpZiBtYXAuaGFzLWtleSgkYnJlYWtwb2ludHMsICRwb2ludCkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJHBvaW50KSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcIkJyZWFrcG9pbnQgJyN7JHBvaW50fScgaXMgbm90IGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzIG1hcC5cIjtcbiAgfVxufVxuXG4vLyBNaXhpbiBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXMgKHNtYWxsZXIgdGhhbiBhIGJyZWFrcG9pbnQpXG5AbWl4aW4gYnJlYWtwb2ludC1kb3duKCRwb2ludCkge1xuICBAaWYgbWFwLmhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkcG9pbnQpIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogbWFwLmdldCgkYnJlYWtwb2ludHMsICRwb2ludCkgLSAxcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJCcmVha3BvaW50ICcjeyRwb2ludH0nIGlzIG5vdCBkZWZpbmVkIGluICRicmVha3BvaW50cyBtYXAuXCI7XG4gIH1cbn1cblxuLy8gTWl4aW4gZm9yIGNyZWF0aW5nIHN0eWxlcyBiZXR3ZWVuIHR3byBicmVha3BvaW50c1xuQG1peGluIGJyZWFrcG9pbnQtYmV0d2VlbigkbWluLCAkbWF4KSB7XG4gIEBpZiBtYXAuaGFzLWtleSgkYnJlYWtwb2ludHMsICRtaW4pIGFuZCBtYXAuaGFzLWtleSgkYnJlYWtwb2ludHMsICRtYXgpIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLmdldCgkYnJlYWtwb2ludHMsICRtaW4pKSBhbmQgKG1heC13aWR0aDogbWFwLmdldCgkYnJlYWtwb2ludHMsICRtYXgpIC0gMXB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiQnJlYWtwb2ludCAnI3skbWlufScgb3IgJyN7JG1heH0nIGlzIG5vdCBkZWZpbmVkIGluICRicmVha3BvaW50cyBtYXAuXCI7XG4gIH1cbn1cbiIsIi8vIGFzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2V2ZW50LWJhc2UtbGlzdC5zY3NzXG4vLyBCYXNlIHN0eWxlcyBmb3IgZXZlbnQgbGlzdCBjb21wb25lbnRzIC0gc2hhcmVkIGJldHdlZW4gcHJldmlldyBhbmQgZnVsbCBsaXN0XG5AdXNlICcuLi9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5AdXNlICcuLi9jb21wb25lbnRzL2NvcHlyaWdodCc7XG5cbi8qKlxuICogQmFzZSBldmVudCBpdGVtIHN0eWxlcyBtaXhpblxuICogQ29udGFpbnMgY29tbW9uIHN0eWxlcyBmb3IgZXZlbnQgaXRlbXMgdXNlZCBpbiBib3RoIHByZXZpZXcgYW5kIGZ1bGwgbGlzdFxuICogQHBhcmFtIHtzdHJpbmd9ICRibG9jayAtIFRoZSBCRU0gYmxvY2sgY2xhc3MgbmFtZVxuICovXG5AbWl4aW4gZXZlbnQtYmFzZS1zdHlsZXMoJGJsb2NrKSB7XG4gIC8vIEhpZ2hsaWdodCBhcnJvdyBpY29uIHN0eWxpbmdcbiAgLiN7JGJsb2NrfV9faGlnaGxpZ2h0LWFycm93LWljb24ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnksIGNvbG9ycy4kY29sb3ItamZlLXllbGxvdyk7XG4gIH1cblxuICAvLyBIaWdobGlnaHQgbGluayBob3ZlciBhbmQgZm9jdXMgc3RhdGVzXG4gIC4jeyRibG9ja31fX2hpZ2hsaWdodC1saW5rOmhvdmVyLFxuICAuI3skYmxvY2t9X19oaWdobGlnaHQtbGluazpmb2N1cyB7XG4gICAgLiN7JGJsb2NrfV9faGlnaGxpZ2h0LWFycm93LWljb24ge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcbiAgICB9XG4gIH1cblxuICAvLyBFdmVudCBpdGVtIG1ldGEgc3R5bGluZ1xuICAuI3skYmxvY2t9X19ldmVudC1pdGVtLW1ldGEge1xuICAgIHdpZHRoOiAxODBweDtcbiAgfVxuXG4gIC4jeyRibG9ja31fX2hpZ2hsaWdodC10ZXh0LWNvbnRlbnQtd3JhcHBlcjpub3QoLmJnLWpmZS1ncmF5LC5iZy1wYXBlci10ZXh0dXJlKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUsIGNvbG9ycy4kY29sb3Itd2hpdGUpO1xuICB9XG5cbiAgLy8gRXZlbnQgaGVhZGxpbmUgc3R5bGluZyB3aXRoIGNvbG9yIHZhcmlhbnRzXG4gIGgyLiN7JGJsb2NrfV9fZXZlbnQtaXRlbS1oZWFkbGluZSxcbiAgaDMuI3skYmxvY2t9X19ldmVudC1pdGVtLWhlYWRsaW5lIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcblxuICAgIC8vIEJyYW5kIGNvbG9yIHZhcmlhbnRzXG4gICAgJi50ZXh0LWUtanVnZW5kLWJsdWUge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWUtanVnZW5kLWJsdWUsIGNvbG9ycy4kY29sb3ItZS1qdWdlbmQtYmx1ZSk7XG4gICAgfVxuXG4gICAgJi50ZXh0LWUtc3BvcnQtb3JhbmdlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lLXNwb3J0LW9yYW5nZSwgY29sb3JzLiRjb2xvci1lLXNwb3J0LW9yYW5nZSk7XG4gICAgfVxuXG4gICAgJi50ZXh0LWVzay1tYWdlbnRhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lc2stbWFnZW50YSwgY29sb3JzLiRjb2xvci1lc2stbWFnZW50YSk7XG4gICAgfVxuXG4gICAgJi50ZXh0LWpmZS1saWdodGJsdWUge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWpmZS1saWdodGJsdWUsIGNvbG9ycy4kY29sb3ItamZlLWxpZ2h0Ymx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRXZlbnQgbGluayBzdHlsaW5nIHdpdGggaG92ZXIgYW5kIGZvY3VzIHN0YXRlc1xuICAuI3skYmxvY2t9X19ldmVudC1pdGVtLWxpbmsge1xuICAgICY6aG92ZXIge1xuICAgICAgaDIuI3skYmxvY2t9X19ldmVudC1pdGVtLWhlYWRsaW5lLFxuICAgICAgaDMuI3skYmxvY2t9X19ldmVudC1pdGVtLWhlYWRsaW5lIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgICBoMi4jeyRibG9ja31fX2V2ZW50LWl0ZW0taGVhZGxpbmUsXG4gICAgICBoMy4jeyRibG9ja31fX2V2ZW50LWl0ZW0taGVhZGxpbmUge1xuICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBORVc6IEV2ZW50IHR5cGUvY2F0ZWdvcnkgYmFkZ2Ugc3R5bGluZ1xuICAuI3skYmxvY2t9X19ldmVudC1pdGVtLXR5cGUsXG4gIC4jeyRibG9ja31fX2V2ZW50LWl0ZW0tY2F0ZWdvcnktbmFtZSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gIC8vIE5FVzogVGltZSBpbmZvcm1hdGlvbiBzdHlsaW5nXG4gIC4jeyRibG9ja31fX2V2ZW50LWl0ZW0tdGltZSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9*/