/*! * bootstrap v4.1.3 (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, h) { "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 l(r) { for(var t = 1; t < arguments.length; t++) { var o = null != arguments[t] ? arguments[t] : {}, e = object.keys(o); "function" == typeof object.getownpropertysymbols && (e = e.concat(object.getownpropertysymbols(o).filter(function(t) { return object.getownpropertydescriptor(o, t).enumerable }))), e.foreach(function(t) { var e, n, i; e = r, i = o[n = t], n in e ? object.defineproperty(e, n, { value: i, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = i }) } return r } e = e && e.hasownproperty("default") ? e.default : e, h = h && h.hasownproperty("default") ? h.default : h; var r, n, o, a, c, u, f, d, g, _, m, p, v, y, e, c, t, b, s, i, a, d, w, n, o, k, p, j, h, l, r, x, w, u, q, f, k, m, q, b, v, y, z, j, z, g, $, x, tt, et, nt, it, rt, ot, st, at, lt, ct, ht, ut, ft, dt, gt, _t, mt, pt, vt, yt, et, ct, tt, bt, st, it, at, dt, wt, nt, ot, kt, pt, jt, ht, lt, rt, xt, wt, ut, qt, ft, kt, mt, qt, bt, vt, yt, zt, jt, zt, gt, $t, xt, te, ee, ne, ie, re, oe, se, ae, le, ce, he, ue, fe, de, ge, _e, me, pe, ve, ye, ee, ce, te, be, se, ie, ae, de, we, ne, oe, ke, pe, je, he, le, re, xe, we, ue, qe, fe, ke, me, qe, be, ve, ye, ze, je, ze, ge, $e, xe, tn, en, nn, rn, on, sn, an, ln, cn, hn, un, fn, dn, gn, _n, mn, pn, vn, yn, en, cn, tn, bn, sn, in, an, dn, wn, nn, on, kn, pn, jn, hn, ln, rn, xn, wn, un, qn, fn = function(i) { var e = "transitionend"; function t(t) { var e = this, n = !1; return i(this).one(l.transition_end, function() { n = !0 }), settimeout(function() { n || l.triggertransitionend(e) }, t), this } var l = { transition_end: "bstransitionend", getuid: function(t) { for(; t += ~~(1e6 * math.random()), document.getelementbyid(t);); return t }, getselectorfromelement: function(t) { var e = t.getattribute("data-target"); e && "#" !== e || (e = t.getattribute("href") || ""); try { return document.queryselector(e) ? e : null } catch(t) { return null } }, gettransitiondurationfromelement: function(t) { if(!t) return 0; var e = i(t).css("transition-duration"); return parsefloat(e) ? (e = e.split(",")[0], 1e3 * parsefloat(e)) : 0 }, reflow: function(t) { return t.offsetheight }, triggertransitionend: function(t) { i(t).trigger(e) }, supportstransitionend: function() { return boolean(e) }, iselement: function(t) { return(t[0] || t).nodetype }, typecheckconfig: function(t, e, n) { for(var i in n) if(object.prototype.hasownproperty.call(n, i)) { var r = n[i], o = e[i], s = o && l.iselement(o) ? "element" : (a = o, {}.tostring.call(a).match(/\s([a-z]+)/i)[1].tolowercase()); if(!new regexp(r).test(s)) throw new error(t.touppercase() + ': option "' + i + '" provided type "' + s + '" but expected type "' + r + '".') } var a } }; return i.fn.emulatetransitionend = t, i.event.special[l.transition_end] = { bindtype: e, delegatetype: e, handle: function(t) { if(i(t.target).is(this)) return t.handleobj.handler.apply(this, arguments) } }, l }(e), kn = (n = "alert", a = "." + (o = "bs.alert"), c = (r = e).fn[n], u = { close: "close" + a, closed: "closed" + a, click_data_api: "click" + a + ".data-api" }, f = "alert", d = "fade", g = "show", _ = function() { function i(t) { this._element = t } var t = i.prototype; return t.close = function(t) { var e = this._element; t && (e = this._getrootelement(t)), this._triggercloseevent(e).isdefaultprevented() || this._removeelement(e) }, t.dispose = function() { r.removedata(this._element, o), this._element = null }, t._getrootelement = function(t) { var e = fn.getselectorfromelement(t), n = !1; return e && (n = document.queryselector(e)), n || (n = r(t).closest("." + f)[0]), n }, t._triggercloseevent = function(t) { var e = r.event(u.close); return r(t).trigger(e), e }, t._removeelement = function(e) { var n = this; if(r(e).removeclass(g), r(e).hasclass(d)) { var t = fn.gettransitiondurationfromelement(e); r(e).one(fn.transition_end, function(t) { return n._destroyelement(e, t) }).emulatetransitionend(t) } else this._destroyelement(e) }, t._destroyelement = function(t) { r(t).detach().trigger(u.closed).remove() }, i._jqueryinterface = function(n) { return this.each(function() { var t = r(this), e = t.data(o); e || (e = new i(this), t.data(o, e)), "close" === n && e[n](this) }) }, i._handledismiss = function(e) { return function(t) { t && t.preventdefault(), e.close(this) } }, s(i, null, [{ key: "version", get: function() { return "4.1.3" } }]), i }(), r(document).on(u.click_data_api, '[data-dismiss="alert"]', _._handledismiss(new _)), r.fn[n] = _._jqueryinterface, r.fn[n].constructor = _, r.fn[n].noconflict = function() { return r.fn[n] = c, _._jqueryinterface }, _), mn = (p = "button", y = "." + (v = "bs.button"), e = ".data-api", c = (m = e).fn[p], t = "active", b = "btn", i = '[data-toggle^="button"]', a = '[data-toggle="buttons"]', d = "input", w = ".active", n = ".btn", o = { click_data_api: "click" + y + e, focus_blur_data_api: (s = "focus") + y + e + " blur" + y + e }, k = function() { function n(t) { this._element = t } var t = n.prototype; return t.toggle = function() { var t = !0, e = !0, n = m(this._element).closest(a)[0]; if(n) { var i = this._element.queryselector(d); if(i) { if("radio" === i.type) if(i.checked && this._element.classlist.contains(t)) t = !1; else { var r = n.queryselector(w); r && m(r).removeclass(t) } if(t) { if(i.hasattribute("disabled") || n.hasattribute("disabled") || i.classlist.contains("disabled") || n.classlist.contains("disabled")) return; i.checked = !this._element.classlist.contains(t), m(i).trigger("change") } i.focus(), e = !1 } } e && this._element.setattribute("aria-pressed", !this._element.classlist.contains(t)), t && m(this._element).toggleclass(t) }, t.dispose = function() { m.removedata(this._element, v), this._element = null }, n._jqueryinterface = function(e) { return this.each(function() { var t = m(this).data(v); t || (t = new n(this), m(this).data(v, t)), "toggle" === e && t[e]() }) }, s(n, null, [{ key: "version", get: function() { return "4.1.3" } }]), n }(), m(document).on(o.click_data_api, i, function(t) { t.preventdefault(); var e = t.target; m(e).hasclass(b) || (e = m(e).closest(n)), k._jqueryinterface.call(m(e), "toggle") }).on(o.focus_blur_data_api, i, function(t) { var e = m(t.target).closest(n)[0]; m(e).toggleclass(s, /^focus(in)?$/.test(t.type)) }), m.fn[p] = k._jqueryinterface, m.fn[p].constructor = k, m.fn[p].noconflict = function() { return m.fn[p] = c, k._jqueryinterface }, k), qn = (j = "carousel", l = "." + (h = "bs.carousel"), r = ".data-api", x = (p = e).fn[j], w = { interval: 5e3, keyboard: !0, slide: !1, pause: "hover", wrap: !0 }, u = { interval: "(number|boolean)", keyboard: "boolean", slide: "(boolean|string)", pause: "(string|boolean)", wrap: "boolean" }, q = "next", f = "prev", k = "left", m = "right", q = { slide: "slide" + l, slid: "slid" + l, keydown: "keydown" + l, mouseenter: "mouseenter" + l, mouseleave: "mouseleave" + l, touchend: "touchend" + l, load_data_api: "load" + l + r, click_data_api: "click" + l + r }, b = "carousel", v = "active", y = "slide", z = "carousel-item-right", j = "carousel-item-left", z = "carousel-item-next", g = "carousel-item-prev", $ = ".active", x = ".active.carousel-item", tt = ".carousel-item", et = ".carousel-item-next, .carousel-item-prev", nt = ".carousel-indicators", it = "[data-slide], [data-slide-to]", rt = '[data-ride="carousel"]', ot = function() { function o(t, e) { this._items = null, this._interval = null, this._activeelement = null, this._ispaused = !1, this._issliding = !1, this.touchtimeout = null, this._config = this._getconfig(e), this._element = p(t)[0], this._indicatorselement = this._element.queryselector(nt), this._addeventlisteners() } var t = o.prototype; return t.next = function() { this._issliding || this._slide(q) }, t.nextwhenvisible = function() { !document.hidden && p(this._element).is(":visible") && "hidden" !== p(this._element).css("visibility") && this.next() }, t.prev = function() { this._issliding || this._slide(f) }, t.pause = function(t) { t || (this._ispaused = !0), this._element.queryselector(et) && (fn.triggertransitionend(this._element), this.cycle(!0)), clearinterval(this._interval), this._interval = null }, t.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)) }, t.to = function(t) { var e = this; this._activeelement = this._element.queryselector(x); var n = this._getitemindex(this._activeelement); if(!(t > this._items.length - 1 || t < 0)) if(this._issliding) p(this._element).one(q.slid, function() { return e.to(t) }); else { if(n === t) return this.pause(), void this.cycle(); var i = n < t ? q : f; this._slide(i, this._items[t]) } }, t.dispose = function() { p(this._element).off(l), p.removedata(this._element, h), this._items = null, this._config = null, this._element = null, this._interval = null, this._ispaused = null, this._issliding = null, this._activeelement = null, this._indicatorselement = null }, t._getconfig = function(t) { return t = l({}, w, t), fn.typecheckconfig(j, t, u), t }, t._addeventlisteners = function() { var e = this; this._config.keyboard && p(this._element).on(q.keydown, function(t) { return e._keydown(t) }), "hover" === this._config.pause && (p(this._element).on(q.mouseenter, function(t) { return e.pause(t) }).on(q.mouseleave, function(t) { return e.cycle(t) }), "ontouchstart" in document.documentelement && p(this._element).on(q.touchend, function() { e.pause(), e.touchtimeout && cleartimeout(e.touchtimeout), e.touchtimeout = settimeout(function(t) { return e.cycle(t) }, 500 + e._config.interval) })) }, t._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() } }, t._getitemindex = function(t) { return this._items = t && t.parentnode ? [].slice.call(t.parentnode.queryselectorall(tt)) : [], this._items.indexof(t) }, t._getitembydirection = function(t, e) { var n = t === q, i = t === f, r = this._getitemindex(e), o = this._items.length - 1; if((i && 0 === r || n && r === o) && !this._config.wrap) return e; var s = (r + (t === f ? -1 : 1)) % this._items.length; return -1 === s ? this._items[this._items.length - 1] : this._items[s] }, t._triggerslideevent = function(t, e) { var n = this._getitemindex(t), i = this._getitemindex(this._element.queryselector(x)), r = p.event(q.slide, { relatedtarget: t, direction: e, from: i, to: n }); return p(this._element).trigger(r), r }, t._setactiveindicatorelement = function(t) { if(this._indicatorselement) { var e = [].slice.call(this._indicatorselement.queryselectorall($)); p(e).removeclass(v); var n = this._indicatorselement.children[this._getitemindex(t)]; n && p(n).addclass(v) } }, t._slide = function(t, e) { var n, i, r, o = this, s = this._element.queryselector(x), a = this._getitemindex(s), l = e || s && this._getitembydirection(t, s), c = this._getitemindex(l), h = boolean(this._interval); if(t === q ? (n = j, i = z, r = k) : (n = z, i = g, r = m), l && p(l).hasclass(v)) this._issliding = !1; else if(!this._triggerslideevent(l, r).isdefaultprevented() && s && l) { this._issliding = !0, h && this.pause(), this._setactiveindicatorelement(l); var u = p.event(q.slid, { relatedtarget: l, direction: r, from: a, to: c }); if(p(this._element).hasclass(y)) { p(l).addclass(i), fn.reflow(l), p(s).addclass(n), p(l).addclass(n); var f = fn.gettransitiondurationfromelement(s); p(s).one(fn.transition_end, function() { p(l).removeclass(n + " " + i).addclass(v), p(s).removeclass(v + " " + i + " " + n), o._issliding = !1, settimeout(function() { return p(o._element).trigger(u) }, 0) }).emulatetransitionend(f) } else p(s).removeclass(v), p(l).addclass(v), this._issliding = !1, p(this._element).trigger(u); h && this.cycle() } }, o._jqueryinterface = function(i) { return this.each(function() { var t = p(this).data(h), e = l({}, w, p(this).data()); "object" == typeof i && (e = l({}, e, i)); var n = "string" == typeof i ? i : e.slide; if(t || (t = new o(this, e), p(this).data(h, t)), "number" == typeof i) t.to(i); else if("string" == typeof n) { if("undefined" == typeof t[n]) throw new typeerror('no method named "' + n + '"'); t[n]() } else e.interval && (t.pause(), t.cycle()) }) }, o._dataapiclickhandler = function(t) { var e = fn.getselectorfromelement(this); if(e) { var n = p(e)[0]; if(n && p(n).hasclass(b)) { var i = l({}, p(n).data(), p(this).data()), r = this.getattribute("data-slide-to"); r && (i.interval = !1), o._jqueryinterface.call(p(n), i), r && p(n).data(h).to(r), t.preventdefault() } } }, s(o, null, [{ key: "version", get: function() { return "4.1.3" } }, { key: "default", get: function() { return w } }]), o }(), p(document).on(q.click_data_api, it, ot._dataapiclickhandler), p(window).on(q.load_data_api, function() { for(var t = [].slice.call(document.queryselectorall(rt)), e = 0, n = t.length; e < n; e++) { var i = p(t[e]); ot._jqueryinterface.call(i, i.data()) } }), p.fn[j] = ot._jqueryinterface, p.fn[j].constructor = ot, p.fn[j].noconflict = function() { return p.fn[j] = x, ot._jqueryinterface }, ot), bn = (at = "collapse", ct = "." + (lt = "bs.collapse"), ht = (st = e).fn[at], ut = { toggle: !0, parent: "" }, ft = { toggle: "boolean", parent: "(string|element)" }, dt = { show: "show" + ct, shown: "shown" + ct, hide: "hide" + ct, hidden: "hidden" + ct, click_data_api: "click" + ct + ".data-api" }, gt = "show", _t = "collapse", mt = "collapsing", pt = "collapsed", vt = "width", yt = "height", et = ".show, .collapsing", ct = '[data-toggle="collapse"]', tt = function() { function a(e, t) { this._istransitioning = !1, this._element = e, this._config = this._getconfig(t), this._triggerarray = st.makearray(document.queryselectorall('[data-toggle="collapse"][href="#' + e.id + '"],[data-toggle="collapse"][data-target="#' + e.id + '"]')); for(var n = [].slice.call(document.queryselectorall(ct)), i = 0, r = n.length; i < r; i++) { var o = n[i], s = fn.getselectorfromelement(o), a = [].slice.call(document.queryselectorall(s)).filter(function(t) { return t === e }); null !== s && 0 < a.length && (this._selector = s, this._triggerarray.push(o)) } this._parent = this._config.parent ? this._getparent() : null, this._config.parent || this._addariaandcollapsedclass(this._element, this._triggerarray), this._config.toggle && this.toggle() } var t = a.prototype; return t.toggle = function() { st(this._element).hasclass(gt) ? this.hide() : this.show() }, t.show = function() { var t, e, n = this; if(!this._istransitioning && !st(this._element).hasclass(gt) && (this._parent && 0 === (t = [].slice.call(this._parent.queryselectorall(et)).filter(function(t) { return t.getattribute("data-parent") === n._config.parent })).length && (t = null), !(t && (e = st(t).not(this._selector).data(lt)) && e._istransitioning))) { var i = st.event(dt.show); if(st(this._element).trigger(i), !i.isdefaultprevented()) { t && (a._jqueryinterface.call(st(t).not(this._selector), "hide"), e || st(t).data(lt, null)); var r = this._getdimension(); st(this._element).removeclass(_t).addclass(mt), this._element.style[r] = 0, this._triggerarray.length && st(this._triggerarray).removeclass(pt).attr("aria-expanded", !0), this.settransitioning(!0); var o = "scroll" + (r[0].touppercase() + r.slice(1)), s = fn.gettransitiondurationfromelement(this._element); st(this._element).one(fn.transition_end, function() { st(n._element).removeclass(mt).addclass(_t).addclass(gt), n._element.style[r] = "", n.settransitioning(!1), st(n._element).trigger(dt.shown) }).emulatetransitionend(s), this._element.style[r] = this._element[o] + "px" } } }, t.hide = function() { var t = this; if(!this._istransitioning && st(this._element).hasclass(gt)) { var e = st.event(dt.hide); if(st(this._element).trigger(e), !e.isdefaultprevented()) { var n = this._getdimension(); this._element.style[n] = this._element.getboundingclientrect()[n] + "px", fn.reflow(this._element), st(this._element).addclass(mt).removeclass(_t).removeclass(gt); var i = this._triggerarray.length; if(0 < i) for(var r = 0; r < i; r++) { var o = this._triggerarray[r], s = fn.getselectorfromelement(o); if(null !== s) st([].slice.call(document.queryselectorall(s))).hasclass(gt) || st(o).addclass(pt).attr("aria-expanded", !1) } this.settransitioning(!0); this._element.style[n] = ""; var a = fn.gettransitiondurationfromelement(this._element); st(this._element).one(fn.transition_end, function() { t.settransitioning(!1), st(t._element).removeclass(mt).addclass(_t).trigger(dt.hidden) }).emulatetransitionend(a) } } }, t.settransitioning = function(t) { this._istransitioning = t }, t.dispose = function() { st.removedata(this._element, lt), this._config = null, this._parent = null, this._element = null, this._triggerarray = null, this._istransitioning = null }, t._getconfig = function(t) { return(t = l({}, ut, t)).toggle = boolean(t.toggle), fn.typecheckconfig(at, t, ft), t }, t._getdimension = function() { return st(this._element).hasclass(vt) ? vt : yt }, t._getparent = function() { var n = this, t = null; fn.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); var e = '[data-toggle="collapse"][data-parent="' + this._config.parent + '"]', i = [].slice.call(t.queryselectorall(e)); return st(i).each(function(t, e) { n._addariaandcollapsedclass(a._gettargetfromelement(e), [e]) }), t }, t._addariaandcollapsedclass = function(t, e) { if(t) { var n = st(t).hasclass(gt); e.length && st(e).toggleclass(pt, !n).attr("aria-expanded", n) } }, a._gettargetfromelement = function(t) { var e = fn.getselectorfromelement(t); return e ? document.queryselector(e) : null }, a._jqueryinterface = function(i) { return this.each(function() { var t = st(this), e = t.data(lt), n = l({}, ut, t.data(), "object" == typeof i && i ? i : {}); if(!e && n.toggle && /show|hide/.test(i) && (n.toggle = !1), e || (e = new a(this, n), t.data(lt, e)), "string" == typeof i) { if("undefined" == typeof e[i]) throw new typeerror('no method named "' + i + '"'); e[i]() } }) }, s(a, null, [{ key: "version", get: function() { return "4.1.3" } }, { key: "default", get: function() { return ut } }]), a }(), st(document).on(dt.click_data_api, ct, function(t) { "a" === t.currenttarget.tagname && t.preventdefault(); var n = st(this), e = fn.getselectorfromelement(this), i = [].slice.call(document.queryselectorall(e)); st(i).each(function() { var t = st(this), e = t.data(lt) ? "toggle" : n.data(); tt._jqueryinterface.call(t, e) }) }), st.fn[at] = tt._jqueryinterface, st.fn[at].constructor = tt, st.fn[at].noconflict = function() { return st.fn[at] = ht, tt._jqueryinterface }, tt), vn = (st = "dropdown", at = "." + (it = "bs.dropdown"), dt = ".data-api", wt = (bt = e).fn[st], nt = new regexp("38|40|27"), ot = { hide: "hide" + at, hidden: "hidden" + at, show: "show" + at, shown: "shown" + at, click: "click" + at, click_data_api: "click" + at + dt, keydown_data_api: "keydown" + at + dt, keyup_data_api: "keyup" + at + dt }, kt = "disabled", pt = "show", jt = "dropup", ht = "dropright", lt = "dropleft", rt = "dropdown-menu-right", xt = "position-static", wt = '[data-toggle="dropdown"]', ut = ".dropdown form", qt = ".dropdown-menu", ft = ".navbar-nav", kt = ".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)", mt = "top-start", qt = "top-end", bt = "bottom-start", vt = "bottom-end", yt = "right-start", zt = "left-start", jt = { offset: 0, flip: !0, boundary: "scrollparent", reference: "toggle", display: "dynamic" }, zt = { offset: "(number|string|function)", flip: "boolean", boundary: "(string|element)", reference: "(string|element)", display: "string" }, gt = function() { function c(t, e) { this._element = t, this._popper = null, this._config = this._getconfig(e), this._menu = this._getmenuelement(), this._innavbar = this._detectnavbar(), this._addeventlisteners() } var t = c.prototype; return t.toggle = function() { if(!this._element.disabled && !bt(this._element).hasclass(kt)) { var t = c._getparentfromelement(this._element), e = bt(this._menu).hasclass(pt); if(c._clearmenus(), !e) { var n = { relatedtarget: this._element }, i = bt.event(ot.show, n); if(bt(t).trigger(i), !i.isdefaultprevented()) { if(!this._innavbar) { if("undefined" == typeof h) throw new typeerror("bootstrap dropdown require popper.js (https://popper.js.org)"); var r = this._element; "parent" === this._config.reference ? r = t : fn.iselement(this._config.reference) && (r = this._config.reference, "undefined" != typeof this._config.reference.jquery && (r = this._config.reference[0])), "scrollparent" !== this._config.boundary && bt(t).addclass(xt), this._popper = new h(r, this._menu, this._getpopperconfig()) } "ontouchstart" in document.documentelement && 0 === bt(t).closest(ft).length && bt(document.body).children().on("mouseover", null, bt.noop), this._element.focus(), this._element.setattribute("aria-expanded", !0), bt(this._menu).toggleclass(pt), bt(t).toggleclass(pt).trigger(bt.event(ot.shown, n)) } } } }, t.dispose = function() { bt.removedata(this._element, it), bt(this._element).off(at), this._element = null, (this._menu = null) !== this._popper && (this._popper.destroy(), this._popper = null) }, t.update = function() { this._innavbar = this._detectnavbar(), null !== this._popper && this._popper.scheduleupdate() }, t._addeventlisteners = function() { var e = this; bt(this._element).on(ot.click, function(t) { t.preventdefault(), t.stoppropagation(), e.toggle() }) }, t._getconfig = function(t) { return t = l({}, this.constructor.default, bt(this._element).data(), t), fn.typecheckconfig(st, t, this.constructor.defaulttype), t }, t._getmenuelement = function() { if(!this._menu) { var t = c._getparentfromelement(this._element); t && (this._menu = t.queryselector(qt)) } return this._menu }, t._getplacement = function() { var t = bt(this._element.parentnode), e = bt; return t.hasclass(jt) ? (e = mt, bt(this._menu).hasclass(rt) && (e = qt)) : t.hasclass(ht) ? e = yt : t.hasclass(lt) ? e = zt : bt(this._menu).hasclass(rt) && (e = vt), e }, t._detectnavbar = function() { return 0 < bt(this._element).closest(".navbar").length }, t._getpopperconfig = function() { var e = this, t = {}; "function" == typeof this._config.offset ? t.fn = function(t) { return t.offsets = l({}, t.offsets, e._config.offset(t.offsets) || {}), t } : t.offset = this._config.offset; var n = { placement: this._getplacement(), modifiers: { offset: t, flip: { enabled: this._config.flip }, preventoverflow: { boundarieselement: this._config.boundary } } }; return "static" === this._config.display && (n.modifiers.applystyle = { enabled: !1 }), n }, c._jqueryinterface = function(e) { return this.each(function() { var t = bt(this).data(it); if(t || (t = new c(this, "object" == typeof e ? e : null), bt(this).data(it, t)), "string" == typeof e) { if("undefined" == typeof t[e]) throw new typeerror('no method named "' + e + '"'); t[e]() } }) }, c._clearmenus = function(t) { if(!t || 3 !== t.which && ("keyup" !== t.type || 9 === t.which)) for(var e = [].slice.call(document.queryselectorall(wt)), n = 0, i = e.length; n < i; n++) { var r = c._getparentfromelement(e[n]), o = bt(e[n]).data(it), s = { relatedtarget: e[n] }; if(t && "click" === t.type && (s.clickevent = t), o) { var a = o._menu; if(bt(r).hasclass(pt) && !(t && ("click" === t.type && /input|textarea/i.test(t.target.tagname) || "keyup" === t.type && 9 === t.which) && bt.contains(r, t.target))) { var l = bt.event(ot.hide, s); bt(r).trigger(l), l.isdefaultprevented() || ("ontouchstart" in document.documentelement && bt(document.body).children().off("mouseover", null, bt.noop), e[n].setattribute("aria-expanded", "false"), bt(a).removeclass(pt), bt(r).removeclass(pt).trigger(bt.event(ot.hidden, s))) } } } }, c._getparentfromelement = function(t) { var e, n = fn.getselectorfromelement(t); return n && (e = document.queryselector(n)), e || t.parentnode }, c._dataapikeydownhandler = function(t) { if((/input|textarea/i.test(t.target.tagname) ? !(32 === t.which || 27 !== t.which && (40 !== t.which && 38 !== t.which || bt(t.target).closest(qt).length)) : nt.test(t.which)) && (t.preventdefault(), t.stoppropagation(), !this.disabled && !bt(this).hasclass(kt))) { var e = c._getparentfromelement(this), n = bt(e).hasclass(pt); if((n || 27 === t.which && 32 === t.which) && (!n || 27 !== t.which && 32 !== t.which)) { var i = [].slice.call(e.queryselectorall(kt)); if(0 !== i.length) { var r = i.indexof(t.target); 38 === t.which && 0 < r && r--, 40 === t.which && r < i.length - 1 && r++, r < 0 && (r = 0), i[r].focus() } } else { if(27 === t.which) { var o = e.queryselector(wt); bt(o).trigger("focus") } bt(this).trigger("click") } } }, s(c, null, [{ key: "version", get: function() { return "4.1.3" } }, { key: "default", get: function() { return jt } }, { key: "defaulttype", get: function() { return zt } }]), c }(), bt(document).on(ot.keydown_data_api, wt, gt._dataapikeydownhandler).on(ot.keydown_data_api, qt, gt._dataapikeydownhandler).on(ot.click_data_api + " " + ot.keyup_data_api, gt._clearmenus).on(ot.click_data_api, wt, function(t) { t.preventdefault(), t.stoppropagation(), gt._jqueryinterface.call(bt(this), "toggle") }).on(ot.click_data_api, ut, function(t) { t.stoppropagation() }), bt.fn[st] = gt._jqueryinterface, bt.fn[st].constructor = gt, bt.fn[st].noconflict = function() { return bt.fn[st] = wt, gt._jqueryinterface }, gt), yn = (xt = "modal", ee = "." + (te = "bs.modal"), ne = ($t = e).fn[xt], ie = { backdrop: !0, keyboard: !0, focus: !0, show: !0 }, re = { backdrop: "(boolean|string)", keyboard: "boolean", focus: "boolean", show: "boolean" }, oe = { hide: "hide" + ee, hidden: "hidden" + ee, show: "show" + ee, shown: "shown" + ee, focusin: "focusin" + ee, resize: "resize" + ee, click_dismiss: "click.dismiss" + ee, keydown_dismiss: "keydown.dismiss" + ee, mouseup_dismiss: "mouseup.dismiss" + ee, mousedown_dismiss: "mousedown.dismiss" + ee, click_data_api: "click" + ee + ".data-api" }, se = "modal-scrollbar-measure", ae = "modal-backdrop", le = "modal-open", ce = "fade", he = "show", ue = ".modal-dialog", fe = '[data-toggle="modal"]', de = '[data-dismiss="modal"]', ge = ".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", _e = ".sticky-top", me = function() { function r(t, e) { this._config = this._getconfig(e), this._element = t, this._dialog = t.queryselector(ue), this._backdrop = null, this._isshown = !1, this._isbodyoverflowing = !1, this._ignorebackdropclick = !1, this._scrollbarwidth = 0 } var t = r.prototype; return t.toggle = function(t) { return this._isshown ? this.hide() : this.show(t) }, t.show = function(t) { var e = this; if(!this._istransitioning && !this._isshown) { $t(this._element).hasclass(ce) && (this._istransitioning = !0); var n = $t.event(oe.show, { relatedtarget: t }); $t(this._element).trigger(n), this._isshown || n.isdefaultprevented() || (this._isshown = !0, this._checkscrollbar(), this._setscrollbar(), this._adjustdialog(), $t(document.body).addclass(le), this._setescapeevent(), this._setresizeevent(), $t(this._element).on(oe.click_dismiss, de, function(t) { return e.hide(t) }), $t(this._dialog).on(oe.mousedown_dismiss, function() { $t(e._element).one(oe.mouseup_dismiss, function(t) { $t(t.target).is(e._element) && (e._ignorebackdropclick = !0) }) }), this._showbackdrop(function() { return e._showelement(t) })) } }, t.hide = function(t) { var e = this; if(t && t.preventdefault(), !this._istransitioning && this._isshown) { var n = $t.event(oe.hide); if($t(this._element).trigger(n), this._isshown && !n.isdefaultprevented()) { this._isshown = !1; var i = $t(this._element).hasclass(ce); if(i && (this._istransitioning = !0), this._setescapeevent(), this._setresizeevent(), $t(document).off(oe.focusin), $t(this._element).removeclass(he), $t(this._element).off(oe.click_dismiss), $t(this._dialog).off(oe.mousedown_dismiss), i) { var r = fn.gettransitiondurationfromelement(this._element); $t(this._element).one(fn.transition_end, function(t) { return e._hidemodal(t) }).emulatetransitionend(r) } else this._hidemodal() } } }, t.dispose = function() { $t.removedata(this._element, te), $t(window, document, this._element, this._backdrop).off(ee), this._config = null, this._element = null, this._dialog = null, this._backdrop = null, this._isshown = null, this._isbodyoverflowing = null, this._ignorebackdropclick = null, this._scrollbarwidth = null }, t.handleupdate = function() { this._adjustdialog() }, t._getconfig = function(t) { return t = l({}, ie, t), fn.typecheckconfig(xt, t, re), t }, t._showelement = function(t) { var e = this, n = $t(this._element).hasclass(ce); 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, n && fn.reflow(this._element), $t(this._element).addclass(he), this._config.focus && this._enforcefocus(); var i = $t.event(oe.shown, { relatedtarget: t }), r = function() { e._config.focus && e._element.focus(), e._istransitioning = !1, $t(e._element).trigger(i) }; if(n) { var o = fn.gettransitiondurationfromelement(this._element); $t(this._dialog).one(fn.transition_end, r).emulatetransitionend(o) } else r() }, t._enforcefocus = function() { var e = this; $t(document).off(oe.focusin).on(oe.focusin, function(t) { document !== t.target && e._element !== t.target && 0 === $t(e._element).has(t.target).length && e._element.focus() }) }, t._setescapeevent = function() { var e = this; this._isshown && this._config.keyboard ? $t(this._element).on(oe.keydown_dismiss, function(t) { 27 === t.which && (t.preventdefault(), e.hide()) }) : this._isshown || $t(this._element).off(oe.keydown_dismiss) }, t._setresizeevent = function() { var e = this; this._isshown ? $t(window).on(oe.resize, function(t) { return e.handleupdate(t) }) : $t(window).off(oe.resize) }, t._hidemodal = function() { var t = this; this._element.style.display = "none", this._element.setattribute("aria-hidden", !0), this._istransitioning = !1, this._showbackdrop(function() { $t(document.body).removeclass(le), t._resetadjustments(), t._resetscrollbar(), $t(t._element).trigger(oe.hidden) }) }, t._removebackdrop = function() { this._backdrop && ($t(this._backdrop).remove(), this._backdrop = null) }, t._showbackdrop = function(t) { var e = this, n = $t(this._element).hasclass(ce) ? ce : ""; if(this._isshown && this._config.backdrop) { if(this._backdrop = document.createelement("div"), this._backdrop.classname = ae, n && this._backdrop.classlist.add(n), $t(this._backdrop).appendto(document.body), $t(this._element).on(oe.click_dismiss, function(t) { e._ignorebackdropclick ? e._ignorebackdropclick = !1 : t.target === t.currenttarget && ("static" === e._config.backdrop ? e._element.focus() : e.hide()) }), n && fn.reflow(this._backdrop), $t(this._backdrop).addclass(he), !t) return; if(!n) return void t(); var i = fn.gettransitiondurationfromelement(this._backdrop); $t(this._backdrop).one(fn.transition_end, t).emulatetransitionend(i) } else if(!this._isshown && this._backdrop) { $t(this._backdrop).removeclass(he); var r = function() { e._removebackdrop(), t && t() }; if($t(this._element).hasclass(ce)) { var o = fn.gettransitiondurationfromelement(this._backdrop); $t(this._backdrop).one(fn.transition_end, r).emulatetransitionend(o) } else r() } else t && t() }, t._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") }, t._resetadjustments = function() { this._element.style.paddingleft = "", this._element.style.paddingright = "" }, t._checkscrollbar = function() { var t = document.body.getboundingclientrect(); this._isbodyoverflowing = t.left + t.right < window.innerwidth, this._scrollbarwidth = this._getscrollbarwidth() }, t._setscrollbar = function() { var r = this; if(this._isbodyoverflowing) { var t = [].slice.call(document.queryselectorall(ge)), e = [].slice.call(document.queryselectorall(_e)); $t(t).each(function(t, e) { var n = e.style.paddingright, i = $t(e).css("padding-right"); $t(e).data("padding-right", n).css("padding-right", parsefloat(i) + r._scrollbarwidth + "px") }), $t(e).each(function(t, e) { var n = e.style.marginright, i = $t(e).css("margin-right"); $t(e).data("margin-right", n).css("margin-right", parsefloat(i) - r._scrollbarwidth + "px") }); var n = document.body.style.paddingright, i = $t(document.body).css("padding-right"); $t(document.body).data("padding-right", n).css("padding-right", parsefloat(i) + this._scrollbarwidth + "px") } }, t._resetscrollbar = function() { var t = [].slice.call(document.queryselectorall(ge)); $t(t).each(function(t, e) { var n = $t(e).data("padding-right"); $t(e).removedata("padding-right"), e.style.paddingright = n || "" }); var e = [].slice.call(document.queryselectorall("" + _e)); $t(e).each(function(t, e) { var n = $t(e).data("margin-right"); "undefined" != typeof n && $t(e).css("margin-right", n).removedata("margin-right") }); var n = $t(document.body).data("padding-right"); $t(document.body).removedata("padding-right"), document.body.style.paddingright = n || "" }, t._getscrollbarwidth = function() { var t = document.createelement("div"); t.classname = se, document.body.appendchild(t); var e = t.getboundingclientrect().width - t.clientwidth; return document.body.removechild(t), e }, r._jqueryinterface = function(n, i) { return this.each(function() { var t = $t(this).data(te), e = l({}, ie, $t(this).data(), "object" == typeof n && n ? n : {}); if(t || (t = new r(this, e), $t(this).data(te, t)), "string" == typeof n) { if("undefined" == typeof t[n]) throw new typeerror('no method named "' + n + '"'); t[n](i) } else e.show && t.show(i) }) }, s(r, null, [{ key: "version", get: function() { return "4.1.3" } }, { key: "default", get: function() { return ie } }]), r }(), $t(document).on(oe.click_data_api, fe, function(t) { var e, n = this, i = fn.getselectorfromelement(this); i && (e = document.queryselector(i)); var r = $t(e).data(te) ? "toggle" : l({}, $t(e).data(), $t(this).data()); "a" !== this.tagname && "area" !== this.tagname || t.preventdefault(); var o = $t(e).one(oe.show, function(t) { t.isdefaultprevented() || o.one(oe.hidden, function() { $t(n).is(":visible") && n.focus() }) }); me._jqueryinterface.call($t(e), r, this) }), $t.fn[xt] = me._jqueryinterface, $t.fn[xt].constructor = me, $t.fn[xt].noconflict = function() { return $t.fn[xt] = ne, me._jqueryinterface }, me), zn = (ve = "tooltip", ee = "." + (ye = "bs.tooltip"), ce = (pe = e).fn[ve], te = "bs-tooltip", be = new regexp("(^|\\s)" + te + "\\s+", "g"), ae = { animation: !0, template: '', trigger: "hover focus", title: "", delay: 0, html: !(ie = { auto: "auto", top: "top", right: "right", bottom: "bottom", left: "left" }), selector: !(se = { 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)" }), placement: "top", offset: 0, container: !1, fallbackplacement: "flip", boundary: "scrollparent" }, we = "out", ne = { hide: "hide" + ee, hidden: "hidden" + ee, show: (de = "show") + ee, shown: "shown" + ee, inserted: "inserted" + ee, click: "click" + ee, focusin: "focusin" + ee, focusout: "focusout" + ee, mouseenter: "mouseenter" + ee, mouseleave: "mouseleave" + ee }, oe = "fade", ke = "show", pe = ".tooltip-inner", je = ".arrow", he = "hover", le = "focus", re = "click", xe = "manual", we = function() { function i(t, e) { if("undefined" == typeof h) 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 t = i.prototype; return t.enable = function() { this._isenabled = !0 }, t.disable = function() { this._isenabled = !1 }, t.toggleenabled = function() { this._isenabled = !this._isenabled }, t.toggle = function(t) { if(this._isenabled) if(t) { var e = this.constructor.data_key, n = pe(t.currenttarget).data(e); n || (n = new this.constructor(t.currenttarget, this._getdelegateconfig()), pe(t.currenttarget).data(e, n)), n._activetrigger.click = !n._activetrigger.click, n._iswithactivetrigger() ? n._enter(null, n) : n._leave(null, n) } else { if(pe(this.gettipelement()).hasclass(ke)) return void this._leave(null, this); this._enter(null, this) } }, t.dispose = function() { cleartimeout(this._timeout), pe.removedata(this.element, this.constructor.data_key), pe(this.element).off(this.constructor.event_key), pe(this.element).closest(".modal").off("hide.bs.modal"), this.tip && pe(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 }, t.show = function() { var e = this; if("none" === pe(this.element).css("display")) throw new error("please use show on visible elements"); var t = pe.event(this.constructor.event.show); if(this.iswithcontent() && this._isenabled) { pe(this.element).trigger(t); var n = pe.contains(this.element.ownerdocument.documentelement, this.element); if(t.isdefaultprevented() || !n) return; var i = this.gettipelement(), r = fn.getuid(this.constructor.name); i.setattribute("id", r), this.element.setattribute("aria-describedby", r), this.setcontent(), this.config.animation && pe(i).addclass(oe); var o = "function" == typeof this.config.placement ? this.config.placement.call(this, i, this.element) : this.config.placement, s = this._getattachment(o); this.addattachmentclass(s); var a = !1 === this.config.container ? document.body : pe(document).find(this.config.container); pe(i).data(this.constructor.data_key, this), pe.contains(this.element.ownerdocument.documentelement, this.tip) || pe(i).appendto(a), pe(this.element).trigger(this.constructor.event.inserted), this._popper = new h(this.element, i, { placement: s, modifiers: { offset: { offset: this.config.offset }, flip: { behavior: this.config.fallbackplacement }, arrow: { element: je }, preventoverflow: { boundarieselement: this.config.boundary } }, oncreate: function(t) { t.originalplacement !== t.placement && e._handlepopperplacementchange(t) }, onupdate: function(t) { e._handlepopperplacementchange(t) } }), pe(i).addclass(ke), "ontouchstart" in document.documentelement && pe(document.body).children().on("mouseover", null, pe.noop); var l = function() { e.config.animation && e._fixtransition(); var t = e._hoverstate; e._hoverstate = null, pe(e.element).trigger(e.constructor.event.shown), t === we && e._leave(null, e) }; if(pe(this.tip).hasclass(oe)) { var c = fn.gettransitiondurationfromelement(this.tip); pe(this.tip).one(fn.transition_end, l).emulatetransitionend(c) } else l() } }, t.hide = function(t) { var e = this, n = this.gettipelement(), i = pe.event(this.constructor.event.hide), r = function() { e._hoverstate !== de && n.parentnode && n.parentnode.removechild(n), e._cleantipclass(), e.element.removeattribute("aria-describedby"), pe(e.element).trigger(e.constructor.event.hidden), null !== e._popper && e._popper.destroy(), t && t() }; if(pe(this.element).trigger(i), !i.isdefaultprevented()) { if(pe(n).removeclass(ke), "ontouchstart" in document.documentelement && pe(document.body).children().off("mouseover", null, pe.noop), this._activetrigger[re] = !1, this._activetrigger[le] = !1, this._activetrigger[he] = !1, pe(this.tip).hasclass(oe)) { var o = fn.gettransitiondurationfromelement(n); pe(n).one(fn.transition_end, r).emulatetransitionend(o) } else r(); this._hoverstate = "" } }, t.update = function() { null !== this._popper && this._popper.scheduleupdate() }, t.iswithcontent = function() { return boolean(this.gettitle()) }, t.addattachmentclass = function(t) { pe(this.gettipelement()).addclass(te + "-" + t) }, t.gettipelement = function() { return this.tip = this.tip || pe(this.config.template)[0], this.tip }, t.setcontent = function() { var t = this.gettipelement(); this.setelementcontent(pe(t.queryselectorall(pe)), this.gettitle()), pe(t).removeclass(oe + " " + ke) }, t.setelementcontent = function(t, e) { var n = this.config.html; "object" == typeof e && (e.nodetype || e.jquery) ? n ? pe(e).parent().is(t) || t.empty().append(e) : t.text(pe(e).text()) : t[n ? "html" : "text"](e) }, t.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 }, t._getattachment = function(t) { return ie[t.touppercase()] }, t._setlisteners = function() { var i = this; this.config.trigger.split(" ").foreach(function(t) { if("click" === t) pe(i.element).on(i.constructor.event.click, i.config.selector, function(t) { return i.toggle(t) }); else if(t !== xe) { var e = t === he ? i.constructor.event.mouseenter : i.constructor.event.focusin, n = t === he ? i.constructor.event.mouseleave : i.constructor.event.focusout; pe(i.element).on(e, i.config.selector, function(t) { return i._enter(t) }).on(n, i.config.selector, function(t) { return i._leave(t) }) } pe(i.element).closest(".modal").on("hide.bs.modal", function() { return i.hide() }) }), this.config.selector ? this.config = l({}, this.config, { trigger: "manual", selector: "" }) : this._fixtitle() }, t._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", "")) }, t._enter = function(t, e) { var n = this.constructor.data_key; (e = e || pe(t.currenttarget).data(n)) || (e = new this.constructor(t.currenttarget, this._getdelegateconfig()), pe(t.currenttarget).data(n, e)), t && (e._activetrigger["focusin" === t.type ? le : he] = !0), pe(e.gettipelement()).hasclass(ke) || e._hoverstate === de ? e._hoverstate = de : (cleartimeout(e._timeout), e._hoverstate = de, e.config.delay && e.config.delay.show ? e._timeout = settimeout(function() { e._hoverstate === de && e.show() }, e.config.delay.show) : e.show()) }, t._leave = function(t, e) { var n = this.constructor.data_key; (e = e || pe(t.currenttarget).data(n)) || (e = new this.constructor(t.currenttarget, this._getdelegateconfig()), pe(t.currenttarget).data(n, e)), t && (e._activetrigger["focusout" === t.type ? le : he] = !1), e._iswithactivetrigger() || (cleartimeout(e._timeout), e._hoverstate = we, e.config.delay && e.config.delay.hide ? e._timeout = settimeout(function() { e._hoverstate === we && e.hide() }, e.config.delay.hide) : e.hide()) }, t._iswithactivetrigger = function() { for(var t in this._activetrigger) if(this._activetrigger[t]) return !0; return !1 }, t._getconfig = function(t) { return "number" == typeof(t = l({}, this.constructor.default, pe(this.element).data(), "object" == typeof t && t ? t : {})).delay && (t.delay = { show: t.delay, hide: t.delay }), "number" == typeof t.title && (t.title = t.title.tostring()), "number" == typeof t.content && (t.content = t.content.tostring()), fn.typecheckconfig(ve, t, this.constructor.defaulttype), t }, t._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 }, t._cleantipclass = function() { var t = pe(this.gettipelement()), e = t.attr("class").match(be); null !== e && e.length && t.removeclass(e.join("")) }, t._handlepopperplacementchange = function(t) { var e = t.instance; this.tip = e.popper, this._cleantipclass(), this.addattachmentclass(this._getattachment(t.placement)) }, t._fixtransition = function() { var t = this.gettipelement(), e = this.config.animation; null === t.getattribute("x-placement") && (pe(t).removeclass(oe), this.config.animation = !1, this.hide(), this.show(), this.config.animation = e) }, i._jqueryinterface = function(n) { return this.each(function() { var t = pe(this).data(ye), e = "object" == typeof n && n; if((t || !/dispose|hide/.test(n)) && (t || (t = new i(this, e), pe(this).data(ye, t)), "string" == typeof n)) { if("undefined" == typeof t[n]) throw new typeerror('no method named "' + n + '"'); t[n]() } }) }, s(i, null, [{ key: "version", get: function() { return "4.1.3" } }, { key: "default", get: function() { return ae } }, { key: "name", get: function() { return ve } }, { key: "data_key", get: function() { return ye } }, { key: "event", get: function() { return ne } }, { key: "event_key", get: function() { return ee } }, { key: "defaulttype", get: function() { return se } }]), i }(), pe.fn[ve] = we._jqueryinterface, pe.fn[ve].constructor = we, pe.fn[ve].noconflict = function() { return pe.fn[ve] = ce, we._jqueryinterface }, we), jn = (qe = "popover", ke = "." + (fe = "bs.popover"), me = (ue = e).fn[qe], qe = "bs-popover", be = new regexp("(^|\\s)" + qe + "\\s+", "g"), ve = l({}, zn.default, { placement: "right", trigger: "click", content: "", template: '' }), ye = l({}, zn.defaulttype, { content: "(string|element|function)" }), ze = "fade", ze = ".popover-header", ge = ".popover-body", $e = { hide: "hide" + ke, hidden: "hidden" + ke, show: (je = "show") + ke, shown: "shown" + ke, inserted: "inserted" + ke, click: "click" + ke, focusin: "focusin" + ke, focusout: "focusout" + ke, mouseenter: "mouseenter" + ke, mouseleave: "mouseleave" + ke }, xe = function(t) { var e, n; function i() { return t.apply(this, arguments) || this } n = t, (e = i).prototype = object.create(n.prototype), (e.prototype.constructor = e).__proto__ = n; var r = i.prototype; return r.iswithcontent = function() { return this.gettitle() || this._getcontent() }, r.addattachmentclass = function(t) { ue(this.gettipelement()).addclass(qe + "-" + t) }, r.gettipelement = function() { return this.tip = this.tip || ue(this.config.template)[0], this.tip }, r.setcontent = function() { var t = ue(this.gettipelement()); this.setelementcontent(t.find(ze), this.gettitle()); var e = this._getcontent(); "function" == typeof e && (e = e.call(this.element)), this.setelementcontent(t.find(ge), e), t.removeclass(ze + " " + je) }, r._getcontent = function() { return this.element.getattribute("data-content") || this.config.content }, r._cleantipclass = function() { var t = ue(this.gettipelement()), e = t.attr("class").match(be); null !== e && 0 < e.length && t.removeclass(e.join("")) }, i._jqueryinterface = function(n) { return this.each(function() { var t = ue(this).data(fe), e = "object" == typeof n ? n : null; if((t || !/destroy|hide/.test(n)) && (t || (t = new i(this, e), ue(this).data(fe, t)), "string" == typeof n)) { if("undefined" == typeof t[n]) throw new typeerror('no method named "' + n + '"'); t[n]() } }) }, s(i, null, [{ key: "version", get: function() { return "4.1.3" } }, { key: "default", get: function() { return ve } }, { key: "name", get: function() { return qe } }, { key: "data_key", get: function() { return fe } }, { key: "event", get: function() { return $e } }, { key: "event_key", get: function() { return ke } }, { key: "defaulttype", get: function() { return ye } }]), i }(zn), ue.fn[qe] = xe._jqueryinterface, ue.fn[qe].constructor = xe, ue.fn[qe].noconflict = function() { return ue.fn[qe] = me, xe._jqueryinterface }, xe), zn = (en = "scrollspy", rn = "." + (nn = "bs.scrollspy"), on = (tn = e).fn[en], sn = { offset: 10, method: "auto", target: "" }, an = { offset: "number", method: "string", target: "(string|element)" }, ln = { activate: "activate" + rn, scroll: "scroll" + rn, load_data_api: "load" + rn + ".data-api" }, cn = "dropdown-item", hn = "active", un = '[data-spy="scroll"]', fn = ".active", dn = ".nav, .list-group", gn = ".nav-link", _n = ".nav-item", mn = ".list-group-item", pn = ".dropdown", vn = ".dropdown-item", yn = ".dropdown-toggle", en = "offset", cn = "position", tn = function() { function n(t, e) { var n = this; this._element = t, this._scrollelement = "body" === t.tagname ? window : t, this._config = this._getconfig(e), this._selector = this._config.target + " " + gn + "," + this._config.target + " " + mn + "," + this._config.target + " " + vn, this._offsets = [], this._targets = [], this._activetarget = null, this._scrollheight = 0, tn(this._scrollelement).on(ln.scroll, function(t) { return n._process(t) }), this.refresh(), this._process() } var t = n.prototype; return t.refresh = function() { var e = this, t = this._scrollelement === this._scrollelement.window ? en : cn, r = "auto" === this._config.method ? t : this._config.method, o = r === cn ? this._getscrolltop() : 0; this._offsets = [], this._targets = [], this._scrollheight = this._getscrollheight(), [].slice.call(document.queryselectorall(this._selector)).map(function(t) { var e, n = fn.getselectorfromelement(t); if(n && (e = document.queryselector(n)), e) { var i = e.getboundingclientrect(); if(i.width || i.height) return [tn(e)[r]().top + o, n] } 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]) }) }, t.dispose = function() { tn.removedata(this._element, nn), tn(this._scrollelement).off(rn), this._element = null, this._scrollelement = null, this._config = null, this._selector = null, this._offsets = null, this._targets = null, this._activetarget = null, this._scrollheight = null }, t._getconfig = function(t) { if("string" != typeof(t = l({}, sn, "object" == typeof t && t ? t : {})).target) { var e = tn(t.target).attr("id"); e || (e = fn.getuid(en), tn(t.target).attr("id", e)), t.target = "#" + e } return fn.typecheckconfig(en, t, an), t }, t._getscrolltop = function() { return this._scrollelement === window ? this._scrollelement.pageyoffset : this._scrollelement.scrolltop }, t._getscrollheight = function() { return this._scrollelement.scrollheight || math.max(document.body.scrollheight, document.documentelement.scrollheight) }, t._getoffsetheight = function() { return this._scrollelement === window ? window.innerheight : this._scrollelement.getboundingclientrect().height }, t._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(), n <= t) { var i = this._targets[this._targets.length - 1]; this._activetarget !== i && this._activate(i) } else { if(this._activetarget && t < this._offsets[0] && 0 < this._offsets[0]) return this._activetarget = null, void this._clear(); for(var r = this._offsets.length; r--;) { this._activetarget !== this._targets[r] && t >= this._offsets[r] && ("undefined" == typeof this._offsets[r + 1] || t < this._offsets[r + 1]) && this._activate(this._targets[r]) } } }, t._activate = function(e) { this._activetarget = e, this._clear(); var t = this._selector.split(","); t = t.map(function(t) { return t + '[data-target="' + e + '"],' + t + '[href="' + e + '"]' }); var n = tn([].slice.call(document.queryselectorall(t.join(",")))); n.hasclass(cn) ? (n.closest(pn).find(yn).addclass(hn), n.addclass(hn)) : (n.addclass(hn), n.parents(dn).prev(gn + ", " + mn).addclass(hn), n.parents(dn).prev(_n).children(gn).addclass(hn)), tn(this._scrollelement).trigger(ln.activate, { relatedtarget: e }) }, t._clear = function() { var t = [].slice.call(document.queryselectorall(this._selector)); tn(t).filter(fn).removeclass(hn) }, n._jqueryinterface = function(e) { return this.each(function() { var t = tn(this).data(nn); if(t || (t = new n(this, "object" == typeof e && e), tn(this).data(nn, t)), "string" == typeof e) { if("undefined" == typeof t[e]) throw new typeerror('no method named "' + e + '"'); t[e]() } }) }, s(n, null, [{ key: "version", get: function() { return "4.1.3" } }, { key: "default", get: function() { return sn } }]), n }(), tn(window).on(ln.load_data_api, function() { for(var t = [].slice.call(document.queryselectorall(un)), e = t.length; e--;) { var n = tn(t[e]); tn._jqueryinterface.call(n, n.data()) } }), tn.fn[en] = tn._jqueryinterface, tn.fn[en].constructor = tn, tn.fn[en].noconflict = function() { return tn.fn[en] = on, tn._jqueryinterface }, tn), gn = (in = "." + (sn = "bs.tab"), an = (bn = e).fn.tab, dn = { hide: "hide" + in, hidden: "hidden" + in, show: "show" + in, shown: "shown" + in, click_data_api: "click" + in + ".data-api" }, wn = "dropdown-menu", nn = "active", on = "disabled", kn = "fade", pn = "show", jn = ".dropdown", hn = ".nav, .list-group", ln = ".active", rn = "> li > .active", xn = '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]', wn = ".dropdown-toggle", un = "> .dropdown-menu .active", qn = function() { function i(t) { this._element = t } var t = i.prototype; return t.show = function() { var n = this; if(!(this._element.parentnode && this._element.parentnode.nodetype === node.element_node && bn(this._element).hasclass(nn) || bn(this._element).hasclass(on))) { var t, i, e = bn(this._element).closest(hn)[0], r = fn.getselectorfromelement(this._element); if(e) { var o = "ul" === e.nodename ? rn : ln; i = (i = bn.makearray(bn(e).find(o)))[i.length - 1] } var s = bn.event(dn.hide, { relatedtarget: this._element }), a = bn.event(dn.show, { relatedtarget: i }); if(i && bn(i).trigger(s), bn(this._element).trigger(a), !a.isdefaultprevented() && !s.isdefaultprevented()) { r && (t = document.queryselector(r)), this._activate(this._element, e); var l = function() { var t = bn.event(dn.hidden, { relatedtarget: n._element }), e = bn.event(dn.shown, { relatedtarget: i }); bn(i).trigger(t), bn(n._element).trigger(e) }; t ? this._activate(t, t.parentnode, l) : l() } } }, t.dispose = function() { bn.removedata(this._element, sn), this._element = null }, t._activate = function(t, e, n) { var i = this, r = ("ul" === e.nodename ? bn(e).find(rn) : bn(e).children(ln))[0], o = n && r && bn(r).hasclass(kn), s = function() { return i._transitioncomplete(t, r, n) }; if(r && o) { var a = fn.gettransitiondurationfromelement(r); bn(r).one(fn.transition_end, s).emulatetransitionend(a) } else s() }, t._transitioncomplete = function(t, e, n) { if(e) { bn(e).removeclass(pn + " " + nn); var i = bn(e.parentnode).find(un)[0]; i && bn(i).removeclass(nn), "tab" === e.getattribute("role") && e.setattribute("aria-selected", !1) } if(bn(t).addclass(nn), "tab" === t.getattribute("role") && t.setattribute("aria-selected", !0), fn.reflow(t), bn(t).addclass(pn), t.parentnode && bn(t.parentnode).hasclass(wn)) { var r = bn(t).closest(jn)[0]; if(r) { var o = [].slice.call(r.queryselectorall(wn)); bn(o).addclass(nn) } t.setattribute("aria-expanded", !0) } n && n() }, i._jqueryinterface = function(n) { return this.each(function() { var t = bn(this), e = t.data(sn); if(e || (e = new i(this), t.data(sn, e)), "string" == typeof n) { if("undefined" == typeof e[n]) throw new typeerror('no method named "' + n + '"'); e[n]() } }) }, s(i, null, [{ key: "version", get: function() { return "4.1.3" } }]), i }(), bn(document).on(dn.click_data_api, xn, function(t) { t.preventdefault(), qn._jqueryinterface.call(bn(this), "show") }), bn.fn.tab = qn._jqueryinterface, bn.fn.tab.constructor = qn, bn.fn.tab.noconflict = function() { return bn.fn.tab = an, qn._jqueryinterface }, qn); ! 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 || 4 <= e[0]) throw new error("bootstrap's javascript requires at least jquery v1.9.1 but less than v4.0.0") }(e), t.util = fn, t.alert = kn, t.button = mn, t.carousel = qn, t.collapse = bn, t.dropdown = vn, t.modal = yn, t.popover = jn, t.scrollspy = zn, t.tab = gn, t.tooltip = zn, object.defineproperty(t, "__esmodule", { value: !0 }) }); //# sourcemappingurl=bootstrap.min.js.map