/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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/content-blocks/cb_programbox.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
.shadow-md {
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.16);
}
/**
 * Program Box Item Component
 * Shared styles for program box items used across hero and programbox content blocks
 *
 * Usage: @include program-box-item($block);
 *
 * @param {string} $block - The BEM block class name
 */
/**
 * Alternative: Individual mixins for more granular control
 */
/**
 * Grid Column Height Component
 * Ensures equal height distribution for content blocks in grid-column containers
 *
 * Usage: @include grid-column-height($block);
 *
 * @param {string} $block - The BEM block class name (e.g., 'ce-igelb_programbox')
 */
/**
 * 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;
}
.ce-igelb_programbox a.ce-igelb_programbox__link .ce-igelb_programbox__image {
  transition: transform 0.3s ease-in-out;
  transform: scale(1);
}
.ce-igelb_programbox a.ce-igelb_programbox__link:hover .ce-igelb_programbox__image, .ce-igelb_programbox a.ce-igelb_programbox__link:focus .ce-igelb_programbox__image {
  transform: scale(1.05);
}
.ce-2-col-container__content,
.ce-3-col-container__content,
.ce-4-col-container__content {
  display: flex;
  flex-direction: column;
}
.ce-2-col-container__content > .ce-igelb_programbox,
.ce-3-col-container__content > .ce-igelb_programbox,
.ce-4-col-container__content > .ce-igelb_programbox {
  flex-grow: 1;
}
.ce-2-col-container__content > .ce-igelb_programbox > div,
.ce-3-col-container__content > .ce-igelb_programbox > div,
.ce-4-col-container__content > .ce-igelb_programbox > div {
  height: 100%;
}
.ce-2-col-container__content > .ce-igelb_programbox > div > div,
.ce-3-col-container__content > .ce-igelb_programbox > div > div,
.ce-4-col-container__content > .ce-igelb_programbox > div > div {
  height: 100%;
}
.ce-2-col-container__content > .ce-igelb_programbox > div > div > div,
.ce-3-col-container__content > .ce-igelb_programbox > div > div > div,
.ce-4-col-container__content > .ce-igelb_programbox > div > div > div {
  height: 100%;
}
.ce-igelb_programbox__item {
  padding: 1.75rem;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.16);
}
.ce-igelb_programbox__item-icon {
  color: var(--color-secondary, #ffcc00);
}
.ce-igelb_programbox__item-icon, .ce-igelb_programbox__item-header {
  transition: all 0.3s ease-in-out;
}
.ce-igelb_programbox__item-header {
  text-align: center;
  width: 100%;
}
.ce-igelb_programbox__item-bodytext {
  text-align: center;
  width: 100%;
}
.ce-igelb_programbox__item-bodytext > p {
  text-align: center;
}
.ce-igelb_programbox a.ce-igelb_programbox__link:hover .ce-igelb_programbox__item-icon,
.ce-igelb_programbox a.ce-igelb_programbox__link:focus .ce-igelb_programbox__item-icon {
  color: var(--color-black, #000000);
}
.ce-igelb_programbox a.ce-igelb_programbox__link:hover h3.ce-igelb_programbox__item-header,
.ce-igelb_programbox a.ce-igelb_programbox__link:focus h3.ce-igelb_programbox__item-header {
  text-decoration: underline;
}
.ce-igelb_programbox a.ce-igelb_programbox__link:focus {
  outline: 2px solid var(--color-primary, #009ddf);
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  .ce-igelb_programbox__item-icon,
  .ce-igelb_programbox__item-header {
    transition: none;
  }
}
@media (forced-colors: active) {
  a.ce-igelb_programbox__link:focus {
    outline: 2px solid ButtonText;
  }
}
.ce-2-col-container__content,
.ce-3-col-container__content,
.ce-4-col-container__content {
  display: flex;
  flex-direction: column;
}
.ce-2-col-container__content > .ce-igelb_programbox,
.ce-3-col-container__content > .ce-igelb_programbox,
.ce-4-col-container__content > .ce-igelb_programbox {
  flex-grow: 1;
}
.ce-2-col-container__content > .ce-igelb_programbox > div,
.ce-3-col-container__content > .ce-igelb_programbox > div,
.ce-4-col-container__content > .ce-igelb_programbox > div {
  height: 100%;
}
.ce-2-col-container__content > .ce-igelb_programbox > div > div,
.ce-3-col-container__content > .ce-igelb_programbox > div > div,
.ce-4-col-container__content > .ce-igelb_programbox > div > div {
  height: 100%;
}
.ce-2-col-container__content > .ce-igelb_programbox > div > div > div,
.ce-3-col-container__content > .ce-igelb_programbox > div > div > div,
.ce-4-col-container__content > .ce-igelb_programbox > div > div > div {
  height: 100%;
  max-height: -moz-fit-content;
  max-height: fit-content;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2JfcHJvZ3JhbWJveC5jc3MiLCJtYXBwaW5ncyI6Ijs7O0FBQUEsZ0JBQWdCO0FDNkNoQjtFQXRCUSwyQ0FoQkg7QURKTDtBRUNBOzs7Ozs7O0VBQUE7QUF5RkE7O0VBQUE7QUMzRkE7Ozs7Ozs7RUFBQTtBQ0VBOzs7Ozs7O0VBQUE7QUEwQkE7RUFDSTtFQUNBLHFDQ2JlO0VEY2YsY0NqQlU7RURrQlY7RUFDQSxrQkFoQmtCO0VBaUJsQixrQkFkc0I7RUFldEI7RUFDQTtFQUNBO0VBQ0E7RUFBQTtFQUVBLFdBbkJnQjtFQW9CaEIsVUFwQmdCO0FKc0JwQjtBSUtJO0VBQ0ksUUE1Qlk7RUE2QlosVUE3Qlk7RUE4Qlo7QUpIUjtBSU9JO0VBQ0ksUUFuQ1k7RUFvQ1osU0FwQ1k7RUFxQ1o7RUFDQTtBSkxSO0FJU0k7RUFDSSxXQTNDWTtFQTRDWixTQTVDWTtFQTZDWjtBSlBSO0FJV0k7RUFHSTtFQUNBO0VBQ0E7RUFDQTtBSlhSO0FJY0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKWlI7QU1wREk7RUZ3REE7SUFXUTtJQUNBO0VKWFY7QUFDRjtBSW1CSTtFQUNJO0VBQ0EsY0N2Rk07QUxzRWQ7QUlxQkk7RUFDSTtFQUNBLGNDOUZNO0FMMkVkO0FJdUJJO0VBQ0k7RUFDQTtBSnJCUjtBSXlCSTtFQUNJO0VBQ0E7QUp2QlI7QU0vREk7RUYwRkE7SUFFUTtFSnpCVjtBQUNGO0FJNkJJO0VBQ0k7RUFDQTtBSjNCUjtBSTZCUTtFQUVJO0FKNUJaO0FBakdRO0VBQ0k7RUFDQTtBQW9HWjtBQWhHWTtFQUNJO0FBa0doQjtBQTNGQTs7O0VBR0k7RUFDQTtBQThGSjtBQTVGSTs7O0VBQ0k7QUFnR1I7QUE5RlE7OztFQUNJO0FBa0daO0FBaEdZOzs7RUFDSTtBQW9HaEI7QUFsR2dCOzs7RUFDSTtBQXNHcEI7QUUxSFE7RUFDSTtFQUNBLDJDRG5CUDtBRGdKTDtBRTFIUTtFQUNJLHNDQVpVO0FGd0l0QjtBRXhIUTtFQUVJO0FGeUhaO0FFdEhRO0VBQ0k7RUFDQTtBRndIWjtBRXJIUTtFQUNJO0VBQ0E7QUZ1SFo7QUVySFk7RUFDSTtBRnVIaEI7QUU1R1k7O0VBQ0ksa0NBMUNZO0FGeUo1QjtBRTVHWTs7RUFDSTtBRitHaEI7QUUxR1E7RUFDSTtFQUNBO0FGNEdaO0FFdkdJO0VBRUk7O0lBRUk7RUZ5R1Y7QUFDRjtBRXJHSTtFQUNJO0lBQ0k7RUZ1R1Y7QUFDRjtBR3BMRTs7O0VBR0U7RUFDQTtBSHNMSjtBR25MSTs7O0VBQ0U7QUh1TE47QUduTE07OztFQUNFO0FIdUxSO0FHckxROzs7RUFDRTtBSHlMVjtBR3ZMVTs7O0VBQ0U7RUFFQTtFQUFBO0FIMExaLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9qdWdlbmQtZnVlci1ldXJvcGEvLi9hc3NldHMvc2Nzcy9jb250ZW50LWJsb2Nrcy9jYl9wcm9ncmFtYm94LnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvZ2xvYmFsL19zaGFkb3dzLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fcHJvZ3JhbS1ib3gtaXRlbS5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2dyaWQtY29sdW1uLWhlaWdodC5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2NvcHlyaWdodC5zY3NzIiwid2VicGFjazovL2p1Z2VuZC1mdWVyLWV1cm9wYS8uL2Fzc2V0cy9zY3NzL2dsb2JhbC9fY29sb3JzLnNjc3MiLCJ3ZWJwYWNrOi8vanVnZW5kLWZ1ZXItZXVyb3BhLy4vYXNzZXRzL3Njc3MvZ2xvYmFsL19icmVha3BvaW50cy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIGFzc2V0cy9zY3NzL2NvbnRlbnQtYmxvY2tzL2NiX3Byb2dyYW1ib3guc2Nzc1xuQHVzZSAnLi4vZ2xvYmFsL2NvbG9ycycgYXMgY29sb3JzO1xuQHVzZSAnLi4vY29tcG9uZW50cy9wcm9ncmFtLWJveC1pdGVtJyBhcyBwcm9ncmFtLWJveDtcbkB1c2UgJy4uL2NvbXBvbmVudHMvZ3JpZC1jb2x1bW4taGVpZ2h0JyBhcyBncmlkLWNvbHVtbjtcbkB1c2UgJy4uL2NvbXBvbmVudHMvY29weXJpZ2h0Jztcbi8vIEJsb2NrIG5hbWUgZm9yIEJFTSBtZXRob2RvbG9neVxuJGJsb2NrOiAnY2UtaWdlbGJfcHJvZ3JhbWJveCc7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNYWluIGNvbXBvbmVudCBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uI3skYmxvY2t9IHtcbiAgICAvLyBBZGQgYW55IHByb2dyYW1ib3gtc3BlY2lmaWMgc3R5bGVzIGhlcmUgaWYgbmVlZGVkXG4gICAgYS4jeyRibG9ja31fX2xpbmsge1xuICAgICAgICAuI3skYmxvY2t9X19pbWFnZSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAuI3skYmxvY2t9X19pbWFnZSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRW5zdXJlIGZ1bGwgaGVpZ2h0IGZvciBjb2x1bW5zIGluIG11bHRpLWNvbHVtbiBjb250YWluZXJzXG4uY2UtMi1jb2wtY29udGFpbmVyX19jb250ZW50LFxuLmNlLTMtY29sLWNvbnRhaW5lcl9fY29udGVudCxcbi5jZS00LWNvbC1jb250YWluZXJfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgID4uI3skYmxvY2t9IHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICAgID5kaXYge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gSW5jbHVkZSBzaGFyZWQgcHJvZ3JhbSBib3ggaXRlbSBzdHlsZXNcbkBpbmNsdWRlIHByb2dyYW0tYm94LnByb2dyYW0tYm94LWl0ZW0oJGJsb2NrKTtcblxuLy8gSW5jbHVkZSBncmlkIGNvbHVtbiBoZWlnaHQgZGlzdHJpYnV0aW9uXG5AaW5jbHVkZSBncmlkLWNvbHVtbi5ncmlkLWNvbHVtbi1oZWlnaHQoJGJsb2NrKTtcbiIsIi8vIGFzc2V0cy9zY3NzL2dsb2JhbC9fc2hhZG93cy5zY3NzXG5cbi8vIFNoYWRvdyB0b2tlbiBkZWZpbml0aW9uc1xuLy8gQmFzZWQgb24gVGFpbHdpbmQncyBzaGFkb3cgc2NhbGUgZm9yIGNvbnNpc3RlbmN5XG4vLyBDdXJyZW50bHkgdXNpbmcgbWQgYXMgZGVmYXVsdCwgZXh0ZW5zaWJsZSBmb3IgZnV0dXJlIHNoYWRvdyB2YXJpYW50c1xuXG4vLyBTaGFkb3cgdmFsdWVzXG4kbWQ6IDJweCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNik7XG4kZGVmYXVsdDogJG1kO1xuJHNoYWRvdy1kZWZhdWx0OiAkZGVmYXVsdDtcblxuLy8gRnV0dXJlIHNoYWRvdyBkZWZpbml0aW9ucyBjYW4gYmUgYWRkZWQgaGVyZTpcbi8vICRzbTogMCAxcHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbi8vICRsZzogMCAxMHB4IDE1cHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMSksIDAgNHB4IDZweCAtNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbi8vICR4bDogMCAyMHB4IDI1cHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMSksIDAgOHB4IDEwcHggLTZweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4vLyAkMnhsOiAwIDI1cHggNTBweCAtMTJweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuLy8gJGlubmVyOiBpbnNldCAwIDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuLy8gJG5vbmU6IG5vbmU7XG5cbi8vIE1peGluIGZvciBlYXN5IGFwcGxpY2F0aW9uXG4vLyBVc2FnZTogQGluY2x1ZGUgc2hhZG93cy5hcHBseSgnbWQnKSBvciBAaW5jbHVkZSBzaGFkb3dzLmFwcGx5KCdkZWZhdWx0JylcbkBtaXhpbiBhcHBseSgkc2l6ZTogJ2RlZmF1bHQnKSB7XG4gICAgQGlmICRzaXplID09ICdtZCcge1xuICAgICAgICBib3gtc2hhZG93OiAkbWQ7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRkZWZhdWx0O1xuICAgIH1cblxuICAgIC8vIEZ1dHVyZSBzaXplIG9wdGlvbnMgY2FuIGJlIGFkZGVkIGhlcmU6XG4gICAgLy8gQGVsc2UgaWYgJHNpemUgPT0gJ3NtJyB7XG4gICAgLy8gICAgIGJveC1zaGFkb3c6ICRzbTtcbiAgICAvLyB9IEBlbHNlIGlmICRzaXplID09ICdsZycge1xuICAgIC8vICAgICBib3gtc2hhZG93OiAkbGc7XG4gICAgLy8gfSBAZWxzZSBpZiAkc2l6ZSA9PSAneGwnIHtcbiAgICAvLyAgICAgYm94LXNoYWRvdzogJHhsO1xuICAgIC8vIH0gQGVsc2UgaWYgJHNpemUgPT0gJzJ4bCcge1xuICAgIC8vICAgICBib3gtc2hhZG93OiAkMnhsO1xuICAgIC8vIH0gQGVsc2UgaWYgJHNpemUgPT0gJ2lubmVyJyB7XG4gICAgLy8gICAgIGJveC1zaGFkb3c6ICRpbm5lcjtcbiAgICAvLyB9IEBlbHNlIGlmICRzaXplID09ICdub25lJyB7XG4gICAgLy8gICAgIGJveC1zaGFkb3c6ICRub25lO1xuICAgIC8vIH1cbn1cblxuXG4uc2hhZG93LW1kIHtcbiAgICBAaW5jbHVkZSBhcHBseSgnbWQnKTtcbn1cbiIsIi8vIGFzc2V0cy9zY3NzL2NvbXBvbmVudHMvX3Byb2dyYW0tYm94LWl0ZW0uc2Nzc1xuQHVzZSAnLi4vZ2xvYmFsL2NvbG9ycycgYXMgY29sb3JzO1xuQHVzZSAnLi4vZ2xvYmFsL3NoYWRvd3MnIGFzIHNoYWRvd3M7XG5cbi8qKlxuICogUHJvZ3JhbSBCb3ggSXRlbSBDb21wb25lbnRcbiAqIFNoYXJlZCBzdHlsZXMgZm9yIHByb2dyYW0gYm94IGl0ZW1zIHVzZWQgYWNyb3NzIGhlcm8gYW5kIHByb2dyYW1ib3ggY29udGVudCBibG9ja3NcbiAqXG4gKiBVc2FnZTogQGluY2x1ZGUgcHJvZ3JhbS1ib3gtaXRlbSgkYmxvY2spO1xuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSAkYmxvY2sgLSBUaGUgQkVNIGJsb2NrIGNsYXNzIG5hbWVcbiAqL1xuQG1peGluIHByb2dyYW0tYm94LWl0ZW0oJGJsb2NrKSB7XG4gICAgLy8gVmlzdWFsIGNvbmZpZ3VyYXRpb25cbiAgICAkdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAkdHJhbnNpdGlvbi1lYXNpbmc6IGVhc2UtaW4tb3V0O1xuXG4gICAgLy8gQ29sb3JzXG4gICAgJGl0ZW0taWNvbi1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS15ZWxsb3cpO1xuICAgICRpdGVtLWljb24taG92ZXItY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrLCBjb2xvcnMuJGNvbG9yLWJsYWNrKTtcblxuICAgICRpdGVtLWJveC1zaGFkb3c6IHNoYWRvd3MuJHNoYWRvdy1kZWZhdWx0O1xuXG4gICAgLiN7JGJsb2NrfSB7XG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgcGFkZGluZzogMS43NXJlbTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6ICRpdGVtLWJveC1zaGFkb3c7XG4gICAgICAgIH1cbiAgICAgICAgLy8gUHJvZ3JhbSBib3ggaXRlbSBpY29uIHN0eWxpbmdcbiAgICAgICAgJl9faXRlbS1pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkaXRlbS1pY29uLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVHJhbnNpdGlvbiBlZmZlY3RzIGZvciBpbnRlcmFjdGl2ZSBlbGVtZW50c1xuICAgICAgICAmX19pdGVtLWljb24sXG4gICAgICAgICZfX2l0ZW0taGVhZGVyIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkdHJhbnNpdGlvbi1lYXNpbmc7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pdGVtLWhlYWRlciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2l0ZW0tYm9keXRleHQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgID5wIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIC8vIG9wdGlvbmFsIHN0eWxlcyBmb3IgdGhlIGxpbmsgd3JhcHBlciBjYW4gYmUgYWRkZWQgaGVyZVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gSG92ZXIgYW5kIGZvY3VzIHN0YXRlcyBmb3IgdGhlIGxpbmsgd3JhcHBlclxuICAgICAgICBhLiN7JGJsb2NrfV9fbGluazpob3ZlcixcbiAgICAgICAgYS4jeyRibG9ja31fX2xpbms6Zm9jdXMge1xuICAgICAgICAgICAgLiN7JGJsb2NrfV9faXRlbS1pY29uIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGl0ZW0taWNvbi1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMuI3skYmxvY2t9X19pdGVtLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb2N1cyBzdGF0ZSBhY2Nlc3NpYmlsaXR5XG4gICAgICAgIGEuI3skYmxvY2t9X19saW5rOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1wcmltYXJ5LCBjb2xvcnMuJGNvbG9yLWpmZS1saWdodGJsdWUpO1xuICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlZHVjZWQgbW90aW9uIHN1cHBvcnRcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuXG4gICAgICAgIC4jeyRibG9ja31fX2l0ZW0taWNvbixcbiAgICAgICAgLiN7JGJsb2NrfV9faXRlbS1oZWFkZXIge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhpZ2ggY29udHJhc3QgbW9kZSBzdXBwb3J0XG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgICAgYS4jeyRibG9ja31fX2xpbms6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkIEJ1dHRvblRleHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuICogQWx0ZXJuYXRpdmU6IEluZGl2aWR1YWwgbWl4aW5zIGZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2xcbiAqL1xuXG4vLyBNaXhpbiBmb3IgaWNvbiBzdHlsaW5nIG9ubHlcbkBtaXhpbiBwcm9ncmFtLWJveC1pdGVtLWljb24oJGJsb2NrKSB7XG4gICAgLiN7JGJsb2NrfV9faXRlbS1pY29uIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSwgY29sb3JzLiRjb2xvci1qZmUteWVsbG93KTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxufVxuXG4vLyBNaXhpbiBmb3IgaGVhZGVyIHN0eWxpbmcgb25seVxuQG1peGluIHByb2dyYW0tYm94LWl0ZW0taGVhZGVyKCRibG9jaykge1xuICAgIC4jeyRibG9ja31fX2l0ZW0taGVhZGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxufVxuXG4vLyBNaXhpbiBmb3IgaW50ZXJhY3RpdmUgc3RhdGVzIG9ubHlcbkBtaXhpbiBwcm9ncmFtLWJveC1pdGVtLWludGVyYWN0aW9ucygkYmxvY2spIHtcblxuICAgIGEuI3skYmxvY2t9X19saW5rOmhvdmVyLFxuICAgIGEuI3skYmxvY2t9X19saW5rOmZvY3VzIHtcbiAgICAgICAgLiN7JGJsb2NrfV9faXRlbS1pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaywgY29sb3JzLiRjb2xvci1ibGFjayk7XG4gICAgICAgIH1cblxuICAgICAgICBoMy4jeyRibG9ja31fX2l0ZW0taGVhZGVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYS4jeyRibG9ja31fX2xpbms6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tY29sb3ItcHJpbWFyeSwgY29sb3JzLiRjb2xvci1qZmUtbGlnaHRibHVlKTtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICB9XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9jb21wb25lbnRzL19ncmlkLWNvbHVtbi1oZWlnaHQuc2Nzc1xuXG4vKipcbiAqIEdyaWQgQ29sdW1uIEhlaWdodCBDb21wb25lbnRcbiAqIEVuc3VyZXMgZXF1YWwgaGVpZ2h0IGRpc3RyaWJ1dGlvbiBmb3IgY29udGVudCBibG9ja3MgaW4gZ3JpZC1jb2x1bW4gY29udGFpbmVyc1xuICpcbiAqIFVzYWdlOiBAaW5jbHVkZSBncmlkLWNvbHVtbi1oZWlnaHQoJGJsb2NrKTtcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJsb2NrIC0gVGhlIEJFTSBibG9jayBjbGFzcyBuYW1lIChlLmcuLCAnY2UtaWdlbGJfcHJvZ3JhbWJveCcpXG4gKi9cbkBtaXhpbiBncmlkLWNvbHVtbi1oZWlnaHQoJGJsb2NrKSB7XG4gIC8vIE11bHRpLWNvbHVtbiBjb250YWluZXIgc2VsZWN0b3JzXG4gIC5jZS0yLWNvbC1jb250YWluZXJfX2NvbnRlbnQsXG4gIC5jZS0zLWNvbC1jb250YWluZXJfX2NvbnRlbnQsXG4gIC5jZS00LWNvbC1jb250YWluZXJfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIC8vIFRhcmdldCB0aGUgc3BlY2lmaWMgYmxvY2sgd2l0aGluIGdyaWQtY29sdW1uIGNvbnRhaW5lcnNcbiAgICA+IC4jeyRibG9ja30ge1xuICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICAvLyBFbnN1cmUgZnVsbCBoZWlnaHQgdGhyb3VnaCBuZXN0ZWQgZGl2IHN0cnVjdHVyZVxuICAgICAgLy8gVGhpcyBwYXR0ZXJuIGlzIGNvbW1vbiBpbiBUWVBPMyBjb250ZW50IGVsZW1lbnQgbWFya3VwXG4gICAgICA+IGRpdiB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgLy8gaWYgdGFyZ2V0IHBhZ2UgYXVmIHRlYXNlciBpcyBkaXNhYmxlZCwgdXNlIGZpdC1jb250ZW50IHRvIGF2b2lkIG92ZXJmbG93XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIGFzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2NvcHlyaWdodC5zY3NzXG5AdXNlICcuLi9nbG9iYWwvY29sb3JzJyBhcyBjb2xvcnM7XG5AdXNlICcuLi9nbG9iYWwvYnJlYWtwb2ludHMnIGFzIGJwO1xuXG4vKipcbiAqIFJldXNhYmxlIGNvcHlyaWdodCBvdmVybGF5IGNvbXBvbmVudFxuICpcbiAqIFVzYWdlOlxuICogPGRpdiBjbGFzcz1cImNvcHlyaWdodFwiPsKpIDIwMjQgUGhvdG9ncmFwaGVyIE5hbWU8L2Rpdj5cbiAqIDxkaXYgY2xhc3M9XCJjb3B5cmlnaHQgY29weXJpZ2h0LS10b3AtbGVmdFwiPsKpIDIwMjQgUGhvdG9ncmFwaGVyIE5hbWU8L2Rpdj5cbiAqIDxkaXYgY2xhc3M9XCJjb3B5cmlnaHQgY29weXJpZ2h0LS1tYXNvbnJ5XCI+wqkgMjAyNCBQaG90b2dyYXBoZXIgTmFtZTwvZGl2PlxuICovXG5cbi8vIEJsb2NrIG5hbWVcbiRibG9jazogJ2NvcHlyaWdodCc7XG5cbi8vIENvbmZpZ3VyYXRpb24gdmFyaWFibGVzXG4kY29weXJpZ2h0LWJnLWNvbG9yOiBjb2xvcnMuJGNvbG9yLW92ZXJsYXktbWQgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LXRleHQtY29sb3I6IGNvbG9ycy4kY29sb3Itd2hpdGUgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LWZvbnQtc2l6ZTogMC43NXJlbSAhZGVmYXVsdDtcbiRjb3B5cmlnaHQtcGFkZGluZy15OiAycHggIWRlZmF1bHQ7XG4kY29weXJpZ2h0LXBhZGRpbmcteDogNnB4ICFkZWZhdWx0O1xuJGNvcHlyaWdodC1ib3JkZXItcmFkaXVzOiAycHggIWRlZmF1bHQ7XG4kY29weXJpZ2h0LXNwYWNpbmc6IDhweCAhZGVmYXVsdDtcblxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDb3B5cmlnaHQgQ29tcG9uZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLiN7JGJsb2NrfSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb3B5cmlnaHQtYmctY29sb3I7XG4gICAgY29sb3I6ICRjb3B5cmlnaHQtdGV4dC1jb2xvcjtcbiAgICBwYWRkaW5nOiAkY29weXJpZ2h0LXBhZGRpbmcteSAkY29weXJpZ2h0LXBhZGRpbmcteDtcbiAgICBmb250LXNpemU6ICRjb3B5cmlnaHQtZm9udC1zaXplO1xuICAgIGJvcmRlci1yYWRpdXM6ICRjb3B5cmlnaHQtYm9yZGVyLXJhZGl1cztcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBEb24ndCBpbnRlcmZlcmUgd2l0aCBjbGlja3Mgb24gcGFyZW50XG4gICAgbWluLXdpZHRoOiBtYXgtY29udGVudDtcbiAgICAvLyBEZWZhdWx0IHBvc2l0aW9uOiBib3R0b20tcmlnaHRcbiAgICBib3R0b206ICRjb3B5cmlnaHQtc3BhY2luZztcbiAgICByaWdodDogJGNvcHlyaWdodC1zcGFjaW5nO1xuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBQb3NpdGlvbiBtb2RpZmllcnNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gVG9wLXJpZ2h0IHBvc2l0aW9uXG4gICAgJi0tdG9wLXJpZ2h0IHtcbiAgICAgICAgdG9wOiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgICAgIHJpZ2h0OiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgICAgIGJvdHRvbTogYXV0bztcbiAgICB9XG5cbiAgICAvLyBUb3AtbGVmdCBwb3NpdGlvblxuICAgICYtLXRvcC1sZWZ0IHtcbiAgICAgICAgdG9wOiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgICAgIGxlZnQ6ICRjb3B5cmlnaHQtc3BhY2luZztcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGJvdHRvbTogYXV0bztcbiAgICB9XG5cbiAgICAvLyBCb3R0b20tbGVmdCBwb3NpdGlvblxuICAgICYtLWJvdHRvbS1sZWZ0IHtcbiAgICAgICAgYm90dG9tOiAkY29weXJpZ2h0LXNwYWNpbmc7XG4gICAgICAgIGxlZnQ6ICRjb3B5cmlnaHQtc3BhY2luZztcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gRWRnZSBwb3NpdGlvbiAobm8gc3BhY2luZywgbm8gYm9yZGVyLXJhZGl1cykgLSBzaGFyZWQgYmFzZVxuICAgICYtLWVkZ2UsXG4gICAgJi0tbWFzb25yeSxcbiAgICAmLS1jb2xsYWdlIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gICAgLy8gTW9kYWwvTGlnaHRib3ggcG9zaXRpb24gKG91dHNpZGUgaW1hZ2UsIGFib3ZlKVxuICAgICYtLW1vZGFsIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAtMjJweDtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgICAgICBAaW5jbHVkZSBicC5icmVha3BvaW50KCdtZCcpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIHRvcDogLTMycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIFN0eWxlIG1vZGlmaWVyc1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBMaWdodCBiYWNrZ3JvdW5kIHZhcmlhbnRcbiAgICAmLS1saWdodCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoY29sb3JzLiRjb2xvci13aGl0ZSwgMC45KTtcbiAgICAgICAgY29sb3I6IGNvbG9ycy4kY29sb3ItYmxhY2s7XG4gICAgfVxuXG4gICAgLy8gRGFyayBiYWNrZ3JvdW5kIHZhcmlhbnQgKG1vcmUgb3BhcXVlKVxuICAgICYtLWRhcmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGNvbG9ycy4kY29sb3ItYmxhY2ssIDAuOCk7XG4gICAgICAgIGNvbG9yOiBjb2xvcnMuJGNvbG9yLXdoaXRlO1xuICAgIH1cblxuICAgIC8vIFRyYW5zcGFyZW50IHZhcmlhbnQgKHN1YnRsZSlcbiAgICAmLS10cmFuc3BhcmVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDRweCByZ2JhKGNvbG9ycy4kY29sb3ItYmxhY2ssIDAuOCk7XG4gICAgfVxuXG4gICAgLy8gTGFyZ2VyIHRleHQgc2l6ZVxuICAgICYtLWxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICB9XG5cbiAgICAvLyBIaWRkZW4gb24gc21hbGwgc2NyZWVuc1xuICAgICYtLWhpZGUtbW9iaWxlIHtcbiAgICAgICAgQGluY2x1ZGUgYnAuYnJlYWtwb2ludC1kb3duKCdzbScpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTaG93IG9ubHkgb24gaG92ZXIgKHJlcXVpcmVzIHBhcmVudCB0byBoYXZlIGhvdmVyIHN0YXRlKVxuICAgICYtLWhvdmVyLXNob3cge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcblxuICAgICAgICAqOmhvdmVyID4gJixcbiAgICAgICAgKjpmb2N1cy13aXRoaW4gPiAmIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBhc3NldHMvc2Nzcy9fY29sb3JzLnNjc3NcblxuLy8gQmFzZSBjb2xvcnMgZnJvbSBkZXNpZ24gZG9jdW1lbnRcbiRjb2xvci1qZmUtbGlnaHRibHVlOiAjMDA5ZGRmOyAgICAgICAgICAvLyBKRkUgbGlnaHQgYmx1ZVxuJGNvbG9yLWpmZS15ZWxsb3c6ICNmZmNjMDA7ICAgICAgICAgICAgIC8vIEpGRSB5ZWxsb3dcbiRjb2xvci1qZmUtYWxtb3N0LXdoaXRlOiAjZmFmYWZhOyAgICAgICAgLy8gSkZFIGFsbW9zdCB3aGl0ZSAoYmFja2dyb3VuZCBvcHRpb24pXG4kY29sb3ItamZlLWdyYXk6ICNmM2YzZjI7ICAgICAgICAgICAgICAgLy8gSkZFIGdyYXkgKGJhY2tncm91bmQgb3B0aW9uKVxuJGNvbG9yLWpmZS1ncmF5LW1lZGl1bTogI0NGQ0ZDRjsgICAgICAgIC8vIEpGRSBtZWRpdW0gZ3JheSAoZm9yIGJvcmRlcnMgZXRjLilcbiRjb2xvci1qZmUtZ3JheS1kYXJrOiByZ2JhKDE4OSwgMTg5LCAxODksIDEpOyAvLyBKRkUgZGFyayBncmF5IChmb3IgZGFya2VyIGJvcmRlcnMgZXRjLilcbiRjb2xvci1qZmUtZ3JheS1kYXJrZXI6cmdiYSgxMDUsIDEwNSwgMTA1LCAxKTsgLy8gSkZFIGRhcmtlciBncmF5IChGb3JtIGRlc2NyaXB0aW9uIHRleHQgZXRjLilcbi8vIFByb2dyYW0gc3BlY2lmaWMgY29sb3JzXG4kY29sb3ItZS1qdWdlbmQtYmx1ZTogIzAwMzM5OTsgICAgICAgICAgLy8gRXJhc211cysgWW91dGggYmx1ZVxuJGNvbG9yLWVzay1tYWdlbnRhOiAjZTUwMDZjOyAgICAgICAgICAgIC8vIEVTQyBtYWdlbnRhXG4kY29sb3ItZS1zcG9ydC1vcmFuZ2U6ICNlMzUzMGY7ICAgICAgICAgLy8gRXJhc211cysgU3BvcnQgb3JhbmdlXG5cbi8vIFV0aWxpdHkgY29sb3JzXG4kY29sb3Itd2hpdGU6ICNmZmZmZmY7ICAgICAgICAgICAgICAvLyBXaGl0ZSBjb2xvciBmb3IgYmFja2dyb3VuZHNcbiRjb2xvci1ibGFjazogIzAwMDAwMDsgICAgICAgICAgICAgIC8vIEJsYWNrIGNvbG9yIGZvciB0ZXh0XG4kY29sb3Itb3ZlcmxheS1zbTogcmdiYSgwLCAwLCAwLCAwLjMpO1xuJGNvbG9yLW92ZXJsYXktbWQ6IHJnYmEoMCwgMCwgMCwgMC42NSk7XG4kY29sb3Itb3ZlcmxheS1sZzogcmdiYSgwLCAwLCAwLCAwLjg1KTtcblxuLy8gU2Vjb25kYXJ5IGFuZCBkZXJpdmVkIGNvbG9yc1xuJGNvbG9yLWpmZS15ZWxsb3ctaG92ZXI6ICNFQkJDMDA7ICAgICAgIC8vIEhvdmVyIHN0YXRlIGZvciBKRkUgeWVsbG93XG4kY29sb3ItZS1qdWdlbmQtaG92ZXI6ICMwMDJiODA7ICAgICAgICAgLy8gSG92ZXIgc3RhdGUgZm9yIEVyYXNtdXMrIFlvdXRoIGJsdWVcbiRjb2xvci1lc2staG92ZXI6ICNkMDAwNjI7ICAgICAgICAgICAgICAvLyBIb3ZlciBzdGF0ZSBmb3IgRVNDIG1hZ2VudGFcbiRjb2xvci1lLXNwb3J0LWhvdmVyOiAjYzk0OTBkOyAgICAgICAgICAvLyBIb3ZlciBzdGF0ZSBmb3IgRXJhc211cysgU3BvcnQgb3JhbmdlXG5cbi8vIEVycm9yIGFuZCB3YXJuaW5nIGNvbG9yc1xuJGNvbG9yLWVycm9yOiAjZGYwMDAwOyAgICAgICAgICAgICAgICAvLyBFcnJvciBjb2xvciAocmVkKVxuJGNvbG9yLWVycm9yLWJnOiAjZGYwMDAwMWE7ICAgICAgICAgICAgIC8vIEVycm9yIGJhY2tncm91bmQgY29sb3IgKGxpZ2h0IHJlZClcbiRjb2xvci13YXJuaW5nOiAjZmZiMzAwOyAgICAgICAgICAgICAgLy8gV2FybmluZyBjb2xvciAoeWVsbG93KVxuJGNvbG9yLXdhcm5pbmctYmc6ICNmZmIzMDAxYTsgICAgICAgICAgLy8gV2FybmluZyBiYWNrZ3JvdW5kIGNvbG9yIChsaWdodCB5ZWxsb3cpXG4kY29sb3Itc3VjY2VzczogIzk1ZGYwMDsgICAgICAgICAgICAgIC8vIFN1Y2Nlc3MgY29sb3IgKGdyZWVuKVxuJGNvbG9yLXN1Y2Nlc3MtYmc6ICM5NWRmMDAxYTsgICAgICAgICAgLy8gU3VjY2VzcyBiYWNrZ3JvdW5kIGNvbG9yIChsaWdodCBncmVlbilcbiIsIi8vIEFVVE8tR0VORVJBVEVEIEZJTEUgZnJvbSBidWlsZC1icmVha3BvaW50cy5qc1xuLy8gRE8gTk9UIEVESVQgRElSRUNUTFlcblxuLy8gSW1wb3J0IFNhc3MgbWFwIG1vZHVsZVxuQHVzZSBcInNhc3M6bWFwXCI7XG5cbi8vIEJyZWFrcG9pbnQgdmFsdWVzXG4kYnJlYWtwb2ludC1zbTogNjQwcHg7XG4kYnJlYWtwb2ludC1tZDogNzY4cHg7XG4kYnJlYWtwb2ludC1sZzogMTAyNHB4O1xuJGJyZWFrcG9pbnQteGw6IDEyODBweDtcbiRicmVha3BvaW50LTJ4bDogMTUzNnB4O1xuXG4vLyBNYXAgZm9yIHByb2dyYW1tYXRpYyBhY2Nlc3NcbiRicmVha3BvaW50czogKFxuICAnc20nOiAkYnJlYWtwb2ludC1zbSxcbiAgJ21kJzogJGJyZWFrcG9pbnQtbWQsXG4gICdsZyc6ICRicmVha3BvaW50LWxnLFxuICAneGwnOiAkYnJlYWtwb2ludC14bCxcbiAgJzJ4bCc6ICRicmVha3BvaW50LTJ4bFxuKTtcblxuLy8gTWl4aW4gZm9yIGVhc3kgbWVkaWEgcXVlcmllcyBiYXNlZCBvbiBkZWZpbmVkIGJyZWFrcG9pbnRzXG5AbWl4aW4gYnJlYWtwb2ludCgkcG9pbnQpIHtcbiAgQGlmIG1hcC5oYXMta2V5KCRicmVha3BvaW50cywgJHBvaW50KSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAkcG9pbnQpKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiQnJlYWtwb2ludCAnI3skcG9pbnR9JyBpcyBub3QgZGVmaW5lZCBpbiAkYnJlYWtwb2ludHMgbWFwLlwiO1xuICB9XG59XG5cbi8vIE1peGluIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllcyAoc21hbGxlciB0aGFuIGEgYnJlYWtwb2ludClcbkBtaXhpbiBicmVha3BvaW50LWRvd24oJHBvaW50KSB7XG4gIEBpZiBtYXAuaGFzLWtleSgkYnJlYWtwb2ludHMsICRwb2ludCkge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJHBvaW50KSAtIDFweCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcIkJyZWFrcG9pbnQgJyN7JHBvaW50fScgaXMgbm90IGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzIG1hcC5cIjtcbiAgfVxufVxuXG4vLyBNaXhpbiBmb3IgY3JlYXRpbmcgc3R5bGVzIGJldHdlZW4gdHdvIGJyZWFrcG9pbnRzXG5AbWl4aW4gYnJlYWtwb2ludC1iZXR3ZWVuKCRtaW4sICRtYXgpIHtcbiAgQGlmIG1hcC5oYXMta2V5KCRicmVha3BvaW50cywgJG1pbikgYW5kIG1hcC5oYXMta2V5KCRicmVha3BvaW50cywgJG1heCkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJG1pbikpIGFuZCAobWF4LXdpZHRoOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJG1heCkgLSAxcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJCcmVha3BvaW50ICcjeyRtaW59JyBvciAnI3skbWF4fScgaXMgbm90IGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzIG1hcC5cIjtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==*/