{"version":3,"sources":["main.js","partials/svgxuse.min.js","partials/vanillaTextMask.js","partials/tooltipster.bundle.min.js","partials/jquery.fancybox.min.js","partials/swiper.min.js","partials/select2.js","partials/nouislider.min.js","partials/scripts.js","components/accordion.js","components/dropdown.js","components/tabs.js","components/fancybox.js","components/header.js","components/hero-slider.js","components/products-slider.js","components/reviews.js","components/product-list.js","components/product-info.js","components/checkout.js","components/radio-variation.js","components/shop-filters.js","components/cart.js","components/shop-search.js"],"names":[],"mappings":"AAAA;AACA;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;ACAA;AACA;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACriFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC9kPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC99IA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ARtCA;ASVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACvEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACleA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AvBjDA","file":"main.js","sourcesContent":["var $ = jQuery;\n/*//=include partials/jquery-1.11.1.min.js*/\n//=include partials/svgxuse.min.js\n//=include partials/vanillaTextMask.js\n//=include partials/tooltipster.bundle.min.js\n//=include partials/jquery.fancybox.min.js\n//=include partials/swiper.min.js\n//=include partials/select2.js\n//=include partials/nouislider.min.js\n//=include partials/scripts.js\n\n//=include components/accordion.js\n//=include components/dropdown.js\n//=include components/tabs.js\n//=include components/fancybox.js\n//=include components/header.js\n//=include components/hero-slider.js\n//=include components/products-slider.js\n//=include components/reviews.js\n//=include components/product-list.js\n//=include components/product-info.js\n//=include components/checkout.js\n//=include components/radio-variation.js\n//=include components/shop-filters.js\n//=include components/cart.js\n//=include components/shop-search.js\n","/*!\n * @copyright Copyright (c) 2017 IcoMoon.io\n * @license Licensed under MIT license\n * See https://github.com/Keyamoon/svgxuse\n * @version 1.2.6\n */\n(function(){if(\"undefined\"!==typeof window&&window.addEventListener){var e=Object.create(null),l,d=function(){clearTimeout(l);l=setTimeout(n,100)},m=function(){},t=function(){window.addEventListener(\"resize\",d,!1);window.addEventListener(\"orientationchange\",d,!1);if(window.MutationObserver){var k=new MutationObserver(d);k.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!0});m=function(){try{k.disconnect(),window.removeEventListener(\"resize\",d,!1),window.removeEventListener(\"orientationchange\",\nd,!1)}catch(v){}}}else document.documentElement.addEventListener(\"DOMSubtreeModified\",d,!1),m=function(){document.documentElement.removeEventListener(\"DOMSubtreeModified\",d,!1);window.removeEventListener(\"resize\",d,!1);window.removeEventListener(\"orientationchange\",d,!1)}},u=function(k){function e(a){if(void 0!==a.protocol)var c=a;else c=document.createElement(\"a\"),c.href=a;return c.protocol.replace(/:/g,\"\")+c.host}if(window.XMLHttpRequest){var d=new XMLHttpRequest;var m=e(location);k=e(k);d=void 0===\nd.withCredentials&&\"\"!==k&&k!==m?XDomainRequest||void 0:XMLHttpRequest}return d};var n=function(){function d(){--q;0===q&&(m(),t())}function l(a){return function(){!0!==e[a.base]&&(a.useEl.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",\"#\"+a.hash),a.useEl.hasAttribute(\"href\")&&a.useEl.setAttribute(\"href\",\"#\"+a.hash))}}function p(a){return function(){var c=document.body,b=document.createElement(\"x\");a.onload=null;b.innerHTML=a.responseText;if(b=b.getElementsByTagName(\"svg\")[0])b.setAttribute(\"aria-hidden\",\n\"true\"),b.style.position=\"absolute\",b.style.width=0,b.style.height=0,b.style.overflow=\"hidden\",c.insertBefore(b,c.firstChild);d()}}function n(a){return function(){a.onerror=null;a.ontimeout=null;d()}}var a,c,q=0;m();var f=document.getElementsByTagName(\"use\");for(c=0;c<f.length;c+=1){try{var g=f[c].getBoundingClientRect()}catch(w){g=!1}var h=(a=f[c].getAttribute(\"href\")||f[c].getAttributeNS(\"http://www.w3.org/1999/xlink\",\"href\")||f[c].getAttribute(\"xlink:href\"))&&a.split?a.split(\"#\"):[\"\",\"\"];var b=\nh[0];h=h[1];var r=g&&0===g.left&&0===g.right&&0===g.top&&0===g.bottom;g&&0===g.width&&0===g.height&&!r?(f[c].hasAttribute(\"href\")&&f[c].setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",a),b.length&&(a=e[b],!0!==a&&setTimeout(l({useEl:f[c],base:b,hash:h}),0),void 0===a&&(h=u(b),void 0!==h&&(a=new h,e[b]=a,a.onload=p(a),a.onerror=n(a),a.ontimeout=n(a),a.open(\"GET\",b),a.send(),q+=1)))):r?b.length&&e[b]&&setTimeout(l({useEl:f[c],base:b,hash:h}),0):void 0===e[b]?e[b]=!0:e[b].onload&&(e[b].abort(),\ndelete e[b].onload,e[b]=!0)}f=\"\";q+=1;d()};var p=function(){window.removeEventListener(\"load\",p,!1);l=setTimeout(n,0)};\"complete\"!==document.readyState?window.addEventListener(\"load\",p,!1):p()}})();\n","!function(e,r){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=r():\"function\"==typeof define&&define.amd?define([],r):\"object\"==typeof exports?exports.vanillaTextMask=r():e.vanillaTextMask=r()}(this,function(){return function(e){function r(n){if(t[n])return t[n].exports;var o=t[n]={exports:{},id:n,loaded:!1};return e[n].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}var t={};return r.m=e,r.c=t,r.p=\"\",r(0)}([function(e,r,t){\"use strict\";function n(e){return e&&e.__esModule?e:{default:e}}function o(e){var r=e.inputElement,t=(0,u.default)(e),n=function(e){var r=e.target.value;return t.update(r)};return r.addEventListener(\"input\",n),t.update(r.value),{textMaskInputElement:t,destroy:function(){r.removeEventListener(\"input\",n)}}}Object.defineProperty(r,\"__esModule\",{value:!0}),r.conformToMask=void 0,r.maskInput=o;var i=t(2);Object.defineProperty(r,\"conformToMask\",{enumerable:!0,get:function(){return n(i).default}});var a=t(5),u=n(a);r.default=o},function(e,r){\"use strict\";Object.defineProperty(r,\"__esModule\",{value:!0}),r.placeholderChar=\"_\"},function(e,r,t){\"use strict\";function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:a,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=t.guide,u=void 0===n||n,l=t.previousConformedValue,s=void 0===l?a:l,f=t.placeholderChar,d=void 0===f?i.placeholderChar:f,c=t.placeholder,v=void 0===c?(0,o.convertMaskToPlaceholder)(r,d):c,p=t.currentCaretPosition,h=t.keepCharPositions,g=u===!1&&void 0!==s,m=e.length,y=s.length,b=v.length,C=r.length,P=m-y,x=P>0,k=p+(x?-P:0),O=k+Math.abs(P);if(h===!0&&!x){for(var M=a,T=k;T<O;T++)v[T]===d&&(M+=d);e=e.slice(0,k)+M+e.slice(k,m)}for(var w=e.split(a).map(function(e,r){return{char:e,isNew:r>=k&&r<O}}),_=m-1;_>=0;_--){var j=w[_].char;if(j!==d){var V=_>=k&&y===C;j===v[V?_-P:_]&&w.splice(_,1)}}var S=a,E=!1;e:for(var N=0;N<b;N++){var A=v[N];if(A===d){if(w.length>0)for(;w.length>0;){var I=w.shift(),L=I.char,R=I.isNew;if(L===d&&g!==!0){S+=d;continue e}if(r[N].test(L)){if(h===!0&&R!==!1&&s!==a&&u!==!1&&x){for(var J=w.length,q=null,F=0;F<J;F++){var W=w[F];if(W.char!==d&&W.isNew===!1)break;if(W.char===d){q=F;break}}null!==q?(S+=L,w.splice(q,1)):N--}else S+=L;continue e}E=!0}g===!1&&(S+=v.substr(N,b));break}S+=A}if(g&&x===!1){for(var z=null,B=0;B<S.length;B++)v[B]===d&&(z=B);S=null!==z?S.substr(0,z+1):a}return{conformedValue:S,meta:{someCharsRejected:E}}}Object.defineProperty(r,\"__esModule\",{value:!0}),r.default=n;var o=t(3),i=t(1),a=\"\"},function(e,r,t){\"use strict\";function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:u.placeholderChar;if(e.indexOf(r)!==-1)throw new Error(\"Placeholder character must not be used as part of the mask. Please specify a character that is not present in your mask as your placeholder character.\\n\\n\"+(\"The placeholder character that was received is: \"+JSON.stringify(r)+\"\\n\\n\")+(\"The mask that was received is: \"+JSON.stringify(e)));return e.map(function(e){return e instanceof RegExp?r:e}).join(\"\")}function o(e){return\"string\"==typeof e||e instanceof String}function i(e){return\"number\"==typeof e&&void 0===e.length&&!isNaN(e)}function a(e){for(var r=[],t=void 0;t=e.indexOf(s),t!==-1;)r.push(t),e.splice(t,1);return{maskWithoutCaretTraps:e,indexes:r}}Object.defineProperty(r,\"__esModule\",{value:!0}),r.convertMaskToPlaceholder=n,r.isString=o,r.isNumber=i,r.processCaretTraps=a;var u=t(1),l=[],s=\"[]\"},function(e,r){\"use strict\";function t(e){var r=e.previousConformedValue,t=void 0===r?o:r,i=e.previousPlaceholder,a=void 0===i?o:i,u=e.currentCaretPosition,l=void 0===u?0:u,s=e.conformedValue,f=e.rawValue,d=e.placeholderChar,c=e.placeholder,v=e.indexesOfPipedChars,p=void 0===v?n:v,h=e.caretTrapIndexes,g=void 0===h?n:h;if(0===l)return 0;var m=f.length,y=t.length,b=c.length,C=s.length,P=m-y,x=P>0,k=0===y,O=P>1&&!x&&!k;if(O)return l;var M=x&&(t===s||s===c),T=0,w=void 0,_=void 0;if(M)T=l-P;else{var j=s.toLowerCase(),V=f.toLowerCase(),S=V.substr(0,l).split(o),E=S.filter(function(e){return j.indexOf(e)!==-1});_=E[E.length-1];var N=a.substr(0,E.length).split(o).filter(function(e){return e!==d}).length,A=c.substr(0,E.length).split(o).filter(function(e){return e!==d}).length,I=A!==N,L=void 0!==a[E.length-1]&&void 0!==c[E.length-2]&&a[E.length-1]!==d&&a[E.length-1]!==c[E.length-1]&&a[E.length-1]===c[E.length-2];!x&&(I||L)&&N>0&&c.indexOf(_)>-1&&void 0!==f[l]&&(w=!0,_=f[l]);for(var R=p.map(function(e){return j[e]}),J=R.filter(function(e){return e===_}).length,q=E.filter(function(e){return e===_}).length,F=c.substr(0,c.indexOf(d)).split(o).filter(function(e,r){return e===_&&f[r]!==e}).length,W=F+q+J+(w?1:0),z=0,B=0;B<C;B++){var D=j[B];if(T=B+1,D===_&&z++,z>=W)break}}if(x){for(var G=T,H=T;H<=b;H++)if(c[H]===d&&(G=H),c[H]===d||g.indexOf(H)!==-1||H===b)return G}else if(w){for(var K=T-1;K>=0;K--)if(s[K]===_||g.indexOf(K)!==-1||0===K)return K}else for(var Q=T;Q>=0;Q--)if(c[Q-1]===d||g.indexOf(Q)!==-1||0===Q)return Q}Object.defineProperty(r,\"__esModule\",{value:!0}),r.default=t;var n=[],o=\"\"},function(e,r,t){\"use strict\";function n(e){return e&&e.__esModule?e:{default:e}}function o(e){var r={previousConformedValue:void 0,previousPlaceholder:void 0};return{state:r,update:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,o=n.inputElement,s=n.mask,d=n.guide,m=n.pipe,b=n.placeholderChar,C=void 0===b?p.placeholderChar:b,P=n.keepCharPositions,x=void 0!==P&&P,k=n.showMask,O=void 0!==k&&k;if(\"undefined\"==typeof t&&(t=o.value),t!==r.previousConformedValue){(\"undefined\"==typeof s?\"undefined\":l(s))===y&&void 0!==s.pipe&&void 0!==s.mask&&(m=s.pipe,s=s.mask);var M=void 0,T=void 0;if(s instanceof Array&&(M=(0,v.convertMaskToPlaceholder)(s,C)),s!==!1){var w=a(t),_=o.selectionEnd,j=r.previousConformedValue,V=r.previousPlaceholder,S=void 0;if((\"undefined\"==typeof s?\"undefined\":l(s))===h){if(T=s(w,{currentCaretPosition:_,previousConformedValue:j,placeholderChar:C}),T===!1)return;var E=(0,v.processCaretTraps)(T),N=E.maskWithoutCaretTraps,A=E.indexes;T=N,S=A,M=(0,v.convertMaskToPlaceholder)(T,C)}else T=s;var I={previousConformedValue:j,guide:d,placeholderChar:C,pipe:m,placeholder:M,currentCaretPosition:_,keepCharPositions:x},L=(0,c.default)(w,T,I),R=L.conformedValue,J=(\"undefined\"==typeof m?\"undefined\":l(m))===h,q={};J&&(q=m(R,u({rawValue:w},I)),q===!1?q={value:j,rejected:!0}:(0,v.isString)(q)&&(q={value:q}));var F=J?q.value:R,W=(0,f.default)({previousConformedValue:j,previousPlaceholder:V,conformedValue:F,placeholder:M,rawValue:w,currentCaretPosition:_,placeholderChar:C,indexesOfPipedChars:q.indexesOfPipedChars,caretTrapIndexes:S}),z=F===M&&0===W,B=O?M:g,D=z?B:F;r.previousConformedValue=D,r.previousPlaceholder=M,o.value!==D&&(o.value=D,i(o,W))}}}}}function i(e,r){document.activeElement===e&&(b?C(function(){return e.setSelectionRange(r,r,m)},0):e.setSelectionRange(r,r,m))}function a(e){if((0,v.isString)(e))return e;if((0,v.isNumber)(e))return String(e);if(void 0===e||null===e)return g;throw new Error(\"The 'value' provided to Text Mask needs to be a string or a number. The value received was:\\n\\n \"+JSON.stringify(e))}Object.defineProperty(r,\"__esModule\",{value:!0});var u=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},l=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};r.default=o;var s=t(4),f=n(s),d=t(2),c=n(d),v=t(3),p=t(1),h=\"function\",g=\"\",m=\"none\",y=\"object\",b=\"undefined\"!=typeof navigator&&/Android/i.test(navigator.userAgent),C=\"undefined\"!=typeof requestAnimationFrame?requestAnimationFrame:setTimeout}])});","/*! tooltipster v4.2.8 */!function(a,b){\"function\"==typeof define&&define.amd?define([\"jquery\"],function(a){return b(a)}):\"object\"==typeof exports?module.exports=b(require(\"jquery\")):b(jQuery)}(this,function(a){function b(a){this.$container,this.constraints=null,this.__$tooltip,this.__init(a)}function c(b,c){var d=!0;return a.each(b,function(a,e){return void 0===c[a]||b[a]!==c[a]?(d=!1,!1):void 0}),d}function d(b){var c=b.attr(\"id\"),d=c?h.window.document.getElementById(c):null;return d?d===b[0]:a.contains(h.window.document.body,b[0])}function e(){if(!g)return!1;var a=g.document.body||g.document.documentElement,b=a.style,c=\"transition\",d=[\"Moz\",\"Webkit\",\"Khtml\",\"O\",\"ms\"];if(\"string\"==typeof b[c])return!0;c=c.charAt(0).toUpperCase()+c.substr(1);for(var e=0;e<d.length;e++)if(\"string\"==typeof b[d[e]+c])return!0;return!1}var f={animation:\"fade\",animationDuration:350,content:null,contentAsHTML:!1,contentCloning:!1,debug:!0,delay:300,delayTouch:[300,500],functionInit:null,functionBefore:null,functionReady:null,functionAfter:null,functionFormat:null,IEmin:6,interactive:!1,multiple:!1,parent:null,plugins:[\"sideTip\"],repositionOnScroll:!1,restoration:\"none\",selfDestruction:!0,theme:[],timer:0,trackerInterval:500,trackOrigin:!1,trackTooltip:!1,trigger:\"hover\",triggerClose:{click:!1,mouseleave:!1,originClick:!1,scroll:!1,tap:!1,touchleave:!1},triggerOpen:{click:!1,mouseenter:!1,tap:!1,touchstart:!1},updateAnimation:\"rotate\",zIndex:9999999},g=\"undefined\"!=typeof window?window:null,h={hasTouchCapability:!(!g||!(\"ontouchstart\"in g||g.DocumentTouch&&g.document instanceof g.DocumentTouch||g.navigator.maxTouchPoints)),hasTransitions:e(),IE:!1,semVer:\"4.2.8\",window:g},i=function(){this.__$emitterPrivate=a({}),this.__$emitterPublic=a({}),this.__instancesLatestArr=[],this.__plugins={},this._env=h};i.prototype={__bridge:function(b,c,d){if(!c[d]){var e=function(){};e.prototype=b;var g=new e;g.__init&&g.__init(c),a.each(b,function(a,b){0!=a.indexOf(\"__\")&&(c[a]?f.debug&&console.log(\"The \"+a+\" method of the \"+d+\" plugin conflicts with another plugin or native methods\"):(c[a]=function(){return g[a].apply(g,Array.prototype.slice.apply(arguments))},c[a].bridged=g))}),c[d]=g}return this},__setWindow:function(a){return h.window=a,this},_getRuler:function(a){return new b(a)},_off:function(){return this.__$emitterPrivate.off.apply(this.__$emitterPrivate,Array.prototype.slice.apply(arguments)),this},_on:function(){return this.__$emitterPrivate.on.apply(this.__$emitterPrivate,Array.prototype.slice.apply(arguments)),this},_one:function(){return this.__$emitterPrivate.one.apply(this.__$emitterPrivate,Array.prototype.slice.apply(arguments)),this},_plugin:function(b){var c=this;if(\"string\"==typeof b){var d=b,e=null;return d.indexOf(\".\")>0?e=c.__plugins[d]:a.each(c.__plugins,function(a,b){return b.name.substring(b.name.length-d.length-1)==\".\"+d?(e=b,!1):void 0}),e}if(b.name.indexOf(\".\")<0)throw new Error(\"Plugins must be namespaced\");return c.__plugins[b.name]=b,b.core&&c.__bridge(b.core,c,b.name),this},_trigger:function(){var a=Array.prototype.slice.apply(arguments);return\"string\"==typeof a[0]&&(a[0]={type:a[0]}),this.__$emitterPrivate.trigger.apply(this.__$emitterPrivate,a),this.__$emitterPublic.trigger.apply(this.__$emitterPublic,a),this},instances:function(b){var c=[],d=b||\".tooltipstered\";return a(d).each(function(){var b=a(this),d=b.data(\"tooltipster-ns\");d&&a.each(d,function(a,d){c.push(b.data(d))})}),c},instancesLatest:function(){return this.__instancesLatestArr},off:function(){return this.__$emitterPublic.off.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this},on:function(){return this.__$emitterPublic.on.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this},one:function(){return this.__$emitterPublic.one.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this},origins:function(b){var c=b?b+\" \":\"\";return a(c+\".tooltipstered\").toArray()},setDefaults:function(b){return a.extend(f,b),this},triggerHandler:function(){return this.__$emitterPublic.triggerHandler.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this}},a.tooltipster=new i,a.Tooltipster=function(b,c){this.__callbacks={close:[],open:[]},this.__closingTime,this.__Content,this.__contentBcr,this.__destroyed=!1,this.__$emitterPrivate=a({}),this.__$emitterPublic=a({}),this.__enabled=!0,this.__garbageCollector,this.__Geometry,this.__lastPosition,this.__namespace=\"tooltipster-\"+Math.round(1e6*Math.random()),this.__options,this.__$originParents,this.__pointerIsOverOrigin=!1,this.__previousThemes=[],this.__state=\"closed\",this.__timeouts={close:[],open:null},this.__touchEvents=[],this.__tracker=null,this._$origin,this._$tooltip,this.__init(b,c)},a.Tooltipster.prototype={__init:function(b,c){var d=this;if(d._$origin=a(b),d.__options=a.extend(!0,{},f,c),d.__optionsFormat(),!h.IE||h.IE>=d.__options.IEmin){var e=null;if(void 0===d._$origin.data(\"tooltipster-initialTitle\")&&(e=d._$origin.attr(\"title\"),void 0===e&&(e=null),d._$origin.data(\"tooltipster-initialTitle\",e)),null!==d.__options.content)d.__contentSet(d.__options.content);else{var g,i=d._$origin.attr(\"data-tooltip-content\");i&&(g=a(i)),g&&g[0]?d.__contentSet(g.first()):d.__contentSet(e)}d._$origin.removeAttr(\"title\").addClass(\"tooltipstered\"),d.__prepareOrigin(),d.__prepareGC(),a.each(d.__options.plugins,function(a,b){d._plug(b)}),h.hasTouchCapability&&a(h.window.document.body).on(\"touchmove.\"+d.__namespace+\"-triggerOpen\",function(a){d._touchRecordEvent(a)}),d._on(\"created\",function(){d.__prepareTooltip()})._on(\"repositioned\",function(a){d.__lastPosition=a.position})}else d.__options.disabled=!0},__contentInsert:function(){var a=this,b=a._$tooltip.find(\".tooltipster-content\"),c=a.__Content,d=function(a){c=a};return a._trigger({type:\"format\",content:a.__Content,format:d}),a.__options.functionFormat&&(c=a.__options.functionFormat.call(a,a,{origin:a._$origin[0]},a.__Content)),\"string\"!=typeof c||a.__options.contentAsHTML?b.empty().append(c):b.text(c),a},__contentSet:function(b){return b instanceof a&&this.__options.contentCloning&&(b=b.clone(!0)),this.__Content=b,this._trigger({type:\"updated\",content:b}),this},__destroyError:function(){throw new Error(\"This tooltip has been destroyed and cannot execute your method call.\")},__geometry:function(){var b=this,c=b._$origin,d=b._$origin.is(\"area\");if(d){var e=b._$origin.parent().attr(\"name\");c=a('img[usemap=\"#'+e+'\"]')}var f=c[0].getBoundingClientRect(),g=a(h.window.document),i=a(h.window),j=c,k={available:{document:null,window:null},document:{size:{height:g.height(),width:g.width()}},window:{scroll:{left:h.window.scrollX||h.window.document.documentElement.scrollLeft,top:h.window.scrollY||h.window.document.documentElement.scrollTop},size:{height:i.height(),width:i.width()}},origin:{fixedLineage:!1,offset:{},size:{height:f.bottom-f.top,width:f.right-f.left},usemapImage:d?c[0]:null,windowOffset:{bottom:f.bottom,left:f.left,right:f.right,top:f.top}}};if(d){var l=b._$origin.attr(\"shape\"),m=b._$origin.attr(\"coords\");if(m&&(m=m.split(\",\"),a.map(m,function(a,b){m[b]=parseInt(a)})),\"default\"!=l)switch(l){case\"circle\":var n=m[0],o=m[1],p=m[2],q=o-p,r=n-p;k.origin.size.height=2*p,k.origin.size.width=k.origin.size.height,k.origin.windowOffset.left+=r,k.origin.windowOffset.top+=q;break;case\"rect\":var s=m[0],t=m[1],u=m[2],v=m[3];k.origin.size.height=v-t,k.origin.size.width=u-s,k.origin.windowOffset.left+=s,k.origin.windowOffset.top+=t;break;case\"poly\":for(var w=0,x=0,y=0,z=0,A=\"even\",B=0;B<m.length;B++){var C=m[B];\"even\"==A?(C>y&&(y=C,0===B&&(w=y)),w>C&&(w=C),A=\"odd\"):(C>z&&(z=C,1==B&&(x=z)),x>C&&(x=C),A=\"even\")}k.origin.size.height=z-x,k.origin.size.width=y-w,k.origin.windowOffset.left+=w,k.origin.windowOffset.top+=x}}var D=function(a){k.origin.size.height=a.height,k.origin.windowOffset.left=a.left,k.origin.windowOffset.top=a.top,k.origin.size.width=a.width};for(b._trigger({type:\"geometry\",edit:D,geometry:{height:k.origin.size.height,left:k.origin.windowOffset.left,top:k.origin.windowOffset.top,width:k.origin.size.width}}),k.origin.windowOffset.right=k.origin.windowOffset.left+k.origin.size.width,k.origin.windowOffset.bottom=k.origin.windowOffset.top+k.origin.size.height,k.origin.offset.left=k.origin.windowOffset.left+k.window.scroll.left,k.origin.offset.top=k.origin.windowOffset.top+k.window.scroll.top,k.origin.offset.bottom=k.origin.offset.top+k.origin.size.height,k.origin.offset.right=k.origin.offset.left+k.origin.size.width,k.available.document={bottom:{height:k.document.size.height-k.origin.offset.bottom,width:k.document.size.width},left:{height:k.document.size.height,width:k.origin.offset.left},right:{height:k.document.size.height,width:k.document.size.width-k.origin.offset.right},top:{height:k.origin.offset.top,width:k.document.size.width}},k.available.window={bottom:{height:Math.max(k.window.size.height-Math.max(k.origin.windowOffset.bottom,0),0),width:k.window.size.width},left:{height:k.window.size.height,width:Math.max(k.origin.windowOffset.left,0)},right:{height:k.window.size.height,width:Math.max(k.window.size.width-Math.max(k.origin.windowOffset.right,0),0)},top:{height:Math.max(k.origin.windowOffset.top,0),width:k.window.size.width}};\"html\"!=j[0].tagName.toLowerCase();){if(\"fixed\"==j.css(\"position\")){k.origin.fixedLineage=!0;break}j=j.parent()}return k},__optionsFormat:function(){return\"number\"==typeof this.__options.animationDuration&&(this.__options.animationDuration=[this.__options.animationDuration,this.__options.animationDuration]),\"number\"==typeof this.__options.delay&&(this.__options.delay=[this.__options.delay,this.__options.delay]),\"number\"==typeof this.__options.delayTouch&&(this.__options.delayTouch=[this.__options.delayTouch,this.__options.delayTouch]),\"string\"==typeof this.__options.theme&&(this.__options.theme=[this.__options.theme]),null===this.__options.parent?this.__options.parent=a(h.window.document.body):\"string\"==typeof this.__options.parent&&(this.__options.parent=a(this.__options.parent)),\"hover\"==this.__options.trigger?(this.__options.triggerOpen={mouseenter:!0,touchstart:!0},this.__options.triggerClose={mouseleave:!0,originClick:!0,touchleave:!0}):\"click\"==this.__options.trigger&&(this.__options.triggerOpen={click:!0,tap:!0},this.__options.triggerClose={click:!0,tap:!0}),this._trigger(\"options\"),this},__prepareGC:function(){var b=this;return b.__options.selfDestruction?b.__garbageCollector=setInterval(function(){var c=(new Date).getTime();b.__touchEvents=a.grep(b.__touchEvents,function(a,b){return c-a.time>6e4}),d(b._$origin)||b.close(function(){b.destroy()})},2e4):clearInterval(b.__garbageCollector),b},__prepareOrigin:function(){var a=this;if(a._$origin.off(\".\"+a.__namespace+\"-triggerOpen\"),h.hasTouchCapability&&a._$origin.on(\"touchstart.\"+a.__namespace+\"-triggerOpen touchend.\"+a.__namespace+\"-triggerOpen touchcancel.\"+a.__namespace+\"-triggerOpen\",function(b){a._touchRecordEvent(b)}),a.__options.triggerOpen.click||a.__options.triggerOpen.tap&&h.hasTouchCapability){var b=\"\";a.__options.triggerOpen.click&&(b+=\"click.\"+a.__namespace+\"-triggerOpen \"),a.__options.triggerOpen.tap&&h.hasTouchCapability&&(b+=\"touchend.\"+a.__namespace+\"-triggerOpen\"),a._$origin.on(b,function(b){a._touchIsMeaningfulEvent(b)&&a._open(b)})}if(a.__options.triggerOpen.mouseenter||a.__options.triggerOpen.touchstart&&h.hasTouchCapability){var b=\"\";a.__options.triggerOpen.mouseenter&&(b+=\"mouseenter.\"+a.__namespace+\"-triggerOpen \"),a.__options.triggerOpen.touchstart&&h.hasTouchCapability&&(b+=\"touchstart.\"+a.__namespace+\"-triggerOpen\"),a._$origin.on(b,function(b){!a._touchIsTouchEvent(b)&&a._touchIsEmulatedEvent(b)||(a.__pointerIsOverOrigin=!0,a._openShortly(b))})}if(a.__options.triggerClose.mouseleave||a.__options.triggerClose.touchleave&&h.hasTouchCapability){var b=\"\";a.__options.triggerClose.mouseleave&&(b+=\"mouseleave.\"+a.__namespace+\"-triggerOpen \"),a.__options.triggerClose.touchleave&&h.hasTouchCapability&&(b+=\"touchend.\"+a.__namespace+\"-triggerOpen touchcancel.\"+a.__namespace+\"-triggerOpen\"),a._$origin.on(b,function(b){a._touchIsMeaningfulEvent(b)&&(a.__pointerIsOverOrigin=!1)})}return a},__prepareTooltip:function(){var b=this,c=b.__options.interactive?\"auto\":\"\";return b._$tooltip.attr(\"id\",b.__namespace).css({\"pointer-events\":c,zIndex:b.__options.zIndex}),a.each(b.__previousThemes,function(a,c){b._$tooltip.removeClass(c)}),a.each(b.__options.theme,function(a,c){b._$tooltip.addClass(c)}),b.__previousThemes=a.merge([],b.__options.theme),b},__scrollHandler:function(b){var c=this;if(c.__options.triggerClose.scroll)c._close(b);else if(d(c._$origin)&&d(c._$tooltip)){var e=null;if(b.target===h.window.document)c.__Geometry.origin.fixedLineage||c.__options.repositionOnScroll&&c.reposition(b);else{e=c.__geometry();var f=!1;if(\"fixed\"!=c._$origin.css(\"position\")&&c.__$originParents.each(function(b,c){var d=a(c),g=d.css(\"overflow-x\"),h=d.css(\"overflow-y\");if(\"visible\"!=g||\"visible\"!=h){var i=c.getBoundingClientRect();if(\"visible\"!=g&&(e.origin.windowOffset.left<i.left||e.origin.windowOffset.right>i.right))return f=!0,!1;if(\"visible\"!=h&&(e.origin.windowOffset.top<i.top||e.origin.windowOffset.bottom>i.bottom))return f=!0,!1}return\"fixed\"==d.css(\"position\")?!1:void 0}),f)c._$tooltip.css(\"visibility\",\"hidden\");else if(c._$tooltip.css(\"visibility\",\"visible\"),c.__options.repositionOnScroll)c.reposition(b);else{var g=e.origin.offset.left-c.__Geometry.origin.offset.left,i=e.origin.offset.top-c.__Geometry.origin.offset.top;c._$tooltip.css({left:c.__lastPosition.coord.left+g,top:c.__lastPosition.coord.top+i})}}c._trigger({type:\"scroll\",event:b,geo:e})}return c},__stateSet:function(a){return this.__state=a,this._trigger({type:\"state\",state:a}),this},__timeoutsClear:function(){return clearTimeout(this.__timeouts.open),this.__timeouts.open=null,a.each(this.__timeouts.close,function(a,b){clearTimeout(b)}),this.__timeouts.close=[],this},__trackerStart:function(){var a=this,b=a._$tooltip.find(\".tooltipster-content\");return a.__options.trackTooltip&&(a.__contentBcr=b[0].getBoundingClientRect()),a.__tracker=setInterval(function(){if(d(a._$origin)&&d(a._$tooltip)){if(a.__options.trackOrigin){var e=a.__geometry(),f=!1;c(e.origin.size,a.__Geometry.origin.size)&&(a.__Geometry.origin.fixedLineage?c(e.origin.windowOffset,a.__Geometry.origin.windowOffset)&&(f=!0):c(e.origin.offset,a.__Geometry.origin.offset)&&(f=!0)),f||(a.__options.triggerClose.mouseleave?a._close():a.reposition())}if(a.__options.trackTooltip){var g=b[0].getBoundingClientRect();g.height===a.__contentBcr.height&&g.width===a.__contentBcr.width||(a.reposition(),a.__contentBcr=g)}}else a._close()},a.__options.trackerInterval),a},_close:function(b,c,d){var e=this,f=!0;if(e._trigger({type:\"close\",event:b,stop:function(){f=!1}}),f||d){c&&e.__callbacks.close.push(c),e.__callbacks.open=[],e.__timeoutsClear();var g=function(){a.each(e.__callbacks.close,function(a,c){c.call(e,e,{event:b,origin:e._$origin[0]})}),e.__callbacks.close=[]};if(\"closed\"!=e.__state){var i=!0,j=new Date,k=j.getTime(),l=k+e.__options.animationDuration[1];if(\"disappearing\"==e.__state&&l>e.__closingTime&&e.__options.animationDuration[1]>0&&(i=!1),i){e.__closingTime=l,\"disappearing\"!=e.__state&&e.__stateSet(\"disappearing\");var m=function(){clearInterval(e.__tracker),e._trigger({type:\"closing\",event:b}),e._$tooltip.off(\".\"+e.__namespace+\"-triggerClose\").removeClass(\"tooltipster-dying\"),a(h.window).off(\".\"+e.__namespace+\"-triggerClose\"),e.__$originParents.each(function(b,c){a(c).off(\"scroll.\"+e.__namespace+\"-triggerClose\")}),e.__$originParents=null,a(h.window.document.body).off(\".\"+e.__namespace+\"-triggerClose\"),e._$origin.off(\".\"+e.__namespace+\"-triggerClose\"),e._off(\"dismissable\"),e.__stateSet(\"closed\"),e._trigger({type:\"after\",event:b}),e.__options.functionAfter&&e.__options.functionAfter.call(e,e,{event:b,origin:e._$origin[0]}),g()};h.hasTransitions?(e._$tooltip.css({\"-moz-animation-duration\":e.__options.animationDuration[1]+\"ms\",\"-ms-animation-duration\":e.__options.animationDuration[1]+\"ms\",\"-o-animation-duration\":e.__options.animationDuration[1]+\"ms\",\"-webkit-animation-duration\":e.__options.animationDuration[1]+\"ms\",\"animation-duration\":e.__options.animationDuration[1]+\"ms\",\"transition-duration\":e.__options.animationDuration[1]+\"ms\"}),e._$tooltip.clearQueue().removeClass(\"tooltipster-show\").addClass(\"tooltipster-dying\"),e.__options.animationDuration[1]>0&&e._$tooltip.delay(e.__options.animationDuration[1]),e._$tooltip.queue(m)):e._$tooltip.stop().fadeOut(e.__options.animationDuration[1],m)}}else g()}return e},_off:function(){return this.__$emitterPrivate.off.apply(this.__$emitterPrivate,Array.prototype.slice.apply(arguments)),this},_on:function(){return this.__$emitterPrivate.on.apply(this.__$emitterPrivate,Array.prototype.slice.apply(arguments)),this},_one:function(){return this.__$emitterPrivate.one.apply(this.__$emitterPrivate,Array.prototype.slice.apply(arguments)),this},_open:function(b,c){var e=this;if(!e.__destroying&&d(e._$origin)&&e.__enabled){var f=!0;if(\"closed\"==e.__state&&(e._trigger({type:\"before\",event:b,stop:function(){f=!1}}),f&&e.__options.functionBefore&&(f=e.__options.functionBefore.call(e,e,{event:b,origin:e._$origin[0]}))),f!==!1&&null!==e.__Content){c&&e.__callbacks.open.push(c),e.__callbacks.close=[],e.__timeoutsClear();var g,i=function(){\"stable\"!=e.__state&&e.__stateSet(\"stable\"),a.each(e.__callbacks.open,function(a,b){b.call(e,e,{origin:e._$origin[0],tooltip:e._$tooltip[0]})}),e.__callbacks.open=[]};if(\"closed\"!==e.__state)g=0,\"disappearing\"===e.__state?(e.__stateSet(\"appearing\"),h.hasTransitions?(e._$tooltip.clearQueue().removeClass(\"tooltipster-dying\").addClass(\"tooltipster-show\"),e.__options.animationDuration[0]>0&&e._$tooltip.delay(e.__options.animationDuration[0]),e._$tooltip.queue(i)):e._$tooltip.stop().fadeIn(i)):\"stable\"==e.__state&&i();else{if(e.__stateSet(\"appearing\"),g=e.__options.animationDuration[0],e.__contentInsert(),e.reposition(b,!0),h.hasTransitions?(e._$tooltip.addClass(\"tooltipster-\"+e.__options.animation).addClass(\"tooltipster-initial\").css({\"-moz-animation-duration\":e.__options.animationDuration[0]+\"ms\",\"-ms-animation-duration\":e.__options.animationDuration[0]+\"ms\",\"-o-animation-duration\":e.__options.animationDuration[0]+\"ms\",\"-webkit-animation-duration\":e.__options.animationDuration[0]+\"ms\",\"animation-duration\":e.__options.animationDuration[0]+\"ms\",\"transition-duration\":e.__options.animationDuration[0]+\"ms\"}),setTimeout(function(){\"closed\"!=e.__state&&(e._$tooltip.addClass(\"tooltipster-show\").removeClass(\"tooltipster-initial\"),e.__options.animationDuration[0]>0&&e._$tooltip.delay(e.__options.animationDuration[0]),e._$tooltip.queue(i))},0)):e._$tooltip.css(\"display\",\"none\").fadeIn(e.__options.animationDuration[0],i),e.__trackerStart(),a(h.window).on(\"resize.\"+e.__namespace+\"-triggerClose\",function(b){var c=a(document.activeElement);(c.is(\"input\")||c.is(\"textarea\"))&&a.contains(e._$tooltip[0],c[0])||e.reposition(b)}).on(\"scroll.\"+e.__namespace+\"-triggerClose\",function(a){e.__scrollHandler(a)}),e.__$originParents=e._$origin.parents(),e.__$originParents.each(function(b,c){a(c).on(\"scroll.\"+e.__namespace+\"-triggerClose\",function(a){e.__scrollHandler(a)})}),e.__options.triggerClose.mouseleave||e.__options.triggerClose.touchleave&&h.hasTouchCapability){e._on(\"dismissable\",function(a){a.dismissable?a.delay?(m=setTimeout(function(){e._close(a.event)},a.delay),e.__timeouts.close.push(m)):e._close(a):clearTimeout(m)});var j=e._$origin,k=\"\",l=\"\",m=null;e.__options.interactive&&(j=j.add(e._$tooltip)),e.__options.triggerClose.mouseleave&&(k+=\"mouseenter.\"+e.__namespace+\"-triggerClose \",l+=\"mouseleave.\"+e.__namespace+\"-triggerClose \"),e.__options.triggerClose.touchleave&&h.hasTouchCapability&&(k+=\"touchstart.\"+e.__namespace+\"-triggerClose\",l+=\"touchend.\"+e.__namespace+\"-triggerClose touchcancel.\"+e.__namespace+\"-triggerClose\"),j.on(l,function(a){if(e._touchIsTouchEvent(a)||!e._touchIsEmulatedEvent(a)){var b=\"mouseleave\"==a.type?e.__options.delay:e.__options.delayTouch;e._trigger({delay:b[1],dismissable:!0,event:a,type:\"dismissable\"})}}).on(k,function(a){!e._touchIsTouchEvent(a)&&e._touchIsEmulatedEvent(a)||e._trigger({dismissable:!1,event:a,type:\"dismissable\"})})}e.__options.triggerClose.originClick&&e._$origin.on(\"click.\"+e.__namespace+\"-triggerClose\",function(a){e._touchIsTouchEvent(a)||e._touchIsEmulatedEvent(a)||e._close(a)}),(e.__options.triggerClose.click||e.__options.triggerClose.tap&&h.hasTouchCapability)&&setTimeout(function(){if(\"closed\"!=e.__state){var b=\"\",c=a(h.window.document.body);e.__options.triggerClose.click&&(b+=\"click.\"+e.__namespace+\"-triggerClose \"),e.__options.triggerClose.tap&&h.hasTouchCapability&&(b+=\"touchend.\"+e.__namespace+\"-triggerClose\"),c.on(b,function(b){e._touchIsMeaningfulEvent(b)&&(e._touchRecordEvent(b),e.__options.interactive&&a.contains(e._$tooltip[0],b.target)||e._close(b))}),e.__options.triggerClose.tap&&h.hasTouchCapability&&c.on(\"touchstart.\"+e.__namespace+\"-triggerClose\",function(a){e._touchRecordEvent(a)})}},0),e._trigger(\"ready\"),e.__options.functionReady&&e.__options.functionReady.call(e,e,{origin:e._$origin[0],tooltip:e._$tooltip[0]})}if(e.__options.timer>0){var m=setTimeout(function(){e._close()},e.__options.timer+g);e.__timeouts.close.push(m)}}}return e},_openShortly:function(a){var b=this,c=!0;if(\"stable\"!=b.__state&&\"appearing\"!=b.__state&&!b.__timeouts.open&&(b._trigger({type:\"start\",event:a,stop:function(){c=!1}}),c)){var d=0==a.type.indexOf(\"touch\")?b.__options.delayTouch:b.__options.delay;d[0]?b.__timeouts.open=setTimeout(function(){b.__timeouts.open=null,b.__pointerIsOverOrigin&&b._touchIsMeaningfulEvent(a)?(b._trigger(\"startend\"),b._open(a)):b._trigger(\"startcancel\")},d[0]):(b._trigger(\"startend\"),b._open(a))}return b},_optionsExtract:function(b,c){var d=this,e=a.extend(!0,{},c),f=d.__options[b];return f||(f={},a.each(c,function(a,b){var c=d.__options[a];void 0!==c&&(f[a]=c)})),a.each(e,function(b,c){void 0!==f[b]&&(\"object\"!=typeof c||c instanceof Array||null==c||\"object\"!=typeof f[b]||f[b]instanceof Array||null==f[b]?e[b]=f[b]:a.extend(e[b],f[b]))}),e},_plug:function(b){var c=a.tooltipster._plugin(b);if(!c)throw new Error('The \"'+b+'\" plugin is not defined');return c.instance&&a.tooltipster.__bridge(c.instance,this,c.name),this},_touchIsEmulatedEvent:function(a){for(var b=!1,c=(new Date).getTime(),d=this.__touchEvents.length-1;d>=0;d--){var e=this.__touchEvents[d];if(!(c-e.time<500))break;e.target===a.target&&(b=!0)}return b},_touchIsMeaningfulEvent:function(a){return this._touchIsTouchEvent(a)&&!this._touchSwiped(a.target)||!this._touchIsTouchEvent(a)&&!this._touchIsEmulatedEvent(a)},_touchIsTouchEvent:function(a){return 0==a.type.indexOf(\"touch\")},_touchRecordEvent:function(a){return this._touchIsTouchEvent(a)&&(a.time=(new Date).getTime(),this.__touchEvents.push(a)),this},_touchSwiped:function(a){for(var b=!1,c=this.__touchEvents.length-1;c>=0;c--){var d=this.__touchEvents[c];if(\"touchmove\"==d.type){b=!0;break}if(\"touchstart\"==d.type&&a===d.target)break}return b},_trigger:function(){var b=Array.prototype.slice.apply(arguments);return\"string\"==typeof b[0]&&(b[0]={type:b[0]}),b[0].instance=this,b[0].origin=this._$origin?this._$origin[0]:null,b[0].tooltip=this._$tooltip?this._$tooltip[0]:null,this.__$emitterPrivate.trigger.apply(this.__$emitterPrivate,b),a.tooltipster._trigger.apply(a.tooltipster,b),this.__$emitterPublic.trigger.apply(this.__$emitterPublic,b),this},_unplug:function(b){var c=this;if(c[b]){var d=a.tooltipster._plugin(b);d.instance&&a.each(d.instance,function(a,d){c[a]&&c[a].bridged===c[b]&&delete c[a]}),c[b].__destroy&&c[b].__destroy(),delete c[b]}return c},close:function(a){return this.__destroyed?this.__destroyError():this._close(null,a),this},content:function(a){var b=this;if(void 0===a)return b.__Content;if(b.__destroyed)b.__destroyError();else if(b.__contentSet(a),null!==b.__Content){if(\"closed\"!==b.__state&&(b.__contentInsert(),b.reposition(),b.__options.updateAnimation))if(h.hasTransitions){var c=b.__options.updateAnimation;b._$tooltip.addClass(\"tooltipster-update-\"+c),setTimeout(function(){\"closed\"!=b.__state&&b._$tooltip.removeClass(\"tooltipster-update-\"+c)},1e3)}else b._$tooltip.fadeTo(200,.5,function(){\"closed\"!=b.__state&&b._$tooltip.fadeTo(200,1)})}else b._close();return b},destroy:function(){var b=this;if(b.__destroyed)b.__destroyError();else{\"closed\"!=b.__state?b.option(\"animationDuration\",0)._close(null,null,!0):b.__timeoutsClear(),b._trigger(\"destroy\"),b.__destroyed=!0,b._$origin.removeData(b.__namespace).off(\".\"+b.__namespace+\"-triggerOpen\"),a(h.window.document.body).off(\".\"+b.__namespace+\"-triggerOpen\");var c=b._$origin.data(\"tooltipster-ns\");if(c)if(1===c.length){var d=null;\"previous\"==b.__options.restoration?d=b._$origin.data(\"tooltipster-initialTitle\"):\"current\"==b.__options.restoration&&(d=\"string\"==typeof b.__Content?b.__Content:a(\"<div></div>\").append(b.__Content).html()),d&&b._$origin.attr(\"title\",d),b._$origin.removeClass(\"tooltipstered\"),b._$origin.removeData(\"tooltipster-ns\").removeData(\"tooltipster-initialTitle\")}else c=a.grep(c,function(a,c){return a!==b.__namespace}),b._$origin.data(\"tooltipster-ns\",c);b._trigger(\"destroyed\"),b._off(),b.off(),b.__Content=null,b.__$emitterPrivate=null,b.__$emitterPublic=null,b.__options.parent=null,b._$origin=null,b._$tooltip=null,a.tooltipster.__instancesLatestArr=a.grep(a.tooltipster.__instancesLatestArr,function(a,c){return b!==a}),clearInterval(b.__garbageCollector)}return b},disable:function(){return this.__destroyed?(this.__destroyError(),this):(this._close(),this.__enabled=!1,this)},elementOrigin:function(){return this.__destroyed?void this.__destroyError():this._$origin[0]},elementTooltip:function(){return this._$tooltip?this._$tooltip[0]:null},enable:function(){return this.__enabled=!0,this},hide:function(a){return this.close(a)},instance:function(){return this},off:function(){return this.__destroyed||this.__$emitterPublic.off.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this},on:function(){return this.__destroyed?this.__destroyError():this.__$emitterPublic.on.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this},one:function(){return this.__destroyed?this.__destroyError():this.__$emitterPublic.one.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this},open:function(a){return this.__destroyed?this.__destroyError():this._open(null,a),this},option:function(b,c){return void 0===c?this.__options[b]:(this.__destroyed?this.__destroyError():(this.__options[b]=c,this.__optionsFormat(),a.inArray(b,[\"trigger\",\"triggerClose\",\"triggerOpen\"])>=0&&this.__prepareOrigin(),\"selfDestruction\"===b&&this.__prepareGC()),this)},reposition:function(a,b){var c=this;return c.__destroyed?c.__destroyError():\"closed\"!=c.__state&&d(c._$origin)&&(b||d(c._$tooltip))&&(b||c._$tooltip.detach(),c.__Geometry=c.__geometry(),c._trigger({type:\"reposition\",event:a,helper:{geo:c.__Geometry}})),c},show:function(a){return this.open(a)},status:function(){return{destroyed:this.__destroyed,enabled:this.__enabled,open:\"closed\"!==this.__state,state:this.__state}},triggerHandler:function(){return this.__destroyed?this.__destroyError():this.__$emitterPublic.triggerHandler.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this}},a.fn.tooltipster=function(){var b=Array.prototype.slice.apply(arguments),c=\"You are using a single HTML element as content for several tooltips. You probably want to set the contentCloning option to TRUE.\";if(0===this.length)return this;if(\"string\"==typeof b[0]){var d=\"#*$~&\";return this.each(function(){var e=a(this).data(\"tooltipster-ns\"),f=e?a(this).data(e[0]):null;if(!f)throw new Error(\"You called Tooltipster's \\\"\"+b[0]+'\" method on an uninitialized element');if(\"function\"!=typeof f[b[0]])throw new Error('Unknown method \"'+b[0]+'\"');this.length>1&&\"content\"==b[0]&&(b[1]instanceof a||\"object\"==typeof b[1]&&null!=b[1]&&b[1].tagName)&&!f.__options.contentCloning&&f.__options.debug&&console.log(c);var g=f[b[0]](b[1],b[2]);return g!==f||\"instance\"===b[0]?(d=g,!1):void 0}),\"#*$~&\"!==d?d:this}a.tooltipster.__instancesLatestArr=[];var e=b[0]&&void 0!==b[0].multiple,g=e&&b[0].multiple||!e&&f.multiple,h=b[0]&&void 0!==b[0].content,i=h&&b[0].content||!h&&f.content,j=b[0]&&void 0!==b[0].contentCloning,k=j&&b[0].contentCloning||!j&&f.contentCloning,l=b[0]&&void 0!==b[0].debug,m=l&&b[0].debug||!l&&f.debug;return this.length>1&&(i instanceof a||\"object\"==typeof i&&null!=i&&i.tagName)&&!k&&m&&console.log(c),this.each(function(){var c=!1,d=a(this),e=d.data(\"tooltipster-ns\"),f=null;e?g?c=!0:m&&(console.log(\"Tooltipster: one or more tooltips are already attached to the element below. Ignoring.\"),console.log(this)):c=!0,c&&(f=new a.Tooltipster(this,b[0]),e||(e=[]),e.push(f.__namespace),d.data(\"tooltipster-ns\",e),d.data(f.__namespace,f),f.__options.functionInit&&f.__options.functionInit.call(f,f,{origin:this}),f._trigger(\"init\")),a.tooltipster.__instancesLatestArr.push(f)}),this},b.prototype={__init:function(b){this.__$tooltip=b,this.__$tooltip.css({left:0,overflow:\"hidden\",position:\"absolute\",top:0}).find(\".tooltipster-content\").css(\"overflow\",\"auto\"),this.$container=a('<div class=\"tooltipster-ruler\"></div>').append(this.__$tooltip).appendTo(h.window.document.body)},__forceRedraw:function(){var a=this.__$tooltip.parent();this.__$tooltip.detach(),this.__$tooltip.appendTo(a)},constrain:function(a,b){return this.constraints={width:a,height:b},this.__$tooltip.css({display:\"block\",height:\"\",overflow:\"auto\",width:a}),this},destroy:function(){this.__$tooltip.detach().find(\".tooltipster-content\").css({display:\"\",overflow:\"\"}),this.$container.remove()},free:function(){return this.constraints=null,this.__$tooltip.css({display:\"\",height:\"\",overflow:\"visible\",width:\"\"}),this},measure:function(){this.__forceRedraw();var a=this.__$tooltip[0].getBoundingClientRect(),b={size:{height:a.height||a.bottom-a.top,width:a.width||a.right-a.left}};if(this.constraints){var c=this.__$tooltip.find(\".tooltipster-content\"),d=this.__$tooltip.outerHeight(),e=c[0].getBoundingClientRect(),f={height:d<=this.constraints.height,width:a.width<=this.constraints.width&&e.width>=c[0].scrollWidth-1};b.fits=f.height&&f.width}return h.IE&&h.IE<=11&&b.size.width!==h.window.document.documentElement.clientWidth&&(b.size.width=Math.ceil(b.size.width)+1),b}};var j=navigator.userAgent.toLowerCase();-1!=j.indexOf(\"msie\")?h.IE=parseInt(j.split(\"msie\")[1]):-1!==j.toLowerCase().indexOf(\"trident\")&&-1!==j.indexOf(\" rv:11\")?h.IE=11:-1!=j.toLowerCase().indexOf(\"edge/\")&&(h.IE=parseInt(j.toLowerCase().split(\"edge/\")[1]));var k=\"tooltipster.sideTip\";return a.tooltipster._plugin({name:k,instance:{__defaults:function(){return{arrow:!0,distance:6,functionPosition:null,maxWidth:null,minIntersection:16,minWidth:0,position:null,side:\"top\",viewportAware:!0}},__init:function(a){var b=this;b.__instance=a,b.__namespace=\"tooltipster-sideTip-\"+Math.round(1e6*Math.random()),b.__previousState=\"closed\",b.__options,b.__optionsFormat(),b.__instance._on(\"state.\"+b.__namespace,function(a){\"closed\"==a.state?b.__close():\"appearing\"==a.state&&\"closed\"==b.__previousState&&b.__create(),b.__previousState=a.state}),b.__instance._on(\"options.\"+b.__namespace,function(){b.__optionsFormat()}),b.__instance._on(\"reposition.\"+b.__namespace,function(a){b.__reposition(a.event,a.helper)})},__close:function(){this.__instance.content()instanceof a&&this.__instance.content().detach(),this.__instance._$tooltip.remove(),this.__instance._$tooltip=null},__create:function(){var b=a('<div class=\"tooltipster-base tooltipster-sidetip\"><div class=\"tooltipster-box\"><div class=\"tooltipster-content\"></div></div><div class=\"tooltipster-arrow\"><div class=\"tooltipster-arrow-uncropped\"><div class=\"tooltipster-arrow-border\"></div><div class=\"tooltipster-arrow-background\"></div></div></div></div>');this.__options.arrow||b.find(\".tooltipster-box\").css(\"margin\",0).end().find(\".tooltipster-arrow\").hide(),this.__options.minWidth&&b.css(\"min-width\",this.__options.minWidth+\"px\"),this.__options.maxWidth&&b.css(\"max-width\",this.__options.maxWidth+\"px\"),\nthis.__instance._$tooltip=b,this.__instance._trigger(\"created\")},__destroy:function(){this.__instance._off(\".\"+self.__namespace)},__optionsFormat:function(){var b=this;if(b.__options=b.__instance._optionsExtract(k,b.__defaults()),b.__options.position&&(b.__options.side=b.__options.position),\"object\"!=typeof b.__options.distance&&(b.__options.distance=[b.__options.distance]),b.__options.distance.length<4&&(void 0===b.__options.distance[1]&&(b.__options.distance[1]=b.__options.distance[0]),void 0===b.__options.distance[2]&&(b.__options.distance[2]=b.__options.distance[0]),void 0===b.__options.distance[3]&&(b.__options.distance[3]=b.__options.distance[1])),b.__options.distance={top:b.__options.distance[0],right:b.__options.distance[1],bottom:b.__options.distance[2],left:b.__options.distance[3]},\"string\"==typeof b.__options.side){var c={top:\"bottom\",right:\"left\",bottom:\"top\",left:\"right\"};b.__options.side=[b.__options.side,c[b.__options.side]],\"left\"==b.__options.side[0]||\"right\"==b.__options.side[0]?b.__options.side.push(\"top\",\"bottom\"):b.__options.side.push(\"right\",\"left\")}6===a.tooltipster._env.IE&&b.__options.arrow!==!0&&(b.__options.arrow=!1)},__reposition:function(b,c){var d,e=this,f=e.__targetFind(c),g=[];e.__instance._$tooltip.detach();var h=e.__instance._$tooltip.clone(),i=a.tooltipster._getRuler(h),j=!1,k=e.__instance.option(\"animation\");switch(k&&h.removeClass(\"tooltipster-\"+k),a.each([\"window\",\"document\"],function(d,k){var l=null;if(e.__instance._trigger({container:k,helper:c,satisfied:j,takeTest:function(a){l=a},results:g,type:\"positionTest\"}),1==l||0!=l&&0==j&&(\"window\"!=k||e.__options.viewportAware))for(var d=0;d<e.__options.side.length;d++){var m={horizontal:0,vertical:0},n=e.__options.side[d];\"top\"==n||\"bottom\"==n?m.vertical=e.__options.distance[n]:m.horizontal=e.__options.distance[n],e.__sideChange(h,n),a.each([\"natural\",\"constrained\"],function(a,d){if(l=null,e.__instance._trigger({container:k,event:b,helper:c,mode:d,results:g,satisfied:j,side:n,takeTest:function(a){l=a},type:\"positionTest\"}),1==l||0!=l&&0==j){var h={container:k,distance:m,fits:null,mode:d,outerSize:null,side:n,size:null,target:f[n],whole:null},o=\"natural\"==d?i.free():i.constrain(c.geo.available[k][n].width-m.horizontal,c.geo.available[k][n].height-m.vertical),p=o.measure();if(h.size=p.size,h.outerSize={height:p.size.height+m.vertical,width:p.size.width+m.horizontal},\"natural\"==d?c.geo.available[k][n].width>=h.outerSize.width&&c.geo.available[k][n].height>=h.outerSize.height?h.fits=!0:h.fits=!1:h.fits=p.fits,\"window\"==k&&(h.fits?\"top\"==n||\"bottom\"==n?h.whole=c.geo.origin.windowOffset.right>=e.__options.minIntersection&&c.geo.window.size.width-c.geo.origin.windowOffset.left>=e.__options.minIntersection:h.whole=c.geo.origin.windowOffset.bottom>=e.__options.minIntersection&&c.geo.window.size.height-c.geo.origin.windowOffset.top>=e.__options.minIntersection:h.whole=!1),g.push(h),h.whole)j=!0;else if(\"natural\"==h.mode&&(h.fits||h.size.width<=c.geo.available[k][n].width))return!1}})}}),e.__instance._trigger({edit:function(a){g=a},event:b,helper:c,results:g,type:\"positionTested\"}),g.sort(function(a,b){if(a.whole&&!b.whole)return-1;if(!a.whole&&b.whole)return 1;if(a.whole&&b.whole){var c=e.__options.side.indexOf(a.side),d=e.__options.side.indexOf(b.side);return d>c?-1:c>d?1:\"natural\"==a.mode?-1:1}if(a.fits&&!b.fits)return-1;if(!a.fits&&b.fits)return 1;if(a.fits&&b.fits){var c=e.__options.side.indexOf(a.side),d=e.__options.side.indexOf(b.side);return d>c?-1:c>d?1:\"natural\"==a.mode?-1:1}return\"document\"==a.container&&\"bottom\"==a.side&&\"natural\"==a.mode?-1:1}),d=g[0],d.coord={},d.side){case\"left\":case\"right\":d.coord.top=Math.floor(d.target-d.size.height/2);break;case\"bottom\":case\"top\":d.coord.left=Math.floor(d.target-d.size.width/2)}switch(d.side){case\"left\":d.coord.left=c.geo.origin.windowOffset.left-d.outerSize.width;break;case\"right\":d.coord.left=c.geo.origin.windowOffset.right+d.distance.horizontal;break;case\"top\":d.coord.top=c.geo.origin.windowOffset.top-d.outerSize.height;break;case\"bottom\":d.coord.top=c.geo.origin.windowOffset.bottom+d.distance.vertical}\"window\"==d.container?\"top\"==d.side||\"bottom\"==d.side?d.coord.left<0?c.geo.origin.windowOffset.right-this.__options.minIntersection>=0?d.coord.left=0:d.coord.left=c.geo.origin.windowOffset.right-this.__options.minIntersection-1:d.coord.left>c.geo.window.size.width-d.size.width&&(c.geo.origin.windowOffset.left+this.__options.minIntersection<=c.geo.window.size.width?d.coord.left=c.geo.window.size.width-d.size.width:d.coord.left=c.geo.origin.windowOffset.left+this.__options.minIntersection+1-d.size.width):d.coord.top<0?c.geo.origin.windowOffset.bottom-this.__options.minIntersection>=0?d.coord.top=0:d.coord.top=c.geo.origin.windowOffset.bottom-this.__options.minIntersection-1:d.coord.top>c.geo.window.size.height-d.size.height&&(c.geo.origin.windowOffset.top+this.__options.minIntersection<=c.geo.window.size.height?d.coord.top=c.geo.window.size.height-d.size.height:d.coord.top=c.geo.origin.windowOffset.top+this.__options.minIntersection+1-d.size.height):(d.coord.left>c.geo.window.size.width-d.size.width&&(d.coord.left=c.geo.window.size.width-d.size.width),d.coord.left<0&&(d.coord.left=0)),e.__sideChange(h,d.side),c.tooltipClone=h[0],c.tooltipParent=e.__instance.option(\"parent\").parent[0],c.mode=d.mode,c.whole=d.whole,c.origin=e.__instance._$origin[0],c.tooltip=e.__instance._$tooltip[0],delete d.container,delete d.fits,delete d.mode,delete d.outerSize,delete d.whole,d.distance=d.distance.horizontal||d.distance.vertical;var l=a.extend(!0,{},d);if(e.__instance._trigger({edit:function(a){d=a},event:b,helper:c,position:l,type:\"position\"}),e.__options.functionPosition){var m=e.__options.functionPosition.call(e,e.__instance,c,l);m&&(d=m)}i.destroy();var n,o;\"top\"==d.side||\"bottom\"==d.side?(n={prop:\"left\",val:d.target-d.coord.left},o=d.size.width-this.__options.minIntersection):(n={prop:\"top\",val:d.target-d.coord.top},o=d.size.height-this.__options.minIntersection),n.val<this.__options.minIntersection?n.val=this.__options.minIntersection:n.val>o&&(n.val=o);var p;p=c.geo.origin.fixedLineage?c.geo.origin.windowOffset:{left:c.geo.origin.windowOffset.left+c.geo.window.scroll.left,top:c.geo.origin.windowOffset.top+c.geo.window.scroll.top},d.coord={left:p.left+(d.coord.left-c.geo.origin.windowOffset.left),top:p.top+(d.coord.top-c.geo.origin.windowOffset.top)},e.__sideChange(e.__instance._$tooltip,d.side),c.geo.origin.fixedLineage?e.__instance._$tooltip.css(\"position\",\"fixed\"):e.__instance._$tooltip.css(\"position\",\"\"),e.__instance._$tooltip.css({left:d.coord.left,top:d.coord.top,height:d.size.height,width:d.size.width}).find(\".tooltipster-arrow\").css({left:\"\",top:\"\"}).css(n.prop,n.val),e.__instance._$tooltip.appendTo(e.__instance.option(\"parent\")),e.__instance._trigger({type:\"repositioned\",event:b,position:d})},__sideChange:function(a,b){a.removeClass(\"tooltipster-bottom\").removeClass(\"tooltipster-left\").removeClass(\"tooltipster-right\").removeClass(\"tooltipster-top\").addClass(\"tooltipster-\"+b)},__targetFind:function(a){var b={},c=this.__instance._$origin[0].getClientRects();if(c.length>1){var d=this.__instance._$origin.css(\"opacity\");1==d&&(this.__instance._$origin.css(\"opacity\",.99),c=this.__instance._$origin[0].getClientRects(),this.__instance._$origin.css(\"opacity\",1))}if(c.length<2)b.top=Math.floor(a.geo.origin.windowOffset.left+a.geo.origin.size.width/2),b.bottom=b.top,b.left=Math.floor(a.geo.origin.windowOffset.top+a.geo.origin.size.height/2),b.right=b.left;else{var e=c[0];b.top=Math.floor(e.left+(e.right-e.left)/2),e=c.length>2?c[Math.ceil(c.length/2)-1]:c[0],b.right=Math.floor(e.top+(e.bottom-e.top)/2),e=c[c.length-1],b.bottom=Math.floor(e.left+(e.right-e.left)/2),e=c.length>2?c[Math.ceil((c.length+1)/2)-1]:c[c.length-1],b.left=Math.floor(e.top+(e.bottom-e.top)/2)}return b}}}),a});","// ==================================================\n// fancyBox v3.0.47\n//\n// Licensed GPLv3 for open source use\n// or fancyBox Commercial License for commercial use\n//\n// http://fancyapps.com/fancybox/\n// Copyright 2017 fancyApps\n//\n// ==================================================\n!(function (t, e, n, o) {\n \"use strict\";\n function s(t) {\n var e = t.currentTarget,\n o = t.data ? t.data.options : {},\n s = t.data ? t.data.items : [],\n i = \"\",\n a = 0;\n t.preventDefault(),\n t.stopPropagation(),\n n(e).attr(\"data-fancybox\") && (i = n(e).data(\"fancybox\")),\n i\n ? ((s = s.length\n ? s.filter('[data-fancybox=\"' + i + '\"]')\n : n(\"[data-fancybox=\" + i + \"]\")),\n (a = s.index(e)))\n : (s = [e]),\n n.fancybox.open(s, o, a);\n }\n if (!n) return o;\n var i = {\n speed: 330,\n loop: !0,\n opacity: \"auto\",\n margin: [44, 0],\n gutter: 30,\n infobar: !0,\n buttons: !0,\n slideShow: !0,\n fullScreen: !0,\n thumbs: !0,\n closeBtn: !0,\n smallBtn: \"auto\",\n image: { preload: \"auto\", protect: !1 },\n ajax: { settings: { data: { fancybox: !0 } } },\n iframe: {\n tpl: '<iframe id=\"fancybox-frame{rnd}\" name=\"fancybox-frame{rnd}\" class=\"fancybox-iframe\" frameborder=\"0\" vspace=\"0\" hspace=\"0\" webkitAllowFullScreen mozallowfullscreen allowFullScreen allowtransparency=\"true\" src=\"\"></iframe>',\n preload: !0,\n scrolling: \"no\",\n css: {},\n },\n baseClass: \"\",\n slideClass: \"\",\n baseTpl:\n '<div class=\"fancybox-container\" role=\"dialog\" tabindex=\"-1\"><div class=\"fancybox-bg\"></div><div class=\"fancybox-controls\"><div class=\"fancybox-infobar\"><button data-fancybox-previous class=\"fancybox-button fancybox-button--left\" title=\"Previous\"></button><div class=\"fancybox-infobar__body\"><span class=\"js-fancybox-index\"></span> / <span class=\"js-fancybox-count\"></span></div><button data-fancybox-next class=\"fancybox-button fancybox-button--right\" title=\"Next\"></button></div><div class=\"fancybox-buttons\"><button data-fancybox-close class=\"fancybox-button fancybox-button--close\" title=\"Close (Esc)\"></button></div></div><div class=\"fancybox-slider-wrap\"><div class=\"fancybox-slider\"></div></div><div class=\"fancybox-caption-wrap\"><div class=\"fancybox-caption\"></div></div></div>',\n spinnerTpl: '<div class=\"fancybox-loading\"></div>',\n errorTpl:\n '<div class=\"fancybox-error\"><p>The requested content cannot be loaded. <br /> Please try again later.<p></div>',\n closeTpl:\n '<button data-fancybox-close class=\"fancybox-close-small\"></button>',\n parentEl: \"body\",\n touch: !0,\n keyboard: !0,\n focus: !0,\n closeClickOutside: !0,\n beforeLoad: n.noop,\n afterLoad: n.noop,\n beforeMove: n.noop,\n afterMove: n.noop,\n onComplete: n.noop,\n onInit: n.noop,\n beforeClose: n.noop,\n afterClose: n.noop,\n onActivate: n.noop,\n onDeactivate: n.noop,\n },\n a = n(t),\n r = n(e),\n c = 0,\n l = function (t) {\n return t && t.hasOwnProperty && t instanceof n;\n },\n u = (function () {\n return (\n t.requestAnimationFrame ||\n t.webkitRequestAnimationFrame ||\n t.mozRequestAnimationFrame ||\n function (e) {\n t.setTimeout(e, 1e3 / 60);\n }\n );\n })(),\n d = function (o) {\n var s;\n return (\n \"function\" == typeof n && o instanceof n && (o = o[0]),\n (s = o.getBoundingClientRect()),\n s.bottom > 0 &&\n s.right > 0 &&\n s.left < (t.innerWidth || e.documentElement.clientWidth) &&\n s.top < (t.innerHeight || e.documentElement.clientHeight)\n );\n },\n p = function (t, o, s) {\n var a = this;\n (a.opts = n.extend(!0, { index: s }, i, o || {})),\n (a.id = a.opts.id || ++c),\n (a.group = []),\n (a.currIndex = parseInt(a.opts.index, 10) || 0),\n (a.prevIndex = null),\n (a.prevPos = null),\n (a.currPos = 0),\n (a.firstRun = null),\n a.createGroup(t),\n a.group.length &&\n ((a.$lastFocus = n(e.activeElement).blur()),\n (a.slides = {}),\n a.init(t));\n };\n n.extend(p.prototype, {\n init: function () {\n var t,\n e,\n o = this,\n s = !1;\n (o.scrollTop = r.scrollTop()),\n (o.scrollLeft = r.scrollLeft()),\n n.fancybox.getInstance() ||\n ((t = n(\"body\").width()),\n n(\"html\").addClass(\"fancybox-enabled\"),\n n.fancybox.isTouch\n ? (n.each(o.group, function (t, e) {\n if (\"image\" !== e.type && \"iframe\" !== e.type)\n return (s = !0), !1;\n }),\n s &&\n n(\"body\").css({\n position: \"fixed\",\n width: t,\n top: o.scrollTop * -1,\n }))\n : ((t = n(\"body\").width() - t),\n t > 1 &&\n n(\n '<style id=\"fancybox-noscroll\" type=\"text/css\">'\n )\n .html(\n \".compensate-for-scrollbar, .fancybox-enabled body { margin-right: \" +\n t +\n \"px; }\"\n )\n .appendTo(\"head\"))),\n (e = n(o.opts.baseTpl)\n .attr(\"id\", \"fancybox-container-\" + o.id)\n .data(\"FancyBox\", o)\n .addClass(o.opts.baseClass)\n .hide()\n .prependTo(o.opts.parentEl)),\n (o.$refs = {\n container: e,\n bg: e.find(\".fancybox-bg\"),\n controls: e.find(\".fancybox-controls\"),\n buttons: e.find(\".fancybox-buttons\"),\n slider_wrap: e.find(\".fancybox-slider-wrap\"),\n slider: e.find(\".fancybox-slider\"),\n caption: e.find(\".fancybox-caption\"),\n }),\n o.trigger(\"onInit\"),\n o.activate(),\n o.current || o.jumpTo(o.currIndex);\n },\n createGroup: function (t) {\n var e = this,\n s = n.makeArray(t);\n n.each(s, function (t, s) {\n var i,\n a,\n r,\n c,\n l = {},\n u = {},\n d = [];\n n.isPlainObject(s)\n ? ((l = s), (u = s.opts || {}))\n : \"object\" === n.type(s) && n(s).length\n ? ((i = n(s)),\n (d = i.data()),\n (u = \"options\" in d ? d.options : {}),\n (u = \"object\" === n.type(u) ? u : {}),\n (l.type = \"type\" in d ? d.type : u.type),\n (l.src = \"src\" in d ? d.src : u.src || i.attr(\"href\")),\n (u.width = \"width\" in d ? d.width : u.width),\n (u.height = \"height\" in d ? d.height : u.height),\n (u.thumb = \"thumb\" in d ? d.thumb : u.thumb),\n (u.selector = \"selector\" in d ? d.selector : u.selector),\n \"srcset\" in d && (u.image = { srcset: d.srcset }),\n (u.$orig = i))\n : (l = { type: \"html\", content: s + \"\" }),\n (l.opts = n.extend(!0, {}, e.opts, u)),\n (a = l.type),\n (r = l.src || \"\"),\n a ||\n (l.content\n ? (a = \"html\")\n : r.match(\n /(^data:image\\/[a-z0-9+\\/=]*,)|(\\.(jp(e|g|eg)|gif|png|bmp|webp|svg|ico)((\\?|#).*)?$)/i\n )\n ? (a = \"image\")\n : r.match(/\\.(pdf)((\\?|#).*)?$/i)\n ? (a = \"pdf\")\n : \"#\" === r.charAt(0) && (a = \"inline\"),\n (l.type = a)),\n (l.index = e.group.length),\n l.opts.$orig && !l.opts.$orig.length && delete l.opts.$orig,\n !l.opts.$thumb &&\n l.opts.$orig &&\n (l.opts.$thumb = l.opts.$orig.find(\"img:first\")),\n l.opts.$thumb &&\n !l.opts.$thumb.length &&\n delete l.opts.$thumb,\n \"function\" === n.type(l.opts.caption)\n ? (l.opts.caption = l.opts.caption.apply(s, [e, l]))\n : \"caption\" in d\n ? (l.opts.caption = d.caption)\n : u.$orig && (l.opts.caption = i.attr(\"title\")),\n (l.opts.caption =\n l.opts.caption === o ? \"\" : l.opts.caption + \"\"),\n \"ajax\" === a &&\n ((c = r.split(/\\s+/, 2)),\n c.length > 1 &&\n ((l.src = c.shift()),\n (l.opts.selector = c.shift()))),\n \"auto\" == l.opts.smallBtn &&\n (n.inArray(a, [\"html\", \"inline\", \"ajax\"]) > -1\n ? ((l.opts.buttons = !1), (l.opts.smallBtn = !0))\n : (l.opts.smallBtn = !1)),\n \"pdf\" === a &&\n ((l.type = \"iframe\"),\n (l.opts.closeBtn = !0),\n (l.opts.smallBtn = !1),\n (l.opts.iframe.preload = !1)),\n l.opts.modal &&\n n.extend(!0, l.opts, {\n infobar: 0,\n buttons: 0,\n keyboard: 0,\n slideShow: 0,\n fullScreen: 0,\n closeClickOutside: 0,\n }),\n e.group.push(l);\n });\n },\n addEvents: function () {\n var e = this;\n e.removeEvents(),\n e.$refs.container\n .on(\n \"click.fb-close\",\n \"[data-fancybox-close]\",\n function (t) {\n t.stopPropagation(), t.preventDefault(), e.close(t);\n }\n )\n .on(\n \"click.fb-previous\",\n \"[data-fancybox-previous]\",\n function (t) {\n t.stopPropagation(),\n t.preventDefault(),\n e.previous();\n }\n )\n .on(\"click.fb-next\", \"[data-fancybox-next]\", function (t) {\n t.stopPropagation(), t.preventDefault(), e.next();\n }),\n n(t).on(\"orientationchange.fb resize.fb\", function (t) {\n u(function () {\n t &&\n t.originalEvent &&\n \"resize\" === t.originalEvent.type\n ? e.update()\n : (e.$refs.slider_wrap.hide(),\n u(function () {\n e.$refs.slider_wrap.show(), e.update();\n }));\n });\n }),\n r.on(\"focusin.fb\", function (t) {\n var o = n.fancybox ? n.fancybox.getInstance() : null;\n !o ||\n n(t.target).hasClass(\"fancybox-container\") ||\n n.contains(o.$refs.container[0], t.target) ||\n (t.stopPropagation(),\n o.focus(),\n a.scrollTop(e.scrollTop).scrollLeft(e.scrollLeft));\n }),\n r.on(\"keydown.fb\", function (t) {\n var o = e.current,\n s = t.keyCode || t.which;\n if (\n o &&\n o.opts.keyboard &&\n !n(t.target).is(\"input\") &&\n !n(t.target).is(\"textarea\")\n ) {\n if (8 === s || 27 === s)\n return t.preventDefault(), void e.close(t);\n switch (s) {\n case 37:\n case 38:\n t.preventDefault(), e.previous();\n break;\n case 39:\n case 40:\n t.preventDefault(), e.next();\n break;\n case 80:\n case 32:\n t.preventDefault(),\n e.SlideShow &&\n (t.preventDefault(),\n e.SlideShow.toggle());\n break;\n case 70:\n e.FullScreen &&\n (t.preventDefault(), e.FullScreen.toggle());\n break;\n case 71:\n e.Thumbs &&\n (t.preventDefault(), e.Thumbs.toggle());\n }\n }\n });\n },\n removeEvents: function () {\n a.off(\"scroll.fb resize.fb orientationchange.fb\"),\n r.off(\"keydown.fb focusin.fb click.fb-close\"),\n this.$refs.container.off(\n \"click.fb-close click.fb-previous click.fb-next\"\n );\n },\n previous: function (t) {\n this.jumpTo(this.currIndex - 1, t);\n },\n next: function (t) {\n this.jumpTo(this.currIndex + 1, t);\n },\n jumpTo: function (t, e) {\n var n,\n s,\n i,\n a,\n r = this;\n if (\n ((n = r.firstRun = null === r.firstRun),\n (s = i = t = parseInt(t, 10)),\n (a = !!r.current && r.current.opts.loop),\n !r.isAnimating && (s != r.currIndex || n))\n ) {\n if (r.group.length > 1 && a)\n (s %= r.group.length),\n (s = s < 0 ? r.group.length + s : s),\n 2 == r.group.length\n ? (i = t - r.currIndex + r.currPos)\n : ((i = s - r.currIndex + r.currPos),\n Math.abs(r.currPos - (i + r.group.length)) <\n Math.abs(r.currPos - i)\n ? (i += r.group.length)\n : Math.abs(r.currPos - (i - r.group.length)) <\n Math.abs(r.currPos - i) &&\n (i -= r.group.length));\n else if (!r.group[s]) return void r.update(!1, !1, e);\n r.current &&\n (r.current.$slide.removeClass(\n \"fancybox-slide--current fancybox-slide--complete\"\n ),\n r.updateSlide(r.current, !0)),\n (r.prevIndex = r.currIndex),\n (r.prevPos = r.currPos),\n (r.currIndex = s),\n (r.currPos = i),\n (r.current = r.createSlide(i)),\n r.group.length > 1 &&\n ((r.opts.loop || i - 1 >= 0) && r.createSlide(i - 1),\n (r.opts.loop || i + 1 < r.group.length) &&\n r.createSlide(i + 1)),\n (r.current.isMoved = !1),\n (r.current.isComplete = !1),\n (e = parseInt(\n e === o ? 1.5 * r.current.opts.speed : e,\n 10\n )),\n r.trigger(\"beforeMove\"),\n r.updateControls(),\n n &&\n (r.current.$slide.addClass(\"fancybox-slide--current\"),\n r.$refs.container.show(),\n u(function () {\n r.$refs.bg.css(\n \"transition-duration\",\n r.current.opts.speed + \"ms\"\n ),\n r.$refs.container.addClass(\n \"fancybox-container--ready\"\n );\n })),\n r.update(!0, !1, n ? 0 : e, function () {\n r.afterMove();\n }),\n r.loadSlide(r.current),\n (n && r.current.$ghost) || r.preload();\n }\n },\n createSlide: function (t) {\n var e,\n o,\n s,\n i = this;\n if (\n ((o = t % i.group.length),\n (o = o < 0 ? i.group.length + o : o),\n !i.slides[t] && i.group[o])\n ) {\n if (i.opts.loop && i.group.length > 2)\n for (var a in i.slides)\n if (i.slides[a].index === o)\n return (\n (s = i.slides[a]),\n (s.pos = t),\n (i.slides[t] = s),\n delete i.slides[a],\n i.updateSlide(s),\n s\n );\n (e = n('<div class=\"fancybox-slide\"></div>').appendTo(\n i.$refs.slider\n )),\n (i.slides[t] = n.extend(!0, {}, i.group[o], {\n pos: t,\n $slide: e,\n isMoved: !1,\n isLoaded: !1,\n }));\n }\n return i.slides[t];\n },\n zoomInOut: function (t, e, o) {\n var s,\n i,\n a,\n r = this,\n c = r.current,\n l = c.$placeholder,\n u = c.opts.opacity,\n p = c.opts.$thumb,\n h = p ? p.offset() : 0,\n f = c.$slide.offset();\n return (\n !!(l && c.isMoved && h && d(p)) &&\n !(\"In\" === t && !r.firstRun) &&\n (n.fancybox.stop(l),\n (r.isAnimating = !0),\n (s = {\n top:\n h.top -\n f.top +\n parseFloat(p.css(\"border-top-width\") || 0),\n left:\n h.left -\n f.left +\n parseFloat(p.css(\"border-left-width\") || 0),\n width: p.width(),\n height: p.height(),\n scaleX: 1,\n scaleY: 1,\n }),\n \"auto\" == u &&\n (u =\n Math.abs(c.width / c.height - s.width / s.height) >\n 0.1),\n \"In\" === t\n ? ((i = s),\n (a = r.getFitPos(c)),\n (a.scaleX = a.width / i.width),\n (a.scaleY = a.height / i.height),\n u && ((i.opacity = 0.1), (a.opacity = 1)))\n : ((i = n.fancybox.getTranslate(l)),\n (a = s),\n c.$ghost &&\n (c.$ghost.show(), c.$image && c.$image.remove()),\n (i.scaleX = i.width / a.width),\n (i.scaleY = i.height / a.height),\n (i.width = a.width),\n (i.height = a.height),\n u && (a.opacity = 0)),\n r.updateCursor(a.width, a.height),\n delete a.width,\n delete a.height,\n n.fancybox.setTranslate(l, i),\n l.show(),\n r.trigger(\"beforeZoom\" + t),\n l.css(\"transition\", \"all \" + e + \"ms\"),\n n.fancybox.setTranslate(l, a),\n setTimeout(function () {\n var e;\n l.css(\"transition\", \"none\"),\n (e = n.fancybox.getTranslate(l)),\n (e.scaleX = 1),\n (e.scaleY = 1),\n n.fancybox.setTranslate(l, e),\n r.trigger(\"afterZoom\" + t),\n o.apply(r),\n (r.isAnimating = !1);\n }, e),\n !0)\n );\n },\n canPan: function () {\n var t = this,\n e = t.current,\n n = e.$placeholder,\n o = !1;\n return (\n n &&\n ((o = t.getFitPos(e)),\n (o =\n Math.abs(n.width() - o.width) > 1 ||\n Math.abs(n.height() - o.height) > 1)),\n o\n );\n },\n isScaledDown: function () {\n var t = this,\n e = t.current,\n o = e.$placeholder,\n s = !1;\n return (\n o &&\n ((s = n.fancybox.getTranslate(o)),\n (s = s.width < e.width || s.height < e.height)),\n s\n );\n },\n scaleToActual: function (t, e, s) {\n var i,\n a,\n r,\n c,\n l,\n u = this,\n d = u.current,\n p = d.$placeholder,\n h = parseInt(d.$slide.width(), 10),\n f = parseInt(d.$slide.height(), 10),\n g = d.width,\n b = d.height;\n p &&\n ((u.isAnimating = !0),\n (t = t === o ? 0.5 * h : t),\n (e = e === o ? 0.5 * f : e),\n (i = n.fancybox.getTranslate(p)),\n (c = g / i.width),\n (l = b / i.height),\n (a = 0.5 * h - 0.5 * g),\n (r = 0.5 * f - 0.5 * b),\n g > h &&\n ((a = i.left * c - (t * c - t)),\n a > 0 && (a = 0),\n a < h - g && (a = h - g)),\n b > f &&\n ((r = i.top * l - (e * l - e)),\n r > 0 && (r = 0),\n r < f - b && (r = f - b)),\n u.updateCursor(g, b),\n n.fancybox.animate(\n p,\n null,\n { top: r, left: a, scaleX: c, scaleY: l },\n s || d.opts.speed,\n function () {\n u.isAnimating = !1;\n }\n ));\n },\n scaleToFit: function (t) {\n var e,\n o = this,\n s = o.current,\n i = s.$placeholder;\n i &&\n ((o.isAnimating = !0),\n (e = o.getFitPos(s)),\n o.updateCursor(e.width, e.height),\n n.fancybox.animate(\n i,\n null,\n {\n top: e.top,\n left: e.left,\n scaleX: e.width / i.width(),\n scaleY: e.height / i.height(),\n },\n t || s.opts.speed,\n function () {\n o.isAnimating = !1;\n }\n ));\n },\n getFitPos: function (t) {\n var e,\n o,\n s,\n i,\n r,\n c,\n l,\n u = t.$placeholder || t.$content,\n d = t.width,\n p = t.height,\n h = t.opts.margin;\n return (\n !(!u || !u.length || (!d && !p)) &&\n (\"number\" === n.type(h) && (h = [h, h]),\n 2 == h.length && (h = [h[0], h[1], h[0], h[1]]),\n a.width() < 800 && (h = [0, 0, 0, 0]),\n (e = parseInt(t.$slide.width(), 10) - (h[1] + h[3])),\n (o = parseInt(t.$slide.height(), 10) - (h[0] + h[2])),\n (s = Math.min(1, e / d, o / p)),\n (c = Math.floor(s * d)),\n (l = Math.floor(s * p)),\n (i = Math.floor(0.5 * (o - l)) + h[0]),\n (r = Math.floor(0.5 * (e - c)) + h[3]),\n { top: i, left: r, width: c, height: l })\n );\n },\n update: function (t, e, o, s) {\n var i,\n a = this;\n a.isAnimating !== !0 &&\n a.current &&\n ((i =\n a.current.pos * Math.floor(a.current.$slide.width()) * -1 -\n a.current.pos * a.current.opts.gutter),\n (o = parseInt(o, 10) || 0),\n n.fancybox.stop(a.$refs.slider),\n t === !1\n ? a.updateSlide(a.current, e)\n : n.each(a.slides, function (t, n) {\n a.updateSlide(n, e);\n }),\n o\n ? n.fancybox.animate(\n a.$refs.slider,\n null,\n { top: 0, left: i },\n o,\n function () {\n (a.current.isMoved = !0),\n \"function\" === n.type(s) && s.apply(a);\n }\n )\n : (n.fancybox.setTranslate(a.$refs.slider, {\n top: 0,\n left: i,\n }),\n (a.current.isMoved = !0),\n \"function\" === n.type(s) && s.apply(a)));\n },\n updateSlide: function (t, e) {\n var o,\n s = this,\n i = t.$placeholder;\n (t = t || s.current),\n t &&\n !s.isClosing &&\n ((o =\n t.pos * Math.floor(t.$slide.width()) +\n t.pos * t.opts.gutter),\n o !== t.leftPos &&\n (n.fancybox.setTranslate(t.$slide, { top: 0, left: o }),\n (t.leftPos = o)),\n e !== !1 &&\n i &&\n (n.fancybox.setTranslate(i, s.getFitPos(t)),\n t.pos === s.currPos && s.updateCursor()),\n t.$slide.trigger(\"refresh\"),\n s.trigger(\"onUpdate\", t));\n },\n updateCursor: function (t, e) {\n var n,\n s = this,\n i = s.$refs.container.removeClass(\n \"fancybox-controls--canzoomIn fancybox-controls--canzoomOut fancybox-controls--canGrab\"\n );\n !s.isClosing &&\n s.opts.touch &&\n ((n =\n t !== o && e !== o\n ? t < s.current.width && e < s.current.height\n : s.isScaledDown()),\n n\n ? i.addClass(\"fancybox-controls--canzoomIn\")\n : s.group.length < 2\n ? i.addClass(\"fancybox-controls--canzoomOut\")\n : i.addClass(\"fancybox-controls--canGrab\"));\n },\n loadSlide: function (t) {\n var e,\n o,\n s,\n i = this;\n if (t && !t.isLoaded && !t.isLoading) {\n switch (\n ((t.isLoading = !0),\n i.trigger(\"beforeLoad\", t),\n (e = t.type),\n (o = t.$slide),\n o\n .off(\"refresh\")\n .trigger(\"onReset\")\n .addClass(\"fancybox-slide--\" + (e || \"unknown\"))\n .addClass(t.opts.slideClass),\n e)\n ) {\n case \"image\":\n i.setImage(t);\n break;\n case \"iframe\":\n i.setIframe(t);\n break;\n case \"html\":\n i.setContent(t, t.content);\n break;\n case \"inline\":\n n(t.src).length\n ? i.setContent(t, n(t.src))\n : i.setError(t);\n break;\n case \"ajax\":\n i.showLoading(t),\n (s = n.ajax(\n n.extend({}, t.opts.ajax.settings, {\n url: t.src,\n success: function (e, n) {\n \"success\" === n && i.setContent(t, e);\n },\n error: function (e, n) {\n e && \"abort\" !== n && i.setError(t);\n },\n })\n )),\n o.one(\"onReset\", function () {\n s.abort();\n });\n break;\n default:\n i.setError(t);\n }\n return !0;\n }\n },\n setImage: function (e) {\n var o,\n s,\n i,\n a,\n r = this,\n c = e.opts.image.srcset;\n if (e.isLoaded && !e.hasError) return void r.afterLoad(e);\n if (c) {\n (i = t.devicePixelRatio || 1),\n (a = t.innerWidth * i),\n (s = c.split(\",\").map(function (t) {\n var e = {};\n return (\n t\n .trim()\n .split(/\\s+/)\n .forEach(function (t, n) {\n var o = parseInt(\n t.substring(0, t.length - 1),\n 10\n );\n return 0 === n\n ? (e.url = t)\n : void (\n o &&\n ((e.value = o),\n (e.postfix = t[t.length - 1]))\n );\n }),\n e\n );\n })),\n s.sort(function (t, e) {\n return t.value - e.value;\n });\n for (var l = 0; l < s.length; l++) {\n var u = s[l];\n if (\n (\"w\" === u.postfix && u.value >= a) ||\n (\"x\" === u.postfix && u.value >= i)\n ) {\n o = u;\n break;\n }\n }\n !o && s.length && (o = s[s.length - 1]),\n o &&\n ((e.src = o.url),\n e.width &&\n e.height &&\n \"w\" == o.postfix &&\n ((e.height = (e.width / e.height) * o.value),\n (e.width = o.value)));\n }\n (e.$placeholder = n('<div class=\"fancybox-placeholder\"></div>')\n .hide()\n .appendTo(e.$slide)),\n e.opts.preload !== !1 &&\n e.opts.width &&\n e.opts.height &&\n (e.opts.thumb || e.opts.$thumb)\n ? ((e.width = e.opts.width),\n (e.height = e.opts.height),\n (e.$ghost = n(\"<img />\")\n .one(\"load error\", function () {\n r.isClosing ||\n ((n(\"<img/>\")[0].src = e.src),\n r.revealImage(e, function () {\n r.setBigImage(e),\n r.firstRun &&\n e.index === r.currIndex &&\n r.preload();\n }));\n })\n .addClass(\"fancybox-image\")\n .appendTo(e.$placeholder)\n .attr(\n \"src\",\n e.opts.thumb || e.opts.$thumb.attr(\"src\")\n )))\n : r.setBigImage(e);\n },\n setBigImage: function (t) {\n var e = this,\n o = n(\"<img />\");\n (t.$image = o\n .one(\"error\", function () {\n e.setError(t);\n })\n .one(\"load\", function () {\n clearTimeout(t.timouts),\n (t.timouts = null),\n e.isClosing ||\n ((t.width = this.naturalWidth),\n (t.height = this.naturalHeight),\n t.opts.image.srcset &&\n o\n .attr(\"sizes\", \"100vw\")\n .attr(\"srcset\", t.opts.image.srcset),\n e.afterLoad(t),\n t.$ghost &&\n (t.timouts = setTimeout(function () {\n t.$ghost.hide();\n }, 350)));\n })\n .addClass(\"fancybox-image\")\n .attr(\"src\", t.src)\n .appendTo(t.$placeholder)),\n o[0].complete\n ? o.trigger(\"load\")\n : o[0].error\n ? o.trigger(\"error\")\n : (t.timouts = setTimeout(function () {\n o[0].complete || t.hasError || e.showLoading(t);\n }, 150)),\n t.opts.image.protect &&\n n('<div class=\"fancybox-spaceball\"></div>')\n .appendTo(t.$placeholder)\n .on(\"contextmenu.fb\", function (t) {\n return 2 == t.button && t.preventDefault(), !0;\n });\n },\n revealImage: function (t, e) {\n var o = this;\n return (\n (e = e || n.noop),\n \"image\" !== t.type || t.hasError || t.isRevealed === !0\n ? void e.apply(o)\n : ((t.isRevealed = !0),\n void (\n (t.pos === o.currPos &&\n o.zoomInOut(\"In\", t.opts.speed, e)) ||\n (t.$ghost && !t.isLoaded && o.updateSlide(t, !0),\n t.pos === o.currPos\n ? n.fancybox.animate(\n t.$placeholder,\n { opacity: 0 },\n { opacity: 1 },\n 300,\n e\n )\n : t.$placeholder.show(),\n e.apply(o))\n ))\n );\n },\n setIframe: function (t) {\n var e,\n s = this,\n i = t.opts.iframe,\n a = t.$slide;\n (t.$content = n('<div class=\"fancybox-content\"></div>')\n .css(i.css)\n .appendTo(a)),\n (e = n(i.tpl.replace(/\\{rnd\\}/g, new Date().getTime()))\n .attr(\n \"scrolling\",\n n.fancybox.isTouch ? \"auto\" : i.scrolling\n )\n .appendTo(t.$content)),\n i.preload\n ? (t.$content.addClass(\"fancybox-tmp\"),\n s.showLoading(t),\n e.on(\"load.fb error.fb\", function (e) {\n (this.isReady = 1),\n t.$slide.trigger(\"refresh\"),\n s.afterLoad(t);\n }),\n a.on(\"refresh.fb\", function () {\n var n,\n s,\n a,\n r,\n c,\n l = t.$content;\n if (1 === e[0].isReady) {\n try {\n (n = e.contents()), (s = n.find(\"body\"));\n } catch (t) {}\n s &&\n s.length &&\n (i.css.width === o || i.css.height === o) &&\n ((a =\n e[0].contentWindow.document\n .documentElement.scrollWidth),\n (r = Math.ceil(\n s.outerWidth(!0) + (l.width() - a)\n )),\n (c = Math.ceil(s.outerHeight(!0))),\n l.css({\n width:\n i.css.width === o\n ? r +\n (l.outerWidth() -\n l.innerWidth())\n : i.css.width,\n height:\n i.css.height === o\n ? c +\n (l.outerHeight() -\n l.innerHeight())\n : i.css.height,\n })),\n l.removeClass(\"fancybox-tmp\");\n }\n }))\n : this.afterLoad(t),\n e.attr(\"src\", t.src),\n t.opts.smallBtn && t.$content.prepend(t.opts.closeTpl),\n a.one(\"onReset\", function () {\n try {\n n(this)\n .find(\"iframe\")\n .hide()\n .attr(\"src\", \"//about:blank\");\n } catch (t) {}\n n(this).empty(), (t.isLoaded = !1);\n });\n },\n setContent: function (t, e) {\n var o = this;\n o.isClosing ||\n (o.hideLoading(t),\n t.$slide.empty(),\n l(e) && e.parent().length\n ? (e.data(\"placeholder\") &&\n e.parents(\".fancybox-slide\").trigger(\"onReset\"),\n e\n .data({\n placeholder: n(\"<div></div>\")\n .hide()\n .insertAfter(e),\n })\n .css(\"display\", \"inline-block\"))\n : (\"string\" === n.type(e) &&\n ((e = n(\"<div>\").append(e).contents()),\n 3 === e[0].nodeType && (e = n(\"<div>\").html(e))),\n t.opts.selector &&\n (e = n(\"<div>\").html(e).find(t.opts.selector))),\n t.$slide.one(\"onReset\", function () {\n var o = l(e) ? e.data(\"placeholder\") : 0;\n o && (e.hide().replaceAll(o), e.data(\"placeholder\", null)),\n t.hasError || (n(this).empty(), (t.isLoaded = !1));\n }),\n (t.$content = n(e).appendTo(t.$slide)),\n t.opts.smallBtn === !0 &&\n t.$content\n .find(\".fancybox-close-small\")\n .remove()\n .end()\n .eq(0)\n .append(t.opts.closeTpl),\n this.afterLoad(t));\n },\n setError: function (t) {\n (t.hasError = !0), this.setContent(t, t.opts.errorTpl);\n },\n showLoading: function (t) {\n var e = this;\n (t = t || e.current),\n t &&\n !t.$spinner &&\n (t.$spinner = n(e.opts.spinnerTpl).appendTo(t.$slide));\n },\n hideLoading: function (t) {\n var e = this;\n (t = t || e.current),\n t && t.$spinner && (t.$spinner.remove(), delete t.$spinner);\n },\n afterMove: function () {\n var t = this,\n e = t.current,\n o = {};\n e &&\n (e.$slide.siblings().trigger(\"onReset\"),\n n.each(t.slides, function (e, n) {\n n.pos >= t.currPos - 1 && n.pos <= t.currPos + 1\n ? (o[n.pos] = n)\n : n && n.$slide.remove();\n }),\n (t.slides = o),\n t.trigger(\"afterMove\"),\n e.isLoaded && t.complete());\n },\n afterLoad: function (t) {\n var e = this;\n e.isClosing ||\n ((t.isLoading = !1),\n (t.isLoaded = !0),\n e.trigger(\"afterLoad\", t),\n e.hideLoading(t),\n t.$ghost || e.updateSlide(t, !0),\n t.index === e.currIndex && t.isMoved\n ? e.complete()\n : t.$ghost || e.revealImage(t));\n },\n complete: function () {\n var t = this,\n e = t.current;\n t.revealImage(e, function () {\n (e.isComplete = !0),\n e.$slide.addClass(\"fancybox-slide--complete\"),\n t.updateCursor(),\n t.trigger(\"onComplete\"),\n e.opts.focus &&\n \"image\" !== e.type &&\n \"iframe\" !== e.type &&\n t.focus();\n });\n },\n preload: function () {\n var t,\n e,\n n = this;\n n.group.length < 2 ||\n ((t = n.slides[n.currPos + 1]),\n (e = n.slides[n.currPos - 1]),\n t && \"image\" === t.type && n.loadSlide(t),\n e && \"image\" === e.type && n.loadSlide(e));\n },\n focus: function () {\n var t,\n e = this.current;\n (t =\n e && e.isComplete\n ? e.$slide\n .find('button,:input,[tabindex],a:not(\".disabled\")')\n .filter(\":visible:first\")\n : null),\n (t && t.length) || (t = this.$refs.container),\n t.focus(),\n this.$refs.slider_wrap.scrollLeft(0),\n e && e.$slide.scrollTop(0);\n },\n activate: function () {\n var t = this;\n n(\".fancybox-container\").each(function () {\n var e = n(this).data(\"FancyBox\");\n e &&\n e.uid !== t.uid &&\n !e.isClosing &&\n e.trigger(\"onDeactivate\");\n }),\n t.current &&\n (t.$refs.container.index() > 0 &&\n t.$refs.container.prependTo(e.body),\n t.updateControls()),\n t.trigger(\"onActivate\"),\n t.addEvents();\n },\n close: function (t) {\n var e = this,\n o = e.current,\n s = o.opts.speed,\n i = n.proxy(function () {\n e.cleanUp(t);\n }, this);\n return (\n !e.isAnimating &&\n !e.isClosing &&\n (e.trigger(\"beforeClose\", t) === !1\n ? (n.fancybox.stop(e.$refs.slider),\n void u(function () {\n e.update(!0, !0, 150);\n }))\n : ((e.isClosing = !0),\n o.timouts && clearTimeout(o.timouts),\n t !== !0 && n.fancybox.stop(e.$refs.slider),\n e.$refs.container\n .removeClass(\"fancybox-container--active\")\n .addClass(\"fancybox-container--closing\"),\n o.$slide\n .removeClass(\"fancybox-slide--complete\")\n .siblings()\n .remove(),\n o.isMoved || o.$slide.css(\"overflow\", \"visible\"),\n e.removeEvents(),\n e.hideLoading(o),\n e.hideControls(),\n e.updateCursor(),\n e.$refs.bg.css(\"transition-duration\", s + \"ms\"),\n this.$refs.container.removeClass(\n \"fancybox-container--ready\"\n ),\n void (t === !0\n ? setTimeout(i, s)\n : e.zoomInOut(\"Out\", s, i) ||\n n.fancybox.animate(\n e.$refs.container,\n null,\n { opacity: 0 },\n s,\n \"easeInSine\",\n i\n ))))\n );\n },\n cleanUp: function (t) {\n var e,\n o = this;\n o.$refs.slider.children().trigger(\"onReset\"),\n o.$refs.container.empty().remove(),\n o.trigger(\"afterClose\", t),\n (o.current = null),\n (e = n.fancybox.getInstance()),\n e\n ? e.activate()\n : (n(\"html\").removeClass(\"fancybox-enabled\"),\n n(\"body\").removeAttr(\"style\"),\n a.scrollTop(o.scrollTop).scrollLeft(o.scrollLeft),\n n(\"#fancybox-noscroll\").remove()),\n o.$lastFocus && o.$lastFocus.focus();\n },\n trigger: function (t, o) {\n var s,\n i = Array.prototype.slice.call(arguments, 1),\n a = this,\n r = o && o.opts ? o : a.current;\n return (\n r ? i.unshift(r) : (r = a),\n i.unshift(a),\n n.isFunction(r.opts[t]) && (s = r.opts[t].apply(r, i)),\n s === !1\n ? s\n : void (\"afterClose\" === t\n ? n(e).trigger(t + \".fb\", i)\n : a.$refs.container.trigger(t + \".fb\", i))\n );\n },\n toggleControls: function (t) {\n this.isHiddenControls\n ? this.updateControls(t)\n : this.hideControls();\n },\n hideControls: function () {\n (this.isHiddenControls = !0),\n this.$refs.container.removeClass(\"fancybox-show-controls\"),\n this.$refs.container.removeClass(\"fancybox-show-caption\");\n },\n updateControls: function (t) {\n var e = this,\n o = e.$refs.container,\n s = e.$refs.caption,\n i = e.current,\n a = i.index,\n r = i.opts,\n c = r.caption;\n (this.isHiddenControls && t !== !0) ||\n ((this.isHiddenControls = !1),\n o\n .addClass(\"fancybox-show-controls\")\n .toggleClass(\n \"fancybox-show-infobar\",\n !!r.infobar && e.group.length > 1\n )\n .toggleClass(\"fancybox-show-buttons\", !!r.buttons)\n .toggleClass(\"fancybox-is-modal\", !!r.modal),\n n(\".fancybox-button--left\", o).toggleClass(\n \"fancybox-button--disabled\",\n !r.loop && a <= 0\n ),\n n(\".fancybox-button--right\", o).toggleClass(\n \"fancybox-button--disabled\",\n !r.loop && a >= e.group.length - 1\n ),\n n(\".fancybox-button--play\", o).toggle(\n !!(r.slideShow && e.group.length > 1)\n ),\n n(\".fancybox-button--close\", o).toggle(!!r.closeBtn),\n n(\".js-fancybox-count\", o).html(e.group.length),\n n(\".js-fancybox-index\", o).html(a + 1),\n i.$slide.trigger(\"refresh\"),\n s && s.empty(),\n c && c.length\n ? (s.html(c),\n this.$refs.container.addClass(\"fancybox-show-caption \"),\n (e.$caption = s))\n : this.$refs.container.removeClass(\n \"fancybox-show-caption\"\n ));\n },\n }),\n (n.fancybox = {\n version: \"3.0.47\",\n defaults: i,\n getInstance: function (t) {\n var e = n(\n '.fancybox-container:not(\".fancybox-container--closing\"):first'\n ).data(\"FancyBox\"),\n o = Array.prototype.slice.call(arguments, 1);\n return (\n e instanceof p &&\n (\"string\" === n.type(t)\n ? e[t].apply(e, o)\n : \"function\" === n.type(t) && t.apply(e, o),\n e)\n );\n },\n open: function (t, e, n) {\n return new p(t, e, n);\n },\n close: function (t) {\n var e = this.getInstance();\n e && (e.close(), t === !0 && this.close());\n },\n isTouch:\n e.createTouch !== o &&\n /Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(\n navigator.userAgent\n ),\n use3d: (function () {\n var n = e.createElement(\"div\");\n return (\n t.getComputedStyle(n).getPropertyValue(\"transform\") &&\n !(e.documentMode && e.documentMode <= 11)\n );\n })(),\n getTranslate: function (t) {\n var e, n;\n return (\n !(!t || !t.length) &&\n ((e = t.get(0).getBoundingClientRect()),\n (n = t.eq(0).css(\"transform\")),\n n && n.indexOf(\"matrix\") !== -1\n ? ((n = n.split(\"(\")[1]),\n (n = n.split(\")\")[0]),\n (n = n.split(\",\")))\n : (n = []),\n n.length\n ? ((n =\n n.length > 10\n ? [n[13], n[12], n[0], n[5]]\n : [n[5], n[4], n[0], n[3]]),\n (n = n.map(parseFloat)))\n : (n = [0, 0, 1, 1]),\n {\n top: n[0],\n left: n[1],\n scaleX: n[2],\n scaleY: n[3],\n opacity: parseFloat(t.css(\"opacity\")),\n width: e.width,\n height: e.height,\n })\n );\n },\n setTranslate: function (t, e) {\n var n = \"\",\n s = {};\n if (t && e)\n return (\n (e.left === o && e.top === o) ||\n ((n =\n (e.left === o ? t.position().top : e.left) +\n \"px, \" +\n (e.top === o ? t.position().top : e.top) +\n \"px\"),\n (n = this.use3d\n ? \"translate3d(\" + n + \", 0px)\"\n : \"translate(\" + n + \")\")),\n e.scaleX !== o &&\n e.scaleY !== o &&\n (n =\n (n.length ? n + \" \" : \"\") +\n \"scale(\" +\n e.scaleX +\n \", \" +\n e.scaleY +\n \")\"),\n n.length && (s.transform = n),\n e.opacity !== o && (s.opacity = e.opacity),\n e.width !== o && (s.width = e.width),\n e.height !== o && (s.height = e.height),\n t.css(s)\n );\n },\n easing: {\n easeOutCubic: function (t, e, n, o) {\n return n * ((t = t / o - 1) * t * t + 1) + e;\n },\n easeInCubic: function (t, e, n, o) {\n return n * (t /= o) * t * t + e;\n },\n easeOutSine: function (t, e, n, o) {\n return n * Math.sin((t / o) * (Math.PI / 2)) + e;\n },\n easeInSine: function (t, e, n, o) {\n return -n * Math.cos((t / o) * (Math.PI / 2)) + n + e;\n },\n },\n stop: function (t) {\n t.removeData(\"animateID\");\n },\n animate: function (t, e, s, i, a, r) {\n var c,\n l,\n d,\n p = this,\n h = null,\n f = 0,\n g = function () {\n s.scaleX !== o &&\n s.scaleY !== o &&\n e &&\n e.width !== o &&\n e.height !== o &&\n ((s.width = e.width * s.scaleX),\n (s.height = e.height * s.scaleY),\n (s.scaleX = 1),\n (s.scaleY = 1)),\n p.setTranslate(t, s),\n r();\n },\n b = function (n) {\n if (\n ((c = []),\n (l = 0),\n t.length && t.data(\"animateID\") === d)\n ) {\n if (\n ((n = n || Date.now()),\n h && (l = n - h),\n (h = n),\n (f += l),\n f >= i)\n )\n return void g();\n for (var r in s)\n s.hasOwnProperty(r) &&\n e[r] !== o &&\n (e[r] == s[r]\n ? (c[r] = s[r])\n : (c[r] = p.easing[a](\n f,\n e[r],\n s[r] - e[r],\n i\n )));\n p.setTranslate(t, c), u(b);\n }\n };\n (p.animateID = d = p.animateID === o ? 1 : p.animateID + 1),\n t.data(\"animateID\", d),\n r === o && \"function\" == n.type(a) && ((r = a), (a = o)),\n a || (a = \"easeOutCubic\"),\n (r = r || n.noop),\n e ? this.setTranslate(t, e) : (e = this.getTranslate(t)),\n i ? (t.show(), u(b)) : g();\n },\n }),\n (n.fn.fancybox = function (t) {\n return (\n this.off(\"click.fb-start\").on(\n \"click.fb-start\",\n { items: this, options: t || {} },\n s\n ),\n this\n );\n }),\n n(e).on(\"click.fb-start\", \"[data-fancybox]\", s);\n})(window, document, window.jQuery),\n (function (t) {\n \"use strict\";\n var e = function (e, n, o) {\n if (e)\n return (\n (o = o || \"\"),\n \"object\" === t.type(o) && (o = t.param(o, !0)),\n t.each(n, function (t, n) {\n e = e.replace(\"$\" + t, n || \"\");\n }),\n o.length && (e += (e.indexOf(\"?\") > 0 ? \"&\" : \"?\") + o),\n e\n );\n },\n n = {\n youtube: {\n matcher:\n /(youtube\\.com|youtu\\.be|youtube\\-nocookie\\.com)\\/(watch\\?(.*&)?v=|v\\/|u\\/|embed\\/?)?(videoseries\\?list=(.*)|[\\w-]{11}|\\?listType=(.*)&list=(.*))(.*)/i,\n params: {\n autoplay: 1,\n autohide: 1,\n fs: 1,\n rel: 0,\n hd: 1,\n wmode: \"transparent\",\n enablejsapi: 1,\n html5: 1,\n },\n paramPlace: 8,\n type: \"iframe\",\n url: \"//www.youtube.com/embed/$4\",\n thumb: \"//img.youtube.com/vi/$4/hqdefault.jpg\",\n },\n vimeo: {\n matcher: /^.+vimeo.com\\/(.*\\/)?([\\d]+)(.*)?/,\n params: {\n autoplay: 1,\n hd: 1,\n show_title: 1,\n show_byline: 1,\n show_portrait: 0,\n fullscreen: 1,\n api: 1,\n },\n paramPlace: 3,\n type: \"iframe\",\n url: \"//player.vimeo.com/video/$2\",\n },\n metacafe: {\n matcher: /metacafe.com\\/watch\\/(\\d+)\\/(.*)?/,\n type: \"iframe\",\n url: \"//www.metacafe.com/embed/$1/?ap=1\",\n },\n dailymotion: {\n matcher: /dailymotion.com\\/video\\/(.*)\\/?(.*)/,\n params: { additionalInfos: 0, autoStart: 1 },\n type: \"iframe\",\n url: \"//www.dailymotion.com/embed/video/$1\",\n },\n vine: {\n matcher: /vine.co\\/v\\/([a-zA-Z0-9\\?\\=\\-]+)/,\n type: \"iframe\",\n url: \"//vine.co/v/$1/embed/simple\",\n },\n instagram: {\n matcher:\n /(instagr\\.am|instagram\\.com)\\/p\\/([a-zA-Z0-9_\\-]+)\\/?/i,\n type: \"image\",\n url: \"//$1/p/$2/media/?size=l\",\n },\n google_maps: {\n matcher:\n /(maps\\.)?google\\.([a-z]{2,3}(\\.[a-z]{2})?)\\/(((maps\\/(place\\/(.*)\\/)?\\@(.*),(\\d+.?\\d+?)z))|(\\?ll=))(.*)?/i,\n type: \"iframe\",\n url: function (t) {\n return (\n \"//maps.google.\" +\n t[2] +\n \"/?ll=\" +\n (t[9]\n ? t[9] +\n \"&z=\" +\n Math.floor(t[10]) +\n (t[12] ? t[12].replace(/^\\//, \"&\") : \"\")\n : t[12]) +\n \"&output=\" +\n (t[12] && t[12].indexOf(\"layer=c\") > 0\n ? \"svembed\"\n : \"embed\")\n );\n },\n },\n };\n t(document).on(\"onInit.fb\", function (o, s) {\n t.each(s.group, function (o, s) {\n var i,\n a,\n r,\n c,\n l,\n u,\n d = s.src || \"\",\n p = !1;\n s.type ||\n (t.each(n, function (n, o) {\n if (((a = d.match(o.matcher)), (l = {}), (u = n), a)) {\n if (\n ((p = o.type), o.paramPlace && a[o.paramPlace])\n ) {\n (c = a[o.paramPlace]),\n \"?\" == c[0] && (c = c.substring(1)),\n (c = c.split(\"&\"));\n for (var h = 0; h < c.length; ++h) {\n var f = c[h].split(\"=\", 2);\n 2 == f.length &&\n (l[f[0]] = decodeURIComponent(\n f[1].replace(/\\+/g, \" \")\n ));\n }\n }\n return (\n (r = t.extend(!0, {}, o.params, s.opts[n], l)),\n (d =\n \"function\" === t.type(o.url)\n ? o.url.call(this, a, r, s)\n : e(o.url, a, r)),\n (i =\n \"function\" === t.type(o.thumb)\n ? o.thumb.call(this, a, r, s)\n : e(o.thumb, a)),\n \"vimeo\" === u && (d = d.replace(\"&%23\", \"#\")),\n !1\n );\n }\n }),\n p\n ? ((s.src = d),\n (s.type = p),\n s.opts.thumb ||\n (s.opts.$thumb && s.opts.$thumb.length) ||\n (s.opts.thumb = i),\n \"iframe\" === p &&\n (t.extend(!0, s.opts, {\n iframe: { preload: !1, scrolling: \"no\" },\n smallBtn: !1,\n closeBtn: !0,\n fullScreen: !1,\n slideShow: !1,\n }),\n (s.opts.slideClass += \" fancybox-slide--video\")))\n : (s.type = \"iframe\"));\n });\n });\n })(window.jQuery),\n (function (t, e, n) {\n \"use strict\";\n var o = (function () {\n return (\n t.requestAnimationFrame ||\n t.webkitRequestAnimationFrame ||\n t.mozRequestAnimationFrame ||\n function (e) {\n t.setTimeout(e, 1e3 / 60);\n }\n );\n })(),\n s = function (e) {\n var n = [];\n (e = e.originalEvent || e || t.e),\n (e =\n e.touches && e.touches.length\n ? e.touches\n : e.changedTouches && e.changedTouches.length\n ? e.changedTouches\n : [e]);\n for (var o in e)\n e[o].pageX\n ? n.push({ x: e[o].pageX, y: e[o].pageY })\n : e[o].clientX &&\n n.push({ x: e[o].clientX, y: e[o].clientY });\n return n;\n },\n i = function (t, e, n) {\n return e && t\n ? \"x\" === n\n ? t.x - e.x\n : \"y\" === n\n ? t.y - e.y\n : Math.sqrt(\n Math.pow(t.x - e.x, 2) + Math.pow(t.y - e.y, 2)\n )\n : 0;\n },\n a = function (t) {\n return (\n t.is(\"a\") ||\n t.is(\"button\") ||\n t.is(\"input\") ||\n t.is(\"select\") ||\n t.is(\"textarea\") ||\n n.isFunction(t.get(0).onclick)\n );\n },\n r = function (e) {\n var n = t.getComputedStyle(e)[\"overflow-y\"],\n o = t.getComputedStyle(e)[\"overflow-x\"],\n s =\n (\"scroll\" === n || \"auto\" === n) &&\n e.scrollHeight > e.clientHeight,\n i =\n (\"scroll\" === o || \"auto\" === o) &&\n e.scrollWidth > e.clientWidth;\n return s || i;\n },\n c = function (t) {\n for (var e = !1; ; ) {\n if ((e = r(t.get(0)))) break;\n if (\n ((t = t.parent()),\n !t.length ||\n t.hasClass(\"fancybox-slider\") ||\n t.is(\"body\"))\n )\n break;\n }\n return e;\n },\n l = function (t) {\n var e = this;\n (e.instance = t),\n (e.$wrap = t.$refs.slider_wrap),\n (e.$slider = t.$refs.slider),\n (e.$container = t.$refs.container),\n e.destroy(),\n e.$wrap.on(\n \"touchstart.fb mousedown.fb\",\n n.proxy(e, \"ontouchstart\")\n );\n };\n (l.prototype.destroy = function () {\n this.$wrap.off(\n \"touchstart.fb mousedown.fb touchmove.fb mousemove.fb touchend.fb touchcancel.fb mouseup.fb mouseleave.fb\"\n );\n }),\n (l.prototype.ontouchstart = function (e) {\n var o = this,\n r = n(e.target),\n l = o.instance,\n u = l.current,\n d = u.$content || u.$placeholder;\n return (\n (o.startPoints = s(e)),\n (o.$target = r),\n (o.$content = d),\n (o.canvasWidth = Math.round(u.$slide[0].clientWidth)),\n (o.canvasHeight = Math.round(u.$slide[0].clientHeight)),\n (o.startEvent = e),\n e.originalEvent.clientX >\n o.canvasWidth + u.$slide.offset().left ||\n (a(r) || a(r.parent()) || c(r)\n ? void 0\n : u.opts.touch\n ? void (\n (e.originalEvent &&\n 2 == e.originalEvent.button) ||\n (e.stopPropagation(),\n e.preventDefault(),\n !u ||\n o.instance.isAnimating ||\n o.instance.isClosing ||\n !o.startPoints ||\n (o.startPoints.length > 1 &&\n !u.isMoved) ||\n (o.$wrap.off(\n \"touchmove.fb mousemove.fb\",\n n.proxy(o, \"ontouchmove\")\n ),\n o.$wrap.off(\n \"touchend.fb touchcancel.fb mouseup.fb mouseleave.fb\",\n n.proxy(o, \"ontouchend\")\n ),\n o.$wrap.on(\n \"touchend.fb touchcancel.fb mouseup.fb mouseleave.fb\",\n n.proxy(o, \"ontouchend\")\n ),\n o.$wrap.on(\n \"touchmove.fb mousemove.fb\",\n n.proxy(o, \"ontouchmove\")\n ),\n (o.startTime = new Date().getTime()),\n (o.distanceX =\n o.distanceY =\n o.distance =\n 0),\n (o.canTap = !1),\n (o.isPanning = !1),\n (o.isSwiping = !1),\n (o.isZooming = !1),\n (o.sliderStartPos =\n n.fancybox.getTranslate(o.$slider)),\n (o.contentStartPos =\n n.fancybox.getTranslate(o.$content)),\n (o.contentLastPos = null),\n 1 !== o.startPoints.length ||\n o.isZooming ||\n ((o.canTap = u.isMoved),\n \"image\" === u.type &&\n (o.contentStartPos.width >\n o.canvasWidth + 1 ||\n o.contentStartPos.height >\n o.canvasHeight + 1)\n ? (n.fancybox.stop(o.$content),\n (o.isPanning = !0))\n : (n.fancybox.stop(o.$slider),\n (o.isSwiping = !0)),\n o.$container.addClass(\n \"fancybox-controls--isGrabbing\"\n )),\n 2 === o.startPoints.length &&\n u.isMoved &&\n !u.hasError &&\n \"image\" === u.type &&\n (u.isLoaded || u.$ghost) &&\n ((o.isZooming = !0),\n (o.isSwiping = !1),\n (o.isPanning = !1),\n n.fancybox.stop(o.$content),\n (o.centerPointStartX =\n 0.5 *\n (o.startPoints[0].x +\n o.startPoints[1].x) -\n n(t).scrollLeft()),\n (o.centerPointStartY =\n 0.5 *\n (o.startPoints[0].y +\n o.startPoints[1].y) -\n n(t).scrollTop()),\n (o.percentageOfImageAtPinchPointX =\n (o.centerPointStartX -\n o.contentStartPos.left) /\n o.contentStartPos.width),\n (o.percentageOfImageAtPinchPointY =\n (o.centerPointStartY -\n o.contentStartPos.top) /\n o.contentStartPos.height),\n (o.startDistanceBetweenFingers = i(\n o.startPoints[0],\n o.startPoints[1]\n )))))\n )\n : ((o.endPoints = o.startPoints), o.ontap()))\n );\n }),\n (l.prototype.ontouchmove = function (t) {\n var e = this;\n t.preventDefault(),\n (e.newPoints = s(t)),\n e.newPoints &&\n e.newPoints.length &&\n ((e.distanceX = i(\n e.newPoints[0],\n e.startPoints[0],\n \"x\"\n )),\n (e.distanceY = i(\n e.newPoints[0],\n e.startPoints[0],\n \"y\"\n )),\n (e.distance = i(e.newPoints[0], e.startPoints[0])),\n e.distance > 0 &&\n (e.isSwiping\n ? e.onSwipe()\n : e.isPanning\n ? e.onPan()\n : e.isZooming && e.onZoom()));\n }),\n (l.prototype.onSwipe = function () {\n var e,\n s = this,\n i = s.isSwiping,\n a = s.sliderStartPos.left;\n i === !0\n ? Math.abs(s.distance) > 10 &&\n (s.instance.group.length < 2\n ? (s.isSwiping = \"y\")\n : !s.instance.current.isMoved ||\n s.instance.opts.touch.vertical === !1 ||\n (\"auto\" === s.instance.opts.touch.vertical &&\n n(t).width() > 800)\n ? (s.isSwiping = \"x\")\n : ((e = Math.abs(\n (180 * Math.atan2(s.distanceY, s.distanceX)) /\n Math.PI\n )),\n (s.isSwiping = e > 45 && e < 135 ? \"y\" : \"x\")),\n (s.canTap = !1),\n (s.instance.current.isMoved = !1),\n (s.startPoints = s.newPoints))\n : (\"x\" == i &&\n (!s.instance.current.opts.loop &&\n 0 === s.instance.current.index &&\n s.distanceX > 0\n ? (a += Math.pow(s.distanceX, 0.8))\n : !s.instance.current.opts.loop &&\n s.instance.current.index ===\n s.instance.group.length - 1 &&\n s.distanceX < 0\n ? (a -= Math.pow(-s.distanceX, 0.8))\n : (a += s.distanceX)),\n (s.sliderLastPos = {\n top:\n \"x\" == i ? 0 : s.sliderStartPos.top + s.distanceY,\n left: a,\n }),\n o(function () {\n n.fancybox.setTranslate(s.$slider, s.sliderLastPos);\n }));\n }),\n (l.prototype.onPan = function () {\n var t,\n e,\n s,\n i = this;\n (i.canTap = !1),\n (t =\n i.contentStartPos.width > i.canvasWidth\n ? i.contentStartPos.left + i.distanceX\n : i.contentStartPos.left),\n (e = i.contentStartPos.top + i.distanceY),\n (s = i.limitMovement(\n t,\n e,\n i.contentStartPos.width,\n i.contentStartPos.height\n )),\n (s.scaleX = i.contentStartPos.scaleX),\n (s.scaleY = i.contentStartPos.scaleY),\n (i.contentLastPos = s),\n o(function () {\n n.fancybox.setTranslate(i.$content, i.contentLastPos);\n });\n }),\n (l.prototype.limitMovement = function (t, e, n, o) {\n var s,\n i,\n a,\n r,\n c = this,\n l = c.canvasWidth,\n u = c.canvasHeight,\n d = c.contentStartPos.left,\n p = c.contentStartPos.top,\n h = c.distanceX,\n f = c.distanceY;\n return (\n (s = Math.max(0, 0.5 * l - 0.5 * n)),\n (i = Math.max(0, 0.5 * u - 0.5 * o)),\n (a = Math.min(l - n, 0.5 * l - 0.5 * n)),\n (r = Math.min(u - o, 0.5 * u - 0.5 * o)),\n n > l &&\n (h > 0 &&\n t > s &&\n (t = s - 1 + Math.pow(-s + d + h, 0.8) || 0),\n h < 0 &&\n t < a &&\n (t = a + 1 - Math.pow(a - d - h, 0.8) || 0)),\n o > u &&\n (f > 0 &&\n e > i &&\n (e = i - 1 + Math.pow(-i + p + f, 0.8) || 0),\n f < 0 &&\n e < r &&\n (e = r + 1 - Math.pow(r - p - f, 0.8) || 0)),\n { top: e, left: t }\n );\n }),\n (l.prototype.limitPosition = function (t, e, n, o) {\n var s = this,\n i = s.canvasWidth,\n a = s.canvasHeight;\n return (\n n > i\n ? ((t = t > 0 ? 0 : t), (t = t < i - n ? i - n : t))\n : (t = Math.max(0, i / 2 - n / 2)),\n o > a\n ? ((e = e > 0 ? 0 : e), (e = e < a - o ? a - o : e))\n : (e = Math.max(0, a / 2 - o / 2)),\n { top: e, left: t }\n );\n }),\n (l.prototype.onZoom = function () {\n var e = this,\n s = e.contentStartPos.width,\n a = e.contentStartPos.height,\n r = e.contentStartPos.left,\n c = e.contentStartPos.top,\n l = i(e.newPoints[0], e.newPoints[1]),\n u = l / e.startDistanceBetweenFingers,\n d = Math.floor(s * u),\n p = Math.floor(a * u),\n h = (s - d) * e.percentageOfImageAtPinchPointX,\n f = (a - p) * e.percentageOfImageAtPinchPointY,\n g =\n (e.newPoints[0].x + e.newPoints[1].x) / 2 -\n n(t).scrollLeft(),\n b =\n (e.newPoints[0].y + e.newPoints[1].y) / 2 -\n n(t).scrollTop(),\n m = g - e.centerPointStartX,\n y = b - e.centerPointStartY,\n v = r + (h + m),\n x = c + (f + y),\n w = {\n top: x,\n left: v,\n scaleX: e.contentStartPos.scaleX * u,\n scaleY: e.contentStartPos.scaleY * u,\n };\n (e.canTap = !1),\n (e.newWidth = d),\n (e.newHeight = p),\n (e.contentLastPos = w),\n o(function () {\n n.fancybox.setTranslate(e.$content, e.contentLastPos);\n });\n }),\n (l.prototype.ontouchend = function (t) {\n var e = this,\n o = e.instance.current,\n i = Math.max(new Date().getTime() - e.startTime, 1),\n a = e.isSwiping,\n r = e.isPanning,\n c = e.isZooming;\n return (\n (e.endPoints = s(t)),\n e.$container.removeClass(\"fancybox-controls--isGrabbing\"),\n e.$wrap.off(\n \"touchmove.fb mousemove.fb\",\n n.proxy(this, \"ontouchmove\")\n ),\n e.$wrap.off(\n \"touchend.fb touchcancel.fb mouseup.fb mouseleave.fb\",\n n.proxy(this, \"ontouchend\")\n ),\n (e.isSwiping = !1),\n (e.isPanning = !1),\n (e.isZooming = !1),\n e.canTap\n ? e.ontap()\n : ((e.velocityX = (e.distanceX / i) * 0.5),\n (e.velocityY = (e.distanceY / i) * 0.5),\n (e.speed = o.opts.speed || 330),\n (e.speedX = Math.max(\n 0.75 * e.speed,\n Math.min(\n 1.5 * e.speed,\n (1 / Math.abs(e.velocityX)) * e.speed\n )\n )),\n (e.speedY = Math.max(\n 0.75 * e.speed,\n Math.min(\n 1.5 * e.speed,\n (1 / Math.abs(e.velocityY)) * e.speed\n )\n )),\n void (r\n ? e.endPanning()\n : c\n ? e.endZooming()\n : e.endSwiping(a)))\n );\n }),\n (l.prototype.endSwiping = function (t) {\n var e = this;\n \"y\" == t && Math.abs(e.distanceY) > 50\n ? (n.fancybox.animate(\n e.$slider,\n null,\n {\n top:\n e.sliderStartPos.top +\n e.distanceY +\n 150 * e.velocityY,\n left: e.sliderStartPos.left,\n opacity: 0,\n },\n e.speedY\n ),\n e.instance.close(!0))\n : \"x\" == t && e.distanceX > 50\n ? e.instance.previous(e.speedX)\n : \"x\" == t && e.distanceX < -50\n ? e.instance.next(e.speedX)\n : e.instance.update(!1, !0, 150);\n }),\n (l.prototype.endPanning = function () {\n var t,\n e,\n o,\n s = this;\n s.contentLastPos &&\n ((t = s.contentLastPos.left + s.velocityX * s.speed * 2),\n (e = s.contentLastPos.top + s.velocityY * s.speed * 2),\n (o = s.limitPosition(\n t,\n e,\n s.contentStartPos.width,\n s.contentStartPos.height\n )),\n (o.width = s.contentStartPos.width),\n (o.height = s.contentStartPos.height),\n n.fancybox.animate(\n s.$content,\n null,\n o,\n s.speed,\n \"easeOutSine\"\n ));\n }),\n (l.prototype.endZooming = function () {\n var t,\n e,\n o,\n s,\n i = this,\n a = i.instance.current,\n r = i.newWidth,\n c = i.newHeight;\n i.contentLastPos &&\n ((t = i.contentLastPos.left),\n (e = i.contentLastPos.top),\n (s = {\n top: e,\n left: t,\n width: r,\n height: c,\n scaleX: 1,\n scaleY: 1,\n }),\n n.fancybox.setTranslate(i.$content, s),\n r < i.canvasWidth && c < i.canvasHeight\n ? i.instance.scaleToFit(150)\n : r > a.width || c > a.height\n ? i.instance.scaleToActual(\n i.centerPointStartX,\n i.centerPointStartY,\n 150\n )\n : ((o = i.limitPosition(t, e, r, c)),\n n.fancybox.animate(\n i.$content,\n null,\n o,\n i.speed,\n \"easeOutSine\"\n )));\n }),\n (l.prototype.ontap = function () {\n var t = this,\n e = t.instance,\n o = e.current,\n s = t.endPoints[0].x,\n i = t.endPoints[0].y;\n if (\n ((s -= t.$wrap.offset().left),\n (i -= t.$wrap.offset().top),\n e.SlideShow && e.SlideShow.isActive && e.SlideShow.stop(),\n !n.fancybox.isTouch)\n )\n return o.opts.closeClickOutside &&\n t.$target.is(\".fancybox-slide\")\n ? void e.close(t.startEvent)\n : void (\n \"image\" == o.type &&\n o.isMoved &&\n (e.canPan()\n ? e.scaleToFit()\n : e.isScaledDown()\n ? e.scaleToActual(s, i)\n : e.group.length < 2 && e.close(t.startEvent))\n );\n if (t.tapped) {\n if (\n (clearTimeout(t.tapped),\n (t.tapped = null),\n Math.abs(s - t.x) > 50 ||\n Math.abs(i - t.y) > 50 ||\n !o.isMoved)\n )\n return this;\n \"image\" == o.type &&\n (o.isLoaded || o.$ghost) &&\n (e.canPan()\n ? e.scaleToFit()\n : e.isScaledDown() && e.scaleToActual(s, i));\n } else\n (t.x = s),\n (t.y = i),\n (t.tapped = setTimeout(function () {\n (t.tapped = null), e.toggleControls(!0);\n }, 300));\n return this;\n }),\n n(e).on(\"onActivate.fb\", function (t, e) {\n e && !e.Guestures && (e.Guestures = new l(e));\n }),\n n(e).on(\"beforeClose.fb\", function (t, e) {\n e && e.Guestures && e.Guestures.destroy();\n });\n })(window, document, window.jQuery),\n (function (t, e) {\n \"use strict\";\n var n = function (t) {\n (this.instance = t), this.init();\n };\n e.extend(n.prototype, {\n timer: null,\n isActive: !1,\n $button: null,\n speed: 3e3,\n init: function () {\n var t = this;\n (t.$button = e(\n '<button data-fancybox-play class=\"fancybox-button fancybox-button--play\" title=\"Slideshow (P)\"></button>'\n ).appendTo(t.instance.$refs.buttons)),\n t.instance.$refs.container.on(\n \"click\",\n \"[data-fancybox-play]\",\n function () {\n t.toggle();\n }\n );\n },\n set: function () {\n var t = this;\n t.instance &&\n t.instance.current &&\n (t.instance.current.opts.loop ||\n t.instance.currIndex < t.instance.group.length - 1)\n ? (t.timer = setTimeout(function () {\n t.instance.next();\n }, t.instance.current.opts.slideShow.speed || t.speed))\n : t.stop();\n },\n clear: function () {\n var t = this;\n clearTimeout(t.timer), (t.timer = null);\n },\n start: function () {\n var t = this;\n t.stop(),\n t.instance &&\n t.instance.current &&\n (t.instance.current.opts.loop ||\n t.instance.currIndex <\n t.instance.group.length - 1) &&\n (t.instance.$refs.container.on({\n \"beforeLoad.fb.player\": e.proxy(t, \"clear\"),\n \"onComplete.fb.player\": e.proxy(t, \"set\"),\n }),\n (t.isActive = !0),\n t.instance.current.isComplete && t.set(),\n t.instance.$refs.container.trigger(\"onPlayStart\"),\n t.$button.addClass(\"fancybox-button--pause\"));\n },\n stop: function () {\n var t = this;\n t.clear(),\n t.instance.$refs.container\n .trigger(\"onPlayEnd\")\n .off(\".player\"),\n t.$button.removeClass(\"fancybox-button--pause\"),\n (t.isActive = !1);\n },\n toggle: function () {\n var t = this;\n t.isActive ? t.stop() : t.start();\n },\n }),\n e(t).on(\"onInit.fb\", function (t, e) {\n e &&\n e.group.length > 1 &&\n e.opts.slideShow &&\n !e.SlideShow &&\n (e.SlideShow = new n(e));\n }),\n e(t).on(\"beforeClose.fb onDeactivate.fb\", function (t, e) {\n e && e.SlideShow && e.SlideShow.stop();\n });\n })(document, window.jQuery),\n (function (t, e) {\n \"use strict\";\n var n = (function () {\n var e,\n n,\n o,\n s = [\n [\n \"requestFullscreen\",\n \"exitFullscreen\",\n \"fullscreenElement\",\n \"fullscreenEnabled\",\n \"fullscreenchange\",\n \"fullscreenerror\",\n ],\n [\n \"webkitRequestFullscreen\",\n \"webkitExitFullscreen\",\n \"webkitFullscreenElement\",\n \"webkitFullscreenEnabled\",\n \"webkitfullscreenchange\",\n \"webkitfullscreenerror\",\n ],\n [\n \"webkitRequestFullScreen\",\n \"webkitCancelFullScreen\",\n \"webkitCurrentFullScreenElement\",\n \"webkitCancelFullScreen\",\n \"webkitfullscreenchange\",\n \"webkitfullscreenerror\",\n ],\n [\n \"mozRequestFullScreen\",\n \"mozCancelFullScreen\",\n \"mozFullScreenElement\",\n \"mozFullScreenEnabled\",\n \"mozfullscreenchange\",\n \"mozfullscreenerror\",\n ],\n [\n \"msRequestFullscreen\",\n \"msExitFullscreen\",\n \"msFullscreenElement\",\n \"msFullscreenEnabled\",\n \"MSFullscreenChange\",\n \"MSFullscreenError\",\n ],\n ],\n i = {};\n for (n = 0; n < s.length; n++)\n if (((e = s[n]), e && e[1] in t)) {\n for (o = 0; o < e.length; o++) i[s[0][o]] = e[o];\n return i;\n }\n return !1;\n })();\n if (n) {\n var o = {\n request: function (e) {\n (e = e || t.documentElement),\n e[n.requestFullscreen](e.ALLOW_KEYBOARD_INPUT);\n },\n exit: function () {\n t[n.exitFullscreen]();\n },\n toggle: function (t) {\n this.isFullscreen() ? this.exit() : this.request(t);\n },\n isFullscreen: function () {\n return Boolean(t[n.fullscreenElement]);\n },\n enabled: function () {\n return Boolean(t[n.fullscreenEnabled]);\n },\n };\n e(t).on({\n \"onInit.fb\": function (t, n) {\n var s;\n n &&\n n.opts.fullScreen &&\n !n.FullScreen &&\n ((s = n.$refs.container),\n (n.$refs.button_fs = e(\n '<button data-fancybox-fullscreen class=\"fancybox-button fancybox-button--fullscreen\" title=\"Full screen (F)\"></button>'\n ).appendTo(n.$refs.buttons)),\n s.on(\n \"click.fb-fullscreen\",\n \"[data-fancybox-fullscreen]\",\n function (t) {\n t.stopPropagation(),\n t.preventDefault(),\n o.toggle(s[0]);\n }\n ),\n n.opts.fullScreen.requestOnStart === !0 &&\n o.request(s[0]));\n },\n \"beforeMove.fb\": function (t, e) {\n e &&\n e.$refs.button_fs &&\n e.$refs.button_fs.toggle(!!e.current.opts.fullScreen);\n },\n \"beforeClose.fb\": function () {\n o.exit();\n },\n }),\n e(t).on(n.fullscreenchange, function () {\n var t = e.fancybox.getInstance(),\n n = t ? t.current.$placeholder : null;\n n &&\n (n.css(\"transition\", \"none\"),\n (t.isAnimating = !1),\n t.update(!0, !0, 0));\n });\n }\n })(document, window.jQuery),\n (function (t, e) {\n \"use strict\";\n var n = function (t) {\n (this.instance = t), this.init();\n };\n e.extend(n.prototype, {\n $button: null,\n $grid: null,\n $list: null,\n isVisible: !1,\n init: function () {\n var t = this;\n t.$button = e(\n '<button data-fancybox-thumbs class=\"fancybox-button fancybox-button--thumbs\" title=\"Thumbnails (G)\"></button>'\n )\n .appendTo(this.instance.$refs.buttons)\n .on(\"touchend click\", function (e) {\n e.stopPropagation(), e.preventDefault(), t.toggle();\n });\n },\n create: function () {\n var t,\n n,\n o = this.instance;\n (this.$grid = e('<div class=\"fancybox-thumbs\"></div>').appendTo(\n o.$refs.container\n )),\n (t = \"<ul>\"),\n e.each(o.group, function (e, o) {\n (n =\n o.opts.thumb ||\n (o.opts.$thumb ? o.opts.$thumb.attr(\"src\") : null)),\n n || \"image\" !== o.type || (n = o.src),\n n &&\n n.length &&\n (t +=\n '<li data-index=\"' +\n e +\n '\" tabindex=\"0\" class=\"fancybox-thumbs-loading\"><img data-src=\"' +\n n +\n '\" /></li>');\n }),\n (t += \"</ul>\"),\n (this.$list = e(t)\n .appendTo(this.$grid)\n .on(\"click touchstart\", \"li\", function () {\n o.jumpTo(e(this).data(\"index\"));\n })),\n this.$list\n .find(\"img\")\n .hide()\n .one(\"load\", function () {\n var t,\n n,\n o,\n s,\n i = e(this)\n .parent()\n .removeClass(\"fancybox-thumbs-loading\"),\n a = i.outerWidth(),\n r = i.outerHeight();\n (t = this.naturalWidth || this.width),\n (n = this.naturalHeight || this.height),\n (o = t / a),\n (s = n / r),\n o >= 1 &&\n s >= 1 &&\n (o > s\n ? ((t /= s), (n = r))\n : ((t = a), (n /= o))),\n e(this)\n .css({\n width: Math.floor(t),\n height: Math.floor(n),\n \"margin-top\": Math.min(\n 0,\n Math.floor(0.3 * r - 0.3 * n)\n ),\n \"margin-left\": Math.min(\n 0,\n Math.floor(0.5 * a - 0.5 * t)\n ),\n })\n .show();\n })\n .each(function () {\n this.src = e(this).data(\"src\");\n });\n },\n focus: function () {\n this.instance.current &&\n this.$list\n .children()\n .removeClass(\"fancybox-thumbs-active\")\n .filter(\n '[data-index=\"' + this.instance.current.index + '\"]'\n )\n .addClass(\"fancybox-thumbs-active\")\n .focus();\n },\n close: function () {\n this.$grid.hide();\n },\n update: function () {\n this.instance.$refs.container.toggleClass(\n \"fancybox-container--thumbs\",\n this.isVisible\n ),\n this.isVisible\n ? (this.$grid || this.create(),\n this.$grid.show(),\n this.focus())\n : this.$grid && this.$grid.hide(),\n this.instance.update();\n },\n hide: function () {\n (this.isVisible = !1), this.update();\n },\n show: function () {\n (this.isVisible = !0), this.update();\n },\n toggle: function () {\n this.isVisible ? this.hide() : this.show();\n },\n }),\n e(t).on(\"onInit.fb\", function (t, e) {\n var o = e.group[0],\n s = e.group[1];\n e.opts.thumbs &&\n !e.Thumbs &&\n e.group.length > 1 &&\n (\"image\" == o.type || o.opts.thumb || o.opts.$thumb) &&\n (\"image\" == s.type || s.opts.thumb || s.opts.$thumb) &&\n (e.Thumbs = new n(e));\n }),\n e(t).on(\"beforeMove.fb\", function (t, e, n) {\n var o = e && e.Thumbs;\n o &&\n (n.modal\n ? (o.$button.hide(), o.hide())\n : (e.opts.thumbs.showOnStart === !0 &&\n e.firstRun &&\n o.show(),\n o.$button.show(),\n o.isVisible && o.focus()));\n }),\n e(t).on(\"beforeClose.fb\", function (t, e) {\n e &&\n e.Thumbs &&\n (e.Thumbs.isVisible &&\n e.opts.thumbs.hideOnClosing !== !1 &&\n e.Thumbs.close(),\n (e.Thumbs = null));\n });\n })(document, window.jQuery),\n (function (t, e, n) {\n \"use strict\";\n function o() {\n var t = e.location.hash.substr(1),\n n = t.split(\"-\"),\n o =\n n.length > 1 && /^\\+?\\d+$/.test(n[n.length - 1])\n ? parseInt(n.pop(-1), 10) || 1\n : 1,\n s = n.join(\"-\");\n return o < 1 && (o = 1), { hash: t, index: o, gallery: s };\n }\n function s(t) {\n var e;\n \"\" !== t.gallery &&\n ((e = n(\n \"[data-fancybox='\" + n.escapeSelector(t.gallery) + \"']\"\n ).eq(t.index - 1)),\n e.length\n ? e.trigger(\"click\")\n : n(\"#\" + n.escapeSelector(t.gallery)).trigger(\"click\"));\n }\n function i(t) {\n var e;\n return (\n !!t &&\n ((e = t.current ? t.current.opts : t.opts),\n e.$orig ? e.$orig.data(\"fancybox\") : e.hash || \"\")\n );\n }\n n.escapeSelector ||\n (n.escapeSelector = function (t) {\n var e = /([\\0-\\x1f\\x7f]|^-?\\d)|^-$|[^\\x80-\\uFFFF\\w-]/g,\n n = function (t, e) {\n return e\n ? \"\\0\" === t\n ? \"�\"\n : t.slice(0, -1) +\n \"\\\\\" +\n t.charCodeAt(t.length - 1).toString(16) +\n \" \"\n : \"\\\\\" + t;\n };\n return (t + \"\").replace(e, n);\n });\n var a = null;\n n(function () {\n setTimeout(function () {\n n.fancybox.defaults.hash !== !1 &&\n (n(e).on(\"hashchange.fb\", function () {\n var t = o();\n n.fancybox.getInstance()\n ? a &&\n a !== t.gallery + \"-\" + t.index &&\n ((a = null), n.fancybox.close())\n : \"\" !== t.gallery && s(t);\n }),\n n(t).on({\n \"onInit.fb\": function (t, e) {\n var n = o(),\n s = i(e);\n s &&\n n.gallery &&\n s == n.gallery &&\n (e.currIndex = n.index - 1);\n },\n \"beforeMove.fb\": function (n, o, s) {\n var r = i(o);\n r &&\n \"\" !== r &&\n (e.location.hash.indexOf(r) < 0 &&\n (o.opts.origHash = e.location.hash),\n (a =\n r +\n (o.group.length > 1\n ? \"-\" + (s.index + 1)\n : \"\")),\n \"pushState\" in history\n ? history.pushState(\n \"\",\n t.title,\n e.location.pathname +\n e.location.search +\n \"#\" +\n a\n )\n : (e.location.hash = a));\n },\n \"beforeClose.fb\": function (n, o, s) {\n var r = i(o),\n c = o && o.opts.origHash ? o.opts.origHash : \"\";\n r &&\n \"\" !== r &&\n (\"pushState\" in history\n ? history.pushState(\n \"\",\n t.title,\n e.location.pathname +\n e.location.search +\n c\n )\n : (e.location.hash = c)),\n (a = null);\n },\n }),\n s(o()));\n }, 50);\n });\n })(document, window, window.jQuery);\n","/**\n * Swiper 8.0.7\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * https://swiperjs.com\n *\n * Copyright 2014-2022 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: March 4, 2022\n */\n\n!(function (e, t) {\n 'object' == typeof exports && 'undefined' != typeof module\n ? (module.exports = t())\n : 'function' == typeof define && define.amd\n ? define(t)\n : ((e =\n 'undefined' != typeof globalThis\n ? globalThis\n : e || self).Swiper = t())\n})(this, function () {\n 'use strict'\n function e(e) {\n return (\n null !== e &&\n 'object' == typeof e &&\n 'constructor' in e &&\n e.constructor === Object\n )\n }\n function t(s, a) {\n void 0 === s && (s = {}),\n void 0 === a && (a = {}),\n Object.keys(a).forEach((i) => {\n void 0 === s[i]\n ? (s[i] = a[i])\n : e(a[i]) &&\n e(s[i]) &&\n Object.keys(a[i]).length > 0 &&\n t(s[i], a[i])\n })\n }\n const s = {\n body: {},\n addEventListener() {},\n removeEventListener() {},\n activeElement: { blur() {}, nodeName: '' },\n querySelector: () => null,\n querySelectorAll: () => [],\n getElementById: () => null,\n createEvent: () => ({ initEvent() {} }),\n createElement: () => ({\n children: [],\n childNodes: [],\n style: {},\n setAttribute() {},\n getElementsByTagName: () => [],\n }),\n createElementNS: () => ({}),\n importNode: () => null,\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n }\n function a() {\n const e = 'undefined' != typeof document ? document : {}\n return t(e, s), e\n }\n const i = {\n document: s,\n navigator: { userAgent: '' },\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n history: { replaceState() {}, pushState() {}, go() {}, back() {} },\n CustomEvent: function () {\n return this\n },\n addEventListener() {},\n removeEventListener() {},\n getComputedStyle: () => ({ getPropertyValue: () => '' }),\n Image() {},\n Date() {},\n screen: {},\n setTimeout() {},\n clearTimeout() {},\n matchMedia: () => ({}),\n requestAnimationFrame: (e) =>\n 'undefined' == typeof setTimeout ? (e(), null) : setTimeout(e, 0),\n cancelAnimationFrame(e) {\n 'undefined' != typeof setTimeout && clearTimeout(e)\n },\n }\n function r() {\n const e = 'undefined' != typeof window ? window : {}\n return t(e, i), e\n }\n class n extends Array {\n constructor(e) {\n 'number' == typeof e\n ? super(e)\n : (super(...(e || [])),\n (function (e) {\n const t = e.__proto__\n Object.defineProperty(e, '__proto__', {\n get: () => t,\n set(e) {\n t.__proto__ = e\n },\n })\n })(this))\n }\n }\n function l(e) {\n void 0 === e && (e = [])\n const t = []\n return (\n e.forEach((e) => {\n Array.isArray(e) ? t.push(...l(e)) : t.push(e)\n }),\n t\n )\n }\n function o(e, t) {\n return Array.prototype.filter.call(e, t)\n }\n function d(e, t) {\n const s = r(),\n i = a()\n let l = []\n if (!t && e instanceof n) return e\n if (!e) return new n(l)\n if ('string' == typeof e) {\n const s = e.trim()\n if (s.indexOf('<') >= 0 && s.indexOf('>') >= 0) {\n let e = 'div'\n 0 === s.indexOf('<li') && (e = 'ul'),\n 0 === s.indexOf('<tr') && (e = 'tbody'),\n (0 !== s.indexOf('<td') && 0 !== s.indexOf('<th')) ||\n (e = 'tr'),\n 0 === s.indexOf('<tbody') && (e = 'table'),\n 0 === s.indexOf('<option') && (e = 'select')\n const t = i.createElement(e)\n t.innerHTML = s\n for (let e = 0; e < t.childNodes.length; e += 1)\n l.push(t.childNodes[e])\n } else\n l = (function (e, t) {\n if ('string' != typeof e) return [e]\n const s = [],\n a = t.querySelectorAll(e)\n for (let e = 0; e < a.length; e += 1) s.push(a[e])\n return s\n })(e.trim(), t || i)\n } else if (e.nodeType || e === s || e === i) l.push(e)\n else if (Array.isArray(e)) {\n if (e instanceof n) return e\n l = e\n }\n return new n(\n (function (e) {\n const t = []\n for (let s = 0; s < e.length; s += 1)\n -1 === t.indexOf(e[s]) && t.push(e[s])\n return t\n })(l)\n )\n }\n d.fn = n.prototype\n const c = {\n addClass: function () {\n for (var e = arguments.length, t = new Array(e), s = 0; s < e; s++)\n t[s] = arguments[s]\n const a = l(t.map((e) => e.split(' ')))\n return (\n this.forEach((e) => {\n e.classList.add(...a)\n }),\n this\n )\n },\n removeClass: function () {\n for (var e = arguments.length, t = new Array(e), s = 0; s < e; s++)\n t[s] = arguments[s]\n const a = l(t.map((e) => e.split(' ')))\n return (\n this.forEach((e) => {\n e.classList.remove(...a)\n }),\n this\n )\n },\n hasClass: function () {\n for (var e = arguments.length, t = new Array(e), s = 0; s < e; s++)\n t[s] = arguments[s]\n const a = l(t.map((e) => e.split(' ')))\n return (\n o(\n this,\n (e) => a.filter((t) => e.classList.contains(t)).length > 0\n ).length > 0\n )\n },\n toggleClass: function () {\n for (var e = arguments.length, t = new Array(e), s = 0; s < e; s++)\n t[s] = arguments[s]\n const a = l(t.map((e) => e.split(' ')))\n this.forEach((e) => {\n a.forEach((t) => {\n e.classList.toggle(t)\n })\n })\n },\n attr: function (e, t) {\n if (1 === arguments.length && 'string' == typeof e)\n return this[0] ? this[0].getAttribute(e) : void 0\n for (let s = 0; s < this.length; s += 1)\n if (2 === arguments.length) this[s].setAttribute(e, t)\n else\n for (const t in e)\n (this[s][t] = e[t]), this[s].setAttribute(t, e[t])\n return this\n },\n removeAttr: function (e) {\n for (let t = 0; t < this.length; t += 1) this[t].removeAttribute(e)\n return this\n },\n transform: function (e) {\n for (let t = 0; t < this.length; t += 1) this[t].style.transform = e\n return this\n },\n transition: function (e) {\n for (let t = 0; t < this.length; t += 1)\n this[t].style.transitionDuration =\n 'string' != typeof e ? `${e}ms` : e\n return this\n },\n on: function () {\n for (var e = arguments.length, t = new Array(e), s = 0; s < e; s++)\n t[s] = arguments[s]\n let [a, i, r, n] = t\n function l(e) {\n const t = e.target\n if (!t) return\n const s = e.target.dom7EventData || []\n if ((s.indexOf(e) < 0 && s.unshift(e), d(t).is(i)))\n r.apply(t, s)\n else {\n const e = d(t).parents()\n for (let t = 0; t < e.length; t += 1)\n d(e[t]).is(i) && r.apply(e[t], s)\n }\n }\n function o(e) {\n const t = (e && e.target && e.target.dom7EventData) || []\n t.indexOf(e) < 0 && t.unshift(e), r.apply(this, t)\n }\n 'function' == typeof t[1] && (([a, r, n] = t), (i = void 0)),\n n || (n = !1)\n const c = a.split(' ')\n let p\n for (let e = 0; e < this.length; e += 1) {\n const t = this[e]\n if (i)\n for (p = 0; p < c.length; p += 1) {\n const e = c[p]\n t.dom7LiveListeners || (t.dom7LiveListeners = {}),\n t.dom7LiveListeners[e] ||\n (t.dom7LiveListeners[e] = []),\n t.dom7LiveListeners[e].push({\n listener: r,\n proxyListener: l,\n }),\n t.addEventListener(e, l, n)\n }\n else\n for (p = 0; p < c.length; p += 1) {\n const e = c[p]\n t.dom7Listeners || (t.dom7Listeners = {}),\n t.dom7Listeners[e] || (t.dom7Listeners[e] = []),\n t.dom7Listeners[e].push({\n listener: r,\n proxyListener: o,\n }),\n t.addEventListener(e, o, n)\n }\n }\n return this\n },\n off: function () {\n for (var e = arguments.length, t = new Array(e), s = 0; s < e; s++)\n t[s] = arguments[s]\n let [a, i, r, n] = t\n 'function' == typeof t[1] && (([a, r, n] = t), (i = void 0)),\n n || (n = !1)\n const l = a.split(' ')\n for (let e = 0; e < l.length; e += 1) {\n const t = l[e]\n for (let e = 0; e < this.length; e += 1) {\n const s = this[e]\n let a\n if (\n (!i && s.dom7Listeners\n ? (a = s.dom7Listeners[t])\n : i &&\n s.dom7LiveListeners &&\n (a = s.dom7LiveListeners[t]),\n a && a.length)\n )\n for (let e = a.length - 1; e >= 0; e -= 1) {\n const i = a[e]\n ;(r && i.listener === r) ||\n (r &&\n i.listener &&\n i.listener.dom7proxy &&\n i.listener.dom7proxy === r)\n ? (s.removeEventListener(t, i.proxyListener, n),\n a.splice(e, 1))\n : r ||\n (s.removeEventListener(t, i.proxyListener, n),\n a.splice(e, 1))\n }\n }\n }\n return this\n },\n trigger: function () {\n const e = r()\n for (var t = arguments.length, s = new Array(t), a = 0; a < t; a++)\n s[a] = arguments[a]\n const i = s[0].split(' '),\n n = s[1]\n for (let t = 0; t < i.length; t += 1) {\n const a = i[t]\n for (let t = 0; t < this.length; t += 1) {\n const i = this[t]\n if (e.CustomEvent) {\n const t = new e.CustomEvent(a, {\n detail: n,\n bubbles: !0,\n cancelable: !0,\n })\n ;(i.dom7EventData = s.filter((e, t) => t > 0)),\n i.dispatchEvent(t),\n (i.dom7EventData = []),\n delete i.dom7EventData\n }\n }\n }\n return this\n },\n transitionEnd: function (e) {\n const t = this\n return (\n e &&\n t.on('transitionend', function s(a) {\n a.target === this &&\n (e.call(this, a), t.off('transitionend', s))\n }),\n this\n )\n },\n outerWidth: function (e) {\n if (this.length > 0) {\n if (e) {\n const e = this.styles()\n return (\n this[0].offsetWidth +\n parseFloat(e.getPropertyValue('margin-right')) +\n parseFloat(e.getPropertyValue('margin-left'))\n )\n }\n return this[0].offsetWidth\n }\n return null\n },\n outerHeight: function (e) {\n if (this.length > 0) {\n if (e) {\n const e = this.styles()\n return (\n this[0].offsetHeight +\n parseFloat(e.getPropertyValue('margin-top')) +\n parseFloat(e.getPropertyValue('margin-bottom'))\n )\n }\n return this[0].offsetHeight\n }\n return null\n },\n styles: function () {\n const e = r()\n return this[0] ? e.getComputedStyle(this[0], null) : {}\n },\n offset: function () {\n if (this.length > 0) {\n const e = r(),\n t = a(),\n s = this[0],\n i = s.getBoundingClientRect(),\n n = t.body,\n l = s.clientTop || n.clientTop || 0,\n o = s.clientLeft || n.clientLeft || 0,\n d = s === e ? e.scrollY : s.scrollTop,\n c = s === e ? e.scrollX : s.scrollLeft\n return { top: i.top + d - l, left: i.left + c - o }\n }\n return null\n },\n css: function (e, t) {\n const s = r()\n let a\n if (1 === arguments.length) {\n if ('string' != typeof e) {\n for (a = 0; a < this.length; a += 1)\n for (const t in e) this[a].style[t] = e[t]\n return this\n }\n if (this[0])\n return s.getComputedStyle(this[0], null).getPropertyValue(e)\n }\n if (2 === arguments.length && 'string' == typeof e) {\n for (a = 0; a < this.length; a += 1) this[a].style[e] = t\n return this\n }\n return this\n },\n each: function (e) {\n return e\n ? (this.forEach((t, s) => {\n e.apply(t, [t, s])\n }),\n this)\n : this\n },\n html: function (e) {\n if (void 0 === e) return this[0] ? this[0].innerHTML : null\n for (let t = 0; t < this.length; t += 1) this[t].innerHTML = e\n return this\n },\n text: function (e) {\n if (void 0 === e) return this[0] ? this[0].textContent.trim() : null\n for (let t = 0; t < this.length; t += 1) this[t].textContent = e\n return this\n },\n is: function (e) {\n const t = r(),\n s = a(),\n i = this[0]\n let l, o\n if (!i || void 0 === e) return !1\n if ('string' == typeof e) {\n if (i.matches) return i.matches(e)\n if (i.webkitMatchesSelector) return i.webkitMatchesSelector(e)\n if (i.msMatchesSelector) return i.msMatchesSelector(e)\n for (l = d(e), o = 0; o < l.length; o += 1)\n if (l[o] === i) return !0\n return !1\n }\n if (e === s) return i === s\n if (e === t) return i === t\n if (e.nodeType || e instanceof n) {\n for (l = e.nodeType ? [e] : e, o = 0; o < l.length; o += 1)\n if (l[o] === i) return !0\n return !1\n }\n return !1\n },\n index: function () {\n let e,\n t = this[0]\n if (t) {\n for (e = 0; null !== (t = t.previousSibling); )\n 1 === t.nodeType && (e += 1)\n return e\n }\n },\n eq: function (e) {\n if (void 0 === e) return this\n const t = this.length\n if (e > t - 1) return d([])\n if (e < 0) {\n const s = t + e\n return d(s < 0 ? [] : [this[s]])\n }\n return d([this[e]])\n },\n append: function () {\n let e\n const t = a()\n for (let s = 0; s < arguments.length; s += 1) {\n e = s < 0 || arguments.length <= s ? void 0 : arguments[s]\n for (let s = 0; s < this.length; s += 1)\n if ('string' == typeof e) {\n const a = t.createElement('div')\n for (a.innerHTML = e; a.firstChild; )\n this[s].appendChild(a.firstChild)\n } else if (e instanceof n)\n for (let t = 0; t < e.length; t += 1)\n this[s].appendChild(e[t])\n else this[s].appendChild(e)\n }\n return this\n },\n prepend: function (e) {\n const t = a()\n let s, i\n for (s = 0; s < this.length; s += 1)\n if ('string' == typeof e) {\n const a = t.createElement('div')\n for (\n a.innerHTML = e, i = a.childNodes.length - 1;\n i >= 0;\n i -= 1\n )\n this[s].insertBefore(\n a.childNodes[i],\n this[s].childNodes[0]\n )\n } else if (e instanceof n)\n for (i = 0; i < e.length; i += 1)\n this[s].insertBefore(e[i], this[s].childNodes[0])\n else this[s].insertBefore(e, this[s].childNodes[0])\n return this\n },\n next: function (e) {\n return this.length > 0\n ? e\n ? this[0].nextElementSibling &&\n d(this[0].nextElementSibling).is(e)\n ? d([this[0].nextElementSibling])\n : d([])\n : this[0].nextElementSibling\n ? d([this[0].nextElementSibling])\n : d([])\n : d([])\n },\n nextAll: function (e) {\n const t = []\n let s = this[0]\n if (!s) return d([])\n for (; s.nextElementSibling; ) {\n const a = s.nextElementSibling\n e ? d(a).is(e) && t.push(a) : t.push(a), (s = a)\n }\n return d(t)\n },\n prev: function (e) {\n if (this.length > 0) {\n const t = this[0]\n return e\n ? t.previousElementSibling &&\n d(t.previousElementSibling).is(e)\n ? d([t.previousElementSibling])\n : d([])\n : t.previousElementSibling\n ? d([t.previousElementSibling])\n : d([])\n }\n return d([])\n },\n prevAll: function (e) {\n const t = []\n let s = this[0]\n if (!s) return d([])\n for (; s.previousElementSibling; ) {\n const a = s.previousElementSibling\n e ? d(a).is(e) && t.push(a) : t.push(a), (s = a)\n }\n return d(t)\n },\n parent: function (e) {\n const t = []\n for (let s = 0; s < this.length; s += 1)\n null !== this[s].parentNode &&\n (e\n ? d(this[s].parentNode).is(e) &&\n t.push(this[s].parentNode)\n : t.push(this[s].parentNode))\n return d(t)\n },\n parents: function (e) {\n const t = []\n for (let s = 0; s < this.length; s += 1) {\n let a = this[s].parentNode\n for (; a; )\n e ? d(a).is(e) && t.push(a) : t.push(a), (a = a.parentNode)\n }\n return d(t)\n },\n closest: function (e) {\n let t = this\n return void 0 === e\n ? d([])\n : (t.is(e) || (t = t.parents(e).eq(0)), t)\n },\n find: function (e) {\n const t = []\n for (let s = 0; s < this.length; s += 1) {\n const a = this[s].querySelectorAll(e)\n for (let e = 0; e < a.length; e += 1) t.push(a[e])\n }\n return d(t)\n },\n children: function (e) {\n const t = []\n for (let s = 0; s < this.length; s += 1) {\n const a = this[s].children\n for (let s = 0; s < a.length; s += 1)\n (e && !d(a[s]).is(e)) || t.push(a[s])\n }\n return d(t)\n },\n filter: function (e) {\n return d(o(this, e))\n },\n remove: function () {\n for (let e = 0; e < this.length; e += 1)\n this[e].parentNode && this[e].parentNode.removeChild(this[e])\n return this\n },\n }\n function p(e, t) {\n return void 0 === t && (t = 0), setTimeout(e, t)\n }\n function u() {\n return Date.now()\n }\n function h(e, t) {\n void 0 === t && (t = 'x')\n const s = r()\n let a, i, n\n const l = (function (e) {\n const t = r()\n let s\n return (\n t.getComputedStyle && (s = t.getComputedStyle(e, null)),\n !s && e.currentStyle && (s = e.currentStyle),\n s || (s = e.style),\n s\n )\n })(e)\n return (\n s.WebKitCSSMatrix\n ? ((i = l.transform || l.webkitTransform),\n i.split(',').length > 6 &&\n (i = i\n .split(', ')\n .map((e) => e.replace(',', '.'))\n .join(', ')),\n (n = new s.WebKitCSSMatrix('none' === i ? '' : i)))\n : ((n =\n l.MozTransform ||\n l.OTransform ||\n l.MsTransform ||\n l.msTransform ||\n l.transform ||\n l\n .getPropertyValue('transform')\n .replace('translate(', 'matrix(1, 0, 0, 1,')),\n (a = n.toString().split(','))),\n 'x' === t &&\n (i = s.WebKitCSSMatrix\n ? n.m41\n : 16 === a.length\n ? parseFloat(a[12])\n : parseFloat(a[4])),\n 'y' === t &&\n (i = s.WebKitCSSMatrix\n ? n.m42\n : 16 === a.length\n ? parseFloat(a[13])\n : parseFloat(a[5])),\n i || 0\n )\n }\n function m(e) {\n return (\n 'object' == typeof e &&\n null !== e &&\n e.constructor &&\n 'Object' === Object.prototype.toString.call(e).slice(8, -1)\n )\n }\n function f(e) {\n return 'undefined' != typeof window && void 0 !== window.HTMLElement\n ? e instanceof HTMLElement\n : e && (1 === e.nodeType || 11 === e.nodeType)\n }\n function g() {\n const e = Object(arguments.length <= 0 ? void 0 : arguments[0]),\n t = ['__proto__', 'constructor', 'prototype']\n for (let s = 1; s < arguments.length; s += 1) {\n const a = s < 0 || arguments.length <= s ? void 0 : arguments[s]\n if (null != a && !f(a)) {\n const s = Object.keys(Object(a)).filter((e) => t.indexOf(e) < 0)\n for (let t = 0, i = s.length; t < i; t += 1) {\n const i = s[t],\n r = Object.getOwnPropertyDescriptor(a, i)\n void 0 !== r &&\n r.enumerable &&\n (m(e[i]) && m(a[i])\n ? a[i].__swiper__\n ? (e[i] = a[i])\n : g(e[i], a[i])\n : !m(e[i]) && m(a[i])\n ? ((e[i] = {}),\n a[i].__swiper__ ? (e[i] = a[i]) : g(e[i], a[i]))\n : (e[i] = a[i]))\n }\n }\n }\n return e\n }\n function v(e, t, s) {\n e.style.setProperty(t, s)\n }\n function w(e) {\n let { swiper: t, targetPosition: s, side: a } = e\n const i = r(),\n n = -t.translate\n let l,\n o = null\n const d = t.params.speed\n ;(t.wrapperEl.style.scrollSnapType = 'none'),\n i.cancelAnimationFrame(t.cssModeFrameID)\n const c = s > n ? 'next' : 'prev',\n p = (e, t) => ('next' === c && e >= t) || ('prev' === c && e <= t),\n u = () => {\n ;(l = new Date().getTime()), null === o && (o = l)\n const e = Math.max(Math.min((l - o) / d, 1), 0),\n r = 0.5 - Math.cos(e * Math.PI) / 2\n let c = n + r * (s - n)\n if (\n (p(c, s) && (c = s),\n t.wrapperEl.scrollTo({ [a]: c }),\n p(c, s))\n )\n return (\n (t.wrapperEl.style.overflow = 'hidden'),\n (t.wrapperEl.style.scrollSnapType = ''),\n setTimeout(() => {\n ;(t.wrapperEl.style.overflow = ''),\n t.wrapperEl.scrollTo({ [a]: c })\n }),\n void i.cancelAnimationFrame(t.cssModeFrameID)\n )\n t.cssModeFrameID = i.requestAnimationFrame(u)\n }\n u()\n }\n let b, x, y\n function E() {\n return (\n b ||\n (b = (function () {\n const e = r(),\n t = a()\n return {\n smoothScroll:\n t.documentElement &&\n 'scrollBehavior' in t.documentElement.style,\n touch: !!(\n 'ontouchstart' in e ||\n (e.DocumentTouch && t instanceof e.DocumentTouch)\n ),\n passiveListener: (function () {\n let t = !1\n try {\n const s = Object.defineProperty({}, 'passive', {\n get() {\n t = !0\n },\n })\n e.addEventListener(\n 'testPassiveListener',\n null,\n s\n )\n } catch (e) {}\n return t\n })(),\n gestures: 'ongesturestart' in e,\n }\n })()),\n b\n )\n }\n function T(e) {\n return (\n void 0 === e && (e = {}),\n x ||\n (x = (function (e) {\n let { userAgent: t } = void 0 === e ? {} : e\n const s = E(),\n a = r(),\n i = a.navigator.platform,\n n = t || a.navigator.userAgent,\n l = { ios: !1, android: !1 },\n o = a.screen.width,\n d = a.screen.height,\n c = n.match(/(Android);?[\\s\\/]+([\\d.]+)?/)\n let p = n.match(/(iPad).*OS\\s([\\d_]+)/)\n const u = n.match(/(iPod)(.*OS\\s([\\d_]+))?/),\n h = !p && n.match(/(iPhone\\sOS|iOS)\\s([\\d_]+)/),\n m = 'Win32' === i\n let f = 'MacIntel' === i\n return (\n !p &&\n f &&\n s.touch &&\n [\n '1024x1366',\n '1366x1024',\n '834x1194',\n '1194x834',\n '834x1112',\n '1112x834',\n '768x1024',\n '1024x768',\n '820x1180',\n '1180x820',\n '810x1080',\n '1080x810',\n ].indexOf(`${o}x${d}`) >= 0 &&\n ((p = n.match(/(Version)\\/([\\d.]+)/)),\n p || (p = [0, 1, '13_0_0']),\n (f = !1)),\n c && !m && ((l.os = 'android'), (l.android = !0)),\n (p || h || u) && ((l.os = 'ios'), (l.ios = !0)),\n l\n )\n })(e)),\n x\n )\n }\n function C() {\n return (\n y ||\n (y = (function () {\n const e = r()\n return {\n isSafari: (function () {\n const t = e.navigator.userAgent.toLowerCase()\n return (\n t.indexOf('safari') >= 0 &&\n t.indexOf('chrome') < 0 &&\n t.indexOf('android') < 0\n )\n })(),\n isWebView:\n /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(\n e.navigator.userAgent\n ),\n }\n })()),\n y\n )\n }\n Object.keys(c).forEach((e) => {\n Object.defineProperty(d.fn, e, { value: c[e], writable: !0 })\n })\n var $ = {\n on(e, t, s) {\n const a = this\n if ('function' != typeof t) return a\n const i = s ? 'unshift' : 'push'\n return (\n e.split(' ').forEach((e) => {\n a.eventsListeners[e] || (a.eventsListeners[e] = []),\n a.eventsListeners[e][i](t)\n }),\n a\n )\n },\n once(e, t, s) {\n const a = this\n if ('function' != typeof t) return a\n function i() {\n a.off(e, i), i.__emitterProxy && delete i.__emitterProxy\n for (\n var s = arguments.length, r = new Array(s), n = 0;\n n < s;\n n++\n )\n r[n] = arguments[n]\n t.apply(a, r)\n }\n return (i.__emitterProxy = t), a.on(e, i, s)\n },\n onAny(e, t) {\n const s = this\n if ('function' != typeof e) return s\n const a = t ? 'unshift' : 'push'\n return (\n s.eventsAnyListeners.indexOf(e) < 0 &&\n s.eventsAnyListeners[a](e),\n s\n )\n },\n offAny(e) {\n const t = this\n if (!t.eventsAnyListeners) return t\n const s = t.eventsAnyListeners.indexOf(e)\n return s >= 0 && t.eventsAnyListeners.splice(s, 1), t\n },\n off(e, t) {\n const s = this\n return s.eventsListeners\n ? (e.split(' ').forEach((e) => {\n void 0 === t\n ? (s.eventsListeners[e] = [])\n : s.eventsListeners[e] &&\n s.eventsListeners[e].forEach((a, i) => {\n ;(a === t ||\n (a.__emitterProxy &&\n a.__emitterProxy === t)) &&\n s.eventsListeners[e].splice(i, 1)\n })\n }),\n s)\n : s\n },\n emit() {\n const e = this\n if (!e.eventsListeners) return e\n let t, s, a\n for (var i = arguments.length, r = new Array(i), n = 0; n < i; n++)\n r[n] = arguments[n]\n 'string' == typeof r[0] || Array.isArray(r[0])\n ? ((t = r[0]), (s = r.slice(1, r.length)), (a = e))\n : ((t = r[0].events), (s = r[0].data), (a = r[0].context || e)),\n s.unshift(a)\n return (\n (Array.isArray(t) ? t : t.split(' ')).forEach((t) => {\n e.eventsAnyListeners &&\n e.eventsAnyListeners.length &&\n e.eventsAnyListeners.forEach((e) => {\n e.apply(a, [t, ...s])\n }),\n e.eventsListeners &&\n e.eventsListeners[t] &&\n e.eventsListeners[t].forEach((e) => {\n e.apply(a, s)\n })\n }),\n e\n )\n },\n }\n var S = {\n updateSize: function () {\n const e = this\n let t, s\n const a = e.$el\n ;(t =\n void 0 !== e.params.width && null !== e.params.width\n ? e.params.width\n : a[0].clientWidth),\n (s =\n void 0 !== e.params.height && null !== e.params.height\n ? e.params.height\n : a[0].clientHeight),\n (0 === t && e.isHorizontal()) ||\n (0 === s && e.isVertical()) ||\n ((t =\n t -\n parseInt(a.css('padding-left') || 0, 10) -\n parseInt(a.css('padding-right') || 0, 10)),\n (s =\n s -\n parseInt(a.css('padding-top') || 0, 10) -\n parseInt(a.css('padding-bottom') || 0, 10)),\n Number.isNaN(t) && (t = 0),\n Number.isNaN(s) && (s = 0),\n Object.assign(e, {\n width: t,\n height: s,\n size: e.isHorizontal() ? t : s,\n }))\n },\n updateSlides: function () {\n const e = this\n function t(t) {\n return e.isHorizontal()\n ? t\n : {\n width: 'height',\n 'margin-top': 'margin-left',\n 'margin-bottom ': 'margin-right',\n 'margin-left': 'margin-top',\n 'margin-right': 'margin-bottom',\n 'padding-left': 'padding-top',\n 'padding-right': 'padding-bottom',\n marginRight: 'marginBottom',\n }[t]\n }\n function s(e, s) {\n return parseFloat(e.getPropertyValue(t(s)) || 0)\n }\n const a = e.params,\n { $wrapperEl: i, size: r, rtlTranslate: n, wrongRTL: l } = e,\n o = e.virtual && a.virtual.enabled,\n d = o ? e.virtual.slides.length : e.slides.length,\n c = i.children(`.${e.params.slideClass}`),\n p = o ? e.virtual.slides.length : c.length\n let u = []\n const h = [],\n m = []\n let f = a.slidesOffsetBefore\n 'function' == typeof f && (f = a.slidesOffsetBefore.call(e))\n let g = a.slidesOffsetAfter\n 'function' == typeof g && (g = a.slidesOffsetAfter.call(e))\n const w = e.snapGrid.length,\n b = e.slidesGrid.length\n let x = a.spaceBetween,\n y = -f,\n E = 0,\n T = 0\n if (void 0 === r) return\n 'string' == typeof x &&\n x.indexOf('%') >= 0 &&\n (x = (parseFloat(x.replace('%', '')) / 100) * r),\n (e.virtualSize = -x),\n n\n ? c.css({ marginLeft: '', marginBottom: '', marginTop: '' })\n : c.css({\n marginRight: '',\n marginBottom: '',\n marginTop: '',\n }),\n a.centeredSlides &&\n a.cssMode &&\n (v(e.wrapperEl, '--swiper-centered-offset-before', ''),\n v(e.wrapperEl, '--swiper-centered-offset-after', ''))\n const C = a.grid && a.grid.rows > 1 && e.grid\n let $\n C && e.grid.initSlides(p)\n const S =\n 'auto' === a.slidesPerView &&\n a.breakpoints &&\n Object.keys(a.breakpoints).filter(\n (e) => void 0 !== a.breakpoints[e].slidesPerView\n ).length > 0\n for (let i = 0; i < p; i += 1) {\n $ = 0\n const n = c.eq(i)\n if (\n (C && e.grid.updateSlide(i, n, p, t),\n 'none' !== n.css('display'))\n ) {\n if ('auto' === a.slidesPerView) {\n S && (c[i].style[t('width')] = '')\n const r = getComputedStyle(n[0]),\n l = n[0].style.transform,\n o = n[0].style.webkitTransform\n if (\n (l && (n[0].style.transform = 'none'),\n o && (n[0].style.webkitTransform = 'none'),\n a.roundLengths)\n )\n $ = e.isHorizontal()\n ? n.outerWidth(!0)\n : n.outerHeight(!0)\n else {\n const e = s(r, 'width'),\n t = s(r, 'padding-left'),\n a = s(r, 'padding-right'),\n i = s(r, 'margin-left'),\n l = s(r, 'margin-right'),\n o = r.getPropertyValue('box-sizing')\n if (o && 'border-box' === o) $ = e + i + l\n else {\n const { clientWidth: s, offsetWidth: r } = n[0]\n $ = e + t + a + i + l + (r - s)\n }\n }\n l && (n[0].style.transform = l),\n o && (n[0].style.webkitTransform = o),\n a.roundLengths && ($ = Math.floor($))\n } else\n ($ = (r - (a.slidesPerView - 1) * x) / a.slidesPerView),\n a.roundLengths && ($ = Math.floor($)),\n c[i] && (c[i].style[t('width')] = `${$}px`)\n c[i] && (c[i].swiperSlideSize = $),\n m.push($),\n a.centeredSlides\n ? ((y = y + $ / 2 + E / 2 + x),\n 0 === E && 0 !== i && (y = y - r / 2 - x),\n 0 === i && (y = y - r / 2 - x),\n Math.abs(y) < 0.001 && (y = 0),\n a.roundLengths && (y = Math.floor(y)),\n T % a.slidesPerGroup == 0 && u.push(y),\n h.push(y))\n : (a.roundLengths && (y = Math.floor(y)),\n (T - Math.min(e.params.slidesPerGroupSkip, T)) %\n e.params.slidesPerGroup ==\n 0 && u.push(y),\n h.push(y),\n (y = y + $ + x)),\n (e.virtualSize += $ + x),\n (E = $),\n (T += 1)\n }\n }\n if (\n ((e.virtualSize = Math.max(e.virtualSize, r) + g),\n n &&\n l &&\n ('slide' === a.effect || 'coverflow' === a.effect) &&\n i.css({ width: `${e.virtualSize + a.spaceBetween}px` }),\n a.setWrapperSize &&\n i.css({\n [t('width')]: `${e.virtualSize + a.spaceBetween}px`,\n }),\n C && e.grid.updateWrapperSize($, u, t),\n !a.centeredSlides)\n ) {\n const t = []\n for (let s = 0; s < u.length; s += 1) {\n let i = u[s]\n a.roundLengths && (i = Math.floor(i)),\n u[s] <= e.virtualSize - r && t.push(i)\n }\n ;(u = t),\n Math.floor(e.virtualSize - r) -\n Math.floor(u[u.length - 1]) >\n 1 && u.push(e.virtualSize - r)\n }\n if ((0 === u.length && (u = [0]), 0 !== a.spaceBetween)) {\n const s =\n e.isHorizontal() && n ? 'marginLeft' : t('marginRight')\n c.filter((e, t) => !a.cssMode || t !== c.length - 1).css({\n [s]: `${x}px`,\n })\n }\n if (a.centeredSlides && a.centeredSlidesBounds) {\n let e = 0\n m.forEach((t) => {\n e += t + (a.spaceBetween ? a.spaceBetween : 0)\n }),\n (e -= a.spaceBetween)\n const t = e - r\n u = u.map((e) => (e < 0 ? -f : e > t ? t + g : e))\n }\n if (a.centerInsufficientSlides) {\n let e = 0\n if (\n (m.forEach((t) => {\n e += t + (a.spaceBetween ? a.spaceBetween : 0)\n }),\n (e -= a.spaceBetween),\n e < r)\n ) {\n const t = (r - e) / 2\n u.forEach((e, s) => {\n u[s] = e - t\n }),\n h.forEach((e, s) => {\n h[s] = e + t\n })\n }\n }\n if (\n (Object.assign(e, {\n slides: c,\n snapGrid: u,\n slidesGrid: h,\n slidesSizesGrid: m,\n }),\n a.centeredSlides && a.cssMode && !a.centeredSlidesBounds)\n ) {\n v(e.wrapperEl, '--swiper-centered-offset-before', -u[0] + 'px'),\n v(\n e.wrapperEl,\n '--swiper-centered-offset-after',\n e.size / 2 - m[m.length - 1] / 2 + 'px'\n )\n const t = -e.snapGrid[0],\n s = -e.slidesGrid[0]\n ;(e.snapGrid = e.snapGrid.map((e) => e + t)),\n (e.slidesGrid = e.slidesGrid.map((e) => e + s))\n }\n if (\n (p !== d && e.emit('slidesLengthChange'),\n u.length !== w &&\n (e.params.watchOverflow && e.checkOverflow(),\n e.emit('snapGridLengthChange')),\n h.length !== b && e.emit('slidesGridLengthChange'),\n a.watchSlidesProgress && e.updateSlidesOffset(),\n !(\n o ||\n a.cssMode ||\n ('slide' !== a.effect && 'fade' !== a.effect)\n ))\n ) {\n const t = `${a.containerModifierClass}backface-hidden`,\n s = e.$el.hasClass(t)\n p <= a.maxBackfaceHiddenSlides\n ? s || e.$el.addClass(t)\n : s && e.$el.removeClass(t)\n }\n },\n updateAutoHeight: function (e) {\n const t = this,\n s = [],\n a = t.virtual && t.params.virtual.enabled\n let i,\n r = 0\n 'number' == typeof e\n ? t.setTransition(e)\n : !0 === e && t.setTransition(t.params.speed)\n const n = (e) =>\n a\n ? t.slides.filter(\n (t) =>\n parseInt(\n t.getAttribute('data-swiper-slide-index'),\n 10\n ) === e\n )[0]\n : t.slides.eq(e)[0]\n if ('auto' !== t.params.slidesPerView && t.params.slidesPerView > 1)\n if (t.params.centeredSlides)\n t.visibleSlides.each((e) => {\n s.push(e)\n })\n else\n for (i = 0; i < Math.ceil(t.params.slidesPerView); i += 1) {\n const e = t.activeIndex + i\n if (e > t.slides.length && !a) break\n s.push(n(e))\n }\n else s.push(n(t.activeIndex))\n for (i = 0; i < s.length; i += 1)\n if (void 0 !== s[i]) {\n const e = s[i].offsetHeight\n r = e > r ? e : r\n }\n ;(r || 0 === r) && t.$wrapperEl.css('height', `${r}px`)\n },\n updateSlidesOffset: function () {\n const e = this,\n t = e.slides\n for (let s = 0; s < t.length; s += 1)\n t[s].swiperSlideOffset = e.isHorizontal()\n ? t[s].offsetLeft\n : t[s].offsetTop\n },\n updateSlidesProgress: function (e) {\n void 0 === e && (e = (this && this.translate) || 0)\n const t = this,\n s = t.params,\n { slides: a, rtlTranslate: i, snapGrid: r } = t\n if (0 === a.length) return\n void 0 === a[0].swiperSlideOffset && t.updateSlidesOffset()\n let n = -e\n i && (n = e),\n a.removeClass(s.slideVisibleClass),\n (t.visibleSlidesIndexes = []),\n (t.visibleSlides = [])\n for (let e = 0; e < a.length; e += 1) {\n const l = a[e]\n let o = l.swiperSlideOffset\n s.cssMode && s.centeredSlides && (o -= a[0].swiperSlideOffset)\n const d =\n (n + (s.centeredSlides ? t.minTranslate() : 0) - o) /\n (l.swiperSlideSize + s.spaceBetween),\n c =\n (n -\n r[0] +\n (s.centeredSlides ? t.minTranslate() : 0) -\n o) /\n (l.swiperSlideSize + s.spaceBetween),\n p = -(n - o),\n u = p + t.slidesSizesGrid[e]\n ;((p >= 0 && p < t.size - 1) ||\n (u > 1 && u <= t.size) ||\n (p <= 0 && u >= t.size)) &&\n (t.visibleSlides.push(l),\n t.visibleSlidesIndexes.push(e),\n a.eq(e).addClass(s.slideVisibleClass)),\n (l.progress = i ? -d : d),\n (l.originalProgress = i ? -c : c)\n }\n t.visibleSlides = d(t.visibleSlides)\n },\n updateProgress: function (e) {\n const t = this\n if (void 0 === e) {\n const s = t.rtlTranslate ? -1 : 1\n e = (t && t.translate && t.translate * s) || 0\n }\n const s = t.params,\n a = t.maxTranslate() - t.minTranslate()\n let { progress: i, isBeginning: r, isEnd: n } = t\n const l = r,\n o = n\n 0 === a\n ? ((i = 0), (r = !0), (n = !0))\n : ((i = (e - t.minTranslate()) / a),\n (r = i <= 0),\n (n = i >= 1)),\n Object.assign(t, { progress: i, isBeginning: r, isEnd: n }),\n (s.watchSlidesProgress || (s.centeredSlides && s.autoHeight)) &&\n t.updateSlidesProgress(e),\n r && !l && t.emit('reachBeginning toEdge'),\n n && !o && t.emit('reachEnd toEdge'),\n ((l && !r) || (o && !n)) && t.emit('fromEdge'),\n t.emit('progress', i)\n },\n updateSlidesClasses: function () {\n const e = this,\n {\n slides: t,\n params: s,\n $wrapperEl: a,\n activeIndex: i,\n realIndex: r,\n } = e,\n n = e.virtual && s.virtual.enabled\n let l\n t.removeClass(\n `${s.slideActiveClass} ${s.slideNextClass} ${s.slidePrevClass} ${s.slideDuplicateActiveClass} ${s.slideDuplicateNextClass} ${s.slideDuplicatePrevClass}`\n ),\n (l = n\n ? e.$wrapperEl.find(\n `.${s.slideClass}[data-swiper-slide-index=\"${i}\"]`\n )\n : t.eq(i)),\n l.addClass(s.slideActiveClass),\n s.loop &&\n (l.hasClass(s.slideDuplicateClass)\n ? a\n .children(\n `.${s.slideClass}:not(.${s.slideDuplicateClass})[data-swiper-slide-index=\"${r}\"]`\n )\n .addClass(s.slideDuplicateActiveClass)\n : a\n .children(\n `.${s.slideClass}.${s.slideDuplicateClass}[data-swiper-slide-index=\"${r}\"]`\n )\n .addClass(s.slideDuplicateActiveClass))\n let o = l\n .nextAll(`.${s.slideClass}`)\n .eq(0)\n .addClass(s.slideNextClass)\n s.loop &&\n 0 === o.length &&\n ((o = t.eq(0)), o.addClass(s.slideNextClass))\n let d = l\n .prevAll(`.${s.slideClass}`)\n .eq(0)\n .addClass(s.slidePrevClass)\n s.loop &&\n 0 === d.length &&\n ((d = t.eq(-1)), d.addClass(s.slidePrevClass)),\n s.loop &&\n (o.hasClass(s.slideDuplicateClass)\n ? a\n .children(\n `.${s.slideClass}:not(.${\n s.slideDuplicateClass\n })[data-swiper-slide-index=\"${o.attr(\n 'data-swiper-slide-index'\n )}\"]`\n )\n .addClass(s.slideDuplicateNextClass)\n : a\n .children(\n `.${s.slideClass}.${\n s.slideDuplicateClass\n }[data-swiper-slide-index=\"${o.attr(\n 'data-swiper-slide-index'\n )}\"]`\n )\n .addClass(s.slideDuplicateNextClass),\n d.hasClass(s.slideDuplicateClass)\n ? a\n .children(\n `.${s.slideClass}:not(.${\n s.slideDuplicateClass\n })[data-swiper-slide-index=\"${d.attr(\n 'data-swiper-slide-index'\n )}\"]`\n )\n .addClass(s.slideDuplicatePrevClass)\n : a\n .children(\n `.${s.slideClass}.${\n s.slideDuplicateClass\n }[data-swiper-slide-index=\"${d.attr(\n 'data-swiper-slide-index'\n )}\"]`\n )\n .addClass(s.slideDuplicatePrevClass)),\n e.emitSlidesClasses()\n },\n updateActiveIndex: function (e) {\n const t = this,\n s = t.rtlTranslate ? t.translate : -t.translate,\n {\n slidesGrid: a,\n snapGrid: i,\n params: r,\n activeIndex: n,\n realIndex: l,\n snapIndex: o,\n } = t\n let d,\n c = e\n if (void 0 === c) {\n for (let e = 0; e < a.length; e += 1)\n void 0 !== a[e + 1]\n ? s >= a[e] && s < a[e + 1] - (a[e + 1] - a[e]) / 2\n ? (c = e)\n : s >= a[e] && s < a[e + 1] && (c = e + 1)\n : s >= a[e] && (c = e)\n r.normalizeSlideIndex && (c < 0 || void 0 === c) && (c = 0)\n }\n if (i.indexOf(s) >= 0) d = i.indexOf(s)\n else {\n const e = Math.min(r.slidesPerGroupSkip, c)\n d = e + Math.floor((c - e) / r.slidesPerGroup)\n }\n if ((d >= i.length && (d = i.length - 1), c === n))\n return void (\n d !== o && ((t.snapIndex = d), t.emit('snapIndexChange'))\n )\n const p = parseInt(\n t.slides.eq(c).attr('data-swiper-slide-index') || c,\n 10\n )\n Object.assign(t, {\n snapIndex: d,\n realIndex: p,\n previousIndex: n,\n activeIndex: c,\n }),\n t.emit('activeIndexChange'),\n t.emit('snapIndexChange'),\n l !== p && t.emit('realIndexChange'),\n (t.initialized || t.params.runCallbacksOnInit) &&\n t.emit('slideChange')\n },\n updateClickedSlide: function (e) {\n const t = this,\n s = t.params,\n a = d(e).closest(`.${s.slideClass}`)[0]\n let i,\n r = !1\n if (a)\n for (let e = 0; e < t.slides.length; e += 1)\n if (t.slides[e] === a) {\n ;(r = !0), (i = e)\n break\n }\n if (!a || !r)\n return (t.clickedSlide = void 0), void (t.clickedIndex = void 0)\n ;(t.clickedSlide = a),\n t.virtual && t.params.virtual.enabled\n ? (t.clickedIndex = parseInt(\n d(a).attr('data-swiper-slide-index'),\n 10\n ))\n : (t.clickedIndex = i),\n s.slideToClickedSlide &&\n void 0 !== t.clickedIndex &&\n t.clickedIndex !== t.activeIndex &&\n t.slideToClickedSlide()\n },\n }\n var M = {\n getTranslate: function (e) {\n void 0 === e && (e = this.isHorizontal() ? 'x' : 'y')\n const {\n params: t,\n rtlTranslate: s,\n translate: a,\n $wrapperEl: i,\n } = this\n if (t.virtualTranslate) return s ? -a : a\n if (t.cssMode) return a\n let r = h(i[0], e)\n return s && (r = -r), r || 0\n },\n setTranslate: function (e, t) {\n const s = this,\n {\n rtlTranslate: a,\n params: i,\n $wrapperEl: r,\n wrapperEl: n,\n progress: l,\n } = s\n let o,\n d = 0,\n c = 0\n s.isHorizontal() ? (d = a ? -e : e) : (c = e),\n i.roundLengths && ((d = Math.floor(d)), (c = Math.floor(c))),\n i.cssMode\n ? (n[s.isHorizontal() ? 'scrollLeft' : 'scrollTop'] =\n s.isHorizontal() ? -d : -c)\n : i.virtualTranslate ||\n r.transform(`translate3d(${d}px, ${c}px, 0px)`),\n (s.previousTranslate = s.translate),\n (s.translate = s.isHorizontal() ? d : c)\n const p = s.maxTranslate() - s.minTranslate()\n ;(o = 0 === p ? 0 : (e - s.minTranslate()) / p),\n o !== l && s.updateProgress(e),\n s.emit('setTranslate', s.translate, t)\n },\n minTranslate: function () {\n return -this.snapGrid[0]\n },\n maxTranslate: function () {\n return -this.snapGrid[this.snapGrid.length - 1]\n },\n translateTo: function (e, t, s, a, i) {\n void 0 === e && (e = 0),\n void 0 === t && (t = this.params.speed),\n void 0 === s && (s = !0),\n void 0 === a && (a = !0)\n const r = this,\n { params: n, wrapperEl: l } = r\n if (r.animating && n.preventInteractionOnTransition) return !1\n const o = r.minTranslate(),\n d = r.maxTranslate()\n let c\n if (\n ((c = a && e > o ? o : a && e < d ? d : e),\n r.updateProgress(c),\n n.cssMode)\n ) {\n const e = r.isHorizontal()\n if (0 === t) l[e ? 'scrollLeft' : 'scrollTop'] = -c\n else {\n if (!r.support.smoothScroll)\n return (\n w({\n swiper: r,\n targetPosition: -c,\n side: e ? 'left' : 'top',\n }),\n !0\n )\n l.scrollTo({ [e ? 'left' : 'top']: -c, behavior: 'smooth' })\n }\n return !0\n }\n return (\n 0 === t\n ? (r.setTransition(0),\n r.setTranslate(c),\n s &&\n (r.emit('beforeTransitionStart', t, i),\n r.emit('transitionEnd')))\n : (r.setTransition(t),\n r.setTranslate(c),\n s &&\n (r.emit('beforeTransitionStart', t, i),\n r.emit('transitionStart')),\n r.animating ||\n ((r.animating = !0),\n r.onTranslateToWrapperTransitionEnd ||\n (r.onTranslateToWrapperTransitionEnd = function (\n e\n ) {\n r &&\n !r.destroyed &&\n e.target === this &&\n (r.$wrapperEl[0].removeEventListener(\n 'transitionend',\n r.onTranslateToWrapperTransitionEnd\n ),\n r.$wrapperEl[0].removeEventListener(\n 'webkitTransitionEnd',\n r.onTranslateToWrapperTransitionEnd\n ),\n (r.onTranslateToWrapperTransitionEnd =\n null),\n delete r.onTranslateToWrapperTransitionEnd,\n s && r.emit('transitionEnd'))\n }),\n r.$wrapperEl[0].addEventListener(\n 'transitionend',\n r.onTranslateToWrapperTransitionEnd\n ),\n r.$wrapperEl[0].addEventListener(\n 'webkitTransitionEnd',\n r.onTranslateToWrapperTransitionEnd\n ))),\n !0\n )\n },\n }\n function P(e) {\n let { swiper: t, runCallbacks: s, direction: a, step: i } = e\n const { activeIndex: r, previousIndex: n } = t\n let l = a\n if (\n (l || (l = r > n ? 'next' : r < n ? 'prev' : 'reset'),\n t.emit(`transition${i}`),\n s && r !== n)\n ) {\n if ('reset' === l) return void t.emit(`slideResetTransition${i}`)\n t.emit(`slideChangeTransition${i}`),\n 'next' === l\n ? t.emit(`slideNextTransition${i}`)\n : t.emit(`slidePrevTransition${i}`)\n }\n }\n var k = {\n slideTo: function (e, t, s, a, i) {\n if (\n (void 0 === e && (e = 0),\n void 0 === t && (t = this.params.speed),\n void 0 === s && (s = !0),\n 'number' != typeof e && 'string' != typeof e)\n )\n throw new Error(\n `The 'index' argument cannot have type other than 'number' or 'string'. [${typeof e}] given.`\n )\n if ('string' == typeof e) {\n const t = parseInt(e, 10)\n if (!isFinite(t))\n throw new Error(\n `The passed-in 'index' (string) couldn't be converted to 'number'. [${e}] given.`\n )\n e = t\n }\n const r = this\n let n = e\n n < 0 && (n = 0)\n const {\n params: l,\n snapGrid: o,\n slidesGrid: d,\n previousIndex: c,\n activeIndex: p,\n rtlTranslate: u,\n wrapperEl: h,\n enabled: m,\n } = r\n if (\n (r.animating && l.preventInteractionOnTransition) ||\n (!m && !a && !i)\n )\n return !1\n const f = Math.min(r.params.slidesPerGroupSkip, n)\n let g = f + Math.floor((n - f) / r.params.slidesPerGroup)\n g >= o.length && (g = o.length - 1),\n (p || l.initialSlide || 0) === (c || 0) &&\n s &&\n r.emit('beforeSlideChangeStart')\n const v = -o[g]\n if ((r.updateProgress(v), l.normalizeSlideIndex))\n for (let e = 0; e < d.length; e += 1) {\n const t = -Math.floor(100 * v),\n s = Math.floor(100 * d[e]),\n a = Math.floor(100 * d[e + 1])\n void 0 !== d[e + 1]\n ? t >= s && t < a - (a - s) / 2\n ? (n = e)\n : t >= s && t < a && (n = e + 1)\n : t >= s && (n = e)\n }\n if (r.initialized && n !== p) {\n if (\n !r.allowSlideNext &&\n v < r.translate &&\n v < r.minTranslate()\n )\n return !1\n if (\n !r.allowSlidePrev &&\n v > r.translate &&\n v > r.maxTranslate() &&\n (p || 0) !== n\n )\n return !1\n }\n let b\n if (\n ((b = n > p ? 'next' : n < p ? 'prev' : 'reset'),\n (u && -v === r.translate) || (!u && v === r.translate))\n )\n return (\n r.updateActiveIndex(n),\n l.autoHeight && r.updateAutoHeight(),\n r.updateSlidesClasses(),\n 'slide' !== l.effect && r.setTranslate(v),\n 'reset' !== b &&\n (r.transitionStart(s, b), r.transitionEnd(s, b)),\n !1\n )\n if (l.cssMode) {\n const e = r.isHorizontal(),\n s = u ? v : -v\n if (0 === t) {\n const t = r.virtual && r.params.virtual.enabled\n t &&\n ((r.wrapperEl.style.scrollSnapType = 'none'),\n (r._immediateVirtual = !0)),\n (h[e ? 'scrollLeft' : 'scrollTop'] = s),\n t &&\n requestAnimationFrame(() => {\n ;(r.wrapperEl.style.scrollSnapType = ''),\n (r._swiperImmediateVirtual = !1)\n })\n } else {\n if (!r.support.smoothScroll)\n return (\n w({\n swiper: r,\n targetPosition: s,\n side: e ? 'left' : 'top',\n }),\n !0\n )\n h.scrollTo({ [e ? 'left' : 'top']: s, behavior: 'smooth' })\n }\n return !0\n }\n return (\n r.setTransition(t),\n r.setTranslate(v),\n r.updateActiveIndex(n),\n r.updateSlidesClasses(),\n r.emit('beforeTransitionStart', t, a),\n r.transitionStart(s, b),\n 0 === t\n ? r.transitionEnd(s, b)\n : r.animating ||\n ((r.animating = !0),\n r.onSlideToWrapperTransitionEnd ||\n (r.onSlideToWrapperTransitionEnd = function (e) {\n r &&\n !r.destroyed &&\n e.target === this &&\n (r.$wrapperEl[0].removeEventListener(\n 'transitionend',\n r.onSlideToWrapperTransitionEnd\n ),\n r.$wrapperEl[0].removeEventListener(\n 'webkitTransitionEnd',\n r.onSlideToWrapperTransitionEnd\n ),\n (r.onSlideToWrapperTransitionEnd = null),\n delete r.onSlideToWrapperTransitionEnd,\n r.transitionEnd(s, b))\n }),\n r.$wrapperEl[0].addEventListener(\n 'transitionend',\n r.onSlideToWrapperTransitionEnd\n ),\n r.$wrapperEl[0].addEventListener(\n 'webkitTransitionEnd',\n r.onSlideToWrapperTransitionEnd\n )),\n !0\n )\n },\n slideToLoop: function (e, t, s, a) {\n void 0 === e && (e = 0),\n void 0 === t && (t = this.params.speed),\n void 0 === s && (s = !0)\n const i = this\n let r = e\n return i.params.loop && (r += i.loopedSlides), i.slideTo(r, t, s, a)\n },\n slideNext: function (e, t, s) {\n void 0 === e && (e = this.params.speed), void 0 === t && (t = !0)\n const a = this,\n { animating: i, enabled: r, params: n } = a\n if (!r) return a\n let l = n.slidesPerGroup\n 'auto' === n.slidesPerView &&\n 1 === n.slidesPerGroup &&\n n.slidesPerGroupAuto &&\n (l = Math.max(a.slidesPerViewDynamic('current', !0), 1))\n const o = a.activeIndex < n.slidesPerGroupSkip ? 1 : l\n if (n.loop) {\n if (i && n.loopPreventsSlide) return !1\n a.loopFix(), (a._clientLeft = a.$wrapperEl[0].clientLeft)\n }\n return n.rewind && a.isEnd\n ? a.slideTo(0, e, t, s)\n : a.slideTo(a.activeIndex + o, e, t, s)\n },\n slidePrev: function (e, t, s) {\n void 0 === e && (e = this.params.speed), void 0 === t && (t = !0)\n const a = this,\n {\n params: i,\n animating: r,\n snapGrid: n,\n slidesGrid: l,\n rtlTranslate: o,\n enabled: d,\n } = a\n if (!d) return a\n if (i.loop) {\n if (r && i.loopPreventsSlide) return !1\n a.loopFix(), (a._clientLeft = a.$wrapperEl[0].clientLeft)\n }\n function c(e) {\n return e < 0 ? -Math.floor(Math.abs(e)) : Math.floor(e)\n }\n const p = c(o ? a.translate : -a.translate),\n u = n.map((e) => c(e))\n let h = n[u.indexOf(p) - 1]\n if (void 0 === h && i.cssMode) {\n let e\n n.forEach((t, s) => {\n p >= t && (e = s)\n }),\n void 0 !== e && (h = n[e > 0 ? e - 1 : e])\n }\n let m = 0\n if (\n (void 0 !== h &&\n ((m = l.indexOf(h)),\n m < 0 && (m = a.activeIndex - 1),\n 'auto' === i.slidesPerView &&\n 1 === i.slidesPerGroup &&\n i.slidesPerGroupAuto &&\n ((m = m - a.slidesPerViewDynamic('previous', !0) + 1),\n (m = Math.max(m, 0)))),\n i.rewind && a.isBeginning)\n ) {\n const i =\n a.params.virtual && a.params.virtual.enabled && a.virtual\n ? a.virtual.slides.length - 1\n : a.slides.length - 1\n return a.slideTo(i, e, t, s)\n }\n return a.slideTo(m, e, t, s)\n },\n slideReset: function (e, t, s) {\n return (\n void 0 === e && (e = this.params.speed),\n void 0 === t && (t = !0),\n this.slideTo(this.activeIndex, e, t, s)\n )\n },\n slideToClosest: function (e, t, s, a) {\n void 0 === e && (e = this.params.speed),\n void 0 === t && (t = !0),\n void 0 === a && (a = 0.5)\n const i = this\n let r = i.activeIndex\n const n = Math.min(i.params.slidesPerGroupSkip, r),\n l = n + Math.floor((r - n) / i.params.slidesPerGroup),\n o = i.rtlTranslate ? i.translate : -i.translate\n if (o >= i.snapGrid[l]) {\n const e = i.snapGrid[l]\n o - e > (i.snapGrid[l + 1] - e) * a &&\n (r += i.params.slidesPerGroup)\n } else {\n const e = i.snapGrid[l - 1]\n o - e <= (i.snapGrid[l] - e) * a &&\n (r -= i.params.slidesPerGroup)\n }\n return (\n (r = Math.max(r, 0)),\n (r = Math.min(r, i.slidesGrid.length - 1)),\n i.slideTo(r, e, t, s)\n )\n },\n slideToClickedSlide: function () {\n const e = this,\n { params: t, $wrapperEl: s } = e,\n a =\n 'auto' === t.slidesPerView\n ? e.slidesPerViewDynamic()\n : t.slidesPerView\n let i,\n r = e.clickedIndex\n if (t.loop) {\n if (e.animating) return\n ;(i = parseInt(\n d(e.clickedSlide).attr('data-swiper-slide-index'),\n 10\n )),\n t.centeredSlides\n ? r < e.loopedSlides - a / 2 ||\n r > e.slides.length - e.loopedSlides + a / 2\n ? (e.loopFix(),\n (r = s\n .children(\n `.${t.slideClass}[data-swiper-slide-index=\"${i}\"]:not(.${t.slideDuplicateClass})`\n )\n .eq(0)\n .index()),\n p(() => {\n e.slideTo(r)\n }))\n : e.slideTo(r)\n : r > e.slides.length - a\n ? (e.loopFix(),\n (r = s\n .children(\n `.${t.slideClass}[data-swiper-slide-index=\"${i}\"]:not(.${t.slideDuplicateClass})`\n )\n .eq(0)\n .index()),\n p(() => {\n e.slideTo(r)\n }))\n : e.slideTo(r)\n } else e.slideTo(r)\n },\n }\n var z = {\n loopCreate: function () {\n const e = this,\n t = a(),\n { params: s, $wrapperEl: i } = e,\n r = i.children().length > 0 ? d(i.children()[0].parentNode) : i\n r.children(`.${s.slideClass}.${s.slideDuplicateClass}`).remove()\n let n = r.children(`.${s.slideClass}`)\n if (s.loopFillGroupWithBlank) {\n const e = s.slidesPerGroup - (n.length % s.slidesPerGroup)\n if (e !== s.slidesPerGroup) {\n for (let a = 0; a < e; a += 1) {\n const e = d(t.createElement('div')).addClass(\n `${s.slideClass} ${s.slideBlankClass}`\n )\n r.append(e)\n }\n n = r.children(`.${s.slideClass}`)\n }\n }\n 'auto' !== s.slidesPerView ||\n s.loopedSlides ||\n (s.loopedSlides = n.length),\n (e.loopedSlides = Math.ceil(\n parseFloat(s.loopedSlides || s.slidesPerView, 10)\n )),\n (e.loopedSlides += s.loopAdditionalSlides),\n e.loopedSlides > n.length && (e.loopedSlides = n.length)\n const l = [],\n o = []\n n.each((t, s) => {\n const a = d(t)\n s < e.loopedSlides && o.push(t),\n s < n.length && s >= n.length - e.loopedSlides && l.push(t),\n a.attr('data-swiper-slide-index', s)\n })\n for (let e = 0; e < o.length; e += 1)\n r.append(d(o[e].cloneNode(!0)).addClass(s.slideDuplicateClass))\n for (let e = l.length - 1; e >= 0; e -= 1)\n r.prepend(d(l[e].cloneNode(!0)).addClass(s.slideDuplicateClass))\n },\n loopFix: function () {\n const e = this\n e.emit('beforeLoopFix')\n const {\n activeIndex: t,\n slides: s,\n loopedSlides: a,\n allowSlidePrev: i,\n allowSlideNext: r,\n snapGrid: n,\n rtlTranslate: l,\n } = e\n let o\n ;(e.allowSlidePrev = !0), (e.allowSlideNext = !0)\n const d = -n[t] - e.getTranslate()\n if (t < a) {\n ;(o = s.length - 3 * a + t), (o += a)\n e.slideTo(o, 0, !1, !0) &&\n 0 !== d &&\n e.setTranslate((l ? -e.translate : e.translate) - d)\n } else if (t >= s.length - a) {\n ;(o = -s.length + t + a), (o += a)\n e.slideTo(o, 0, !1, !0) &&\n 0 !== d &&\n e.setTranslate((l ? -e.translate : e.translate) - d)\n }\n ;(e.allowSlidePrev = i), (e.allowSlideNext = r), e.emit('loopFix')\n },\n loopDestroy: function () {\n const { $wrapperEl: e, params: t, slides: s } = this\n e\n .children(\n `.${t.slideClass}.${t.slideDuplicateClass},.${t.slideClass}.${t.slideBlankClass}`\n )\n .remove(),\n s.removeAttr('data-swiper-slide-index')\n },\n }\n function O(e) {\n const t = this,\n s = a(),\n i = r(),\n n = t.touchEventsData,\n { params: l, touches: o, enabled: c } = t\n if (!c) return\n if (t.animating && l.preventInteractionOnTransition) return\n !t.animating && l.cssMode && l.loop && t.loopFix()\n let p = e\n p.originalEvent && (p = p.originalEvent)\n let h = d(p.target)\n if ('wrapper' === l.touchEventsTarget && !h.closest(t.wrapperEl).length)\n return\n if (\n ((n.isTouchEvent = 'touchstart' === p.type),\n !n.isTouchEvent && 'which' in p && 3 === p.which)\n )\n return\n if (!n.isTouchEvent && 'button' in p && p.button > 0) return\n if (n.isTouched && n.isMoved) return\n !!l.noSwipingClass &&\n '' !== l.noSwipingClass &&\n p.target &&\n p.target.shadowRoot &&\n e.path &&\n e.path[0] &&\n (h = d(e.path[0]))\n const m = l.noSwipingSelector\n ? l.noSwipingSelector\n : `.${l.noSwipingClass}`,\n f = !(!p.target || !p.target.shadowRoot)\n if (\n l.noSwiping &&\n (f\n ? (function (e, t) {\n return (\n void 0 === t && (t = this),\n (function t(s) {\n return s && s !== a() && s !== r()\n ? (s.assignedSlot && (s = s.assignedSlot),\n s.closest(e) || t(s.getRootNode().host))\n : null\n })(t)\n )\n })(m, p.target)\n : h.closest(m)[0])\n )\n return void (t.allowClick = !0)\n if (l.swipeHandler && !h.closest(l.swipeHandler)[0]) return\n ;(o.currentX =\n 'touchstart' === p.type ? p.targetTouches[0].pageX : p.pageX),\n (o.currentY =\n 'touchstart' === p.type ? p.targetTouches[0].pageY : p.pageY)\n const g = o.currentX,\n v = o.currentY,\n w = l.edgeSwipeDetection || l.iOSEdgeSwipeDetection,\n b = l.edgeSwipeThreshold || l.iOSEdgeSwipeThreshold\n if (w && (g <= b || g >= i.innerWidth - b)) {\n if ('prevent' !== w) return\n e.preventDefault()\n }\n if (\n (Object.assign(n, {\n isTouched: !0,\n isMoved: !1,\n allowTouchCallbacks: !0,\n isScrolling: void 0,\n startMoving: void 0,\n }),\n (o.startX = g),\n (o.startY = v),\n (n.touchStartTime = u()),\n (t.allowClick = !0),\n t.updateSize(),\n (t.swipeDirection = void 0),\n l.threshold > 0 && (n.allowThresholdMove = !1),\n 'touchstart' !== p.type)\n ) {\n let e = !0\n h.is(n.focusableElements) &&\n ((e = !1), 'SELECT' === h[0].nodeName && (n.isTouched = !1)),\n s.activeElement &&\n d(s.activeElement).is(n.focusableElements) &&\n s.activeElement !== h[0] &&\n s.activeElement.blur()\n const a = e && t.allowTouchMove && l.touchStartPreventDefault\n ;(!l.touchStartForcePreventDefault && !a) ||\n h[0].isContentEditable ||\n p.preventDefault()\n }\n t.params.freeMode &&\n t.params.freeMode.enabled &&\n t.freeMode &&\n t.animating &&\n !l.cssMode &&\n t.freeMode.onTouchStart(),\n t.emit('touchStart', p)\n }\n function I(e) {\n const t = a(),\n s = this,\n i = s.touchEventsData,\n { params: r, touches: n, rtlTranslate: l, enabled: o } = s\n if (!o) return\n let c = e\n if ((c.originalEvent && (c = c.originalEvent), !i.isTouched))\n return void (\n i.startMoving &&\n i.isScrolling &&\n s.emit('touchMoveOpposite', c)\n )\n if (i.isTouchEvent && 'touchmove' !== c.type) return\n const p =\n 'touchmove' === c.type &&\n c.targetTouches &&\n (c.targetTouches[0] || c.changedTouches[0]),\n h = 'touchmove' === c.type ? p.pageX : c.pageX,\n m = 'touchmove' === c.type ? p.pageY : c.pageY\n if (c.preventedByNestedSwiper)\n return (n.startX = h), void (n.startY = m)\n if (!s.allowTouchMove)\n return (\n d(c.target).is(i.focusableElements) || (s.allowClick = !1),\n void (\n i.isTouched &&\n (Object.assign(n, {\n startX: h,\n startY: m,\n currentX: h,\n currentY: m,\n }),\n (i.touchStartTime = u()))\n )\n )\n if (i.isTouchEvent && r.touchReleaseOnEdges && !r.loop)\n if (s.isVertical()) {\n if (\n (m < n.startY && s.translate <= s.maxTranslate()) ||\n (m > n.startY && s.translate >= s.minTranslate())\n )\n return (i.isTouched = !1), void (i.isMoved = !1)\n } else if (\n (h < n.startX && s.translate <= s.maxTranslate()) ||\n (h > n.startX && s.translate >= s.minTranslate())\n )\n return\n if (\n i.isTouchEvent &&\n t.activeElement &&\n c.target === t.activeElement &&\n d(c.target).is(i.focusableElements)\n )\n return (i.isMoved = !0), void (s.allowClick = !1)\n if (\n (i.allowTouchCallbacks && s.emit('touchMove', c),\n c.targetTouches && c.targetTouches.length > 1)\n )\n return\n ;(n.currentX = h), (n.currentY = m)\n const f = n.currentX - n.startX,\n g = n.currentY - n.startY\n if (\n s.params.threshold &&\n Math.sqrt(f ** 2 + g ** 2) < s.params.threshold\n )\n return\n if (void 0 === i.isScrolling) {\n let e\n ;(s.isHorizontal() && n.currentY === n.startY) ||\n (s.isVertical() && n.currentX === n.startX)\n ? (i.isScrolling = !1)\n : f * f + g * g >= 25 &&\n ((e = (180 * Math.atan2(Math.abs(g), Math.abs(f))) / Math.PI),\n (i.isScrolling = s.isHorizontal()\n ? e > r.touchAngle\n : 90 - e > r.touchAngle))\n }\n if (\n (i.isScrolling && s.emit('touchMoveOpposite', c),\n void 0 === i.startMoving &&\n ((n.currentX === n.startX && n.currentY === n.startY) ||\n (i.startMoving = !0)),\n i.isScrolling)\n )\n return void (i.isTouched = !1)\n if (!i.startMoving) return\n ;(s.allowClick = !1),\n !r.cssMode && c.cancelable && c.preventDefault(),\n r.touchMoveStopPropagation && !r.nested && c.stopPropagation(),\n i.isMoved ||\n (r.loop && !r.cssMode && s.loopFix(),\n (i.startTranslate = s.getTranslate()),\n s.setTransition(0),\n s.animating &&\n s.$wrapperEl.trigger('webkitTransitionEnd transitionend'),\n (i.allowMomentumBounce = !1),\n !r.grabCursor ||\n (!0 !== s.allowSlideNext && !0 !== s.allowSlidePrev) ||\n s.setGrabCursor(!0),\n s.emit('sliderFirstMove', c)),\n s.emit('sliderMove', c),\n (i.isMoved = !0)\n let v = s.isHorizontal() ? f : g\n ;(n.diff = v),\n (v *= r.touchRatio),\n l && (v = -v),\n (s.swipeDirection = v > 0 ? 'prev' : 'next'),\n (i.currentTranslate = v + i.startTranslate)\n let w = !0,\n b = r.resistanceRatio\n if (\n (r.touchReleaseOnEdges && (b = 0),\n v > 0 && i.currentTranslate > s.minTranslate()\n ? ((w = !1),\n r.resistance &&\n (i.currentTranslate =\n s.minTranslate() -\n 1 +\n (-s.minTranslate() + i.startTranslate + v) ** b))\n : v < 0 &&\n i.currentTranslate < s.maxTranslate() &&\n ((w = !1),\n r.resistance &&\n (i.currentTranslate =\n s.maxTranslate() +\n 1 -\n (s.maxTranslate() - i.startTranslate - v) ** b)),\n w && (c.preventedByNestedSwiper = !0),\n !s.allowSlideNext &&\n 'next' === s.swipeDirection &&\n i.currentTranslate < i.startTranslate &&\n (i.currentTranslate = i.startTranslate),\n !s.allowSlidePrev &&\n 'prev' === s.swipeDirection &&\n i.currentTranslate > i.startTranslate &&\n (i.currentTranslate = i.startTranslate),\n s.allowSlidePrev ||\n s.allowSlideNext ||\n (i.currentTranslate = i.startTranslate),\n r.threshold > 0)\n ) {\n if (!(Math.abs(v) > r.threshold || i.allowThresholdMove))\n return void (i.currentTranslate = i.startTranslate)\n if (!i.allowThresholdMove)\n return (\n (i.allowThresholdMove = !0),\n (n.startX = n.currentX),\n (n.startY = n.currentY),\n (i.currentTranslate = i.startTranslate),\n void (n.diff = s.isHorizontal()\n ? n.currentX - n.startX\n : n.currentY - n.startY)\n )\n }\n r.followFinger &&\n !r.cssMode &&\n (((r.freeMode && r.freeMode.enabled && s.freeMode) ||\n r.watchSlidesProgress) &&\n (s.updateActiveIndex(), s.updateSlidesClasses()),\n s.params.freeMode &&\n r.freeMode.enabled &&\n s.freeMode &&\n s.freeMode.onTouchMove(),\n s.updateProgress(i.currentTranslate),\n s.setTranslate(i.currentTranslate))\n }\n function L(e) {\n const t = this,\n s = t.touchEventsData,\n {\n params: a,\n touches: i,\n rtlTranslate: r,\n slidesGrid: n,\n enabled: l,\n } = t\n if (!l) return\n let o = e\n if (\n (o.originalEvent && (o = o.originalEvent),\n s.allowTouchCallbacks && t.emit('touchEnd', o),\n (s.allowTouchCallbacks = !1),\n !s.isTouched)\n )\n return (\n s.isMoved && a.grabCursor && t.setGrabCursor(!1),\n (s.isMoved = !1),\n void (s.startMoving = !1)\n )\n a.grabCursor &&\n s.isMoved &&\n s.isTouched &&\n (!0 === t.allowSlideNext || !0 === t.allowSlidePrev) &&\n t.setGrabCursor(!1)\n const d = u(),\n c = d - s.touchStartTime\n if (t.allowClick) {\n const e = o.path || (o.composedPath && o.composedPath())\n t.updateClickedSlide((e && e[0]) || o.target),\n t.emit('tap click', o),\n c < 300 &&\n d - s.lastClickTime < 300 &&\n t.emit('doubleTap doubleClick', o)\n }\n if (\n ((s.lastClickTime = u()),\n p(() => {\n t.destroyed || (t.allowClick = !0)\n }),\n !s.isTouched ||\n !s.isMoved ||\n !t.swipeDirection ||\n 0 === i.diff ||\n s.currentTranslate === s.startTranslate)\n )\n return (\n (s.isTouched = !1), (s.isMoved = !1), void (s.startMoving = !1)\n )\n let h\n if (\n ((s.isTouched = !1),\n (s.isMoved = !1),\n (s.startMoving = !1),\n (h = a.followFinger\n ? r\n ? t.translate\n : -t.translate\n : -s.currentTranslate),\n a.cssMode)\n )\n return\n if (t.params.freeMode && a.freeMode.enabled)\n return void t.freeMode.onTouchEnd({ currentPos: h })\n let m = 0,\n f = t.slidesSizesGrid[0]\n for (\n let e = 0;\n e < n.length;\n e += e < a.slidesPerGroupSkip ? 1 : a.slidesPerGroup\n ) {\n const t = e < a.slidesPerGroupSkip - 1 ? 1 : a.slidesPerGroup\n void 0 !== n[e + t]\n ? h >= n[e] && h < n[e + t] && ((m = e), (f = n[e + t] - n[e]))\n : h >= n[e] &&\n ((m = e), (f = n[n.length - 1] - n[n.length - 2]))\n }\n let g = null,\n v = null\n a.rewind &&\n (t.isBeginning\n ? (v =\n t.params.virtual && t.params.virtual.enabled && t.virtual\n ? t.virtual.slides.length - 1\n : t.slides.length - 1)\n : t.isEnd && (g = 0))\n const w = (h - n[m]) / f,\n b = m < a.slidesPerGroupSkip - 1 ? 1 : a.slidesPerGroup\n if (c > a.longSwipesMs) {\n if (!a.longSwipes) return void t.slideTo(t.activeIndex)\n 'next' === t.swipeDirection &&\n (w >= a.longSwipesRatio\n ? t.slideTo(a.rewind && t.isEnd ? g : m + b)\n : t.slideTo(m)),\n 'prev' === t.swipeDirection &&\n (w > 1 - a.longSwipesRatio\n ? t.slideTo(m + b)\n : null !== v && w < 0 && Math.abs(w) > a.longSwipesRatio\n ? t.slideTo(v)\n : t.slideTo(m))\n } else {\n if (!a.shortSwipes) return void t.slideTo(t.activeIndex)\n t.navigation &&\n (o.target === t.navigation.nextEl ||\n o.target === t.navigation.prevEl)\n ? o.target === t.navigation.nextEl\n ? t.slideTo(m + b)\n : t.slideTo(m)\n : ('next' === t.swipeDirection &&\n t.slideTo(null !== g ? g : m + b),\n 'prev' === t.swipeDirection && t.slideTo(null !== v ? v : m))\n }\n }\n function A() {\n const e = this,\n { params: t, el: s } = e\n if (s && 0 === s.offsetWidth) return\n t.breakpoints && e.setBreakpoint()\n const { allowSlideNext: a, allowSlidePrev: i, snapGrid: r } = e\n ;(e.allowSlideNext = !0),\n (e.allowSlidePrev = !0),\n e.updateSize(),\n e.updateSlides(),\n e.updateSlidesClasses(),\n ('auto' === t.slidesPerView || t.slidesPerView > 1) &&\n e.isEnd &&\n !e.isBeginning &&\n !e.params.centeredSlides\n ? e.slideTo(e.slides.length - 1, 0, !1, !0)\n : e.slideTo(e.activeIndex, 0, !1, !0),\n e.autoplay &&\n e.autoplay.running &&\n e.autoplay.paused &&\n e.autoplay.run(),\n (e.allowSlidePrev = i),\n (e.allowSlideNext = a),\n e.params.watchOverflow && r !== e.snapGrid && e.checkOverflow()\n }\n function D(e) {\n const t = this\n t.enabled &&\n (t.allowClick ||\n (t.params.preventClicks && e.preventDefault(),\n t.params.preventClicksPropagation &&\n t.animating &&\n (e.stopPropagation(), e.stopImmediatePropagation())))\n }\n function G() {\n const e = this,\n { wrapperEl: t, rtlTranslate: s, enabled: a } = e\n if (!a) return\n let i\n ;(e.previousTranslate = e.translate),\n e.isHorizontal()\n ? (e.translate = -t.scrollLeft)\n : (e.translate = -t.scrollTop),\n -0 === e.translate && (e.translate = 0),\n e.updateActiveIndex(),\n e.updateSlidesClasses()\n const r = e.maxTranslate() - e.minTranslate()\n ;(i = 0 === r ? 0 : (e.translate - e.minTranslate()) / r),\n i !== e.progress &&\n e.updateProgress(s ? -e.translate : e.translate),\n e.emit('setTranslate', e.translate, !1)\n }\n let B = !1\n function N() {}\n const H = (e, t) => {\n const s = a(),\n {\n params: i,\n touchEvents: r,\n el: n,\n wrapperEl: l,\n device: o,\n support: d,\n } = e,\n c = !!i.nested,\n p = 'on' === t ? 'addEventListener' : 'removeEventListener',\n u = t\n if (d.touch) {\n const t = !(\n 'touchstart' !== r.start ||\n !d.passiveListener ||\n !i.passiveListeners\n ) && { passive: !0, capture: !1 }\n n[p](r.start, e.onTouchStart, t),\n n[p](\n r.move,\n e.onTouchMove,\n d.passiveListener ? { passive: !1, capture: c } : c\n ),\n n[p](r.end, e.onTouchEnd, t),\n r.cancel && n[p](r.cancel, e.onTouchEnd, t)\n } else\n n[p](r.start, e.onTouchStart, !1),\n s[p](r.move, e.onTouchMove, c),\n s[p](r.end, e.onTouchEnd, !1)\n ;(i.preventClicks || i.preventClicksPropagation) &&\n n[p]('click', e.onClick, !0),\n i.cssMode && l[p]('scroll', e.onScroll),\n i.updateOnWindowResize\n ? e[u](\n o.ios || o.android\n ? 'resize orientationchange observerUpdate'\n : 'resize observerUpdate',\n A,\n !0\n )\n : e[u]('observerUpdate', A, !0)\n }\n var X = {\n attachEvents: function () {\n const e = this,\n t = a(),\n { params: s, support: i } = e\n ;(e.onTouchStart = O.bind(e)),\n (e.onTouchMove = I.bind(e)),\n (e.onTouchEnd = L.bind(e)),\n s.cssMode && (e.onScroll = G.bind(e)),\n (e.onClick = D.bind(e)),\n i.touch &&\n !B &&\n (t.addEventListener('touchstart', N), (B = !0)),\n H(e, 'on')\n },\n detachEvents: function () {\n H(this, 'off')\n },\n }\n const Y = (e, t) => e.grid && t.grid && t.grid.rows > 1\n var R = {\n addClasses: function () {\n const e = this,\n {\n classNames: t,\n params: s,\n rtl: a,\n $el: i,\n device: r,\n support: n,\n } = e,\n l = (function (e, t) {\n const s = []\n return (\n e.forEach((e) => {\n 'object' == typeof e\n ? Object.keys(e).forEach((a) => {\n e[a] && s.push(t + a)\n })\n : 'string' == typeof e && s.push(t + e)\n }),\n s\n )\n })(\n [\n 'initialized',\n s.direction,\n { 'pointer-events': !n.touch },\n {\n 'free-mode':\n e.params.freeMode && s.freeMode.enabled,\n },\n { autoheight: s.autoHeight },\n { rtl: a },\n { grid: s.grid && s.grid.rows > 1 },\n {\n 'grid-column':\n s.grid &&\n s.grid.rows > 1 &&\n 'column' === s.grid.fill,\n },\n { android: r.android },\n { ios: r.ios },\n { 'css-mode': s.cssMode },\n { centered: s.cssMode && s.centeredSlides },\n ],\n s.containerModifierClass\n )\n t.push(...l), i.addClass([...t].join(' ')), e.emitContainerClasses()\n },\n removeClasses: function () {\n const { $el: e, classNames: t } = this\n e.removeClass(t.join(' ')), this.emitContainerClasses()\n },\n }\n var W = {\n init: !0,\n direction: 'horizontal',\n touchEventsTarget: 'wrapper',\n initialSlide: 0,\n speed: 300,\n cssMode: !1,\n updateOnWindowResize: !0,\n resizeObserver: !0,\n nested: !1,\n createElements: !1,\n enabled: !0,\n focusableElements:\n 'input, select, option, textarea, button, video, label',\n width: null,\n height: null,\n preventInteractionOnTransition: !1,\n userAgent: null,\n url: null,\n edgeSwipeDetection: !1,\n edgeSwipeThreshold: 20,\n autoHeight: !1,\n setWrapperSize: !1,\n virtualTranslate: !1,\n effect: 'slide',\n breakpoints: void 0,\n breakpointsBase: 'window',\n spaceBetween: 0,\n slidesPerView: 1,\n slidesPerGroup: 1,\n slidesPerGroupSkip: 0,\n slidesPerGroupAuto: !1,\n centeredSlides: !1,\n centeredSlidesBounds: !1,\n slidesOffsetBefore: 0,\n slidesOffsetAfter: 0,\n normalizeSlideIndex: !0,\n centerInsufficientSlides: !1,\n watchOverflow: !0,\n roundLengths: !1,\n touchRatio: 1,\n touchAngle: 45,\n simulateTouch: !0,\n shortSwipes: !0,\n longSwipes: !0,\n longSwipesRatio: 0.5,\n longSwipesMs: 300,\n followFinger: !0,\n allowTouchMove: !0,\n threshold: 0,\n touchMoveStopPropagation: !1,\n touchStartPreventDefault: !0,\n touchStartForcePreventDefault: !1,\n touchReleaseOnEdges: !1,\n uniqueNavElements: !0,\n resistance: !0,\n resistanceRatio: 0.85,\n watchSlidesProgress: !1,\n grabCursor: !1,\n preventClicks: !0,\n preventClicksPropagation: !0,\n slideToClickedSlide: !1,\n preloadImages: !0,\n updateOnImagesReady: !0,\n loop: !1,\n loopAdditionalSlides: 0,\n loopedSlides: null,\n loopFillGroupWithBlank: !1,\n loopPreventsSlide: !0,\n rewind: !1,\n allowSlidePrev: !0,\n allowSlideNext: !0,\n swipeHandler: null,\n noSwiping: !0,\n noSwipingClass: 'swiper-no-swiping',\n noSwipingSelector: null,\n passiveListeners: !0,\n maxBackfaceHiddenSlides: 10,\n containerModifierClass: 'swiper-',\n slideClass: 'swiper-slide',\n slideBlankClass: 'swiper-slide-invisible-blank',\n slideActiveClass: 'swiper-slide-active',\n slideDuplicateActiveClass: 'swiper-slide-duplicate-active',\n slideVisibleClass: 'swiper-slide-visible',\n slideDuplicateClass: 'swiper-slide-duplicate',\n slideNextClass: 'swiper-slide-next',\n slideDuplicateNextClass: 'swiper-slide-duplicate-next',\n slidePrevClass: 'swiper-slide-prev',\n slideDuplicatePrevClass: 'swiper-slide-duplicate-prev',\n wrapperClass: 'swiper-wrapper',\n runCallbacksOnInit: !0,\n _emitClasses: !1,\n }\n function j(e, t) {\n return function (s) {\n void 0 === s && (s = {})\n const a = Object.keys(s)[0],\n i = s[a]\n 'object' == typeof i && null !== i\n ? (['navigation', 'pagination', 'scrollbar'].indexOf(a) >= 0 &&\n !0 === e[a] &&\n (e[a] = { auto: !0 }),\n a in e && 'enabled' in i\n ? (!0 === e[a] && (e[a] = { enabled: !0 }),\n 'object' != typeof e[a] ||\n 'enabled' in e[a] ||\n (e[a].enabled = !0),\n e[a] || (e[a] = { enabled: !1 }),\n g(t, s))\n : g(t, s))\n : g(t, s)\n }\n }\n const _ = {\n eventsEmitter: $,\n update: S,\n translate: M,\n transition: {\n setTransition: function (e, t) {\n const s = this\n s.params.cssMode || s.$wrapperEl.transition(e),\n s.emit('setTransition', e, t)\n },\n transitionStart: function (e, t) {\n void 0 === e && (e = !0)\n const s = this,\n { params: a } = s\n a.cssMode ||\n (a.autoHeight && s.updateAutoHeight(),\n P({\n swiper: s,\n runCallbacks: e,\n direction: t,\n step: 'Start',\n }))\n },\n transitionEnd: function (e, t) {\n void 0 === e && (e = !0)\n const s = this,\n { params: a } = s\n ;(s.animating = !1),\n a.cssMode ||\n (s.setTransition(0),\n P({\n swiper: s,\n runCallbacks: e,\n direction: t,\n step: 'End',\n }))\n },\n },\n slide: k,\n loop: z,\n grabCursor: {\n setGrabCursor: function (e) {\n const t = this\n if (\n t.support.touch ||\n !t.params.simulateTouch ||\n (t.params.watchOverflow && t.isLocked) ||\n t.params.cssMode\n )\n return\n const s =\n 'container' === t.params.touchEventsTarget\n ? t.el\n : t.wrapperEl\n ;(s.style.cursor = 'move'),\n (s.style.cursor = e\n ? '-webkit-grabbing'\n : '-webkit-grab'),\n (s.style.cursor = e ? '-moz-grabbin' : '-moz-grab'),\n (s.style.cursor = e ? 'grabbing' : 'grab')\n },\n unsetGrabCursor: function () {\n const e = this\n e.support.touch ||\n (e.params.watchOverflow && e.isLocked) ||\n e.params.cssMode ||\n (e[\n 'container' === e.params.touchEventsTarget\n ? 'el'\n : 'wrapperEl'\n ].style.cursor = '')\n },\n },\n events: X,\n breakpoints: {\n setBreakpoint: function () {\n const e = this,\n {\n activeIndex: t,\n initialized: s,\n loopedSlides: a = 0,\n params: i,\n $el: r,\n } = e,\n n = i.breakpoints\n if (!n || (n && 0 === Object.keys(n).length)) return\n const l = e.getBreakpoint(n, e.params.breakpointsBase, e.el)\n if (!l || e.currentBreakpoint === l) return\n const o = (l in n ? n[l] : void 0) || e.originalParams,\n d = Y(e, i),\n c = Y(e, o),\n p = i.enabled\n d && !c\n ? (r.removeClass(\n `${i.containerModifierClass}grid ${i.containerModifierClass}grid-column`\n ),\n e.emitContainerClasses())\n : !d &&\n c &&\n (r.addClass(`${i.containerModifierClass}grid`),\n ((o.grid.fill && 'column' === o.grid.fill) ||\n (!o.grid.fill && 'column' === i.grid.fill)) &&\n r.addClass(\n `${i.containerModifierClass}grid-column`\n ),\n e.emitContainerClasses())\n const u = o.direction && o.direction !== i.direction,\n h = i.loop && (o.slidesPerView !== i.slidesPerView || u)\n u && s && e.changeDirection(), g(e.params, o)\n const m = e.params.enabled\n Object.assign(e, {\n allowTouchMove: e.params.allowTouchMove,\n allowSlideNext: e.params.allowSlideNext,\n allowSlidePrev: e.params.allowSlidePrev,\n }),\n p && !m ? e.disable() : !p && m && e.enable(),\n (e.currentBreakpoint = l),\n e.emit('_beforeBreakpoint', o),\n h &&\n s &&\n (e.loopDestroy(),\n e.loopCreate(),\n e.updateSlides(),\n e.slideTo(t - a + e.loopedSlides, 0, !1)),\n e.emit('breakpoint', o)\n },\n getBreakpoint: function (e, t, s) {\n if (\n (void 0 === t && (t = 'window'),\n !e || ('container' === t && !s))\n )\n return\n let a = !1\n const i = r(),\n n = 'window' === t ? i.innerHeight : s.clientHeight,\n l = Object.keys(e).map((e) => {\n if ('string' == typeof e && 0 === e.indexOf('@')) {\n const t = parseFloat(e.substr(1))\n return { value: n * t, point: e }\n }\n return { value: e, point: e }\n })\n l.sort(\n (e, t) => parseInt(e.value, 10) - parseInt(t.value, 10)\n )\n for (let e = 0; e < l.length; e += 1) {\n const { point: r, value: n } = l[e]\n 'window' === t\n ? i.matchMedia(`(min-width: ${n}px)`).matches &&\n (a = r)\n : n <= s.clientWidth && (a = r)\n }\n return a || 'max'\n },\n },\n checkOverflow: {\n checkOverflow: function () {\n const e = this,\n { isLocked: t, params: s } = e,\n { slidesOffsetBefore: a } = s\n if (a) {\n const t = e.slides.length - 1,\n s = e.slidesGrid[t] + e.slidesSizesGrid[t] + 2 * a\n e.isLocked = e.size > s\n } else e.isLocked = 1 === e.snapGrid.length\n !0 === s.allowSlideNext && (e.allowSlideNext = !e.isLocked),\n !0 === s.allowSlidePrev &&\n (e.allowSlidePrev = !e.isLocked),\n t && t !== e.isLocked && (e.isEnd = !1),\n t !== e.isLocked &&\n e.emit(e.isLocked ? 'lock' : 'unlock')\n },\n },\n classes: R,\n images: {\n loadImage: function (e, t, s, a, i, n) {\n const l = r()\n let o\n function c() {\n n && n()\n }\n d(e).parent('picture')[0] || (e.complete && i)\n ? c()\n : t\n ? ((o = new l.Image()),\n (o.onload = c),\n (o.onerror = c),\n a && (o.sizes = a),\n s && (o.srcset = s),\n t && (o.src = t))\n : c()\n },\n preloadImages: function () {\n const e = this\n function t() {\n null != e &&\n e &&\n !e.destroyed &&\n (void 0 !== e.imagesLoaded && (e.imagesLoaded += 1),\n e.imagesLoaded === e.imagesToLoad.length &&\n (e.params.updateOnImagesReady && e.update(),\n e.emit('imagesReady')))\n }\n e.imagesToLoad = e.$el.find('img')\n for (let s = 0; s < e.imagesToLoad.length; s += 1) {\n const a = e.imagesToLoad[s]\n e.loadImage(\n a,\n a.currentSrc || a.getAttribute('src'),\n a.srcset || a.getAttribute('srcset'),\n a.sizes || a.getAttribute('sizes'),\n !0,\n t\n )\n }\n },\n },\n },\n q = {}\n class V {\n constructor() {\n let e, t\n for (var s = arguments.length, a = new Array(s), i = 0; i < s; i++)\n a[i] = arguments[i]\n if (\n (1 === a.length &&\n a[0].constructor &&\n 'Object' === Object.prototype.toString.call(a[0]).slice(8, -1)\n ? (t = a[0])\n : ([e, t] = a),\n t || (t = {}),\n (t = g({}, t)),\n e && !t.el && (t.el = e),\n t.el && d(t.el).length > 1)\n ) {\n const e = []\n return (\n d(t.el).each((s) => {\n const a = g({}, t, { el: s })\n e.push(new V(a))\n }),\n e\n )\n }\n const r = this\n ;(r.__swiper__ = !0),\n (r.support = E()),\n (r.device = T({ userAgent: t.userAgent })),\n (r.browser = C()),\n (r.eventsListeners = {}),\n (r.eventsAnyListeners = []),\n (r.modules = [...r.__modules__]),\n t.modules &&\n Array.isArray(t.modules) &&\n r.modules.push(...t.modules)\n const n = {}\n r.modules.forEach((e) => {\n e({\n swiper: r,\n extendParams: j(t, n),\n on: r.on.bind(r),\n once: r.once.bind(r),\n off: r.off.bind(r),\n emit: r.emit.bind(r),\n })\n })\n const l = g({}, W, n)\n return (\n (r.params = g({}, l, q, t)),\n (r.originalParams = g({}, r.params)),\n (r.passedParams = g({}, t)),\n r.params &&\n r.params.on &&\n Object.keys(r.params.on).forEach((e) => {\n r.on(e, r.params.on[e])\n }),\n r.params && r.params.onAny && r.onAny(r.params.onAny),\n (r.$ = d),\n Object.assign(r, {\n enabled: r.params.enabled,\n el: e,\n classNames: [],\n slides: d(),\n slidesGrid: [],\n snapGrid: [],\n slidesSizesGrid: [],\n isHorizontal: () => 'horizontal' === r.params.direction,\n isVertical: () => 'vertical' === r.params.direction,\n activeIndex: 0,\n realIndex: 0,\n isBeginning: !0,\n isEnd: !1,\n translate: 0,\n previousTranslate: 0,\n progress: 0,\n velocity: 0,\n animating: !1,\n allowSlideNext: r.params.allowSlideNext,\n allowSlidePrev: r.params.allowSlidePrev,\n touchEvents: (function () {\n const e = [\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n ],\n t = ['pointerdown', 'pointermove', 'pointerup']\n return (\n (r.touchEventsTouch = {\n start: e[0],\n move: e[1],\n end: e[2],\n cancel: e[3],\n }),\n (r.touchEventsDesktop = {\n start: t[0],\n move: t[1],\n end: t[2],\n }),\n r.support.touch || !r.params.simulateTouch\n ? r.touchEventsTouch\n : r.touchEventsDesktop\n )\n })(),\n touchEventsData: {\n isTouched: void 0,\n isMoved: void 0,\n allowTouchCallbacks: void 0,\n touchStartTime: void 0,\n isScrolling: void 0,\n currentTranslate: void 0,\n startTranslate: void 0,\n allowThresholdMove: void 0,\n focusableElements: r.params.focusableElements,\n lastClickTime: u(),\n clickTimeout: void 0,\n velocities: [],\n allowMomentumBounce: void 0,\n isTouchEvent: void 0,\n startMoving: void 0,\n },\n allowClick: !0,\n allowTouchMove: r.params.allowTouchMove,\n touches: {\n startX: 0,\n startY: 0,\n currentX: 0,\n currentY: 0,\n diff: 0,\n },\n imagesToLoad: [],\n imagesLoaded: 0,\n }),\n r.emit('_swiper'),\n r.params.init && r.init(),\n r\n )\n }\n enable() {\n const e = this\n e.enabled ||\n ((e.enabled = !0),\n e.params.grabCursor && e.setGrabCursor(),\n e.emit('enable'))\n }\n disable() {\n const e = this\n e.enabled &&\n ((e.enabled = !1),\n e.params.grabCursor && e.unsetGrabCursor(),\n e.emit('disable'))\n }\n setProgress(e, t) {\n const s = this\n e = Math.min(Math.max(e, 0), 1)\n const a = s.minTranslate(),\n i = (s.maxTranslate() - a) * e + a\n s.translateTo(i, void 0 === t ? 0 : t),\n s.updateActiveIndex(),\n s.updateSlidesClasses()\n }\n emitContainerClasses() {\n const e = this\n if (!e.params._emitClasses || !e.el) return\n const t = e.el.className\n .split(' ')\n .filter(\n (t) =>\n 0 === t.indexOf('swiper') ||\n 0 === t.indexOf(e.params.containerModifierClass)\n )\n e.emit('_containerClasses', t.join(' '))\n }\n getSlideClasses(e) {\n const t = this\n return e.className\n .split(' ')\n .filter(\n (e) =>\n 0 === e.indexOf('swiper-slide') ||\n 0 === e.indexOf(t.params.slideClass)\n )\n .join(' ')\n }\n emitSlidesClasses() {\n const e = this\n if (!e.params._emitClasses || !e.el) return\n const t = []\n e.slides.each((s) => {\n const a = e.getSlideClasses(s)\n t.push({ slideEl: s, classNames: a }),\n e.emit('_slideClass', s, a)\n }),\n e.emit('_slideClasses', t)\n }\n slidesPerViewDynamic(e, t) {\n void 0 === e && (e = 'current'), void 0 === t && (t = !1)\n const {\n params: s,\n slides: a,\n slidesGrid: i,\n slidesSizesGrid: r,\n size: n,\n activeIndex: l,\n } = this\n let o = 1\n if (s.centeredSlides) {\n let e,\n t = a[l].swiperSlideSize\n for (let s = l + 1; s < a.length; s += 1)\n a[s] &&\n !e &&\n ((t += a[s].swiperSlideSize),\n (o += 1),\n t > n && (e = !0))\n for (let s = l - 1; s >= 0; s -= 1)\n a[s] &&\n !e &&\n ((t += a[s].swiperSlideSize),\n (o += 1),\n t > n && (e = !0))\n } else if ('current' === e)\n for (let e = l + 1; e < a.length; e += 1) {\n ;(t ? i[e] + r[e] - i[l] < n : i[e] - i[l] < n) && (o += 1)\n }\n else\n for (let e = l - 1; e >= 0; e -= 1) {\n i[l] - i[e] < n && (o += 1)\n }\n return o\n }\n update() {\n const e = this\n if (!e || e.destroyed) return\n const { snapGrid: t, params: s } = e\n function a() {\n const t = e.rtlTranslate ? -1 * e.translate : e.translate,\n s = Math.min(\n Math.max(t, e.maxTranslate()),\n e.minTranslate()\n )\n e.setTranslate(s),\n e.updateActiveIndex(),\n e.updateSlidesClasses()\n }\n let i\n s.breakpoints && e.setBreakpoint(),\n e.updateSize(),\n e.updateSlides(),\n e.updateProgress(),\n e.updateSlidesClasses(),\n e.params.freeMode && e.params.freeMode.enabled\n ? (a(), e.params.autoHeight && e.updateAutoHeight())\n : ((i =\n ('auto' === e.params.slidesPerView ||\n e.params.slidesPerView > 1) &&\n e.isEnd &&\n !e.params.centeredSlides\n ? e.slideTo(e.slides.length - 1, 0, !1, !0)\n : e.slideTo(e.activeIndex, 0, !1, !0)),\n i || a()),\n s.watchOverflow && t !== e.snapGrid && e.checkOverflow(),\n e.emit('update')\n }\n changeDirection(e, t) {\n void 0 === t && (t = !0)\n const s = this,\n a = s.params.direction\n return (\n e || (e = 'horizontal' === a ? 'vertical' : 'horizontal'),\n e === a ||\n ('horizontal' !== e && 'vertical' !== e) ||\n (s.$el\n .removeClass(`${s.params.containerModifierClass}${a}`)\n .addClass(`${s.params.containerModifierClass}${e}`),\n s.emitContainerClasses(),\n (s.params.direction = e),\n s.slides.each((t) => {\n 'vertical' === e\n ? (t.style.width = '')\n : (t.style.height = '')\n }),\n s.emit('changeDirection'),\n t && s.update()),\n s\n )\n }\n mount(e) {\n const t = this\n if (t.mounted) return !0\n const s = d(e || t.params.el)\n if (!(e = s[0])) return !1\n e.swiper = t\n const i = () =>\n `.${(t.params.wrapperClass || '').trim().split(' ').join('.')}`\n let r = (() => {\n if (e && e.shadowRoot && e.shadowRoot.querySelector) {\n const t = d(e.shadowRoot.querySelector(i()))\n return (t.children = (e) => s.children(e)), t\n }\n return s.children(i())\n })()\n if (0 === r.length && t.params.createElements) {\n const e = a().createElement('div')\n ;(r = d(e)),\n (e.className = t.params.wrapperClass),\n s.append(e),\n s.children(`.${t.params.slideClass}`).each((e) => {\n r.append(e)\n })\n }\n return (\n Object.assign(t, {\n $el: s,\n el: e,\n $wrapperEl: r,\n wrapperEl: r[0],\n mounted: !0,\n rtl:\n 'rtl' === e.dir.toLowerCase() ||\n 'rtl' === s.css('direction'),\n rtlTranslate:\n 'horizontal' === t.params.direction &&\n ('rtl' === e.dir.toLowerCase() ||\n 'rtl' === s.css('direction')),\n wrongRTL: '-webkit-box' === r.css('display'),\n }),\n !0\n )\n }\n init(e) {\n const t = this\n if (t.initialized) return t\n return (\n !1 === t.mount(e) ||\n (t.emit('beforeInit'),\n t.params.breakpoints && t.setBreakpoint(),\n t.addClasses(),\n t.params.loop && t.loopCreate(),\n t.updateSize(),\n t.updateSlides(),\n t.params.watchOverflow && t.checkOverflow(),\n t.params.grabCursor && t.enabled && t.setGrabCursor(),\n t.params.preloadImages && t.preloadImages(),\n t.params.loop\n ? t.slideTo(\n t.params.initialSlide + t.loopedSlides,\n 0,\n t.params.runCallbacksOnInit,\n !1,\n !0\n )\n : t.slideTo(\n t.params.initialSlide,\n 0,\n t.params.runCallbacksOnInit,\n !1,\n !0\n ),\n t.attachEvents(),\n (t.initialized = !0),\n t.emit('init'),\n t.emit('afterInit')),\n t\n )\n }\n destroy(e, t) {\n void 0 === e && (e = !0), void 0 === t && (t = !0)\n const s = this,\n { params: a, $el: i, $wrapperEl: r, slides: n } = s\n return (\n void 0 === s.params ||\n s.destroyed ||\n (s.emit('beforeDestroy'),\n (s.initialized = !1),\n s.detachEvents(),\n a.loop && s.loopDestroy(),\n t &&\n (s.removeClasses(),\n i.removeAttr('style'),\n r.removeAttr('style'),\n n &&\n n.length &&\n n\n .removeClass(\n [\n a.slideVisibleClass,\n a.slideActiveClass,\n a.slideNextClass,\n a.slidePrevClass,\n ].join(' ')\n )\n .removeAttr('style')\n .removeAttr('data-swiper-slide-index')),\n s.emit('destroy'),\n Object.keys(s.eventsListeners).forEach((e) => {\n s.off(e)\n }),\n !1 !== e &&\n ((s.$el[0].swiper = null),\n (function (e) {\n const t = e\n Object.keys(t).forEach((e) => {\n try {\n t[e] = null\n } catch (e) {}\n try {\n delete t[e]\n } catch (e) {}\n })\n })(s)),\n (s.destroyed = !0)),\n null\n )\n }\n static extendDefaults(e) {\n g(q, e)\n }\n static get extendedDefaults() {\n return q\n }\n static get defaults() {\n return W\n }\n static installModule(e) {\n V.prototype.__modules__ || (V.prototype.__modules__ = [])\n const t = V.prototype.__modules__\n 'function' == typeof e && t.indexOf(e) < 0 && t.push(e)\n }\n static use(e) {\n return Array.isArray(e)\n ? (e.forEach((e) => V.installModule(e)), V)\n : (V.installModule(e), V)\n }\n }\n function F(e, t, s, i) {\n const r = a()\n return (\n e.params.createElements &&\n Object.keys(i).forEach((a) => {\n if (!s[a] && !0 === s.auto) {\n let n = e.$el.children(`.${i[a]}`)[0]\n n ||\n ((n = r.createElement('div')),\n (n.className = i[a]),\n e.$el.append(n)),\n (s[a] = n),\n (t[a] = n)\n }\n }),\n s\n )\n }\n function U(e) {\n return (\n void 0 === e && (e = ''),\n `.${e\n .trim()\n .replace(/([\\.:!\\/])/g, '\\\\$1')\n .replace(/ /g, '.')}`\n )\n }\n function K(e) {\n const t = this,\n { $wrapperEl: s, params: a } = t\n if ((a.loop && t.loopDestroy(), 'object' == typeof e && 'length' in e))\n for (let t = 0; t < e.length; t += 1) e[t] && s.append(e[t])\n else s.append(e)\n a.loop && t.loopCreate(), a.observer || t.update()\n }\n function Z(e) {\n const t = this,\n { params: s, $wrapperEl: a, activeIndex: i } = t\n s.loop && t.loopDestroy()\n let r = i + 1\n if ('object' == typeof e && 'length' in e) {\n for (let t = 0; t < e.length; t += 1) e[t] && a.prepend(e[t])\n r = i + e.length\n } else a.prepend(e)\n s.loop && t.loopCreate(), s.observer || t.update(), t.slideTo(r, 0, !1)\n }\n function J(e, t) {\n const s = this,\n { $wrapperEl: a, params: i, activeIndex: r } = s\n let n = r\n i.loop &&\n ((n -= s.loopedSlides),\n s.loopDestroy(),\n (s.slides = a.children(`.${i.slideClass}`)))\n const l = s.slides.length\n if (e <= 0) return void s.prependSlide(t)\n if (e >= l) return void s.appendSlide(t)\n let o = n > e ? n + 1 : n\n const d = []\n for (let t = l - 1; t >= e; t -= 1) {\n const e = s.slides.eq(t)\n e.remove(), d.unshift(e)\n }\n if ('object' == typeof t && 'length' in t) {\n for (let e = 0; e < t.length; e += 1) t[e] && a.append(t[e])\n o = n > e ? n + t.length : n\n } else a.append(t)\n for (let e = 0; e < d.length; e += 1) a.append(d[e])\n i.loop && s.loopCreate(),\n i.observer || s.update(),\n i.loop ? s.slideTo(o + s.loopedSlides, 0, !1) : s.slideTo(o, 0, !1)\n }\n function Q(e) {\n const t = this,\n { params: s, $wrapperEl: a, activeIndex: i } = t\n let r = i\n s.loop &&\n ((r -= t.loopedSlides),\n t.loopDestroy(),\n (t.slides = a.children(`.${s.slideClass}`)))\n let n,\n l = r\n if ('object' == typeof e && 'length' in e) {\n for (let s = 0; s < e.length; s += 1)\n (n = e[s]),\n t.slides[n] && t.slides.eq(n).remove(),\n n < l && (l -= 1)\n l = Math.max(l, 0)\n } else (n = e), t.slides[n] && t.slides.eq(n).remove(), n < l && (l -= 1), (l = Math.max(l, 0))\n s.loop && t.loopCreate(),\n s.observer || t.update(),\n s.loop ? t.slideTo(l + t.loopedSlides, 0, !1) : t.slideTo(l, 0, !1)\n }\n function ee() {\n const e = this,\n t = []\n for (let s = 0; s < e.slides.length; s += 1) t.push(s)\n e.removeSlide(t)\n }\n function te(e) {\n const {\n effect: t,\n swiper: s,\n on: a,\n setTranslate: i,\n setTransition: r,\n overwriteParams: n,\n perspective: l,\n } = e\n let o\n a('beforeInit', () => {\n if (s.params.effect !== t) return\n s.classNames.push(`${s.params.containerModifierClass}${t}`),\n l &&\n l() &&\n s.classNames.push(`${s.params.containerModifierClass}3d`)\n const e = n ? n() : {}\n Object.assign(s.params, e), Object.assign(s.originalParams, e)\n }),\n a('setTranslate', () => {\n s.params.effect === t && i()\n }),\n a('setTransition', (e, a) => {\n s.params.effect === t && r(a)\n }),\n a('virtualUpdate', () => {\n s.slides.length || (o = !0),\n requestAnimationFrame(() => {\n o && s.slides.length && (i(), (o = !1))\n })\n })\n }\n function se(e, t) {\n return e.transformEl\n ? t.find(e.transformEl).css({\n 'backface-visibility': 'hidden',\n '-webkit-backface-visibility': 'hidden',\n })\n : t\n }\n function ae(e) {\n let { swiper: t, duration: s, transformEl: a, allSlides: i } = e\n const { slides: r, activeIndex: n, $wrapperEl: l } = t\n if (t.params.virtualTranslate && 0 !== s) {\n let e,\n s = !1\n ;(e = i ? (a ? r.find(a) : r) : a ? r.eq(n).find(a) : r.eq(n)),\n e.transitionEnd(() => {\n if (s) return\n if (!t || t.destroyed) return\n ;(s = !0), (t.animating = !1)\n const e = ['webkitTransitionEnd', 'transitionend']\n for (let t = 0; t < e.length; t += 1) l.trigger(e[t])\n })\n }\n }\n function ie(e, t, s) {\n const a = 'swiper-slide-shadow' + (s ? `-${s}` : ''),\n i = e.transformEl ? t.find(e.transformEl) : t\n let r = i.children(`.${a}`)\n return (\n r.length ||\n ((r = d(\n `<div class=\"swiper-slide-shadow${s ? `-${s}` : ''}\"></div>`\n )),\n i.append(r)),\n r\n )\n }\n Object.keys(_).forEach((e) => {\n Object.keys(_[e]).forEach((t) => {\n V.prototype[t] = _[e][t]\n })\n }),\n V.use([\n function (e) {\n let { swiper: t, on: s, emit: a } = e\n const i = r()\n let n = null,\n l = null\n const o = () => {\n t &&\n !t.destroyed &&\n t.initialized &&\n (a('beforeResize'), a('resize'))\n },\n d = () => {\n t &&\n !t.destroyed &&\n t.initialized &&\n a('orientationchange')\n }\n s('init', () => {\n t.params.resizeObserver && void 0 !== i.ResizeObserver\n ? t &&\n !t.destroyed &&\n t.initialized &&\n ((n = new ResizeObserver((e) => {\n l = i.requestAnimationFrame(() => {\n const { width: s, height: a } = t\n let i = s,\n r = a\n e.forEach((e) => {\n let {\n contentBoxSize: s,\n contentRect: a,\n target: n,\n } = e\n ;(n && n !== t.el) ||\n ((i = a\n ? a.width\n : (s[0] || s).inlineSize),\n (r = a\n ? a.height\n : (s[0] || s).blockSize))\n }),\n (i === s && r === a) || o()\n })\n })),\n n.observe(t.el))\n : (i.addEventListener('resize', o),\n i.addEventListener('orientationchange', d))\n }),\n s('destroy', () => {\n l && i.cancelAnimationFrame(l),\n n &&\n n.unobserve &&\n t.el &&\n (n.unobserve(t.el), (n = null)),\n i.removeEventListener('resize', o),\n i.removeEventListener('orientationchange', d)\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a, emit: i } = e\n const n = [],\n l = r(),\n o = function (e, t) {\n void 0 === t && (t = {})\n const s = new (l.MutationObserver ||\n l.WebkitMutationObserver)((e) => {\n if (1 === e.length)\n return void i('observerUpdate', e[0])\n const t = function () {\n i('observerUpdate', e[0])\n }\n l.requestAnimationFrame\n ? l.requestAnimationFrame(t)\n : l.setTimeout(t, 0)\n })\n s.observe(e, {\n attributes: void 0 === t.attributes || t.attributes,\n childList: void 0 === t.childList || t.childList,\n characterData:\n void 0 === t.characterData || t.characterData,\n }),\n n.push(s)\n }\n s({\n observer: !1,\n observeParents: !1,\n observeSlideChildren: !1,\n }),\n a('init', () => {\n if (t.params.observer) {\n if (t.params.observeParents) {\n const e = t.$el.parents()\n for (let t = 0; t < e.length; t += 1) o(e[t])\n }\n o(t.$el[0], {\n childList: t.params.observeSlideChildren,\n }),\n o(t.$wrapperEl[0], { attributes: !1 })\n }\n }),\n a('destroy', () => {\n n.forEach((e) => {\n e.disconnect()\n }),\n n.splice(0, n.length)\n })\n },\n ])\n const re = [\n function (e) {\n let t,\n { swiper: s, extendParams: a, on: i, emit: r } = e\n function n(e, t) {\n const a = s.params.virtual\n if (a.cache && s.virtual.cache[t]) return s.virtual.cache[t]\n const i = a.renderSlide\n ? d(a.renderSlide.call(s, e, t))\n : d(\n `<div class=\"${s.params.slideClass}\" data-swiper-slide-index=\"${t}\">${e}</div>`\n )\n return (\n i.attr('data-swiper-slide-index') ||\n i.attr('data-swiper-slide-index', t),\n a.cache && (s.virtual.cache[t] = i),\n i\n )\n }\n function l(e) {\n const {\n slidesPerView: t,\n slidesPerGroup: a,\n centeredSlides: i,\n } = s.params,\n { addSlidesBefore: l, addSlidesAfter: o } =\n s.params.virtual,\n {\n from: d,\n to: c,\n slides: p,\n slidesGrid: u,\n offset: h,\n } = s.virtual\n s.params.cssMode || s.updateActiveIndex()\n const m = s.activeIndex || 0\n let f, g, v\n ;(f = s.rtlTranslate\n ? 'right'\n : s.isHorizontal()\n ? 'left'\n : 'top'),\n i\n ? ((g = Math.floor(t / 2) + a + o),\n (v = Math.floor(t / 2) + a + l))\n : ((g = t + (a - 1) + o), (v = a + l))\n const w = Math.max((m || 0) - v, 0),\n b = Math.min((m || 0) + g, p.length - 1),\n x = (s.slidesGrid[w] || 0) - (s.slidesGrid[0] || 0)\n function y() {\n s.updateSlides(),\n s.updateProgress(),\n s.updateSlidesClasses(),\n s.lazy && s.params.lazy.enabled && s.lazy.load(),\n r('virtualUpdate')\n }\n if (\n (Object.assign(s.virtual, {\n from: w,\n to: b,\n offset: x,\n slidesGrid: s.slidesGrid,\n }),\n d === w && c === b && !e)\n )\n return (\n s.slidesGrid !== u &&\n x !== h &&\n s.slides.css(f, `${x}px`),\n s.updateProgress(),\n void r('virtualUpdate')\n )\n if (s.params.virtual.renderExternal)\n return (\n s.params.virtual.renderExternal.call(s, {\n offset: x,\n from: w,\n to: b,\n slides: (function () {\n const e = []\n for (let t = w; t <= b; t += 1) e.push(p[t])\n return e\n })(),\n }),\n void (s.params.virtual.renderExternalUpdate\n ? y()\n : r('virtualUpdate'))\n )\n const E = [],\n T = []\n if (e) s.$wrapperEl.find(`.${s.params.slideClass}`).remove()\n else\n for (let e = d; e <= c; e += 1)\n (e < w || e > b) &&\n s.$wrapperEl\n .find(\n `.${s.params.slideClass}[data-swiper-slide-index=\"${e}\"]`\n )\n .remove()\n for (let t = 0; t < p.length; t += 1)\n t >= w &&\n t <= b &&\n (void 0 === c || e\n ? T.push(t)\n : (t > c && T.push(t), t < d && E.push(t)))\n T.forEach((e) => {\n s.$wrapperEl.append(n(p[e], e))\n }),\n E.sort((e, t) => t - e).forEach((e) => {\n s.$wrapperEl.prepend(n(p[e], e))\n }),\n s.$wrapperEl.children('.swiper-slide').css(f, `${x}px`),\n y()\n }\n a({\n virtual: {\n enabled: !1,\n slides: [],\n cache: !0,\n renderSlide: null,\n renderExternal: null,\n renderExternalUpdate: !0,\n addSlidesBefore: 0,\n addSlidesAfter: 0,\n },\n }),\n (s.virtual = {\n cache: {},\n from: void 0,\n to: void 0,\n slides: [],\n offset: 0,\n slidesGrid: [],\n }),\n i('beforeInit', () => {\n s.params.virtual.enabled &&\n ((s.virtual.slides = s.params.virtual.slides),\n s.classNames.push(\n `${s.params.containerModifierClass}virtual`\n ),\n (s.params.watchSlidesProgress = !0),\n (s.originalParams.watchSlidesProgress = !0),\n s.params.initialSlide || l())\n }),\n i('setTranslate', () => {\n s.params.virtual.enabled &&\n (s.params.cssMode && !s._immediateVirtual\n ? (clearTimeout(t),\n (t = setTimeout(() => {\n l()\n }, 100)))\n : l())\n }),\n i('init update resize', () => {\n s.params.virtual.enabled &&\n s.params.cssMode &&\n v(\n s.wrapperEl,\n '--swiper-virtual-size',\n `${s.virtualSize}px`\n )\n }),\n Object.assign(s.virtual, {\n appendSlide: function (e) {\n if ('object' == typeof e && 'length' in e)\n for (let t = 0; t < e.length; t += 1)\n e[t] && s.virtual.slides.push(e[t])\n else s.virtual.slides.push(e)\n l(!0)\n },\n prependSlide: function (e) {\n const t = s.activeIndex\n let a = t + 1,\n i = 1\n if (Array.isArray(e)) {\n for (let t = 0; t < e.length; t += 1)\n e[t] && s.virtual.slides.unshift(e[t])\n ;(a = t + e.length), (i = e.length)\n } else s.virtual.slides.unshift(e)\n if (s.params.virtual.cache) {\n const e = s.virtual.cache,\n t = {}\n Object.keys(e).forEach((s) => {\n const a = e[s],\n r = a.attr('data-swiper-slide-index')\n r &&\n a.attr(\n 'data-swiper-slide-index',\n parseInt(r, 10) + i\n ),\n (t[parseInt(s, 10) + i] = a)\n }),\n (s.virtual.cache = t)\n }\n l(!0), s.slideTo(a, 0)\n },\n removeSlide: function (e) {\n if (null == e) return\n let t = s.activeIndex\n if (Array.isArray(e))\n for (let a = e.length - 1; a >= 0; a -= 1)\n s.virtual.slides.splice(e[a], 1),\n s.params.virtual.cache &&\n delete s.virtual.cache[e[a]],\n e[a] < t && (t -= 1),\n (t = Math.max(t, 0))\n else\n s.virtual.slides.splice(e, 1),\n s.params.virtual.cache &&\n delete s.virtual.cache[e],\n e < t && (t -= 1),\n (t = Math.max(t, 0))\n l(!0), s.slideTo(t, 0)\n },\n removeAllSlides: function () {\n ;(s.virtual.slides = []),\n s.params.virtual.cache && (s.virtual.cache = {}),\n l(!0),\n s.slideTo(0, 0)\n },\n update: l,\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: i, emit: n } = e\n const l = a(),\n o = r()\n function c(e) {\n if (!t.enabled) return\n const { rtlTranslate: s } = t\n let a = e\n a.originalEvent && (a = a.originalEvent)\n const i = a.keyCode || a.charCode,\n r = t.params.keyboard.pageUpDown,\n d = r && 33 === i,\n c = r && 34 === i,\n p = 37 === i,\n u = 39 === i,\n h = 38 === i,\n m = 40 === i\n if (\n !t.allowSlideNext &&\n ((t.isHorizontal() && u) || (t.isVertical() && m) || c)\n )\n return !1\n if (\n !t.allowSlidePrev &&\n ((t.isHorizontal() && p) || (t.isVertical() && h) || d)\n )\n return !1\n if (\n !(\n a.shiftKey ||\n a.altKey ||\n a.ctrlKey ||\n a.metaKey ||\n (l.activeElement &&\n l.activeElement.nodeName &&\n ('input' ===\n l.activeElement.nodeName.toLowerCase() ||\n 'textarea' ===\n l.activeElement.nodeName.toLowerCase()))\n )\n ) {\n if (\n t.params.keyboard.onlyInViewport &&\n (d || c || p || u || h || m)\n ) {\n let e = !1\n if (\n t.$el.parents(`.${t.params.slideClass}`).length >\n 0 &&\n 0 ===\n t.$el.parents(`.${t.params.slideActiveClass}`)\n .length\n )\n return\n const a = t.$el,\n i = a[0].clientWidth,\n r = a[0].clientHeight,\n n = o.innerWidth,\n l = o.innerHeight,\n d = t.$el.offset()\n s && (d.left -= t.$el[0].scrollLeft)\n const c = [\n [d.left, d.top],\n [d.left + i, d.top],\n [d.left, d.top + r],\n [d.left + i, d.top + r],\n ]\n for (let t = 0; t < c.length; t += 1) {\n const s = c[t]\n if (\n s[0] >= 0 &&\n s[0] <= n &&\n s[1] >= 0 &&\n s[1] <= l\n ) {\n if (0 === s[0] && 0 === s[1]) continue\n e = !0\n }\n }\n if (!e) return\n }\n t.isHorizontal()\n ? ((d || c || p || u) &&\n (a.preventDefault\n ? a.preventDefault()\n : (a.returnValue = !1)),\n (((c || u) && !s) || ((d || p) && s)) &&\n t.slideNext(),\n (((d || p) && !s) || ((c || u) && s)) &&\n t.slidePrev())\n : ((d || c || h || m) &&\n (a.preventDefault\n ? a.preventDefault()\n : (a.returnValue = !1)),\n (c || m) && t.slideNext(),\n (d || h) && t.slidePrev()),\n n('keyPress', i)\n }\n }\n function p() {\n t.keyboard.enabled ||\n (d(l).on('keydown', c), (t.keyboard.enabled = !0))\n }\n function u() {\n t.keyboard.enabled &&\n (d(l).off('keydown', c), (t.keyboard.enabled = !1))\n }\n ;(t.keyboard = { enabled: !1 }),\n s({\n keyboard: {\n enabled: !1,\n onlyInViewport: !0,\n pageUpDown: !0,\n },\n }),\n i('init', () => {\n t.params.keyboard.enabled && p()\n }),\n i('destroy', () => {\n t.keyboard.enabled && u()\n }),\n Object.assign(t.keyboard, { enable: p, disable: u })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a, emit: i } = e\n const n = r()\n let l\n s({\n mousewheel: {\n enabled: !1,\n releaseOnEdges: !1,\n invert: !1,\n forceToAxis: !1,\n sensitivity: 1,\n eventsTarget: 'container',\n thresholdDelta: null,\n thresholdTime: null,\n },\n }),\n (t.mousewheel = { enabled: !1 })\n let o,\n c = u()\n const h = []\n function m() {\n t.enabled && (t.mouseEntered = !0)\n }\n function f() {\n t.enabled && (t.mouseEntered = !1)\n }\n function g(e) {\n return (\n !(\n t.params.mousewheel.thresholdDelta &&\n e.delta < t.params.mousewheel.thresholdDelta\n ) &&\n !(\n t.params.mousewheel.thresholdTime &&\n u() - c < t.params.mousewheel.thresholdTime\n ) &&\n ((e.delta >= 6 && u() - c < 60) ||\n (e.direction < 0\n ? (t.isEnd && !t.params.loop) ||\n t.animating ||\n (t.slideNext(), i('scroll', e.raw))\n : (t.isBeginning && !t.params.loop) ||\n t.animating ||\n (t.slidePrev(), i('scroll', e.raw)),\n (c = new n.Date().getTime()),\n !1))\n )\n }\n function v(e) {\n let s = e,\n a = !0\n if (!t.enabled) return\n const r = t.params.mousewheel\n t.params.cssMode && s.preventDefault()\n let n = t.$el\n if (\n ('container' !== t.params.mousewheel.eventsTarget &&\n (n = d(t.params.mousewheel.eventsTarget)),\n !t.mouseEntered &&\n !n[0].contains(s.target) &&\n !r.releaseOnEdges)\n )\n return !0\n s.originalEvent && (s = s.originalEvent)\n let c = 0\n const m = t.rtlTranslate ? -1 : 1,\n f = (function (e) {\n let t = 0,\n s = 0,\n a = 0,\n i = 0\n return (\n 'detail' in e && (s = e.detail),\n 'wheelDelta' in e && (s = -e.wheelDelta / 120),\n 'wheelDeltaY' in e && (s = -e.wheelDeltaY / 120),\n 'wheelDeltaX' in e && (t = -e.wheelDeltaX / 120),\n 'axis' in e &&\n e.axis === e.HORIZONTAL_AXIS &&\n ((t = s), (s = 0)),\n (a = 10 * t),\n (i = 10 * s),\n 'deltaY' in e && (i = e.deltaY),\n 'deltaX' in e && (a = e.deltaX),\n e.shiftKey && !a && ((a = i), (i = 0)),\n (a || i) &&\n e.deltaMode &&\n (1 === e.deltaMode\n ? ((a *= 40), (i *= 40))\n : ((a *= 800), (i *= 800))),\n a && !t && (t = a < 1 ? -1 : 1),\n i && !s && (s = i < 1 ? -1 : 1),\n { spinX: t, spinY: s, pixelX: a, pixelY: i }\n )\n })(s)\n if (r.forceToAxis)\n if (t.isHorizontal()) {\n if (!(Math.abs(f.pixelX) > Math.abs(f.pixelY)))\n return !0\n c = -f.pixelX * m\n } else {\n if (!(Math.abs(f.pixelY) > Math.abs(f.pixelX)))\n return !0\n c = -f.pixelY\n }\n else\n c =\n Math.abs(f.pixelX) > Math.abs(f.pixelY)\n ? -f.pixelX * m\n : -f.pixelY\n if (0 === c) return !0\n r.invert && (c = -c)\n let v = t.getTranslate() + c * r.sensitivity\n if (\n (v >= t.minTranslate() && (v = t.minTranslate()),\n v <= t.maxTranslate() && (v = t.maxTranslate()),\n (a =\n !!t.params.loop ||\n !(v === t.minTranslate() || v === t.maxTranslate())),\n a && t.params.nested && s.stopPropagation(),\n t.params.freeMode && t.params.freeMode.enabled)\n ) {\n const e = {\n time: u(),\n delta: Math.abs(c),\n direction: Math.sign(c),\n },\n a =\n o &&\n e.time < o.time + 500 &&\n e.delta <= o.delta &&\n e.direction === o.direction\n if (!a) {\n ;(o = void 0), t.params.loop && t.loopFix()\n let n = t.getTranslate() + c * r.sensitivity\n const d = t.isBeginning,\n u = t.isEnd\n if (\n (n >= t.minTranslate() && (n = t.minTranslate()),\n n <= t.maxTranslate() && (n = t.maxTranslate()),\n t.setTransition(0),\n t.setTranslate(n),\n t.updateProgress(),\n t.updateActiveIndex(),\n t.updateSlidesClasses(),\n ((!d && t.isBeginning) || (!u && t.isEnd)) &&\n t.updateSlidesClasses(),\n t.params.freeMode.sticky)\n ) {\n clearTimeout(l),\n (l = void 0),\n h.length >= 15 && h.shift()\n const s = h.length ? h[h.length - 1] : void 0,\n a = h[0]\n if (\n (h.push(e),\n s &&\n (e.delta > s.delta ||\n e.direction !== s.direction))\n )\n h.splice(0)\n else if (\n h.length >= 15 &&\n e.time - a.time < 500 &&\n a.delta - e.delta >= 1 &&\n e.delta <= 6\n ) {\n const s = c > 0 ? 0.8 : 0.2\n ;(o = e),\n h.splice(0),\n (l = p(() => {\n t.slideToClosest(\n t.params.speed,\n !0,\n void 0,\n s\n )\n }, 0))\n }\n l ||\n (l = p(() => {\n ;(o = e),\n h.splice(0),\n t.slideToClosest(\n t.params.speed,\n !0,\n void 0,\n 0.5\n )\n }, 500))\n }\n if (\n (a || i('scroll', s),\n t.params.autoplay &&\n t.params.autoplayDisableOnInteraction &&\n t.autoplay.stop(),\n n === t.minTranslate() || n === t.maxTranslate())\n )\n return !0\n }\n } else {\n const s = {\n time: u(),\n delta: Math.abs(c),\n direction: Math.sign(c),\n raw: e,\n }\n h.length >= 2 && h.shift()\n const a = h.length ? h[h.length - 1] : void 0\n if (\n (h.push(s),\n a\n ? (s.direction !== a.direction ||\n s.delta > a.delta ||\n s.time > a.time + 150) &&\n g(s)\n : g(s),\n (function (e) {\n const s = t.params.mousewheel\n if (e.direction < 0) {\n if (\n t.isEnd &&\n !t.params.loop &&\n s.releaseOnEdges\n )\n return !0\n } else if (\n t.isBeginning &&\n !t.params.loop &&\n s.releaseOnEdges\n )\n return !0\n return !1\n })(s))\n )\n return !0\n }\n return (\n s.preventDefault\n ? s.preventDefault()\n : (s.returnValue = !1),\n !1\n )\n }\n function w(e) {\n let s = t.$el\n 'container' !== t.params.mousewheel.eventsTarget &&\n (s = d(t.params.mousewheel.eventsTarget)),\n s[e]('mouseenter', m),\n s[e]('mouseleave', f),\n s[e]('wheel', v)\n }\n function b() {\n return t.params.cssMode\n ? (t.wrapperEl.removeEventListener('wheel', v), !0)\n : !t.mousewheel.enabled &&\n (w('on'), (t.mousewheel.enabled = !0), !0)\n }\n function x() {\n return t.params.cssMode\n ? (t.wrapperEl.addEventListener(event, v), !0)\n : !!t.mousewheel.enabled &&\n (w('off'), (t.mousewheel.enabled = !1), !0)\n }\n a('init', () => {\n !t.params.mousewheel.enabled && t.params.cssMode && x(),\n t.params.mousewheel.enabled && b()\n }),\n a('destroy', () => {\n t.params.cssMode && b(), t.mousewheel.enabled && x()\n }),\n Object.assign(t.mousewheel, { enable: b, disable: x })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a, emit: i } = e\n function r(e) {\n let s\n return (\n e &&\n ((s = d(e)),\n t.params.uniqueNavElements &&\n 'string' == typeof e &&\n s.length > 1 &&\n 1 === t.$el.find(e).length &&\n (s = t.$el.find(e))),\n s\n )\n }\n function n(e, s) {\n const a = t.params.navigation\n e &&\n e.length > 0 &&\n (e[s ? 'addClass' : 'removeClass'](a.disabledClass),\n e[0] && 'BUTTON' === e[0].tagName && (e[0].disabled = s),\n t.params.watchOverflow &&\n t.enabled &&\n e[t.isLocked ? 'addClass' : 'removeClass'](a.lockClass))\n }\n function l() {\n if (t.params.loop) return\n const { $nextEl: e, $prevEl: s } = t.navigation\n n(s, t.isBeginning && !t.params.rewind),\n n(e, t.isEnd && !t.params.rewind)\n }\n function o(e) {\n e.preventDefault(),\n (!t.isBeginning || t.params.loop || t.params.rewind) &&\n t.slidePrev()\n }\n function c(e) {\n e.preventDefault(),\n (!t.isEnd || t.params.loop || t.params.rewind) &&\n t.slideNext()\n }\n function p() {\n const e = t.params.navigation\n if (\n ((t.params.navigation = F(\n t,\n t.originalParams.navigation,\n t.params.navigation,\n {\n nextEl: 'swiper-button-next',\n prevEl: 'swiper-button-prev',\n }\n )),\n !e.nextEl && !e.prevEl)\n )\n return\n const s = r(e.nextEl),\n a = r(e.prevEl)\n s && s.length > 0 && s.on('click', c),\n a && a.length > 0 && a.on('click', o),\n Object.assign(t.navigation, {\n $nextEl: s,\n nextEl: s && s[0],\n $prevEl: a,\n prevEl: a && a[0],\n }),\n t.enabled ||\n (s && s.addClass(e.lockClass),\n a && a.addClass(e.lockClass))\n }\n function u() {\n const { $nextEl: e, $prevEl: s } = t.navigation\n e &&\n e.length &&\n (e.off('click', c),\n e.removeClass(t.params.navigation.disabledClass)),\n s &&\n s.length &&\n (s.off('click', o),\n s.removeClass(t.params.navigation.disabledClass))\n }\n s({\n navigation: {\n nextEl: null,\n prevEl: null,\n hideOnClick: !1,\n disabledClass: 'swiper-button-disabled',\n hiddenClass: 'swiper-button-hidden',\n lockClass: 'swiper-button-lock',\n },\n }),\n (t.navigation = {\n nextEl: null,\n $nextEl: null,\n prevEl: null,\n $prevEl: null,\n }),\n a('init', () => {\n p(), l()\n }),\n a('toEdge fromEdge lock unlock', () => {\n l()\n }),\n a('destroy', () => {\n u()\n }),\n a('enable disable', () => {\n const { $nextEl: e, $prevEl: s } = t.navigation\n e &&\n e[t.enabled ? 'removeClass' : 'addClass'](\n t.params.navigation.lockClass\n ),\n s &&\n s[t.enabled ? 'removeClass' : 'addClass'](\n t.params.navigation.lockClass\n )\n }),\n a('click', (e, s) => {\n const { $nextEl: a, $prevEl: r } = t.navigation,\n n = s.target\n if (\n t.params.navigation.hideOnClick &&\n !d(n).is(r) &&\n !d(n).is(a)\n ) {\n if (\n t.pagination &&\n t.params.pagination &&\n t.params.pagination.clickable &&\n (t.pagination.el === n ||\n t.pagination.el.contains(n))\n )\n return\n let e\n a\n ? (e = a.hasClass(t.params.navigation.hiddenClass))\n : r &&\n (e = r.hasClass(t.params.navigation.hiddenClass)),\n i(!0 === e ? 'navigationShow' : 'navigationHide'),\n a && a.toggleClass(t.params.navigation.hiddenClass),\n r && r.toggleClass(t.params.navigation.hiddenClass)\n }\n }),\n Object.assign(t.navigation, { update: l, init: p, destroy: u })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a, emit: i } = e\n const r = 'swiper-pagination'\n let n\n s({\n pagination: {\n el: null,\n bulletElement: 'span',\n clickable: !1,\n hideOnClick: !1,\n renderBullet: null,\n renderProgressbar: null,\n renderFraction: null,\n renderCustom: null,\n progressbarOpposite: !1,\n type: 'bullets',\n dynamicBullets: !1,\n dynamicMainBullets: 1,\n formatFractionCurrent: (e) => e,\n formatFractionTotal: (e) => e,\n bulletClass: `${r}-bullet`,\n bulletActiveClass: `${r}-bullet-active`,\n modifierClass: `${r}-`,\n currentClass: `${r}-current`,\n totalClass: `${r}-total`,\n hiddenClass: `${r}-hidden`,\n progressbarFillClass: `${r}-progressbar-fill`,\n progressbarOppositeClass: `${r}-progressbar-opposite`,\n clickableClass: `${r}-clickable`,\n lockClass: `${r}-lock`,\n horizontalClass: `${r}-horizontal`,\n verticalClass: `${r}-vertical`,\n },\n }),\n (t.pagination = { el: null, $el: null, bullets: [] })\n let l = 0\n function o() {\n return (\n !t.params.pagination.el ||\n !t.pagination.el ||\n !t.pagination.$el ||\n 0 === t.pagination.$el.length\n )\n }\n function c(e, s) {\n const { bulletActiveClass: a } = t.params.pagination\n e[s]().addClass(`${a}-${s}`)[s]().addClass(`${a}-${s}-${s}`)\n }\n function p() {\n const e = t.rtl,\n s = t.params.pagination\n if (o()) return\n const a =\n t.virtual && t.params.virtual.enabled\n ? t.virtual.slides.length\n : t.slides.length,\n r = t.pagination.$el\n let p\n const u = t.params.loop\n ? Math.ceil(\n (a - 2 * t.loopedSlides) / t.params.slidesPerGroup\n )\n : t.snapGrid.length\n if (\n (t.params.loop\n ? ((p = Math.ceil(\n (t.activeIndex - t.loopedSlides) /\n t.params.slidesPerGroup\n )),\n p > a - 1 - 2 * t.loopedSlides &&\n (p -= a - 2 * t.loopedSlides),\n p > u - 1 && (p -= u),\n p < 0 &&\n 'bullets' !== t.params.paginationType &&\n (p = u + p))\n : (p =\n void 0 !== t.snapIndex\n ? t.snapIndex\n : t.activeIndex || 0),\n 'bullets' === s.type &&\n t.pagination.bullets &&\n t.pagination.bullets.length > 0)\n ) {\n const a = t.pagination.bullets\n let i, o, u\n if (\n (s.dynamicBullets &&\n ((n = a\n .eq(0)\n [\n t.isHorizontal()\n ? 'outerWidth'\n : 'outerHeight'\n ](!0)),\n r.css(\n t.isHorizontal() ? 'width' : 'height',\n n * (s.dynamicMainBullets + 4) + 'px'\n ),\n s.dynamicMainBullets > 1 &&\n void 0 !== t.previousIndex &&\n ((l +=\n p -\n (t.previousIndex - t.loopedSlides || 0)),\n l > s.dynamicMainBullets - 1\n ? (l = s.dynamicMainBullets - 1)\n : l < 0 && (l = 0)),\n (i = Math.max(p - l, 0)),\n (o =\n i +\n (Math.min(a.length, s.dynamicMainBullets) - 1)),\n (u = (o + i) / 2)),\n a.removeClass(\n [\n '',\n '-next',\n '-next-next',\n '-prev',\n '-prev-prev',\n '-main',\n ]\n .map((e) => `${s.bulletActiveClass}${e}`)\n .join(' ')\n ),\n r.length > 1)\n )\n a.each((e) => {\n const t = d(e),\n a = t.index()\n a === p && t.addClass(s.bulletActiveClass),\n s.dynamicBullets &&\n (a >= i &&\n a <= o &&\n t.addClass(\n `${s.bulletActiveClass}-main`\n ),\n a === i && c(t, 'prev'),\n a === o && c(t, 'next'))\n })\n else {\n const e = a.eq(p),\n r = e.index()\n if (\n (e.addClass(s.bulletActiveClass), s.dynamicBullets)\n ) {\n const e = a.eq(i),\n n = a.eq(o)\n for (let e = i; e <= o; e += 1)\n a.eq(e).addClass(`${s.bulletActiveClass}-main`)\n if (t.params.loop)\n if (r >= a.length) {\n for (\n let e = s.dynamicMainBullets;\n e >= 0;\n e -= 1\n )\n a.eq(a.length - e).addClass(\n `${s.bulletActiveClass}-main`\n )\n a.eq(\n a.length - s.dynamicMainBullets - 1\n ).addClass(`${s.bulletActiveClass}-prev`)\n } else c(e, 'prev'), c(n, 'next')\n else c(e, 'prev'), c(n, 'next')\n }\n }\n if (s.dynamicBullets) {\n const i = Math.min(a.length, s.dynamicMainBullets + 4),\n r = (n * i - n) / 2 - u * n,\n l = e ? 'right' : 'left'\n a.css(t.isHorizontal() ? l : 'top', `${r}px`)\n }\n }\n if (\n ('fraction' === s.type &&\n (r\n .find(U(s.currentClass))\n .text(s.formatFractionCurrent(p + 1)),\n r.find(U(s.totalClass)).text(s.formatFractionTotal(u))),\n 'progressbar' === s.type)\n ) {\n let e\n e = s.progressbarOpposite\n ? t.isHorizontal()\n ? 'vertical'\n : 'horizontal'\n : t.isHorizontal()\n ? 'horizontal'\n : 'vertical'\n const a = (p + 1) / u\n let i = 1,\n n = 1\n 'horizontal' === e ? (i = a) : (n = a),\n r\n .find(U(s.progressbarFillClass))\n .transform(\n `translate3d(0,0,0) scaleX(${i}) scaleY(${n})`\n )\n .transition(t.params.speed)\n }\n 'custom' === s.type && s.renderCustom\n ? (r.html(s.renderCustom(t, p + 1, u)),\n i('paginationRender', r[0]))\n : i('paginationUpdate', r[0]),\n t.params.watchOverflow &&\n t.enabled &&\n r[t.isLocked ? 'addClass' : 'removeClass'](s.lockClass)\n }\n function u() {\n const e = t.params.pagination\n if (o()) return\n const s =\n t.virtual && t.params.virtual.enabled\n ? t.virtual.slides.length\n : t.slides.length,\n a = t.pagination.$el\n let r = ''\n if ('bullets' === e.type) {\n let i = t.params.loop\n ? Math.ceil(\n (s - 2 * t.loopedSlides) / t.params.slidesPerGroup\n )\n : t.snapGrid.length\n t.params.freeMode &&\n t.params.freeMode.enabled &&\n !t.params.loop &&\n i > s &&\n (i = s)\n for (let s = 0; s < i; s += 1)\n e.renderBullet\n ? (r += e.renderBullet.call(t, s, e.bulletClass))\n : (r += `<${e.bulletElement} class=\"${e.bulletClass}\"></${e.bulletElement}>`)\n a.html(r), (t.pagination.bullets = a.find(U(e.bulletClass)))\n }\n 'fraction' === e.type &&\n ((r = e.renderFraction\n ? e.renderFraction.call(t, e.currentClass, e.totalClass)\n : `<span class=\"${e.currentClass}\"></span> / <span class=\"${e.totalClass}\"></span>`),\n a.html(r)),\n 'progressbar' === e.type &&\n ((r = e.renderProgressbar\n ? e.renderProgressbar.call(\n t,\n e.progressbarFillClass\n )\n : `<span class=\"${e.progressbarFillClass}\"></span>`),\n a.html(r)),\n 'custom' !== e.type &&\n i('paginationRender', t.pagination.$el[0])\n }\n function h() {\n t.params.pagination = F(\n t,\n t.originalParams.pagination,\n t.params.pagination,\n { el: 'swiper-pagination' }\n )\n const e = t.params.pagination\n if (!e.el) return\n let s = d(e.el)\n 0 !== s.length &&\n (t.params.uniqueNavElements &&\n 'string' == typeof e.el &&\n s.length > 1 &&\n ((s = t.$el.find(e.el)),\n s.length > 1 &&\n (s = s.filter(\n (e) => d(e).parents('.swiper')[0] === t.el\n ))),\n 'bullets' === e.type &&\n e.clickable &&\n s.addClass(e.clickableClass),\n s.addClass(e.modifierClass + e.type),\n s.addClass(\n t.isHorizontal() ? e.horizontalClass : e.verticalClass\n ),\n 'bullets' === e.type &&\n e.dynamicBullets &&\n (s.addClass(`${e.modifierClass}${e.type}-dynamic`),\n (l = 0),\n e.dynamicMainBullets < 1 && (e.dynamicMainBullets = 1)),\n 'progressbar' === e.type &&\n e.progressbarOpposite &&\n s.addClass(e.progressbarOppositeClass),\n e.clickable &&\n s.on('click', U(e.bulletClass), function (e) {\n e.preventDefault()\n let s = d(this).index() * t.params.slidesPerGroup\n t.params.loop && (s += t.loopedSlides), t.slideTo(s)\n }),\n Object.assign(t.pagination, { $el: s, el: s[0] }),\n t.enabled || s.addClass(e.lockClass))\n }\n function m() {\n const e = t.params.pagination\n if (o()) return\n const s = t.pagination.$el\n s.removeClass(e.hiddenClass),\n s.removeClass(e.modifierClass + e.type),\n s.removeClass(\n t.isHorizontal() ? e.horizontalClass : e.verticalClass\n ),\n t.pagination.bullets &&\n t.pagination.bullets.removeClass &&\n t.pagination.bullets.removeClass(e.bulletActiveClass),\n e.clickable && s.off('click', U(e.bulletClass))\n }\n a('init', () => {\n h(), u(), p()\n }),\n a('activeIndexChange', () => {\n ;(t.params.loop || void 0 === t.snapIndex) && p()\n }),\n a('snapIndexChange', () => {\n t.params.loop || p()\n }),\n a('slidesLengthChange', () => {\n t.params.loop && (u(), p())\n }),\n a('snapGridLengthChange', () => {\n t.params.loop || (u(), p())\n }),\n a('destroy', () => {\n m()\n }),\n a('enable disable', () => {\n const { $el: e } = t.pagination\n e &&\n e[t.enabled ? 'removeClass' : 'addClass'](\n t.params.pagination.lockClass\n )\n }),\n a('lock unlock', () => {\n p()\n }),\n a('click', (e, s) => {\n const a = s.target,\n { $el: r } = t.pagination\n if (\n t.params.pagination.el &&\n t.params.pagination.hideOnClick &&\n r.length > 0 &&\n !d(a).hasClass(t.params.pagination.bulletClass)\n ) {\n if (\n t.navigation &&\n ((t.navigation.nextEl &&\n a === t.navigation.nextEl) ||\n (t.navigation.prevEl &&\n a === t.navigation.prevEl))\n )\n return\n const e = r.hasClass(t.params.pagination.hiddenClass)\n i(!0 === e ? 'paginationShow' : 'paginationHide'),\n r.toggleClass(t.params.pagination.hiddenClass)\n }\n }),\n Object.assign(t.pagination, {\n render: u,\n update: p,\n init: h,\n destroy: m,\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: i, emit: r } = e\n const n = a()\n let l,\n o,\n c,\n u,\n h = !1,\n m = null,\n f = null\n function g() {\n if (!t.params.scrollbar.el || !t.scrollbar.el) return\n const { scrollbar: e, rtlTranslate: s, progress: a } = t,\n { $dragEl: i, $el: r } = e,\n n = t.params.scrollbar\n let l = o,\n d = (c - o) * a\n s\n ? ((d = -d),\n d > 0\n ? ((l = o - d), (d = 0))\n : -d + o > c && (l = c + d))\n : d < 0\n ? ((l = o + d), (d = 0))\n : d + o > c && (l = c - d),\n t.isHorizontal()\n ? (i.transform(`translate3d(${d}px, 0, 0)`),\n (i[0].style.width = `${l}px`))\n : (i.transform(`translate3d(0px, ${d}px, 0)`),\n (i[0].style.height = `${l}px`)),\n n.hide &&\n (clearTimeout(m),\n (r[0].style.opacity = 1),\n (m = setTimeout(() => {\n ;(r[0].style.opacity = 0), r.transition(400)\n }, 1e3)))\n }\n function v() {\n if (!t.params.scrollbar.el || !t.scrollbar.el) return\n const { scrollbar: e } = t,\n { $dragEl: s, $el: a } = e\n ;(s[0].style.width = ''),\n (s[0].style.height = ''),\n (c = t.isHorizontal()\n ? a[0].offsetWidth\n : a[0].offsetHeight),\n (u =\n t.size /\n (t.virtualSize +\n t.params.slidesOffsetBefore -\n (t.params.centeredSlides ? t.snapGrid[0] : 0))),\n (o =\n 'auto' === t.params.scrollbar.dragSize\n ? c * u\n : parseInt(t.params.scrollbar.dragSize, 10)),\n t.isHorizontal()\n ? (s[0].style.width = `${o}px`)\n : (s[0].style.height = `${o}px`),\n (a[0].style.display = u >= 1 ? 'none' : ''),\n t.params.scrollbar.hide && (a[0].style.opacity = 0),\n t.params.watchOverflow &&\n t.enabled &&\n e.$el[t.isLocked ? 'addClass' : 'removeClass'](\n t.params.scrollbar.lockClass\n )\n }\n function w(e) {\n return t.isHorizontal()\n ? 'touchstart' === e.type || 'touchmove' === e.type\n ? e.targetTouches[0].clientX\n : e.clientX\n : 'touchstart' === e.type || 'touchmove' === e.type\n ? e.targetTouches[0].clientY\n : e.clientY\n }\n function b(e) {\n const { scrollbar: s, rtlTranslate: a } = t,\n { $el: i } = s\n let r\n ;(r =\n (w(e) -\n i.offset()[t.isHorizontal() ? 'left' : 'top'] -\n (null !== l ? l : o / 2)) /\n (c - o)),\n (r = Math.max(Math.min(r, 1), 0)),\n a && (r = 1 - r)\n const n =\n t.minTranslate() + (t.maxTranslate() - t.minTranslate()) * r\n t.updateProgress(n),\n t.setTranslate(n),\n t.updateActiveIndex(),\n t.updateSlidesClasses()\n }\n function x(e) {\n const s = t.params.scrollbar,\n { scrollbar: a, $wrapperEl: i } = t,\n { $el: n, $dragEl: o } = a\n ;(h = !0),\n (l =\n e.target === o[0] || e.target === o\n ? w(e) -\n e.target.getBoundingClientRect()[\n t.isHorizontal() ? 'left' : 'top'\n ]\n : null),\n e.preventDefault(),\n e.stopPropagation(),\n i.transition(100),\n o.transition(100),\n b(e),\n clearTimeout(f),\n n.transition(0),\n s.hide && n.css('opacity', 1),\n t.params.cssMode &&\n t.$wrapperEl.css('scroll-snap-type', 'none'),\n r('scrollbarDragStart', e)\n }\n function y(e) {\n const { scrollbar: s, $wrapperEl: a } = t,\n { $el: i, $dragEl: n } = s\n h &&\n (e.preventDefault\n ? e.preventDefault()\n : (e.returnValue = !1),\n b(e),\n a.transition(0),\n i.transition(0),\n n.transition(0),\n r('scrollbarDragMove', e))\n }\n function E(e) {\n const s = t.params.scrollbar,\n { scrollbar: a, $wrapperEl: i } = t,\n { $el: n } = a\n h &&\n ((h = !1),\n t.params.cssMode &&\n (t.$wrapperEl.css('scroll-snap-type', ''),\n i.transition('')),\n s.hide &&\n (clearTimeout(f),\n (f = p(() => {\n n.css('opacity', 0), n.transition(400)\n }, 1e3))),\n r('scrollbarDragEnd', e),\n s.snapOnRelease && t.slideToClosest())\n }\n function T(e) {\n const {\n scrollbar: s,\n touchEventsTouch: a,\n touchEventsDesktop: i,\n params: r,\n support: l,\n } = t,\n o = s.$el[0],\n d = !(!l.passiveListener || !r.passiveListeners) && {\n passive: !1,\n capture: !1,\n },\n c = !(!l.passiveListener || !r.passiveListeners) && {\n passive: !0,\n capture: !1,\n }\n if (!o) return\n const p =\n 'on' === e ? 'addEventListener' : 'removeEventListener'\n l.touch\n ? (o[p](a.start, x, d),\n o[p](a.move, y, d),\n o[p](a.end, E, c))\n : (o[p](i.start, x, d),\n n[p](i.move, y, d),\n n[p](i.end, E, c))\n }\n function C() {\n const { scrollbar: e, $el: s } = t\n t.params.scrollbar = F(\n t,\n t.originalParams.scrollbar,\n t.params.scrollbar,\n { el: 'swiper-scrollbar' }\n )\n const a = t.params.scrollbar\n if (!a.el) return\n let i = d(a.el)\n t.params.uniqueNavElements &&\n 'string' == typeof a.el &&\n i.length > 1 &&\n 1 === s.find(a.el).length &&\n (i = s.find(a.el))\n let r = i.find(`.${t.params.scrollbar.dragClass}`)\n 0 === r.length &&\n ((r = d(\n `<div class=\"${t.params.scrollbar.dragClass}\"></div>`\n )),\n i.append(r)),\n Object.assign(e, {\n $el: i,\n el: i[0],\n $dragEl: r,\n dragEl: r[0],\n }),\n a.draggable && t.params.scrollbar.el && T('on'),\n i &&\n i[t.enabled ? 'removeClass' : 'addClass'](\n t.params.scrollbar.lockClass\n )\n }\n function $() {\n t.params.scrollbar.el && T('off')\n }\n s({\n scrollbar: {\n el: null,\n dragSize: 'auto',\n hide: !1,\n draggable: !1,\n snapOnRelease: !0,\n lockClass: 'swiper-scrollbar-lock',\n dragClass: 'swiper-scrollbar-drag',\n },\n }),\n (t.scrollbar = {\n el: null,\n dragEl: null,\n $el: null,\n $dragEl: null,\n }),\n i('init', () => {\n C(), v(), g()\n }),\n i('update resize observerUpdate lock unlock', () => {\n v()\n }),\n i('setTranslate', () => {\n g()\n }),\n i('setTransition', (e, s) => {\n !(function (e) {\n t.params.scrollbar.el &&\n t.scrollbar.el &&\n t.scrollbar.$dragEl.transition(e)\n })(s)\n }),\n i('enable disable', () => {\n const { $el: e } = t.scrollbar\n e &&\n e[t.enabled ? 'removeClass' : 'addClass'](\n t.params.scrollbar.lockClass\n )\n }),\n i('destroy', () => {\n $()\n }),\n Object.assign(t.scrollbar, {\n updateSize: v,\n setTranslate: g,\n init: C,\n destroy: $,\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a } = e\n s({ parallax: { enabled: !1 } })\n const i = (e, s) => {\n const { rtl: a } = t,\n i = d(e),\n r = a ? -1 : 1,\n n = i.attr('data-swiper-parallax') || '0'\n let l = i.attr('data-swiper-parallax-x'),\n o = i.attr('data-swiper-parallax-y')\n const c = i.attr('data-swiper-parallax-scale'),\n p = i.attr('data-swiper-parallax-opacity')\n if (\n (l || o\n ? ((l = l || '0'), (o = o || '0'))\n : t.isHorizontal()\n ? ((l = n), (o = '0'))\n : ((o = n), (l = '0')),\n (l =\n l.indexOf('%') >= 0\n ? parseInt(l, 10) * s * r + '%'\n : l * s * r + 'px'),\n (o =\n o.indexOf('%') >= 0\n ? parseInt(o, 10) * s + '%'\n : o * s + 'px'),\n null != p)\n ) {\n const e = p - (p - 1) * (1 - Math.abs(s))\n i[0].style.opacity = e\n }\n if (null == c) i.transform(`translate3d(${l}, ${o}, 0px)`)\n else {\n const e = c - (c - 1) * (1 - Math.abs(s))\n i.transform(`translate3d(${l}, ${o}, 0px) scale(${e})`)\n }\n },\n r = () => {\n const { $el: e, slides: s, progress: a, snapGrid: r } = t\n e\n .children(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]'\n )\n .each((e) => {\n i(e, a)\n }),\n s.each((e, s) => {\n let n = e.progress\n t.params.slidesPerGroup > 1 &&\n 'auto' !== t.params.slidesPerView &&\n (n += Math.ceil(s / 2) - a * (r.length - 1)),\n (n = Math.min(Math.max(n, -1), 1)),\n d(e)\n .find(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]'\n )\n .each((e) => {\n i(e, n)\n })\n })\n }\n a('beforeInit', () => {\n t.params.parallax.enabled &&\n ((t.params.watchSlidesProgress = !0),\n (t.originalParams.watchSlidesProgress = !0))\n }),\n a('init', () => {\n t.params.parallax.enabled && r()\n }),\n a('setTranslate', () => {\n t.params.parallax.enabled && r()\n }),\n a('setTransition', (e, s) => {\n t.params.parallax.enabled &&\n (function (e) {\n void 0 === e && (e = t.params.speed)\n const { $el: s } = t\n s.find(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]'\n ).each((t) => {\n const s = d(t)\n let a =\n parseInt(\n s.attr('data-swiper-parallax-duration'),\n 10\n ) || e\n 0 === e && (a = 0), s.transition(a)\n })\n })(s)\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a, emit: i } = e\n const n = r()\n s({\n zoom: {\n enabled: !1,\n maxRatio: 3,\n minRatio: 1,\n toggle: !0,\n containerClass: 'swiper-zoom-container',\n zoomedSlideClass: 'swiper-slide-zoomed',\n },\n }),\n (t.zoom = { enabled: !1 })\n let l,\n o,\n c,\n p = 1,\n u = !1\n const m = {\n $slideEl: void 0,\n slideWidth: void 0,\n slideHeight: void 0,\n $imageEl: void 0,\n $imageWrapEl: void 0,\n maxRatio: 3,\n },\n f = {\n isTouched: void 0,\n isMoved: void 0,\n currentX: void 0,\n currentY: void 0,\n minX: void 0,\n minY: void 0,\n maxX: void 0,\n maxY: void 0,\n width: void 0,\n height: void 0,\n startX: void 0,\n startY: void 0,\n touchesStart: {},\n touchesCurrent: {},\n },\n g = {\n x: void 0,\n y: void 0,\n prevPositionX: void 0,\n prevPositionY: void 0,\n prevTime: void 0,\n }\n let v = 1\n function w(e) {\n if (e.targetTouches.length < 2) return 1\n const t = e.targetTouches[0].pageX,\n s = e.targetTouches[0].pageY,\n a = e.targetTouches[1].pageX,\n i = e.targetTouches[1].pageY\n return Math.sqrt((a - t) ** 2 + (i - s) ** 2)\n }\n function b(e) {\n const s = t.support,\n a = t.params.zoom\n if (((o = !1), (c = !1), !s.gestures)) {\n if (\n 'touchstart' !== e.type ||\n ('touchstart' === e.type && e.targetTouches.length < 2)\n )\n return\n ;(o = !0), (m.scaleStart = w(e))\n }\n ;(m.$slideEl && m.$slideEl.length) ||\n ((m.$slideEl = d(e.target).closest(`.${t.params.slideClass}`)),\n 0 === m.$slideEl.length &&\n (m.$slideEl = t.slides.eq(t.activeIndex)),\n (m.$imageEl = m.$slideEl\n .find(`.${a.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0)),\n (m.$imageWrapEl = m.$imageEl.parent(`.${a.containerClass}`)),\n (m.maxRatio =\n m.$imageWrapEl.attr('data-swiper-zoom') || a.maxRatio),\n 0 !== m.$imageWrapEl.length)\n ? (m.$imageEl && m.$imageEl.transition(0), (u = !0))\n : (m.$imageEl = void 0)\n }\n function x(e) {\n const s = t.support,\n a = t.params.zoom,\n i = t.zoom\n if (!s.gestures) {\n if (\n 'touchmove' !== e.type ||\n ('touchmove' === e.type && e.targetTouches.length < 2)\n )\n return\n ;(c = !0), (m.scaleMove = w(e))\n }\n m.$imageEl && 0 !== m.$imageEl.length\n ? (s.gestures\n ? (i.scale = e.scale * p)\n : (i.scale = (m.scaleMove / m.scaleStart) * p),\n i.scale > m.maxRatio &&\n (i.scale =\n m.maxRatio -\n 1 +\n (i.scale - m.maxRatio + 1) ** 0.5),\n i.scale < a.minRatio &&\n (i.scale =\n a.minRatio +\n 1 -\n (a.minRatio - i.scale + 1) ** 0.5),\n m.$imageEl.transform(\n `translate3d(0,0,0) scale(${i.scale})`\n ))\n : 'gesturechange' === e.type && b(e)\n }\n function y(e) {\n const s = t.device,\n a = t.support,\n i = t.params.zoom,\n r = t.zoom\n if (!a.gestures) {\n if (!o || !c) return\n if (\n 'touchend' !== e.type ||\n ('touchend' === e.type &&\n e.changedTouches.length < 2 &&\n !s.android)\n )\n return\n ;(o = !1), (c = !1)\n }\n m.$imageEl &&\n 0 !== m.$imageEl.length &&\n ((r.scale = Math.max(\n Math.min(r.scale, m.maxRatio),\n i.minRatio\n )),\n m.$imageEl\n .transition(t.params.speed)\n .transform(`translate3d(0,0,0) scale(${r.scale})`),\n (p = r.scale),\n (u = !1),\n 1 === r.scale && (m.$slideEl = void 0))\n }\n function E(e) {\n const s = t.zoom\n if (!m.$imageEl || 0 === m.$imageEl.length) return\n if (((t.allowClick = !1), !f.isTouched || !m.$slideEl)) return\n f.isMoved ||\n ((f.width = m.$imageEl[0].offsetWidth),\n (f.height = m.$imageEl[0].offsetHeight),\n (f.startX = h(m.$imageWrapEl[0], 'x') || 0),\n (f.startY = h(m.$imageWrapEl[0], 'y') || 0),\n (m.slideWidth = m.$slideEl[0].offsetWidth),\n (m.slideHeight = m.$slideEl[0].offsetHeight),\n m.$imageWrapEl.transition(0))\n const a = f.width * s.scale,\n i = f.height * s.scale\n if (!(a < m.slideWidth && i < m.slideHeight)) {\n if (\n ((f.minX = Math.min(m.slideWidth / 2 - a / 2, 0)),\n (f.maxX = -f.minX),\n (f.minY = Math.min(m.slideHeight / 2 - i / 2, 0)),\n (f.maxY = -f.minY),\n (f.touchesCurrent.x =\n 'touchmove' === e.type\n ? e.targetTouches[0].pageX\n : e.pageX),\n (f.touchesCurrent.y =\n 'touchmove' === e.type\n ? e.targetTouches[0].pageY\n : e.pageY),\n !f.isMoved && !u)\n ) {\n if (\n t.isHorizontal() &&\n ((Math.floor(f.minX) === Math.floor(f.startX) &&\n f.touchesCurrent.x < f.touchesStart.x) ||\n (Math.floor(f.maxX) === Math.floor(f.startX) &&\n f.touchesCurrent.x > f.touchesStart.x))\n )\n return void (f.isTouched = !1)\n if (\n !t.isHorizontal() &&\n ((Math.floor(f.minY) === Math.floor(f.startY) &&\n f.touchesCurrent.y < f.touchesStart.y) ||\n (Math.floor(f.maxY) === Math.floor(f.startY) &&\n f.touchesCurrent.y > f.touchesStart.y))\n )\n return void (f.isTouched = !1)\n }\n e.cancelable && e.preventDefault(),\n e.stopPropagation(),\n (f.isMoved = !0),\n (f.currentX =\n f.touchesCurrent.x - f.touchesStart.x + f.startX),\n (f.currentY =\n f.touchesCurrent.y - f.touchesStart.y + f.startY),\n f.currentX < f.minX &&\n (f.currentX =\n f.minX + 1 - (f.minX - f.currentX + 1) ** 0.8),\n f.currentX > f.maxX &&\n (f.currentX =\n f.maxX - 1 + (f.currentX - f.maxX + 1) ** 0.8),\n f.currentY < f.minY &&\n (f.currentY =\n f.minY + 1 - (f.minY - f.currentY + 1) ** 0.8),\n f.currentY > f.maxY &&\n (f.currentY =\n f.maxY - 1 + (f.currentY - f.maxY + 1) ** 0.8),\n g.prevPositionX ||\n (g.prevPositionX = f.touchesCurrent.x),\n g.prevPositionY ||\n (g.prevPositionY = f.touchesCurrent.y),\n g.prevTime || (g.prevTime = Date.now()),\n (g.x =\n (f.touchesCurrent.x - g.prevPositionX) /\n (Date.now() - g.prevTime) /\n 2),\n (g.y =\n (f.touchesCurrent.y - g.prevPositionY) /\n (Date.now() - g.prevTime) /\n 2),\n Math.abs(f.touchesCurrent.x - g.prevPositionX) < 2 &&\n (g.x = 0),\n Math.abs(f.touchesCurrent.y - g.prevPositionY) < 2 &&\n (g.y = 0),\n (g.prevPositionX = f.touchesCurrent.x),\n (g.prevPositionY = f.touchesCurrent.y),\n (g.prevTime = Date.now()),\n m.$imageWrapEl.transform(\n `translate3d(${f.currentX}px, ${f.currentY}px,0)`\n )\n }\n }\n function T() {\n const e = t.zoom\n m.$slideEl &&\n t.previousIndex !== t.activeIndex &&\n (m.$imageEl &&\n m.$imageEl.transform('translate3d(0,0,0) scale(1)'),\n m.$imageWrapEl &&\n m.$imageWrapEl.transform('translate3d(0,0,0)'),\n (e.scale = 1),\n (p = 1),\n (m.$slideEl = void 0),\n (m.$imageEl = void 0),\n (m.$imageWrapEl = void 0))\n }\n function C(e) {\n const s = t.zoom,\n a = t.params.zoom\n if (\n (m.$slideEl ||\n (e &&\n e.target &&\n (m.$slideEl = d(e.target).closest(\n `.${t.params.slideClass}`\n )),\n m.$slideEl ||\n (t.params.virtual &&\n t.params.virtual.enabled &&\n t.virtual\n ? (m.$slideEl = t.$wrapperEl.children(\n `.${t.params.slideActiveClass}`\n ))\n : (m.$slideEl = t.slides.eq(t.activeIndex))),\n (m.$imageEl = m.$slideEl\n .find(`.${a.containerClass}`)\n .eq(0)\n .find(\n 'picture, img, svg, canvas, .swiper-zoom-target'\n )\n .eq(0)),\n (m.$imageWrapEl = m.$imageEl.parent(\n `.${a.containerClass}`\n ))),\n !m.$imageEl ||\n 0 === m.$imageEl.length ||\n !m.$imageWrapEl ||\n 0 === m.$imageWrapEl.length)\n )\n return\n let i, r, l, o, c, u, h, g, v, w, b, x, y, E, T, C, $, S\n t.params.cssMode &&\n ((t.wrapperEl.style.overflow = 'hidden'),\n (t.wrapperEl.style.touchAction = 'none')),\n m.$slideEl.addClass(`${a.zoomedSlideClass}`),\n void 0 === f.touchesStart.x && e\n ? ((i =\n 'touchend' === e.type\n ? e.changedTouches[0].pageX\n : e.pageX),\n (r =\n 'touchend' === e.type\n ? e.changedTouches[0].pageY\n : e.pageY))\n : ((i = f.touchesStart.x), (r = f.touchesStart.y)),\n (s.scale =\n m.$imageWrapEl.attr('data-swiper-zoom') || a.maxRatio),\n (p = m.$imageWrapEl.attr('data-swiper-zoom') || a.maxRatio),\n e\n ? (($ = m.$slideEl[0].offsetWidth),\n (S = m.$slideEl[0].offsetHeight),\n (l = m.$slideEl.offset().left + n.scrollX),\n (o = m.$slideEl.offset().top + n.scrollY),\n (c = l + $ / 2 - i),\n (u = o + S / 2 - r),\n (v = m.$imageEl[0].offsetWidth),\n (w = m.$imageEl[0].offsetHeight),\n (b = v * s.scale),\n (x = w * s.scale),\n (y = Math.min($ / 2 - b / 2, 0)),\n (E = Math.min(S / 2 - x / 2, 0)),\n (T = -y),\n (C = -E),\n (h = c * s.scale),\n (g = u * s.scale),\n h < y && (h = y),\n h > T && (h = T),\n g < E && (g = E),\n g > C && (g = C))\n : ((h = 0), (g = 0)),\n m.$imageWrapEl\n .transition(300)\n .transform(`translate3d(${h}px, ${g}px,0)`),\n m.$imageEl\n .transition(300)\n .transform(`translate3d(0,0,0) scale(${s.scale})`)\n }\n function $() {\n const e = t.zoom,\n s = t.params.zoom\n m.$slideEl ||\n (t.params.virtual && t.params.virtual.enabled && t.virtual\n ? (m.$slideEl = t.$wrapperEl.children(\n `.${t.params.slideActiveClass}`\n ))\n : (m.$slideEl = t.slides.eq(t.activeIndex)),\n (m.$imageEl = m.$slideEl\n .find(`.${s.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0)),\n (m.$imageWrapEl = m.$imageEl.parent(\n `.${s.containerClass}`\n ))),\n m.$imageEl &&\n 0 !== m.$imageEl.length &&\n m.$imageWrapEl &&\n 0 !== m.$imageWrapEl.length &&\n (t.params.cssMode &&\n ((t.wrapperEl.style.overflow = ''),\n (t.wrapperEl.style.touchAction = '')),\n (e.scale = 1),\n (p = 1),\n m.$imageWrapEl\n .transition(300)\n .transform('translate3d(0,0,0)'),\n m.$imageEl\n .transition(300)\n .transform('translate3d(0,0,0) scale(1)'),\n m.$slideEl.removeClass(`${s.zoomedSlideClass}`),\n (m.$slideEl = void 0))\n }\n function S(e) {\n const s = t.zoom\n s.scale && 1 !== s.scale ? $() : C(e)\n }\n function M() {\n const e = t.support\n return {\n passiveListener: !(\n 'touchstart' !== t.touchEvents.start ||\n !e.passiveListener ||\n !t.params.passiveListeners\n ) && { passive: !0, capture: !1 },\n activeListenerWithCapture: !e.passiveListener || {\n passive: !1,\n capture: !0,\n },\n }\n }\n function P() {\n return `.${t.params.slideClass}`\n }\n function k(e) {\n const { passiveListener: s } = M(),\n a = P()\n t.$wrapperEl[e]('gesturestart', a, b, s),\n t.$wrapperEl[e]('gesturechange', a, x, s),\n t.$wrapperEl[e]('gestureend', a, y, s)\n }\n function z() {\n l || ((l = !0), k('on'))\n }\n function O() {\n l && ((l = !1), k('off'))\n }\n function I() {\n const e = t.zoom\n if (e.enabled) return\n e.enabled = !0\n const s = t.support,\n { passiveListener: a, activeListenerWithCapture: i } = M(),\n r = P()\n s.gestures\n ? (t.$wrapperEl.on(t.touchEvents.start, z, a),\n t.$wrapperEl.on(t.touchEvents.end, O, a))\n : 'touchstart' === t.touchEvents.start &&\n (t.$wrapperEl.on(t.touchEvents.start, r, b, a),\n t.$wrapperEl.on(t.touchEvents.move, r, x, i),\n t.$wrapperEl.on(t.touchEvents.end, r, y, a),\n t.touchEvents.cancel &&\n t.$wrapperEl.on(t.touchEvents.cancel, r, y, a)),\n t.$wrapperEl.on(\n t.touchEvents.move,\n `.${t.params.zoom.containerClass}`,\n E,\n i\n )\n }\n function L() {\n const e = t.zoom\n if (!e.enabled) return\n const s = t.support\n e.enabled = !1\n const { passiveListener: a, activeListenerWithCapture: i } =\n M(),\n r = P()\n s.gestures\n ? (t.$wrapperEl.off(t.touchEvents.start, z, a),\n t.$wrapperEl.off(t.touchEvents.end, O, a))\n : 'touchstart' === t.touchEvents.start &&\n (t.$wrapperEl.off(t.touchEvents.start, r, b, a),\n t.$wrapperEl.off(t.touchEvents.move, r, x, i),\n t.$wrapperEl.off(t.touchEvents.end, r, y, a),\n t.touchEvents.cancel &&\n t.$wrapperEl.off(t.touchEvents.cancel, r, y, a)),\n t.$wrapperEl.off(\n t.touchEvents.move,\n `.${t.params.zoom.containerClass}`,\n E,\n i\n )\n }\n Object.defineProperty(t.zoom, 'scale', {\n get: () => v,\n set(e) {\n if (v !== e) {\n const t = m.$imageEl ? m.$imageEl[0] : void 0,\n s = m.$slideEl ? m.$slideEl[0] : void 0\n i('zoomChange', e, t, s)\n }\n v = e\n },\n }),\n a('init', () => {\n t.params.zoom.enabled && I()\n }),\n a('destroy', () => {\n L()\n }),\n a('touchStart', (e, s) => {\n t.zoom.enabled &&\n (function (e) {\n const s = t.device\n m.$imageEl &&\n 0 !== m.$imageEl.length &&\n (f.isTouched ||\n (s.android &&\n e.cancelable &&\n e.preventDefault(),\n (f.isTouched = !0),\n (f.touchesStart.x =\n 'touchstart' === e.type\n ? e.targetTouches[0].pageX\n : e.pageX),\n (f.touchesStart.y =\n 'touchstart' === e.type\n ? e.targetTouches[0].pageY\n : e.pageY)))\n })(s)\n }),\n a('touchEnd', (e, s) => {\n t.zoom.enabled &&\n (function () {\n const e = t.zoom\n if (!m.$imageEl || 0 === m.$imageEl.length) return\n if (!f.isTouched || !f.isMoved)\n return (f.isTouched = !1), void (f.isMoved = !1)\n ;(f.isTouched = !1), (f.isMoved = !1)\n let s = 300,\n a = 300\n const i = g.x * s,\n r = f.currentX + i,\n n = g.y * a,\n l = f.currentY + n\n 0 !== g.x && (s = Math.abs((r - f.currentX) / g.x)),\n 0 !== g.y &&\n (a = Math.abs((l - f.currentY) / g.y))\n const o = Math.max(s, a)\n ;(f.currentX = r), (f.currentY = l)\n const d = f.width * e.scale,\n c = f.height * e.scale\n ;(f.minX = Math.min(m.slideWidth / 2 - d / 2, 0)),\n (f.maxX = -f.minX),\n (f.minY = Math.min(\n m.slideHeight / 2 - c / 2,\n 0\n )),\n (f.maxY = -f.minY),\n (f.currentX = Math.max(\n Math.min(f.currentX, f.maxX),\n f.minX\n )),\n (f.currentY = Math.max(\n Math.min(f.currentY, f.maxY),\n f.minY\n )),\n m.$imageWrapEl\n .transition(o)\n .transform(\n `translate3d(${f.currentX}px, ${f.currentY}px,0)`\n )\n })()\n }),\n a('doubleTap', (e, s) => {\n !t.animating &&\n t.params.zoom.enabled &&\n t.zoom.enabled &&\n t.params.zoom.toggle &&\n S(s)\n }),\n a('transitionEnd', () => {\n t.zoom.enabled && t.params.zoom.enabled && T()\n }),\n a('slideChange', () => {\n t.zoom.enabled &&\n t.params.zoom.enabled &&\n t.params.cssMode &&\n T()\n }),\n Object.assign(t.zoom, {\n enable: I,\n disable: L,\n in: C,\n out: $,\n toggle: S,\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a, emit: i } = e\n s({\n lazy: {\n checkInView: !1,\n enabled: !1,\n loadPrevNext: !1,\n loadPrevNextAmount: 1,\n loadOnTransitionStart: !1,\n scrollingElement: '',\n elementClass: 'swiper-lazy',\n loadingClass: 'swiper-lazy-loading',\n loadedClass: 'swiper-lazy-loaded',\n preloaderClass: 'swiper-lazy-preloader',\n },\n }),\n (t.lazy = {})\n let n = !1,\n l = !1\n function o(e, s) {\n void 0 === s && (s = !0)\n const a = t.params.lazy\n if (void 0 === e) return\n if (0 === t.slides.length) return\n const r =\n t.virtual && t.params.virtual.enabled\n ? t.$wrapperEl.children(\n `.${t.params.slideClass}[data-swiper-slide-index=\"${e}\"]`\n )\n : t.slides.eq(e),\n n = r.find(\n `.${a.elementClass}:not(.${a.loadedClass}):not(.${a.loadingClass})`\n )\n !r.hasClass(a.elementClass) ||\n r.hasClass(a.loadedClass) ||\n r.hasClass(a.loadingClass) ||\n n.push(r[0]),\n 0 !== n.length &&\n n.each((e) => {\n const n = d(e)\n n.addClass(a.loadingClass)\n const l = n.attr('data-background'),\n c = n.attr('data-src'),\n p = n.attr('data-srcset'),\n u = n.attr('data-sizes'),\n h = n.parent('picture')\n t.loadImage(n[0], c || l, p, u, !1, () => {\n if (\n null != t &&\n t &&\n (!t || t.params) &&\n !t.destroyed\n ) {\n if (\n (l\n ? (n.css(\n 'background-image',\n `url(\"${l}\")`\n ),\n n.removeAttr('data-background'))\n : (p &&\n (n.attr('srcset', p),\n n.removeAttr('data-srcset')),\n u &&\n (n.attr('sizes', u),\n n.removeAttr('data-sizes')),\n h.length &&\n h\n .children('source')\n .each((e) => {\n const t = d(e)\n t.attr(\n 'data-srcset'\n ) &&\n (t.attr(\n 'srcset',\n t.attr(\n 'data-srcset'\n )\n ),\n t.removeAttr(\n 'data-srcset'\n ))\n }),\n c &&\n (n.attr('src', c),\n n.removeAttr('data-src'))),\n n\n .addClass(a.loadedClass)\n .removeClass(a.loadingClass),\n r.find(`.${a.preloaderClass}`).remove(),\n t.params.loop && s)\n ) {\n const e = r.attr(\n 'data-swiper-slide-index'\n )\n if (\n r.hasClass(\n t.params.slideDuplicateClass\n )\n ) {\n o(\n t.$wrapperEl\n .children(\n `[data-swiper-slide-index=\"${e}\"]:not(.${t.params.slideDuplicateClass})`\n )\n .index(),\n !1\n )\n } else {\n o(\n t.$wrapperEl\n .children(\n `.${t.params.slideDuplicateClass}[data-swiper-slide-index=\"${e}\"]`\n )\n .index(),\n !1\n )\n }\n }\n i('lazyImageReady', r[0], n[0]),\n t.params.autoHeight &&\n t.updateAutoHeight()\n }\n }),\n i('lazyImageLoad', r[0], n[0])\n })\n }\n function c() {\n const {\n $wrapperEl: e,\n params: s,\n slides: a,\n activeIndex: i,\n } = t,\n r = t.virtual && s.virtual.enabled,\n n = s.lazy\n let c = s.slidesPerView\n function p(t) {\n if (r) {\n if (\n e.children(\n `.${s.slideClass}[data-swiper-slide-index=\"${t}\"]`\n ).length\n )\n return !0\n } else if (a[t]) return !0\n return !1\n }\n function u(e) {\n return r\n ? d(e).attr('data-swiper-slide-index')\n : d(e).index()\n }\n if (\n ('auto' === c && (c = 0),\n l || (l = !0),\n t.params.watchSlidesProgress)\n )\n e.children(`.${s.slideVisibleClass}`).each((e) => {\n o(\n r\n ? d(e).attr('data-swiper-slide-index')\n : d(e).index()\n )\n })\n else if (c > 1) for (let e = i; e < i + c; e += 1) p(e) && o(e)\n else o(i)\n if (n.loadPrevNext)\n if (\n c > 1 ||\n (n.loadPrevNextAmount && n.loadPrevNextAmount > 1)\n ) {\n const e = n.loadPrevNextAmount,\n t = c,\n s = Math.min(i + t + Math.max(e, t), a.length),\n r = Math.max(i - Math.max(t, e), 0)\n for (let e = i + c; e < s; e += 1) p(e) && o(e)\n for (let e = r; e < i; e += 1) p(e) && o(e)\n } else {\n const t = e.children(`.${s.slideNextClass}`)\n t.length > 0 && o(u(t))\n const a = e.children(`.${s.slidePrevClass}`)\n a.length > 0 && o(u(a))\n }\n }\n function p() {\n const e = r()\n if (!t || t.destroyed) return\n const s = t.params.lazy.scrollingElement\n ? d(t.params.lazy.scrollingElement)\n : d(e),\n a = s[0] === e,\n i = a ? e.innerWidth : s[0].offsetWidth,\n l = a ? e.innerHeight : s[0].offsetHeight,\n o = t.$el.offset(),\n { rtlTranslate: u } = t\n let h = !1\n u && (o.left -= t.$el[0].scrollLeft)\n const m = [\n [o.left, o.top],\n [o.left + t.width, o.top],\n [o.left, o.top + t.height],\n [o.left + t.width, o.top + t.height],\n ]\n for (let e = 0; e < m.length; e += 1) {\n const t = m[e]\n if (t[0] >= 0 && t[0] <= i && t[1] >= 0 && t[1] <= l) {\n if (0 === t[0] && 0 === t[1]) continue\n h = !0\n }\n }\n const f = !(\n 'touchstart' !== t.touchEvents.start ||\n !t.support.passiveListener ||\n !t.params.passiveListeners\n ) && { passive: !0, capture: !1 }\n h\n ? (c(), s.off('scroll', p, f))\n : n || ((n = !0), s.on('scroll', p, f))\n }\n a('beforeInit', () => {\n t.params.lazy.enabled &&\n t.params.preloadImages &&\n (t.params.preloadImages = !1)\n }),\n a('init', () => {\n t.params.lazy.enabled &&\n (t.params.lazy.checkInView ? p() : c())\n }),\n a('scroll', () => {\n t.params.freeMode &&\n t.params.freeMode.enabled &&\n !t.params.freeMode.sticky &&\n c()\n }),\n a('scrollbarDragMove resize _freeModeNoMomentumRelease', () => {\n t.params.lazy.enabled &&\n (t.params.lazy.checkInView ? p() : c())\n }),\n a('transitionStart', () => {\n t.params.lazy.enabled &&\n (t.params.lazy.loadOnTransitionStart ||\n (!t.params.lazy.loadOnTransitionStart && !l)) &&\n (t.params.lazy.checkInView ? p() : c())\n }),\n a('transitionEnd', () => {\n t.params.lazy.enabled &&\n !t.params.lazy.loadOnTransitionStart &&\n (t.params.lazy.checkInView ? p() : c())\n }),\n a('slideChange', () => {\n const {\n lazy: e,\n cssMode: s,\n watchSlidesProgress: a,\n touchReleaseOnEdges: i,\n resistanceRatio: r,\n } = t.params\n e.enabled && (s || (a && (i || 0 === r))) && c()\n }),\n Object.assign(t.lazy, { load: c, loadInSlide: o })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a } = e\n function i(e, t) {\n const s = (function () {\n let e, t, s\n return (a, i) => {\n for (t = -1, e = a.length; e - t > 1; )\n (s = (e + t) >> 1), a[s] <= i ? (t = s) : (e = s)\n return e\n }\n })()\n let a, i\n return (\n (this.x = e),\n (this.y = t),\n (this.lastIndex = e.length - 1),\n (this.interpolate = function (e) {\n return e\n ? ((i = s(this.x, e)),\n (a = i - 1),\n ((e - this.x[a]) * (this.y[i] - this.y[a])) /\n (this.x[i] - this.x[a]) +\n this.y[a])\n : 0\n }),\n this\n )\n }\n function r() {\n t.controller.control &&\n t.controller.spline &&\n ((t.controller.spline = void 0), delete t.controller.spline)\n }\n s({ controller: { control: void 0, inverse: !1, by: 'slide' } }),\n (t.controller = { control: void 0 }),\n a('beforeInit', () => {\n t.controller.control = t.params.controller.control\n }),\n a('update', () => {\n r()\n }),\n a('resize', () => {\n r()\n }),\n a('observerUpdate', () => {\n r()\n }),\n a('setTranslate', (e, s, a) => {\n t.controller.control && t.controller.setTranslate(s, a)\n }),\n a('setTransition', (e, s, a) => {\n t.controller.control && t.controller.setTransition(s, a)\n }),\n Object.assign(t.controller, {\n setTranslate: function (e, s) {\n const a = t.controller.control\n let r, n\n const l = t.constructor\n function o(e) {\n const s = t.rtlTranslate\n ? -t.translate\n : t.translate\n 'slide' === t.params.controller.by &&\n (!(function (e) {\n t.controller.spline ||\n (t.controller.spline = t.params.loop\n ? new i(t.slidesGrid, e.slidesGrid)\n : new i(t.snapGrid, e.snapGrid))\n })(e),\n (n = -t.controller.spline.interpolate(-s))),\n (n && 'container' !== t.params.controller.by) ||\n ((r =\n (e.maxTranslate() - e.minTranslate()) /\n (t.maxTranslate() - t.minTranslate())),\n (n =\n (s - t.minTranslate()) * r +\n e.minTranslate())),\n t.params.controller.inverse &&\n (n = e.maxTranslate() - n),\n e.updateProgress(n),\n e.setTranslate(n, t),\n e.updateActiveIndex(),\n e.updateSlidesClasses()\n }\n if (Array.isArray(a))\n for (let e = 0; e < a.length; e += 1)\n a[e] !== s && a[e] instanceof l && o(a[e])\n else a instanceof l && s !== a && o(a)\n },\n setTransition: function (e, s) {\n const a = t.constructor,\n i = t.controller.control\n let r\n function n(s) {\n s.setTransition(e, t),\n 0 !== e &&\n (s.transitionStart(),\n s.params.autoHeight &&\n p(() => {\n s.updateAutoHeight()\n }),\n s.$wrapperEl.transitionEnd(() => {\n i &&\n (s.params.loop &&\n 'slide' ===\n t.params.controller.by &&\n s.loopFix(),\n s.transitionEnd())\n }))\n }\n if (Array.isArray(i))\n for (r = 0; r < i.length; r += 1)\n i[r] !== s && i[r] instanceof a && n(i[r])\n else i instanceof a && s !== i && n(i)\n },\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a } = e\n s({\n a11y: {\n enabled: !0,\n notificationClass: 'swiper-notification',\n prevSlideMessage: 'Previous slide',\n nextSlideMessage: 'Next slide',\n firstSlideMessage: 'This is the first slide',\n lastSlideMessage: 'This is the last slide',\n paginationBulletMessage: 'Go to slide {{index}}',\n slideLabelMessage: '{{index}} / {{slidesLength}}',\n containerMessage: null,\n containerRoleDescriptionMessage: null,\n itemRoleDescriptionMessage: null,\n slideRole: 'group',\n },\n })\n let i = null\n function r(e) {\n const t = i\n 0 !== t.length && (t.html(''), t.html(e))\n }\n function n(e) {\n e.attr('tabIndex', '0')\n }\n function l(e) {\n e.attr('tabIndex', '-1')\n }\n function o(e, t) {\n e.attr('role', t)\n }\n function c(e, t) {\n e.attr('aria-roledescription', t)\n }\n function p(e, t) {\n e.attr('aria-label', t)\n }\n function u(e) {\n e.attr('aria-disabled', !0)\n }\n function h(e) {\n e.attr('aria-disabled', !1)\n }\n function m(e) {\n if (13 !== e.keyCode && 32 !== e.keyCode) return\n const s = t.params.a11y,\n a = d(e.target)\n t.navigation &&\n t.navigation.$nextEl &&\n a.is(t.navigation.$nextEl) &&\n ((t.isEnd && !t.params.loop) || t.slideNext(),\n t.isEnd ? r(s.lastSlideMessage) : r(s.nextSlideMessage)),\n t.navigation &&\n t.navigation.$prevEl &&\n a.is(t.navigation.$prevEl) &&\n ((t.isBeginning && !t.params.loop) || t.slidePrev(),\n t.isBeginning\n ? r(s.firstSlideMessage)\n : r(s.prevSlideMessage)),\n t.pagination &&\n a.is(U(t.params.pagination.bulletClass)) &&\n a[0].click()\n }\n function f() {\n return (\n t.pagination &&\n t.pagination.bullets &&\n t.pagination.bullets.length\n )\n }\n function g() {\n return f() && t.params.pagination.clickable\n }\n const v = (e, t, s) => {\n n(e),\n 'BUTTON' !== e[0].tagName &&\n (o(e, 'button'), e.on('keydown', m)),\n p(e, s),\n (function (e, t) {\n e.attr('aria-controls', t)\n })(e, t)\n },\n w = (e) => {\n const s = e.target.closest(`.${t.params.slideClass}`)\n if (!s || !t.slides.includes(s)) return\n const a = t.slides.indexOf(s) === t.activeIndex,\n i =\n t.params.watchSlidesProgress &&\n t.visibleSlides &&\n t.visibleSlides.includes(s)\n a || i || t.slideTo(t.slides.indexOf(s), 0)\n }\n function b() {\n const e = t.params.a11y\n t.$el.append(i)\n const s = t.$el\n e.containerRoleDescriptionMessage &&\n c(s, e.containerRoleDescriptionMessage),\n e.containerMessage && p(s, e.containerMessage)\n const a = t.$wrapperEl,\n r =\n a.attr('id') ||\n `swiper-wrapper-${\n ((n = 16),\n void 0 === n && (n = 16),\n 'x'\n .repeat(n)\n .replace(/x/g, () =>\n Math.round(16 * Math.random()).toString(16)\n ))\n }`\n var n\n const l =\n t.params.autoplay && t.params.autoplay.enabled\n ? 'off'\n : 'polite'\n var u\n ;(u = r),\n a.attr('id', u),\n (function (e, t) {\n e.attr('aria-live', t)\n })(a, l),\n e.itemRoleDescriptionMessage &&\n c(d(t.slides), e.itemRoleDescriptionMessage),\n o(d(t.slides), e.slideRole)\n const h = t.params.loop\n ? t.slides.filter(\n (e) =>\n !e.classList.contains(\n t.params.slideDuplicateClass\n )\n ).length\n : t.slides.length\n let f, b\n t.slides.each((s, a) => {\n const i = d(s),\n r = t.params.loop\n ? parseInt(i.attr('data-swiper-slide-index'), 10)\n : a\n p(\n i,\n e.slideLabelMessage\n .replace(/\\{\\{index\\}\\}/, r + 1)\n .replace(/\\{\\{slidesLength\\}\\}/, h)\n )\n }),\n t.navigation &&\n t.navigation.$nextEl &&\n (f = t.navigation.$nextEl),\n t.navigation &&\n t.navigation.$prevEl &&\n (b = t.navigation.$prevEl),\n f && f.length && v(f, r, e.nextSlideMessage),\n b && b.length && v(b, r, e.prevSlideMessage),\n g() &&\n t.pagination.$el.on(\n 'keydown',\n U(t.params.pagination.bulletClass),\n m\n ),\n t.$el.on('focus', w, !0)\n }\n a('beforeInit', () => {\n i = d(\n `<span class=\"${t.params.a11y.notificationClass}\" aria-live=\"assertive\" aria-atomic=\"true\"></span>`\n )\n }),\n a('afterInit', () => {\n t.params.a11y.enabled && b()\n }),\n a('fromEdge toEdge afterInit lock unlock', () => {\n t.params.a11y.enabled &&\n (function () {\n if (\n t.params.loop ||\n t.params.rewind ||\n !t.navigation\n )\n return\n const { $nextEl: e, $prevEl: s } = t.navigation\n s &&\n s.length > 0 &&\n (t.isBeginning ? (u(s), l(s)) : (h(s), n(s))),\n e &&\n e.length > 0 &&\n (t.isEnd ? (u(e), l(e)) : (h(e), n(e)))\n })()\n }),\n a('paginationUpdate', () => {\n t.params.a11y.enabled &&\n (function () {\n const e = t.params.a11y\n f() &&\n t.pagination.bullets.each((s) => {\n const a = d(s)\n t.params.pagination.clickable &&\n (n(a),\n t.params.pagination.renderBullet ||\n (o(a, 'button'),\n p(\n a,\n e.paginationBulletMessage.replace(\n /\\{\\{index\\}\\}/,\n a.index() + 1\n )\n ))),\n a.is(\n `.${t.params.pagination.bulletActiveClass}`\n )\n ? a.attr('aria-current', 'true')\n : a.removeAttr('aria-current')\n })\n })()\n }),\n a('destroy', () => {\n t.params.a11y.enabled &&\n (function () {\n let e, s\n i && i.length > 0 && i.remove(),\n t.navigation &&\n t.navigation.$nextEl &&\n (e = t.navigation.$nextEl),\n t.navigation &&\n t.navigation.$prevEl &&\n (s = t.navigation.$prevEl),\n e && e.off('keydown', m),\n s && s.off('keydown', m),\n g() &&\n t.pagination.$el.off(\n 'keydown',\n U(t.params.pagination.bulletClass),\n m\n ),\n t.$el.off('focus', w, !0)\n })()\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a } = e\n s({\n history: {\n enabled: !1,\n root: '',\n replaceState: !1,\n key: 'slides',\n },\n })\n let i = !1,\n n = {}\n const l = (e) =>\n e\n .toString()\n .replace(/\\s+/g, '-')\n .replace(/[^\\w-]+/g, '')\n .replace(/--+/g, '-')\n .replace(/^-+/, '')\n .replace(/-+$/, ''),\n o = (e) => {\n const t = r()\n let s\n s = e ? new URL(e) : t.location\n const a = s.pathname\n .slice(1)\n .split('/')\n .filter((e) => '' !== e),\n i = a.length\n return { key: a[i - 2], value: a[i - 1] }\n },\n d = (e, s) => {\n const a = r()\n if (!i || !t.params.history.enabled) return\n let n\n n = t.params.url ? new URL(t.params.url) : a.location\n const o = t.slides.eq(s)\n let d = l(o.attr('data-history'))\n if (t.params.history.root.length > 0) {\n let s = t.params.history.root\n '/' === s[s.length - 1] &&\n (s = s.slice(0, s.length - 1)),\n (d = `${s}/${e}/${d}`)\n } else n.pathname.includes(e) || (d = `${e}/${d}`)\n const c = a.history.state\n ;(c && c.value === d) ||\n (t.params.history.replaceState\n ? a.history.replaceState({ value: d }, null, d)\n : a.history.pushState({ value: d }, null, d))\n },\n c = (e, s, a) => {\n if (s)\n for (let i = 0, r = t.slides.length; i < r; i += 1) {\n const r = t.slides.eq(i)\n if (\n l(r.attr('data-history')) === s &&\n !r.hasClass(t.params.slideDuplicateClass)\n ) {\n const s = r.index()\n t.slideTo(s, e, a)\n }\n }\n else t.slideTo(0, e, a)\n },\n p = () => {\n ;(n = o(t.params.url)), c(t.params.speed, t.paths.value, !1)\n }\n a('init', () => {\n t.params.history.enabled &&\n (() => {\n const e = r()\n if (t.params.history) {\n if (!e.history || !e.history.pushState)\n return (\n (t.params.history.enabled = !1),\n void (t.params.hashNavigation.enabled = !0)\n )\n ;(i = !0),\n (n = o(t.params.url)),\n (n.key || n.value) &&\n (c(0, n.value, t.params.runCallbacksOnInit),\n t.params.history.replaceState ||\n e.addEventListener('popstate', p))\n }\n })()\n }),\n a('destroy', () => {\n t.params.history.enabled &&\n (() => {\n const e = r()\n t.params.history.replaceState ||\n e.removeEventListener('popstate', p)\n })()\n }),\n a('transitionEnd _freeModeNoMomentumRelease', () => {\n i && d(t.params.history.key, t.activeIndex)\n }),\n a('slideChange', () => {\n i &&\n t.params.cssMode &&\n d(t.params.history.key, t.activeIndex)\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, emit: i, on: n } = e,\n l = !1\n const o = a(),\n c = r()\n s({\n hashNavigation: {\n enabled: !1,\n replaceState: !1,\n watchState: !1,\n },\n })\n const p = () => {\n i('hashChange')\n const e = o.location.hash.replace('#', '')\n if (e !== t.slides.eq(t.activeIndex).attr('data-hash')) {\n const s = t.$wrapperEl\n .children(\n `.${t.params.slideClass}[data-hash=\"${e}\"]`\n )\n .index()\n if (void 0 === s) return\n t.slideTo(s)\n }\n },\n u = () => {\n if (l && t.params.hashNavigation.enabled)\n if (\n t.params.hashNavigation.replaceState &&\n c.history &&\n c.history.replaceState\n )\n c.history.replaceState(\n null,\n null,\n `#${t.slides\n .eq(t.activeIndex)\n .attr('data-hash')}` || ''\n ),\n i('hashSet')\n else {\n const e = t.slides.eq(t.activeIndex),\n s =\n e.attr('data-hash') ||\n e.attr('data-history')\n ;(o.location.hash = s || ''), i('hashSet')\n }\n }\n n('init', () => {\n t.params.hashNavigation.enabled &&\n (() => {\n if (\n !t.params.hashNavigation.enabled ||\n (t.params.history && t.params.history.enabled)\n )\n return\n l = !0\n const e = o.location.hash.replace('#', '')\n if (e) {\n const s = 0\n for (\n let a = 0, i = t.slides.length;\n a < i;\n a += 1\n ) {\n const i = t.slides.eq(a)\n if (\n (i.attr('data-hash') ||\n i.attr('data-history')) === e &&\n !i.hasClass(t.params.slideDuplicateClass)\n ) {\n const e = i.index()\n t.slideTo(\n e,\n s,\n t.params.runCallbacksOnInit,\n !0\n )\n }\n }\n }\n t.params.hashNavigation.watchState &&\n d(c).on('hashchange', p)\n })()\n }),\n n('destroy', () => {\n t.params.hashNavigation.enabled &&\n t.params.hashNavigation.watchState &&\n d(c).off('hashchange', p)\n }),\n n('transitionEnd _freeModeNoMomentumRelease', () => {\n l && u()\n }),\n n('slideChange', () => {\n l && t.params.cssMode && u()\n })\n },\n function (e) {\n let t,\n { swiper: s, extendParams: i, on: r, emit: n } = e\n function l() {\n const e = s.slides.eq(s.activeIndex)\n let a = s.params.autoplay.delay\n e.attr('data-swiper-autoplay') &&\n (a =\n e.attr('data-swiper-autoplay') ||\n s.params.autoplay.delay),\n clearTimeout(t),\n (t = p(() => {\n let e\n s.params.autoplay.reverseDirection\n ? s.params.loop\n ? (s.loopFix(),\n (e = s.slidePrev(s.params.speed, !0, !0)),\n n('autoplay'))\n : s.isBeginning\n ? s.params.autoplay.stopOnLastSlide\n ? d()\n : ((e = s.slideTo(\n s.slides.length - 1,\n s.params.speed,\n !0,\n !0\n )),\n n('autoplay'))\n : ((e = s.slidePrev(s.params.speed, !0, !0)),\n n('autoplay'))\n : s.params.loop\n ? (s.loopFix(),\n (e = s.slideNext(s.params.speed, !0, !0)),\n n('autoplay'))\n : s.isEnd\n ? s.params.autoplay.stopOnLastSlide\n ? d()\n : ((e = s.slideTo(0, s.params.speed, !0, !0)),\n n('autoplay'))\n : ((e = s.slideNext(s.params.speed, !0, !0)),\n n('autoplay')),\n ((s.params.cssMode && s.autoplay.running) ||\n !1 === e) &&\n l()\n }, a))\n }\n function o() {\n return (\n void 0 === t &&\n !s.autoplay.running &&\n ((s.autoplay.running = !0), n('autoplayStart'), l(), !0)\n )\n }\n function d() {\n return (\n !!s.autoplay.running &&\n void 0 !== t &&\n (t && (clearTimeout(t), (t = void 0)),\n (s.autoplay.running = !1),\n n('autoplayStop'),\n !0)\n )\n }\n function c(e) {\n s.autoplay.running &&\n (s.autoplay.paused ||\n (t && clearTimeout(t),\n (s.autoplay.paused = !0),\n 0 !== e && s.params.autoplay.waitForTransition\n ? ['transitionend', 'webkitTransitionEnd'].forEach(\n (e) => {\n s.$wrapperEl[0].addEventListener(e, h)\n }\n )\n : ((s.autoplay.paused = !1), l())))\n }\n function u() {\n const e = a()\n 'hidden' === e.visibilityState && s.autoplay.running && c(),\n 'visible' === e.visibilityState &&\n s.autoplay.paused &&\n (l(), (s.autoplay.paused = !1))\n }\n function h(e) {\n s &&\n !s.destroyed &&\n s.$wrapperEl &&\n e.target === s.$wrapperEl[0] &&\n (['transitionend', 'webkitTransitionEnd'].forEach((e) => {\n s.$wrapperEl[0].removeEventListener(e, h)\n }),\n (s.autoplay.paused = !1),\n s.autoplay.running ? l() : d())\n }\n function m() {\n s.params.autoplay.disableOnInteraction\n ? d()\n : (n('autoplayPause'), c()),\n ['transitionend', 'webkitTransitionEnd'].forEach((e) => {\n s.$wrapperEl[0].removeEventListener(e, h)\n })\n }\n function f() {\n s.params.autoplay.disableOnInteraction ||\n ((s.autoplay.paused = !1), n('autoplayResume'), l())\n }\n ;(s.autoplay = { running: !1, paused: !1 }),\n i({\n autoplay: {\n enabled: !1,\n delay: 3e3,\n waitForTransition: !0,\n disableOnInteraction: !0,\n stopOnLastSlide: !1,\n reverseDirection: !1,\n pauseOnMouseEnter: !1,\n },\n }),\n r('init', () => {\n if (s.params.autoplay.enabled) {\n o()\n a().addEventListener('visibilitychange', u),\n s.params.autoplay.pauseOnMouseEnter &&\n (s.$el.on('mouseenter', m),\n s.$el.on('mouseleave', f))\n }\n }),\n r('beforeTransitionStart', (e, t, a) => {\n s.autoplay.running &&\n (a || !s.params.autoplay.disableOnInteraction\n ? s.autoplay.pause(t)\n : d())\n }),\n r('sliderFirstMove', () => {\n s.autoplay.running &&\n (s.params.autoplay.disableOnInteraction ? d() : c())\n }),\n r('touchEnd', () => {\n s.params.cssMode &&\n s.autoplay.paused &&\n !s.params.autoplay.disableOnInteraction &&\n l()\n }),\n r('destroy', () => {\n s.$el.off('mouseenter', m),\n s.$el.off('mouseleave', f),\n s.autoplay.running && d()\n a().removeEventListener('visibilitychange', u)\n }),\n Object.assign(s.autoplay, {\n pause: c,\n run: l,\n start: o,\n stop: d,\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a } = e\n s({\n thumbs: {\n swiper: null,\n multipleActiveThumbs: !0,\n autoScrollOffset: 0,\n slideThumbActiveClass: 'swiper-slide-thumb-active',\n thumbsContainerClass: 'swiper-thumbs',\n },\n })\n let i = !1,\n r = !1\n function n() {\n const e = t.thumbs.swiper\n if (!e) return\n const s = e.clickedIndex,\n a = e.clickedSlide\n if (a && d(a).hasClass(t.params.thumbs.slideThumbActiveClass))\n return\n if (null == s) return\n let i\n if (\n ((i = e.params.loop\n ? parseInt(\n d(e.clickedSlide).attr('data-swiper-slide-index'),\n 10\n )\n : s),\n t.params.loop)\n ) {\n let e = t.activeIndex\n t.slides.eq(e).hasClass(t.params.slideDuplicateClass) &&\n (t.loopFix(),\n (t._clientLeft = t.$wrapperEl[0].clientLeft),\n (e = t.activeIndex))\n const s = t.slides\n .eq(e)\n .prevAll(`[data-swiper-slide-index=\"${i}\"]`)\n .eq(0)\n .index(),\n a = t.slides\n .eq(e)\n .nextAll(`[data-swiper-slide-index=\"${i}\"]`)\n .eq(0)\n .index()\n i =\n void 0 === s\n ? a\n : void 0 === a\n ? s\n : a - e < e - s\n ? a\n : s\n }\n t.slideTo(i)\n }\n function l() {\n const { thumbs: e } = t.params\n if (i) return !1\n i = !0\n const s = t.constructor\n if (e.swiper instanceof s)\n (t.thumbs.swiper = e.swiper),\n Object.assign(t.thumbs.swiper.originalParams, {\n watchSlidesProgress: !0,\n slideToClickedSlide: !1,\n }),\n Object.assign(t.thumbs.swiper.params, {\n watchSlidesProgress: !0,\n slideToClickedSlide: !1,\n })\n else if (m(e.swiper)) {\n const a = Object.assign({}, e.swiper)\n Object.assign(a, {\n watchSlidesProgress: !0,\n slideToClickedSlide: !1,\n }),\n (t.thumbs.swiper = new s(a)),\n (r = !0)\n }\n return (\n t.thumbs.swiper.$el.addClass(\n t.params.thumbs.thumbsContainerClass\n ),\n t.thumbs.swiper.on('tap', n),\n !0\n )\n }\n function o(e) {\n const s = t.thumbs.swiper\n if (!s) return\n const a =\n 'auto' === s.params.slidesPerView\n ? s.slidesPerViewDynamic()\n : s.params.slidesPerView,\n i = t.params.thumbs.autoScrollOffset,\n r = i && !s.params.loop\n if (t.realIndex !== s.realIndex || r) {\n let n,\n l,\n o = s.activeIndex\n if (s.params.loop) {\n s.slides.eq(o).hasClass(s.params.slideDuplicateClass) &&\n (s.loopFix(),\n (s._clientLeft = s.$wrapperEl[0].clientLeft),\n (o = s.activeIndex))\n const e = s.slides\n .eq(o)\n .prevAll(\n `[data-swiper-slide-index=\"${t.realIndex}\"]`\n )\n .eq(0)\n .index(),\n a = s.slides\n .eq(o)\n .nextAll(\n `[data-swiper-slide-index=\"${t.realIndex}\"]`\n )\n .eq(0)\n .index()\n ;(n =\n void 0 === e\n ? a\n : void 0 === a\n ? e\n : a - o == o - e\n ? s.params.slidesPerGroup > 1\n ? a\n : o\n : a - o < o - e\n ? a\n : e),\n (l =\n t.activeIndex > t.previousIndex\n ? 'next'\n : 'prev')\n } else\n (n = t.realIndex),\n (l = n > t.previousIndex ? 'next' : 'prev')\n r && (n += 'next' === l ? i : -1 * i),\n s.visibleSlidesIndexes &&\n s.visibleSlidesIndexes.indexOf(n) < 0 &&\n (s.params.centeredSlides\n ? (n =\n n > o\n ? n - Math.floor(a / 2) + 1\n : n + Math.floor(a / 2) - 1)\n : n > o && s.params.slidesPerGroup,\n s.slideTo(n, e ? 0 : void 0))\n }\n let n = 1\n const l = t.params.thumbs.slideThumbActiveClass\n if (\n (t.params.slidesPerView > 1 &&\n !t.params.centeredSlides &&\n (n = t.params.slidesPerView),\n t.params.thumbs.multipleActiveThumbs || (n = 1),\n (n = Math.floor(n)),\n s.slides.removeClass(l),\n s.params.loop ||\n (s.params.virtual && s.params.virtual.enabled))\n )\n for (let e = 0; e < n; e += 1)\n s.$wrapperEl\n .children(\n `[data-swiper-slide-index=\"${t.realIndex + e}\"]`\n )\n .addClass(l)\n else\n for (let e = 0; e < n; e += 1)\n s.slides.eq(t.realIndex + e).addClass(l)\n }\n ;(t.thumbs = { swiper: null }),\n a('beforeInit', () => {\n const { thumbs: e } = t.params\n e && e.swiper && (l(), o(!0))\n }),\n a('slideChange update resize observerUpdate', () => {\n t.thumbs.swiper && o()\n }),\n a('setTransition', (e, s) => {\n const a = t.thumbs.swiper\n a && a.setTransition(s)\n }),\n a('beforeDestroy', () => {\n const e = t.thumbs.swiper\n e && r && e && e.destroy()\n }),\n Object.assign(t.thumbs, { init: l, update: o })\n },\n function (e) {\n let { swiper: t, extendParams: s, emit: a, once: i } = e\n s({\n freeMode: {\n enabled: !1,\n momentum: !0,\n momentumRatio: 1,\n momentumBounce: !0,\n momentumBounceRatio: 1,\n momentumVelocityRatio: 1,\n sticky: !1,\n minimumVelocity: 0.02,\n },\n }),\n Object.assign(t, {\n freeMode: {\n onTouchStart: function () {\n const e = t.getTranslate()\n t.setTranslate(e),\n t.setTransition(0),\n (t.touchEventsData.velocities.length = 0),\n t.freeMode.onTouchEnd({\n currentPos: t.rtl\n ? t.translate\n : -t.translate,\n })\n },\n onTouchMove: function () {\n const { touchEventsData: e, touches: s } = t\n 0 === e.velocities.length &&\n e.velocities.push({\n position:\n s[\n t.isHorizontal()\n ? 'startX'\n : 'startY'\n ],\n time: e.touchStartTime,\n }),\n e.velocities.push({\n position:\n s[\n t.isHorizontal()\n ? 'currentX'\n : 'currentY'\n ],\n time: u(),\n })\n },\n onTouchEnd: function (e) {\n let { currentPos: s } = e\n const {\n params: r,\n $wrapperEl: n,\n rtlTranslate: l,\n snapGrid: o,\n touchEventsData: d,\n } = t,\n c = u() - d.touchStartTime\n if (s < -t.minTranslate()) t.slideTo(t.activeIndex)\n else if (s > -t.maxTranslate())\n t.slides.length < o.length\n ? t.slideTo(o.length - 1)\n : t.slideTo(t.slides.length - 1)\n else {\n if (r.freeMode.momentum) {\n if (d.velocities.length > 1) {\n const e = d.velocities.pop(),\n s = d.velocities.pop(),\n a = e.position - s.position,\n i = e.time - s.time\n ;(t.velocity = a / i),\n (t.velocity /= 2),\n Math.abs(t.velocity) <\n r.freeMode.minimumVelocity &&\n (t.velocity = 0),\n (i > 150 || u() - e.time > 300) &&\n (t.velocity = 0)\n } else t.velocity = 0\n ;(t.velocity *=\n r.freeMode.momentumVelocityRatio),\n (d.velocities.length = 0)\n let e = 1e3 * r.freeMode.momentumRatio\n const s = t.velocity * e\n let c = t.translate + s\n l && (c = -c)\n let p,\n h = !1\n const m =\n 20 *\n Math.abs(t.velocity) *\n r.freeMode.momentumBounceRatio\n let f\n if (c < t.maxTranslate())\n r.freeMode.momentumBounce\n ? (c + t.maxTranslate() < -m &&\n (c = t.maxTranslate() - m),\n (p = t.maxTranslate()),\n (h = !0),\n (d.allowMomentumBounce = !0))\n : (c = t.maxTranslate()),\n r.loop &&\n r.centeredSlides &&\n (f = !0)\n else if (c > t.minTranslate())\n r.freeMode.momentumBounce\n ? (c - t.minTranslate() > m &&\n (c = t.minTranslate() + m),\n (p = t.minTranslate()),\n (h = !0),\n (d.allowMomentumBounce = !0))\n : (c = t.minTranslate()),\n r.loop &&\n r.centeredSlides &&\n (f = !0)\n else if (r.freeMode.sticky) {\n let e\n for (let t = 0; t < o.length; t += 1)\n if (o[t] > -c) {\n e = t\n break\n }\n ;(c =\n Math.abs(o[e] - c) <\n Math.abs(o[e - 1] - c) ||\n 'next' === t.swipeDirection\n ? o[e]\n : o[e - 1]),\n (c = -c)\n }\n if (\n (f &&\n i('transitionEnd', () => {\n t.loopFix()\n }),\n 0 !== t.velocity)\n ) {\n if (\n ((e = l\n ? Math.abs(\n (-c - t.translate) /\n t.velocity\n )\n : Math.abs(\n (c - t.translate) /\n t.velocity\n )),\n r.freeMode.sticky)\n ) {\n const s = Math.abs(\n (l ? -c : c) - t.translate\n ),\n a =\n t.slidesSizesGrid[\n t.activeIndex\n ]\n e =\n s < a\n ? r.speed\n : s < 2 * a\n ? 1.5 * r.speed\n : 2.5 * r.speed\n }\n } else if (r.freeMode.sticky)\n return void t.slideToClosest()\n r.freeMode.momentumBounce && h\n ? (t.updateProgress(p),\n t.setTransition(e),\n t.setTranslate(c),\n t.transitionStart(\n !0,\n t.swipeDirection\n ),\n (t.animating = !0),\n n.transitionEnd(() => {\n t &&\n !t.destroyed &&\n d.allowMomentumBounce &&\n (a('momentumBounce'),\n t.setTransition(r.speed),\n setTimeout(() => {\n t.setTranslate(p),\n n.transitionEnd(\n () => {\n t &&\n !t.destroyed &&\n t.transitionEnd()\n }\n )\n }, 0))\n }))\n : t.velocity\n ? (a('_freeModeNoMomentumRelease'),\n t.updateProgress(c),\n t.setTransition(e),\n t.setTranslate(c),\n t.transitionStart(\n !0,\n t.swipeDirection\n ),\n t.animating ||\n ((t.animating = !0),\n n.transitionEnd(() => {\n t &&\n !t.destroyed &&\n t.transitionEnd()\n })))\n : t.updateProgress(c),\n t.updateActiveIndex(),\n t.updateSlidesClasses()\n } else {\n if (r.freeMode.sticky)\n return void t.slideToClosest()\n r.freeMode &&\n a('_freeModeNoMomentumRelease')\n }\n ;(!r.freeMode.momentum ||\n c >= r.longSwipesMs) &&\n (t.updateProgress(),\n t.updateActiveIndex(),\n t.updateSlidesClasses())\n }\n },\n },\n })\n },\n function (e) {\n let t,\n s,\n a,\n { swiper: i, extendParams: r } = e\n r({ grid: { rows: 1, fill: 'column' } }),\n (i.grid = {\n initSlides: (e) => {\n const { slidesPerView: r } = i.params,\n { rows: n, fill: l } = i.params.grid\n ;(s = t / n),\n (a = Math.floor(e / n)),\n (t =\n Math.floor(e / n) === e / n\n ? e\n : Math.ceil(e / n) * n),\n 'auto' !== r &&\n 'row' === l &&\n (t = Math.max(t, r * n))\n },\n updateSlide: (e, r, n, l) => {\n const { slidesPerGroup: o, spaceBetween: d } = i.params,\n { rows: c, fill: p } = i.params.grid\n let u, h, m\n if ('row' === p && o > 1) {\n const s = Math.floor(e / (o * c)),\n a = e - c * o * s,\n i =\n 0 === s\n ? o\n : Math.min(\n Math.ceil((n - s * c * o) / c),\n o\n )\n ;(m = Math.floor(a / i)),\n (h = a - m * i + s * o),\n (u = h + (m * t) / c),\n r.css({ '-webkit-order': u, order: u })\n } else\n 'column' === p\n ? ((h = Math.floor(e / c)),\n (m = e - h * c),\n (h > a || (h === a && m === c - 1)) &&\n ((m += 1), m >= c && ((m = 0), (h += 1))))\n : ((m = Math.floor(e / s)), (h = e - m * s))\n r.css(l('margin-top'), 0 !== m ? d && `${d}px` : '')\n },\n updateWrapperSize: (e, s, a) => {\n const {\n spaceBetween: r,\n centeredSlides: n,\n roundLengths: l,\n } = i.params,\n { rows: o } = i.params.grid\n if (\n ((i.virtualSize = (e + r) * t),\n (i.virtualSize = Math.ceil(i.virtualSize / o) - r),\n i.$wrapperEl.css({\n [a('width')]: `${i.virtualSize + r}px`,\n }),\n n)\n ) {\n s.splice(0, s.length)\n const e = []\n for (let t = 0; t < s.length; t += 1) {\n let a = s[t]\n l && (a = Math.floor(a)),\n s[t] < i.virtualSize + s[0] && e.push(a)\n }\n s.push(...e)\n }\n },\n })\n },\n function (e) {\n let { swiper: t } = e\n Object.assign(t, {\n appendSlide: K.bind(t),\n prependSlide: Z.bind(t),\n addSlide: J.bind(t),\n removeSlide: Q.bind(t),\n removeAllSlides: ee.bind(t),\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a } = e\n s({ fadeEffect: { crossFade: !1, transformEl: null } }),\n te({\n effect: 'fade',\n swiper: t,\n on: a,\n setTranslate: () => {\n const { slides: e } = t,\n s = t.params.fadeEffect\n for (let a = 0; a < e.length; a += 1) {\n const e = t.slides.eq(a)\n let i = -e[0].swiperSlideOffset\n t.params.virtualTranslate || (i -= t.translate)\n let r = 0\n t.isHorizontal() || ((r = i), (i = 0))\n const n = t.params.fadeEffect.crossFade\n ? Math.max(1 - Math.abs(e[0].progress), 0)\n : 1 + Math.min(Math.max(e[0].progress, -1), 0)\n se(s, e)\n .css({ opacity: n })\n .transform(`translate3d(${i}px, ${r}px, 0px)`)\n }\n },\n setTransition: (e) => {\n const { transformEl: s } = t.params.fadeEffect\n ;(s ? t.slides.find(s) : t.slides).transition(e),\n ae({\n swiper: t,\n duration: e,\n transformEl: s,\n allSlides: !0,\n })\n },\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: !0,\n spaceBetween: 0,\n virtualTranslate: !t.params.cssMode,\n }),\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a } = e\n s({\n cubeEffect: {\n slideShadows: !0,\n shadow: !0,\n shadowOffset: 20,\n shadowScale: 0.94,\n },\n }),\n te({\n effect: 'cube',\n swiper: t,\n on: a,\n setTranslate: () => {\n const {\n $el: e,\n $wrapperEl: s,\n slides: a,\n width: i,\n height: r,\n rtlTranslate: n,\n size: l,\n browser: o,\n } = t,\n c = t.params.cubeEffect,\n p = t.isHorizontal(),\n u = t.virtual && t.params.virtual.enabled\n let h,\n m = 0\n c.shadow &&\n (p\n ? ((h = s.find('.swiper-cube-shadow')),\n 0 === h.length &&\n ((h = d(\n '<div class=\"swiper-cube-shadow\"></div>'\n )),\n s.append(h)),\n h.css({ height: `${i}px` }))\n : ((h = e.find('.swiper-cube-shadow')),\n 0 === h.length &&\n ((h = d(\n '<div class=\"swiper-cube-shadow\"></div>'\n )),\n e.append(h))))\n for (let e = 0; e < a.length; e += 1) {\n const t = a.eq(e)\n let s = e\n u &&\n (s = parseInt(\n t.attr('data-swiper-slide-index'),\n 10\n ))\n let i = 90 * s,\n r = Math.floor(i / 360)\n n && ((i = -i), (r = Math.floor(-i / 360)))\n const o = Math.max(Math.min(t[0].progress, 1), -1)\n let h = 0,\n f = 0,\n g = 0\n s % 4 == 0\n ? ((h = 4 * -r * l), (g = 0))\n : (s - 1) % 4 == 0\n ? ((h = 0), (g = 4 * -r * l))\n : (s - 2) % 4 == 0\n ? ((h = l + 4 * r * l), (g = l))\n : (s - 3) % 4 == 0 &&\n ((h = -l), (g = 3 * l + 4 * l * r)),\n n && (h = -h),\n p || ((f = h), (h = 0))\n const v = `rotateX(${p ? 0 : -i}deg) rotateY(${\n p ? i : 0\n }deg) translate3d(${h}px, ${f}px, ${g}px)`\n if (\n (o <= 1 &&\n o > -1 &&\n ((m = 90 * s + 90 * o),\n n && (m = 90 * -s - 90 * o)),\n t.transform(v),\n c.slideShadows)\n ) {\n let e = p\n ? t.find('.swiper-slide-shadow-left')\n : t.find('.swiper-slide-shadow-top'),\n s = p\n ? t.find('.swiper-slide-shadow-right')\n : t.find('.swiper-slide-shadow-bottom')\n 0 === e.length &&\n ((e = d(\n `<div class=\"swiper-slide-shadow-${\n p ? 'left' : 'top'\n }\"></div>`\n )),\n t.append(e)),\n 0 === s.length &&\n ((s = d(\n `<div class=\"swiper-slide-shadow-${\n p ? 'right' : 'bottom'\n }\"></div>`\n )),\n t.append(s)),\n e.length &&\n (e[0].style.opacity = Math.max(-o, 0)),\n s.length &&\n (s[0].style.opacity = Math.max(o, 0))\n }\n }\n if (\n (s.css({\n '-webkit-transform-origin': `50% 50% -${\n l / 2\n }px`,\n 'transform-origin': `50% 50% -${l / 2}px`,\n }),\n c.shadow)\n )\n if (p)\n h.transform(\n `translate3d(0px, ${\n i / 2 + c.shadowOffset\n }px, ${\n -i / 2\n }px) rotateX(90deg) rotateZ(0deg) scale(${\n c.shadowScale\n })`\n )\n else {\n const e =\n Math.abs(m) -\n 90 * Math.floor(Math.abs(m) / 90),\n t =\n 1.5 -\n (Math.sin((2 * e * Math.PI) / 360) / 2 +\n Math.cos((2 * e * Math.PI) / 360) /\n 2),\n s = c.shadowScale,\n a = c.shadowScale / t,\n i = c.shadowOffset\n h.transform(\n `scale3d(${s}, 1, ${a}) translate3d(0px, ${\n r / 2 + i\n }px, ${-r / 2 / a}px) rotateX(-90deg)`\n )\n }\n const f = o.isSafari || o.isWebView ? -l / 2 : 0\n s.transform(\n `translate3d(0px,0,${f}px) rotateX(${\n t.isHorizontal() ? 0 : m\n }deg) rotateY(${t.isHorizontal() ? -m : 0}deg)`\n )\n },\n setTransition: (e) => {\n const { $el: s, slides: a } = t\n a\n .transition(e)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left'\n )\n .transition(e),\n t.params.cubeEffect.shadow &&\n !t.isHorizontal() &&\n s.find('.swiper-cube-shadow').transition(e)\n },\n perspective: () => !0,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: !0,\n resistanceRatio: 0,\n spaceBetween: 0,\n centeredSlides: !1,\n virtualTranslate: !0,\n }),\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a } = e\n s({\n flipEffect: {\n slideShadows: !0,\n limitRotation: !0,\n transformEl: null,\n },\n }),\n te({\n effect: 'flip',\n swiper: t,\n on: a,\n setTranslate: () => {\n const { slides: e, rtlTranslate: s } = t,\n a = t.params.flipEffect\n for (let i = 0; i < e.length; i += 1) {\n const r = e.eq(i)\n let n = r[0].progress\n t.params.flipEffect.limitRotation &&\n (n = Math.max(Math.min(r[0].progress, 1), -1))\n const l = r[0].swiperSlideOffset\n let o = -180 * n,\n d = 0,\n c = t.params.cssMode ? -l - t.translate : -l,\n p = 0\n if (\n (t.isHorizontal()\n ? s && (o = -o)\n : ((p = c), (c = 0), (d = -o), (o = 0)),\n (r[0].style.zIndex =\n -Math.abs(Math.round(n)) + e.length),\n a.slideShadows)\n ) {\n let e = t.isHorizontal()\n ? r.find('.swiper-slide-shadow-left')\n : r.find('.swiper-slide-shadow-top'),\n s = t.isHorizontal()\n ? r.find('.swiper-slide-shadow-right')\n : r.find('.swiper-slide-shadow-bottom')\n 0 === e.length &&\n (e = ie(\n a,\n r,\n t.isHorizontal() ? 'left' : 'top'\n )),\n 0 === s.length &&\n (s = ie(\n a,\n r,\n t.isHorizontal()\n ? 'right'\n : 'bottom'\n )),\n e.length &&\n (e[0].style.opacity = Math.max(-n, 0)),\n s.length &&\n (s[0].style.opacity = Math.max(n, 0))\n }\n const u = `translate3d(${c}px, ${p}px, 0px) rotateX(${d}deg) rotateY(${o}deg)`\n se(a, r).transform(u)\n }\n },\n setTransition: (e) => {\n const { transformEl: s } = t.params.flipEffect\n ;(s ? t.slides.find(s) : t.slides)\n .transition(e)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left'\n )\n .transition(e),\n ae({ swiper: t, duration: e, transformEl: s })\n },\n perspective: () => !0,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: !0,\n spaceBetween: 0,\n virtualTranslate: !t.params.cssMode,\n }),\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a } = e\n s({\n coverflowEffect: {\n rotate: 50,\n stretch: 0,\n depth: 100,\n scale: 1,\n modifier: 1,\n slideShadows: !0,\n transformEl: null,\n },\n }),\n te({\n effect: 'coverflow',\n swiper: t,\n on: a,\n setTranslate: () => {\n const {\n width: e,\n height: s,\n slides: a,\n slidesSizesGrid: i,\n } = t,\n r = t.params.coverflowEffect,\n n = t.isHorizontal(),\n l = t.translate,\n o = n ? e / 2 - l : s / 2 - l,\n d = n ? r.rotate : -r.rotate,\n c = r.depth\n for (let e = 0, t = a.length; e < t; e += 1) {\n const t = a.eq(e),\n s = i[e],\n l = (o - t[0].swiperSlideOffset - s / 2) / s,\n p =\n 'function' == typeof r.modifier\n ? r.modifier(l)\n : l * r.modifier\n let u = n ? d * p : 0,\n h = n ? 0 : d * p,\n m = -c * Math.abs(p),\n f = r.stretch\n 'string' == typeof f &&\n -1 !== f.indexOf('%') &&\n (f = (parseFloat(r.stretch) / 100) * s)\n let g = n ? 0 : f * p,\n v = n ? f * p : 0,\n w = 1 - (1 - r.scale) * Math.abs(p)\n Math.abs(v) < 0.001 && (v = 0),\n Math.abs(g) < 0.001 && (g = 0),\n Math.abs(m) < 0.001 && (m = 0),\n Math.abs(u) < 0.001 && (u = 0),\n Math.abs(h) < 0.001 && (h = 0),\n Math.abs(w) < 0.001 && (w = 0)\n const b = `translate3d(${v}px,${g}px,${m}px) rotateX(${h}deg) rotateY(${u}deg) scale(${w})`\n if (\n (se(r, t).transform(b),\n (t[0].style.zIndex =\n 1 - Math.abs(Math.round(p))),\n r.slideShadows)\n ) {\n let e = n\n ? t.find('.swiper-slide-shadow-left')\n : t.find('.swiper-slide-shadow-top'),\n s = n\n ? t.find('.swiper-slide-shadow-right')\n : t.find('.swiper-slide-shadow-bottom')\n 0 === e.length &&\n (e = ie(r, t, n ? 'left' : 'top')),\n 0 === s.length &&\n (s = ie(r, t, n ? 'right' : 'bottom')),\n e.length &&\n (e[0].style.opacity = p > 0 ? p : 0),\n s.length &&\n (s[0].style.opacity = -p > 0 ? -p : 0)\n }\n }\n },\n setTransition: (e) => {\n const { transformEl: s } = t.params.coverflowEffect\n ;(s ? t.slides.find(s) : t.slides)\n .transition(e)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left'\n )\n .transition(e)\n },\n perspective: () => !0,\n overwriteParams: () => ({ watchSlidesProgress: !0 }),\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a } = e\n s({\n creativeEffect: {\n transformEl: null,\n limitProgress: 1,\n shadowPerProgress: !1,\n progressMultiplier: 1,\n perspective: !0,\n prev: {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n opacity: 1,\n scale: 1,\n },\n next: {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n opacity: 1,\n scale: 1,\n },\n },\n })\n const i = (e) => ('string' == typeof e ? e : `${e}px`)\n te({\n effect: 'creative',\n swiper: t,\n on: a,\n setTranslate: () => {\n const { slides: e, $wrapperEl: s, slidesSizesGrid: a } = t,\n r = t.params.creativeEffect,\n { progressMultiplier: n } = r,\n l = t.params.centeredSlides\n if (l) {\n const e = a[0] / 2 - t.params.slidesOffsetBefore || 0\n s.transform(`translateX(calc(50% - ${e}px))`)\n }\n for (let s = 0; s < e.length; s += 1) {\n const a = e.eq(s),\n o = a[0].progress,\n d = Math.min(\n Math.max(a[0].progress, -r.limitProgress),\n r.limitProgress\n )\n let c = d\n l ||\n (c = Math.min(\n Math.max(\n a[0].originalProgress,\n -r.limitProgress\n ),\n r.limitProgress\n ))\n const p = a[0].swiperSlideOffset,\n u = [\n t.params.cssMode ? -p - t.translate : -p,\n 0,\n 0,\n ],\n h = [0, 0, 0]\n let m = !1\n t.isHorizontal() || ((u[1] = u[0]), (u[0] = 0))\n let f = {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n scale: 1,\n opacity: 1,\n }\n d < 0\n ? ((f = r.next), (m = !0))\n : d > 0 && ((f = r.prev), (m = !0)),\n u.forEach((e, t) => {\n u[t] = `calc(${e}px + (${i(\n f.translate[t]\n )} * ${Math.abs(d * n)}))`\n }),\n h.forEach((e, t) => {\n h[t] = f.rotate[t] * Math.abs(d * n)\n }),\n (a[0].style.zIndex =\n -Math.abs(Math.round(o)) + e.length)\n const g = u.join(', '),\n v = `rotateX(${h[0]}deg) rotateY(${h[1]}deg) rotateZ(${h[2]}deg)`,\n w =\n c < 0\n ? `scale(${1 + (1 - f.scale) * c * n})`\n : `scale(${1 - (1 - f.scale) * c * n})`,\n b =\n c < 0\n ? 1 + (1 - f.opacity) * c * n\n : 1 - (1 - f.opacity) * c * n,\n x = `translate3d(${g}) ${v} ${w}`\n if ((m && f.shadow) || !m) {\n let e = a.children('.swiper-slide-shadow')\n if (\n (0 === e.length && f.shadow && (e = ie(r, a)),\n e.length)\n ) {\n const t = r.shadowPerProgress\n ? d * (1 / r.limitProgress)\n : d\n e[0].style.opacity = Math.min(\n Math.max(Math.abs(t), 0),\n 1\n )\n }\n }\n const y = se(r, a)\n y.transform(x).css({ opacity: b }),\n f.origin && y.css('transform-origin', f.origin)\n }\n },\n setTransition: (e) => {\n const { transformEl: s } = t.params.creativeEffect\n ;(s ? t.slides.find(s) : t.slides)\n .transition(e)\n .find('.swiper-slide-shadow')\n .transition(e),\n ae({\n swiper: t,\n duration: e,\n transformEl: s,\n allSlides: !0,\n })\n },\n perspective: () => t.params.creativeEffect.perspective,\n overwriteParams: () => ({\n watchSlidesProgress: !0,\n virtualTranslate: !t.params.cssMode,\n }),\n })\n },\n function (e) {\n let { swiper: t, extendParams: s, on: a } = e\n s({ cardsEffect: { slideShadows: !0, transformEl: null } }),\n te({\n effect: 'cards',\n swiper: t,\n on: a,\n setTranslate: () => {\n const { slides: e, activeIndex: s } = t,\n a = t.params.cardsEffect,\n { startTranslate: i, isTouched: r } =\n t.touchEventsData,\n n = t.translate\n for (let l = 0; l < e.length; l += 1) {\n const o = e.eq(l),\n d = o[0].progress,\n c = Math.min(Math.max(d, -4), 4)\n let p = o[0].swiperSlideOffset\n t.params.centeredSlides &&\n !t.params.cssMode &&\n t.$wrapperEl.transform(\n `translateX(${t.minTranslate()}px)`\n ),\n t.params.centeredSlides &&\n t.params.cssMode &&\n (p -= e[0].swiperSlideOffset)\n let u = t.params.cssMode ? -p - t.translate : -p,\n h = 0\n const m = -100 * Math.abs(c)\n let f = 1,\n g = -2 * c,\n v = 8 - 0.75 * Math.abs(c)\n const w =\n t.virtual && t.params.virtual.enabled\n ? t.virtual.from + l\n : l,\n b =\n (w === s || w === s - 1) &&\n c > 0 &&\n c < 1 &&\n (r || t.params.cssMode) &&\n n < i,\n x =\n (w === s || w === s + 1) &&\n c < 0 &&\n c > -1 &&\n (r || t.params.cssMode) &&\n n > i\n if (b || x) {\n const e =\n (1 - Math.abs((Math.abs(c) - 0.5) / 0.5)) **\n 0.5\n ;(g += -28 * c * e),\n (f += -0.5 * e),\n (v += 96 * e),\n (h = -25 * e * Math.abs(c) + '%')\n }\n if (\n ((u =\n c < 0\n ? `calc(${u}px + (${v * Math.abs(c)}%))`\n : c > 0\n ? `calc(${u}px + (-${\n v * Math.abs(c)\n }%))`\n : `${u}px`),\n !t.isHorizontal())\n ) {\n const e = h\n ;(h = u), (u = e)\n }\n const y = `\\n translate3d(${u}, ${h}, ${m}px)\\n rotateZ(${g}deg)\\n scale(${\n c < 0\n ? '' + (1 + (1 - f) * c)\n : '' + (1 - (1 - f) * c)\n })\\n `\n if (a.slideShadows) {\n let e = o.find('.swiper-slide-shadow')\n 0 === e.length && (e = ie(a, o)),\n e.length &&\n (e[0].style.opacity = Math.min(\n Math.max(\n (Math.abs(c) - 0.5) / 0.5,\n 0\n ),\n 1\n ))\n }\n o[0].style.zIndex =\n -Math.abs(Math.round(d)) + e.length\n se(a, o).transform(y)\n }\n },\n setTransition: (e) => {\n const { transformEl: s } = t.params.cardsEffect\n ;(s ? t.slides.find(s) : t.slides)\n .transition(e)\n .find('.swiper-slide-shadow')\n .transition(e),\n ae({ swiper: t, duration: e, transformEl: s })\n },\n perspective: () => !0,\n overwriteParams: () => ({\n watchSlidesProgress: !0,\n virtualTranslate: !t.params.cssMode,\n }),\n })\n },\n ]\n return V.use(re), V\n})\n//# sourceMappingURL=swiper-bundle.min.js.map\n","/*! Select2 4.1.0-rc.0 | https://github.com/select2/select2/blob/master/LICENSE.md */\n!(function (n) {\n 'function' == typeof define && define.amd\n ? define(['jquery'], n)\n : 'object' == typeof module && module.exports\n ? (module.exports = function (e, t) {\n return (\n void 0 === t &&\n (t =\n 'undefined' != typeof window\n ? require('jquery')\n : require('jquery')(e)),\n n(t),\n t\n )\n })\n : n(jQuery)\n})(function (t) {\n var e,\n n,\n s,\n p,\n r,\n o,\n h,\n f,\n g,\n m,\n y,\n v,\n i,\n a,\n _,\n s =\n (((u =\n t && t.fn && t.fn.select2 && t.fn.select2.amd\n ? t.fn.select2.amd\n : u) &&\n u.requirejs) ||\n (u ? (n = u) : (u = {}),\n (g = {}),\n (m = {}),\n (y = {}),\n (v = {}),\n (i = Object.prototype.hasOwnProperty),\n (a = [].slice),\n (_ = /\\.js$/),\n (h = function (e, t) {\n var n,\n s,\n i = c(e),\n r = i[0],\n t = t[1]\n return (\n (e = i[1]),\n r && (n = x((r = l(r, t)))),\n r\n ? (e =\n n && n.normalize\n ? n.normalize(\n e,\n ((s = t),\n function (e) {\n return l(e, s)\n })\n )\n : l(e, t))\n : ((r = (i = c((e = l(e, t))))[0]),\n (e = i[1]),\n r && (n = x(r))),\n { f: r ? r + '!' + e : e, n: e, pr: r, p: n }\n )\n }),\n (f = {\n require: function (e) {\n return w(e)\n },\n exports: function (e) {\n var t = g[e]\n return void 0 !== t ? t : (g[e] = {})\n },\n module: function (e) {\n return {\n id: e,\n uri: '',\n exports: g[e],\n config:\n ((t = e),\n function () {\n return (y && y.config && y.config[t]) || {}\n }),\n }\n var t\n },\n }),\n (r = function (e, t, n, s) {\n var i,\n r,\n o,\n a,\n l,\n c = [],\n u = typeof n,\n d = A((s = s || e))\n if ('undefined' == u || 'function' == u) {\n for (\n t =\n !t.length && n.length\n ? ['require', 'exports', 'module']\n : t,\n a = 0;\n a < t.length;\n a += 1\n )\n if ('require' === (r = (o = h(t[a], d)).f))\n c[a] = f.require(e)\n else if ('exports' === r)\n (c[a] = f.exports(e)), (l = !0)\n else if ('module' === r) i = c[a] = f.module(e)\n else if (b(g, r) || b(m, r) || b(v, r)) c[a] = x(r)\n else {\n if (!o.p) throw new Error(e + ' missing ' + r)\n o.p.load(\n o.n,\n w(s, !0),\n (function (t) {\n return function (e) {\n g[t] = e\n }\n })(r),\n {}\n ),\n (c[a] = g[r])\n }\n ;(u = n ? n.apply(g[e], c) : void 0),\n e &&\n (i && i.exports !== p && i.exports !== g[e]\n ? (g[e] = i.exports)\n : (u === p && l) || (g[e] = u))\n } else e && (g[e] = n)\n }),\n (e =\n n =\n o =\n function (e, t, n, s, i) {\n if ('string' == typeof e)\n return f[e] ? f[e](t) : x(h(e, A(t)).f)\n if (!e.splice) {\n if (((y = e).deps && o(y.deps, y.callback), !t))\n return\n t.splice\n ? ((e = t), (t = n), (n = null))\n : (e = p)\n }\n return (\n (t = t || function () {}),\n 'function' == typeof n && ((n = s), (s = i)),\n s\n ? r(p, e, t, n)\n : setTimeout(function () {\n r(p, e, t, n)\n }, 4),\n o\n )\n }),\n (o.config = function (e) {\n return o(e)\n }),\n (e._defined = g),\n ((s = function (e, t, n) {\n if ('string' != typeof e)\n throw new Error(\n 'See almond README: incorrect module build, no module name'\n )\n t.splice || ((n = t), (t = [])),\n b(g, e) || b(m, e) || (m[e] = [e, t, n])\n }).amd = { jQuery: !0 }),\n (u.requirejs = e),\n (u.require = n),\n (u.define = s)),\n u.define('almond', function () {}),\n u.define('jquery', [], function () {\n var e = t || $\n return (\n null == e &&\n console &&\n console.error &&\n console.error(\n 'Select2: An instance of jQuery or a jQuery-compatible library was not found. Make sure that you are including jQuery before Select2 on your web page.'\n ),\n e\n )\n }),\n u.define('select2/utils', ['jquery'], function (r) {\n var s = {}\n function c(e) {\n var t,\n n = e.prototype,\n s = []\n for (t in n)\n 'function' == typeof n[t] &&\n 'constructor' !== t &&\n s.push(t)\n return s\n }\n ;(s.Extend = function (e, t) {\n var n,\n s = {}.hasOwnProperty\n function i() {\n this.constructor = e\n }\n for (n in t) s.call(t, n) && (e[n] = t[n])\n return (\n (i.prototype = t.prototype),\n (e.prototype = new i()),\n (e.__super__ = t.prototype),\n e\n )\n }),\n (s.Decorate = function (s, i) {\n var e = c(i),\n t = c(s)\n function r() {\n var e = Array.prototype.unshift,\n t = i.prototype.constructor.length,\n n = s.prototype.constructor\n 0 < t &&\n (e.call(arguments, s.prototype.constructor),\n (n = i.prototype.constructor)),\n n.apply(this, arguments)\n }\n ;(i.displayName = s.displayName),\n (r.prototype = new (function () {\n this.constructor = r\n })())\n for (var n = 0; n < t.length; n++) {\n var o = t[n]\n r.prototype[o] = s.prototype[o]\n }\n for (var a = 0; a < e.length; a++) {\n var l = e[a]\n r.prototype[l] = (function (e) {\n var t = function () {}\n e in r.prototype && (t = r.prototype[e])\n var n = i.prototype[e]\n return function () {\n return (\n Array.prototype.unshift.call(\n arguments,\n t\n ),\n n.apply(this, arguments)\n )\n }\n })(l)\n }\n return r\n })\n function e() {\n this.listeners = {}\n }\n ;(e.prototype.on = function (e, t) {\n ;(this.listeners = this.listeners || {}),\n e in this.listeners\n ? this.listeners[e].push(t)\n : (this.listeners[e] = [t])\n }),\n (e.prototype.trigger = function (e) {\n var t = Array.prototype.slice,\n n = t.call(arguments, 1)\n ;(this.listeners = this.listeners || {}),\n 0 === (n = null == n ? [] : n).length && n.push({}),\n (n[0]._type = e) in this.listeners &&\n this.invoke(\n this.listeners[e],\n t.call(arguments, 1)\n ),\n '*' in this.listeners &&\n this.invoke(this.listeners['*'], arguments)\n }),\n (e.prototype.invoke = function (e, t) {\n for (var n = 0, s = e.length; n < s; n++)\n e[n].apply(this, t)\n }),\n (s.Observable = e),\n (s.generateChars = function (e) {\n for (var t = '', n = 0; n < e; n++)\n t += Math.floor(36 * Math.random()).toString(36)\n return t\n }),\n (s.bind = function (e, t) {\n return function () {\n e.apply(t, arguments)\n }\n }),\n (s._convertData = function (e) {\n for (var t in e) {\n var n = t.split('-'),\n s = e\n if (1 !== n.length) {\n for (var i = 0; i < n.length; i++) {\n var r = n[i]\n ;(r =\n r.substring(0, 1).toLowerCase() +\n r.substring(1)) in s || (s[r] = {}),\n i == n.length - 1 && (s[r] = e[t]),\n (s = s[r])\n }\n delete e[t]\n }\n }\n return e\n }),\n (s.hasScroll = function (e, t) {\n var n = r(t),\n s = t.style.overflowX,\n i = t.style.overflowY\n return (\n (s !== i || ('hidden' !== i && 'visible' !== i)) &&\n ('scroll' === s ||\n 'scroll' === i ||\n n.innerHeight() < t.scrollHeight ||\n n.innerWidth() < t.scrollWidth)\n )\n }),\n (s.escapeMarkup = function (e) {\n var t = {\n '\\\\': '\',\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '/': '/',\n }\n return 'string' != typeof e\n ? e\n : String(e).replace(/[&<>\"'\\/\\\\]/g, function (e) {\n return t[e]\n })\n }),\n (s.__cache = {})\n var n = 0\n return (\n (s.GetUniqueElementId = function (e) {\n var t = e.getAttribute('data-select2-id')\n return (\n null != t ||\n ((t = e.id\n ? 'select2-data-' + e.id\n : 'select2-data-' +\n (++n).toString() +\n '-' +\n s.generateChars(4)),\n e.setAttribute('data-select2-id', t)),\n t\n )\n }),\n (s.StoreData = function (e, t, n) {\n e = s.GetUniqueElementId(e)\n s.__cache[e] || (s.__cache[e] = {}),\n (s.__cache[e][t] = n)\n }),\n (s.GetData = function (e, t) {\n var n = s.GetUniqueElementId(e)\n return t\n ? s.__cache[n] && null != s.__cache[n][t]\n ? s.__cache[n][t]\n : r(e).data(t)\n : s.__cache[n]\n }),\n (s.RemoveData = function (e) {\n var t = s.GetUniqueElementId(e)\n null != s.__cache[t] && delete s.__cache[t],\n e.removeAttribute('data-select2-id')\n }),\n (s.copyNonInternalCssClasses = function (e, t) {\n var n = (n = e\n .getAttribute('class')\n .trim()\n .split(/\\s+/)).filter(function (e) {\n return 0 === e.indexOf('select2-')\n }),\n t = (t = t\n .getAttribute('class')\n .trim()\n .split(/\\s+/)).filter(function (e) {\n return 0 !== e.indexOf('select2-')\n }),\n t = n.concat(t)\n e.setAttribute('class', t.join(' '))\n }),\n s\n )\n }),\n u.define('select2/results', ['jquery', './utils'], function (d, p) {\n function s(e, t, n) {\n ;(this.$element = e),\n (this.data = n),\n (this.options = t),\n s.__super__.constructor.call(this)\n }\n return (\n p.Extend(s, p.Observable),\n (s.prototype.render = function () {\n var e = d(\n '<ul class=\"select2-results__options\" role=\"listbox\"></ul>'\n )\n return (\n this.options.get('multiple') &&\n e.attr('aria-multiselectable', 'true'),\n (this.$results = e)\n )\n }),\n (s.prototype.clear = function () {\n this.$results.empty()\n }),\n (s.prototype.displayMessage = function (e) {\n var t = this.options.get('escapeMarkup')\n this.clear(), this.hideLoading()\n var n = d(\n '<li role=\"alert\" aria-live=\"assertive\" class=\"select2-results__option\"></li>'\n ),\n s = this.options.get('translations').get(e.message)\n n.append(t(s(e.args))),\n (n[0].className += ' select2-results__message'),\n this.$results.append(n)\n }),\n (s.prototype.hideMessages = function () {\n this.$results.find('.select2-results__message').remove()\n }),\n (s.prototype.append = function (e) {\n this.hideLoading()\n var t = []\n if (null != e.results && 0 !== e.results.length) {\n e.results = this.sort(e.results)\n for (var n = 0; n < e.results.length; n++) {\n var s = e.results[n],\n s = this.option(s)\n t.push(s)\n }\n this.$results.append(t)\n } else\n 0 === this.$results.children().length &&\n this.trigger('results:message', {\n message: 'noResults',\n })\n }),\n (s.prototype.position = function (e, t) {\n t.find('.select2-results').append(e)\n }),\n (s.prototype.sort = function (e) {\n return this.options.get('sorter')(e)\n }),\n (s.prototype.highlightFirstItem = function () {\n var e = this.$results.find(\n '.select2-results__option--selectable'\n ),\n t = e.filter('.select2-results__option--selected')\n ;(0 < t.length ? t : e).first().trigger('mouseenter'),\n this.ensureHighlightVisible()\n }),\n (s.prototype.setClasses = function () {\n var t = this\n this.data.current(function (e) {\n var s = e.map(function (e) {\n return e.id.toString()\n })\n t.$results\n .find('.select2-results__option--selectable')\n .each(function () {\n var e = d(this),\n t = p.GetData(this, 'data'),\n n = '' + t.id\n ;(null != t.element &&\n t.element.selected) ||\n (null == t.element && -1 < s.indexOf(n))\n ? (this.classList.add(\n 'select2-results__option--selected'\n ),\n e.attr('aria-selected', 'true'))\n : (this.classList.remove(\n 'select2-results__option--selected'\n ),\n e.attr('aria-selected', 'false'))\n })\n })\n }),\n (s.prototype.showLoading = function (e) {\n this.hideLoading()\n ;(e = {\n disabled: !0,\n loading: !0,\n text: this.options\n .get('translations')\n .get('searching')(e),\n }),\n (e = this.option(e))\n ;(e.className += ' loading-results'),\n this.$results.prepend(e)\n }),\n (s.prototype.hideLoading = function () {\n this.$results.find('.loading-results').remove()\n }),\n (s.prototype.option = function (e) {\n var t = document.createElement('li')\n t.classList.add('select2-results__option'),\n t.classList.add(\n 'select2-results__option--selectable'\n )\n var n,\n s = { role: 'option' },\n i =\n window.Element.prototype.matches ||\n window.Element.prototype.msMatchesSelector ||\n window.Element.prototype.webkitMatchesSelector\n for (n in (((null != e.element &&\n i.call(e.element, ':disabled')) ||\n (null == e.element && e.disabled)) &&\n ((s['aria-disabled'] = 'true'),\n t.classList.remove(\n 'select2-results__option--selectable'\n ),\n t.classList.add(\n 'select2-results__option--disabled'\n )),\n null == e.id &&\n t.classList.remove(\n 'select2-results__option--selectable'\n ),\n null != e._resultId && (t.id = e._resultId),\n e.title && (t.title = e.title),\n e.children &&\n ((s.role = 'group'),\n (s['aria-label'] = e.text),\n t.classList.remove(\n 'select2-results__option--selectable'\n ),\n t.classList.add('select2-results__option--group')),\n s)) {\n var r = s[n]\n t.setAttribute(n, r)\n }\n if (e.children) {\n var o = d(t),\n a = document.createElement('strong')\n ;(a.className = 'select2-results__group'),\n this.template(e, a)\n for (\n var l = [], c = 0;\n c < e.children.length;\n c++\n ) {\n var u = e.children[c],\n u = this.option(u)\n l.push(u)\n }\n i = d('<ul></ul>', {\n class: 'select2-results__options select2-results__options--nested',\n role: 'none',\n })\n i.append(l), o.append(a), o.append(i)\n } else this.template(e, t)\n return p.StoreData(t, 'data', e), t\n }),\n (s.prototype.bind = function (t, e) {\n var i = this,\n n = t.id + '-results'\n this.$results.attr('id', n),\n t.on('results:all', function (e) {\n i.clear(),\n i.append(e.data),\n t.isOpen() &&\n (i.setClasses(), i.highlightFirstItem())\n }),\n t.on('results:append', function (e) {\n i.append(e.data), t.isOpen() && i.setClasses()\n }),\n t.on('query', function (e) {\n i.hideMessages(), i.showLoading(e)\n }),\n t.on('select', function () {\n t.isOpen() &&\n (i.setClasses(),\n i.options.get('scrollAfterSelect') &&\n i.highlightFirstItem())\n }),\n t.on('unselect', function () {\n t.isOpen() &&\n (i.setClasses(),\n i.options.get('scrollAfterSelect') &&\n i.highlightFirstItem())\n }),\n t.on('open', function () {\n i.$results.attr('aria-expanded', 'true'),\n i.$results.attr('aria-hidden', 'false'),\n i.setClasses(),\n i.ensureHighlightVisible()\n }),\n t.on('close', function () {\n i.$results.attr('aria-expanded', 'false'),\n i.$results.attr('aria-hidden', 'true'),\n i.$results.removeAttr(\n 'aria-activedescendant'\n )\n }),\n t.on('results:toggle', function () {\n var e = i.getHighlightedResults()\n 0 !== e.length && e.trigger('mouseup')\n }),\n t.on('results:select', function () {\n var e,\n t = i.getHighlightedResults()\n 0 !== t.length &&\n ((e = p.GetData(t[0], 'data')),\n t.hasClass(\n 'select2-results__option--selected'\n )\n ? i.trigger('close', {})\n : i.trigger('select', { data: e }))\n }),\n t.on('results:previous', function () {\n var e,\n t = i.getHighlightedResults(),\n n = i.$results.find(\n '.select2-results__option--selectable'\n ),\n s = n.index(t)\n s <= 0 ||\n ((e = s - 1),\n 0 === t.length && (e = 0),\n (s = n.eq(e)).trigger('mouseenter'),\n (t = i.$results.offset().top),\n (n = s.offset().top),\n (s = i.$results.scrollTop() + (n - t)),\n 0 === e\n ? i.$results.scrollTop(0)\n : n - t < 0 && i.$results.scrollTop(s))\n }),\n t.on('results:next', function () {\n var e,\n t = i.getHighlightedResults(),\n n = i.$results.find(\n '.select2-results__option--selectable'\n ),\n s = n.index(t) + 1\n s >= n.length ||\n ((e = n.eq(s)).trigger('mouseenter'),\n (t =\n i.$results.offset().top +\n i.$results.outerHeight(!1)),\n (n = e.offset().top + e.outerHeight(!1)),\n (e = i.$results.scrollTop() + n - t),\n 0 === s\n ? i.$results.scrollTop(0)\n : t < n && i.$results.scrollTop(e))\n }),\n t.on('results:focus', function (e) {\n e.element[0].classList.add(\n 'select2-results__option--highlighted'\n ),\n e.element[0].setAttribute(\n 'aria-selected',\n 'true'\n )\n }),\n t.on('results:message', function (e) {\n i.displayMessage(e)\n }),\n d.fn.mousewheel &&\n this.$results.on('mousewheel', function (e) {\n var t = i.$results.scrollTop(),\n n =\n i.$results.get(0).scrollHeight -\n t +\n e.deltaY,\n t = 0 < e.deltaY && t - e.deltaY <= 0,\n n =\n e.deltaY < 0 &&\n n <= i.$results.height()\n t\n ? (i.$results.scrollTop(0),\n e.preventDefault(),\n e.stopPropagation())\n : n &&\n (i.$results.scrollTop(\n i.$results.get(0).scrollHeight -\n i.$results.height()\n ),\n e.preventDefault(),\n e.stopPropagation())\n }),\n this.$results.on(\n 'mouseup',\n '.select2-results__option--selectable',\n function (e) {\n var t = d(this),\n n = p.GetData(this, 'data')\n t.hasClass(\n 'select2-results__option--selected'\n )\n ? i.options.get('multiple')\n ? i.trigger('unselect', {\n originalEvent: e,\n data: n,\n })\n : i.trigger('close', {})\n : i.trigger('select', {\n originalEvent: e,\n data: n,\n })\n }\n ),\n this.$results.on(\n 'mouseenter',\n '.select2-results__option--selectable',\n function (e) {\n var t = p.GetData(this, 'data')\n i\n .getHighlightedResults()\n .removeClass(\n 'select2-results__option--highlighted'\n )\n .attr('aria-selected', 'false'),\n i.trigger('results:focus', {\n data: t,\n element: d(this),\n })\n }\n )\n }),\n (s.prototype.getHighlightedResults = function () {\n return this.$results.find(\n '.select2-results__option--highlighted'\n )\n }),\n (s.prototype.destroy = function () {\n this.$results.remove()\n }),\n (s.prototype.ensureHighlightVisible = function () {\n var e,\n t,\n n,\n s,\n i = this.getHighlightedResults()\n 0 !== i.length &&\n ((e = this.$results\n .find('.select2-results__option--selectable')\n .index(i)),\n (s = this.$results.offset().top),\n (t = i.offset().top),\n (n = this.$results.scrollTop() + (t - s)),\n (s = t - s),\n (n -= 2 * i.outerHeight(!1)),\n e <= 2\n ? this.$results.scrollTop(0)\n : (s > this.$results.outerHeight() || s < 0) &&\n this.$results.scrollTop(n))\n }),\n (s.prototype.template = function (e, t) {\n var n = this.options.get('templateResult'),\n s = this.options.get('escapeMarkup'),\n e = n(e, t)\n null == e\n ? (t.style.display = 'none')\n : 'string' == typeof e\n ? (t.innerHTML = s(e))\n : d(t).append(e)\n }),\n s\n )\n }),\n u.define('select2/keys', [], function () {\n return {\n BACKSPACE: 8,\n TAB: 9,\n ENTER: 13,\n SHIFT: 16,\n CTRL: 17,\n ALT: 18,\n ESC: 27,\n SPACE: 32,\n PAGE_UP: 33,\n PAGE_DOWN: 34,\n END: 35,\n HOME: 36,\n LEFT: 37,\n UP: 38,\n RIGHT: 39,\n DOWN: 40,\n DELETE: 46,\n }\n }),\n u.define(\n 'select2/selection/base',\n ['jquery', '../utils', '../keys'],\n function (n, s, i) {\n function r(e, t) {\n ;(this.$element = e),\n (this.options = t),\n r.__super__.constructor.call(this)\n }\n return (\n s.Extend(r, s.Observable),\n (r.prototype.render = function () {\n var e = n(\n '<span class=\"select2-selection\" role=\"combobox\" aria-haspopup=\"true\" aria-expanded=\"false\"></span>'\n )\n return (\n (this._tabindex = 0),\n null !=\n s.GetData(this.$element[0], 'old-tabindex')\n ? (this._tabindex = s.GetData(\n this.$element[0],\n 'old-tabindex'\n ))\n : null != this.$element.attr('tabindex') &&\n (this._tabindex =\n this.$element.attr('tabindex')),\n e.attr('title', this.$element.attr('title')),\n e.attr('tabindex', this._tabindex),\n e.attr('aria-disabled', 'false'),\n (this.$selection = e)\n )\n }),\n (r.prototype.bind = function (e, t) {\n var n = this,\n s = e.id + '-results'\n ;(this.container = e),\n this.$selection.on('focus', function (e) {\n n.trigger('focus', e)\n }),\n this.$selection.on('blur', function (e) {\n n._handleBlur(e)\n }),\n this.$selection.on('keydown', function (e) {\n n.trigger('keypress', e),\n e.which === i.SPACE &&\n e.preventDefault()\n }),\n e.on('results:focus', function (e) {\n n.$selection.attr(\n 'aria-activedescendant',\n e.data._resultId\n )\n }),\n e.on('selection:update', function (e) {\n n.update(e.data)\n }),\n e.on('open', function () {\n n.$selection.attr('aria-expanded', 'true'),\n n.$selection.attr('aria-owns', s),\n n._attachCloseHandler(e)\n }),\n e.on('close', function () {\n n.$selection.attr('aria-expanded', 'false'),\n n.$selection.removeAttr(\n 'aria-activedescendant'\n ),\n n.$selection.removeAttr('aria-owns'),\n n.$selection.trigger('focus'),\n n._detachCloseHandler(e)\n }),\n e.on('enable', function () {\n n.$selection.attr('tabindex', n._tabindex),\n n.$selection.attr(\n 'aria-disabled',\n 'false'\n )\n }),\n e.on('disable', function () {\n n.$selection.attr('tabindex', '-1'),\n n.$selection.attr(\n 'aria-disabled',\n 'true'\n )\n })\n }),\n (r.prototype._handleBlur = function (e) {\n var t = this\n window.setTimeout(function () {\n document.activeElement == t.$selection[0] ||\n n.contains(\n t.$selection[0],\n document.activeElement\n ) ||\n t.trigger('blur', e)\n }, 1)\n }),\n (r.prototype._attachCloseHandler = function (e) {\n n(document.body).on(\n 'mousedown.select2.' + e.id,\n function (e) {\n var t = n(e.target).closest('.select2')\n n('.select2.select2-container--open').each(\n function () {\n this != t[0] &&\n s\n .GetData(this, 'element')\n .select2('close')\n }\n )\n }\n )\n }),\n (r.prototype._detachCloseHandler = function (e) {\n n(document.body).off('mousedown.select2.' + e.id)\n }),\n (r.prototype.position = function (e, t) {\n t.find('.selection').append(e)\n }),\n (r.prototype.destroy = function () {\n this._detachCloseHandler(this.container)\n }),\n (r.prototype.update = function (e) {\n throw new Error(\n 'The `update` method must be defined in child classes.'\n )\n }),\n (r.prototype.isEnabled = function () {\n return !this.isDisabled()\n }),\n (r.prototype.isDisabled = function () {\n return this.options.get('disabled')\n }),\n r\n )\n }\n ),\n u.define(\n 'select2/selection/single',\n ['jquery', './base', '../utils', '../keys'],\n function (e, t, n, s) {\n function i() {\n i.__super__.constructor.apply(this, arguments)\n }\n return (\n n.Extend(i, t),\n (i.prototype.render = function () {\n var e = i.__super__.render.call(this)\n return (\n e[0].classList.add('select2-selection--single'),\n e.html(\n '<span class=\"select2-selection__rendered\"></span><span class=\"select2-selection__arrow\" role=\"presentation\"><b role=\"presentation\"></b></span>'\n ),\n e\n )\n }),\n (i.prototype.bind = function (t, e) {\n var n = this\n i.__super__.bind.apply(this, arguments)\n var s = t.id + '-container'\n this.$selection\n .find('.select2-selection__rendered')\n .attr('id', s)\n .attr('role', 'textbox')\n .attr('aria-readonly', 'true'),\n this.$selection.attr('aria-labelledby', s),\n this.$selection.attr('aria-controls', s),\n this.$selection.on('mousedown', function (e) {\n 1 === e.which &&\n n.trigger('toggle', {\n originalEvent: e,\n })\n }),\n this.$selection.on('focus', function (e) {}),\n this.$selection.on('blur', function (e) {}),\n t.on('focus', function (e) {\n t.isOpen() || n.$selection.trigger('focus')\n })\n }),\n (i.prototype.clear = function () {\n var e = this.$selection.find(\n '.select2-selection__rendered'\n )\n e.empty(), e.removeAttr('title')\n }),\n (i.prototype.display = function (e, t) {\n var n = this.options.get('templateSelection')\n return this.options.get('escapeMarkup')(n(e, t))\n }),\n (i.prototype.selectionContainer = function () {\n return e('<span></span>')\n }),\n (i.prototype.update = function (e) {\n var t, n\n 0 !== e.length\n ? ((n = e[0]),\n (t = this.$selection.find(\n '.select2-selection__rendered'\n )),\n (e = this.display(n, t)),\n t.empty().append(e),\n (n = n.title || n.text)\n ? t.attr('title', n)\n : t.removeAttr('title'))\n : this.clear()\n }),\n i\n )\n }\n ),\n u.define(\n 'select2/selection/multiple',\n ['jquery', './base', '../utils'],\n function (i, e, c) {\n function r(e, t) {\n r.__super__.constructor.apply(this, arguments)\n }\n return (\n c.Extend(r, e),\n (r.prototype.render = function () {\n var e = r.__super__.render.call(this)\n return (\n e[0].classList.add(\n 'select2-selection--multiple'\n ),\n e.html(\n '<ul class=\"select2-selection__rendered\"></ul>'\n ),\n e\n )\n }),\n (r.prototype.bind = function (e, t) {\n var n = this\n r.__super__.bind.apply(this, arguments)\n var s = e.id + '-container'\n this.$selection\n .find('.select2-selection__rendered')\n .attr('id', s),\n this.$selection.on('click', function (e) {\n n.trigger('toggle', { originalEvent: e })\n }),\n this.$selection.on(\n 'click',\n '.select2-selection__choice__remove',\n function (e) {\n var t\n n.isDisabled() ||\n ((t = i(this).parent()),\n (t = c.GetData(t[0], 'data')),\n n.trigger('unselect', {\n originalEvent: e,\n data: t,\n }))\n }\n ),\n this.$selection.on(\n 'keydown',\n '.select2-selection__choice__remove',\n function (e) {\n n.isDisabled() || e.stopPropagation()\n }\n )\n }),\n (r.prototype.clear = function () {\n var e = this.$selection.find(\n '.select2-selection__rendered'\n )\n e.empty(), e.removeAttr('title')\n }),\n (r.prototype.display = function (e, t) {\n var n = this.options.get('templateSelection')\n return this.options.get('escapeMarkup')(n(e, t))\n }),\n (r.prototype.selectionContainer = function () {\n return i(\n '<li class=\"select2-selection__choice\"><button type=\"button\" class=\"select2-selection__choice__remove\" tabindex=\"-1\"><span aria-hidden=\"true\">×</span></button><span class=\"select2-selection__choice__display\"></span></li>'\n )\n }),\n (r.prototype.update = function (e) {\n if ((this.clear(), 0 !== e.length)) {\n for (\n var t = [],\n n =\n this.$selection\n .find(\n '.select2-selection__rendered'\n )\n .attr('id') + '-choice-',\n s = 0;\n s < e.length;\n s++\n ) {\n var i = e[s],\n r = this.selectionContainer(),\n o = this.display(i, r),\n a = n + c.generateChars(4) + '-'\n i.id\n ? (a += i.id)\n : (a += c.generateChars(4)),\n r\n .find(\n '.select2-selection__choice__display'\n )\n .append(o)\n .attr('id', a)\n var l = i.title || i.text\n l && r.attr('title', l)\n ;(o = this.options\n .get('translations')\n .get('removeItem')),\n (l = r.find(\n '.select2-selection__choice__remove'\n ))\n l.attr('title', o()),\n l.attr('aria-label', o()),\n l.attr('aria-describedby', a),\n c.StoreData(r[0], 'data', i),\n t.push(r)\n }\n this.$selection\n .find('.select2-selection__rendered')\n .append(t)\n }\n }),\n r\n )\n }\n ),\n u.define('select2/selection/placeholder', [], function () {\n function e(e, t, n) {\n ;(this.placeholder = this.normalizePlaceholder(\n n.get('placeholder')\n )),\n e.call(this, t, n)\n }\n return (\n (e.prototype.normalizePlaceholder = function (e, t) {\n return (t =\n 'string' == typeof t ? { id: '', text: t } : t)\n }),\n (e.prototype.createPlaceholder = function (e, t) {\n var n = this.selectionContainer()\n n.html(this.display(t)),\n n[0].classList.add(\n 'select2-selection__placeholder'\n ),\n n[0].classList.remove('select2-selection__choice')\n t = t.title || t.text || n.text()\n return (\n this.$selection\n .find('.select2-selection__rendered')\n .attr('title', t),\n n\n )\n }),\n (e.prototype.update = function (e, t) {\n var n = 1 == t.length && t[0].id != this.placeholder.id\n if (1 < t.length || n) return e.call(this, t)\n this.clear()\n t = this.createPlaceholder(this.placeholder)\n this.$selection\n .find('.select2-selection__rendered')\n .append(t)\n }),\n e\n )\n }),\n u.define(\n 'select2/selection/allowClear',\n ['jquery', '../keys', '../utils'],\n function (i, s, a) {\n function e() {}\n return (\n (e.prototype.bind = function (e, t, n) {\n var s = this\n e.call(this, t, n),\n null == this.placeholder &&\n this.options.get('debug') &&\n window.console &&\n console.error &&\n console.error(\n 'Select2: The `allowClear` option should be used in combination with the `placeholder` option.'\n ),\n this.$selection.on(\n 'mousedown',\n '.select2-selection__clear',\n function (e) {\n s._handleClear(e)\n }\n ),\n t.on('keypress', function (e) {\n s._handleKeyboardClear(e, t)\n })\n }),\n (e.prototype._handleClear = function (e, t) {\n if (!this.isDisabled()) {\n var n = this.$selection.find(\n '.select2-selection__clear'\n )\n if (0 !== n.length) {\n t.stopPropagation()\n var s = a.GetData(n[0], 'data'),\n i = this.$element.val()\n this.$element.val(this.placeholder.id)\n var r = { data: s }\n if ((this.trigger('clear', r), r.prevented))\n this.$element.val(i)\n else {\n for (var o = 0; o < s.length; o++)\n if (\n ((r = { data: s[o] }),\n this.trigger('unselect', r),\n r.prevented)\n )\n return void this.$element.val(i)\n this.$element\n .trigger('input')\n .trigger('change'),\n this.trigger('toggle', {})\n }\n }\n }\n }),\n (e.prototype._handleKeyboardClear = function (e, t, n) {\n n.isOpen() ||\n (t.which != s.DELETE &&\n t.which != s.BACKSPACE) ||\n this._handleClear(t)\n }),\n (e.prototype.update = function (e, t) {\n var n, s\n e.call(this, t),\n this.$selection\n .find('.select2-selection__clear')\n .remove(),\n this.$selection[0].classList.remove(\n 'select2-selection--clearable'\n ),\n 0 <\n this.$selection.find(\n '.select2-selection__placeholder'\n ).length ||\n 0 === t.length ||\n ((n = this.$selection\n .find('.select2-selection__rendered')\n .attr('id')),\n (s = this.options\n .get('translations')\n .get('removeAllItems')),\n (e = i(\n '<button type=\"button\" class=\"select2-selection__clear\" tabindex=\"-1\"><span aria-hidden=\"true\">×</span></button>'\n )).attr('title', s()),\n e.attr('aria-label', s()),\n e.attr('aria-describedby', n),\n a.StoreData(e[0], 'data', t),\n this.$selection.prepend(e),\n this.$selection[0].classList.add(\n 'select2-selection--clearable'\n ))\n }),\n e\n )\n }\n ),\n u.define(\n 'select2/selection/search',\n ['jquery', '../utils', '../keys'],\n function (s, a, l) {\n function e(e, t, n) {\n e.call(this, t, n)\n }\n return (\n (e.prototype.render = function (e) {\n var t = this.options\n .get('translations')\n .get('search'),\n n = s(\n '<span class=\"select2-search select2-search--inline\"><textarea class=\"select2-search__field\" type=\"search\" tabindex=\"-1\" autocorrect=\"off\" autocapitalize=\"none\" spellcheck=\"false\" role=\"searchbox\" aria-autocomplete=\"list\" ></textarea></span>'\n )\n ;(this.$searchContainer = n),\n (this.$search = n.find('textarea')),\n this.$search.prop(\n 'autocomplete',\n this.options.get('autocomplete')\n ),\n this.$search.attr('aria-label', t())\n e = e.call(this)\n return (\n this._transferTabIndex(),\n e.append(this.$searchContainer),\n e\n )\n }),\n (e.prototype.bind = function (e, t, n) {\n var s = this,\n i = t.id + '-results',\n r = t.id + '-container'\n e.call(this, t, n),\n s.$search.attr('aria-describedby', r),\n t.on('open', function () {\n s.$search.attr('aria-controls', i),\n s.$search.trigger('focus')\n }),\n t.on('close', function () {\n s.$search.val(''),\n s.resizeSearch(),\n s.$search.removeAttr('aria-controls'),\n s.$search.removeAttr(\n 'aria-activedescendant'\n ),\n s.$search.trigger('focus')\n }),\n t.on('enable', function () {\n s.$search.prop('disabled', !1),\n s._transferTabIndex()\n }),\n t.on('disable', function () {\n s.$search.prop('disabled', !0)\n }),\n t.on('focus', function (e) {\n s.$search.trigger('focus')\n }),\n t.on('results:focus', function (e) {\n e.data._resultId\n ? s.$search.attr(\n 'aria-activedescendant',\n e.data._resultId\n )\n : s.$search.removeAttr(\n 'aria-activedescendant'\n )\n }),\n this.$selection.on(\n 'focusin',\n '.select2-search--inline',\n function (e) {\n s.trigger('focus', e)\n }\n ),\n this.$selection.on(\n 'focusout',\n '.select2-search--inline',\n function (e) {\n s._handleBlur(e)\n }\n ),\n this.$selection.on(\n 'keydown',\n '.select2-search--inline',\n function (e) {\n var t\n e.stopPropagation(),\n s.trigger('keypress', e),\n (s._keyUpPrevented =\n e.isDefaultPrevented()),\n e.which !== l.BACKSPACE ||\n '' !== s.$search.val() ||\n (0 <\n (t = s.$selection\n .find(\n '.select2-selection__choice'\n )\n .last()).length &&\n ((t = a.GetData(\n t[0],\n 'data'\n )),\n s.searchRemoveChoice(t),\n e.preventDefault()))\n }\n ),\n this.$selection.on(\n 'click',\n '.select2-search--inline',\n function (e) {\n s.$search.val() && e.stopPropagation()\n }\n )\n var t = document.documentMode,\n o = t && t <= 11\n this.$selection.on(\n 'input.searchcheck',\n '.select2-search--inline',\n function (e) {\n o\n ? s.$selection.off(\n 'input.search input.searchcheck'\n )\n : s.$selection.off('keyup.search')\n }\n ),\n this.$selection.on(\n 'keyup.search input.search',\n '.select2-search--inline',\n function (e) {\n var t\n o && 'input' === e.type\n ? s.$selection.off(\n 'input.search input.searchcheck'\n )\n : (t = e.which) != l.SHIFT &&\n t != l.CTRL &&\n t != l.ALT &&\n t != l.TAB &&\n s.handleSearch(e)\n }\n )\n }),\n (e.prototype._transferTabIndex = function (e) {\n this.$search.attr(\n 'tabindex',\n this.$selection.attr('tabindex')\n ),\n this.$selection.attr('tabindex', '-1')\n }),\n (e.prototype.createPlaceholder = function (e, t) {\n this.$search.attr('placeholder', t.text)\n }),\n (e.prototype.update = function (e, t) {\n var n = this.$search[0] == document.activeElement\n this.$search.attr('placeholder', ''),\n e.call(this, t),\n this.resizeSearch(),\n n && this.$search.trigger('focus')\n }),\n (e.prototype.handleSearch = function () {\n var e\n this.resizeSearch(),\n this._keyUpPrevented ||\n ((e = this.$search.val()),\n this.trigger('query', { term: e })),\n (this._keyUpPrevented = !1)\n }),\n (e.prototype.searchRemoveChoice = function (e, t) {\n this.trigger('unselect', { data: t }),\n this.$search.val(t.text),\n this.handleSearch()\n }),\n (e.prototype.resizeSearch = function () {\n this.$search.css('width', '25px')\n var e = '100%'\n '' === this.$search.attr('placeholder') &&\n (e =\n 0.75 * (this.$search.val().length + 1) +\n 'em'),\n this.$search.css('width', e)\n }),\n e\n )\n }\n ),\n u.define(\n 'select2/selection/selectionCss',\n ['../utils'],\n function (n) {\n function e() {}\n return (\n (e.prototype.render = function (e) {\n var t = e.call(this),\n e = this.options.get('selectionCssClass') || ''\n return (\n -1 !== e.indexOf(':all:') &&\n ((e = e.replace(':all:', '')),\n n.copyNonInternalCssClasses(\n t[0],\n this.$element[0]\n )),\n t.addClass(e),\n t\n )\n }),\n e\n )\n }\n ),\n u.define('select2/selection/eventRelay', ['jquery'], function (o) {\n function e() {}\n return (\n (e.prototype.bind = function (e, t, n) {\n var s = this,\n i = [\n 'open',\n 'opening',\n 'close',\n 'closing',\n 'select',\n 'selecting',\n 'unselect',\n 'unselecting',\n 'clear',\n 'clearing',\n ],\n r = [\n 'opening',\n 'closing',\n 'selecting',\n 'unselecting',\n 'clearing',\n ]\n e.call(this, t, n),\n t.on('*', function (e, t) {\n var n\n ;-1 !== i.indexOf(e) &&\n ((t = t || {}),\n (n = o.Event('select2:' + e, {\n params: t,\n })),\n s.$element.trigger(n),\n -1 !== r.indexOf(e) &&\n (t.prevented = n.isDefaultPrevented()))\n })\n }),\n e\n )\n }),\n u.define(\n 'select2/translation',\n ['jquery', 'require'],\n function (t, n) {\n function s(e) {\n this.dict = e || {}\n }\n return (\n (s.prototype.all = function () {\n return this.dict\n }),\n (s.prototype.get = function (e) {\n return this.dict[e]\n }),\n (s.prototype.extend = function (e) {\n this.dict = t.extend({}, e.all(), this.dict)\n }),\n (s._cache = {}),\n (s.loadPath = function (e) {\n var t\n return (\n e in s._cache ||\n ((t = n(e)), (s._cache[e] = t)),\n new s(s._cache[e])\n )\n }),\n s\n )\n }\n ),\n u.define('select2/diacritics', [], function () {\n return {\n 'â’¶': 'A',\n A: 'A',\n À: 'A',\n Ã: 'A',\n Â: 'A',\n Ầ: 'A',\n Ấ: 'A',\n Ẫ: 'A',\n Ẩ: 'A',\n Ã: 'A',\n Ä€: 'A',\n Ä‚: 'A',\n Ằ: 'A',\n Ắ: 'A',\n Ẵ: 'A',\n Ẳ: 'A',\n Ȧ: 'A',\n Ç : 'A',\n Ä: 'A',\n Çž: 'A',\n Ả: 'A',\n Ã…: 'A',\n Ǻ: 'A',\n Ç: 'A',\n È€: 'A',\n È‚: 'A',\n Ạ: 'A',\n Ậ: 'A',\n Ặ: 'A',\n Ḁ: 'A',\n Ä„: 'A',\n Ⱥ: 'A',\n Ɐ: 'A',\n Ꜳ: 'AA',\n Æ: 'AE',\n Ǽ: 'AE',\n Ç¢: 'AE',\n Ꜵ: 'AO',\n Ꜷ: 'AU',\n Ꜹ: 'AV',\n Ꜻ: 'AV',\n Ꜽ: 'AY',\n 'â’·': 'B',\n ï¼¢: 'B',\n Ḃ: 'B',\n Ḅ: 'B',\n Ḇ: 'B',\n Ƀ: 'B',\n Æ‚: 'B',\n Æ: 'B',\n 'â’¸': 'C',\n ï¼£: 'C',\n Ć: 'C',\n Ĉ: 'C',\n ÄŠ: 'C',\n ÄŒ: 'C',\n Ç: 'C',\n Ḉ: 'C',\n Ƈ: 'C',\n È»: 'C',\n Ꜿ: 'C',\n 'â’¹': 'D',\n D: 'D',\n Ḋ: 'D',\n ÄŽ: 'D',\n Ḍ: 'D',\n á¸: 'D',\n Ḓ: 'D',\n Ḏ: 'D',\n Ä: 'D',\n Æ‹: 'D',\n ÆŠ: 'D',\n Ɖ: 'D',\n ê¹: 'D',\n DZ: 'DZ',\n Ç„: 'DZ',\n Dz: 'Dz',\n Ç…: 'Dz',\n 'â’º': 'E',\n ï¼¥: 'E',\n È: 'E',\n É: 'E',\n Ê: 'E',\n Ề: 'E',\n Ế: 'E',\n Ễ: 'E',\n Ể: 'E',\n Ẽ: 'E',\n Ä’: 'E',\n Ḕ: 'E',\n Ḗ: 'E',\n Ä”: 'E',\n Ä–: 'E',\n Ë: 'E',\n Ẻ: 'E',\n Äš: 'E',\n È„: 'E',\n Ȇ: 'E',\n Ẹ: 'E',\n Ệ: 'E',\n Ȩ: 'E',\n Ḝ: 'E',\n Ę: 'E',\n Ḙ: 'E',\n Ḛ: 'E',\n Æ: 'E',\n ÆŽ: 'E',\n 'â’»': 'F',\n F: 'F',\n Ḟ: 'F',\n Æ‘: 'F',\n ê»: 'F',\n 'â’¼': 'G',\n G: 'G',\n Ç´: 'G',\n Äœ: 'G',\n Ḡ: 'G',\n Äž: 'G',\n Ä : 'G',\n Ǧ: 'G',\n Ä¢: 'G',\n Ǥ: 'G',\n Æ“: 'G',\n êž : 'G',\n ê½: 'G',\n ê¾: 'G',\n 'â’½': 'H',\n H: 'H',\n Ĥ: 'H',\n Ḣ: 'H',\n Ḧ: 'H',\n Èž: 'H',\n Ḥ: 'H',\n Ḩ: 'H',\n Ḫ: 'H',\n Ħ: 'H',\n Ⱨ: 'H',\n â±µ: 'H',\n êž: 'H',\n 'â’¾': 'I',\n I: 'I',\n ÃŒ: 'I',\n Ã: 'I',\n ÃŽ: 'I',\n Ĩ: 'I',\n Ī: 'I',\n Ĭ: 'I',\n Ä°: 'I',\n Ã: 'I',\n Ḯ: 'I',\n Ỉ: 'I',\n Ç: 'I',\n Ȉ: 'I',\n ÈŠ: 'I',\n Ị: 'I',\n Ä®: 'I',\n Ḭ: 'I',\n Æ—: 'I',\n 'â’¿': 'J',\n J: 'J',\n Ä´: 'J',\n Ɉ: 'J',\n 'â“€': 'K',\n K: 'K',\n Ḱ: 'K',\n Ǩ: 'K',\n Ḳ: 'K',\n Ķ: 'K',\n Ḵ: 'K',\n Ƙ: 'K',\n Ⱪ: 'K',\n ê€: 'K',\n ê‚: 'K',\n ê„: 'K',\n Ꞣ: 'K',\n 'â“': 'L',\n L: 'L',\n Ä¿: 'L',\n Ĺ: 'L',\n Ľ: 'L',\n Ḷ: 'L',\n Ḹ: 'L',\n Ä»: 'L',\n Ḽ: 'L',\n Ḻ: 'L',\n Å: 'L',\n Ƚ: 'L',\n â±¢: 'L',\n â± : 'L',\n êˆ: 'L',\n ê†: 'L',\n Ꞁ: 'L',\n LJ: 'LJ',\n Lj: 'Lj',\n 'â“‚': 'M',\n ï¼: 'M',\n Ḿ: 'M',\n á¹€: 'M',\n Ṃ: 'M',\n â±®: 'M',\n Æœ: 'M',\n 'Ⓝ': 'N',\n ï¼®: 'N',\n Ǹ: 'N',\n Ń: 'N',\n Ñ: 'N',\n Ṅ: 'N',\n Ň: 'N',\n Ṇ: 'N',\n Å…: 'N',\n Ṋ: 'N',\n Ṉ: 'N',\n È : 'N',\n Æ: 'N',\n êž: 'N',\n Ꞥ: 'N',\n ÇŠ: 'NJ',\n Ç‹: 'Nj',\n 'â“„': 'O',\n O: 'O',\n Ã’: 'O',\n Ó: 'O',\n Ô: 'O',\n á»’: 'O',\n á»: 'O',\n á»–: 'O',\n á»”: 'O',\n Õ: 'O',\n Ṍ: 'O',\n Ȭ: 'O',\n Ṏ: 'O',\n ÅŒ: 'O',\n á¹: 'O',\n á¹’: 'O',\n ÅŽ: 'O',\n È®: 'O',\n È°: 'O',\n Ö: 'O',\n Ȫ: 'O',\n Ỏ: 'O',\n Å: 'O',\n Ç‘: 'O',\n ÈŒ: 'O',\n ÈŽ: 'O',\n Æ : 'O',\n Ờ: 'O',\n Ớ: 'O',\n á» : 'O',\n Ở: 'O',\n Ợ: 'O',\n Ọ: 'O',\n Ộ: 'O',\n Ǫ: 'O',\n Ǭ: 'O',\n Ø: 'O',\n Ǿ: 'O',\n Ɔ: 'O',\n ÆŸ: 'O',\n êŠ: 'O',\n êŒ: 'O',\n Å’: 'OE',\n Æ¢: 'OI',\n êŽ: 'OO',\n È¢: 'OU',\n 'â“…': 'P',\n ï¼°: 'P',\n á¹”: 'P',\n á¹–: 'P',\n Ƥ: 'P',\n â±£: 'P',\n ê: 'P',\n ê’: 'P',\n ê”: 'P',\n 'Ⓠ': 'Q',\n ï¼±: 'Q',\n ê–: 'Q',\n ê˜: 'Q',\n ÉŠ: 'Q',\n 'Ⓡ': 'R',\n ï¼²: 'R',\n Å”: 'R',\n Ṙ: 'R',\n Ř: 'R',\n È: 'R',\n È’: 'R',\n Ṛ: 'R',\n Ṝ: 'R',\n Å–: 'R',\n Ṟ: 'R',\n ÉŒ: 'R',\n Ɽ: 'R',\n êš: 'R',\n Ꞧ: 'R',\n êž‚: 'R',\n 'Ⓢ': 'S',\n ï¼³: 'S',\n ẞ: 'S',\n Åš: 'S',\n Ṥ: 'S',\n Åœ: 'S',\n á¹ : 'S',\n Å : 'S',\n Ṧ: 'S',\n á¹¢: 'S',\n Ṩ: 'S',\n Ș: 'S',\n Åž: 'S',\n â±¾: 'S',\n Ꞩ: 'S',\n êž„: 'S',\n 'Ⓣ': 'T',\n ï¼´: 'T',\n Ṫ: 'T',\n Ť: 'T',\n Ṭ: 'T',\n Èš: 'T',\n Å¢: 'T',\n á¹°: 'T',\n á¹®: 'T',\n Ŧ: 'T',\n Ƭ: 'T',\n Æ®: 'T',\n Ⱦ: 'T',\n Ꞇ: 'T',\n Ꜩ: 'TZ',\n 'â“Š': 'U',\n ï¼µ: 'U',\n Ù: 'U',\n Ú: 'U',\n Û: 'U',\n Ũ: 'U',\n Ṹ: 'U',\n Ū: 'U',\n Ṻ: 'U',\n Ŭ: 'U',\n Ãœ: 'U',\n Ç›: 'U',\n Ç—: 'U',\n Ç•: 'U',\n Ç™: 'U',\n Ủ: 'U',\n Å®: 'U',\n Å°: 'U',\n Ç“: 'U',\n È”: 'U',\n È–: 'U',\n Ư: 'U',\n Ừ: 'U',\n Ứ: 'U',\n á»®: 'U',\n Ử: 'U',\n á»°: 'U',\n Ụ: 'U',\n á¹²: 'U',\n Ų: 'U',\n Ṷ: 'U',\n á¹´: 'U',\n É„: 'U',\n 'â“‹': 'V',\n V: 'V',\n á¹¼: 'V',\n á¹¾: 'V',\n Ʋ: 'V',\n êž: 'V',\n É…: 'V',\n ê : 'VY',\n 'â“Œ': 'W',\n ï¼·: 'W',\n Ẁ: 'W',\n Ẃ: 'W',\n Å´: 'W',\n Ẇ: 'W',\n Ẅ: 'W',\n Ẉ: 'W',\n â±²: 'W',\n 'â“': 'X',\n X: 'X',\n Ẋ: 'X',\n Ẍ: 'X',\n 'â“Ž': 'Y',\n ï¼¹: 'Y',\n Ỳ: 'Y',\n Ã: 'Y',\n Ŷ: 'Y',\n Ỹ: 'Y',\n Ȳ: 'Y',\n Ẏ: 'Y',\n Ÿ: 'Y',\n Ỷ: 'Y',\n á»´: 'Y',\n Ƴ: 'Y',\n ÉŽ: 'Y',\n Ỿ: 'Y',\n 'â“': 'Z',\n Z: 'Z',\n Ź: 'Z',\n áº: 'Z',\n Å»: 'Z',\n Ž: 'Z',\n Ẓ: 'Z',\n Ẕ: 'Z',\n Ƶ: 'Z',\n Ȥ: 'Z',\n Ɀ: 'Z',\n Ⱬ: 'Z',\n ê¢: 'Z',\n 'â“': 'a',\n ï½: 'a',\n ẚ: 'a',\n à : 'a',\n á: 'a',\n â: 'a',\n ầ: 'a',\n ấ: 'a',\n ẫ: 'a',\n ẩ: 'a',\n ã: 'a',\n Ä: 'a',\n ă: 'a',\n ằ: 'a',\n ắ: 'a',\n ẵ: 'a',\n ẳ: 'a',\n ȧ: 'a',\n Ç¡: 'a',\n ä: 'a',\n ÇŸ: 'a',\n ả: 'a',\n Ã¥: 'a',\n Ç»: 'a',\n ÇŽ: 'a',\n È: 'a',\n ȃ: 'a',\n ạ: 'a',\n áº: 'a',\n ặ: 'a',\n á¸: 'a',\n Ä…: 'a',\n â±¥: 'a',\n É: 'a',\n ꜳ: 'aa',\n æ: 'ae',\n ǽ: 'ae',\n Ç£: 'ae',\n ꜵ: 'ao',\n ꜷ: 'au',\n ꜹ: 'av',\n ꜻ: 'av',\n ꜽ: 'ay',\n 'â“‘': 'b',\n b: 'b',\n ḃ: 'b',\n ḅ: 'b',\n ḇ: 'b',\n Æ€: 'b',\n ƃ: 'b',\n É“: 'b',\n 'â“’': 'c',\n c: 'c',\n ć: 'c',\n ĉ: 'c',\n Ä‹: 'c',\n Ä: 'c',\n ç: 'c',\n ḉ: 'c',\n ƈ: 'c',\n ȼ: 'c',\n ꜿ: 'c',\n ↄ: 'c',\n 'â““': 'd',\n d: 'd',\n ḋ: 'd',\n Ä: 'd',\n á¸: 'd',\n ḑ: 'd',\n ḓ: 'd',\n á¸: 'd',\n Ä‘: 'd',\n ÆŒ: 'd',\n É–: 'd',\n É—: 'd',\n êº: 'd',\n dz: 'dz',\n dž: 'dz',\n 'â“”': 'e',\n ï½…: 'e',\n è: 'e',\n é: 'e',\n ê: 'e',\n á»: 'e',\n ế: 'e',\n á»…: 'e',\n ể: 'e',\n ẽ: 'e',\n Ä“: 'e',\n ḕ: 'e',\n ḗ: 'e',\n Ä•: 'e',\n Ä—: 'e',\n ë: 'e',\n ẻ: 'e',\n Ä›: 'e',\n È…: 'e',\n ȇ: 'e',\n ẹ: 'e',\n ệ: 'e',\n È©: 'e',\n á¸: 'e',\n Ä™: 'e',\n ḙ: 'e',\n ḛ: 'e',\n ɇ: 'e',\n É›: 'e',\n Ç: 'e',\n 'â“•': 'f',\n f: 'f',\n ḟ: 'f',\n Æ’: 'f',\n ê¼: 'f',\n 'â“–': 'g',\n g: 'g',\n ǵ: 'g',\n Ä: 'g',\n ḡ: 'g',\n ÄŸ: 'g',\n Ä¡: 'g',\n ǧ: 'g',\n Ä£: 'g',\n Ç¥: 'g',\n É : 'g',\n êž¡: 'g',\n áµ¹: 'g',\n ê¿: 'g',\n 'â“—': 'h',\n h: 'h',\n Ä¥: 'h',\n ḣ: 'h',\n ḧ: 'h',\n ÈŸ: 'h',\n ḥ: 'h',\n ḩ: 'h',\n ḫ: 'h',\n ẖ: 'h',\n ħ: 'h',\n ⱨ: 'h',\n ⱶ: 'h',\n É¥: 'h',\n Æ•: 'hv',\n 'ⓘ': 'i',\n i: 'i',\n ì: 'i',\n Ã: 'i',\n î: 'i',\n Ä©: 'i',\n Ä«: 'i',\n Ä: 'i',\n ï: 'i',\n ḯ: 'i',\n ỉ: 'i',\n Ç: 'i',\n ȉ: 'i',\n È‹: 'i',\n ị: 'i',\n į: 'i',\n á¸: 'i',\n ɨ: 'i',\n ı: 'i',\n 'â“™': 'j',\n j: 'j',\n ĵ: 'j',\n Ç°: 'j',\n ɉ: 'j',\n 'â“š': 'k',\n k: 'k',\n ḱ: 'k',\n Ç©: 'k',\n ḳ: 'k',\n Ä·: 'k',\n ḵ: 'k',\n Æ™: 'k',\n ⱪ: 'k',\n ê: 'k',\n êƒ: 'k',\n ê…: 'k',\n ꞣ: 'k',\n 'â“›': 'l',\n l: 'l',\n Å€: 'l',\n ĺ: 'l',\n ľ: 'l',\n ḷ: 'l',\n ḹ: 'l',\n ļ: 'l',\n ḽ: 'l',\n ḻ: 'l',\n Å¿: 'l',\n Å‚: 'l',\n Æš: 'l',\n É«: 'l',\n ⱡ: 'l',\n ê‰: 'l',\n êž: 'l',\n ê‡: 'l',\n lj: 'lj',\n 'â“œ': 'm',\n ï½: 'm',\n ḿ: 'm',\n á¹: 'm',\n ṃ: 'm',\n ɱ: 'm',\n ɯ: 'm',\n 'â“': 'n',\n n: 'n',\n ǹ: 'n',\n Å„: 'n',\n ñ: 'n',\n á¹…: 'n',\n ň: 'n',\n ṇ: 'n',\n ņ: 'n',\n ṋ: 'n',\n ṉ: 'n',\n Æž: 'n',\n ɲ: 'n',\n ʼn: 'n',\n êž‘: 'n',\n ꞥ: 'n',\n ÇŒ: 'nj',\n 'â“ž': 'o',\n ï½: 'o',\n ò: 'o',\n ó: 'o',\n ô: 'o',\n ồ: 'o',\n ố: 'o',\n á»—: 'o',\n ổ: 'o',\n õ: 'o',\n á¹: 'o',\n È: 'o',\n á¹: 'o',\n Å: 'o',\n ṑ: 'o',\n ṓ: 'o',\n Å: 'o',\n ȯ: 'o',\n ȱ: 'o',\n ö: 'o',\n È«: 'o',\n á»: 'o',\n Å‘: 'o',\n Ç’: 'o',\n È: 'o',\n È: 'o',\n Æ¡: 'o',\n á»: 'o',\n á»›: 'o',\n ỡ: 'o',\n ở: 'o',\n ợ: 'o',\n á»: 'o',\n á»™: 'o',\n Ç«: 'o',\n Ç: 'o',\n ø: 'o',\n Ç¿: 'o',\n É”: 'o',\n ê‹: 'o',\n ê: 'o',\n ɵ: 'o',\n Å“: 'oe',\n Æ£: 'oi',\n È£: 'ou',\n ê: 'oo',\n 'â“Ÿ': 'p',\n ï½: 'p',\n ṕ: 'p',\n á¹—: 'p',\n Æ¥: 'p',\n áµ½: 'p',\n ê‘: 'p',\n ê“: 'p',\n ê•: 'p',\n 'â“ ': 'q',\n q: 'q',\n É‹: 'q',\n ê—: 'q',\n ê™: 'q',\n 'â“¡': 'r',\n ï½’: 'r',\n Å•: 'r',\n á¹™: 'r',\n Å™: 'r',\n È‘: 'r',\n È“: 'r',\n á¹›: 'r',\n á¹: 'r',\n Å—: 'r',\n ṟ: 'r',\n É: 'r',\n ɽ: 'r',\n ê›: 'r',\n ꞧ: 'r',\n ꞃ: 'r',\n 'â“¢': 's',\n s: 's',\n ß: 's',\n Å›: 's',\n á¹¥: 's',\n Å: 's',\n ṡ: 's',\n Å¡: 's',\n ṧ: 's',\n á¹£: 's',\n ṩ: 's',\n È™: 's',\n ÅŸ: 's',\n È¿: 's',\n êž©: 's',\n êž…: 's',\n ẛ: 's',\n 'â“£': 't',\n ï½”: 't',\n ṫ: 't',\n ẗ: 't',\n Å¥: 't',\n á¹: 't',\n È›: 't',\n Å£: 't',\n á¹±: 't',\n ṯ: 't',\n ŧ: 't',\n Æ: 't',\n ʈ: 't',\n ⱦ: 't',\n ꞇ: 't',\n ꜩ: 'tz',\n 'ⓤ': 'u',\n u: 'u',\n ù: 'u',\n ú: 'u',\n û: 'u',\n Å©: 'u',\n á¹¹: 'u',\n Å«: 'u',\n á¹»: 'u',\n Å: 'u',\n ü: 'u',\n Çœ: 'u',\n ǘ: 'u',\n Ç–: 'u',\n Çš: 'u',\n ủ: 'u',\n ů: 'u',\n ű: 'u',\n Ç”: 'u',\n È•: 'u',\n È—: 'u',\n Æ°: 'u',\n ừ: 'u',\n ứ: 'u',\n ữ: 'u',\n á»: 'u',\n á»±: 'u',\n ụ: 'u',\n á¹³: 'u',\n ų: 'u',\n á¹·: 'u',\n á¹µ: 'u',\n ʉ: 'u',\n 'â“¥': 'v',\n ï½–: 'v',\n á¹½: 'v',\n ṿ: 'v',\n Ê‹: 'v',\n êŸ: 'v',\n ÊŒ: 'v',\n ê¡: 'vy',\n 'ⓦ': 'w',\n ï½—: 'w',\n áº: 'w',\n ẃ: 'w',\n ŵ: 'w',\n ẇ: 'w',\n ẅ: 'w',\n ẘ: 'w',\n ẉ: 'w',\n â±³: 'w',\n 'ⓧ': 'x',\n x: 'x',\n ẋ: 'x',\n áº: 'x',\n 'ⓨ': 'y',\n ï½™: 'y',\n ỳ: 'y',\n ý: 'y',\n Å·: 'y',\n ỹ: 'y',\n ȳ: 'y',\n áº: 'y',\n ÿ: 'y',\n á»·: 'y',\n ẙ: 'y',\n ỵ: 'y',\n Æ´: 'y',\n É: 'y',\n ỿ: 'y',\n 'â“©': 'z',\n z: 'z',\n ź: 'z',\n ẑ: 'z',\n ż: 'z',\n ž: 'z',\n ẓ: 'z',\n ẕ: 'z',\n ƶ: 'z',\n È¥: 'z',\n É€: 'z',\n ⱬ: 'z',\n ê£: 'z',\n Ά: 'Α',\n Έ: 'Ε',\n Ή: 'Η',\n Ί: 'Ι',\n Ϊ: 'Ι',\n ÎŒ: 'Ο',\n ÎŽ: 'Î¥',\n Ϋ: 'Î¥',\n Î: 'Ω',\n ά: 'α',\n Î: 'ε',\n ή: 'η',\n ί: 'ι',\n ÏŠ: 'ι',\n Î: 'ι',\n ÏŒ: 'ο',\n Ï: 'Ï…',\n Ï‹: 'Ï…',\n ΰ: 'Ï…',\n ÏŽ: 'ω',\n Ï‚: 'σ',\n '’': \"'\",\n }\n }),\n u.define('select2/data/base', ['../utils'], function (n) {\n function s(e, t) {\n s.__super__.constructor.call(this)\n }\n return (\n n.Extend(s, n.Observable),\n (s.prototype.current = function (e) {\n throw new Error(\n 'The `current` method must be defined in child classes.'\n )\n }),\n (s.prototype.query = function (e, t) {\n throw new Error(\n 'The `query` method must be defined in child classes.'\n )\n }),\n (s.prototype.bind = function (e, t) {}),\n (s.prototype.destroy = function () {}),\n (s.prototype.generateResultId = function (e, t) {\n e = e.id + '-result-'\n return (\n (e += n.generateChars(4)),\n null != t.id\n ? (e += '-' + t.id.toString())\n : (e += '-' + n.generateChars(4)),\n e\n )\n }),\n s\n )\n }),\n u.define(\n 'select2/data/select',\n ['./base', '../utils', 'jquery'],\n function (e, a, l) {\n function n(e, t) {\n ;(this.$element = e),\n (this.options = t),\n n.__super__.constructor.call(this)\n }\n return (\n a.Extend(n, e),\n (n.prototype.current = function (e) {\n var t = this\n e(\n Array.prototype.map.call(\n this.$element[0].querySelectorAll(\n ':checked'\n ),\n function (e) {\n return t.item(l(e))\n }\n )\n )\n }),\n (n.prototype.select = function (i) {\n var e,\n r = this\n if (\n ((i.selected = !0),\n null != i.element &&\n 'option' ===\n i.element.tagName.toLowerCase())\n )\n return (\n (i.element.selected = !0),\n void this.$element\n .trigger('input')\n .trigger('change')\n )\n this.$element.prop('multiple')\n ? this.current(function (e) {\n var t = []\n ;(i = [i]).push.apply(i, e)\n for (var n = 0; n < i.length; n++) {\n var s = i[n].id\n ;-1 === t.indexOf(s) && t.push(s)\n }\n r.$element.val(t),\n r.$element\n .trigger('input')\n .trigger('change')\n })\n : ((e = i.id),\n this.$element.val(e),\n this.$element\n .trigger('input')\n .trigger('change'))\n }),\n (n.prototype.unselect = function (i) {\n var r = this\n if (this.$element.prop('multiple')) {\n if (\n ((i.selected = !1),\n null != i.element &&\n 'option' ===\n i.element.tagName.toLowerCase())\n )\n return (\n (i.element.selected = !1),\n void this.$element\n .trigger('input')\n .trigger('change')\n )\n this.current(function (e) {\n for (var t = [], n = 0; n < e.length; n++) {\n var s = e[n].id\n s !== i.id &&\n -1 === t.indexOf(s) &&\n t.push(s)\n }\n r.$element.val(t),\n r.$element\n .trigger('input')\n .trigger('change')\n })\n }\n }),\n (n.prototype.bind = function (e, t) {\n var n = this\n ;(this.container = e).on('select', function (e) {\n n.select(e.data)\n }),\n e.on('unselect', function (e) {\n n.unselect(e.data)\n })\n }),\n (n.prototype.destroy = function () {\n this.$element.find('*').each(function () {\n a.RemoveData(this)\n })\n }),\n (n.prototype.query = function (t, e) {\n var n = [],\n s = this\n this.$element.children().each(function () {\n var e\n ;('option' !== this.tagName.toLowerCase() &&\n 'optgroup' !==\n this.tagName.toLowerCase()) ||\n ((e = l(this)),\n (e = s.item(e)),\n null !== (e = s.matches(t, e)) && n.push(e))\n }),\n e({ results: n })\n }),\n (n.prototype.addOptions = function (e) {\n this.$element.append(e)\n }),\n (n.prototype.option = function (e) {\n var t\n e.children\n ? ((t =\n document.createElement(\n 'optgroup'\n )).label = e.text)\n : void 0 !==\n (t = document.createElement('option'))\n .textContent\n ? (t.textContent = e.text)\n : (t.innerText = e.text),\n void 0 !== e.id && (t.value = e.id),\n e.disabled && (t.disabled = !0),\n e.selected && (t.selected = !0),\n e.title && (t.title = e.title)\n e = this._normalizeItem(e)\n return (\n (e.element = t), a.StoreData(t, 'data', e), l(t)\n )\n }),\n (n.prototype.item = function (e) {\n var t = {}\n if (null != (t = a.GetData(e[0], 'data'))) return t\n var n = e[0]\n if ('option' === n.tagName.toLowerCase())\n t = {\n id: e.val(),\n text: e.text(),\n disabled: e.prop('disabled'),\n selected: e.prop('selected'),\n title: e.prop('title'),\n }\n else if ('optgroup' === n.tagName.toLowerCase()) {\n t = {\n text: e.prop('label'),\n children: [],\n title: e.prop('title'),\n }\n for (\n var s = e.children('option'), i = [], r = 0;\n r < s.length;\n r++\n ) {\n var o = l(s[r]),\n o = this.item(o)\n i.push(o)\n }\n t.children = i\n }\n return (\n ((t = this._normalizeItem(t)).element = e[0]),\n a.StoreData(e[0], 'data', t),\n t\n )\n }),\n (n.prototype._normalizeItem = function (e) {\n e !== Object(e) && (e = { id: e, text: e })\n return (\n null !=\n (e = l.extend({}, { text: '' }, e)).id &&\n (e.id = e.id.toString()),\n null != e.text && (e.text = e.text.toString()),\n null == e._resultId &&\n e.id &&\n null != this.container &&\n (e._resultId = this.generateResultId(\n this.container,\n e\n )),\n l.extend({}, { selected: !1, disabled: !1 }, e)\n )\n }),\n (n.prototype.matches = function (e, t) {\n return this.options.get('matcher')(e, t)\n }),\n n\n )\n }\n ),\n u.define(\n 'select2/data/array',\n ['./select', '../utils', 'jquery'],\n function (e, t, c) {\n function s(e, t) {\n ;(this._dataToConvert = t.get('data') || []),\n s.__super__.constructor.call(this, e, t)\n }\n return (\n t.Extend(s, e),\n (s.prototype.bind = function (e, t) {\n s.__super__.bind.call(this, e, t),\n this.addOptions(\n this.convertToOptions(this._dataToConvert)\n )\n }),\n (s.prototype.select = function (n) {\n var e = this.$element\n .find('option')\n .filter(function (e, t) {\n return t.value == n.id.toString()\n })\n 0 === e.length &&\n ((e = this.option(n)), this.addOptions(e)),\n s.__super__.select.call(this, n)\n }),\n (s.prototype.convertToOptions = function (e) {\n var t = this,\n n = this.$element.find('option'),\n s = n\n .map(function () {\n return t.item(c(this)).id\n })\n .get(),\n i = []\n for (var r = 0; r < e.length; r++) {\n var o,\n a,\n l = this._normalizeItem(e[r])\n 0 <= s.indexOf(l.id)\n ? ((o = n.filter(\n (function (e) {\n return function () {\n return c(this).val() == e.id\n }\n })(l)\n )),\n (a = this.item(o)),\n (a = c.extend(!0, {}, l, a)),\n (a = this.option(a)),\n o.replaceWith(a))\n : ((a = this.option(l)),\n l.children &&\n ((l = this.convertToOptions(\n l.children\n )),\n a.append(l)),\n i.push(a))\n }\n return i\n }),\n s\n )\n }\n ),\n u.define(\n 'select2/data/ajax',\n ['./array', '../utils', 'jquery'],\n function (e, t, r) {\n function n(e, t) {\n ;(this.ajaxOptions = this._applyDefaults(\n t.get('ajax')\n )),\n null != this.ajaxOptions.processResults &&\n (this.processResults =\n this.ajaxOptions.processResults),\n n.__super__.constructor.call(this, e, t)\n }\n return (\n t.Extend(n, e),\n (n.prototype._applyDefaults = function (e) {\n var t = {\n data: function (e) {\n return r.extend({}, e, { q: e.term })\n },\n transport: function (e, t, n) {\n e = r.ajax(e)\n return e.then(t), e.fail(n), e\n },\n }\n return r.extend({}, t, e, !0)\n }),\n (n.prototype.processResults = function (e) {\n return e\n }),\n (n.prototype.query = function (t, n) {\n var s = this\n null != this._request &&\n ('function' == typeof this._request.abort &&\n this._request.abort(),\n (this._request = null))\n var i = r.extend({ type: 'GET' }, this.ajaxOptions)\n function e() {\n var e = i.transport(\n i,\n function (e) {\n e = s.processResults(e, t)\n s.options.get('debug') &&\n window.console &&\n console.error &&\n ((e &&\n e.results &&\n Array.isArray(e.results)) ||\n console.error(\n 'Select2: The AJAX results did not return an array in the `results` key of the response.'\n )),\n n(e)\n },\n function () {\n ;('status' in e &&\n (0 === e.status ||\n '0' === e.status)) ||\n s.trigger('results:message', {\n message: 'errorLoading',\n })\n }\n )\n s._request = e\n }\n 'function' == typeof i.url &&\n (i.url = i.url.call(this.$element, t)),\n 'function' == typeof i.data &&\n (i.data = i.data.call(this.$element, t)),\n this.ajaxOptions.delay && null != t.term\n ? (this._queryTimeout &&\n window.clearTimeout(\n this._queryTimeout\n ),\n (this._queryTimeout = window.setTimeout(\n e,\n this.ajaxOptions.delay\n )))\n : e()\n }),\n n\n )\n }\n ),\n u.define('select2/data/tags', ['jquery'], function (t) {\n function e(e, t, n) {\n var s = n.get('tags'),\n i = n.get('createTag')\n void 0 !== i && (this.createTag = i)\n i = n.get('insertTag')\n if (\n (void 0 !== i && (this.insertTag = i),\n e.call(this, t, n),\n Array.isArray(s))\n )\n for (var r = 0; r < s.length; r++) {\n var o = s[r],\n o = this._normalizeItem(o),\n o = this.option(o)\n this.$element.append(o)\n }\n }\n return (\n (e.prototype.query = function (e, c, u) {\n var d = this\n this._removeOldTags(),\n null != c.term && null == c.page\n ? e.call(this, c, function e(t, n) {\n for (\n var s = t.results, i = 0;\n i < s.length;\n i++\n ) {\n var r = s[i],\n o =\n null != r.children &&\n !e(\n { results: r.children },\n !0\n )\n if (\n (r.text || '').toUpperCase() ===\n (\n c.term || ''\n ).toUpperCase() ||\n o\n )\n return (\n !n &&\n ((t.data = s), void u(t))\n )\n }\n if (n) return !0\n var a,\n l = d.createTag(c)\n null != l &&\n ((a = d.option(l)).attr(\n 'data-select2-tag',\n 'true'\n ),\n d.addOptions([a]),\n d.insertTag(s, l)),\n (t.results = s),\n u(t)\n })\n : e.call(this, c, u)\n }),\n (e.prototype.createTag = function (e, t) {\n if (null == t.term) return null\n t = t.term.trim()\n return '' === t ? null : { id: t, text: t }\n }),\n (e.prototype.insertTag = function (e, t, n) {\n t.unshift(n)\n }),\n (e.prototype._removeOldTags = function (e) {\n this.$element\n .find('option[data-select2-tag]')\n .each(function () {\n this.selected || t(this).remove()\n })\n }),\n e\n )\n }),\n u.define('select2/data/tokenizer', ['jquery'], function (c) {\n function e(e, t, n) {\n var s = n.get('tokenizer')\n void 0 !== s && (this.tokenizer = s), e.call(this, t, n)\n }\n return (\n (e.prototype.bind = function (e, t, n) {\n e.call(this, t, n),\n (this.$search =\n t.dropdown.$search ||\n t.selection.$search ||\n n.find('.select2-search__field'))\n }),\n (e.prototype.query = function (e, t, n) {\n var s = this\n t.term = t.term || ''\n var i = this.tokenizer(t, this.options, function (e) {\n var t,\n n = s._normalizeItem(e)\n s.$element.find('option').filter(function () {\n return c(this).val() === n.id\n }).length ||\n ((t = s.option(n)).attr('data-select2-tag', !0),\n s._removeOldTags(),\n s.addOptions([t])),\n (t = n),\n s.trigger('select', { data: t })\n })\n i.term !== t.term &&\n (this.$search.length &&\n (this.$search.val(i.term),\n this.$search.trigger('focus')),\n (t.term = i.term)),\n e.call(this, t, n)\n }),\n (e.prototype.tokenizer = function (e, t, n, s) {\n for (\n var i = n.get('tokenSeparators') || [],\n r = t.term,\n o = 0,\n a =\n this.createTag ||\n function (e) {\n return { id: e.term, text: e.term }\n };\n o < r.length;\n\n ) {\n var l = r[o]\n ;-1 !== i.indexOf(l)\n ? ((l = r.substr(0, o)),\n null != (l = a(c.extend({}, t, { term: l })))\n ? (s(l),\n (r = r.substr(o + 1) || ''),\n (o = 0))\n : o++)\n : o++\n }\n return { term: r }\n }),\n e\n )\n }),\n u.define('select2/data/minimumInputLength', [], function () {\n function e(e, t, n) {\n ;(this.minimumInputLength = n.get('minimumInputLength')),\n e.call(this, t, n)\n }\n return (\n (e.prototype.query = function (e, t, n) {\n ;(t.term = t.term || ''),\n t.term.length < this.minimumInputLength\n ? this.trigger('results:message', {\n message: 'inputTooShort',\n args: {\n minimum: this.minimumInputLength,\n input: t.term,\n params: t,\n },\n })\n : e.call(this, t, n)\n }),\n e\n )\n }),\n u.define('select2/data/maximumInputLength', [], function () {\n function e(e, t, n) {\n ;(this.maximumInputLength = n.get('maximumInputLength')),\n e.call(this, t, n)\n }\n return (\n (e.prototype.query = function (e, t, n) {\n ;(t.term = t.term || ''),\n 0 < this.maximumInputLength &&\n t.term.length > this.maximumInputLength\n ? this.trigger('results:message', {\n message: 'inputTooLong',\n args: {\n maximum: this.maximumInputLength,\n input: t.term,\n params: t,\n },\n })\n : e.call(this, t, n)\n }),\n e\n )\n }),\n u.define('select2/data/maximumSelectionLength', [], function () {\n function e(e, t, n) {\n ;(this.maximumSelectionLength = n.get(\n 'maximumSelectionLength'\n )),\n e.call(this, t, n)\n }\n return (\n (e.prototype.bind = function (e, t, n) {\n var s = this\n e.call(this, t, n),\n t.on('select', function () {\n s._checkIfMaximumSelected()\n })\n }),\n (e.prototype.query = function (e, t, n) {\n var s = this\n this._checkIfMaximumSelected(function () {\n e.call(s, t, n)\n })\n }),\n (e.prototype._checkIfMaximumSelected = function (e, t) {\n var n = this\n this.current(function (e) {\n e = null != e ? e.length : 0\n 0 < n.maximumSelectionLength &&\n e >= n.maximumSelectionLength\n ? n.trigger('results:message', {\n message: 'maximumSelected',\n args: {\n maximum: n.maximumSelectionLength,\n },\n })\n : t && t()\n })\n }),\n e\n )\n }),\n u.define(\n 'select2/dropdown',\n ['jquery', './utils'],\n function (t, e) {\n function n(e, t) {\n ;(this.$element = e),\n (this.options = t),\n n.__super__.constructor.call(this)\n }\n return (\n e.Extend(n, e.Observable),\n (n.prototype.render = function () {\n var e = t(\n '<span class=\"select2-dropdown\"><span class=\"select2-results\"></span></span>'\n )\n return (\n e.attr('dir', this.options.get('dir')),\n (this.$dropdown = e)\n )\n }),\n (n.prototype.bind = function () {}),\n (n.prototype.position = function (e, t) {}),\n (n.prototype.destroy = function () {\n this.$dropdown.remove()\n }),\n n\n )\n }\n ),\n u.define('select2/dropdown/search', ['jquery'], function (r) {\n function e() {}\n return (\n (e.prototype.render = function (e) {\n var t = e.call(this),\n n = this.options.get('translations').get('search'),\n e = r(\n '<span class=\"select2-search select2-search--dropdown\"><input class=\"select2-search__field\" type=\"search\" tabindex=\"-1\" autocorrect=\"off\" autocapitalize=\"none\" spellcheck=\"false\" role=\"searchbox\" aria-autocomplete=\"list\" /></span>'\n )\n return (\n (this.$searchContainer = e),\n (this.$search = e.find('input')),\n this.$search.prop(\n 'autocomplete',\n this.options.get('autocomplete')\n ),\n this.$search.attr('aria-label', n()),\n t.prepend(e),\n t\n )\n }),\n (e.prototype.bind = function (e, t, n) {\n var s = this,\n i = t.id + '-results'\n e.call(this, t, n),\n this.$search.on('keydown', function (e) {\n s.trigger('keypress', e),\n (s._keyUpPrevented = e.isDefaultPrevented())\n }),\n this.$search.on('input', function (e) {\n r(this).off('keyup')\n }),\n this.$search.on('keyup input', function (e) {\n s.handleSearch(e)\n }),\n t.on('open', function () {\n s.$search.attr('tabindex', 0),\n s.$search.attr('aria-controls', i),\n s.$search.trigger('focus'),\n window.setTimeout(function () {\n s.$search.trigger('focus')\n }, 0)\n }),\n t.on('close', function () {\n s.$search.attr('tabindex', -1),\n s.$search.removeAttr('aria-controls'),\n s.$search.removeAttr(\n 'aria-activedescendant'\n ),\n s.$search.val(''),\n s.$search.trigger('blur')\n }),\n t.on('focus', function () {\n t.isOpen() || s.$search.trigger('focus')\n }),\n t.on('results:all', function (e) {\n ;(null != e.query.term &&\n '' !== e.query.term) ||\n (s.showSearch(e)\n ? s.$searchContainer[0].classList.remove(\n 'select2-search--hide'\n )\n : s.$searchContainer[0].classList.add(\n 'select2-search--hide'\n ))\n }),\n t.on('results:focus', function (e) {\n e.data._resultId\n ? s.$search.attr(\n 'aria-activedescendant',\n e.data._resultId\n )\n : s.$search.removeAttr(\n 'aria-activedescendant'\n )\n })\n }),\n (e.prototype.handleSearch = function (e) {\n var t\n this._keyUpPrevented ||\n ((t = this.$search.val()),\n this.trigger('query', { term: t })),\n (this._keyUpPrevented = !1)\n }),\n (e.prototype.showSearch = function (e, t) {\n return !0\n }),\n e\n )\n }),\n u.define('select2/dropdown/hidePlaceholder', [], function () {\n function e(e, t, n, s) {\n ;(this.placeholder = this.normalizePlaceholder(\n n.get('placeholder')\n )),\n e.call(this, t, n, s)\n }\n return (\n (e.prototype.append = function (e, t) {\n ;(t.results = this.removePlaceholder(t.results)),\n e.call(this, t)\n }),\n (e.prototype.normalizePlaceholder = function (e, t) {\n return (t =\n 'string' == typeof t ? { id: '', text: t } : t)\n }),\n (e.prototype.removePlaceholder = function (e, t) {\n for (\n var n = t.slice(0), s = t.length - 1;\n 0 <= s;\n s--\n ) {\n var i = t[s]\n this.placeholder.id === i.id && n.splice(s, 1)\n }\n return n\n }),\n e\n )\n }),\n u.define(\n 'select2/dropdown/infiniteScroll',\n ['jquery'],\n function (n) {\n function e(e, t, n, s) {\n ;(this.lastParams = {}),\n e.call(this, t, n, s),\n (this.$loadingMore = this.createLoadingMore()),\n (this.loading = !1)\n }\n return (\n (e.prototype.append = function (e, t) {\n this.$loadingMore.remove(),\n (this.loading = !1),\n e.call(this, t),\n this.showLoadingMore(t) &&\n (this.$results.append(this.$loadingMore),\n this.loadMoreIfNeeded())\n }),\n (e.prototype.bind = function (e, t, n) {\n var s = this\n e.call(this, t, n),\n t.on('query', function (e) {\n ;(s.lastParams = e), (s.loading = !0)\n }),\n t.on('query:append', function (e) {\n ;(s.lastParams = e), (s.loading = !0)\n }),\n this.$results.on(\n 'scroll',\n this.loadMoreIfNeeded.bind(this)\n )\n }),\n (e.prototype.loadMoreIfNeeded = function () {\n var e = n.contains(\n document.documentElement,\n this.$loadingMore[0]\n )\n !this.loading &&\n e &&\n ((e =\n this.$results.offset().top +\n this.$results.outerHeight(!1)),\n this.$loadingMore.offset().top +\n this.$loadingMore.outerHeight(!1) <=\n e + 50 && this.loadMore())\n }),\n (e.prototype.loadMore = function () {\n this.loading = !0\n var e = n.extend({}, { page: 1 }, this.lastParams)\n e.page++, this.trigger('query:append', e)\n }),\n (e.prototype.showLoadingMore = function (e, t) {\n return t.pagination && t.pagination.more\n }),\n (e.prototype.createLoadingMore = function () {\n var e = n(\n '<li class=\"select2-results__option select2-results__option--load-more\"role=\"option\" aria-disabled=\"true\"></li>'\n ),\n t = this.options\n .get('translations')\n .get('loadingMore')\n return e.html(t(this.lastParams)), e\n }),\n e\n )\n }\n ),\n u.define(\n 'select2/dropdown/attachBody',\n ['jquery', '../utils'],\n function (u, o) {\n function e(e, t, n) {\n ;(this.$dropdownParent = u(\n n.get('dropdownParent') || document.body\n )),\n e.call(this, t, n)\n }\n return (\n (e.prototype.bind = function (e, t, n) {\n var s = this\n e.call(this, t, n),\n t.on('open', function () {\n s._showDropdown(),\n s._attachPositioningHandler(t),\n s._bindContainerResultHandlers(t)\n }),\n t.on('close', function () {\n s._hideDropdown(),\n s._detachPositioningHandler(t)\n }),\n this.$dropdownContainer.on(\n 'mousedown',\n function (e) {\n e.stopPropagation()\n }\n )\n }),\n (e.prototype.destroy = function (e) {\n e.call(this), this.$dropdownContainer.remove()\n }),\n (e.prototype.position = function (e, t, n) {\n t.attr('class', n.attr('class')),\n t[0].classList.remove('select2'),\n t[0].classList.add('select2-container--open'),\n t.css({ position: 'absolute', top: -999999 }),\n (this.$container = n)\n }),\n (e.prototype.render = function (e) {\n var t = u('<span></span>'),\n e = e.call(this)\n return t.append(e), (this.$dropdownContainer = t)\n }),\n (e.prototype._hideDropdown = function (e) {\n this.$dropdownContainer.detach()\n }),\n (e.prototype._bindContainerResultHandlers = function (\n e,\n t\n ) {\n var n\n this._containerResultsHandlersBound ||\n ((n = this),\n t.on('results:all', function () {\n n._positionDropdown(), n._resizeDropdown()\n }),\n t.on('results:append', function () {\n n._positionDropdown(), n._resizeDropdown()\n }),\n t.on('results:message', function () {\n n._positionDropdown(), n._resizeDropdown()\n }),\n t.on('select', function () {\n n._positionDropdown(), n._resizeDropdown()\n }),\n t.on('unselect', function () {\n n._positionDropdown(), n._resizeDropdown()\n }),\n (this._containerResultsHandlersBound = !0))\n }),\n (e.prototype._attachPositioningHandler = function (\n e,\n t\n ) {\n var n = this,\n s = 'scroll.select2.' + t.id,\n i = 'resize.select2.' + t.id,\n r = 'orientationchange.select2.' + t.id,\n t = this.$container\n .parents()\n .filter(o.hasScroll)\n t.each(function () {\n o.StoreData(this, 'select2-scroll-position', {\n x: u(this).scrollLeft(),\n y: u(this).scrollTop(),\n })\n }),\n t.on(s, function (e) {\n var t = o.GetData(\n this,\n 'select2-scroll-position'\n )\n u(this).scrollTop(t.y)\n }),\n u(window).on(\n s + ' ' + i + ' ' + r,\n function (e) {\n n._positionDropdown(),\n n._resizeDropdown()\n }\n )\n }),\n (e.prototype._detachPositioningHandler = function (\n e,\n t\n ) {\n var n = 'scroll.select2.' + t.id,\n s = 'resize.select2.' + t.id,\n t = 'orientationchange.select2.' + t.id\n this.$container\n .parents()\n .filter(o.hasScroll)\n .off(n),\n u(window).off(n + ' ' + s + ' ' + t)\n }),\n (e.prototype._positionDropdown = function () {\n var e = u(window),\n t = this.$dropdown[0].classList.contains(\n 'select2-dropdown--above'\n ),\n n = this.$dropdown[0].classList.contains(\n 'select2-dropdown--below'\n ),\n s = null,\n i = this.$container.offset()\n i.bottom = i.top + this.$container.outerHeight(!1)\n var r = { height: this.$container.outerHeight(!1) }\n ;(r.top = i.top), (r.bottom = i.top + r.height)\n var o = this.$dropdown.outerHeight(!1),\n a = e.scrollTop(),\n l = e.scrollTop() + e.height(),\n c = a < i.top - o,\n e = l > i.bottom + o,\n a = { left: i.left, top: r.bottom },\n l = this.$dropdownParent\n 'static' === l.css('position') &&\n (l = l.offsetParent())\n i = { top: 0, left: 0 }\n ;(u.contains(document.body, l[0]) ||\n l[0].isConnected) &&\n (i = l.offset()),\n (a.top -= i.top),\n (a.left -= i.left),\n t || n || (s = 'below'),\n e || !c || t\n ? !c && e && t && (s = 'below')\n : (s = 'above'),\n ('above' == s || (t && 'below' !== s)) &&\n (a.top = r.top - i.top - o),\n null != s &&\n (this.$dropdown[0].classList.remove(\n 'select2-dropdown--below'\n ),\n this.$dropdown[0].classList.remove(\n 'select2-dropdown--above'\n ),\n this.$dropdown[0].classList.add(\n 'select2-dropdown--' + s\n ),\n this.$container[0].classList.remove(\n 'select2-container--below'\n ),\n this.$container[0].classList.remove(\n 'select2-container--above'\n ),\n this.$container[0].classList.add(\n 'select2-container--' + s\n )),\n this.$dropdownContainer.css(a)\n }),\n (e.prototype._resizeDropdown = function () {\n var e = {\n width: this.$container.outerWidth(!1) + 'px',\n }\n this.options.get('dropdownAutoWidth') &&\n ((e.minWidth = e.width),\n (e.position = 'relative'),\n (e.width = 'auto')),\n this.$dropdown.css(e)\n }),\n (e.prototype._showDropdown = function (e) {\n this.$dropdownContainer.appendTo(\n this.$dropdownParent\n ),\n this._positionDropdown(),\n this._resizeDropdown()\n }),\n e\n )\n }\n ),\n u.define(\n 'select2/dropdown/minimumResultsForSearch',\n [],\n function () {\n function e(e, t, n, s) {\n ;(this.minimumResultsForSearch = n.get(\n 'minimumResultsForSearch'\n )),\n this.minimumResultsForSearch < 0 &&\n (this.minimumResultsForSearch = 1 / 0),\n e.call(this, t, n, s)\n }\n return (\n (e.prototype.showSearch = function (e, t) {\n return (\n !(\n (function e(t) {\n for (\n var n = 0, s = 0;\n s < t.length;\n s++\n ) {\n var i = t[s]\n i.children\n ? (n += e(i.children))\n : n++\n }\n return n\n })(t.data.results) <\n this.minimumResultsForSearch\n ) && e.call(this, t)\n )\n }),\n e\n )\n }\n ),\n u.define(\n 'select2/dropdown/selectOnClose',\n ['../utils'],\n function (s) {\n function e() {}\n return (\n (e.prototype.bind = function (e, t, n) {\n var s = this\n e.call(this, t, n),\n t.on('close', function (e) {\n s._handleSelectOnClose(e)\n })\n }),\n (e.prototype._handleSelectOnClose = function (e, t) {\n if (t && null != t.originalSelect2Event) {\n var n = t.originalSelect2Event\n if (\n 'select' === n._type ||\n 'unselect' === n._type\n )\n return\n }\n n = this.getHighlightedResults()\n n.length < 1 ||\n (null !=\n (n = s.GetData(n[0], 'data')).element &&\n n.element.selected) ||\n (null == n.element && n.selected) ||\n this.trigger('select', { data: n })\n }),\n e\n )\n }\n ),\n u.define('select2/dropdown/closeOnSelect', [], function () {\n function e() {}\n return (\n (e.prototype.bind = function (e, t, n) {\n var s = this\n e.call(this, t, n),\n t.on('select', function (e) {\n s._selectTriggered(e)\n }),\n t.on('unselect', function (e) {\n s._selectTriggered(e)\n })\n }),\n (e.prototype._selectTriggered = function (e, t) {\n var n = t.originalEvent\n ;(n && (n.ctrlKey || n.metaKey)) ||\n this.trigger('close', {\n originalEvent: n,\n originalSelect2Event: t,\n })\n }),\n e\n )\n }),\n u.define(\n 'select2/dropdown/dropdownCss',\n ['../utils'],\n function (n) {\n function e() {}\n return (\n (e.prototype.render = function (e) {\n var t = e.call(this),\n e = this.options.get('dropdownCssClass') || ''\n return (\n -1 !== e.indexOf(':all:') &&\n ((e = e.replace(':all:', '')),\n n.copyNonInternalCssClasses(\n t[0],\n this.$element[0]\n )),\n t.addClass(e),\n t\n )\n }),\n e\n )\n }\n ),\n u.define(\n 'select2/dropdown/tagsSearchHighlight',\n ['../utils'],\n function (s) {\n function e() {}\n return (\n (e.prototype.highlightFirstItem = function (e) {\n var t = this.$results.find(\n '.select2-results__option--selectable:not(.select2-results__option--selected)'\n )\n if (0 < t.length) {\n var n = t.first(),\n t = s.GetData(n[0], 'data').element\n if (\n t &&\n t.getAttribute &&\n 'true' ===\n t.getAttribute('data-select2-tag')\n )\n return void n.trigger('mouseenter')\n }\n e.call(this)\n }),\n e\n )\n }\n ),\n u.define('select2/i18n/en', [], function () {\n return {\n errorLoading: function () {\n return 'The results could not be loaded.'\n },\n inputTooLong: function (e) {\n var t = e.input.length - e.maximum,\n e = 'Please delete ' + t + ' character'\n return 1 != t && (e += 's'), e\n },\n inputTooShort: function (e) {\n return (\n 'Please enter ' +\n (e.minimum - e.input.length) +\n ' or more characters'\n )\n },\n loadingMore: function () {\n return 'Loading more results…'\n },\n maximumSelected: function (e) {\n var t = 'You can only select ' + e.maximum + ' item'\n return 1 != e.maximum && (t += 's'), t\n },\n noResults: function () {\n return 'No results found'\n },\n searching: function () {\n return 'Searching…'\n },\n removeAllItems: function () {\n return 'Remove all items'\n },\n removeItem: function () {\n return 'Remove item'\n },\n search: function () {\n return 'Search'\n },\n }\n }),\n u.define(\n 'select2/defaults',\n [\n 'jquery',\n './results',\n './selection/single',\n './selection/multiple',\n './selection/placeholder',\n './selection/allowClear',\n './selection/search',\n './selection/selectionCss',\n './selection/eventRelay',\n './utils',\n './translation',\n './diacritics',\n './data/select',\n './data/array',\n './data/ajax',\n './data/tags',\n './data/tokenizer',\n './data/minimumInputLength',\n './data/maximumInputLength',\n './data/maximumSelectionLength',\n './dropdown',\n './dropdown/search',\n './dropdown/hidePlaceholder',\n './dropdown/infiniteScroll',\n './dropdown/attachBody',\n './dropdown/minimumResultsForSearch',\n './dropdown/selectOnClose',\n './dropdown/closeOnSelect',\n './dropdown/dropdownCss',\n './dropdown/tagsSearchHighlight',\n './i18n/en',\n ],\n function (\n l,\n r,\n o,\n a,\n c,\n u,\n d,\n p,\n h,\n f,\n g,\n t,\n m,\n y,\n v,\n _,\n b,\n $,\n w,\n x,\n A,\n D,\n S,\n E,\n O,\n C,\n L,\n T,\n q,\n I,\n e\n ) {\n function n() {\n this.reset()\n }\n return (\n (n.prototype.apply = function (e) {\n var t\n null ==\n (e = l.extend(!0, {}, this.defaults, e))\n .dataAdapter &&\n (null != e.ajax\n ? (e.dataAdapter = v)\n : null != e.data\n ? (e.dataAdapter = y)\n : (e.dataAdapter = m),\n 0 < e.minimumInputLength &&\n (e.dataAdapter = f.Decorate(\n e.dataAdapter,\n $\n )),\n 0 < e.maximumInputLength &&\n (e.dataAdapter = f.Decorate(\n e.dataAdapter,\n w\n )),\n 0 < e.maximumSelectionLength &&\n (e.dataAdapter = f.Decorate(\n e.dataAdapter,\n x\n )),\n e.tags &&\n (e.dataAdapter = f.Decorate(\n e.dataAdapter,\n _\n )),\n (null == e.tokenSeparators &&\n null == e.tokenizer) ||\n (e.dataAdapter = f.Decorate(\n e.dataAdapter,\n b\n ))),\n null == e.resultsAdapter &&\n ((e.resultsAdapter = r),\n null != e.ajax &&\n (e.resultsAdapter = f.Decorate(\n e.resultsAdapter,\n E\n )),\n null != e.placeholder &&\n (e.resultsAdapter = f.Decorate(\n e.resultsAdapter,\n S\n )),\n e.selectOnClose &&\n (e.resultsAdapter = f.Decorate(\n e.resultsAdapter,\n L\n )),\n e.tags &&\n (e.resultsAdapter = f.Decorate(\n e.resultsAdapter,\n I\n ))),\n null == e.dropdownAdapter &&\n (e.multiple\n ? (e.dropdownAdapter = A)\n : ((t = f.Decorate(A, D)),\n (e.dropdownAdapter = t)),\n 0 !== e.minimumResultsForSearch &&\n (e.dropdownAdapter = f.Decorate(\n e.dropdownAdapter,\n C\n )),\n e.closeOnSelect &&\n (e.dropdownAdapter = f.Decorate(\n e.dropdownAdapter,\n T\n )),\n null != e.dropdownCssClass &&\n (e.dropdownAdapter = f.Decorate(\n e.dropdownAdapter,\n q\n )),\n (e.dropdownAdapter = f.Decorate(\n e.dropdownAdapter,\n O\n ))),\n null == e.selectionAdapter &&\n (e.multiple\n ? (e.selectionAdapter = a)\n : (e.selectionAdapter = o),\n null != e.placeholder &&\n (e.selectionAdapter = f.Decorate(\n e.selectionAdapter,\n c\n )),\n e.allowClear &&\n (e.selectionAdapter = f.Decorate(\n e.selectionAdapter,\n u\n )),\n e.multiple &&\n (e.selectionAdapter = f.Decorate(\n e.selectionAdapter,\n d\n )),\n null != e.selectionCssClass &&\n (e.selectionAdapter = f.Decorate(\n e.selectionAdapter,\n p\n )),\n (e.selectionAdapter = f.Decorate(\n e.selectionAdapter,\n h\n ))),\n (e.language = this._resolveLanguage(\n e.language\n )),\n e.language.push('en')\n for (\n var n = [], s = 0;\n s < e.language.length;\n s++\n ) {\n var i = e.language[s]\n ;-1 === n.indexOf(i) && n.push(i)\n }\n return (\n (e.language = n),\n (e.translations = this._processTranslations(\n e.language,\n e.debug\n )),\n e\n )\n }),\n (n.prototype.reset = function () {\n function a(e) {\n return e.replace(\n /[^\\u0000-\\u007E]/g,\n function (e) {\n return t[e] || e\n }\n )\n }\n this.defaults = {\n amdLanguageBase: './i18n/',\n autocomplete: 'off',\n closeOnSelect: !0,\n debug: !1,\n dropdownAutoWidth: !1,\n escapeMarkup: f.escapeMarkup,\n language: {},\n matcher: function e(t, n) {\n if (null == t.term || '' === t.term.trim())\n return n\n if (n.children && 0 < n.children.length) {\n for (\n var s = l.extend(!0, {}, n),\n i = n.children.length - 1;\n 0 <= i;\n i--\n )\n null == e(t, n.children[i]) &&\n s.children.splice(i, 1)\n return 0 < s.children.length\n ? s\n : e(t, s)\n }\n var r = a(n.text).toUpperCase(),\n o = a(t.term).toUpperCase()\n return -1 < r.indexOf(o) ? n : null\n },\n minimumInputLength: 0,\n maximumInputLength: 0,\n maximumSelectionLength: 0,\n minimumResultsForSearch: 0,\n selectOnClose: !1,\n scrollAfterSelect: !1,\n sorter: function (e) {\n return e\n },\n templateResult: function (e) {\n return e.text\n },\n templateSelection: function (e) {\n return e.text\n },\n theme: 'default',\n width: 'resolve',\n }\n }),\n (n.prototype.applyFromElement = function (e, t) {\n var n = e.language,\n s = this.defaults.language,\n i = t.prop('lang'),\n t = t.closest('[lang]').prop('lang'),\n t = Array.prototype.concat.call(\n this._resolveLanguage(i),\n this._resolveLanguage(n),\n this._resolveLanguage(s),\n this._resolveLanguage(t)\n )\n return (e.language = t), e\n }),\n (n.prototype._resolveLanguage = function (e) {\n if (!e) return []\n if (l.isEmptyObject(e)) return []\n if (l.isPlainObject(e)) return [e]\n for (\n var t,\n n = Array.isArray(e) ? e : [e],\n s = [],\n i = 0;\n i < n.length;\n i++\n )\n s.push(n[i]),\n 'string' == typeof n[i] &&\n 0 < n[i].indexOf('-') &&\n ((t = n[i].split('-')[0]), s.push(t))\n return s\n }),\n (n.prototype._processTranslations = function (e, t) {\n for (var n = new g(), s = 0; s < e.length; s++) {\n var i = new g(),\n r = e[s]\n if ('string' == typeof r)\n try {\n i = g.loadPath(r)\n } catch (e) {\n try {\n ;(r =\n this.defaults.amdLanguageBase +\n r),\n (i = g.loadPath(r))\n } catch (e) {\n t &&\n window.console &&\n console.warn &&\n console.warn(\n 'Select2: The language file for \"' +\n r +\n '\" could not be automatically loaded. A fallback will be used instead.'\n )\n }\n }\n else i = l.isPlainObject(r) ? new g(r) : r\n n.extend(i)\n }\n return n\n }),\n (n.prototype.set = function (e, t) {\n var n = {}\n n[l.camelCase(e)] = t\n n = f._convertData(n)\n l.extend(!0, this.defaults, n)\n }),\n new n()\n )\n }\n ),\n u.define(\n 'select2/options',\n ['jquery', './defaults', './utils'],\n function (c, n, u) {\n function e(e, t) {\n ;(this.options = e),\n null != t && this.fromElement(t),\n null != t &&\n (this.options = n.applyFromElement(\n this.options,\n t\n )),\n (this.options = n.apply(this.options))\n }\n return (\n (e.prototype.fromElement = function (e) {\n var t = ['select2']\n null == this.options.multiple &&\n (this.options.multiple = e.prop('multiple')),\n null == this.options.disabled &&\n (this.options.disabled =\n e.prop('disabled')),\n null == this.options.autocomplete &&\n e.prop('autocomplete') &&\n (this.options.autocomplete =\n e.prop('autocomplete')),\n null == this.options.dir &&\n (e.prop('dir')\n ? (this.options.dir = e.prop('dir'))\n : e.closest('[dir]').prop('dir')\n ? (this.options.dir = e\n .closest('[dir]')\n .prop('dir'))\n : (this.options.dir = 'ltr')),\n e.prop('disabled', this.options.disabled),\n e.prop('multiple', this.options.multiple),\n u.GetData(e[0], 'select2Tags') &&\n (this.options.debug &&\n window.console &&\n console.warn &&\n console.warn(\n 'Select2: The `data-select2-tags` attribute has been changed to use the `data-data` and `data-tags=\"true\"` attributes and will be removed in future versions of Select2.'\n ),\n u.StoreData(\n e[0],\n 'data',\n u.GetData(e[0], 'select2Tags')\n ),\n u.StoreData(e[0], 'tags', !0)),\n u.GetData(e[0], 'ajaxUrl') &&\n (this.options.debug &&\n window.console &&\n console.warn &&\n console.warn(\n 'Select2: The `data-ajax-url` attribute has been changed to `data-ajax--url` and support for the old attribute will be removed in future versions of Select2.'\n ),\n e.attr(\n 'ajax--url',\n u.GetData(e[0], 'ajaxUrl')\n ),\n u.StoreData(\n e[0],\n 'ajax-Url',\n u.GetData(e[0], 'ajaxUrl')\n ))\n var n = {}\n function s(e, t) {\n return t.toUpperCase()\n }\n for (var i = 0; i < e[0].attributes.length; i++) {\n var r = e[0].attributes[i].name,\n o = 'data-'\n r.substr(0, o.length) == o &&\n ((r = r.substring(o.length)),\n (o = u.GetData(e[0], r)),\n (n[r.replace(/-([a-z])/g, s)] = o))\n }\n c.fn.jquery &&\n '1.' == c.fn.jquery.substr(0, 2) &&\n e[0].dataset &&\n (n = c.extend(!0, {}, e[0].dataset, n))\n var a,\n l = c.extend(!0, {}, u.GetData(e[0]), n)\n for (a in (l = u._convertData(l)))\n -1 < t.indexOf(a) ||\n (c.isPlainObject(this.options[a])\n ? c.extend(this.options[a], l[a])\n : (this.options[a] = l[a]))\n return this\n }),\n (e.prototype.get = function (e) {\n return this.options[e]\n }),\n (e.prototype.set = function (e, t) {\n this.options[e] = t\n }),\n e\n )\n }\n ),\n u.define(\n 'select2/core',\n ['jquery', './options', './utils', './keys'],\n function (t, i, r, s) {\n var o = function (e, t) {\n null != r.GetData(e[0], 'select2') &&\n r.GetData(e[0], 'select2').destroy(),\n (this.$element = e),\n (this.id = this._generateId(e)),\n (t = t || {}),\n (this.options = new i(t, e)),\n o.__super__.constructor.call(this)\n var n = e.attr('tabindex') || 0\n r.StoreData(e[0], 'old-tabindex', n),\n e.attr('tabindex', '-1')\n t = this.options.get('dataAdapter')\n this.dataAdapter = new t(e, this.options)\n n = this.render()\n this._placeContainer(n)\n t = this.options.get('selectionAdapter')\n ;(this.selection = new t(e, this.options)),\n (this.$selection = this.selection.render()),\n this.selection.position(this.$selection, n)\n t = this.options.get('dropdownAdapter')\n ;(this.dropdown = new t(e, this.options)),\n (this.$dropdown = this.dropdown.render()),\n this.dropdown.position(this.$dropdown, n)\n n = this.options.get('resultsAdapter')\n ;(this.results = new n(\n e,\n this.options,\n this.dataAdapter\n )),\n (this.$results = this.results.render()),\n this.results.position(this.$results, this.$dropdown)\n var s = this\n this._bindAdapters(),\n this._registerDomEvents(),\n this._registerDataEvents(),\n this._registerSelectionEvents(),\n this._registerDropdownEvents(),\n this._registerResultsEvents(),\n this._registerEvents(),\n this.dataAdapter.current(function (e) {\n s.trigger('selection:update', { data: e })\n }),\n e[0].classList.add('select2-hidden-accessible'),\n e.attr('aria-hidden', 'true'),\n this._syncAttributes(),\n r.StoreData(e[0], 'select2', this),\n e.data('select2', this)\n }\n return (\n r.Extend(o, r.Observable),\n (o.prototype._generateId = function (e) {\n return (\n 'select2-' +\n (null != e.attr('id')\n ? e.attr('id')\n : null != e.attr('name')\n ? e.attr('name') + '-' + r.generateChars(2)\n : r.generateChars(4)\n ).replace(/(:|\\.|\\[|\\]|,)/g, '')\n )\n }),\n (o.prototype._placeContainer = function (e) {\n e.insertAfter(this.$element)\n var t = this._resolveWidth(\n this.$element,\n this.options.get('width')\n )\n null != t && e.css('width', t)\n }),\n (o.prototype._resolveWidth = function (e, t) {\n var n =\n /^width:(([-+]?([0-9]*\\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i\n if ('resolve' == t) {\n var s = this._resolveWidth(e, 'style')\n return null != s\n ? s\n : this._resolveWidth(e, 'element')\n }\n if ('element' == t) {\n s = e.outerWidth(!1)\n return s <= 0 ? 'auto' : s + 'px'\n }\n if ('style' != t)\n return 'computedstyle' != t\n ? t\n : window.getComputedStyle(e[0]).width\n e = e.attr('style')\n if ('string' != typeof e) return null\n for (\n var i = e.split(';'), r = 0, o = i.length;\n r < o;\n r += 1\n ) {\n var a = i[r].replace(/\\s/g, '').match(n)\n if (null !== a && 1 <= a.length) return a[1]\n }\n return null\n }),\n (o.prototype._bindAdapters = function () {\n this.dataAdapter.bind(this, this.$container),\n this.selection.bind(this, this.$container),\n this.dropdown.bind(this, this.$container),\n this.results.bind(this, this.$container)\n }),\n (o.prototype._registerDomEvents = function () {\n var t = this\n this.$element.on('change.select2', function () {\n t.dataAdapter.current(function (e) {\n t.trigger('selection:update', { data: e })\n })\n }),\n this.$element.on('focus.select2', function (e) {\n t.trigger('focus', e)\n }),\n (this._syncA = r.bind(\n this._syncAttributes,\n this\n )),\n (this._syncS = r.bind(this._syncSubtree, this)),\n (this._observer = new window.MutationObserver(\n function (e) {\n t._syncA(), t._syncS(e)\n }\n )),\n this._observer.observe(this.$element[0], {\n attributes: !0,\n childList: !0,\n subtree: !1,\n })\n }),\n (o.prototype._registerDataEvents = function () {\n var n = this\n this.dataAdapter.on('*', function (e, t) {\n n.trigger(e, t)\n })\n }),\n (o.prototype._registerSelectionEvents = function () {\n var n = this,\n s = ['toggle', 'focus']\n this.selection.on('toggle', function () {\n n.toggleDropdown()\n }),\n this.selection.on('focus', function (e) {\n n.focus(e)\n }),\n this.selection.on('*', function (e, t) {\n ;-1 === s.indexOf(e) && n.trigger(e, t)\n })\n }),\n (o.prototype._registerDropdownEvents = function () {\n var n = this\n this.dropdown.on('*', function (e, t) {\n n.trigger(e, t)\n })\n }),\n (o.prototype._registerResultsEvents = function () {\n var n = this\n this.results.on('*', function (e, t) {\n n.trigger(e, t)\n })\n }),\n (o.prototype._registerEvents = function () {\n var n = this\n this.on('open', function () {\n n.$container[0].classList.add(\n 'select2-container--open'\n )\n }),\n this.on('close', function () {\n n.$container[0].classList.remove(\n 'select2-container--open'\n )\n }),\n this.on('enable', function () {\n n.$container[0].classList.remove(\n 'select2-container--disabled'\n )\n }),\n this.on('disable', function () {\n n.$container[0].classList.add(\n 'select2-container--disabled'\n )\n }),\n this.on('blur', function () {\n n.$container[0].classList.remove(\n 'select2-container--focus'\n )\n }),\n this.on('query', function (t) {\n n.isOpen() || n.trigger('open', {}),\n this.dataAdapter.query(t, function (e) {\n n.trigger('results:all', {\n data: e,\n query: t,\n })\n })\n }),\n this.on('query:append', function (t) {\n this.dataAdapter.query(t, function (e) {\n n.trigger('results:append', {\n data: e,\n query: t,\n })\n })\n }),\n this.on('keypress', function (e) {\n var t = e.which\n n.isOpen()\n ? t === s.ESC ||\n (t === s.UP && e.altKey)\n ? (n.close(e), e.preventDefault())\n : t === s.ENTER || t === s.TAB\n ? (n.trigger('results:select', {}),\n e.preventDefault())\n : t === s.SPACE && e.ctrlKey\n ? (n.trigger('results:toggle', {}),\n e.preventDefault())\n : t === s.UP\n ? (n.trigger(\n 'results:previous',\n {}\n ),\n e.preventDefault())\n : t === s.DOWN &&\n (n.trigger('results:next', {}),\n e.preventDefault())\n : (t === s.ENTER ||\n t === s.SPACE ||\n (t === s.DOWN && e.altKey)) &&\n (n.open(), e.preventDefault())\n })\n }),\n (o.prototype._syncAttributes = function () {\n this.options.set(\n 'disabled',\n this.$element.prop('disabled')\n ),\n this.isDisabled()\n ? (this.isOpen() && this.close(),\n this.trigger('disable', {}))\n : this.trigger('enable', {})\n }),\n (o.prototype._isChangeMutation = function (e) {\n var t = this\n if (e.addedNodes && 0 < e.addedNodes.length) {\n for (var n = 0; n < e.addedNodes.length; n++)\n if (e.addedNodes[n].selected) return !0\n } else {\n if (e.removedNodes && 0 < e.removedNodes.length)\n return !0\n if (Array.isArray(e))\n return e.some(function (e) {\n return t._isChangeMutation(e)\n })\n }\n return !1\n }),\n (o.prototype._syncSubtree = function (e) {\n var e = this._isChangeMutation(e),\n t = this\n e &&\n this.dataAdapter.current(function (e) {\n t.trigger('selection:update', { data: e })\n })\n }),\n (o.prototype.trigger = function (e, t) {\n var n = o.__super__.trigger,\n s = {\n open: 'opening',\n close: 'closing',\n select: 'selecting',\n unselect: 'unselecting',\n clear: 'clearing',\n }\n if ((void 0 === t && (t = {}), e in s)) {\n var i = s[e],\n s = { prevented: !1, name: e, args: t }\n if ((n.call(this, i, s), s.prevented))\n return void (t.prevented = !0)\n }\n n.call(this, e, t)\n }),\n (o.prototype.toggleDropdown = function () {\n this.isDisabled() ||\n (this.isOpen() ? this.close() : this.open())\n }),\n (o.prototype.open = function () {\n this.isOpen() ||\n this.isDisabled() ||\n this.trigger('query', {})\n }),\n (o.prototype.close = function (e) {\n this.isOpen() &&\n this.trigger('close', { originalEvent: e })\n }),\n (o.prototype.isEnabled = function () {\n return !this.isDisabled()\n }),\n (o.prototype.isDisabled = function () {\n return this.options.get('disabled')\n }),\n (o.prototype.isOpen = function () {\n return this.$container[0].classList.contains(\n 'select2-container--open'\n )\n }),\n (o.prototype.hasFocus = function () {\n return this.$container[0].classList.contains(\n 'select2-container--focus'\n )\n }),\n (o.prototype.focus = function (e) {\n this.hasFocus() ||\n (this.$container[0].classList.add(\n 'select2-container--focus'\n ),\n this.trigger('focus', {}))\n }),\n (o.prototype.enable = function (e) {\n this.options.get('debug') &&\n window.console &&\n console.warn &&\n console.warn(\n 'Select2: The `select2(\"enable\")` method has been deprecated and will be removed in later Select2 versions. Use $element.prop(\"disabled\") instead.'\n )\n e = !(e = null == e || 0 === e.length ? [!0] : e)[0]\n this.$element.prop('disabled', e)\n }),\n (o.prototype.data = function () {\n this.options.get('debug') &&\n 0 < arguments.length &&\n window.console &&\n console.warn &&\n console.warn(\n 'Select2: Data can no longer be set using `select2(\"data\")`. You should consider setting the value instead using `$element.val()`.'\n )\n var t = []\n return (\n this.dataAdapter.current(function (e) {\n t = e\n }),\n t\n )\n }),\n (o.prototype.val = function (e) {\n if (\n (this.options.get('debug') &&\n window.console &&\n console.warn &&\n console.warn(\n 'Select2: The `select2(\"val\")` method has been deprecated and will be removed in later Select2 versions. Use $element.val() instead.'\n ),\n null == e || 0 === e.length)\n )\n return this.$element.val()\n e = e[0]\n Array.isArray(e) &&\n (e = e.map(function (e) {\n return e.toString()\n })),\n this.$element\n .val(e)\n .trigger('input')\n .trigger('change')\n }),\n (o.prototype.destroy = function () {\n r.RemoveData(this.$container[0]),\n this.$container.remove(),\n this._observer.disconnect(),\n (this._observer = null),\n (this._syncA = null),\n (this._syncS = null),\n this.$element.off('.select2'),\n this.$element.attr(\n 'tabindex',\n r.GetData(this.$element[0], 'old-tabindex')\n ),\n this.$element[0].classList.remove(\n 'select2-hidden-accessible'\n ),\n this.$element.attr('aria-hidden', 'false'),\n r.RemoveData(this.$element[0]),\n this.$element.removeData('select2'),\n this.dataAdapter.destroy(),\n this.selection.destroy(),\n this.dropdown.destroy(),\n this.results.destroy(),\n (this.dataAdapter = null),\n (this.selection = null),\n (this.dropdown = null),\n (this.results = null)\n }),\n (o.prototype.render = function () {\n var e = t(\n '<span class=\"select2 select2-container\"><span class=\"selection\"></span><span class=\"dropdown-wrapper\" aria-hidden=\"true\"></span></span>'\n )\n return (\n e.attr('dir', this.options.get('dir')),\n (this.$container = e),\n this.$container[0].classList.add(\n 'select2-container--' +\n this.options.get('theme')\n ),\n r.StoreData(e[0], 'element', this.$element),\n e\n )\n }),\n o\n )\n }\n ),\n u.define('jquery-mousewheel', ['jquery'], function (e) {\n return e\n }),\n u.define(\n 'jquery.select2',\n [\n 'jquery',\n 'jquery-mousewheel',\n './select2/core',\n './select2/defaults',\n './select2/utils',\n ],\n function (i, e, r, t, o) {\n var a\n return (\n null == i.fn.select2 &&\n ((a = ['open', 'close', 'destroy']),\n (i.fn.select2 = function (t) {\n if ('object' == typeof (t = t || {}))\n return (\n this.each(function () {\n var e = i.extend(!0, {}, t)\n new r(i(this), e)\n }),\n this\n )\n if ('string' != typeof t)\n throw new Error(\n 'Invalid arguments for Select2: ' + t\n )\n var n,\n s = Array.prototype.slice.call(arguments, 1)\n return (\n this.each(function () {\n var e = o.GetData(this, 'select2')\n null == e &&\n window.console &&\n console.error &&\n console.error(\n \"The select2('\" +\n t +\n \"') method was called on an element that is not using Select2.\"\n ),\n (n = e[t].apply(e, s))\n }),\n -1 < a.indexOf(t) ? this : n\n )\n })),\n null == i.fn.select2.defaults &&\n (i.fn.select2.defaults = t),\n r\n )\n }\n ),\n { define: u.define, require: u.require })\n function b(e, t) {\n return i.call(e, t)\n }\n function l(e, t) {\n var n,\n s,\n i,\n r,\n o,\n a,\n l,\n c,\n u,\n d,\n p = t && t.split('/'),\n h = y.map,\n f = (h && h['*']) || {}\n if (e) {\n for (\n t = (e = e.split('/')).length - 1,\n y.nodeIdCompat &&\n _.test(e[t]) &&\n (e[t] = e[t].replace(_, '')),\n '.' === e[0].charAt(0) &&\n p &&\n (e = p.slice(0, p.length - 1).concat(e)),\n c = 0;\n c < e.length;\n c++\n )\n '.' === (d = e[c])\n ? (e.splice(c, 1), --c)\n : '..' === d &&\n (0 === c ||\n (1 === c && '..' === e[2]) ||\n '..' === e[c - 1] ||\n (0 < c && (e.splice(c - 1, 2), (c -= 2))))\n e = e.join('/')\n }\n if ((p || f) && h) {\n for (c = (n = e.split('/')).length; 0 < c; --c) {\n if (((s = n.slice(0, c).join('/')), p))\n for (u = p.length; 0 < u; --u)\n if (\n ((i = h[p.slice(0, u).join('/')]), (i = i && i[s]))\n ) {\n ;(r = i), (o = c)\n break\n }\n if (r) break\n !a && f && f[s] && ((a = f[s]), (l = c))\n }\n !r && a && ((r = a), (o = l)),\n r && (n.splice(0, o, r), (e = n.join('/')))\n }\n return e\n }\n function w(t, n) {\n return function () {\n var e = a.call(arguments, 0)\n return (\n 'string' != typeof e[0] && 1 === e.length && e.push(null),\n o.apply(p, e.concat([t, n]))\n )\n }\n }\n function x(e) {\n var t\n if (\n (b(m, e) && ((t = m[e]), delete m[e], (v[e] = !0), r.apply(p, t)),\n !b(g, e) && !b(v, e))\n )\n throw new Error('No ' + e)\n return g[e]\n }\n function c(e) {\n var t,\n n = e ? e.indexOf('!') : -1\n return (\n -1 < n &&\n ((t = e.substring(0, n)), (e = e.substring(n + 1, e.length))),\n [t, e]\n )\n }\n function A(e) {\n return e ? c(e) : []\n }\n var u = s.require('jquery.select2')\n return (t.fn.select2.amd = s), u\n})\n","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?e(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],e):e((t=\"undefined\"!=typeof globalThis?globalThis:t||self).noUiSlider={})}(this,function(ot){\"use strict\";function n(t){return\"object\"==typeof t&&\"function\"==typeof t.to}function st(t){t.parentElement.removeChild(t)}function at(t){return null!=t}function lt(t){t.preventDefault()}function i(t){return\"number\"==typeof t&&!isNaN(t)&&isFinite(t)}function ut(t,e,r){0<r&&(ft(t,e),setTimeout(function(){dt(t,e)},r))}function ct(t){return Math.max(Math.min(t,100),0)}function pt(t){return Array.isArray(t)?t:[t]}function e(t){t=(t=String(t)).split(\".\");return 1<t.length?t[1].length:0}function ft(t,e){t.classList&&!/\\s/.test(e)?t.classList.add(e):t.className+=\" \"+e}function dt(t,e){t.classList&&!/\\s/.test(e)?t.classList.remove(e):t.className=t.className.replace(new RegExp(\"(^|\\\\b)\"+e.split(\" \").join(\"|\")+\"(\\\\b|$)\",\"gi\"),\" \")}function ht(t){var e=void 0!==window.pageXOffset,r=\"CSS1Compat\"===(t.compatMode||\"\");return{x:e?window.pageXOffset:(r?t.documentElement:t.body).scrollLeft,y:e?window.pageYOffset:(r?t.documentElement:t.body).scrollTop}}function s(t,e){return 100/(e-t)}function a(t,e,r){return 100*e/(t[r+1]-t[r])}function l(t,e){for(var r=1;t>=e[r];)r+=1;return r}function r(t,e,r){if(r>=t.slice(-1)[0])return 100;var n=l(r,t),i=t[n-1],o=t[n],t=e[n-1],n=e[n];return t+(r=r,a(o=[i,o],o[0]<0?r+Math.abs(o[0]):r-o[0],0)/s(t,n))}function o(t,e,r,n){if(100===n)return n;var i=l(n,t),o=t[i-1],s=t[i];return r?(s-o)/2<n-o?s:o:e[i-1]?t[i-1]+(t=n-t[i-1],i=e[i-1],Math.round(t/i)*i):n}ot.PipsMode=void 0,(H=ot.PipsMode||(ot.PipsMode={})).Range=\"range\",H.Steps=\"steps\",H.Positions=\"positions\",H.Count=\"count\",H.Values=\"values\",ot.PipsType=void 0,(H=ot.PipsType||(ot.PipsType={}))[H.None=-1]=\"None\",H[H.NoValue=0]=\"NoValue\",H[H.LargeValue=1]=\"LargeValue\",H[H.SmallValue=2]=\"SmallValue\";var u=(t.prototype.getDistance=function(t){for(var e=[],r=0;r<this.xNumSteps.length-1;r++)e[r]=a(this.xVal,t,r);return e},t.prototype.getAbsoluteDistance=function(t,e,r){var n=0;if(t<this.xPct[this.xPct.length-1])for(;t>this.xPct[n+1];)n++;else t===this.xPct[this.xPct.length-1]&&(n=this.xPct.length-2);r||t!==this.xPct[n+1]||n++;for(var i,o=1,s=(e=null===e?[]:e)[n],a=0,l=0,u=0,c=r?(t-this.xPct[n])/(this.xPct[n+1]-this.xPct[n]):(this.xPct[n+1]-t)/(this.xPct[n+1]-this.xPct[n]);0<s;)i=this.xPct[n+1+u]-this.xPct[n+u],100<e[n+u]*o+100-100*c?(a=i*c,o=(s-100*c)/e[n+u],c=1):(a=e[n+u]*i/100*o,o=0),r?(l-=a,1<=this.xPct.length+u&&u--):(l+=a,1<=this.xPct.length-u&&u++),s=e[n+u]*o;return t+l},t.prototype.toStepping=function(t){return t=r(this.xVal,this.xPct,t)},t.prototype.fromStepping=function(t){return function(t,e,r){if(100<=r)return t.slice(-1)[0];var n=l(r,e),i=t[n-1],o=t[n],t=e[n-1],n=e[n];return(r-t)*s(t,n)*((o=[i,o])[1]-o[0])/100+o[0]}(this.xVal,this.xPct,t)},t.prototype.getStep=function(t){return t=o(this.xPct,this.xSteps,this.snap,t)},t.prototype.getDefaultStep=function(t,e,r){var n=l(t,this.xPct);return(100===t||e&&t===this.xPct[n-1])&&(n=Math.max(n-1,1)),(this.xVal[n]-this.xVal[n-1])/r},t.prototype.getNearbySteps=function(t){t=l(t,this.xPct);return{stepBefore:{startValue:this.xVal[t-2],step:this.xNumSteps[t-2],highestStep:this.xHighestCompleteStep[t-2]},thisStep:{startValue:this.xVal[t-1],step:this.xNumSteps[t-1],highestStep:this.xHighestCompleteStep[t-1]},stepAfter:{startValue:this.xVal[t],step:this.xNumSteps[t],highestStep:this.xHighestCompleteStep[t]}}},t.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(e);return Math.max.apply(null,t)},t.prototype.hasNoSize=function(){return this.xVal[0]===this.xVal[this.xVal.length-1]},t.prototype.convert=function(t){return this.getStep(this.toStepping(t))},t.prototype.handleEntryPoint=function(t,e){t=\"min\"===t?0:\"max\"===t?100:parseFloat(t);if(!i(t)||!i(e[0]))throw new Error(\"noUiSlider: 'range' value isn't numeric.\");this.xPct.push(t),this.xVal.push(e[0]);e=Number(e[1]);t?this.xSteps.push(!isNaN(e)&&e):isNaN(e)||(this.xSteps[0]=e),this.xHighestCompleteStep.push(0)},t.prototype.handleStepPoint=function(t,e){e&&(this.xVal[t]!==this.xVal[t+1]?(this.xSteps[t]=a([this.xVal[t],this.xVal[t+1]],e,0)/s(this.xPct[t],this.xPct[t+1]),e=(this.xVal[t+1]-this.xVal[t])/this.xNumSteps[t],e=Math.ceil(Number(e.toFixed(3))-1),e=this.xVal[t]+this.xNumSteps[t]*e,this.xHighestCompleteStep[t]=e):this.xSteps[t]=this.xHighestCompleteStep[t]=this.xVal[t])},t);function t(e,t,r){var n;this.xPct=[],this.xVal=[],this.xSteps=[],this.xNumSteps=[],this.xHighestCompleteStep=[],this.xSteps=[r||!1],this.xNumSteps=[!1],this.snap=t;var i=[];for(Object.keys(e).forEach(function(t){i.push([pt(e[t]),t])}),i.sort(function(t,e){return t[0][0]-e[0][0]}),n=0;n<i.length;n++)this.handleEntryPoint(i[n][1],i[n][0]);for(this.xNumSteps=this.xSteps.slice(0),n=0;n<this.xNumSteps.length;n++)this.handleStepPoint(n,this.xNumSteps[n])}var c={to:function(t){return void 0===t?\"\":t.toFixed(2)},from:Number},p={target:\"target\",base:\"base\",origin:\"origin\",handle:\"handle\",handleLower:\"handle-lower\",handleUpper:\"handle-upper\",touchArea:\"touch-area\",horizontal:\"horizontal\",vertical:\"vertical\",background:\"background\",connect:\"connect\",connects:\"connects\",ltr:\"ltr\",rtl:\"rtl\",textDirectionLtr:\"txt-dir-ltr\",textDirectionRtl:\"txt-dir-rtl\",draggable:\"draggable\",drag:\"state-drag\",tap:\"state-tap\",active:\"active\",tooltip:\"tooltip\",pips:\"pips\",pipsHorizontal:\"pips-horizontal\",pipsVertical:\"pips-vertical\",marker:\"marker\",markerHorizontal:\"marker-horizontal\",markerVertical:\"marker-vertical\",markerNormal:\"marker-normal\",markerLarge:\"marker-large\",markerSub:\"marker-sub\",value:\"value\",valueHorizontal:\"value-horizontal\",valueVertical:\"value-vertical\",valueNormal:\"value-normal\",valueLarge:\"value-large\",valueSub:\"value-sub\"},mt={tooltips:\".__tooltips\",aria:\".__aria\"};function f(t,e){if(!i(e))throw new Error(\"noUiSlider: 'step' is not numeric.\");t.singleStep=e}function d(t,e){if(!i(e))throw new Error(\"noUiSlider: 'keyboardPageMultiplier' is not numeric.\");t.keyboardPageMultiplier=e}function h(t,e){if(!i(e))throw new Error(\"noUiSlider: 'keyboardMultiplier' is not numeric.\");t.keyboardMultiplier=e}function m(t,e){if(!i(e))throw new Error(\"noUiSlider: 'keyboardDefaultStep' is not numeric.\");t.keyboardDefaultStep=e}function g(t,e){if(\"object\"!=typeof e||Array.isArray(e))throw new Error(\"noUiSlider: 'range' is not an object.\");if(void 0===e.min||void 0===e.max)throw new Error(\"noUiSlider: Missing 'min' or 'max' in 'range'.\");t.spectrum=new u(e,t.snap||!1,t.singleStep)}function v(t,e){if(e=pt(e),!Array.isArray(e)||!e.length)throw new Error(\"noUiSlider: 'start' option is incorrect.\");t.handles=e.length,t.start=e}function b(t,e){if(\"boolean\"!=typeof e)throw new Error(\"noUiSlider: 'snap' option must be a boolean.\");t.snap=e}function S(t,e){if(\"boolean\"!=typeof e)throw new Error(\"noUiSlider: 'animate' option must be a boolean.\");t.animate=e}function x(t,e){if(\"number\"!=typeof e)throw new Error(\"noUiSlider: 'animationDuration' option must be a number.\");t.animationDuration=e}function y(t,e){var r,n=[!1];if(\"lower\"===e?e=[!0,!1]:\"upper\"===e&&(e=[!1,!0]),!0===e||!1===e){for(r=1;r<t.handles;r++)n.push(e);n.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==t.handles+1)throw new Error(\"noUiSlider: 'connect' option doesn't match handle count.\");n=e}t.connect=n}function w(t,e){switch(e){case\"horizontal\":t.ort=0;break;case\"vertical\":t.ort=1;break;default:throw new Error(\"noUiSlider: 'orientation' option is invalid.\")}}function E(t,e){if(!i(e))throw new Error(\"noUiSlider: 'margin' option must be numeric.\");0!==e&&(t.margin=t.spectrum.getDistance(e))}function P(t,e){if(!i(e))throw new Error(\"noUiSlider: 'limit' option must be numeric.\");if(t.limit=t.spectrum.getDistance(e),!t.limit||t.handles<2)throw new Error(\"noUiSlider: 'limit' option is only supported on linear sliders with 2 or more handles.\")}function C(t,e){var r;if(!i(e)&&!Array.isArray(e))throw new Error(\"noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.\");if(Array.isArray(e)&&2!==e.length&&!i(e[0])&&!i(e[1]))throw new Error(\"noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.\");if(0!==e){for(Array.isArray(e)||(e=[e,e]),t.padding=[t.spectrum.getDistance(e[0]),t.spectrum.getDistance(e[1])],r=0;r<t.spectrum.xNumSteps.length-1;r++)if(t.padding[0][r]<0||t.padding[1][r]<0)throw new Error(\"noUiSlider: 'padding' option must be a positive number(s).\");var n=e[0]+e[1],e=t.spectrum.xVal[0];if(1<n/(t.spectrum.xVal[t.spectrum.xVal.length-1]-e))throw new Error(\"noUiSlider: 'padding' option must not exceed 100% of the range.\")}}function N(t,e){switch(e){case\"ltr\":t.dir=0;break;case\"rtl\":t.dir=1;break;default:throw new Error(\"noUiSlider: 'direction' option was not recognized.\")}}function V(t,e){if(\"string\"!=typeof e)throw new Error(\"noUiSlider: 'behaviour' must be a string containing options.\");var r=0<=e.indexOf(\"tap\"),n=0<=e.indexOf(\"drag\"),i=0<=e.indexOf(\"fixed\"),o=0<=e.indexOf(\"snap\"),s=0<=e.indexOf(\"hover\"),a=0<=e.indexOf(\"unconstrained\"),l=0<=e.indexOf(\"drag-all\"),e=0<=e.indexOf(\"smooth-steps\");if(i){if(2!==t.handles)throw new Error(\"noUiSlider: 'fixed' behaviour must be used with 2 handles\");E(t,t.start[1]-t.start[0])}if(a&&(t.margin||t.limit))throw new Error(\"noUiSlider: 'unconstrained' behaviour cannot be used with margin or limit\");t.events={tap:r||o,drag:n,dragAll:l,smoothSteps:e,fixed:i,snap:o,hover:s,unconstrained:a}}function k(t,e){if(!1!==e)if(!0===e||n(e)){t.tooltips=[];for(var r=0;r<t.handles;r++)t.tooltips.push(e)}else{if((e=pt(e)).length!==t.handles)throw new Error(\"noUiSlider: must pass a formatter for all handles.\");e.forEach(function(t){if(\"boolean\"!=typeof t&&!n(t))throw new Error(\"noUiSlider: 'tooltips' must be passed a formatter or 'false'.\")}),t.tooltips=e}}function M(t,e){if(e.length!==t.handles)throw new Error(\"noUiSlider: must pass a attributes for all handles.\");t.handleAttributes=e}function A(t,e){if(!n(e))throw new Error(\"noUiSlider: 'ariaFormat' requires 'to' method.\");t.ariaFormat=e}function U(t,e){if(!n(r=e)||\"function\"!=typeof r.from)throw new Error(\"noUiSlider: 'format' requires 'to' and 'from' methods.\");var r;t.format=e}function D(t,e){if(\"boolean\"!=typeof e)throw new Error(\"noUiSlider: 'keyboardSupport' option must be a boolean.\");t.keyboardSupport=e}function O(t,e){t.documentElement=e}function L(t,e){if(\"string\"!=typeof e&&!1!==e)throw new Error(\"noUiSlider: 'cssPrefix' must be a string or `false`.\");t.cssPrefix=e}function T(e,r){if(\"object\"!=typeof r)throw new Error(\"noUiSlider: 'cssClasses' must be an object.\");\"string\"==typeof e.cssPrefix?(e.cssClasses={},Object.keys(r).forEach(function(t){e.cssClasses[t]=e.cssPrefix+r[t]})):e.cssClasses=r}function gt(e){var r={margin:null,limit:null,padding:null,animate:!0,animationDuration:300,ariaFormat:c,format:c},n={step:{r:!1,t:f},keyboardPageMultiplier:{r:!1,t:d},keyboardMultiplier:{r:!1,t:h},keyboardDefaultStep:{r:!1,t:m},start:{r:!0,t:v},connect:{r:!0,t:y},direction:{r:!0,t:N},snap:{r:!1,t:b},animate:{r:!1,t:S},animationDuration:{r:!1,t:x},range:{r:!0,t:g},orientation:{r:!1,t:w},margin:{r:!1,t:E},limit:{r:!1,t:P},padding:{r:!1,t:C},behaviour:{r:!0,t:V},ariaFormat:{r:!1,t:A},format:{r:!1,t:U},tooltips:{r:!1,t:k},keyboardSupport:{r:!0,t:D},documentElement:{r:!1,t:O},cssPrefix:{r:!0,t:L},cssClasses:{r:!0,t:T},handleAttributes:{r:!1,t:M}},i={connect:!1,direction:\"ltr\",behaviour:\"tap\",orientation:\"horizontal\",keyboardSupport:!0,cssPrefix:\"noUi-\",cssClasses:p,keyboardPageMultiplier:5,keyboardMultiplier:1,keyboardDefaultStep:10};e.format&&!e.ariaFormat&&(e.ariaFormat=e.format),Object.keys(n).forEach(function(t){if(at(e[t])||void 0!==i[t])n[t].t(r,(at(e[t])?e:i)[t]);else if(n[t].r)throw new Error(\"noUiSlider: '\"+t+\"' is required.\")}),r.pips=e.pips;var t=document.createElement(\"div\"),o=void 0!==t.style.msTransform,t=void 0!==t.style.transform;r.transformRule=t?\"transform\":o?\"msTransform\":\"webkitTransform\";return r.style=[[\"left\",\"top\"],[\"right\",\"bottom\"]][r.dir][r.ort],r}function j(t,f,o){var i,l,a,n,s,u,c=window.navigator.pointerEnabled?{start:\"pointerdown\",move:\"pointermove\",end:\"pointerup\"}:window.navigator.msPointerEnabled?{start:\"MSPointerDown\",move:\"MSPointerMove\",end:\"MSPointerUp\"}:{start:\"mousedown touchstart\",move:\"mousemove touchmove\",end:\"mouseup touchend\"},p=window.CSS&&CSS.supports&&CSS.supports(\"touch-action\",\"none\")&&function(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e)}catch(t){}return t}(),d=t,S=f.spectrum,h=[],m=[],g=[],v=0,b={},x=t.ownerDocument,y=f.documentElement||x.documentElement,w=x.body,E=\"rtl\"===x.dir||1===f.ort?0:100;function P(t,e){var r=x.createElement(\"div\");return e&&ft(r,e),t.appendChild(r),r}function C(t,e){var r,t=P(t,f.cssClasses.origin),n=P(t,f.cssClasses.handle);return P(n,f.cssClasses.touchArea),n.setAttribute(\"data-handle\",String(e)),f.keyboardSupport&&(n.setAttribute(\"tabindex\",\"0\"),n.addEventListener(\"keydown\",function(t){return function(t,e){if(V()||k(e))return!1;var r=[\"Left\",\"Right\"],n=[\"Down\",\"Up\"],i=[\"PageDown\",\"PageUp\"],o=[\"Home\",\"End\"];f.dir&&!f.ort?r.reverse():f.ort&&!f.dir&&(n.reverse(),i.reverse());var s=t.key.replace(\"Arrow\",\"\"),a=s===i[0],l=s===i[1],i=s===n[0]||s===r[0]||a,n=s===n[1]||s===r[1]||l,r=s===o[0],o=s===o[1];if(!(i||n||r||o))return!0;if(t.preventDefault(),n||i){var u=i?0:1,u=nt(e)[u];if(null===u)return!1;!1===u&&(u=S.getDefaultStep(m[e],i,f.keyboardDefaultStep)),u*=l||a?f.keyboardPageMultiplier:f.keyboardMultiplier,u=Math.max(u,1e-7),u*=i?-1:1,u=h[e]+u}else u=o?f.spectrum.xVal[f.spectrum.xVal.length-1]:f.spectrum.xVal[0];return Q(e,S.toStepping(u),!0,!0),I(\"slide\",e),I(\"update\",e),I(\"change\",e),I(\"set\",e),!1}(t,e)})),void 0!==f.handleAttributes&&(r=f.handleAttributes[e],Object.keys(r).forEach(function(t){n.setAttribute(t,r[t])})),n.setAttribute(\"role\",\"slider\"),n.setAttribute(\"aria-orientation\",f.ort?\"vertical\":\"horizontal\"),0===e?ft(n,f.cssClasses.handleLower):e===f.handles-1&&ft(n,f.cssClasses.handleUpper),t}function N(t,e){return!!e&&P(t,f.cssClasses.connect)}function e(t,e){return!(!f.tooltips||!f.tooltips[e])&&P(t.firstChild,f.cssClasses.tooltip)}function V(){return d.hasAttribute(\"disabled\")}function k(t){return l[t].hasAttribute(\"disabled\")}function M(){s&&(Y(\"update\"+mt.tooltips),s.forEach(function(t){t&&st(t)}),s=null)}function A(){M(),s=l.map(e),X(\"update\"+mt.tooltips,function(t,e,r){s&&f.tooltips&&!1!==s[e]&&(t=t[e],!0!==f.tooltips[e]&&(t=f.tooltips[e].to(r[e])),s[e].innerHTML=t)})}function U(t,e){return t.map(function(t){return S.fromStepping(e?S.getStep(t):t)})}function D(d){var h=function(t){if(t.mode===ot.PipsMode.Range||t.mode===ot.PipsMode.Steps)return S.xVal;if(t.mode!==ot.PipsMode.Count)return t.mode===ot.PipsMode.Positions?U(t.values,t.stepped):t.mode===ot.PipsMode.Values?t.stepped?t.values.map(function(t){return S.fromStepping(S.getStep(S.toStepping(t)))}):t.values:[];if(t.values<2)throw new Error(\"noUiSlider: 'values' (>= 2) required for mode 'count'.\");for(var e=t.values-1,r=100/e,n=[];e--;)n[e]=e*r;return n.push(100),U(n,t.stepped)}(d),m={},t=S.xVal[0],e=S.xVal[S.xVal.length-1],g=!1,v=!1,b=0;return(h=h.slice().sort(function(t,e){return t-e}).filter(function(t){return!this[t]&&(this[t]=!0)},{}))[0]!==t&&(h.unshift(t),g=!0),h[h.length-1]!==e&&(h.push(e),v=!0),h.forEach(function(t,e){var r,n,i,o,s,a,l,u,t=t,c=h[e+1],p=d.mode===ot.PipsMode.Steps,f=(f=p?S.xNumSteps[e]:f)||c-t;for(void 0===c&&(c=t),f=Math.max(f,1e-7),r=t;r<=c;r=Number((r+f).toFixed(7))){for(a=(o=(i=S.toStepping(r))-b)/(d.density||1),u=o/(l=Math.round(a)),n=1;n<=l;n+=1)m[(s=b+n*u).toFixed(5)]=[S.fromStepping(s),0];a=-1<h.indexOf(r)?ot.PipsType.LargeValue:p?ot.PipsType.SmallValue:ot.PipsType.NoValue,!e&&g&&r!==c&&(a=0),r===c&&v||(m[i.toFixed(5)]=[r,a]),b=i}}),m}function O(i,o,s){var t,a=x.createElement(\"div\"),n=((t={})[ot.PipsType.None]=\"\",t[ot.PipsType.NoValue]=f.cssClasses.valueNormal,t[ot.PipsType.LargeValue]=f.cssClasses.valueLarge,t[ot.PipsType.SmallValue]=f.cssClasses.valueSub,t),l=((t={})[ot.PipsType.None]=\"\",t[ot.PipsType.NoValue]=f.cssClasses.markerNormal,t[ot.PipsType.LargeValue]=f.cssClasses.markerLarge,t[ot.PipsType.SmallValue]=f.cssClasses.markerSub,t),u=[f.cssClasses.valueHorizontal,f.cssClasses.valueVertical],c=[f.cssClasses.markerHorizontal,f.cssClasses.markerVertical];function p(t,e){var r=e===f.cssClasses.value;return e+\" \"+(r?u:c)[f.ort]+\" \"+(r?n:l)[t]}return ft(a,f.cssClasses.pips),ft(a,0===f.ort?f.cssClasses.pipsHorizontal:f.cssClasses.pipsVertical),Object.keys(i).forEach(function(t){var e,r,n;r=i[e=t][0],n=i[t][1],(n=o?o(r,n):n)!==ot.PipsType.None&&((t=P(a,!1)).className=p(n,f.cssClasses.marker),t.style[f.style]=e+\"%\",n>ot.PipsType.NoValue&&((t=P(a,!1)).className=p(n,f.cssClasses.value),t.setAttribute(\"data-value\",String(r)),t.style[f.style]=e+\"%\",t.innerHTML=String(s.to(r))))}),a}function L(){n&&(st(n),n=null)}function T(t){L();var e=D(t),r=t.filter,t=t.format||{to:function(t){return String(Math.round(t))}};return n=d.appendChild(O(e,r,t))}function j(){var t=i.getBoundingClientRect(),e=\"offset\"+[\"Width\",\"Height\"][f.ort];return 0===f.ort?t.width||i[e]:t.height||i[e]}function z(n,i,o,s){function e(t){var e,r=function(e,t,r){var n=0===e.type.indexOf(\"touch\"),i=0===e.type.indexOf(\"mouse\"),o=0===e.type.indexOf(\"pointer\"),s=0,a=0;0===e.type.indexOf(\"MSPointer\")&&(o=!0);if(\"mousedown\"===e.type&&!e.buttons&&!e.touches)return!1;if(n){var l=function(t){t=t.target;return t===r||r.contains(t)||e.composed&&e.composedPath().shift()===r};if(\"touchstart\"===e.type){n=Array.prototype.filter.call(e.touches,l);if(1<n.length)return!1;s=n[0].pageX,a=n[0].pageY}else{l=Array.prototype.find.call(e.changedTouches,l);if(!l)return!1;s=l.pageX,a=l.pageY}}t=t||ht(x),(i||o)&&(s=e.clientX+t.x,a=e.clientY+t.y);return e.pageOffset=t,e.points=[s,a],e.cursor=i||o,e}(t,s.pageOffset,s.target||i);return!!r&&(!(V()&&!s.doNotReject)&&(e=d,t=f.cssClasses.tap,!((e.classList?e.classList.contains(t):new RegExp(\"\\\\b\"+t+\"\\\\b\").test(e.className))&&!s.doNotReject)&&(!(n===c.start&&void 0!==r.buttons&&1<r.buttons)&&((!s.hover||!r.buttons)&&(p||r.preventDefault(),r.calcPoint=r.points[f.ort],void o(r,s))))))}var r=[];return n.split(\" \").forEach(function(t){i.addEventListener(t,e,!!p&&{passive:!0}),r.push([t,e])}),r}function H(t){var e,r,n=ct(n=100*(t-(n=i,e=f.ort,r=n.getBoundingClientRect(),n=(t=n.ownerDocument).documentElement,t=ht(t),/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(t.x=0),e?r.top+t.y-n.clientTop:r.left+t.x-n.clientLeft))/j());return f.dir?100-n:n}function F(t,e){\"mouseout\"===t.type&&\"HTML\"===t.target.nodeName&&null===t.relatedTarget&&_(t,e)}function R(t,e){if(-1===navigator.appVersion.indexOf(\"MSIE 9\")&&0===t.buttons&&0!==e.buttonsProperty)return _(t,e);t=(f.dir?-1:1)*(t.calcPoint-e.startCalcPoint);G(0<t,100*t/e.baseSize,e.locations,e.handleNumbers,e.connect)}function _(t,e){e.handle&&(dt(e.handle,f.cssClasses.active),--v),e.listeners.forEach(function(t){y.removeEventListener(t[0],t[1])}),0===v&&(dt(d,f.cssClasses.drag),K(),t.cursor&&(w.style.cursor=\"\",w.removeEventListener(\"selectstart\",lt))),f.events.smoothSteps&&(e.handleNumbers.forEach(function(t){Q(t,m[t],!0,!0,!1,!1)}),e.handleNumbers.forEach(function(t){I(\"update\",t)})),e.handleNumbers.forEach(function(t){I(\"change\",t),I(\"set\",t),I(\"end\",t)})}function B(t,e){var r,n,i,o;e.handleNumbers.some(k)||(1===e.handleNumbers.length&&(o=l[e.handleNumbers[0]].children[0],v+=1,ft(o,f.cssClasses.active)),t.stopPropagation(),n=z(c.move,y,R,{target:t.target,handle:o,connect:e.connect,listeners:r=[],startCalcPoint:t.calcPoint,baseSize:j(),pageOffset:t.pageOffset,handleNumbers:e.handleNumbers,buttonsProperty:t.buttons,locations:m.slice()}),i=z(c.end,y,_,{target:t.target,handle:o,listeners:r,doNotReject:!0,handleNumbers:e.handleNumbers}),o=z(\"mouseout\",y,F,{target:t.target,handle:o,listeners:r,doNotReject:!0,handleNumbers:e.handleNumbers}),r.push.apply(r,n.concat(i,o)),t.cursor&&(w.style.cursor=getComputedStyle(t.target).cursor,1<l.length&&ft(d,f.cssClasses.drag),w.addEventListener(\"selectstart\",lt,!1)),e.handleNumbers.forEach(function(t){I(\"start\",t)}))}function r(t){t.stopPropagation();var i,o,s,e=H(t.calcPoint),r=(i=e,s=!(o=100),l.forEach(function(t,e){var r,n;k(e)||(r=m[e],((n=Math.abs(r-i))<o||n<=o&&r<i||100===n&&100===o)&&(s=e,o=n))}),s);!1!==r&&(f.events.snap||ut(d,f.cssClasses.tap,f.animationDuration),Q(r,e,!0,!0),K(),I(\"slide\",r,!0),I(\"update\",r,!0),f.events.snap?B(t,{handleNumbers:[r]}):(I(\"change\",r,!0),I(\"set\",r,!0)))}function q(t){var t=H(t.calcPoint),t=S.getStep(t),e=S.fromStepping(t);Object.keys(b).forEach(function(t){\"hover\"===t.split(\".\")[0]&&b[t].forEach(function(t){t.call(it,e)})})}function X(t,e){b[t]=b[t]||[],b[t].push(e),\"update\"===t.split(\".\")[0]&&l.forEach(function(t,e){I(\"update\",e)})}function Y(t){var n=t&&t.split(\".\")[0],i=n?t.substring(n.length):t;Object.keys(b).forEach(function(t){var e=t.split(\".\")[0],r=t.substring(e.length);n&&n!==e||i&&i!==r||((e=r)!==mt.aria&&e!==mt.tooltips||i===r)&&delete b[t]})}function I(r,n,i){Object.keys(b).forEach(function(t){var e=t.split(\".\")[0];r===e&&b[t].forEach(function(t){t.call(it,h.map(f.format.to),n,h.slice(),i||!1,m.slice(),it)})})}function W(t,e,r,n,i,o,s){var a;return 1<l.length&&!f.events.unconstrained&&(n&&0<e&&(a=S.getAbsoluteDistance(t[e-1],f.margin,!1),r=Math.max(r,a)),i&&e<l.length-1&&(a=S.getAbsoluteDistance(t[e+1],f.margin,!0),r=Math.min(r,a))),1<l.length&&f.limit&&(n&&0<e&&(a=S.getAbsoluteDistance(t[e-1],f.limit,!1),r=Math.min(r,a)),i&&e<l.length-1&&(a=S.getAbsoluteDistance(t[e+1],f.limit,!0),r=Math.max(r,a))),f.padding&&(0===e&&(a=S.getAbsoluteDistance(0,f.padding[0],!1),r=Math.max(r,a)),e===l.length-1&&(a=S.getAbsoluteDistance(100,f.padding[1],!0),r=Math.min(r,a))),!((r=ct(r=!s?S.getStep(r):r))===t[e]&&!o)&&r}function $(t,e){var r=f.ort;return(r?e:t)+\", \"+(r?t:e)}function G(t,r,n,e,i){var o=n.slice(),s=e[0],a=f.events.smoothSteps,l=[!t,t],u=[t,!t];e=e.slice(),t&&e.reverse(),1<e.length?e.forEach(function(t,e){e=W(o,t,o[t]+r,l[e],u[e],!1,a);!1===e?r=0:(r=e-o[t],o[t]=e)}):l=u=[!0];var c=!1;e.forEach(function(t,e){c=Q(t,n[t]+r,l[e],u[e],!1,a)||c}),c&&(e.forEach(function(t){I(\"update\",t),I(\"slide\",t)}),null!=i&&I(\"drag\",s))}function J(t,e){return f.dir?100-t-e:t}function K(){g.forEach(function(t){var e=50<m[t]?-1:1,e=3+(l.length+e*t);l[t].style.zIndex=String(e)})}function Q(t,e,r,n,i,o){return!1!==(e=i?e:W(m,t,e,r,n,!1,o))&&(e=e,m[t=t]=e,h[t]=S.fromStepping(e),e=\"translate(\"+$(J(e,0)-E+\"%\",\"0\")+\")\",l[t].style[f.transformRule]=e,Z(t),Z(t+1),!0)}function Z(t){var e,r;a[t]&&(r=100,e=\"translate(\"+$(J(e=(e=0)!==t?m[t-1]:e,r=(r=t!==a.length-1?m[t]:r)-e)+\"%\",\"0\")+\")\",r=\"scale(\"+$(r/100,\"1\")+\")\",a[t].style[f.transformRule]=e+\" \"+r)}function tt(t,e){return null===t||!1===t||void 0===t?m[e]:(\"number\"==typeof t&&(t=String(t)),!1===(t=!1!==(t=f.format.from(t))?S.toStepping(t):t)||isNaN(t)?m[e]:t)}function et(t,e,r){var n=pt(t),t=void 0===m[0];e=void 0===e||e,f.animate&&!t&&ut(d,f.cssClasses.tap,f.animationDuration),g.forEach(function(t){Q(t,tt(n[t],t),!0,!1,r)});var i,o=1===g.length?0:1;for(t&&S.hasNoSize()&&(r=!0,m[0]=0,1<g.length&&(i=100/(g.length-1),g.forEach(function(t){m[t]=t*i})));o<g.length;++o)g.forEach(function(t){Q(t,m[t],!0,!0,r)});K(),g.forEach(function(t){I(\"update\",t),null!==n[t]&&e&&I(\"set\",t)})}function rt(t){if(t=void 0===t?!1:t)return 1===h.length?h[0]:h.slice(0);t=h.map(f.format.to);return 1===t.length?t[0]:t}function nt(t){var e=m[t],r=S.getNearbySteps(e),n=h[t],i=r.thisStep.step,t=null;if(f.snap)return[n-r.stepBefore.startValue||null,r.stepAfter.startValue-n||null];!1!==i&&n+i>r.stepAfter.startValue&&(i=r.stepAfter.startValue-n),t=n>r.thisStep.startValue?r.thisStep.step:!1!==r.stepBefore.step&&n-r.stepBefore.highestStep,100===e?i=null:0===e&&(t=null);e=S.countStepDecimals();return null!==i&&!1!==i&&(i=Number(i.toFixed(e))),[t=null!==t&&!1!==t?Number(t.toFixed(e)):t,i]}ft(t=d,f.cssClasses.target),0===f.dir?ft(t,f.cssClasses.ltr):ft(t,f.cssClasses.rtl),0===f.ort?ft(t,f.cssClasses.horizontal):ft(t,f.cssClasses.vertical),ft(t,\"rtl\"===getComputedStyle(t).direction?f.cssClasses.textDirectionRtl:f.cssClasses.textDirectionLtr),i=P(t,f.cssClasses.base),function(t,e){var r=P(e,f.cssClasses.connects);l=[],(a=[]).push(N(r,t[0]));for(var n=0;n<f.handles;n++)l.push(C(e,n)),g[n]=n,a.push(N(r,t[n+1]))}(f.connect,i),(u=f.events).fixed||l.forEach(function(t,e){z(c.start,t.children[0],B,{handleNumbers:[e]})}),u.tap&&z(c.start,i,r,{}),u.hover&&z(c.move,i,q,{hover:!0}),u.drag&&a.forEach(function(e,t){var r,n,i,o,s;!1!==e&&0!==t&&t!==a.length-1&&(r=l[t-1],n=l[t],i=[e],o=[r,n],s=[t-1,t],ft(e,f.cssClasses.draggable),u.fixed&&(i.push(r.children[0]),i.push(n.children[0])),u.dragAll&&(o=l,s=g),i.forEach(function(t){z(c.start,t,B,{handles:o,handleNumbers:s,connect:e})}))}),et(f.start),f.pips&&T(f.pips),f.tooltips&&A(),Y(\"update\"+mt.aria),X(\"update\"+mt.aria,function(t,e,o,r,s){g.forEach(function(t){var e=l[t],r=W(m,t,0,!0,!0,!0),n=W(m,t,100,!0,!0,!0),i=s[t],t=String(f.ariaFormat.to(o[t])),r=S.fromStepping(r).toFixed(1),n=S.fromStepping(n).toFixed(1),i=S.fromStepping(i).toFixed(1);e.children[0].setAttribute(\"aria-valuemin\",r),e.children[0].setAttribute(\"aria-valuemax\",n),e.children[0].setAttribute(\"aria-valuenow\",i),e.children[0].setAttribute(\"aria-valuetext\",t)})});var it={destroy:function(){for(Y(mt.aria),Y(mt.tooltips),Object.keys(f.cssClasses).forEach(function(t){dt(d,f.cssClasses[t])});d.firstChild;)d.removeChild(d.firstChild);delete d.noUiSlider},steps:function(){return g.map(nt)},on:X,off:Y,get:rt,set:et,setHandle:function(t,e,r,n){if(!(0<=(t=Number(t))&&t<g.length))throw new Error(\"noUiSlider: invalid handle number, got: \"+t);Q(t,tt(e,t),!0,!0,n),I(\"update\",t),r&&I(\"set\",t)},reset:function(t){et(f.start,t)},__moveHandles:function(t,e,r){G(t,e,m,r)},options:o,updateOptions:function(e,t){var r=rt(),n=[\"margin\",\"limit\",\"padding\",\"range\",\"animate\",\"snap\",\"step\",\"format\",\"pips\",\"tooltips\"];n.forEach(function(t){void 0!==e[t]&&(o[t]=e[t])});var i=gt(o);n.forEach(function(t){void 0!==e[t]&&(f[t]=i[t])}),S=i.spectrum,f.margin=i.margin,f.limit=i.limit,f.padding=i.padding,f.pips?T(f.pips):L(),(f.tooltips?A:M)(),m=[],et(at(e.start)?e.start:r,t)},target:d,removePips:L,removeTooltips:M,getPositions:function(){return m.slice()},getTooltips:function(){return s},getOrigins:function(){return l},pips:T};return it}function z(t,e){if(!t||!t.nodeName)throw new Error(\"noUiSlider: create requires a single element, got: \"+t);if(t.noUiSlider)throw new Error(\"noUiSlider: Slider was already initialized.\");e=j(t,gt(e),e);return t.noUiSlider=e}var H={__spectrum:u,cssClasses:p,create:z};ot.create=z,ot.cssClasses=p,ot.default=H,Object.defineProperty(ot,\"__esModule\",{value:!0})});",";(function ($) {\n //on load\n $(window).on('load', function () {})\n\n //on ready\n $(document).ready(function () {\n //masked input\n const phoneMask = [\n '+',\n '7',\n ' ',\n '(',\n /\\d/,\n /\\d/,\n /\\d/,\n ')',\n ' ',\n /\\d/,\n /\\d/,\n /\\d/,\n '-',\n /\\d/,\n /\\d/,\n '-',\n /\\d/,\n /\\d/,\n ] // +7 (___) ___-__-__\n // const phoneMask = ['+', '3', '7', '3', ' ', '(', /\\d/, /\\d/, ')', ' ', /\\d/, /\\d/, '-', /\\d/, /\\d/, '-', /\\d/, /\\d/]; // +373 (__) __-__-__\n const phoneInputs = document.querySelectorAll('input[name=phone]')\n phoneInputs.forEach(function (phoneInput) {\n vanillaTextMask.maskInput({\n inputElement: phoneInput,\n mask: phoneMask,\n placeholderChar: '_',\n // showMask: true\n })\n })\n\n // hide placeholder on focus and return it on blur\n $('input, textarea').focus(function () {\n $(this).data('placeholder', $(this).attr('placeholder'))\n $(this).attr('placeholder', '')\n })\n $('input, textarea').blur(function () {\n $(this).attr('placeholder', $(this).data('placeholder'))\n })\n }) //END on ready\n})(jQuery)\n",";(function ($) {\n $(document).ready(function () {\n // accordion now now register with rebind_cart_custom_events()\n // $('.accordion .accordion-header').on('click', function () {\n // $(this).closest('.accordion').toggleClass('opened')\n // $(this).siblings('.accordion-body').stop().slideToggle({})\n // });\n\n $(window).on('load resize', function () {\n var width = $(window).width()\n if (width <= 1024) {\n $('.nav-accordion .accordion-header').on('click', function () {\n $(this).closest('.accordion').toggleClass('opened')\n $(this).siblings('.accordion-body').stop().slideToggle({})\n });\n $('.nav-accordion').removeClass('opened')\n $('.nav-accordion .accordion-body').stop().slideUp({})\n }\n else {\n $('.nav-accordion .accordion-header').off('click')\n $('.nav-accordion').addClass('opened')\n $('.nav-accordion .accordion-body').stop().slideDown({})\n }\n })\n })\n})(jQuery)\n",";(function ($) {\n $(document).ready(function () {\n let mobile = 1024;\n /*** open/close dropdown ***/\n if($(window).width()<=mobile){\n $('.dropdown .dropdown-btn').click(function (e) {\n $('.dropdown .dropdown-btn')\n .not($(this))\n .closest('.dropdown')\n .removeClass('opened')\n \n $(this).closest('.dropdown').toggleClass('opened')\n \n e.stopPropagation()\n })\n }\n else{\n $('.dropdown .dropdown-btn').on('mouseover', function (e) {\n $('.dropdown .dropdown-btn')\n .not($(this))\n .closest('.dropdown')\n .removeClass('opened')\n\n $(this).closest('.dropdown').addClass('opened')\n e.stopPropagation()\n })\n }\n\n $('.dropdown .wpml-ls-item-toggle').click(function (e) {\n $('.dropdown .wpml-ls-item-toggle')\n .not($(this))\n .closest('.dropdown')\n .removeClass('opened')\n\n $(this).closest('.dropdown').toggleClass('opened')\n\n e.stopPropagation()\n })\n\n $('.dropdown .wcml-cs-item-toggle').click(function (e) {\n $('.dropdown .wcml-cs-item-toggle')\n .not($(this))\n .closest('.dropdown')\n .removeClass('opened')\n\n $(this).closest('.dropdown').toggleClass('opened')\n\n e.stopPropagation()\n })\n\n /*** close dropdown ***/\n $(document).on('click', function (e) {\n if (\n !$('.dropdown').has(e.target).length &&\n !$('.dropdown').is(e.target)\n ) {\n $('.dropdown').removeClass('opened')\n }\n })\n if($(window).width()>mobile){\n $(document).on('mouseover', function (e) {\n if (\n !$('.nav .dropdown').has(e.target).length &&\n !$('.nav .dropdown').is(e.target)\n ) {\n $('.nav .dropdown').removeClass('opened')\n }\n })\n }\n })\n})(jQuery)\n",";(function ($) {\n $(document).ready(function () {\n $('.tabs .nav-item').on('click', function () {\n let tab = $(this).data()\n\n $(`[data-${Object.keys(tab)[0]}]`).removeClass('active')\n $(\n `[data-${Object.keys(tab)[0]}=${Object.values(tab)[0]}]`\n ).addClass('active')\n })\n })\n})(jQuery)\n",";(function ($) {\n $(document).ready(function () {\n $('a.fancybox').fancybox({})\n })\n})(jQuery)\n",";(function ($) {\n $(document).ready(function () {\n var scrollbarWidth = window.innerWidth - $(document).width()\n\n /* TODO: optimize this */\n $('.toggle-nav-btn').on('click', function () {\n $('.nav, .backing').toggleClass('opened')\n $('body').toggleClass('fixed')\n if ($('.nav').hasClass('opened')) {\n $('body').css({ paddingRight: scrollbarWidth })\n } else {\n $('body').css({ paddingRight: 0 })\n }\n })\n\n $('.toggle-cart-btn').on('click', function () {\n $('.cart-box, .backing').toggleClass('opened')\n $('body').toggleClass('fixed')\n\n if ($('.cart-box').hasClass('opened')) {\n $('body').css({ paddingRight: scrollbarWidth })\n } else {\n $('body').css({ paddingRight: 0 })\n }\n })\n $('.toggle-search-btn').on('click', function () {\n $('.search-box, .backing').toggleClass('opened')\n $('body').toggleClass('fixed')\n\n const timeout = setTimeout(function () {\n $('.search-box .search-input input').focus()\n }, 100)\n\n function stopFunction() {\n clearTimeout(timeout)\n }\n\n if ($('.search-box').hasClass('opened')) {\n $('body').css({ paddingRight: scrollbarWidth })\n } else {\n $('body').css({ paddingRight: 0 })\n }\n })\n\n $('.backing').on('click', function () {\n $('.nav, .cart-box, .search-box, .backing').removeClass('opened')\n $('body').toggleClass('fixed')\n\n if (\n $('.nav').hasClass('opened') ||\n $('.cart-box').hasClass('opened')\n ) {\n $('body').css({ paddingRight: scrollbarWidth })\n } else {\n $('body').css({ paddingRight: 0 })\n }\n })\n\n /* Toggle clean search button */\n $('.search-box .search-input input').on('keyup', function () {\n $(this).val().length > 0\n ? $('.search-box .search-input .clean-input').addClass(\n 'visible'\n )\n : $('.search-box .search-input .clean-input').removeClass(\n 'visible'\n )\n })\n\n /* Clean search input */\n $('.search-box .search-input .clean-input').on('click', function () {\n $('.search-box .search-input input').val('')\n $('.search-box .search-input .clean-input').removeClass('visible')\n })\n\n /* Tooltip */\n // tooltipster now register with rebind_cart_custom_events()\n // $('.tooltipster').tooltipster({\n // open: true,\n // theme: ['tooltipster-noir-customized'],\n // })\n })\n})(jQuery)\n",";(function ($) {\n $(document).ready(function () {\n new Swiper('.hero-slider .swiper', {\n slidesPerView: 1,\n effect: 'fade',\n fadeEffect: {\n crossFade: true,\n },\n\n pagination: {\n el: '.hero-slider .swiper-pagination',\n type: 'fraction',\n },\n navigation: {\n nextEl: '.hero-slider .swiper-button-next',\n prevEl: '.hero-slider .swiper-button-prev',\n },\n })\n })\n})(jQuery)\n",";(function ($) {\n $(document).ready(function () {\n new Swiper('.products-slider .swiper', {\n slidesPerView: 1.2,\n slidesPerGroup: 1,\n spaceBetween: 16,\n navigation: {\n nextEl: '.products-slider .swiper-button-next',\n prevEl: '.products-slider .swiper-button-prev',\n },\n\n breakpoints: {\n 1344: {\n slidesPerView: 'auto',\n slidesPerGroup: 2,\n },\n 768: {\n slidesPerView: 'auto',\n slidesPerGroup: 3,\n spaceBetween: 32,\n },\n 480: {\n slidesPerView: 2,\n slidesPerGroup: 2,\n },\n },\n })\n })\n})(jQuery)\n",";(function ($) {\n $(document).ready(function () {\n new Swiper('.reviews .swiper', {\n centeredSlides: true,\n slidesPerView: 1.2,\n slidesPerGroup: 1,\n spaceBetween: 16,\n navigation: {\n nextEl: '.reviews .swiper-button-next',\n prevEl: '.reviews .swiper-button-prev',\n },\n\n breakpoints: {\n 1344: {\n centeredSlides: false,\n slidesPerView: 3,\n slidesPerGroup: 2,\n },\n 768: {\n centeredSlides: false,\n slidesPerView: 2,\n slidesPerGroup: 2,\n spaceBetween: 32,\n },\n 480: {\n centeredSlides: false,\n slidesPerView: 1,\n slidesPerGroup: 1,\n },\n },\n })\n })\n})(jQuery)\n",";(function ($) {\n $(document).ready(function () {\n $('.product-list-section .toggle-filters').on('click', function () {\n $(this).toggleClass('show-filter')\n $('.product-list-section .box').toggleClass('show-filter')\n })\n\n var scrollbarWidth = window.innerWidth - $(document).width()\n\n $('.toggle-mobile-filter').on('click', function () {\n $('.filter, .filter-backing').toggleClass('opened')\n $('body').toggleClass('fixed')\n\n if ($('.filter').hasClass('opened')) {\n $('body').css({ paddingRight: scrollbarWidth })\n } else {\n $('body').css({ paddingRight: 0 })\n }\n })\n\n $('.filter-backing').on('click', function () {\n $('.filter, .filter-backing').removeClass('opened')\n $('body').toggleClass('fixed')\n\n if ($('.filter').hasClass('opened')) {\n $('body').css({ paddingRight: scrollbarWidth })\n } else {\n $('body').css({ paddingRight: 0 })\n }\n })\n })\n})(jQuery)\n",";(function ($) {\n $(document).ready(function () {\n let swiperGallery = new Swiper('.product-info .swiper-gallery', {\n direction: 'vertical',\n slidesPerView: 7,\n spaceBetween: 16,\n })\n\n let swiperImg = new Swiper('.swiper-img', {\n slidesPerView: 1,\n slidesPerGroup: 1,\n spaceBetween: 8,\n\n navigation: {\n nextEl: '.product-info .swiper-button-next',\n prevEl: '.product-info .swiper-button-prev',\n },\n thumbs: {\n swiper: swiperGallery,\n },\n\n breakpoints: {\n 768: {\n slidesPerView: 1,\n spaceBetween: 0,\n },\n },\n })\n \n /* Product variations */\n $(\".single_variation_wrap\").on(\"show_variation\", function (event, variation) {\n\t\t\t$('.swiper-gallery .swiper-slide').each(function () {\n\t\t\t\tlet slideImageId = $(this).data('image_id');\n\t\t\t\tif (slideImageId == variation.image_id) {\n let slideIndex = $(this).data('slide_index');\n\t\t\t\t\tswiperGallery.slideTo(parseInt(slideIndex));\n\t\t\t\t\tswiperImg.slideTo(parseInt(slideIndex));\n\t\t\t\t}\n\t\t\t});\n \n /* Update price */\n $('.info-box .price-row').html(variation.price_html);\n\t\t});\n })\n})(jQuery)\n",";(function ($) {\n $(document).ready(function () {\n /* Country select */\n $('.select-country').select2({\n placeholder: 'Select country',\n width: '100%',\n })\n\n /* Phone select */\n $('.select-phone').select2({\n placeholder: 'Code',\n selectionCssClass: 'select-phone-container',\n })\n\n /* Delivery label */\n $('.delivery-label').on('change', function () {\n $('.delivery-label').removeClass('active')\n $(this).toggleClass('active')\n })\n\n /* Payment label */\n $('.payment-label').on('change', function () {\n $('.payment-label').removeClass('active')\n $(this).toggleClass('active')\n })\n\n $('input[type=radio][name=payment_method]').each(function () {\n console.log(this);\n $(this).on('change', function () {\n console.log(1);\n // $(this).closest('.payment-image').toggleClass('active')\n // $('.payment-label').removeClass('active')\n // $(this).toggleClass('active')\n })\n })\n\n $( document.body ).on( 'click', '.js_showlogin', function(e) {\n e.preventDefault();\n $(this).parent().siblings('.formlogin').slideToggle();\n });\n\n $('.accordion-link').click(function (e) {\n e.stopPropagation();\n });\n\n $('[name=\"billing_person_type\"]').on('change', function(){\n let val = $(this).val();\n if(val=='company'){\n company_fields('show');\n }\n else{\n company_fields('hide');\n }\n });\n \n function company_fields(option='show'){\n if(option=='show'){\n $('#billing_company_name_field').show();\n $('#billing_company_code_field').show();\n $('#billing_company_vat_code_field').show();\n $('#billing_company_address_field').show();\n $('.billing_company_field_sep').show();\n }\n else{\n $('#billing_company_name_field').hide();\n $('#billing_company_code_field').hide();\n $('#billing_company_vat_code_field').hide();\n $('#billing_company_address_field').hide();\n $('.billing_company_field_sep').hide();\n }\n }\n if($('[name=\"billing_person_type\"]:checked').val()=='company'){\n company_fields('show');\n }\n else{\n company_fields('hide');\n }\n \n })\n})(jQuery)\n",";(function ($) {\n\t$(document).ready(function () {\n\t\t$(document).on('change', '.variations input', function () {\n\t\t\t$('.variations input:checked').each(function (index, element) {\n\t\t\t\tvar $el = $(element);\n\t\t\t\tvar thisName = $el.attr('name');\n\t\t\t\tvar thisVal = $el.attr('value');\n\t\t\t\t$('select[name=\"' + thisName + '\"]').val(thisVal).trigger('change');\n\t\t\t});\n\t\t});\n\t\t$(document).on('woocommerce_update_variation_values', function () {\n\t\t\t$('.variations input').each(function (index, element) {\n\t\t\t\tvar $el = $(element);\n\t\t\t\tvar thisName = $el.attr('name');\n\t\t\t\tvar thisVal = $el.attr('value');\n\t\t\t\t$el.removeAttr('disabled');\n\t\t\t\tif ($('select[name=\"' + thisName + '\"] option[value=\"' + thisVal + '\"]').is(':disabled')) {\n\t\t\t\t\t$el.prop('disabled', true);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t})\n})(jQuery)","var priceSlider;\nvar isReset = false;\n\nfunction get_data_posts_per_page() {\n let posts_per_page = $('.js_data_shop_filters').data('posts_per_page');\n return parseInt(posts_per_page);\n}\n\nfunction get_data_paged() {\n let paged = $('.js_data_shop_filters').data('paged');\n return parseInt(paged);\n}\n\nfunction get_data_max_num_pages() {\n let max_num_pages = $('.js_data_shop_filters').data('max_num_pages');\n return parseInt(max_num_pages);\n}\n\nfunction get_data_permalink() {\n let permalink = $('.js_data_shop_filters').data('permalink');\n return permalink;\n}\n\nfunction get_data_cat_id() {\n let cat_id = $('.js_data_shop_filters').data('cat_id');\n return parseInt(cat_id);\n}\n\nfunction get_data_orderby() {\n let orderby = $('.js_data_shop_filters').data('orderby');\n return orderby;\n}\n\nfunction get_data_keyword() {\n let keyword = $('.js_data_shop_filters').attr('data-keyword');\n return keyword;\n}\n\nfunction get_data_attribute_pa_colors() {\n let attribute_pa_colors = new Array();\n $('.js_filter_color input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n let data = $(this).data('attribute_pa_color');\n if (data.length > 1) {\n for (let i = 0; i < data.length; i++) {\n attribute_pa_colors.push( data[i] );\n }\n }\n else {\n attribute_pa_colors.push( data[0] );\n }\n }\n })\n return attribute_pa_colors;\n}\n\nfunction get_data_attribute_pa_materials() {\n let attribute_pa_materials = new Array();\n $('.js_filter_material input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n let data = $(this).data('attribute_pa_material');\n if (data.length > 1) {\n for (let i = 0; i < data.length; i++) {\n attribute_pa_materials.push( data[i] );\n }\n }\n else {\n attribute_pa_materials.push( data[0] );\n }\n }\n })\n return attribute_pa_materials;\n}\n\nfunction get_data_attribute_pa_sizes() {\n let attribute_pa_sizes = new Array();\n $('.js_filter_size input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n let data = $(this).data('attribute_pa_size');\n if (data.length > 1) {\n for (let i = 0; i < data.length; i++) {\n attribute_pa_sizes.push( data[i] );\n }\n }\n else {\n attribute_pa_sizes.push( data[0] );\n }\n }\n })\n return attribute_pa_sizes;\n}\n\nfunction get_data_price_start() {\n let price_start = $('.js_price_start').attr('data-price_start');\n return parseFloat(price_start);\n}\n\nfunction get_data_price_end() {\n let price_end = $('.js_price_end').attr('data-price_end');\n return parseFloat(price_end);\n}\n\nfunction get_data_min_price() {\n let min_price = $('.js_price_start').attr('data-min_price');\n return parseFloat(min_price);\n}\n\nfunction get_data_max_price() {\n let max_price = $('.js_price_end').attr('data-max_price');\n return parseFloat(max_price);\n}\n\nfunction get_data_prices() {\n if(!$('.js_filter_price').hasClass('applied-filters')){\n return null;\n }\n return new Array( get_data_price_start(), get_data_price_end() );\n}\n\nfunction get_data_price_default() {\n if(!$('.js_filter_price').hasClass('applied-filters')){\n return null;\n }\n return new Array( get_data_min_price(), get_data_max_price() );\n}\n\nfunction js_product_view() {\n $('.js_product_view a').on('click', function (event) {\n event.preventDefault();\n $('.js_product_view a').removeClass('active');\n $(this).addClass('active');\n let posts_per_page = $(this).data('posts_per_page');\n posts_per_page = parseInt(posts_per_page);\n textile_ajax_shop_filters( posts_per_page, 1, get_data_permalink(), get_data_cat_id(), get_data_orderby(), get_data_prices(), get_data_attribute_pa_colors(), get_data_attribute_pa_materials(), get_data_attribute_pa_sizes(), get_data_keyword() );\n });\n}\n\nfunction js_pagination() {\n $('.js_pagination .page-numbers').on('click', function (event) {\n event.preventDefault();\n let paged = $(this).text();\n paged = parseInt(paged);\n if ( $(this).hasClass('prev') ) {\n paged = get_data_paged() - 1;\n if (paged < 1) {\n paged = 1;\n } \n }\n if ( $(this).hasClass('next') ) {\n paged = get_data_paged() + 1;\n if ( paged > get_data_max_num_pages() ) {\n paged = get_data_max_num_pages();\n } \n }\n textile_ajax_shop_filters( get_data_posts_per_page(), paged, get_data_permalink(), get_data_cat_id(), get_data_orderby(), get_data_prices(), get_data_attribute_pa_colors(), get_data_attribute_pa_materials(), get_data_attribute_pa_sizes(), get_data_keyword() );\n });\n}\n\nfunction js_orderby() {\n $('.js_orderby a').on('click', function (event) {\n event.preventDefault();\n $('.js_orderby a').removeClass('active');\n $(this).addClass('active');\n let orderby = $(this).data('orderby');\n textile_ajax_shop_filters( get_data_posts_per_page(), get_data_paged(), get_data_permalink(), get_data_cat_id(), orderby, get_data_prices(), get_data_attribute_pa_colors(), get_data_attribute_pa_materials(), get_data_attribute_pa_sizes(), get_data_keyword() );\n });\n\n $('.js_orderby input').on('click', function () {\n $('.js_orderby input').prop('checked', false);\n $(this).prop('checked', true);\n let orderby = $(this).data('orderby');\n textile_ajax_shop_filters( get_data_posts_per_page(), get_data_paged(), get_data_permalink(), get_data_cat_id(), orderby, get_data_prices(), get_data_attribute_pa_colors(), get_data_attribute_pa_materials(), get_data_attribute_pa_sizes(), get_data_keyword() );\n \n let hasChecked = false;\n if ( $(this).is(':checked') ) {\n hasChecked = true;\n }\n\n if (hasChecked) {\n $('.js_orderby').addClass('applied-filters');\n $('.js_orderby .clear').addClass('active');\n }\n else {\n $('.js_orderby').removeClass('applied-filters');\n $('.js_orderby .clear').removeClass('active');\n }\n });\n\n $('.js_orderby .clear').on('click', function () {\n $('.js_orderby').removeClass('applied-filters');\n $('.js_orderby .clear').removeClass('active');\n $('.js_orderby input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n $(this).prop('checked', false);\n }\n })\n textile_ajax_shop_filters( get_data_posts_per_page(), get_data_paged(), get_data_permalink(), get_data_cat_id(), 'none', get_data_prices(), get_data_attribute_pa_colors(), get_data_attribute_pa_materials(), get_data_attribute_pa_sizes(), get_data_keyword() );\n });\n}\n\nfunction js_filter_price() {\n if ( $('#price-slider').length > 0 ) {\n priceSlider = document.getElementById('price-slider')\n\n noUiSlider.create(priceSlider, {\n connect: true,\n behaviour: 'tap',\n start: [get_data_min_price(), get_data_max_price()],\n step: 1,\n range: {\n min: [get_data_price_start()],\n max: [get_data_price_end()],\n },\n format: {\n to: (v) => parseFloat(v).toFixed(0),\n from: (v) => parseFloat(v).toFixed(0),\n },\n })\n\n priceSlider.noUiSlider.on('update', function (values) {\n $('.js_price_start').html(values[0])\n $('.js_price_end').html(values[1])\n $('.js_price_start').attr('data-price_start', values[0])\n $('.js_price_end').attr('data-price_end', values[1])\n })\n\n priceSlider.noUiSlider.on('set', function () {\n if ( get_data_price_start() > get_data_min_price() || get_data_price_end() < get_data_max_price() ) {\n $('.js_filter_price').addClass('applied-filters');\n $('.js_filter_price .clear').addClass('active');\n }\n else {\n $('.js_filter_price').removeClass('applied-filters');\n $('.js_filter_price .clear').removeClass('active');\n }\n if(!isReset){\n textile_ajax_shop_filters( get_data_posts_per_page(), 1, get_data_permalink(), get_data_cat_id(), get_data_orderby(), get_data_prices(), get_data_attribute_pa_colors(), get_data_attribute_pa_materials(), get_data_attribute_pa_sizes(), get_data_keyword() );\n }\n })\n }\n\n $('.js_filter_price .clear').on('click', function () {\n $('.js_filter_price').removeClass('applied-filters');\n $('.js_filter_price .clear').removeClass('active');\n isReset = true;\n priceSlider.noUiSlider.set( [get_data_min_price(), get_data_max_price()] );\n isReset = false;\n if(!isReset){\n textile_ajax_shop_filters( get_data_posts_per_page(), 1, get_data_permalink(), get_data_cat_id(), get_data_orderby(), get_data_price_default(), get_data_attribute_pa_colors(), get_data_attribute_pa_materials(), get_data_attribute_pa_sizes(), get_data_keyword() );\n }\n });\n}\n\nfunction js_filter_color() {\n $('.js_filter_color input').on('click', function () {\n let hasChecked = false;\n let attribute_pa_colors = new Array();\n \n $('.js_filter_color input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n hasChecked = true;\n let data = $(this).data('attribute_pa_color');\n if (data.length > 1) {\n for (let i = 0; i < data.length; i++) {\n attribute_pa_colors.push( data[i] );\n }\n }\n else {\n attribute_pa_colors.push( data[0] );\n }\n }\n })\n textile_ajax_shop_filters( get_data_posts_per_page(), 1, get_data_permalink(), get_data_cat_id(), get_data_orderby(), get_data_prices(), attribute_pa_colors, get_data_attribute_pa_materials(), get_data_attribute_pa_sizes(), get_data_keyword() );\n \n if (hasChecked) {\n $('.js_filter_color').addClass('applied-filters');\n $('.js_filter_color .clear').addClass('active');\n }\n else {\n $('.js_filter_color').removeClass('applied-filters');\n $('.js_filter_color .clear').removeClass('active');\n }\n });\n\n $('.js_filter_color .clear').on('click', function () {\n $('.js_filter_color').removeClass('applied-filters');\n $('.js_filter_color .clear').removeClass('active');\n $('.js_filter_color input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n $(this).prop('checked', false);\n }\n })\n textile_ajax_shop_filters( get_data_posts_per_page(), 1, get_data_permalink(), get_data_cat_id(), get_data_orderby(), get_data_prices(), null, get_data_attribute_pa_materials(), get_data_attribute_pa_sizes(), get_data_keyword() );\n });\n}\n\nfunction js_filter_material() {\n $('.js_filter_material input').on('click', function () {\n let hasChecked = false;\n let attribute_pa_materials = new Array();\n \n $('.js_filter_material input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n hasChecked = true;\n let data = $(this).data('attribute_pa_material');\n if (data.length > 1) {\n for (let i = 0; i < data.length; i++) {\n attribute_pa_materials.push( data[i] );\n }\n }\n else {\n attribute_pa_materials.push( data[0] );\n }\n }\n })\n textile_ajax_shop_filters( get_data_posts_per_page(), 1, get_data_permalink(), get_data_cat_id(), get_data_orderby(), get_data_prices(), get_data_attribute_pa_colors(), attribute_pa_materials, get_data_attribute_pa_sizes(), get_data_keyword() );\n \n if (hasChecked) {\n $('.js_filter_material').addClass('applied-filters');\n $('.js_filter_material .clear').addClass('active');\n }\n else {\n $('.js_filter_material').removeClass('applied-filters');\n $('.js_filter_material .clear').removeClass('active');\n }\n });\n\n $('.js_filter_material .clear').on('click', function () {\n $('.js_filter_material').removeClass('applied-filters');\n $('.js_filter_material .clear').removeClass('active');\n $('.js_filter_material input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n $(this).prop('checked', false);\n }\n })\n textile_ajax_shop_filters( get_data_posts_per_page(), 1, get_data_permalink(), get_data_cat_id(), get_data_orderby(), get_data_prices(), get_data_attribute_pa_colors(), null, get_data_attribute_pa_sizes(), get_data_keyword() );\n });\n}\n\nfunction js_filter_size() {\n $('.js_filter_size input').on('click', function () {\n let hasChecked = false;\n let attribute_pa_sizes = new Array();\n \n $('.js_filter_size input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n hasChecked = true;\n let data = $(this).data('attribute_pa_size');\n if (data.length > 1) {\n for (let i = 0; i < data.length; i++) {\n attribute_pa_sizes.push( data[i] );\n }\n }\n else {\n attribute_pa_sizes.push( data[0] );\n }\n }\n })\n textile_ajax_shop_filters( get_data_posts_per_page(), 1, get_data_permalink(), get_data_cat_id(), get_data_orderby(), get_data_prices(), get_data_attribute_pa_colors(), get_data_attribute_pa_materials(), attribute_pa_sizes, get_data_keyword() );\n \n if (hasChecked) {\n $('.js_filter_size').addClass('applied-filters');\n $('.js_filter_size .clear').addClass('active');\n }\n else {\n $('.js_filter_size').removeClass('applied-filters');\n $('.js_filter_size .clear').removeClass('active');\n }\n });\n\n $('.js_filter_size .clear').on('click', function () {\n $('.js_filter_size').removeClass('applied-filters');\n $('.js_filter_size .clear').removeClass('active');\n $('.js_filter_size input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n $(this).prop('checked', false);\n }\n })\n textile_ajax_shop_filters( get_data_posts_per_page(), 1, get_data_permalink(), get_data_cat_id(), get_data_orderby(), get_data_prices(), get_data_attribute_pa_colors(), get_data_attribute_pa_materials(), null, get_data_keyword() );\n });\n}\n\nfunction js_reset_filter() {\n $('.js_reset_filter').on('click', function () {\n \n $('.accordion').removeClass('applied-filters');\n $('.accordion .clear').removeClass('active');\n\n $('.js_orderby input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n $(this).prop('checked', false);\n }\n })\n\n $('.js_filter_color input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n $(this).prop('checked', false);\n }\n })\n\n $('.js_filter_material input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n $(this).prop('checked', false);\n }\n })\n\n $('.js_filter_size input').each(function (index, element) {\n if ( $(element).is(':checked') ) {\n $(this).prop('checked', false);\n }\n })\n\n $('.js_filter_price').removeClass('applied-filters');\n $('.js_filter_price .clear').removeClass('active');\n isReset = true;\n priceSlider.noUiSlider.set( [get_data_min_price(), get_data_max_price()] );\n isReset = false;\n if(!isReset){\n textile_ajax_shop_filters( get_data_posts_per_page(), 1, get_data_permalink(), get_data_cat_id(), get_data_orderby(), null, null, null, null, '' );\n }\n\n });\n}\n\nfunction textile_ajax_shop_filters( posts_per_page, paged, permalink, cat_id, orderby, prices, attribute_pa_colors, attribute_pa_materials, attribute_pa_sizes, keyword ) {\n $('.js_product_list .js_loading').fadeIn();\n $.ajax({\n type: 'POST',\n dataType: 'json',\n url: textile_ajax_obj.ajaxurl,\n data: {\n action: 'textile_ajax_shop_filters',\n nonce: textile_ajax_obj.nonce,\n posts_per_page: posts_per_page,\n paged: paged,\n permalink: permalink,\n cat_id: cat_id,\n orderby: orderby,\n prices: prices,\n attribute_pa_colors: attribute_pa_colors,\n attribute_pa_materials: attribute_pa_materials,\n attribute_pa_sizes: attribute_pa_sizes,\n keyword: keyword,\n },\n success: function (res) {\n $([document.documentElement, document.body]).animate({\n scrollTop: 0\n }, 500);\n $('.js_product_list').html(res.product_list);\n // Rebind events after AJAX call.\n js_pagination();\n },\n error: function (jqXHR, textStatus, errorThrown) {\n $('.js_product_list .js_loading').fadeOut();\n console.log(jqXHR);\n }\n });\n}\n\n;(function ($) {\n // When all AJAX requests are finished.\n $(document).ajaxStop(function () {\n $('.js_loading').fadeOut();\n });\n \n // Products per view.\n js_product_view();\n // Pagination.\n js_pagination();\n // Short by.\n js_orderby();\n // Filter price.\n js_filter_price();\n // Filter color.\n js_filter_color();\n // Filter material.\n js_filter_material();\n // Filter size.\n js_filter_size();\n // Reset filters.\n js_reset_filter();\n})(jQuery)\n","function get_data_cart_count() {\n let cart_count = $('.js_data_mini_cart').data('cart_count');\n return parseInt(cart_count);\n}\n\nfunction rebind_cart_custom_events() {\n /* Tooltip */\n $('.tooltipster').tooltipster({\n open: true,\n theme: ['tooltipster-noir-customized'],\n })\n\n /* Product qnt single product */\n $('form.cart .field .decrease').off('click').on('click', function () {\n let input = $(this).siblings('input')\n input.val() > 1 && input.val(parseInt(input.val()) - 1)\n })\n $('form.cart .field .increase').off('click').on('click', function () {\n let input = $(this).siblings('input')\n let inputVal = parseInt(input.val())\n input.val(inputVal + 1)\n })\n\n /* Product qnt */\n $('.box .field .decrease').off('click').on('click', function () {\n let input = $(this).siblings('input')\n input.val() > 1 && input.val(parseInt(input.val()) - 1)\n })\n $('.box .field .increase').off('click').on('click', function () {\n let input = $(this).siblings('input')\n let inputVal = parseInt(input.val())\n let inputMaxVal = parseInt(input.attr('max'))\n !isNaN(inputMaxVal) && inputVal < inputMaxVal && input.val(inputVal + 1)\n })\n\n /* Accordion */\n $('.accordion .accordion-header').off('click').on('click', function () {\n $(this).closest('.accordion').toggleClass('opened')\n $(this).siblings('.accordion-body').stop().slideToggle({})\n })\n}\n\n;(function ($) {\n /**\n * AJAX mini cart remove item.\n * This code is not needed. Use default instead.\n */\n // $(document).on('click', '.mini_cart_item a.remove', function (e) {\n // e.preventDefault();\n // $('.woocommerce-error').remove();\n\n // var product_id = $(this).data('product_id');\n // var cart_item_key = $(this).data('cart_item_key');\n\n // $.ajax({\n // type: 'POST',\n // dataType: 'json',\n // url: wc_add_to_cart_params.ajax_url,\n // data: {\n // action: 'textile_ajax_mini_cart_remove_item',\n // product_id: product_id,\n // cart_item_key: cart_item_key\n // },\n // success: function (res) {\n // if (!res || res.error)\n // return;\n\n // var fragments = res.fragments;\n\n // // Replace fragments.\n // if (fragments) {\n // $.each(fragments, function (key, value) {\n // $(key).replaceWith(value);\n // });\n // }\n // },\n // error: function (jqXHR, textStatus, errorThrown) {\n // console.log(jqXHR);\n // }\n // });\n // });\n})(jQuery)\n","function get_keyword() {\n let keyword = $('.js_search_shop input').val();\n return keyword;\n}\n\nfunction set_keyword(keyword) {\n $('.js_search_shop input').val(keyword);\n}\n\nfunction set_data_keyword(keyword) {\n $('.js_data_shop_filters').attr('data-keyword', keyword);\n}\n\nfunction textile_ajax_shop_search() {\n $('.js_search_result .js_loading').fadeIn();\n $.ajax({\n type: 'POST',\n dataType: 'json',\n url: textile_ajax_obj.ajaxurl,\n data: {\n action: 'textile_ajax_shop_search',\n nonce: textile_ajax_obj.nonce,\n keyword: get_keyword(),\n },\n success: function (res) {\n $('.js_search_result').html(res.search_result);\n },\n error: function (jqXHR, textStatus, errorThrown) {\n $('.js_loading').fadeOut();\n console.log(jqXHR);\n }\n });\n}\n\n;(function ($) {\n // When all AJAX requests are finished.\n $(document).ajaxStop(function () {\n $('.js_loading').fadeOut();\n });\n \n $('.js_search_shop input').on('paste keyup', function () {\n if ( get_keyword() ) {\n set_data_keyword( get_keyword() );\n textile_ajax_shop_search();\n }\n });\n\n $('.js_search_shop input').on('change paste', function () {\n if ( get_keyword() ) {\n $('.js_search_shop form').submit();\n }\n });\n \n $(document).on('keypress',function(e) {\n if ( get_keyword() ) {\n if(e.which == 13) {\n $('.js_search_shop form').submit();\n window.location.href = textile_ajax_obj.wc_shop_url + '?s=' + get_keyword();\n }\n }\n });\n\n $('.js_search_shop form').on('submit', function () {\n $(this).find('input[name=\"s\"]').val( get_keyword() );\n $.get(window.location.origin + '?s=' + get_keyword(), $(this).serialize(), function (data) {\n return;\n });\n return false;\n });\n\n $('.js_search_shop .js_clean_input').on('click', function () {\n set_keyword('');\n textile_ajax_shop_search();\n });\n})(jQuery)\n"]}