UNPKG

@anoki/fse-ui

Version:

FSE UI components library

2,038 lines • 82.6 kB
import { g as R, a as _ } from "./index.es524.js";
import { x as k, e as D, i as ie, c as Z, q as N, y as we, v as W, n as de, u as ce, k as Se, r as Te, t as xe, a as $, h as se, w as be, f as Y, b as ye } from "./index.es522.js";
let X;
function Ee() {
  const i = _(), t = R();
  return {
    smoothScroll: t.documentElement && t.documentElement.style && "scrollBehavior" in t.documentElement.style,
    touch: !!("ontouchstart" in i || i.DocumentTouch && t instanceof i.DocumentTouch)
  };
}
function fe() {
  return X || (X = Ee()), X;
}
let q;
function Pe(i) {
  let {
    userAgent: t
  } = i === void 0 ? {} : i;
  const e = fe(), s = _(), n = s.navigator.platform, r = t || s.navigator.userAgent, l = {
    ios: !1,
    android: !1
  }, a = s.screen.width, d = s.screen.height, o = r.match(/(Android);?[\s\/]+([\d.]+)?/);
  let c = r.match(/(iPad).*OS\s([\d_]+)/);
  const f = r.match(/(iPod)(.*OS\s([\d_]+))?/), u = !c && r.match(/(iPhone\sOS|iOS)\s([\d_]+)/), p = n === "Win32";
  let h = n === "MacIntel";
  const v = ["1024x1366", "1366x1024", "834x1194", "1194x834", "834x1112", "1112x834", "768x1024", "1024x768", "820x1180", "1180x820", "810x1080", "1080x810"];
  return !c && h && e.touch && v.indexOf(`${a}x${d}`) >= 0 && (c = r.match(/(Version)\/([\d.]+)/), c || (c = [0, 1, "13_0_0"]), h = !1), o && !p && (l.os = "android", l.android = !0), (c || u || f) && (l.os = "ios", l.ios = !0), l;
}
function ue(i) {
  return i === void 0 && (i = {}), q || (q = Pe(i)), q;
}
let j;
function Me() {
  const i = _(), t = ue();
  let e = !1;
  function s() {
    const a = i.navigator.userAgent.toLowerCase();
    return a.indexOf("safari") >= 0 && a.indexOf("chrome") < 0 && a.indexOf("android") < 0;
  }
  if (s()) {
    const a = String(i.navigator.userAgent);
    if (a.includes("Version/")) {
      const [d, o] = a.split("Version/")[1].split(" ")[0].split(".").map((c) => Number(c));
      e = d < 16 || d === 16 && o < 2;
    }
  }
  const n = /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(i.navigator.userAgent), r = s(), l = r || n && t.ios;
  return {
    isSafari: e || r,
    needPerspectiveFix: e,
    need3dFix: l,
    isWebView: n
  };
}
function pe() {
  return j || (j = Me()), j;
}
function Ie(i) {
  let {
    swiper: t,
    on: e,
    emit: s
  } = i;
  const n = _();
  let r = null, l = null;
  const a = () => {
    !t || t.destroyed || !t.initialized || (s("beforeResize"), s("resize"));
  }, d = () => {
    !t || t.destroyed || !t.initialized || (r = new ResizeObserver((f) => {
      l = n.requestAnimationFrame(() => {
        const {
          width: u,
          height: p
        } = t;
        let h = u, v = p;
        f.forEach((E) => {
          let {
            contentBoxSize: m,
            contentRect: S,
            target: g
          } = E;
          g && g !== t.el || (h = S ? S.width : (m[0] || m).inlineSize, v = S ? S.height : (m[0] || m).blockSize);
        }), (h !== u || v !== p) && a();
      });
    }), r.observe(t.el));
  }, o = () => {
    l && n.cancelAnimationFrame(l), r && r.unobserve && t.el && (r.unobserve(t.el), r = null);
  }, c = () => {
    !t || t.destroyed || !t.initialized || s("orientationchange");
  };
  e("init", () => {
    if (t.params.resizeObserver && typeof n.ResizeObserver < "u") {
      d();
      return;
    }
    n.addEventListener("resize", a), n.addEventListener("orientationchange", c);
  }), e("destroy", () => {
    o(), n.removeEventListener("resize", a), n.removeEventListener("orientationchange", c);
  });
}
function Ce(i) {
  let {
    swiper: t,
    extendParams: e,
    on: s,
    emit: n
  } = i;
  const r = [], l = _(), a = function(c, f) {
    f === void 0 && (f = {});
    const u = l.MutationObserver || l.WebkitMutationObserver, p = new u((h) => {
      if (t.__preventObserver__) return;
      if (h.length === 1) {
        n("observerUpdate", h[0]);
        return;
      }
      const v = function() {
        n("observerUpdate", h[0]);
      };
      l.requestAnimationFrame ? l.requestAnimationFrame(v) : l.setTimeout(v, 0);
    });
    p.observe(c, {
      attributes: typeof f.attributes > "u" ? !0 : f.attributes,
      childList: t.isElement || (typeof f.childList > "u" ? !0 : f).childList,
      characterData: typeof f.characterData > "u" ? !0 : f.characterData
    }), r.push(p);
  }, d = () => {
    if (t.params.observer) {
      if (t.params.observeParents) {
        const c = ye(t.hostEl);
        for (let f = 0; f < c.length; f += 1)
          a(c[f]);
      }
      a(t.hostEl, {
        childList: t.params.observeSlideChildren
      }), a(t.wrapperEl, {
        attributes: !1
      });
    }
  }, o = () => {
    r.forEach((c) => {
      c.disconnect();
    }), r.splice(0, r.length);
  };
  e({
    observer: !1,
    observeParents: !1,
    observeSlideChildren: !1
  }), s("init", d), s("destroy", o);
}
var Le = {
  on(i, t, e) {
    const s = this;
    if (!s.eventsListeners || s.destroyed || typeof t != "function") return s;
    const n = e ? "unshift" : "push";
    return i.split(" ").forEach((r) => {
      s.eventsListeners[r] || (s.eventsListeners[r] = []), s.eventsListeners[r][n](t);
    }), s;
  },
  once(i, t, e) {
    const s = this;
    if (!s.eventsListeners || s.destroyed || typeof t != "function") return s;
    function n() {
      s.off(i, n), n.__emitterProxy && delete n.__emitterProxy;
      for (var r = arguments.length, l = new Array(r), a = 0; a < r; a++)
        l[a] = arguments[a];
      t.apply(s, l);
    }
    return n.__emitterProxy = t, s.on(i, n, e);
  },
  onAny(i, t) {
    const e = this;
    if (!e.eventsListeners || e.destroyed || typeof i != "function") return e;
    const s = t ? "unshift" : "push";
    return e.eventsAnyListeners.indexOf(i) < 0 && e.eventsAnyListeners[s](i), e;
  },
  offAny(i) {
    const t = this;
    if (!t.eventsListeners || t.destroyed || !t.eventsAnyListeners) return t;
    const e = t.eventsAnyListeners.indexOf(i);
    return e >= 0 && t.eventsAnyListeners.splice(e, 1), t;
  },
  off(i, t) {
    const e = this;
    return !e.eventsListeners || e.destroyed || !e.eventsListeners || i.split(" ").forEach((s) => {
      typeof t > "u" ? e.eventsListeners[s] = [] : e.eventsListeners[s] && e.eventsListeners[s].forEach((n, r) => {
        (n === t || n.__emitterProxy && n.__emitterProxy === t) && e.eventsListeners[s].splice(r, 1);
      });
    }), e;
  },
  emit() {
    const i = this;
    if (!i.eventsListeners || i.destroyed || !i.eventsListeners) return i;
    let t, e, s;
    for (var n = arguments.length, r = new Array(n), l = 0; l < n; l++)
      r[l] = arguments[l];
    return typeof r[0] == "string" || Array.isArray(r[0]) ? (t = r[0], e = r.slice(1, r.length), s = i) : (t = r[0].events, e = r[0].data, s = r[0].context || i), e.unshift(s), (Array.isArray(t) ? t : t.split(" ")).forEach((d) => {
      i.eventsAnyListeners && i.eventsAnyListeners.length && i.eventsAnyListeners.forEach((o) => {
        o.apply(s, [d, ...e]);
      }), i.eventsListeners && i.eventsListeners[d] && i.eventsListeners[d].forEach((o) => {
        o.apply(s, e);
      });
    }), i;
  }
};
function ze() {
  const i = this;
  let t, e;
  const s = i.el;
  typeof i.params.width < "u" && i.params.width !== null ? t = i.params.width : t = s.clientWidth, typeof i.params.height < "u" && i.params.height !== null ? e = i.params.height : e = s.clientHeight, !(t === 0 && i.isHorizontal() || e === 0 && i.isVertical()) && (t = t - parseInt(N(s, "padding-left") || 0, 10) - parseInt(N(s, "padding-right") || 0, 10), e = e - parseInt(N(s, "padding-top") || 0, 10) - parseInt(N(s, "padding-bottom") || 0, 10), Number.isNaN(t) && (t = 0), Number.isNaN(e) && (e = 0), Object.assign(i, {
    width: t,
    height: e,
    size: i.isHorizontal() ? t : e
  }));
}
function Oe() {
  const i = this;
  function t(w, x) {
    return parseFloat(w.getPropertyValue(i.getDirectionLabel(x)) || 0);
  }
  const e = i.params, {
    wrapperEl: s,
    slidesEl: n,
    size: r,
    rtlTranslate: l,
    wrongRTL: a
  } = i, d = i.virtual && e.virtual.enabled, o = d ? i.virtual.slides.length : i.slides.length, c = D(n, `.${i.params.slideClass}, swiper-slide`), f = d ? i.virtual.slides.length : c.length;
  let u = [];
  const p = [], h = [];
  let v = e.slidesOffsetBefore;
  typeof v == "function" && (v = e.slidesOffsetBefore.call(i));
  let E = e.slidesOffsetAfter;
  typeof E == "function" && (E = e.slidesOffsetAfter.call(i));
  const m = i.snapGrid.length, S = i.slidesGrid.length;
  let g = e.spaceBetween, b = -v, T = 0, C = 0;
  if (typeof r > "u")
    return;
  typeof g == "string" && g.indexOf("%") >= 0 ? g = parseFloat(g.replace("%", "")) / 100 * r : typeof g == "string" && (g = parseFloat(g)), i.virtualSize = -g, c.forEach((w) => {
    l ? w.style.marginLeft = "" : w.style.marginRight = "", w.style.marginBottom = "", w.style.marginTop = "";
  }), e.centeredSlides && e.cssMode && ($(s, "--swiper-centered-offset-before", ""), $(s, "--swiper-centered-offset-after", ""));
  const I = e.grid && e.grid.rows > 1 && i.grid;
  I ? i.grid.initSlides(c) : i.grid && i.grid.unsetSlides();
  let y;
  const O = e.slidesPerView === "auto" && e.breakpoints && Object.keys(e.breakpoints).filter((w) => typeof e.breakpoints[w].slidesPerView < "u").length > 0;
  for (let w = 0; w < f; w += 1) {
    y = 0;
    let x;
    if (c[w] && (x = c[w]), I && i.grid.updateSlide(w, x, c), !(c[w] && N(x, "display") === "none")) {
      if (e.slidesPerView === "auto") {
        O && (c[w].style[i.getDirectionLabel("width")] = "");
        const M = getComputedStyle(x), L = x.style.transform, B = x.style.webkitTransform;
        if (L && (x.style.transform = "none"), B && (x.style.webkitTransform = "none"), e.roundLengths)
          y = i.isHorizontal() ? se(x, "width") : se(x, "height");
        else {
          const F = t(M, "width"), P = t(M, "padding-left"), z = t(M, "padding-right"), A = t(M, "margin-left"), V = t(M, "margin-right"), te = M.getPropertyValue("box-sizing");
          if (te && te === "border-box")
            y = F + A + V;
          else {
            const {
              clientWidth: ge,
              offsetWidth: ve
            } = x;
            y = F + P + z + A + V + (ve - ge);
          }
        }
        L && (x.style.transform = L), B && (x.style.webkitTransform = B), e.roundLengths && (y = Math.floor(y));
      } else
        y = (r - (e.slidesPerView - 1) * g) / e.slidesPerView, e.roundLengths && (y = Math.floor(y)), c[w] && (c[w].style[i.getDirectionLabel("width")] = `${y}px`);
      c[w] && (c[w].swiperSlideSize = y), h.push(y), e.centeredSlides ? (b = b + y / 2 + T / 2 + g, T === 0 && w !== 0 && (b = b - r / 2 - g), w === 0 && (b = b - r / 2 - g), Math.abs(b) < 1 / 1e3 && (b = 0), e.roundLengths && (b = Math.floor(b)), C % e.slidesPerGroup === 0 && u.push(b), p.push(b)) : (e.roundLengths && (b = Math.floor(b)), (C - Math.min(i.params.slidesPerGroupSkip, C)) % i.params.slidesPerGroup === 0 && u.push(b), p.push(b), b = b + y + g), i.virtualSize += y + g, T = y, C += 1;
    }
  }
  if (i.virtualSize = Math.max(i.virtualSize, r) + E, l && a && (e.effect === "slide" || e.effect === "coverflow") && (s.style.width = `${i.virtualSize + g}px`), e.setWrapperSize && (s.style[i.getDirectionLabel("width")] = `${i.virtualSize + g}px`), I && i.grid.updateWrapperSize(y, u), !e.centeredSlides) {
    const w = [];
    for (let x = 0; x < u.length; x += 1) {
      let M = u[x];
      e.roundLengths && (M = Math.floor(M)), u[x] <= i.virtualSize - r && w.push(M);
    }
    u = w, Math.floor(i.virtualSize - r) - Math.floor(u[u.length - 1]) > 1 && u.push(i.virtualSize - r);
  }
  if (d && e.loop) {
    const w = h[0] + g;
    if (e.slidesPerGroup > 1) {
      const x = Math.ceil((i.virtual.slidesBefore + i.virtual.slidesAfter) / e.slidesPerGroup), M = w * e.slidesPerGroup;
      for (let L = 0; L < x; L += 1)
        u.push(u[u.length - 1] + M);
    }
    for (let x = 0; x < i.virtual.slidesBefore + i.virtual.slidesAfter; x += 1)
      e.slidesPerGroup === 1 && u.push(u[u.length - 1] + w), p.push(p[p.length - 1] + w), i.virtualSize += w;
  }
  if (u.length === 0 && (u = [0]), g !== 0) {
    const w = i.isHorizontal() && l ? "marginLeft" : i.getDirectionLabel("marginRight");
    c.filter((x, M) => !e.cssMode || e.loop ? !0 : M !== c.length - 1).forEach((x) => {
      x.style[w] = `${g}px`;
    });
  }
  if (e.centeredSlides && e.centeredSlidesBounds) {
    let w = 0;
    h.forEach((M) => {
      w += M + (g || 0);
    }), w -= g;
    const x = w > r ? w - r : 0;
    u = u.map((M) => M <= 0 ? -v : M > x ? x + E : M);
  }
  if (e.centerInsufficientSlides) {
    let w = 0;
    h.forEach((M) => {
      w += M + (g || 0);
    }), w -= g;
    const x = (e.slidesOffsetBefore || 0) + (e.slidesOffsetAfter || 0);
    if (w + x < r) {
      const M = (r - w - x) / 2;
      u.forEach((L, B) => {
        u[B] = L - M;
      }), p.forEach((L, B) => {
        p[B] = L + M;
      });
    }
  }
  if (Object.assign(i, {
    slides: c,
    snapGrid: u,
    slidesGrid: p,
    slidesSizesGrid: h
  }), e.centeredSlides && e.cssMode && !e.centeredSlidesBounds) {
    $(s, "--swiper-centered-offset-before", `${-u[0]}px`), $(s, "--swiper-centered-offset-after", `${i.size / 2 - h[h.length - 1] / 2}px`);
    const w = -i.snapGrid[0], x = -i.slidesGrid[0];
    i.snapGrid = i.snapGrid.map((M) => M + w), i.slidesGrid = i.slidesGrid.map((M) => M + x);
  }
  if (f !== o && i.emit("slidesLengthChange"), u.length !== m && (i.params.watchOverflow && i.checkOverflow(), i.emit("snapGridLengthChange")), p.length !== S && i.emit("slidesGridLengthChange"), e.watchSlidesProgress && i.updateSlidesOffset(), i.emit("slidesUpdated"), !d && !e.cssMode && (e.effect === "slide" || e.effect === "fade")) {
    const w = `${e.containerModifierClass}backface-hidden`, x = i.el.classList.contains(w);
    f <= e.maxBackfaceHiddenSlides ? x || i.el.classList.add(w) : x && i.el.classList.remove(w);
  }
}
function Ae(i) {
  const t = this, e = [], s = t.virtual && t.params.virtual.enabled;
  let n = 0, r;
  typeof i == "number" ? t.setTransition(i) : i === !0 && t.setTransition(t.params.speed);
  const l = (a) => s ? t.slides[t.getSlideIndexByData(a)] : t.slides[a];
  if (t.params.slidesPerView !== "auto" && t.params.slidesPerView > 1)
    if (t.params.centeredSlides)
      (t.visibleSlides || []).forEach((a) => {
        e.push(a);
      });
    else
      for (r = 0; r < Math.ceil(t.params.slidesPerView); r += 1) {
        const a = t.activeIndex + r;
        if (a > t.slides.length && !s) break;
        e.push(l(a));
      }
  else
    e.push(l(t.activeIndex));
  for (r = 0; r < e.length; r += 1)
    if (typeof e[r] < "u") {
      const a = e[r].offsetHeight;
      n = a > n ? a : n;
    }
  (n || n === 0) && (t.wrapperEl.style.height = `${n}px`);
}
function Ge() {
  const i = this, t = i.slides, e = i.isElement ? i.isHorizontal() ? i.wrapperEl.offsetLeft : i.wrapperEl.offsetTop : 0;
  for (let s = 0; s < t.length; s += 1)
    t[s].swiperSlideOffset = (i.isHorizontal() ? t[s].offsetLeft : t[s].offsetTop) - e - i.cssOverflowAdjustment();
}
const re = (i, t, e) => {
  t && !i.classList.contains(e) ? i.classList.add(e) : !t && i.classList.contains(e) && i.classList.remove(e);
};
function ke(i) {
  i === void 0 && (i = this && this.translate || 0);
  const t = this, e = t.params, {
    slides: s,
    rtlTranslate: n,
    snapGrid: r
  } = t;
  if (s.length === 0) return;
  typeof s[0].swiperSlideOffset > "u" && t.updateSlidesOffset();
  let l = -i;
  n && (l = i), t.visibleSlidesIndexes = [], t.visibleSlides = [];
  let a = e.spaceBetween;
  typeof a == "string" && a.indexOf("%") >= 0 ? a = parseFloat(a.replace("%", "")) / 100 * t.size : typeof a == "string" && (a = parseFloat(a));
  for (let d = 0; d < s.length; d += 1) {
    const o = s[d];
    let c = o.swiperSlideOffset;
    e.cssMode && e.centeredSlides && (c -= s[0].swiperSlideOffset);
    const f = (l + (e.centeredSlides ? t.minTranslate() : 0) - c) / (o.swiperSlideSize + a), u = (l - r[0] + (e.centeredSlides ? t.minTranslate() : 0) - c) / (o.swiperSlideSize + a), p = -(l - c), h = p + t.slidesSizesGrid[d], v = p >= 0 && p <= t.size - t.slidesSizesGrid[d], E = p >= 0 && p < t.size - 1 || h > 1 && h <= t.size || p <= 0 && h >= t.size;
    E && (t.visibleSlides.push(o), t.visibleSlidesIndexes.push(d)), re(o, E, e.slideVisibleClass), re(o, v, e.slideFullyVisibleClass), o.progress = n ? -f : f, o.originalProgress = n ? -u : u;
  }
}
function Ve(i) {
  const t = this;
  if (typeof i > "u") {
    const c = t.rtlTranslate ? -1 : 1;
    i = t && t.translate && t.translate * c || 0;
  }
  const e = t.params, s = t.maxTranslate() - t.minTranslate();
  let {
    progress: n,
    isBeginning: r,
    isEnd: l,
    progressLoop: a
  } = t;
  const d = r, o = l;
  if (s === 0)
    n = 0, r = !0, l = !0;
  else {
    n = (i - t.minTranslate()) / s;
    const c = Math.abs(i - t.minTranslate()) < 1, f = Math.abs(i - t.maxTranslate()) < 1;
    r = c || n <= 0, l = f || n >= 1, c && (n = 0), f && (n = 1);
  }
  if (e.loop) {
    const c = t.getSlideIndexByData(0), f = t.getSlideIndexByData(t.slides.length - 1), u = t.slidesGrid[c], p = t.slidesGrid[f], h = t.slidesGrid[t.slidesGrid.length - 1], v = Math.abs(i);
    v >= u ? a = (v - u) / h : a = (v + h - p) / h, a > 1 && (a -= 1);
  }
  Object.assign(t, {
    progress: n,
    progressLoop: a,
    isBeginning: r,
    isEnd: l
  }), (e.watchSlidesProgress || e.centeredSlides && e.autoHeight) && t.updateSlidesProgress(i), r && !d && t.emit("reachBeginning toEdge"), l && !o && t.emit("reachEnd toEdge"), (d && !r || o && !l) && t.emit("fromEdge"), t.emit("progress", n);
}
const U = (i, t, e) => {
  t && !i.classList.contains(e) ? i.classList.add(e) : !t && i.classList.contains(e) && i.classList.remove(e);
};
function De() {
  const i = this, {
    slides: t,
    params: e,
    slidesEl: s,
    activeIndex: n
  } = i, r = i.virtual && e.virtual.enabled, l = i.grid && e.grid && e.grid.rows > 1, a = (f) => D(s, `.${e.slideClass}${f}, swiper-slide${f}`)[0];
  let d, o, c;
  if (r)
    if (e.loop) {
      let f = n - i.virtual.slidesBefore;
      f < 0 && (f = i.virtual.slides.length + f), f >= i.virtual.slides.length && (f -= i.virtual.slides.length), d = a(`[data-swiper-slide-index="${f}"]`);
    } else
      d = a(`[data-swiper-slide-index="${n}"]`);
  else
    l ? (d = t.find((f) => f.column === n), c = t.find((f) => f.column === n + 1), o = t.find((f) => f.column === n - 1)) : d = t[n];
  d && (l || (c = Te(d, `.${e.slideClass}, swiper-slide`)[0], e.loop && !c && (c = t[0]), o = xe(d, `.${e.slideClass}, swiper-slide`)[0], e.loop && !o === 0 && (o = t[t.length - 1]))), t.forEach((f) => {
    U(f, f === d, e.slideActiveClass), U(f, f === c, e.slideNextClass), U(f, f === o, e.slidePrevClass);
  }), i.emitSlidesClasses();
}
const H = (i, t) => {
  if (!i || i.destroyed || !i.params) return;
  const e = () => i.isElement ? "swiper-slide" : `.${i.params.slideClass}`, s = t.closest(e());
  if (s) {
    let n = s.querySelector(`.${i.params.lazyPreloaderClass}`);
    !n && i.isElement && (s.shadowRoot ? n = s.shadowRoot.querySelector(`.${i.params.lazyPreloaderClass}`) : requestAnimationFrame(() => {
      s.shadowRoot && (n = s.shadowRoot.querySelector(`.${i.params.lazyPreloaderClass}`), n && n.remove());
    })), n && n.remove();
  }
}, K = (i, t) => {
  if (!i.slides[t]) return;
  const e = i.slides[t].querySelector('[loading="lazy"]');
  e && e.removeAttribute("loading");
}, ee = (i) => {
  if (!i || i.destroyed || !i.params) return;
  let t = i.params.lazyPreloadPrevNext;
  const e = i.slides.length;
  if (!e || !t || t < 0) return;
  t = Math.min(t, e);
  const s = i.params.slidesPerView === "auto" ? i.slidesPerViewDynamic() : Math.ceil(i.params.slidesPerView), n = i.activeIndex;
  if (i.params.grid && i.params.grid.rows > 1) {
    const l = n, a = [l - t];
    a.push(...Array.from({
      length: t
    }).map((d, o) => l + s + o)), i.slides.forEach((d, o) => {
      a.includes(d.column) && K(i, o);
    });
    return;
  }
  const r = n + s - 1;
  if (i.params.rewind || i.params.loop)
    for (let l = n - t; l <= r + t; l += 1) {
      const a = (l % e + e) % e;
      (a < n || a > r) && K(i, a);
    }
  else
    for (let l = Math.max(n - t, 0); l <= Math.min(r + t, e - 1); l += 1)
      l !== n && (l > r || l < n) && K(i, l);
};
function Be(i) {
  const {
    slidesGrid: t,
    params: e
  } = i, s = i.rtlTranslate ? i.translate : -i.translate;
  let n;
  for (let r = 0; r < t.length; r += 1)
    typeof t[r + 1] < "u" ? s >= t[r] && s < t[r + 1] - (t[r + 1] - t[r]) / 2 ? n = r : s >= t[r] && s < t[r + 1] && (n = r + 1) : s >= t[r] && (n = r);
  return e.normalizeSlideIndex && (n < 0 || typeof n > "u") && (n = 0), n;
}
function Fe(i) {
  const t = this, e = t.rtlTranslate ? t.translate : -t.translate, {
    snapGrid: s,
    params: n,
    activeIndex: r,
    realIndex: l,
    snapIndex: a
  } = t;
  let d = i, o;
  const c = (p) => {
    let h = p - t.virtual.slidesBefore;
    return h < 0 && (h = t.virtual.slides.length + h), h >= t.virtual.slides.length && (h -= t.virtual.slides.length), h;
  };
  if (typeof d > "u" && (d = Be(t)), s.indexOf(e) >= 0)
    o = s.indexOf(e);
  else {
    const p = Math.min(n.slidesPerGroupSkip, d);
    o = p + Math.floor((d - p) / n.slidesPerGroup);
  }
  if (o >= s.length && (o = s.length - 1), d === r && !t.params.loop) {
    o !== a && (t.snapIndex = o, t.emit("snapIndexChange"));
    return;
  }
  if (d === r && t.params.loop && t.virtual && t.params.virtual.enabled) {
    t.realIndex = c(d);
    return;
  }
  const f = t.grid && n.grid && n.grid.rows > 1;
  let u;
  if (t.virtual && n.virtual.enabled && n.loop)
    u = c(d);
  else if (f) {
    const p = t.slides.find((v) => v.column === d);
    let h = parseInt(p.getAttribute("data-swiper-slide-index"), 10);
    Number.isNaN(h) && (h = Math.max(t.slides.indexOf(p), 0)), u = Math.floor(h / n.grid.rows);
  } else if (t.slides[d]) {
    const p = t.slides[d].getAttribute("data-swiper-slide-index");
    p ? u = parseInt(p, 10) : u = d;
  } else
    u = d;
  Object.assign(t, {
    previousSnapIndex: a,
    snapIndex: o,
    previousRealIndex: l,
    realIndex: u,
    previousIndex: r,
    activeIndex: d
  }), t.initialized && ee(t), t.emit("activeIndexChange"), t.emit("snapIndexChange"), (t.initialized || t.params.runCallbacksOnInit) && (l !== u && t.emit("realIndexChange"), t.emit("slideChange"));
}
function Ne(i, t) {
  const e = this, s = e.params;
  let n = i.closest(`.${s.slideClass}, swiper-slide`);
  !n && e.isElement && t && t.length > 1 && t.includes(i) && [...t.slice(t.indexOf(i) + 1, t.length)].forEach((a) => {
    !n && a.matches && a.matches(`.${s.slideClass}, swiper-slide`) && (n = a);
  });
  let r = !1, l;
  if (n) {
    for (let a = 0; a < e.slides.length; a += 1)
      if (e.slides[a] === n) {
        r = !0, l = a;
        break;
      }
  }
  if (n && r)
    e.clickedSlide = n, e.virtual && e.params.virtual.enabled ? e.clickedIndex = parseInt(n.getAttribute("data-swiper-slide-index"), 10) : e.clickedIndex = l;
  else {
    e.clickedSlide = void 0, e.clickedIndex = void 0;
    return;
  }
  s.slideToClickedSlide && e.clickedIndex !== void 0 && e.clickedIndex !== e.activeIndex && e.slideToClickedSlide();
}
var _e = {
  updateSize: ze,
  updateSlides: Oe,
  updateAutoHeight: Ae,
  updateSlidesOffset: Ge,
  updateSlidesProgress: ke,
  updateProgress: Ve,
  updateSlidesClasses: De,
  updateActiveIndex: Fe,
  updateClickedSlide: Ne
};
function Re(i) {
  i === void 0 && (i = this.isHorizontal() ? "x" : "y");
  const t = this, {
    params: e,
    rtlTranslate: s,
    translate: n,
    wrapperEl: r
  } = t;
  if (e.virtualTranslate)
    return s ? -n : n;
  if (e.cssMode)
    return n;
  let l = Se(r, i);
  return l += t.cssOverflowAdjustment(), s && (l = -l), l || 0;
}
function $e(i, t) {
  const e = this, {
    rtlTranslate: s,
    params: n,
    wrapperEl: r,
    progress: l
  } = e;
  let a = 0, d = 0;
  const o = 0;
  e.isHorizontal() ? a = s ? -i : i : d = i, n.roundLengths && (a = Math.floor(a), d = Math.floor(d)), e.previousTranslate = e.translate, e.translate = e.isHorizontal() ? a : d, n.cssMode ? r[e.isHorizontal() ? "scrollLeft" : "scrollTop"] = e.isHorizontal() ? -a : -d : n.virtualTranslate || (e.isHorizontal() ? a -= e.cssOverflowAdjustment() : d -= e.cssOverflowAdjustment(), r.style.transform = `translate3d(${a}px, ${d}px, ${o}px)`);
  let c;
  const f = e.maxTranslate() - e.minTranslate();
  f === 0 ? c = 0 : c = (i - e.minTranslate()) / f, c !== l && e.updateProgress(i), e.emit("setTranslate", e.translate, t);
}
function He() {
  return -this.snapGrid[0];
}
function We() {
  return -this.snapGrid[this.snapGrid.length - 1];
}
function Ye(i, t, e, s, n) {
  i === void 0 && (i = 0), t === void 0 && (t = this.params.speed), e === void 0 && (e = !0), s === void 0 && (s = !0);
  const r = this, {
    params: l,
    wrapperEl: a
  } = r;
  if (r.animating && l.preventInteractionOnTransition)
    return !1;
  const d = r.minTranslate(), o = r.maxTranslate();
  let c;
  if (s && i > d ? c = d : s && i < o ? c = o : c = i, r.updateProgress(c), l.cssMode) {
    const f = r.isHorizontal();
    if (t === 0)
      a[f ? "scrollLeft" : "scrollTop"] = -c;
    else {
      if (!r.support.smoothScroll)
        return ce({
          swiper: r,
          targetPosition: -c,
          side: f ? "left" : "top"
        }), !0;
      a.scrollTo({
        [f ? "left" : "top"]: -c,
        behavior: "smooth"
      });
    }
    return !0;
  }
  return t === 0 ? (r.setTransition(0), r.setTranslate(c), e && (r.emit("beforeTransitionStart", t, n), r.emit("transitionEnd"))) : (r.setTransition(t), r.setTranslate(c), e && (r.emit("beforeTransitionStart", t, n), r.emit("transitionStart")), r.animating || (r.animating = !0, r.onTranslateToWrapperTransitionEnd || (r.onTranslateToWrapperTransitionEnd = function(u) {
    !r || r.destroyed || u.target === this && (r.wrapperEl.removeEventListener("transitionend", r.onTranslateToWrapperTransitionEnd), r.onTranslateToWrapperTransitionEnd = null, delete r.onTranslateToWrapperTransitionEnd, r.animating = !1, e && r.emit("transitionEnd"));
  }), r.wrapperEl.addEventListener("transitionend", r.onTranslateToWrapperTransitionEnd))), !0;
}
var Xe = {
  getTranslate: Re,
  setTranslate: $e,
  minTranslate: He,
  maxTranslate: We,
  translateTo: Ye
};
function qe(i, t) {
  const e = this;
  e.params.cssMode || (e.wrapperEl.style.transitionDuration = `${i}ms`, e.wrapperEl.style.transitionDelay = i === 0 ? "0ms" : ""), e.emit("setTransition", i, t);
}
function he(i) {
  let {
    swiper: t,
    runCallbacks: e,
    direction: s,
    step: n
  } = i;
  const {
    activeIndex: r,
    previousIndex: l
  } = t;
  let a = s;
  a || (r > l ? a = "next" : r < l ? a = "prev" : a = "reset"), t.emit(`transition${n}`), e && a === "reset" ? t.emit(`slideResetTransition${n}`) : e && r !== l && (t.emit(`slideChangeTransition${n}`), a === "next" ? t.emit(`slideNextTransition${n}`) : t.emit(`slidePrevTransition${n}`));
}
function je(i, t) {
  i === void 0 && (i = !0);
  const e = this, {
    params: s
  } = e;
  s.cssMode || (s.autoHeight && e.updateAutoHeight(), he({
    swiper: e,
    runCallbacks: i,
    direction: t,
    step: "Start"
  }));
}
function Ue(i, t) {
  i === void 0 && (i = !0);
  const e = this, {
    params: s
  } = e;
  e.animating = !1, !s.cssMode && (e.setTransition(0), he({
    swiper: e,
    runCallbacks: i,
    direction: t,
    step: "End"
  }));
}
var Ke = {
  setTransition: qe,
  transitionStart: je,
  transitionEnd: Ue
};
function Je(i, t, e, s, n) {
  i === void 0 && (i = 0), e === void 0 && (e = !0), typeof i == "string" && (i = parseInt(i, 10));
  const r = this;
  let l = i;
  l < 0 && (l = 0);
  const {
    params: a,
    snapGrid: d,
    slidesGrid: o,
    previousIndex: c,
    activeIndex: f,
    rtlTranslate: u,
    wrapperEl: p,
    enabled: h
  } = r;
  if (!h && !s && !n || r.destroyed || r.animating && a.preventInteractionOnTransition)
    return !1;
  typeof t > "u" && (t = r.params.speed);
  const v = Math.min(r.params.slidesPerGroupSkip, l);
  let E = v + Math.floor((l - v) / r.params.slidesPerGroup);
  E >= d.length && (E = d.length - 1);
  const m = -d[E];
  if (a.normalizeSlideIndex)
    for (let I = 0; I < o.length; I += 1) {
      const y = -Math.floor(m * 100), O = Math.floor(o[I] * 100), w = Math.floor(o[I + 1] * 100);
      typeof o[I + 1] < "u" ? y >= O && y < w - (w - O) / 2 ? l = I : y >= O && y < w && (l = I + 1) : y >= O && (l = I);
    }
  if (r.initialized && l !== f && (!r.allowSlideNext && (u ? m > r.translate && m > r.minTranslate() : m < r.translate && m < r.minTranslate()) || !r.allowSlidePrev && m > r.translate && m > r.maxTranslate() && (f || 0) !== l))
    return !1;
  l !== (c || 0) && e && r.emit("beforeSlideChangeStart"), r.updateProgress(m);
  let S;
  l > f ? S = "next" : l < f ? S = "prev" : S = "reset";
  const g = r.virtual && r.params.virtual.enabled;
  if (!(g && n) && (u && -m === r.translate || !u && m === r.translate))
    return r.updateActiveIndex(l), a.autoHeight && r.updateAutoHeight(), r.updateSlidesClasses(), a.effect !== "slide" && r.setTranslate(m), S !== "reset" && (r.transitionStart(e, S), r.transitionEnd(e, S)), !1;
  if (a.cssMode) {
    const I = r.isHorizontal(), y = u ? m : -m;
    if (t === 0)
      g && (r.wrapperEl.style.scrollSnapType = "none", r._immediateVirtual = !0), g && !r._cssModeVirtualInitialSet && r.params.initialSlide > 0 ? (r._cssModeVirtualInitialSet = !0, requestAnimationFrame(() => {
        p[I ? "scrollLeft" : "scrollTop"] = y;
      })) : p[I ? "scrollLeft" : "scrollTop"] = y, g && requestAnimationFrame(() => {
        r.wrapperEl.style.scrollSnapType = "", r._immediateVirtual = !1;
      });
    else {
      if (!r.support.smoothScroll)
        return ce({
          swiper: r,
          targetPosition: y,
          side: I ? "left" : "top"
        }), !0;
      p.scrollTo({
        [I ? "left" : "top"]: y,
        behavior: "smooth"
      });
    }
    return !0;
  }
  const C = pe().isSafari;
  return g && !n && C && r.isElement && r.virtual.update(!1, !1, l), r.setTransition(t), r.setTranslate(m), r.updateActiveIndex(l), r.updateSlidesClasses(), r.emit("beforeTransitionStart", t, s), r.transitionStart(e, S), t === 0 ? r.transitionEnd(e, S) : r.animating || (r.animating = !0, r.onSlideToWrapperTransitionEnd || (r.onSlideToWrapperTransitionEnd = function(y) {
    !r || r.destroyed || y.target === this && (r.wrapperEl.removeEventListener("transitionend", r.onSlideToWrapperTransitionEnd), r.onSlideToWrapperTransitionEnd = null, delete r.onSlideToWrapperTransitionEnd, r.transitionEnd(e, S));
  }), r.wrapperEl.addEventListener("transitionend", r.onSlideToWrapperTransitionEnd)), !0;
}
function Qe(i, t, e, s) {
  i === void 0 && (i = 0), e === void 0 && (e = !0), typeof i == "string" && (i = parseInt(i, 10));
  const n = this;
  if (n.destroyed) return;
  typeof t > "u" && (t = n.params.speed);
  const r = n.grid && n.params.grid && n.params.grid.rows > 1;
  let l = i;
  if (n.params.loop)
    if (n.virtual && n.params.virtual.enabled)
      l = l + n.virtual.slidesBefore;
    else {
      let a;
      if (r) {
        const u = l * n.params.grid.rows;
        a = n.slides.find((p) => p.getAttribute("data-swiper-slide-index") * 1 === u).column;
      } else
        a = n.getSlideIndexByData(l);
      const d = r ? Math.ceil(n.slides.length / n.params.grid.rows) : n.slides.length, {
        centeredSlides: o
      } = n.params;
      let c = n.params.slidesPerView;
      c === "auto" ? c = n.slidesPerViewDynamic() : (c = Math.ceil(parseFloat(n.params.slidesPerView, 10)), o && c % 2 === 0 && (c = c + 1));
      let f = d - a < c;
      if (o && (f = f || a < Math.ceil(c / 2)), s && o && n.params.slidesPerView !== "auto" && !r && (f = !1), f) {
        const u = o ? a < n.activeIndex ? "prev" : "next" : a - n.activeIndex - 1 < n.params.slidesPerView ? "next" : "prev";
        n.loopFix({
          direction: u,
          slideTo: !0,
          activeSlideIndex: u === "next" ? a + 1 : a - d + 1,
          slideRealIndex: u === "next" ? n.realIndex : void 0
        });
      }
      if (r) {
        const u = l * n.params.grid.rows;
        l = n.slides.find((p) => p.getAttribute("data-swiper-slide-index") * 1 === u).column;
      } else
        l = n.getSlideIndexByData(l);
    }
  return requestAnimationFrame(() => {
    n.slideTo(l, t, e, s);
  }), n;
}
function Ze(i, t, e) {
  t === void 0 && (t = !0);
  const s = this, {
    enabled: n,
    params: r,
    animating: l
  } = s;
  if (!n || s.destroyed) return s;
  typeof i > "u" && (i = s.params.speed);
  let a = r.slidesPerGroup;
  r.slidesPerView === "auto" && r.slidesPerGroup === 1 && r.slidesPerGroupAuto && (a = Math.max(s.slidesPerViewDynamic("current", !0), 1));
  const d = s.activeIndex < r.slidesPerGroupSkip ? 1 : a, o = s.virtual && r.virtual.enabled;
  if (r.loop) {
    if (l && !o && r.loopPreventsSliding) return !1;
    if (s.loopFix({
      direction: "next"
    }), s._clientLeft = s.wrapperEl.clientLeft, s.activeIndex === s.slides.length - 1 && r.cssMode)
      return requestAnimationFrame(() => {
        s.slideTo(s.activeIndex + d, i, t, e);
      }), !0;
  }
  return r.rewind && s.isEnd ? s.slideTo(0, i, t, e) : s.slideTo(s.activeIndex + d, i, t, e);
}
function et(i, t, e) {
  t === void 0 && (t = !0);
  const s = this, {
    params: n,
    snapGrid: r,
    slidesGrid: l,
    rtlTranslate: a,
    enabled: d,
    animating: o
  } = s;
  if (!d || s.destroyed) return s;
  typeof i > "u" && (i = s.params.speed);
  const c = s.virtual && n.virtual.enabled;
  if (n.loop) {
    if (o && !c && n.loopPreventsSliding) return !1;
    s.loopFix({
      direction: "prev"
    }), s._clientLeft = s.wrapperEl.clientLeft;
  }
  const f = a ? s.translate : -s.translate;
  function u(S) {
    return S < 0 ? -Math.floor(Math.abs(S)) : Math.floor(S);
  }
  const p = u(f), h = r.map((S) => u(S)), v = n.freeMode && n.freeMode.enabled;
  let E = r[h.indexOf(p) - 1];
  if (typeof E > "u" && (n.cssMode || v)) {
    let S;
    r.forEach((g, b) => {
      p >= g && (S = b);
    }), typeof S < "u" && (E = v ? r[S] : r[S > 0 ? S - 1 : S]);
  }
  let m = 0;
  if (typeof E < "u" && (m = l.indexOf(E), m < 0 && (m = s.activeIndex - 1), n.slidesPerView === "auto" && n.slidesPerGroup === 1 && n.slidesPerGroupAuto && (m = m - s.slidesPerViewDynamic("previous", !0) + 1, m = Math.max(m, 0))), n.rewind && s.isBeginning) {
    const S = s.params.virtual && s.params.virtual.enabled && s.virtual ? s.virtual.slides.length - 1 : s.slides.length - 1;
    return s.slideTo(S, i, t, e);
  } else if (n.loop && s.activeIndex === 0 && n.cssMode)
    return requestAnimationFrame(() => {
      s.slideTo(m, i, t, e);
    }), !0;
  return s.slideTo(m, i, t, e);
}
function tt(i, t, e) {
  t === void 0 && (t = !0);
  const s = this;
  if (!s.destroyed)
    return typeof i > "u" && (i = s.params.speed), s.slideTo(s.activeIndex, i, t, e);
}
function it(i, t, e, s) {
  t === void 0 && (t = !0), s === void 0 && (s = 0.5);
  const n = this;
  if (n.destroyed) return;
  typeof i > "u" && (i = n.params.speed);
  let r = n.activeIndex;
  const l = Math.min(n.params.slidesPerGroupSkip, r), a = l + Math.floor((r - l) / n.params.slidesPerGroup), d = n.rtlTranslate ? n.translate : -n.translate;
  if (d >= n.snapGrid[a]) {
    const o = n.snapGrid[a], c = n.snapGrid[a + 1];
    d - o > (c - o) * s && (r += n.params.slidesPerGroup);
  } else {
    const o = n.snapGrid[a - 1], c = n.snapGrid[a];
    d - o <= (c - o) * s && (r -= n.params.slidesPerGroup);
  }
  return r = Math.max(r, 0), r = Math.min(r, n.slidesGrid.length - 1), n.slideTo(r, i, t, e);
}
function st() {
  const i = this;
  if (i.destroyed) return;
  const {
    params: t,
    slidesEl: e
  } = i, s = t.slidesPerView === "auto" ? i.slidesPerViewDynamic() : t.slidesPerView;
  let n = i.getSlideIndexWhenGrid(i.clickedIndex), r;
  const l = i.isElement ? "swiper-slide" : `.${t.slideClass}`, a = i.grid && i.params.grid && i.params.grid.rows > 1;
  if (t.loop) {
    if (i.animating) return;
    r = parseInt(i.clickedSlide.getAttribute("data-swiper-slide-index"), 10), t.centeredSlides ? i.slideToLoop(r) : n > (a ? (i.slides.length - s) / 2 - (i.params.grid.rows - 1) : i.slides.length - s) ? (i.loopFix(), n = i.getSlideIndex(D(e, `${l}[data-swiper-slide-index="${r}"]`)[0]), de(() => {
      i.slideTo(n);
    })) : i.slideTo(n);
  } else
    i.slideTo(n);
}
var rt = {
  slideTo: Je,
  slideToLoop: Qe,
  slideNext: Ze,
  slidePrev: et,
  slideReset: tt,
  slideToClosest: it,
  slideToClickedSlide: st
};
function nt(i, t) {
  const e = this, {
    params: s,
    slidesEl: n
  } = e;
  if (!s.loop || e.virtual && e.params.virtual.enabled) return;
  const r = () => {
    D(n, `.${s.slideClass}, swiper-slide`).forEach((p, h) => {
      p.setAttribute("data-swiper-slide-index", h);
    });
  }, l = () => {
    const u = D(n, `.${s.slideBlankClass}`);
    u.forEach((p) => {
      p.remove();
    }), u.length > 0 && (e.recalcSlides(), e.updateSlides());
  }, a = e.grid && s.grid && s.grid.rows > 1;
  s.loopAddBlankSlides && (s.slidesPerGroup > 1 || a) && l();
  const d = s.slidesPerGroup * (a ? s.grid.rows : 1), o = e.slides.length % d !== 0, c = a && e.slides.length % s.grid.rows !== 0, f = (u) => {
    for (let p = 0; p < u; p += 1) {
      const h = e.isElement ? Z("swiper-slide", [s.slideBlankClass]) : Z("div", [s.slideClass, s.slideBlankClass]);
      e.slidesEl.append(h);
    }
  };
  if (o) {
    if (s.loopAddBlankSlides) {
      const u = d - e.slides.length % d;
      f(u), e.recalcSlides(), e.updateSlides();
    } else
      W("Swiper Loop Warning: The number of slides is not even to slidesPerGroup, loop mode may not function properly. You need to add more slides (or make duplicates, or empty slides)");
    r();
  } else if (c) {
    if (s.loopAddBlankSlides) {
      const u = s.grid.rows - e.slides.length % s.grid.rows;
      f(u), e.recalcSlides(), e.updateSlides();
    } else
      W("Swiper Loop Warning: The number of slides is not even to grid.rows, loop mode may not function properly. You need to add more slides (or make duplicates, or empty slides)");
    r();
  } else
    r();
  e.loopFix({
    slideRealIndex: i,
    direction: s.centeredSlides ? void 0 : "next",
    initial: t
  });
}
function at(i) {
  let {
    slideRealIndex: t,
    slideTo: e = !0,
    direction: s,
    setTranslate: n,
    activeSlideIndex: r,
    initial: l,
    byController: a,
    byMousewheel: d
  } = i === void 0 ? {} : i;
  const o = this;
  if (!o.params.loop) return;
  o.emit("beforeLoopFix");
  const {
    slides: c,
    allowSlidePrev: f,
    allowSlideNext: u,
    slidesEl: p,
    params: h
  } = o, {
    centeredSlides: v,
    initialSlide: E
  } = h;
  if (o.allowSlidePrev = !0, o.allowSlideNext = !0, o.virtual && h.virtual.enabled) {
    e && (!h.centeredSlides && o.snapIndex === 0 ? o.slideTo(o.virtual.slides.length, 0, !1, !0) : h.centeredSlides && o.snapIndex < h.slidesPerView ? o.slideTo(o.virtual.slides.length + o.snapIndex, 0, !1, !0) : o.snapIndex === o.snapGrid.length - 1 && o.slideTo(o.virtual.slidesBefore, 0, !1, !0)), o.allowSlidePrev = f, o.allowSlideNext = u, o.emit("loopFix");
    return;
  }
  let m = h.slidesPerView;
  m === "auto" ? m = o.slidesPerViewDynamic() : (m = Math.ceil(parseFloat(h.slidesPerView, 10)), v && m % 2 === 0 && (m = m + 1));
  const S = h.slidesPerGroupAuto ? m : h.slidesPerGroup;
  let g = v ? Math.max(S, Math.ceil(m / 2)) : S;
  g % S !== 0 && (g += S - g % S), g += h.loopAdditionalSlides, o.loopedSlides = g;
  const b = o.grid && h.grid && h.grid.rows > 1;
  c.length < m + g || o.params.effect === "cards" && c.length < m + g * 2 ? W("Swiper Loop Warning: The number of slides is not enough for loop mode, it will be disabled or not function properly. You need to add more slides (or make duplicates) or lower the values of slidesPerView and slidesPerGroup parameters") : b && h.grid.fill === "row" && W("Swiper Loop Warning: Loop mode is not compatible with grid.fill = `row`");
  const T = [], C = [], I = b ? Math.ceil(c.length / h.grid.rows) : c.length, y = l && I - E < m && !v;
  let O = y ? E : o.activeIndex;
  typeof r > "u" ? r = o.getSlideIndex(c.find((P) => P.classList.contains(h.slideActiveClass))) : O = r;
  const w = s === "next" || !s, x = s === "prev" || !s;
  let M = 0, L = 0;
  const F = (b ? c[r].column : r) + (v && typeof n > "u" ? -m / 2 + 0.5 : 0);
  if (F < g) {
    M = Math.max(g - F, S);
    for (let P = 0; P < g - F; P += 1) {
      const z = P - Math.floor(P / I) * I;
      if (b) {
        const A = I - z - 1;
        for (let V = c.length - 1; V >= 0; V -= 1)
          c[V].column === A && T.push(V);
      } else
        T.push(I - z - 1);
    }
  } else if (F + m > I - g) {
    L = Math.max(F - (I - g * 2), S), y && (L = Math.max(L, m - I + E + 1));
    for (let P = 0; P < L; P += 1) {
      const z = P - Math.floor(P / I) * I;
      b ? c.forEach((A, V) => {
        A.column === z && C.push(V);
      }) : C.push(z);
    }
  }
  if (o.__preventObserver__ = !0, requestAnimationFrame(() => {
    o.__preventObserver__ = !1;
  }), o.params.effect === "cards" && c.length < m + g * 2 && (C.includes(r) && C.splice(C.indexOf(r), 1), T.includes(r) && T.splice(T.indexOf(r), 1)), x && T.forEach((P) => {
    c[P].swiperLoopMoveDOM = !0, p.prepend(c[P]), c[P].swiperLoopMoveDOM = !1;
  }), w && C.forEach((P) => {
    c[P].swiperLoopMoveDOM = !0, p.append(c[P]), c[P].swiperLoopMoveDOM = !1;
  }), o.recalcSlides(), h.slidesPerView === "auto" ? o.updateSlides() : b && (T.length > 0 && x || C.length > 0 && w) && o.slides.forEach((P, z) => {
    o.grid.updateSlide(z, P, o.slides);
  }), h.watchSlidesProgress && o.updateSlidesOffset(), e) {
    if (T.length > 0 && x) {
      if (typeof t > "u") {
        const P = o.slidesGrid[O], A = o.slidesGrid[O + M] - P;
        d ? o.setTranslate(o.translate - A) : (o.slideTo(O + Math.ceil(M), 0, !1, !0), n && (o.touchEventsData.startTranslate = o.touchEventsData.startTranslate - A, o.touchEventsData.currentTranslate = o.touchEventsData.currentTranslate - A));
      } else if (n) {
        const P = b ? T.length / h.grid.rows : T.length;
        o.slideTo(o.activeIndex + P, 0, !1, !0), o.touchEventsData.currentTranslate = o.translate;
      }
    } else if (C.length > 0 && w)
      if (typeof t > "u") {
        const P = o.slidesGrid[O], A = o.slidesGrid[O - L] - P;
        d ? o.setTranslate(o.translate - A) : (o.slideTo(O - L, 0, !1, !0), n && (o.touchEventsData.startTranslate = o.touchEventsData.startTranslate - A, o.touchEventsData.currentTranslate = o.touchEventsData.currentTranslate - A));
      } else {
        const P = b ? C.length / h.grid.rows : C.length;
        o.slideTo(o.activeIndex - P, 0, !1, !0);
      }
  }
  if (o.allowSlidePrev = f, o.allowSlideNext = u, o.controller && o.controller.control && !a) {
    const P = {
      slideRealIndex: t,
      direction: s,
      setTranslate: n,
      activeSlideIndex: r,
      byController: !0
    };
    Array.isArray(o.controller.control) ? o.controller.control.forEach((z) => {
      !z.destroyed && z.params.loop && z.loopFix({
        ...P,
        slideTo: z.params.slidesPerView === h.slidesPerView ? e : !1
      });
    }) : o.controller.control instanceof o.constructor && o.controller.control.params.loop && o.controller.control.loopFix({
      ...P,
      slideTo: o.controller.control.params.slidesPerView === h.slidesPerView ? e : !1
    });
  }
  o.emit("loopFix");
}
function lt() {
  const i = this, {
    params: t,
    slidesEl: e
  } = i;
  if (!t.loop || !e || i.virtual && i.params.virtual.enabled) return;
  i.recalcSlides();
  const s = [];
  i.slides.forEach((n) => {
    const r = typeof n.swiperSlideIndex > "u" ? n.getAttribute("data-swiper-slide-index") * 1 : n.swiperSlideIndex;
    s[r] = n;
  }), i.slides.forEach((n) => {
    n.removeAttribute("data-swiper-slide-index");
  }), s.forEach((n) => {
    e.append(n);
  }), i.recalcSlides(), i.slideTo(i.realIndex, 0);
}
var ot = {
  loopCreate: nt,
  loopFix: at,
  loopDestroy: lt
};
function dt(i) {
  const t = this;
  if (!t.params.simulateTouch || t.params.watchOverflow && t.isLocked || t.params.cssMode) return;
  const e = t.params.touchEventsTarget === "container" ? t.el : t.wrapperEl;
  t.isElement && (t.__preventObserver__ = !0), e.style.cursor = "move", e.style.cursor = i ? "grabbing" : "grab", t.isElement && requestAnimationFrame(() => {
    t.__preventObserver__ = !1;
  });
}
function ct() {
  const i = this;
  i.params.watchOverflow && i.isLocked || i.params.cssMode || (i.isElement && (i.__preventObserver__ = !0), i[i.params.touchEventsTarget === "container" ? "el" : "wrapperEl"].style.cursor = "", i.isElement && requestAnimationFrame(() => {
    i.__preventObserver__ = !1;
  }));
}
var ft = {
  setGrabCursor: dt,
  unsetGrabCursor: ct
};
function ut(i, t) {
  t === void 0 && (t = this);
  function e(s) {
    if (!s || s === R() || s === _()) return null;
    s.assignedSlot && (s = s.assignedSlot);
    const n = s.closest(i);
    return !n && !s.getRootNode ? null : n || e(s.getRootNode().host);
  }
  return e(t);
}
function ne(i, t, e) {
  const s = _(), {
    params: n
  } = i, r = n.edgeSwipeDetection, l = n.edgeSwipeThreshold;
  return r && (e <= l || e >= s.innerWidth - l) ? r === "prevent" ? (t.preventDefault(), !0) : !1 : !0;
}
function pt(i) {
  const t = this, e = R();
  let s = i;
  s.originalEvent && (s = s.originalEvent);
  const n = t.touchEventsData;
  if (s.type === "pointerdown") {
    if (n.pointerId !== null && n.pointerId !== s.pointerId)
      return;
    n.pointerId = s.pointerId;
  } else s.type === "touchstart" && s.targetTouches.length === 1 && (n.touchId = s.targetTouches[0].identifier);
  if (s.type === "touchstart") {
    ne(t, s, s.targetTouches[0].pageX);
    return;
  }
  const {
    params: r,
    touches: l,
    enabled: a
  } = t;
  if (!a || !r.simulateTouch && s.pointerType === "mouse" || t.animating && r.preventInteractionOnTransition)
    return;
  !t.animating && r.cssMode && r.loop && t.loopFix();
  let d = s.target;
  if (r.touchEventsTarget === "wrapper" && !be(d, t.wrapperEl) || "which" in s && s.which === 3 || "button" in s && s.button > 0 || n.isTouched && n.isMoved) return;
  const o = !!r.noSwipingClass && r.noSwipingClass !== "", c = s.composedPath ? s.composedPath() : s.path;
  o && s.target && s.target.shadowRoot && c && (d = c[0]);
  const f = r.noSwipingSelector ? r.noSwipingSelector : `.${r.noSwipingClass}`, u = !!(s.target && s.target.shadowRoot);
  if (r.noSwiping && (u ? ut(f, d) : d.closest(f))) {
    t.allowClick = !0;
    return;
  }
  if (r.swipeHandler && !d.closest(r.swipeHandler))
    return;
  l.currentX = s.pageX, l.currentY = s.pageY;
  const p = l.currentX, h = l.currentY;
  if (!ne(t, s, p))
    return;
  Object.assign(n, {
    isTouched: !0,
    isMoved: !1,
    allowTouchCallbacks: !0,
    isScrolling: void 0,
    startMoving: void 0
  }), l.startX = p, l.startY = h, n.touchStartTime = Y(), t.allowClick = !0, t.updateSize(), t.swipeDirection = void 0, r.threshold > 0 && (n.allowThresholdMove = !1);
  let v = !0;
  d.matches(n.focusableElements) && (v = !1, d.nodeName === "SELECT" && (n.isTouched = !1)), e.activeElement && e.activeElement.matches(n.focusableElements) && e.activeElement !== d && (s.pointerType === "mouse" || s.pointerType !== "mouse" && !d.matches(n.focusableElements)) && e.activeElement.blur();
  const E = v && t.allowTouchMove && r.touchStartPreventDefault;
  (r.touchStartForcePreventDefault || E) && !d.isContentEditable && s.preventDefault(), r.freeMode && r.freeMode.enabled && t.freeMode && t.animating && !r.cssMode && t.freeMode.onTouchStart(), t.emit("touchStart", s);
}
function ht(i) {
  const t = R(), e = this, s = e.touchEventsData, {
    params: n,
    touches: r,
    rtlTranslate: l,
    enabled: a
  } = e;
  if (!a || !n.simulateTouch && i.pointerType === "mouse") return;
  let d = i;
  if (d.originalEvent && (d = d.originalEvent), d.type === "pointermove" && (s.touchId !== null || d.pointerId !== s.pointerId))
    return;
  let o;
  if (d.type === "touchmove") {
    if (o = [...d.changedTouches].find((T) => T.identifier === s.touchId), !o || o.identifier !== s.touchId) return;
  } else
    o = d;
  if (!s.isTouched) {
    s.startMoving && s.isScrolling && e.emit("touchMoveOpposite", d);
    return;
  }
  const c = o.pageX, f = o.pageY;
  if (d.preventedByNestedSwiper) {
    r.startX = c, r.startY = f;
    return;
  }
  if (!e.allowTouchMove) {
    d.target.matches(s.focusableElements) || (e.allowClick = !1), s.isTouched && (Object.assign(r, {
      startX: c,
      startY: f,
      currentX: c,
      currentY: f
    }), s.touchStartTime = Y());
    return;
  }
  if (n.touchReleaseOnEdges && !n.loop)
    if (e.isVertical()) {
      if (f < r.startY && e.translate <= e.maxTranslate() || f > r.startY && e.translate >= e.minTranslate()) {
        s.isTouched = !1, s.isMoved = !1;
        return;
      }
    } else {
      if (l && (c > r.startX && -e.translate <= e.maxTranslate() || c < r.startX && -e.translate >= e.minTranslate()))
        return;
      if (!l && (c < r.startX && e.translate <= e.maxTranslate() || c > r.startX && e.translate >= e.minTranslate()))
        return;
    }
  if (t.activeElement && t.activeElement.matches(s.focusableElements) && t.activeElement !== d.target && d.pointerType !== "mouse" && t.activeElement.blur(), t.activeElement && d.target === t.activeElement && d.target.matches(s.focusableElements)) {
    s.isMoved = !0, e.allowClick = !1;
    return;
  }
  s.allowTouchCallbacks && e.emit("touchMove", d), r.previousX = r.currentX, r.previousY = r.currentY, r.currentX = c, r.currentY = f;
  const u = r.currentX - r.startX, p = r.currentY - r.startY;
  if (e.params.threshold && Math.sqrt(u ** 2 + p ** 2) < e.params.threshold) return;
  if (typeof s.isScrolling > "u") {
    let T;
    e.isHorizontal() && r.currentY === r.startY || e.isVertical() && r.currentX === r.startX ? s.isScrolling = !1 : u * u + p * p >= 25 && (T = Math.atan2(Math.abs(p), Math.abs(u)) * 180 / Math.PI, s.isScrolling = e.isHorizontal() ? T > n.touchAngle : 90 - T > n.touchAngle);
  }
  if (s.isScrolling && e.emit("touchMoveOpposite", d), typeof s.startMoving > "u" && (r.currentX !== r.startX || r.currentY !== r.startY) && (s.startMoving = !0), s.isScrolling || d.type === "touchmove" && s.preventTouchMoveFromPointerMove) {
    s.isTouched = !1;
    return;
  }
  if (!s.startMoving)
    return;
  e.allowClick = !1, !n.cssMode && d.cancelable && d.preventDefault(), n.touchMoveStopPropagation && !n.nested && d.stopPropagation();
  let h = e.isHorizontal() ? u : p, v = e.isHorizontal() ? r.currentX - r.previousX : r.currentY - r.previousY;
  n.oneWayMovement && (h = Math.abs(h) * (l ? 1 : -1), v = Math.abs(v) * (l ? 1 : -1)), r.diff = h, h *= n.touchRatio, l && (h = -h, v = -v);
  const E = e.touchesDirection;
  e.swipeDirection = h > 0 ? "prev" : "next", e.touchesDirection = v > 0 ? "prev" : "next";
  const m = e.params.loop && !n.cssMode, S = e.touchesDirection === "next" && e.allowSlideNext || e.touchesDirection === "prev" && e.allowSlidePrev;
  if (!s.isMoved) {
    if (m && S && e.loopFix({
      direction: e.swipeDirection
    }), s.startTranslate = e.getTranslate(), e.setTransition(0), e.animating) {
      const T = new window.CustomEvent("transitionend", {
        bubbles: !0,
        cancelable: !0,
        detail: {
          bySwiperTouchMove: !0
        }
      });
      e.wrapperEl.dispatchEvent(T);
    }
    s.allowMomentumBounce = !1, n.grabCursor && (e.allowSlideNext === !0 || e.allowSlidePrev === !0) && e.setGrabCursor(!0), e.emit("sliderFirstMove", d);
  }
  if ((/* @__PURE__ */ new Date()).getTime(), n._loopSwapReset !== !1 && s.isMoved && s.allowThresholdMove && E !== e.touchesDirection && m && S && Math.abs(h) >= 1) {
    Object.assign(r, {
      startX: c,
      startY: f,
      currentX: c,
      currentY: f,
      startTranslate: s.currentTranslate
    }), s.loopSwapReset = !0, s.startTranslate = s.currentTranslate;
    return;
  }
  e.emit("sliderMove", d), s.isMoved = !0, s.currentTranslate = h + s.startTranslate;
  let g = !0, b = n.resistanceRatio;
  if (n.touchReleaseOnEdges && (b = 0), h > 0 ? (m && S && s.allowThresholdMove && s.currentTranslate > (n.centeredSlides ? e.minTranslate() - e.slidesSizesGrid[e.activeIndex + 1] - (n.slidesPerView !== "auto" && e.slides.length - n.slidesPerView >= 2 ? e.slidesSizesGrid[e.activeIndex + 1] + e.params.spaceBetween : 0) - e.params.spaceBetween : e.minTranslate()) && e.loopFix({
    direction: "prev",
    setTranslate: !0,
    activeSlideIndex: 0
  }), s.currentTranslate > e.minTranslate() && (g = !1, n.resistance && (s.currentTranslate = e.minTranslate() - 1 + (-e.minTranslate() + s.startTranslate + h) ** b))) : h < 0 && (m && S && s.allowThresholdMove && s.currentTranslate < (n.centeredSlides ? e.maxTranslate() + e.slidesSizesGrid[e.slidesSizesGrid.length - 1] + e.params.spaceBetween + (n.slidesPerView !== "auto" && e.slides.length - n.slidesPerView >= 2 ? e.slidesSizesGrid[e.slidesSizesGrid.length - 1] + e.params.spaceBetween : 0) : e.maxTranslate()) && e.loopFix({
    direction: "next",
    setTranslate: !0,
    activeSlideIndex: e.slides.length - (n.slidesPerView === "auto" ? e.slidesPerViewDynamic() : Math.ceil(parseFloat(n.slidesPerView, 10)))
  }), s.currentTranslate < e.maxTranslate() && (g = !1, n.resistance && (s.currentTranslate = e.maxTranslate() + 1 - (e.maxTranslate() - s.startTranslate - h) ** b))), g && (d.preventedByNestedSwiper = !0), !e.allowSlideNext && e.swipeDirection === "next" && s.currentTranslate < s.startTranslate && (s.currentTranslate = s.startTranslate), !e.allowSlidePrev && e.swipeDirection === "prev" && s.currentTranslate > s.startTranslate && (s.currentTranslate = s.startTranslate), !e.allowSlidePrev && !e.allowSlideNext && (s.currentTranslate = s.startTranslate), n.threshold > 0)
    if (Math.abs(h) > n.threshold || s.allowThresholdMove) {
      if (!s.allowThresholdMove) {
        s.allowThresholdMove = !0, r.startX = r.currentX, r.startY = r.currentY, s.currentTranslate = s.startTranslate, r.diff = e.isHorizontal() ? r.currentX - r.startX : r.currentY - r.startY;
        return;
      }
    } else {
      s.currentTranslate = s.startTranslate;
      return;
    }
  !n.followFinger || n.cssMode || ((n.freeMode && n.freeMode.enabled && e.freeMode || n.watchSlidesProgress) && (e.updateActiveIndex(), e.updateSlidesClasses()), n.freeMode && n.freeMode.enabled && e.freeMode && e.freeMode.onTouchMove(), e.updateProgress(s.currentTranslate), e.setTranslate(s.currentTranslate));
}
function mt(i) {
  const t = this, e = t.touchEventsData;
  let s = i;
  s.originalEvent && (s = s.originalEvent);
  let n;
  if (s.type === "touchend" || s.type === "touchcancel") {
    if (n = [...s.changedTouches].find((T) => T.identifier === e.touchId), !n || n.identifier !== e.touchId) return;
  } else {
    if (e.touchId !== null || s.pointerId !== e.pointerId) return;
    n = s;
  }
  if (["pointercancel", "pointerout", "pointerleave", "contextmenu"].includes(s.type) && !(["pointercancel", "contextmenu"].includes(s.type) && (t.browser.isSafari || t.browser.isWebView)))
    return;
  e.pointerId = null, e.touchId = null;
  const {
    params: l,
    touches: a,
    rtlTranslate: d,
    slidesGrid: o,
    enabled: c
  } = t;
  if (!c || !l.simulateTouch && s.pointerType === "mouse") return;
  if (e.allowTouchCallbacks && t.emit("touchEnd", s), e.allowTouchCallbacks = !1, !e.isTouched) {
    e.isMoved && l.grabCursor && t.setGrabCursor(!1), e.isMoved = !1, e.startMoving = !1;
    return;
  }
  l.grabCursor && e.isMoved && e.isTouched && (t.allowSlideNext === !0 || t.allowSlidePrev === !0) && t.setGrabCursor(!1);
  const f = Y(), u = f - e.touchStartTime;
  if (t.allowClick) {
    const T = s.path || s.composedPath && s.composedPath();
    t.updateClickedSlide(T && T[0] || s.target, T), t.emit("tap click", s), u < 300 && f - e.lastClickTime < 300 && t.emit("doubleTap doubleClick", s);
  }
  if (e.lastClickTime = Y(), de(() => {
    t.destroyed || (t.allowClick = !0);
  }), !e.isTouched || !e.isMoved || !t.swipeDirection || a.diff === 0 && !e.loopSwapReset || e.currentTranslate === e.startTranslate && !e.loopSwapReset) {
    e.isTouched = !1, e.isMoved = !1, e.startMoving = !1;
    return;
  }
  e.isTouched = !1, e.isMoved = !1, e.startMoving = !1;
  let p;
  if (l.followFinger ? p = d ? t.translate : -t.translate : p = -e.currentTranslate, l.cssMode)
    return;
  if (l.freeMode && l.freeMode.enabled) {
    t.freeMode.onTouchEnd({
      currentPos: p
    });
    return;
  }
  const h = p >= -t.maxTranslate() && !t.params.loop;
  let v = 0, E = t.slidesSizesGrid[0];
  for (let T = 0; T < o.length; T += T < l.slidesPerGroupSkip ? 1 : l.slidesPerGroup) {
    const C = T < l.slidesPerGroupSkip - 1 ? 1 : l.slidesPerGroup;
    typeof o[T + C] < "u" ? (h || p >= o[T] && p < o[T + C]) && (v = T, E = o[T + C] - o[T]) : (h || p >= o[T]) && (v = T, E = o[o.length - 1] - o[o.length - 2]);
  }
  let m = null, S = null;
  l.rewind && (t.isBeginning ? S = l.virtual && l.virtual.enabled && t.virtual ? t.virtual.slides.length - 1 : t.slides.length - 1 : t.isEnd && (m = 0));
  const g = (p - o[v]) / E, b = v < l.slidesPerGroupSkip - 1 ? 1 : l.slidesPerGroup;
  if (u > l.longSwipesMs) {
    if (!l.longSwipes) {
      t.slideTo(t.activeIndex);
      return;
    }
    t.swipeDirection === "next" && (g >= l.longSwipesRatio ? t.slideTo(l.rewind && t.isEnd ? m : v + b) : t.slideTo(v)), t.swipeDirection === "prev" && (g > 1 - l.longSwipesRatio ? t.slideTo(v + b) : S !== null && g < 0 && Math.abs(g) > l.longSwipesRatio ? t.slideTo(S) : t.slideTo(v));
  } else {
    if (!l.shortSwipes) {
      t.slideTo(t.activeIndex);
      return;
    }
    t.navigation && (s.target === t.navigation.nextEl || s.target === t.navigation.prevEl) ? s.target === t.navigation.nextEl ? t.slideTo(v + b) : t.slideTo(v) : (t.swipeDirection === "next" && t.slideTo(m !== null ? m : v + b), t.swipeDirection === "prev" && t.slideTo(S !== null ? S : v));
  }
}
function ae() {
  const i = this, {
    params: t,
    el: e
  } = i;
  if (e && e.offsetWidth === 0) return;
  t.breakpoints && i.setBreakpoint();
  const {
    allowSlideNext: s,
    allowSlidePrev: n,
    snapGrid: r
  } = i, l = i.virtual && i.params.virtual.enabled;
  i.allowSlideNext = !0, i.allowSlidePrev = !0, i.updateSize(), i.updateSlides(), i.updateSlidesClasses();
  const a = l && t.loop;
  (t.slidesPerView === "auto" || t.slidesPerView > 1) && i.isEnd && !i.isBeginning && !i.params.centeredSlides && !a ? i.slideTo(i.slides.length - 1, 0, !1, !0) : i.params.loop && !l ? i.slideToLoop(i.realIndex, 0, !1, !0) : i.slideTo(i.activeIndex, 0, !1, !0), i.autoplay && i.autoplay.running && i.autoplay.paused && (clearTimeout(i.autoplay.resizeTimeout), i.autoplay.resizeTimeout = setTimeout(() => {
    i.autoplay && i.autoplay.running && i.autoplay.paused && i.autoplay.resume();
  }, 500)), i.allowSlidePrev = n, i.allowSlideNext = s, i.params.watchOverflow && r !== i.snapGrid && i.checkOverflow();
}
function gt(i) {
  const t = this;
  t.enabled && (t.allowClick || (t.params.preventClicks && i.preventDefault(), t.params.preventClicksPropagation && t.animating && (i.stopPropagation(), i.stopImmediatePropagation())));
}
function vt() {
  const i = this, {
    wrapperEl: t,
    rtlTranslate: e,
    enabled: s
  } = i;
  if (!s) return;
  i.previousTranslate = i.translate, i.isHorizontal() ? i.translate = -t.scrollLeft : i.translate = -t.scrollTop, i.translate === 0 && (i.translate = 0), i.updateActiveIndex(), i.updateSlidesClasses();
  let n;
  const r = i.maxTranslate() - i.minTranslate();
  r === 0 ? n = 0 : n = (i.translate - i.minTranslate()) / r, n !== i.progress && i.updateProgress(e ? -i.translate : i.translate), i.emit("setTranslate", i.translate, !1);
}
function wt(i) {
  const t = this;
  H(t, i.target), !(t.params.cssMode || t.params.slidesPerView !== "auto" && !t.params.autoHeight) && t.update();
}
function St() {
  const i = this;
  i.documentTouchHandlerProceeded || (i.documentTouchHandlerProceeded = !0, i.params.touchReleaseOnEdges && (i.el.style.touchAction = "auto"));
}
const me = (i, t) => {
  const e = R(), {
    params: s,
    el: n,
    wrapperEl: r,
    device: l
  } = i, a = !!s.nested, d = t === "on" ? "addEventListener" : "removeEventListener", o = t;
  !n || typeof n == "string" || (e[d]("touchstart", i.onDocumentTouchStart, {
    passive: !1,
    capture: a
  }), n[d]("touchstart", i.onTouchStart, {
    passive: !1
  }), n[d]("pointerdown", i.onTouchStart, {
    passive: !1
  }), e[d]("touchmove", i.onTouchMove, {
    passive: !1,
    capture: a
  }), e[d]("pointermove", i.onTouchMove, {
    passive: !1,
    capture: a
  }), e[d]("touchend", i.onTouchEnd, {
    passive: !0
  }), e[d]("pointerup", i.onTouchEnd, {
    passive: !0
  }), e[d]("pointercancel", i.onTouchEnd, {
    passive: !0
  }), e[d]("touchcancel", i.onTouchEnd, {
    passive: !0
  }), e[d]("pointerout", i.onTouchEnd, {
    passive: !0
  }), e[d]("pointerleave", i.onTouchEnd, {
    passive: !0
  }), e[d]("contextmenu", i.onTouchEnd, {
    passive: !0
  }), (s.preventClicks || s.preventClicksPropagation) && n[d]("click", i.onClick, !0), s.cssMode && r[d]("scroll", i.onScroll), s.updateOnWindowResize ? i[o](l.ios || l.android ? "resize orientationchange observerUpdate" : "resize observerUpdate", ae, !0) : i[o]("observerUpdate", ae, !0), n[d]("load", i.onLoad, {
    capture: !0
  }));
};
function Tt() {
  const i = this, {
    params: t
  } = i;
  i.onTouchStart = pt.bind(i), i.onTouchMove = ht.bind(i), i.onTouchEnd = mt.bind(i), i.onDocumentTouchStart = St.bind(i), t.cssMode && (i.onScroll = vt.bind(i)), i.onClick = gt.bind(i), i.onLoad = wt.bind(i), me(i, "on");
}
function xt() {
  me(this, "off");
}
var bt = {
  attachEvents: Tt,
  detachEvents: xt
};
const le = (i, t) => i.grid && t.grid && t.grid.rows > 1;
function yt() {
  const i = this, {
    realIndex: t,
    initialized: e,
    params: s,
    el: n
  } = i, r = s.breakpoints;
  if (!r || r && Object.keys(r).length === 0) return;
  const l = R(), a = s.breakpointsBase === "window" || !s.breakpointsBase ? s.breakpointsBase : "container", d = ["window", "container"].includes(s.breakpointsBase) || !s.breakpointsBase ? i.el : l.querySelector(s.breakpointsBase), o = i.getBreakpoint(r, a, d);
  if (!o || i.currentBreakpoint === o) return;
  const f = (o in r ? r[o] : void 0) || i.originalParams, u = le(i, s), p = le(i, f), h = i.params.grabCursor, v = f.grabCursor, E = s.enabled;
  u && !p ? (n.classList.remove(`${s.containerModifierClass}grid`, `${s.containerModifierClass}grid-column`), i.emitContainerClasses()) : !u && p && (n.classList.add(`${s.containerModifierClass}grid`), (f.grid.fill && f.grid.fill === "column" || !f.grid.fill && s.grid.fill === "column") && n.classList.add(`${s.containerModifierClass}grid-column`), i.emitContainerClasses()), h && !v ? i.unsetGrabCursor() : !h && v && i.setGrabCursor(), ["navigation", "pagination", "scrollbar"].forEach((C) => {
    if (typeof f[C] > "u") return;
    const I = s[C] && s[C].enabled, y = f[C] && f[C].enabled;
    I && !y && i[C].disable(), !I && y && i[C].enable();
  });
  const m = f.direction && f.direction !== s.direction, S = s.loop && (f.slidesPerView !== s.slidesPerView || m), g = s.loop;
  m && e && i.changeDirection(), k(i.params, f);
  const b = i.params.enabled, T = i.params.loop;
  Object.assign(i, {
    allowTouchMove: i.params.allowTouchMove,
    allowSlideNext: i.params.allowSlideNext,
    allowSlidePrev: i.params.allowSlidePrev
  }), E && !b ? i.disable() : !E && b && i.enable(), i.currentBreakpoint = o, i.emit("_beforeBreakpoint", f), e && (S ? (i.loopDestroy(), i.loopCreate(t), i.updateSlides()) : !g && T ? (i.loopCreate(t), i.updateSlides()) : g && !T && i.loopDestroy()), i.emit("breakpoint", f);
}
function Et(i, t, e) {
  if (t === void 0 && (t = "window"), !i || t === "container" && !e) return;
  let s = !1;
  const n = _(), r = t === "window" ? n.innerHeight : e.clientHeight, l = Object.keys(i).map((a) => {
    if (typeof a == "string" && a.indexOf("@") === 0) {
      const d = parseFloat(a.substr(1));
      return {
        value: r * d,
        point: a
      };
    }
    return {
      value: a,
      point: a
    };
  });
  l.sort((a, d) => parseInt(a.value, 10) - parseInt(d.value, 10));
  for (let a = 0; a < l.length; a += 1) {
    const {
      point: d,
      value: o
    } = l[a];
    t === "window" ? n.matchMedia(`(min-width: ${o}px)`).matches && (s = d) : o <= e.clientWidth && (s = d);
  }
  return s || "max";
}
var Pt = {
  setBreakpoint: yt,
  getBreakpoint: Et
};
function Mt(i, t) {
  const e = [];
  return i.forEach((s) => {
    typeof s == "object" ? Object.keys(s).forEach((n) => {
      s[n] && e.push(t + n);
    }) : typeof s == "string" && e.push(t + s);
  }), e;
}
function It() {
  const i = this, {
    classNames: t,
    params: e,
    rtl: s,
    el: n,
    device: r
  } = i, l = Mt(["initialized", e.direction, {
    "free-mode": i.params.freeMode && e.freeMode.enabled
  }, {
    autoheight: e.autoHeight
  }, {
    rtl: s
  }, {
    grid: e.grid && e.grid.rows > 1
  }, {
    "grid-column": e.grid && e.grid.rows > 1 && e.grid.fill === "column"
  }, {
    android: r.android
  }, {
    ios: r.ios
  }, {
    "css-mode": e.cssMode
  }, {
    centered: e.cssMode && e.centeredSlides
  }, {
    "watch-progress": e.watchSlidesProgress
  }], e.containerModifierClass);
  t.push(...l), n.classList.add(...t), i.emitContainerClasses();
}
function Ct() {
  const i = this, {
    el: t,
    classNames: e
  } = i;
  !t || typeof t == "string" || (t.classList.remove(...e), i.emitContainerClasses());
}
var Lt = {
  addClasses: It,
  removeClasses: Ct
};
function zt() {
  const i = this, {
    isLocked: t,
    params: e
  } = i, {
    slidesOffsetBefore: s
  } = e;
  if (s) {
    const n = i.slides.length - 1, r = i.slidesGrid[n] + i.slidesSizesGrid[n] + s * 2;
    i.isLocked = i.size > r;
  } else
    i.isLocked = i.snapGrid.length === 1;
  e.allowSlideNext === !0 && (i.allowSlideNext = !i.isLocked), e.allowSlidePrev === !0 && (i.allowSlidePrev = !i.isLocked), t && t !== i.isLocked && (i.isEnd = !1), t !== i.isLocked && i.emit(i.isLocked ? "lock" : "unlock");
}
var Ot = {
  checkOverflow: zt
}, oe = {
  init: !0,
  direction: "horizontal",
  oneWayMovement: !1,
  swiperElementNodeName: "SWIPER-CONTAINER",
  touchEventsTarget: "wrapper",
  initialSlide: 0,
  speed: 300,
  cssMode: !1,
  updateOnWindowResize: !0,
  resizeObserver: !0,
  nested: !1,
  createElements: !1,
  eventsPrefix: "swiper",
  enabled: !0,
  focusableElements: "input, select, option, textarea, button, video, label",
  // Overrides
  width: null,
  height: null,
  //
  preventInteractionOnTransition: !1,
  // ssr
  userAgent: null,
  url: null,
  // To support iOS's swipe-to-go-back gesture (when being used in-app).
  edgeSwipeDetection: !1,
  edgeSwipeThreshold: 20,
  // Autoheight
  autoHeight: !1,
  // Set wrapper width
  setWrapperSize: !1,
  // Virtual Translate
  virtualTranslate: !1,
  // Effects
  effect: "slide",
  // 'slide' or 'fade' or 'cube' or 'coverflow' or 'flip'
  // Breakpoints
  breakpoints: void 0,
  breakpointsBase: "window",
  // Slides grid
  spaceBetween: 0,
  slidesPerView: 1,
  slidesPerGroup: 1,
  slidesPerGroupSkip: 0,
  slidesPerGroupAuto: !1,
  centeredSlides: !1,
  centeredSlidesBounds: !1,
  slidesOffsetBefore: 0,
  // in px
  slidesOffsetAfter: 0,
  // in px
  normalizeSlideIndex: !0,
  centerInsufficientSlides: !1,
  // Disable swiper and hide navigation when container not overflow
  watchOverflow: !0,
  // Round length
  roundLengths: !1,
  // Touches
  touchRatio: 1,
  touchAngle: 45,
  simulateTouch: !0,
  shortSwipes: !0,
  longSwipes: !0,
  longSwipesRatio: 0.5,
  longSwipesMs: 300,
  followFinger: !0,
  allowTouchMove: !0,
  threshold: 5,
  touchMoveStopPropagation: !1,
  touchStartPreventDefault: !0,
  touchStartForcePreventDefault: !1,
  touchReleaseOnEdges: !1,
  // Unique Navigation Elements
  uniqueNavElements: !0,
  // Resistance
  resistance: !0,
  resistanceRatio: 0.85,
  // Progress
  watchSlidesProgress: !1,
  // Cursor
  grabCursor: !1,
  // Clicks
  preventClicks: !0,
  preventClicksPropagation: !0,
  slideToClickedSlide: !1,
  // loop
  loop: !1,
  loopAddBlankSlides: !0,
  loopAdditionalSlides: 0,
  loopPreventsSliding: !0,
  // rewind
  rewind: !1,
  // Swiping/no swiping
  allowSlidePrev: !0,
  allowSlideNext: !0,
  swipeHandler: null,
  // '.swipe-handler',
  noSwiping: !0,
  noSwipingClass: "swiper-no-swiping",
  noSwipingSelector: null,
  // Passive Listeners
  passiveListeners: !0,
  maxBackfaceHiddenSlides: 10,
  // NS
  containerModifierClass: "swiper-",
  // NEW
  slideClass: "swiper-slide",
  slideBlankClass: "swiper-slide-blank",
  slideActiveClass: "swiper-slide-active",
  slideVisibleClass: "swiper-slide-visible",
  slideFullyVisibleClass: "swiper-slide-fully-visible",
  slideNextClass: "swiper-slide-next",
  slidePrevClass: "swiper-slide-prev",
  wrapperClass: "swiper-wrapper",
  lazyPreloaderClass: "swiper-lazy-preloader",
  lazyPreloadPrevNext: 0,
  // Callbacks
  runCallbacksOnInit: !0,
  // Internals
  _emitClasses: !1
};
function At(i, t) {
  return function(s) {
    s === void 0 && (s = {});
    const n = Object.keys(s)[0], r = s[n];
    if (typeof r != "object" || r === null) {
      k(t, s);
      return;
    }
    if (i[n] === !0 && (i[n] = {
      enabled: !0
    }), n === "navigation" && i[n] && i[n].enabled && !i[n].prevEl && !i[n].nextEl && (i[n].auto = !0), ["pagination", "scrollbar"].indexOf(n) >= 0 && i[n] && i[n].enabled && !i[n].el && (i[n].auto = !0), !(n in i && "enabled" in r)) {
      k(t, s);
      return;
    }
    typeof i[n] == "object" && !("enabled" in i[n]) && (i[n].enabled = !0), i[n] || (i[n] = {
      enabled: !1
    }), k(t, s);
  };
}
const J = {
  eventsEmitter: Le,
  update: _e,
  translate: Xe,
  transition: Ke,
  slide: rt,
  loop: ot,
  grabCursor: ft,
  events: bt,
  breakpoints: Pt,
  checkOverflow: Ot,
  classes: Lt
}, Q = {};
class G {
  constructor() {
    let t, e;
    for (var s = arguments.length, n = new Array(s), r = 0; r < s; r++)
      n[r] = arguments[r];
    n.length === 1 && n[0].constructor && Object.prototype.toString.call(n[0]).slice(8, -1) === "Object" ? e = n[0] : [t, e] = n, e || (e = {}), e = k({}, e), t && !e.el && (e.el = t);
    const l = R();
    if (e.el && typeof e.el == "string" && l.querySelectorAll(e.el).length > 1) {
      const c = [];
      return l.querySelectorAll(e.el).forEach((f) => {
        const u = k({}, e, {
          el: f
        });
        c.push(new G(u));
      }), c;
    }
    const a = this;
    a.__swiper__ = !0, a.support = fe(), a.device = ue({
      userAgent: e.userAgent
    }), a.browser = pe(), a.eventsListeners = {}, a.eventsAnyListeners = [], a.modules = [...a.__modules__], e.modules && Array.isArray(e.modules) && a.modules.push(...e.modules);
    const d = {};
    a.modules.forEach((c) => {
      c({
        params: e,
        swiper: a,
        extendParams: At(e, d),
        on: a.on.bind(a),
        once: a.once.bind(a),
        off: a.off.bind(a),
        emit: a.emit.bind(a)
      });
    });
    const o = k({}, oe, d);
    return a.params = k({}, o, Q, e), a.originalParams = k({}, a.params), a.passedParams = k({}, e), a.params && a.params.on && Object.keys(a.params.on).forEach((c) => {
      a.on(c, a.params.on[c]);
    }), a.params && a.params.onAny && a.onAny(a.params.onAny), Object.assign(a, {
      enabled: a.params.enabled,
      el: t,
      // Classes
      classNames: [],
      // Slides
      slides: [],
      slidesGrid: [],
      snapGrid: [],
      slidesSizesGrid: [],
      // isDirection
      isHorizontal() {
        return a.params.direction === "horizontal";
      },
      isVertical() {
        return a.params.direction === "vertical";
      },
      // Indexes
      activeIndex: 0,
      realIndex: 0,
      //
      isBeginning: !0,
      isEnd: !1,
      // Props
      translate: 0,
      previousTranslate: 0,
      progress: 0,
      velocity: 0,
      animating: !1,
      cssOverflowAdjustment() {
        return Math.trunc(this.translate / 2 ** 23) * 2 ** 23;
      },
      // Locks
      allowSlideNext: a.params.allowSlideNext,
      allowSlidePrev: a.params.allowSlidePrev,
      // Touch Events
      touchEventsData: {
        isTouched: void 0,
        isMoved: void 0,
        allowTouchCallbacks: void 0,
        touchStartTime: void 0,
        isScrolling: void 0,
        currentTranslate: void 0,
        startTranslate: void 0,
        allowThresholdMove: void 0,
        // Form elements to match
        focusableElements: a.params.focusableElements,
        // Last click time
        lastClickTime: 0,
        clickTimeout: void 0,
        // Velocities
        velocities: [],
        allowMomentumBounce: void 0,
        startMoving: void 0,
        pointerId: null,
        touchId: null
      },
      // Clicks
      allowClick: !0,
      // Touches
      allowTouchMove: a.params.allowTouchMove,
      touches: {
        startX: 0,
        startY: 0,
        currentX: 0,
        currentY: 0,
        diff: 0
      },
      // Images
      imagesToLoad: [],
      imagesLoaded: 0
    }), a.emit("_swiper"), a.params.init && a.init(), a;
  }
  getDirectionLabel(t) {
    return this.isHorizontal() ? t : {
      width: "height",
      "margin-top": "margin-left",
      "margin-bottom ": "margin-right",
      "margin-left": "margin-top",
      "margin-right": "margin-bottom",
      "padding-left": "padding-top",
      "padding-right": "padding-bottom",
      marginRight: "marginBottom"
    }[t];
  }
  getSlideIndex(t) {
    const {
      slidesEl: e,
      params: s
    } = this, n = D(e, `.${s.slideClass}, swiper-slide`), r = ie(n[0]);
    return ie(t) - r;
  }
  getSlideIndexByData(t) {
    return this.getSlideIndex(this.slides.find((e) => e.getAttribute("data-swiper-slide-index") * 1 === t));
  }
  getSlideIndexWhenGrid(t) {
    return this.grid && this.params.grid && this.params.grid.rows > 1 && (this.params.grid.fill === "column" ? t = Math.floor(t / this.params.grid.rows) : this.params.grid.fill === "row" && (t = t % Math.ceil(this.slides.length / this.params.grid.rows))), t;
  }
  recalcSlides() {
    const t = this, {
      slidesEl: e,
      params: s
    } = t;
    t.slides = D(e, `.${s.slideClass}, swiper-slide`);
  }
  enable() {
    const t = this;
    t.enabled || (t.enabled = !0, t.params.grabCursor && t.setGrabCursor(), t.emit("enable"));
  }
  disable() {
    const t = this;
    t.enabled && (t.enabled = !1, t.params.grabCursor && t.unsetGrabCursor(), t.emit("disable"));
  }
  setProgress(t, e) {
    const s = this;
    t = Math.min(Math.max(t, 0), 1);
    const n = s.minTranslate(), l = (s.maxTranslate() - n) * t + n;
    s.translateTo(l, typeof e > "u" ? 0 : e), s.updateActiveIndex(), s.updateSlidesClasses();
  }
  emitContainerClasses() {
    const t = this;
    if (!t.params._emitClasses || !t.el) return;
    const e = t.el.className.split(" ").filter((s) => s.indexOf("swiper") === 0 || s.indexOf(t.params.containerModifierClass) === 0);
    t.emit("_containerClasses", e.join(" "));
  }
  getSlideClasses(t) {
    const e = this;
    return e.destroyed ? "" : t.className.split(" ").filter((s) => s.indexOf("swiper-slide") === 0 || s.indexOf(e.params.slideClass) === 0).join(" ");
  }
  emitSlidesClasses() {
    const t = this;
    if (!t.params._emitClasses || !t.el) return;
    const e = [];
    t.slides.forEach((s) => {
      const n = t.getSlideClasses(s);
      e.push({
        slideEl: s,
        classNames: n
      }), t.emit("_slideClass", s, n);
    }), t.emit("_slideClasses", e);
  }
  slidesPerViewDynamic(t, e) {
    t === void 0 && (t = "current"), e === void 0 && (e = !1);
    const s = this, {
      params: n,
      slides: r,
      slidesGrid: l,
      slidesSizesGrid: a,
      size: d,
      activeIndex: o
    } = s;
    let c = 1;
    if (typeof n.slidesPerView == "number") return n.slidesPerView;
    if (n.centeredSlides) {
      let f = r[o] ? Math.ceil(r[o].swiperSlideSize) : 0, u;
      for (let p = o + 1; p < r.length; p += 1)
        r[p] && !u && (f += Math.ceil(r[p].swiperSlideSize), c += 1, f > d && (u = !0));
      for (let p = o - 1; p >= 0; p -= 1)
        r[p] && !u && (f += r[p].swiperSlideSize, c += 1, f > d && (u = !0));
    } else if (t === "current")
      for (let f = o + 1; f < r.length; f += 1)
        (e ? l[f] + a[f] - l[o] < d : l[f] - l[o] < d) && (c += 1);
    else
      for (let f = o - 1; f >= 0; f -= 1)
        l[o] - l[f] < d && (c += 1);
    return c;
  }
  update() {
    const t = this;
    if (!t || t.destroyed) return;
    const {
      snapGrid: e,
      params: s
    } = t;
    s.breakpoints && t.setBreakpoint(), [...t.el.querySelectorAll('[loading="lazy"]')].forEach((l) => {
      l.complete && H(t, l);
    }), t.updateSize(), t.updateSlides(), t.updateProgress(), t.updateSlidesClasses();
    function n() {
      const l = t.rtlTranslate ? t.translate * -1 : t.translate, a = Math.min(Math.max(l, t.maxTranslate()), t.minTranslate());
      t.setTranslate(a), t.updateActiveIndex(), t.updateSlidesClasses();
    }
    let r;
    if (s.freeMode && s.freeMode.enabled && !s.cssMode)
      n(), s.autoHeight && t.updateAutoHeight();
    else {
      if ((s.slidesPerView === "auto" || s.slidesPerView > 1) && t.isEnd && !s.centeredSlides) {
        const l = t.virtual && s.virtual.enabled ? t.virtual.slides : t.slides;
        r = t.slideTo(l.length - 1, 0, !1, !0);
      } else
        r = t.slideTo(t.activeIndex, 0, !1, !0);
      r || n();
    }
    s.watchOverflow && e !== t.snapGrid && t.checkOverflow(), t.emit("update");
  }
  changeDirection(t, e) {
    e === void 0 && (e = !0);
    const s = this, n = s.params.direction;
    return t || (t = n === "horizontal" ? "vertical" : "horizontal"), t === n || t !== "horizontal" && t !== "vertical" || (s.el.classList.remove(`${s.params.containerModifierClass}${n}`), s.el.classList.add(`${s.params.containerModifierClass}${t}`), s.emitContainerClasses(), s.params.direction = t, s.slides.forEach((r) => {
      t === "vertical" ? r.style.width = "" : r.style.height = "";
    }), s.emit("changeDirection"), e && s.update()), s;
  }
  changeLanguageDirection(t) {
    const e = this;
    e.rtl && t === "rtl" || !e.rtl && t === "ltr" || (e.rtl = t === "rtl", e.rtlTranslate = e.params.direction === "horizontal" && e.rtl, e.rtl ? (e.el.classList.add(`${e.params.containerModifierClass}rtl`), e.el.dir = "rtl") : (e.el.classList.remove(`${e.params.containerModifierClass}rtl`), e.el.dir = "ltr"), e.update());
  }
  mount(t) {
    const e = this;
    if (e.mounted) return !0;
    let s = t || e.params.el;
    if (typeof s == "string" && (s = document.querySelector(s)), !s)
      return !1;
    s.swiper = e, s.parentNode && s.parentNode.host && s.parentNode.host.nodeName === e.params.swiperElementNodeName.toUpperCase() && (e.isElement = !0);
    const n = () => `.${(e.params.wrapperClass || "").trim().split(" ").join(".")}`;
    let l = s && s.shadowRoot && s.shadowRoot.querySelector ? s.shadowRoot.querySelector(n()) : D(s, n())[0];
    return !l && e.params.createElements && (l = Z("div", e.params.wrapperClass), s.append(l), D(s, `.${e.params.slideClass}`).forEach((a) => {
      l.append(a);
    })), Object.assign(e, {
      el: s,
      wrapperEl: l,
      slidesEl: e.isElement && !s.parentNode.host.slideSlots ? s.parentNode.host : l,
      hostEl: e.isElement ? s.parentNode.host : s,
      mounted: !0,
      // RTL
      rtl: s.dir.toLowerCase() === "rtl" || N(s, "direction") === "rtl",
      rtlTranslate: e.params.direction === "horizontal" && (s.dir.toLowerCase() === "rtl" || N(s, "direction") === "rtl"),
      wrongRTL: N(l, "display") === "-webkit-box"
    }), !0;
  }
  init(t) {
    const e = this;
    if (e.initialized || e.mount(t) === !1) return e;
    e.emit("beforeInit"), e.params.breakpoints && e.setBreakpoint(), e.addClasses(), e.updateSize(), e.updateSlides(), e.params.watchOverflow && e.checkOverflow(), e.params.grabCursor && e.enabled && e.setGrabCursor(), e.params.loop && e.virtual && e.params.virtual.enabled ? e.slideTo(e.params.initialSlide + e.virtual.slidesBefore, 0, e.params.runCallbacksOnInit, !1, !0) : e.slideTo(e.params.initialSlide, 0, e.params.runCallbacksOnInit, !1, !0), e.params.loop && e.loopCreate(void 0, !0), e.attachEvents();
    const n = [...e.el.querySelectorAll('[loading="lazy"]')];
    return e.isElement && n.push(...e.hostEl.querySelectorAll('[loading="lazy"]')), n.forEach((r) => {
      r.complete ? H(e, r) : r.addEventListener("load", (l) => {
        H(e, l.target);
      });
    }), ee(e), e.initialized = !0, ee(e), e.emit("init"), e.emit("afterInit"), e;
  }
  destroy(t, e) {
    t === void 0 && (t = !0), e === void 0 && (e = !0);
    const s = this, {
      params: n,
      el: r,
      wrapperEl: l,
      slides: a
    } = s;
    return typeof s.params > "u" || s.destroyed || (s.emit("beforeDestroy"), s.initialized = !1, s.detachEvents(), n.loop && s.loopDestroy(), e && (s.removeClasses(), r && typeof r != "string" && r.removeAttribute("style"), l && l.removeAttribute("style"), a && a.length && a.forEach((d) => {
      d.classList.remove(n.slideVisibleClass, n.slideFullyVisibleClass, n.slideActiveClass, n.slideNextClass, n.slidePrevClass), d.removeAttribute("style"), d.removeAttribute("data-swiper-slide-index");
    })), s.emit("destroy"), Object.keys(s.eventsListeners).forEach((d) => {
      s.off(d);
    }), t !== !1 && (s.el && typeof s.el != "string" && (s.el.swiper = null), we(s)), s.destroyed = !0), null;
  }
  static extendDefaults(t) {
    k(Q, t);
  }
  static get extendedDefaults() {
    return Q;
  }
  static get defaults() {
    return oe;
  }
  static installModule(t) {
    G.prototype.__modules__ || (G.prototype.__modules__ = []);
    const e = G.prototype.__modules__;
    typeof t == "function" && e.indexOf(t) < 0 && e.push(t);
  }
  static use(t) {
    return Array.isArray(t) ? (t.forEach((e) => G.installModule(e)), G) : (G.installModule(t), G);
  }
}
Object.keys(J).forEach((i) => {
  Object.keys(J[i]).forEach((t) => {
    G.prototype[t] = J[i][t];
  });
});
G.use([Ie, Ce]);
export {
  G as S,
  oe as d
};
//# sourceMappingURL=index.es516.js.map