text: /*!
   * Bootstrap v4.0.0 (https://getbootstrap.com)
   * Copyright 2011-2018 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
   */
  !function(t, e){"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.bootstrap = {}, t.jQuery, t.Popper)}(this, function(t, e, n){"use strict"; function i(t, e){for (var n = 0; n < e.length; n++){var i = e[n]; i.enumerable = i.enumerable || !1, i.configurable = !0, "value"in i && (i.writable = !0), Object.defineProperty(t, i.key, i)}}function s(t, e, n){return e && i(t.prototype, e), n && i(t, n), t}function r(){return(r = Object.assign || function(t){for (var e = 1; e < arguments.length; e++){var n = arguments[e]; for (var i in n)Object.prototype.hasOwnProperty.call(n, i) && (t[i] = n[i])}return t}).apply(this, arguments)}e = e && e.hasOwnProperty("default")?e.default:e, n = n && n.hasOwnProperty("default")?n.default:n; var o, a, l, h, c, u, f, d, _, g, p, m, v, E, T, y, C, I, A, b, D, S, w, N, O, k, P = function(t){var e = !1; function n(e){var n = this, s = !1; return t(this).one(i.TRANSITION_END, function(){s = !0}), setTimeout(function(){s || i.triggerTransitionEnd(n)}, e), this}var i = {TRANSITION_END:"bsTransitionEnd", getUID:function(t){do{t += ~~(1e6 * Math.random())}while (document.getElementById(t)); return t}, getSelectorFromElement:function(e){var n, i = e.getAttribute("data-target"); i && "#" !== i || (i = e.getAttribute("href") || ""), "#" === i.charAt(0) && (n = i, i = n = "function" == typeof t.escapeSelector?t.escapeSelector(n).substr(1):n.replace(/(:|\.|\[|\]|,|=|@)/g, "\\$1")); try{return t(document).find(i).length > 0?i:null} catch (t){return null}}, reflow:function(t){return t.offsetHeight}, triggerTransitionEnd:function(n){t(n).trigger(e.end)}, supportsTransitionEnd:function(){return Boolean(e)}, isElement:function(t){return(t[0] || t).nodeType}, typeCheckConfig:function(t, e, n){for (var s in n)if (Object.prototype.hasOwnProperty.call(n, s)){var r = n[s], o = e[s], a = o && i.isElement(o)?"element":(l = o, {}.toString.call(l).match(/\s([a-zA-Z]+)/)[1].toLowerCase()); if (!new RegExp(r).test(a))throw new Error(t.toUpperCase() + ': Option "' + s + '" provided type "' + a + '" but expected type "' + r + '".')}var l}}; return e = ("undefined" == typeof window || !window.QUnit) && {end:"transitionend"}, t.fn.emulateTransitionEnd = n, i.supportsTransitionEnd() && (t.event.special[i.TRANSITION_END] = {bindType:e.end, delegateType:e.end, handle:function(e){if (t(e.target).is(this))return e.handleObj.handler.apply(this, arguments)}}), i}(e), L = (a = "alert", h = "." + (l = "bs.alert"), c = (o = e).fn[a], u = {CLOSE:"close" + h, CLOSED:"closed" + h, CLICK_DATA_API:"click" + h + ".data-api"}, f = "alert", d = "fade", _ = "show", g = function(){function t(t){this._element = t}var e = t.prototype; return e.close = function(t){t = t || this._element; var e = this._getRootElement(t); this._triggerCloseEvent(e).isDefaultPrevented() || this._removeElement(e)}, e.dispose = function(){o.removeData(this._element, l), this._element = null}, e._getRootElement = function(t){var e = P.getSelectorFromElement(t), n = !1; return e && (n = o(e)[0]), n || (n = o(t).closest("." + f)[0]), n}, e._triggerCloseEvent = function(t){var e = o.Event(u.CLOSE); return o(t).trigger(e), e}, e._removeElement = function(t){var e = this; o(t).removeClass(_), P.supportsTransitionEnd() && o(t).hasClass(d)?o(t).one(P.TRANSITION_END, function(n){return e._destroyElement(t, n)}).emulateTransitionEnd(150):this._destroyElement(t)}, e._destroyElement = function(t){o(t).detach().trigger(u.CLOSED).remove()}, t._jQueryInterface = function(e){return this.each(function(){var n = o(this), i = n.data(l); i || (i = new t(this), n.data(l, i)), "close" === e && i[e](this)})}, t._handleDismiss = function(t){return function(e){e && e.preventDefault(), t.close(this)}}, s(t, null, [{key:"VERSION", get:function(){return"4.0.0"}}]), t}(), o(document).on(u.CLICK_DATA_API, '[data-dismiss="alert"]', g._handleDismiss(new g)), o.fn[a] = g._jQueryInterface, o.fn[a].Constructor = g, o.fn[a].noConflict = function(){return o.fn[a] = c, g._jQueryInterface}, g), R = (m = "button", E = "." + (v = "bs.button"), T = ".data-api", y = (p = e).fn[m], C = "active", I = "btn", A = "focus", b = '[data-toggle^="button"]', D = '[data-toggle="buttons"]', S = "input", w = ".active", N = ".btn", O = {CLICK_DATA_API:"click" + E + T, FOCUS_BLUR_DATA_API:"focus" + E + T + " blur" + E + T}, k = function(){function t(t){this._element = t}var e = t.prototype; return e.toggle = function(){var t = !0, e = !0, n = p(this._element).closest(D)[0]; if (n){var i = p(this._element).find(S)[0]; if (i){if ("radio" === i.type)if (i.checked && p(this._element).hasClass(C))t = !1;  else{var s = p(n).find(w)[0]; s && p(s).removeClass(C)}if (t){if (i.hasAttribute("disabled") || n.hasAttribute("disabled") || i.classList.contains("disabled") || n.classList.contains("disabled"))return; i.checked = !p(this._element).hasClass(C), p(i).trigger("change")}i.focus(), e = !1}}e && this._element.setAttribute("aria-pressed", !p(this._element).hasClass(C)), t && p(this._element).toggleClass(C)}, e.dispose = function(){p.removeData(this._element, v), this._element = null}, t._jQueryInterface = function(e){return this.each(function(){var n = p(this).data(v); n || (n = new t(this), p(this).data(v, n)), "toggle" === e && n[e]()})}, s(t, null, [{key:"VERSION", get:function(){return"4.0.0"}}]), t}(), p(document).on(O.CLICK_DATA_API, b, function(t){t.preventDefault(); var e = t.target; p(e).hasClass(I) || (e = p(e).closest(N)), k._jQueryInterface.call(p(e), "toggle")}).on(O.FOCUS_BLUR_DATA_API, b, function(t){var e = p(t.target).closest(N)[0]; p(e).toggleClass(A, /^focus(in)?$/.test(t.type))}), p.fn[m] = k._jQueryInterface, p.fn[m].Constructor = k, p.fn[m].noConflict = function(){return p.fn[m] = y, k._jQueryInterface}, k), j = function(t){var e = "carousel", n = "bs.carousel", i = "." + n, o = t.fn[e], a = {interval:5e3, keyboard:!0, slide:!1, pause:"hover", wrap:!0}, l = {interval:"(number|boolean)", keyboard:"boolean", slide:"(boolean|string)", pause:"(string|boolean)", wrap:"boolean"}, h = "next", c = "prev", u = "left", f = "right", d = {SLIDE:"slide" + i, SLID:"slid" + i, KEYDOWN:"keydown" + i, MOUSEENTER:"mouseenter" + i, MOUSELEAVE:"mouseleave" + i, TOUCHEND:"touchend" + i, LOAD_DATA_API:"load" + i + ".data-api", CLICK_DATA_API:"click" + i + ".data-api"}, _ = "carousel", g = "active", p = "slide", m = "carousel-item-right", v = "carousel-item-left", E = "carousel-item-next", T = "carousel-item-prev", y = {ACTIVE:".active", ACTIVE_ITEM:".active.carousel-item", ITEM:".carousel-item", NEXT_PREV:".carousel-item-next, .carousel-item-prev", INDICATORS:".carousel-indicators", DATA_SLIDE:"[data-slide], [data-slide-to]", DATA_RIDE:'[data-ride="carousel"]'}, C = function(){function o(e, n){this._items = null, this._interval = null, this._activeElement = null, this._isPaused = !1, this._isSliding = !1, this.touchTimeout = null, this._config = this._getConfig(n), this._element = t(e)[0], this._indicatorsElement = t(this._element).find(y.INDICATORS)[0], this._addEventListeners()}var C = o.prototype; return C.next = function(){this._isSliding || this._slide(h)}, C.nextWhenVisible = function(){!document.hidden && t(this._element).is(":visible") && "hidden" !== t(this._element).css("visibility") && this.next()}, C.prev = function(){this._isSliding || this._slide(c)}, C.pause = function(e){e || (this._isPaused = !0), t(this._element).find(y.NEXT_PREV)[0] && P.supportsTransitionEnd() && (P.triggerTransitionEnd(this._element), this.cycle(!0)), clearInterval(this._interval), this._interval = null}, C.cycle = function(t){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))}, C.to = function(e){var n = this; this._activeElement = t(this._element).find(y.ACTIVE_ITEM)[0]; var i = this._getItemIndex(this._activeElement); if (!(e > this._items.length - 1 || e < 0))if (this._isSliding)t(this._element).one(d.SLID, function(){return n.to(e)});  else{if (i === e)return this.pause(), void this.cycle(); var s = e > i?h:c; this._slide(s, this._items[e])}}, C.dispose = function(){t(this._element).off(i), t.removeData(this._element, n), this._items = null, this._config = null, this._element = null, this._interval = null, this._isPaused = null, this._isSliding = null, this._activeElement = null, this._indicatorsElement = null}, C._getConfig = function(t){return t = r({}, a, t), P.typeCheckConfig(e, t, l), t}, C._addEventListeners = function(){var e = this; this._config.keyboard && t(this._element).on(d.KEYDOWN, function(t){return e._keydown(t)}), "hover" === this._config.pause && (t(this._element).on(d.MOUSEENTER, function(t){return e.pause(t)}).on(d.MOUSELEAVE, function(t){return e.cycle(t)}), "ontouchstart"in document.documentElement && t(this._element).on(d.TOUCHEND, function(){e.pause(), e.touchTimeout && clearTimeout(e.touchTimeout), e.touchTimeout = setTimeout(function(t){return e.cycle(t)}, 500 + e._config.interval)}))}, C._keydown = function(t){if (!/input|textarea/i.test(t.target.tagName))switch (t.which){case 37:t.preventDefault(), this.prev(); break; case 39:t.preventDefault(), this.next()}}, C._getItemIndex = function(e){return this._items = t.makeArray(t(e).parent().find(y.ITEM)), this._items.indexOf(e)}, C._getItemByDirection = function(t, e){var n = t === h, i = t === c, s = this._getItemIndex(e), r = this._items.length - 1; if ((i && 0 === s || n && s === r) && !this._config.wrap)return e; var o = (s + (t === c? - 1:1)) % this._items.length; return - 1 === o?this._items[this._items.length - 1]:this._items[o]}, C._triggerSlideEvent = function(e, n){var i = this._getItemIndex(e), s = this._getItemIndex(t(this._element).find(y.ACTIVE_ITEM)[0]), r = t.Event(d.SLIDE, {relatedTarget:e, direction:n, from:s, to:i}); return t(this._element).trigger(r), r}, C._setActiveIndicatorElement = function(e){if (this._indicatorsElement){t(this._indicatorsElement).find(y.ACTIVE).removeClass(g); var n = this._indicatorsElement.children[this._getItemIndex(e)]; n && t(n).addClass(g)}}, C._slide = function(e, n){var i, s, r, o = this, a = t(this._element).find(y.ACTIVE_ITEM)[0], l = this._getItemIndex(a), c = n || a && this._getItemByDirection(e, a), _ = this._getItemIndex(c), C = Boolean(this._interval); if (e === h?(i = v, s = E, r = u):(i = m, s = T, r = f), c && t(c).hasClass(g))this._isSliding = !1;  else if (!this._triggerSlideEvent(c, r).isDefaultPrevented() && a && c){this._isSliding = !0, C && this.pause(), this._setActiveIndicatorElement(c); var I = t.Event(d.SLID, {relatedTarget:c, direction:r, from:l, to:_}); P.supportsTransitionEnd() && t(this._element).hasClass(p)?(t(c).addClass(s), P.reflow(c), t(a).addClass(i), t(c).addClass(i), t(a).one(P.TRANSITION_END, function(){t(c).removeClass(i + " " + s).addClass(g), t(a).removeClass(g + " " + s + " " + i), o._isSliding = !1, setTimeout(function(){return t(o._element).trigger(I)}, 0)}).emulateTransitionEnd(600)):(t(a).removeClass(g), t(c).addClass(g), this._isSliding = !1, t(this._element).trigger(I)), C && this.cycle()}}, o._jQueryInterface = function(e){return this.each(function(){var i = t(this).data(n), s = r({}, a, t(this).data()); "object" == typeof e && (s = r({}, s, e)); var l = "string" == typeof e?e:s.slide; if (i || (i = new o(this, s), t(this).data(n, i)), "number" == typeof e)i.to(e);  else if ("string" == typeof l){if ("undefined" == typeof i[l])throw new TypeError('No method named "' + l + '"'); i[l]()} else s.interval && (i.pause(), i.cycle())})}, o._dataApiClickHandler = function(e){var i = P.getSelectorFromElement(this); if (i){var s = t(i)[0]; if (s && t(s).hasClass(_)){var a = r({}, t(s).data(), t(this).data()), l = this.getAttribute("data-slide-to"); l && (a.interval = !1), o._jQueryInterface.call(t(s), a), l && t(s).data(n).to(l), e.preventDefault()}}}, s(o, null, [{key:"VERSION", get:function(){return"4.0.0"}}, {key:"Default", get:function(){return a}}]), o}(); return t(document).on(d.CLICK_DATA_API, y.DATA_SLIDE, C._dataApiClickHandler), t(window).on(d.LOAD_DATA_API, function(){t(y.DATA_RIDE).each(function(){var e = t(this); C._jQueryInterface.call(e, e.data())})}), t.fn[e] = C._jQueryInterface, t.fn[e].Constructor = C, t.fn[e].noConflict = function(){return t.fn[e] = o, C._jQueryInterface}, C}(e), H = function(t){var e = "collapse", n = "bs.collapse", i = "." + n, o = t.fn[e], a = {toggle:!0, parent:""}, l = {toggle:"boolean", parent:"(string|element)"}, h = {SHOW:"show" + i, SHOWN:"shown" + i, HIDE:"hide" + i, HIDDEN:"hidden" + i, CLICK_DATA_API:"click" + i + ".data-api"}, c = "show", u = "collapse", f = "collapsing", d = "collapsed", _ = "width", g = "height", p = {ACTIVES:".show, .collapsing", DATA_TOGGLE:'[data-toggle="collapse"]'}, m = function(){function i(e, n){this._isTransitioning = !1, this._element = e, this._config = this._getConfig(n), this._triggerArray = t.makeArray(t('[data-toggle="collapse"][href="#' + e.id + '"],[data-toggle="collapse"][data-target="#' + e.id + '"]')); for (var i = t(p.DATA_TOGGLE), s = 0; s < i.length; s++){var r = i[s], o = P.getSelectorFromElement(r); null !== o && t(o).filter(e).length > 0 && (this._selector = o, this._triggerArray.push(r))}this._parent = this._config.parent?this._getParent():null, this._config.parent || this._addAriaAndCollapsedClass(this._element, this._triggerArray), this._config.toggle && this.toggle()}var o = i.prototype; return o.toggle = function(){t(this._element).hasClass(c)?this.hide():this.show()}, o.show = function(){var e, s, r = this; if (!this._isTransitioning && !t(this._element).hasClass(c) && (this._parent && 0 === (e = t.makeArray(t(this._parent).find(p.ACTIVES).filter('[data-parent="' + this._config.parent + '"]'))).length && (e = null), !(e && (s = t(e).not(this._selector).data(n)) && s._isTransitioning))){var o = t.Event(h.SHOW); if (t(this._element).trigger(o), !o.isDefaultPrevented()){e && (i._jQueryInterface.call(t(e).not(this._selector), "hide"), s || t(e).data(n, null)); var a = this._getDimension(); t(this._element).removeClass(u).addClass(f), this._element.style[a] = 0, this._triggerArray.length > 0 && t(this._triggerArray).removeClass(d).attr("aria-expanded", !0), this.setTransitioning(!0); var l = function(){t(r._element).removeClass(f).addClass(u).addClass(c), r._element.style[a] = "", r.setTransitioning(!1), t(r._element).trigger(h.SHOWN)}; if (P.supportsTransitionEnd()){var _ = "scroll" + (a[0].toUpperCase() + a.slice(1)); t(this._element).one(P.TRANSITION_END, l).emulateTransitionEnd(600), this._element.style[a] = this._element[_] + "px"} else l()}}}, o.hide = function(){var e = this; if (!this._isTransitioning && t(this._element).hasClass(c)){var n = t.Event(h.HIDE); if (t(this._element).trigger(n), !n.isDefaultPrevented()){var i = this._getDimension(); if (this._element.style[i] = this._element.getBoundingClientRect()[i] + "px", P.reflow(this._element), t(this._element).addClass(f).removeClass(u).removeClass(c), this._triggerArray.length > 0)for (var s = 0; s < this._triggerArray.length; s++){var r = this._triggerArray[s], o = P.getSelectorFromElement(r); if (null !== o)t(o).hasClass(c) || t(r).addClass(d).attr("aria-expanded", !1)}this.setTransitioning(!0); var a = function(){e.setTransitioning(!1), t(e._element).removeClass(f).addClass(u).trigger(h.HIDDEN)}; this._element.style[i] = "", P.supportsTransitionEnd()?t(this._element).one(P.TRANSITION_END, a).emulateTransitionEnd(600):a()}}}, o.setTransitioning = function(t){this._isTransitioning = t}, o.dispose = function(){t.removeData(this._element, n), this._config = null, this._parent = null, this._element = null, this._triggerArray = null, this._isTransitioning = null}, o._getConfig = function(t){return(t = r({}, a, t)).toggle = Boolean(t.toggle), P.typeCheckConfig(e, t, l), t}, o._getDimension = function(){return t(this._element).hasClass(_)?_:g}, o._getParent = function(){var e = this, n = null; P.isElement(this._config.parent)?(n = this._config.parent, "undefined" != typeof this._config.parent.jquery && (n = this._config.parent[0])):n = t(this._config.parent)[0]; var s = '[data-toggle="collapse"][data-parent="' + this._config.parent + '"]'; return t(n).find(s).each(function(t, n){e._addAriaAndCollapsedClass(i._getTargetFromElement(n), [n])}), n}, o._addAriaAndCollapsedClass = function(e, n){if (e){var i = t(e).hasClass(c); n.length > 0 && t(n).toggleClass(d, !i).attr("aria-expanded", i)}}, i._getTargetFromElement = function(e){var n = P.getSelectorFromElement(e); return n?t(n)[0]:null}, i._jQueryInterface = function(e){return this.each(function(){var s = t(this), o = s.data(n), l = r({}, a, s.data(), "object" == typeof e && e); if (!o && l.toggle && /show|hide/.test(e) && (l.toggle = !1), o || (o = new i(this, l), s.data(n, o)), "string" == typeof e){if ("undefined" == typeof o[e])throw new TypeError('No method named "' + e + '"'); o[e]()}})}, s(i, null, [{key:"VERSION", get:function(){return"4.0.0"}}, {key:"Default", get:function(){return a}}]), i}(); return t(document).on(h.CLICK_DATA_API, p.DATA_TOGGLE, function(e){"A" === e.currentTarget.tagName && e.preventDefault(); var i = t(this), s = P.getSelectorFromElement(this); t(s).each(function(){var e = t(this), s = e.data(n)?"toggle":i.data(); m._jQueryInterface.call(e, s)})}), t.fn[e] = m._jQueryInterface, t.fn[e].Constructor = m, t.fn[e].noConflict = function(){return t.fn[e] = o, m._jQueryInterface}, m}(e), W = function(t){var e = "dropdown", i = "bs.dropdown", o = "." + i, a = ".data-api", l = t.fn[e], h = new RegExp("38|40|27"), c = {HIDE:"hide" + o, HIDDEN:"hidden" + o, SHOW:"show" + o, SHOWN:"shown" + o, CLICK:"click" + o, CLICK_DATA_API:"click" + o + a, KEYDOWN_DATA_API:"keydown" + o + a, KEYUP_DATA_API:"keyup" + o + a}, u = "disabled", f = "show", d = "dropup", _ = "dropright", g = "dropleft", p = "dropdown-menu-right", m = "dropdown-menu-left", v = "position-static", E = '[data-toggle="dropdown"]', T = ".dropdown form", y = ".dropdown-menu", C = ".navbar-nav", I = ".dropdown-menu .dropdown-item:not(.disabled)", A = "top-start", b = "top-end", D = "bottom-start", S = "bottom-end", w = "right-start", N = "left-start", O = {offset:0, flip:!0, boundary:"scrollParent"}, k = {offset:"(number|string|function)", flip:"boolean", boundary:"(string|element)"}, L = function(){function a(t, e){this._element = t, this._popper = null, this._config = this._getConfig(e), this._menu = this._getMenuElement(), this._inNavbar = this._detectNavbar(), this._addEventListeners()}var l = a.prototype; return l.toggle = function(){if (!this._element.disabled && !t(this._element).hasClass(u)){var e = a._getParentFromElement(this._element), i = t(this._menu).hasClass(f); if (a._clearMenus(), !i){var s = {relatedTarget:this._element}, r = t.Event(c.SHOW, s); if (t(e).trigger(r), !r.isDefaultPrevented()){if (!this._inNavbar){if ("undefined" == typeof n)throw new TypeError("Bootstrap dropdown require Popper.js (https://popper.js.org)"); var o = this._element; t(e).hasClass(d) && (t(this._menu).hasClass(m) || t(this._menu).hasClass(p)) && (o = e), "scrollParent" !== this._config.boundary && t(e).addClass(v), this._popper = new n(o, this._menu, this._getPopperConfig())}"ontouchstart"in document.documentElement && 0 === t(e).closest(C).length && t("body").children().on("mouseover", null, t.noop), this._element.focus(), this._element.setAttribute("aria-expanded", !0), t(this._menu).toggleClass(f), t(e).toggleClass(f).trigger(t.Event(c.SHOWN, s))}}}}, l.dispose = function(){t.removeData(this._element, i), t(this._element).off(o), this._element = null, this._menu = null, null !== this._popper && (this._popper.destroy(), this._popper = null)}, l.update = function(){this._inNavbar = this._detectNavbar(), null !== this._popper && this._popper.scheduleUpdate()}, l._addEventListeners = function(){var e = this; t(this._element).on(c.CLICK, function(t){t.preventDefault(), t.stopPropagation(), e.toggle()})}, l._getConfig = function(n){return n = r({}, this.constructor.Default, t(this._element).data(), n), P.typeCheckConfig(e, n, this.constructor.DefaultType), n}, l._getMenuElement = function(){if (!this._menu){var e = a._getParentFromElement(this._element); this._menu = t(e).find(y)[0]}return this._menu}, l._getPlacement = function(){var e = t(this._element).parent(), n = D; return e.hasClass(d)?(n = A, t(this._menu).hasClass(p) && (n = b)):e.hasClass(_)?n = w:e.hasClass(g)?n = N:t(this._menu).hasClass(p) && (n = S), n}, l._detectNavbar = function(){return t(this._element).closest(".navbar").length > 0}, l._getPopperConfig = function(){var t = this, e = {}; return"function" == typeof this._config.offset?e.fn = function(e){return e.offsets = r({}, e.offsets, t._config.offset(e.offsets) || {}), e}:e.offset = this._config.offset, {placement:this._getPlacement(), modifiers:{offset:e, flip:{enabled:this._config.flip}, preventOverflow:{boundariesElement:this._config.boundary}}}}, a._jQueryInterface = function(e){return this.each(function(){var n = t(this).data(i); if (n || (n = new a(this, "object" == typeof e?e:null), t(this).data(i, n)), "string" == typeof e){if ("undefined" == typeof n[e])throw new TypeError('No method named "' + e + '"'); n[e]()}})}, a._clearMenus = function(e){if (!e || 3 !== e.which && ("keyup" !== e.type || 9 === e.which))for (var n = t.makeArray(t(E)), s = 0; s < n.length; s++){var r = a._getParentFromElement(n[s]), o = t(n[s]).data(i), l = {relatedTarget:n[s]}; if (o){var h = o._menu; if (t(r).hasClass(f) && !(e && ("click" === e.type && /input|textarea/i.test(e.target.tagName) || "keyup" === e.type && 9 === e.which) && t.contains(r, e.target))){var u = t.Event(c.HIDE, l); t(r).trigger(u), u.isDefaultPrevented() || ("ontouchstart"in document.documentElement && t("body").children().off("mouseover", null, t.noop), n[s].setAttribute("aria-expanded", "false"), t(h).removeClass(f), t(r).removeClass(f).trigger(t.Event(c.HIDDEN, l)))}}}}, a._getParentFromElement = function(e){var n, i = P.getSelectorFromElement(e); return i && (n = t(i)[0]), n || e.parentNode}, a._dataApiKeydownHandler = function(e){if ((/input|textarea/i.test(e.target.tagName)?!(32 === e.which || 27 !== e.which && (40 !== e.which && 38 !== e.which || t(e.target).closest(y).length)):h.test(e.which)) && (e.preventDefault(), e.stopPropagation(), !this.disabled && !t(this).hasClass(u))){var n = a._getParentFromElement(this), i = t(n).hasClass(f); if ((i || 27 === e.which && 32 === e.which) && (!i || 27 !== e.which && 32 !== e.which)){var s = t(n).find(I).get(); if (0 !== s.length){var r = s.indexOf(e.target); 38 === e.which && r > 0 && r--, 40 === e.which && r < s.length - 1 && r++, r < 0 && (r = 0), s[r].focus()}} else{if (27 === e.which){var o = t(n).find(E)[0]; t(o).trigger("focus")}t(this).trigger("click")}}}, s(a, null, [{key:"VERSION", get:function(){return"4.0.0"}}, {key:"Default", get:function(){return O}}, {key:"DefaultType", get:function(){return k}}]), a}(); return t(document).on(c.KEYDOWN_DATA_API, E, L._dataApiKeydownHandler).on(c.KEYDOWN_DATA_API, y, L._dataApiKeydownHandler).on(c.CLICK_DATA_API + " " + c.KEYUP_DATA_API, L._clearMenus).on(c.CLICK_DATA_API, E, function(e){e.preventDefault(), e.stopPropagation(), L._jQueryInterface.call(t(this), "toggle")}).on(c.CLICK_DATA_API, T, function(t){t.stopPropagation()}), t.fn[e] = L._jQueryInterface, t.fn[e].Constructor = L, t.fn[e].noConflict = function(){return t.fn[e] = l, L._jQueryInterface}, L}(e), M = function(t){var e = "modal", n = "bs.modal", i = "." + n, o = t.fn.modal, a = {backdrop:!0, keyboard:!0, focus:!0, show:!0}, l = {backdrop:"(boolean|string)", keyboard:"boolean", focus:"boolean", show:"boolean"}, h = {HIDE:"hide" + i, HIDDEN:"hidden" + i, SHOW:"show" + i, SHOWN:"shown" + i, FOCUSIN:"focusin" + i, RESIZE:"resize" + i, CLICK_DISMISS:"click.dismiss" + i, KEYDOWN_DISMISS:"keydown.dismiss" + i, MOUSEUP_DISMISS:"mouseup.dismiss" + i, MOUSEDOWN_DISMISS:"mousedown.dismiss" + i, CLICK_DATA_API:"click" + i + ".data-api"}, c = "modal-scrollbar-measure", u = "modal-backdrop", f = "modal-open", d = "fade", _ = "show", g = {DIALOG:".modal-dialog", DATA_TOGGLE:'[data-toggle="modal"]', DATA_DISMISS:'[data-dismiss="modal"]', FIXED_CONTENT:".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", STICKY_CONTENT:".sticky-top", NAVBAR_TOGGLER:".navbar-toggler"}, p = function(){function o(e, n){this._config = this._getConfig(n), this._element = e, this._dialog = t(e).find(g.DIALOG)[0], this._backdrop = null, this._isShown = !1, this._isBodyOverflowing = !1, this._ignoreBackdropClick = !1, this._originalBodyPadding = 0, this._scrollbarWidth = 0}var p = o.prototype; return p.toggle = function(t){return this._isShown?this.hide():this.show(t)}, p.show = function(e){var n = this; if (!this._isTransitioning && !this._isShown){P.supportsTransitionEnd() && t(this._element).hasClass(d) && (this._isTransitioning = !0); var i = t.Event(h.SHOW, {relatedTarget:e}); t(this._element).trigger(i), this._isShown || i.isDefaultPrevented() || (this._isShown = !0, this._checkScrollbar(), this._setScrollbar(), this._adjustDialog(), t(document.body).addClass(f), this._setEscapeEvent(), this._setResizeEvent(), t(this._element).on(h.CLICK_DISMISS, g.DATA_DISMISS, function(t){return n.hide(t)}), t(this._dialog).on(h.MOUSEDOWN_DISMISS, function(){t(n._element).one(h.MOUSEUP_DISMISS, function(e){t(e.target).is(n._element) && (n._ignoreBackdropClick = !0)})}), this._showBackdrop(function(){return n._showElement(e)}))}}, p.hide = function(e){var n = this; if (e && e.preventDefault(), !this._isTransitioning && this._isShown){var i = t.Event(h.HIDE); if (t(this._element).trigger(i), this._isShown && !i.isDefaultPrevented()){this._isShown = !1; var s = P.supportsTransitionEnd() && t(this._element).hasClass(d); s && (this._isTransitioning = !0), this._setEscapeEvent(), this._setResizeEvent(), t(document).off(h.FOCUSIN), t(this._element).removeClass(_), t(this._element).off(h.CLICK_DISMISS), t(this._dialog).off(h.MOUSEDOWN_DISMISS), s?t(this._element).one(P.TRANSITION_END, function(t){return n._hideModal(t)}).emulateTransitionEnd(300):this._hideModal()}}}, p.dispose = function(){t.removeData(this._element, n), t(window, document, this._element, this._backdrop).off(i), this._config = null, this._element = null, this._dialog = null, this._backdrop = null, this._isShown = null, this._isBodyOverflowing = null, this._ignoreBackdropClick = null, this._scrollbarWidth = null}, p.handleUpdate = function(){this._adjustDialog()}, p._getConfig = function(t){return t = r({}, a, t), P.typeCheckConfig(e, t, l), t}, p._showElement = function(e){var n = this, i = P.supportsTransitionEnd() && t(this._element).hasClass(d); 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.scrollTop = 0, i && P.reflow(this._element), t(this._element).addClass(_), this._config.focus && this._enforceFocus(); var s = t.Event(h.SHOWN, {relatedTarget:e}), r = function(){n._config.focus && n._element.focus(), n._isTransitioning = !1, t(n._element).trigger(s)}; i?t(this._dialog).one(P.TRANSITION_END, r).emulateTransitionEnd(300):r()}, p._enforceFocus = function(){var e = this; t(document).off(h.FOCUSIN).on(h.FOCUSIN, function(n){document !== n.target && e._element !== n.target && 0 === t(e._element).has(n.target).length && e._element.focus()})}, p._setEscapeEvent = function(){var e = this; this._isShown && this._config.keyboard?t(this._element).on(h.KEYDOWN_DISMISS, function(t){27 === t.which && (t.preventDefault(), e.hide())}):this._isShown || t(this._element).off(h.KEYDOWN_DISMISS)}, p._setResizeEvent = function(){var e = this; this._isShown?t(window).on(h.RESIZE, function(t){return e.handleUpdate(t)}):t(window).off(h.RESIZE)}, p._hideModal = function(){var e = this; this._element.style.display = "none", this._element.setAttribute("aria-hidden", !0), this._isTransitioning = !1, this._showBackdrop(function(){t(document.body).removeClass(f), e._resetAdjustments(), e._resetScrollbar(), t(e._element).trigger(h.HIDDEN)})}, p._removeBackdrop = function(){this._backdrop && (t(this._backdrop).remove(), this._backdrop = null)}, p._showBackdrop = function(e){var n = this, i = t(this._element).hasClass(d)?d:""; if (this._isShown && this._config.backdrop){var s = P.supportsTransitionEnd() && i; if (this._backdrop = document.createElement("div"), this._backdrop.className = u, i && t(this._backdrop).addClass(i), t(this._backdrop).appendTo(document.body), t(this._element).on(h.CLICK_DISMISS, function(t){n._ignoreBackdropClick?n._ignoreBackdropClick = !1:t.target === t.currentTarget && ("static" === n._config.backdrop?n._element.focus():n.hide())}), s && P.reflow(this._backdrop), t(this._backdrop).addClass(_), !e)return; if (!s)return void e(); t(this._backdrop).one(P.TRANSITION_END, e).emulateTransitionEnd(150)} else if (!this._isShown && this._backdrop){t(this._backdrop).removeClass(_); var r = function(){n._removeBackdrop(), e && e()}; P.supportsTransitionEnd() && t(this._element).hasClass(d)?t(this._backdrop).one(P.TRANSITION_END, r).emulateTransitionEnd(150):r()} else e && e()}, p._adjustDialog = function(){var t = this._element.scrollHeight > document.documentElement.clientHeight; !this._isBodyOverflowing && t && (this._element.style.paddingLeft = this._scrollbarWidth + "px"), this._isBodyOverflowing && !t && (this._element.style.paddingRight = this._scrollbarWidth + "px")}, p._resetAdjustments = function(){this._element.style.paddingLeft = "", this._element.style.paddingRight = ""}, p._checkScrollbar = function(){var t = document.body.getBoundingClientRect(); this._isBodyOverflowing = t.left + t.right < window.innerWidth, this._scrollbarWidth = this._getScrollbarWidth()}, p._setScrollbar = function(){var e = this; if (this._isBodyOverflowing){t(g.FIXED_CONTENT).each(function(n, i){var s = t(i)[0].style.paddingRight, r = t(i).css("padding-right"); t(i).data("padding-right", s).css("padding-right", parseFloat(r) + e._scrollbarWidth + "px")}), t(g.STICKY_CONTENT).each(function(n, i){var s = t(i)[0].style.marginRight, r = t(i).css("margin-right"); t(i).data("margin-right", s).css("margin-right", parseFloat(r) - e._scrollbarWidth + "px")}), t(g.NAVBAR_TOGGLER).each(function(n, i){var s = t(i)[0].style.marginRight, r = t(i).css("margin-right"); t(i).data("margin-right", s).css("margin-right", parseFloat(r) + e._scrollbarWidth + "px")}); var n = document.body.style.paddingRight, i = t("body").css("padding-right"); t("body").data("padding-right", n).css("padding-right", parseFloat(i) + this._scrollbarWidth + "px")}}, p._resetScrollbar = function(){t(g.FIXED_CONTENT).each(function(e, n){var i = t(n).data("padding-right"); "undefined" != typeof i && t(n).css("padding-right", i).removeData("padding-right")}), t(g.STICKY_CONTENT + ", " + g.NAVBAR_TOGGLER).each(function(e, n){var i = t(n).data("margin-right"); "undefined" != typeof i && t(n).css("margin-right", i).removeData("margin-right")}); var e = t("body").data("padding-right"); "undefined" != typeof e && t("body").css("padding-right", e).removeData("padding-right")}, p._getScrollbarWidth = function(){var t = document.createElement("div"); t.className = c, document.body.appendChild(t); var e = t.getBoundingClientRect().width - t.clientWidth; return document.body.removeChild(t), e}, o._jQueryInterface = function(e, i){return this.each(function(){var s = t(this).data(n), a = r({}, o.Default, t(this).data(), "object" == typeof e && e); if (s || (s = new o(this, a), t(this).data(n, s)), "string" == typeof e){if ("undefined" == typeof s[e])throw new TypeError('No method named "' + e + '"'); s[e](i)} else a.show && s.show(i)})}, s(o, null, [{key:"VERSION", get:function(){return"4.0.0"}}, {key:"Default", get:function(){return a}}]), o}(); return t(document).on(h.CLICK_DATA_API, g.DATA_TOGGLE, function(e){var i, s = this, o = P.getSelectorFromElement(this); o && (i = t(o)[0]); var a = t(i).data(n)?"toggle":r({}, t(i).data(), t(this).data()); "A" !== this.tagName && "AREA" !== this.tagName || e.preventDefault(); var l = t(i).one(h.SHOW, function(e){e.isDefaultPrevented() || l.one(h.HIDDEN, function(){t(s).is(":visible") && s.focus()})}); p._jQueryInterface.call(t(i), a, this)}), t.fn.modal = p._jQueryInterface, t.fn.modal.Constructor = p, t.fn.modal.noConflict = function(){return t.fn.modal = o, p._jQueryInterface}, p}(e), U = function(t){var e = "tooltip", i = "bs.tooltip", o = "." + i, a = t.fn[e], l = new RegExp("(^|\\s)bs-tooltip\\S+", "g"), h = {animation:"boolean", template:"string", title:"(string|element|function)", trigger:"string", delay:"(number|object)", html:"boolean", selector:"(string|boolean)", placement:"(string|function)", offset:"(number|string)", container:"(string|element|boolean)", fallbackPlacement:"(string|array)", boundary:"(string|element)"}, c = {AUTO:"auto", TOP:"top", RIGHT:"right", BOTTOM:"bottom", LEFT:"left"}, u = {animation:!0, template:'<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>', trigger:"hover focus", title:"", delay:0, html:!1, selector:!1, placement:"top", offset:0, container:!1, fallbackPlacement:"flip", boundary:"scrollParent"}, f = "show", d = "out", _ = {HIDE:"hide" + o, HIDDEN:"hidden" + o, SHOW:"show" + o, SHOWN:"shown" + o, INSERTED:"inserted" + o, CLICK:"click" + o, FOCUSIN:"focusin" + o, FOCUSOUT:"focusout" + o, MOUSEENTER:"mouseenter" + o, MOUSELEAVE:"mouseleave" + o}, g = "fade", p = "show", m = ".tooltip-inner", v = ".arrow", E = "hover", T = "focus", y = "click", C = "manual", I = function(){function a(t, e){if ("undefined" == typeof n)throw new TypeError("Bootstrap tooltips require Popper.js (https://popper.js.org)"); 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()}var I = a.prototype; return I.enable = function(){this._isEnabled = !0}, I.disable = function(){this._isEnabled = !1}, I.toggleEnabled = function(){this._isEnabled = !this._isEnabled}, I.toggle = function(e){if (this._isEnabled)if (e){var n = this.constructor.DATA_KEY, i = t(e.currentTarget).data(n); i || (i = new this.constructor(e.currentTarget, this._getDelegateConfig()), t(e.currentTarget).data(n, i)), i._activeTrigger.click = !i._activeTrigger.click, i._isWithActiveTrigger()?i._enter(null, i):i._leave(null, i)} else{if (t(this.getTipElement()).hasClass(p))return void this._leave(null, this); this._enter(null, this)}}, I.dispose = function(){clearTimeout(this._timeout), t.removeData(this.element, this.constructor.DATA_KEY), t(this.element).off(this.constructor.EVENT_KEY), t(this.element).closest(".modal").off("hide.bs.modal"), this.tip && t(this.tip).remove(), this._isEnabled = null, this._timeout = null, this._hoverState = null, this._activeTrigger = null, null !== this._popper && this._popper.destroy(), this._popper = null, this.element = null, this.config = null, this.tip = null}, I.show = function(){var e = this; if ("none" === t(this.element).css("display"))throw new Error("Please use show on visible elements"); var i = t.Event(this.constructor.Event.SHOW); if (this.isWithContent() && this._isEnabled){t(this.element).trigger(i); var s = t.contains(this.element.ownerDocument.documentElement, this.element); if (i.isDefaultPrevented() || !s)return; var r = this.getTipElement(), o = P.getUID(this.constructor.NAME); r.setAttribute("id", o), this.element.setAttribute("aria-describedby", o), this.setContent(), this.config.animation && t(r).addClass(g); var l = "function" == typeof this.config.placement?this.config.placement.call(this, r, this.element):this.config.placement, h = this._getAttachment(l); this.addAttachmentClass(h); var c = !1 === this.config.container?document.body:t(this.config.container); t(r).data(this.constructor.DATA_KEY, this), t.contains(this.element.ownerDocument.documentElement, this.tip) || t(r).appendTo(c), t(this.element).trigger(this.constructor.Event.INSERTED), this._popper = new n(this.element, r, {placement:h, modifiers:{offset:{offset:this.config.offset}, flip:{behavior:this.config.fallbackPlacement}, arrow:{element:v}, preventOverflow:{boundariesElement:this.config.boundary}}, onCreate:function(t){t.originalPlacement !== t.placement && e._handlePopperPlacementChange(t)}, onUpdate:function(t){e._handlePopperPlacementChange(t)}}), t(r).addClass(p), "ontouchstart"in document.documentElement && t("body").children().on("mouseover", null, t.noop); var u = function(){e.config.animation && e._fixTransition(); var n = e._hoverState; e._hoverState = null, t(e.element).trigger(e.constructor.Event.SHOWN), n === d && e._leave(null, e)}; P.supportsTransitionEnd() && t(this.tip).hasClass(g)?t(this.tip).one(P.TRANSITION_END, u).emulateTransitionEnd(a._TRANSITION_DURATION):u()}}, I.hide = function(e){var n = this, i = this.getTipElement(), s = t.Event(this.constructor.Event.HIDE), r = function(){n._hoverState !== f && i.parentNode && i.parentNode.removeChild(i), n._cleanTipClass(), n.element.removeAttribute("aria-describedby"), t(n.element).trigger(n.constructor.Event.HIDDEN), null !== n._popper && n._popper.destroy(), e && e()}; t(this.element).trigger(s), s.isDefaultPrevented() || (t(i).removeClass(p), "ontouchstart"in document.documentElement && t("body").children().off("mouseover", null, t.noop), this._activeTrigger[y] = !1, this._activeTrigger[T] = !1, this._activeTrigger[E] = !1, P.supportsTransitionEnd() && t(this.tip).hasClass(g)?t(i).one(P.TRANSITION_END, r).emulateTransitionEnd(150):r(), this._hoverState = "")}, I.update = function(){null !== this._popper && this._popper.scheduleUpdate()}, I.isWithContent = function(){return Boolean(this.getTitle())}, I.addAttachmentClass = function(e){t(this.getTipElement()).addClass("bs-tooltip-" + e)}, I.getTipElement = function(){return this.tip = this.tip || t(this.config.template)[0], this.tip}, I.setContent = function(){var e = t(this.getTipElement()); this.setElementContent(e.find(m), this.getTitle()), e.removeClass(g + " " + p)}, I.setElementContent = function(e, n){var i = this.config.html; "object" == typeof n && (n.nodeType || n.jquery)?i?t(n).parent().is(e) || e.empty().append(n):e.text(t(n).text()):e[i?"html":"text"](n)}, I.getTitle = function(){var t = this.element.getAttribute("data-original-title"); return t || (t = "function" == typeof this.config.title?this.config.title.call(this.element):this.config.title), t}, I._getAttachment = function(t){return c[t.toUpperCase()]}, I._setListeners = function(){var e = this; this.config.trigger.split(" ").forEach(function(n){if ("click" === n)t(e.element).on(e.constructor.Event.CLICK, e.config.selector, function(t){return e.toggle(t)});  else if (n !== C){var i = n === E?e.constructor.Event.MOUSEENTER:e.constructor.Event.FOCUSIN, s = n === E?e.constructor.Event.MOUSELEAVE:e.constructor.Event.FOCUSOUT; t(e.element).on(i, e.config.selector, function(t){return e._enter(t)}).on(s, e.config.selector, function(t){return e._leave(t)})}t(e.element).closest(".modal").on("hide.bs.modal", function(){return e.hide()})}), this.config.selector?this.config = r({}, this.config, {trigger:"manual", selector:""}):this._fixTitle()}, I._fixTitle = function(){var t = typeof this.element.getAttribute("data-original-title"); (this.element.getAttribute("title") || "string" !== t) && (this.element.setAttribute("data-original-title", this.element.getAttribute("title") || ""), this.element.setAttribute("title", ""))}, I._enter = function(e, n){var i = this.constructor.DATA_KEY; (n = n || t(e.currentTarget).data(i)) || (n = new this.constructor(e.currentTarget, this._getDelegateConfig()), t(e.currentTarget).data(i, n)), e && (n._activeTrigger["focusin" === e.type?T:E] = !0), t(n.getTipElement()).hasClass(p) || n._hoverState === f?n._hoverState = f:(clearTimeout(n._timeout), n._hoverState = f, n.config.delay && n.config.delay.show?n._timeout = setTimeout(function(){n._hoverState === f && n.show()}, n.config.delay.show):n.show())}, I._leave = function(e, n){var i = this.constructor.DATA_KEY; (n = n || t(e.currentTarget).data(i)) || (n = new this.constructor(e.currentTarget, this._getDelegateConfig()), t(e.currentTarget).data(i, n)), e && (n._activeTrigger["focusout" === e.type?T:E] = !1), n._isWithActiveTrigger() || (clearTimeout(n._timeout), n._hoverState = d, n.config.delay && n.config.delay.hide?n._timeout = setTimeout(function(){n._hoverState === d && n.hide()}, n.config.delay.hide):n.hide())}, I._isWithActiveTrigger = function(){for (var t in this._activeTrigger)if (this._activeTrigger[t])return!0; return!1}, I._getConfig = function(n){return"number" == typeof (n = r({}, this.constructor.Default, t(this.element).data(), n)).delay && (n.delay = {show:n.delay, hide:n.delay}), "number" == typeof n.title && (n.title = n.title.toString()), "number" == typeof n.content && (n.content = n.content.toString()), P.typeCheckConfig(e, n, this.constructor.DefaultType), n}, I._getDelegateConfig = function(){var t = {}; if (this.config)for (var e in this.config)this.constructor.Default[e] !== this.config[e] && (t[e] = this.config[e]); return t}, I._cleanTipClass = function(){var e = t(this.getTipElement()), n = e.attr("class").match(l); null !== n && n.length > 0 && e.removeClass(n.join(""))}, I._handlePopperPlacementChange = function(t){this._cleanTipClass(), this.addAttachmentClass(this._getAttachment(t.placement))}, I._fixTransition = function(){var e = this.getTipElement(), n = this.config.animation; null === e.getAttribute("x-placement") && (t(e).removeClass(g), this.config.animation = !1, this.hide(), this.show(), this.config.animation = n)}, a._jQueryInterface = function(e){return this.each(function(){var n = t(this).data(i), s = "object" == typeof e && e; if ((n || !/dispose|hide/.test(e)) && (n || (n = new a(this, s), t(this).data(i, n)), "string" == typeof e)){if ("undefined" == typeof n[e])throw new TypeError('No method named "' + e + '"'); n[e]()}})}, s(a, null, [{key:"VERSION", get:function(){return"4.0.0"}}, {key:"Default", get:function(){return u}}, {key:"NAME", get:function(){return e}}, {key:"DATA_KEY", get:function(){return i}}, {key:"Event", get:function(){return _}}, {key:"EVENT_KEY", get:function(){return o}}, {key:"DefaultType", get:function(){return h}}]), a}(); return t.fn[e] = I._jQueryInterface, t.fn[e].Constructor = I, t.fn[e].noConflict = function(){return t.fn[e] = a, I._jQueryInterface}, I}(e), x = function(t){var e = "popover", n = "bs.popover", i = "." + n, o = t.fn[e], a = new RegExp("(^|\\s)bs-popover\\S+", "g"), l = r({}, U.Default, {placement:"right", trigger:"click", content:"", template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'}), h = r({}, U.DefaultType, {content:"(string|element|function)"}), c = "fade", u = "show", f = ".popover-header", d = ".popover-body", _ = {HIDE:"hide" + i, HIDDEN:"hidden" + i, SHOW:"show" + i, SHOWN:"shown" + i, INSERTED:"inserted" + i, CLICK:"click" + i, FOCUSIN:"focusin" + i, FOCUSOUT:"focusout" + i, MOUSEENTER:"mouseenter" + i, MOUSELEAVE:"mouseleave" + i}, g = function(r){var o, g; function p(){return r.apply(this, arguments) || this}g = r, (o = p).prototype = Object.create(g.prototype), o.prototype.constructor = o, o.__proto__ = g; var m = p.prototype; return m.isWithContent = function(){return this.getTitle() || this._getContent()}, m.addAttachmentClass = function(e){t(this.getTipElement()).addClass("bs-popover-" + e)}, m.getTipElement = function(){return this.tip = this.tip || t(this.config.template)[0], this.tip}, m.setContent = function(){var e = t(this.getTipElement()); this.setElementContent(e.find(f), this.getTitle()); var n = this._getContent(); "function" == typeof n && (n = n.call(this.element)), this.setElementContent(e.find(d), n), e.removeClass(c + " " + u)}, m._getContent = function(){return this.element.getAttribute("data-content") || this.config.content}, m._cleanTipClass = function(){var e = t(this.getTipElement()), n = e.attr("class").match(a); null !== n && n.length > 0 && e.removeClass(n.join(""))}, p._jQueryInterface = function(e){return this.each(function(){var i = t(this).data(n), s = "object" == typeof e?e:null; if ((i || !/destroy|hide/.test(e)) && (i || (i = new p(this, s), t(this).data(n, i)), "string" == typeof e)){if ("undefined" == typeof i[e])throw new TypeError('No method named "' + e + '"'); i[e]()}})}, s(p, null, [{key:"VERSION", get:function(){return"4.0.0"}}, {key:"Default", get:function(){return l}}, {key:"NAME", get:function(){return e}}, {key:"DATA_KEY", get:function(){return n}}, {key:"Event", get:function(){return _}}, {key:"EVENT_KEY", get:function(){return i}}, {key:"DefaultType", get:function(){return h}}]), p}(U); return t.fn[e] = g._jQueryInterface, t.fn[e].Constructor = g, t.fn[e].noConflict = function(){return t.fn[e] = o, g._jQueryInterface}, g}(e), K = function(t){var e = "scrollspy", n = "bs.scrollspy", i = "." + n, o = t.fn[e], a = {offset:10, method:"auto", target:""}, l = {offset:"number", method:"string", target:"(string|element)"}, h = {ACTIVATE:"activate" + i, SCROLL:"scroll" + i, LOAD_DATA_API:"load" + i + ".data-api"}, c = "dropdown-item", u = "active", f = {DATA_SPY:'[data-spy="scroll"]', ACTIVE:".active", NAV_LIST_GROUP:".nav, .list-group", NAV_LINKS:".nav-link", NAV_ITEMS:".nav-item", LIST_ITEMS:".list-group-item", DROPDOWN:".dropdown", DROPDOWN_ITEMS:".dropdown-item", DROPDOWN_TOGGLE:".dropdown-toggle"}, d = "offset", _ = "position", g = function(){function o(e, n){var i = this; this._element = e, this._scrollElement = "BODY" === e.tagName?window:e, this._config = this._getConfig(n), this._selector = this._config.target + " " + f.NAV_LINKS + "," + this._config.target + " " + f.LIST_ITEMS + "," + this._config.target + " " + f.DROPDOWN_ITEMS, this._offsets = [], this._targets = [], this._activeTarget = null, this._scrollHeight = 0, t(this._scrollElement).on(h.SCROLL, function(t){return i._process(t)}), this.refresh(), this._process()}var g = o.prototype; return g.refresh = function(){var e = this, n = this._scrollElement === this._scrollElement.window?d:_, i = "auto" === this._config.method?n:this._config.method, s = i === _?this._getScrollTop():0; this._offsets = [], this._targets = [], this._scrollHeight = this._getScrollHeight(), t.makeArray(t(this._selector)).map(function(e){var n, r = P.getSelectorFromElement(e); if (r && (n = t(r)[0]), n){var o = n.getBoundingClientRect(); if (o.width || o.height)return[t(n)[i]().top + s, r]}return null}).filter(function(t){return t}).sort(function(t, e){return t[0] - e[0]}).forEach(function(t){e._offsets.push(t[0]), e._targets.push(t[1])})}, g.dispose = function(){t.removeData(this._element, n), t(this._scrollElement).off(i), this._element = null, this._scrollElement = null, this._config = null, this._selector = null, this._offsets = null, this._targets = null, this._activeTarget = null, this._scrollHeight = null}, g._getConfig = function(n){if ("string" != typeof (n = r({}, a, n)).target){var i = t(n.target).attr("id"); i || (i = P.getUID(e), t(n.target).attr("id", i)), n.target = "#" + i}return P.typeCheckConfig(e, n, l), n}, g._getScrollTop = function(){return this._scrollElement === window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}, g._getScrollHeight = function(){return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight)}, g._getOffsetHeight = function(){return this._scrollElement === window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}, g._process = function(){var t = this._getScrollTop() + this._config.offset, e = this._getScrollHeight(), n = this._config.offset + e - this._getOffsetHeight(); if (this._scrollHeight !== e && this.refresh(), t >= n){var i = this._targets[this._targets.length - 1]; this._activeTarget !== i && this._activate(i)} else{if (this._activeTarget && t < this._offsets[0] && this._offsets[0] > 0)return this._activeTarget = null, void this._clear(); for (var s = this._offsets.length; s--; ){this._activeTarget !== this._targets[s] && t >= this._offsets[s] && ("undefined" == typeof this._offsets[s + 1] || t < this._offsets[s + 1]) && this._activate(this._targets[s])}}}, g._activate = function(e){this._activeTarget = e, this._clear(); var n = this._selector.split(","); n = n.map(function(t){return t + '[data-target="' + e + '"],' + t + '[href="' + e + '"]'}); var i = t(n.join(",")); i.hasClass(c)?(i.closest(f.DROPDOWN).find(f.DROPDOWN_TOGGLE).addClass(u), i.addClass(u)):(i.addClass(u), i.parents(f.NAV_LIST_GROUP).prev(f.NAV_LINKS + ", " + f.LIST_ITEMS).addClass(u), i.parents(f.NAV_LIST_GROUP).prev(f.NAV_ITEMS).children(f.NAV_LINKS).addClass(u)), t(this._scrollElement).trigger(h.ACTIVATE, {relatedTarget:e})}, g._clear = function(){t(this._selector).filter(f.ACTIVE).removeClass(u)}, o._jQueryInterface = function(e){return this.each(function(){var i = t(this).data(n); if (i || (i = new o(this, "object" == typeof e && e), t(this).data(n, i)), "string" == typeof e){if ("undefined" == typeof i[e])throw new TypeError('No method named "' + e + '"'); i[e]()}})}, s(o, null, [{key:"VERSION", get:function(){return"4.0.0"}}, {key:"Default", get:function(){return a}}]), o}(); return t(window).on(h.LOAD_DATA_API, function(){for (var e = t.makeArray(t(f.DATA_SPY)), n = e.length; n--; ){var i = t(e[n]); g._jQueryInterface.call(i, i.data())}}), t.fn[e] = g._jQueryInterface, t.fn[e].Constructor = g, t.fn[e].noConflict = function(){return t.fn[e] = o, g._jQueryInterface}, g}(e), V = function(t){var e = "bs.tab", n = "." + e, i = t.fn.tab, r = {HIDE:"hide" + n, HIDDEN:"hidden" + n, SHOW:"show" + n, SHOWN:"shown" + n, CLICK_DATA_API:"click.bs.tab.data-api"}, o = "dropdown-menu", a = "active", l = "disabled", h = "fade", c = "show", u = ".dropdown", f = ".nav, .list-group", d = ".active", _ = "> li > .active", g = '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]', p = ".dropdown-toggle", m = "> .dropdown-menu .active", v = function(){function n(t){this._element = t}var i = n.prototype; return i.show = function(){var e = this; if (!(this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && t(this._element).hasClass(a) || t(this._element).hasClass(l))){var n, i, s = t(this._element).closest(f)[0], o = P.getSelectorFromElement(this._element); if (s){var h = "UL" === s.nodeName?_:d; i = (i = t.makeArray(t(s).find(h)))[i.length - 1]}var c = t.Event(r.HIDE, {relatedTarget:this._element}), u = t.Event(r.SHOW, {relatedTarget:i}); if (i && t(i).trigger(c), t(this._element).trigger(u), !u.isDefaultPrevented() && !c.isDefaultPrevented()){o && (n = t(o)[0]), this._activate(this._element, s); var g = function(){var n = t.Event(r.HIDDEN, {relatedTarget:e._element}), s = t.Event(r.SHOWN, {relatedTarget:i}); t(i).trigger(n), t(e._element).trigger(s)}; n?this._activate(n, n.parentNode, g):g()}}}, i.dispose = function(){t.removeData(this._element, e), this._element = null}, i._activate = function(e, n, i){var s = this, r = ("UL" === n.nodeName?t(n).find(_):t(n).children(d))[0], o = i && P.supportsTransitionEnd() && r && t(r).hasClass(h), a = function(){return s._transitionComplete(e, r, i)}; r && o?t(r).one(P.TRANSITION_END, a).emulateTransitionEnd(150):a()}, i._transitionComplete = function(e, n, i){if (n){t(n).removeClass(c + " " + a); var s = t(n.parentNode).find(m)[0]; s && t(s).removeClass(a), "tab" === n.getAttribute("role") && n.setAttribute("aria-selected", !1)}if (t(e).addClass(a), "tab" === e.getAttribute("role") && e.setAttribute("aria-selected", !0), P.reflow(e), t(e).addClass(c), e.parentNode && t(e.parentNode).hasClass(o)){var r = t(e).closest(u)[0]; r && t(r).find(p).addClass(a), e.setAttribute("aria-expanded", !0)}i && i()}, n._jQueryInterface = function(i){return this.each(function(){var s = t(this), r = s.data(e); if (r || (r = new n(this), s.data(e, r)), "string" == typeof i){if ("undefined" == typeof r[i])throw new TypeError('No method named "' + i + '"'); r[i]()}})}, s(n, null, [{key:"VERSION", get:function(){return"4.0.0"}}]), n}(); return t(document).on(r.CLICK_DATA_API, g, function(e){e.preventDefault(), v._jQueryInterface.call(t(this), "show")}), t.fn.tab = v._jQueryInterface, t.fn.tab.Constructor = v, t.fn.tab.noConflict = function(){return t.fn.tab = i, v._jQueryInterface}, v}(e); !function(t){if ("undefined" == typeof t)throw new TypeError("Bootstrap's JavaScript requires jQuery. jQuery must be included before Bootstrap's JavaScript."); var e = t.fn.jquery.split(" ")[0].split("."); if (e[0] < 2 && e[1] < 9 || 1 === e[0] && 9 === e[1] && e[2] < 1 || e[0] >= 4)throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")}(e), t.Util = P, t.Alert = L, t.Button = R, t.Carousel = j, t.Collapse = H, t.Dropdown = W, t.Modal = M, t.Popover = x, t.Scrollspy = K, t.Tab = V, t.Tooltip = U, Object.defineProperty(t, "__esModule", {value:!0})});
  //# sourceMappingURL=bootstrap.min.js.map