/*! * bootstrap v4.0.0-beta.2 (https://getbootstrap.com) * copyright 2011-2017 the bootstrap authors (https://github.com/twbs/bootstrap/graphs/contributors) * licensed under mit (https://github.com/twbs/bootstrap/blob/master/license) */ var bootstrap = 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) } } e = e && e.hasownproperty("default") ? e.default : e, n = n && n.hasownproperty("default") ? n.default : n; var s = function() { function t(t) { return {}.tostring.call(t).match(/\s([a-za-z]+)/)[1].tolowercase() } function n() { return { bindtype: r.end, delegatetype: r.end, handle: function(t) { if (e(t.target).is(this)) return t.handleobj.handler.apply(this, arguments) } } } function i() { if (window.qunit) return !1; var t = document.createelement("bootstrap"); for (var e in o) if ("undefined" != typeof t.style[e]) return { end: o[e] }; return !1 } function s(t) { var n = this, i = !1; return e(this).one(a.transition_end, function() { i = !0 }), settimeout(function() { i || a.triggertransitionend(n) }, t), this } var r = !1, o = { webkittransition: "webkittransitionend", moztransition: "transitionend", otransition: "otransitionend otransitionend", transition: "transitionend" }, a = { transition_end: "bstransitionend", getuid: function(t) { do { t += ~~(1e6 * math.random()) } while (document.getelementbyid(t)); return t }, getselectorfromelement: function(t) { var n = t.getattribute("data-target"); n && "#" !== n || (n = t.getattribute("href") || ""); try { return e(document).find(n).length > 0 ? n : null } catch (t) { return null } }, reflow: function(t) { return t.offsetheight }, triggertransitionend: function(t) { e(t).trigger(r.end) }, supportstransitionend: function() { return boolean(r) }, iselement: function(t) { return (t[0] || t).nodetype }, typecheckconfig: function(e, n, i) { for (var s in i) if (object.prototype.hasownproperty.call(i, s)) { var r = i[s], o = n[s], l = o && a.iselement(o) ? "element" : t(o); if (!new regexp(r).test(l)) throw new error(e.touppercase() + ': option "' + s + '" provided type "' + l + '" but expected type "' + r + '".') } } }; return r = i(), e.fn.emulatetransitionend = s, a.supportstransitionend() && (e.event.special[a.transition_end] = n()), a }(), r = function(t, e, n) { return e && i(t.prototype, e), n && i(t, n), t }, o = function(t, e) { t.prototype = object.create(e.prototype), t.prototype.constructor = t, t.__proto__ = e }, a = function() { var t = "alert", n = e.fn[t], i = { close: "close.bs.alert", closed: "closed.bs.alert", click_data_api: "click.bs.alert.data-api" }, o = { alert: "alert", fade: "fade", show: "show" }, a = function() { function t(t) { this._element = t } var n = t.prototype; return n.close = function(t) { t = t || this._element; var e = this._getrootelement(t); this._triggercloseevent(e).isdefaultprevented() || this._removeelement(e) }, n.dispose = function() { e.removedata(this._element, "bs.alert"), this._element = null }, n._getrootelement = function(t) { var n = s.getselectorfromelement(t), i = !1; return n && (i = e(n)[0]), i || (i = e(t).closest("." + o.alert)[0]), i }, n._triggercloseevent = function(t) { var n = e.event(i.close); return e(t).trigger(n), n }, n._removeelement = function(t) { var n = this; e(t).removeclass(o.show), s.supportstransitionend() && e(t).hasclass(o.fade) ? e(t).one(s.transition_end, function(e) { return n._destroyelement(t, e) }).emulatetransitionend(150) : this._destroyelement(t) }, n._destroyelement = function(t) { e(t).detach().trigger(i.closed).remove() }, t._jqueryinterface = function(n) { return this.each(function() { var i = e(this), s = i.data("bs.alert"); s || (s = new t(this), i.data("bs.alert", s)), "close" === n && s[n](this) }) }, t._handledismiss = function(t) { return function(e) { e && e.preventdefault(), t.close(this) } }, r(t, null, [{ key: "version", get: function() { return "4.0.0-beta.2" } }]), t }(); return e(document).on(i.click_data_api, { dismiss: '[data-dismiss="alert"]' }.dismiss, a._handledismiss(new a)), e.fn[t] = a._jqueryinterface, e.fn[t].constructor = a, e.fn[t].noconflict = function() { return e.fn[t] = n, a._jqueryinterface }, a }(), l = function() { var t = "button", n = e.fn[t], i = { active: "active", button: "btn", focus: "focus" }, s = { data_toggle_carrot: '[data-toggle^="button"]', data_toggle: '[data-toggle="buttons"]', input: "input", active: ".active", button: ".btn" }, o = { click_data_api: "click.bs.button.data-api", focus_blur_data_api: "focus.bs.button.data-api blur.bs.button.data-api" }, a = function() { function t(t) { this._element = t } var n = t.prototype; return n.toggle = function() { var t = !0, n = !0, r = e(this._element).closest(s.data_toggle)[0]; if (r) { var o = e(this._element).find(s.input)[0]; if (o) { if ("radio" === o.type) if (o.checked && e(this._element).hasclass(i.active)) t = !1; else { var a = e(r).find(s.active)[0]; a && e(a).removeclass(i.active) } if (t) { if (o.hasattribute("disabled") || r.hasattribute("disabled") || o.classlist.contains("disabled") || r.classlist.contains("disabled")) return; o.checked = !e(this._element).hasclass(i.active), e(o).trigger("change") } o.focus(), n = !1 } } n && this._element.setattribute("aria-pressed", !e(this._element).hasclass(i.active)), t && e(this._element).toggleclass(i.active) }, n.dispose = function() { e.removedata(this._element, "bs.button"), this._element = null }, t._jqueryinterface = function(n) { return this.each(function() { var i = e(this).data("bs.button"); i || (i = new t(this), e(this).data("bs.button", i)), "toggle" === n && i[n]() }) }, r(t, null, [{ key: "version", get: function() { return "4.0.0-beta.2" } }]), t }(); return e(document).on(o.click_data_api, s.data_toggle_carrot, function(t) { t.preventdefault(); var n = t.target; e(n).hasclass(i.button) || (n = e(n).closest(s.button)), a._jqueryinterface.call(e(n), "toggle") }).on(o.focus_blur_data_api, s.data_toggle_carrot, function(t) { var n = e(t.target).closest(s.button)[0]; e(n).toggleclass(i.focus, /^focus(in)?$/.test(t.type)) }), e.fn[t] = a._jqueryinterface, e.fn[t].constructor = a, e.fn[t].noconflict = function() { return e.fn[t] = n, a._jqueryinterface }, a }(), h = function() { var t = "carousel", n = "bs.carousel", i = "." + n, o = e.fn[t], 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: "next", prev: "prev", left: "left", right: "right" }, c = { slide: "slide" + i, slid: "slid" + i, keydown: "keydown" + i, mouseenter: "mouseenter" + i, mouseleave: "mouseleave" + i, touchend: "touchend" + i, load_data_api: "load.bs.carousel.data-api", click_data_api: "click.bs.carousel.data-api" }, u = { carousel: "carousel", active: "active", slide: "slide", right: "carousel-item-right", left: "carousel-item-left", next: "carousel-item-next", prev: "carousel-item-prev", item: "carousel-item" }, d = { 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"]' }, f = function() { function o(t, 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 = e(t)[0], this._indicatorselement = e(this._element).find(d.indicators)[0], this._addeventlisteners() } var f = o.prototype; return f.next = function() { this._issliding || this._slide(h.next) }, f.nextwhenvisible = function() { !document.hidden && e(this._element).is(":visible") && "hidden" !== e(this._element).css("visibility") && this.next() }, f.prev = function() { this._issliding || this._slide(h.prev) }, f.pause = function(t) { t || (this._ispaused = !0), e(this._element).find(d.next_prev)[0] && s.supportstransitionend() && (s.triggertransitionend(this._element), this.cycle(!0)), clearinterval(this._interval), this._interval = null }, f.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)) }, f.to = function(t) { var n = this; this._activeelement = e(this._element).find(d.active_item)[0]; var i = this._getitemindex(this._activeelement); if (!(t > this._items.length - 1 || t < 0)) if (this._issliding) e(this._element).one(c.slid, function() { return n.to(t) }); else { if (i === t) return this.pause(), void this.cycle(); var s = t > i ? h.next : h.prev; this._slide(s, this._items[t]) } }, f.dispose = function() { e(this._element).off(i), e.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 }, f._getconfig = function(n) { return n = e.extend({}, a, n), s.typecheckconfig(t, n, l), n }, f._addeventlisteners = function() { var t = this; this._config.keyboard && e(this._element).on(c.keydown, function(e) { return t._keydown(e) }), "hover" === this._config.pause && (e(this._element).on(c.mouseenter, function(e) { return t.pause(e) }).on(c.mouseleave, function(e) { return t.cycle(e) }), "ontouchstart" in document.documentelement && e(this._element).on(c.touchend, function() { t.pause(), t.touchtimeout && cleartimeout(t.touchtimeout), t.touchtimeout = settimeout(function(e) { return t.cycle(e) }, 500 + t._config.interval) })) }, f._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(); break; default: return } }, f._getitemindex = function(t) { return this._items = e.makearray(e(t).parent().find(d.item)), this._items.indexof(t) }, f._getitembydirection = function(t, e) { var n = t === h.next, i = t === h.prev, 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 === h.prev ? -1 : 1)) % this._items.length; return -1 === o ? this._items[this._items.length - 1] : this._items[o] }, f._triggerslideevent = function(t, n) { var i = this._getitemindex(t), s = this._getitemindex(e(this._element).find(d.active_item)[0]), r = e.event(c.slide, { relatedtarget: t, direction: n, from: s, to: i }); return e(this._element).trigger(r), r }, f._setactiveindicatorelement = function(t) { if (this._indicatorselement) { e(this._indicatorselement).find(d.active).removeclass(u.active); var n = this._indicatorselement.children[this._getitemindex(t)]; n && e(n).addclass(u.active) } }, f._slide = function(t, n) { var i, r, o, a = this, l = e(this._element).find(d.active_item)[0], f = this._getitemindex(l), _ = n || l && this._getitembydirection(t, l), g = this._getitemindex(_), m = boolean(this._interval); if (t === h.next ? (i = u.left, r = u.next, o = h.left) : (i = u.right, r = u.prev, o = h.right), _ && e(_).hasclass(u.active)) this._issliding = !1; else if (!this._triggerslideevent(_, o).isdefaultprevented() && l && _) { this._issliding = !0, m && this.pause(), this._setactiveindicatorelement(_); var p = e.event(c.slid, { relatedtarget: _, direction: o, from: f, to: g }); s.supportstransitionend() && e(this._element).hasclass(u.slide) ? (e(_).addclass(r), s.reflow(_), e(l).addclass(i), e(_).addclass(i), e(l).one(s.transition_end, function() { e(_).removeclass(i + " " + r).addclass(u.active), e(l).removeclass(u.active + " " + r + " " + i), a._issliding = !1, settimeout(function() { return e(a._element).trigger(p) }, 0) }).emulatetransitionend(600)) : (e(l).removeclass(u.active), e(_).addclass(u.active), this._issliding = !1, e(this._element).trigger(p)), m && this.cycle() } }, o._jqueryinterface = function(t) { return this.each(function() { var i = e(this).data(n), s = e.extend({}, a, e(this).data()); "object" == typeof t && e.extend(s, t); var r = "string" == typeof t ? t : s.slide; if (i || (i = new o(this, s), e(this).data(n, i)), "number" == typeof t) i.to(t); else if ("string" == typeof r) { if ("undefined" == typeof i[r]) throw new error('no method named "' + r + '"'); i[r]() } else s.interval && (i.pause(), i.cycle()) }) }, o._dataapiclickhandler = function(t) { var i = s.getselectorfromelement(this); if (i) { var r = e(i)[0]; if (r && e(r).hasclass(u.carousel)) { var a = e.extend({}, e(r).data(), e(this).data()), l = this.getattribute("data-slide-to"); l && (a.interval = !1), o._jqueryinterface.call(e(r), a), l && e(r).data(n).to(l), t.preventdefault() } } }, r(o, null, [{ key: "version", get: function() { return "4.0.0-beta.2" } }, { key: "default", get: function() { return a } }]), o }(); return e(document).on(c.click_data_api, d.data_slide, f._dataapiclickhandler), e(window).on(c.load_data_api, function() { e(d.data_ride).each(function() { var t = e(this); f._jqueryinterface.call(t, t.data()) }) }), e.fn[t] = f._jqueryinterface, e.fn[t].constructor = f, e.fn[t].noconflict = function() { return e.fn[t] = o, f._jqueryinterface }, f }(), c = function() { var t = "collapse", n = "bs.collapse", i = e.fn[t], o = { toggle: !0, parent: "" }, a = { toggle: "boolean", parent: "(string|element)" }, l = { show: "show.bs.collapse", shown: "shown.bs.collapse", hide: "hide.bs.collapse", hidden: "hidden.bs.collapse", click_data_api: "click.bs.collapse.data-api" }, h = { show: "show", collapse: "collapse", collapsing: "collapsing", collapsed: "collapsed" }, c = { width: "width", height: "height" }, u = { actives: ".show, .collapsing", data_toggle: '[data-toggle="collapse"]' }, d = function() { function i(t, n) { this._istransitioning = !1, this._element = t, this._config = this._getconfig(n), this._triggerarray = e.makearray(e('[data-toggle="collapse"][href="#' + t.id + '"],[data-toggle="collapse"][data-target="#' + t.id + '"]')); for (var i = e(u.data_toggle), r = 0; r < i.length; r++) { var o = i[r], a = s.getselectorfromelement(o); null !== a && e(a).filter(t).length > 0 && 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 d = i.prototype; return d.toggle = function() { e(this._element).hasclass(h.show) ? this.hide() : this.show() }, d.show = function() { var t = this; if (!this._istransitioning && !e(this._element).hasclass(h.show)) { var r, o; if (this._parent && ((r = e.makearray(e(this._parent).children().children(u.actives))).length || (r = null)), !(r && (o = e(r).data(n)) && o._istransitioning)) { var a = e.event(l.show); if (e(this._element).trigger(a), !a.isdefaultprevented()) { r && (i._jqueryinterface.call(e(r), "hide"), o || e(r).data(n, null)); var c = this._getdimension(); e(this._element).removeclass(h.collapse).addclass(h.collapsing), this._element.style[c] = 0, this._triggerarray.length && e(this._triggerarray).removeclass(h.collapsed).attr("aria-expanded", !0), this.settransitioning(!0); var d = function() { e(t._element).removeclass(h.collapsing).addclass(h.collapse).addclass(h.show), t._element.style[c] = "", t.settransitioning(!1), e(t._element).trigger(l.shown) }; if (s.supportstransitionend()) { var f = "scroll" + (c[0].touppercase() + c.slice(1)); e(this._element).one(s.transition_end, d).emulatetransitionend(600), this._element.style[c] = this._element[f] + "px" } else d() } } } }, d.hide = function() { var t = this; if (!this._istransitioning && e(this._element).hasclass(h.show)) { var n = e.event(l.hide); if (e(this._element).trigger(n), !n.isdefaultprevented()) { var i = this._getdimension(); if (this._element.style[i] = this._element.getboundingclientrect()[i] + "px", s.reflow(this._element), e(this._element).addclass(h.collapsing).removeclass(h.collapse).removeclass(h.show), this._triggerarray.length) for (var r = 0; r < this._triggerarray.length; r++) { var o = this._triggerarray[r], a = s.getselectorfromelement(o); null !== a && (e(a).hasclass(h.show) || e(o).addclass(h.collapsed).attr("aria-expanded", !1)) } this.settransitioning(!0); var c = function() { t.settransitioning(!1), e(t._element).removeclass(h.collapsing).addclass(h.collapse).trigger(l.hidden) }; this._element.style[i] = "", s.supportstransitionend() ? e(this._element).one(s.transition_end, c).emulatetransitionend(600) : c() } } }, d.settransitioning = function(t) { this._istransitioning = t }, d.dispose = function() { e.removedata(this._element, n), this._config = null, this._parent = null, this._element = null, this._triggerarray = null, this._istransitioning = null }, d._getconfig = function(n) { return n = e.extend({}, o, n), n.toggle = boolean(n.toggle), s.typecheckconfig(t, n, a), n }, d._getdimension = function() { return e(this._element).hasclass(c.width) ? c.width : c.height }, d._getparent = function() { var t = this, n = null; s.iselement(this._config.parent) ? (n = this._config.parent, "undefined" != typeof this._config.parent.jquery && (n = this._config.parent[0])) : n = e(this._config.parent)[0]; var r = '[data-toggle="collapse"][data-parent="' + this._config.parent + '"]'; return e(n).find(r).each(function(e, n) { t._addariaandcollapsedclass(i._gettargetfromelement(n), [n]) }), n }, d._addariaandcollapsedclass = function(t, n) { if (t) { var i = e(t).hasclass(h.show); n.length && e(n).toggleclass(h.collapsed, !i).attr("aria-expanded", i) } }, i._gettargetfromelement = function(t) { var n = s.getselectorfromelement(t); return n ? e(n)[0] : null }, i._jqueryinterface = function(t) { return this.each(function() { var s = e(this), r = s.data(n), a = e.extend({}, o, s.data(), "object" == typeof t && t); if (!r && a.toggle && /show|hide/.test(t) && (a.toggle = !1), r || (r = new i(this, a), s.data(n, r)), "string" == typeof t) { if ("undefined" == typeof r[t]) throw new error('no method named "' + t + '"'); r[t]() } }) }, r(i, null, [{ key: "version", get: function() { return "4.0.0-beta.2" } }, { key: "default", get: function() { return o } }]), i }(); return e(document).on(l.click_data_api, u.data_toggle, function(t) { "a" === t.currenttarget.tagname && t.preventdefault(); var i = e(this), r = s.getselectorfromelement(this); e(r).each(function() { var t = e(this), s = t.data(n) ? "toggle" : i.data(); d._jqueryinterface.call(t, s) }) }), e.fn[t] = d._jqueryinterface, e.fn[t].constructor = d, e.fn[t].noconflict = function() { return e.fn[t] = i, d._jqueryinterface }, d }(), u = function() { if ("undefined" == typeof n) throw new error("bootstrap dropdown require popper.js (https://popper.js.org)"); var t = "dropdown", i = "bs.dropdown", o = "." + i, a = e.fn[t], l = new regexp("38|40|27"), h = { hide: "hide" + o, hidden: "hidden" + o, show: "show" + o, shown: "shown" + o, click: "click" + o, click_data_api: "click.bs.dropdown.data-api", keydown_data_api: "keydown.bs.dropdown.data-api", keyup_data_api: "keyup.bs.dropdown.data-api" }, c = { disabled: "disabled", show: "show", dropup: "dropup", menuright: "dropdown-menu-right", menuleft: "dropdown-menu-left" }, u = { data_toggle: '[data-toggle="dropdown"]', form_child: ".dropdown form", menu: ".dropdown-menu", navbar_nav: ".navbar-nav", visible_items: ".dropdown-menu .dropdown-item:not(.disabled)" }, d = { top: "top-start", topend: "top-end", bottom: "bottom-start", bottomend: "bottom-end" }, f = { offset: 0, flip: !0 }, _ = { offset: "(number|string|function)", flip: "boolean" }, g = 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 g = a.prototype; return g.toggle = function() { if (!this._element.disabled && !e(this._element).hasclass(c.disabled)) { var t = a._getparentfromelement(this._element), i = e(this._menu).hasclass(c.show); if (a._clearmenus(), !i) { var s = { relatedtarget: this._element }, r = e.event(h.show, s); if (e(t).trigger(r), !r.isdefaultprevented()) { var o = this._element; e(t).hasclass(c.dropup) && (e(this._menu).hasclass(c.menuleft) || e(this._menu).hasclass(c.menuright)) && (o = t), this._popper = new n(o, this._menu, this._getpopperconfig()), "ontouchstart" in document.documentelement && !e(t).closest(u.navbar_nav).length && e("body").children().on("mouseover", null, e.noop), this._element.focus(), this._element.setattribute("aria-expanded", !0), e(this._menu).toggleclass(c.show), e(t).toggleclass(c.show).trigger(e.event(h.shown, s)) } } } }, g.dispose = function() { e.removedata(this._element, i), e(this._element).off(o), this._element = null, this._menu = null, null !== this._popper && this._popper.destroy(), this._popper = null }, g.update = function() { this._innavbar = this._detectnavbar(), null !== this._popper && this._popper.scheduleupdate() }, g._addeventlisteners = function() { var t = this; e(this._element).on(h.click, function(e) { e.preventdefault(), e.stoppropagation(), t.toggle() }) }, g._getconfig = function(n) { return n = e.extend({}, this.constructor.default, e(this._element).data(), n), s.typecheckconfig(t, n, this.constructor.defaulttype), n }, g._getmenuelement = function() { if (!this._menu) { var t = a._getparentfromelement(this._element); this._menu = e(t).find(u.menu)[0] } return this._menu }, g._getplacement = function() { var t = e(this._element).parent(), n = d.bottom; return t.hasclass(c.dropup) ? (n = d.top, e(this._menu).hasclass(c.menuright) && (n = d.topend)) : e(this._menu).hasclass(c.menuright) && (n = d.bottomend), n }, g._detectnavbar = function() { return e(this._element).closest(".navbar").length > 0 }, g._getpopperconfig = function() { var t = this, n = {}; "function" == typeof this._config.offset ? n.fn = function(n) { return n.offsets = e.extend({}, n.offsets, t._config.offset(n.offsets) || {}), n } : n.offset = this._config.offset; var i = { placement: this._getplacement(), modifiers: { offset: n, flip: { enabled: this._config.flip } } }; return this._innavbar && (i.modifiers.applystyle = { enabled: !this._innavbar }), i }, a._jqueryinterface = function(t) { return this.each(function() { var n = e(this).data(i), s = "object" == typeof t ? t : null; if (n || (n = new a(this, s), e(this).data(i, n)), "string" == typeof t) { if ("undefined" == typeof n[t]) throw new error('no method named "' + t + '"'); n[t]() } }) }, a._clearmenus = function(t) { if (!t || 3 !== t.which && ("keyup" !== t.type || 9 === t.which)) for (var n = e.makearray(e(u.data_toggle)), s = 0; s < n.length; s++) { var r = a._getparentfromelement(n[s]), o = e(n[s]).data(i), l = { relatedtarget: n[s] }; if (o) { var d = o._menu; if (e(r).hasclass(c.show) && !(t && ("click" === t.type && /input|textarea/i.test(t.target.tagname) || "keyup" === t.type && 9 === t.which) && e.contains(r, t.target))) { var f = e.event(h.hide, l); e(r).trigger(f), f.isdefaultprevented() || ("ontouchstart" in document.documentelement && e("body").children().off("mouseover", null, e.noop), n[s].setattribute("aria-expanded", "false"), e(d).removeclass(c.show), e(r).removeclass(c.show).trigger(e.event(h.hidden, l))) } } } }, a._getparentfromelement = function(t) { var n, i = s.getselectorfromelement(t); return i && (n = e(i)[0]), n || t.parentnode }, a._dataapikeydownhandler = function(t) { if (!(!l.test(t.which) || /button/i.test(t.target.tagname) && 32 === t.which || /input|textarea/i.test(t.target.tagname) || (t.preventdefault(), t.stoppropagation(), this.disabled || e(this).hasclass(c.disabled)))) { var n = a._getparentfromelement(this), i = e(n).hasclass(c.show); if ((i || 27 === t.which && 32 === t.which) && (!i || 27 !== t.which && 32 !== t.which)) { var s = e(n).find(u.visible_items).get(); if (s.length) { var r = s.indexof(t.target); 38 === t.which && r > 0 && r--, 40 === t.which && r < s.length - 1 && r++, r < 0 && (r = 0), s[r].focus() } } else { if (27 === t.which) { var o = e(n).find(u.data_toggle)[0]; e(o).trigger("focus") } e(this).trigger("click") } } }, r(a, null, [{ key: "version", get: function() { return "4.0.0-beta.2" } }, { key: "default", get: function() { return f } }, { key: "defaulttype", get: function() { return _ } }]), a }(); return e(document).on(h.keydown_data_api, u.data_toggle, g._dataapikeydownhandler).on(h.keydown_data_api, u.menu, g._dataapikeydownhandler).on(h.click_data_api + " " + h.keyup_data_api, g._clearmenus).on(h.click_data_api, u.data_toggle, function(t) { t.preventdefault(), t.stoppropagation(), g._jqueryinterface.call(e(this), "toggle") }).on(h.click_data_api, u.form_child, function(t) { t.stoppropagation() }), e.fn[t] = g._jqueryinterface, e.fn[t].constructor = g, e.fn[t].noconflict = function() { return e.fn[t] = a, g._jqueryinterface }, g }(), d = function() { var t = "modal", n = ".bs.modal", i = e.fn[t], o = { backdrop: !0, keyboard: !0, focus: !0, show: !0 }, a = { backdrop: "(boolean|string)", keyboard: "boolean", focus: "boolean", show: "boolean" }, l = { hide: "hide.bs.modal", hidden: "hidden.bs.modal", show: "show.bs.modal", shown: "shown.bs.modal", focusin: "focusin.bs.modal", resize: "resize.bs.modal", click_dismiss: "click.dismiss.bs.modal", keydown_dismiss: "keydown.dismiss.bs.modal", mouseup_dismiss: "mouseup.dismiss.bs.modal", mousedown_dismiss: "mousedown.dismiss.bs.modal", click_data_api: "click.bs.modal.data-api" }, h = { scrollbar_measurer: "modal-scrollbar-measure", backdrop: "modal-backdrop", open: "modal-open", fade: "fade", show: "show" }, c = { 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" }, u = function() { function i(t, n) { this._config = this._getconfig(n), this._element = t, this._dialog = e(t).find(c.dialog)[0], this._backdrop = null, this._isshown = !1, this._isbodyoverflowing = !1, this._ignorebackdropclick = !1, this._originalbodypadding = 0, this._scrollbarwidth = 0 } var u = i.prototype; return u.toggle = function(t) { return this._isshown ? this.hide() : this.show(t) }, u.show = function(t) { var n = this; if (!this._istransitioning && !this._isshown) { s.supportstransitionend() && e(this._element).hasclass(h.fade) && (this._istransitioning = !0); var i = e.event(l.show, { relatedtarget: t }); e(this._element).trigger(i), this._isshown || i.isdefaultprevented() || (this._isshown = !0, this._checkscrollbar(), this._setscrollbar(), this._adjustdialog(), e(document.body).addclass(h.open), this._setescapeevent(), this._setresizeevent(), e(this._element).on(l.click_dismiss, c.data_dismiss, function(t) { return n.hide(t) }), e(this._dialog).on(l.mousedown_dismiss, function() { e(n._element).one(l.mouseup_dismiss, function(t) { e(t.target).is(n._element) && (n._ignorebackdropclick = !0) }) }), this._showbackdrop(function() { return n._showelement(t) })) } }, u.hide = function(t) { var n = this; if (t && t.preventdefault(), !this._istransitioning && this._isshown) { var i = e.event(l.hide); if (e(this._element).trigger(i), this._isshown && !i.isdefaultprevented()) { this._isshown = !1; var r = s.supportstransitionend() && e(this._element).hasclass(h.fade); r && (this._istransitioning = !0), this._setescapeevent(), this._setresizeevent(), e(document).off(l.focusin), e(this._element).removeclass(h.show), e(this._element).off(l.click_dismiss), e(this._dialog).off(l.mousedown_dismiss), r ? e(this._element).one(s.transition_end, function(t) { return n._hidemodal(t) }).emulatetransitionend(300) : this._hidemodal() } } }, u.dispose = function() { e.removedata(this._element, "bs.modal"), e(window, document, this._element, this._backdrop).off(n), this._config = null, this._element = null, this._dialog = null, this._backdrop = null, this._isshown = null, this._isbodyoverflowing = null, this._ignorebackdropclick = null, this._scrollbarwidth = null }, u.handleupdate = function() { this._adjustdialog() }, u._getconfig = function(n) { return n = e.extend({}, o, n), s.typecheckconfig(t, n, a), n }, u._showelement = function(t) { var n = this, i = s.supportstransitionend() && e(this._element).hasclass(h.fade); 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 && s.reflow(this._element), e(this._element).addclass(h.show), this._config.focus && this._enforcefocus(); var r = e.event(l.shown, { relatedtarget: t }), o = function() { n._config.focus && n._element.focus(), n._istransitioning = !1, e(n._element).trigger(r) }; i ? e(this._dialog).one(s.transition_end, o).emulatetransitionend(300) : o() }, u._enforcefocus = function() { var t = this; e(document).off(l.focusin).on(l.focusin, function(n) { document === n.target || t._element === n.target || e(t._element).has(n.target).length || t._element.focus() }) }, u._setescapeevent = function() { var t = this; this._isshown && this._config.keyboard ? e(this._element).on(l.keydown_dismiss, function(e) { 27 === e.which && (e.preventdefault(), t.hide()) }) : this._isshown || e(this._element).off(l.keydown_dismiss) }, u._setresizeevent = function() { var t = this; this._isshown ? e(window).on(l.resize, function(e) { return t.handleupdate(e) }) : e(window).off(l.resize) }, u._hidemodal = function() { var t = this; this._element.style.display = "none", this._element.setattribute("aria-hidden", !0), this._istransitioning = !1, this._showbackdrop(function() { e(document.body).removeclass(h.open), t._resetadjustments(), t._resetscrollbar(), e(t._element).trigger(l.hidden) }) }, u._removebackdrop = function() { this._backdrop && (e(this._backdrop).remove(), this._backdrop = null) }, u._showbackdrop = function(t) { var n = this, i = e(this._element).hasclass(h.fade) ? h.fade : ""; if (this._isshown && this._config.backdrop) { var r = s.supportstransitionend() && i; if (this._backdrop = document.createelement("div"), this._backdrop.classname = h.backdrop, i && e(this._backdrop).addclass(i), e(this._backdrop).appendto(document.body), e(this._element).on(l.click_dismiss, function(t) { n._ignorebackdropclick ? n._ignorebackdropclick = !1 : t.target === t.currenttarget && ("static" === n._config.backdrop ? n._element.focus() : n.hide()) }), r && s.reflow(this._backdrop), e(this._backdrop).addclass(h.show), !t) return; if (!r) return void t(); e(this._backdrop).one(s.transition_end, t).emulatetransitionend(150) } else if (!this._isshown && this._backdrop) { e(this._backdrop).removeclass(h.show); var o = function() { n._removebackdrop(), t && t() }; s.supportstransitionend() && e(this._element).hasclass(h.fade) ? e(this._backdrop).one(s.transition_end, o).emulatetransitionend(150) : o() } else t && t() }, u._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") }, u._resetadjustments = function() { this._element.style.paddingleft = "", this._element.style.paddingright = "" }, u._checkscrollbar = function() { var t = document.body.getboundingclientrect(); this._isbodyoverflowing = t.left + t.right < window.innerwidth, this._scrollbarwidth = this._getscrollbarwidth() }, u._setscrollbar = function() { var t = this; if (this._isbodyoverflowing) { e(c.fixed_content).each(function(n, i) { var s = e(i)[0].style.paddingright, r = e(i).css("padding-right"); e(i).data("padding-right", s).css("padding-right", parsefloat(r) + t._scrollbarwidth + "px") }), e(c.sticky_content).each(function(n, i) { var s = e(i)[0].style.marginright, r = e(i).css("margin-right"); e(i).data("margin-right", s).css("margin-right", parsefloat(r) - t._scrollbarwidth + "px") }), e(c.navbar_toggler).each(function(n, i) { var s = e(i)[0].style.marginright, r = e(i).css("margin-right"); e(i).data("margin-right", s).css("margin-right", parsefloat(r) + t._scrollbarwidth + "px") }); var n = document.body.style.paddingright, i = e("body").css("padding-right"); e("body").data("padding-right", n).css("padding-right", parsefloat(i) + this._scrollbarwidth + "px") } }, u._resetscrollbar = function() { e(c.fixed_content).each(function(t, n) { var i = e(n).data("padding-right"); "undefined" != typeof i && e(n).css("padding-right", i).removedata("padding-right") }), e(c.sticky_content + ", " + c.navbar_toggler).each(function(t, n) { var i = e(n).data("margin-right"); "undefined" != typeof i && e(n).css("margin-right", i).removedata("margin-right") }); var t = e("body").data("padding-right"); "undefined" != typeof t && e("body").css("padding-right", t).removedata("padding-right") }, u._getscrollbarwidth = function() { var t = document.createelement("div"); t.classname = h.scrollbar_measurer, document.body.appendchild(t); var e = t.getboundingclientrect().width - t.clientwidth; return document.body.removechild(t), e }, i._jqueryinterface = function(t, n) { return this.each(function() { var s = e(this).data("bs.modal"), r = e.extend({}, i.default, e(this).data(), "object" == typeof t && t); if (s || (s = new i(this, r), e(this).data("bs.modal", s)), "string" == typeof t) { if ("undefined" == typeof s[t]) throw new error('no method named "' + t + '"'); s[t](n) } else r.show && s.show(n) }) }, r(i, null, [{ key: "version", get: function() { return "4.0.0-beta.2" } }, { key: "default", get: function() { return o } }]), i }(); return e(document).on(l.click_data_api, c.data_toggle, function(t) { var n, i = this, r = s.getselectorfromelement(this); r && (n = e(r)[0]); var o = e(n).data("bs.modal") ? "toggle" : e.extend({}, e(n).data(), e(this).data()); "a" !== this.tagname && "area" !== this.tagname || t.preventdefault(); var a = e(n).one(l.show, function(t) { t.isdefaultprevented() || a.one(l.hidden, function() { e(i).is(":visible") && i.focus() }) }); u._jqueryinterface.call(e(n), o, this) }), e.fn[t] = u._jqueryinterface, e.fn[t].constructor = u, e.fn[t].noconflict = function() { return e.fn[t] = i, u._jqueryinterface }, u }(), f = function() { if ("undefined" == typeof n) throw new error("bootstrap tooltips require popper.js (https://popper.js.org)"); var t = "tooltip", i = ".bs.tooltip", o = e.fn[t], a = new regexp("(^|\\s)bs-tooltip\\s+", "g"), l = { 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)" }, h = { auto: "auto", top: "top", right: "right", bottom: "bottom", left: "left" }, c = { animation: !0, template: '