PageSourceSearch

https://arccbikes.com/wp-content/themes/arcc/js/bootstrap.min.js?ver=fbd36702620a

js arccbikes.com collected 2026-09-24 10:40:32 UTC 126,111 bytes, 4,224 lines download raw bytes

1/*!
2 * Bootstrap v5.3.2 (https://getbootstrap.com/)
3 * Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5 */
6!(function (t, e) {
7  "object" == typeof exports && "undefined" != typeof module
8    ? (module.exports = e())
9    : "function" == typeof define && define.amd
10      ? define(e)
11      : ((t =
12          "undefined" != typeof globalThis ? globalThis : t || self).bootstrap =
13          e());
14})(this, function () {
15  "use strict";
16  const t = new Map(),
17    e = {
18      set(e, i, n) {
19        t.has(e) || t.set(e, new Map());
20        const s = t.get(e);
21        s.has(i) || 0 === s.size
22          ? s.set(i, n)
23          : console.error(
24              `Bootstrap doesn't allow more than one instance per element. Bound instance: ${
25                Array.from(s.keys())[0]
26              }.`,
27            );
28      },
29      get: (e, i) => (t.has(e) && t.get(e).get(i)) || null,
30      remove(e, i) {
31        if (!t.has(e)) return;
32        const n = t.get(e);
33        (n.delete(i), 0 === n.size && t.delete(e));
34      },
35    },
36    i = "transitionend",
37    n = (t) => (
38      t &&
39        window.CSS &&
40        window.CSS.escape &&
41        (t = t.replace(/#([^\s"#']+)/g, (t, e) => `#${CSS.escape(e)}`)),
42      t
43    ),
44    s = (t) => {
45      t.dispatchEvent(new Event(i));
46    },
47    o = (t) =>
48      !(!t || "object" != typeof t) &&
49      (void 0 !== t.jquery && (t = t[0]), void 0 !== t.nodeType),
50    r = (t) =>
51      o(t)
52        ? t.jquery
53          ? t[0]
54          : t
55        : "string" == typeof t && t.length > 0
56          ? document.querySelector(n(t))
57          : null,
58    a = (t) => {
59      if (!o(t) || 0 === t.getClientRects().length) return !1;
60      const e =
61          "visible" === getComputedStyle(t).getPropertyValue("visibility"),
62        i = t.closest("details:not([open])");
63      if (!i) return e;
64      if (i !== t) {
65        const e = t.closest("summary");
66        if (e && e.parentNode !== i) return !1;
67        if (null === e) return !1;
68      }
69      return e;
70    },
71    l = (t) =>
72      !t ||
73      t.nodeType !== Node.ELEMENT_NODE ||
74      !!t.classList.contains("disabled") ||
75      (void 0 !== t.disabled
76        ? t.disabled
77        : t.hasAttribute("disabled") && "false" !== t.getAttribute("disabled")),
78    c = (t) => {
79      if (!document.documentElement.attachShadow) return null;
80      if ("function" == typeof t.getRootNode) {
81        const e = t.getRootNode();
82        return e instanceof ShadowRoot ? e : null;
83      }
84      return t instanceof ShadowRoot
85        ? t
86        : t.parentNode
87          ? c(t.parentNode)
88          : null;
89    },
90    h = () => {},
91    d = (t) => {
92      t.offsetHeight;
93    },
94    u = () =>
95      window.jQuery && !document.body.hasAttribute("data-bs-no-jquery")
96        ? window.jQuery
97        : null,
98    f = [],
99    p = () => "rtl" === document.documentElement.dir,
100    m = (t) => {
101      var e;
102      ((e = () => {
103        const e = u();
104        if (e) {
105          const i = t.NAME,
106            n = e.fn[i];
107          ((e.fn[i] = t.jQueryInterface),
108            (e.fn[i].Constructor = t),
109            (e.fn[i].noConflict = () => ((e.fn[i] = n), t.jQueryInterface)));
110        }
111      }),
112        "loading" === document.readyState
113          ? (f.length ||
114              document.addEventListener("DOMContentLoaded", () => {
115                for (const t of f) t();
116              }),
117            f.push(e))
118          : e());
119    },
120    g = (t, e = [], i = t) => ("function" == typeof t ? t(...e) : i),
121    _ = (t, e, n = !0) => {
122      if (!n) return void g(t);
123      const o =
124        ((t) => {
125          if (!t) return 0;
126          let { transitionDuration: e, transitionDelay: i } =
127            window.getComputedStyle(t);
128          const n = Number.parseFloat(e),
129            s = Number.parseFloat(i);
130          return n || s
131            ? ((e = e.split(",")[0]),
132              (i = i.split(",")[0]),
133              1e3 * (Number.parseFloat(e) + Number.parseFloat(i)))
134            : 0;
135        })(e) + 5;
136      let r = !1;
137      const a = ({ target: n }) => {
138        n === e && ((r = !0), e.removeEventListener(i, a), g(t));
139      };
140      (e.addEventListener(i, a),
141        setTimeout(() => {
142          r || s(e);
143        }, o));
144    },
145    b = (t, e, i, n) => {
146      const s = t.length;
147      let o = t.indexOf(e);
148      return -1 === o
149        ? !i && n
150          ? t[s - 1]
151          : t[0]
152        : ((o += i ? 1 : -1),
153          n && (o = (o + s) % s),
154          t[Math.max(0, Math.min(o, s - 1))]);
155    },
156    v = /[^.]*(?=\..*)\.|.*/,
157    y = /\..*/,
158    w = /::\d+$/,
159    A = {};
160  let E = 1;
161  const T = { mouseenter: "mouseover", mouseleave: "mouseout" },
162    C = new Set([
163      "click",
164      "dblclick",
165      "mouseup",
166      "mousedown",
167      "contextmenu",
168      "mousewheel",
169      "DOMMouseScroll",
170      "mouseover",
171      "mouseout",
172      "mousemove",
173      "selectstart",
174      "selectend",
175      "keydown",
176      "keypress",
177      "keyup",
178      "orientationchange",
179      "touchstart",
180      "touchmove",
181      "touchend",
182      "touchcancel",
183      "pointerdown",
184      "pointermove",
185      "pointerup",
186      "pointerleave",
187      "pointercancel",
188      "gesturestart",
189      "gesturechange",
190      "gestureend",
191      "focus",
192      "blur",
193      "change",
194      "reset",
195      "select",
196      "submit",
197      "focusin",
198      "focusout",
199      "load",
200      "unload",
201      "beforeunload",
202      "resize",
203      "move",
204      "DOMContentLoaded",
205      "readystatechange",
206      "error",
207      "abort",
208      "scroll",
209    ]);
210  function O(t, e) {
211    return (e && `${e}::${E++}`) || t.uidEvent || E++;
212  }
213  function x(t) {
214    const e = O(t);
215    return ((t.uidEvent = e), (A[e] = A[e] || {}), A[e]);
216  }
217  function k(t, e, i = null) {
218    return Object.values(t).find(
219      (t) => t.callable === e && t.delegationSelector === i,
220    );
221  }
222  function L(t, e, i) {
223    const n = "string" == typeof e,
224      s = n ? i : e || i;
225    let o = I(t);
226    return (C.has(o) || (o = t), [n, s, o]);
227  }
228  function S(t, e, i, n, s) {
229    if ("string" != typeof e || !t) return;
230    let [o, r, a] = L(e, i, n);
231    if (e in T) {
232      const t = (t) =>
233        function (e) {
234          if (
235            !e.relatedTarget ||
236            (e.relatedTarget !== e.delegateTarget &&
237              !e.delegateTarget.contains(e.relatedTarget))
238          )
239            return t.call(this, e);
240        };
241      r = t(r);
242    }
243    const l = x(t),
244      c = l[a] || (l[a] = {}),
245      h = k(c, r, o ? i : null);
246    if (h) return void (h.oneOff = h.oneOff && s);
247    const d = O(r, e.replace(v, "")),
248      u = o
249        ? (function (t, e, i) {
250            return function n(s) {
251              const o = t.querySelectorAll(e);
252              for (let { target: r } = s; r && r !== this; r = r.parentNode)
253                for (const a of o)
254                  if (a === r)
255                    return (
256                      P(s, { delegateTarget: r }),
257                      n.oneOff && N.off(t, s.type, e, i),
258                      i.apply(r, [s])
259                    );
260            };
261          })(t, i, r)
262        : (function (t, e) {
263            return function i(n) {
264              return (
265                P(n, { delegateTarget: t }),
266                i.oneOff && N.off(t, n.type, e),
267                e.apply(t, [n])
268              );
269            };
270          })(t, r);
271    ((u.delegationSelector = o ? i : null),
272      (u.callable = r),
273      (u.oneOff = s),
274      (u.uidEvent = d),
275      (c[d] = u),
276      t.addEventListener(a, u, o));
277  }
278  function D(t, e, i, n, s) {
279    const o = k(e[i], n, s);
280    o && (t.removeEventListener(i, o, Boolean(s)), delete e[i][o.uidEvent]);
281  }
282  function $(t, e, i, n) {
283    const s = e[i] || {};
284    for (const [o, r] of Object.entries(s))
285      o.includes(n) && D(t, e, i, r.callable, r.delegationSelector);
286  }
287  function I(t) {
288    return ((t = t.replace(y, "")), T[t] || t);
289  }
290  const N = {
291    on(t, e, i, n) {
292      S(t, e, i, n, !1);
293    },
294    one(t, e, i, n) {
295      S(t, e, i, n, !0);
296    },
297    off(t, e, i, n) {
298      if ("string" != typeof e || !t) return;
299      const [s, o, r] = L(e, i, n),
300        a = r !== e,
301        l = x(t),
302        c = l[r] || {},
303        h = e.startsWith(".");
304      if (void 0 === o) {
305        if (h) for (const i of Object.keys(l)) $(t, l, i, e.slice(1));
306        for (const [i, n] of Object.entries(c)) {
307          const s = i.replace(w, "");
308          (a && !e.includes(s)) || D(t, l, r, n.callable, n.delegationSelector);
309        }
310      } else {
311        if (!Object.keys(c).length) return;
312        D(t, l, r, o, s ? i : null);
313      }
314    },
315    trigger(t, e, i) {
316      if ("string" != typeof e || !t) return null;
317      const n = u();
318      let s = null,
319        o = !0,
320        r = !0,
321        a = !1;
322      e !== I(e) &&
323        n &&
324        ((s = n.Event(e, i)),
325        n(t).trigger(s),
326        (o = !s.isPropagationStopped()),
327        (r = !s.isImmediatePropagationStopped()),
328        (a = s.isDefaultPrevented()));
329      const l = P(new Event(e, { bubbles: o, cancelable: !0 }), i);
330      return (
331        a && l.preventDefault(),
332        r && t.dispatchEvent(l),
333        l.defaultPrevented && s && s.preventDefault(),
334        l
335      );
336    },
337  };
338  function P(t, e = {}) {
339    for (const [i, n] of Object.entries(e))
340      try {
341        t[i] = n;
342      } catch (e) {
343        Object.defineProperty(t, i, { configurable: !0, get: () => n });
344      }
345    return t;
346  }
347  function M(t) {
348    if ("true" === t) return !0;
349    if ("false" === t) return !1;
350    if (t === Number(t).toString()) return Number(t);
351    if ("" === t || "null" === t) return null;
352    if ("string" != typeof t) return t;
353    try {
354      return JSON.parse(decodeURIComponent(t));
355    } catch (e) {
356      return t;
357    }
358  }
359  function j(t) {
360    return t.replace(/[A-Z]/g, (t) => `-${t.toLowerCase()}`);
361  }
362  const F = {
363    setDataAttribute(t, e, i) {
364      t.setAttribute(`data-bs-${j(e)}`, i);
365    },
366    removeDataAttribute(t, e) {
367      t.removeAttribute(`data-bs-${j(e)}`);
368    },
369    getDataAttributes(t) {
370      if (!t) return {};
371      const e = {},
372        i = Object.keys(t.dataset).filter(
373          (t) => t.startsWith("bs") && !t.startsWith("bsConfig"),
374        );
375      for (const n of i) {
376        let i = n.replace(/^bs/, "");
377        ((i = i.charAt(0).toLowerCase() + i.slice(1, i.length)),
378          (e[i] = M(t.dataset[n])));
379      }
380      return e;
381    },
382    getDataAttribute: (t, e) => M(t.getAttribute(`data-bs-${j(e)}`)),
383  };
384  class H {
385    static get Default() {
386      return {};
387    }
388    static get DefaultType() {
389      return {};
390    }
391    static get NAME() {
392      throw new Error(
393        'You have to implement the static method "NAME", for each component!',
394      );
395    }
396    _getConfig(t) {
397      return (
398        (t = this._mergeConfigObj(t)),
399        (t = this._configAfterMerge(t)),
400        this._typeCheckConfig(t),
401        t
402      );
403    }
404    _configAfterMerge(t) {
405      return t;
406    }
407    _mergeConfigObj(t, e) {
408      const i = o(e) ? F.getDataAttribute(e, "config") : {};
409      return {
410        ...this.constructor.Default,
411        ...("object" == typeof i ? i : {}),
412        ...(o(e) ? F.getDataAttributes(e) : {}),
413        ...("object" == typeof t ? t : {}),
414      };
415    }
416    _typeCheckConfig(t, e = this.constructor.DefaultType) {
417      for (const [n, s] of Object.entries(e)) {
418        const e = t[n],
419          r = o(e)
420            ? "element"
421            : null == (i = e)
422              ? `${i}`
423              : Object.prototype.toString
424                  .call(i)
425                  .match(/\s([a-z]+)/i)[1]
426                  .toLowerCase();
427        if (!new RegExp(s).test(r))
428          throw new TypeError(
429            `${this.constructor.NAME.toUpperCase()}: Option "${n}" provided type "${r}" but expected type "${s}".`,
430          );
431      }
432      var i;
433    }
434  }
435  class W extends H {
436    constructor(t, i) {
437      (super(),
438        (t = r(t)) &&
439          ((this._element = t),
440          (this._config = this._getConfig(i)),
441          e.set(this._element, this.constructor.DATA_KEY, this)));
442    }
443    dispose() {
444      (e.remove(this._element, this.constructor.DATA_KEY),
445        N.off(this._element, this.constructor.EVENT_KEY));
446      for (const t of Object.getOwnPropertyNames(this)) this[t] = null;
447    }
448    _queueCallback(t, e, i = !0) {
449      _(t, e, i);
450    }
451    _getConfig(t) {
452      return (
453        (t = this._mergeConfigObj(t, this._element)),
454        (t = this._configAfterMerge(t)),
455        this._typeCheckConfig(t),
456        t
457      );
458    }
459    static getInstance(t) {
460      return e.get(r(t), this.DATA_KEY);
461    }
462    static getOrCreateInstance(t, e = {}) {
463      return (
464        this.getInstance(t) || new this(t, "object" == typeof e ? e : null)
465      );
466    }
467    static get VERSION() {
468      return "5.3.2";
469    }
470    static get DATA_KEY() {
471      return `bs.${this.NAME}`;
472    }
473    static get EVENT_KEY() {
474      return `.${this.DATA_KEY}`;
475    }
476    static eventName(t) {
477      return `${t}${this.EVENT_KEY}`;
478    }
479  }
480  const B = (t) => {
481      let e = t.getAttribute("data-bs-target");
482      if (!e || "#" === e) {
483        let i = t.getAttribute("href");
484        if (!i || (!i.includes("#") && !i.startsWith("."))) return null;
485        (i.includes("#") && !i.startsWith("#") && (i = `#${i.split("#")[1]}`),
486          (e = i && "#" !== i ? n(i.trim()) : null));
487      }
488      return e;
489    },
490    z = {
491      find: (t, e = document.documentElement) =>
492        [].concat(...Element.prototype.querySelectorAll.call(e, t)),
493      findOne: (t, e = document.documentElement) =>
494        Element.prototype.querySelector.call(e, t),
495      children: (t, e) => [].concat(...t.children).filter((t) => t.matches(e)),
496      parents(t, e) {
497        const i = [];
498        let n = t.parentNode.closest(e);
499        for (; n; ) (i.push(n), (n = n.parentNode.closest(e)));
500        return i;
501      },
502      prev(t, e) {
503        let i = t.previousElementSibling;
504        for (; i; ) {
505          if (i.matches(e)) return [i];
506          i = i.previousElementSibling;
507        }
508        return [];
509      },
510      next(t, e) {
511        let i = t.nextElementSibling;
512        for (; i; ) {
513          if (i.matches(e)) return [i];
514          i = i.nextElementSibling;
515        }
516        return [];
517      },
518      focusableChildren(t) {
519        const e = [
520          "a",
521          "button",
522          "input",
523          "textarea",
524          "select",
525          "details",
526          "[tabindex]",
527          '[contenteditable="true"]',
528        ]
529          .map((t) => `${t}:not([tabindex^="-"])`)
530          .join(",");
531        return this.find(e, t).filter((t) => !l(t) && a(t));
532      },
533      getSelectorFromElement(t) {
534        const e = B(t);
535        return e && z.findOne(e) ? e : null;
536      },
537      getElementFromSelector(t) {
538        const e = B(t);
539        return e ? z.findOne(e) : null;
540      },
541      getMultipleElementsFromSelector(t) {
542        const e = B(t);
543        return e ? z.find(e) : [];
544      },
545    },
546    R = (t, e = "hide") => {
547      const i = `click.dismiss${t.EVENT_KEY}`,
548        n = t.NAME;
549      N.on(document, i, `[data-bs-dismiss="${n}"]`, function (i) {
550        if (
551          (["A", "AREA"].includes(this.tagName) && i.preventDefault(), l(this))
552        )
553          return;
554        const s = z.getElementFromSelector(this) || this.closest(`.${n}`);
555        t.getOrCreateInstance(s)[e]();
556      });
557    },
558    q = ".bs.alert",
559    V = `close${q}`,
560    K = `closed${q}`;
561  class Q extends W {
562    static get NAME() {
563      return "alert";
564    }
565    close() {
566      if (N.trigger(this._element, V).defaultPrevented) return;
567      this._element.classList.remove("show");
568      const t = this._element.classList.contains("fade");
569      this._queueCallback(() => this._destroyElement(), this._element, t);
570    }
571    _destroyElement() {
572      (this._element.remove(), N.trigger(this._element, K), this.dispose());
573    }
574    static jQueryInterface(t) {
575      return this.each(function () {
576        const e = Q.getOrCreateInstance(this);
577        if ("string" == typeof t) {
578          if (void 0 === e[t] || t.startsWith("_") || "constructor" === t)
579            throw new TypeError(`No method named "${t}"`);
580          e[t](this);
581        }
582      });
583    }
584  }
585  (R(Q, "close"), m(Q));
586  const X = '[data-bs-toggle="button"]';
587  class Y extends W {
588    static get NAME() {
589      return "button";
590    }
591    toggle() {
592      this._element.setAttribute(
593        "aria-pressed",
594        this._element.classList.toggle("active"),
595      );
596    }
597    static jQueryInterface(t) {
598      return this.each(function () {
599        const e = Y.getOrCreateInstance(this);
600        "toggle" === t && e[t]();
601      });
602    }
603  }
604  (N.on(document, "click.bs.button.data-api", X, (t) => {
605    t.preventDefault();
606    const e = t.target.closest(X);
607    Y.getOrCreateInstance(e).toggle();
608  }),
609    m(Y));
610  const U = ".bs.swipe",
611    G = `touchstart${U}`,
612    J = `touchmove${U}`,
613    Z = `touchend${U}`,
614    tt = `pointerdown${U}`,
615    et = `pointerup${U}`,
616    it = { endCallback: null, leftCallback: null, rightCallback: null },
617    nt = {
618      endCallback: "(function|null)",
619      leftCallback: "(function|null)",
620      rightCallback: "(function|null)",
621    };
622  class st extends H {
623    constructor(t, e) {
624      (super(),
625        (this._element = t),
626        t &&
627          st.isSupported() &&
628          ((this._config = this._getConfig(e)),
629          (this._deltaX = 0),
630          (this._supportPointerEvents = Boolean(window.PointerEvent)),
631          this._initEvents()));
632    }
633    static get Default() {
634      return it;
635    }
636    static get DefaultType() {
637      return nt;
638    }
639    static get NAME() {
640      return "swipe";
641    }
642    dispose() {
643      N.off(this._element, U);
644    }
645    _start(t) {
646      this._supportPointerEvents
647        ? this._eventIsPointerPenTouch(t) && (this._deltaX = t.clientX)
648        : (this._deltaX = t.touches[0].clientX);
649    }
650    _end(t) {
651      (this._eventIsPointerPenTouch(t) &&
652        (this._deltaX = t.clientX - this._deltaX),
653        this._handleSwipe(),
654        g(this._config.endCallback));
655    }
656    _move(t) {
657      this._deltaX =
658        t.touches && t.touches.length > 1
659          ? 0
660          : t.touches[0].clientX - this._deltaX;
661    }
662    _handleSwipe() {
663      const t = Math.abs(this._deltaX);
664      if (t <= 40) return;
665      const e = t / this._deltaX;
666      ((this._deltaX = 0),
667        e && g(e > 0 ? this._config.rightCallback : this._config.leftCallback));
668    }
669    _initEvents() {
670      this._supportPointerEvents
671        ? (N.on(this._element, tt, (t) => this._start(t)),
672          N.on(this._element, et, (t) => this._end(t)),
673          this._element.classList.add("pointer-event"))
674        : (N.on(this._element, G, (t) => this._start(t)),
675          N.on(this._element, J, (t) => this._move(t)),
676          N.on(this._element, Z, (t) => this._end(t)));
677    }
678    _eventIsPointerPenTouch(t) {
679      return (
680        this._supportPointerEvents &&
681        ("pen" === t.pointerType || "touch" === t.pointerType)
682      );
683    }
684    static isSupported() {
685      return (
686        "ontouchstart" in document.documentElement ||
687        navigator.maxTouchPoints > 0
688      );
689    }
690  }
691  const ot = ".bs.carousel",
692    rt = ".data-api",
693    at = "next",
694    lt = "prev",
695    ct = "left",
696    ht = "right",
697    dt = `slide${ot}`,
698    ut = `slid${ot}`,
699    ft = `keydown${ot}`,
700    pt = `mouseenter${ot}`,
701    mt = `mouseleave${ot}`,
702    gt = `dragstart${ot}`,
703    _t = `load${ot}${rt}`,
704    bt = `click${ot}${rt}`,
705    vt = "carousel",
706    yt = "active",
707    wt = ".active",
708    At = ".carousel-item",
709    Et = wt + At,
710    Tt = { ArrowLeft: ht, ArrowRight: ct },
711    Ct = {
712      interval: 5e3,
713      keyboard: !0,
714      pause: "hover",
715      ride: !1,
716      touch: !0,
717      wrap: !0,
718    },
719    Ot = {
720      interval: "(number|boolean)",
721      keyboard: "boolean",
722      pause: "(string|boolean)",
723      ride: "(boolean|string)",
724      touch: "boolean",
725      wrap: "boolean",
726    };
727  class xt extends W {
728    constructor(t, e) {
729      (super(t, e),
730        (this._interval = null),
731        (this._activeElement = null),
732        (this._isSliding = !1),
733        (this.touchTimeout = null),
734        (this._swipeHelper = null),
735        (this._indicatorsElement = z.findOne(
736          ".carousel-indicators",
737          this._element,
738        )),
739        this._addEventListeners(),
740        this._config.ride === vt && this.cycle());
741    }
742    static get Default() {
743      return Ct;
744    }
745    static get DefaultType() {
746      return Ot;
747    }
748    static get NAME() {
749      return "carousel";
750    }
751    next() {
752      this._slide(at);
753    }
754    nextWhenVisible() {
755      !document.hidden && a(this._element) && this.next();
756    }
757    prev() {
758      this._slide(lt);
759    }
760    pause() {
761      (this._isSliding && s(this._element), this._clearInterval());
762    }
763    cycle() {
764      (this._clearInterval(),
765        this._updateInterval(),
766        (this._interval = setInterval(
767          () => this.nextWhenVisible(),
768          this._config.interval,
769        )));
770    }
771    _maybeEnableCycle() {
772      this._config.ride &&
773        (this._isSliding
774          ? N.one(this._element, ut, () => this.cycle())
775          : this.cycle());
776    }
777    to(t) {
778      const e = this._getItems();
779      if (t > e.length - 1 || t < 0) return;
780      if (this._isSliding)
781        return void N.one(this._element, ut, () => this.to(t));
782      const i = this._getItemIndex(this._getActive());
783      if (i === t) return;
784      const n = t > i ? at : lt;
785      this._slide(n, e[t]);
786    }
787    dispose() {
788      (this._swipeHelper && this._swipeHelper.dispose(), super.dispose());
789    }
790    _configAfterMerge(t) {
791      return ((t.defaultInterval = t.interval), t);
792    }
793    _addEventListeners() {
794      (this._config.keyboard &&
795        N.on(this._element, ft, (t) => this._keydown(t)),
796        "hover" === this._config.pause &&
797          (N.on(this._element, pt, () => this.pause()),
798          N.on(this._element, mt, () => this._maybeEnableCycle())),
799        this._config.touch &&
800          st.isSupported() &&
801          this._addTouchEventListeners());
802    }
803    _addTouchEventListeners() {
804      for (const t of z.find(".carousel-item img", this._element))
805        N.on(t, gt, (t) => t.preventDefault());
806      const t = {
807        leftCallback: () => this._slide(this._directionToOrder(ct)),
808        rightCallback: () => this._slide(this._directionToOrder(ht)),
809        endCallback: () => {
810          "hover" === this._config.pause &&
811            (this.pause(),
812            this.touchTimeout && clearTimeout(this.touchTimeout),
813            (this.touchTimeout = setTimeout(
814              () => this._maybeEnableCycle(),
815              500 + this._config.interval,
816            )));
817        },
818      };
819      this._swipeHelper = new st(this._element, t);
820    }
821    _keydown(t) {
822      if (/input|textarea/i.test(t.target.tagName)) return;
823      const e = Tt[t.key];
824      e && (t.preventDefault(), this._slide(this._directionToOrder(e)));
825    }
826    _getItemIndex(t) {
827      return this._getItems().indexOf(t);
828    }
829    _setActiveIndicatorElement(t) {
830      if (!this._indicatorsElement) return;
831      const e = z.findOne(wt, this._indicatorsElement);
832      (e.classList.remove(yt), e.removeAttribute("aria-current"));
833      const i = z.findOne(`[data-bs-slide-to="${t}"]`, this._indicatorsElement);
834      i && (i.classList.add(yt), i.setAttribute("aria-current", "true"));
835    }
836    _updateInterval() {
837      const t = this._activeElement || this._getActive();
838      if (!t) return;
839      const e = Number.parseInt(t.getAttribute("data-bs-interval"), 10);
840      this._config.interval = e || this._config.defaultInterval;
841    }
842    _slide(t, e = null) {
843      if (this._isSliding) return;
844      const i = this._getActive(),
845        n = t === at,
846        s = e || b(this._getItems(), i, n, this._config.wrap);
847      if (s === i) return;
848      const o = this._getItemIndex(s),
849        r = (e) =>
850          N.trigger(this._element, e, {
851            relatedTarget: s,
852            direction: this._orderToDirection(t),
853            from: this._getItemIndex(i),
854            to: o,
855          });
856      if (r(dt).defaultPrevented) return;
857      if (!i || !s) return;
858      const a = Boolean(this._interval);
859      (this.pause(),
860        (this._isSliding = !0),
861        this._setActiveIndicatorElement(o),
862        (this._activeElement = s));
863      const l = n ? "carousel-item-start" : "carousel-item-end",
864        c = n ? "carousel-item-next" : "carousel-item-prev";
865      (s.classList.add(c),
866        d(s),
867        i.classList.add(l),
868        s.classList.add(l),
869        this._queueCallback(
870          () => {
871            (s.classList.remove(l, c),
872              s.classList.add(yt),
873              i.classList.remove(yt, c, l),
874              (this._isSliding = !1),
875              r(ut));
876          },
877          i,
878          this._isAnimated(),
879        ),
880        a && this.cycle());
881    }
882    _isAnimated() {
883      return this._element.classList.contains("slide");
884    }
885    _getActive() {
886      return z.findOne(Et, this._element);
887    }
888    _getItems() {
889      return z.find(At, this._element);
890    }
891    _clearInterval() {
892      this._interval &&
893        (clearInterval(this._interval), (this._interval = null));
894    }
895    _directionToOrder(t) {
896      return p() ? (t === ct ? lt : at) : t === ct ? at : lt;
897    }
898    _orderToDirection(t) {
899      return p() ? (t === lt ? ct : ht) : t === lt ? ht : ct;
900    }
901    static jQueryInterface(t) {
902      return this.each(function () {
903        const e = xt.getOrCreateInstance(this, t);
904        if ("number" != typeof t) {
905          if ("string" == typeof t) {
906            if (void 0 === e[t] || t.startsWith("_") || "constructor" === t)
907              throw new TypeError(`No method named "${t}"`);
908            e[t]();
909          }
910        } else e.to(t);
911      });
912    }
913  }
914  (N.on(document, bt, "[data-bs-slide], [data-bs-slide-to]", function (t) {
915    const e = z.getElementFromSelector(this);
916    if (!e || !e.classList.contains(vt)) return;
917    t.preventDefault();
918    const i = xt.getOrCreateInstance(e),
919      n = this.getAttribute("data-bs-slide-to");
920    return n
921      ? (i.to(n), void i._maybeEnableCycle())
922      : "next" === F.getDataAttribute(this, "slide")
923        ? (i.next(), void i._maybeEnableCycle())
924        : (i.prev(), void i._maybeEnableCycle());
925  }),
926    N.on(window, _t, () => {
927      const t = z.find('[data-bs-ride="carousel"]');
928      for (const e of t) xt.getOrCreateInstance(e);
929    }),
930    m(xt));
931  const kt = ".bs.collapse",
932    Lt = `show${kt}`,
933    St = `shown${kt}`,
934    Dt = `hide${kt}`,
935    $t = `hidden${kt}`,
936    It = `click${kt}.data-api`,
937    Nt = "show",
938    Pt = "collapse",
939    Mt = "collapsing",
940    jt = `:scope .${Pt} .${Pt}`,
941    Ft = '[data-bs-toggle="collapse"]',
942    Ht = { parent: null, toggle: !0 },
943    Wt = { parent: "(null|element)", toggle: "boolean" };
944  class Bt extends W {
945    constructor(t, e) {
946      (super(t, e), (this._isTransitioning = !1), (this._triggerArray = []));
947      const i = z.find(Ft);
948      for (const t of i) {
949        const e = z.getSelectorFromElement(t),
950          i = z.find(e).filter((t) => t === this._element);
951        null !== e && i.length && this._triggerArray.push(t);
952      }
953      (this._initializeChildren(),
954        this._config.parent ||
955          this._addAriaAndCollapsedClass(this._triggerArray, this._isShown()),
956        this._config.toggle && this.toggle());
957    }
958    static get Default() {
959      return Ht;
960    }
961    static get DefaultType() {
962      return Wt;
963    }
964    static get NAME() {
965      return "collapse";
966    }
967    toggle() {
968      this._isShown() ? this.hide() : this.show();
969    }
970    show() {
971      if (this._isTransitioning || this._isShown()) return;
972      let t = [];
973      if (
974        (this._config.parent &&
975          (t = this._getFirstLevelChildren(
976            ".collapse.show, .collapse.collapsing",
977          )
978            .filter((t) => t !== this._element)
979            .map((t) => Bt.getOrCreateInstance(t, { toggle: !1 }))),
980        t.length && t[0]._isTransitioning)
981      )
982        return;
983      if (N.trigger(this._element, Lt).defaultPrevented) return;
984      for (const e of t) e.hide();
985      const e = this._getDimension();
986      (this._element.classList.remove(Pt),
987        this._element.classList.add(Mt),
988        (this._element.style[e] = 0),
989        this._addAriaAndCollapsedClass(this._triggerArray, !0),
990        (this._isTransitioning = !0));
991      const i = `scroll${e[0].toUpperCase() + e.slice(1)}`;
992      (this._queueCallback(
993        () => {
994          ((this._isTransitioning = !1),
995            this._element.classList.remove(Mt),
996            this._element.classList.add(Pt, Nt),
997            (this._element.style[e] = ""),
998            N.trigger(this._element, St));
999        },
1000        this._element,
1001        !0,
1002      ),
1003        (this._element.style[e] = `${this._element[i]}px`));
1004    }
1005    hide() {
1006      if (this._isTransitioning || !this._isShown()) return;
1007      if (N.trigger(this._element, Dt).defaultPrevented) return;
1008      const t = this._getDimension();
1009      ((this._element.style[t] = `${
1010        this._element.getBoundingClientRect()[t]
1011      }px`),
1012        d(this._element),
1013        this._element.classList.add(Mt),
1014        this._element.classList.remove(Pt, Nt));
1015      for (const t of this._triggerArray) {
1016        const e = z.getElementFromSelector(t);
1017        e && !this._isShown(e) && this._addAriaAndCollapsedClass([t], !1);
1018      }
1019      ((this._isTransitioning = !0),
1020        (this._element.style[t] = ""),
1021        this._queueCallback(
1022          () => {
1023            ((this._isTransitioning = !1),
1024              this._element.classList.remove(Mt),
1025              this._element.classList.add(Pt),
1026              N.trigger(this._element, $t));
1027          },
1028          this._element,
1029          !0,
1030        ));
1031    }
1032    _isShown(t = this._element) {
1033      return t.classList.contains(Nt);
1034    }
1035    _configAfterMerge(t) {
1036      return ((t.toggle = Boolean(t.toggle)), (t.parent = r(t.parent)), t);
1037    }
1038    _getDimension() {
1039      return this._element.classList.contains("collapse-horizontal")
1040        ? "width"
1041        : "height";
1042    }
1043    _initializeChildren() {
1044      if (!this._config.parent) return;
1045      const t = this._getFirstLevelChildren(Ft);
1046      for (const e of t) {
1047        const t = z.getElementFromSelector(e);
1048        t && this._addAriaAndCollapsedClass([e], this._isShown(t));
1049      }
1050    }
1051    _getFirstLevelChildren(t) {
1052      const e = z.find(jt, this._config.parent);
1053      return z.find(t, this._config.parent).filter((t) => !e.includes(t));
1054    }
1055    _addAriaAndCollapsedClass(t, e) {
1056      if (t.length)
1057        for (const i of t)
1058          (i.classList.toggle("collapsed", !e),
1059            i.setAttribute("aria-expanded", e));
1060    }
1061    static jQueryInterface(t) {
1062      const e = {};
1063      return (
1064        "string" == typeof t && /show|hide/.test(t) && (e.toggle = !1),
1065        this.each(function () {
1066          const i = Bt.getOrCreateInstance(this, e);
1067          if ("string" == typeof t) {
1068            if (void 0 === i[t]) throw new TypeError(`No method n
1068amed "${t}"`);
1069            i[t]();
1070          }
1071        })
1072      );
1073    }
1074  }
1075  (N.on(document, It, Ft, function (t) {
1076    ("A" === t.target.tagName ||
1077      (t.delegateTarget && "A" === t.delegateTarget.tagName)) &&
1078      t.preventDefault();
1079    for (const t of z.getMultipleElementsFromSelector(this))
1080      Bt.getOrCreateInstance(t, { toggle: !1 }).toggle();
1081  }),
1082    m(Bt));
1083  var zt = "top",
1084    Rt = "bottom",
1085    qt = "right",
1086    Vt = "left",
1087    Kt = "auto",
1088    Qt = [zt, Rt, qt, Vt],
1089    Xt = "start",
1090    Yt = "end",
1091    Ut = "clippingParents",
1092    Gt = "viewport",
1093    Jt = "popper",
1094    Zt = "reference",
1095    te = Qt.reduce(function (t, e) {
1096      return t.concat([e + "-" + Xt, e + "-" + Yt]);
1097    }, []),
1098    ee = [].concat(Qt, [Kt]).reduce(function (t, e) {
1099      return t.concat([e, e + "-" + Xt, e + "-" + Yt]);
1100    }, []),
1101    ie = "beforeRead",
1102    ne = "read",
1103    se = "afterRead",
1104    oe = "beforeMain",
1105    re = "main",
1106    ae = "afterMain",
1107    le = "beforeWrite",
1108    ce = "write",
1109    he = "afterWrite",
1110    de = [ie, ne, se, oe, re, ae, le, ce, he];
1111  function ue(t) {
1112    return t ? (t.nodeName || "").toLowerCase() : null;
1113  }
1114  function fe(t) {
1115    if (null == t) return window;
1116    if ("[object Window]" !== t.toString()) {
1117      var e = t.ownerDocument;
1118      return (e && e.defaultView) || window;
1119    }
1120    return t;
1121  }
1122  function pe(t) {
1123    return t instanceof fe(t).Element || t instanceof Element;
1124  }
1125  function me(t) {
1126    return t instanceof fe(t).HTMLElement || t instanceof HTMLElement;
1127  }
1128  function ge(t) {
1129    return (
1130      "undefined" != typeof ShadowRoot &&
1131      (t instanceof fe(t).ShadowRoot || t instanceof ShadowRoot)
1132    );
1133  }
1134  const _e = {
1135    name: "applyStyles",
1136    enabled: !0,
1137    phase: "write",
1138    fn: function (t) {
1139      var e = t.state;
1140      Object.keys(e.elements).forEach(function (t) {
1141        var i = e.styles[t] || {},
1142          n = e.attributes[t] || {},
1143          s = e.elements[t];
1144        me(s) &&
1145          ue(s) &&
1146          (Object.assign(s.style, i),
1147          Object.keys(n).forEach(function (t) {
1148            var e = n[t];
1149            !1 === e
1150              ? s.removeAttribute(t)
1151              : s.setAttribute(t, !0 === e ? "" : e);
1152          }));
1153      });
1154    },
1155    effect: function (t) {
1156      var e = t.state,
1157        i = {
1158          popper: {
1159            position: e.options.strategy,
1160            left: "0",
1161            top: "0",
1162            margin: "0",
1163          },
1164          arrow: { position: "absolute" },
1165          reference: {},
1166        };
1167      return (
1168        Object.assign(e.elements.popper.style, i.popper),
1169        (e.styles = i),
1170        e.elements.arrow && Object.assign(e.elements.arrow.style, i.arrow),
1171        function () {
1172          Object.keys(e.elements).forEach(function (t) {
1173            var n = e.elements[t],
1174              s = e.attributes[t] || {},
1175              o = Object.keys(
1176                e.styles.hasOwnProperty(t) ? e.styles[t] : i[t],
1177              ).reduce(function (t, e) {
1178                return ((t[e] = ""), t);
1179              }, {});
1180            me(n) &&
1181              ue(n) &&
1182              (Object.assign(n.style, o),
1183              Object.keys(s).forEach(function (t) {
1184                n.removeAttribute(t);
1185              }));
1186          });
1187        }
1188      );
1189    },
1190    requires: ["computeStyles"],
1191  };
1192  function be(t) {
1193    return t.split("-")[0];
1194  }
1195  var ve = Math.max,
1196    ye = Math.min,
1197    we = Math.round;
1198  function Ae() {
1199    var t = navigator.userAgentData;
1200    return null != t && t.brands && Array.isArray(t.brands)
1201      ? t.brands
1202          .map(function (t) {
1203            return t.brand + "/" + t.version;
1204          })
1205          .join(" ")
1206      : navigator.userAgent;
1207  }
1208  function Ee() {
1209    return !/^((?!chrome|android).)*safari/i.test(Ae());
1210  }
1211  function Te(t, e, i) {
1212    (void 0 === e && (e = !1), void 0 === i && (i = !1));
1213    var n = t.getBoundingClientRect(),
1214      s = 1,
1215      o = 1;
1216    e &&
1217      me(t) &&
1218      ((s = (t.offsetWidth > 0 && we(n.width) / t.offsetWidth) || 1),
1219      (o = (t.offsetHeight > 0 && we(n.height) / t.offsetHeight) || 1));
1220    var r = (pe(t) ? fe(t) : window).visualViewport,
1221      a = !Ee() && i,
1222      l = (n.left + (a && r ? r.offsetLeft : 0)) / s,
1223      c = (n.top + (a && r ? r.offsetTop : 0)) / o,
1224      h = n.width / s,
1225      d = n.height / o;
1226    return {
1227      width: h,
1228      height: d,
1229      top: c,
1230      right: l + h,
1231      bottom: c + d,
1232      left: l,
1233      x: l,
1234      y: c,
1235    };
1236  }
1237  function Ce(t) {
1238    var e = Te(t),
1239      i = t.offsetWidth,
1240      n = t.offsetHeight;
1241    return (
1242      Math.abs(e.width - i) <= 1 && (i = e.width),
1243      Math.abs(e.height - n) <= 1 && (n = e.height),
1244      { x: t.offsetLeft, y: t.offsetTop, width: i, height: n }
1245    );
1246  }
1247  function Oe(t, e) {
1248    var i = e.getRootNode && e.getRootNode();
1249    if (t.contains(e)) return !0;
1250    if (i && ge(i)) {
1251      var n = e;
1252      do {
1253        if (n && t.isSameNode(n)) return !0;
1254        n = n.parentNode || n.host;
1255      } while (n);
1256    }
1257    return !1;
1258  }
1259  function xe(t) {
1260    return fe(t).getComputedStyle(t);
1261  }
1262  function ke(t) {
1263    return ["table", "td", "th"].indexOf(ue(t)) >= 0;
1264  }
1265  function Le(t) {
1266    return ((pe(t) ? t.ownerDocument : t.document) || window.document)
1267      .documentElement;
1268  }
1269  function Se(t) {
1270    return "html" === ue(t)
1271      ? t
1272      : t.assignedSlot || t.parentNode || (ge(t) ? t.host : null) || Le(t);
1273  }
1274  function De(t) {
1275    return me(t) && "fixed" !== xe(t).position ? t.offsetParent : null;
1276  }
1277  function $e(t) {
1278    for (var e = fe(t), i = De(t); i && ke(i) && "static" === xe(i).position; )
1279      i = De(i);
1280    return i &&
1281      ("html" === ue(i) || ("body" === ue(i) && "static" === xe(i).position))
1282      ? e
1283      : i ||
1284          (function (t) {
1285            var e = /firefox/i.test(Ae());
1286            if (/Trident/i.test(Ae()) && me(t) && "fixed" === xe(t).position)
1287              return null;
1288            var i = Se(t);
1289            for (
1290              ge(i) && (i = i.host);
1291              me(i) && ["html", "body"].indexOf(ue(i)) < 0;
1292            ) {
1293              var n = xe(i);
1294              if (
1295                "none" !== n.transform ||
1296                "none" !== n.perspective ||
1297                "paint" === n.contain ||
1298                -1 !== ["transform", "perspective"].indexOf(n.willChange) ||
1299                (e && "filter" === n.willChange) ||
1300                (e && n.filter && "none" !== n.filter)
1301              )
1302                return i;
1303              i = i.parentNode;
1304            }
1305            return null;
1306          })(t) ||
1307          e;
1308  }
1309  function Ie(t) {
1310    return ["top", "bottom"].indexOf(t) >= 0 ? "x" : "y";
1311  }
1312  function Ne(t, e, i) {
1313    return ve(t, ye(e, i));
1314  }
1315  function Pe(t) {
1316    return Object.assign({}, { top: 0, right: 0, bottom: 0, left: 0 }, t);
1317  }
1318  function Me(t, e) {
1319    return e.reduce(function (e, i) {
1320      return ((e[i] = t), e);
1321    }, {});
1322  }
1323  const je = {
1324    name: "arrow",
1325    enabled: !0,
1326    phase: "main",
1327    fn: function (t) {
1328      var e,
1329        i = t.state,
1330        n = t.name,
1331        s = t.options,
1332        o = i.elements.arrow,
1333        r = i.modifiersData.popperOffsets,
1334        a = be(i.placement),
1335        l = Ie(a),
1336        c = [Vt, qt].indexOf(a) >= 0 ? "height" : "width";
1337      if (o && r) {
1338        var h = (function (t, e) {
1339            return Pe(
1340              "number" !=
1341                typeof (t =
1342                  "function" == typeof t
1343                    ? t(Object.assign({}, e.rects, { placement: e.placement }))
1344                    : t)
1345                ? t
1346                : Me(t, Qt),
1347            );
1348          })(s.padding, i),
1349          d = Ce(o),
1350          u = "y" === l ? zt : Vt,
1351          f = "y" === l ? Rt : qt,
1352          p =
1353            i.rects.reference[c] +
1354            i.rects.reference[l] -
1355            r[l] -
1356            i.rects.popper[c],
1357          m = r[l] - i.rects.reference[l],
1358          g = $e(o),
1359          _ = g ? ("y" === l ? g.clientHeight || 0 : g.clientWidth || 0) : 0,
1360          b = p / 2 - m / 2,
1361          v = h[u],
1362          y = _ - d[c] - h[f],
1363          w = _ / 2 - d[c] / 2 + b,
1364          A = Ne(v, w, y),
1365          E = l;
1366        i.modifiersData[n] = (((e = {})[E] = A), (e.centerOffset = A - w), e);
1367      }
1368    },
1369    effect: function (t) {
1370      var e = t.state,
1371        i = t.options.element,
1372        n = void 0 === i ? "[data-popper-arrow]" : i;
1373      null != n &&
1374        ("string" != typeof n || (n = e.elements.popper.querySelector(n))) &&
1375        Oe(e.elements.popper, n) &&
1376        (e.elements.arrow = n);
1377    },
1378    requires: ["popperOffsets"],
1379    requiresIfExists: ["preventOverflow"],
1380  };
1381  function Fe(t) {
1382    return t.split("-")[1];
1383  }
1384  var He = { top: "auto", right: "auto", bottom: "auto", left: "auto" };
1385  function We(t) {
1386    var e,
1387      i = t.popper,
1388      n = t.popperRect,
1389      s = t.placement,
1390      o = t.variation,
1391      r = t.offsets,
1392      a = t.position,
1393      l = t.gpuAcceleration,
1394      c = t.adaptive,
1395      h = t.roundOffsets,
1396      d = t.isFixed,
1397      u = r.x,
1398      f = void 0 === u ? 0 : u,
1399      p = r.y,
1400      m = void 0 === p ? 0 : p,
1401      g = "function" == typeof h ? h({ x: f, y: m }) : { x: f, y: m };
1402    ((f = g.x), (m = g.y));
1403    var _ = r.hasOwnProperty("x"),
1404      b = r.hasOwnProperty("y"),
1405      v = Vt,
1406      y = zt,
1407      w = window;
1408    if (c) {
1409      var A = $e(i),
1410        E = "clientHeight",
1411        T = "clientWidth";
1412      (A === fe(i) &&
1413        "static" !== xe((A = Le(i))).position &&
1414        "absolute" === a &&
1415        ((E = "scrollHeight"), (T = "scrollWidth")),
1416        (s === zt || ((s === Vt || s === qt) && o === Yt)) &&
1417          ((y = Rt),
1418          (m -=
1419            (d && A === w && w.visualViewport
1420              ? w.visualViewport.height
1421              : A[E]) - n.height),
1422          (m *= l ? 1 : -1)),
1423        (s !== Vt && ((s !== zt && s !== Rt) || o !== Yt)) ||
1424          ((v = qt),
1425          (f -=
1426            (d && A === w && w.visualViewport ? w.visualViewport.width : A[T]) -
1427            n.width),
1428          (f *= l ? 1 : -1)));
1429    }
1430    var C,
1431      O = Object.assign({ position: a }, c && He),
1432      x =
1433        !0 === h
1434          ? (function (t, e) {
1435              var i = t.x,
1436                n = t.y,
1437                s = e.devicePixelRatio || 1;
1438              return { x: we(i * s) / s || 0, y: we(n * s) / s || 0 };
1439            })({ x: f, y: m }, fe(i))
1440          : { x: f, y: m };
1441    return (
1442      (f = x.x),
1443      (m = x.y),
1444      l
1445        ? Object.assign(
1446            {},
1447            O,
1448            (((C = {})[y] = b ? "0" : ""),
1449            (C[v] = _ ? "0" : ""),
1450            (C.transform =
1451              (w.devicePixelRatio || 1) <= 1
1452                ? "translate(" + f + "px, " + m + "px)"
1453                : "translate3d(" + f + "px, " + m + "px, 0)"),
1454            C),
1455          )
1456        : Object.assign(
1457            {},
1458            O,
1459            (((e = {})[y] = b ? m + "px" : ""),
1460            (e[v] = _ ? f + "px" : ""),
1461            (e.transform = ""),
1462            e),
1463          )
1464    );
1465  }
1466  const Be = {
1467    name: "computeStyles",
1468    enabled: !0,
1469    phase: "beforeWrite",
1470    fn: function (t) {
1471      var e = t.state,
1472        i = t.options,
1473        n = i.gpuAcceleration,
1474        s = void 0 === n || n,
1475        o = i.adaptive,
1476        r = void 0 === o || o,
1477        a = i.roundOffsets,
1478        l = void 0 === a || a,
1479        c = {
1480          placement: be(e.placement),
1481          variation: Fe(e.placement),
1482          popper: e.elements.popper,
1483          popperRect: e.rects.popper,
1484          gpuAcceleration: s,
1485          isFixed: "fixed" === e.options.strategy,
1486        };
1487      (null != e.modifiersData.popperOffsets &&
1488        (e.styles.popper = Object.assign(
1489          {},
1490          e.styles.popper,
1491          We(
1492            Object.assign({}, c, {
1493              offsets: e.modifiersData.popperOffsets,
1494              position: e.options.strategy,
1495              adaptive: r,
1496              roundOffsets: l,
1497            }),
1498          ),
1499        )),
1500        null != e.modifiersData.arrow &&
1501          (e.styles.arrow = Object.assign(
1502            {},
1503            e.styles.arrow,
1504            We(
1505              Object.assign({}, c, {
1506                offsets: e.modifiersData.arrow,
1507                position: "absolute",
1508                adaptive: !1,
1509                roundOffsets: l,
1510              }),
1511            ),
1512          )),
1513        (e.attributes.popper = Object.assign({}, e.attributes.popper, {
1514          "data-popper-placement": e.placement,
1515        })));
1516    },
1517    data: {},
1518  };
1519  var ze = { passive: !0 };
1520  const Re = {
1521    name: "eventListeners",
1522    enabled: !0,
1523    phase: "write",
1524    fn: function () {},
1525    effect: function (t) {
1526      var e = t.state,
1527        i = t.instance,
1528        n = t.options,
1529        s = n.scroll,
1530        o = void 0 === s || s,
1531        r = n.resize,
1532        a = void 0 === r || r,
1533        l = fe(e.elements.popper),
1534        c = [].concat(e.scrollParents.reference, e.scrollParents.popper);
1535      return (
1536        o &&
1537          c.forEach(function (t) {
1538            t.addEventListener("scroll", i.update, ze);
1539          }),
1540        a && l.addEventListener("resize", i.update, ze),
1541        function () {
1542          (o &&
1543            c.forEach(function (t) {
1544              t.removeEventListener("scroll", i.update, ze);
1545            }),
1546            a && l.removeEventListener("resize", i.update, ze));
1547        }
1548      );
1549    },
1550    data: {},
1551  };
1552  var qe = { left: "right", right: "left", bottom: "top", top: "bottom" };
1553  function Ve(t) {
1554    return t.replace(/left|right|bottom|top/g, function (t) {
1555      return qe[t];
1556    });
1557  }
1558  var Ke = { start: "end", end: "start" };
1559  function Qe(t) {
1560    return t.replace(/start|end/g, function (t) {
1561      return Ke[t];
1562    });
1563  }
1564  function Xe(t) {
1565    var e = fe(t);
1566    return { scrollLeft: e.pageXOffset, scrollTop: e.pageYOffset };
1567  }
1568  function Ye(t) {
1569    return Te(Le(t)).left + Xe(t).scrollLeft;
1570  }
1571  function Ue(t) {
1572    var e = xe(t),
1573      i = e.overflow,
1574      n = e.overflowX,
1575      s = e.overflowY;
1576    return /auto|scroll|overlay|hidden/.test(i + s + n);
1577  }
1578  function Ge(t) {
1579    return ["html", "body", "#document"].indexOf(ue(t)) >= 0
1580      ? t.ownerDocument.body
1581      : me(t) && Ue(t)
1582        ? t
1583        : Ge(Se(t));
1584  }
1585  function Je(t, e) {
1586    var i;
1587    void 0 === e && (e = []);
1588    var n = Ge(t),
1589      s = n === (null == (i = t.ownerDocument) ? void 0 : i.body),
1590      o = fe(n),
1591      r = s ? [o].concat(o.visualViewport || [], Ue(n) ? n : []) : n,
1592      a = e.concat(r);
1593    return s ? a : a.concat(Je(Se(r)));
1594  }
1595  function Ze(t) {
1596    return Object.assign({}, t, {
1597      left: t.x,
1598      top: t.y,
1599      right: t.x + t.width,
1600      bottom: t.y + t.height,
1601    });
1602  }
1603  function ti(t, e, i) {
1604    return e === Gt
1605      ? Ze(
1606          (function (t, e) {
1607            var i = fe(t),
1608              n = Le(t),
1609              s = i.visualViewport,
1610              o = n.clientWidth,
1611              r = n.clientHeight,
1612              a = 0,
1613              l = 0;
1614            if (s) {
1615              ((o = s.width), (r = s.height));
1616              var c = Ee();
1617              (c || (!c && "fixed" === e)) &&
1618                ((a = s.offsetLeft), (l = s.offsetTop));
1619            }
1620            return { width: o, height: r, x: a + Ye(t), y: l };
1621          })(t, i),
1622        )
1623      : pe(e)
1624        ? (function (t, e) {
1625            var i = Te(t, !1, "fixed" === e);
1626            return (
1627              (i.top = i.top + t.clientTop),
1628              (i.left = i.left + t.clientLeft),
1629              (i.bottom = i.top + t.clientHeight),
1630              (i.right = i.left + t.clientWidth),
1631              (i.width = t.clientWidth),
1632              (i.height = t.clientHeight),
1633              (i.x = i.left),
1634              (i.y = i.top),
1635              i
1636            );
1637          })(e, i)
1638        : Ze(
1639            (function (t) {
1640              var e,
1641                i = Le(t),
1642                n = Xe(t),
1643                s = null == (e = t.ownerDocument) ? void 0 : e.body,
1644                o = ve(
1645                  i.scrollWidth,
1646                  i.clientWidth,
1647                  s ? s.scrollWidth : 0,
1648                  s ? s.clientWidth : 0,
1649                ),
1650                r = ve(
1651                  i.scrollHeight,
1652                  i.clientHeight,
1653                  s ? s.scrollHeight : 0,
1654                  s ? s.clientHeight : 0,
1655                ),
1656                a = -n.scrollLeft + Ye(t),
1657                l = -n.scrollTop;
1658              return (
1659                "rtl" === xe(s || i).direction &&
1660                  (a += ve(i.clientWidth, s ? s.clientWidth : 0) - o),
1661                { width: o, height: r, x: a, y: l }
1662              );
1663            })(Le(t)),
1664          );
1665  }
1666  function ei(t) {
1667    var e,
1668      i = t.reference,
1669      n = t.element,
1670      s = t.placement,
1671      o = s ? be(s) : null,
1672      r = s ? Fe(s) : null,
1673      a = i.x + i.width / 2 - n.width / 2,
1674      l = i.y + i.height / 2 - n.height / 2;
1675    switch (o) {
1676      case zt:
1677        e = { x: a, y: i.y - n.height };
1678        break;
1679      case Rt:
1680        e = { x: a, y: i.y + i.height };
1681        break;
1682      case qt:
1683        e = { x: i.x + i.width, y: l };
1684        break;
1685      case Vt:
1686        e = { x: i.x - n.width, y: l };
1687        break;
1688      default:
1689        e = { x: i.x, y: i.y };
1690    }
1691    var c = o ? Ie(o) : null;
1692    if (null != c) {
1693      var h = "y" === c ? "height" : "width";
1694      switch (r) {
1695        case Xt:
1696          e[c] = e[c] - (i[h] / 2 - n[h] / 2);
1697          break;
1698        case Yt:
1699          e[c] = e[c] + (i[h] / 2 - n[h] / 2);
1700      }
1701    }
1702    return e;
1703  }
1704  function ii(t, e) {
1705    void 0 === e && (e = {});
1706    var i = e,
1707      n = i.placement,
1708      s = void 0 === n ? t.placement : n,
1709      o = i.strategy,
1710      r = void 0 === o ? t.strategy : o,
1711      a = i.boundary,
1712      l = void 0 === a ? Ut : a,
1713      c = i.rootBoundary,
1714      h = void 0 === c ? Gt : c,
1715      d = i.elementContext,
1716      u = void 0 === d ? Jt : d,
1717      f = i.altBoundary,
1718      p = void 0 !== f && f,
1719      m = i.padding,
1720      g = void 0 === m ? 0 : m,
1721      _ = Pe("number" != typeof g ? g : Me(g, Qt)),
1722      b = u === Jt ? Zt : Jt,
1723      v = t.rects.popper,
1724      y = t.elements[p ? b : u],
1725      w = (function (t, e, i, n) {
1726        var s =
1727            "clippingParents" === e
1728              ? (function (t) {
1729                  var e = Je(Se(t)),
1730                    i =
1731                      ["absolute", "fixed"].indexOf(xe(t).position) >= 0 &&
1732                      me(t)
1733                        ? $e(t)
1734                        : t;
1735                  return pe(i)
1736                    ? e.filter(function (t) {
1737                        return pe(t) && Oe(t, i) && "body" !== ue(t);
1738                      })
1739                    : [];
1740                })(t)
1741              : [].concat(e),
1742          o = [].concat(s, [i]),
1743          r = o[0],
1744          a = o.reduce(
1745            function (e, i) {
1746              var s = ti(t, i, n);
1747              return (
1748                (e.top = ve(s.top, e.top)),
1749                (e.right = ye(s.right, e.right)),
1750                (e.bottom = ye(s.bottom, e.bottom)),
1751                (e.left = ve(s.left, e.left)),
1752                e
1753              );
1754            },
1755            ti(t, r, n),
1756          );
1757        return (
1758          (a.width = a.right - a.left),
1759          (a.height = a.bottom - a.top),
1760          (a.x = a.left),
1761          (a.y = a.top),
1762          a
1763        );
1764      })(pe(y) ? y : y.contextElement || Le(t.elements.popper), l, h, r),
1765      A = Te(t.elements.reference),
1766      E = ei({ reference: A, element: v, strategy: "absolute", placement: s }),
1767      T = Ze(Object.assign({}, v, E)),
1768      C = u === Jt ? T : A,
1769      O = {
1770        top: w.top - C.top + _.top,
1771        bottom: C.bottom - w.bottom + _.bottom,
1772        left: w.left - C.left + _.left,
1773        right: C.right - w.right + _.right,
1774      },
1775      x = t.modifiersData.offset;
1776    if (u === Jt && x) {
1777      var k = x[s];
1778      Object.keys(O).forEach(function (t) {
1779        var e = [qt, Rt].indexOf(t) >= 0 ? 1 : -1,
1780          i = [zt, Rt].indexOf(t) >= 0 ? "y" : "x";
1781        O[t] += k[i] * e;
1782      });
1783    }
1784    return O;
1785  }
1786  function ni(t, e) {
1787    void 0 === e && (e = {});
1788    var i = e,
1789      n = i.placement,
1790      s = i.boundary,
1791      o = i.rootBoundary,
1792      r = i.padding,
1793      a = i.flipVariations,
1794      l = i.allowedAutoPlacements,
1795      c = void 0 === l ? ee : l,
1796      h = Fe(n),
1797      d = h
1798        ? a
1799          ? te
1800          : te.filter(function (t) {
1801              return Fe(t) === h;
1802            })
1803        : Qt,
1804      u = d.filter(function (t) {
1805        return c.indexOf(t) >= 0;
1806      });
1807    0 === u.length && (u = d);
1808    var f = u.reduce(function (e, i) {
1809      return (
1810        (e[i] = ii(t, {
1811          placement: i,
1812          boundary: s,
1813          rootBoundary: o,
1814          padding: r,
1815        })[be(i)]),
1816        e
1817      );
1818    }, {});
1819    return Object.keys(f).sort(function (t, e) {
1820      return f[t] - f[e];
1821    });
1822  }
1823  const si = {
1824    name: "flip",
1825    enabled: !0,
1826    phase: "main",
1827    fn: function (t) {
1828      var e = t.state,
1829        i = t.options,
1830        n = t.name;
1831      if (!e.modifiersData[n]._skip) {
1832        for (
1833          var s = i.mainAxis,
1834            o = void 0 === s || s,
1835            r = i.altAxis,
1836            a = void 0 === r || r,
1837            l = i.fallbackPlacements,
1838            c = i.padding,
1839            h = i.boundary,
1840            d = i.rootBoundary,
1841            u = i.altBoundary,
1842            f = i.flipVariations,
1843            p = void 0 === f || f,
1844            m = i.allowedAutoPlacements,
1845            g = e.options.placement,
1846            _ = be(g),
1847            b =
1848              l ||
1849              (_ !== g && p
1850                ? (function (t) {
1851                    if (be(t) === Kt) return [];
1852                    var e = Ve(t);
1853                    return [Qe(t), e, Qe(e)];
1854                  })(g)
1855                : [Ve(g)]),
1856            v = [g].concat(b).reduce(function (t, i) {
1857              return t.concat(
1858                be(i) === Kt
1859                  ? ni(e, {
1860                      placement: i,
1861                      boundary: h,
1862                      rootBoundary: d,
1863                      padding: c,
1864                      flipVariations: p,
1865                      allowedAutoPlacements: m,
1866                    })
1867                  : i,
1868              );
1869            }, []),
1870            y = e.rects.reference,
1871            w = e.rects.popper,
1872            A = new Map(),
1873            E = !0,
1874            T = v[0],
1875            C = 0;
1876          C < v.length;
1877          C++
1878        ) {
1879          var O = v[C],
1880            x = be(O),
1881            k = Fe(O) === Xt,
1882            L = [zt, Rt].indexOf(x) >= 0,
1883            S = L ? "width" : "height",
1884            D = ii(e, {
1885              placement: O,
1886              boundary: h,
1887              rootBoundary: d,
1888              altBoundary: u,
1889              padding: c,
1890            }),
1891            $ = L ? (k ? qt : Vt) : k ? Rt : zt;
1892          y[S] >
1892 w[S] && ($ = Ve($));
1893          var I = Ve($),
1894            N = [];
1895          if (
1896            (o && N.push(D[x] <= 0),
1897            a && N.push(D[$] <= 0, D[I] <= 0),
1898            N.every(function (t) {
1899              return t;
1900            }))
1901          ) {
1902            ((T = O), (E = !1));
1903            break;
1904          }
1905          A.set(O, N);
1906        }
1907        if (E)
1908          for (
1909            var P = function (t) {
1910                var e = v.find(function (e) {
1911                  var i = A.get(e);
1912                  if (i)
1913                    return i.slice(0, t).every(function (t) {
1914                      return t;
1915                    });
1916                });
1917                if (e) return ((T = e), "break");
1918              },
1919              M = p ? 3 : 1;
1920            M > 0 && "break" !== P(M);
1921            M--
1922          );
1923        e.placement !== T &&
1924          ((e.modifiersData[n]._skip = !0), (e.placement = T), (e.reset = !0));
1925      }
1926    },
1927    requiresIfExists: ["offset"],
1928    data: { _skip: !1 },
1929  };
1930  function oi(t, e, i) {
1931    return (
1932      void 0 === i && (i = { x: 0, y: 0 }),
1933      {
1934        top: t.top - e.height - i.y,
1935        right: t.right - e.width + i.x,
1936        bottom: t.bottom - e.height + i.y,
1937        left: t.left - e.width - i.x,
1938      }
1939    );
1940  }
1941  function ri(t) {
1942    return [zt, qt, Rt, Vt].some(function (e) {
1943      return t[e] >= 0;
1944    });
1945  }
1946  const ai = {
1947      name: "hide",
1948      enabled: !0,
1949      phase: "main",
1950      requiresIfExists: ["preventOverflow"],
1951      fn: function (t) {
1952        var e = t.state,
1953          i = t.name,
1954          n = e.rects.reference,
1955          s = e.rects.popper,
1956          o = e.modifiersData.preventOverflow,
1957          r = ii(e, { elementContext: "reference" }),
1958          a = ii(e, { altBoundary: !0 }),
1959          l = oi(r, n),
1960          c = oi(a, s, o),
1961          h = ri(l),
1962          d = ri(c);
1963        ((e.modifiersData[i] = {
1964          referenceClippingOffsets: l,
1965          popperEscapeOffsets: c,
1966          isReferenceHidden: h,
1967          hasPopperEscaped: d,
1968        }),
1969          (e.attributes.popper = Object.assign({}, e.attributes.popper, {
1970            "data-popper-reference-hidden": h,
1971            "data-popper-escaped": d,
1972          })));
1973      },
1974    },
1975    li = {
1976      name: "offset",
1977      enabled: !0,
1978      phase: "main",
1979      requires: ["popperOffsets"],
1980      fn: function (t) {
1981        var e = t.state,
1982          i = t.options,
1983          n = t.name,
1984          s = i.offset,
1985          o = void 0 === s ? [0, 0] : s,
1986          r = ee.reduce(function (t, i) {
1987            return (
1988              (t[i] = (function (t, e, i) {
1989                var n = be(t),
1990                  s = [Vt, zt].indexOf(n) >= 0 ? -1 : 1,
1991                  o =
1992                    "function" == typeof i
1993                      ? i(Object.assign({}, e, { placement: t }))
1994                      : i,
1995                  r = o[0],
1996                  a = o[1];
1997                return (
1998                  (r = r || 0),
1999                  (a = (a || 0) * s),
2000                  [Vt, qt].indexOf(n) >= 0 ? { x: a, y: r } : { x: r, y: a }
2001                );
2002              })(i, e.rects, o)),
2003              t
2004            );
2005          }, {}),
2006          a = r[e.placement],
2007          l = a.x,
2008          c = a.y;
2009        (null != e.modifiersData.popperOffsets &&
2010          ((e.modifiersData.popperOffsets.x += l),
2011          (e.modifiersData.popperOffsets.y += c)),
2012          (e.modifiersData[n] = r));
2013      },
2014    },
2015    ci = {
2016      name: "popperOffsets",
2017      enabled: !0,
2018      phase: "read",
2019      fn: function (t) {
2020        var e = t.state,
2021          i = t.name;
2022        e.modifiersData[i] = ei({
2023          reference: e.rects.reference,
2024          element: e.rects.popper,
2025          strategy: "absolute",
2026          placement: e.placement,
2027        });
2028      },
2029      data: {},
2030    },
2031    hi = {
2032      name: "preventOverflow",
2033      enabled: !0,
2034      phase: "main",
2035      fn: function (t) {
2036        var e = t.state,
2037          i = t.options,
2038          n = t.name,
2039          s = i.mainAxis,
2040          o = void 0 === s || s,
2041          r = i.altAxis,
2042          a = void 0 !== r && r,
2043          l = i.boundary,
2044          c = i.rootBoundary,
2045          h = i.altBoundary,
2046          d = i.padding,
2047          u = i.tether,
2048          f = void 0 === u || u,
2049          p = i.tetherOffset,
2050          m = void 0 === p ? 0 : p,
2051          g = ii(e, {
2052            boundary: l,
2053            rootBoundary: c,
2054            padding: d,
2055            altBoundary: h,
2056          }),
2057          _ = be(e.placement),
2058          b = Fe(e.placement),
2059          v = !b,
2060          y = Ie(_),
2061          w = "x" === y ? "y" : "x",
2062          A = e.modifiersData.popperOffsets,
2063          E = e.rects.reference,
2064          T = e.rects.popper,
2065          C =
2066            "function" == typeof m
2067              ? m(Object.assign({}, e.rects, { placement: e.placement }))
2068              : m,
2069          O =
2070            "number" == typeof C
2071              ? { mainAxis: C, altAxis: C }
2072              : Object.assign({ mainAxis: 0, altAxis: 0 }, C),
2073          x = e.modifiersData.offset
2074            ? e.modifiersData.offset[e.placement]
2075            : null,
2076          k = { x: 0, y: 0 };
2077        if (A) {
2078          if (o) {
2079            var L,
2080              S = "y" === y ? zt : Vt,
2081              D = "y" === y ? Rt : qt,
2082              $ = "y" === y ? "height" : "width",
2083              I = A[y],
2084              N = I + g[S],
2085              P = I - g[D],
2086              M = f ? -T[$] / 2 : 0,
2087              j = b === Xt ? E[$] : T[$],
2088              F = b === Xt ? -T[$] : -E[$],
2089              H = e.elements.arrow,
2090              W = f && H ? Ce(H) : { width: 0, height: 0 },
2091              B = e.modifiersData["arrow#persistent"]
2092                ? e.modifiersData["arrow#persistent"].padding
2093                : { top: 0, right: 0, bottom: 0, left: 0 },
2094              z = B[S],
2095              R = B[D],
2096              q = Ne(0, E[$], W[$]),
2097              V = v
2098                ? E[$] / 2 - M - q - z - O.mainAxis
2099                : j - q - z - O.mainAxis,
2100              K = v
2101                ? -E[$] / 2 + M + q + R + O.mainAxis
2102                : F + q + R + O.mainAxis,
2103              Q = e.elements.arrow && $e(e.elements.arrow),
2104              X = Q ? ("y" === y ? Q.clientTop || 0 : Q.clientLeft || 0) : 0,
2105              Y = null != (L = null == x ? void 0 : x[y]) ? L : 0,
2106              U = I + K - Y,
2107              G = Ne(f ? ye(N, I + V - Y - X) : N, I, f ? ve(P, U) : P);
2108            ((A[y] = G), (k[y] = G - I));
2109          }
2110          if (a) {
2111            var J,
2112              Z = "x" === y ? zt : Vt,
2113              tt = "x" === y ? Rt : qt,
2114              et = A[w],
2115              it = "y" === w ? "height" : "width",
2116              nt = et + g[Z],
2117              st = et - g[tt],
2118              ot = -1 !== [zt, Vt].indexOf(_),
2119              rt = null != (J = null == x ? void 0 : x[w]) ? J : 0,
2120              at = ot ? nt : et - E[it] - T[it] - rt + O.altAxis,
2121              lt = ot ? et + E[it] + T[it] - rt - O.altAxis : st,
2122              ct =
2123                f && ot
2124                  ? (function (t, e, i) {
2125                      var n = Ne(t, e, i);
2126                      return n > i ? i : n;
2127                    })(at, et, lt)
2128                  : Ne(f ? at : nt, et, f ? lt : st);
2129            ((A[w] = ct), (k[w] = ct - et));
2130          }
2131          e.modifiersData[n] = k;
2132        }
2133      },
2134      requiresIfExists: ["offset"],
2135    };
2136  function di(t, e, i) {
2137    void 0 === i && (i = !1);
2138    var n,
2139      s,
2140      o = me(e),
2141      r =
2142        me(e) &&
2143        (function (t) {
2144          var e = t.getBoundingClientRect(),
2145            i = we(e.width) / t.offsetWidth || 1,
2146            n = we(e.height) / t.offsetHeight || 1;
2147          return 1 !== i || 1 !== n;
2148        })(e),
2149      a = Le(e),
2150      l = Te(t, r, i),
2151      c = { scrollLeft: 0, scrollTop: 0 },
2152      h = { x: 0, y: 0 };
2153    return (
2154      (o || (!o && !i)) &&
2155        (("body" !== ue(e) || Ue(a)) &&
2156          (c =
2157            (n = e) !== fe(n) && me(n)
2158              ? { scrollLeft: (s = n).scrollLeft, scrollTop: s.scrollTop }
2159              : Xe(n)),
2160        me(e)
2161          ? (((h = Te(e, !0)).x += e.clientLeft), (h.y += e.clientTop))
2162          : a && (h.x = Ye(a))),
2163      {
2164        x: l.left + c.scrollLeft - h.x,
2165        y: l.top + c.scrollTop - h.y,
2166        width: l.width,
2167        height: l.height,
2168      }
2169    );
2170  }
2171  function ui(t) {
2172    var e = new Map(),
2173      i = new Set(),
2174      n = [];
2175    function s(t) {
2176      (i.add(t.name),
2177        []
2178          .concat(t.requires || [], t.requiresIfExists || [])
2179          .forEach(function (t) {
2180            if (!i.has(t)) {
2181              var n = e.get(t);
2182              n && s(n);
2183            }
2184          }),
2185        n.push(t));
2186    }
2187    return (
2188      t.forEach(function (t) {
2189        e.set(t.name, t);
2190      }),
2191      t.forEach(function (t) {
2192        i.has(t.name) || s(t);
2193      }),
2194      n
2195    );
2196  }
2197  var fi = { placement: "bottom", modifiers: [], strategy: "absolute" };
2198  function pi() {
2199    for (var t = arguments.length, e = new Array(t), i = 0; i < t; i++)
2200      e[i] = arguments[i];
2201    return !e.some(function (t) {
2202      return !(t && "function" == typeof t.getBoundingClientRect);
2203    });
2204  }
2205  function mi(t) {
2206    void 0 === t && (t = {});
2207    var e = t,
2208      i = e.defaultModifiers,
2209      n = void 0 === i ? [] : i,
2210      s = e.defaultOptions,
2211      o = void 0 === s ? fi : s;
2212    return function (t, e, i) {
2213      void 0 === i && (i = o);
2214      var s,
2215        r,
2216        a = {
2217          placement: "bottom",
2218          orderedModifiers: [],
2219          options: Object.assign({}, fi, o),
2220          modifiersData: {},
2221          elements: { reference: t, popper: e },
2222          attributes: {},
2223          styles: {},
2224        },
2225        l = [],
2226        c = !1,
2227        h = {
2228          state: a,
2229          setOptions: function (i) {
2230            var s = "function" == typeof i ? i(a.options) : i;
2231            (d(),
2232              (a.options = Object.assign({}, o, a.options, s)),
2233              (a.scrollParents = {
2234                reference: pe(t)
2235                  ? Je(t)
2236                  : t.contextElement
2237                    ? Je(t.contextElement)
2238                    : [],
2239                popper: Je(e),
2240              }));
2241            var r,
2242              c,
2243              u = (function (t) {
2244                var e = ui(t);
2245                return de.reduce(function (t, i) {
2246                  return t.concat(
2247                    e.filter(function (t) {
2248                      return t.phase === i;
2249                    }),
2250                  );
2251                }, []);
2252              })(
2253                ((r = [].concat(n, a.options.modifiers)),
2254                (c = r.reduce(function (t, e) {
2255                  var i = t[e.name];
2256                  return (
2257                    (t[e.name] = i
2258                      ? Object.assign({}, i, e, {
2259                          options: Object.assign({}, i.options, e.options),
2260                          data: Object.assign({}, i.data, e.data),
2261                        })
2262                      : e),
2263                    t
2264                  );
2265                }, {})),
2266                Object.keys(c).map(function (t) {
2267                  return c[t];
2268                })),
2269              );
2270            return (
2271              (a.orderedModifiers = u.filter(function (t) {
2272                return t.enabled;
2273              })),
2274              a.orderedModifiers.forEach(function (t) {
2275                var e = t.name,
2276                  i = t.options,
2277                  n = void 0 === i ? {} : i,
2278                  s = t.effect;
2279                if ("function" == typeof s) {
2280                  var o = s({ state: a, name: e, instance: h, options: n });
2281                  l.push(o || function () {});
2282                }
2283              }),
2284              h.update()
2285            );
2286          },
2287          forceUpdate: function () {
2288            if (!c) {
2289              var t = a.elements,
2290                e = t.reference,
2291                i = t.popper;
2292              if (pi(e, i)) {
2293                ((a.rects = {
2294                  reference: di(e, $e(i), "fixed" === a.options.strategy),
2295                  popper: Ce(i),
2296                }),
2297                  (a.reset = !1),
2298                  (a.placement = a.options.placement),
2299                  a.orderedModifiers.forEach(function (t) {
2300                    return (a.modifiersData[t.name] = Object.assign(
2301                      {},
2302                      t.data,
2303                    ));
2304                  }));
2305                for (var n = 0; n < a.orderedModifiers.length; n++)
2306                  if (!0 !== a.reset) {
2307                    var s = a.orderedModifiers[n],
2308                      o = s.fn,
2309                      r = s.options,
2310                      l = void 0 === r ? {} : r,
2311                      d = s.name;
2312                    "function" == typeof o &&
2313                      (a =
2314                        o({ state: a, options: l, name: d, instance: h }) || a);
2315                  } else ((a.reset = !1), (n = -1));
2316              }
2317            }
2318          },
2319          update:
2320            ((s = function () {
2321              return new Promise(function (t) {
2322                (h.forceUpdate(), t(a));
2323              });
2324            }),
2325            function () {
2326              return (
2327                r ||
2328                  (r = new Promise(function (t) {
2329                    Promise.resolve().then(function () {
2330                      ((r = void 0), t(s()));
2331                    });
2332                  })),
2333                r
2334              );
2335            }),
2336          destroy: function () {
2337            (d(), (c = !0));
2338          },
2339        };
2340      if (!pi(t, e)) return h;
2341      function d() {
2342        (l.forEach(function (t) {
2343          return t();
2344        }),
2345          (l = []));
2346      }
2347      return (
2348        h.setOptions(i).then(function (t) {
2349          !c && i.onFirstUpdate && i.onFirstUpdate(t);
2350        }),
2351        h
2352      );
2353    };
2354  }
2355  var gi = mi(),
2356    _i = mi({ defaultModifiers: [Re, ci, Be, _e] }),
2357    bi = mi({ defaultModifiers: [Re, ci, Be, _e, li, si, hi, je, ai] });
2358  const vi = Object.freeze(
2359      Object.defineProperty(
2360        {
2361          __proto__: null,
2362          afterMain: ae,
2363          afterRead: se,
2364          afterWrite: he,
2365          applyStyles: _e,
2366          arrow: je,
2367          auto: Kt,
2368          basePlacements: Qt,
2369          beforeMain: oe,
2370          beforeRead: ie,
2371          beforeWrite: le,
2372          bottom: Rt,
2373          clippingParents: Ut,
2374          computeStyles: Be,
2375          createPopper: bi,
2376          createPopperBase: gi,
2377          createPopperLite: _i,
2378          detectOverflow: ii,
2379          end: Yt,
2380          eventListeners: Re,
2381          flip: si,
2382          hide: ai,
2383          left: Vt,
2384          main: re,
2385          modifierPhases: de,
2386          offset: li,
2387          placements: ee,
2388          popper: Jt,
2389          popperGenerator: mi,
2390          popperOffsets: ci,
2391          preventOverflow: hi,
2392          read: ne,
2393          reference: Zt,
2394          right: qt,
2395          start: Xt,
2396          top: zt,
2397          variationPlacements: te,
2398          viewport: Gt,
2399          write: ce,
2400        },
2401        Symbol.toStringTag,
2402        { value: "Module" },
2403      ),
2404    ),
2405    yi = "dropdown",
2406    wi = ".bs.dropdown",
2407    Ai = ".data-api",
2408    Ei = "ArrowUp",
2409    Ti = "ArrowDown",
2410    Ci = `hide${wi}`,
2411    Oi = `hidden${wi}`,
2412    xi = `show${wi}`,
2413    ki = `shown${wi}`,
2414    Li = `click${wi}${Ai}`,
2415    Si = `keydown${wi}${Ai}`,
2416    Di = `keyup${wi}${Ai}`,
2417    $i = "show",
2418    Ii = '[data-bs-toggle="dropdown"]:not(.disabled):not(:disabled)',
2419    Ni = `${Ii}.${$i}`,
2420    Pi = ".dropdown-menu",
2421    Mi = p() ? "top-end" : "top-start",
2422    ji = p() ? "top-start" : "top-end",
2423    Fi = p() ? "bottom-end" : "bottom-start",
2424    Hi = p() ? "bottom-start" : "bottom-end",
2425    Wi = p() ? "left-start" : "right-start",
2426    Bi = p() ? "right-start" : "left-start",
2427    zi = {
2428      autoClose: !0,
2429      boundary: "clippingParents",
2430      display: "dynamic",
2431      offset: [0, 2],
2432      popperConfig: null,
2433      reference: "toggle",
2434    },
2435    Ri = {
2436      autoClose: "(boolean|string)",
2437      boundary: "(string|element)",
2438      display: "string",
2439      offset: "(array|string|function)",
2440      popperConfig: "(null|object|function)",
2441      reference: "(string|element|object)",
2442    };
2443  class qi extends W {
2444    constructor(t, e) {
2445      (super(t, e),
2446        (this._popper = null),
2447        (this._parent = this._element.parentNode),
2448        (this._menu =
2449          z.next(this._element, Pi)[0] ||
2450          z.prev(this._element, Pi)[0] ||
2451          z.findOne(Pi, this._parent)),
2452        (this._inNavbar = this._detectNavbar()));
2453    }
2454    static get Default() {
2455      return zi;
2456    }
2457    static get DefaultType() {
2458      return Ri;
2459    }
2460    static get NAME() {
2461      return yi;
2462    }
2463    toggle() {
2464      return this._isShown() ? this.hide() : this.show();
2465    }
2466    show() {
2467      if (l(this._element) || this._isShown()) return;
2468      const t = { relatedTarget: this._element };
2469      if (!N.trigger(this._element, xi, t).defaultPrevented) {
2470        if (
2471          (this._createPopper(),
2472          "ontouchstart" in document.documentElement &&
2473            !this._parent.closest(".navbar-nav"))
2474        )
2475          for (const t of [].concat(...document.body.children))
2476            N.on(t, "mouseover", h);
2477        (this._element.focus(),
2478          this._element.setAttribute("aria-expanded", !0),
2479          this._menu.classList.add($i),
2480          this._element.classList.add($i),
2481          N.trigger(this._element, ki, t));
2482      }
2483    }
2484    hide() {
2485      if (l(this._element) || !this._isShown()) return;
2486      const t = { relatedTarget: this._element };
2487      this._completeHide(t);
2488    }
2489    dispose() {
2490      (this._popper && this._popper.destroy(), super.dispose());
2491    }
2492    update() {
2493      ((this._inNavbar = this._detectNavbar()),
2494        this._popper && this._popper.update());
2495    }
2496    _completeHide(t) {
2497      if (!N.trigger(this._element, Ci, t).defaultPrevented) {
2498        if ("ontouchstart" in document.documentElement)
2499          for (const t of [].concat(...document.body.children))
2500            N.off(t, "mouseover", h);
2501        (this._popper && this._popper.destroy(),
2502          this._menu.classList.remove($i),
2503          this._element.classList.remove($i),
2504          this._element.setAttribute("aria-expanded", "false"),
2505          F.removeDataAttribute(this._menu, "popper"),
2506          N.trigger(this._element, Oi, t));
2507      }
2508    }
2509    _getConfig(t) {
2510      if (
2511        "object" == typeof (t = super._getConfig(t)).reference &&
2512        !o(t.reference) &&
2513        "function" != typeof t.reference.getBoundingClientRect
2514      )
2515        throw new TypeError(
2516          `${yi.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`,
2517        );
2518      return t;
2519    }
2520    _createPopper() {
2521      if (void 0 === vi)
2522        throw new TypeError(
2523          "Bootstrap's dropdowns require Popper (https://popper.js.org)",
2524        );
2525      let t = this._element;
2526      "parent" === this._config.reference
2527        ? (t = this._parent)
2528        : o(this._config.reference)
2529          ? (t = r(this._config.reference))
2530          : "object" == typeof this._config.reference &&
2531            (t = this._config.reference);
2532      const e = this._getPopperConfig();
2533      this._popper = bi(t, this._menu, e);
2534    }
2535    _isShown() {
2536      return this._menu.classList.contains($i);
2537    }
2538    _getPlacement() {
2539      const t = this._parent;
2540      if (t.classList.contains("dropend")) return Wi;
2541      if (t.classList.contains("dropstart")) return Bi;
2542      if (t.classList.contains("dropup-center")) return "top";
2543      if (t.classList.contains("dropdown-center")) return "bottom";
2544      const e =
2545        "end" ===
2546        getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();
2547      return t.classList.contains("dropup") ? (e ? ji : Mi) : e ? Hi : Fi;
2548    }
2549    _detectNavbar() {
2550      return null !== this._element.closest(".navbar");
2551    }
2552    _getOffset() {
2553      const { offset: t } = this._config;
2554      return "string" == typeof t
2555        ? t.split(",").map((t) => Number.parseInt(t, 10))
2556        : "function" == typeof t
2557          ? (e) => t(e, this._element)
2558          : t;
2559    }
2560    _getPopperConfig() {
2561      const t = {
2562        placement: this._getPlacement(),
2563        modifiers: [
2564          {
2565            name: "preventOverflow",
2566            options: { boundary: this._config.boundary },
2567          },
2568          { name: "offset", options: { offset: this._getOffset() } },
2569        ],
2570      };
2571      return (
2572        (this._inNavbar || "static" === this._config.display) &&
2573          (F.setDataAttribute(this._menu, "popper", "static"),
2574          (t.modifiers = [{ name: "applyStyles", enabled: !1 }])),
2575        { ...t, ...g(this._config.popperConfig, [t]) }
2576      );
2577    }
2578    _selectMenuItem({ key: t, target: e }) {
2579      const i = z
2580        .find(
2581          ".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",
2582          this._menu,
2583        )
2584        .filter((t) => a(t));
2585      i.length && b(i, e, t === Ti, !i.includes(e)).focus();
2586    }
2587    static jQueryInterface(t) {
2588      return this.each(function () {
2589        const e = qi.getOrCreateInstance(this, t);
2590        if ("string" == typeof t) {
2591          if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`);
2592          e[t]();
2593        }
2594      });
2595    }
2596    static clearMenus(t) {
2597      if (2 === t.button || ("keyup" === t.type && "Tab" !== t.key)) return;
2598      const e = z.find(Ni);
2599      for (const i of e) {
2600        const e = qi.getInstance(i);
2601        if (!e || !1 === e._config.autoClose) continue;
2602        const n = t.composedPath(),
2603          s = n.includes(e._menu);
2604        if (
2605          n.includes(e._element) ||
2606          ("inside" === e._config.autoClose && !s) ||
2607          ("outside" === e._config.autoClose && s)
2608        )
2609          continue;
2610        if (
2611          e._menu.contains(t.target) &&
2612          (("keyup" === t.type && "Tab" === t.key) ||
2613            /input|select|option|textarea|form/i.test(t.target.tagName))
2614        )
2615          continue;
2616        const o = { relatedTarget: e._element };
2617        ("click" === t.type && (o.clickEvent = t), e._completeHide(o));
2618      }
2619    }
2620    static dataApiKeydownHandler(t) {
2621      const e = /input|textarea/i.test(t.target.tagName),
2622        i = "Escape" === t.key,
2623        n = [Ei, Ti].includes(t.key);
2624      if (!n && !i) return;
2625      if (e && !i) return;
2626      t.preventDefault();
2627      const s = this.matches(Ii)
2628          ? this
2629          : z.prev(this, Ii)[0] ||
2630            z.next(this, Ii)[0] ||
2631            z.findOne(Ii, t.delegateTarget.parentNode),
2632        o = qi.getOrCreateInstance(s);
2633      if (n) return (t.stopPropagation(), o.show(), void o._selectMenuItem(t));
2634      o._isShown() && (t.stopPropagation(), o.hide(), s.focus());
2635    }
2636  }
2637  (N.on(document, Si, Ii, qi.dataApiKeydownHandler),
2638    N.on(document, Si, Pi, qi.dataApiKeydownHandler),
2639    N.on(document, Li, qi.clearMenus),
2640    N.on(document, Di, qi.clearMenus),
2641    N.on(document, Li, Ii, function (t) {
2642      (t.preventDefault(), qi.getOrCreateInstance(this).toggle());
2643    }),
2644    m(qi));
2645  const Vi = "backdrop",
2646    Ki = "show",
2647    Qi = `mousedown.bs.${Vi}`,
2648    Xi = {
2649      className: "modal-backdrop",
2650      clickCallback: null,
2651      isAnimated: !1,
2652      isVisible: !0,
2653      rootElement: "body",
2654    },
2655    Yi = {
2656      className: "string",
2657      clickCallback: "(function|null)",
2658      isAnimated: "boolean",
2659      isVisible: "boolean",
2660      rootElement: "(element|string)",
2661    };
2662  class Ui extends H {
2663    constructor(t) {
2664      (super(),
2665        (this._config = this._getConfig(t)),
2666        (this._isAppended = !1),
2667        (this._element = null));
2668    }
2669    static get Default() {
2670      return Xi;
2671    }
2672    static get DefaultType() {
2673      return Yi;
2674    }
2675    static get NAME() {
2676      return Vi;
2677    }
2678    show(t) {
2679      if (!this._config.isVisible) return void g(t);
2680      this._append();
2681      const e = this._getElement();
2682      (this._config.isAnimated && d(e),
2683        e.classList.add(Ki),
2684        this._emulateAnimation(() => {
2685          g(t);
2686        }));
2687    }
2688    hide(t) {
2689      this._config.isVisible
2690        ? (this._getElement().classList.remove(Ki),
2691          this._emulateAnimation(() => {
2692            (this.dispose(), g(t));
2693          }))
2694        : g(t);
2695    }
2696    dispose() {
2697      this._isAppended &&
2698        (N.off(this._element, Qi),
2699        this._element.remove(),
2700        (this._isAppended = !1));
2701    }
2702    _getElement() {
2703      if (!this._element) {
2704        const t = document.createElement("div");
2705        ((t.className = this._config.className),
2706          this._config.isAnimated && t.classList.add("fade"),
2707          (this._element = t));
2708      }
2709      return this._element;
2710    }
2711    _configAfterMerge(t) {
2712      return ((t.rootElement = r(t.rootElement)), t);
2713    }
2714    _append() {
2715      if (this._isAppended) return;
2716      const t = this._getElement();
2717      (this._config.rootElement.append(t),
2718        N.on(t, Qi, () => {
2719          g(this._config.clickCallback);
2720        }),
2721        (this._isAppended = !0));
2722    }
2723    _emulateAnimation(t) {
2724      _(t, this._getElement(), this._config.isAnimated);
2725    }
2726  }
2727  const Gi = ".bs.focustrap",
2728    Ji = `focusin${Gi}`,
2729    Zi = `keydown.tab${Gi}`,
2730    tn = "backward",
2731    en = { autofocus: !0, trapElement: null },
2732    nn = { autofocus: "boolean", trapElement: "element" };
2733  class sn extends H {
2734    constructor(t) {
2735      (super(),
2736        (this._config = this._getConfig(t)),
2737        (this._isActive = !1),
2738        (this._lastTabNavDirection = null));
2739    }
2740    static get Default() {
2741      return en;
2742    }
2743    static get DefaultType() {
2744      return nn;
2745    }
2746    static get NAME() {
2747      return "focustrap";
2748    }
2749    activate() {
2750      this._isActive ||
2751        (this._config.autofocus && this._config.trapElement.focus(),
2752        N.off(document, Gi),
2753        N.on(document, Ji, (t) => this._handleFocusin(t)),
2754        N.on(document, Zi, (t) => this._handleKeydown(t)),
2755        (this._isActive = !0));
2756    }
2757    deactivate() {
2758      this._isActive && ((this._isActive = !1), N.off(document, Gi));
2759    }
2760    _handleFocusin(t) {
2761      const { trapElement: e } = this._config;
2762      if (t.target === document || t.target === e || e.contains(t.target))
2763        return;
2764      const i = z.focusableChildren(e);
2765      0 === i.length
2766        ? e.focus()
2767        : this._lastTabNavDirection === tn
2768          ? i[i.length - 1].focus()
2769          : i[0].focus();
2770    }
2771    _handleKeydown(t) {
2772      "Tab" === t.key &&
2773        (this._lastTabNavDirection = t.shiftKey ? tn : "forward");
2774    }
2775  }
2776  const on = ".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",
2777    rn = ".sticky-top",
2778    an = "padding-right",
2779    ln = "margin-right";
2780  class cn {
2781    constructor() {
2782      this._element = document.body;
2783    }
2784    getWidth() {
2785      const t = document.documentElement.clientWidth;
2786      return Math.abs(window.innerWidth - t);
2787    }
2788    hide() {
2789      const t = this.getWidth();
2790      (this._disableOverFlow(),
2791        this._setElementAttributes(this._element, an, (e) => e + t),
2792        this._setElementAttributes(on, an, (e) => e + t),
2793        this._setElementAttributes(rn, ln, (e) => e - t));
2794    }
2795    reset() {
2796      (this._resetElementAttributes(this._element, "overflow"),
2797        this._resetElementAttributes(this._element, an),
2798        this._resetElementAttributes(on, an),
2799        this._resetElementAttributes(rn, ln));
2800    }
2801    isOverflowing() {
2802      return this.getWidth() > 0;
2803    }
2804    _disableOverFlow() {
2805      (this._saveInitialAttribute(this._element, "overflow"),
2806        (this._element.style.overflow = "hidden"));
2807    }
2808    _setElementAttributes(t, e, i) {
2809      const n = this.getWidth();
2810      this._applyManipulationCallback(t, (t) => {
2811        if (t !== this._element && window.innerWidth > t.clientWidth + n)
2812          return;
2813        this._saveInitialAttribute(t, e);
2814        const s = window.getComputedStyle(t).getPropertyValue(e);
2815        t.style.setProperty(e, `${i(Number.parseFloat(s))}px`);
2816      });
2817    }
2818    _saveInitialAttribute(t, e) {
2819      const i = t.style.getPropertyValue(e);
2820      i && F.setDataAttribute(t, e, i);
2821    }
2822    _resetElementAttributes(t, e) {
2823      this._applyManipulationCallback(t, (t) => {
2824        const i = F.getDataAttribute(t, e);
2825        null !== i
2826          ? (F.removeDataAttribute(t, e), t.style.setProperty(e, i))
2827          : t.style.removeProperty(e);
2828      });
2829    }
2830    _applyManipulationCallback(t, e) {
2831      if (o(t)) e(t);
2832      else for (const i of z.find(t, this._element)) e(i);
2833    }
2834  }
2835  const hn = ".bs.modal",
2836    dn = `hide${hn}`,
2837    un = `hidePrevented${hn}`,
2838    fn = `hidden${hn}`,
2839    pn = `show${hn}`,
2840    mn = `shown${hn}`,
2841    gn = `resize${hn}`,
2842    _n = `click.dismiss${hn}`,
2843    bn = `mousedown.dismiss${hn}`,
2844    vn = `keydown.dismiss${hn}`,
2845    yn = `click${hn}.data-api`,
2846    wn = "modal-open",
2847    An = "show",
2848    En = "modal-static",
2849    Tn = { backdrop: !0, focus: !0, keyboard: !0 },
2850    Cn = {
2851      backdrop: "(boolean|string)",
2852      focus: "boolean",
2853      keyboard: "boolean",
2854    };
2855  class On extends W {
2856    constructor(t, e) {
2857      (super(t, e),
2858        (this._dialog = z.findOne(".modal-dialog", this._element)),
2859        (this._backdrop = this._initializeBackDrop()),
2860        (this._focustrap = this._initializeFocusTrap()),
2861        (this._isShown = !1),
2862        (this._isTransitioning = !1),
2863        (this._scrollBar = new cn()),
2864        this._addEventListeners());
2865    }
2866    static get Default() {
2867      return Tn;
2868    }
2869    static get DefaultType() {
2870      return Cn;
2871    }
2872    static get NAME() {
2873      return "modal";
2874    }
2875    toggle(t) {
2876      return this._isShown ? this.hide() : this.show(t);
2877    }
2878    show(t) {
2879      this._isShown ||
2880        this._isTransitioning ||
2881        N.trigger(this._element, pn, { relatedTarget: t }).defaultPrevented ||
2882        ((this._isShown = !0),
2883        (this._isTransitioning = !0),
2884        this._scrollBar.hide(),
2885        document.body.classList.add(wn),
2886        this._adjustDialog(),
2887        this._backdrop.show(() => this._showElement(t)));
2888    }
2889    hide() {
2890      this._isShown &&
2891        !this._isTransitioning &&
2892        (N.trigger(this._element, dn).defaultPrevented ||
2893          ((this._isShown = !1),
2894          (this._isTransitioning = !0),
2895          this._focustrap.deactivate(),
2896          this._element.classList.remove(An),
2897          this._queueCallback(
2898            () => this._hideModal(),
2899            this._element,
2900            this._isAnimated(),
2901          )));
2902    }
2903    dispose() {
2904      (N.off(window, hn),
2905        N.off(this._dialog, hn),
2906        this._backdrop.dispose(),
2907        this._focustrap.deactivate(),
2908        super.dispose());
2909    }
2910    handleUpdate() {
2911      this._adjustDialog();
2912    }
2913    _initializeBackDrop() {
2914      return new Ui({
2915        isVisible: Boolean(this._config.backdrop),
2916        isAnimated: this._isAnimated(),
2917      });
2918    }
2919    _initializeFocusTrap() {
2920      return new sn({ trapElement: this._element });
2921    }
2922    _showElement(t) {
2923      (document.body.contains(this._element) ||
2924        document.body.append(this._element),
2925        (this._element.style.display = "block"),
2926        this._element.removeAttribute("aria-hidden"),
2927        this._element.setAttribute("aria-modal", !0),
2928        this._element.setAttribute("role", "dialog"),
2929        (this._element.scrollTop = 0));
2930      const e = z.findOne(".modal-body", this._dialog);
2931      (e && (e.scrollTop = 0),
2932        d(this._element),
2933        this._element.classList.add(An),
2934        this._queueCallback(
2935          () => {
2936            (this._config.focus && this._focustrap.activate(),
2937              (this._isTransitioning = !1),
2938              N.trigger(this._element, mn, { relatedTarget: t }));
2939          },
2940          this._dialog,
2941          this._isAnimated(),
2942        ));
2943    }
2944    _addEventListeners() {
2945      (N.on(this._element, vn, (t) => {
2946        "Escape" === t.key &&
2947          (this._config.keyboard
2948            ? this.hide()
2949            : this._triggerBackdropTransition());
2950      }),
2951        N.on(window, gn, () => {
2952          this._isShown && !this._isTransitioning && this._adjustDialog();
2953        }),
2954        N.on(this._element, bn, (t) => {
2955          N.one(this._element, _n, (e) => {
2956            this._element === t.target &&
2957              this._element === e.target &&
2958              ("static" !== this._config.backdrop
2959                ? this._config.backdrop && this.hide()
2960                : this._triggerBackdropTransition());
2961          });
2962        }));
2963    }
2964    _hideModal() {
2965      ((this._element.style.display = "none"),
2966        this._element.setAttribute("aria-hidden", !0),
2967        this._element.removeAttribute("aria-modal"),
2968        this._element.removeAttribute("role"),
2969        (this._isTransitioning = !1),
2970        this._backdrop.hide(() => {
2971          (document.body.classList.remove(wn),
2972            this._resetAdjustments(),
2973            this._scrollBar.reset(),
2974            N.trigger(this._element, fn));
2975        }));
2976    }
2977    _isAnimated() {
2978      return this._element.classList.contains("fade");
2979    }
2980    _triggerBackdropTransition() {
2981      if (N.trigger(this._element, un).defaultPrevented) return;
2982      const t =
2983          this._element.scrollHeight > document.documentElement.clientHeight,
2984        e = this._element.style.overflowY;
2985      "hidden" === e ||
2986        this._element.classList.contains(En) ||
2987        (t || (this._element.style.overflowY = "hidden"),
2988        this._element.classList.add(En),
2989        this._queueCallback(() => {
2990          (this._element.classList.remove(En),
2991            this._queueCallback(() => {
2992              this._element.style.overflowY = e;
2993            }, this._dialog));
2994        }, this._dialog),
2995        this._element.focus());
2996    }
2997    _adjustDialog() {
2998      const t =
2999          this._element.scrollHeight > document.documentElement.clientHeight,
3000        e = this._scrollBar.getWidth(),
3001        i = e > 0;
3002      if (i && !t) {
3003        const t = p() ? "paddingLeft" : "paddingRight";
3004        this._element.style[t] = `${e}px`;
3005      }
3006      if (!i && t) {
3007        const t = p() ? "paddingRight" : "paddingLeft";
3008        this._element.style[t] = `${e}px`;
3009      }
3010    }
3011    _resetAdjustments() {
3012      ((this._element.style.paddingLeft = ""),
3013        (this._element.style.paddingRight = ""));
3014    }
3015    static jQueryInterface(t, e) {
3016      return this.each(function () {
3017        const i = On.getOrCreateInstance(this, t);
3018        if ("string" == typeof t) {
3019          if (void 0 === i[t]) throw new TypeError(`No method named "${t}"`);
3020          i[t](e);
3021        }
3022      });
3023    }
3024  }
3025  (N.on(document, yn, '[data-bs-toggle="modal"]', function (t) {
3026    const e = z.getElementFromSelector(this);
3027    (["A", "AREA"].includes(this.tagName) && t.preventDefault(),
3028      N.one(e, pn, (t) => {
3029        t.defaultPrevented ||
3030          N.one(e, fn, () => {
3031            a(this) && this.focus();
3032          });
3033      }));
3034    const i = z.findOne(".modal.show");
3035    (i && On.getInstance(i).hide(), On.getOrCreateInstance(e).toggle(this));
3036  }),
3037    R(On),
3038    m(On));
3039  const xn = ".bs.offcanvas",
3040    kn = ".data-api",
3041    Ln = `load${xn}${kn}`,
3042    Sn = "show",
3043    Dn = "showing",
3044    $n = "hiding",
3045    In = ".offcanvas.show",
3046    Nn = `show${xn}`,
3047    Pn = `shown${xn}`,
3048    Mn = `hide${xn}`,
3049    jn = `hidePrevented${xn}`,
3050    Fn = `hidden${xn}`,
3051    Hn = `resize${xn}`,
3052    Wn = `click${xn}${kn}`,
3053    Bn = `keydown.dismiss${xn}`,
3054    zn = { backdrop: !0, keyboard: !0, scroll: !1 },
3055    Rn = {
3056      backdrop: "(boolean|string)",
3057      keyboard: "boolean",
3058      scroll: "boolean",
3059    };
3060  class qn extends W {
3061    constructor(t, e) {
3062      (super(t, e),
3063        (this._isShown = !1),
3064        (this._backdrop = this._initializeBackDrop()),
3065        (this._focustrap = this._initializeFocusTrap()),
3066        this._addEventListeners());
3067    }
3068    static get Default() {
3069      return zn;
3070    }
3071    static get DefaultType() {
3072      return Rn;
3073    }
3074    static get NAME() {
3075      return "offcanvas";
3076    }
3077    toggle(t) {
3078      return this._isShown ? this.hide() : this.show(t);
3079    }
3080    show(t) {
3081      this._isShown ||
3082        N.trigger(this._element, Nn, { relatedTarget: t }).defaultPrevented ||
3083        ((this._isShown = !0),
3084        this._backdrop.show(),
3085        this._config.scroll || new cn().hide(),
3086        this._element.setAttribute("aria-modal", !0),
3087        this._element.setAttribute("role", "dialog"),
3088        this._element.classList.add(Dn),
3089        this._queueCallback(
3090          () => {
3091            ((this._config.scroll && !this._config.backdrop) ||
3092              this._focustrap.activate(),
3093              this._element.classList.add(Sn),
3094              this._element.classList.remove(Dn),
3095              N.trigger(this._element, Pn, { relatedTarget: t }));
3096          },
3097          this._element,
3098          !0,
3099        ));
3100    }
3101    hide() {
3102      this._isShown &&
3103        (N.trigger(this._element, Mn).defaultPrevented ||
3104          (this._focustrap.deactivate(),
3105          this._element.blur(),
3106          (this._isShown = !1),
3107          this._element.classList.add($n),
3108          this._backdrop.hide(),
3109          this._queueCallback(
3110            () => {
3111              (this._element.classList.remove(Sn, $n),
3112                this._element.removeAttribute("aria-modal"),
3113                this._element.removeAttribute("role"),
3114                this._config.scroll || new cn().reset(),
3115                N.trigger(this._element, Fn));
3116            },
3117            this._element,
3118            !0,
3119          )));
3120    }
3121    dispose() {
3122      (this._backdrop.dispose(), this._focustrap.deactivate(), super.dispose());
3123    }
3124    _initializeBackDrop() {
3125      const t = Boolean(this._config.backdrop);
3126      return new Ui({
3127        className: "offcanvas-backdrop",
3128        isVisible: t,
3129        isAnimated: !0,
3130        rootElement: this._element.parentNode,
3131        clickCallback: t
3132          ? () => {
3133              "static" !== this._config.backdrop
3134                ? this.hide()
3135                : N.trigger(this._element, jn);
3136            }
3137          : null,
3138      });
3139    }
3140    _initializeFocusTrap() {
3141      return new sn({ trapElement: this._element });
3142    }
3143    _addEventListeners() {
3144      N.on(this._element, Bn, (t) => {
3145        "Escape" === t.key &&
3146          (this._config.keyboard ? this.hide() : N.trigger(this._element, jn));
3147      });
3148    }
3149    static jQueryInterface(t) {
3150      return this.each(function () {
3151        const e = qn.getOrCreateInstance(this, t);
3152        if ("string" == typeof t) {
3153          if (void 0 === e[t] || t.startsWith("_") || "constructor" === t)
3154            throw new TypeError(`No method named "${t}"`);
3155          e[t](this);
3156        }
3157      });
3158    }
3159  }
3160  (N.on(document, Wn, '[data-bs-toggle="offcanvas"]', function (t) {
3161    const e = z.getElementFromSelector(this);
3162    if ((["A", "AREA"].includes(this.tagName) && t.preventDefault(), l(this)))
3163      return;
3164    N.one(e, Fn, () => {
3165      a(this) && this.focus();
3166    });
3167    const i = z.findOne(In);
3168    (i && i !== e && qn.getInstance(i).hide(),
3169      qn.getOrCreateInstance(e).toggle(this));
3170  }),
3171    N.on(window, Ln, () => {
3172      for (const t of z.find(In)) qn.getOrCreateInstance(t).show();
3173    }),
3174    N.on(window, Hn, () => {
3175      for (const t of z.find("[aria-modal][class*=show][class*=offcanvas-]"))
3176        "fixed" !== getComputedStyle(t).position &&
3177          qn.getOrCreateInstance(t).hide();
3178    }),
3179    R(qn),
3180    m(qn));
3181  const Vn = {
3182      "*": ["class", "dir", "id", "lang", "role", /^aria-[\w-]*$/i],
3183      a: ["target", "href", "title", "rel"],
3184      area: [],
3185      b: [],
3186      br: [],
3187      col: [],
3188      code: [],
3189      div: [],
3190      em: [],
3191      hr: [],
3192      h1: [],
3193      h2: [],
3194      h3: [],
3195      h4: [],
3196      h5: [],
3197      h6: [],
3198      i: [],
3199      img: ["src", "srcset", "alt", "title", "width", "height"],
3200      li: [],
3201      ol: [],
3202      p: [],
3203      pre: [],
3204      s: [],
3205      small: [],
3206      span: [],
3207      sub: [],
3208      sup: [],
3209      strong: [],
3210      u: [],
3211      ul: [],
3212    },
3213    Kn = new Set([
3214      "background",
3215      "cite",
3216      "href",
3217      "itemtype",
3218      "longdesc",
3219      "poster",
3220      "src",
3221      "xlink:href",
3222    ]),
3223    Qn = /^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,
3224    Xn = (t, e) => {
3225      const i = t.nodeName.toLowerCase();
3226      return e.includes(i)
3227        ? !Kn.has(i) || Boolean(Qn.test(t.nodeValue))
3228        : e.filter((t) => t instanceof RegExp).some((t) => t.test(i));
3229    },
3230    Yn = {
3231      allowList: Vn,
3232      content: {},
3233      extraClass: "",
3234      html: !1,
3235      sanitize: !0,
3236      sanitizeFn: null,
3237      template: "<div></div>",
3238    },
3239    Un = {
3240      allowList: "object",
3241      content: "object",
3242      extraClass: "(string|function)",
3243      html: "boolean",
3244      sanitize: "boolean",
3245      sanitizeFn: "(null|function)",
3246      template: "string",
3247    },
3248    Gn = {
3249      entry: "(string|element|function|null)",
3250      selector: "(string|element)",
3251    };
3252  class Jn extends H {
3253    constructor(t) {
3254      (super(), (this._config = this._getConfig(t)));
3255    }
3256    static get Default() {
3257      return Yn;
3258    }
3259    static get DefaultType() {
3260      return Un;
3261    }
3262    static get NAME() {
3263      return "TemplateFactory";
3264    }
3265    getContent() {
3266      return Object.values(this._config.content)
3267        .map((t) => this._resolvePossibleFunction(t))
3268        .filter(Boolean);
3269    }
3270    hasContent() {
3271      return this.getContent().length > 0;
3272    }
3273    changeContent(t) {
3274      return (
3275        this._checkContent(t),
3276        (this._config.content = { ...this._config.content, ...t }),
3277        this
3278      );
3279    }
3280    toHtml() {
3281      const t = document.createElement("div");
3282      t.innerHTML = this._maybeSanitize(this._config.template);
3283      for (const [e, i] of Object.entries(this._config.content))
3284        this._setContent(t, i, e);
3285      const e = t.children[0],
3286        i = this._resolvePossibleFunction(this._config.extraClass);
3287      return (i && e.classList.add(...i.split(" ")), e);
3288    }
3289    _typeCheckConfig(t) {
3290      (super._typeCheckConfig(t), this._checkContent(t.content));
3291    }
3292    _checkContent(t) {
3293      for (const [e, i] of Object.entries(t))
3294        super._typeCheckConfig({ selector: e, entry: i }, Gn);
3295    }
3296    _setContent(t, e, i) {
3297      const n = z.findOne(i, t);
3298      n &&
3299        ((e = this._resolvePossibleFunction(e))
3300          ? o(e)
3301            ? this._putElementInTemplate(r(e), n)
3302            : this._config.html
3303              ? (n.innerHTML = this._maybeSanitize(e))
3304              : (n.textContent = e)
3305          : n.remove());
3306    }
3307    _maybeSanitize(t) {
3308      return this._config.sanitize
3309        ? (function (t, e, i) {
3310            if (!t.length) return t;
3311            if (i && "function" == typeof i) return i(t);
3312            const n = new window.DOMParser().parseFromString(t, "text/html"),
3313              s = [].concat(...n.body.querySelectorAll("*"));
3314            for (const t of s) {
3315              const i = t.nodeName.toLowerCase();
3316              if (!Object.keys(e).includes(i)) {
3317                t.remove();
3318                continue;
3319              }
3320              const n = [].concat(...t.attributes),
3321                s = [].concat(e["*"] || [], e[i] || []);
3322              for (const e of n) Xn(e, s) || t.removeAttribute(e.nodeName);
3323            }
3324            return n.body.innerHTML;
3325          })(t, this._config.allowList, this._config.sanitizeFn)
3326        : t;
3327    }
3328    _resolvePossibleFunction(t) {
3329      return g(t, [this]);
3330    }
3331    _putElementInTemplate(t, e) {
3332      if (this._config.html) return ((e.innerHTML = ""), void e.append(t));
3333      e.textContent = t.textContent;
3334    }
3335  }
3336  const Zn = new Set(["sanitize", "allowList", "sanitizeFn"]),
3337    ts = "fade",
3338    es = "show",
3339    is = ".modal",
3340    ns = "hide.bs.modal",
3341    ss = "hover",
3342    os = "focus",
3343    rs = {
3344      AUTO: "auto",
3345      TOP: "top",
3346      RIGHT: p() ? "left" : "right",
3347      BOTTOM: "bottom",
3348      LEFT: p() ? "right" : "left",
3349    },
3350    as = {
3351      allowList: Vn,
3352      animation: !0,
3353      boundary: "clippingParents",
3354      container: !1,
3355      customClass: "",
3356      delay: 0,
3357      fallbackPlacements: ["top", "right", "bottom", "left"],
3358      html: !1,
3359      offset: [0, 6],
3360      placement: "top",
3361      popperConfig: null,
3362      sanitize: !0,
3363      sanitizeFn: null,
3364      selector: !1,
3365      template:
3366        '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',
3367      title: "",
3368      trigger: "hover focus",
3369    },
3370    ls = {
3371      allowList: "object",
3372      animation: "boolean",
3373      boundary: "(string|element)",
3374      container: "(string|element|boolean)",
3375      customClass: "(string|function)",
3376      delay: "(number|object)",
3377      fallbackPlacements: "array",
3378      html: "boolean",
3379      offset: "(array|string|function)",
3380      placement: "(string|function)",
3381      popperConfig: "(null|object|function)",
3382      sanitize: "boolean",
3383      sanitizeFn: "(null|function)",
3384      selector: "(string|boolean)",
3385      template: "string",
3386      title: "(string|element|function)",
3387      trigger: "string",
3388    };
3389  class cs extends W {
3390    constructor(t, e) {
3391      if (void 0 === vi)
3392        throw new TypeError(
3393          "Bootstrap's tooltips require Popper (https://popper.js.org)",
3394        );
3395      (super(t, e),
3396        (this._isEnabled = !0),
3397        (this._timeout = 0),
3398        (this._isHovered = null),
3399        (this._activeTrigger = {}),
3400        (this._popper = null),
3401        (this._templateFactory = null),
3402        (this._newContent = null),
3403        (this.tip = null),
3404        this._setListeners(),
3405        this._config.selector || this._fixTitle());
3406    }
3407    static get Default() {
3408      return as;
3409    }
3410    static get DefaultType() {
3411      return ls;
3412    }
3413    static get NAME() {
3414      return "tooltip";
3415    }
3416    enable() {
3417      this._isEnabled = !0;
3418    }
3419    disable() {
3420      this._isEnabled = !1;
3421    }
3422    toggleEnabled() {
3423      this._isEnabled = !this._isEnabled;
3424    }
3425    toggle() {
3426      this._isEnabled &&
3427        ((this._activeTrigger.click = !this._activeTrigger.click),
3428        this._isShown() ? this._leave() : this._enter());
3429    }
3430    dispose() {
3431      (clearTimeout(this._timeout),
3432        N.off(this._element.closest(is), ns, this._hideModalHandler),
3433        this._element.getAttribute("data-bs-original-title") &&
3434          this._element.setAttribute(
3435            "title",
3436            this._element.getAttribute("data-bs-original-title"),
3437          ),
3438        this._disposePopper(),
3439        super.dispose());
3440    }
3441    show() {
3442      if ("none" === this._element.style.display)
3443        throw new Error("Please use show on visible elements");
3444      if (!this._isWithContent() || !this._isEnabled) return;
3445      const t = N.trigger(this._element, this.constructor.eventName("show")),
3446        e = (
3447          c(this._element) || this._element.ownerDocument.documentElement
3448        ).contains(this._element);
3449      if (t.defaultPrevented || !e) return;
3450      this._disposePopper();
3451      const i = this._getTipElement();
3452      this._element.setAttribute("aria-describedby", i.getAttribute("id"));
3453      const { container: n } = this._config;
3454      if (
3455        (this._element.ownerDocument.documentElement.contains(this.tip) ||
3456          (n.append(i),
3457          N.trigger(this._element, this.constructor.eventName("inserted"))),
3458        (this._popper = this._createPopper(i)),
3459        i.classList.add(es),
3460        "ontouchstart" in document.documentElement)
3461      )
3462        for (const t of [].concat(...document.body.children))
3463          N.on(t, "mouseover", h);
3464      this._queueCallback(
3465        () => {
3466          (N.trigger(this._element, this.constructor.eventName("shown")),
3467            !1 === this._isHovered && this._leave(),
3468            (this._isHovered = !1));
3469        },
3470        this.tip,
3471        this._isAnimated(),
3472      );
3473    }
3474    hide() {
3475      if (
3476        this._isShown() &&
3477        !N.trigger(this._element, this.constructor.eventName("hide"))
3478          .defaultPrevented
3479      ) {
3480        if (
3481          (this._getTipElement().classList.remove(es),
3482          "ontouchstart" in document.documentElement)
3483        )
3484          for (const t of [].concat(...document.body.children))
3485            N.off(t, "mouseover", h);
3486        ((this._activeTrigger.click = !1),
3487          (this._activeTrigger[os] = !1),
3488          (this._activeTrigger[ss] = !1),
3489          (this._isHovered = null),
3490          this._queueCallback(
3491            () => {
3492              this._isWithActiveTrigger() ||
3493                (this._isHovered || this._disposePopper(),
3494                this._element.removeAttribute("aria-describedby"),
3495                N.trigger(this._element, this.constructor.eventName("hidden")));
3496            },
3497            this.tip,
3498            this._isAnimated(),
3499          ));
3500      }
3501    }
3502    update() {
3503      this._popper && this._popper.update();
3504    }
3505    _isWithContent() {
3506      return Boolean(this._getTitle());
3507    }
3508    _getTipElement() {
3509      return (
3510        this.tip ||
3511          (this.tip = this._createTipElement(
3512            this._newContent || this._getContentForTemplate(),
3513          )),
3514        this.tip
3515      );
3516    }
3517    _createTipElement(t) {
3518      const e = this._getTemplateFactory(t).toHtml();
3519      if (!e) return null;
3520      (e.classList.remove(ts, es),
3521        e.classList.add(`bs-${this.constructor.NAME}-auto`));
3522      const i = ((t) => {
3523        do {
3524          t += Math.floor(1e6 * Math.random());
3525        } while (document.getElementById(t));
3526        return t;
3527      })(this.constructor.NAME).toString();
3528      return (
3529        e.setAttribute("id", i),
3530        this._isAnimated() && e.classList.add(ts),
3531        e
3532      );
3533    }
3534    setContent(t) {
3535      ((this._newContent = t),
3536        this._isShown() && (this._disposePopper(), this.show()));
3537    }
3538    _getTemplateFactory(t) {
3539      return (
3540        this._templateFactory
3541          ? this._templateFactory.changeContent(t)
3542          : (this._templateFactory = new Jn({
3543              ...this._config,
3544              content: t,
3545              extraClass: this._resolvePossibleFunction(
3546                this._config.customClass,
3547              ),
3548            })),
3549        this._templateFactory
3550      );
3551    }
3552    _getContentForTemplate() {
3553      return { ".tooltip-inner": this._getTitle() };
3554    }
3555    _getTitle() {
3556      return (
3557        this._resolvePossibleFunction(this._config.title) ||
3558        this._element.getAttribute("data-bs-original-title")
3559      );
3560    }
3561    _initializeOnDelegatedTarget(t) {
3562      return this.constructor.getOrCreateInstance(
3563        t.delegateTarget,
3564        this._getDelegateConfig(),
3565      );
3566    }
3567    _isAnimated() {
3568      return (
3569        this._config.animation || (this.tip && this.tip.classList.contains(ts))
3570      );
3571    }
3572    _isShown() {
3573      return this.tip && this.tip.classList.contains(es);
3574    }
3575    _createPopper(t) {
3576      const e = g(this._config.placement, [this, t, this._element]),
3577        i = rs[e.toUpperCase()];
3578      return bi(this._element, t, this._getPopperConfig(i));
3579    }
3580    _getOffset() {
3581      const { offset: t } = this._config;
3582      return "string" == typeof t
3583        ? t.split(",").map((t) => Number.parseInt(t, 10))
3584        : "function" == typeof t
3585          ? (e) => t(e, this._element)
3586          : t;
3587    }
3588    _resolvePossibleFunction(t) {
3589      return g(t, [this._element]);
3590    }
3591    _getPopperConfig(t) {
3592      const e = {
3593        placement: t,
3594        modifiers: [
3595          {
3596            name: "flip",
3597            options: { fallbackPlacements: this._config.fallbackPlacements },
3598          },
3599          { name: "offset", options: { offset: this._getOffset() } },
3600          {
3601            name: "preventOverflow",
3602            options: { boundary: this._config.boundary },
3603          },
3604          {
3605            name: "arrow",
3606            options: { element: `.${this.constructor.NAME}-arrow` },
3607          },
3608          {
3609            name: "preSetPlacement",
3610            enabled: !0,
3611            phase: "beforeMain",
3612            fn: (t) => {
3613              this._getTipElement().setAttribute(
3614                "data-popper-placement",
3615                t.state.placement,
3616              );
3617            },
3618          },
3619        ],
3620      };
3621      return { ...e, ...g(this._config.popperConfig, [e]) };
3622    }
3623    _setListeners() {
3624      const t = this._config.trigger.split(" ");
3625      for (const e of t)
3626        if ("click" === e)
3627          N.on(
3628            this._element,
3629            this.constructor.eventName("click"),
3630            this._config.selector,
3631            (t) => {
3632              this._initializeOnDelegatedTarget(t).toggle();
3633            },
3634          );
3635        else if ("manual" !== e) {
3636          const t =
3637              e === ss
3638                ? this.constructor.eventName("mouseenter")
3639                : this.constructor.eventName("focusin"),
3640            i =
3641              e === ss
3642                ? this.constructor.eventName("mouseleave")
3643                : this.constructor.eventName("focusout");
3644          (N.on(this._element, t, this._config.selector, (t) => {
3645            const e = this._initializeOnDelegatedTarget(t);
3646            ((e._activeTrigger["focusin" === t.type ? os : ss] = !0),
3647              e._enter());
3648          }),
3649            N.on(this._element, i, this._config.selector, (t) => {
3650              const e = this._initializeOnDelegatedTarget(t);
3651              ((e._activeTrigger["focusout" === t.type ? os : ss] =
3652                e._element.contains(t.relatedTarget)),
3653                e._leave());
3654            }));
3655        }
3656      ((this._hideModalHandler = () => {
3657        this._element && this.hide();
3658      }),
3659        N.on(this._element.closest(is), ns, this._hideModalHandler));
3660    }
3661    _fixTitle() {
3662      const t = this._element.getAttribute("title");
3663      t &&
3664        (this._element.getAttribute("aria-label") ||
3665          this._element.textContent.trim() ||
3666          this._element.setAttribute("aria-label", t),
3667        this._element.setAttribute("data-bs-original-title", t),
3668        this._element.removeAttribute("title"));
3669    }
3670    _enter() {
3671      this._isShown() || this._isHovered
3672        ? (this._isHovered = !0)
3673        : ((this._isHovered = !0),
3674          this._setTimeout(() => {
3675            this._isHovered && this.show();
3676          }, this._config.delay.show));
3677    }
3678    _leave() {
3679      this._isWithActiveTrigger() ||
3680        ((this._isHovered = !1),
3681        this._setTimeout(() => {
3682          this._isHovered || this.hide();
3683        }, this._config.delay.hide));
3684    }
3685    _setTimeout(t, e) {
3686      (clearTimeout(this._timeout), (this._timeout = setTimeout(t, e)));
3687    }
3688    _isWithActiveTrigger() {
3689      return Object.values(this._activeTrigger).includes(!0);
3690    }
3691    _getConfig(t) {
3692      const e = F.getDataAttributes(this._element);
3693      for (const t of Object.keys(e)) Zn.has(t) && delete e[t];
3694      return (
3695        (t = { ...e, ...("object" == typeof t && t ? t : {}) }),
3696        (t = this._mergeConfigObj(t)),
3697        (t = this._configAfterMerge(t)),
3698        this._typeCheckConfig(t),
3699        t
3700      );
3701    }
3702    _configAfterMerge(t) {
3703      return (
3704        (t.container = !1 === t.container ? document.body : r(t.container)),
3705        "number" == typeof t.delay &&
3706          (t.delay = { show: t.delay, hide: t.delay }),
3707        "number" == typeof t.title && (t.title = t.title.toString()),
3708        "number" == typeof t.content && (t.content = t.content.toString()),
3709        t
3710      );
3711    }
3712    _getDelegateConfig() {
3713      const t = {};
3714      for (const [e, i] of Object.entries(this._config))
3715        this.constructor.Default[e] !== i && (t[e] = i);
3716      return ((t.selector = !1), (t.trigger = "manual"), t);
3717    }
3718    _disposePopper() {
3719      (this._popper && (this._popper.destroy(), (this._popper = null)),
3720        this.tip && (this.tip.remove(), (this.tip = null)));
3721    }
3722    static jQueryInterface(t) {
3723      return this.each(function () {
3724        const e = cs.getOrCreateInstance(this, t);
3725        if ("string" == typeof t) {
3726          if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`);
3727          e[t]();
3728        }
3729      });
3730    }
3731  }
3732  m(cs);
3733  const hs = {
3734      ...cs.Default,
3735      content: "",
3736      offset: [0, 8],
3737      placement: "right",
3738      template:
3739        '<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>',
3740      trigger: "click",
3741    },
3742    ds = { ...cs.DefaultType, content: "(null|string|element|function)" };
3743  class us extends cs {
3744    static get Default() {
3745      return hs;
3746    }
3747    static get DefaultType() {
3748      return ds;
3749    }
3750    static get NAME() {
3751      return "popover";
3752    }
3753    _isWithContent() {
3754      return this._getTitle() || this._getContent();
3755    }
3756    _getContentForTemplate() {
3757      return {
3758        ".popover-header": this._getTitle(),
3759        ".popover-body": this._getContent(),
3760      };
3761    }
3762    _getContent() {
3763      return this._resolvePossibleFunction(this._config.content);
3764    }
3765    static jQueryInterface(t) {
3766      return this.each(function () {
3767        const e = us.getOrCreateInstance(this, t);
3768        if ("string" == typeof t) {
3769          if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`);
3770          e[t]();
3771        }
3772      });
3773    }
3774  }
3775  m(us);
3776  const fs = ".bs.scrollspy",
3777    ps = `activate${fs}`,
3778    ms = `click${fs}`,
3779    gs = `load${fs}.data-api`,
3780    _s = "active",
3781    bs = "[href]",
3782    vs = ".nav-link",
3783    ys = `${vs}, .nav-item > ${vs}, .list-group-item`,
3784    ws = {
3785      offset: null,
3786      rootMargin: "0px 0px -25%",
3787      smoothScroll: !1,
3788      target: null,
3789      threshold: [0.1, 0.5, 1],
3790    },
3791    As = {
3792      offset: "(number|null)",
3793      rootMargin: "string",
3794      smoothScroll: "boolean",
3795      target: "element",
3796      threshold: "array",
3797    };
3798  class Es extends W {
3799    constructor(t, e) {
3800      (super(t, e),
3801        (this._targetLinks = new Map()),
3802        (this._observableSections = new Map()),
3803        (this._rootElement =
3804          "visible" === getComputedStyle(this._element).overflowY
3805            ? null
3806            : this._element),
3807        (this._activeTarget = null),
3808        (this._observer = null),
3809        (this._previousScrollData = { visibleEntryTop: 0, parentScrollTop: 0 }),
3810        this.refresh());
3811    }
3812    static get Default() {
3813      return ws;
3814    }
3815    static get DefaultType() {
3816      return As;
3817    }
3818    static get NAME() {
3819      return "scrollspy";
3820    }
3821    refresh() {
3822      (this._initializeTargetsAndObservables(),
3823        this._maybeEnableSmoothScroll(),
3824        this._observer
3825          ? this._observer.disconnect()
3826          : (this._observer = this._getNewObserver()));
3827      for (const t of this._observableSections.values())
3828        this._observer.observe(t);
3829    }
3830    dispose() {
3831      (this._observer.disconnect(), super.dispose());
3832    }
3833    _configAfterMerge(t) {
3834      return (
3835        (t.target = r(t.target) || document.body),
3836        (t.rootMargin = t.offset ? `${t.offset}px 0px -30%` : t.rootMargin),
3837        "string" == typeof t.threshold &&
3838          (t.threshold = t.threshold
3839            .split(",")
3840            .map((t) => Number.parseFloat(t))),
3841        t
3842      );
3843    }
3844    _maybeEnableSmoothScroll() {
3845      this._config.smoothScroll &&
3846        (N.off(this._config.target, ms),
3847        N.on(this._config.target, ms, bs, (t) => {
3848          const e = this._observableSections.get(t.target.hash);
3849          if (e) {
3850            t.preventDefault();
3851            const i = this._rootElement || window,
3852              n = e.offsetTop - this._element.offsetTop;
3853            if (i.scrollTo)
3854              return void i.scrollTo({ top: n, behavior: "smooth" });
3855            i.scrollTop = n;
3856          }
3857        }));
3858    }
3859    _getNewObserver() {
3860      const t = {
3861        root: this._rootElement,
3862        threshold: this._config.threshold,
3863        rootMargin: this._config.rootMargin,
3864      };
3865      return new IntersectionObserver((t) => this._observerCallback(t), t);
3866    }
3867    _observerCallback(t) {
3868      const e = (t) => this._targetLinks.get(`#${t.target.id}`),
3869        i = (t) => {
3870          ((this._previousScrollData.visibleEntryTop = t.target.offsetTop),
3871            this._process(e(t)));
3872        },
3873        n = (this._rootElement || document.documentElement).scrollTop,
3874        s = n >= this._previousScrollData.parentScrollTop;
3875      this._previousScrollData.parentScrollTop = n;
3876      for (const o of t) {
3877        if (!o.isIntersecting) {
3878          ((this._activeTarget = null), this._clearActiveClass(e(o)));
3879          continue;
3880        }
3881        const t =
3882          o.target.offsetTop >= this._previousScrollData.visibleEntryTop;
3883        if (s && t) {
3884          if ((i(o), !n)) return;
3885        } else s || t || i(o);
3886      }
3887    }
3888    _initializeTargetsAndObservables() {
3889      ((this._targetLinks = new Map()), (this._observableSections = new Map()));
3890      const t = z.find(bs, this._config.target);
3891      for (const e of t) {
3892        if (!e.hash || l(e)) continue;
3893        const t = z.findOne(decodeURI(e.hash), this._element);
3894        a(t) &&
3895          (this._targetLinks.set(decodeURI(e.hash), e),
3896          this._observableSections.set(e.hash, t));
3897      }
3898    }
3899    _process(t) {
3900      this._activeTarget !== t &&
3901        (this._clearActiveClass(this._config.target),
3902        (this._activeTarget = t),
3903        t.classList.add(_s),
3904        this._activateParents(t),
3905        N.trigger(this._element, ps, { relatedTarget: t }));
3906    }
3907    _activateParents(t) {
3908      if (t.classList.contains("dropdown-item"))
3909        z.findOne(".dropdown-toggle", t.closest(".dropdown")).classList.add(_s);
3910      else
3911        for (const e of z.parents(t, ".nav, .list-group"))
3912          for (const t of z.prev(e, ys)) t.classList.add(_s);
3913    }
3914    _clearActiveClass(t) {
3915      t.classList.remove(_s);
3916      const e = z.find(`${bs}.${_s}`, t);
3917      for (const t of e) t.classList.remove(_s);
3918    }
3919    static jQueryInterface(t) {
3920      return this.each(function () {
3921        const e = Es.getOrCreateInstance(this, t);
3922        if ("string" == typeof t) {
3923          if (void 0 === e[t] || t.startsWith("_") || "constructor" === t)
3924            throw new TypeError(`No method named "${t}"`);
3925          e[t]();
3926        }
3927      });
3928    }
3929  }
3930  (N.on(window, gs, () => {
3931    for (const t of z.find('[data-bs-spy="scroll"]')) Es.getOrCreateInstance(t);
3932  }),
3933    m(Es));
3934  const Ts = ".bs.tab",
3935    Cs = `hide${Ts}`,
3936    Os = `hidden${Ts}`,
3937    xs = `show${Ts}`,
3938    ks = `shown${Ts}`,
3939    Ls = `click${Ts}`,
3940    Ss = `keydown${Ts}`,
3941    Ds = `load${Ts}`,
3942    $s = "ArrowLeft",
3943    Is = "ArrowRight",
3944    Ns = "ArrowUp",
3945    Ps = "ArrowDown",
3946    Ms = "Home",
3947    js = "End",
3948    Fs = "active",
3949    Hs = "fade",
3950    Ws = "show",
3951    Bs = ".dropdown-toggle",
3952    zs = `:not(${Bs})`,
3953    Rs =
3954      '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',
3955    qs = `.nav-link${zs}, .list-group-item${zs}, [role="tab"]${zs}, ${Rs}`,
3956    Vs = `.${Fs}[data-bs-toggle="tab"], .${Fs}[data-bs-toggle="pill"], .${Fs}[data-bs-toggle="list"]`;
3957  class Ks extends W {
3958    constructor(t) {
3959      (super(t),
3960        (this._parent = this._element.closest(
3961          '.list-group, .nav, [role="tablist"]',
3962        )),
3963        this._parent &&
3964          (this._setInitialAttributes(this._parent, this._getChildren()),
3965          N.on(this._element, Ss, (t) => this._keydown(t))));
3966    }
3967    static get NAME() {
3968      return "tab";
3969    }
3970    show() {
3971      const t = this._element;
3972      if (this._elemIsActive(t)) return;
3973      const e = this._getActiveElem(),
3974        i = e ? N.trigger(e, Cs, { relatedTarget: t }) : null;
3975      N.trigger(t, xs, { relatedTarget: e }).defaultPrevented ||
3976        (i && i.defaultPrevented) ||
3977        (this._deactivate(e, t), this._activate(t, e));
3978    }
3979    _activate(t, e) {
3980      t &&
3981        (t.classList.add(Fs),
3982        this._activate(z.getElementFromSelector(t)),
3983        this._queueCallback(
3984          () => {
3985            "tab" === t.getAttribute("role")
3986              ? (t.removeAttribute("tabindex"),
3987                t.setAttribute("aria-selected", !0),
3988                this._toggleDropDown(t, !0),
3989                N.trigger(t, ks, { relatedTarget: e }))
3990              : t.classList.add(Ws);
3991          },
3992          t,
3993          t.classList.contains(Hs),
3994        ));
3995    }
3996    _deactivate(t, e) {
3997      t &&
3998        (t.classList.remove(Fs),
3999        t.blur(),
4000        this._deactivate(z.getElementFromSelector(t)),
4001        this._queueCallback(
4002          () => {
4003            "tab" === t.getAttribute("role")
4004              ? (t.setAttribute("aria-selected", !1),
4005                t.setAttribute("tabindex", "-1"),
4006                this._toggleDropDown(t, !1),
4007                N.trigger(t, Os, { relatedTarget: e }))
4008              : t.classList.remove(Ws);
4009          },
4010          t,
4011          t.classList.contains(Hs),
4012        ));
4013    }
4014    _keydown(t) {
4015      if (![$s, Is, Ns, Ps, Ms, js].includes(t.key)) return;
4016      (t.stopPropagation(), t.preventDefault());
4017      const e = this._getChildren().filter((t) => !l(t));
4018      let i;
4019      if ([Ms, js].includes(t.key)) i = e[t.key === Ms ? 0 : e.length - 1];
4020      else {
4021        const n = [Is, Ps].includes(t.key);
4022        i = b(e, t.target, n, !0);
4023      }
4024      i && (i.focus({ preventScroll: !0 }), Ks.getOrCreateInstance(i).show());
4025    }
4026    _getChildren() {
4027      return z.find(qs, this._parent);
4028    }
4029    _getActiveElem() {
4030      return this._getChildren().find((t) => this._elemIsActive(t)) || null;
4031    }
4032    _setInitialAttributes(t, e) {
4033      this._setAttributeIfNotExists(t, "role", "tablist");
4034      for (const t of e) this._setInitialAttributesOnChild(t);
4035    }
4036    _setInitialAttributesOnChild(t) {
4037      t = this._getInnerElement(t);
4038      const e = this._elemIsActive(t),
4039        i = this._getOuterElement(t);
4040      (t.setAttribute("aria-selected", e),
4041        i !== t && this._setAttributeIfNotExists(i, "role", "presentation"),
4042        e || t.setAttribute("tabindex", "-1"),
4043        this._setAttributeIfNotExists(t, "role", "tab"),
4044        this._setInitialAttributesOnTargetPanel(t));
4045    }
4046    _setInitialAttributesOnTargetPanel(t) {
4047      const e = z.getElementFromSelector(t);
4048      e &&
4049        (this._setAttributeIfNotExists(e, "role", "tabpanel"),
4050        t.id && this._setAttributeIfNotExists(e, "aria-labelledby", `${t.id}`));
4051    }
4052    _toggleDropDown(t, e) {
4053      const i = this._getOuterElement(t);
4054      if (!i.classList.contains("dropdown")) return;
4055      const n = (t, n) => {
4056        const s = z.findOne(t, i);
4057        s && s.classList.toggle(n, e);
4058      };
4059      (n(Bs, Fs), n(".dropdown-menu", Ws), i.setAttribute("aria-expanded", e));
4060    }
4061    _setAttributeIfNotExists(t, e, i) {
4062      t.hasAttribute(e) || t.setAttribute(e, i);
4063    }
4064    _elemIsActive(t) {
4065      return t.classList.contains(Fs);
4066    }
4067    _getInnerElement(t) {
4068      return t.matches(qs) ? t : z.findOne(qs, t);
4069    }
4070    _getOuterElement(t) {
4071      return t.closest(".nav-item, .list-group-item") || t;
4072    }
4073    static jQueryInterface(t) {
4074      return this.each(function () {
4075        const e = Ks.getOrCreateInstance(this);
4076        if ("string" == typeof t) {
4077          if (void 0 === e[t] || t.startsWith("_") || "constructor" === t)
4078            throw new TypeError(`No method named "${t}"`);
4079          e[t]();
4080        }
4081      });
4082    }
4083  }
4084  (N.on(document, Ls, Rs, function (t) {
4085    (["A", "AREA"].includes(this.tagName) && t.preventDefault(),
4086      l(this) || Ks.getOrCreateInstance(this).show());
4087  }),
4088    N.on(window, Ds, () => {
4089      for (const t of z.find(Vs)) Ks.getOrCreateInstance(t);
4090    }),
4091    m(Ks));
4092  const Qs = ".bs.toast",
4093    Xs = `mouseover${Qs}`,
4094    Ys = `mouseout${Qs}`,
4095    Us = `focusin${Qs}`,
4096    Gs = `focusout${Qs}`,
4097    Js = `hide${Qs}`,
4098    Zs = `hidden${Qs}`,
4099    to = `show${Qs}`,
4100    eo = `shown${Qs}`,
4101    io = "hide",
4102    no = "show",
4103    so = "showing",
4104    oo = { animation: "boolean", autohide: "boolean", delay: "number" },
4105    ro = { animation: !0, autohide: !0, delay: 5e3 };
4106  class ao extends W {
4107    constructor(t, e) {
4108      (super(t, e),
4109        (this._timeout = null),
4110        (this._hasMouseInteraction = !1),
4111        (this._hasKeyboardInteraction = !1),
4112        this._setListeners());
4113    }
4114    static get Default() {
4115      return ro;
4116    }
4117    static get DefaultType() {
4118      return oo;
4119    }
4120    static get NAME() {
4121      return "toast";
4122    }
4123    show() {
4124      N.trigger(this._element, to).defaultPrevented ||
4125        (this._clearTimeout(),
4126        this._config.animation && this._element.classList.add("fade"),
4127        this._element.classList.remove(io),
4128        d(this._element),
4129        this._element.classList.add(no, so),
4130        this._queueCallback(
4131          () => {
4132            (this._element.classList.remove(so),
4133              N.trigger(this._element, eo),
4134              this._maybeScheduleHide());
4135          },
4136          this._element,
4137          this._config.animation,
4138        ));
4139    }
4140    hide() {
4141      this.isShown() &&
4142        (N.trigger(this._element, Js).defaultPrevented ||
4143          (this._element.classList.add(so),
4144          this._queueCallback(
4145            () => {
4146              (this._element.classList.add(io),
4147                this._element.classList.remove(so, no),
4148                N.trigger(this._element, Zs));
4149            },
4150            this._element,
4151            this._config.animation,
4152          )));
4153    }
4154    dispose() {
4155      (this._clearTimeout(),
4156        this.isShown() && this._element.classList.remove(no),
4157        super.dispose());
4158    }
4159    isShown() {
4160      return this._element.classList.contains(no);
4161    }
4162    _maybeScheduleHide() {
4163      this._config.autohide &&
4164        (this._hasMouseInteraction ||
4165          this._hasKeyboardInteraction ||
4166          (this._timeout = setTimeout(() => {
4167            this.hide();
4168          }, this._config.delay)));
4169    }
4170    _onInteraction(t, e) {
4171      switch (t.type) {
4172        case "mouseover":
4173        case "mouseout":
4174          this._hasMouseInteraction = e;
4175          break;
4176        case "focusin":
4177        case "focusout":
4178          this._hasKeyboardInteraction = e;
4179      }
4180      if (e) return void this._clearTimeout();
4181      const i = t.relatedTarget;
4182      this._element === i ||
4183        this._element.contains(i) ||
4184        this._maybeScheduleHide();
4185    }
4186    _setListeners() {
4187      (N.on(this._element, Xs, (t) => this._onInteraction(t, !0)),
4188        N.on(this._element, Ys, (t) => this._onInteraction(t, !1)),
4189        N.on(this._element, Us, (t) => this._onInteraction(t, !0)),
4190        N.on(this._element, Gs, (t) => this._onInteraction(t, !1)));
4191    }
4192    _clearTimeout() {
4193      (clearTimeout(this._timeout), (this._timeout = null));
4194    }
4195    static jQueryInterface(t) {
4196      return this.each(function () {
4197        const e = ao.getOrCreateInstance(this, t);
4198        if ("string" == typeof t) {
4199          if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`);
4200          e[t](this);
4201        }
4202      });
4203    }
4204  }
4205  return (
4206    R(ao),
4207    m(ao),
4208    {
4209      Alert: Q,
4210      Button: Y,
4211      Carousel: xt,
4212      Collapse: Bt,
4213      Dropdown: qi,
4214      Modal: On,
4215      Offcanvas: qn,
4216      Popover: us,
4217      ScrollSpy: Es,
4218      Tab: Ks,
4219      Toast: ao,
4220      Tooltip: cs,
4221    }
4222  );
4223});
4224//# sourceMappingURL=bootstrap.bundle.min.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.