PageSourceSearch

https://wolfscampingresort.com/wp-content/themes/enigma/js/bootstrap.js?ver=1

js wolfscampingresort.com collected 2026-09-26 01:27:32 UTC 95,361 bytes, 1,837 lines download raw bytes

1/*!
2 * Bootstrap v4.3.1 (https://getbootstrap.com/)
3 * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5 */
6! function(t, e) {
7    "object" == typeof exports && "undefined" != typeof module ? e(exports, require("jquery"), require("popper.js")) : "function" == typeof define && define.amd ? define(["exports", "jquery", "popper.js"], e) : e((t = t || self).bootstrap = {}, t.jQuery, t.Popper)
8}(this, function(t, g, u) {
9    "use strict";
10
11    function i(t, e) {
12        for (var n = 0; n < e.length; n++) {
13            var i = e[n];
14            i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(t, i.key, i)
15        }
16    }
17
18    function s(t, e, n) {
19        return e && i(t.prototype, e), n && i(t, n), t
20    }
21
22    function l(o) {
23        for (var t = 1; t < arguments.length; t++) {
24            var r = null != arguments[t] ? arguments[t] : {},
25                e = Object.keys(r);
26            "function" == typeof Object.getOwnPropertySymbols && (e = e.concat(Object.getOwnPropertySymbols(r).filter(function(t) {
27                return Object.getOwnPropertyDescriptor(r, t).enumerable
28            }))), e.forEach(function(t) {
29                var e, n, i;
30                e = o, i = r[n = t], n in e ? Object.defineProperty(e, n, {
31                    value: i,
32                    enumerable: !0,
33                    configurable: !0,
34                    writable: !0
35                }) : e[n] = i
36            })
37        }
38        return o
39    }
40    g = g && g.hasOwnProperty("default") ? g.default : g, u = u && u.hasOwnProperty("default") ? u.default : u;
41    var e = "transitionend";
42
43    function n(t) {
44        var e = this,
45            n = !1;
46        return g(this).one(_.TRANSITION_END, function() {
47            n = !0
48        }), setTimeout(function() {
49            n || _.triggerTransitionEnd(e)
50        }, t), this
51    }
52    var _ = {
53        TRANSITION_END: "bsTransitionEnd",
54        getUID: function(t) {
55            for (; t += ~~(1e6 * Math.random()), document.getElementById(t););
56            return t
57        },
58        getSelectorFromElement: function(t) {
59            var e = t.getAttribute("data-target");
60            if (!e || "#" === e) {
61                var n = t.getAttribute("href");
62                e = n && "#" !== n ? n.trim() : ""
63            }
64            try {
65                return document.querySelector(e) ? e : null
66            } catch (t) {
67                return null
68            }
69        },
70        getTransitionDurationFromElement: function(t) {
71            if (!t) return 0;
72            var e = g(t).css("transition-duration"),
73                n = g(t).css("transition-delay"),
74                i = parseFloat(e),
75                o = parseFloat(n);
76            return i || o ? (e = e.split(",")[0], n = n.split(",")[0], 1e3 * (parseFloat(e) + parseFloat(n))) : 0
77        },
78        reflow: function(t) {
79            return t.offsetHeight
80        },
81        triggerTransitionEnd: function(t) {
82            g(t).trigger(e)
83        },
84        supportsTransitionEnd: function() {
85            return Boolean(e)
86        },
87        isElement: function(t) {
88            return (t[0] || t).nodeType
89        },
90        typeCheckConfig: function(t, e, n) {
91            for (var i in n)
92                if (Object.prototype.hasOwnProperty.call(n, i)) {
93                    var o = n[i],
94                        r = e[i],
95                        s = r && _.isElement(r) ? "element" : (a = r, {}.toString.call(a).match(/\s([a-z]+)/i)[1].toLowerCase());
96                    if (!new RegExp(o).test(s)) throw new Error(t.toUpperCase() + ': Option "' + i + '" provided type "' + s + '" but expected type "' + o + '".')
97                }
98            var a
99        },
100        findShadowRoot: function(t) {
101            if (!document.documentElement.attachShadow) return null;
102            if ("function" != typeof t.getRootNode) return t instanceof ShadowRoot ? t : t.parentNode ? _.findShadowRoot(t.parentNode) : null;
103            var e = t.getRootNode();
104            return e instanceof ShadowRoot ? e : null
105        }
106    };
107    g.fn.emulateTransitionEnd = n, g.event.special[_.TRANSITION_END] = {
108        bindType: e,
109        delegateType: e,
110        handle: function(t) {
111            if (g(t.target).is(this)) return t.handleObj.handler.apply(this, arguments)
112        }
113    };
114    var o = "alert",
115        r = "bs.alert",
116        a = "." + r,
117        c = g.fn[o],
118        h = {
119            CLOSE: "close" + a,
120            CLOSED: "closed" + a,
121            CLICK_DATA_API: "click" + a + ".data-api"
122        },
123        f = "alert",
124        d = "fade",
125        m = "show",
126        p = function() {
127            function i(t) {
128                this._element = t
129            }
130            var t = i.prototype;
131            return t.close = function(t) {
132                var e = this._element;
133                t && (e = this._getRootElement(t)), this._triggerCloseEvent(e).isDefaultPrevented() || this._removeElement(e)
134            }
134, t.dispose = function() {
135                g.removeData(this._element, r), this._element = null
136            }, t._getRootElement = function(t) {
137                var e = _.getSelectorFromElement(t),
138                    n = !1;
139                return e && (n = document.querySelector(e)), n || (n = g(t).closest("." + f)[0]), n
140            }, t._triggerCloseEvent = function(t) {
141                var e = g.Event(h.CLOSE);
142                return g(t).trigger(e), e
143            }, t._removeElement = function(e) {
144                var n = this;
145                if (g(e).removeClass(m), g(e).hasClass(d)) {
146                    var t = _.getTransitionDurationFromElement(e);
147                    g(e).one(_.TRANSITION_END, function(t) {
148                        return n._destroyElement(e, t)
149                    }).emulateTransitionEnd(t)
150                } else this._destroyElement(e)
151            }, t._destroyElement = function(t) {
152                g(t).detach().trigger(h.CLOSED).remove()
153            }, i._jQueryInterface = function(n) {
154                return this.each(function() {
155                    var t = g(this),
156                        e = t.data(r);
157                    e || (e = new i(this), t.data(r, e)), "close" === n && e[n](this)
158                })
159            }, i._handleDismiss = function(e) {
160                return function(t) {
161                    t && t.preventDefault(), e.close(this)
162                }
163            }, s(i, null, [{
164                key: "VERSION",
165                get: function() {
166                    return "4.3.1"
167                }
168            }]), i
169        }();
170    g(document).on(h.CLICK_DATA_API, '[data-dismiss="alert"]', p._handleDismiss(new p)), g.fn[o] = p._jQueryInterface, g.fn[o].Constructor = p, g.fn[o].noConflict = function() {
171        return g.fn[o] = c, p._jQueryInterface
172    };
173    var v = "button",
174        y = "bs.button",
175        E = "." + y,
176        C = ".data-api",
177        T = g.fn[v],
178        S = "active",
179        b = "btn",
180        I = "focus",
181        D = '[data-toggle^="button"]',
182        w = '[data-toggle="buttons"]',
183        A = 'input:not([type="hidden"])',
184        N = ".active",
185        O = ".btn",
186        k = {
187            CLICK_DATA_API: "click" + E + C,
188            FOCUS_BLUR_DATA_API: "focus" + E + C + " blur" + E + C
189        },
190        P = function() {
191            function n(t) {
192                this._element = t
193            }
194            var t = n.prototype;
195            return t.toggle = function() {
196                var t = !0,
197                    e = !0,
198                    n = g(this._element).closest(w)[0];
199                if (n) {
200                    var i = this._element.querySelector(A);
201                    if (i) {
202                        if ("radio" === i.type)
203                            if (i.checked && this._element.classList.contains(S)) t = !1;
204                            else {
205                                var o = n.querySelector(N);
206                                o && g(o).removeClass(S)
207                            }
208                        if (t) {
209                            if (i.hasAttribute("disabled") || n.hasAttribute("disabled") || i.classList.contains("disabled") || n.classList.contains("disabled")) return;
210                            i.checked = !this._element.classList.contains(S), g(i).trigger("change")
211                        }
212                        i.focus(), e = !1
213                    }
214                }
215                e && this._element.setAttribute("aria-pressed", !this._element.classList.contains(S)), t && g(this._element).toggleClass(S)
216            }, t.dispose = function() {
217                g.removeData(this._element, y), this._element = null
218            }, n._jQueryInterface = function(e) {
219                return this.each(function() {
220                    var t = g(this).data(y);
221                    t || (t = new n(this), g(this).data(y, t)), "toggle" === e && t[e]()
222                })
223            }, s(n, null, [{
224                key: "VERSION",
225                get: function() {
226                    return "4.3.1"
227                }
228            }]), n
229        }();
230    g(document).on(k.CLICK_DATA_API, D, function(t) {
231        t.preventDefault();
232        var e = t.target;
233        g(e).hasClass(b) || (e = g(e).closest(O)), P._jQueryInterface.call(g(e), "toggle")
234    }).on(k.FOCUS_BLUR_DATA_API, D, function(t) {
235        var e = g(t.target).closest(O)[0];
236        g(e).toggleClass(I, /^focus(in)?$/.test(t.type))
237    }), g.fn[v] = P._jQueryInterface, g.fn[v].Constructor = P, g.fn[v].noConflict = function() {
238        return g.fn[v] = T, P._jQueryInterface
239    };
240    var L = "carousel",
241        j = "bs.carousel",
242        H = "." + j,
243        R = ".data-api",
244        x = g.fn[L],
245        F = {
246            interval: 5e3,
247            keyboard: !0,
248            slide: !1,
249            pause: "hover",
250            wrap: !0,
251            touch: !0
252        },
253        U = {
254            interval: "(number|boolean)",
255            keyboard: "boolean",
256            slide: "(boolean|string)",
257            pause: "(string|boolean)",
258            wrap: "boolean",
259            touch: "boolean"
260        },
261        W = "next",
262        q = "prev",
263        M = "left",
264        K = "right",
265        Q = {
266            SLIDE: "slide" + H,
267            SLID: "slid" + H,
268            KEYDOWN: "keydown" + H,
269            MOUSEENTER: "mouseenter" + H,
270            MOUSELEAVE: "mouseleave" + H,
271            TOUCHSTART: "touchstart" + H,
272            TOUCHMOVE: "touchmove" + H,
273            TOUCHEND: "touchend" + H,
274            POINTERDOWN: "pointerdown" + H,
275            POINTERUP: "pointerup" + H,
276            DRAG_START: "dragstart" + H,
277            LOAD_DATA_API: "load" + H + R,
278            CLICK_DATA_API: "click" + H + R
279        },
280        B = "carousel",
281        V = "active",
282        Y = "slide",
283        z = "carousel-item-right",
284        X = "carousel-item-left",
285        $ = "carousel-item-next",
286        G = "carousel-item-prev",
287        J = "pointer-event",
288        Z = ".active",
289        tt = ".active.carousel-item",
290        et = ".carousel-item",
291        nt = ".carousel-item img",
292        it = ".carousel-item-next, .carousel-item-prev",
293        ot = ".carousel-indicators",
294        rt = "[data-slide], [data-slide-to]",
295        st = '[data-ride="carousel"]',
296        at = {
297            TOUCH: "touch",
298            PEN: "pen"
299        },
300        lt = function() {
301            function r(t, e) {
302                this._items = null, this._interval = null, this._activeElement = null, this._isPaused = !1, this._isSliding = !1, this.touchTimeout = null, this.touchStartX = 0, this.touchDeltaX = 0, this._config = this._getConfig(e), this._element = t, this._indicatorsElement = this._element.querySelector(ot), this._touchSupported = "ontouchstart" in document.documentElement || 0 < navigator.maxTouchPoints, this._pointerEvent = Boolean(window.PointerEvent || window.MSPointerEvent), this._addEventListeners()
303            }
304            var t = r.prototype;
305            return t.next = function() {
306                this._isSliding || this._slide(W)
307            }, t.nextWhenVisible = function() {
308                !document.hidden && g(this._element).is(":visible") && "hidden" !== g(this._element).css("visibility") && this.next()
309            }, t.prev = function() {
310                this._isSliding || this._slide(q)
311            }, t.pause = function(t) {
312                t || (this._isPaused = !0), this._element.querySelector(it) && (_.triggerTransitionEnd(this._element), this.cycle(!0)), clearInterval(this._interval), this._interval = null
313            }, t.cycle = function(t) {
314                t || (this._isPaused = !1), this._interval && (clearInterval(this._interval), this._interval = null), this._config.interval && !this._isPaused && (this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval))
315            }, t.to = function(t) {
316                var e = this;
317                this._activeElement = this._element.querySelector(tt);
318                var n = this._getItemIndex(this._activeElement);
319                if (!(t > this._items.length - 1 || t < 0))
320                    if (this._isSliding) g(this._element).one(Q.SLID, function() {
321                        return e.to(t)
322                    });
323                    else {
324                        if (n === t) return this.pause(), void this.cycle();
325                        var i = n < t ? W : q;
326                        this._slide(i, this._items[t])
327                    }
328            }
328, t.dispose = function() {
329                g(this._element).off(H), g.removeData(this._element, j), this._items = null, this._config = null, this._element = null, this._interval = null, this._isPaused = null, this._isSliding = null, this._activeElement = null, this._indicatorsElement = null
330            }, t._getConfig = function(t) {
331                return t = l({}, F, t), _.typeCheckConfig(L, t, U), t
332            }, t._handleSwipe = function() {
333                var t = Math.abs(this.touchDeltaX);
334                if (!(t <= 40)) {
335                    var e = t / this.touchDeltaX;
336                    0 < e && this.prev(), e < 0 && this.next()
337                }
338            }, t._addEventListeners = function() {
339                var e = this;
340                this._config.keyboard && g(this._element).on(Q.KEYDOWN, function(t) {
341                    return e._keydown(t)
342                }), "hover" === this._config.pause && g(this._element).on(Q.MOUSEENTER, function(t) {
343                    return e.pause(t)
344                }).on(Q.MOUSELEAVE, function(t) {
345                    return e.cycle(t)
346                }), this._config.touch && this._addTouchEventListeners()
347            }, t._addTouchEventListeners = function() {
348                var n = this;
349                if (this._touchSupported) {
350                    var e = function(t) {
351                            n._pointerEvent && at[t.originalEvent.pointerType.toUpperCase()] ? n.touchStartX = t.originalEvent.clientX : n._pointerEvent || (n.touchStartX = t.originalEvent.touches[0].clientX)
352                        },
353                        i = function(t) {
354                            n._pointerEvent && at[t.originalEvent.pointerType.toUpperCase()] && (n.touchDeltaX = t.originalEvent.clientX - n.touchStartX), n._handleSwipe(), "hover" === n._config.pause && (n.pause(), n.touchTimeout && clearTimeout(n.touchTimeout), n.touchTimeout = setTimeout(function(t) {
355                                return n.cycle(t)
356                            }, 500 + n._config.interval))
357                        };
358                    g(this._element.querySelectorAll(nt)).on(Q.DRAG_START, function(t) {
359                        return t.preventDefault()
360                    }), this._pointerEvent ? (g(this._element).on(Q.POINTERDOWN, function(t) {
361                        return e(t)
362                    }), g(this._element).on(Q.POINTERUP, function(t) {
363                        return i(t)
364                    }), this._element.classList.add(J)) : (g(this._element).on(Q.TOUCHSTART, function(t) {
365                        return e(t)
366                    }), g(this._element).on(Q.TOUCHMOVE, function(t) {
367                        var e;
368                        (e = t).originalEvent.touches && 1 < e.originalEvent.touches.length ? n.touchDeltaX = 0 : n.touchDeltaX = e.originalEvent.touches[0].clientX - n.touchStartX
369                    }), g(this._element).on(Q.TOUCHEND, function(t) {
370                        return i(t)
371                    }))
372                }
373            }, t._keydown = function(t) {
374                if (!/input|textarea/i.test(t.target.tagName)) switch (t.which) {
375                    case 37:
376                        t.preventDefault(), this.prev();
377                        break;
378                    case 39:
379                        t.preventDefault(), this.next()
380                }
381            }, t._getItemIndex = function(t) {
382                return this._items = t && t.parentNode ? [].slice.call(t.parentNode.querySelectorAll(et)) : [], this._items.indexOf(t)
383            }, t._getItemByDirection = function(t, e) {
384                var n = t === W,
385                    i = t === q,
386                    o = this._getItemIndex(e),
387                    r = this._items.length - 1;
388                if ((i && 0 === o || n && o === r) && !this._config.wrap) return e;
389                var s = (o + (t === q ? -1 : 1)) % this._items.length;
390                return -1 === s ? this._items[this._items.length - 1] : this._items[s]
391            }, t._triggerSlideEvent = function(t, e) {
392                var n = this._getItemIndex(t),
393                    i = this._getItemIndex(this._element.querySelector(tt)),
394                    o = g.Event(Q.SLIDE, {
395                        relatedTarget: t,
396                        direction: e,
397                        from: i,
398                        to: n
399                    });
400                return g(this._element).trigger(o), o
401            }, t._setActiveIndicatorElement = function(t) {
402                if (this._indicatorsElement) {
403                    var e = [].slice.call(this._indicatorsElement.querySelectorAll(Z));
404                    g(e).removeClass(V);
405                    var n = this._indicatorsElement.children[this._getItemIndex(t)];
406                    n && g(n).addClass(V)
407                }
408            }, t._slide = function(t, e) {
409                var n, i, o, r = this,
410                    s = this._element.querySelector(tt),
411                    a = this._getItemIndex(s),
412                    l = e || s && this._getItemByDirection(t, s),
413                    c = this._getItemIndex(l),
414                    h = Boolean(this._interval);
415                if (o = t === W ? (n = X, i = $, M) : (n = z, i = G, K), l && g(l).hasClass(V)) this._isSliding = !1;
416                else if (!this._triggerSlideEvent(l, o).isDefaultPrevented() && s && l) {
417                    this._isSliding = !0, h && this.pause(), this._setActiveIndicatorElement(l);
418                    var u = g.Event(Q.SLID, {
419                        relatedTarget: l,
420                        direction: o,
421                        from: a,
422                        to: c
423                    });
424                    if (g(this._element).hasClass(Y)) {
425                        g(l).addClass(i), _.reflow(l), g(s).addClass(n), g(l).addClass(n);
426                        var f = parseInt(l.getAttribute("data-interval"), 10);
427                        this._config.interval = f ? (this._config.defaultInterval = this._config.defaultInterval || this._config.interval, f) : this._config.defaultInterval || this._config.interval;
428                        var d = _.getTransitionDurationFromElement(s);
429                        g(s).one(_.TRANSITION_END, function() {
430                            g(l).removeClass(n + " " + i).addClass(V), g(s).removeClass(V + " " + i + " " + n
430), r._isSliding = !1, setTimeout(function() {
431                                return g(r._element).trigger(u)
432                            }, 0)
433                        }).emulateTransitionEnd(d)
434                    } else g(s).removeClass(V), g(l).addClass(V), this._isSliding = !1, g(this._element).trigger(u);
435                    h && this.cycle()
436                }
437            }, r._jQueryInterface = function(i) {
438                return this.each(function() {
439                    var t = g(this).data(j),
440                        e = l({}, F, g(this).data());
441                    "object" == typeof i && (e = l({}, e, i));
442                    var n = "string" == typeof i ? i : e.slide;
443                    if (t || (t = new r(this, e), g(this).data(j, t)), "number" == typeof i) t.to(i);
444                    else if ("string" == typeof n) {
445                        if ("undefined" == typeof t[n]) throw new TypeError('No method named "' + n + '"');
446                        t[n]()
447                    } else e.interval && e.ride && (t.pause(), t.cycle())
448                })
449            }, r._dataApiClickHandler = function(t) {
450                var e = _.getSelectorFromElement(this);
451                if (e) {
452                    var n = g(e)[0];
453                    if (n && g(n).hasClass(B)) {
454                        var i = l({}, g(n).data(), g(this).data()),
455                            o = this.getAttribute("data-slide-to");
456                        o && (i.interval = !1), r._jQueryInterface.call(g(n), i), o && g(n).data(j).to(o), t.preventDefault()
457                    }
458                }
459            }, s(r, null, [{
460                key: "VERSION",
461                get: function() {
462                    return "4.3.1"
463                }
464            }, {
465                key: "Default",
466                get: function() {
467                    return F
468                }
469            }]), r
470        }();
471    g(document).on(Q.CLICK_DATA_API, rt, lt._dataApiClickHandler), g(window).on(Q.LOAD_DATA_API, function() {
472        for (var t = [].slice.call(document.querySelectorAll(st)), e = 0, n = t.length; e < n; e++) {
473            var i = g(t[e]);
474            lt._jQueryInterface.call(i, i.data())
475        }
476    }), g.fn[L] = lt._jQueryInterface, g.fn[L].Constructor = lt, g.fn[L].noConflict = function() {
477        return g.fn[L] = x, lt._jQueryInterface
478    };
479    var ct = "collapse",
480        ht = "bs.collapse",
481        ut = "." + ht,
482        ft = g.fn[ct],
483        dt = {
484            toggle: !0,
485            parent: ""
486        },
487        gt = {
488            toggle: "boolean",
489            parent: "(string|element)"
490        },
491        _t = {
492            SHOW: "show" + ut,
493            SHOWN: "shown" + ut,
494            HIDE: "hide" + ut,
495            HIDDEN: "hidden" + ut,
496            CLICK_DATA_API: "click" + ut + ".data-api"
497        },
498        mt = "show",
499        pt = "collapse",
500        vt = "collapsing",
501        yt = "collapsed",
502        Et = "width",
503        Ct = "height",
504        Tt = ".show, .collapsing",
505        St = '[data-toggle="collapse"]',
506        bt = function() {
507            function a(e, t) {
508                this._isTransitioning = !1, this._element = e, this._config = this._getConfig(t), this._triggerArray = [].slice.call(document.querySelectorAll('[data-toggle="collapse"][href="#' + e.id + '"],[data-toggle="collapse"][data-target="#' + e.id + '"]'));
509                for (var n = [].slice.call(document.querySelectorAll(St)), i = 0, o = n.length; i < o; i++) {
510                    var r = n[i],
511                        s = _.getSelectorFromElement(r),
512                        a = [].slice.call(document.querySelectorAll(s)).filter(function(t) {
513                            return t === e
514                        });
515                    null !== s && 0 < a.length && (this._selector = s, this._triggerArray.push(r))
516                }
517                this._parent = this._config.parent ? this._getParent() : null, this._config.parent || this._addAriaAndCollapsedClass(this._element, this._triggerArray), this._config.toggle && this.toggle()
518            }
519            var t = a.prototype;
520            return t.toggle = function() {
521                g(this._element).hasClass(mt) ? this.hide() : this.show()
522            }, t.show = function() {
523                var t, e, n = this;
524                if (!this._isTransitioning && !g(this._element).hasClass(mt) && (this._parent && 0 === (t = [].slice.call(this._parent.querySelectorAll(Tt)).filter(function(t) {
525                        return "string" == typeof n._config.parent ? t.getAttribute("data-parent") === n._config.parent : t.classList.contains(pt)
526                    })).length && (t = null), !(t && (e = g(t).not(this._selector).data(ht)) && e._isTransitioning))) {
527                    var i = g.Event(_t.SHOW);
528                    if (g(this._element).trigger(i), !i.isDefaultPrevented()) {
529                        t && (a._jQueryInterface.call(g(t).not(this._selector), "hide"), e || g(t).data(ht, null));
530                        var o = this._getDimension();
531                        g(this._element).removeClass(pt).addClass(vt), this._element.style[o] = 0, this._triggerArray.length && g(this._triggerArray).removeClass(yt).attr("aria-expanded", !0), this.setTransitioning(!0);
532                        var r = "scroll" + (o[0].toUpperCase() + o.slice(1)),
533                            s = _.getTransitionDurationFromElement(this._element);
534                        g(this._element).one(_.TRANSITION_END, function() {
535                            g(n._element).removeClass(vt).addClass(pt).addClass(mt), n._element.style[o] = "", n.setTransitioning(!1), g(n._element).trigger(_t.SHOWN)
536                        }).emulateTransitionEnd(s), this._element.style[o] = this._element[r] + "px"
537                    }
538                }
539            }, t.hide = function() {
540                var t = this;
541                if (!this._isTransitioning && g(this._element).hasClass(mt)) {
542                    var e = g.Event(_t.HIDE);
543                    if (g(this._element).trigger(e), !e.isDefaultPrevented()) {
544                        var n = this._getDimension();
545                        this._element.style[n] = this._element.getBoundingClientRect()[n] + "px", _.reflow(this._element), g(this._element).addClass(vt).removeClass(pt).removeClass(mt);
546                        var i = this._triggerArray.length;
547                        if (0 < i)
548                            for (var o = 0; o < i; o++) {
549                                var r = this._triggerArray[o],
550                                    s = _.getSelectorFromElement(r);
551                                if (null !== s) g([].slice.call(document.querySelectorAll(s))).hasClass(mt) || g(r).addClass(yt).attr("aria-expanded", !1)
552                            }
553                        this.setTransitioning(!0);
554                        this._element.style[n] = "";
555                        var a = _.getTransitionDurationFromElement(this._element);
556                        g(this._element).one(_.TRANSITION_END, function() {
557                            t.setTransitioning(!1), g(t._element).removeClass(vt).addClass(pt).trigger(_t.HIDDEN)
558                        }).emulateTransitionEnd(a)
559                    }
560                }
561            }, t.setTransitioning = function(t) {
562                this._isTransitioning = t
563            }
563, t.dispose = function() {
564                g.removeData(this._element, ht), this._config = null, this._parent = null, this._element = null, this._triggerArray = null, this._isTransitioning = null
565            }, t._getConfig = function(t) {
566                return (t = l({}, dt, t)).toggle = Boolean(t.toggle), _.typeCheckConfig(ct, t, gt), t
567            }, t._getDimension = function() {
568                return g(this._element).hasClass(Et) ? Et : Ct
569            }, t._getParent = function() {
570                var t, n = this;
571                _.isElement(this._config.parent) ? (t = this._config.parent, "undefined" != typeof this._config.parent.jquery && (t = this._config.parent[0])) : t = document.querySelector(this._config.parent);
572                var e = '[data-toggle="collapse"][data-parent="' + this._config.parent + '"]',
573                    i = [].slice.call(t.querySelectorAll(e));
574                return g(i).each(function(t, e) {
575                    n._addAriaAndCollapsedClass(a._getTargetFromElement(e), [e])
576                }), t
577            }, t._addAriaAndCollapsedClass = function(t, e) {
578                var n = g(t).hasClass(mt);
579                e.length && g(e).toggleClass(yt, !n).attr("aria-expanded", n)
580            }, a._getTargetFromElement = function(t) {
581                var e = _.getSelectorFromElement(t);
582                return e ? document.querySelector(e) : null
583            }, a._jQueryInterface = function(i) {
584                return this.each(function() {
585                    var t = g(this),
586                        e = t.data(ht),
587                        n = l({}, dt, t.data(), "object" == typeof i && i ? i : {});
588                    if (!e && n.toggle && /show|hide/.test(i) && (n.toggle = !1), e || (e = new a(this, n), t.data(ht, e)), "string" == typeof i) {
589                        if ("undefined" == typeof e[i]) throw new TypeError('No method named "' + i + '"');
590                        e[i]()
591                    }
592                })
593            }, s(a, null, [{
594                key: "VERSION",
595                get: function() {
596                    return "4.3.1"
597                }
598            }, {
599                key: "Default",
600                get: function() {
601                    return dt
602                }
603            }]), a
604        }();
605    g(document).on(_t.CLICK_DATA_API, St, function(t) {
606        "A" === t.currentTarget.tagName && t.preventDefault();
607        var n = g(this),
608            e = _.getSelectorFromElement(this),
609            i = [].slice.call(document.querySelectorAll(e));
610        g(i).each(function() {
611            var t = g(this),
612                e = t.data(ht) ? "toggle" : n.data();
613            bt._jQueryInterface.call(t, e)
614        })
615    }), g.fn[ct] = bt._jQueryInterface, g.fn[ct].Constructor = bt, g.fn[ct].noConflict = function() {
616        return g.fn[ct] = ft, bt._jQueryInterface
617    };
618    var It = "dropdown",
619        Dt = "bs.dropdown",
620        wt = "." + Dt,
621        At = ".data-api",
622        Nt = g.fn[It],
623        Ot = new RegExp("38|40|27"),
624        kt = {
625            HIDE: "hide" + wt,
626            HIDDEN: "hidden" + wt,
627            SHOW: "show" + wt,
628            SHOWN: "shown" + wt,
629            CLICK: "click" + wt,
630            CLICK_DATA_API: "click" + wt + At,
631            KEYDOWN_DATA_API: "keydown" + wt + At,
632            KEYUP_DATA_API: "keyup" + wt + At
633        },
634        Pt = "disabled",
635        Lt = "show",
636        jt = "dropup",
637        Ht = "dropright",
638        Rt = "dropleft",
639        xt = "dropdown-menu-right",
640        Ft = "position-static",
641        Ut = '[data-toggle="dropdown"]',
642        Wt = ".dropdown form",
643        qt = ".dropdown-menu",
644        Mt = ".navbar-nav",
645        Kt = ".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",
646        Qt = "top-start",
647        Bt = "top-end",
648        Vt = "bottom-start",
649        Yt = "bottom-end",
650        zt = "right-start",
651        Xt = "left-start",
652        $t = {
653            offset: 0,
654            flip: !0,
655            boundary: "scrollParent",
656            reference: "toggle",
657            display: "dynamic"
658        },
659        Gt = {
660            offset: "(number|string|function)",
661            flip: "boolean",
662            boundary: "(string|element)",
663            reference: "(string|element)",
664            display: "string"
665        },
666        Jt = function() {
667            function c(t, e) {
668                this._element = t, this._popper = null, this._config = this._getConfig(e), this._menu = this._getMenuElement(), this._inNavbar = this._detectNavbar(), this._addEventListeners()
669            }
670            var t = c.prototype;
671            return t.toggle = function() {
672                if (!this._element.disabled && !g(this._element).hasClass(Pt)) {
673                    var t = c._getParentFromElement(this._element),
674                        e = g(this._menu).hasClass(Lt);
675                    if (c._clearMenus(), !e) {
676                        var n = {
677                                relatedTarget: this._element
678                            },
679                            i = g.Event(kt.SHOW, n);
680                        if (g(t).trigger(i), !i.isDefaultPrevented()) {
681                            if (!this._inNavbar) {
682                                if ("undefined" == typeof u) throw new TypeError("Bootstrap's dropdowns require Popper.js (https://popper.js.org/)");
683                                var o = this._element;
684                                "parent" === this._config.reference ? o = t : _.isElement(this._config.reference) && (o = this._config.reference, "undefined" != typeof this._config.reference.jquery && (o = this._config.reference[0])), "scrollParent" !== this._config.boun
684dary && g(t).addClass(Ft), this._popper = new u(o, this._menu, this._getPopperConfig())
685                            }
686                            "ontouchstart" in document.documentElement && 0 === g(t).closest(Mt).length && g(document.body).children().on("mouseover", null, g.noop), this._element.focus(), this._element.setAttribute("aria-expanded", !0), g(this._menu).toggleClass(Lt), g(t).toggleClass(Lt).trigger(g.Event(kt.SHOWN, n))
687                        }
688                    }
689                }
690            }, t.show = function() {
691                if (!(this._element.disabled || g(this._element).hasClass(Pt) || g(this._menu).hasClass(Lt))) {
692                    var t = {
693                            relatedTarget: this._element
694                        },
695                        e = g.Event(kt.SHOW, t),
696                        n = c._getParentFromElement(this._element);
697                    g(n).trigger(e), e.isDefaultPrevented() || (g(this._menu).toggleClass(Lt), g(n).toggleClass(Lt).trigger(g.Event(kt.SHOWN, t)))
698                }
699            }, t.hide = function() {
700                if (!this._element.disabled && !g(this._element).hasClass(Pt) && g(this._menu).hasClass(Lt)) {
701                    var t = {
702                            relatedTarget: this._element
703                        },
704                        e = g.Event(kt.HIDE, t),
705                        n = c._getParentFromElement(this._element);
706                    g(n).trigger(e), e.isDefaultPrevented() || (g(this._menu).toggleClass(Lt), g(n).toggleClass(Lt).trigger(g.Event(kt.HIDDEN, t)))
707                }
708            }, t.dispose = function() {
709                g.removeData(this._element, Dt), g(this._element).off(wt), this._element = null, (this._menu = null) !== this._popper && (this._popper.destroy(), this._popper = null)
710            }, t.update = function() {
711                this._inNavbar = this._detectNavbar(), null !== this._popper && this._popper.scheduleUpdate()
712            }, t._addEventListeners = function() {
713                var e = this;
714                g(this._element).on(kt.CLICK, function(t) {
715                    t.preventDefault(), t.stopPropagation(), e.toggle()
716                })
717            }, t._getConfig = function(t) {
718                return t = l({}, this.constructor.Default, g(this._element).data(), t), _.typeCheckConfig(It, t, this.constructor.DefaultType), t
719            }, t._getMenuElement = function() {
720                if (!this._menu) {
721                    var t = c._getParentFromElement(this._element);
722                    t && (this._menu = t.querySelector(qt))
723                }
724                return this._menu
725            }, t._getPlacement = function() {
726                var t = g(this._element.parentNode),
727                    e = Vt;
728                return t.hasClass(jt) ? (e = Qt, g(this._menu).hasClass(xt) && (e = Bt)) : t.hasClass(Ht) ? e = zt : t.hasClass(Rt) ? e = Xt : g(this._menu).hasClass(xt) && (e = Yt), e
729            }, t._detectNavbar = function() {
730                return 0 < g(this._element).closest(".navbar").length
731            }, t._getOffset = function() {
732                var e = this,
733                    t = {};
734                return "function" == typeof this._config.offset ? t.fn = function(t) {
735                    return t.offsets = l({}, t.offsets, e._config.offset(t.offsets, e._element) || {}), t
736                } : t.offset = this._config.offset, t
737            }, t._getPopperConfig = function() {
738                var t = {
739                    placement: this._getPlacement(),
740                    modifiers: {
741                        offset: this._getOffset(),
742                        flip: {
743                            enabled: this._config.flip
744                        },
745                        preventOverflow: {
746                            boundariesElement: this._config.boundary
747                        }
748                    }
749                };
750                return "static" === this._config.display && (t.modifiers.applyStyle = {
751                    enabled: !1
752                }), t
753            }, c._jQueryInterface = function(e) {
754                return this.each(function() {
755                    var t = g(this).data(Dt);
756                    if (t || (t = new c(this, "object" == typeof e ? e : null), g(this).data(Dt, t)), "string" == typeof e) {
757                        if ("undefined" == typeof t[e]) throw new TypeError('No method n
757amed "' + e + '"');
758                        t[e]()
759                    }
760                })
761            }, c._clearMenus = function(t) {
762                if (!t || 3 !== t.which && ("keyup" !== t.type || 9 === t.which))
763                    for (var e = [].slice.call(document.querySelectorAll(Ut)), n = 0, i = e.length; n < i; n++) {
764                        var o = c._getParentFromElement(e[n]),
765                            r = g(e[n]).data(Dt),
766                            s = {
767                                relatedTarget: e[n]
768                            };
769                        if (t && "click" === t.type && (s.clickEvent = t), r) {
770                            var a = r._menu;
771                            if (g(o).hasClass(Lt) && !(t && ("click" === t.type && /input|textarea/i.test(t.target.tagName) || "keyup" === t.type && 9 === t.which) && g.contains(o, t.target))) {
772                                var l = g.Event(kt.HIDE, s);
773                                g(o).trigger(l), l.isDefaultPrevented() || ("ontouchstart" in document.documentElement && g(document.body).children().off("mouseover", null, g.noop), e[n].setAttribute("aria-expanded", "false"), g(a).removeClass(Lt), g(o).removeClass(Lt).trigger(g.Event(kt.HIDDEN, s)))
774                            }
775                        }
776                    }
777            }, c._getParentFromElement = function(t) {
778                var e, n = _.getSelectorFromElement(t);
779                return n && (e = document.querySelector(n)), e || t.parentNode
780            }, c._dataApiKeydownHandler = function(t) {
781                if ((/input|textarea/i.test(t.target.tagName) ? !(32 === t.which || 27 !== t.which && (40 !== t.which && 38 !== t.which || g(t.target).closest(qt).length)) : Ot.test(t.which)) && (t.preventDefault(), t.stopPropagation(), !this.disabled && !g(this).hasClass(Pt))) {
782                    var e = c._getParentFromElement(this),
783                        n = g(e).hasClass(Lt);
784                    if (n && (!n || 27 !== t.which && 32 !== t.which)) {
785                        var i = [].slice.call(e.querySelectorAll(Kt));
786                        if (0 !== i.length) {
787                            var o = i.indexOf(t.target);
788                            38 === t.which && 0 < o && o--, 40 === t.which && o < i.length - 1 && o++, o < 0 && (o = 0), i[o].focus()
789                        }
790                    } else {
791                        if (27 === t.which) {
792                            var r = e.querySelector(Ut);
793                            g(r).trigger("focus")
794                        }
795                        g(this).trigger("click")
796                    }
797                }
798            }, s(c, null, [{
799                key: "VERSION",
800                get: function() {
801                    return "4.3.1"
802                }
803            }, {
804                key: "Default",
805                get: function() {
806                    return $t
807                }
808            }, {
809                key: "DefaultType",
810                get: function() {
811                    return Gt
812                }
813            }]), c
814        }();
815    g(document).on(kt.KEYDOWN_DATA_API, Ut, Jt._dataApiKeydownHandler).on(kt.KEYDOWN_DATA_API, qt, Jt._dataApiKeydownHandler).on(kt.CLICK_DATA_API + " " + kt.KEYUP_DATA_API, Jt._clearMenus).on(kt.CLICK_DATA_API, Ut, function(t) {
816        t.preventDefault(), t.stopPropagation(), Jt._jQueryInterface.call(g(this), "toggle")
817    }).on(kt.CLICK_DATA_API, Wt, function(t) {
818        t.stopPropagation()
819    }), g.fn[It] = Jt._jQueryInterface, g.fn[It].Constructor = Jt, g.fn[It].noConflict = function() {
820        return g.fn[It] = Nt, Jt._jQueryInterface
821    };
822    var Zt = "modal",
823        te = "bs.modal",
824        ee = "." + te,
825        ne = g.fn[Zt],
826        ie = {
827            backdrop: !0,
828            keyboard: !0,
829            focus: !0,
830            show: !0
831        },
832        oe = {
833            backdrop: "(boolean|string)",
834            keyboard: "boolean",
835            focus: "boolean",
836            show: "boolean"
837        },
838        re = {
839            HIDE: "hide" + ee,
840            HIDDEN: "hidden" + ee,
841            SHOW: "show" + ee,
842            SHOWN: "shown" + ee,
843            FOCUSIN: "focusin" + ee,
844            RESIZE: "resize" + ee,
845            CLICK_DISMISS: "click.dismiss" + ee,
846            KEYDOWN_DISMISS: "keydown.dismiss" + ee,
847            MOUSEUP_DISMISS: "mouseup.dismiss" + ee,
848            MOUSEDOWN_DISMISS: "mousedown.dismiss" + ee,
849            CLICK_DATA_API: "click" + ee + ".data-api"
850        },
851        se = "modal-dialog-scrollable",
852        ae = "modal-scrollbar-measure",
853        le = "modal-backdrop",
854        ce = "modal-open",
855        he = "fade",
856        ue = "show",
857        fe = ".modal-dialog",
858        de = ".modal-body",
859        ge = '[data-toggle="modal"]',
860        _e = '[data-dismiss="modal"]',
861        me = ".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",
862        pe = ".sticky-top",
863        ve = function() {
864            function o(t, e) {
865                this._config = this._getConfig(e), this._element = t, this._dialog = t.querySelector(fe), this._backdrop = null, this._isShown = !1, this._isBodyOverflowing = !1, this._ignoreBackdropClick = !1, this._isTransitioning = !1, this._scrollbarWidth = 0
866            }
867            var t = o.prototype;
868            return t.toggle = function(t) {
869                return this._isShown ? this.hide() : this.show(t)
870            }, t.show = function(t) {
871                var e = this;
872                if (!this._isShown && !this._isTransitioning) {
873                    g(this._element).hasClass(he) && (this._isTransitioning = !0);
874                    var n = g.Event(re.SHOW, {
875                        relatedTarget: t
876                    });
877                    g(this._element).trigger(n), this._isShown || n.isDefaultPrevented() || (this._isShown = !0, this._checkScrollbar(), this._setScrollbar(), this._adjustDialog(), this._setEscapeEvent(), this._setResizeEvent(), g(this._element).on(re.CLICK_DISMISS, _e, function(t) {
878                        return e.hide(t)
879                    }), g(this._dialog).on(re.MOUSEDOWN_DISMISS, function() {
880                        g(e._element).one(re.MOUSEUP_DISMISS, function(t) {
881                            g(t.target).is(e._element) && (e._ignoreBackdropClick = !0)
882                        })
883                    }), this._showBackdrop(function() {
884                        return e._showElement(t)
885                    }))
886                }
887            }, t.hide = function(t) {
888                var e = this;
889                if (t && t.preventDefault(), this._isShown && !this._isTransitioning) {
890                    var n = g.Event(re.HIDE);
891                    if (g(this._element).trigger(n), this._isShown && !n.isDefaultPrevented()) {
892                        this._isShown = !1;
893                        var i = g(this._element).hasClass(he);
894                        if (i && (this._isTransitioning = !0), this._setEscapeEvent(), this._setResizeEvent(), g(document).off(re.FOCUSIN), g(this._element).removeClass(ue), g(this._element).off(re.CLICK_DISMISS), g(this._dialog).off(re.MOUSEDOWN_DISMISS), i) {
895                            var o = _.getTransitionDurationFromElement(this._element);
896                            g(this._element).one(_.TRANSITION_END, function(t) {
897                                return e._hideModal(t)
898                            }).emulateTransitionEnd(o)
899                        } else this._hideModal()
900                    }
901                }
902            }, t.dispose = function() {
903                [window, this._element, this._dialog].forEach(function(t) {
904                    return g(t).off(ee)
905                }), g(document).off(re.FOCUSIN), g.removeData(this._element, te), this._config = null, this._element = null, this._dialog = null, this._backdrop = null, this._isShown = null, this._isBodyOverflowing = null, this._ignoreBackdropClick = null, this._isTransitioning = null, this._scrollbarWidth = null
906            }, t.handleUpdate = function() {
907                this._adjustDialog()
908            }, t._getConfig = function(t) {
909                return t = l({}, ie, t), _.typeCheckConfig(Zt, t, oe), t
910            }, t._showElement = function(t) {
911                var e = this,
912                    n = g(this._element).hasClass(he);
913                this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE || document.body.appendChild(this._element), this._element.style.display = "block", this._element.removeAttribute("aria-hidden"), this._element.setAttribute("aria-modal", !0), g(this._dialog).hasClass(se) ? this._dialog.querySelector(de).scrollTop = 0 : this._element.scrollTop = 0, n && _.reflow(this._element), g(this._element).addClass(ue), this._config.focus && this._enforceFocus();
914                var i = g.Event(re.SHOWN, {
915                        relatedTarget: t
916                    }),
917                    o = function() {
918                        e._config.focus && e._element.focus(), e._isTransitioning = !1, g(e._element).trigger(i)
919                    };
920                if (n) {
921                    var r = _.getTransitionDurationFromElement(this._dialog);
922                    g(this._dialog).one(_.TRANSITION_END, o).emulateTransitionEnd(r)
923                } else o()
924            }, t._enforceFocus = function() {
925                var e = this;
926                g(document).off(re.FOCUSIN).on(re.FOCUSIN, function(t) {
927                    document !== t.target && e._element !== t.target && 0 === g(e._element).has(t.target).length && e._element.focus()
928                })
929            }, t._setEscapeEvent = function() {
930                var e = this;
931                this._isShown && this._config.keyboard ? g(this._element).on(re.KEYDOWN_DISMISS, function(t) {
932                    27 === t.which && (t.preventDefault(), e.hide())
933                }) : this._isShown || g(this._element).off(re.KEYDOWN_DISMISS)
934            }, t._setResizeEvent = function() {
935                var e = this;
936                this._isShown ? g(window).on(re.RESIZE, function(t) {
937                    return e.handleUpdate(t)
938                }) : g(window).off(re.RESIZE)
939            }, t._hideModal = function() {
940                var t = this;
941                this._element.style.display = "none", this._element.setAttribute("aria-hidden", !0), this._element.removeAttribute("aria-modal"), this._isTransitioning = !1, this._showBackdrop(function() {
942                    g(document.body).removeClass(ce), t._resetAdjustments(), t._resetScrollbar(), g(t._element).trigger(re.HIDDEN)
943                })
944            }, t._removeBackdrop = function() {
945                this._backdrop && (g(this._backdrop).remove(), this._backdrop = null)
946            }, t._showBackdrop = function(t) {
947                var e = this,
948                    n = g(this._element).hasClass(he) ? he : "";
949                if (this._isShown && this._config.backdrop) {
950                    if (this._backdrop = document.createElement("div"), this._backdrop.className = le, n && this._backdrop.classList.add(n), g(this._backdrop).appendTo(document.body), g(this._element).on(re.CLICK_DISMISS, function(t) {
951                            e._ignoreBackdropClick ? e._ignoreBackdropClick = !1 : t.target === t.currentTarget && ("static" === e._config.backdrop ? e._element.focus() : e.hide())
952                        }), n && _.reflow(this._backdrop), g(this._backdrop).addClass(ue), !t) return;
953                    if (!n) return void t();
954                    var i = _.getTransitionDurationFromElement(this._backdrop);
955                    g(this._backdrop).one(_.TRANSITION_END, t).emulateTransitionEnd(i)
956                } else if (!this._isShown && this._backdrop) {
957                    g(this._backdrop).removeClass(ue);
958                    var o = function() {
959                        e._removeBackdrop(), t && t()
960                    };
961                    if (g(this._element).hasClass(he)) {
962                        var r = _.getTransitionDurationFromElement(this._backdrop);
963                        g(this._backdrop).one(_.TRANSITION_END, o).emulateTransitionEnd(r)
964                    } else o()
965                } else t && t()
966            }, t._adjustDialog = function() {
967                var t = this._element.scrollHeight > document.documentElement.clientHeight;
968                !this._isBodyOverflowing && t && (this._element.style.paddingLeft = this._scrollbarWidth + "px"), this._isBodyOverflowing && !t && (this._element.style.paddingRight = this._scrollbarWidth + "px")
969            }, t._resetAdjustments = function() {
970                this._element.style.paddingLeft = "", this._element.style.paddingRight = ""
971            }, t._checkScrollbar = function() {
972                var t = document.body.getBoundingClientRect();
973                this._isBodyOverflowing = t.left + t.right < window.innerWidth, this._scrollbarWidth = this._getScrollbarWidth()
974            }, t._setScrollbar = function() {
975                var o = this;
976                if (this._isBodyOverflowing) {
977                    var t = [].slice.call(document.querySelectorAll(me)),
978                        e = [].slice.call(document.querySelectorAll(pe));
979                    g(t).each(function(t, e) {
980                        var n = e.style.paddingRight,
981                            i = g(e).css("padding-right");
982                        g(e).data("padding-right", n).css("padding-right", parseFloat(i) + o._scrollbarWidth + "px")
983                    }), g(e).each(function(t, e) {
984                        var n = e.style.marginRight,
985                            i = g(e).css("margin-right");
986                        g(e).data("margin-right", n).css("margin-right", parseFloat(i) - o._scrollbarWidth + "px")
987                    });
988                    var n = document.body.style.paddingRight,
989                        i = g(document.body).css("padding-right");
990                    g(document.body).data("padding-right", n).css("padding-right", parseFloat(i) + this._scrollbarWidth + "px")
991                }
992                g(document.body).addClass(ce)
993            }, t._resetScrollbar = function() {
994                var t = [].slice.call(document.querySelectorAll(me));
995                g(t).each(function(t, e) {
996                    var n = g(e).data("padding-right");
997                    g(e).removeData("padding-right"), e.style.paddingRight = n || ""
998                });
999                var e = [].slice.call(document.querySelectorAll("" + pe));
1000                g(e).each(function(t, e) {
1001                    var n = g(e).data("margin-right");
1002                    "undefined" != typeof n && g(e).css("margin-right", n).removeData("margin-right")
1003                });
1004                var n = g(document.body).data("padding-right");
1005                g(document.body).removeData("padding-right"), document.body.style.paddingRight = n || ""
1006            }, t._getScrollbarWidth = function() {
1007                var t = document.createElement("div");
1008                t.className = ae, document.body.appendChild(t);
1009                var e = t.getBoundingClientRect().width - t.clientWidth;
1010                return document.body.removeChild(t), e
1011            }, o._jQueryInterface = function(n, i) {
1012                return this.each(function() {
1013                    var t = g(this).data(te),
1014                        e = l({}, ie, g(this).data(), "object" == typeof n && n ? n : {});
1015                    if (t || (t = new o(this, e), g(this).data(te, t)), "string" == typeof n) {
1016                        if ("undefined" == typeof t[n]) throw new TypeError('No method named "' + n + '"');
1017                        t[n](i)
1018                    } else e.show && t.show(i)
1019                })
1020            }, s(o, null, [{
1021                key: "VERSION",
1022                get: function() {
1023                    return "4.3.1"
1024                }
1025            }, {
1026                key: "Default",
1027                get: function() {
1028                    return ie
1029                }
1030            }]), o
1031        }();
1032    g(document).on(re.CLICK_DATA_API, ge, function(t) {
1033        var e, n = this,
1034            i = _.getSelectorFromElement(this);
1035        i && (e = document.querySelector(i));
1036        var o = g(e).data(te) ? "toggle" : l({}, g(e).data(), g(this).data());
1037        "A" !== this.tagName && "AREA" !== this.tagName || t.preventDefault();
1038        var r = g(e).one(re.SHOW, function(t) {
1039            t.isDefaultPrevented() || r.one(re.HIDDEN, function() {
1040                g(n).is(":visible") && n.focus()
1041            })
1042        });
1043        ve._jQueryInterface.call(g(e), o, this)
1044    }), g.fn[Zt] = ve._jQueryInterface, g.fn[Zt].Constructor = ve, g.fn[Zt].noConflict = function() {
1045        return g.fn[Zt] = ne, ve._jQueryInterface
1046    };
1047    var ye = ["background", "cite", "href", "itemtype", "longdesc", "poster", "src", "xlink:href"],
1048        Ee = {
1049            "*": ["class", "dir", "id", "lang", "role", /^aria-[\w-]*$/i],
1050            a: ["target", "href", "title", "rel"],
1051            area: [],
1052            b: [],
1053            br: [],
1054            col: [],
1055            code: [],
1056            div: [],
1057            em: [],
1058            hr: [],
1059            h1: [],
1060            h2: [],
1061            h3: [],
1062            h4: [],
1063            h5: [],
1064            h6: [],
1065            i: [],
1066            img: ["src", "alt", "title", "width", "height"],
1067            li: [],
1068            ol: [],
1069            p: [],
1070            pre: [],
1071            s: [],
1072            small: [],
1073            span: [],
1074            sub: [],
1075            sup: [],
1076            strong: [],
1077            u: [],
1078            ul: []
1079        },
1080        Ce = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,
1081        Te = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;
1082
1083    function Se(t, s, e) {
1084        if (0 === t.length) return t;
1085        if (e && "function" == typeof e) return e(t);
1086        for (var n = (new window.DOMParser).parseFromString(t, "text/html"), a = Object.keys(s), l = [].slice.call(n.body.querySelectorAll("*")), i = function(t, e) {
1087                var n = l[t],
1088                    i = n.nodeName.toLowerCase();
1089                if (-1 === a.indexOf(n.nodeName.toLowerCase())) return n.parentNode.removeChild(n), "continue";
1090                var o = [].slice.call(n.attributes),
1091                    r = [].concat(s["*"] || [], s[i] || []);
1092                o.forEach(function(t) {
1093                    (function(t, e) {
1094                        var n = t.nodeName.toLowerCase();
1095                        if (-1 !== e.indexOf(n)) return -1 === ye.indexOf(n) || Boolean(t.nodeValue.match(Ce) || t.nodeValue.match(Te));
1096                        for (var i = e.filter(function(t) {
1097                                return t instanceof RegExp
1098                            }), o = 0, r = i.length; o < r; o++)
1099                            if (n.match(i[o])) return !0;
1100                        return !1
1101                    })(t, r) || n.removeAttribute(t.nodeName)
1102                })
1103            }, o = 0, r = l.length; o < r; o++) i(o);
1104        return n.body.innerHTML
1105    }
1106    var be = "tooltip",
1107        Ie = "bs.tooltip",
1108        De = "." + Ie,
1109        we = g.fn[be],
1110        Ae = "bs-tooltip",
1111        Ne = new RegExp("(^|\\s)" + Ae + "\\S+", "g"),
1112        Oe = ["sanitize", "whiteList", "sanitizeFn"],
1113        ke = {
1114            animation: "boolean",
1115            template: "string",
1116            title: "(string|element|function)",
1117            trigger: "string",
1118            delay: "(number|object)",
1119            html: "boolean",
1120            selector: "(string|boolean)",
1121            placement: "(string|function)",
1122            offset: "(number|string|function)",
1123            container: "(string|element|boolean)",
1124            fallbackPlacement: "(string|array)",
1125            boundary: "(string|element)",
1126            sanitize: "boolean",
1127            sanitizeFn: "(null|function)",
1128            whiteList: "object"
1129        },
1130        Pe = {
1131            AUTO: "auto",
1132            TOP: "top",
1133            RIGHT: "right",
1134            BOTTOM: "bottom",
1135            LEFT: "left"
1136        },
1137        Le = {
1138            animation: !0,
1139            template: '<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>',
1140            trigger: "hover focus",
1141            title: "",
1142            delay: 0,
1143            html: !1,
1144            selector: !1,
1145            placement: "top",
1146            offset: 0,
1147            container: !1,
1148            fallbackPlacement: "flip",
1149            boundary: "scrollParent",
1150            sanitize: !0,
1151            sanitizeFn: null,
1152            whiteList: Ee
1153        },
1154        je = "show",
1155        He = "out",
1156        Re = {
1157            HIDE: "hide" + De,
1158            HIDDEN: "hidden" + De,
1159            SHOW: "show" + De,
1160            SHOWN: "shown" + De,
1161            INSERTED: "inserted" + De,
1162            CLICK: "click" + De,
1163            FOCUSIN: "focusin" + De,
1164            FOCUSOUT: "focusout" + De,
1165            MOUSEENTER: "mouseenter" + De,
1166            MOUSELEAVE: "mouseleave" + De
1167        },
1168        xe = "fade",
1169        Fe = "show",
1170        Ue = ".tooltip-inner",
1171        We = ".arrow",
1172        qe = "hover",
1173        Me = "focus",
1174        Ke = "click",
1175        Qe = "manual",
1176        Be = function() {
1177            function i(t, e) {
1178                if ("undefined" == typeof u) throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org/)");
1179                this._isEnabled = !0, this._timeout = 0, this._hoverState = "", this._activeTrigger = {}, this._popper = null, this.element = t, this.config = this._getConfig(e), this.tip = null, this._setListeners()
1180            }
1181            var t = i.prototype;
1182            return t.enable = function() {
1183                this._isEnabled = !0
1184            }, t.disable = function() {
1185                this._isEnabled = !1
1186            }, t.toggleEnabled = function() {
1187                this._isEnabled = !this._isEnabled
1188            }, t.toggle = function(t) {
1189                if (this._isEnabled)
1190                    if (t) {
1191                        var e = this.constructor.DATA_KEY,
1192                            n = g(t.currentTarget).data(e);
1193                        n || (n = new this.constructor(t.currentTarget, this._getDelegateConfig()), g(t.currentTarget).data(e, n)), n._activeTrigger.click = !n._activeTrigger.click, n._isWithActiveTrigger() ? n._enter(null, n) : n._leave(null, n)
1194                    } else {
1195                        if (g(this.getTipElement()).hasClass(Fe)) return void this._leave(null, this);
1196                        this._enter(null, this)
1197                    }
1198            }
1198, t.dispose = function() {
1199                clearTimeout(this._timeout), g.removeData(this.element, this.constructor.DATA_KEY), g(this.element).off(this.constructor.EVENT_KEY), g(this.element).closest(".modal").off("hide.bs.modal"), this.tip && g(this.tip).remove(), this._isEnabled = null, this._timeout = null, this._hoverState = null, (this._activeTrigger = null) !== this._popper && this._popper.destroy(), this._popper = null, this.element = null, this.config = null, this.tip = null
1200            }, t.show = function() {
1201                var e = this;
1202                if ("none" === g(this.element).css("display")) throw new Error("Please use show on visible elements");
1203                var t = g.Event(this.constructor.Event.SHOW);
1204                if (this.isWithContent() && this._isEnabled) {
1205                    g(this.element).trigger(t);
1206                    var n = _.findShadowRoot(this.element),
1207                        i = g.contains(null !== n ? n : this.element.ownerDocument.documentElement, this.element);
1208                    if (t.isDefaultPrevented() || !i) return;
1209                    var o = this.getTipElement(),
1210                        r = _.getUID(this.constructor.NAME);
1211                    o.setAttribute("id", r), this.element.setAttribute("aria-describedby", r), this.setContent(), this.config.animation && g(o).addClass(xe);
1212                    var s = "function" == typeof this.config.placement ? this.config.placement.call(this, o, this.element) : this.config.placement,
1213                        a = this._getAttachment(s);
1214                    this.addAttachmentClass(a);
1215                    var l = this._getContainer();
1216                    g(o).data(this.constructor.DATA_KEY, this), g.contains(this.element.ownerDocument.documentElement, this.tip) || g(o).appendTo(l), g(this.element).trigger(this.constructor.Event.INSERTED), this._popper = new u(this.element, o, {
1217                        placement: a,
1218                        modifiers: {
1219                            offset: this._getOffset(),
1220                            flip: {
1221                                behavior: this.config.fallbackPlacement
1222                            },
1223                            arrow: {
1224                                element: We
1225                            },
1226                            preventOverflow: {
1227                                boundariesElement: this.config.boundary
1228                            }
1229                        },
1230                        onCreate: function(t) {
1231                            t.originalPlacement !== t.placement && e._handlePopperPlacementChange(t)
1232                        },
1233                        onUpdate: function(t) {
1234                            return e._handlePopperPlacementChange(t)
1235                        }
1236                    }), g(o).addClass(Fe), "ontouchstart" in document.documentElement && g(document.body).children().on("mouseover", null, g.noop);
1237                    var c = function() {
1238                        e.config.animation && e._fixTransition();
1239                        var t = e._hoverState;
1240                        e._hoverState = null, g(e.element).trigger(e.constructor.Event.SHOWN), t === He && e._leave(null, e)
1241                    };
1242                    if (g(this.tip).hasClass(xe)) {
1243                        var h = _.getTransitionDurationFromElement(this.tip);
1244                        g(this.tip).one(_.TRANSITION_END, c).emulateTransitionEnd(h)
1245                    } else c()
1246                }
1247            }, t.hide = function(t) {
1248                var e = this,
1249                    n = this.getTipElement(),
1250                    i = g.Event(this.constructor.Event.HIDE),
1251                    o = function() {
1252                        e._hoverState !== je && n.parentNode && n.parentNode.removeChild(n), e._cleanTipClass(), e.element.removeAttribute("aria-describedby"), g(e.element).trigger(e.constructor.Event.HIDDEN), null !== e._popper && e._popper.destroy(), t && t()
1253                    };
1254                if (g(this.element).trigger(i), !i.isDefaultPrevented()) {
1255                    if (g(n).removeClass(Fe), "ontouchstart" in document.documentElement && g(document.body).children().off("mouseover", null, g.noop), this._activeTrigger[Ke] = !1, this._activeTrigger[Me] = !1, this._activeTrigger[qe] = !1, g(this.tip).hasClass(xe)) {
1256                        var r = _.getTransitionDurationFromElement(n);
1257                        g(n).one(_.TRANSITION_END, o).emulateTransitionEnd(r)
1258                    } else o();
1259                    this._hoverState = ""
1260                }
1261            }, t.update = function() {
1262                null !== this._popper && this._popper.scheduleUpdate()
1263            }, t.isWithContent = function() {
1264                return Boolean(this.getTitle())
1265            }, t.addAttachmentClass = function(t) {
1266                g(this.getTipElement()).addClass(Ae + "-" + t)
1267            }, t.getTipElement = function() {
1268                return this.tip = this.tip || g(this.config.template)[0], this.tip
1269            }, t.setContent = function() {
1270                var t = this.getTipElement();
1271                this.setElementContent(g(t.querySelectorAll(Ue)), this.getTitle()), g(t).removeClass(xe + " " + Fe)
1272            }, t.setElementContent = function(t, e) {
1273                "object" != typeof e || !e.nodeType && !e.jquery ? this.config.html ? (this.config.sanitize && (e = Se(e, this.config.whiteList, this.config.sanitizeFn)), t.html(e)) : t.text(e) : this.config.html ? g(e).parent().is(t) || t.empty().append(e) : t.text(g(e).text())
1274            }, t.getTitle = function() {
1275                var t = this.element.getAttribute("data-original-title");
1276                return t || (t = "function" == typeof this.config.title ? this.config.title.call(this.element) : this.config.title), t
1277            }, t._getOffset = function() {
1278                var e = this,
1279                    t = {};
1280                return "function" == typeof this.config.offset ? t.fn = function(t) {
1281                    return t.offsets = l({}, t.offsets, e.config.offset(t.offsets, e.element) || {}), t
1282                } : t.offset = this.config.offset, t
1283            }, t._getContainer = function() {
1284                return !1 === this.config.container ? document.body : _.isElement(this.config.container) ? g(this.config.container) : g(document).find(this.config.container)
1285            }, t._getAttachment = function(t) {
1286                return Pe[t.toUpperCase()]
1287            }, t._setListeners = function() {
1288                var i = this;
1289                this.config.trigger.split(" ").forEach(function(t) {
1290                    if ("click" === t) g(i.element).on(i.constructor.Event.CLICK, i.config.selector, function(t) {
1291                        return i.toggle(t)
1292                    });
1293                    else if (t !== Qe) {
1294                        var e = t === qe ? i.constructor.Event.MOUSEENTER : i.constructor.Event.FOCUSIN,
1295                            n = t === qe ? i.constructor.Event.MOUSELEAVE : i.constructor.Event.FOCUSOUT;
1296                        g(i.element).on(e, i.config.selector, function(t) {
1297                            return i._enter(t)
1298                        }).on(n, i.config.selector, function(t) {
1299                            return i._leave(t)
1300                        })
1301                    }
1302                }), g(this.element).closest(".modal").on("hide.bs.modal", function() {
1303                    i.element && i.hide()
1304                }), this.config.selector ? this.config = l({}, this.config, {
1305                    trigger: "manual",
1306                    selector: ""
1307                }) : this._fixTitle()
1308            }, t._fixTitle = function() {
1309                var t = typeof this.element.getAttribute("data-original-title");
1310                (this.element.getAttribute("title") || "string" !== t) && (this.element.setAttribute("data-original-title", this.element.getAttribute("title") || ""), this.element.setAttribute("title", ""))
1311            }, t._enter = function(t, e) {
1312                var n = this.constructor.DATA_KEY;
1313                (e = e || g(t.currentTarget).data(n)) || (e = new this.constructor(t.currentTarget, this._getDelegateConfig()), g(t.currentTarget).data(n, e)), t && (e._activeTrigger["focusin" === t.type ? Me : qe] = !0), g(e.getTipElement()).hasClass(Fe) || e._hoverState === je ? e._hoverState = je : (clearTimeout(e._timeout), e._hoverState = je, e.config.delay && e.config.delay.show ? e._timeout = setTimeout(function() {
1314                    e._hoverState === je && e.show()
1315                }, e.config.delay.show) : e.show())
1316            }, t._leave = function(t, e) {
1317                var n = this.constructor.DATA_KEY;
1318                (e = e || g(t.currentTarget).data(n)) || (e = new this.constructor(t.currentTarget, this._getDelegateConfig()), g(t.currentTarget).data(n, e)), t && (e._activeTrigger["focusout" === t.type ? Me : qe] = !1), e._isWithActiveTrigger() || (clearTimeout(e._timeout), e._hoverState = He, e.config.delay && e.config.delay.hide ? e._timeout = setTimeout(function() {
1319                    e._hoverState === He && e.hide()
1320                }, e.config.delay.hide) : e.hide())
1321            }, t._isWithActiveTrigger = function() {
1322                for (var t in this._activeTrigger)
1323                    if (this._activeTrigger[t]) return !0;
1324                return !1
1325            }, t._getConfig = function(t) {
1326                var e = g(this.element).data();
1327                return Object.keys(e).forEach(function(t) {
1328                    -1 !== Oe.indexOf(t) && delete e[t]
1329                }), "number" == typeof(t = l({}, this.constructor.Default, e, "object" == typeof t && t ? t : {})).delay && (t.delay = {
1330                    show: t.delay,
1331                    hide: t.delay
1332                }), "number" == typeof t.title && (t.title = t.title.toString()), "number" == typeof t.content && (t.content = t.content.toString()), _.typeCheckConfig(be, t, this.constructor.DefaultType), t.sanitize && (t.template = Se(t.template, t.whiteList, t.sanitizeFn)), t
1333            }, t._getDelegateConfig = function() {
1334                var t = {};
1335                if (this.config)
1336                    for (var e in this.config) this.constructor.Default[e] !== this.config[e] && (t[e] = this.config[e]);
1337                return t
1338            }, t._cleanTipClass = function() {
1339                var t = g(this.getTipElement()),
1340                    e = t.attr("class").match(Ne);
1341                null !== e && e.length && t.removeClass(e.join(""))
1342            }, t._handlePopperPlacementChange = function(t) {
1343                var e = t.instance;
1344                this.tip = e.popper, this._cleanTipClass(), this.addAttachmentClass(this._getAttachment(t.placement))
1345            }, t._fixTransition = function() {
1346                var t = this.getTipElement(),
1347                    e = this.config.animation;
1348                null === t.getAttribute("x-placement") && (g(t).removeClass(xe), this.config.animation = !1, this.hide(), this.show(), this.config.animation = e)
1349            }, i._jQueryInterface = function(n) {
1350                return this.each(function() {
1351                    var t = g(this).data(Ie),
1352                        e = "object" == typeof n && n;
1353                    if ((t || !/dispose|hide/.test(n)) && (t || (t = new i(this, e), g(this).data(Ie, t)), "string" == typeof n)) {
1354                        if ("undefined" == typeof t[n]) throw new TypeError('No method n
1354amed "' + n + '"');
1355                        t[n]()
1356                    }
1357                })
1358            }, s(i, null, [{
1359                key: "VERSION",
1360                get: function() {
1361                    return "4.3.1"
1362                }
1363            }, {
1364                key: "Default",
1365                get: function() {
1366                    return Le
1367                }
1368            }, {
1369                key: "NAME",
1370                get: function() {
1371                    return be
1372                }
1373            }, {
1374                key: "DATA_KEY",
1375                get: function() {
1376                    return Ie
1377                }
1378            }, {
1379                key: "Event",
1380                get: function() {
1381                    return Re
1382                }
1383            }, {
1384                key: "EVENT_KEY",
1385                get: function() {
1386                    return De
1387                }
1388            }, {
1389                key: "DefaultType",
1390                get: function() {
1391                    return ke
1392                }
1393            }]), i
1394        }();
1395    g.fn[be] = Be._jQueryInterface, g.fn[be].Constructor = Be, g.fn[be].noConflict = function() {
1396        return g.fn[be] = we, Be._jQueryInterface
1397    };
1398    var Ve = "popover",
1399        Ye = "bs.popover",
1400        ze = "." + Ye,
1401        Xe = g.fn[Ve],
1402        $e = "bs-popover",
1403        Ge = new RegExp("(^|\\s)" + $e + "\\S+", "g"),
1404        Je = l({}, Be.Default, {
1405            placement: "right",
1406            trigger: "click",
1407            content: "",
1408            template: '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'
1409        }),
1410        Ze = l({}, Be.DefaultType, {
1411            content: "(string|element|function)"
1412        }),
1413        tn = "fade",
1414        en = "show",
1415        nn = ".popover-header",
1416        on = ".popover-body",
1417        rn = {
1418            HIDE: "hide" + ze,
1419            HIDDEN: "hidden" + ze,
1420            SHOW: "show" + ze,
1421            SHOWN: "shown" + ze,
1422            INSERTED: "inserted" + ze,
1423            CLICK: "click" + ze,
1424            FOCUSIN: "focusin" + ze,
1425            FOCUSOUT: "focusout" + ze,
1426            MOUSEENTER: "mouseenter" + ze,
1427            MOUSELEAVE: "mouseleave" + ze
1428        },
1429        sn = function(t) {
1430            var e, n;
1431
1432            function i() {
1433                return t.apply(this, arguments) || this
1434            }
1435            n = t, (e = i).prototype = Object.create(n.prototype), (e.prototype.constructor = e).__proto__ = n;
1436            var o = i.prototype;
1437            return o.isWithContent = function() {
1438                return this.getTitle() || this._getContent()
1439            }, o.addAttachmentClass = function(t) {
1440                g(this.getTipElement()).addClass($e + "-" + t)
1441            }, o.getTipElement = function() {
1442                return this.tip = this.tip || g(this.config.template)[0], this.tip
1443            }, o.setContent = function() {
1444                var t = g(this.getTipElement());
1445                this.setElementContent(t.find(nn), this.getTitle());
1446                var e = this._getContent();
1447                "function" == typeof e && (e = e.call(this.element)), this.setElementContent(t.find(on), e), t.removeClass(tn + " " + en)
1448            }, o._getContent = function() {
1449                return this.element.getAttribute("data-content") || this.config.content
1450            }, o._cleanTipClass = function() {
1451                var t = g(this.getTipElement()),
1452                    e = t.attr("class").match(Ge);
1453                null !== e && 0 < e.length && t.removeClass(e.join(""))
1454            }, i._jQueryInterface = function(n) {
1455                return this.each(function() {
1456                    var t = g(this).data(Ye),
1457                        e = "object" == typeof n ? n : null;
1458                    if ((t || !/dispose|hide/.test(n)) && (t || (t = new i(this, e), g(this).data(Ye, t)), "string" == typeof n)) {
1459                        if ("undefined" == typeof t[n]) throw new TypeError('No method n
1459amed "' + n + '"');
1460                        t[n]()
1461                    }
1462                })
1463            }, s(i, null, [{
1464                key: "VERSION",
1465                get: function() {
1466                    return "4.3.1"
1467                }
1468            }, {
1469                key: "Default",
1470                get: function() {
1471                    return Je
1472                }
1473            }, {
1474                key: "NAME",
1475                get: function() {
1476                    return Ve
1477                }
1478            }, {
1479                key: "DATA_KEY",
1480                get: function() {
1481                    return Ye
1482                }
1483            }, {
1484                key: "Event",
1485                get: function() {
1486                    return rn
1487                }
1488            }, {
1489                key: "EVENT_KEY",
1490                get: function() {
1491                    return ze
1492                }
1493            }, {
1494                key: "DefaultType",
1495                get: function() {
1496                    return Ze
1497                }
1498            }]), i
1499        }(Be);
1500    g.fn[Ve] = sn._jQueryInterface, g.fn[Ve].Constructor = sn, g.fn[Ve].noConflict = function() {
1501        return g.fn[Ve] = Xe, sn._jQueryInterface
1502    };
1503    var an = "scrollspy",
1504        ln = "bs.scrollspy",
1505        cn = "." + ln,
1506        hn = g.fn[an],
1507        un = {
1508            offset: 10,
1509            method: "auto",
1510            target: ""
1511        },
1512        fn = {
1513            offset: "number",
1514            method: "string",
1515            target: "(string|element)"
1516        },
1517        dn = {
1518            ACTIVATE: "activate" + cn,
1519            SCROLL: "scroll" + cn,
1520            LOAD_DATA_API: "load" + cn + ".data-api"
1521        },
1522        gn = "dropdown-item",
1523        _n = "active",
1524        mn = '[data-spy="scroll"]',
1525        pn = ".nav, .list-group",
1526        vn = ".nav-link",
1527        yn = ".nav-item",
1528        En = ".list-group-item",
1529        Cn = ".dropdown",
1530        Tn = ".dropdown-item",
1531        Sn = ".dropdown-toggle",
1532        bn = "offset",
1533        In = "position",
1534        Dn = function() {
1535            function n(t, e) {
1536                var n = this;
1537                this._element = t, this._scrollElement = "BODY" === t.tagName ? window : t, this._config = this._getConfig(e), this._selector = this._config.target + " " + vn + "," + this._config.target + " " + En + "," + this._config.target + " " + Tn, this._offsets = [], this._targets = [], this._activeTarget = null, this._scrollHeight = 0, g(this._scrollElement).on(dn.SCROLL, function(t) {
1538                    return n._process(t)
1539                }), this.refresh(), this._process()
1540            }
1541            var t = n.prototype;
1542            return t.refresh = function() {
1543                var e = this,
1544                    t = this._scrollElement === this._scrollElement.window ? bn : In,
1545                    o = "auto" === this._config.method ? t : this._config.method,
1546                    r = o === In ? this._getScrollTop() : 0;
1547                this._offsets = [], this._targets = [], this._scrollHeight = this._getScrollHeight(), [].slice.call(document.querySelectorAll(this._selector)).map(function(t) {
1548                    var e, n = _.getSelectorFromElement(t);
1549                    if (n && (e = document.querySelector(n)), e) {
1550                        var i = e.getBoundingClientRect();
1551                        if (i.width || i.height) return [g(e)[o]().top + r, n]
1552                    }
1553                    return null
1554                }).filter(function(t) {
1555                    return t
1556                }).sort(function(t, e) {
1557                    return t[0] - e[0]
1558                }
1558).forEach(function(t) {
1559                    e._offsets.push(t[0]), e._targets.push(t[1])
1560                })
1561            }, t.dispose = function() {
1562                g.removeData(this._element, ln), g(this._scrollElement).off(cn), this._element = null, this._scrollElement = null, this._config = null, this._selector = null, this._offsets = null, this._targets = null, this._activeTarget = null, this._scrollHeight = null
1563            }, t._getConfig = function(t) {
1564                if ("string" != typeof(t = l({}, un, "object" == typeof t && t ? t : {})).target) {
1565                    var e = g(t.target).attr("id");
1566                    e || (e = _.getUID(an), g(t.target).attr("id", e)), t.target = "#" + e
1567                }
1568                return _.typeCheckConfig(an, t, fn), t
1569            }, t._getScrollTop = function() {
1570                return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop
1571            }, t._getScrollHeight = function() {
1572                return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight)
1573            }, t._getOffsetHeight = function() {
1574                return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height
1575            }, t._process = function() {
1576                var t = this._getScrollTop() + this._config.offset,
1577                    e = this._getScrollHeight(),
1578                    n = this._config.offset + e - this._getOffsetHeight();
1579                if (this._scrollHeight !== e && this.refresh(), n <= t) {
1580                    var i = this._targets[this._targets.length - 1];
1581                    this._activeTarget !== i && this._activate(i)
1582                } else {
1583                    if (this._activeTarget && t < this._offsets[0] && 0 < this._offsets[0]) return this._activeTarget = null, void this._clear();
1584                    for (var o = this._offsets.length; o--;) {
1585                        this._activeTarget !== this._targets[o] && t >= this._offsets[o] && ("undefined" == typeof this._offsets[o + 1] || t < this._offsets[o + 1]) && this._activate(this._targets[o])
1586                    }
1587                }
1588            }, t._activate = function(e) {
1589                this._activeTarget = e, this._clear();
1590                var t = this._selector.split(",").map(function(t) {
1591                        return t + '[data-target="' + e + '"],' + t + '[href="' + e + '"]'
1592                    }),
1593                    n = g([].slice.call(document.querySelectorAll(t.join(","))));
1594                n.hasClass(gn) ? (n.closest(Cn).find(Sn).addClass(_n), n.addClass(_n)) : (n.addClass(_n), n.parents(pn).prev(vn + ", " + En).addClass(_n), n.parents(pn).prev(yn).children(vn).addClass(_n)), g(this._scrollElement).trigger(dn.ACTIVATE, {
1595                    relatedTarget: e
1596                })
1597            }, t._clear = function() {
1598                [].slice.call(document.querySelectorAll(this._selector)).filter(function(t) {
1599                    return t.classList.contains(_n)
1600                }
1600).forEach(function(t) {
1601                    return t.classList.remove(_n)
1602                })
1603            }, n._jQueryInterface = function(e) {
1604                return this.each(function() {
1605                    var t = g(this).data(ln);
1606                    if (t || (t = new n(this, "object" == typeof e && e), g(this).data(ln, t)), "string" == typeof e) {
1607                        if ("undefined" == typeof t[e]) throw new TypeError('No method named "' + e + '"');
1608                        t[e]()
1609                    }
1610                })
1611            }, s(n, null, [{
1612                key: "VERSION",
1613                get: function() {
1614                    return "4.3.1"
1615                }
1616            }, {
1617                key: "Default",
1618                get: function() {
1619                    return un
1620                }
1621            }]), n
1622        }();
1623    g(window).on(dn.LOAD_DATA_API, function() {
1624        for (var t = [].slice.call(document.querySelectorAll(mn)), e = t.length; e--;) {
1625            var n = g(t[e]);
1626            Dn._jQueryInterface.call(n, n.data())
1627        }
1628    }), g.fn[an] = Dn._jQueryInterface, g.fn[an].Constructor = Dn, g.fn[an].noConflict = function() {
1629        return g.fn[an] = hn, Dn._jQueryInterface
1630    };
1631    var wn = "bs.tab",
1632        An = "." + wn,
1633        Nn = g.fn.tab,
1634        On = {
1635            HIDE: "hide" + An,
1636            HIDDEN: "hidden" + An,
1637            SHOW: "show" + An,
1638            SHOWN: "shown" + An,
1639            CLICK_DATA_API: "click" + An + ".data-api"
1640        },
1641        kn = "dropdown-menu",
1642        Pn = "active",
1643        Ln = "disabled",
1644        jn = "fade",
1645        Hn = "show",
1646        Rn = ".dropdown",
1647        xn = ".nav, .list-group",
1648        Fn = ".active",
1649        Un = "> li > .active",
1650        Wn = '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',
1651        qn = ".dropdown-toggle",
1652        Mn = "> .dropdown-menu .active",
1653        Kn = function() {
1654            function i(t) {
1655                this._element = t
1656            }
1657            var t = i.prototype;
1658            return t.show = function() {
1659                var n = this;
1660                if (!(this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && g(this._element).hasClass(Pn) || g(this._element).hasClass(Ln))) {
1661                    var t, i, e = g(this._element).closest(xn)[0],
1662                        o = _.getSelectorFromElement(this._element);
1663                    if (e) {
1664                        var r = "UL" === e.nodeName || "OL" === e.nodeName ? Un : Fn;
1665                        i = (i = g.makeArray(g(e).find(r)))[i.length - 1]
1666                    }
1667                    var s = g.Event(On.HIDE, {
1668                            relatedTarget: this._element
1669                        }),
1670                        a = g.Event(On.SHOW, {
1671                            relatedTarget: i
1672                        });
1673                    if (i && g(i).trigger(s), g(this._element).trigger(a), !a.isDefaultPrevented() && !s.isDefaultPrevented()) {
1674                        o && (t = document.querySelector(o)), this._activate(this._element, e);
1675                        var l = function() {
1676                            var t = g.Event(On.HIDDEN, {
1677                                    relatedTarget: n._element
1678                                }),
1679                                e = g.Event(On.SHOWN, {
1680                                    relatedTarget: i
1681                                });
1682                            g(i).trigger(t), g(n._element).trigger(e)
1683                        };
1684                        t ? this._activate(t, t.parentNode, l) : l()
1685                    }
1686                }
1687            }, t.dispose = function() {
1688                g.removeData(this._element, wn), this._element = null
1689            }, t._activate = function(t, e, n) {
1690                var i = this,
1691                    o = (!e || "UL" !== e.nodeName && "OL" !== e.nodeName ? g(e).children(Fn) : g(e).find(Un))[0],
1692                    r = n && o && g(o).hasClass(jn),
1693                    s = function() {
1694                        return i._transitionComplete(t, o, n)
1695                    };
1696                if (o && r) {
1697                    var a = _.getTransitionDurationFromElement(o);
1698                    g(o).removeClass(Hn).one(_.TRANSITION_END, s).emulateTransitionEnd(a)
1699                } else s()
1700            }, t._transitionComplete = function(t, e, n) {
1701                if (e) {
1702                    g(e).removeClass(Pn);
1703                    var i = g(e.parentNode).find(Mn)[0];
1704                    i && g(i).removeClass(Pn), "tab" === e.getAttribute("role") && e.setAttribute("aria-selected", !1)
1705                }
1706                if (g(t).addClass(Pn), "tab" === t.getAttribute("role") && t.setAttribute("aria-selected", !0), _.reflow(t), t.classList.contains(jn) && t.classList.add(Hn), t.parentNode && g(t.parentNode).hasClass(kn)) {
1707                    var o = g(t).closest(Rn)[0];
1708                    if (o) {
1709                        var r = [].slice.call(o.querySelectorAll(qn));
1710                        g(r).addClass(Pn)
1711                    }
1712                    t.setAttribute("aria-expanded", !0)
1713                }
1714                n && n()
1715            }, i._jQueryInterface = function(n) {
1716                return this.each(function() {
1717                    var t = g(this),
1718                        e = t.data(wn);
1719                    if (e || (e = new i(this), t.data(wn, e)), "string" == typeof n) {
1720                        if ("undefined" == typeof e[n]) throw new TypeError('No method n
1720amed "' + n + '"');
1721                        e[n]()
1722                    }
1723                })
1724            }, s(i, null, [{
1725                key: "VERSION",
1726                get: function() {
1727                    return "4.3.1"
1728                }
1729            }]), i
1730        }();
1731    g(document).on(On.CLICK_DATA_API, Wn, function(t) {
1732        t.preventDefault(), Kn._jQueryInterface.call(g(this), "show")
1733    }), g.fn.tab = Kn._jQueryInterface, g.fn.tab.Constructor = Kn, g.fn.tab.noConflict = function() {
1734        return g.fn.tab = Nn, Kn._jQueryInterface
1735    };
1736    var Qn = "toast",
1737        Bn = "bs.toast",
1738        Vn = "." + Bn,
1739        Yn = g.fn[Qn],
1740        zn = {
1741            CLICK_DISMISS: "click.dismiss" + Vn,
1742            HIDE: "hide" + Vn,
1743            HIDDEN: "hidden" + Vn,
1744            SHOW: "show" + Vn,
1745            SHOWN: "shown" + Vn
1746        },
1747        Xn = "fade",
1748        $n = "hide",
1749        Gn = "show",
1750        Jn = "showing",
1751        Zn = {
1752            animation: "boolean",
1753            autohide: "boolean",
1754            delay: "number"
1755        },
1756        ti = {
1757            animation: !0,
1758            autohide: !0,
1759            delay: 500
1760        },
1761        ei = '[data-dismiss="toast"]',
1762        ni = function() {
1763            function i(t, e) {
1764                this._element = t, this._config = this._getConfig(e), this._timeout = null, this._setListeners()
1765            }
1766            var t = i.prototype;
1767            return t.show = function() {
1768                var t = this;
1769                g(this._element).trigger(zn.SHOW), this._config.animation && this._element.classList.add(Xn);
1770                var e = function() {
1771                    t._element.classList.remove(Jn), t._element.classList.add(Gn), g(t._element).trigger(zn.SHOWN), t._config.autohide && t.hide()
1772                };
1773                if (this._element.classList.remove($n), this._element.classList.add(Jn), this._config.animation) {
1774                    var n = _.getTransitionDurationFromElement(this._element);
1775                    g(this._element).one(_.TRANSITION_END, e).emulateTransitionEnd(n)
1776                } else e()
1777            }, t.hide = function(t) {
1778                var e = this;
1779                this._element.classList.contains(Gn) && (g(this._element).trigger(zn.HIDE), t ? this._close() : this._timeout = setTimeout(function() {
1780                    e._close()
1781                }, this._config.delay))
1782            }, t.dispose = function() {
1783                clearTimeout(this._timeout), this._timeout = null, this._element.classList.contains(Gn) && this._element.classList.remove(Gn), g(this._element).off(zn.CLICK_DISMISS), g.removeData(this._element, Bn), this._element = null, this._config = null
1784            }, t._getConfig = function(t) {
1785                return t = l({}, ti, g(this._element).data(), "object" == typeof t && t ? t : {}), _.typeCheckConfig(Qn, t, this.constructor.DefaultType), t
1786            }, t._setListeners = function() {
1787                var t = this;
1788                g(this._element).on(zn.CLICK_DISMISS, ei, function() {
1789                    return t.hide(!0)
1790                })
1791            }, t._close = function() {
1792                var t = this,
1793                    e = function() {
1794                        t._element.classList.add($n), g(t._element).trigger(zn.HIDDEN)
1795                    };
1796                if (this._element.classList.remove(Gn), this._config.animation) {
1797                    var n = _.getTransitionDurationFromElement(this._element);
1798                    g(this._element).one(_.TRANSITION_END, e).emulateTransitionEnd(n)
1799                } else e()
1800            }, i._jQueryInterface = function(n) {
1801                return this.each(function() {
1802                    var t = g(this),
1803                        e = t.data(Bn);
1804                    if (e || (e = new i(this, "object" == typeof n && n), t.data(Bn, e)), "string" == typeof n) {
1805                        if ("undefined" == typeof e[n]) throw new TypeError('No method named "' + n + '"');
1806                        e[n](this)
1807                    }
1808                })
1809            }, s(i, null, [{
1810                key: "VERSION",
1811                get: function() {
1812                    return "4.3.1"
1813                }
1814            }, {
1815                key: "DefaultType",
1816                get: function() {
1817                    return Zn
1818                }
1819            }, {
1820                key: "Default",
1821                get: function() {
1822                    return ti
1823                }
1824            }]), i
1825        }();
1826    g.fn[Qn] = ni._jQueryInterface, g.fn[Qn].Constructor = ni, g.fn[Qn].noConflict = function() {
1827            return g.fn[Qn] = Yn, ni._jQueryInterface
1828        },
1829        function() {
1830            if ("undefined" == typeof g) throw new TypeError("Bootstrap's JavaScript requires jQuery. jQuery must be included before Bootstrap's JavaScript.");
1831            var t = g.fn.jquery.split(" ")[0].split(".");
1832            if (t[0] < 2 && t[1] < 9 || 1 === t[0] && 9 === t[1] && t[2] < 1 || 4 <= t[0]) throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")
1833        }(), t.Util = _, t.Alert = p, t.Button = P, t.Carousel = lt, t.Collapse = bt, t.Dropdown = Jt, t.Modal = ve, t.Popover = sn, t.Scrollspy = Dn, t.Tab = Kn, t.Toast = ni, t.Tooltip = Be, Object.defineProperty(t, "__esModule", {
1834            value: !0
1835        })
1836});
1837//# sourceMappingURL=bootstrap.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.