Server IP : 103.191.208.50 / Your IP : 216.73.216.53 Web Server : LiteSpeed System : Linux orion.herosite.pro 4.18.0-553.53.1.lve.el8.x86_64 #1 SMP Wed May 28 17:01:02 UTC 2025 x86_64 User : celkcksm ( 1031) PHP Version : 7.4.33 Disable Function : show_source, system, shell_exec, passthru, popen, exec MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/celkcksm/demo.ncriptech.com/hotel/demo2/js/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
/*! jQuery v3.7.1 | (c) OpenJS Foundation and other contributors | jquery.org/license */ ! function(e, t) { "use strict"; "object" == typeof module && "object" == typeof module.exports ? module.exports = e.document ? t(e, !0) : function(e) { if (!e.document) throw new Error("jQuery requires a window with a document"); return t(e) } : t(e) }("undefined" != typeof window ? window : this, function(ie, e) { "use strict"; var oe = [], r = Object.getPrototypeOf, ae = oe.slice, g = oe.flat ? function(e) { return oe.flat.call(e) } : function(e) { return oe.concat.apply([], e) }, s = oe.push, se = oe.indexOf, n = {}, i = n.toString, ue = n.hasOwnProperty, o = ue.toString, a = o.call(Object), le = {}, v = function(e) { return "function" == typeof e && "number" != typeof e.nodeType && "function" != typeof e.item }, y = function(e) { return null != e && e === e.window }, C = ie.document, u = { type: !0, src: !0, nonce: !0, noModule: !0 }; function m(e, t, n) { var r, i, o = (n = n || C).createElement("script"); if (o.text = e, t) for (r in u)(i = t[r] || t.getAttribute && t.getAttribute(r)) && o.setAttribute(r, i); n.head.appendChild(o).parentNode.removeChild(o) } function x(e) { return null == e ? e + "" : "object" == typeof e || "function" == typeof e ? n[i.call(e)] || "object" : typeof e } var t = "3.7.1", l = /HTML$/i, ce = function(e, t) { return new ce.fn.init(e, t) }; function c(e) { var t = !!e && "length" in e && e.length, n = x(e); return !v(e) && !y(e) && ("array" === n || 0 === t || "number" == typeof t && 0 < t && t - 1 in e) } function fe(e, t) { return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase() } ce.fn = ce.prototype = { jquery: t, constructor: ce, length: 0, toArray: function() { return ae.call(this) }, get: function(e) { return null == e ? ae.call(this) : e < 0 ? this[e + this.length] : this[e] }, pushStack: function(e) { var t = ce.merge(this.constructor(), e); return t.prevObject = this, t }, each: function(e) { return ce.each(this, e) }, map: function(n) { return this.pushStack(ce.map(this, function(e, t) { return n.call(e, t, e) })) }, slice: function() { return this.pushStack(ae.apply(this, arguments)) }, first: function() { return this.eq(0) }, last: function() { return this.eq(-1) }, even: function() { return this.pushStack(ce.grep(this, function(e, t) { return (t + 1) % 2 })) }, odd: function() { return this.pushStack(ce.grep(this, function(e, t) { return t % 2 })) }, eq: function(e) { var t = this.length, n = +e + (e < 0 ? t : 0); return this.pushStack(0 <= n && n < t ? [this[n]] : []) }, end: function() { return this.prevObject || this.constructor() }, push: s, sort: oe.sort, splice: oe.splice }, ce.extend = ce.fn.extend = function() { var e, t, n, r, i, o, a = arguments[0] || {}, s = 1, u = arguments.length, l = !1; for ("boolean" == typeof a && (l = a, a = arguments[s] || {}, s++), "object" == typeof a || v(a) || (a = {}), s === u && (a = this, s--); s < u; s++) if (null != (e = arguments[s])) for (t in e) r = e[t], "__proto__" !== t && a !== r && (l && r && (ce.isPlainObject(r) || (i = Array.isArray(r))) ? (n = a[t], o = i && !Array.isArray(n) ? [] : i || ce.isPlainObject(n) ? n : {}, i = !1, a[t] = ce.extend(l, o, r)) : void 0 !== r && (a[t] = r)); return a }, ce.extend({ expando: "jQuery" + (t + Math.random()).replace(/\D/g, ""), isReady: !0, error: function(e) { throw new Error(e) }, noop: function() {}, isPlainObject: function(e) { var t, n; return !(!e || "[object Object]" !== i.call(e)) && (!(t = r(e)) || "function" == typeof(n = ue.call(t, "constructor") && t.constructor) && o.call(n) === a) }, isEmptyObject: function(e) { var t; for (t in e) return !1; return !0 }, globalEval: function(e, t, n) { m(e, { nonce: t && t.nonce }, n) }, each: function(e, t) { var n, r = 0; if (c(e)) { for (n = e.length; r < n; r++) if (!1 === t.call(e[r], r, e[r])) break } else for (r in e) if (!1 === t.call(e[r], r, e[r])) break; return e }, text: function(e) { var t, n = "", r = 0, i = e.nodeType; if (!i) while (t = e[r++]) n += ce.text(t); return 1 === i || 11 === i ? e.textContent : 9 === i ? e.documentElement.textContent : 3 === i || 4 === i ? e.nodeValue : n }, makeArray: function(e, t) { var n = t || []; return null != e && (c(Object(e)) ? ce.merge(n, "string" == typeof e ? [e] : e) : s.call(n, e)), n }, inArray: function(e, t, n) { return null == t ? -1 : se.call(t, e, n) }, isXMLDoc: function(e) { var t = e && e.namespaceURI, n = e && (e.ownerDocument || e).documentElement; return !l.test(t || n && n.nodeName || "HTML") }, merge: function(e, t) { for (var n = +t.length, r = 0, i = e.length; r < n; r++) e[i++] = t[r]; return e.length = i, e }, grep: function(e, t, n) { for (var r = [], i = 0, o = e.length, a = !n; i < o; i++) !t(e[i], i) !== a && r.push(e[i]); return r }, map: function(e, t, n) { var r, i, o = 0, a = []; if (c(e)) for (r = e.length; o < r; o++) null != (i = t(e[o], o, n)) && a.push(i); else for (o in e) null != (i = t(e[o], o, n)) && a.push(i); return g(a) }, guid: 1, support: le }), "function" == typeof Symbol && (ce.fn[Symbol.iterator] = oe[Symbol.iterator]), ce.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function(e, t) { n["[object " + t + "]"] = t.toLowerCase() }); var pe = oe.pop, de = oe.sort, he = oe.splice, ge = "[\\x20\\t\\r\\n\\f]", ve = new RegExp("^" + ge + "+|((?:^|[^\\\\])(?:\\\\.)*)" + ge + "+$", "g"); ce.contains = function(e, t) { var n = t && t.parentNode; return e === n || !(!n || 1 !== n.nodeType || !(e.contains ? e.contains(n) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(n))) }; var f = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g; function p(e, t) { return t ? "\0" === e ? "\ufffd" : e.slice(0, -1) + "\\" + e.charCodeAt(e.length - 1).toString(16) + " " : "\\" + e } ce.escapeSelector = function(e) { return (e + "").replace(f, p) }; var ye = C, me = s; ! function() { var e, b, w, o, a, T, r, C, d, i, k = me, S = ce.expando, E = 0, n = 0, s = W(), c = W(), u = W(), h = W(), l = function(e, t) { return e === t && (a = !0), 0 }, f = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", t = "(?:\\\\[\\da-fA-F]{1,6}" + ge + "?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+", p = "\\[" + ge + "*(" + t + ")(?:" + ge + "*([*^$|!~]?=)" + ge + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + t + "))|)" + ge + "*\\]", g = ":(" + t + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + p + ")*)|.*)\\)|)", v = new RegExp(ge + "+", "g"), y = new RegExp("^" + ge + "*," + ge + "*"), m = new RegExp("^" + ge + "*([>+~]|" + ge + ")" + ge + "*"), x = new RegExp(ge + "|>"), j = new RegExp(g), A = new RegExp("^" + t + "$"), D = { ID: new RegExp("^#(" + t + ")"), CLASS: new RegExp("^\\.(" + t + ")"), TAG: new RegExp("^(" + t + "|[*])"), ATTR: new RegExp("^" + p), PSEUDO: new RegExp("^" + g), CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + ge + "*(even|odd|(([+-]|)(\\d*)n|)" + ge + "*(?:([+-]|)" + ge + "*(\\d+)|))" + ge + "*\\)|)", "i"), bool: new RegExp("^(?:" + f + ")$", "i"), needsContext: new RegExp("^" + ge + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + ge + "*((?:-\\d)?\\d*)" + ge + "*\\)|)(?=[^-]|$)", "i") }, N = /^(?:input|select|textarea|button)$/i, q = /^h\d$/i, L = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, H = /[+~]/, O = new RegExp("\\\\[\\da-fA-F]{1,6}" + ge + "?|\\\\([^\\r\\n\\f])", "g"), P = function(e, t) { var n = "0x" + e.slice(1) - 65536; return t || (n < 0 ? String.fromCharCode(n + 65536) : String.fromCharCode(n >> 10 | 55296, 1023 & n | 56320)) }, M = function() { V() }, R = J(function(e) { return !0 === e.disabled && fe(e, "fieldset") }, { dir: "parentNode", next: "legend" }); try { k.apply(oe = ae.call(ye.childNodes), ye.childNodes), oe[ye.childNodes.length].nodeType } catch (e) { k = { apply: function(e, t) { me.apply(e, ae.call(t)) }, call: function(e) { me.apply(e, ae.call(arguments, 1)) } } } function I(t, e, n, r) { var i, o, a, s, u, l, c, f = e && e.ownerDocument, p = e ? e.nodeType : 9; if (n = n || [], "string" != typeof t || !t || 1 !== p && 9 !== p && 11 !== p) return n; if (!r && (V(e), e = e || T, C)) { if (11 !== p && (u = L.exec(t))) if (i = u[1]) { if (9 === p) { if (!(a = e.getElementById(i))) return n; if (a.id === i) return k.call(n, a), n } else if (f && (a = f.getElementById(i)) && I.contains(e, a) && a.id === i) return k.call(n, a), n } else { if (u[2]) return k.apply(n, e.getElementsByTagName(t)), n; if ((i = u[3]) && e.getElementsByClassName) return k.apply(n, e.getElementsByClassName(i)), n } if (!(h[t + " "] || d && d.test(t))) { if (c = t, f = e, 1 === p && (x.test(t) || m.test(t))) { (f = H.test(t) && U(e.parentNode) || e) == e && le.scope || ((s = e.getAttribute("id")) ? s = ce.escapeSelector(s) : e.setAttribute("id", s = S)), o = (l = Y(t)).length; while (o--) l[o] = (s ? "#" + s : ":scope") + " " + Q(l[o]); c = l.join(",") } try { return k.apply(n, f.querySelectorAll(c)), n } catch (e) { h(t, !0) } finally { s === S && e.removeAttribute("id") } } } return re(t.replace(ve, "$1"), e, n, r) } function W() { var r = []; return function e(t, n) { return r.push(t + " ") > b.cacheLength && delete e[r.shift()], e[t + " "] = n } } function F(e) { return e[S] = !0, e } function $(e) { var t = T.createElement("fieldset"); try { return !!e(t) } catch (e) { return !1 } finally { t.parentNode && t.parentNode.removeChild(t), t = null } } function B(t) { return function(e) { return fe(e, "input") && e.type === t } } function _(t) { return function(e) { return (fe(e, "input") || fe(e, "button")) && e.type === t } } function z(t) { return function(e) { return "form" in e ? e.parentNode && !1 === e.disabled ? "label" in e ? "label" in e.parentNode ? e.parentNode.disabled === t : e.disabled === t : e.isDisabled === t || e.isDisabled !== !t && R(e) === t : e.disabled === t : "label" in e && e.disabled === t } } function X(a) { return F(function(o) { return o = +o, F(function(e, t) { var n, r = a([], e.length, o), i = r.length; while (i--) e[n = r[i]] && (e[n] = !(t[n] = e[n])) }) }) } function U(e) { return e && "undefined" != typeof e.getElementsByTagName && e } function V(e) { var t, n = e ? e.ownerDocument || e : ye; return n != T && 9 === n.nodeType && n.documentElement && (r = (T = n).documentElement, C = !ce.isXMLDoc(T), i = r.matches || r.webkitMatchesSelector || r.msMatchesSelector, r.msMatchesSelector && ye != T && (t = T.defaultView) && t.top !== t && t.addEventListener("unload", M), le.getById = $(function(e) { return r.appendChild(e).id = ce.expando, !T.getElementsByName || !T.getElementsByName(ce.expando).length }), le.disconnectedMatch = $(function(e) { return i.call(e, "*") }), le.scope = $(function() { return T.querySelectorAll(":scope") }), le.cssHas = $(function() { try { return T.querySelector(":has(*,:jqfake)"), !1 } catch (e) { return !0 } }), le.getById ? (b.filter.ID = function(e) { var t = e.replace(O, P); return function(e) { return e.getAttribute("id") === t } }, b.find.ID = function(e, t) { if ("undefined" != typeof t.getElementById && C) { var n = t.getElementById(e); return n ? [n] : [] } }) : (b.filter.ID = function(e) { var n = e.replace(O, P); return function(e) { var t = "undefined" != typeof e.getAttributeNode && e.getAttributeNode("id"); return t && t.value === n } }, b.find.ID = function(e, t) { if ("undefined" != typeof t.getElementById && C) { var n, r, i, o = t.getElementById(e); if (o) { if ((n = o.getAttributeNode("id")) && n.value === e) return [o]; i = t.getElementsByName(e), r = 0; while (o = i[r++]) if ((n = o.getAttributeNode("id")) && n.value === e) return [o] } return [] } }), b.find.TAG = function(e, t) { return "undefined" != typeof t.getElementsByTagName ? t.getElementsByTagName(e) : t.querySelectorAll(e) }, b.find.CLASS = function(e, t) { if ("undefined" != typeof t.getElementsByClassName && C) return t.getElementsByClassName(e) }, d = [], $(function(e) { var t; r.appendChild(e).innerHTML = "<a id='" + S + "' href='' disabled='disabled'></a><select id='" + S + "-\r\\' disabled='disabled'><option selected=''></option></select>", e.querySelectorAll("[selected]").length || d.push("\\[" + ge + "*(?:value|" + f + ")"), e.querySelectorAll("[id~=" + S + "-]").length || d.push("~="), e.querySelectorAll("a#" + S + "+*").length || d.push(".#.+[+~]"), e.querySelectorAll(":checked").length || d.push(":checked"), (t = T.createElement("input")).setAttribute("type", "hidden"), e.appendChild(t).setAttribute("name", "D"), r.appendChild(e).disabled = !0, 2 !== e.querySelectorAll(":disabled").length && d.push(":enabled", ":disabled"), (t = T.createElement("input")).setAttribute("name", ""), e.appendChild(t), e.querySelectorAll("[name='']").length || d.push("\\[" + ge + "*name" + ge + "*=" + ge + "*(?:''|\"\")") }), le.cssHas || d.push(":has"), d = d.length && new RegExp(d.join("|")), l = function(e, t) { if (e === t) return a = !0, 0; var n = !e.compareDocumentPosition - !t.compareDocumentPosition; return n || (1 & (n = (e.ownerDocument || e) == (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1) || !le.sortDetached && t.compareDocumentPosition(e) === n ? e === T || e.ownerDocument == ye && I.contains(ye, e) ? -1 : t === T || t.ownerDocument == ye && I.contains(ye, t) ? 1 : o ? se.call(o, e) - se.call(o, t) : 0 : 4 & n ? -1 : 1) }), T } for (e in I.matches = function(e, t) { return I(e, null, null, t) }, I.matchesSelector = function(e, t) { if (V(e), C && !h[t + " "] && (!d || !d.test(t))) try { var n = i.call(e, t); if (n || le.disconnectedMatch || e.document && 11 !== e.document.nodeType) return n } catch (e) { h(t, !0) } return 0 < I(t, T, null, [e]).length }, I.contains = function(e, t) { return (e.ownerDocument || e) != T && V(e), ce.contains(e, t) }, I.attr = function(e, t) { (e.ownerDocument || e) != T && V(e); var n = b.attrHandle[t.toLowerCase()], r = n && ue.call(b.attrHandle, t.toLowerCase()) ? n(e, t, !C) : void 0; return void 0 !== r ? r : e.getAttribute(t) }, I.error = function(e) { throw new Error("Syntax error, unrecognized expression: " + e) }, ce.uniqueSort = function(e) { var t, n = [], r = 0, i = 0; if (a = !le.sortStable, o = !le.sortStable && ae.call(e, 0), de.call(e, l), a) { while (t = e[i++]) t === e[i] && (r = n.push(i)); while (r--) he.call(e, n[r], 1) } return o = null, e }, ce.fn.uniqueSort = function() { return this.pushStack(ce.uniqueSort(ae.apply(this))) }, (b = ce.expr = { cacheLength: 50, createPseudo: F, match: D, attrHandle: {}, find: {}, relative: { ">": { dir: "parentNode", first: !0 }, " ": { dir: "parentNode" }, "+": { dir: "previousSibling", first: !0 }, "~": { dir: "previousSibling" } }, preFilter: { ATTR: function(e) { return e[1] = e[1].replace(O, P), e[3] = (e[3] || e[4] || e[5] || "").replace(O, P), "~=" === e[2] && (e[3] = " " + e[3] + " "), e.slice(0, 4) }, CHILD: function(e) { return e[1] = e[1].toLowerCase(), "nth" === e[1].slice(0, 3) ? (e[3] || I.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ("even" === e[3] || "odd" === e[3])), e[5] = +(e[7] + e[8] || "odd" === e[3])) : e[3] && I.error(e[0]), e }, PSEUDO: function(e) { var t, n = !e[6] && e[2]; return D.CHILD.test(e[0]) ? null : (e[3] ? e[2] = e[4] || e[5] || "" : n && j.test(n) && (t = Y(n, !0)) && (t = n.indexOf(")", n.length - t) - n.length) && (e[0] = e[0].slice(0, t), e[2] = n.slice(0, t)), e.slice(0, 3)) } }, filter: { TAG: function(e) { var t = e.replace(O, P).toLowerCase(); return "*" === e ? function() { return !0 } : function(e) { return fe(e, t) } }, CLASS: function(e) { var t = s[e + " "]; return t || (t = new RegExp("(^|" + ge + ")" + e + "(" + ge + "|$)")) && s(e, function(e) { return t.test("string" == typeof e.className && e.className || "undefined" != typeof e.getAttribute && e.getAttribute("class") || "") }) }, ATTR: function(n, r, i) { return function(e) { var t = I.attr(e, n); return null == t ? "!=" === r : !r || (t += "", "=" === r ? t === i : "!=" === r ? t !== i : "^=" === r ? i && 0 === t.indexOf(i) : "*=" === r ? i && -1 < t.indexOf(i) : "$=" === r ? i && t.slice(-i.length) === i : "~=" === r ? -1 < (" " + t.replace(v, " ") + " ").indexOf(i) : "|=" === r && (t === i || t.slice(0, i.length + 1) === i + "-")) } }, CHILD: function(d, e, t, h, g) { var v = "nth" !== d.slice(0, 3), y = "last" !== d.slice(-4), m = "of-type" === e; return 1 === h && 0 === g ? function(e) { return !!e.parentNode } : function(e, t, n) { var r, i, o, a, s, u = v !== y ? "nextSibling" : "previousSibling", l = e.parentNode, c = m && e.nodeName.toLowerCase(), f = !n && !m, p = !1; if (l) { if (v) { while (u) { o = e; while (o = o[u]) if (m ? fe(o, c) : 1 === o.nodeType) return !1; s = u = "only" === d && !s && "nextSibling" } return !0 } if (s = [y ? l.firstChild : l.lastChild], y && f) { p = (a = (r = (i = l[S] || (l[S] = {}))[d] || [])[0] === E && r[1]) && r[2], o = a && l.childNodes[a]; while (o = ++a && o && o[u] || (p = a = 0) || s.pop()) if (1 === o.nodeType && ++p && o === e) { i[d] = [E, a, p]; break } } else if (f && (p = a = (r = (i = e[S] || (e[S] = {}))[d] || [])[0] === E && r[1]), !1 === p) while (o = ++a && o && o[u] || (p = a = 0) || s.pop()) if ((m ? fe(o, c) : 1 === o.nodeType) && ++p && (f && ((i = o[S] || (o[S] = {}))[d] = [E, p]), o === e)) break; return (p -= g) === h || p % h == 0 && 0 <= p / h } } }, PSEUDO: function(e, o) { var t, a = b.pseudos[e] || b.setFilters[e.toLowerCase()] || I.error("unsupported pseudo: " + e); return a[S] ? a(o) : 1 < a.length ? (t = [e, e, "", o], b.setFilters.hasOwnProperty(e.toLowerCase()) ? F(function(e, t) { var n, r = a(e, o), i = r.length; while (i--) e[n = se.call(e, r[i])] = !(t[n] = r[i]) }) : function(e) { return a(e, 0, t) }) : a } }, pseudos: { not: F(function(e) { var r = [], i = [], s = ne(e.replace(ve, "$1")); return s[S] ? F(function(e, t, n, r) { var i, o = s(e, null, r, []), a = e.length; while (a--)(i = o[a]) && (e[a] = !(t[a] = i)) }) : function(e, t, n) { return r[0] = e, s(r, null, n, i), r[0] = null, !i.pop() } }), has: F(function(t) { return function(e) { return 0 < I(t, e).length } }), contains: F(function(t) { return t = t.replace(O, P), function(e) { return -1 < (e.textContent || ce.text(e)).indexOf(t) } }), lang: F(function(n) { return A.test(n || "") || I.error("unsupported lang: " + n), n = n.replace(O, P).toLowerCase(), function(e) { var t; do { if (t = C ? e.lang : e.getAttribute("xml:lang") || e.getAttribute("lang")) return (t = t.toLowerCase()) === n || 0 === t.indexOf(n + "-") } while ((e = e.parentNode) && 1 === e.nodeType); return !1 } }), target: function(e) { var t = ie.location && ie.location.hash; return t && t.slice(1) === e.id }, root: function(e) { return e === r }, focus: function(e) { return e === function() { try { return T.activeElement } catch (e) {} }() && T.hasFocus() && !!(e.type || e.href || ~e.tabIndex) }, enabled: z(!1), disabled: z(!0), checked: function(e) { return fe(e, "input") && !!e.checked || fe(e, "option") && !!e.selected }, selected: function(e) { return e.parentNode && e.parentNode.selectedIndex, !0 === e.selected }, empty: function(e) { for (e = e.firstChild; e; e = e.nextSibling) if (e.nodeType < 6) return !1; return !0 }, parent: function(e) { return !b.pseudos.empty(e) }, header: function(e) { return q.test(e.nodeName) }, input: function(e) { return N.test(e.nodeName) }, button: function(e) { return fe(e, "input") && "button" === e.type || fe(e, "button") }, text: function(e) { var t; return fe(e, "input") && "text" === e.type && (null == (t = e.getAttribute("type")) || "text" === t.toLowerCase()) }, first: X(function() { return [0] }), last: X(function(e, t) { return [t - 1] }), eq: X(function(e, t, n) { return [n < 0 ? n + t : n] }), even: X(function(e, t) { for (var n = 0; n < t; n += 2) e.push(n); return e }), odd: X(function(e, t) { for (var n = 1; n < t; n += 2) e.push(n); return e }), lt: X(function(e, t, n) { var r; for (r = n < 0 ? n + t : t < n ? t : n; 0 <= --r;) e.push(r); return e }), gt: X(function(e, t, n) { for (var r = n < 0 ? n + t : n; ++r < t;) e.push(r); return e }) } }).pseudos.nth = b.pseudos.eq, { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 }) b.pseudos[e] = B(e); for (e in { submit: !0, reset: !0 }) b.pseudos[e] = _(e); function G() {} function Y(e, t) { var n, r, i, o, a, s, u, l = c[e + " "]; if (l) return t ? 0 : l.slice(0); a = e, s = [], u = b.preFilter; while (a) { for (o in n && !(r = y.exec(a)) || (r && (a = a.slice(r[0].length) || a), s.push(i = [])), n = !1, (r = m.exec(a)) && (n = r.shift(), i.push({ value: n, type: r[0].replace(ve, " ") }), a = a.slice(n.length)), b.filter) !(r = D[o].exec(a)) || u[o] && !(r = u[o](r)) || (n = r.shift(), i.push({ value: n, type: o, matches: r }), a = a.slice(n.length)); if (!n) break } return t ? a.length : a ? I.error(e) : c(e, s).slice(0) } function Q(e) { for (var t = 0, n = e.length, r = ""; t < n; t++) r += e[t].value; return r } function J(a, e, t) { var s = e.dir, u = e.next, l = u || s, c = t && "parentNode" === l, f = n++; return e.first ? function(e, t, n) { while (e = e[s]) if (1 === e.nodeType || c) return a(e, t, n); return !1 } : function(e, t, n) { var r, i, o = [E, f]; if (n) { while (e = e[s]) if ((1 === e.nodeType || c) && a(e, t, n)) return !0 } else while (e = e[s]) if (1 === e.nodeType || c) if (i = e[S] || (e[S] = {}), u && fe(e, u)) e = e[s] || e; else { if ((r = i[l]) && r[0] === E && r[1] === f) return o[2] = r[2]; if ((i[l] = o)[2] = a(e, t, n)) return !0 } return !1 } } function K(i) { return 1 < i.length ? function(e, t, n) { var r = i.length; while (r--) if (!i[r](e, t, n)) return !1; return !0 } : i[0] } function Z(e, t, n, r, i) { for (var o, a = [], s = 0, u = e.length, l = null != t; s < u; s++)(o = e[s]) && (n && !n(o, r, i) || (a.push(o), l && t.push(s))); return a } function ee(d, h, g, v, y, e) { return v && !v[S] && (v = ee(v)), y && !y[S] && (y = ee(y, e)), F(function(e, t, n, r) { var i, o, a, s, u = [], l = [], c = t.length, f = e || function(e, t, n) { for (var r = 0, i = t.length; r < i; r++) I(e, t[r], n); return n }(h || "*", n.nodeType ? [n] : n, []), p = !d || !e && h ? f : Z(f, u, d, n, r); if (g ? g(p, s = y || (e ? d : c || v) ? [] : t, n, r) : s = p, v) { i = Z(s, l), v(i, [], n, r), o = i.length; while (o--)(a = i[o]) && (s[l[o]] = !(p[l[o]] = a)) } if (e) { if (y || d) { if (y) { i = [], o = s.length; while (o--)(a = s[o]) && i.push(p[o] = a); y(null, s = [], i, r) } o = s.length; while (o--)(a = s[o]) && -1 < (i = y ? se.call(e, a) : u[o]) && (e[i] = !(t[i] = a)) } } else s = Z(s === t ? s.splice(c, s.length) : s), y ? y(null, t, s, r) : k.apply(t, s) }) } function te(e) { for (var i, t, n, r = e.length, o = b.relative[e[0].type], a = o || b.relative[" "], s = o ? 1 : 0, u = J(function(e) { return e === i }, a, !0), l = J(function(e) { return -1 < se.call(i, e) }, a, !0), c = [function(e, t, n) { var r = !o && (n || t != w) || ((i = t).nodeType ? u(e, t, n) : l(e, t, n)); return i = null, r }]; s < r; s++) if (t = b.relative[e[s].type]) c = [J(K(c), t)]; else { if ((t = b.filter[e[s].type].apply(null, e[s].matches))[S]) { for (n = ++s; n < r; n++) if (b.relative[e[n].type]) break; return ee(1 < s && K(c), 1 < s && Q(e.slice(0, s - 1).concat({ value: " " === e[s - 2].type ? "*" : "" })).replace(ve, "$1"), t, s < n && te(e.slice(s, n)), n < r && te(e = e.slice(n)), n < r && Q(e)) } c.push(t) } return K(c) } function ne(e, t) { var n, v, y, m, x, r, i = [], o = [], a = u[e + " "]; if (!a) { t || (t = Y(e)), n = t.length; while (n--)(a = te(t[n]))[S] ? i.push(a) : o.push(a); (a = u(e, (v = o, m = 0 < (y = i).length, x = 0 < v.length, r = function(e, t, n, r, i) { var o, a, s, u = 0, l = "0", c = e && [], f = [], p = w, d = e || x && b.find.TAG("*", i), h = E += null == p ? 1 : Math.random() || .1, g = d.length; for (i && (w = t == T || t || i); l !== g && null != (o = d[l]); l++) { if (x && o) { a = 0, t || o.ownerDocument == T || (V(o), n = !C); while (s = v[a++]) if (s(o, t || T, n)) { k.call(r, o); break } i && (E = h) } m && ((o = !s && o) && u--, e && c.push(o)) } if (u += l, m && l !== u) { a = 0; while (s = y[a++]) s(c, f, t, n); if (e) { if (0 < u) while (l--) c[l] || f[l] || (f[l] = pe.call(r)); f = Z(f) } k.apply(r, f), i && !e && 0 < f.length && 1 < u + y.length && ce.uniqueSort(r) } return i && (E = h, w = p), c }, m ? F(r) : r))).selector = e } return a } function re(e, t, n, r) { var i, o, a, s, u, l = "function" == typeof e && e, c = !r && Y(e = l.selector || e); if (n = n || [], 1 === c.length) { if (2 < (o = c[0] = c[0].slice(0)).length && "ID" === (a = o[0]).type && 9 === t.nodeType && C && b.relative[o[1].type]) { if (!(t = (b.find.ID(a.matches[0].replace(O, P), t) || [])[0])) return n; l && (t = t.parentNode), e = e.slice(o.shift().value.length) } i = D.needsContext.test(e) ? 0 : o.length; while (i--) { if (a = o[i], b.relative[s = a.type]) break; if ((u = b.find[s]) && (r = u(a.matches[0].replace(O, P), H.test(o[0].type) && U(t.parentNode) || t))) { if (o.splice(i, 1), !(e = r.length && Q(o))) return k.apply(n, r), n; break } } } return (l || ne(e, c))(r, t, !C, n, !t || H.test(e) && U(t.parentNode) || t), n } G.prototype = b.filters = b.pseudos, b.setFilters = new G, le.sortStable = S.split("").sort(l).join("") === S, V(), le.sortDetached = $(function(e) { return 1 & e.compareDocumentPosition(T.createElement("fieldset")) }), ce.find = I, ce.expr[":"] = ce.expr.pseudos, ce.unique = ce.uniqueSort, I.compile = ne, I.select = re, I.setDocument = V, I.tokenize = Y, I.escape = ce.escapeSelector, I.getText = ce.text, I.isXML = ce.isXMLDoc, I.selectors = ce.expr, I.support = ce.support, I.uniqueSort = ce.uniqueSort }(); var d = function(e, t, n) { var r = [], i = void 0 !== n; while ((e = e[t]) && 9 !== e.nodeType) if (1 === e.nodeType) { if (i && ce(e).is(n)) break; r.push(e) } return r }, h = function(e, t) { for (var n = []; e; e = e.nextSibling) 1 === e.nodeType && e !== t && n.push(e); return n }, b = ce.expr.match.needsContext, w = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i; function T(e, n, r) { return v(n) ? ce.grep(e, function(e, t) { return !!n.call(e, t, e) !== r }) : n.nodeType ? ce.grep(e, function(e) { return e === n !== r }) : "string" != typeof n ? ce.grep(e, function(e) { return -1 < se.call(n, e) !== r }) : ce.filter(n, e, r) } ce.filter = function(e, t, n) { var r = t[0]; return n && (e = ":not(" + e + ")"), 1 === t.length && 1 === r.nodeType ? ce.find.matchesSelector(r, e) ? [r] : [] : ce.find.matches(e, ce.grep(t, function(e) { return 1 === e.nodeType })) }, ce.fn.extend({ find: function(e) { var t, n, r = this.length, i = this; if ("string" != typeof e) return this.pushStack(ce(e).filter(function() { for (t = 0; t < r; t++) if (ce.contains(i[t], this)) return !0 })); for (n = this.pushStack([]), t = 0; t < r; t++) ce.find(e, i[t], n); return 1 < r ? ce.uniqueSort(n) : n }, filter: function(e) { return this.pushStack(T(this, e || [], !1)) }, not: function(e) { return this.pushStack(T(this, e || [], !0)) }, is: function(e) { return !!T(this, "string" == typeof e && b.test(e) ? ce(e) : e || [], !1).length } }); var k, S = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/; (ce.fn.init = function(e, t, n) { var r, i; if (!e) return this; if (n = n || k, "string" == typeof e) { if (!(r = "<" === e[0] && ">" === e[e.length - 1] && 3 <= e.length ? [null, e, null] : S.exec(e)) || !r[1] && t) return !t || t.jquery ? (t || n).find(e) : this.constructor(t).find(e); if (r[1]) { if (t = t instanceof ce ? t[0] : t, ce.merge(this, ce.parseHTML(r[1], t && t.nodeType ? t.ownerDocument || t : C, !0)), w.test(r[1]) && ce.isPlainObject(t)) for (r in t) v(this[r]) ? this[r](t[r]) : this.attr(r, t[r]); return this } return (i = C.getElementById(r[2])) && (this[0] = i, this.length = 1), this } return e.nodeType ? (this[0] = e, this.length = 1, this) : v(e) ? void 0 !== n.ready ? n.ready(e) : e(ce) : ce.makeArray(e, this) }).prototype = ce.fn, k = ce(C); var E = /^(?:parents|prev(?:Until|All))/, j = { children: !0, contents: !0, next: !0, prev: !0 }; function A(e, t) { while ((e = e[t]) && 1 !== e.nodeType); return e } ce.fn.extend({ has: function(e) { var t = ce(e, this), n = t.length; return this.filter(function() { for (var e = 0; e < n; e++) if (ce.contains(this, t[e])) return !0 }) }, closest: function(e, t) { var n, r = 0, i = this.length, o = [], a = "string" != typeof e && ce(e); if (!b.test(e)) for (; r < i; r++) for (n = this[r]; n && n !== t; n = n.parentNode) if (n.nodeType < 11 && (a ? -1 < a.index(n) : 1 === n.nodeType && ce.find.matchesSelector(n, e))) { o.push(n); break } return this.pushStack(1 < o.length ? ce.uniqueSort(o) : o) }, index: function(e) { return e ? "string" == typeof e ? se.call(ce(e), this[0]) : se.call(this, e.jquery ? e[0] : e) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1 }, add: function(e, t) { return this.pushStack(ce.uniqueSort(ce.merge(this.get(), ce(e, t)))) }, addBack: function(e) { return this.add(null == e ? this.prevObject : this.prevObject.filter(e)) } }), ce.each({ parent: function(e) { var t = e.parentNode; return t && 11 !== t.nodeType ? t : null }, parents: function(e) { return d(e, "parentNode") }, parentsUntil: function(e, t, n) { return d(e, "parentNode", n) }, next: function(e) { return A(e, "nextSibling") }, prev: function(e) { return A(e, "previousSibling") }, nextAll: function(e) { return d(e, "nextSibling") }, prevAll: function(e) { return d(e, "previousSibling") }, nextUntil: function(e, t, n) { return d(e, "nextSibling", n) }, prevUntil: function(e, t, n) { return d(e, "previousSibling", n) }, siblings: function(e) { return h((e.parentNode || {}).firstChild, e) }, children: function(e) { return h(e.firstChild) }, contents: function(e) { return null != e.contentDocument && r(e.contentDocument) ? e.contentDocument : (fe(e, "template") && (e = e.content || e), ce.merge([], e.childNodes)) } }, function(r, i) { ce.fn[r] = function(e, t) { var n = ce.map(this, i, e); return "Until" !== r.slice(-5) && (t = e), t && "string" == typeof t && (n = ce.filter(t, n)), 1 < this.length && (j[r] || ce.uniqueSort(n), E.test(r) && n.reverse()), this.pushStack(n) } }); var D = /[^\x20\t\r\n\f]+/g; function N(e) { return e } function q(e) { throw e } function L(e, t, n, r) { var i; try { e && v(i = e.promise) ? i.call(e).done(t).fail(n) : e && v(i = e.then) ? i.call(e, t, n) : t.apply(void 0, [e].slice(r)) } catch (e) { n.apply(void 0, [e]) } } ce.Callbacks = function(r) { var e, n; r = "string" == typeof r ? (e = r, n = {}, ce.each(e.match(D) || [], function(e, t) { n[t] = !0 }), n) : ce.extend({}, r); var i, t, o, a, s = [], u = [], l = -1, c = function() { for (a = a || r.once, o = i = !0; u.length; l = -1) { t = u.shift(); while (++l < s.length) !1 === s[l].apply(t[0], t[1]) && r.stopOnFalse && (l = s.length, t = !1) } r.memory || (t = !1), i = !1, a && (s = t ? [] : "") }, f = { add: function() { return s && (t && !i && (l = s.length - 1, u.push(t)), function n(e) { ce.each(e, function(e, t) { v(t) ? r.unique && f.has(t) || s.push(t) : t && t.length && "string" !== x(t) && n(t) }) }(arguments), t && !i && c()), this }, remove: function() { return ce.each(arguments, function(e, t) { var n; while (-1 < (n = ce.inArray(t, s, n))) s.splice(n, 1), n <= l && l-- }), this }, has: function(e) { return e ? -1 < ce.inArray(e, s) : 0 < s.length }, empty: function() { return s && (s = []), this }, disable: function() { return a = u = [], s = t = "", this }, disabled: function() { return !s }, lock: function() { return a = u = [], t || i || (s = t = ""), this }, locked: function() { return !!a }, fireWith: function(e, t) { return a || (t = [e, (t = t || []).slice ? t.slice() : t], u.push(t), i || c()), this }, fire: function() { return f.fireWith(this, arguments), this }, fired: function() { return !!o } }; return f }, ce.extend({ Deferred: function(e) { var o = [ ["notify", "progress", ce.Callbacks("memory"), ce.Callbacks("memory"), 2], ["resolve", "done", ce.Callbacks("once memory"), ce.Callbacks("once memory"), 0, "resolved"], ["reject", "fail", ce.Callbacks("once memory"), ce.Callbacks("once memory"), 1, "rejected"] ], i = "pending", a = { state: function() { return i }, always: function() { return s.done(arguments).fail(arguments), this }, "catch": function(e) { return a.then(null, e) }, pipe: function() { var i = arguments; return ce.Deferred(function(r) { ce.each(o, function(e, t) { var n = v(i[t[4]]) && i[t[4]]; s[t[1]](function() { var e = n && n.apply(this, arguments); e && v(e.promise) ? e.promise().progress(r.notify).done(r.resolve).fail(r.reject) : r[t[0] + "With"](this, n ? [e] : arguments) }) }), i = null }).promise() }, then: function(t, n, r) { var u = 0; function l(i, o, a, s) { return function() { var n = this, r = arguments, e = function() { var e, t; if (!(i < u)) { if ((e = a.apply(n, r)) === o.promise()) throw new TypeError("Thenable self-resolution"); t = e && ("object" == typeof e || "function" == typeof e) && e.then, v(t) ? s ? t.call(e, l(u, o, N, s), l(u, o, q, s)) : (u++, t.call(e, l(u, o, N, s), l(u, o, q, s), l(u, o, N, o.notifyWith))) : (a !== N && (n = void 0, r = [e]), (s || o.resolveWith)(n, r)) } }, t = s ? e : function() { try { e() } catch (e) { ce.Deferred.exceptionHook && ce.Deferred.exceptionHook(e, t.error), u <= i + 1 && (a !== q && (n = void 0, r = [e]), o.rejectWith(n, r)) } }; i ? t() : (ce.Deferred.getErrorHook ? t.error = ce.Deferred.getErrorHook() : ce.Deferred.getStackHook && (t.error = ce.Deferred.getStackHook()), ie.setTimeout(t)) } } return ce.Deferred(function(e) { o[0][3].add(l(0, e, v(r) ? r : N, e.notifyWith)), o[1][3].add(l(0, e, v(t) ? t : N)), o[2][3].add(l(0, e, v(n) ? n : q)) }).promise() }, promise: function(e) { return null != e ? ce.extend(e, a) : a } }, s = {}; return ce.each(o, function(e, t) { var n = t[2], r = t[5]; a[t[1]] = n.add, r && n.add(function() { i = r }, o[3 - e][2].disable, o[3 - e][3].disable, o[0][2].lock, o[0][3].lock), n.add(t[3].fire), s[t[0]] = function() { return s[t[0] + "With"](this === s ? void 0 : this, arguments), this }, s[t[0] + "With"] = n.fireWith }), a.promise(s), e && e.call(s, s), s }, when: function(e) { var n = arguments.length, t = n, r = Array(t), i = ae.call(arguments), o = ce.Deferred(), a = function(t) { return function(e) { r[t] = this, i[t] = 1 < arguments.length ? ae.call(arguments) : e, --n || o.resolveWith(r, i) } }; if (n <= 1 && (L(e, o.done(a(t)).resolve, o.reject, !n), "pending" === o.state() || v(i[t] && i[t].then))) return o.then(); while (t--) L(i[t], a(t), o.reject); return o.promise() } }); var H = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; ce.Deferred.exceptionHook = function(e, t) { ie.console && ie.console.warn && e && H.test(e.name) && ie.console.warn("jQuery.Deferred exception: " + e.message, e.stack, t) }, ce.readyException = function(e) { ie.setTimeout(function() { throw e }) }; var O = ce.Deferred(); function P() { C.removeEventListener("DOMContentLoaded", P), ie.removeEventListener("load", P), ce.ready() } ce.fn.ready = function(e) { return O.then(e)["catch"](function(e) { ce.readyException(e) }), this }, ce.extend({ isReady: !1, readyWait: 1, ready: function(e) { (!0 === e ? --ce.readyWait : ce.isReady) || (ce.isReady = !0) !== e && 0 < --ce.readyWait || O.resolveWith(C, [ce]) } }), ce.ready.then = O.then, "complete" === C.readyState || "loading" !== C.readyState && !C.documentElement.doScroll ? ie.setTimeout(ce.ready) : (C.addEventListener("DOMContentLoaded", P), ie.addEventListener("load", P)); var M = function(e, t, n, r, i, o, a) { var s = 0, u = e.length, l = null == n; if ("object" === x(n)) for (s in i = !0, n) M(e, t, s, n[s], !0, o, a); else if (void 0 !== r && (i = !0, v(r) || (a = !0), l && (a ? (t.call(e, r), t = null) : (l = t, t = function(e, t, n) { return l.call(ce(e), n) })), t)) for (; s < u; s++) t(e[s], n, a ? r : r.call(e[s], s, t(e[s], n))); return i ? e : l ? t.call(e) : u ? t(e[0], n) : o }, R = /^-ms-/, I = /-([a-z])/g; function W(e, t) { return t.toUpperCase() } function F(e) { return e.replace(R, "ms-").replace(I, W) } var $ = function(e) { return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType }; function B() { this.expando = ce.expando + B.uid++ } B.uid = 1, B.prototype = { cache: function(e) { var t = e[this.expando]; return t || (t = {}, $(e) && (e.nodeType ? e[this.expando] = t : Object.defineProperty(e, this.expando, { value: t, configurable: !0 }))), t }, set: function(e, t, n) { var r, i = this.cache(e); if ("string" == typeof t) i[F(t)] = n; else for (r in t) i[F(r)] = t[r]; return i }, get: function(e, t) { return void 0 === t ? this.cache(e) : e[this.expando] && e[this.expando][F(t)] }, access: function(e, t, n) { return void 0 === t || t && "string" == typeof t && void 0 === n ? this.get(e, t) : (this.set(e, t, n), void 0 !== n ? n : t) }, remove: function(e, t) { var n, r = e[this.expando]; if (void 0 !== r) { if (void 0 !== t) { n = (t = Array.isArray(t) ? t.map(F) : (t = F(t)) in r ? [t] : t.match(D) || []).length; while (n--) delete r[t[n]] }(void 0 === t || ce.isEmptyObject(r)) && (e.nodeType ? e[this.expando] = void 0 : delete e[this.expando]) } }, hasData: function(e) { var t = e[this.expando]; return void 0 !== t && !ce.isEmptyObject(t) } }; var _ = new B, z = new B, X = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, U = /[A-Z]/g; function V(e, t, n) { var r, i; if (void 0 === n && 1 === e.nodeType) if (r = "data-" + t.replace(U, "-$&").toLowerCase(), "string" == typeof(n = e.getAttribute(r))) { try { n = "true" === (i = n) || "false" !== i && ("null" === i ? null : i === +i + "" ? +i : X.test(i) ? JSON.parse(i) : i) } catch (e) {} z.set(e, t, n) } else n = void 0; return n } ce.extend({ hasData: function(e) { return z.hasData(e) || _.hasData(e) }, data: function(e, t, n) { return z.access(e, t, n) }, removeData: function(e, t) { z.remove(e, t) }, _data: function(e, t, n) { return _.access(e, t, n) }, _removeData: function(e, t) { _.remove(e, t) } }), ce.fn.extend({ data: function(n, e) { var t, r, i, o = this[0], a = o && o.attributes; if (void 0 === n) { if (this.length && (i = z.get(o), 1 === o.nodeType && !_.get(o, "hasDataAttrs"))) { t = a.length; while (t--) a[t] && 0 === (r = a[t].name).indexOf("data-") && (r = F(r.slice(5)), V(o, r, i[r])); _.set(o, "hasDataAttrs", !0) } return i } return "object" == typeof n ? this.each(function() { z.set(this, n) }) : M(this, function(e) { var t; if (o && void 0 === e) return void 0 !== (t = z.get(o, n)) ? t : void 0 !== (t = V(o, n)) ? t : void 0; this.each(function() { z.set(this, n, e) }) }, null, e, 1 < arguments.length, null, !0) }, removeData: function(e) { return this.each(function() { z.remove(this, e) }) } }), ce.extend({ queue: function(e, t, n) { var r; if (e) return t = (t || "fx") + "queue", r = _.get(e, t), n && (!r || Array.isArray(n) ? r = _.access(e, t, ce.makeArray(n)) : r.push(n)), r || [] }, dequeue: function(e, t) { t = t || "fx"; var n = ce.queue(e, t), r = n.length, i = n.shift(), o = ce._queueHooks(e, t); "inprogress" === i && (i = n.shift(), r--), i && ("fx" === t && n.unshift("inprogress"), delete o.stop, i.call(e, function() { ce.dequeue(e, t) }, o)), !r && o && o.empty.fire() }, _queueHooks: function(e, t) { var n = t + "queueHooks"; return _.get(e, n) || _.access(e, n, { empty: ce.Callbacks("once memory").add(function() { _.remove(e, [t + "queue", n]) }) }) } }), ce.fn.extend({ queue: function(t, n) { var e = 2; return "string" != typeof t && (n = t, t = "fx", e--), arguments.length < e ? ce.queue(this[0], t) : void 0 === n ? this : this.each(function() { var e = ce.queue(this, t, n); ce._queueHooks(this, t), "fx" === t && "inprogress" !== e[0] && ce.dequeue(this, t) }) }, dequeue: function(e) { return this.each(function() { ce.dequeue(this, e) }) }, clearQueue: function(e) { return this.queue(e || "fx", []) }, promise: function(e, t) { var n, r = 1, i = ce.Deferred(), o = this, a = this.length, s = function() { --r || i.resolveWith(o, [o]) }; "string" != typeof e && (t = e, e = void 0), e = e || "fx"; while (a--)(n = _.get(o[a], e + "queueHooks")) && n.empty && (r++, n.empty.add(s)); return s(), i.promise(t) } }); var G = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, Y = new RegExp("^(?:([+-])=|)(" + G + ")([a-z%]*)$", "i"), Q = ["Top", "Right", "Bottom", "Left"], J = C.documentElement, K = function(e) { return ce.contains(e.ownerDocument, e) }, Z = { composed: !0 }; J.getRootNode && (K = function(e) { return ce.contains(e.ownerDocument, e) || e.getRootNode(Z) === e.ownerDocument }); var ee = function(e, t) { return "none" === (e = t || e).style.display || "" === e.style.display && K(e) && "none" === ce.css(e, "display") }; function te(e, t, n, r) { var i, o, a = 20, s = r ? function() { return r.cur() } : function() { return ce.css(e, t, "") }, u = s(), l = n && n[3] || (ce.cssNumber[t] ? "" : "px"), c = e.nodeType && (ce.cssNumber[t] || "px" !== l && +u) && Y.exec(ce.css(e, t)); if (c && c[3] !== l) { u /= 2, l = l || c[3], c = +u || 1; while (a--) ce.style(e, t, c + l), (1 - o) * (1 - (o = s() / u || .5)) <= 0 && (a = 0), c /= o; c *= 2, ce.style(e, t, c + l), n = n || [] } return n && (c = +c || +u || 0, i = n[1] ? c + (n[1] + 1) * n[2] : +n[2], r && (r.unit = l, r.start = c, r.end = i)), i } var ne = {}; function re(e, t) { for (var n, r, i, o, a, s, u, l = [], c = 0, f = e.length; c < f; c++)(r = e[c]).style && (n = r.style.display, t ? ("none" === n && (l[c] = _.get(r, "display") || null, l[c] || (r.style.display = "")), "" === r.style.display && ee(r) && (l[c] = (u = a = o = void 0, a = (i = r).ownerDocument, s = i.nodeName, (u = ne[s]) || (o = a.body.appendChild(a.createElement(s)), u = ce.css(o, "display"), o.parentNode.removeChild(o), "none" === u && (u = "block"), ne[s] = u)))) : "none" !== n && (l[c] = "none", _.set(r, "display", n))); for (c = 0; c < f; c++) null != l[c] && (e[c].style.display = l[c]); return e } ce.fn.extend({ show: function() { return re(this, !0) }, hide: function() { return re(this) }, toggle: function(e) { return "boolean" == typeof e ? e ? this.show() : this.hide() : this.each(function() { ee(this) ? ce(this).show() : ce(this).hide() }) } }); var xe, be, we = /^(?:checkbox|radio)$/i, Te = /<([a-z][^\/\0>\x20\t\r\n\f]*)/i, Ce = /^$|^module$|\/(?:java|ecma)script/i; xe = C.createDocumentFragment().appendChild(C.createElement("div")), (be = C.createElement("input")).setAttribute("type", "radio"), be.setAttribute("checked", "checked"), be.setAttribute("name", "t"), xe.appendChild(be), le.checkClone = xe.cloneNode(!0).cloneNode(!0).lastChild.checked, xe.innerHTML = "<textarea>x</textarea>", le.noCloneChecked = !!xe.cloneNode(!0).lastChild.defaultValue, xe.innerHTML = "<option></option>", le.option = !!xe.lastChild; var ke = { thead: [1, "<table>", "</table>"], col: [2, "<table><colgroup>", "</colgroup></table>"], tr: [2, "<table><tbody>", "</tbody></table>"], td: [3, "<table><tbody><tr>", "</tr></tbody></table>"], _default: [0, "", ""] }; function Se(e, t) { var n; return n = "undefined" != typeof e.getElementsByTagName ? e.getElementsByTagName(t || "*") : "undefined" != typeof e.querySelectorAll ? e.querySelectorAll(t || "*") : [], void 0 === t || t && fe(e, t) ? ce.merge([e], n) : n } function Ee(e, t) { for (var n = 0, r = e.length; n < r; n++) _.set(e[n], "globalEval", !t || _.get(t[n], "globalEval")) } ke.tbody = ke.tfoot = ke.colgroup = ke.caption = ke.thead, ke.th = ke.td, le.option || (ke.optgroup = ke.option = [1, "<select multiple='multiple'>", "</select>"]); var je = /<|&#?\w+;/; function Ae(e, t, n, r, i) { for (var o, a, s, u, l, c, f = t.createDocumentFragment(), p = [], d = 0, h = e.length; d < h; d++) if ((o = e[d]) || 0 === o) if ("object" === x(o)) ce.merge(p, o.nodeType ? [o] : o); else if (je.test(o)) { a = a || f.appendChild(t.createElement("div")), s = (Te.exec(o) || ["", ""])[1].toLowerCase(), u = ke[s] || ke._default, a.innerHTML = u[1] + ce.htmlPrefilter(o) + u[2], c = u[0]; while (c--) a = a.lastChild; ce.merge(p, a.childNodes), (a = f.firstChild).textContent = "" } else p.push(t.createTextNode(o)); f.textContent = "", d = 0; while (o = p[d++]) if (r && -1 < ce.inArray(o, r)) i && i.push(o); else if (l = K(o), a = Se(f.appendChild(o), "script"), l && Ee(a), n) { c = 0; while (o = a[c++]) Ce.test(o.type || "") && n.push(o) } return f } var De = /^([^.]*)(?:\.(.+)|)/; function Ne() { return !0 } function qe() { return !1 } function Le(e, t, n, r, i, o) { var a, s; if ("object" == typeof t) { for (s in "string" != typeof n && (r = r || n, n = void 0), t) Le(e, s, n, r, t[s], o); return e } if (null == r && null == i ? (i = n, r = n = void 0) : null == i && ("string" == typeof n ? (i = r, r = void 0) : (i = r, r = n, n = void 0)), !1 === i) i = qe; else if (!i) return e; return 1 === o && (a = i, (i = function(e) { return ce().off(e), a.apply(this, arguments) }).guid = a.guid || (a.guid = ce.guid++)), e.each(function() { ce.event.add(this, t, i, r, n) }) } function He(e, r, t) { t ? (_.set(e, r, !1), ce.event.add(e, r, { namespace: !1, handler: function(e) { var t, n = _.get(this, r); if (1 & e.isTrigger && this[r]) { if (n)(ce.event.special[r] || {}).delegateType && e.stopPropagation(); else if (n = ae.call(arguments), _.set(this, r, n), this[r](), t = _.get(this, r), _.set(this, r, !1), n !== t) return e.stopImmediatePropagation(), e.preventDefault(), t } else n && (_.set(this, r, ce.event.trigger(n[0], n.slice(1), this)), e.stopPropagation(), e.isImmediatePropagationStopped = Ne) } })) : void 0 === _.get(e, r) && ce.event.add(e, r, Ne) } ce.event = { global: {}, add: function(t, e, n, r, i) { var o, a, s, u, l, c, f, p, d, h, g, v = _.get(t); if ($(t)) { n.handler && (n = (o = n).handler, i = o.selector), i && ce.find.matchesSelector(J, i), n.guid || (n.guid = ce.guid++), (u = v.events) || (u = v.events = Object.create(null)), (a = v.handle) || (a = v.handle = function(e) { return "undefined" != typeof ce && ce.event.triggered !== e.type ? ce.event.dispatch.apply(t, arguments) : void 0 }), l = (e = (e || "").match(D) || [""]).length; while (l--) d = g = (s = De.exec(e[l]) || [])[1], h = (s[2] || "").split(".").sort(), d && (f = ce.event.special[d] || {}, d = (i ? f.delegateType : f.bindType) || d, f = ce.event.special[d] || {}, c = ce.extend({ type: d, origType: g, data: r, handler: n, guid: n.guid, selector: i, needsContext: i && ce.expr.match.needsContext.test(i), namespace: h.join(".") }, o), (p = u[d]) || ((p = u[d] = []).delegateCount = 0, f.setup && !1 !== f.setup.call(t, r, h, a) || t.addEventListener && t.addEventListener(d, a)), f.add && (f.add.call(t, c), c.handler.guid || (c.handler.guid = n.guid)), i ? p.splice(p.delegateCount++, 0, c) : p.push(c), ce.event.global[d] = !0) } }, remove: function(e, t, n, r, i) { var o, a, s, u, l, c, f, p, d, h, g, v = _.hasData(e) && _.get(e); if (v && (u = v.events)) { l = (t = (t || "").match(D) || [""]).length; while (l--) if (d = g = (s = De.exec(t[l]) || [])[1], h = (s[2] || "").split(".").sort(), d) { f = ce.event.special[d] || {}, p = u[d = (r ? f.delegateType : f.bindType) || d] || [], s = s[2] && new RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)"), a = o = p.length; while (o--) c = p[o], !i && g !== c.origType || n && n.guid !== c.guid || s && !s.test(c.namespace) || r && r !== c.selector && ("**" !== r || !c.selector) || (p.splice(o, 1), c.selector && p.delegateCount--, f.remove && f.remove.call(e, c)); a && !p.length && (f.teardown && !1 !== f.teardown.call(e, h, v.handle) || ce.removeEvent(e, d, v.handle), delete u[d]) } else for (d in u) ce.event.remove(e, d + t[l], n, r, !0); ce.isEmptyObject(u) && _.remove(e, "handle events") } }, dispatch: function(e) { var t, n, r, i, o, a, s = new Array(arguments.length), u = ce.event.fix(e), l = (_.get(this, "events") || Object.create(null))[u.type] || [], c = ce.event.special[u.type] || {}; for (s[0] = u, t = 1; t < arguments.length; t++) s[t] = arguments[t]; if (u.delegateTarget = this, !c.preDispatch || !1 !== c.preDispatch.call(this, u)) { a = ce.event.handlers.call(this, u, l), t = 0; while ((i = a[t++]) && !u.isPropagationStopped()) { u.currentTarget = i.elem, n = 0; while ((o = i.handlers[n++]) && !u.isImmediatePropagationStopped()) u.rnamespace && !1 !== o.namespace && !u.rnamespace.test(o.namespace) || (u.handleObj = o, u.data = o.data, void 0 !== (r = ((ce.event.special[o.origType] || {}).handle || o.handler).apply(i.elem, s)) && !1 === (u.result = r) && (u.preventDefault(), u.stopPropagation())) } return c.postDispatch && c.postDispatch.call(this, u), u.result } }, handlers: function(e, t) { var n, r, i, o, a, s = [], u = t.delegateCount, l = e.target; if (u && l.nodeType && !("click" === e.type && 1 <= e.button)) for (; l !== this; l = l.parentNode || this) if (1 === l.nodeType && ("click" !== e.type || !0 !== l.disabled)) { for (o = [], a = {}, n = 0; n < u; n++) void 0 === a[i = (r = t[n]).selector + " "] && (a[i] = r.needsContext ? -1 < ce(i, this).index(l) : ce.find(i, this, null, [l]).length), a[i] && o.push(r); o.length && s.push({ elem: l, handlers: o }) } return l = this, u < t.length && s.push({ elem: l, handlers: t.slice(u) }), s }, addProp: function(t, e) { Object.defineProperty(ce.Event.prototype, t, { enumerable: !0, configurable: !0, get: v(e) ? function() { if (this.originalEvent) return e(this.originalEvent) } : function() { if (this.originalEvent) return this.originalEvent[t] }, set: function(e) { Object.defineProperty(this, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) } }) }, fix: function(e) { return e[ce.expando] ? e : new ce.Event(e) }, special: { load: { noBubble: !0 }, click: { setup: function(e) { var t = this || e; return we.test(t.type) && t.click && fe(t, "input") && He(t, "click", !0), !1 }, trigger: function(e) { var t = this || e; return we.test(t.type) && t.click && fe(t, "input") && He(t, "click"), !0 }, _default: function(e) { var t = e.target; return we.test(t.type) && t.click && fe(t, "input") && _.get(t, "click") || fe(t, "a") } }, beforeunload: { postDispatch: function(e) { void 0 !== e.result && e.originalEvent && (e.originalEvent.returnValue = e.result) } } } }, ce.removeEvent = function(e, t, n) { e.removeEventListener && e.removeEventListener(t, n) }, ce.Event = function(e, t) { if (!(this instanceof ce.Event)) return new ce.Event(e, t); e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || void 0 === e.defaultPrevented && !1 === e.returnValue ? Ne : qe, this.target = e.target && 3 === e.target.nodeType ? e.target.parentNode : e.target, this.currentTarget = e.currentTarget, this.relatedTarget = e.relatedTarget) : this.type = e, t && ce.extend(this, t), this.timeStamp = e && e.timeStamp || Date.now(), this[ce.expando] = !0 }, ce.Event.prototype = { constructor: ce.Event, isDefaultPrevented: qe, isPropagationStopped: qe, isImmediatePropagationStopped: qe, isSimulated: !1, preventDefault: function() { var e = this.originalEvent; this.isDefaultPrevented = Ne, e && !this.isSimulated && e.preventDefault() }, stopPropagation: function() { var e = this.originalEvent; this.isPropagationStopped = Ne, e && !this.isSimulated && e.stopPropagation() }, stopImmediatePropagation: function() { var e = this.originalEvent; this.isImmediatePropagationStopped = Ne, e && !this.isSimulated && e.stopImmediatePropagation(), this.stopPropagation() } }, ce.each({ altKey: !0, bubbles: !0, cancelable: !0, changedTouches: !0, ctrlKey: !0, detail: !0, eventPhase: !0, metaKey: !0, pageX: !0, pageY: !0, shiftKey: !0, view: !0, "char": !0, code: !0, charCode: !0, key: !0, keyCode: !0, button: !0, buttons: !0, clientX: !0, clientY: !0, offsetX: !0, offsetY: !0, pointerId: !0, pointerType: !0, screenX: !0, screenY: !0, targetTouches: !0, toElement: !0, touches: !0, which: !0 }, ce.event.addProp), ce.each({ focus: "focusin", blur: "focusout" }, function(r, i) { function o(e) { if (C.documentMode) { var t = _.get(this, "handle"), n = ce.event.fix(e); n.type = "focusin" === e.type ? "focus" : "blur", n.isSimulated = !0, t(e), n.target === n.currentTarget && t(n) } else ce.event.simulate(i, e.target, ce.event.fix(e)) } ce.event.special[r] = { setup: function() { var e; if (He(this, r, !0), !C.documentMode) return !1; (e = _.get(this, i)) || this.addEventListener(i, o), _.set(this, i, (e || 0) + 1) }, trigger: function() { return He(this, r), !0 }, teardown: function() { var e; if (!C.documentMode) return !1; (e = _.get(this, i) - 1) ? _.set(this, i, e): (this.removeEventListener(i, o), _.remove(this, i)) }, _default: function(e) { return _.get(e.target, r) }, delegateType: i }, ce.event.special[i] = { setup: function() { var e = this.ownerDocument || this.document || this, t = C.documentMode ? this : e, n = _.get(t, i); n || (C.documentMode ? this.addEventListener(i, o) : e.addEventListener(r, o, !0)), _.set(t, i, (n || 0) + 1) }, teardown: function() { var e = this.ownerDocument || this.document || this, t = C.documentMode ? this : e, n = _.get(t, i) - 1; n ? _.set(t, i, n) : (C.documentMode ? this.removeEventListener(i, o) : e.removeEventListener(r, o, !0), _.remove(t, i)) } } }), ce.each({ mouseenter: "mouseover", mouseleave: "mouseout", pointerenter: "pointerover", pointerleave: "pointerout" }, function(e, i) { ce.event.special[e] = { delegateType: i, bindType: i, handle: function(e) { var t, n = e.relatedTarget, r = e.handleObj; return n && (n === this || ce.contains(this, n)) || (e.type = r.origType, t = r.handler.apply(this, arguments), e.type = i), t } } }), ce.fn.extend({ on: function(e, t, n, r) { return Le(this, e, t, n, r) }, one: function(e, t, n, r) { return Le(this, e, t, n, r, 1) }, off: function(e, t, n) { var r, i; if (e && e.preventDefault && e.handleObj) return r = e.handleObj, ce(e.delegateTarget).off(r.namespace ? r.origType + "." + r.namespace : r.origType, r.selector, r.handler), this; if ("object" == typeof e) { for (i in e) this.off(i, t, e[i]); return this } return !1 !== t && "function" != typeof t || (n = t, t = void 0), !1 === n && (n = qe), this.each(function() { ce.event.remove(this, e, n, t) }) } }); var Oe = /<script|<style|<link/i, Pe = /checked\s*(?:[^=]|=\s*.checked.)/i, Me = /^\s*<!\[CDATA\[|\]\]>\s*$/g; function Re(e, t) { return fe(e, "table") && fe(11 !== t.nodeType ? t : t.firstChild, "tr") && ce(e).children("tbody")[0] || e } function Ie(e) { return e.type = (null !== e.getAttribute("type")) + "/" + e.type, e } function We(e) { return "true/" === (e.type || "").slice(0, 5) ? e.type = e.type.slice(5) : e.removeAttribute("type"), e } function Fe(e, t) { var n, r, i, o, a, s; if (1 === t.nodeType) { if (_.hasData(e) && (s = _.get(e).events)) for (i in _.remove(t, "handle events"), s) for (n = 0, r = s[i].length; n < r; n++) ce.event.add(t, i, s[i][n]); z.hasData(e) && (o = z.access(e), a = ce.extend({}, o), z.set(t, a)) } } function $e(n, r, i, o) { r = g(r); var e, t, a, s, u, l, c = 0, f = n.length, p = f - 1, d = r[0], h = v(d); if (h || 1 < f && "string" == typeof d && !le.checkClone && Pe.test(d)) return n.each(function(e) { var t = n.eq(e); h && (r[0] = d.call(this, e, t.html())), $e(t, r, i, o) }); if (f && (t = (e = Ae(r, n[0].ownerDocument, !1, n, o)).firstChild, 1 === e.childNodes.length && (e = t), t || o)) { for (s = (a = ce.map(Se(e, "script"), Ie)).length; c < f; c++) u = e, c !== p && (u = ce.clone(u, !0, !0), s && ce.merge(a, Se(u, "script"))), i.call(n[c], u, c); if (s) for (l = a[a.length - 1].ownerDocument, ce.map(a, We), c = 0; c < s; c++) u = a[c], Ce.test(u.type || "") && !_.access(u, "globalEval") && ce.contains(l, u) && (u.src && "module" !== (u.type || "").toLowerCase() ? ce._evalUrl && !u.noModule && ce._evalUrl(u.src, { nonce: u.nonce || u.getAttribute("nonce") }, l) : m(u.textContent.replace(Me, ""), u, l)) } return n } function Be(e, t, n) { for (var r, i = t ? ce.filter(t, e) : e, o = 0; null != (r = i[o]); o++) n || 1 !== r.nodeType || ce.cleanData(Se(r)), r.parentNode && (n && K(r) && Ee(Se(r, "script")), r.parentNode.removeChild(r)); return e } ce.extend({ htmlPrefilter: function(e) { return e }, clone: function(e, t, n) { var r, i, o, a, s, u, l, c = e.cloneNode(!0), f = K(e); if (!(le.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || ce.isXMLDoc(e))) for (a = Se(c), r = 0, i = (o = Se(e)).length; r < i; r++) s = o[r], u = a[r], void 0, "input" === (l = u.nodeName.toLowerCase()) && we.test(s.type) ? u.checked = s.checked : "input" !== l && "textarea" !== l || (u.defaultValue = s.defaultValue); if (t) if (n) for (o = o || Se(e), a = a || Se(c), r = 0, i = o.length; r < i; r++) Fe(o[r], a[r]); else Fe(e, c); return 0 < (a = Se(c, "script")).length && Ee(a, !f && Se(e, "script")), c }, cleanData: function(e) { for (var t, n, r, i = ce.event.special, o = 0; void 0 !== (n = e[o]); o++) if ($(n)) { if (t = n[_.expando]) { if (t.events) for (r in t.events) i[r] ? ce.event.remove(n, r) : ce.removeEvent(n, r, t.handle); n[_.expando] = void 0 } n[z.expando] && (n[z.expando] = void 0) } } }), ce.fn.extend({ detach: function(e) { return Be(this, e, !0) }, remove: function(e) { return Be(this, e) }, text: function(e) { return M(this, function(e) { return void 0 === e ? ce.text(this) : this.empty().each(function() { 1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (this.textContent = e) }) }, null, e, arguments.length) }, append: function() { return $e(this, arguments, function(e) { 1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || Re(this, e).appendChild(e) }) }, prepend: function() { return $e(this, arguments, function(e) { if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) { var t = Re(this, e); t.insertBefore(e, t.firstChild) } }) }, before: function() { return $e(this, arguments, function(e) { this.parentNode && this.parentNode.insertBefore(e, this) }) }, after: function() { return $e(this, arguments, function(e) { this.parentNode && this.parentNode.insertBefore(e, this.nextSibling) }) }, empty: function() { for (var e, t = 0; null != (e = this[t]); t++) 1 === e.nodeType && (ce.cleanData(Se(e, !1)), e.textContent = ""); return this }, clone: function(e, t) { return e = null != e && e, t = null == t ? e : t, this.map(function() { return ce.clone(this, e, t) }) }, html: function(e) { return M(this, function(e) { var t = this[0] || {}, n = 0, r = this.length; if (void 0 === e && 1 === t.nodeType) return t.innerHTML; if ("string" == typeof e && !Oe.test(e) && !ke[(Te.exec(e) || ["", ""])[1].toLowerCase()]) { e = ce.htmlPrefilter(e); try { for (; n < r; n++) 1 === (t = this[n] || {}).nodeType && (ce.cleanData(Se(t, !1)), t.innerHTML = e); t = 0 } catch (e) {} } t && this.empty().append(e) }, null, e, arguments.length) }, replaceWith: function() { var n = []; return $e(this, arguments, function(e) { var t = this.parentNode; ce.inArray(this, n) < 0 && (ce.cleanData(Se(this)), t && t.replaceChild(e, this)) }, n) } }), ce.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function(e, a) { ce.fn[e] = function(e) { for (var t, n = [], r = ce(e), i = r.length - 1, o = 0; o <= i; o++) t = o === i ? this : this.clone(!0), ce(r[o])[a](t), s.apply(n, t.get()); return this.pushStack(n) } }); var _e = new RegExp("^(" + G + ")(?!px)[a-z%]+$", "i"), ze = /^--/, Xe = function(e) { var t = e.ownerDocument.defaultView; return t && t.opener || (t = ie), t.getComputedStyle(e) }, Ue = function(e, t, n) { var r, i, o = {}; for (i in t) o[i] = e.style[i], e.style[i] = t[i]; for (i in r = n.call(e), t) e.style[i] = o[i]; return r }, Ve = new RegExp(Q.join("|"), "i"); function Ge(e, t, n) { var r, i, o, a, s = ze.test(t), u = e.style; return (n = n || Xe(e)) && (a = n.getPropertyValue(t) || n[t], s && a && (a = a.replace(ve, "$1") || void 0), "" !== a || K(e) || (a = ce.style(e, t)), !le.pixelBoxStyles() && _e.test(a) && Ve.test(t) && (r = u.width, i = u.minWidth, o = u.maxWidth, u.minWidth = u.maxWidth = u.width = a, a = n.width, u.width = r, u.minWidth = i, u.maxWidth = o)), void 0 !== a ? a + "" : a } function Ye(e, t) { return { get: function() { if (!e()) return (this.get = t).apply(this, arguments); delete this.get } } }! function() { function e() { if (l) { u.style.cssText = "position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0", l.style.cssText = "position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%", J.appendChild(u).appendChild(l); var e = ie.getComputedStyle(l); n = "1%" !== e.top, s = 12 === t(e.marginLeft), l.style.right = "60%", o = 36 === t(e.right), r = 36 === t(e.width), l.style.position = "absolute", i = 12 === t(l.offsetWidth / 3), J.removeChild(u), l = null } } function t(e) { return Math.round(parseFloat(e)) } var n, r, i, o, a, s, u = C.createElement("div"), l = C.createElement("div"); l.style && (l.style.backgroundClip = "content-box", l.cloneNode(!0).style.backgroundClip = "", le.clearCloneStyle = "content-box" === l.style.backgroundClip, ce.extend(le, { boxSizingReliable: function() { return e(), r }, pixelBoxStyles: function() { return e(), o }, pixelPosition: function() { return e(), n }, reliableMarginLeft: function() { return e(), s }, scrollboxSize: function() { return e(), i }, reliableTrDimensions: function() { var e, t, n, r; return null == a && (e = C.createElement("table"), t = C.createElement("tr"), n = C.createElement("div"), e.style.cssText = "position:absolute;left:-11111px;border-collapse:separate", t.style.cssText = "box-sizing:content-box;border:1px solid", t.style.height = "1px", n.style.height = "9px", n.style.display = "block", J.appendChild(e).appendChild(t).appendChild(n), r = ie.getComputedStyle(t), a = parseInt(r.height, 10) + parseInt(r.borderTopWidth, 10) + parseInt(r.borderBottomWidth, 10) === t.offsetHeight, J.removeChild(e)), a } })) }(); var Qe = ["Webkit", "Moz", "ms"], Je = C.createElement("div").style, Ke = {}; function Ze(e) { var t = ce.cssProps[e] || Ke[e]; return t || (e in Je ? e : Ke[e] = function(e) { var t = e[0].toUpperCase() + e.slice(1), n = Qe.length; while (n--) if ((e = Qe[n] + t) in Je) return e }(e) || e) } var et = /^(none|table(?!-c[ea]).+)/, tt = { position: "absolute", visibility: "hidden", display: "block" }, nt = { letterSpacing: "0", fontWeight: "400" }; function rt(e, t, n) { var r = Y.exec(t); return r ? Math.max(0, r[2] - (n || 0)) + (r[3] || "px") : t } function it(e, t, n, r, i, o) { var a = "width" === t ? 1 : 0, s = 0, u = 0, l = 0; if (n === (r ? "border" : "content")) return 0; for (; a < 4; a += 2) "margin" === n && (l += ce.css(e, n + Q[a], !0, i)), r ? ("content" === n && (u -= ce.css(e, "padding" + Q[a], !0, i)), "margin" !== n && (u -= ce.css(e, "border" + Q[a] + "Width", !0, i))) : (u += ce.css(e, "padding" + Q[a], !0, i), "padding" !== n ? u += ce.css(e, "border" + Q[a] + "Width", !0, i) : s += ce.css(e, "border" + Q[a] + "Width", !0, i)); return !r && 0 <= o && (u += Math.max(0, Math.ceil(e["offset" + t[0].toUpperCase() + t.slice(1)] - o - u - s - .5)) || 0), u + l } function ot(e, t, n) { var r = Xe(e), i = (!le.boxSizingReliable() || n) && "border-box" === ce.css(e, "boxSizing", !1, r), o = i, a = Ge(e, t, r), s = "offset" + t[0].toUpperCase() + t.slice(1); if (_e.test(a)) { if (!n) return a; a = "auto" } return (!le.boxSizingReliable() && i || !le.reliableTrDimensions() && fe(e, "tr") || "auto" === a || !parseFloat(a) && "inline" === ce.css(e, "display", !1, r)) && e.getClientRects().length && (i = "border-box" === ce.css(e, "boxSizing", !1, r), (o = s in e) && (a = e[s])), (a = parseFloat(a) || 0) + it(e, t, n || (i ? "border" : "content"), o, r, a) + "px" } function at(e, t, n, r, i) { return new at.prototype.init(e, t, n, r, i) } ce.extend({ cssHooks: { opacity: { get: function(e, t) { if (t) { var n = Ge(e, "opacity"); return "" === n ? "1" : n } } } }, cssNumber: { animationIterationCount: !0, aspectRatio: !0, borderImageSlice: !0, columnCount: !0, flexGrow: !0, flexShrink: !0, fontWeight: !0, gridArea: !0, gridColumn: !0, gridColumnEnd: !0, gridColumnStart: !0, gridRow: !0, gridRowEnd: !0, gridRowStart: !0, lineHeight: !0, opacity: !0, order: !0, orphans: !0, scale: !0, widows: !0, zIndex: !0, zoom: !0, fillOpacity: !0, floodOpacity: !0, stopOpacity: !0, strokeMiterlimit: !0, strokeOpacity: !0 }, cssProps: {}, style: function(e, t, n, r) { if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) { var i, o, a, s = F(t), u = ze.test(t), l = e.style; if (u || (t = Ze(s)), a = ce.cssHooks[t] || ce.cssHooks[s], void 0 === n) return a && "get" in a && void 0 !== (i = a.get(e, !1, r)) ? i : l[t]; "string" === (o = typeof n) && (i = Y.exec(n)) && i[1] && (n = te(e, t, i), o = "number"), null != n && n == n && ("number" !== o || u || (n += i && i[3] || (ce.cssNumber[s] ? "" : "px")), le.clearCloneStyle || "" !== n || 0 !== t.indexOf("background") || (l[t] = "inherit"), a && "set" in a && void 0 === (n = a.set(e, n, r)) || (u ? l.setProperty(t, n) : l[t] = n)) } }, css: function(e, t, n, r) { var i, o, a, s = F(t); return ze.test(t) || (t = Ze(s)), (a = ce.cssHooks[t] || ce.cssHooks[s]) && "get" in a && (i = a.get(e, !0, n)), void 0 === i && (i = Ge(e, t, r)), "normal" === i && t in nt && (i = nt[t]), "" === n || n ? (o = parseFloat(i), !0 === n || isFinite(o) ? o || 0 : i) : i } }), ce.each(["height", "width"], function(e, u) { ce.cssHooks[u] = { get: function(e, t, n) { if (t) return !et.test(ce.css(e, "display")) || e.getClientRects().length && e.getBoundingClientRect().width ? ot(e, u, n) : Ue(e, tt, function() { return ot(e, u, n) }) }, set: function(e, t, n) { var r, i = Xe(e), o = !le.scrollboxSize() && "absolute" === i.position, a = (o || n) && "border-box" === ce.css(e, "boxSizing", !1, i), s = n ? it(e, u, n, a, i) : 0; return a && o && (s -= Math.ceil(e["offset" + u[0].toUpperCase() + u.slice(1)] - parseFloat(i[u]) - it(e, u, "border", !1, i) - .5)), s && (r = Y.exec(t)) && "px" !== (r[3] || "px") && (e.style[u] = t, t = ce.css(e, u)), rt(0, t, s) } } }), ce.cssHooks.marginLeft = Ye(le.reliableMarginLeft, function(e, t) { if (t) return (parseFloat(Ge(e, "marginLeft")) || e.getBoundingClientRect().left - Ue(e, { marginLeft: 0 }, function() { return e.getBoundingClientRect().left })) + "px" }), ce.each({ margin: "", padding: "", border: "Width" }, function(i, o) { ce.cssHooks[i + o] = { expand: function(e) { for (var t = 0, n = {}, r = "string" == typeof e ? e.split(" ") : [e]; t < 4; t++) n[i + Q[t] + o] = r[t] || r[t - 2] || r[0]; return n } }, "margin" !== i && (ce.cssHooks[i + o].set = rt) }), ce.fn.extend({ css: function(e, t) { return M(this, function(e, t, n) { var r, i, o = {}, a = 0; if (Array.isArray(t)) { for (r = Xe(e), i = t.length; a < i; a++) o[t[a]] = ce.css(e, t[a], !1, r); return o } return void 0 !== n ? ce.style(e, t, n) : ce.css(e, t) }, e, t, 1 < arguments.length) } }), ((ce.Tween = at).prototype = { constructor: at, init: function(e, t, n, r, i, o) { this.elem = e, this.prop = n, this.easing = i || ce.easing._default, this.options = t, this.start = this.now = this.cur(), this.end = r, this.unit = o || (ce.cssNumber[n] ? "" : "px") }, cur: function() { var e = at.propHooks[this.prop]; return e && e.get ? e.get(this) : at.propHooks._default.get(this) }, run: function(e) { var t, n = at.propHooks[this.prop]; return this.options.duration ? this.pos = t = ce.easing[this.easing](e, this.options.duration * e, 0, 1, this.options.duration) : this.pos = t = e, this.now = (this.end - this.start) * t + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), n && n.set ? n.set(this) : at.propHooks._default.set(this), this } }).init.prototype = at.prototype, (at.propHooks = { _default: { get: function(e) { var t; return 1 !== e.elem.nodeType || null != e.elem[e.prop] && null == e.elem.style[e.prop] ? e.elem[e.prop] : (t = ce.css(e.elem, e.prop, "")) && "auto" !== t ? t : 0 }, set: function(e) { ce.fx.step[e.prop] ? ce.fx.step[e.prop](e) : 1 !== e.elem.nodeType || !ce.cssHooks[e.prop] && null == e.elem.style[Ze(e.prop)] ? e.elem[e.prop] = e.now : ce.style(e.elem, e.prop, e.now + e.unit) } } }).scrollTop = at.propHooks.scrollLeft = { set: function(e) { e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now) } }, ce.easing = { linear: function(e) { return e }, swing: function(e) { return .5 - Math.cos(e * Math.PI) / 2 }, _default: "swing" }, ce.fx = at.prototype.init, ce.fx.step = {}; var st, ut, lt, ct, ft = /^(?:toggle|show|hide)$/, pt = /queueHooks$/; function dt() { ut && (!1 === C.hidden && ie.requestAnimationFrame ? ie.requestAnimationFrame(dt) : ie.setTimeout(dt, ce.fx.interval), ce.fx.tick()) } function ht() { return ie.setTimeout(function() { st = void 0 }), st = Date.now() } function gt(e, t) { var n, r = 0, i = { height: e }; for (t = t ? 1 : 0; r < 4; r += 2 - t) i["margin" + (n = Q[r])] = i["padding" + n] = e; return t && (i.opacity = i.width = e), i } function vt(e, t, n) { for (var r, i = (yt.tweeners[t] || []).concat(yt.tweeners["*"]), o = 0, a = i.length; o < a; o++) if (r = i[o].call(n, t, e)) return r } function yt(o, e, t) { var n, a, r = 0, i = yt.prefilters.length, s = ce.Deferred().always(function() { delete u.elem }), u = function() { if (a) return !1; for (var e = st || ht(), t = Math.max(0, l.startTime + l.duration - e), n = 1 - (t / l.duration || 0), r = 0, i = l.tweens.length; r < i; r++) l.tweens[r].run(n); return s.notifyWith(o, [l, n, t]), n < 1 && i ? t : (i || s.notifyWith(o, [l, 1, 0]), s.resolveWith(o, [l]), !1) }, l = s.promise({ elem: o, props: ce.extend({}, e), opts: ce.extend(!0, { specialEasing: {}, easing: ce.easing._default }, t), originalProperties: e, originalOptions: t, startTime: st || ht(), duration: t.duration, tweens: [], createTween: function(e, t) { var n = ce.Tween(o, l.opts, e, t, l.opts.specialEasing[e] || l.opts.easing); return l.tweens.push(n), n }, stop: function(e) { var t = 0, n = e ? l.tweens.length : 0; if (a) return this; for (a = !0; t < n; t++) l.tweens[t].run(1); return e ? (s.notifyWith(o, [l, 1, 0]), s.resolveWith(o, [l, e])) : s.rejectWith(o, [l, e]), this } }), c = l.props; for (! function(e, t) { var n, r, i, o, a; for (n in e) if (i = t[r = F(n)], o = e[n], Array.isArray(o) && (i = o[1], o = e[n] = o[0]), n !== r && (e[r] = o, delete e[n]), (a = ce.cssHooks[r]) && "expand" in a) for (n in o = a.expand(o), delete e[r], o) n in e || (e[n] = o[n], t[n] = i); else t[r] = i }(c, l.opts.specialEasing); r < i; r++) if (n = yt.prefilters[r].call(l, o, c, l.opts)) return v(n.stop) && (ce._queueHooks(l.elem, l.opts.queue).stop = n.stop.bind(n)), n; return ce.map(c, vt, l), v(l.opts.start) && l.opts.start.call(o, l), l.progress(l.opts.progress).done(l.opts.done, l.opts.complete).fail(l.opts.fail).always(l.opts.always), ce.fx.timer(ce.extend(u, { elem: o, anim: l, queue: l.opts.queue })), l } ce.Animation = ce.extend(yt, { tweeners: { "*": [function(e, t) { var n = this.createTween(e, t); return te(n.elem, e, Y.exec(t), n), n }] }, tweener: function(e, t) { v(e) ? (t = e, e = ["*"]) : e = e.match(D); for (var n, r = 0, i = e.length; r < i; r++) n = e[r], yt.tweeners[n] = yt.tweeners[n] || [], yt.tweeners[n].unshift(t) }, prefilters: [function(e, t, n) { var r, i, o, a, s, u, l, c, f = "width" in t || "height" in t, p = this, d = {}, h = e.style, g = e.nodeType && ee(e), v = _.get(e, "fxshow"); for (r in n.queue || (null == (a = ce._queueHooks(e, "fx")).unqueued && (a.unqueued = 0, s = a.empty.fire, a.empty.fire = function() { a.unqueued || s() }), a.unqueued++, p.always(function() { p.always(function() { a.unqueued--, ce.queue(e, "fx").length || a.empty.fire() }) })), t) if (i = t[r], ft.test(i)) { if (delete t[r], o = o || "toggle" === i, i === (g ? "hide" : "show")) { if ("show" !== i || !v || void 0 === v[r]) continue; g = !0 } d[r] = v && v[r] || ce.style(e, r) } if ((u = !ce.isEmptyObject(t)) || !ce.isEmptyObject(d)) for (r in f && 1 === e.nodeType && (n.overflow = [h.overflow, h.overflowX, h.overflowY], null == (l = v && v.display) && (l = _.get(e, "display")), "none" === (c = ce.css(e, "display")) && (l ? c = l : (re([e], !0), l = e.style.display || l, c = ce.css(e, "display"), re([e]))), ("inline" === c || "inline-block" === c && null != l) && "none" === ce.css(e, "float") && (u || (p.done(function() { h.display = l }), null == l && (c = h.display, l = "none" === c ? "" : c)), h.display = "inline-block")), n.overflow && (h.overflow = "hidden", p.always(function() { h.overflow = n.overflow[0], h.overflowX = n.overflow[1], h.overflowY = n.overflow[2] })), u = !1, d) u || (v ? "hidden" in v && (g = v.hidden) : v = _.access(e, "fxshow", { display: l }), o && (v.hidden = !g), g && re([e], !0), p.done(function() { for (r in g || re([e]), _.remove(e, "fxshow"), d) ce.style(e, r, d[r]) })), u = vt(g ? v[r] : 0, r, p), r in v || (v[r] = u.start, g && (u.end = u.start, u.start = 0)) }], prefilter: function(e, t) { t ? yt.prefilters.unshift(e) : yt.prefilters.push(e) } }), ce.speed = function(e, t, n) { var r = e && "object" == typeof e ? ce.extend({}, e) : { complete: n || !n && t || v(e) && e, duration: e, easing: n && t || t && !v(t) && t }; return ce.fx.off ? r.duration = 0 : "number" != typeof r.duration && (r.duration in ce.fx.speeds ? r.duration = ce.fx.speeds[r.duration] : r.duration = ce.fx.speeds._default), null != r.queue && !0 !== r.queue || (r.queue = "fx"), r.old = r.complete, r.complete = function() { v(r.old) && r.old.call(this), r.queue && ce.dequeue(this, r.queue) }, r }, ce.fn.extend({ fadeTo: function(e, t, n, r) { return this.filter(ee).css("opacity", 0).show().end().animate({ opacity: t }, e, n, r) }, animate: function(t, e, n, r) { var i = ce.isEmptyObject(t), o = ce.speed(e, n, r), a = function() { var e = yt(this, ce.extend({}, t), o); (i || _.get(this, "finish")) && e.stop(!0) }; return a.finish = a, i || !1 === o.queue ? this.each(a) : this.queue(o.queue, a) }, stop: function(i, e, o) { var a = function(e) { var t = e.stop; delete e.stop, t(o) }; return "string" != typeof i && (o = e, e = i, i = void 0), e && this.queue(i || "fx", []), this.each(function() { var e = !0, t = null != i && i + "queueHooks", n = ce.timers, r = _.get(this); if (t) r[t] && r[t].stop && a(r[t]); else for (t in r) r[t] && r[t].stop && pt.test(t) && a(r[t]); for (t = n.length; t--;) n[t].elem !== this || null != i && n[t].queue !== i || (n[t].anim.stop(o), e = !1, n.splice(t, 1)); !e && o || ce.dequeue(this, i) }) }, finish: function(a) { return !1 !== a && (a = a || "fx"), this.each(function() { var e, t = _.get(this), n = t[a + "queue"], r = t[a + "queueHooks"], i = ce.timers, o = n ? n.length : 0; for (t.finish = !0, ce.queue(this, a, []), r && r.stop && r.stop.call(this, !0), e = i.length; e--;) i[e].elem === this && i[e].queue === a && (i[e].anim.stop(!0), i.splice(e, 1)); for (e = 0; e < o; e++) n[e] && n[e].finish && n[e].finish.call(this); delete t.finish }) } }), ce.each(["toggle", "show", "hide"], function(e, r) { var i = ce.fn[r]; ce.fn[r] = function(e, t, n) { return null == e || "boolean" == typeof e ? i.apply(this, arguments) : this.animate(gt(r, !0), e, t, n) } }), ce.each({ slideDown: gt("show"), slideUp: gt("hide"), slideToggle: gt("toggle"), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide" }, fadeToggle: { opacity: "toggle" } }, function(e, r) { ce.fn[e] = function(e, t, n) { return this.animate(r, e, t, n) } }), ce.timers = [], ce.fx.tick = function() { var e, t = 0, n = ce.timers; for (st = Date.now(); t < n.length; t++)(e = n[t])() || n[t] !== e || n.splice(t--, 1); n.length || ce.fx.stop(), st = void 0 }, ce.fx.timer = function(e) { ce.timers.push(e), ce.fx.start() }, ce.fx.interval = 13, ce.fx.start = function() { ut || (ut = !0, dt()) }, ce.fx.stop = function() { ut = null }, ce.fx.speeds = { slow: 600, fast: 200, _default: 400 }, ce.fn.delay = function(r, e) { return r = ce.fx && ce.fx.speeds[r] || r, e = e || "fx", this.queue(e, function(e, t) { var n = ie.setTimeout(e, r); t.stop = function() { ie.clearTimeout(n) } }) }, lt = C.createElement("input"), ct = C.createElement("select").appendChild(C.createElement("option")), lt.type = "checkbox", le.checkOn = "" !== lt.value, le.optSelected = ct.selected, (lt = C.createElement("input")).value = "t", lt.type = "radio", le.radioValue = "t" === lt.value; var mt, xt = ce.expr.attrHandle; ce.fn.extend({ attr: function(e, t) { return M(this, ce.attr, e, t, 1 < arguments.length) }, removeAttr: function(e) { return this.each(function() { ce.removeAttr(this, e) }) } }), ce.extend({ attr: function(e, t, n) { var r, i, o = e.nodeType; if (3 !== o && 8 !== o && 2 !== o) return "undefined" == typeof e.getAttribute ? ce.prop(e, t, n) : (1 === o && ce.isXMLDoc(e) || (i = ce.attrHooks[t.toLowerCase()] || (ce.expr.match.bool.test(t) ? mt : void 0)), void 0 !== n ? null === n ? void ce.removeAttr(e, t) : i && "set" in i && void 0 !== (r = i.set(e, n, t)) ? r : (e.setAttribute(t, n + ""), n) : i && "get" in i && null !== (r = i.get(e, t)) ? r : null == (r = ce.find.attr(e, t)) ? void 0 : r) }, attrHooks: { type: { set: function(e, t) { if (!le.radioValue && "radio" === t && fe(e, "input")) { var n = e.value; return e.setAttribute("type", t), n && (e.value = n), t } } } }, removeAttr: function(e, t) { var n, r = 0, i = t && t.match(D); if (i && 1 === e.nodeType) while (n = i[r++]) e.removeAttribute(n) } }), mt = { set: function(e, t, n) { return !1 === t ? ce.removeAttr(e, n) : e.setAttribute(n, n), n } }, ce.each(ce.expr.match.bool.source.match(/\w+/g), function(e, t) { var a = xt[t] || ce.find.attr; xt[t] = function(e, t, n) { var r, i, o = t.toLowerCase(); return n || (i = xt[o], xt[o] = r, r = null != a(e, t, n) ? o : null, xt[o] = i), r } }); var bt = /^(?:input|select|textarea|button)$/i, wt = /^(?:a|area)$/i; function Tt(e) { return (e.match(D) || []).join(" ") } function Ct(e) { return e.getAttribute && e.getAttribute("class") || "" } function kt(e) { return Array.isArray(e) ? e : "string" == typeof e && e.match(D) || [] } ce.fn.extend({ prop: function(e, t) { return M(this, ce.prop, e, t, 1 < arguments.length) }, removeProp: function(e) { return this.each(function() { delete this[ce.propFix[e] || e] }) } }), ce.extend({ prop: function(e, t, n) { var r, i, o = e.nodeType; if (3 !== o && 8 !== o && 2 !== o) return 1 === o && ce.isXMLDoc(e) || (t = ce.propFix[t] || t, i = ce.propHooks[t]), void 0 !== n ? i && "set" in i && void 0 !== (r = i.set(e, n, t)) ? r : e[t] = n : i && "get" in i && null !== (r = i.get(e, t)) ? r : e[t] }, propHooks: { tabIndex: { get: function(e) { var t = ce.find.attr(e, "tabindex"); return t ? parseInt(t, 10) : bt.test(e.nodeName) || wt.test(e.nodeName) && e.href ? 0 : -1 } } }, propFix: { "for": "htmlFor", "class": "className" } }), le.optSelected || (ce.propHooks.selected = { get: function(e) { var t = e.parentNode; return t && t.parentNode && t.parentNode.selectedIndex, null }, set: function(e) { var t = e.parentNode; t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex) } }), ce.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function() { ce.propFix[this.toLowerCase()] = this }), ce.fn.extend({ addClass: function(t) { var e, n, r, i, o, a; return v(t) ? this.each(function(e) { ce(this).addClass(t.call(this, e, Ct(this))) }) : (e = kt(t)).length ? this.each(function() { if (r = Ct(this), n = 1 === this.nodeType && " " + Tt(r) + " ") { for (o = 0; o < e.length; o++) i = e[o], n.indexOf(" " + i + " ") < 0 && (n += i + " "); a = Tt(n), r !== a && this.setAttribute("class", a) } }) : this }, removeClass: function(t) { var e, n, r, i, o, a; return v(t) ? this.each(function(e) { ce(this).removeClass(t.call(this, e, Ct(this))) }) : arguments.length ? (e = kt(t)).length ? this.each(function() { if (r = Ct(this), n = 1 === this.nodeType && " " + Tt(r) + " ") { for (o = 0; o < e.length; o++) { i = e[o]; while (-1 < n.indexOf(" " + i + " ")) n = n.replace(" " + i + " ", " ") } a = Tt(n), r !== a && this.setAttribute("class", a) } }) : this : this.attr("class", "") }, toggleClass: function(t, n) { var e, r, i, o, a = typeof t, s = "string" === a || Array.isArray(t); return v(t) ? this.each(function(e) { ce(this).toggleClass(t.call(this, e, Ct(this), n), n) }) : "boolean" == typeof n && s ? n ? this.addClass(t) : this.removeClass(t) : (e = kt(t), this.each(function() { if (s) for (o = ce(this), i = 0; i < e.length; i++) r = e[i], o.hasClass(r) ? o.removeClass(r) : o.addClass(r); else void 0 !== t && "boolean" !== a || ((r = Ct(this)) && _.set(this, "__className__", r), this.setAttribute && this.setAttribute("class", r || !1 === t ? "" : _.get(this, "__className__") || "")) })) }, hasClass: function(e) { var t, n, r = 0; t = " " + e + " "; while (n = this[r++]) if (1 === n.nodeType && -1 < (" " + Tt(Ct(n)) + " ").indexOf(t)) return !0; return !1 } }); var St = /\r/g; ce.fn.extend({ val: function(n) { var r, e, i, t = this[0]; return arguments.length ? (i = v(n), this.each(function(e) { var t; 1 === this.nodeType && (null == (t = i ? n.call(this, e, ce(this).val()) : n) ? t = "" : "number" == typeof t ? t += "" : Array.isArray(t) && (t = ce.map(t, function(e) { return null == e ? "" : e + "" })), (r = ce.valHooks[this.type] || ce.valHooks[this.nodeName.toLowerCase()]) && "set" in r && void 0 !== r.set(this, t, "value") || (this.value = t)) })) : t ? (r = ce.valHooks[t.type] || ce.valHooks[t.nodeName.toLowerCase()]) && "get" in r && void 0 !== (e = r.get(t, "value")) ? e : "string" == typeof(e = t.value) ? e.replace(St, "") : null == e ? "" : e : void 0 } }), ce.extend({ valHooks: { option: { get: function(e) { var t = ce.find.attr(e, "value"); return null != t ? t : Tt(ce.text(e)) } }, select: { get: function(e) { var t, n, r, i = e.options, o = e.selectedIndex, a = "select-one" === e.type, s = a ? null : [], u = a ? o + 1 : i.length; for (r = o < 0 ? u : a ? o : 0; r < u; r++) if (((n = i[r]).selected || r === o) && !n.disabled && (!n.parentNode.disabled || !fe(n.parentNode, "optgroup"))) { if (t = ce(n).val(), a) return t; s.push(t) } return s }, set: function(e, t) { var n, r, i = e.options, o = ce.makeArray(t), a = i.length; while (a--)((r = i[a]).selected = -1 < ce.inArray(ce.valHooks.option.get(r), o)) && (n = !0); return n || (e.selectedIndex = -1), o } } } }), ce.each(["radio", "checkbox"], function() { ce.valHooks[this] = { set: function(e, t) { if (Array.isArray(t)) return e.checked = -1 < ce.inArray(ce(e).val(), t) } }, le.checkOn || (ce.valHooks[this].get = function(e) { return null === e.getAttribute("value") ? "on" : e.value }) }); var Et = ie.location, jt = { guid: Date.now() }, At = /\?/; ce.parseXML = function(e) { var t, n; if (!e || "string" != typeof e) return null; try { t = (new ie.DOMParser).parseFromString(e, "text/xml") } catch (e) {} return n = t && t.getElementsByTagName("parsererror")[0], t && !n || ce.error("Invalid XML: " + (n ? ce.map(n.childNodes, function(e) { return e.textContent }).join("\n") : e)), t }; var Dt = /^(?:focusinfocus|focusoutblur)$/, Nt = function(e) { e.stopPropagation() }; ce.extend(ce.event, { trigger: function(e, t, n, r) { var i, o, a, s, u, l, c, f, p = [n || C], d = ue.call(e, "type") ? e.type : e, h = ue.call(e, "namespace") ? e.namespace.split(".") : []; if (o = f = a = n = n || C, 3 !== n.nodeType && 8 !== n.nodeType && !Dt.test(d + ce.event.triggered) && (-1 < d.indexOf(".") && (d = (h = d.split(".")).shift(), h.sort()), u = d.indexOf(":") < 0 && "on" + d, (e = e[ce.expando] ? e : new ce.Event(d, "object" == typeof e && e)).isTrigger = r ? 2 : 3, e.namespace = h.join("."), e.rnamespace = e.namespace ? new RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, e.result = void 0, e.target || (e.target = n), t = null == t ? [e] : ce.makeArray(t, [e]), c = ce.event.special[d] || {}, r || !c.trigger || !1 !== c.trigger.apply(n, t))) { if (!r && !c.noBubble && !y(n)) { for (s = c.delegateType || d, Dt.test(s + d) || (o = o.parentNode); o; o = o.parentNode) p.push(o), a = o; a === (n.ownerDocument || C) && p.push(a.defaultView || a.parentWindow || ie) } i = 0; while ((o = p[i++]) && !e.isPropagationStopped()) f = o, e.type = 1 < i ? s : c.bindType || d, (l = (_.get(o, "events") || Object.create(null))[e.type] && _.get(o, "handle")) && l.apply(o, t), (l = u && o[u]) && l.apply && $(o) && (e.result = l.apply(o, t), !1 === e.result && e.preventDefault()); return e.type = d, r || e.isDefaultPrevented() || c._default && !1 !== c._default.apply(p.pop(), t) || !$(n) || u && v(n[d]) && !y(n) && ((a = n[u]) && (n[u] = null), ce.event.triggered = d, e.isPropagationStopped() && f.addEventListener(d, Nt), n[d](), e.isPropagationStopped() && f.removeEventListener(d, Nt), ce.event.triggered = void 0, a && (n[u] = a)), e.result } }, simulate: function(e, t, n) { var r = ce.extend(new ce.Event, n, { type: e, isSimulated: !0 }); ce.event.trigger(r, null, t) } }), ce.fn.extend({ trigger: function(e, t) { return this.each(function() { ce.event.trigger(e, t, this) }) }, triggerHandler: function(e, t) { var n = this[0]; if (n) return ce.event.trigger(e, t, n, !0) } }); var qt = /\[\]$/, Lt = /\r?\n/g, Ht = /^(?:submit|button|image|reset|file)$/i, Ot = /^(?:input|select|textarea|keygen)/i; function Pt(n, e, r, i) { var t; if (Array.isArray(e)) ce.each(e, function(e, t) { r || qt.test(n) ? i(n, t) : Pt(n + "[" + ("object" == typeof t && null != t ? e : "") + "]", t, r, i) }); else if (r || "object" !== x(e)) i(n, e); else for (t in e) Pt(n + "[" + t + "]", e[t], r, i) } ce.param = function(e, t) { var n, r = [], i = function(e, t) { var n = v(t) ? t() : t; r[r.length] = encodeURIComponent(e) + "=" + encodeURIComponent(null == n ? "" : n) }; if (null == e) return ""; if (Array.isArray(e) || e.jquery && !ce.isPlainObject(e)) ce.each(e, function() { i(this.name, this.value) }); else for (n in e) Pt(n, e[n], t, i); return r.join("&") }, ce.fn.extend({ serialize: function() { return ce.param(this.serializeArray()) }, serializeArray: function() { return this.map(function() { var e = ce.prop(this, "elements"); return e ? ce.makeArray(e) : this }).filter(function() { var e = this.type; return this.name && !ce(this).is(":disabled") && Ot.test(this.nodeName) && !Ht.test(e) && (this.checked || !we.test(e)) }).map(function(e, t) { var n = ce(this).val(); return null == n ? null : Array.isArray(n) ? ce.map(n, function(e) { return { name: t.name, value: e.replace(Lt, "\r\n") } }) : { name: t.name, value: n.replace(Lt, "\r\n") } }).get() } }); var Mt = /%20/g, Rt = /#.*$/, It = /([?&])_=[^&]*/, Wt = /^(.*?):[ \t]*([^\r\n]*)$/gm, Ft = /^(?:GET|HEAD)$/, $t = /^\/\//, Bt = {}, _t = {}, zt = "*/".concat("*"), Xt = C.createElement("a"); function Ut(o) { return function(e, t) { "string" != typeof e && (t = e, e = "*"); var n, r = 0, i = e.toLowerCase().match(D) || []; if (v(t)) while (n = i[r++]) "+" === n[0] ? (n = n.slice(1) || "*", (o[n] = o[n] || []).unshift(t)) : (o[n] = o[n] || []).push(t) } } function Vt(t, i, o, a) { var s = {}, u = t === _t; function l(e) { var r; return s[e] = !0, ce.each(t[e] || [], function(e, t) { var n = t(i, o, a); return "string" != typeof n || u || s[n] ? u ? !(r = n) : void 0 : (i.dataTypes.unshift(n), l(n), !1) }), r } return l(i.dataTypes[0]) || !s["*"] && l("*") } function Gt(e, t) { var n, r, i = ce.ajaxSettings.flatOptions || {}; for (n in t) void 0 !== t[n] && ((i[n] ? e : r || (r = {}))[n] = t[n]); return r && ce.extend(!0, e, r), e } Xt.href = Et.href, ce.extend({ active: 0, lastModified: {}, etag: {}, ajaxSettings: { url: Et.href, type: "GET", isLocal: /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Et.protocol), global: !0, processData: !0, async: !0, contentType: "application/x-www-form-urlencoded; charset=UTF-8", accepts: { "*": zt, text: "text/plain", html: "text/html", xml: "application/xml, text/xml", json: "application/json, text/javascript" }, contents: { xml: /\bxml\b/, html: /\bhtml/, json: /\bjson\b/ }, responseFields: { xml: "responseXML", text: "responseText", json: "responseJSON" }, converters: { "* text": String, "text html": !0, "text json": JSON.parse, "text xml": ce.parseXML }, flatOptions: { url: !0, context: !0 } }, ajaxSetup: function(e, t) { return t ? Gt(Gt(e, ce.ajaxSettings), t) : Gt(ce.ajaxSettings, e) }, ajaxPrefilter: Ut(Bt), ajaxTransport: Ut(_t), ajax: function(e, t) { "object" == typeof e && (t = e, e = void 0), t = t || {}; var c, f, p, n, d, r, h, g, i, o, v = ce.ajaxSetup({}, t), y = v.context || v, m = v.context && (y.nodeType || y.jquery) ? ce(y) : ce.event, x = ce.Deferred(), b = ce.Callbacks("once memory"), w = v.statusCode || {}, a = {}, s = {}, u = "canceled", T = { readyState: 0, getResponseHeader: function(e) { var t; if (h) { if (!n) { n = {}; while (t = Wt.exec(p)) n[t[1].toLowerCase() + " "] = (n[t[1].toLowerCase() + " "] || []).concat(t[2]) } t = n[e.toLowerCase() + " "] } return null == t ? null : t.join(", ") }, getAllResponseHeaders: function() { return h ? p : null }, setRequestHeader: function(e, t) { return null == h && (e = s[e.toLowerCase()] = s[e.toLowerCase()] || e, a[e] = t), this }, overrideMimeType: function(e) { return null == h && (v.mimeType = e), this }, statusCode: function(e) { var t; if (e) if (h) T.always(e[T.status]); else for (t in e) w[t] = [w[t], e[t]]; return this }, abort: function(e) { var t = e || u; return c && c.abort(t), l(0, t), this } }; if (x.promise(T), v.url = ((e || v.url || Et.href) + "").replace($t, Et.protocol + "//"), v.type = t.method || t.type || v.method || v.type, v.dataTypes = (v.dataType || "*").toLowerCase().match(D) || [""], null == v.crossDomain) { r = C.createElement("a"); try { r.href = v.url, r.href = r.href, v.crossDomain = Xt.protocol + "//" + Xt.host != r.protocol + "//" + r.host } catch (e) { v.crossDomain = !0 } } if (v.data && v.processData && "string" != typeof v.data && (v.data = ce.param(v.data, v.traditional)), Vt(Bt, v, t, T), h) return T; for (i in (g = ce.event && v.global) && 0 == ce.active++ && ce.event.trigger("ajaxStart"), v.type = v.type.toUpperCase(), v.hasContent = !Ft.test(v.type), f = v.url.replace(Rt, ""), v.hasContent ? v.data && v.processData && 0 === (v.contentType || "").indexOf("application/x-www-form-urlencoded") && (v.data = v.data.replace(Mt, "+")) : (o = v.url.slice(f.length), v.data && (v.processData || "string" == typeof v.data) && (f += (At.test(f) ? "&" : "?") + v.data, delete v.data), !1 === v.cache && (f = f.replace(It, "$1"), o = (At.test(f) ? "&" : "?") + "_=" + jt.guid++ + o), v.url = f + o), v.ifModified && (ce.lastModified[f] && T.setRequestHeader("If-Modified-Since", ce.lastModified[f]), ce.etag[f] && T.setRequestHeader("If-None-Match", ce.etag[f])), (v.data && v.hasContent && !1 !== v.contentType || t.contentType) && T.setRequestHeader("Content-Type", v.contentType), T.setRequestHeader("Accept", v.dataTypes[0] && v.accepts[v.dataTypes[0]] ? v.accepts[v.dataTypes[0]] + ("*" !== v.dataTypes[0] ? ", " + zt + "; q=0.01" : "") : v.accepts["*"]), v.headers) T.setRequestHeader(i, v.headers[i]); if (v.beforeSend && (!1 === v.beforeSend.call(y, T, v) || h)) return T.abort(); if (u = "abort", b.add(v.complete), T.done(v.success), T.fail(v.error), c = Vt(_t, v, t, T)) { if (T.readyState = 1, g && m.trigger("ajaxSend", [T, v]), h) return T; v.async && 0 < v.timeout && (d = ie.setTimeout(function() { T.abort("timeout") }, v.timeout)); try { h = !1, c.send(a, l) } catch (e) { if (h) throw e; l(-1, e) } } else l(-1, "No Transport"); function l(e, t, n, r) { var i, o, a, s, u, l = t; h || (h = !0, d && ie.clearTimeout(d), c = void 0, p = r || "", T.readyState = 0 < e ? 4 : 0, i = 200 <= e && e < 300 || 304 === e, n && (s = function(e, t, n) { var r, i, o, a, s = e.contents, u = e.dataTypes; while ("*" === u[0]) u.shift(), void 0 === r && (r = e.mimeType || t.getResponseHeader("Content-Type")); if (r) for (i in s) if (s[i] && s[i].test(r)) { u.unshift(i); break } if (u[0] in n) o = u[0]; else { for (i in n) { if (!u[0] || e.converters[i + " " + u[0]]) { o = i; break } a || (a = i) } o = o || a } if (o) return o !== u[0] && u.unshift(o), n[o] }(v, T, n)), !i && -1 < ce.inArray("script", v.dataTypes) && ce.inArray("json", v.dataTypes) < 0 && (v.converters["text script"] = function() {}), s = function(e, t, n, r) { var i, o, a, s, u, l = {}, c = e.dataTypes.slice(); if (c[1]) for (a in e.converters) l[a.toLowerCase()] = e.converters[a]; o = c.shift(); while (o) if (e.responseFields[o] && (n[e.responseFields[o]] = t), !u && r && e.dataFilter && (t = e.dataFilter(t, e.dataType)), u = o, o = c.shift()) if ("*" === o) o = u; else if ("*" !== u && u !== o) { if (!(a = l[u + " " + o] || l["* " + o])) for (i in l) if ((s = i.split(" "))[1] === o && (a = l[u + " " + s[0]] || l["* " + s[0]])) { !0 === a ? a = l[i] : !0 !== l[i] && (o = s[0], c.unshift(s[1])); break } if (!0 !== a) if (a && e["throws"]) t = a(t); else try { t = a(t) } catch (e) { return { state: "parsererror", error: a ? e : "No conversion from " + u + " to " + o } } } return { state: "success", data: t } }(v, s, T, i), i ? (v.ifModified && ((u = T.getResponseHeader("Last-Modified")) && (ce.lastModified[f] = u), (u = T.getResponseHeader("etag")) && (ce.etag[f] = u)), 204 === e || "HEAD" === v.type ? l = "nocontent" : 304 === e ? l = "notmodified" : (l = s.state, o = s.data, i = !(a = s.error))) : (a = l, !e && l || (l = "error", e < 0 && (e = 0))), T.status = e, T.statusText = (t || l) + "", i ? x.resolveWith(y, [o, l, T]) : x.rejectWith(y, [T, l, a]), T.statusCode(w), w = void 0, g && m.trigger(i ? "ajaxSuccess" : "ajaxError", [T, v, i ? o : a]), b.fireWith(y, [T, l]), g && (m.trigger("ajaxComplete", [T, v]), --ce.active || ce.event.trigger("ajaxStop"))) } return T }, getJSON: function(e, t, n) { return ce.get(e, t, n, "json") }, getScript: function(e, t) { return ce.get(e, void 0, t, "script") } }), ce.each(["get", "post"], function(e, i) { ce[i] = function(e, t, n, r) { return v(t) && (r = r || n, n = t, t = void 0), ce.ajax(ce.extend({ url: e, type: i, dataType: r, data: t, success: n }, ce.isPlainObject(e) && e)) } }), ce.ajaxPrefilter(function(e) { var t; for (t in e.headers) "content-type" === t.toLowerCase() && (e.contentType = e.headers[t] || "") }), ce._evalUrl = function(e, t, n) { return ce.ajax({ url: e, type: "GET", dataType: "script", cache: !0, async: !1, global: !1, converters: { "text script": function() {} }, dataFilter: function(e) { ce.globalEval(e, t, n) } }) }, ce.fn.extend({ wrapAll: function(e) { var t; return this[0] && (v(e) && (e = e.call(this[0])), t = ce(e, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && t.insertBefore(this[0]), t.map(function() { var e = this; while (e.firstElementChild) e = e.firstElementChild; return e }).append(this)), this }, wrapInner: function(n) { return v(n) ? this.each(function(e) { ce(this).wrapInner(n.call(this, e)) }) : this.each(function() { var e = ce(this), t = e.contents(); t.length ? t.wrapAll(n) : e.append(n) }) }, wrap: function(t) { var n = v(t); return this.each(function(e) { ce(this).wrapAll(n ? t.call(this, e) : t) }) }, unwrap: function(e) { return this.parent(e).not("body").each(function() { ce(this).replaceWith(this.childNodes) }), this } }), ce.expr.pseudos.hidden = function(e) { return !ce.expr.pseudos.visible(e) }, ce.expr.pseudos.visible = function(e) { return !!(e.offsetWidth || e.offsetHeight || e.getClientRects().length) }, ce.ajaxSettings.xhr = function() { try { return new ie.XMLHttpRequest } catch (e) {} }; var Yt = { 0: 200, 1223: 204 }, Qt = ce.ajaxSettings.xhr(); le.cors = !!Qt && "withCredentials" in Qt, le.ajax = Qt = !!Qt, ce.ajaxTransport(function(i) { var o, a; if (le.cors || Qt && !i.crossDomain) return { send: function(e, t) { var n, r = i.xhr(); if (r.open(i.type, i.url, i.async, i.username, i.password), i.xhrFields) for (n in i.xhrFields) r[n] = i.xhrFields[n]; for (n in i.mimeType && r.overrideMimeType && r.overrideMimeType(i.mimeType), i.crossDomain || e["X-Requested-With"] || (e["X-Requested-With"] = "XMLHttpRequest"), e) r.setRequestHeader(n, e[n]); o = function(e) { return function() { o && (o = a = r.onload = r.onerror = r.onabort = r.ontimeout = r.onreadystatechange = null, "abort" === e ? r.abort() : "error" === e ? "number" != typeof r.status ? t(0, "error") : t(r.status, r.statusText) : t(Yt[r.status] || r.status, r.statusText, "text" !== (r.responseType || "text") || "string" != typeof r.responseText ? { binary: r.response } : { text: r.responseText }, r.getAllResponseHeaders())) } }, r.onload = o(), a = r.onerror = r.ontimeout = o("error"), void 0 !== r.onabort ? r.onabort = a : r.onreadystatechange = function() { 4 === r.readyState && ie.setTimeout(function() { o && a() }) }, o = o("abort"); try { r.send(i.hasContent && i.data || null) } catch (e) { if (o) throw e } }, abort: function() { o && o() } } }), ce.ajaxPrefilter(function(e) { e.crossDomain && (e.contents.script = !1) }), ce.ajaxSetup({ accepts: { script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" }, contents: { script: /\b(?:java|ecma)script\b/ }, converters: { "text script": function(e) { return ce.globalEval(e), e } } }), ce.ajaxPrefilter("script", function(e) { void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = "GET") }), ce.ajaxTransport("script", function(n) { var r, i; if (n.crossDomain || n.scriptAttrs) return { send: function(e, t) { r = ce("<script>").attr(n.scriptAttrs || {}).prop({ charset: n.scriptCharset, src: n.url }).on("load error", i = function(e) { r.remove(), i = null, e && t("error" === e.type ? 404 : 200, e.type) }), C.head.appendChild(r[0]) }, abort: function() { i && i() } } }); var Jt, Kt = [], Zt = /(=)\?(?=&|$)|\?\?/; ce.ajaxSetup({ jsonp: "callback", jsonpCallback: function() { var e = Kt.pop() || ce.expando + "_" + jt.guid++; return this[e] = !0, e } }), ce.ajaxPrefilter("json jsonp", function(e, t, n) { var r, i, o, a = !1 !== e.jsonp && (Zt.test(e.url) ? "url" : "string" == typeof e.data && 0 === (e.contentType || "").indexOf("application/x-www-form-urlencoded") && Zt.test(e.data) && "data"); if (a || "jsonp" === e.dataTypes[0]) return r = e.jsonpCallback = v(e.jsonpCallback) ? e.jsonpCallback() : e.jsonpCallback, a ? e[a] = e[a].replace(Zt, "$1" + r) : !1 !== e.jsonp && (e.url += (At.test(e.url) ? "&" : "?") + e.jsonp + "=" + r), e.converters["script json"] = function() { return o || ce.error(r + " was not called"), o[0] }, e.dataTypes[0] = "json", i = ie[r], ie[r] = function() { o = arguments }, n.always(function() { void 0 === i ? ce(ie).removeProp(r) : ie[r] = i, e[r] && (e.jsonpCallback = t.jsonpCallback, Kt.push(r)), o && v(i) && i(o[0]), o = i = void 0 }), "script" }), le.createHTMLDocument = ((Jt = C.implementation.createHTMLDocument("").body).innerHTML = "<form></form><form></form>", 2 === Jt.childNodes.length), ce.parseHTML = function(e, t, n) { return "string" != typeof e ? [] : ("boolean" == typeof t && (n = t, t = !1), t || (le.createHTMLDocument ? ((r = (t = C.implementation.createHTMLDocument("")).createElement("base")).href = C.location.href, t.head.appendChild(r)) : t = C), o = !n && [], (i = w.exec(e)) ? [t.createElement(i[1])] : (i = Ae([e], t, o), o && o.length && ce(o).remove(), ce.merge([], i.childNodes))); var r, i, o }, ce.fn.load = function(e, t, n) { var r, i, o, a = this, s = e.indexOf(" "); return -1 < s && (r = Tt(e.slice(s)), e = e.slice(0, s)), v(t) ? (n = t, t = void 0) : t && "object" == typeof t && (i = "POST"), 0 < a.length && ce.ajax({ url: e, type: i || "GET", dataType: "html", data: t }).done(function(e) { o = arguments, a.html(r ? ce("<div>").append(ce.parseHTML(e)).find(r) : e) }).always(n && function(e, t) { a.each(function() { n.apply(this, o || [e.responseText, t, e]) }) }), this }, ce.expr.pseudos.animated = function(t) { return ce.grep(ce.timers, function(e) { return t === e.elem }).length }, ce.offset = { setOffset: function(e, t, n) { var r, i, o, a, s, u, l = ce.css(e, "position"), c = ce(e), f = {}; "static" === l && (e.style.position = "relative"), s = c.offset(), o = ce.css(e, "top"), u = ce.css(e, "left"), ("absolute" === l || "fixed" === l) && -1 < (o + u).indexOf("auto") ? (a = (r = c.position()).top, i = r.left) : (a = parseFloat(o) || 0, i = parseFloat(u) || 0), v(t) && (t = t.call(e, n, ce.extend({}, s))), null != t.top && (f.top = t.top - s.top + a), null != t.left && (f.left = t.left - s.left + i), "using" in t ? t.using.call(e, f) : c.css(f) } }, ce.fn.extend({ offset: function(t) { if (arguments.length) return void 0 === t ? this : this.each(function(e) { ce.offset.setOffset(this, t, e) }); var e, n, r = this[0]; return r ? r.getClientRects().length ? (e = r.getBoundingClientRect(), n = r.ownerDocument.defaultView, { top: e.top + n.pageYOffset, left: e.left + n.pageXOffset }) : { top: 0, left: 0 } : void 0 }, position: function() { if (this[0]) { var e, t, n, r = this[0], i = { top: 0, left: 0 }; if ("fixed" === ce.css(r, "position")) t = r.getBoundingClientRect(); else { t = this.offset(), n = r.ownerDocument, e = r.offsetParent || n.documentElement; while (e && (e === n.body || e === n.documentElement) && "static" === ce.css(e, "position")) e = e.parentNode; e && e !== r && 1 === e.nodeType && ((i = ce(e).offset()).top += ce.css(e, "borderTopWidth", !0), i.left += ce.css(e, "borderLeftWidth", !0)) } return { top: t.top - i.top - ce.css(r, "marginTop", !0), left: t.left - i.left - ce.css(r, "marginLeft", !0) } } }, offsetParent: function() { return this.map(function() { var e = this.offsetParent; while (e && "static" === ce.css(e, "position")) e = e.offsetParent; return e || J }) } }), ce.each({ scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function(t, i) { var o = "pageYOffset" === i; ce.fn[t] = function(e) { return M(this, function(e, t, n) { var r; if (y(e) ? r = e : 9 === e.nodeType && (r = e.defaultView), void 0 === n) return r ? r[i] : e[t]; r ? r.scrollTo(o ? r.pageXOffset : n, o ? n : r.pageYOffset) : e[t] = n }, t, e, arguments.length) } }), ce.each(["top", "left"], function(e, n) { ce.cssHooks[n] = Ye(le.pixelPosition, function(e, t) { if (t) return t = Ge(e, n), _e.test(t) ? ce(e).position()[n] + "px" : t }) }), ce.each({ Height: "height", Width: "width" }, function(a, s) { ce.each({ padding: "inner" + a, content: s, "": "outer" + a }, function(r, o) { ce.fn[o] = function(e, t) { var n = arguments.length && (r || "boolean" != typeof e), i = r || (!0 === e || !0 === t ? "margin" : "border"); return M(this, function(e, t, n) { var r; return y(e) ? 0 === o.indexOf("outer") ? e["inner" + a] : e.document.documentElement["client" + a] : 9 === e.nodeType ? (r = e.documentElement, Math.max(e.body["scroll" + a], r["scroll" + a], e.body["offset" + a], r["offset" + a], r["client" + a])) : void 0 === n ? ce.css(e, t, i) : ce.style(e, t, n, i) }, s, n ? e : void 0, n) } }) }), ce.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function(e, t) { ce.fn[t] = function(e) { return this.on(t, e) } }), ce.fn.extend({ bind: function(e, t, n) { return this.on(e, null, t, n) }, unbind: function(e, t) { return this.off(e, null, t) }, delegate: function(e, t, n, r) { return this.on(t, e, n, r) }, undelegate: function(e, t, n) { return 1 === arguments.length ? this.off(e, "**") : this.off(t, e || "**", n) }, hover: function(e, t) { return this.on("mouseenter", e).on("mouseleave", t || e) } }), ce.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "), function(e, n) { ce.fn[n] = function(e, t) { return 0 < arguments.length ? this.on(n, null, e, t) : this.trigger(n) } }); var en = /^[\s\uFEFF\xA0]+|([^\s\uFEFF\xA0])[\s\uFEFF\xA0]+$/g; ce.proxy = function(e, t) { var n, r, i; if ("string" == typeof t && (n = e[t], t = e, e = n), v(e)) return r = ae.call(arguments, 2), (i = function() { return e.apply(t || this, r.concat(ae.call(arguments))) }).guid = e.guid = e.guid || ce.guid++, i }, ce.holdReady = function(e) { e ? ce.readyWait++ : ce.ready(!0) }, ce.isArray = Array.isArray, ce.parseJSON = JSON.parse, ce.nodeName = fe, ce.isFunction = v, ce.isWindow = y, ce.camelCase = F, ce.type = x, ce.now = Date.now, ce.isNumeric = function(e) { var t = ce.type(e); return ("number" === t || "string" === t) && !isNaN(e - parseFloat(e)) }, ce.trim = function(e) { return null == e ? "" : (e + "").replace(en, "$1") }, "function" == typeof define && define.amd && define("jquery", [], function() { return ce }); var tn = ie.jQuery, nn = ie.$; return ce.noConflict = function(e) { return ie.$ === ce && (ie.$ = nn), e && ie.jQuery === ce && (ie.jQuery = tn), ce }, "undefined" == typeof e && (ie.jQuery = ie.$ = ce), ce }); /*! * Bootstrap v5.0.2 (https://getbootstrap.com/) * Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */ ! function(t, e) { "object" == typeof exports && "undefined" != typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : (t = "undefined" != typeof globalThis ? globalThis : t || self).bootstrap = e() }(this, (function() { "use strict"; const t = { find: (t, e = document.documentElement) => [].concat(...Element.prototype.querySelectorAll.call(e, t)), findOne: (t, e = document.documentElement) => Element.prototype.querySelector.call(e, t), children: (t, e) => [].concat(...t.children).filter(t => t.matches(e)), parents(t, e) { const i = []; let n = t.parentNode; for (; n && n.nodeType === Node.ELEMENT_NODE && 3 !== n.nodeType;) n.matches(e) && i.push(n), n = n.parentNode; return i }, prev(t, e) { let i = t.previousElementSibling; for (; i;) { if (i.matches(e)) return [i]; i = i.previousElementSibling } return [] }, next(t, e) { let i = t.nextElementSibling; for (; i;) { if (i.matches(e)) return [i]; i = i.nextElementSibling } return [] } }, e = t => { do { t += Math.floor(1e6 * Math.random()) } while (document.getElementById(t)); return t }, i = t => { let e = t.getAttribute("data-bs-target"); if (!e || "#" === e) { let i = t.getAttribute("href"); if (!i || !i.includes("#") && !i.startsWith(".")) return null; i.includes("#") && !i.startsWith("#") && (i = "#" + i.split("#")[1]), e = i && "#" !== i ? i.trim() : null } return e }, n = t => { const e = i(t); return e && document.querySelector(e) ? e : null }, s = t => { const e = i(t); return e ? document.querySelector(e) : null }, o = t => { t.dispatchEvent(new Event("transitionend")) }, r = t => !(!t || "object" != typeof t) && (void 0 !== t.jquery && (t = t[0]), void 0 !== t.nodeType), a = e => r(e) ? e.jquery ? e[0] : e : "string" == typeof e && e.length > 0 ? t.findOne(e) : null, l = (t, e, i) => { Object.keys(i).forEach(n => { const s = i[n], o = e[n], a = o && r(o) ? "element" : null == (l = o) ? "" + l : {}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase(); var l; if (!new RegExp(s).test(a)) throw new TypeError(`${t.toUpperCase()}: Option "${n}" provided type "${a}" but expected type "${s}".`) }) }, c = t => !(!r(t) || 0 === t.getClientRects().length) && "visible" === getComputedStyle(t).getPropertyValue("visibility"), h = t => !t || t.nodeType !== Node.ELEMENT_NODE || !!t.classList.contains("disabled") || (void 0 !== t.disabled ? t.disabled : t.hasAttribute("disabled") && "false" !== t.getAttribute("disabled")), d = t => { if (!document.documentElement.attachShadow) return null; if ("function" == typeof t.getRootNode) { const e = t.getRootNode(); return e instanceof ShadowRoot ? e : null } return t instanceof ShadowRoot ? t : t.parentNode ? d(t.parentNode) : null }, u = () => {}, f = t => t.offsetHeight, p = () => { const { jQuery: t } = window; return t && !document.body.hasAttribute("data-bs-no-jquery") ? t : null }, m = [], g = () => "rtl" === document.documentElement.dir, _ = t => { var e; e = () => { const e = p(); if (e) { const i = t.NAME, n = e.fn[i]; e.fn[i] = t.jQueryInterface, e.fn[i].Constructor = t, e.fn[i].noConflict = () => (e.fn[i] = n, t.jQueryInterface) } }, "loading" === document.readyState ? (m.length || document.addEventListener("DOMContentLoaded", () => { m.forEach(t => t()) }), m.push(e)) : e() }, b = t => { "function" == typeof t && t() }, v = (t, e, i = !0) => { if (!i) return void b(t); const n = (t => { if (!t) return 0; let { transitionDuration: e, transitionDelay: i } = window.getComputedStyle(t); const n = Number.parseFloat(e), s = Number.parseFloat(i); return n || s ? (e = e.split(",")[0], i = i.split(",")[0], 1e3 * (Number.parseFloat(e) + Number.parseFloat(i))) : 0 })(e) + 5; let s = !1; const r = ({ target: i }) => { i === e && (s = !0, e.removeEventListener("transitionend", r), b(t)) }; e.addEventListener("transitionend", r), setTimeout(() => { s || o(e) }, n) }, y = (t, e, i, n) => { let s = t.indexOf(e); if (-1 === s) return t[!i && n ? t.length - 1 : 0]; const o = t.length; return s += i ? 1 : -1, n && (s = (s + o) % o), t[Math.max(0, Math.min(s, o - 1))] }, w = /[^.]*(?=\..*)\.|.*/, E = /\..*/, A = /::\d+$/, T = {}; let O = 1; const C = { mouseenter: "mouseover", mouseleave: "mouseout" }, k = /^(mouseenter|mouseleave)/i, L = new Set(["click", "dblclick", "mouseup", "mousedown", "contextmenu", "mousewheel", "DOMMouseScroll", "mouseover", "mouseout", "mousemove", "selectstart", "selectend", "keydown", "keypress", "keyup", "orientationchange", "touchstart", "touchmove", "touchend", "touchcancel", "pointerdown", "pointermove", "pointerup", "pointerleave", "pointercancel", "gesturestart", "gesturechange", "gestureend", "focus", "blur", "change", "reset", "select", "submit", "focusin", "focusout", "load", "unload", "beforeunload", "resize", "move", "DOMContentLoaded", "readystatechange", "error", "abort", "scroll"]); function x(t, e) { return e && `${e}::${O++}` || t.uidEvent || O++ } function D(t) { const e = x(t); return t.uidEvent = e, T[e] = T[e] || {}, T[e] } function S(t, e, i = null) { const n = Object.keys(t); for (let s = 0, o = n.length; s < o; s++) { const o = t[n[s]]; if (o.originalHandler === e && o.delegationSelector === i) return o } return null } function I(t, e, i) { const n = "string" == typeof e, s = n ? i : e; let o = M(t); return L.has(o) || (o = t), [n, s, o] } function N(t, e, i, n, s) { if ("string" != typeof e || !t) return; if (i || (i = n, n = null), k.test(e)) { const t = t => function(e) { if (!e.relatedTarget || e.relatedTarget !== e.delegateTarget && !e.delegateTarget.contains(e.relatedTarget)) return t.call(this, e) }; n ? n = t(n) : i = t(i) } const [o, r, a] = I(e, i, n), l = D(t), c = l[a] || (l[a] = {}), h = S(c, r, o ? i : null); if (h) return void(h.oneOff = h.oneOff && s); const d = x(r, e.replace(w, "")), u = o ? function(t, e, i) { return function n(s) { const o = t.querySelectorAll(e); for (let { target: r } = s; r && r !== this; r = r.parentNode) for (let a = o.length; a--;) if (o[a] === r) return s.delegateTarget = r, n.oneOff && P.off(t, s.type, e, i), i.apply(r, [s]); return null } }(t, i, n) : function(t, e) { return function i(n) { return n.delegateTarget = t, i.oneOff && P.off(t, n.type, e), e.apply(t, [n]) } }(t, i); u.delegationSelector = o ? i : null, u.originalHandler = r, u.oneOff = s, u.uidEvent = d, c[d] = u, t.addEventListener(a, u, o) } function j(t, e, i, n, s) { const o = S(e[i], n, s); o && (t.removeEventListener(i, o, Boolean(s)), delete e[i][o.uidEvent]) } function M(t) { return t = t.replace(E, ""), C[t] || t } const P = { on(t, e, i, n) { N(t, e, i, n, !1) }, one(t, e, i, n) { N(t, e, i, n, !0) }, off(t, e, i, n) { if ("string" != typeof e || !t) return; const [s, o, r] = I(e, i, n), a = r !== e, l = D(t), c = e.startsWith("."); if (void 0 !== o) { if (!l || !l[r]) return; return void j(t, l, r, o, s ? i : null) } c && Object.keys(l).forEach(i => { ! function(t, e, i, n) { const s = e[i] || {}; Object.keys(s).forEach(o => { if (o.includes(n)) { const n = s[o]; j(t, e, i, n.originalHandler, n.delegationSelector) } }) }(t, l, i, e.slice(1)) }); const h = l[r] || {}; Object.keys(h).forEach(i => { const n = i.replace(A, ""); if (!a || e.includes(n)) { const e = h[i]; j(t, l, r, e.originalHandler, e.delegationSelector) } }) }, trigger(t, e, i) { if ("string" != typeof e || !t) return null; const n = p(), s = M(e), o = e !== s, r = L.has(s); let a, l = !0, c = !0, h = !1, d = null; return o && n && (a = n.Event(e, i), n(t).trigger(a), l = !a.isPropagationStopped(), c = !a.isImmediatePropagationStopped(), h = a.isDefaultPrevented()), r ? (d = document.createEvent("HTMLEvents"), d.initEvent(s, l, !0)) : d = new CustomEvent(e, { bubbles: l, cancelable: !0 }), void 0 !== i && Object.keys(i).forEach(t => { Object.defineProperty(d, t, { get: () => i[t] }) }), h && d.preventDefault(), c && t.dispatchEvent(d), d.defaultPrevented && void 0 !== a && a.preventDefault(), d } }, H = new Map; var R = { set(t, e, i) { H.has(t) || H.set(t, new Map); const n = H.get(t); n.has(e) || 0 === n.size ? n.set(e, i) : console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(n.keys())[0]}.`) }, get: (t, e) => H.has(t) && H.get(t).get(e) || null, remove(t, e) { if (!H.has(t)) return; const i = H.get(t); i.delete(e), 0 === i.size && H.delete(t) } }; class B { constructor(t) { (t = a(t)) && (this._element = t, R.set(this._element, this.constructor.DATA_KEY, this)) } dispose() { R.remove(this._element, this.constructor.DATA_KEY), P.off(this._element, this.constructor.EVENT_KEY), Object.getOwnPropertyNames(this).forEach(t => { this[t] = null }) } _queueCallback(t, e, i = !0) { v(t, e, i) } static getInstance(t) { return R.get(t, this.DATA_KEY) } static getOrCreateInstance(t, e = {}) { return this.getInstance(t) || new this(t, "object" == typeof e ? e : null) } static get VERSION() { return "5.0.2" } static get NAME() { throw new Error('You have to implement the static method "NAME", for each component!') } static get DATA_KEY() { return "bs." + this.NAME } static get EVENT_KEY() { return "." + this.DATA_KEY } } class W extends B { static get NAME() { return "alert" } close(t) { const e = t ? this._getRootElement(t) : this._element, i = this._triggerCloseEvent(e); null === i || i.defaultPrevented || this._removeElement(e) } _getRootElement(t) { return s(t) || t.closest(".alert") } _triggerCloseEvent(t) { return P.trigger(t, "close.bs.alert") } _removeElement(t) { t.classList.remove("show"); const e = t.classList.contains("fade"); this._queueCallback(() => this._destroyElement(t), t, e) } _destroyElement(t) { t.remove(), P.trigger(t, "closed.bs.alert") } static jQueryInterface(t) { return this.each((function() { const e = W.getOrCreateInstance(this); "close" === t && e[t](this) })) } static handleDismiss(t) { return function(e) { e && e.preventDefault(), t.close(this) } } } P.on(document, "click.bs.alert.data-api", '[data-bs-dismiss="alert"]', W.handleDismiss(new W)), _(W); class q extends B { static get NAME() { return "button" } toggle() { this._element.setAttribute("aria-pressed", this._element.classList.toggle("active")) } static jQueryInterface(t) { return this.each((function() { const e = q.getOrCreateInstance(this); "toggle" === t && e[t]() })) } } function z(t) { return "true" === t || "false" !== t && (t === Number(t).toString() ? Number(t) : "" === t || "null" === t ? null : t) } function $(t) { return t.replace(/[A-Z]/g, t => "-" + t.toLowerCase()) } P.on(document, "click.bs.button.data-api", '[data-bs-toggle="button"]', t => { t.preventDefault(); const e = t.target.closest('[data-bs-toggle="button"]'); q.getOrCreateInstance(e).toggle() }), _(q); const U = { setDataAttribute(t, e, i) { t.setAttribute("data-bs-" + $(e), i) }, removeDataAttribute(t, e) { t.removeAttribute("data-bs-" + $(e)) }, getDataAttributes(t) { if (!t) return {}; const e = {}; return Object.keys(t.dataset).filter(t => t.startsWith("bs")).forEach(i => { let n = i.replace(/^bs/, ""); n = n.charAt(0).toLowerCase() + n.slice(1, n.length), e[n] = z(t.dataset[i]) }), e }, getDataAttribute: (t, e) => z(t.getAttribute("data-bs-" + $(e))), offset(t) { const e = t.getBoundingClientRect(); return { top: e.top + document.body.scrollTop, left: e.left + document.body.scrollLeft } }, position: t => ({ top: t.offsetTop, left: t.offsetLeft }) }, F = { interval: 5e3, keyboard: !0, slide: !1, pause: "hover", wrap: !0, touch: !0 }, V = { interval: "(number|boolean)", keyboard: "boolean", slide: "(boolean|string)", pause: "(string|boolean)", wrap: "boolean", touch: "boolean" }, K = "next", X = "prev", Y = "left", Q = "right", G = { ArrowLeft: Q, ArrowRight: Y }; class Z extends B { constructor(e, i) { super(e), this._items = null, this._interval = null, this._activeElement = null, this._isPaused = !1, this._isSliding = !1, this.touchTimeout = null, this.touchStartX = 0, this.touchDeltaX = 0, this._config = this._getConfig(i), this._indicatorsElement = t.findOne(".carousel-indicators", this._element), this._touchSupported = "ontouchstart" in document.documentElement || navigator.maxTouchPoints > 0, this._pointerEvent = Boolean(window.PointerEvent), this._addEventListeners() } static get Default() { return F } static get NAME() { return "carousel" } next() { this._slide(K) } nextWhenVisible() { !document.hidden && c(this._element) && this.next() } prev() { this._slide(X) } pause(e) { e || (this._isPaused = !0), t.findOne(".carousel-item-next, .carousel-item-prev", this._element) && (o(this._element), this.cycle(!0)), clearInterval(this._interval), this._interval = null } cycle(t) { t || (this._isPaused = !1), this._interval && (clearInterval(this._interval), this._interval = null), this._config && this._config.interval && !this._isPaused && (this._updateInterval(), this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval)) } to(e) { this._activeElement = t.findOne(".active.carousel-item", this._element); const i = this._getItemIndex(this._activeElement); if (e > this._items.length - 1 || e < 0) return; if (this._isSliding) return void P.one(this._element, "slid.bs.carousel", () => this.to(e)); if (i === e) return this.pause(), void this.cycle(); const n = e > i ? K : X; this._slide(n, this._items[e]) } _getConfig(t) { return t = { ...F, ...U.getDataAttributes(this._element), ..."object" == typeof t ? t : {} }, l("carousel", t, V), t } _handleSwipe() { const t = Math.abs(this.touchDeltaX); if (t <= 40) return; const e = t / this.touchDeltaX; this.touchDeltaX = 0, e && this._slide(e > 0 ? Q : Y) } _addEventListeners() { this._config.keyboard && P.on(this._element, "keydown.bs.carousel", t => this._keydown(t)), "hover" === this._config.pause && (P.on(this._element, "mouseenter.bs.carousel", t => this.pause(t)), P.on(this._element, "mouseleave.bs.carousel", t => this.cycle(t))), this._config.touch && this._touchSupported && this._addTouchEventListeners() } _addTouchEventListeners() { const e = t => { !this._pointerEvent || "pen" !== t.pointerType && "touch" !== t.pointerType ? this._pointerEvent || (this.touchStartX = t.touches[0].clientX) : this.touchStartX = t.clientX }, i = t => { this.touchDeltaX = t.touches && t.touches.length > 1 ? 0 : t.touches[0].clientX - this.touchStartX }, n = t => { !this._pointerEvent || "pen" !== t.pointerType && "touch" !== t.pointerType || (this.touchDeltaX = t.clientX - this.touchStartX), this._handleSwipe(), "hover" === this._config.pause && (this.pause(), this.touchTimeout && clearTimeout(this.touchTimeout), this.touchTimeout = setTimeout(t => this.cycle(t), 500 + this._config.interval)) }; t.find(".carousel-item img", this._element).forEach(t => { P.on(t, "dragstart.bs.carousel", t => t.preventDefault()) }), this._pointerEvent ? (P.on(this._element, "pointerdown.bs.carousel", t => e(t)), P.on(this._element, "pointerup.bs.carousel", t => n(t)), this._element.classList.add("pointer-event")) : (P.on(this._element, "touchstart.bs.carousel", t => e(t)), P.on(this._element, "touchmove.bs.carousel", t => i(t)), P.on(this._element, "touchend.bs.carousel", t => n(t))) } _keydown(t) { if (/input|textarea/i.test(t.target.tagName)) return; const e = G[t.key]; e && (t.preventDefault(), this._slide(e)) } _getItemIndex(e) { return this._items = e && e.parentNode ? t.find(".carousel-item", e.parentNode) : [], this._items.indexOf(e) } _getItemByOrder(t, e) { const i = t === K; return y(this._items, e, i, this._config.wrap) } _triggerSlideEvent(e, i) { const n = this._getItemIndex(e), s = this._getItemIndex(t.findOne(".active.carousel-item", this._element)); return P.trigger(this._element, "slide.bs.carousel", { relatedTarget: e, direction: i, from: s, to: n }) } _setActiveIndicatorElement(e) { if (this._indicatorsElement) { const i = t.findOne(".active", this._indicatorsElement); i.classList.remove("active"), i.removeAttribute("aria-current"); const n = t.find("[data-bs-target]", this._indicatorsElement); for (let t = 0; t < n.length; t++) if (Number.parseInt(n[t].getAttribute("data-bs-slide-to"), 10) === this._getItemIndex(e)) { n[t].classList.add("active"), n[t].setAttribute("aria-current", "true"); break } } } _updateInterval() { const e = this._activeElement || t.findOne(".active.carousel-item", this._element); if (!e) return; const i = Number.parseInt(e.getAttribute("data-bs-interval"), 10); i ? (this._config.defaultInterval = this._config.defaultInterval || this._config.interval, this._config.interval = i) : this._config.interval = this._config.defaultInterval || this._config.interval } _slide(e, i) { const n = this._directionToOrder(e), s = t.findOne(".active.carousel-item", this._element), o = this._getItemIndex(s), r = i || this._getItemByOrder(n, s), a = this._getItemIndex(r), l = Boolean(this._interval), c = n === K, h = c ? "carousel-item-start" : "carousel-item-end", d = c ? "carousel-item-next" : "carousel-item-prev", u = this._orderToDirection(n); if (r && r.classList.contains("active")) return void(this._isSliding = !1); if (this._isSliding) return; if (this._triggerSlideEvent(r, u).defaultPrevented) return; if (!s || !r) return; this._isSliding = !0, l && this.pause(), this._setActiveIndicatorElement(r), this._activeElement = r; const p = () => { P.trigger(this._element, "slid.bs.carousel", { relatedTarget: r, direction: u, from: o, to: a }) }; if (this._element.classList.contains("slide")) { r.classList.add(d), f(r), s.classList.add(h), r.classList.add(h); const t = () => { r.classList.remove(h, d), r.classList.add("active"), s.classList.remove("active", d, h), this._isSliding = !1, setTimeout(p, 0) }; this._queueCallback(t, s, !0) } else s.classList.remove("active"), r.classList.add("active"), this._isSliding = !1, p(); l && this.cycle() } _directionToOrder(t) { return [Q, Y].includes(t) ? g() ? t === Y ? X : K : t === Y ? K : X : t } _orderToDirection(t) { return [K, X].includes(t) ? g() ? t === X ? Y : Q : t === X ? Q : Y : t } static carouselInterface(t, e) { const i = Z.getOrCreateInstance(t, e); let { _config: n } = i; "object" == typeof e && (n = { ...n, ...e }); const s = "string" == typeof e ? e : n.slide; if ("number" == typeof e) i.to(e); else if ("string" == typeof s) { if (void 0 === i[s]) throw new TypeError(`No method named "${s}"`); i[s]() } else n.interval && n.ride && (i.pause(), i.cycle()) } static jQueryInterface(t) { return this.each((function() { Z.carouselInterface(this, t) })) } static dataApiClickHandler(t) { const e = s(this); if (!e || !e.classList.contains("carousel")) return; const i = { ...U.getDataAttributes(e), ...U.getDataAttributes(this) }, n = this.getAttribute("data-bs-slide-to"); n && (i.interval = !1), Z.carouselInterface(e, i), n && Z.getInstance(e).to(n), t.preventDefault() } } P.on(document, "click.bs.carousel.data-api", "[data-bs-slide], [data-bs-slide-to]", Z.dataApiClickHandler), P.on(window, "load.bs.carousel.data-api", () => { const e = t.find('[data-bs-ride="carousel"]'); for (let t = 0, i = e.length; t < i; t++) Z.carouselInterface(e[t], Z.getInstance(e[t])) }), _(Z); const J = { toggle: !0, parent: "" }, tt = { toggle: "boolean", parent: "(string|element)" }; class et extends B { constructor(e, i) { super(e), this._isTransitioning = !1, this._config = this._getConfig(i), this._triggerArray = t.find(`[data-bs-toggle="collapse"][href="#${this._element.id}"],[data-bs-toggle="collapse"][data-bs-target="#${this._element.id}"]`); const s = t.find('[data-bs-toggle="collapse"]'); for (let e = 0, i = s.length; e < i; e++) { const i = s[e], o = n(i), r = t.find(o).filter(t => t === this._element); null !== o && r.length && (this._selector = o, this._triggerArray.push(i)) } this._parent = this._config.parent ? this._getParent() : null, this._config.parent || this._addAriaAndCollapsedClass(this._element, this._triggerArray), this._config.toggle && this.toggle() } static get Default() { return J } static get NAME() { return "collapse" } toggle() { this._element.classList.contains("show") ? this.hide() : this.show() } show() { if (this._isTransitioning || this._element.classList.contains("show")) return; let e, i; this._parent && (e = t.find(".show, .collapsing", this._parent).filter(t => "string" == typeof this._config.parent ? t.getAttribute("data-bs-parent") === this._config.parent : t.classList.contains("collapse")), 0 === e.length && (e = null)); const n = t.findOne(this._selector); if (e) { const t = e.find(t => n !== t); if (i = t ? et.getInstance(t) : null, i && i._isTransitioning) return } if (P.trigger(this._element, "show.bs.collapse").defaultPrevented) return; e && e.forEach(t => { n !== t && et.collapseInterface(t, "hide"), i || R.set(t, "bs.collapse", null) }); const s = this._getDimension(); this._element.classList.remove("collapse"), this._element.classList.add("collapsing"), this._element.style[s] = 0, this._triggerArray.length && this._triggerArray.forEach(t => { t.classList.remove("collapsed"), t.setAttribute("aria-expanded", !0) }), this.setTransitioning(!0); const o = "scroll" + (s[0].toUpperCase() + s.slice(1)); this._queueCallback(() => { this._element.classList.remove("collapsing"), this._element.classList.add("collapse", "show"), this._element.style[s] = "", this.setTransitioning(!1), P.trigger(this._element, "shown.bs.collapse") }, this._element, !0), this._element.style[s] = this._element[o] + "px" } hide() { if (this._isTransitioning || !this._element.classList.contains("show")) return; if (P.trigger(this._element, "hide.bs.collapse").defaultPrevented) return; const t = this._getDimension(); this._element.style[t] = this._element.getBoundingClientRect()[t] + "px", f(this._element), this._element.classList.add("collapsing"), this._element.classList.remove("collapse", "show"); const e = this._triggerArray.length; if (e > 0) for (let t = 0; t < e; t++) { const e = this._triggerArray[t], i = s(e); i && !i.classList.contains("show") && (e.classList.add("collapsed"), e.setAttribute("aria-expanded", !1)) } this.setTransitioning(!0), this._element.style[t] = "", this._queueCallback(() => { this.setTransitioning(!1), this._element.classList.remove("collapsing"), this._element.classList.add("collapse"), P.trigger(this._element, "hidden.bs.collapse") }, this._element, !0) } setTransitioning(t) { this._isTransitioning = t } _getConfig(t) { return (t = { ...J, ...t }).toggle = Boolean(t.toggle), l("collapse", t, tt), t } _getDimension() { return this._element.classList.contains("width") ? "width" : "height" } _getParent() { let { parent: e } = this._config; e = a(e); const i = `[data-bs-toggle="collapse"][data-bs-parent="${e}"]`; return t.find(i, e).forEach(t => { const e = s(t); this._addAriaAndCollapsedClass(e, [t]) }), e } _addAriaAndCollapsedClass(t, e) { if (!t || !e.length) return; const i = t.classList.contains("show"); e.forEach(t => { i ? t.classList.remove("collapsed") : t.classList.add("collapsed"), t.setAttribute("aria-expanded", i) }) } static collapseInterface(t, e) { let i = et.getInstance(t); const n = { ...J, ...U.getDataAttributes(t), ..."object" == typeof e && e ? e : {} }; if (!i && n.toggle && "string" == typeof e && /show|hide/.test(e) && (n.toggle = !1), i || (i = new et(t, n)), "string" == typeof e) { if (void 0 === i[e]) throw new TypeError(`No method named "${e}"`); i[e]() } } static jQueryInterface(t) { return this.each((function() { et.collapseInterface(this, t) })) } } P.on(document, "click.bs.collapse.data-api", '[data-bs-toggle="collapse"]', (function(e) { ("A" === e.target.tagName || e.delegateTarget && "A" === e.delegateTarget.tagName) && e.preventDefault(); const i = U.getDataAttributes(this), s = n(this); t.find(s).forEach(t => { const e = et.getInstance(t); let n; e ? (null === e._parent && "string" == typeof i.parent && (e._config.parent = i.parent, e._parent = e._getParent()), n = "toggle") : n = i, et.collapseInterface(t, n) }) })), _(et); var it = "top", nt = "bottom", st = "right", ot = "left", rt = [it, nt, st, ot], at = rt.reduce((function(t, e) { return t.concat([e + "-start", e + "-end"]) }), []), lt = [].concat(rt, ["auto"]).reduce((function(t, e) { return t.concat([e, e + "-start", e + "-end"]) }), []), ct = ["beforeRead", "read", "afterRead", "beforeMain", "main", "afterMain", "beforeWrite", "write", "afterWrite"]; function ht(t) { return t ? (t.nodeName || "").toLowerCase() : null } function dt(t) { if (null == t) return window; if ("[object Window]" !== t.toString()) { var e = t.ownerDocument; return e && e.defaultView || window } return t } function ut(t) { return t instanceof dt(t).Element || t instanceof Element } function ft(t) { return t instanceof dt(t).HTMLElement || t instanceof HTMLElement } function pt(t) { return "undefined" != typeof ShadowRoot && (t instanceof dt(t).ShadowRoot || t instanceof ShadowRoot) } var mt = { name: "applyStyles", enabled: !0, phase: "write", fn: function(t) { var e = t.state; Object.keys(e.elements).forEach((function(t) { var i = e.styles[t] || {}, n = e.attributes[t] || {}, s = e.elements[t]; ft(s) && ht(s) && (Object.assign(s.style, i), Object.keys(n).forEach((function(t) { var e = n[t]; !1 === e ? s.removeAttribute(t) : s.setAttribute(t, !0 === e ? "" : e) }))) })) }, effect: function(t) { var e = t.state, i = { popper: { position: e.options.strategy, left: "0", top: "0", margin: "0" }, arrow: { position: "absolute" }, reference: {} }; return Object.assign(e.elements.popper.style, i.popper), e.styles = i, e.elements.arrow && Object.assign(e.elements.arrow.style, i.arrow), function() { Object.keys(e.elements).forEach((function(t) { var n = e.elements[t], s = e.attributes[t] || {}, o = Object.keys(e.styles.hasOwnProperty(t) ? e.styles[t] : i[t]).reduce((function(t, e) { return t[e] = "", t }), {}); ft(n) && ht(n) && (Object.assign(n.style, o), Object.keys(s).forEach((function(t) { n.removeAttribute(t) }))) })) } }, requires: ["computeStyles"] }; function gt(t) { return t.split("-")[0] } function _t(t) { var e = t.getBoundingClientRect(); return { width: e.width, height: e.height, top: e.top, right: e.right, bottom: e.bottom, left: e.left, x: e.left, y: e.top } } function bt(t) { var e = _t(t), i = t.offsetWidth, n = t.offsetHeight; return Math.abs(e.width - i) <= 1 && (i = e.width), Math.abs(e.height - n) <= 1 && (n = e.height), { x: t.offsetLeft, y: t.offsetTop, width: i, height: n } } function vt(t, e) { var i = e.getRootNode && e.getRootNode(); if (t.contains(e)) return !0; if (i && pt(i)) { var n = e; do { if (n && t.isSameNode(n)) return !0; n = n.parentNode || n.host } while (n) } return !1 } function yt(t) { return dt(t).getComputedStyle(t) } function wt(t) { return ["table", "td", "th"].indexOf(ht(t)) >= 0 } function Et(t) { return ((ut(t) ? t.ownerDocument : t.document) || window.document).documentElement } function At(t) { return "html" === ht(t) ? t : t.assignedSlot || t.parentNode || (pt(t) ? t.host : null) || Et(t) } function Tt(t) { return ft(t) && "fixed" !== yt(t).position ? t.offsetParent : null } function Ot(t) { for (var e = dt(t), i = Tt(t); i && wt(i) && "static" === yt(i).position;) i = Tt(i); return i && ("html" === ht(i) || "body" === ht(i) && "static" === yt(i).position) ? e : i || function(t) { var e = -1 !== navigator.userAgent.toLowerCase().indexOf("firefox"); if (-1 !== navigator.userAgent.indexOf("Trident") && ft(t) && "fixed" === yt(t).position) return null; for (var i = At(t); ft(i) && ["html", "body"].indexOf(ht(i)) < 0;) { var n = yt(i); if ("none" !== n.transform || "none" !== n.perspective || "paint" === n.contain || -1 !== ["transform", "perspective"].indexOf(n.willChange) || e && "filter" === n.willChange || e && n.filter && "none" !== n.filter) return i; i = i.parentNode } return null }(t) || e } function Ct(t) { return ["top", "bottom"].indexOf(t) >= 0 ? "x" : "y" } var kt = Math.max, Lt = Math.min, xt = Math.round; function Dt(t, e, i) { return kt(t, Lt(e, i)) } function St(t) { return Object.assign({}, { top: 0, right: 0, bottom: 0, left: 0 }, t) } function It(t, e) { return e.reduce((function(e, i) { return e[i] = t, e }), {}) } var Nt = { name: "arrow", enabled: !0, phase: "main", fn: function(t) { var e, i = t.state, n = t.name, s = t.options, o = i.elements.arrow, r = i.modifiersData.popperOffsets, a = gt(i.placement), l = Ct(a), c = [ot, st].indexOf(a) >= 0 ? "height" : "width"; if (o && r) { var h = function(t, e) { return St("number" != typeof(t = "function" == typeof t ? t(Object.assign({}, e.rects, { placement: e.placement })) : t) ? t : It(t, rt)) }(s.padding, i), d = bt(o), u = "y" === l ? it : ot, f = "y" === l ? nt : st, p = i.rects.reference[c] + i.rects.reference[l] - r[l] - i.rects.popper[c], m = r[l] - i.rects.reference[l], g = Ot(o), _ = g ? "y" === l ? g.clientHeight || 0 : g.clientWidth || 0 : 0, b = p / 2 - m / 2, v = h[u], y = _ - d[c] - h[f], w = _ / 2 - d[c] / 2 + b, E = Dt(v, w, y), A = l; i.modifiersData[n] = ((e = {})[A] = E, e.centerOffset = E - w, e) } }, effect: function(t) { var e = t.state, i = t.options.element, n = void 0 === i ? "[data-popper-arrow]" : i; null != n && ("string" != typeof n || (n = e.elements.popper.querySelector(n))) && vt(e.elements.popper, n) && (e.elements.arrow = n) }, requires: ["popperOffsets"], requiresIfExists: ["preventOverflow"] }, jt = { top: "auto", right: "auto", bottom: "auto", left: "auto" }; function Mt(t) { var e, i = t.popper, n = t.popperRect, s = t.placement, o = t.offsets, r = t.position, a = t.gpuAcceleration, l = t.adaptive, c = t.roundOffsets, h = !0 === c ? function(t) { var e = t.x, i = t.y, n = window.devicePixelRatio || 1; return { x: xt(xt(e * n) / n) || 0, y: xt(xt(i * n) / n) || 0 } }(o) : "function" == typeof c ? c(o) : o, d = h.x, u = void 0 === d ? 0 : d, f = h.y, p = void 0 === f ? 0 : f, m = o.hasOwnProperty("x"), g = o.hasOwnProperty("y"), _ = ot, b = it, v = window; if (l) { var y = Ot(i), w = "clientHeight", E = "clientWidth"; y === dt(i) && "static" !== yt(y = Et(i)).position && (w = "scrollHeight", E = "scrollWidth"), y = y, s === it && (b = nt, p -= y[w] - n.height, p *= a ? 1 : -1), s === ot && (_ = st, u -= y[E] - n.width, u *= a ? 1 : -1) } var A, T = Object.assign({ position: r }, l && jt); return a ? Object.assign({}, T, ((A = {})[b] = g ? "0" : "", A[_] = m ? "0" : "", A.transform = (v.devicePixelRatio || 1) < 2 ? "translate(" + u + "px, " + p + "px)" : "translate3d(" + u + "px, " + p + "px, 0)", A)) : Object.assign({}, T, ((e = {})[b] = g ? p + "px" : "", e[_] = m ? u + "px" : "", e.transform = "", e)) } var Pt = { name: "computeStyles", enabled: !0, phase: "beforeWrite", fn: function(t) { var e = t.state, i = t.options, n = i.gpuAcceleration, s = void 0 === n || n, o = i.adaptive, r = void 0 === o || o, a = i.roundOffsets, l = void 0 === a || a, c = { placement: gt(e.placement), popper: e.elements.popper, popperRect: e.rects.popper, gpuAcceleration: s }; null != e.modifiersData.popperOffsets && (e.styles.popper = Object.assign({}, e.styles.popper, Mt(Object.assign({}, c, { offsets: e.modifiersData.popperOffsets, position: e.options.strategy, adaptive: r, roundOffsets: l })))), null != e.modifiersData.arrow && (e.styles.arrow = Object.assign({}, e.styles.arrow, Mt(Object.assign({}, c, { offsets: e.modifiersData.arrow, position: "absolute", adaptive: !1, roundOffsets: l })))), e.attributes.popper = Object.assign({}, e.attributes.popper, { "data-popper-placement": e.placement }) }, data: {} }, Ht = { passive: !0 }, Rt = { name: "eventListeners", enabled: !0, phase: "write", fn: function() {}, effect: function(t) { var e = t.state, i = t.instance, n = t.options, s = n.scroll, o = void 0 === s || s, r = n.resize, a = void 0 === r || r, l = dt(e.elements.popper), c = [].concat(e.scrollParents.reference, e.scrollParents.popper); return o && c.forEach((function(t) { t.addEventListener("scroll", i.update, Ht) })), a && l.addEventListener("resize", i.update, Ht), function() { o && c.forEach((function(t) { t.removeEventListener("scroll", i.update, Ht) })), a && l.removeEventListener("resize", i.update, Ht) } }, data: {} }, Bt = { left: "right", right: "left", bottom: "top", top: "bottom" }; function Wt(t) { return t.replace(/left|right|bottom|top/g, (function(t) { return Bt[t] })) } var qt = { start: "end", end: "start" }; function zt(t) { return t.replace(/start|end/g, (function(t) { return qt[t] })) } function $t(t) { var e = dt(t); return { scrollLeft: e.pageXOffset, scrollTop: e.pageYOffset } } function Ut(t) { return _t(Et(t)).left + $t(t).scrollLeft } function Ft(t) { var e = yt(t), i = e.overflow, n = e.overflowX, s = e.overflowY; return /auto|scroll|overlay|hidden/.test(i + s + n) } function Vt(t, e) { var i; void 0 === e && (e = []); var n = function t(e) { return ["html", "body", "#document"].indexOf(ht(e)) >= 0 ? e.ownerDocument.body : ft(e) && Ft(e) ? e : t(At(e)) }(t), s = n === (null == (i = t.ownerDocument) ? void 0 : i.body), o = dt(n), r = s ? [o].concat(o.visualViewport || [], Ft(n) ? n : []) : n, a = e.concat(r); return s ? a : a.concat(Vt(At(r))) } function Kt(t) { return Object.assign({}, t, { left: t.x, top: t.y, right: t.x + t.width, bottom: t.y + t.height }) } function Xt(t, e) { return "viewport" === e ? Kt(function(t) { var e = dt(t), i = Et(t), n = e.visualViewport, s = i.clientWidth, o = i.clientHeight, r = 0, a = 0; return n && (s = n.width, o = n.height, /^((?!chrome|android).)*safari/i.test(navigator.userAgent) || (r = n.offsetLeft, a = n.offsetTop)), { width: s, height: o, x: r + Ut(t), y: a } }(t)) : ft(e) ? function(t) { var e = _t(t); return e.top = e.top + t.clientTop, e.left = e.left + t.clientLeft, e.bottom = e.top + t.clientHeight, e.right = e.left + t.clientWidth, e.width = t.clientWidth, e.height = t.clientHeight, e.x = e.left, e.y = e.top, e }(e) : Kt(function(t) { var e, i = Et(t), n = $t(t), s = null == (e = t.ownerDocument) ? void 0 : e.body, o = kt(i.scrollWidth, i.clientWidth, s ? s.scrollWidth : 0, s ? s.clientWidth : 0), r = kt(i.scrollHeight, i.clientHeight, s ? s.scrollHeight : 0, s ? s.clientHeight : 0), a = -n.scrollLeft + Ut(t), l = -n.scrollTop; return "rtl" === yt(s || i).direction && (a += kt(i.clientWidth, s ? s.clientWidth : 0) - o), { width: o, height: r, x: a, y: l } }(Et(t))) } function Yt(t) { return t.split("-")[1] } function Qt(t) { var e, i = t.reference, n = t.element, s = t.placement, o = s ? gt(s) : null, r = s ? Yt(s) : null, a = i.x + i.width / 2 - n.width / 2, l = i.y + i.height / 2 - n.height / 2; switch (o) { case it: e = { x: a, y: i.y - n.height }; break; case nt: e = { x: a, y: i.y + i.height }; break; case st: e = { x: i.x + i.width, y: l }; break; case ot: e = { x: i.x - n.width, y: l }; break; default: e = { x: i.x, y: i.y } } var c = o ? Ct(o) : null; if (null != c) { var h = "y" === c ? "height" : "width"; switch (r) { case "start": e[c] = e[c] - (i[h] / 2 - n[h] / 2); break; case "end": e[c] = e[c] + (i[h] / 2 - n[h] / 2) } } return e } function Gt(t, e) { void 0 === e && (e = {}); var i = e, n = i.placement, s = void 0 === n ? t.placement : n, o = i.boundary, r = void 0 === o ? "clippingParents" : o, a = i.rootBoundary, l = void 0 === a ? "viewport" : a, c = i.elementContext, h = void 0 === c ? "popper" : c, d = i.altBoundary, u = void 0 !== d && d, f = i.padding, p = void 0 === f ? 0 : f, m = St("number" != typeof p ? p : It(p, rt)), g = "popper" === h ? "reference" : "popper", _ = t.elements.reference, b = t.rects.popper, v = t.elements[u ? g : h], y = function(t, e, i) { var n = "clippingParents" === e ? function(t) { var e = Vt(At(t)), i = ["absolute", "fixed"].indexOf(yt(t).position) >= 0 && ft(t) ? Ot(t) : t; return ut(i) ? e.filter((function(t) { return ut(t) && vt(t, i) && "body" !== ht(t) })) : [] }(t) : [].concat(e), s = [].concat(n, [i]), o = s[0], r = s.reduce((function(e, i) { var n = Xt(t, i); return e.top = kt(n.top, e.top), e.right = Lt(n.right, e.right), e.bottom = Lt(n.bottom, e.bottom), e.left = kt(n.left, e.left), e }), Xt(t, o)); return r.width = r.right - r.left, r.height = r.bottom - r.top, r.x = r.left, r.y = r.top, r }(ut(v) ? v : v.contextElement || Et(t.elements.popper), r, l), w = _t(_), E = Qt({ reference: w, element: b, strategy: "absolute", placement: s }), A = Kt(Object.assign({}, b, E)), T = "popper" === h ? A : w, O = { top: y.top - T.top + m.top, bottom: T.bottom - y.bottom + m.bottom, left: y.left - T.left + m.left, right: T.right - y.right + m.right }, C = t.modifiersData.offset; if ("popper" === h && C) { var k = C[s]; Object.keys(O).forEach((function(t) { var e = [st, nt].indexOf(t) >= 0 ? 1 : -1, i = [it, nt].indexOf(t) >= 0 ? "y" : "x"; O[t] += k[i] * e })) } return O } function Zt(t, e) { void 0 === e && (e = {}); var i = e, n = i.placement, s = i.boundary, o = i.rootBoundary, r = i.padding, a = i.flipVariations, l = i.allowedAutoPlacements, c = void 0 === l ? lt : l, h = Yt(n), d = h ? a ? at : at.filter((function(t) { return Yt(t) === h })) : rt, u = d.filter((function(t) { return c.indexOf(t) >= 0 })); 0 === u.length && (u = d); var f = u.reduce((function(e, i) { return e[i] = Gt(t, { placement: i, boundary: s, rootBoundary: o, padding: r })[gt(i)], e }), {}); return Object.keys(f).sort((function(t, e) { return f[t] - f[e] })) } var Jt = { name: "flip", enabled: !0, phase: "main", fn: function(t) { var e = t.state, i = t.options, n = t.name; if (!e.modifiersData[n]._skip) { for (var s = i.mainAxis, o = void 0 === s || s, r = i.altAxis, a = void 0 === r || r, l = i.fallbackPlacements, c = i.padding, h = i.boundary, d = i.rootBoundary, u = i.altBoundary, f = i.flipVariations, p = void 0 === f || f, m = i.allowedAutoPlacements, g = e.options.placement, _ = gt(g), b = l || (_ !== g && p ? function(t) { if ("auto" === gt(t)) return []; var e = Wt(t); return [zt(t), e, zt(e)] }(g) : [Wt(g)]), v = [g].concat(b).reduce((function(t, i) { return t.concat("auto" === gt(i) ? Zt(e, { placement: i, boundary: h, rootBoundary: d, padding: c, flipVariations: p, allowedAutoPlacements: m }) : i) }), []), y = e.rects.reference, w = e.rects.popper, E = new Map, A = !0, T = v[0], O = 0; O < v.length; O++) { var C = v[O], k = gt(C), L = "start" === Yt(C), x = [it, nt].indexOf(k) >= 0, D = x ? "width" : "height", S = Gt(e, { placement: C, boundary: h, rootBoundary: d, altBoundary: u, padding: c }), I = x ? L ? st : ot : L ? nt : it; y[D] > w[D] && (I = Wt(I)); var N = Wt(I), j = []; if (o && j.push(S[k] <= 0), a && j.push(S[I] <= 0, S[N] <= 0), j.every((function(t) { return t }))) { T = C, A = !1; break } E.set(C, j) } if (A) for (var M = function(t) { var e = v.find((function(e) { var i = E.get(e); if (i) return i.slice(0, t).every((function(t) { return t })) })); if (e) return T = e, "break" }, P = p ? 3 : 1; P > 0 && "break" !== M(P); P--); e.placement !== T && (e.modifiersData[n]._skip = !0, e.placement = T, e.reset = !0) } }, requiresIfExists: ["offset"], data: { _skip: !1 } }; function te(t, e, i) { return void 0 === i && (i = { x: 0, y: 0 }), { top: t.top - e.height - i.y, right: t.right - e.width + i.x, bottom: t.bottom - e.height + i.y, left: t.left - e.width - i.x } } function ee(t) { return [it, st, nt, ot].some((function(e) { return t[e] >= 0 })) } var ie = { name: "hide", enabled: !0, phase: "main", requiresIfExists: ["preventOverflow"], fn: function(t) { var e = t.state, i = t.name, n = e.rects.reference, s = e.rects.popper, o = e.modifiersData.preventOverflow, r = Gt(e, { elementContext: "reference" }), a = Gt(e, { altBoundary: !0 }), l = te(r, n), c = te(a, s, o), h = ee(l), d = ee(c); e.modifiersData[i] = { referenceClippingOffsets: l, popperEscapeOffsets: c, isReferenceHidden: h, hasPopperEscaped: d }, e.attributes.popper = Object.assign({}, e.attributes.popper, { "data-popper-reference-hidden": h, "data-popper-escaped": d }) } }, ne = { name: "offset", enabled: !0, phase: "main", requires: ["popperOffsets"], fn: function(t) { var e = t.state, i = t.options, n = t.name, s = i.offset, o = void 0 === s ? [0, 0] : s, r = lt.reduce((function(t, i) { return t[i] = function(t, e, i) { var n = gt(t), s = [ot, it].indexOf(n) >= 0 ? -1 : 1, o = "function" == typeof i ? i(Object.assign({}, e, { placement: t })) : i, r = o[0], a = o[1]; return r = r || 0, a = (a || 0) * s, [ot, st].indexOf(n) >= 0 ? { x: a, y: r } : { x: r, y: a } }(i, e.rects, o), t }), {}), a = r[e.placement], l = a.x, c = a.y; null != e.modifiersData.popperOffsets && (e.modifiersData.popperOffsets.x += l, e.modifiersData.popperOffsets.y += c), e.modifiersData[n] = r } }, se = { name: "popperOffsets", enabled: !0, phase: "read", fn: function(t) { var e = t.state, i = t.name; e.modifiersData[i] = Qt({ reference: e.rects.reference, element: e.rects.popper, strategy: "absolute", placement: e.placement }) }, data: {} }, oe = { name: "preventOverflow", enabled: !0, phase: "main", fn: function(t) { var e = t.state, i = t.options, n = t.name, s = i.mainAxis, o = void 0 === s || s, r = i.altAxis, a = void 0 !== r && r, l = i.boundary, c = i.rootBoundary, h = i.altBoundary, d = i.padding, u = i.tether, f = void 0 === u || u, p = i.tetherOffset, m = void 0 === p ? 0 : p, g = Gt(e, { boundary: l, rootBoundary: c, padding: d, altBoundary: h }), _ = gt(e.placement), b = Yt(e.placement), v = !b, y = Ct(_), w = "x" === y ? "y" : "x", E = e.modifiersData.popperOffsets, A = e.rects.reference, T = e.rects.popper, O = "function" == typeof m ? m(Object.assign({}, e.rects, { placement: e.placement })) : m, C = { x: 0, y: 0 }; if (E) { if (o || a) { var k = "y" === y ? it : ot, L = "y" === y ? nt : st, x = "y" === y ? "height" : "width", D = E[y], S = E[y] + g[k], I = E[y] - g[L], N = f ? -T[x] / 2 : 0, j = "start" === b ? A[x] : T[x], M = "start" === b ? -T[x] : -A[x], P = e.elements.arrow, H = f && P ? bt(P) : { width: 0, height: 0 }, R = e.modifiersData["arrow#persistent"] ? e.modifiersData["arrow#persistent"].padding : { top: 0, right: 0, bottom: 0, left: 0 }, B = R[k], W = R[L], q = Dt(0, A[x], H[x]), z = v ? A[x] / 2 - N - q - B - O : j - q - B - O, $ = v ? -A[x] / 2 + N + q + W + O : M + q + W + O, U = e.elements.arrow && Ot(e.elements.arrow), F = U ? "y" === y ? U.clientTop || 0 : U.clientLeft || 0 : 0, V = e.modifiersData.offset ? e.modifiersData.offset[e.placement][y] : 0, K = E[y] + z - V - F, X = E[y] + $ - V; if (o) { var Y = Dt(f ? Lt(S, K) : S, D, f ? kt(I, X) : I); E[y] = Y, C[y] = Y - D } if (a) { var Q = "x" === y ? it : ot, G = "x" === y ? nt : st, Z = E[w], J = Z + g[Q], tt = Z - g[G], et = Dt(f ? Lt(J, K) : J, Z, f ? kt(tt, X) : tt); E[w] = et, C[w] = et - Z } } e.modifiersData[n] = C } }, requiresIfExists: ["offset"] }; function re(t, e, i) { void 0 === i && (i = !1); var n, s, o = Et(e), r = _t(t), a = ft(e), l = { scrollLeft: 0, scrollTop: 0 }, c = { x: 0, y: 0 }; return (a || !a && !i) && (("body" !== ht(e) || Ft(o)) && (l = (n = e) !== dt(n) && ft(n) ? { scrollLeft: (s = n).scrollLeft, scrollTop: s.scrollTop } : $t(n)), ft(e) ? ((c = _t(e)).x += e.clientLeft, c.y += e.clientTop) : o && (c.x = Ut(o))), { x: r.left + l.scrollLeft - c.x, y: r.top + l.scrollTop - c.y, width: r.width, height: r.height } } var ae = { placement: "bottom", modifiers: [], strategy: "absolute" }; function le() { for (var t = arguments.length, e = new Array(t), i = 0; i < t; i++) e[i] = arguments[i]; return !e.some((function(t) { return !(t && "function" == typeof t.getBoundingClientRect) })) } function ce(t) { void 0 === t && (t = {}); var e = t, i = e.defaultModifiers, n = void 0 === i ? [] : i, s = e.defaultOptions, o = void 0 === s ? ae : s; return function(t, e, i) { void 0 === i && (i = o); var s, r, a = { placement: "bottom", orderedModifiers: [], options: Object.assign({}, ae, o), modifiersData: {}, elements: { reference: t, popper: e }, attributes: {}, styles: {} }, l = [], c = !1, h = { state: a, setOptions: function(i) { d(), a.options = Object.assign({}, o, a.options, i), a.scrollParents = { reference: ut(t) ? Vt(t) : t.contextElement ? Vt(t.contextElement) : [], popper: Vt(e) }; var s, r, c = function(t) { var e = function(t) { var e = new Map, i = new Set, n = []; return t.forEach((function(t) { e.set(t.name, t) })), t.forEach((function(t) { i.has(t.name) || function t(s) { i.add(s.name), [].concat(s.requires || [], s.requiresIfExists || []).forEach((function(n) { if (!i.has(n)) { var s = e.get(n); s && t(s) } })), n.push(s) }(t) })), n }(t); return ct.reduce((function(t, i) { return t.concat(e.filter((function(t) { return t.phase === i }))) }), []) }((s = [].concat(n, a.options.modifiers), r = s.reduce((function(t, e) { var i = t[e.name]; return t[e.name] = i ? Object.assign({}, i, e, { options: Object.assign({}, i.options, e.options), data: Object.assign({}, i.data, e.data) }) : e, t }), {}), Object.keys(r).map((function(t) { return r[t] })))); return a.orderedModifiers = c.filter((function(t) { return t.enabled })), a.orderedModifiers.forEach((function(t) { var e = t.name, i = t.options, n = void 0 === i ? {} : i, s = t.effect; if ("function" == typeof s) { var o = s({ state: a, name: e, instance: h, options: n }); l.push(o || function() {}) } })), h.update() }, forceUpdate: function() { if (!c) { var t = a.elements, e = t.reference, i = t.popper; if (le(e, i)) { a.rects = { reference: re(e, Ot(i), "fixed" === a.options.strategy), popper: bt(i) }, a.reset = !1, a.placement = a.options.placement, a.orderedModifiers.forEach((function(t) { return a.modifiersData[t.name] = Object.assign({}, t.data) })); for (var n = 0; n < a.orderedModifiers.length; n++) if (!0 !== a.reset) { var s = a.orderedModifiers[n], o = s.fn, r = s.options, l = void 0 === r ? {} : r, d = s.name; "function" == typeof o && (a = o({ state: a, options: l, name: d, instance: h }) || a) } else a.reset = !1, n = -1 } } }, update: (s = function() { return new Promise((function(t) { h.forceUpdate(), t(a) })) }, function() { return r || (r = new Promise((function(t) { Promise.resolve().then((function() { r = void 0, t(s()) })) }))), r }), destroy: function() { d(), c = !0 } }; if (!le(t, e)) return h; function d() { l.forEach((function(t) { return t() })), l = [] } return h.setOptions(i).then((function(t) { !c && i.onFirstUpdate && i.onFirstUpdate(t) })), h } } var he = ce(), de = ce({ defaultModifiers: [Rt, se, Pt, mt] }), ue = ce({ defaultModifiers: [Rt, se, Pt, mt, ne, Jt, oe, Nt, ie] }), fe = Object.freeze({ __proto__: null, popperGenerator: ce, detectOverflow: Gt, createPopperBase: he, createPopper: ue, createPopperLite: de, top: it, bottom: nt, right: st, left: ot, auto: "auto", basePlacements: rt, start: "start", end: "end", clippingParents: "clippingParents", viewport: "viewport", popper: "popper", reference: "reference", variationPlacements: at, placements: lt, beforeRead: "beforeRead", read: "read", afterRead: "afterRead", beforeMain: "beforeMain", main: "main", afterMain: "afterMain", beforeWrite: "beforeWrite", write: "write", afterWrite: "afterWrite", modifierPhases: ct, applyStyles: mt, arrow: Nt, computeStyles: Pt, eventListeners: Rt, flip: Jt, hide: ie, offset: ne, popperOffsets: se, preventOverflow: oe }); const pe = new RegExp("ArrowUp|ArrowDown|Escape"), me = g() ? "top-end" : "top-start", ge = g() ? "top-start" : "top-end", _e = g() ? "bottom-end" : "bottom-start", be = g() ? "bottom-start" : "bottom-end", ve = g() ? "left-start" : "right-start", ye = g() ? "right-start" : "left-start", we = { offset: [0, 2], boundary: "clippingParents", reference: "toggle", display: "dynamic", popperConfig: null, autoClose: !0 }, Ee = { offset: "(array|string|function)", boundary: "(string|element)", reference: "(string|element|object)", display: "string", popperConfig: "(null|object|function)", autoClose: "(boolean|string)" }; class Ae extends B { constructor(t, e) { super(t), this._popper = null, this._config = this._getConfig(e), this._menu = this._getMenuElement(), this._inNavbar = this._detectNavbar(), this._addEventListeners() } static get Default() { return we } static get DefaultType() { return Ee } static get NAME() { return "dropdown" } toggle() { h(this._element) || (this._element.classList.contains("show") ? this.hide() : this.show()) } show() { if (h(this._element) || this._menu.classList.contains("show")) return; const t = Ae.getParentFromElement(this._element), e = { relatedTarget: this._element }; if (!P.trigger(this._element, "show.bs.dropdown", e).defaultPrevented) { if (this._inNavbar) U.setDataAttribute(this._menu, "popper", "none"); else { if (void 0 === fe) throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)"); let e = this._element; "parent" === this._config.reference ? e = t : r(this._config.reference) ? e = a(this._config.reference) : "object" == typeof this._config.reference && (e = this._config.reference); const i = this._getPopperConfig(), n = i.modifiers.find(t => "applyStyles" === t.name && !1 === t.enabled); this._popper = ue(e, this._menu, i), n && U.setDataAttribute(this._menu, "popper", "static") } "ontouchstart" in document.documentElement && !t.closest(".navbar-nav") && [].concat(...document.body.children).forEach(t => P.on(t, "mouseover", u)), this._element.focus(), this._element.setAttribute("aria-expanded", !0), this._menu.classList.toggle("show"), this._element.classList.toggle("show"), P.trigger(this._element, "shown.bs.dropdown", e) } } hide() { if (h(this._element) || !this._menu.classList.contains("show")) return; const t = { relatedTarget: this._element }; this._completeHide(t) } dispose() { this._popper && this._popper.destroy(), super.dispose() } update() { this._inNavbar = this._detectNavbar(), this._popper && this._popper.update() } _addEventListeners() { P.on(this._element, "click.bs.dropdown", t => { t.preventDefault(), this.toggle() }) } _completeHide(t) { P.trigger(this._element, "hide.bs.dropdown", t).defaultPrevented || ("ontouchstart" in document.documentElement && [].concat(...document.body.children).forEach(t => P.off(t, "mouseover", u)), this._popper && this._popper.destroy(), this._menu.classList.remove("show"), this._element.classList.remove("show"), this._element.setAttribute("aria-expanded", "false"), U.removeDataAttribute(this._menu, "popper"), P.trigger(this._element, "hidden.bs.dropdown", t)) } _getConfig(t) { if (t = { ...this.constructor.Default, ...U.getDataAttributes(this._element), ...t }, l("dropdown", t, this.constructor.DefaultType), "object" == typeof t.reference && !r(t.reference) && "function" != typeof t.reference.getBoundingClientRect) throw new TypeError("dropdown".toUpperCase() + ': Option "reference" provided type "object" without a required "getBoundingClientRect" method.'); return t } _getMenuElement() { return t.next(this._element, ".dropdown-menu")[0] } _getPlacement() { const t = this._element.parentNode; if (t.classList.contains("dropend")) return ve; if (t.classList.contains("dropstart")) return ye; const e = "end" === getComputedStyle(this._menu).getPropertyValue("--bs-position").trim(); return t.classList.contains("dropup") ? e ? ge : me : e ? be : _e } _detectNavbar() { return null !== this._element.closest(".navbar") } _getOffset() { const { offset: t } = this._config; return "string" == typeof t ? t.split(",").map(t => Number.parseInt(t, 10)) : "function" == typeof t ? e => t(e, this._element) : t } _getPopperConfig() { const t = { placement: this._getPlacement(), modifiers: [{ name: "preventOverflow", options: { boundary: this._config.boundary } }, { name: "offset", options: { offset: this._getOffset() } }] }; return "static" === this._config.display && (t.modifiers = [{ name: "applyStyles", enabled: !1 }]), { ...t, ..."function" == typeof this._config.popperConfig ? this._config.popperConfig(t) : this._config.popperConfig } } _selectMenuItem({ key: e, target: i }) { const n = t.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)", this._menu).filter(c); n.length && y(n, i, "ArrowDown" === e, !n.includes(i)).focus() } static dropdownInterface(t, e) { const i = Ae.getOrCreateInstance(t, e); if ("string" == typeof e) { if (void 0 === i[e]) throw new TypeError(`No method named "${e}"`); i[e]() } } static jQueryInterface(t) { return this.each((function() { Ae.dropdownInterface(this, t) })) } static clearMenus(e) { if (e && (2 === e.button || "keyup" === e.type && "Tab" !== e.key)) return; const i = t.find('[data-bs-toggle="dropdown"]'); for (let t = 0, n = i.length; t < n; t++) { const n = Ae.getInstance(i[t]); if (!n || !1 === n._config.autoClose) continue; if (!n._element.classList.contains("show")) continue; const s = { relatedTarget: n._element }; if (e) { const t = e.composedPath(), i = t.includes(n._menu); if (t.includes(n._element) || "inside" === n._config.autoClose && !i || "outside" === n._config.autoClose && i) continue; if (n._menu.contains(e.target) && ("keyup" === e.type && "Tab" === e.key || /input|select|option|textarea|form/i.test(e.target.tagName))) continue; "click" === e.type && (s.clickEvent = e) } n._completeHide(s) } } static getParentFromElement(t) { return s(t) || t.parentNode } static dataApiKeydownHandler(e) { if (/input|textarea/i.test(e.target.tagName) ? "Space" === e.key || "Escape" !== e.key && ("ArrowDown" !== e.key && "ArrowUp" !== e.key || e.target.closest(".dropdown-menu")) : !pe.test(e.key)) return; const i = this.classList.contains("show"); if (!i && "Escape" === e.key) return; if (e.preventDefault(), e.stopPropagation(), h(this)) return; const n = () => this.matches('[data-bs-toggle="dropdown"]') ? this : t.prev(this, '[data-bs-toggle="dropdown"]')[0]; return "Escape" === e.key ? (n().focus(), void Ae.clearMenus()) : "ArrowUp" === e.key || "ArrowDown" === e.key ? (i || n().click(), void Ae.getInstance(n())._selectMenuItem(e)) : void(i && "Space" !== e.key || Ae.clearMenus()) } } P.on(document, "keydown.bs.dropdown.data-api", '[data-bs-toggle="dropdown"]', Ae.dataApiKeydownHandler), P.on(document, "keydown.bs.dropdown.data-api", ".dropdown-menu", Ae.dataApiKeydownHandler), P.on(document, "click.bs.dropdown.data-api", Ae.clearMenus), P.on(document, "keyup.bs.dropdown.data-api", Ae.clearMenus), P.on(document, "click.bs.dropdown.data-api", '[data-bs-toggle="dropdown"]', (function(t) { t.preventDefault(), Ae.dropdownInterface(this) })), _(Ae); class Te { constructor() { this._element = document.body } getWidth() { const t = document.documentElement.clientWidth; return Math.abs(window.innerWidth - t) } hide() { const t = this.getWidth(); this._disableOverFlow(), this._setElementAttributes(this._element, "paddingRight", e => e + t), this._setElementAttributes(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", "paddingRight", e => e + t), this._setElementAttributes(".sticky-top", "marginRight", e => e - t) } _disableOverFlow() { this._saveInitialAttribute(this._element, "overflow"), this._element.style.overflow = "hidden" } _setElementAttributes(t, e, i) { const n = this.getWidth(); this._applyManipulationCallback(t, t => { if (t !== this._element && window.innerWidth > t.clientWidth + n) return; this._saveInitialAttribute(t, e); const s = window.getComputedStyle(t)[e]; t.style[e] = i(Number.parseFloat(s)) + "px" }) } reset() { this._resetElementAttributes(this._element, "overflow"), this._resetElementAttributes(this._element, "paddingRight"), this._resetElementAttributes(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", "paddingRight"), this._resetElementAttributes(".sticky-top", "marginRight") } _saveInitialAttribute(t, e) { const i = t.style[e]; i && U.setDataAttribute(t, e, i) } _resetElementAttributes(t, e) { this._applyManipulationCallback(t, t => { const i = U.getDataAttribute(t, e); void 0 === i ? t.style.removeProperty(e) : (U.removeDataAttribute(t, e), t.style[e] = i) }) } _applyManipulationCallback(e, i) { r(e) ? i(e) : t.find(e, this._element).forEach(i) } isOverflowing() { return this.getWidth() > 0 } } const Oe = { isVisible: !0, isAnimated: !1, rootElement: "body", clickCallback: null }, Ce = { isVisible: "boolean", isAnimated: "boolean", rootElement: "(element|string)", clickCallback: "(function|null)" }; class ke { constructor(t) { this._config = this._getConfig(t), this._isAppended = !1, this._element = null } show(t) { this._config.isVisible ? (this._append(), this._config.isAnimated && f(this._getElement()), this._getElement().classList.add("show"), this._emulateAnimation(() => { b(t) })) : b(t) } hide(t) { this._config.isVisible ? (this._getElement().classList.remove("show"), this._emulateAnimation(() => { this.dispose(), b(t) })) : b(t) } _getElement() { if (!this._element) { const t = document.createElement("div"); t.className = "modal-backdrop", this._config.isAnimated && t.classList.add("fade"), this._element = t } return this._element } _getConfig(t) { return (t = { ...Oe, ..."object" == typeof t ? t : {} }).rootElement = a(t.rootElement), l("backdrop", t, Ce), t } _append() { this._isAppended || (this._config.rootElement.appendChild(this._getElement()), P.on(this._getElement(), "mousedown.bs.backdrop", () => { b(this._config.clickCallback) }), this._isAppended = !0) } dispose() { this._isAppended && (P.off(this._element, "mousedown.bs.backdrop"), this._element.remove(), this._isAppended = !1) } _emulateAnimation(t) { v(t, this._getElement(), this._config.isAnimated) } } const Le = { backdrop: !0, keyboard: !0, focus: !0 }, xe = { backdrop: "(boolean|string)", keyboard: "boolean", focus: "boolean" }; class De extends B { constructor(e, i) { super(e), this._config = this._getConfig(i), this._dialog = t.findOne(".modal-dialog", this._element), this._backdrop = this._initializeBackDrop(), this._isShown = !1, this._ignoreBackdropClick = !1, this._isTransitioning = !1, this._scrollBar = new Te } static get Default() { return Le } static get NAME() { return "modal" } toggle(t) { return this._isShown ? this.hide() : this.show(t) } show(t) { this._isShown || this._isTransitioning || P.trigger(this._element, "show.bs.modal", { relatedTarget: t }).defaultPrevented || (this._isShown = !0, this._isAnimated() && (this._isTransitioning = !0), this._scrollBar.hide(), document.body.classList.add("modal-open"), this._adjustDialog(), this._setEscapeEvent(), this._setResizeEvent(), P.on(this._element, "click.dismiss.bs.modal", '[data-bs-dismiss="modal"]', t => this.hide(t)), P.on(this._dialog, "mousedown.dismiss.bs.modal", () => { P.one(this._element, "mouseup.dismiss.bs.modal", t => { t.target === this._element && (this._ignoreBackdropClick = !0) }) }), this._showBackdrop(() => this._showElement(t))) } hide(t) { if (t && ["A", "AREA"].includes(t.target.tagName) && t.preventDefault(), !this._isShown || this._isTransitioning) return; if (P.trigger(this._element, "hide.bs.modal").defaultPrevented) return; this._isShown = !1; const e = this._isAnimated(); e && (this._isTransitioning = !0), this._setEscapeEvent(), this._setResizeEvent(), P.off(document, "focusin.bs.modal"), this._element.classList.remove("show"), P.off(this._element, "click.dismiss.bs.modal"), P.off(this._dialog, "mousedown.dismiss.bs.modal"), this._queueCallback(() => this._hideModal(), this._element, e) } dispose() { [window, this._dialog].forEach(t => P.off(t, ".bs.modal")), this._backdrop.dispose(), super.dispose(), P.off(document, "focusin.bs.modal") } handleUpdate() { this._adjustDialog() } _initializeBackDrop() { return new ke({ isVisible: Boolean(this._config.backdrop), isAnimated: this._isAnimated() }) } _getConfig(t) { return t = { ...Le, ...U.getDataAttributes(this._element), ..."object" == typeof t ? t : {} }, l("modal", t, xe), t } _showElement(e) { const i = this._isAnimated(), n = t.findOne(".modal-body", this._dialog); this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE || document.body.appendChild(this._element), this._element.style.display = "block", this._element.removeAttribute("aria-hidden"), this._element.setAttribute("aria-modal", !0), this._element.setAttribute("role", "dialog"), this._element.scrollTop = 0, n && (n.scrollTop = 0), i && f(this._element), this._element.classList.add("show"), this._config.focus && this._enforceFocus(), this._queueCallback(() => { this._config.focus && this._element.focus(), this._isTransitioning = !1, P.trigger(this._element, "shown.bs.modal", { relatedTarget: e }) }, this._dialog, i) } _enforceFocus() { P.off(document, "focusin.bs.modal"), P.on(document, "focusin.bs.modal", t => { document === t.target || this._element === t.target || this._element.contains(t.target) || this._element.focus() }) } _setEscapeEvent() { this._isShown ? P.on(this._element, "keydown.dismiss.bs.modal", t => { this._config.keyboard && "Escape" === t.key ? (t.preventDefault(), this.hide()) : this._config.keyboard || "Escape" !== t.key || this._triggerBackdropTransition() }) : P.off(this._element, "keydown.dismiss.bs.modal") } _setResizeEvent() { this._isShown ? P.on(window, "resize.bs.modal", () => this._adjustDialog()) : P.off(window, "resize.bs.modal") } _hideModal() { this._element.style.display = "none", this._element.setAttribute("aria-hidden", !0), this._element.removeAttribute("aria-modal"), this._element.removeAttribute("role"), this._isTransitioning = !1, this._backdrop.hide(() => { document.body.classList.remove("modal-open"), this._resetAdjustments(), this._scrollBar.reset(), P.trigger(this._element, "hidden.bs.modal") }) } _showBackdrop(t) { P.on(this._element, "click.dismiss.bs.modal", t => { this._ignoreBackdropClick ? this._ignoreBackdropClick = !1 : t.target === t.currentTarget && (!0 === this._config.backdrop ? this.hide() : "static" === this._config.backdrop && this._triggerBackdropTransition()) }), this._backdrop.show(t) } _isAnimated() { return this._element.classList.contains("fade") } _triggerBackdropTransition() { if (P.trigger(this._element, "hidePrevented.bs.modal").defaultPrevented) return; const { classList: t, scrollHeight: e, style: i } = this._element, n = e > document.documentElement.clientHeight; !n && "hidden" === i.overflowY || t.contains("modal-static") || (n || (i.overflowY = "hidden"), t.add("modal-static"), this._queueCallback(() => { t.remove("modal-static"), n || this._queueCallback(() => { i.overflowY = "" }, this._dialog) }, this._dialog), this._element.focus()) } _adjustDialog() { const t = this._element.scrollHeight > document.documentElement.clientHeight, e = this._scrollBar.getWidth(), i = e > 0; (!i && t && !g() || i && !t && g()) && (this._element.style.paddingLeft = e + "px"), (i && !t && !g() || !i && t && g()) && (this._element.style.paddingRight = e + "px") } _resetAdjustments() { this._element.style.paddingLeft = "", this._element.style.paddingRight = "" } static jQueryInterface(t, e) { return this.each((function() { const i = De.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === i[t]) throw new TypeError(`No method named "${t}"`); i[t](e) } })) } } P.on(document, "click.bs.modal.data-api", '[data-bs-toggle="modal"]', (function(t) { const e = s(this); ["A", "AREA"].includes(this.tagName) && t.preventDefault(), P.one(e, "show.bs.modal", t => { t.defaultPrevented || P.one(e, "hidden.bs.modal", () => { c(this) && this.focus() }) }), De.getOrCreateInstance(e).toggle(this) })), _(De); const Se = { backdrop: !0, keyboard: !0, scroll: !1 }, Ie = { backdrop: "boolean", keyboard: "boolean", scroll: "boolean" }; class Ne extends B { constructor(t, e) { super(t), this._config = this._getConfig(e), this._isShown = !1, this._backdrop = this._initializeBackDrop(), this._addEventListeners() } static get NAME() { return "offcanvas" } static get Default() { return Se } toggle(t) { return this._isShown ? this.hide() : this.show(t) } show(t) { this._isShown || P.trigger(this._element, "show.bs.offcanvas", { relatedTarget: t }).defaultPrevented || (this._isShown = !0, this._element.style.visibility = "visible", this._backdrop.show(), this._config.scroll || ((new Te).hide(), this._enforceFocusOnElement(this._element)), this._element.removeAttribute("aria-hidden"), this._element.setAttribute("aria-modal", !0), this._element.setAttribute("role", "dialog"), this._element.classList.add("show"), this._queueCallback(() => { P.trigger(this._element, "shown.bs.offcanvas", { relatedTarget: t }) }, this._element, !0)) } hide() { this._isShown && (P.trigger(this._element, "hide.bs.offcanvas").defaultPrevented || (P.off(document, "focusin.bs.offcanvas"), this._element.blur(), this._isShown = !1, this._element.classList.remove("show"), this._backdrop.hide(), this._queueCallback(() => { this._element.setAttribute("aria-hidden", !0), this._element.removeAttribute("aria-modal"), this._element.removeAttribute("role"), this._element.style.visibility = "hidden", this._config.scroll || (new Te).reset(), P.trigger(this._element, "hidden.bs.offcanvas") }, this._element, !0))) } dispose() { this._backdrop.dispose(), super.dispose(), P.off(document, "focusin.bs.offcanvas") } _getConfig(t) { return t = { ...Se, ...U.getDataAttributes(this._element), ..."object" == typeof t ? t : {} }, l("offcanvas", t, Ie), t } _initializeBackDrop() { return new ke({ isVisible: this._config.backdrop, isAnimated: !0, rootElement: this._element.parentNode, clickCallback: () => this.hide() }) } _enforceFocusOnElement(t) { P.off(document, "focusin.bs.offcanvas"), P.on(document, "focusin.bs.offcanvas", e => { document === e.target || t === e.target || t.contains(e.target) || t.focus() }), t.focus() } _addEventListeners() { P.on(this._element, "click.dismiss.bs.offcanvas", '[data-bs-dismiss="offcanvas"]', () => this.hide()), P.on(this._element, "keydown.dismiss.bs.offcanvas", t => { this._config.keyboard && "Escape" === t.key && this.hide() }) } static jQueryInterface(t) { return this.each((function() { const e = Ne.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === e[t] || t.startsWith("_") || "constructor" === t) throw new TypeError(`No method named "${t}"`); e[t](this) } })) } } P.on(document, "click.bs.offcanvas.data-api", '[data-bs-toggle="offcanvas"]', (function(e) { const i = s(this); if (["A", "AREA"].includes(this.tagName) && e.preventDefault(), h(this)) return; P.one(i, "hidden.bs.offcanvas", () => { c(this) && this.focus() }); const n = t.findOne(".offcanvas.show"); n && n !== i && Ne.getInstance(n).hide(), Ne.getOrCreateInstance(i).toggle(this) })), P.on(window, "load.bs.offcanvas.data-api", () => t.find(".offcanvas.show").forEach(t => Ne.getOrCreateInstance(t).show())), _(Ne); const je = new Set(["background", "cite", "href", "itemtype", "longdesc", "poster", "src", "xlink:href"]), Me = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i, Pe = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i, He = (t, e) => { const i = t.nodeName.toLowerCase(); if (e.includes(i)) return !je.has(i) || Boolean(Me.test(t.nodeValue) || Pe.test(t.nodeValue)); const n = e.filter(t => t instanceof RegExp); for (let t = 0, e = n.length; t < e; t++) if (n[t].test(i)) return !0; return !1 }; function Re(t, e, i) { if (!t.length) return t; if (i && "function" == typeof i) return i(t); const n = (new window.DOMParser).parseFromString(t, "text/html"), s = Object.keys(e), o = [].concat(...n.body.querySelectorAll("*")); for (let t = 0, i = o.length; t < i; t++) { const i = o[t], n = i.nodeName.toLowerCase(); if (!s.includes(n)) { i.remove(); continue } const r = [].concat(...i.attributes), a = [].concat(e["*"] || [], e[n] || []); r.forEach(t => { He(t, a) || i.removeAttribute(t.nodeName) }) } return n.body.innerHTML } const Be = new RegExp("(^|\\s)bs-tooltip\\S+", "g"), We = new Set(["sanitize", "allowList", "sanitizeFn"]), qe = { animation: "boolean", template: "string", title: "(string|element|function)", trigger: "string", delay: "(number|object)", html: "boolean", selector: "(string|boolean)", placement: "(string|function)", offset: "(array|string|function)", container: "(string|element|boolean)", fallbackPlacements: "array", boundary: "(string|element)", customClass: "(string|function)", sanitize: "boolean", sanitizeFn: "(null|function)", allowList: "object", popperConfig: "(null|object|function)" }, ze = { AUTO: "auto", TOP: "top", RIGHT: g() ? "left" : "right", BOTTOM: "bottom", LEFT: g() ? "right" : "left" }, $e = { animation: !0, template: '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>', trigger: "hover focus", title: "", delay: 0, html: !1, selector: !1, placement: "top", offset: [0, 0], container: !1, fallbackPlacements: ["top", "right", "bottom", "left"], boundary: "clippingParents", customClass: "", sanitize: !0, sanitizeFn: null, allowList: { "*": ["class", "dir", "id", "lang", "role", /^aria-[\w-]*$/i], a: ["target", "href", "title", "rel"], area: [], b: [], br: [], col: [], code: [], div: [], em: [], hr: [], h1: [], h2: [], h3: [], h4: [], h5: [], h6: [], i: [], img: ["src", "srcset", "alt", "title", "width", "height"], li: [], ol: [], p: [], pre: [], s: [], small: [], span: [], sub: [], sup: [], strong: [], u: [], ul: [] }, popperConfig: null }, Ue = { HIDE: "hide.bs.tooltip", HIDDEN: "hidden.bs.tooltip", SHOW: "show.bs.tooltip", SHOWN: "shown.bs.tooltip", INSERTED: "inserted.bs.tooltip", CLICK: "click.bs.tooltip", FOCUSIN: "focusin.bs.tooltip", FOCUSOUT: "focusout.bs.tooltip", MOUSEENTER: "mouseenter.bs.tooltip", MOUSELEAVE: "mouseleave.bs.tooltip" }; class Fe extends B { constructor(t, e) { if (void 0 === fe) throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)"); super(t), this._isEnabled = !0, this._timeout = 0, this._hoverState = "", this._activeTrigger = {}, this._popper = null, this._config = this._getConfig(e), this.tip = null, this._setListeners() } static get Default() { return $e } static get NAME() { return "tooltip" } static get Event() { return Ue } static get DefaultType() { return qe } enable() { this._isEnabled = !0 } disable() { this._isEnabled = !1 } toggleEnabled() { this._isEnabled = !this._isEnabled } toggle(t) { if (this._isEnabled) if (t) { const e = this._initializeOnDelegatedTarget(t); e._activeTrigger.click = !e._activeTrigger.click, e._isWithActiveTrigger() ? e._enter(null, e) : e._leave(null, e) } else { if (this.getTipElement().classList.contains("show")) return void this._leave(null, this); this._enter(null, this) } } dispose() { clearTimeout(this._timeout), P.off(this._element.closest(".modal"), "hide.bs.modal", this._hideModalHandler), this.tip && this.tip.remove(), this._popper && this._popper.destroy(), super.dispose() } show() { if ("none" === this._element.style.display) throw new Error("Please use show on visible elements"); if (!this.isWithContent() || !this._isEnabled) return; const t = P.trigger(this._element, this.constructor.Event.SHOW), i = d(this._element), n = null === i ? this._element.ownerDocument.documentElement.contains(this._element) : i.contains(this._element); if (t.defaultPrevented || !n) return; const s = this.getTipElement(), o = e(this.constructor.NAME); s.setAttribute("id", o), this._element.setAttribute("aria-describedby", o), this.setContent(), this._config.animation && s.classList.add("fade"); const r = "function" == typeof this._config.placement ? this._config.placement.call(this, s, this._element) : this._config.placement, a = this._getAttachment(r); this._addAttachmentClass(a); const { container: l } = this._config; R.set(s, this.constructor.DATA_KEY, this), this._element.ownerDocument.documentElement.contains(this.tip) || (l.appendChild(s), P.trigger(this._element, this.constructor.Event.INSERTED)), this._popper ? this._popper.update() : this._popper = ue(this._element, s, this._getPopperConfig(a)), s.classList.add("show"); const c = "function" == typeof this._config.customClass ? this._config.customClass() : this._config.customClass; c && s.classList.add(...c.split(" ")), "ontouchstart" in document.documentElement && [].concat(...document.body.children).forEach(t => { P.on(t, "mouseover", u) }); const h = this.tip.classList.contains("fade"); this._queueCallback(() => { const t = this._hoverState; this._hoverState = null, P.trigger(this._element, this.constructor.Event.SHOWN), "out" === t && this._leave(null, this) }, this.tip, h) } hide() { if (!this._popper) return; const t = this.getTipElement(); if (P.trigger(this._element, this.constructor.Event.HIDE).defaultPrevented) return; t.classList.remove("show"), "ontouchstart" in document.documentElement && [].concat(...document.body.children).forEach(t => P.off(t, "mouseover", u)), this._activeTrigger.click = !1, this._activeTrigger.focus = !1, this._activeTrigger.hover = !1; const e = this.tip.classList.contains("fade"); this._queueCallback(() => { this._isWithActiveTrigger() || ("show" !== this._hoverState && t.remove(), this._cleanTipClass(), this._element.removeAttribute("aria-describedby"), P.trigger(this._element, this.constructor.Event.HIDDEN), this._popper && (this._popper.destroy(), this._popper = null)) }, this.tip, e), this._hoverState = "" } update() { null !== this._popper && this._popper.update() } isWithContent() { return Boolean(this.getTitle()) } getTipElement() { if (this.tip) return this.tip; const t = document.createElement("div"); return t.innerHTML = this._config.template, this.tip = t.children[0], this.tip } setContent() { const e = this.getTipElement(); this.setElementContent(t.findOne(".tooltip-inner", e), this.getTitle()), e.classList.remove("fade", "show") } setElementContent(t, e) { if (null !== t) return r(e) ? (e = a(e), void(this._config.html ? e.parentNode !== t && (t.innerHTML = "", t.appendChild(e)) : t.textContent = e.textContent)) : void(this._config.html ? (this._config.sanitize && (e = Re(e, this._config.allowList, this._config.sanitizeFn)), t.innerHTML = e) : t.textContent = e) } getTitle() { let t = this._element.getAttribute("data-bs-original-title"); return t || (t = "function" == typeof this._config.title ? this._config.title.call(this._element) : this._config.title), t } updateAttachment(t) { return "right" === t ? "end" : "left" === t ? "start" : t } _initializeOnDelegatedTarget(t, e) { const i = this.constructor.DATA_KEY; return (e = e || R.get(t.delegateTarget, i)) || (e = new this.constructor(t.delegateTarget, this._getDelegateConfig()), R.set(t.delegateTarget, i, e)), e } _getOffset() { const { offset: t } = this._config; return "string" == typeof t ? t.split(",").map(t => Number.parseInt(t, 10)) : "function" == typeof t ? e => t(e, this._element) : t } _getPopperConfig(t) { const e = { placement: t, modifiers: [{ name: "flip", options: { fallbackPlacements: this._config.fallbackPlacements } }, { name: "offset", options: { offset: this._getOffset() } }, { name: "preventOverflow", options: { boundary: this._config.boundary } }, { name: "arrow", options: { element: `.${this.constructor.NAME}-arrow` } }, { name: "onChange", enabled: !0, phase: "afterWrite", fn: t => this._handlePopperPlacementChange(t) }], onFirstUpdate: t => { t.options.placement !== t.placement && this._handlePopperPlacementChange(t) } }; return { ...e, ..."function" == typeof this._config.popperConfig ? this._config.popperConfig(e) : this._config.popperConfig } } _addAttachmentClass(t) { this.getTipElement().classList.add("bs-tooltip-" + this.updateAttachment(t)) } _getAttachment(t) { return ze[t.toUpperCase()] } _setListeners() { this._config.trigger.split(" ").forEach(t => { if ("click" === t) P.on(this._element, this.constructor.Event.CLICK, this._config.selector, t => this.toggle(t)); else if ("manual" !== t) { const e = "hover" === t ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN, i = "hover" === t ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT; P.on(this._element, e, this._config.selector, t => this._enter(t)), P.on(this._element, i, this._config.selector, t => this._leave(t)) } }), this._hideModalHandler = () => { this._element && this.hide() }, P.on(this._element.closest(".modal"), "hide.bs.modal", this._hideModalHandler), this._config.selector ? this._config = { ...this._config, trigger: "manual", selector: "" } : this._fixTitle() } _fixTitle() { const t = this._element.getAttribute("title"), e = typeof this._element.getAttribute("data-bs-original-title"); (t || "string" !== e) && (this._element.setAttribute("data-bs-original-title", t || ""), !t || this._element.getAttribute("aria-label") || this._element.textContent || this._element.setAttribute("aria-label", t), this._element.setAttribute("title", "")) } _enter(t, e) { e = this._initializeOnDelegatedTarget(t, e), t && (e._activeTrigger["focusin" === t.type ? "focus" : "hover"] = !0), e.getTipElement().classList.contains("show") || "show" === e._hoverState ? e._hoverState = "show" : (clearTimeout(e._timeout), e._hoverState = "show", e._config.delay && e._config.delay.show ? e._timeout = setTimeout(() => { "show" === e._hoverState && e.show() }, e._config.delay.show) : e.show()) } _leave(t, e) { e = this._initializeOnDelegatedTarget(t, e), t && (e._activeTrigger["focusout" === t.type ? "focus" : "hover"] = e._element.contains(t.relatedTarget)), e._isWithActiveTrigger() || (clearTimeout(e._timeout), e._hoverState = "out", e._config.delay && e._config.delay.hide ? e._timeout = setTimeout(() => { "out" === e._hoverState && e.hide() }, e._config.delay.hide) : e.hide()) } _isWithActiveTrigger() { for (const t in this._activeTrigger) if (this._activeTrigger[t]) return !0; return !1 } _getConfig(t) { const e = U.getDataAttributes(this._element); return Object.keys(e).forEach(t => { We.has(t) && delete e[t] }), (t = { ...this.constructor.Default, ...e, ..."object" == typeof t && t ? t : {} }).container = !1 === t.container ? document.body : a(t.container), "number" == typeof 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()), l("tooltip", t, this.constructor.DefaultType), t.sanitize && (t.template = Re(t.template, t.allowList, t.sanitizeFn)), t } _getDelegateConfig() { const t = {}; if (this._config) for (const e in this._config) this.constructor.Default[e] !== this._config[e] && (t[e] = this._config[e]); return t } _cleanTipClass() { const t = this.getTipElement(), e = t.getAttribute("class").match(Be); null !== e && e.length > 0 && e.map(t => t.trim()).forEach(e => t.classList.remove(e)) } _handlePopperPlacementChange(t) { const { state: e } = t; e && (this.tip = e.elements.popper, this._cleanTipClass(), this._addAttachmentClass(this._getAttachment(e.placement))) } static jQueryInterface(t) { return this.each((function() { const e = Fe.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); e[t]() } })) } } _(Fe); const Ve = new RegExp("(^|\\s)bs-popover\\S+", "g"), Ke = { ...Fe.Default, placement: "right", offset: [0, 8], trigger: "click", content: "", template: '<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>' }, Xe = { ...Fe.DefaultType, content: "(string|element|function)" }, Ye = { HIDE: "hide.bs.popover", HIDDEN: "hidden.bs.popover", SHOW: "show.bs.popover", SHOWN: "shown.bs.popover", INSERTED: "inserted.bs.popover", CLICK: "click.bs.popover", FOCUSIN: "focusin.bs.popover", FOCUSOUT: "focusout.bs.popover", MOUSEENTER: "mouseenter.bs.popover", MOUSELEAVE: "mouseleave.bs.popover" }; class Qe extends Fe { static get Default() { return Ke } static get NAME() { return "popover" } static get Event() { return Ye } static get DefaultType() { return Xe } isWithContent() { return this.getTitle() || this._getContent() } getTipElement() { return this.tip || (this.tip = super.getTipElement(), this.getTitle() || t.findOne(".popover-header", this.tip).remove(), this._getContent() || t.findOne(".popover-body", this.tip).remove()), this.tip } setContent() { const e = this.getTipElement(); this.setElementContent(t.findOne(".popover-header", e), this.getTitle()); let i = this._getContent(); "function" == typeof i && (i = i.call(this._element)), this.setElementContent(t.findOne(".popover-body", e), i), e.classList.remove("fade", "show") } _addAttachmentClass(t) { this.getTipElement().classList.add("bs-popover-" + this.updateAttachment(t)) } _getContent() { return this._element.getAttribute("data-bs-content") || this._config.content } _cleanTipClass() { const t = this.getTipElement(), e = t.getAttribute("class").match(Ve); null !== e && e.length > 0 && e.map(t => t.trim()).forEach(e => t.classList.remove(e)) } static jQueryInterface(t) { return this.each((function() { const e = Qe.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); e[t]() } })) } } _(Qe); const Ge = { offset: 10, method: "auto", target: "" }, Ze = { offset: "number", method: "string", target: "(string|element)" }; class Je extends B { constructor(t, e) { super(t), this._scrollElement = "BODY" === this._element.tagName ? window : this._element, this._config = this._getConfig(e), this._selector = `${this._config.target} .nav-link, ${this._config.target} .list-group-item, ${this._config.target} .dropdown-item`, this._offsets = [], this._targets = [], this._activeTarget = null, this._scrollHeight = 0, P.on(this._scrollElement, "scroll.bs.scrollspy", () => this._process()), this.refresh(), this._process() } static get Default() { return Ge } static get NAME() { return "scrollspy" } refresh() { const e = this._scrollElement === this._scrollElement.window ? "offset" : "position", i = "auto" === this._config.method ? e : this._config.method, s = "position" === i ? this._getScrollTop() : 0; this._offsets = [], this._targets = [], this._scrollHeight = this._getScrollHeight(), t.find(this._selector).map(e => { const o = n(e), r = o ? t.findOne(o) : null; if (r) { const t = r.getBoundingClientRect(); if (t.width || t.height) return [U[i](r).top + s, o] } return null }).filter(t => t).sort((t, e) => t[0] - e[0]).forEach(t => { this._offsets.push(t[0]), this._targets.push(t[1]) }) } dispose() { P.off(this._scrollElement, ".bs.scrollspy"), super.dispose() } _getConfig(t) { if ("string" != typeof(t = { ...Ge, ...U.getDataAttributes(this._element), ..."object" == typeof t && t ? t : {} }).target && r(t.target)) { let { id: i } = t.target; i || (i = e("scrollspy"), t.target.id = i), t.target = "#" + i } return l("scrollspy", t, Ze), t } _getScrollTop() { return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop } _getScrollHeight() { return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight) } _getOffsetHeight() { return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height } _process() { const t = this._getScrollTop() + this._config.offset, e = this._getScrollHeight(), i = this._config.offset + e - this._getOffsetHeight(); if (this._scrollHeight !== e && this.refresh(), t >= i) { const t = this._targets[this._targets.length - 1]; this._activeTarget !== t && this._activate(t) } else { if (this._activeTarget && t < this._offsets[0] && this._offsets[0] > 0) return this._activeTarget = null, void this._clear(); for (let e = this._offsets.length; e--;) this._activeTarget !== this._targets[e] && t >= this._offsets[e] && (void 0 === this._offsets[e + 1] || t < this._offsets[e + 1]) && this._activate(this._targets[e]) } } _activate(e) { this._activeTarget = e, this._clear(); const i = this._selector.split(",").map(t => `${t}[data-bs-target="${e}"],${t}[href="${e}"]`), n = t.findOne(i.join(",")); n.classList.contains("dropdown-item") ? (t.findOne(".dropdown-toggle", n.closest(".dropdown")).classList.add("active"), n.classList.add("active")) : (n.classList.add("active"), t.parents(n, ".nav, .list-group").forEach(e => { t.prev(e, ".nav-link, .list-group-item").forEach(t => t.classList.add("active")), t.prev(e, ".nav-item").forEach(e => { t.children(e, ".nav-link").forEach(t => t.classList.add("active")) }) })), P.trigger(this._scrollElement, "activate.bs.scrollspy", { relatedTarget: e }) } _clear() { t.find(this._selector).filter(t => t.classList.contains("active")).forEach(t => t.classList.remove("active")) } static jQueryInterface(t) { return this.each((function() { const e = Je.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); e[t]() } })) } } P.on(window, "load.bs.scrollspy.data-api", () => { t.find('[data-bs-spy="scroll"]').forEach(t => new Je(t)) }), _(Je); class ti extends B { static get NAME() { return "tab" } show() { if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains("active")) return; let e; const i = s(this._element), n = this._element.closest(".nav, .list-group"); if (n) { const i = "UL" === n.nodeName || "OL" === n.nodeName ? ":scope > li > .active" : ".active"; e = t.find(i, n), e = e[e.length - 1] } const o = e ? P.trigger(e, "hide.bs.tab", { relatedTarget: this._element }) : null; if (P.trigger(this._element, "show.bs.tab", { relatedTarget: e }).defaultPrevented || null !== o && o.defaultPrevented) return; this._activate(this._element, n); const r = () => { P.trigger(e, "hidden.bs.tab", { relatedTarget: this._element }), P.trigger(this._element, "shown.bs.tab", { relatedTarget: e }) }; i ? this._activate(i, i.parentNode, r) : r() } _activate(e, i, n) { const s = (!i || "UL" !== i.nodeName && "OL" !== i.nodeName ? t.children(i, ".active") : t.find(":scope > li > .active", i))[0], o = n && s && s.classList.contains("fade"), r = () => this._transitionComplete(e, s, n); s && o ? (s.classList.remove("show"), this._queueCallback(r, e, !0)) : r() } _transitionComplete(e, i, n) { if (i) { i.classList.remove("active"); const e = t.findOne(":scope > .dropdown-menu .active", i.parentNode); e && e.classList.remove("active"), "tab" === i.getAttribute("role") && i.setAttribute("aria-selected", !1) } e.classList.add("active"), "tab" === e.getAttribute("role") && e.setAttribute("aria-selected", !0), f(e), e.classList.contains("fade") && e.classList.add("show"); let s = e.parentNode; if (s && "LI" === s.nodeName && (s = s.parentNode), s && s.classList.contains("dropdown-menu")) { const i = e.closest(".dropdown"); i && t.find(".dropdown-toggle", i).forEach(t => t.classList.add("active")), e.setAttribute("aria-expanded", !0) } n && n() } static jQueryInterface(t) { return this.each((function() { const e = ti.getOrCreateInstance(this); if ("string" == typeof t) { if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); e[t]() } })) } } P.on(document, "click.bs.tab.data-api", '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]', (function(t) { ["A", "AREA"].includes(this.tagName) && t.preventDefault(), h(this) || ti.getOrCreateInstance(this).show() })), _(ti); const ei = { animation: "boolean", autohide: "boolean", delay: "number" }, ii = { animation: !0, autohide: !0, delay: 5e3 }; class ni extends B { constructor(t, e) { super(t), this._config = this._getConfig(e), this._timeout = null, this._hasMouseInteraction = !1, this._hasKeyboardInteraction = !1, this._setListeners() } static get DefaultType() { return ei } static get Default() { return ii } static get NAME() { return "toast" } show() { P.trigger(this._element, "show.bs.toast").defaultPrevented || (this._clearTimeout(), this._config.animation && this._element.classList.add("fade"), this._element.classList.remove("hide"), f(this._element), this._element.classList.add("showing"), this._queueCallback(() => { this._element.classList.remove("showing"), this._element.classList.add("show"), P.trigger(this._element, "shown.bs.toast"), this._maybeScheduleHide() }, this._element, this._config.animation)) } hide() { this._element.classList.contains("show") && (P.trigger(this._element, "hide.bs.toast").defaultPrevented || (this._element.classList.remove("show"), this._queueCallback(() => { this._element.classList.add("hide"), P.trigger(this._element, "hidden.bs.toast") }, this._element, this._config.animation))) } dispose() { this._clearTimeout(), this._element.classList.contains("show") && this._element.classList.remove("show"), super.dispose() } _getConfig(t) { return t = { ...ii, ...U.getDataAttributes(this._element), ..."object" == typeof t && t ? t : {} }, l("toast", t, this.constructor.DefaultType), t } _maybeScheduleHide() { this._config.autohide && (this._hasMouseInteraction || this._hasKeyboardInteraction || (this._timeout = setTimeout(() => { this.hide() }, this._config.delay))) } _onInteraction(t, e) { switch (t.type) { case "mouseover": case "mouseout": this._hasMouseInteraction = e; break; case "focusin": case "focusout": this._hasKeyboardInteraction = e } if (e) return void this._clearTimeout(); const i = t.relatedTarget; this._element === i || this._element.contains(i) || this._maybeScheduleHide() } _setListeners() { P.on(this._element, "click.dismiss.bs.toast", '[data-bs-dismiss="toast"]', () => this.hide()), P.on(this._element, "mouseover.bs.toast", t => this._onInteraction(t, !0)), P.on(this._element, "mouseout.bs.toast", t => this._onInteraction(t, !1)), P.on(this._element, "focusin.bs.toast", t => this._onInteraction(t, !0)), P.on(this._element, "focusout.bs.toast", t => this._onInteraction(t, !1)) } _clearTimeout() { clearTimeout(this._timeout), this._timeout = null } static jQueryInterface(t) { return this.each((function() { const e = ni.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); e[t](this) } })) } } return _(ni), { Alert: W, Button: q, Carousel: Z, Collapse: et, Dropdown: Ae, Modal: De, Offcanvas: Ne, Popover: Qe, ScrollSpy: Je, Tab: ti, Toast: ni, Tooltip: Fe } })); /*! * Isotope PACKAGED v3.0.5 * * Licensed GPLv3 for open source use * or Isotope Commercial License for commercial use * * https://isotope.metafizzy.co * Copyright 2017 Metafizzy */ ! function(t, e) { "function" == typeof define && define.amd ? define("jquery-bridget/jquery-bridget", ["jquery"], function(i) { return e(t, i) }) : "object" == typeof module && module.exports ? module.exports = e(t, require("jquery")) : t.jQueryBridget = e(t, t.jQuery) }(window, function(t, e) { "use strict"; function i(i, s, a) { function u(t, e, o) { var n, s = "$()." + i + '("' + e + '")'; return t.each(function(t, u) { var h = a.data(u, i); if (!h) return void r(i + " not initialized. Cannot call methods, i.e. " + s); var d = h[e]; if (!d || "_" == e.charAt(0)) return void r(s + " is not a valid method"); var l = d.apply(h, o); n = void 0 === n ? l : n }), void 0 !== n ? n : t } function h(t, e) { t.each(function(t, o) { var n = a.data(o, i); n ? (n.option(e), n._init()) : (n = new s(o, e), a.data(o, i, n)) }) } a = a || e || t.jQuery, a && (s.prototype.option || (s.prototype.option = function(t) { a.isPlainObject(t) && (this.options = a.extend(!0, this.options, t)) }), a.fn[i] = function(t) { if ("string" == typeof t) { var e = n.call(arguments, 1); return u(this, t, e) } return h(this, t), this }, o(a)) } function o(t) { !t || t && t.bridget || (t.bridget = i) } var n = Array.prototype.slice, s = t.console, r = "undefined" == typeof s ? function() {} : function(t) { s.error(t) }; return o(e || t.jQuery), i }), function(t, e) { "function" == typeof define && define.amd ? define("ev-emitter/ev-emitter", e) : "object" == typeof module && module.exports ? module.exports = e() : t.EvEmitter = e() }("undefined" != typeof window ? window : this, function() { function t() {} var e = t.prototype; return e.on = function(t, e) { if (t && e) { var i = this._events = this._events || {}, o = i[t] = i[t] || []; return o.indexOf(e) == -1 && o.push(e), this } }, e.once = function(t, e) { if (t && e) { this.on(t, e); var i = this._onceEvents = this._onceEvents || {}, o = i[t] = i[t] || {}; return o[e] = !0, this } }, e.off = function(t, e) { var i = this._events && this._events[t]; if (i && i.length) { var o = i.indexOf(e); return o != -1 && i.splice(o, 1), this } }, e.emitEvent = function(t, e) { var i = this._events && this._events[t]; if (i && i.length) { i = i.slice(0), e = e || []; for (var o = this._onceEvents && this._onceEvents[t], n = 0; n < i.length; n++) { var s = i[n], r = o && o[s]; r && (this.off(t, s), delete o[s]), s.apply(this, e) } return this } }, e.allOff = function() { delete this._events, delete this._onceEvents }, t }), function(t, e) { "use strict"; "function" == typeof define && define.amd ? define("get-size/get-size", [], function() { return e() }) : "object" == typeof module && module.exports ? module.exports = e() : t.getSize = e() }(window, function() { "use strict"; function t(t) { var e = parseFloat(t), i = t.indexOf("%") == -1 && !isNaN(e); return i && e } function e() {} function i() { for (var t = { width: 0, height: 0, innerWidth: 0, innerHeight: 0, outerWidth: 0, outerHeight: 0 }, e = 0; e < h; e++) { var i = u[e]; t[i] = 0 } return t } function o(t) { var e = getComputedStyle(t); return e || a("Style returned " + e + ". Are you running this code in a hidden iframe on Firefox? See http://bit.ly/getsizebug1"), e } function n() { if (!d) { d = !0; var e = document.createElement("div"); e.style.width = "200px", e.style.padding = "1px 2px 3px 4px", e.style.borderStyle = "solid", e.style.borderWidth = "1px 2px 3px 4px", e.style.boxSizing = "border-box"; var i = document.body || document.documentElement; i.appendChild(e); var n = o(e); s.isBoxSizeOuter = r = 200 == t(n.width), i.removeChild(e) } } function s(e) { if (n(), "string" == typeof e && (e = document.querySelector(e)), e && "object" == typeof e && e.nodeType) { var s = o(e); if ("none" == s.display) return i(); var a = {}; a.width = e.offsetWidth, a.height = e.offsetHeight; for (var d = a.isBorderBox = "border-box" == s.boxSizing, l = 0; l < h; l++) { var f = u[l], c = s[f], m = parseFloat(c); a[f] = isNaN(m) ? 0 : m } var p = a.paddingLeft + a.paddingRight, y = a.paddingTop + a.paddingBottom, g = a.marginLeft + a.marginRight, v = a.marginTop + a.marginBottom, _ = a.borderLeftWidth + a.borderRightWidth, I = a.borderTopWidth + a.borderBottomWidth, z = d && r, x = t(s.width); x !== !1 && (a.width = x + (z ? 0 : p + _)); var S = t(s.height); return S !== !1 && (a.height = S + (z ? 0 : y + I)), a.innerWidth = a.width - (p + _), a.innerHeight = a.height - (y + I), a.outerWidth = a.width + g, a.outerHeight = a.height + v, a } } var r, a = "undefined" == typeof console ? e : function(t) { console.error(t) }, u = ["paddingLeft", "paddingRight", "paddingTop", "paddingBottom", "marginLeft", "marginRight", "marginTop", "marginBottom", "borderLeftWidth", "borderRightWidth", "borderTopWidth", "borderBottomWidth"], h = u.length, d = !1; return s }), function(t, e) { "use strict"; "function" == typeof define && define.amd ? define("desandro-matches-selector/matches-selector", e) : "object" == typeof module && module.exports ? module.exports = e() : t.matchesSelector = e() }(window, function() { "use strict"; var t = function() { var t = window.Element.prototype; if (t.matches) return "matches"; if (t.matchesSelector) return "matchesSelector"; for (var e = ["webkit", "moz", "ms", "o"], i = 0; i < e.length; i++) { var o = e[i], n = o + "MatchesSelector"; if (t[n]) return n } }(); return function(e, i) { return e[t](i) } }), function(t, e) { "function" == typeof define && define.amd ? define("fizzy-ui-utils/utils", ["desandro-matches-selector/matches-selector"], function(i) { return e(t, i) }) : "object" == typeof module && module.exports ? module.exports = e(t, require("desandro-matches-selector")) : t.fizzyUIUtils = e(t, t.matchesSelector) }(window, function(t, e) { var i = {}; i.extend = function(t, e) { for (var i in e) t[i] = e[i]; return t }, i.modulo = function(t, e) { return (t % e + e) % e }, i.makeArray = function(t) { var e = []; if (Array.isArray(t)) e = t; else if (t && "object" == typeof t && "number" == typeof t.length) for (var i = 0; i < t.length; i++) e.push(t[i]); else e.push(t); return e }, i.removeFrom = function(t, e) { var i = t.indexOf(e); i != -1 && t.splice(i, 1) }, i.getParent = function(t, i) { for (; t.parentNode && t != document.body;) if (t = t.parentNode, e(t, i)) return t }, i.getQueryElement = function(t) { return "string" == typeof t ? document.querySelector(t) : t }, i.handleEvent = function(t) { var e = "on" + t.type; this[e] && this[e](t) }, i.filterFindElements = function(t, o) { t = i.makeArray(t); var n = []; return t.forEach(function(t) { if (t instanceof HTMLElement) { if (!o) return void n.push(t); e(t, o) && n.push(t); for (var i = t.querySelectorAll(o), s = 0; s < i.length; s++) n.push(i[s]) } }), n }, i.debounceMethod = function(t, e, i) { var o = t.prototype[e], n = e + "Timeout"; t.prototype[e] = function() { var t = this[n]; t && clearTimeout(t); var e = arguments, s = this; this[n] = setTimeout(function() { o.apply(s, e), delete s[n] }, i || 100) } }, i.docReady = function(t) { var e = document.readyState; "complete" == e || "interactive" == e ? setTimeout(t) : document.addEventListener("DOMContentLoaded", t) }, i.toDashed = function(t) { return t.replace(/(.)([A-Z])/g, function(t, e, i) { return e + "-" + i }).toLowerCase() }; var o = t.console; return i.htmlInit = function(e, n) { i.docReady(function() { var s = i.toDashed(n), r = "data-" + s, a = document.querySelectorAll("[" + r + "]"), u = document.querySelectorAll(".js-" + s), h = i.makeArray(a).concat(i.makeArray(u)), d = r + "-options", l = t.jQuery; h.forEach(function(t) { var i, s = t.getAttribute(r) || t.getAttribute(d); try { i = s && JSON.parse(s) } catch (a) { return void(o && o.error("Error parsing " + r + " on " + t.className + ": " + a)) } var u = new e(t, i); l && l.data(t, n, u) }) }) }, i }), function(t, e) { "function" == typeof define && define.amd ? define("outlayer/item", ["ev-emitter/ev-emitter", "get-size/get-size"], e) : "object" == typeof module && module.exports ? module.exports = e(require("ev-emitter"), require("get-size")) : (t.Outlayer = {}, t.Outlayer.Item = e(t.EvEmitter, t.getSize)) }(window, function(t, e) { "use strict"; function i(t) { for (var e in t) return !1; return e = null, !0 } function o(t, e) { t && (this.element = t, this.layout = e, this.position = { x: 0, y: 0 }, this._create()) } function n(t) { return t.replace(/([A-Z])/g, function(t) { return "-" + t.toLowerCase() }) } var s = document.documentElement.style, r = "string" == typeof s.transition ? "transition" : "WebkitTransition", a = "string" == typeof s.transform ? "transform" : "WebkitTransform", u = { WebkitTransition: "webkitTransitionEnd", transition: "transitionend" }[r], h = { transform: a, transition: r, transitionDuration: r + "Duration", transitionProperty: r + "Property", transitionDelay: r + "Delay" }, d = o.prototype = Object.create(t.prototype); d.constructor = o, d._create = function() { this._transn = { ingProperties: {}, clean: {}, onEnd: {} }, this.css({ position: "absolute" }) }, d.handleEvent = function(t) { var e = "on" + t.type; this[e] && this[e](t) }, d.getSize = function() { this.size = e(this.element) }, d.css = function(t) { var e = this.element.style; for (var i in t) { var o = h[i] || i; e[o] = t[i] } }, d.getPosition = function() { var t = getComputedStyle(this.element), e = this.layout._getOption("originLeft"), i = this.layout._getOption("originTop"), o = t[e ? "left" : "right"], n = t[i ? "top" : "bottom"], s = this.layout.size, r = o.indexOf("%") != -1 ? parseFloat(o) / 100 * s.width : parseInt(o, 10), a = n.indexOf("%") != -1 ? parseFloat(n) / 100 * s.height : parseInt(n, 10); r = isNaN(r) ? 0 : r, a = isNaN(a) ? 0 : a, r -= e ? s.paddingLeft : s.paddingRight, a -= i ? s.paddingTop : s.paddingBottom, this.position.x = r, this.position.y = a }, d.layoutPosition = function() { var t = this.layout.size, e = {}, i = this.layout._getOption("originLeft"), o = this.layout._getOption("originTop"), n = i ? "paddingLeft" : "paddingRight", s = i ? "left" : "right", r = i ? "right" : "left", a = this.position.x + t[n]; e[s] = this.getXValue(a), e[r] = ""; var u = o ? "paddingTop" : "paddingBottom", h = o ? "top" : "bottom", d = o ? "bottom" : "top", l = this.position.y + t[u]; e[h] = this.getYValue(l), e[d] = "", this.css(e), this.emitEvent("layout", [this]) }, d.getXValue = function(t) { var e = this.layout._getOption("horizontal"); return this.layout.options.percentPosition && !e ? t / this.layout.size.width * 100 + "%" : t + "px" }, d.getYValue = function(t) { var e = this.layout._getOption("horizontal"); return this.layout.options.percentPosition && e ? t / this.layout.size.height * 100 + "%" : t + "px" }, d._transitionTo = function(t, e) { this.getPosition(); var i = this.position.x, o = this.position.y, n = parseInt(t, 10), s = parseInt(e, 10), r = n === this.position.x && s === this.position.y; if (this.setPosition(t, e), r && !this.isTransitioning) return void this.layoutPosition(); var a = t - i, u = e - o, h = {}; h.transform = this.getTranslate(a, u), this.transition({ to: h, onTransitionEnd: { transform: this.layoutPosition }, isCleaning: !0 }) }, d.getTranslate = function(t, e) { var i = this.layout._getOption("originLeft"), o = this.layout._getOption("originTop"); return t = i ? t : -t, e = o ? e : -e, "translate3d(" + t + "px, " + e + "px, 0)" }, d.goTo = function(t, e) { this.setPosition(t, e), this.layoutPosition() }, d.moveTo = d._transitionTo, d.setPosition = function(t, e) { this.position.x = parseInt(t, 10), this.position.y = parseInt(e, 10) }, d._nonTransition = function(t) { this.css(t.to), t.isCleaning && this._removeStyles(t.to); for (var e in t.onTransitionEnd) t.onTransitionEnd[e].call(this) }, d.transition = function(t) { if (!parseFloat(this.layout.options.transitionDuration)) return void this._nonTransition(t); var e = this._transn; for (var i in t.onTransitionEnd) e.onEnd[i] = t.onTransitionEnd[i]; for (i in t.to) e.ingProperties[i] = !0, t.isCleaning && (e.clean[i] = !0); if (t.from) { this.css(t.from); var o = this.element.offsetHeight; o = null } this.enableTransition(t.to), this.css(t.to), this.isTransitioning = !0 }; var l = "opacity," + n(a); d.enableTransition = function() { if (!this.isTransitioning) { var t = this.layout.options.transitionDuration; t = "number" == typeof t ? t + "ms" : t, this.css({ transitionProperty: l, transitionDuration: t, transitionDelay: this.staggerDelay || 0 }), this.element.addEventListener(u, this, !1) } }, d.onwebkitTransitionEnd = function(t) { this.ontransitionend(t) }, d.onotransitionend = function(t) { this.ontransitionend(t) }; var f = { "-webkit-transform": "transform" }; d.ontransitionend = function(t) { if (t.target === this.element) { var e = this._transn, o = f[t.propertyName] || t.propertyName; if (delete e.ingProperties[o], i(e.ingProperties) && this.disableTransition(), o in e.clean && (this.element.style[t.propertyName] = "", delete e.clean[o]), o in e.onEnd) { var n = e.onEnd[o]; n.call(this), delete e.onEnd[o] } this.emitEvent("transitionEnd", [this]) } }, d.disableTransition = function() { this.removeTransitionStyles(), this.element.removeEventListener(u, this, !1), this.isTransitioning = !1 }, d._removeStyles = function(t) { var e = {}; for (var i in t) e[i] = ""; this.css(e) }; var c = { transitionProperty: "", transitionDuration: "", transitionDelay: "" }; return d.removeTransitionStyles = function() { this.css(c) }, d.stagger = function(t) { t = isNaN(t) ? 0 : t, this.staggerDelay = t + "ms" }, d.removeElem = function() { this.element.parentNode.removeChild(this.element), this.css({ display: "" }), this.emitEvent("remove", [this]) }, d.remove = function() { return r && parseFloat(this.layout.options.transitionDuration) ? (this.once("transitionEnd", function() { this.removeElem() }), void this.hide()) : void this.removeElem() }, d.reveal = function() { delete this.isHidden, this.css({ display: "" }); var t = this.layout.options, e = {}, i = this.getHideRevealTransitionEndProperty("visibleStyle"); e[i] = this.onRevealTransitionEnd, this.transition({ from: t.hiddenStyle, to: t.visibleStyle, isCleaning: !0, onTransitionEnd: e }) }, d.onRevealTransitionEnd = function() { this.isHidden || this.emitEvent("reveal") }, d.getHideRevealTransitionEndProperty = function(t) { var e = this.layout.options[t]; if (e.opacity) return "opacity"; for (var i in e) return i }, d.hide = function() { this.isHidden = !0, this.css({ display: "" }); var t = this.layout.options, e = {}, i = this.getHideRevealTransitionEndProperty("hiddenStyle"); e[i] = this.onHideTransitionEnd, this.transition({ from: t.visibleStyle, to: t.hiddenStyle, isCleaning: !0, onTransitionEnd: e }) }, d.onHideTransitionEnd = function() { this.isHidden && (this.css({ display: "none" }), this.emitEvent("hide")) }, d.destroy = function() { this.css({ position: "", left: "", right: "", top: "", bottom: "", transition: "", transform: "" }) }, o }), function(t, e) { "use strict"; "function" == typeof define && define.amd ? define("outlayer/outlayer", ["ev-emitter/ev-emitter", "get-size/get-size", "fizzy-ui-utils/utils", "./item"], function(i, o, n, s) { return e(t, i, o, n, s) }) : "object" == typeof module && module.exports ? module.exports = e(t, require("ev-emitter"), require("get-size"), require("fizzy-ui-utils"), require("./item")) : t.Outlayer = e(t, t.EvEmitter, t.getSize, t.fizzyUIUtils, t.Outlayer.Item) }(window, function(t, e, i, o, n) { "use strict"; function s(t, e) { var i = o.getQueryElement(t); if (!i) return void(u && u.error("Bad element for " + this.constructor.namespace + ": " + (i || t))); this.element = i, h && (this.$element = h(this.element)), this.options = o.extend({}, this.constructor.defaults), this.option(e); var n = ++l; this.element.outlayerGUID = n, f[n] = this, this._create(); var s = this._getOption("initLayout"); s && this.layout() } function r(t) { function e() { t.apply(this, arguments) } return e.prototype = Object.create(t.prototype), e.prototype.constructor = e, e } function a(t) { if ("number" == typeof t) return t; var e = t.match(/(^\d*\.?\d*)(\w*)/), i = e && e[1], o = e && e[2]; if (!i.length) return 0; i = parseFloat(i); var n = m[o] || 1; return i * n } var u = t.console, h = t.jQuery, d = function() {}, l = 0, f = {}; s.namespace = "outlayer", s.Item = n, s.defaults = { containerStyle: { position: "relative" }, initLayout: !0, originLeft: !0, originTop: !0, resize: !0, resizeContainer: !0, transitionDuration: "0.4s", hiddenStyle: { opacity: 0, transform: "scale(0.001)" }, visibleStyle: { opacity: 1, transform: "scale(1)" } }; var c = s.prototype; o.extend(c, e.prototype), c.option = function(t) { o.extend(this.options, t) }, c._getOption = function(t) { var e = this.constructor.compatOptions[t]; return e && void 0 !== this.options[e] ? this.options[e] : this.options[t] }, s.compatOptions = { initLayout: "isInitLayout", horizontal: "isHorizontal", layoutInstant: "isLayoutInstant", originLeft: "isOriginLeft", originTop: "isOriginTop", resize: "isResizeBound", resizeContainer: "isResizingContainer" }, c._create = function() { this.reloadItems(), this.stamps = [], this.stamp(this.options.stamp), o.extend(this.element.style, this.options.containerStyle); var t = this._getOption("resize"); t && this.bindResize() }, c.reloadItems = function() { this.items = this._itemize(this.element.children) }, c._itemize = function(t) { for (var e = this._filterFindItemElements(t), i = this.constructor.Item, o = [], n = 0; n < e.length; n++) { var s = e[n], r = new i(s, this); o.push(r) } return o }, c._filterFindItemElements = function(t) { return o.filterFindElements(t, this.options.itemSelector) }, c.getItemElements = function() { return this.items.map(function(t) { return t.element }) }, c.layout = function() { this._resetLayout(), this._manageStamps(); var t = this._getOption("layoutInstant"), e = void 0 !== t ? t : !this._isLayoutInited; this.layoutItems(this.items, e), this._isLayoutInited = !0 }, c._init = c.layout, c._resetLayout = function() { this.getSize() }, c.getSize = function() { this.size = i(this.element) }, c._getMeasurement = function(t, e) { var o, n = this.options[t]; n ? ("string" == typeof n ? o = this.element.querySelector(n) : n instanceof HTMLElement && (o = n), this[t] = o ? i(o)[e] : n) : this[t] = 0 }, c.layoutItems = function(t, e) { t = this._getItemsForLayout(t), this._layoutItems(t, e), this._postLayout() }, c._getItemsForLayout = function(t) { return t.filter(function(t) { return !t.isIgnored }) }, c._layoutItems = function(t, e) { if (this._emitCompleteOnItems("layout", t), t && t.length) { var i = []; t.forEach(function(t) { var o = this._getItemLayoutPosition(t); o.item = t, o.isInstant = e || t.isLayoutInstant, i.push(o) }, this), this._processLayoutQueue(i) } }, c._getItemLayoutPosition = function() { return { x: 0, y: 0 } }, c._processLayoutQueue = function(t) { this.updateStagger(), t.forEach(function(t, e) { this._positionItem(t.item, t.x, t.y, t.isInstant, e) }, this) }, c.updateStagger = function() { var t = this.options.stagger; return null === t || void 0 === t ? void(this.stagger = 0) : (this.stagger = a(t), this.stagger) }, c._positionItem = function(t, e, i, o, n) { o ? t.goTo(e, i) : (t.stagger(n * this.stagger), t.moveTo(e, i)) }, c._postLayout = function() { this.resizeContainer() }, c.resizeContainer = function() { var t = this._getOption("resizeContainer"); if (t) { var e = this._getContainerSize(); e && (this._setContainerMeasure(e.width, !0), this._setContainerMeasure(e.height, !1)) } }, c._getContainerSize = d, c._setContainerMeasure = function(t, e) { if (void 0 !== t) { var i = this.size; i.isBorderBox && (t += e ? i.paddingLeft + i.paddingRight + i.borderLeftWidth + i.borderRightWidth : i.paddingBottom + i.paddingTop + i.borderTopWidth + i.borderBottomWidth), t = Math.max(t, 0), this.element.style[e ? "width" : "height"] = t + "px" } }, c._emitCompleteOnItems = function(t, e) { function i() { n.dispatchEvent(t + "Complete", null, [e]) } function o() { r++, r == s && i() } var n = this, s = e.length; if (!e || !s) return void i(); var r = 0; e.forEach(function(e) { e.once(t, o) }) }, c.dispatchEvent = function(t, e, i) { var o = e ? [e].concat(i) : i; if (this.emitEvent(t, o), h) if (this.$element = this.$element || h(this.element), e) { var n = h.Event(e); n.type = t, this.$element.trigger(n, i) } else this.$element.trigger(t, i) }, c.ignore = function(t) { var e = this.getItem(t); e && (e.isIgnored = !0) }, c.unignore = function(t) { var e = this.getItem(t); e && delete e.isIgnored }, c.stamp = function(t) { t = this._find(t), t && (this.stamps = this.stamps.concat(t), t.forEach(this.ignore, this)) }, c.unstamp = function(t) { t = this._find(t), t && t.forEach(function(t) { o.removeFrom(this.stamps, t), this.unignore(t) }, this) }, c._find = function(t) { if (t) return "string" == typeof t && (t = this.element.querySelectorAll(t)), t = o.makeArray(t) }, c._manageStamps = function() { this.stamps && this.stamps.length && (this._getBoundingRect(), this.stamps.forEach(this._manageStamp, this)) }, c._getBoundingRect = function() { var t = this.element.getBoundingClientRect(), e = this.size; this._boundingRect = { left: t.left + e.paddingLeft + e.borderLeftWidth, top: t.top + e.paddingTop + e.borderTopWidth, right: t.right - (e.paddingRight + e.borderRightWidth), bottom: t.bottom - (e.paddingBottom + e.borderBottomWidth) } }, c._manageStamp = d, c._getElementOffset = function(t) { var e = t.getBoundingClientRect(), o = this._boundingRect, n = i(t), s = { left: e.left - o.left - n.marginLeft, top: e.top - o.top - n.marginTop, right: o.right - e.right - n.marginRight, bottom: o.bottom - e.bottom - n.marginBottom }; return s }, c.handleEvent = o.handleEvent, c.bindResize = function() { t.addEventListener("resize", this), this.isResizeBound = !0 }, c.unbindResize = function() { t.removeEventListener("resize", this), this.isResizeBound = !1 }, c.onresize = function() { this.resize() }, o.debounceMethod(s, "onresize", 100), c.resize = function() { this.isResizeBound && this.needsResizeLayout() && this.layout() }, c.needsResizeLayout = function() { var t = i(this.element), e = this.size && t; return e && t.innerWidth !== this.size.innerWidth }, c.addItems = function(t) { var e = this._itemize(t); return e.length && (this.items = this.items.concat(e)), e }, c.appended = function(t) { var e = this.addItems(t); e.length && (this.layoutItems(e, !0), this.reveal(e)) }, c.prepended = function(t) { var e = this._itemize(t); if (e.length) { var i = this.items.slice(0); this.items = e.concat(i), this._resetLayout(), this._manageStamps(), this.layoutItems(e, !0), this.reveal(e), this.layoutItems(i) } }, c.reveal = function(t) { if (this._emitCompleteOnItems("reveal", t), t && t.length) { var e = this.updateStagger(); t.forEach(function(t, i) { t.stagger(i * e), t.reveal() }) } }, c.hide = function(t) { if (this._emitCompleteOnItems("hide", t), t && t.length) { var e = this.updateStagger(); t.forEach(function(t, i) { t.stagger(i * e), t.hide() }) } }, c.revealItemElements = function(t) { var e = this.getItems(t); this.reveal(e) }, c.hideItemElements = function(t) { var e = this.getItems(t); this.hide(e) }, c.getItem = function(t) { for (var e = 0; e < this.items.length; e++) { var i = this.items[e]; if (i.element == t) return i } }, c.getItems = function(t) { t = o.makeArray(t); var e = []; return t.forEach(function(t) { var i = this.getItem(t); i && e.push(i) }, this), e }, c.remove = function(t) { var e = this.getItems(t); this._emitCompleteOnItems("remove", e), e && e.length && e.forEach(function(t) { t.remove(), o.removeFrom(this.items, t) }, this) }, c.destroy = function() { var t = this.element.style; t.height = "", t.position = "", t.width = "", this.items.forEach(function(t) { t.destroy() }), this.unbindResize(); var e = this.element.outlayerGUID; delete f[e], delete this.element.outlayerGUID, h && h.removeData(this.element, this.constructor.namespace) }, s.data = function(t) { t = o.getQueryElement(t); var e = t && t.outlayerGUID; return e && f[e] }, s.create = function(t, e) { var i = r(s); return i.defaults = o.extend({}, s.defaults), o.extend(i.defaults, e), i.compatOptions = o.extend({}, s.compatOptions), i.namespace = t, i.data = s.data, i.Item = r(n), o.htmlInit(i, t), h && h.bridget && h.bridget(t, i), i }; var m = { ms: 1, s: 1e3 }; return s.Item = n, s }), function(t, e) { "function" == typeof define && define.amd ? define("isotope-layout/js/item", ["outlayer/outlayer"], e) : "object" == typeof module && module.exports ? module.exports = e(require("outlayer")) : (t.Isotope = t.Isotope || {}, t.Isotope.Item = e(t.Outlayer)) }(window, function(t) { "use strict"; function e() { t.Item.apply(this, arguments) } var i = e.prototype = Object.create(t.Item.prototype), o = i._create; i._create = function() { this.id = this.layout.itemGUID++, o.call(this), this.sortData = {} }, i.updateSortData = function() { if (!this.isIgnored) { this.sortData.id = this.id, this.sortData["original-order"] = this.id, this.sortData.random = Math.random(); var t = this.layout.options.getSortData, e = this.layout._sorters; for (var i in t) { var o = e[i]; this.sortData[i] = o(this.element, this) } } }; var n = i.destroy; return i.destroy = function() { n.apply(this, arguments), this.css({ display: "" }) }, e }), function(t, e) { "function" == typeof define && define.amd ? define("isotope-layout/js/layout-mode", ["get-size/get-size", "outlayer/outlayer"], e) : "object" == typeof module && module.exports ? module.exports = e(require("get-size"), require("outlayer")) : (t.Isotope = t.Isotope || {}, t.Isotope.LayoutMode = e(t.getSize, t.Outlayer)) }(window, function(t, e) { "use strict"; function i(t) { this.isotope = t, t && (this.options = t.options[this.namespace], this.element = t.element, this.items = t.filteredItems, this.size = t.size) } var o = i.prototype, n = ["_resetLayout", "_getItemLayoutPosition", "_manageStamp", "_getContainerSize", "_getElementOffset", "needsResizeLayout", "_getOption"]; return n.forEach(function(t) { o[t] = function() { return e.prototype[t].apply(this.isotope, arguments) } }), o.needsVerticalResizeLayout = function() { var e = t(this.isotope.element), i = this.isotope.size && e; return i && e.innerHeight != this.isotope.size.innerHeight }, o._getMeasurement = function() { this.isotope._getMeasurement.apply(this, arguments) }, o.getColumnWidth = function() { this.getSegmentSize("column", "Width") }, o.getRowHeight = function() { this.getSegmentSize("row", "Height") }, o.getSegmentSize = function(t, e) { var i = t + e, o = "outer" + e; if (this._getMeasurement(i, o), !this[i]) { var n = this.getFirstItemSize(); this[i] = n && n[o] || this.isotope.size["inner" + e] } }, o.getFirstItemSize = function() { var e = this.isotope.filteredItems[0]; return e && e.element && t(e.element) }, o.layout = function() { this.isotope.layout.apply(this.isotope, arguments) }, o.getSize = function() { this.isotope.getSize(), this.size = this.isotope.size }, i.modes = {}, i.create = function(t, e) { function n() { i.apply(this, arguments) } return n.prototype = Object.create(o), n.prototype.constructor = n, e && (n.options = e), n.prototype.namespace = t, i.modes[t] = n, n }, i }), function(t, e) { "function" == typeof define && define.amd ? define("masonry-layout/masonry", ["outlayer/outlayer", "get-size/get-size"], e) : "object" == typeof module && module.exports ? module.exports = e(require("outlayer"), require("get-size")) : t.Masonry = e(t.Outlayer, t.getSize) }(window, function(t, e) { var i = t.create("masonry"); i.compatOptions.fitWidth = "isFitWidth"; var o = i.prototype; return o._resetLayout = function() { this.getSize(), this._getMeasurement("columnWidth", "outerWidth"), this._getMeasurement("gutter", "outerWidth"), this.measureColumns(), this.colYs = []; for (var t = 0; t < this.cols; t++) this.colYs.push(0); this.maxY = 0, this.horizontalColIndex = 0 }, o.measureColumns = function() { if (this.getContainerWidth(), !this.columnWidth) { var t = this.items[0], i = t && t.element; this.columnWidth = i && e(i).outerWidth || this.containerWidth } var o = this.columnWidth += this.gutter, n = this.containerWidth + this.gutter, s = n / o, r = o - n % o, a = r && r < 1 ? "round" : "floor"; s = Math[a](s), this.cols = Math.max(s, 1) }, o.getContainerWidth = function() { var t = this._getOption("fitWidth"), i = t ? this.element.parentNode : this.element, o = e(i); this.containerWidth = o && o.innerWidth }, o._getItemLayoutPosition = function(t) { t.getSize(); var e = t.size.outerWidth % this.columnWidth, i = e && e < 1 ? "round" : "ceil", o = Math[i](t.size.outerWidth / this.columnWidth); o = Math.min(o, this.cols); for (var n = this.options.horizontalOrder ? "_getHorizontalColPosition" : "_getTopColPosition", s = this[n](o, t), r = { x: this.columnWidth * s.col, y: s.y }, a = s.y + t.size.outerHeight, u = o + s.col, h = s.col; h < u; h++) this.colYs[h] = a; return r }, o._getTopColPosition = function(t) { var e = this._getTopColGroup(t), i = Math.min.apply(Math, e); return { col: e.indexOf(i), y: i } }, o._getTopColGroup = function(t) { if (t < 2) return this.colYs; for (var e = [], i = this.cols + 1 - t, o = 0; o < i; o++) e[o] = this._getColGroupY(o, t); return e }, o._getColGroupY = function(t, e) { if (e < 2) return this.colYs[t]; var i = this.colYs.slice(t, t + e); return Math.max.apply(Math, i) }, o._getHorizontalColPosition = function(t, e) { var i = this.horizontalColIndex % this.cols, o = t > 1 && i + t > this.cols; i = o ? 0 : i; var n = e.size.outerWidth && e.size.outerHeight; return this.horizontalColIndex = n ? i + t : this.horizontalColIndex, { col: i, y: this._getColGroupY(i, t) } }, o._manageStamp = function(t) { var i = e(t), o = this._getElementOffset(t), n = this._getOption("originLeft"), s = n ? o.left : o.right, r = s + i.outerWidth, a = Math.floor(s / this.columnWidth); a = Math.max(0, a); var u = Math.floor(r / this.columnWidth); u -= r % this.columnWidth ? 0 : 1, u = Math.min(this.cols - 1, u); for (var h = this._getOption("originTop"), d = (h ? o.top : o.bottom) + i.outerHeight, l = a; l <= u; l++) this.colYs[l] = Math.max(d, this.colYs[l]) }, o._getContainerSize = function() { this.maxY = Math.max.apply(Math, this.colYs); var t = { height: this.maxY }; return this._getOption("fitWidth") && (t.width = this._getContainerFitWidth()), t }, o._getContainerFitWidth = function() { for (var t = 0, e = this.cols; --e && 0 === this.colYs[e];) t++; return (this.cols - t) * this.columnWidth - this.gutter }, o.needsResizeLayout = function() { var t = this.containerWidth; return this.getContainerWidth(), t != this.containerWidth }, i }), function(t, e) { "function" == typeof define && define.amd ? define("isotope-layout/js/layout-modes/masonry", ["../layout-mode", "masonry-layout/masonry"], e) : "object" == typeof module && module.exports ? module.exports = e(require("../layout-mode"), require("masonry-layout")) : e(t.Isotope.LayoutMode, t.Masonry) }(window, function(t, e) { "use strict"; var i = t.create("masonry"), o = i.prototype, n = { _getElementOffset: !0, layout: !0, _getMeasurement: !0 }; for (var s in e.prototype) n[s] || (o[s] = e.prototype[s]); var r = o.measureColumns; o.measureColumns = function() { this.items = this.isotope.filteredItems, r.call(this) }; var a = o._getOption; return o._getOption = function(t) { return "fitWidth" == t ? void 0 !== this.options.isFitWidth ? this.options.isFitWidth : this.options.fitWidth : a.apply(this.isotope, arguments) }, i }), function(t, e) { "function" == typeof define && define.amd ? define("isotope-layout/js/layout-modes/fit-rows", ["../layout-mode"], e) : "object" == typeof exports ? module.exports = e(require("../layout-mode")) : e(t.Isotope.LayoutMode) }(window, function(t) { "use strict"; var e = t.create("fitRows"), i = e.prototype; return i._resetLayout = function() { this.x = 0, this.y = 0, this.maxY = 0, this._getMeasurement("gutter", "outerWidth") }, i._getItemLayoutPosition = function(t) { t.getSize(); var e = t.size.outerWidth + this.gutter, i = this.isotope.size.innerWidth + this.gutter; 0 !== this.x && e + this.x > i && (this.x = 0, this.y = this.maxY); var o = { x: this.x, y: this.y }; return this.maxY = Math.max(this.maxY, this.y + t.size.outerHeight), this.x += e, o }, i._getContainerSize = function() { return { height: this.maxY } }, e }), function(t, e) { "function" == typeof define && define.amd ? define("isotope-layout/js/layout-modes/vertical", ["../layout-mode"], e) : "object" == typeof module && module.exports ? module.exports = e(require("../layout-mode")) : e(t.Isotope.LayoutMode) }(window, function(t) { "use strict"; var e = t.create("vertical", { horizontalAlignment: 0 }), i = e.prototype; return i._resetLayout = function() { this.y = 0 }, i._getItemLayoutPosition = function(t) { t.getSize(); var e = (this.isotope.size.innerWidth - t.size.outerWidth) * this.options.horizontalAlignment, i = this.y; return this.y += t.size.outerHeight, { x: e, y: i } }, i._getContainerSize = function() { return { height: this.y } }, e }), function(t, e) { "function" == typeof define && define.amd ? define(["outlayer/outlayer", "get-size/get-size", "desandro-matches-selector/matches-selector", "fizzy-ui-utils/utils", "isotope-layout/js/item", "isotope-layout/js/layout-mode", "isotope-layout/js/layout-modes/masonry", "isotope-layout/js/layout-modes/fit-rows", "isotope-layout/js/layout-modes/vertical"], function(i, o, n, s, r, a) { return e(t, i, o, n, s, r, a) }) : "object" == typeof module && module.exports ? module.exports = e(t, require("outlayer"), require("get-size"), require("desandro-matches-selector"), require("fizzy-ui-utils"), require("isotope-layout/js/item"), require("isotope-layout/js/layout-mode"), require("isotope-layout/js/layout-modes/masonry"), require("isotope-layout/js/layout-modes/fit-rows"), require("isotope-layout/js/layout-modes/vertical")) : t.Isotope = e(t, t.Outlayer, t.getSize, t.matchesSelector, t.fizzyUIUtils, t.Isotope.Item, t.Isotope.LayoutMode) }(window, function(t, e, i, o, n, s, r) { function a(t, e) { return function(i, o) { for (var n = 0; n < t.length; n++) { var s = t[n], r = i.sortData[s], a = o.sortData[s]; if (r > a || r < a) { var u = void 0 !== e[s] ? e[s] : e, h = u ? 1 : -1; return (r > a ? 1 : -1) * h } } return 0 } } var u = t.jQuery, h = String.prototype.trim ? function(t) { return t.trim() } : function(t) { return t.replace(/^\s+|\s+$/g, "") }, d = e.create("isotope", { layoutMode: "masonry", isJQueryFiltering: !0, sortAscending: !0 }); d.Item = s, d.LayoutMode = r; var l = d.prototype; l._create = function() { this.itemGUID = 0, this._sorters = {}, this._getSorters(), e.prototype._create.call(this), this.modes = {}, this.filteredItems = this.items, this.sortHistory = ["original-order"]; for (var t in r.modes) this._initLayoutMode(t) }, l.reloadItems = function() { this.itemGUID = 0, e.prototype.reloadItems.call(this) }, l._itemize = function() { for (var t = e.prototype._itemize.apply(this, arguments), i = 0; i < t.length; i++) { var o = t[i]; o.id = this.itemGUID++ } return this._updateItemsSortData(t), t }, l._initLayoutMode = function(t) { var e = r.modes[t], i = this.options[t] || {}; this.options[t] = e.options ? n.extend(e.options, i) : i, this.modes[t] = new e(this) }, l.layout = function() { return !this._isLayoutInited && this._getOption("initLayout") ? void this.arrange() : void this._layout() }, l._layout = function() { var t = this._getIsInstant(); this._resetLayout(), this._manageStamps(), this.layoutItems(this.filteredItems, t), this._isLayoutInited = !0 }, l.arrange = function(t) { this.option(t), this._getIsInstant(); var e = this._filter(this.items); this.filteredItems = e.matches, this._bindArrangeComplete(), this._isInstant ? this._noTransition(this._hideReveal, [e]) : this._hideReveal(e), this._sort(), this._layout() }, l._init = l.arrange, l._hideReveal = function(t) { this.reveal(t.needReveal), this.hide(t.needHide) }, l._getIsInstant = function() { var t = this._getOption("layoutInstant"), e = void 0 !== t ? t : !this._isLayoutInited; return this._isInstant = e, e }, l._bindArrangeComplete = function() { function t() { e && i && o && n.dispatchEvent("arrangeComplete", null, [n.filteredItems]) } var e, i, o, n = this; this.once("layoutComplete", function() { e = !0, t() }), this.once("hideComplete", function() { i = !0, t() }), this.once("revealComplete", function() { o = !0, t() }) }, l._filter = function(t) { var e = this.options.filter; e = e || "*"; for (var i = [], o = [], n = [], s = this._getFilterTest(e), r = 0; r < t.length; r++) { var a = t[r]; if (!a.isIgnored) { var u = s(a); u && i.push(a), u && a.isHidden ? o.push(a) : u || a.isHidden || n.push(a) } } return { matches: i, needReveal: o, needHide: n } }, l._getFilterTest = function(t) { return u && this.options.isJQueryFiltering ? function(e) { return u(e.element).is(t) } : "function" == typeof t ? function(e) { return t(e.element) } : function(e) { return o(e.element, t) } }, l.updateSortData = function(t) { var e; t ? (t = n.makeArray(t), e = this.getItems(t)) : e = this.items, this._getSorters(), this._updateItemsSortData(e) }, l._getSorters = function() { var t = this.options.getSortData; for (var e in t) { var i = t[e]; this._sorters[e] = f(i) } }, l._updateItemsSortData = function(t) { for (var e = t && t.length, i = 0; e && i < e; i++) { var o = t[i]; o.updateSortData() } }; var f = function() { function t(t) { if ("string" != typeof t) return t; var i = h(t).split(" "), o = i[0], n = o.match(/^\[(.+)\]$/), s = n && n[1], r = e(s, o), a = d.sortDataParsers[i[1]]; return t = a ? function(t) { return t && a(r(t)) } : function(t) { return t && r(t) } } function e(t, e) { return t ? function(e) { return e.getAttribute(t) } : function(t) { var i = t.querySelector(e); return i && i.textContent } } return t }(); d.sortDataParsers = { parseInt: function(t) { return parseInt(t, 10) }, parseFloat: function(t) { return parseFloat(t) } }, l._sort = function() { if (this.options.sortBy) { var t = n.makeArray(this.options.sortBy); this._getIsSameSortBy(t) || (this.sortHistory = t.concat(this.sortHistory)); var e = a(this.sortHistory, this.options.sortAscending); this.filteredItems.sort(e) } }, l._getIsSameSortBy = function(t) { for (var e = 0; e < t.length; e++) if (t[e] != this.sortHistory[e]) return !1; return !0 }, l._mode = function() { var t = this.options.layoutMode, e = this.modes[t]; if (!e) throw new Error("No layout mode: " + t); return e.options = this.options[t], e }, l._resetLayout = function() { e.prototype._resetLayout.call(this), this._mode()._resetLayout() }, l._getItemLayoutPosition = function(t) { return this._mode()._getItemLayoutPosition(t) }, l._manageStamp = function(t) { this._mode()._manageStamp(t) }, l._getContainerSize = function() { return this._mode()._getContainerSize() }, l.needsResizeLayout = function() { return this._mode().needsResizeLayout() }, l.appended = function(t) { var e = this.addItems(t); if (e.length) { var i = this._filterRevealAdded(e); this.filteredItems = this.filteredItems.concat(i) } }, l.prepended = function(t) { var e = this._itemize(t); if (e.length) { this._resetLayout(), this._manageStamps(); var i = this._filterRevealAdded(e); this.layoutItems(this.filteredItems), this.filteredItems = i.concat(this.filteredItems), this.items = e.concat(this.items) } }, l._filterRevealAdded = function(t) { var e = this._filter(t); return this.hide(e.needHide), this.reveal(e.matches), this.layoutItems(e.matches, !0), e.matches }, l.insert = function(t) { var e = this.addItems(t); if (e.length) { var i, o, n = e.length; for (i = 0; i < n; i++) o = e[i], this.element.appendChild(o.element); var s = this._filter(e).matches; for (i = 0; i < n; i++) e[i].isLayoutInstant = !0; for (this.arrange(), i = 0; i < n; i++) delete e[i].isLayoutInstant; this.reveal(s) } }; var c = l.remove; return l.remove = function(t) { t = n.makeArray(t); var e = this.getItems(t); c.call(this, t); for (var i = e && e.length, o = 0; i && o < i; o++) { var s = e[o]; n.removeFrom(this.filteredItems, s) } }, l.shuffle = function() { for (var t = 0; t < this.items.length; t++) { var e = this.items[t]; e.sortData.random = Math.random() } this.options.sortBy = "random", this._sort(), this._layout() }, l._noTransition = function(t, e) { var i = this.options.transitionDuration; this.options.transitionDuration = 0; var o = t.apply(this, e); return this.options.transitionDuration = i, o }, l.getFilteredItemElements = function() { return this.filteredItems.map(function(t) { return t.element }) }, d }); /*! * MDB5 * Version: FREE 3.3.0 * * * Copyright: Material Design for Bootstrap * https://mdbootstrap.com/ * * Read the license: https://mdbootstrap.com/general/license/ * * * Documentation: https://mdbootstrap.com/docs/standard/ * * Support: https://mdbootstrap.com/support/ * * Contact: office@mdbootstrap.com * */ ! function(t, e) { "object" == typeof exports && "object" == typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define("mdb", [], e) : "object" == typeof exports ? exports.mdb = e() : t.mdb = e() }(this, function() { return r = {}, o.m = n = [function(t, e, n) { var r, o = n(7), i = n(93), c = n(122), a = n(18); for (r in i) { var u = o[r], s = u && u.prototype; if (s && s.forEach !== c) try { a(s, "forEach", c) } catch (t) { s.forEach = c } } }, function(t, e) { t.exports = function(t) { try { return !!t() } catch (t) { return !0 } } }, function(t, e, n) { var s = n(7), l = n(36).f, f = n(18), p = n(19), d = n(55), h = n(115), y = n(44); t.exports = function(t, e) { var n, r, o, i = t.target, c = t.global, a = t.stat, u = c ? s : a ? s[i] || d(i, {}) : (s[i] || {}).prototype; if (u) for (n in e) { if (r = e[n], o = t.noTargetGet ? (o = l(u, n)) && o.value : u[n], !y(c ? n : i + (a ? "." : "#") + n, t.forced) && void 0 !== o) { if (typeof r == typeof o) continue; h(r, o) }(t.sham || o && o.sham) && f(r, "sham", !0), p(u, n, r, t) } } }, function(t, e, n) { var r = n(7), o = n(84), i = n(14), c = n(58), a = n(91), n = n(118), u = o("wks"), s = r.Symbol, l = n ? s : s && s.withoutSetter || c; t.exports = function(t) { return i(u, t) || (a && i(s, t) ? u[t] = s[t] : u[t] = l("Symbol." + t)), u[t] } }, function(t, e, n) { var r = n(2), o = n(1), i = n(23), c = n(64), n = n(92); r({ target: "Object", stat: !0, forced: o(function() { c(1) }), sham: !n }, { getPrototypeOf: function(t) { return c(i(t)) } }) }, function(t, e, n) { n(2)({ target: "Object", stat: !0 }, { setPrototypeOf: n(65) }) }, function(t, e, n) { "use strict"; var r = n(2), o = n(45).find, i = n(62), n = "find", c = !0; n in [] && Array(1)[n](function() { c = !1 }), r({ target: "Array", proto: !0, forced: c }, { find: function(t) { return o(this, t, 1 < arguments.length ? arguments[1] : void 0) } }), i(n) }, function(n, t, e) { ! function(t) { function e(t) { return t && t.Math == Math && t } n.exports = e("object" == typeof globalThis && globalThis) || e("object" == typeof window && window) || e("object" == typeof self && self) || e("object" == typeof t && t) || function() { return this }() || Function("return this")() }.call(this, e(113)) }, function(t, e, n) { "use strict"; var r = n(2), n = n(51); r({ target: "RegExp", proto: !0, forced: /./.exec !== n }, { exec: n }) }, function(t, e, n) { var r = n(11); t.exports = function(t) { if (!r(t)) throw TypeError(String(t) + " is not an object"); return t } }, function(t, e, n) { "use strict"; var r = n(2), o = n(1), s = n(61), l = n(11), f = n(23), p = n(16), d = n(66), h = n(90), i = n(48), c = n(3), n = n(95), y = c("isConcatSpreadable"), g = 9007199254740991, v = "Maximum allowed index exceeded", o = 51 <= n || !o(function() { var t = []; return t[y] = !1, t.concat()[0] !== t }), i = i("concat"); r({ target: "Array", proto: !0, forced: !o || !i }, { concat: function(t) { for (var e, n, r, o = f(this), i = h(o, 0), c = 0, a = -1, u = arguments.length; a < u; a++) if (function(t) { if (!l(t)) return !1; var e = t[y]; return void 0 !== e ? !!e : s(t) }(r = -1 === a ? o : arguments[a])) { if (n = p(r.length), g < c + n) throw TypeError(v); for (e = 0; e < n; e++, c++) e in r && d(i, c, r[e]) } else { if (g <= c) throw TypeError(v); d(i, c++, r) } return i.length = c, i } }) }, function(t, e) { t.exports = function(t) { return "object" == typeof t ? null !== t : "function" == typeof t } }, function(t, e, n) { var r = n(13), o = n(81), i = n(9), c = n(39), a = Object.defineProperty; e.f = r ? a : function(t, e, n) { if (i(t), e = c(e, !0), i(n), o) try { return a(t, e, n) } catch (t) {} if ("get" in n || "set" in n) throw TypeError("Accessors not supported"); return "value" in n && (t[e] = n.value), t } }, function(t, e, n) { n = n(1); t.exports = !n(function() { return 7 != Object.defineProperty({}, 1, { get: function() { return 7 } })[1] }) }, function(t, e) { var n = {}.hasOwnProperty; t.exports = function(t, e) { return n.call(t, e) } }, function(t, e, n) { "use strict"; function r(t) { var e, n, r, o, i, c, a, u = f(t, !1); if ("string" == typeof u && 2 < u.length) if (43 === (e = (u = v(u)).charCodeAt(0)) || 45 === e) { if (88 === (t = u.charCodeAt(2)) || 120 === t) return NaN } else if (48 === e) { switch (u.charCodeAt(1)) { case 66: case 98: n = 2, r = 49; break; case 79: case 111: n = 8, r = 55; break; default: return +u } for (i = (o = u.slice(2)).length, c = 0; c < i; c++) if ((a = o.charCodeAt(c)) < 48 || r < a) return NaN; return parseInt(o, n) } return +u } var o = n(13), i = n(7), c = n(44), a = n(19), u = n(14), s = n(29), l = n(68), f = n(39), p = n(1), d = n(47), h = n(59).f, y = n(36).f, g = n(12).f, v = n(49).trim, m = "Number", b = i[m], _ = b.prototype, w = s(d(_)) == m; if (c(m, !b(" 0o1") || !b("0b1") || b("+0x1"))) { for (var O, E = function(t) { var t = arguments.length < 1 ? 0 : t, e = this; return e instanceof E && (w ? p(function() { _.valueOf.call(e) }) : s(e) != m) ? l(new b(r(t)), e, E) : r(t) }, j = o ? h(b) : "MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger,fromString,range".split(","), k = 0; j.length > k; k++) u(b, O = j[k]) && !u(E, O) && g(E, O, y(b, O)); (E.prototype = _).constructor = E, a(i, m, E) } }, function(t, e, n) { var r = n(43), o = Math.min; t.exports = function(t) { return 0 < t ? o(r(t), 9007199254740991) : 0 } }, function(t, e) { t.exports = function(t) { if (null == t) throw TypeError("Can't call method on " + t); return t } }, function(t, e, n) { var r = n(13), o = n(12), i = n(37); t.exports = r ? function(t, e, n) { return o.f(t, e, i(1, n)) } : function(t, e, n) { return t[e] = n, t } }, function(t, e, n) { var a = n(7), u = n(18), s = n(14), l = n(55), r = n(83), n = n(31), o = n.get, f = n.enforce, p = String(String).split("String"); (t.exports = function(t, e, n, r) { var o = !!r && !!r.unsafe, i = !!r && !!r.enumerable, c = !!r && !!r.noTargetGet; "function" == typeof n && ("string" != typeof e || s(n, "name") || u(n, "name", e), (r = f(n)).source || (r.source = p.join("string" == typeof e ? e : ""))), t !== a ? (o ? !c && t[e] && (i = !0) : delete t[e], i ? t[e] = n : u(t, e, n)) : i ? t[e] = n : l(e, n) })(Function.prototype, "toString", function() { return "function" == typeof this && o(this).source || r(this) }) }, function(t, e, n) { var r = n(2), o = n(23), i = n(63); r({ target: "Object", stat: !0, forced: n(1)(function() { i(1) }) }, { keys: function(t) { return i(o(t)) } }) }, function(t, e, n) { "use strict"; var r = n(19), o = n(9), i = n(1), c = n(71), a = "toString", u = RegExp.prototype, s = u[a], n = i(function() { return "/a/b" != s.call({ source: "a", flags: "b" }) }), i = s.name != a; (n || i) && r(RegExp.prototype, a, function() { var t = o(this), e = String(t.source), n = t.flags; return "/" + e + "/" + String(void 0 === n && t instanceof RegExp && !("flags" in u) ? c.call(t) : n) }, { unsafe: !0 }) }, function(t, e, n) { "use strict"; var r = n(74), l = n(70), v = n(9), f = n(17), m = n(130), b = n(75), _ = n(16), w = n(76), p = n(51), n = n(1), d = [].push, O = Math.min, E = 4294967295, j = !n(function() { return !RegExp(E, "y") }); r("split", 2, function(o, h, y) { var g = "c" == "abbc".split(/(b)*/)[1] || 4 != "test".split(/(?:)/, -1).length || 2 != "ab".split(/(?:ab)*/).length || 4 != ".".split(/(.?)(.?)/).length || 1 < ".".split(/()()/).length || "".split(/.?/).length ? function(t, e) { var n = String(f(this)), r = void 0 === e ? E : e >>> 0; if (0 == r) return []; if (void 0 === t) return [n]; if (!l(t)) return h.call(n, t, r); for (var o, i, c, a = [], e = (t.ignoreCase ? "i" : "") + (t.multiline ? "m" : "") + (t.unicode ? "u" : "") + (t.sticky ? "y" : ""), u = 0, s = new RegExp(t.source, e + "g"); (o = p.call(s, n)) && !(u < (i = s.lastIndex) && (a.push(n.slice(u, o.index)), 1 < o.length && o.index < n.length && d.apply(a, o.slice(1)), c = o[0].length, u = i, a.length >= r));) s.lastIndex === o.index && s.lastIndex++; return u === n.length ? !c && s.test("") || a.push("") : a.push(n.slice(u)), a.length > r ? a.slice(0, r) : a } : "0".split(void 0, 0).length ? function(t, e) { return void 0 === t && 0 === e ? [] : h.call(this, t, e) } : h; return [function(t, e) { var n = f(this), r = null == t ? void 0 : t[o]; return void 0 !== r ? r.call(t, n, e) : g.call(String(n), t, e) }, function(t, e) { var n = y(g, t, this, e, g !== h); if (n.done) return n.value; var r = v(t), o = String(this), n = m(r, RegExp), i = r.unicode, t = (r.ignoreCase ? "i" : "") + (r.multiline ? "m" : "") + (r.unicode ? "u" : "") + (j ? "y" : "g"), c = new n(j ? r : "^(?:" + r.source + ")", t), a = void 0 === e ? E : e >>> 0; if (0 == a) return []; if (0 === o.length) return null === w(c, o) ? [o] : []; for (var u = 0, s = 0, l = []; s < o.length;) { c.lastIndex = j ? s : 0; var f, p = w(c, j ? o : o.slice(s)); if (null === p || (f = O(_(c.lastIndex + (j ? 0 : s)), o.length)) === u) s = b(o, s, i); else { if (l.push(o.slice(u, s)), l.length === a) return l; for (var d = 1; d <= p.length - 1; d++) if (l.push(p[d]), l.length === a) return l; s = u = f } } return l.push(o.slice(u)), l }] }, !j) }, function(t, e, n) { var r = n(17); t.exports = function(t) { return Object(r(t)) } }, function(t, e, n) { "use strict"; var r = n(2), o = n(45).filter; r({ target: "Array", proto: !0, forced: !n(48)("filter") }, { filter: function(t) { return o(this, t, 1 < arguments.length ? arguments[1] : void 0) } }) }, function(t, e, n) { "use strict"; var r = n(2), o = n(45).map; r({ target: "Array", proto: !0, forced: !n(48)("map") }, { map: function(t) { return o(this, t, 1 < arguments.length ? arguments[1] : void 0) } }) }, function(t, e, n) { var r = n(67), o = n(19), n = n(128); r || o(Object.prototype, "toString", n, { unsafe: !0 }) }, function(t, e, n) { var r = n(13), o = n(7), i = n(44), c = n(68), a = n(12).f, u = n(59).f, s = n(70), l = n(71), f = n(101), p = n(19), d = n(1), h = n(31).set, y = n(102), g = n(3)("match"), v = o.RegExp, m = v.prototype, b = /a/g, _ = /a/g, w = new v(b) !== b, O = f.UNSUPPORTED_Y; if (r && i("RegExp", !w || O || d(function() { return _[g] = !1, v(b) != b || v(_) == _ || "/a/i" != v(b, "i") }))) { for (var E = function(t, e) { var n, r = this instanceof E, o = s(t), i = void 0 === e; if (!r && o && t.constructor === E && i) return t; w ? o && !i && (t = t.source) : t instanceof E && (i && (e = l.call(t)), t = t.source), O && (n = !!e && -1 < e.indexOf("y")) && (e = e.replace(/y/g, "")); r = c(w ? new v(t, e) : v(t, e), r ? this : m, E); return O && n && h(r, { sticky: n }), r }, j = u(v), k = 0; j.length > k;) ! function(e) { e in E || a(E, e, { configurable: !0, get: function() { return v[e] }, set: function(t) { v[e] = t } }) }(j[k++]); (m.constructor = E).prototype = m, p(o, "RegExp", E) } y("RegExp") }, function(t, e, n) { var r = n(38), o = n(17); t.exports = function(t) { return r(o(t)) } }, function(t, e) { var n = {}.toString; t.exports = function(t) { return n.call(t).slice(8, -1) } }, function(t, e, n) { "use strict"; var r = n(74), l = n(9), f = n(16), o = n(17), p = n(75), d = n(76); r("match", 1, function(r, u, s) { return [function(t) { var e = o(this), n = null == t ? void 0 : t[r]; return void 0 !== n ? n.call(t, e) : new RegExp(t)[r](String(e)) }, function(t) { var e = s(u, t, this); if (e.done) return e.value; var n = l(t), r = String(this); if (!n.global) return d(n, r); for (var o = n.unicode, i = [], c = n.lastIndex = 0; null !== (a = d(n, r));) { var a = String(a[0]); "" === (i[c] = a) && (n.lastIndex = p(r, f(n.lastIndex), o)), c++ } return 0 === c ? null : i }] }) }, function(t, e, n) { var r, o, i, c, a, u, s, l, f = n(114), p = n(7), d = n(11), h = n(18), y = n(14), g = n(56), v = n(57), n = n(41), p = p.WeakMap; s = f ? (r = g.state || (g.state = new p), o = r.get, i = r.has, c = r.set, a = function(t, e) { return e.facade = t, c.call(r, t, e), e }, u = function(t) { return o.call(r, t) || {} }, function(t) { return i.call(r, t) }) : (n[l = v("state")] = !0, a = function(t, e) { return e.facade = t, h(t, l, e), e }, u = function(t) { return y(t, l) ? t[l] : {} }, function(t) { return y(t, l) }), t.exports = { set: a, get: u, has: s, enforce: function(t) { return s(t) ? u(t) : a(t, {}) }, getterFor: function(n) { return function(t) { var e; if (!d(t) || (e = u(t)).type !== n) throw TypeError("Incompatible receiver, " + n + " required"); return e } } } }, function(t, e) { t.exports = {} }, function(t, e, n) { "use strict"; var r = n(2), o = n(49).trim; r({ target: "String", proto: !0, forced: n(131)("trim") }, { trim: function() { return o(this) } }) }, function(t, e, n) { "use strict"; var r = n(2), s = n(11), l = n(61), f = n(87), p = n(16), d = n(28), h = n(66), o = n(3), n = n(48)("slice"), y = o("species"), g = [].slice, v = Math.max; r({ target: "Array", proto: !0, forced: !n }, { slice: function(t, e) { var n, r, o, i = d(this), c = p(i.length), a = f(t, c), u = f(void 0 === e ? c : e, c); if (l(i) && ((n = "function" == typeof(n = i.constructor) && (n === Array || l(n.prototype)) || s(n) && null === (n = n[y]) ? void 0 : n) === Array || void 0 === n)) return g.call(i, a, u); for (r = new(void 0 === n ? Array : n)(v(u - a, 0)), o = 0; a < u; a++, o++) a in i && h(r, o, i[a]); return r.length = o, r } }) }, function(t, e, n) { "use strict"; var r = n(74), k = n(9), S = n(16), x = n(43), i = n(17), P = n(75), T = n(132), D = n(76), A = Math.max, C = Math.min; r("replace", 2, function(o, _, w, t) { var O = t.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE, E = t.REPLACE_KEEPS_$0, j = O ? "$" : "$0"; return [function(t, e) { var n = i(this), r = null == t ? void 0 : t[o]; return void 0 !== r ? r.call(t, n, e) : _.call(String(n), t, e) }, function(t, e) { if (!O && E || "string" == typeof e && -1 === e.indexOf(j)) { var n = w(_, t, this, e); if (n.done) return n.value } var r = k(t), o = String(this), i = "function" == typeof e; i || (e = String(e)); var c, a = r.global; a && (c = r.unicode, r.lastIndex = 0); for (var u = [];;) { var s = D(r, o); if (null === s) break; if (u.push(s), !a) break; "" === String(s[0]) && (r.lastIndex = P(o, S(r.lastIndex), c)) } for (var l, f = "", p = 0, d = 0; d < u.length; d++) { for (var s = u[d], h = String(s[0]), y = A(C(x(s.index), o.length), 0), g = [], v = 1; v < s.length; v++) g.push(void 0 === (l = s[v]) ? l : String(l)); var m, b = s.groups, b = i ? (m = [h].concat(g, y, o), void 0 !== b && m.push(b), String(e.apply(void 0, m))) : T(h, o, y, g, b, e); p <= y && (f += o.slice(p, y) + b, p = y + h.length) } return f + o.slice(p) }] }) }, function(t, e, n) { var r = n(13), o = n(80), i = n(37), c = n(28), a = n(39), u = n(14), s = n(81), l = Object.getOwnPropertyDescriptor; e.f = r ? l : function(t, e) { if (t = c(t), e = a(e, !0), s) try { return l(t, e) } catch (t) {} if (u(t, e)) return i(!o.f.call(t, e), t[e]) } }, function(t, e) { t.exports = function(t, e) { return { enumerable: !(1 & t), configurable: !(2 & t), writable: !(4 & t), value: e } } }, function(t, e, n) { var r = n(1), o = n(29), i = "".split; t.exports = r(function() { return !Object("z").propertyIsEnumerable(0) }) ? function(t) { return "String" == o(t) ? i.call(t, "") : Object(t) } : Object }, function(t, e, n) { var o = n(11); t.exports = function(t, e) { if (!o(t)) return t; var n, r; if (e && "function" == typeof(n = t.toString) && !o(r = n.call(t))) return r; if ("function" == typeof(n = t.valueOf) && !o(r = n.call(t))) return r; if (!e && "function" == typeof(n = t.toString) && !o(r = n.call(t))) return r; throw TypeError("Can't convert object to primitive value") } }, function(t, e) { t.exports = !1 }, function(t, e) { t.exports = {} }, function(t, e, n) { function r(t) { return "function" == typeof t ? t : void 0 } var o = n(117), i = n(7); t.exports = function(t, e) { return arguments.length < 2 ? r(o[t]) || r(i[t]) : o[t] && o[t][e] || i[t] && i[t][e] } }, function(t, e) { var n = Math.ceil, r = Math.floor; t.exports = function(t) { return isNaN(t = +t) ? 0 : (0 < t ? r : n)(t) } }, function(t, e, n) { var r = n(1), o = /#|\.prototype\./, n = function(t, e) { t = c[i(t)]; return t == u || t != a && ("function" == typeof e ? r(e) : !!e) }, i = n.normalize = function(t) { return String(t).replace(o, ".").toLowerCase() }, c = n.data = {}, a = n.NATIVE = "N", u = n.POLYFILL = "P"; t.exports = n }, function(t, e, n) { var _ = n(46), w = n(38), O = n(23), E = n(16), j = n(90), k = [].push, n = function(p) { var d = 1 == p, h = 2 == p, y = 3 == p, g = 4 == p, v = 6 == p, m = 7 == p, b = 5 == p || v; return function(t, e, n, r) { for (var o, i, c = O(t), a = w(c), u = _(e, n, 3), s = E(a.length), l = 0, r = r || j, f = d ? r(t, s) : h || m ? r(t, 0) : void 0; l < s; l++) if ((b || l in a) && (i = u(o = a[l], l, c), p)) if (d) f[l] = i; else if (i) switch (p) { case 3: return !0; case 5: return o; case 6: return l; case 2: k.call(f, o) } else switch (p) { case 4: return !1; case 7: k.call(f, o) } return v ? -1 : y || g ? g : f } }; t.exports = { forEach: n(0), map: n(1), filter: n(2), some: n(3), every: n(4), find: n(5), findIndex: n(6), filterOut: n(7) } }, function(t, e, n) { var i = n(89); t.exports = function(r, o, t) { if (i(r), void 0 === o) return r; switch (t) { case 0: return function() { return r.call(o) }; case 1: return function(t) { return r.call(o, t) }; case 2: return function(t, e) { return r.call(o, t, e) }; case 3: return function(t, e, n) { return r.call(o, t, e, n) } } return function() { return r.apply(o, arguments) } } }, function(t, e, n) { function r() {} function o(t) { return "<script>" + t + "</" + d + ">" } var i, c = n(9), a = n(119), u = n(60), s = n(41), l = n(120), f = n(82), n = n(57), p = "prototype", d = "script", h = n("IE_PROTO"), y = function() { try { i = document.domain && new ActiveXObject("htmlfile") } catch (t) {} var t; y = i ? function(t) { t.write(o("")), t.close(); var e = t.parentWindow.Object; return t = null, e }(i) : ((t = f("iframe")).style.display = "none", l.appendChild(t), t.src = String("javascript:"), (t = t.contentWindow.document).open(), t.write(o("document.F=Object")), t.close(), t.F); for (var e = u.length; e--;) delete y[p][u[e]]; return y() }; s[h] = !0, t.exports = Object.create || function(t, e) { var n; return null !== t ? (r[p] = c(t), n = new r, r[p] = null, n[h] = t) : n = y(), void 0 === e ? n : a(n, e) } }, function(t, e, n) { var r = n(1), o = n(3), i = n(95), c = o("species"); t.exports = function(e) { return 51 <= i || !r(function() { var t = []; return (t.constructor = {})[c] = function() { return { foo: 1 } }, 1 !== t[e](Boolean).foo }) } }, function(t, e, n) { var r = n(17), n = "[" + n(50) + "]", o = RegExp("^" + n + n + "*"), i = RegExp(n + n + "*$"), n = function(e) { return function(t) { t = String(r(t)); return 1 & e && (t = t.replace(o, "")), t = 2 & e ? t.replace(i, "") : t } }; t.exports = { start: n(1), end: n(2), trim: n(3) } }, function(t, e) { t.exports = "\t\n\v\f\r \u2028\u2029\ufeff" }, function(t, e, n) { "use strict"; var r, f = n(71), o = n(101), p = RegExp.prototype.exec, d = String.prototype.replace, i = p, h = (r = /a/, n = /b*/g, p.call(r, "a"), p.call(n, "a"), 0 !== r.lastIndex || 0 !== n.lastIndex), y = o.UNSUPPORTED_Y || o.BROKEN_CARET, g = void 0 !== /()??/.exec("")[1]; (h || g || y) && (i = function(t) { var e, n, r, o, i = this, c = y && i.sticky, a = f.call(i), u = i.source, s = 0, l = t; return c && (-1 === (a = a.replace("y", "")).indexOf("g") && (a += "g"), l = String(t).slice(i.lastIndex), 0 < i.lastIndex && (!i.multiline || i.multiline && "\n" !== t[i.lastIndex - 1]) && (u = "(?: " + u + ")", l = " " + l, s++), n = new RegExp("^(?:" + u + ")", a)), g && (n = new RegExp("^" + u + "$(?!\\s)", a)), h && (e = i.lastIndex), r = p.call(c ? n : i, l), c ? r ? (r.input = r.input.slice(s), r[0] = r[0].slice(s), r.index = i.lastIndex, i.lastIndex += r[0].length) : i.lastIndex = 0 : h && r && (i.lastIndex = i.global ? r.index + r[0].length : e), g && r && 1 < r.length && d.call(r[0], n, function() { for (o = 1; o < arguments.length - 2; o++) void 0 === arguments[o] && (r[o] = void 0) }), r }), t.exports = i }, function(t, e, n) { "use strict"; var r = n(103).charAt, o = n(31), n = n(72), i = "String Iterator", c = o.set, a = o.getterFor(i); n(String, "String", function(t) { c(this, { type: i, string: String(t), index: 0 }) }, function() { var t = a(this), e = t.string, n = t.index; return n >= e.length ? { value: void 0, done: !0 } : (n = r(e, n), t.index += n.length, { value: n, done: !1 }) }) }, function(t, e, n) { "use strict"; var r = n(28), o = n(62), i = n(32), c = n(31), n = n(72), a = "Array Iterator", u = c.set, s = c.getterFor(a); t.exports = n(Array, "Array", function(t, e) { u(this, { type: a, target: r(t), index: 0, kind: e }) }, function() { var t = s(this), e = t.target, n = t.kind, r = t.index++; return !e || r >= e.length ? { value: t.target = void 0, done: !0 } : "keys" == n ? { value: r, done: !1 } : "values" == n ? { value: e[r], done: !1 } : { value: [r, e[r]], done: !1 } }, "values"), i.Arguments = i.Array, o("keys"), o("values"), o("entries") }, function(t, e, n) { var r = n(2), n = n(139); r({ target: "Number", stat: !0, forced: Number.parseInt != n }, { parseInt: n }) }, function(t, e, n) { var r = n(7), o = n(18); t.exports = function(e, n) { try { o(r, e, n) } catch (t) { r[e] = n } return n } }, function(t, e, n) { var r = n(7), o = n(55), n = "__core-js_shared__", n = r[n] || o(n, {}); t.exports = n }, function(t, e, n) { var r = n(84), o = n(58), i = r("keys"); t.exports = function(t) { return i[t] || (i[t] = o(t)) } }, function(t, e) { var n = 0, r = Math.random(); t.exports = function(t) { return "Symbol(" + String(void 0 === t ? "" : t) + ")_" + (++n + r).toString(36) } }, function(t, e, n) { var r = n(85), o = n(60).concat("length", "prototype"); e.f = Object.getOwnPropertyNames || function(t) { return r(t, o) } }, function(t, e) { t.exports = ["constructor", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "toLocaleString", "toString", "valueOf"] }, function(t, e, n) { var r = n(29); t.exports = Array.isArray || function(t) { return "Array" == r(t) } }, function(t, e, n) { var r = n(3), o = n(47), n = n(12), i = r("unscopables"), c = Array.prototype; null == c[i] && n.f(c, i, { configurable: !0, value: o(null) }), t.exports = function(t) { c[i][t] = !0 } }, function(t, e, n) { var r = n(85), o = n(60); t.exports = Object.keys || function(t) { return r(t, o) } }, function(t, e, n) { var r = n(14), o = n(23), i = n(57), n = n(92), c = i("IE_PROTO"), a = Object.prototype; t.exports = n ? Object.getPrototypeOf : function(t) { return t = o(t), r(t, c) ? t[c] : "function" == typeof t.constructor && t instanceof t.constructor ? t.constructor.prototype : t instanceof Object ? a : null } }, function(t, e, n) { var o = n(9), i = n(121); t.exports = Object.setPrototypeOf || ("__proto__" in {} ? function() { var n, r = !1, t = {}; try { (n = Object.getOwnPropertyDescriptor(Object.prototype, "__proto__").set).call(t, []), r = t instanceof Array } catch (t) {} return function(t, e) { return o(t), i(e), r ? n.call(t, e) : t.__proto__ = e, t } }() : void 0) }, function(t, e, n) { "use strict"; var r = n(39), o = n(12), i = n(37); t.exports = function(t, e, n) { e = r(e); e in t ? o.f(t, e, i(0, n)) : t[e] = n } }, function(t, e, n) { var r = {}; r[n(3)("toStringTag")] = "z", t.exports = "[object z]" === String(r) }, function(t, e, n) { var i = n(11), c = n(65); t.exports = function(t, e, n) { var r, o; return c && "function" == typeof(r = e.constructor) && r !== n && i(o = r.prototype) && o !== n.prototype && c(t, o), t } }, function(t, e, n) { var r = n(2), n = n(127); r({ target: "Number", stat: !0, forced: Number.parseFloat != n }, { parseFloat: n }) }, function(t, e, n) { var r = n(11), o = n(29), i = n(3)("match"); t.exports = function(t) { var e; return r(t) && (void 0 !== (e = t[i]) ? !!e : "RegExp" == o(t)) } }, function(t, e, n) { "use strict"; var r = n(9); t.exports = function() { var t = r(this), e = ""; return t.global && (e += "g"), t.ignoreCase && (e += "i"), t.multiline && (e += "m"), t.dotAll && (e += "s"), t.unicode && (e += "u"), t.sticky && (e += "y"), e } }, function(t, e, n) { "use strict"; function y() { return this } var g = n(2), v = n(129), m = n(64), b = n(65), _ = n(73), w = n(18), O = n(19), r = n(3), E = n(40), j = n(32), n = n(104), k = n.IteratorPrototype, S = n.BUGGY_SAFARI_ITERATORS, x = r("iterator"), P = "values", T = "entries"; t.exports = function(t, e, n, r, o, i, c) { v(n, e, r); function a(t) { if (t === o && h) return h; if (!S && t in p) return p[t]; switch (t) { case "keys": case P: case T: return function() { return new n(this, t) } } return function() { return new n(this) } } var u, s, l = e + " Iterator", f = !1, p = t.prototype, d = p[x] || p["@@iterator"] || o && p[o], h = !S && d || a(o), r = "Array" == e && p.entries || d; if (r && (t = m(r.call(new t)), k !== Object.prototype && t.next && (E || m(t) === k || (b ? b(t, k) : "function" != typeof t[x] && w(t, x, y)), _(t, l, !0, !0), E && (j[l] = y))), o == P && d && d.name !== P && (f = !0, h = function() { return d.call(this) }), E && !c || p[x] === h || w(p, x, h), j[e] = h, o) if (u = { values: a(P), keys: i ? h : a("keys"), entries: a(T) }, c) for (s in u) !S && !f && s in p || O(p, s, u[s]); else g({ target: e, proto: !0, forced: S || f }, u); return u } }, function(t, e, n) { var r = n(12).f, o = n(14), i = n(3)("toStringTag"); t.exports = function(t, e, n) { t && !o(t = n ? t : t.prototype, i) && r(t, i, { configurable: !0, value: e }) } }, function(t, e, n) { "use strict"; n(8); var s = n(19), l = n(1), f = n(3), p = n(51), d = n(18), h = f("species"), y = !l(function() { var t = /./; return t.exec = function() { var t = []; return t.groups = { a: "7" }, t }, "7" !== "".replace(t, "$<a>") }), g = "$0" === "a".replace(/./, "$0"), n = f("replace"), v = !!/./ [n] && "" === /./ [n]("a", "$0"), m = !l(function() { var t = /(?:)/, e = t.exec; t.exec = function() { return e.apply(this, arguments) }; t = "ab".split(t); return 2 !== t.length || "a" !== t[0] || "b" !== t[1] }); t.exports = function(n, t, e, r) { var i, o, c = f(n), a = !l(function() { var t = {}; return t[c] = function() { return 7 }, 7 != "" [n](t) }), u = a && !l(function() { var t = !1, e = /a/; return "split" === n && ((e = { constructor: {} }).constructor[h] = function() { return e }, e.flags = "", e[c] = /./ [c]), e.exec = function() { return t = !0, null }, e[c](""), !t }); a && u && ("replace" !== n || y && g && !v) && ("split" !== n || m) || (i = /./ [c], e = (u = e(c, "" [n], function(t, e, n, r, o) { return e.exec === p ? a && !o ? { done: !0, value: i.call(e, n, r) } : { done: !0, value: t.call(n, e, r) } : { done: !1 } }, { REPLACE_KEEPS_$0: g, REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: v }))[0], o = u[1], s(String.prototype, n, e), s(RegExp.prototype, c, 2 == t ? function(t, e) { return o.call(t, this, e) } : function(t) { return o.call(t, this) })), r && d(RegExp.prototype[c], "sham", !0) } }, function(t, e, n) { "use strict"; var r = n(103).charAt; t.exports = function(t, e, n) { return e + (n ? r(t, e).length : 1) } }, function(t, e, n) { var r = n(29), o = n(51); t.exports = function(t, e) { var n = t.exec; if ("function" == typeof n) { n = n.call(t, e); if ("object" != typeof n) throw TypeError("RegExp exec method returned something other than an Object or null"); return n } if ("RegExp" !== r(t)) throw TypeError("RegExp#exec called on incompatible receiver"); return o.call(t, e) } }, function(t, e, n) { "use strict"; var r = n(2), o = n(36).f, i = n(16), c = n(105), a = n(17), u = n(106), n = n(40), s = "".startsWith, l = Math.min, u = u("startsWith"); r({ target: "String", proto: !0, forced: !!(n || u || (!(o = o(String.prototype, "startsWith")) || o.writable)) && !u }, { startsWith: function(t) { var e = String(a(this)); c(t); var n = i(l(1 < arguments.length ? arguments[1] : void 0, e.length)), t = String(t); return s ? s.call(e, t, n) : e.slice(n, n + t.length) === t } }) }, function(t, e, n) { "use strict"; var r = n(135), n = n(137); t.exports = r("Set", function(t) { return function() { return t(this, arguments.length ? arguments[0] : void 0) } }, n) }, function(t, e, n) { var r, o = n(7), i = n(93), c = n(53), a = n(18), n = n(3), u = n("iterator"), s = n("toStringTag"), l = c.values; for (r in i) { var f = o[r], p = f && f.prototype; if (p) { if (p[u] !== l) try { a(p, u, l) } catch (t) { p[u] = l } if (p[s] || a(p, s, r), i[r]) for (var d in c) if (p[d] !== c[d]) try { a(p, d, c[d]) } catch (t) { p[d] = c[d] } } } }, function(t, e, n) { "use strict"; var r = {}.propertyIsEnumerable, o = Object.getOwnPropertyDescriptor, i = o && !r.call({ 1: 2 }, 1); e.f = i ? function(t) { t = o(this, t); return !!t && t.enumerable } : r }, function(t, e, n) { var r = n(13), o = n(1), i = n(82); t.exports = !r && !o(function() { return 7 != Object.defineProperty(i("div"), "a", { get: function() { return 7 } }).a }) }, function(t, e, n) { var r = n(7), n = n(11), o = r.document, i = n(o) && n(o.createElement); t.exports = function(t) { return i ? o.createElement(t) : {} } }, function(t, e, n) { var n = n(56), r = Function.toString; "function" != typeof n.inspectSource && (n.inspectSource = function(t) { return r.call(t) }), t.exports = n.inspectSource }, function(t, e, n) { var r = n(40), o = n(56); (t.exports = function(t, e) { return o[t] || (o[t] = void 0 !== e ? e : {}) })("versions", []).push({ version: "3.9.0", mode: r ? "pure" : "global", copyright: "© 2021 Denis Pushkarev (zloirock.ru)" }) }, function(t, e, n) { var c = n(14), a = n(28), u = n(86).indexOf, s = n(41); t.exports = function(t, e) { var n, r = a(t), o = 0, i = []; for (n in r) !c(s, n) && c(r, n) && i.push(n); for (; e.length > o;) c(r, n = e[o++]) && (~u(i, n) || i.push(n)); return i } }, function(t, e, n) { var u = n(28), s = n(16), l = n(87), n = function(a) { return function(t, e, n) { var r, o = u(t), i = s(o.length), c = l(n, i); if (a && e != e) { for (; c < i;) if ((r = o[c++]) != r) return !0 } else for (; c < i; c++) if ((a || c in o) && o[c] === e) return a || c || 0; return !a && -1 } }; t.exports = { includes: n(!0), indexOf: n(!1) } }, function(t, e, n) { var r = n(43), o = Math.max, i = Math.min; t.exports = function(t, e) { t = r(t); return t < 0 ? o(t + e, 0) : i(t, e) } }, function(t, e) { e.f = Object.getOwnPropertySymbols }, function(t, e) { t.exports = function(t) { if ("function" != typeof t) throw TypeError(String(t) + " is not a function"); return t } }, function(t, e, n) { var r = n(11), o = n(61), i = n(3)("species"); t.exports = function(t, e) { var n; return new(void 0 === (n = o(t) && ("function" == typeof(n = t.constructor) && (n === Array || o(n.prototype)) || r(n) && null === (n = n[i])) ? void 0 : n) ? Array : n)(0 === e ? 0 : e) } }, function(t, e, n) { n = n(1); t.exports = !!Object.getOwnPropertySymbols && !n(function() { return !String(Symbol()) }) }, function(t, e, n) { n = n(1); t.exports = !n(function() { function t() {} return t.prototype.constructor = null, Object.getPrototypeOf(new t) !== t.prototype }) }, function(t, e) { t.exports = { CSSRuleList: 0, CSSStyleDeclaration: 0, CSSValueList: 0, ClientRectList: 0, DOMRectList: 0, DOMStringList: 0, DOMTokenList: 1, DataTransferItemList: 0, FileList: 0, HTMLAllCollection: 0, HTMLCollection: 0, HTMLFormElement: 0, HTMLSelectElement: 0, MediaList: 0, MimeTypeArray: 0, NamedNodeMap: 0, NodeList: 1, PaintRequestList: 0, Plugin: 0, PluginArray: 0, SVGLengthList: 0, SVGNumberList: 0, SVGPathSegList: 0, SVGPointList: 0, SVGStringList: 0, SVGTransformList: 0, SourceBufferList: 0, StyleSheetList: 0, TextTrackCueList: 0, TextTrackList: 0, TouchList: 0 } }, function(t, e, n) { "use strict"; var r = n(1); t.exports = function(t, e) { var n = [][t]; return !!n && r(function() { n.call(null, e || function() { throw 1 }, 1) }) } }, function(t, e, n) { var r, o, i = n(7), n = n(123), i = i.process, i = i && i.versions, i = i && i.v8; i ? o = (r = i.split("."))[0] + r[1] : n && (!(r = n.match(/Edge\/(\d+)/)) || 74 <= r[1]) && (r = n.match(/Chrome\/(\d+)/)) && (o = r[1]), t.exports = o && +o }, function(t, e, n) { var r = n(9); t.exports = function(t) { var e = t.return; if (void 0 !== e) return r(e.call(t)).value } }, function(t, e, n) { var r = n(3), o = n(32), i = r("iterator"), c = Array.prototype; t.exports = function(t) { return void 0 !== t && (o.Array === t || c[i] === t) } }, function(t, e, n) { var r = n(99), o = n(32), i = n(3)("iterator"); t.exports = function(t) { if (null != t) return t[i] || t["@@iterator"] || o[r(t)] } }, function(t, e, n) { var r = n(67), o = n(29), i = n(3)("toStringTag"), c = "Arguments" == o(function() { return arguments }()); t.exports = r ? o : function(t) { var e; return void 0 === t ? "Undefined" : null === t ? "Null" : "string" == typeof(t = function(t, e) { try { return t[e] } catch (t) {} }(e = Object(t), i)) ? t : c ? o(e) : "Object" == (t = o(e)) && "function" == typeof e.callee ? "Arguments" : t } }, function(t, e, n) { var o = n(3)("iterator"), i = !1; try { var r = 0, c = { next: function() { return { done: !!r++ } }, return: function() { i = !0 } }; c[o] = function() { return this }, Array.from(c, function() { throw 2 }) } catch (t) {} t.exports = function(t, e) { if (!e && !i) return !1; var n = !1; try { var r = {}; r[o] = function() { return { next: function() { return { done: n = !0 } } } }, t(r) } catch (t) {} return n } }, function(t, e, n) { "use strict"; n = n(1); function r(t, e) { return RegExp(t, e) } e.UNSUPPORTED_Y = n(function() { var t = r("a", "y"); return t.lastIndex = 2, null != t.exec("abcd") }), e.BROKEN_CARET = n(function() { var t = r("^r", "gy"); return t.lastIndex = 2, null != t.exec("str") }) }, function(t, e, n) { "use strict"; var r = n(42), o = n(12), i = n(3), c = n(13), a = i("species"); t.exports = function(t) { var e = r(t), t = o.f; c && e && !e[a] && t(e, a, { configurable: !0, get: function() { return this } }) } }, function(t, e, n) { var c = n(43), a = n(17), n = function(i) { return function(t, e) { var n, r = String(a(t)), o = c(e), t = r.length; return o < 0 || t <= o ? i ? "" : void 0 : (e = r.charCodeAt(o)) < 55296 || 56319 < e || o + 1 === t || (n = r.charCodeAt(o + 1)) < 56320 || 57343 < n ? i ? r.charAt(o) : e : i ? r.slice(o, o + 2) : n - 56320 + (e - 55296 << 10) + 65536 } }; t.exports = { codeAt: n(!1), charAt: n(!0) } }, function(t, e, n) { "use strict"; var r, o = n(1), i = n(64), c = n(18), a = n(14), u = n(3), s = n(40), l = u("iterator"), n = !1; [].keys && ("next" in (u = [].keys()) ? (u = i(i(u))) !== Object.prototype && (r = u) : n = !0); o = null == r || o(function() { var t = {}; return r[l].call(t) !== t }); o && (r = {}), s && !o || a(r, l) || c(r, l, function() { return this }), t.exports = { IteratorPrototype: r, BUGGY_SAFARI_ITERATORS: n } }, function(t, e, n) { var r = n(70); t.exports = function(t) { if (r(t)) throw TypeError("The method doesn't accept regular expressions"); return t } }, function(t, e, n) { var r = n(3)("match"); t.exports = function(e) { var n = /./; try { "/./" [e](n) } catch (t) { try { return n[r] = !1, "/./" [e](n) } catch (t) {} } return !1 } }, function(t, e, n) { "use strict"; var r = n(2), o = n(86).includes, n = n(62); r({ target: "Array", proto: !0 }, { includes: function(t) { return o(this, t, 1 < arguments.length ? arguments[1] : void 0) } }), n("includes") }, function(t, e, n) { function r(t) { a(t, l, { value: { objectID: "O" + ++f, weakData: {} } }) } var o = n(41), i = n(11), c = n(14), a = n(12).f, u = n(58), s = n(136), l = u("meta"), f = 0, p = Object.isExtensible || function() { return !0 }, d = t.exports = { REQUIRED: !1, fastKey: function(t, e) { if (!i(t)) return "symbol" == typeof t ? t : ("string" == typeof t ? "S" : "P") + t; if (!c(t, l)) { if (!p(t)) return "F"; if (!e) return "E"; r(t) } return t[l].objectID }, getWeakData: function(t, e) { if (!c(t, l)) { if (!p(t)) return !0; if (!e) return !1; r(t) } return t[l].weakData }, onFreeze: function(t) { return s && d.REQUIRED && p(t) && !c(t, l) && r(t), t } }; o[l] = !0 }, function(t, e, n) { function g(t, e) { this.stopped = t, this.result = e } var v = n(9), m = n(97), b = n(16), _ = n(46), w = n(98), O = n(96); t.exports = function(t, e, n) { function r(t) { return i && O(i), new g(!0, t) } function o(t) { return p ? (v(t), h ? y(t[0], t[1], r) : y(t[0], t[1])) : h ? y(t, r) : y(t) } var i, c, a, u, s, l, f = n && n.that, p = !(!n || !n.AS_ENTRIES), d = !(!n || !n.IS_ITERATOR), h = !(!n || !n.INTERRUPTED), y = _(e, f, 1 + p + h); if (d) i = t; else { if ("function" != typeof(d = w(t))) throw TypeError("Target is not iterable"); if (m(d)) { for (c = 0, a = b(t.length); c < a; c++) if ((u = o(t[c])) && u instanceof g) return u; return new g(!1) } i = d.call(t) } for (s = i.next; !(l = s.call(i)).done;) { try { u = o(l.value) } catch (t) { throw O(i), t } if ("object" == typeof u && u && u instanceof g) return u } return new g(!1) } }, function(t, e) { t.exports = function(t, e, n) { if (!(t instanceof e)) throw TypeError("Incorrect " + (n ? n + " " : "") + "invocation"); return t } }, function(t, e, n) { "use strict"; var r = n(2), o = n(105), i = n(17); r({ target: "String", proto: !0, forced: !n(106)("includes") }, { includes: function(t) { return !!~String(i(this)).indexOf(o(t), 1 < arguments.length ? arguments[1] : void 0) } }) }, function(t, e, n) { "use strict"; var r = n(2), o = n(38), i = n(28), n = n(94), c = [].join, o = o != Object, n = n("join", ","); r({ target: "Array", proto: !0, forced: o || !n }, { join: function(t) { return c.call(i(this), void 0 === t ? "," : t) } }) }, function(t, e) { var n = function() { return this }(); try { n = n || new Function("return this")() } catch (t) { "object" == typeof window && (n = window) } t.exports = n }, function(t, e, n) { var r = n(7), n = n(83), r = r.WeakMap; t.exports = "function" == typeof r && /native code/.test(n(r)) }, function(t, e, n) { var a = n(14), u = n(116), s = n(36), l = n(12); t.exports = function(t, e) { for (var n = u(e), r = l.f, o = s.f, i = 0; i < n.length; i++) { var c = n[i]; a(t, c) || r(t, c, o(e, c)) } } }, function(t, e, n) { var r = n(42), o = n(59), i = n(88), c = n(9); t.exports = r("Reflect", "ownKeys") || function(t) { var e = o.f(c(t)), n = i.f; return n ? e.concat(n(t)) : e } }, function(t, e, n) { n = n(7); t.exports = n }, function(t, e, n) { n = n(91); t.exports = n && !Symbol.sham && "symbol" == typeof Symbol.iterator }, function(t, e, n) { var r = n(13), c = n(12), a = n(9), u = n(63); t.exports = r ? Object.defineProperties : function(t, e) { a(t); for (var n, r = u(e), o = r.length, i = 0; i < o;) c.f(t, n = r[i++], e[n]); return t } }, function(t, e, n) { n = n(42); t.exports = n("document", "documentElement") }, function(t, e, n) { var r = n(11); t.exports = function(t) { if (!r(t) && null !== t) throw TypeError("Can't set " + String(t) + " as a prototype"); return t } }, function(t, e, n) { "use strict"; var r = n(45).forEach, n = n(94)("forEach"); t.exports = n ? [].forEach : function(t) { return r(this, t, 1 < arguments.length ? arguments[1] : void 0) } }, function(t, e, n) { n = n(42); t.exports = n("navigator", "userAgent") || "" }, function(t, e, n) { var r = n(2), o = n(125); r({ target: "Array", stat: !0, forced: !n(100)(function(t) { Array.from(t) }) }, { from: o }) }, function(t, e, n) { "use strict"; var d = n(46), h = n(23), y = n(126), g = n(97), v = n(16), m = n(66), b = n(98); t.exports = function(t) { var e, n, r, o, i, c, a = h(t), u = "function" == typeof this ? this : Array, s = arguments.length, l = 1 < s ? arguments[1] : void 0, f = void 0 !== l, t = b(a), p = 0; if (f && (l = d(l, 2 < s ? arguments[2] : void 0, 2)), null == t || u == Array && g(t)) for (n = new u(e = v(a.length)); p < e; p++) c = f ? l(a[p], p) : a[p], m(n, p, c); else for (i = (o = t.call(a)).next, n = new u; !(r = i.call(o)).done; p++) c = f ? y(o, l, [r.value, p], !0) : r.value, m(n, p, c); return n.length = p, n } }, function(t, e, n) { var o = n(9), i = n(96); t.exports = function(e, t, n, r) { try { return r ? t(o(n)[0], n[1]) : t(n) } catch (t) { throw i(e), t } } }, function(t, e, n) { var r = n(7), o = n(49).trim, n = n(50), i = r.parseFloat, n = 1 / i(n + "-0") != -1 / 0; t.exports = n ? function(t) { var e = o(String(t)), t = i(e); return 0 === t && "-" == e.charAt(0) ? -0 : t } : i }, function(t, e, n) { "use strict"; var r = n(67), o = n(99); t.exports = r ? {}.toString : function() { return "[object " + o(this) + "]" } }, function(t, e, n) { "use strict"; function r() { return this } var o = n(104).IteratorPrototype, i = n(47), c = n(37), a = n(73), u = n(32); t.exports = function(t, e, n) { e += " Iterator"; return t.prototype = i(o, { next: c(1, n) }), a(t, e, !1, !0), u[e] = r, t } }, function(t, e, n) { var r = n(9), o = n(89), i = n(3)("species"); t.exports = function(t, e) { var n, t = r(t).constructor; return void 0 === t || null == (n = r(t)[i]) ? e : o(n) } }, function(t, e, n) { var r = n(1), o = n(50); t.exports = function(t) { return r(function() { return !!o[t]() || " " != " " [t]() || o[t].name !== t }) } }, function(t, e, n) { var r = n(23), p = Math.floor, o = "".replace, d = /\$([$&'`]|\d\d?|<[^>]*>)/g, h = /\$([$&'`]|\d\d?)/g; t.exports = function(i, c, a, u, s, t) { var l = a + i.length, f = u.length, e = h; return void 0 !== s && (s = r(s), e = d), o.call(t, e, function(t, e) { var n; switch (e.charAt(0)) { case "$": return "$"; case "&": return i; case "`": return c.slice(0, a); case "'": return c.slice(l); case "<": n = s[e.slice(1, -1)]; break; default: var r = +e; if (0 == r) return t; if (f < r) { var o = p(r / 10); return 0 === o ? t : o <= f ? void 0 === u[o - 1] ? e.charAt(1) : u[o - 1] + e.charAt(1) : t } n = u[r - 1] } return void 0 === n ? "" : n }) } }, function(t, e, n) { var r = n(2), n = n(134); r({ target: "Object", stat: !0, forced: Object.assign !== n }, { assign: n }) }, function(t, e, n) { "use strict"; var p = n(13), r = n(1), d = n(63), h = n(88), y = n(80), g = n(23), v = n(38), o = Object.assign, i = Object.defineProperty; t.exports = !o || r(function() { if (p && 1 !== o({ b: 1 }, o(i({}, "a", { enumerable: !0, get: function() { i(this, "b", { value: 3, enumerable: !1 }) } }), { b: 2 })).b) return !0; var t = {}, e = {}, n = Symbol(), r = "abcdefghijklmnopqrst"; return t[n] = 7, r.split("").forEach(function(t) { e[t] = t }), 7 != o({}, t)[n] || d(o({}, e)).join("") != r }) ? function(t, e) { for (var n = g(t), r = arguments.length, o = 1, i = h.f, c = y.f; o < r;) for (var a, u = v(arguments[o++]), s = i ? d(u).concat(i(u)) : d(u), l = s.length, f = 0; f < l;) a = s[f++], p && !c.call(u, a) || (n[a] = u[a]); return n } : o }, function(t, e, n) { "use strict"; var g = n(2), v = n(7), m = n(44), b = n(19), _ = n(108), w = n(109), O = n(110), E = n(11), j = n(1), k = n(100), S = n(73), x = n(68); t.exports = function(n, t, e) { function r(t) { var n = d[t]; b(d, t, "add" == t ? function(t) { return n.call(this, 0 === t ? 0 : t), this } : "delete" == t ? function(t) { return !(l && !E(t)) && n.call(this, 0 === t ? 0 : t) } : "get" == t ? function(t) { return l && !E(t) ? void 0 : n.call(this, 0 === t ? 0 : t) } : "has" == t ? function(t) { return !(l && !E(t)) && n.call(this, 0 === t ? 0 : t) } : function(t, e) { return n.call(this, 0 === t ? 0 : t, e), this }) } var o, i, c, a, u, s = -1 !== n.indexOf("Map"), l = -1 !== n.indexOf("Weak"), f = s ? "set" : "add", p = v[n], d = p && p.prototype, h = p, y = {}; return m(n, "function" != typeof p || !(l || d.forEach && !j(function() { (new p).entries().next() }))) ? (h = e.getConstructor(t, n, s, f), _.REQUIRED = !0) : m(n, !0) && (i = (o = new h)[f](l ? {} : -0, 1) != o, c = j(function() { o.has(1) }), a = k(function(t) { new p(t) }), u = !l && j(function() { for (var t = new p, e = 5; e--;) t[f](e, e); return !t.has(-0) }), a || (((h = t(function(t, e) { O(t, h, n); t = x(new p, t, h); return null != e && w(e, t[f], { that: t, AS_ENTRIES: s }), t })).prototype = d).constructor = h), (c || u) && (r("delete"), r("has"), s && r("get")), (u || i) && r(f), l && d.clear && delete d.clear), y[n] = h, g({ global: !0, forced: h != p }, y), S(h, n), l || e.setStrong(h, n, s), h } }, function(t, e, n) { n = n(1); t.exports = !n(function() { return Object.isExtensible(Object.preventExtensions({})) }) }, function(t, e, n) { "use strict"; var s = n(12).f, l = n(47), f = n(138), p = n(46), d = n(110), h = n(109), c = n(72), a = n(102), y = n(13), g = n(108).fastKey, n = n(31), v = n.set, m = n.getterFor; t.exports = { getConstructor: function(t, n, r, o) { function i(t, e, n) { var r, o = a(t), i = u(t, e); return i ? i.value = n : (o.last = i = { index: r = g(e, !0), key: e, value: n, previous: n = o.last, next: void 0, removed: !1 }, o.first || (o.first = i), n && (n.next = i), y ? o.size++ : t.size++, "F" !== r && (o.index[r] = i)), t } var c = t(function(t, e) { d(t, c, n), v(t, { type: n, index: l(null), first: void 0, last: void 0, size: 0 }), y || (t.size = 0), null != e && h(e, t[o], { that: t, AS_ENTRIES: r }) }), a = m(n), u = function(t, e) { var n, r = a(t), t = g(e); if ("F" !== t) return r.index[t]; for (n = r.first; n; n = n.next) if (n.key == e) return n }; return f(c.prototype, { clear: function() { for (var t = a(this), e = t.index, n = t.first; n;) n.removed = !0, n.previous && (n.previous = n.previous.next = void 0), delete e[n.index], n = n.next; t.first = t.last = void 0, y ? t.size = 0 : this.size = 0 }, delete: function(t) { var e, n = a(this), r = u(this, t); return r && (e = r.next, t = r.previous, delete n.index[r.index], r.removed = !0, t && (t.next = e), e && (e.previous = t), n.first == r && (n.first = e), n.last == r && (n.last = t), y ? n.size-- : this.size--), !!r }, forEach: function(t) { for (var e, n = a(this), r = p(t, 1 < arguments.length ? arguments[1] : void 0, 3); e = e ? e.next : n.first;) for (r(e.value, e.key, this); e && e.removed;) e = e.previous }, has: function(t) { return !!u(this, t) } }), f(c.prototype, r ? { get: function(t) { t = u(this, t); return t && t.value }, set: function(t, e) { return i(this, 0 === t ? 0 : t, e) } } : { add: function(t) { return i(this, t = 0 === t ? 0 : t, t) } }), y && s(c.prototype, "size", { get: function() { return a(this).size } }), c }, setStrong: function(t, e, n) { var r = e + " Iterator", o = m(e), i = m(r); c(t, e, function(t, e) { v(this, { type: r, target: t, state: o(t), kind: e, last: void 0 }) }, function() { for (var t = i(this), e = t.kind, n = t.last; n && n.removed;) n = n.previous; return t.target && (t.last = n = n ? n.next : t.state.first) ? "keys" == e ? { value: n.key, done: !1 } : "values" == e ? { value: n.value, done: !1 } : { value: [n.key, n.value], done: !1 } : { value: t.target = void 0, done: !0 } }, n ? "entries" : "values", !n, !0), a(e) } } }, function(t, e, n) { var o = n(19); t.exports = function(t, e, n) { for (var r in e) o(t, r, e[r], n); return t } }, function(t, e, n) { var r = n(7), o = n(49).trim, n = n(50), i = r.parseInt, c = /^[+-]?0[Xx]/, n = 8 !== i(n + "08") || 22 !== i(n + "0x16"); t.exports = n ? function(t, e) { t = o(String(t)); return i(t, e >>> 0 || (c.test(t) ? 16 : 10)) } : i }, function(t, e) { function o(t) { if (r[t]) return r[t].exports; var e = r[t] = { i: t, l: !1, exports: {} }; return n[t].call(e.exports, e, e.exports, o), e.l = !0, e.exports } var n, r; r = {}, o.m = n = [function(t, e, n) { "use strict"; function r(t) { var e; t.hasAttribute("autocompleted") || (t.setAttribute("autocompleted", ""), e = new window.CustomEvent("onautocomplete", { bubbles: !0, cancelable: !0, detail: null }), t.dispatchEvent(e) || (t.value = "")) } function o(t) { t.hasAttribute("autocompleted") && (t.removeAttribute("autocompleted"), t.dispatchEvent(new window.CustomEvent("onautocomplete", { bubbles: !0, cancelable: !1, detail: null }))) } n.r(e), n(1), n(5), document.addEventListener("animationstart", function(t) { ("onautofillstart" === t.animationName ? r : o)(t.target) }, !0), document.addEventListener("input", function(t) { ("insertReplacementText" !== t.inputType && "data" in t ? o : r)(t.target) }, !0) }, function(t, e, n) { var r = n(2), n = n(3), n = (r(n = "string" == typeof(n = n.__esModule ? n.default : n) ? [ [t.i, n, ""] ] : n, { insert: "head", singleton: !1 }), n.locals || {}); t.exports = n }, function(t, e, o) { "use strict"; var n, r, i = (r = {}, function(t) { if (void 0 === r[t]) { var e = document.querySelector(t); if (window.HTMLIFrameElement && e instanceof window.HTMLIFrameElement) try { e = e.contentDocument.head } catch (t) { e = null } r[t] = e } return r[t] }), s = []; function l(t) { for (var e = -1, n = 0; n < s.length; n++) if (s[n].identifier === t) { e = n; break } return e } function a(t, e) { for (var n = {}, r = [], o = 0; o < t.length; o++) { var i = t[o], c = e.base ? i[0] + e.base : i[0], a = n[c] || 0, u = "".concat(c, " ").concat(a); n[c] = a + 1; a = l(u), i = { css: i[1], media: i[2], sourceMap: i[3] }; - 1 !== a ? (s[a].references++, s[a].updater(i)) : s.push({ identifier: u, updater: function(e, t) { var n, r, o; { var i; o = t.singleton ? (i = h++, n = d = d || f(t), r = p.bind(null, n, i, !1), p.bind(null, n, i, !0)) : (n = f(t), r = function(t, e, n) { var r = n.css, o = n.media, n = n.sourceMap; if (o ? t.setAttribute("media", o) : t.removeAttribute("media"), n && btoa && (r += "\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(n)))), " */")), t.styleSheet) t.styleSheet.cssText = r; else { for (; t.firstChild;) t.removeChild(t.firstChild); t.appendChild(document.createTextNode(r)) } }.bind(null, n, t), function() { null !== n.parentNode && n.parentNode.removeChild(n) }) } return r(e), function(t) { t ? t.css === e.css && t.media === e.media && t.sourceMap === e.sourceMap || r(e = t) : o() } }(i, e), references: 1 }), r.push(u) } return r } function f(t) { var e, n = document.createElement("style"), r = t.attributes || {}; if (void 0 !== r.nonce || (e = o.nc) && (r.nonce = e), Object.keys(r).forEach(function(t) { n.setAttribute(t, r[t]) }), "function" == typeof t.insert) t.insert(n); else { t = i(t.insert || "head"); if (!t) throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid."); t.appendChild(n) } return n } var c, u = (c = [], function(t, e) { return c[t] = e, c.filter(Boolean).join("\n") }); function p(t, e, n, r) { n = n ? "" : r.media ? "@media ".concat(r.media, " {").concat(r.css, "}") : r.css; t.styleSheet ? t.styleSheet.cssText = u(e, n) : (r = document.createTextNode(n), (n = t.childNodes)[e] && t.removeChild(n[e]), n.length ? t.insertBefore(r, n[e]) : t.appendChild(r)) } var d = null, h = 0; t.exports = function(t, i) { (i = i || {}).singleton || "boolean" == typeof i.singleton || (i.singleton = n = void 0 === n ? Boolean(window && document && document.all && !window.atob) : n); var c = a(t = t || [], i); return function(t) { if (t = t || [], "[object Array]" === Object.prototype.toString.call(t)) { for (var e = 0; e < c.length; e++) { var n = l(c[e]); s[n].references-- } for (var t = a(t, i), r = 0; r < c.length; r++) { var o = l(c[r]); 0 === s[o].references && (s[o].updater(), s.splice(o, 1)) } c = t } } } }, function(t, e, n) { (e = n(4)(!1)).push([t.i, "INPUT:-webkit-autofill,SELECT:-webkit-autofill,TEXTAREA:-webkit-autofill{animation-name:onautofillstart}INPUT:not(:-webkit-autofill),SELECT:not(:-webkit-autofill),TEXTAREA:not(:-webkit-autofill){animation-name:onautofillcancel}@keyframes onautofillstart{from{}}@keyframes onautofillcancel{from{}}\n", ""]), t.exports = e }, function(t, e, n) { "use strict"; t.exports = function(i) { var u = []; return u.toString = function() { return this.map(function(o) { var t = function() { var t = o[1] || "", e = o[3]; if (!e) return t; if (i && "function" == typeof btoa) { var n = (n = btoa(unescape(encodeURIComponent(JSON.stringify(e)))), r = "sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(n), "/*# ".concat(r, " */")), r = e.sources.map(function(t) { return "/*# sourceURL=".concat(e.sourceRoot || "").concat(t, " */") }); return [t].concat(r).concat([n]).join("\n") } return [t].join("\n") }(); return o[2] ? "@media ".concat(o[2], " {").concat(t, "}") : t }).join("") }, u.i = function(t, e, n) { "string" == typeof t && (t = [ [null, t, ""] ]); var r = {}; if (n) for (var o = 0; o < this.length; o++) { var i = this[o][0]; null != i && (r[i] = !0) } for (var c = 0; c < t.length; c++) { var a = [].concat(t[c]); n && r[a[0]] || (e && (a[2] ? a[2] = "".concat(e, " and ").concat(a[2]) : a[2] = e), u.push(a)) } }, u } }, function(t, e) { ! function() { if ("undefined" != typeof window) try { var t = new window.CustomEvent("test", { cancelable: !0 }); if (t.preventDefault(), !0 !== t.defaultPrevented) throw new Error("Could not prevent default") } catch (t) { function e(t, e) { var n, r; return (e = e || {}).bubbles = !!e.bubbles, e.cancelable = !!e.cancelable, (n = document.createEvent("CustomEvent")).initCustomEvent(t, e.bubbles, e.cancelable, e.detail), r = n.preventDefault, n.preventDefault = function() { r.call(this); try { Object.defineProperty(this, "defaultPrevented", { get: function() { return !0 } }) } catch (t) { this.defaultPrevented = !0 } }, n } e.prototype = window.Event.prototype, window.CustomEvent = e } }() }], o.c = r, o.d = function(t, e, n) { o.o(t, e) || Object.defineProperty(t, e, { enumerable: !0, get: n }) }, o.r = function(t) { "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(t, "__esModule", { value: !0 }) }, o.t = function(e, t) { if (1 & t && (e = o(e)), 8 & t) return e; if (4 & t && "object" == typeof e && e && e.__esModule) return e; var n = Object.create(null); if (o.r(n), Object.defineProperty(n, "default", { enumerable: !0, value: e }), 2 & t && "string" != typeof e) for (var r in e) o.d(n, r, function(t) { return e[t] }.bind(null, r)); return n }, o.n = function(t) { var e = t && t.__esModule ? function() { return t.default } : function() { return t }; return o.d(e, "a", e), e }, o.o = function(t, e) { return Object.prototype.hasOwnProperty.call(t, e) }, o.p = "", o(o.s = 0) }, function(t, e, n) { var r = n(13), o = n(12).f, n = Function.prototype, i = n.toString, c = /^\s*function ([^ (]*)/; !r || "name" in n || o(n, "name", { configurable: !0, get: function() { try { return i.call(this).match(c)[1] } catch (t) { return "" } } }) }, , function(t, e, n) { "use strict"; n.r(e), n.d(e, "Alert", function() { return Ge }), n.d(e, "Button", function() { return te }), n.d(e, "Carousel", function() { return Fn }), n.d(e, "Collapse", function() { return Te }), n.d(e, "Dropdown", function() { return al }), n.d(e, "Input", function() { return es }), n.d(e, "Modal", function() { return Br }), n.d(e, "Popover", function() { return xc }), n.d(e, "Ripple", function() { return wl }), n.d(e, "ScrollSpy", function() { return ca }), n.d(e, "Tab", function() { return Ha }), n.d(e, "Toast", function() { return Bu }), n.d(e, "Tooltip", function() { return ru }), n.d(e, "Range", function() { return Tl }); var c = {}; n.r(c), n.d(c, "top", function() { return Ur }), n.d(c, "bottom", function() { return Wr }), n.d(c, "right", function() { return Fr }), n.d(c, "left", function() { return Qr }), n.d(c, "auto", function() { return zr }), n.d(c, "basePlacements", function() { return Kr }), n.d(c, "start", function() { return Yr }), n.d(c, "end", function() { return qr }), n.d(c, "clippingParents", function() { return Vr }), n.d(c, "viewport", function() { return Xr }), n.d(c, "popper", function() { return $r }), n.d(c, "reference", function() { return Gr }), n.d(c, "variationPlacements", function() { return Jr }), n.d(c, "placements", function() { return Zr }), n.d(c, "beforeRead", function() { return to }), n.d(c, "read", function() { return eo }), n.d(c, "afterRead", function() { return no }), n.d(c, "beforeMain", function() { return ro }), n.d(c, "main", function() { return oo }), n.d(c, "afterMain", function() { return io }), n.d(c, "beforeWrite", function() { return co }), n.d(c, "write", function() { return ao }), n.d(c, "afterWrite", function() { return uo }), n.d(c, "modifierPhases", function() { return so }), n.d(c, "applyStyles", function() { return go }), n.d(c, "arrow", function() { return Lo }), n.d(c, "computeStyles", function() { return No }), n.d(c, "eventListeners", function() { return Ho }), n.d(c, "flip", function() { return ti }), n.d(c, "hide", function() { return ri }), n.d(c, "offset", function() { return oi }), n.d(c, "popperOffsets", function() { return ii }), n.d(c, "preventOverflow", function() { return ci }), n.d(c, "popperGenerator", function() { return fi }), n.d(c, "detectOverflow", function() { return Zo }), n.d(c, "createPopperBase", function() { return pi }), n.d(c, "createPopper", function() { return di }), n.d(c, "createPopperLite", function() { return hi }); function i(t) { var e = t.getAttribute("data-mdb-target"); return e = !e || "#" === e ? (t = t.getAttribute("href")) && "#" !== t ? t.trim() : null : e } function a(i, c, a) { Object.keys(a).forEach(function(t) { var e, n, r = a[t], o = c[t], e = o && ((n = o)[0] || n).nodeType ? "element" : null == (e = o) ? "".concat(e) : {}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(); if (!new RegExp(r).test(e)) throw new Error("".concat(i.toUpperCase(), ": ") + 'Option "'.concat(t, '" provided type "').concat(e, '" ') + 'but expected type "'.concat(r, '".')) }) } function r() { var t = window.jQuery; return t && !document.body.hasAttribute("data-mdb-no-jquery") ? t : null } function u(t) { "loading" === document.readyState ? document.addEventListener("DOMContentLoaded", t) : t() } function s(t) { return document.createElement(t) } n(6), n(4), n(5), n(0), n(10), n(124), n(15), n(69), n(20), n(26), n(27), n(8), n(21), n(52), n(30), n(22), n(33), document.documentElement.dir; var o, l, f = (o = {}, l = 1, { set: function(t, e, n) { void 0 === t[e] && (t[e] = { key: e, id: l }, l++), o[t[e].id] = n }, get: function(t, e) { if (!t || void 0 === t[e]) return null; t = t[e]; return t.key === e ? o[t.id] : null }, delete: function(t, e) { var n; void 0 === t[e] || (n = t[e]).key === e && (delete o[n.id], delete t[e]) } }), p = { setData: function(t, e, n) { f.set(t, e, n) }, getData: function(t, e) { return f.get(t, e) }, removeData: function(t, e) { f.delete(t, e) } }; n(34), n(35); function y(t, e) { return function(t) { if (Array.isArray(t)) return t }(t) || function(t, e) { if ("undefined" == typeof Symbol || !(Symbol.iterator in Object(t))) return; var n = [], r = !0, o = !1, i = void 0; try { for (var c, a = t[Symbol.iterator](); !(r = (c = a.next()).done) && (n.push(c.value), !e || n.length !== e); r = !0); } catch (t) { o = !0, i = t } finally { try { r || null == a.return || a.return() } finally { if (o) throw i } } return n }(t, e) || function(t, e) { if (!t) return; if ("string" == typeof t) return d(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); "Object" === n && t.constructor && (n = t.constructor.name); if ("Map" === n || "Set" === n) return Array.from(t); if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return d(t, e) }(t, e) || function() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") }() } function d(t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++) r[n] = t[n]; return r } var h = r(), g = /[^.]*(?=\..*)\.|.*/, v = /\..*/, m = /::\d+$/, b = {}, _ = 1, w = { mouseenter: "mouseover", mouseleave: "mouseout" }, O = ["click", "dblclick", "mouseup", "mousedown", "contextmenu", "mousewheel", "DOMMouseScroll", "mouseover", "mouseout", "mousemove", "selectstart", "selectend", "keydown", "keypress", "keyup", "orientationchange", "touchstart", "touchmove", "touchend", "touchcancel", "pointerdown", "pointermove", "pointerup", "pointerleave", "pointercancel", "gesturestart", "gesturechange", "gestureend", "focus", "blur", "change", "reset", "select", "submit", "focusin", "focusout", "load", "unload", "beforeunload", "resize", "move", "DOMContentLoaded", "readystatechange", "error", "abort", "scroll"]; function E(t, e) { return e && "".concat(e, "::").concat(_++) || t.uidEvent || _++ } function j(t) { var e = E(t); return t.uidEvent = e, b[e] = b[e] || {}, b[e] } function k(t, e, n) { for (var r = 2 < arguments.length && void 0 !== n ? n : null, o = Object.keys(t), i = 0, c = o.length; i < c; i++) { var a = t[o[i]]; if (a.originalHandler === e && a.delegationSelector === r) return a } return null } function S(t, e, n) { var r = "string" == typeof e, o = r ? n : e, n = t.replace(v, ""), e = w[n]; return e && (n = e), [r, o, n = !(-1 < O.indexOf(n)) ? t : n] } function x(t, e, n, r, o) { var i, c, a, u, s, l, f, p, d, h; "string" == typeof e && t && (n || (n = r, r = null), i = (u = y(S(e, n, r), 3))[0], c = u[1], a = u[2], (s = k(u = (s = j(t))[a] || (s[a] = {}), c, i ? n : null)) ? s.oneOff = s.oneOff && o : (e = E(c, e.replace(g, "")), (r = i ? (p = t, d = n, h = r, function t(e) { for (var n = p.querySelectorAll(d), r = e.target; r && r !== this; r = r.parentNode) for (var o = n.length; o--;) if (n[o] === r) return e.delegateTarget = r, t.oneOff && T.off(p, e.type, h), h.apply(r, [e]); return null }) : (l = t, f = n, function t(e) { return e.delegateTarget = l, t.oneOff && T.off(l, e.type, f), f.apply(l, [e]) })).delegationSelector = i ? n : null, r.originalHandler = c, r.oneOff = o, u[r.uidEvent = e] = r, t.addEventListener(a, r, i))) } function P(t, e, n, r, o) { r = k(e[n], r, o); r && (t.removeEventListener(n, r, Boolean(o)), delete e[n][r.uidEvent]) } var T = { on: function(t, e, n, r) { x(t, e, n, r, !1) }, one: function(t, e, n, r) { x(t, e, n, r, !0) }, off: function(c, a, t, e) { if ("string" == typeof a && c) { var n = y(S(a, t, e), 3), r = n[0], e = n[1], o = n[2], i = o !== a, u = j(c), n = "." === a.charAt(0); if (void 0 !== e) return u && u[o] ? void P(c, u, o, e, r ? t : null) : void 0; n && Object.keys(u).forEach(function(t) { var e, n, r, o, i; e = c, n = u, r = t, o = a.slice(1), i = n[r] || {}, Object.keys(i).forEach(function(t) { -1 < t.indexOf(o) && P(e, n, r, (t = i[t]).originalHandler, t.delegationSelector) }) }); var s = u[o] || {}; Object.keys(s).forEach(function(t) { var e = t.replace(m, ""); (!i || -1 < a.indexOf(e)) && P(c, u, o, (t = s[t]).originalHandler, t.delegationSelector) }) } }, trigger: function(t, e, n) { if ("string" != typeof e || !t) return null; var r, o = e.replace(v, ""), i = e !== o, c = -1 < O.indexOf(o), a = !0, u = !0, s = !1, l = null; return i && h && (r = h.Event(e, n), h(t).trigger(r), a = !r.isPropagationStopped(), u = !r.isImmediatePropagationStopped(), s = r.isDefaultPrevented()), c ? (l = document.createEvent("HTMLEvents")).initEvent(o, a, !0) : l = new CustomEvent(e, { bubbles: a, cancelable: !0 }), void 0 !== n && Object.keys(n).forEach(function(t) { Object.defineProperty(l, t, { get: function() { return n[t] } }) }), s && l.preventDefault(), u && t.dispatchEvent(l), l.defaultPrevented && void 0 !== r && r.preventDefault(), l } }, D = T; n(24), n(133), n(77); function A(e, t) { var n, r = Object.keys(e); return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(e), t && (n = n.filter(function(t) { return Object.getOwnPropertyDescriptor(e, t).enumerable })), r.push.apply(r, n)), r } function C(r) { for (var t = 1; t < arguments.length; t++) { var o = null != arguments[t] ? arguments[t] : {}; t % 2 ? A(Object(o), !0).forEach(function(t) { var e, n; e = r, t = o[n = t], n in e ? Object.defineProperty(e, n, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = t }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(r, Object.getOwnPropertyDescriptors(o)) : A(Object(o)).forEach(function(t) { Object.defineProperty(r, t, Object.getOwnPropertyDescriptor(o, t)) }) } return r } function L(t) { return "true" === t || "false" !== t && (t === Number(t).toString() ? Number(t) : "" === t || "null" === t ? null : t) } function R(t) { return t.replace(/[A-Z]/g, function(t) { return "-".concat(t.toLowerCase()) }) } var I = { setDataAttribute: function(t, e, n) { t.setAttribute("data-mdb-".concat(R(e)), n) }, removeDataAttribute: function(t, e) { t.removeAttribute("data-mdb-".concat(R(e))) }, getDataAttributes: function(t) { if (!t) return {}; var n = C({}, t.dataset); return Object.keys(n).filter(function(t) { return t.startsWith("mdb") }).forEach(function(t) { var e = (e = t.replace(/^mdb/, "")).charAt(0).toLowerCase() + e.slice(1, e.length); n[e] = L(n[t]) }), n }, getDataAttribute: function(t, e) { return L(t.getAttribute("data-mdb-".concat(R(e)))) }, offset: function(t) { t = t.getBoundingClientRect(); return { top: t.top + document.body.scrollTop, left: t.left + document.body.scrollLeft } }, position: function(t) { return { top: t.offsetTop, left: t.offsetLeft } }, style: function(t, e) { Object.assign(t.style, e) }, toggleClass: function(t, e) { t && (t.classList.contains(e) ? t.classList.remove(e) : t.classList.add(e)) }, addClass: function(t, e) { t.classList.contains(e) || t.classList.add(e) }, addStyle: function(e, n) { Object.keys(n).forEach(function(t) { e.style[t] = n[t] }) }, removeClass: function(t, e) { t.classList.contains(e) && t.classList.remove(e) }, hasClass: function(t, e) { return t.classList.contains(e) } }; function N(t) { return function(t) { if (Array.isArray(t)) return M(t) }(t) || function(t) { if ("undefined" != typeof Symbol && Symbol.iterator in Object(t)) return Array.from(t) }(t) || function(t, e) { if (!t) return; if ("string" == typeof t) return M(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); "Object" === n && t.constructor && (n = t.constructor.name); if ("Map" === n || "Set" === n) return Array.from(t); if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return M(t, e) }(t) || function() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") }() } function M(t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++) r[n] = t[n]; return r } function H(t) { for (; t += Math.floor(1e6 * Math.random()), document.getElementById(t);); return t } function B(t) { var e = t.getAttribute("data-mdb-target"); return e = !e || "#" === e ? (t = t.getAttribute("href")) && "#" !== t ? t.trim() : null : e } function U(t) { return (t = B(t)) ? document.querySelector(t) : null } function W(t) { if (!t) return 0; var e = (r = window.getComputedStyle(t)).transitionDuration, n = r.transitionDelay, t = Number.parseFloat(e), r = Number.parseFloat(n); return t || r ? (e = e.split(",")[0], n = n.split(",")[0], 1e3 * (Number.parseFloat(e) + Number.parseFloat(n))) : 0 } function F(t) { t.dispatchEvent(new Event(tt)) } function Q(t) { return (t[0] || t).nodeType } function z(e, t) { var n = !1, t = t + 5; e.addEventListener(tt, function t() { n = !0, e.removeEventListener(tt, t) }), setTimeout(function() { n || F(e) }, t) } function K(o, i, c) { Object.keys(c).forEach(function(t) { var e, n = c[t], r = i[t], e = r && Q(r) ? "element" : null == (e = r) ? "".concat(e) : {}.toString.call(e).match(/\s([a-z]+)/i)[1].toLowerCase(); if (!new RegExp(n).test(e)) throw new Error("".concat(o.toUpperCase(), ": ") + 'Option "'.concat(t, '" provided type "').concat(e, '" ') + 'but expected type "'.concat(n, '".')) }) } function Y(t) { if (!t) return !1; if (t.style && t.parentNode && t.parentNode.style) { var e = getComputedStyle(t), t = getComputedStyle(t.parentNode); return "none" !== e.display && "none" !== t.display && "hidden" !== e.visibility } return !1 } function q(t) { return document.documentElement.attachShadow ? "function" != typeof t.getRootNode ? t instanceof ShadowRoot ? t : t.parentNode ? q(t.parentNode) : null : (t = t.getRootNode()) instanceof ShadowRoot ? t : null : null } function V() { return function() {} } function X(t) { return t.offsetHeight } function $() { var t = window.jQuery; return t && !document.body.hasAttribute("data-mdb-no-jquery") ? t : null } var G, J, Z = { closest: function(t, e) { return t.closest(e) }, matches: function(t, e) { return t.matches(e) }, find: function(t) { var e, n = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : document.documentElement; return (e = []).concat.apply(e, N(Element.prototype.querySelectorAll.call(n, t))) }, findOne: function(t) { var e = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : document.documentElement; return Element.prototype.querySelector.call(e, t) }, children: function(t, e) { var n; return (n = []).concat.apply(n, N(t.children)).filter(function(t) { return t.matches(e) }) }, parents: function(t, e) { for (var n = [], r = t.parentNode; r && r.nodeType === Node.ELEMENT_NODE && 3 !== r.nodeType;) this.matches(r, e) && n.push(r), r = r.parentNode; return n }, prev: function(t, e) { for (var n = t.previousElementSibling; n;) { if (n.matches(e)) return [n]; n = n.previousElementSibling } return [] }, next: function(t, e) { for (var n = t.nextElementSibling; n;) { if (this.matches(n, e)) return [n]; n = n.nextElementSibling } return [] } }, tt = "transitionend", et = function(t) { t = B(t); return t && document.querySelector(t) ? t : null }, nt = "rtl" === document.documentElement.dir, rt = function(n, r) { var t; t = function() { var t, e = $(); e && (t = e.fn[n], e.fn[n] = r.jQueryInterface, e.fn[n].Constructor = r, e.fn[n].noConflict = function() { return e.fn[n] = t, r.jQueryInterface }) }, "loading" === document.readyState ? document.addEventListener("DOMContentLoaded", t) : t() }, ot = (G = {}, J = 1, { set: function(t, e, n) { void 0 === t.bsKey && (t.bsKey = { key: e, id: J }, J++), G[t.bsKey.id] = n }, get: function(t, e) { if (!t || void 0 === t.bsKey) return null; t = t.bsKey; return t.key === e ? G[t.id] : null }, delete: function(t, e) { var n; void 0 === t.bsKey || (n = t.bsKey).key === e && (delete G[n.id], delete t.bsKey) } }), it = { setData: function(t, e, n) { ot.set(t, e, n) }, getData: function(t, e) { return ot.get(t, e) }, removeData: function(t, e) { ot.delete(t, e) } }; n(107), n(53), n(78), n(111), n(79); function ct(t, e) { return function(t) { if (Array.isArray(t)) return t }(t) || function(t, e) { if ("undefined" == typeof Symbol || !(Symbol.iterator in Object(t))) return; var n = [], r = !0, o = !1, i = void 0; try { for (var c, a = t[Symbol.iterator](); !(r = (c = a.next()).done) && (n.push(c.value), !e || n.length !== e); r = !0); } catch (t) { o = !0, i = t } finally { try { r || null == a.return || a.return() } finally { if (o) throw i } } return n }(t, e) || function(t, e) { if (!t) return; if ("string" == typeof t) return at(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); "Object" === n && t.constructor && (n = t.constructor.name); if ("Map" === n || "Set" === n) return Array.from(t); if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return at(t, e) }(t, e) || function() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") }() } function at(t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++) r[n] = t[n]; return r } var ut = /[^.]*(?=\..*)\.|.*/, st = /\..*/, lt = /::\d+$/, ft = {}, pt = 1, dt = { mouseenter: "mouseover", mouseleave: "mouseout" }, ht = new Set(["click", "dblclick", "mouseup", "mousedown", "contextmenu", "mousewheel", "DOMMouseScroll", "mouseover", "mouseout", "mousemove", "selectstart", "selectend", "keydown", "keypress", "keyup", "orientationchange", "touchstart", "touchmove", "touchend", "touchcancel", "pointerdown", "pointermove", "pointerup", "pointerleave", "pointercancel", "gesturestart", "gesturechange", "gestureend", "focus", "blur", "change", "reset", "select", "submit", "focusin", "focusout", "load", "unload", "beforeunload", "resize", "move", "DOMContentLoaded", "readystatechange", "error", "abort", "scroll"]); function yt(t, e) { return e && "".concat(e, "::").concat(pt++) || t.uidEvent || pt++ } function gt(t) { var e = yt(t); return t.uidEvent = e, ft[e] = ft[e] || {}, ft[e] } function vt(t, e, n) { for (var r = 2 < arguments.length && void 0 !== n ? n : null, o = Object.keys(t), i = 0, c = o.length; i < c; i++) { var a = t[o[i]]; if (a.originalHandler === e && a.delegationSelector === r) return a } return null } function mt(t, e, n) { var r = "string" == typeof e, o = r ? n : e, n = t.replace(st, ""), e = dt[n]; return e && (n = e), [r, o, n = !ht.has(n) ? t : n] } function bt(t, e, n, r, o) { var i, c, a, u, s, l, f, p, d, h; "string" == typeof e && t && (n || (n = r, r = null), i = (u = ct(mt(e, n, r), 3))[0], c = u[1], a = u[2], (s = vt(u = (s = gt(t))[a] || (s[a] = {}), c, i ? n : null)) ? s.oneOff = s.oneOff && o : (e = yt(c, e.replace(ut, "")), (r = i ? (p = t, d = n, h = r, function t(e) { for (var n = p.querySelectorAll(d), r = e.target; r && r !== this; r = r.parentNode) for (var o = n.length; o--;) if (n[o] === r) return e.delegateTarget = r, t.oneOff && wt.off(p, e.type, h), h.apply(r, [e]); return null }) : (l = t, f = n, function t(e) { return e.delegateTarget = l, t.oneOff && wt.off(l, e.type, f), f.apply(l, [e]) })).delegationSelector = i ? n : null, r.originalHandler = c, r.oneOff = o, u[r.uidEvent = e] = r, t.addEventListener(a, r, i))) } function _t(t, e, n, r, o) { r = vt(e[n], r, o); r && (t.removeEventListener(n, r, Boolean(o)), delete e[n][r.uidEvent]) } var wt = { on: function(t, e, n, r) { bt(t, e, n, r, !1) }, one: function(t, e, n, r) { bt(t, e, n, r, !0) }, off: function(c, a, t, e) { if ("string" == typeof a && c) { var n = ct(mt(a, t, e), 3), r = n[0], e = n[1], o = n[2], i = o !== a, u = gt(c), n = a.startsWith("."); if (void 0 !== e) return u && u[o] ? void _t(c, u, o, e, r ? t : null) : void 0; n && Object.keys(u).forEach(function(t) { var e, n, r, o, i; e = c, n = u, r = t, o = a.slice(1), i = n[r] || {}, Object.keys(i).forEach(function(t) { t.includes(o) && _t(e, n, r, (t = i[t]).originalHandler, t.delegationSelector) }) }); var s = u[o] || {}; Object.keys(s).forEach(function(t) { var e = t.replace(lt, ""); i && !a.includes(e) || _t(c, u, o, (t = s[t]).originalHandler, t.delegationSelector) }) } }, trigger: function(t, e, n) { if ("string" != typeof e || !t) return null; var r, o = $(), i = e.replace(st, ""), c = e !== i, a = ht.has(i), u = !0, s = !0, l = !1, f = null; return c && o && (r = o.Event(e, n), o(t).trigger(r), u = !r.isPropagationStopped(), s = !r.isImmediatePropagationStopped(), l = r.isDefaultPrevented()), a ? (f = document.createEvent("HTMLEvents")).initEvent(i, u, !0) : f = new CustomEvent(e, { bubbles: u, cancelable: !0 }), void 0 !== n && Object.keys(n).forEach(function(t) { Object.defineProperty(f, t, { get: function() { return n[t] } }) }), l && f.preventDefault(), s && t.dispatchEvent(f), f.defaultPrevented && void 0 !== r && r.preventDefault(), f } }, Ot = wt; function Et(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } var jt = function() { function e(t) { ! function(t) { if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function") }(this), t && (this._element = t, it.setData(t, this.constructor.DATA_KEY, this)) } var t, n, r; return t = e, r = [{ key: "getInstance", value: function(t) { return it.getData(t, this.DATA_KEY) } }, { key: "VERSION", get: function() { return "5.0.0-beta2" } }], (n = [{ key: "dispose", value: function() { it.removeData(this._element, this.constructor.DATA_KEY), this._element = null } }]) && Et(t.prototype, n), r && Et(t, r), e }(); function kt(t) { return (kt = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function St(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function xt(t, e) { return (xt = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function Pt(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = Tt(n); return t = r ? (t = Tt(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== kt(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function Tt(t) { return (Tt = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var Dt = "bs.button", At = ".".concat(Dt), Ct = '[data-mdb-toggle="button"]', e = "click".concat(At).concat(".data-api"), Lt = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && xt(t, e) }(o, jt); var t, e, n, r = Pt(o); function o() { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), r.apply(this, arguments) } return t = o, n = [{ key: "DATA_KEY", get: function() { return Dt } }, { key: "jQueryInterface", value: function(e) { return this.each(function() { var t = (t = it.getData(this, Dt)) || new o(this); "toggle" === e && t[e]() }) } }], (e = [{ key: "toggle", value: function() { this._element.setAttribute("aria-pressed", this._element.classList.toggle("active")) } }]) && St(t.prototype, e), n && St(t, n), o }(); Ot.on(document, e, Ct, function(t) { t.preventDefault(); t = t.target.closest(Ct); (it.getData(t, Dt) || new Lt(t)).toggle() }), rt("button", Lt); var Rt = Lt; function It(t) { return (It = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function Nt(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function Mt(t, e, n) { return (Mt = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = Wt(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function Ht(t, e) { return (Ht = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function Bt(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = Wt(n); return t = r ? (t = Wt(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== It(t) && "function" != typeof t ? Ut(e) : t } } function Ut(t) { if (void 0 === t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return t } function Wt(t) { return (Wt = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var Ft = "button", Qt = "mdb.".concat(Ft), At = ".".concat(Qt), zt = "click".concat(At), Kt = "transitionend", Yt = "mouseenter", qt = "mouseleave", Vt = "hide".concat(At), Xt = "hidden".concat(At), $t = "show".concat(At), Gt = "shown".concat(At), Jt = "fixed-action-btn", Zt = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && Ht(t, e) }(o, Rt); var t, e, n, r = Bt(o); function o(t) { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (t = r.call(this, t))._fn = {}, t._element && (p.setData(t._element, Qt, Ut(t)), t._init()), t } return t = o, n = [{ key: "NAME", get: function() { return Ft } }, { key: "jQueryInterface", value: function(n, r) { return this.each(function() { var t = p.getData(this, Qt), e = "object" === It(n) && n; if ((t || !/dispose/.test(n)) && (t = t || new o(this), "string" == typeof n)) { if (void 0 === t[n]) throw new TypeError('No method named "'.concat(n, '"')); t[n](r) } }) } }], (e = [{ key: "_actionButton", get: function() { return Z.findOne(".fixed-action-btn:not(.smooth-scroll) > .btn-floating", this._element) } }, { key: "_buttonListElements", get: function() { return Z.find("ul .btn", this._element) } }, { key: "_buttonList", get: function() { return Z.findOne("ul", this._element) } }, { key: "_isTouchDevice", get: function() { return "ontouchstart" in document.documentElement } }, { key: "show", value: function() { I.hasClass(this._element, Jt) && (D.off(this._buttonList, Kt), D.trigger(this._element, $t), this._bindListOpenTransitionEnd(), I.addStyle(this._element, { height: "".concat(this._fullContainerHeight, "px") }), this._toggleVisibility(!0)) } }, { key: "hide", value: function() { I.hasClass(this._element, Jt) && (D.off(this._buttonList, Kt), D.trigger(this._element, Vt), this._bindListHideTransitionEnd(), this._toggleVisibility(!1)) } }, { key: "dispose", value: function() { I.hasClass(this._element, Jt) && (D.off(this._actionButton, zt), this._actionButton.removeEventListener(Yt, this._fn.mouseenter), this._element.removeEventListener(qt, this._fn.mouseleave)), Mt(Wt(o.prototype), "dispose", this).call(this) } }, { key: "_init", value: function() { I.hasClass(this._element, Jt) && (this._saveInitialHeights(), this._setInitialStyles(), this._bindInitialEvents()) } }, { key: "_bindMouseEnter", value: function() { var t = this; this._actionButton.addEventListener(Yt, this._fn.mouseenter = function() { t._isTouchDevice || t.show() }) } }, { key: "_bindMouseLeave", value: function() { var t = this; this._element.addEventListener(qt, this._fn.mouseleave = function() { t.hide() }) } }, { key: "_bindClick", value: function() { var t = this; D.on(this._actionButton, zt, function() { I.hasClass(t._element, "active") ? t.hide() : t.show() }) } }, { key: "_bindListHideTransitionEnd", value: function() { var e = this; D.on(this._buttonList, Kt, function(t) { "transform" === t.propertyName && (D.off(e._buttonList, Kt), e._element.style.height = "".concat(e._initialContainerHeight, "px"), D.trigger(e._element, Xt)) }) } }, { key: "_bindListOpenTransitionEnd", value: function() { var e = this; D.on(this._buttonList, Kt, function(t) { "transform" === t.propertyName && (D.off(e._buttonList, Kt), D.trigger(e._element, Gt)) }) } }, { key: "_toggleVisibility", value: function(t) { var e = t ? "addClass" : "removeClass", t = t ? "translate(0)" : "translateY(".concat(this._fullContainerHeight, "px)"); I.addStyle(this._buttonList, { transform: t }), this._buttonListElements && this._buttonListElements.forEach(function(t) { return I[e](t, "shown") }), I[e](this._element, "active") } }, { key: "_getHeight", value: function(t) { t = window.getComputedStyle(t); return parseFloat(t.getPropertyValue("height")) } }, { key: "_saveInitialHeights", value: function() { this._initialContainerHeight = this._getHeight(this._element), this._initialListHeight = this._getHeight(this._buttonList), this._fullContainerHeight = this._initialContainerHeight + this._initialListHeight } }, { key: "_bindInitialEvents", value: function() { this._bindClick(), this._bindMouseEnter(), this._bindMouseLeave() } }, { key: "_setInitialStyles", value: function() { this._buttonList.style.marginBottom = "".concat(this._initialContainerHeight, "px"), this._buttonList.style.transform = "translateY(".concat(this._fullContainerHeight, "px)"), this._element.style.height = "".concat(this._initialContainerHeight, "px") } }]) && Nt(t.prototype, e), n && Nt(t, n), o }(); Z.find(".fixed-action-btn").forEach(function(t) { return Zt.getInstance(t) || new Zt(t) }), Z.find('[data-mdb-toggle="button"]').forEach(function(t) { return Zt.getInstance(t) || new Zt(t) }), u(function() { var t, e = r(); e && (t = e.fn[Ft], e.fn[Ft] = Zt.jQueryInterface, e.fn[Ft].Constructor = Zt, e.fn[Ft].noConflict = function() { return e.fn[Ft] = t, Zt.jQueryInterface }) }); var te = Zt; function ee(t) { return "true" === t || "false" !== t && (t === Number(t).toString() ? Number(t) : "" === t || "null" === t ? null : t) } function ne(t) { return t.replace(/[A-Z]/g, function(t) { return "-".concat(t.toLowerCase()) }) } var re = { setDataAttribute: function(t, e, n) { t.setAttribute("data-mdb-".concat(ne(e)), n) }, removeDataAttribute: function(t, e) { t.removeAttribute("data-mdb-".concat(ne(e))) }, getDataAttributes: function(n) { if (!n) return {}; var r = {}; return Object.keys(n.dataset).filter(function(t) { return t.startsWith("mdb") }).forEach(function(t) { var e = (e = t.replace(/^mdb/, "")).charAt(0).toLowerCase() + e.slice(1, e.length); r[e] = ee(n.dataset[t]) }), r }, getDataAttribute: function(t, e) { return ee(t.getAttribute("data-mdb-".concat(ne(e)))) }, offset: function(t) { t = t.getBoundingClientRect(); return { top: t.top + document.body.scrollTop, left: t.left + document.body.scrollLeft } }, position: function(t) { return { top: t.offsetTop, left: t.offsetLeft } } }; function oe(t) { return function(t) { if (Array.isArray(t)) return ie(t) }(t) || function(t) { if ("undefined" != typeof Symbol && Symbol.iterator in Object(t)) return Array.from(t) }(t) || function(t, e) { if (!t) return; if ("string" == typeof t) return ie(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); "Object" === n && t.constructor && (n = t.constructor.name); if ("Map" === n || "Set" === n) return Array.from(t); if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return ie(t, e) }(t) || function() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") }() } function ie(t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++) r[n] = t[n]; return r } var ce = { matches: function(t, e) { return t.matches(e) }, find: function(t) { var e, n = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : document.documentElement; return (e = []).concat.apply(e, oe(Element.prototype.querySelectorAll.call(n, t))) }, findOne: function(t) { var e = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : document.documentElement; return Element.prototype.querySelector.call(e, t) }, children: function(t, e) { var n; return (n = []).concat.apply(n, oe(t.children)).filter(function(t) { return t.matches(e) }) }, parents: function(t, e) { for (var n = [], r = t.parentNode; r && r.nodeType === Node.ELEMENT_NODE && 3 !== r.nodeType;) this.matches(r, e) && n.push(r), r = r.parentNode; return n }, prev: function(t, e) { for (var n = t.previousElementSibling; n;) { if (n.matches(e)) return [n]; n = n.previousElementSibling } return [] }, next: function(t, e) { for (var n = t.nextElementSibling; n;) { if (this.matches(n, e)) return [n]; n = n.nextElementSibling } return [] } }; function ae(t) { return (ae = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function ue(e, t) { var n, r = Object.keys(e); return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(e), t && (n = n.filter(function(t) { return Object.getOwnPropertyDescriptor(e, t).enumerable })), r.push.apply(r, n)), r } function se(r) { for (var t = 1; t < arguments.length; t++) { var o = null != arguments[t] ? arguments[t] : {}; t % 2 ? ue(Object(o), !0).forEach(function(t) { var e, n; e = r, t = o[n = t], n in e ? Object.defineProperty(e, n, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = t }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(r, Object.getOwnPropertyDescriptors(o)) : ue(Object(o)).forEach(function(t) { Object.defineProperty(r, t, Object.getOwnPropertyDescriptor(o, t)) }) } return r } function le(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function fe(t, e, n) { return (fe = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = he(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function pe(t, e) { return (pe = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function de(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = he(n); return t = r ? (t = he(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== ae(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function he(t) { return (he = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var ye = "collapse", ge = "bs.collapse", e = ".".concat(ge), ve = { toggle: !0, parent: "" }, me = { toggle: "boolean", parent: "(string|element)" }, be = "show".concat(e), _e = "shown".concat(e), we = "hide".concat(e), Oe = "hidden".concat(e), At = "click".concat(e).concat(".data-api"), Ee = "show", je = "collapse", ke = "collapsing", Se = "collapsed", xe = '[data-mdb-toggle="collapse"]', Pe = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && pe(t, e) }(l, jt); var t, e, n, s = de(l); function l(e, t) { var n; ! function(t) { if (!(t instanceof l)) throw new TypeError("Cannot call a class as a function") }(this), (n = s.call(this, e))._isTransitioning = !1, n._config = n._getConfig(t), n._triggerArray = ce.find("".concat(xe, '[href="#').concat(e.id, '"],') + "".concat(xe, '[data-mdb-target="#').concat(e.id, '"]')); for (var r = ce.find(xe), o = 0, i = r.length; o < i; o++) { var c = r[o], a = et(c), u = ce.find(a).filter(function(t) { return t === e }); null !== a && u.length && (n._selector = a, n._triggerArray.push(c)) } return n._parent = n._config.parent ? n._getParent() : null, n._config.parent || n._addAriaAndCollapsedClass(n._element, n._triggerArray), n._config.toggle && n.toggle(), n } return t = l, n = [{ key: "Default", get: function() { return ve } }, { key: "DATA_KEY", get: function() { return ge } }, { key: "collapseInterface", value: function(t, e) { var n = it.getData(t, ge), r = se(se(se({}, ve), re.getDataAttributes(t)), "object" === ae(e) && e ? e : {}); if (!n && r.toggle && "string" == typeof e && /show|hide/.test(e) && (r.toggle = !1), n = n || new l(t, r), "string" == typeof e) { if (void 0 === n[e]) throw new TypeError('No method named "'.concat(e, '"')); n[e]() } } }, { key: "jQueryInterface", value: function(t) { return this.each(function() { l.collapseInterface(this, t) }) } }], (e = [{ key: "toggle", value: function() { this._element.classList.contains(Ee) ? this.hide() : this.show() } }, { key: "show", value: function() { var e = this; if (!this._isTransitioning && !this._element.classList.contains(Ee)) { this._parent && 0 === (n = ce.find(".show, .collapsing", this._parent).filter(function(t) { return "string" == typeof e._config.parent ? t.getAttribute("data-mdb-parent") === e._config.parent : t.classList.contains(je) })).length && (n = null); var t, n, r = ce.findOne(this._selector); if (n) { var o, i = n.find(function(t) { return r !== t }); if ((o = i ? it.getData(i, ge) : null) && o._isTransitioning) return } Ot.trigger(this._element, be).defaultPrevented || (n && n.forEach(function(t) { r !== t && l.collapseInterface(t, "hide"), o || it.setData(t, ge, null) }), t = this._getDimension(), this._element.classList.remove(je), this._element.classList.add(ke), this._element.style[t] = 0, this._triggerArray.length && this._triggerArray.forEach(function(t) { t.classList.remove(Se), t.setAttribute("aria-expanded", !0) }), this.setTransitioning(!0), i = t[0].toUpperCase() + t.slice(1), n = "scroll".concat(i), i = W(this._element), Ot.one(this._element, "transitionend", function() { e._element.classList.remove(ke), e._element.classList.add(je, Ee), e._element.style[t] = "", e.setTransitioning(!1), Ot.trigger(e._element, _e) }), z(this._element, i), this._element.style[t] = "".concat(this._element[n], "px")) } } }, { key: "hide", value: function() { var t = this; if (!this._isTransitioning && this._element.classList.contains(Ee) && !Ot.trigger(this._element, we).defaultPrevented) { var e = this._getDimension(); this._element.style[e] = "".concat(this._element.getBoundingClientRect()[e], "px"), X(this._element), this._element.classList.add(ke), this._element.classList.remove(je, Ee); var n = this._triggerArray.length; if (0 < n) for (var r = 0; r < n; r++) { var o = this._triggerArray[r], i = U(o); i && !i.classList.contains(Ee) && (o.classList.add(Se), o.setAttribute("aria-expanded", !1)) } this.setTransitioning(!0); this._element.style[e] = ""; e = W(this._element); Ot.one(this._element, "transitionend", function() { t.setTransitioning(!1), t._element.classList.remove(ke), t._element.classList.add(je), Ot.trigger(t._element, Oe) }), z(this._element, e) } } }, { key: "setTransitioning", value: function(t) { this._isTransitioning = t } }, { key: "dispose", value: function() { fe(he(l.prototype), "dispose", this).call(this), this._config = null, this._parent = null, this._triggerArray = null, this._isTransitioning = null } }, { key: "_getConfig", value: function(t) { return (t = se(se({}, ve), t)).toggle = Boolean(t.toggle), K(ye, t, me), t } }, { key: "_getDimension", value: function() { return this._element.classList.contains("width") ? "width" : "height" } }, { key: "_getParent", value: function() { var n = this, t = this._config.parent; Q(t) ? void 0 === t.jquery && void 0 === t[0] || (t = t[0]) : t = ce.findOne(t); var e = "".concat(xe, '[data-mdb-parent="').concat(t, '"]'); return ce.find(e, t).forEach(function(t) { var e = U(t); n._addAriaAndCollapsedClass(e, [t]) }), t } }, { key: "_addAriaAndCollapsedClass", value: function(t, e) { var n; t && e.length && (n = t.classList.contains(Ee), e.forEach(function(t) { n ? t.classList.remove(Se) : t.classList.add(Se), t.setAttribute("aria-expanded", n) })) } }]) && le(t.prototype, e), n && le(t, n), l }(); Ot.on(document, At, xe, function(t) { ("A" === t.target.tagName || t.delegateTarget && "A" === t.delegateTarget.tagName) && t.preventDefault(); var n = re.getDataAttributes(this), t = et(this); ce.find(t).forEach(function(t) { var e = it.getData(t, ge), e = e ? (null === e._parent && "string" == typeof n.parent && (e._config.parent = n.parent, e._parent = e._getParent()), "toggle") : n; Pe.collapseInterface(t, e) }) }), rt(ye, Pe); var Te = Pe; function De(t) { return (De = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function Ae(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function Ce(t, e) { return (Ce = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function Le(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = Re(n); return t = r ? (t = Re(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== De(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function Re(t) { return (Re = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var Ie = "bs.alert", e = ".".concat(Ie), Ne = "close".concat(e), Me = "closed".concat(e), At = "click".concat(e).concat(".data-api"), e = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && Ce(t, e) }(o, jt); var t, e, n, r = Le(o); function o() { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), r.apply(this, arguments) } return t = o, n = [{ key: "DATA_KEY", get: function() { return Ie } }, { key: "jQueryInterface", value: function(e) { return this.each(function() { var t = (t = it.getData(this, Ie)) || new o(this); "close" === e && t[e](this) }) } }, { key: "handleDismiss", value: function(e) { return function(t) { t && t.preventDefault(), e.close(this) } } }], (e = [{ key: "close", value: function(t) { var e = t ? this._getRootElement(t) : this._element, t = this._triggerCloseEvent(e); null === t || t.defaultPrevented || this._removeElement(e) } }, { key: "_getRootElement", value: function(t) { return U(t) || t.closest(".".concat("alert")) } }, { key: "_triggerCloseEvent", value: function(t) { return Ot.trigger(t, Ne) } }, { key: "_removeElement", value: function(t) { var e, n = this; t.classList.remove("show"), t.classList.contains("fade") ? (e = W(t), Ot.one(t, "transitionend", function() { return n._destroyElement(t) }), z(t, e)) : this._destroyElement(t) } }, { key: "_destroyElement", value: function(t) { t.parentNode && t.parentNode.removeChild(t), Ot.trigger(t, Me) } }]) && Ae(t.prototype, e), n && Ae(t, n), o }(); Ot.on(document, At, '[data-mdb-dismiss="alert"]', e.handleDismiss(new e)), rt("alert", e); var He = e; function Be(t) { return (Be = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function Ue(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function We(t, e, n) { return (We = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = ze(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function Fe(t, e) { return (Fe = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function Qe(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = ze(n); return t = r ? (t = ze(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== Be(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function ze(t) { return (ze = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var Ke = "alert", At = "mdb.".concat(Ke), e = ".".concat(At), Ye = "close.bs.alert", qe = "closed.bs.alert", Ve = "close".concat(e), Xe = "closed".concat(e), $e = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && Fe(t, e) }(o, He); var t, e, n, r = Qe(o); function o(t) { var e = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}; return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (e = r.call(this, t, e))._init(), e } return t = o, n = [{ key: "NAME", get: function() { return Ke } }], (e = [{ key: "dispose", value: function() { D.off(this._element, Ye), D.off(this._element, qe), We(ze(o.prototype), "dispose", this).call(this) } }, { key: "_init", value: function() { this._bindCloseEvent(), this._bindClosedEvent() } }, { key: "_bindCloseEvent", value: function() { var t = this; D.on(this._element, Ye, function() { D.trigger(t._element, Ve) }) } }, { key: "_bindClosedEvent", value: function() { var t = this; D.on(this._element, qe, function() { D.trigger(t._element, Xe) }) } }]) && Ue(t.prototype, e), n && Ue(t, n), o }(); Z.find(".alert").forEach(function(t) { $e.getInstance(t) || new $e(t) }), u(function() { var t, e = r(); e && (t = e.fn[Ke], e.fn[Ke] = $e.jQueryInterface, e.fn[Ke].Constructor = $e, e.fn[Ke].noConflict = function() { return e.fn[Ke] = t, $e.jQueryInterface }) }); var Ge = $e; n(54); function Je(t) { return (Je = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function Ze(e, t) { var n, r = Object.keys(e); return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(e), t && (n = n.filter(function(t) { return Object.getOwnPropertyDescriptor(e, t).enumerable })), r.push.apply(r, n)), r } function tn(r) { for (var t = 1; t < arguments.length; t++) { var o = null != arguments[t] ? arguments[t] : {}; t % 2 ? Ze(Object(o), !0).forEach(function(t) { var e, n; e = r, t = o[n = t], n in e ? Object.defineProperty(e, n, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = t }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(r, Object.getOwnPropertyDescriptors(o)) : Ze(Object(o)).forEach(function(t) { Object.defineProperty(r, t, Object.getOwnPropertyDescriptor(o, t)) }) } return r } function en(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function nn(t, e, n) { return (nn = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = cn(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function rn(t, e) { return (rn = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function on(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = cn(n); return t = r ? (t = cn(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== Je(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function cn(t) { return (cn = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var an = "carousel", un = "bs.carousel", sn = ".".concat(un), At = ".data-api", ln = { interval: 5e3, keyboard: !0, slide: !1, pause: "hover", wrap: !0, touch: !0 }, fn = { interval: "(number|boolean)", keyboard: "boolean", slide: "(boolean|string)", pause: "(string|boolean)", wrap: "boolean", touch: "boolean" }, pn = "next", dn = "prev", hn = "slide".concat(sn), yn = "slid".concat(sn), gn = "keydown".concat(sn), vn = "mouseenter".concat(sn), mn = "mouseleave".concat(sn), bn = "touchstart".concat(sn), _n = "touchmove".concat(sn), wn = "touchend".concat(sn), On = "pointerdown".concat(sn), En = "pointerup".concat(sn), jn = "dragstart".concat(sn), e = "load".concat(sn).concat(At), At = "click".concat(sn).concat(At), kn = "active", Sn = ".active.carousel-item", xn = ".carousel-indicators", Pn = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && rn(t, e) }(i, jt); var t, e, n, r = on(i); function i(t, e) { return function(t) { if (!(t instanceof i)) throw new TypeError("Cannot call a class as a function") }(this), (t = r.call(this, t))._items = null, t._interval = null, t._activeElement = null, t._isPaused = !1, t._isSliding = !1, t.touchTimeout = null, t.touchStartX = 0, t.touchDeltaX = 0, t._config = t._getConfig(e), t._indicatorsElement = ce.findOne(xn, t._element), t._touchSupported = "ontouchstart" in document.documentElement || 0 < navigator.maxTouchPoints, t._pointerEvent = Boolean(window.PointerEvent), t._addEventListeners(), t } return t = i, n = [{ key: "Default", get: function() { return ln } }, { key: "DATA_KEY", get: function() { return un } }, { key: "carouselInterface", value: function(t, e) { var n = it.getData(t, un), r = tn(tn({}, ln), re.getDataAttributes(t)); "object" === Je(e) && (r = tn(tn({}, r), e)); var o = "string" == typeof e ? e : r.slide, n = n || new i(t, r); if ("number" == typeof e) n.to(e); else if ("string" == typeof o) { if (void 0 === n[o]) throw new TypeError('No method named "'.concat(o, '"')); n[o]() } else r.interval && r.ride && (n.pause(), n.cycle()) } }, { key: "jQueryInterface", value: function(t) { return this.each(function() { i.carouselInterface(this, t) }) } }, { key: "dataApiClickHandler", value: function(t) { var e, n, r = U(this); r && r.classList.contains("carousel") && (e = tn(tn({}, re.getDataAttributes(r)), re.getDataAttributes(this)), (n = this.getAttribute("data-mdb-slide-to")) && (e.interval = !1), i.carouselInterface(r, e), n && it.getData(r, un).to(n), t.preventDefault()) } }], (e = [{ key: "next", value: function() { this._isSliding || this._slide(pn) } }, { key: "nextWhenVisible", value: function() { !document.hidden && Y(this._element) && this.next() } }, { key: "prev", value: function() { this._isSliding || this._slide(dn) } }, { key: "pause", value: function(t) { t || (this._isPaused = !0), ce.findOne(".carousel-item-next, .carousel-item-prev", this._element) && (F(this._element), this.cycle(!0)), clearInterval(this._interval), this._interval = null } }, { key: "cycle", value: function(t) { t || (this._isPaused = !1), this._interval && (clearInterval(this._interval), this._interval = null), this._config && this._config.interval && !this._isPaused && (this._updateInterval(), this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval)) } }, { key: "to", value: function(t) { var e = this; this._activeElement = ce.findOne(Sn, this._element); var n = this._getItemIndex(this._activeElement); if (!(t > this._items.length - 1 || t < 0)) if (this._isSliding) Ot.one(this._element, yn, function() { return e.to(t) }); else { if (n === t) return this.pause(), void this.cycle(); n = n < t ? pn : dn; this._slide(n, this._items[t]) } } }, { key: "dispose", value: function() { nn(cn(i.prototype), "dispose", this).call(this), Ot.off(this._element, sn), this._items = null, this._config = null, this._interval = null, this._isPaused = null, this._isSliding = null, this._activeElement = null, this._indicatorsElement = null } }, { key: "_getConfig", value: function(t) { return t = tn(tn({}, ln), t), K(an, t, fn), t } }, { key: "_handleSwipe", value: function() { var t = Math.abs(this.touchDeltaX); t <= 40 || (t = t / this.touchDeltaX, (this.touchDeltaX = 0) < t && (nt ? this.next() : this.prev()), t < 0 && (nt ? this.prev() : this.next())) } }, { key: "_addEventListeners", value: function() { var e = this; this._config.keyboard && Ot.on(this._element, gn, function(t) { return e._keydown(t) }), "hover" === this._config.pause && (Ot.on(this._element, vn, function(t) { return e.pause(t) }), Ot.on(this._element, mn, function(t) { return e.cycle(t) })), this._config.touch && this._touchSupported && this._addTouchEventListeners() } }, { key: "_addTouchEventListeners", value: function() { function t(t) { !n._pointerEvent || "pen" !== t.pointerType && "touch" !== t.pointerType ? n._pointerEvent || (n.touchStartX = t.touches[0].clientX) : n.touchStartX = t.clientX } function e(t) { !n._pointerEvent || "pen" !== t.pointerType && "touch" !== t.pointerType || (n.touchDeltaX = t.clientX - n.touchStartX), n._handleSwipe(), "hover" === n._config.pause && (n.pause(), n.touchTimeout && clearTimeout(n.touchTimeout), n.touchTimeout = setTimeout(function(t) { return n.cycle(t) }, 500 + n._config.interval)) } var n = this; ce.find(".carousel-item img", this._element).forEach(function(t) { Ot.on(t, jn, function(t) { return t.preventDefault() }) }), this._pointerEvent ? (Ot.on(this._element, On, t), Ot.on(this._element, En, e), this._element.classList.add("pointer-event")) : (Ot.on(this._element, bn, t), Ot.on(this._element, _n, function(t) { (t = t).touches && 1 < t.touches.length ? n.touchDeltaX = 0 : n.touchDeltaX = t.touches[0].clientX - n.touchStartX }), Ot.on(this._element, wn, e)) } }, { key: "_keydown", value: function(t) { /input|textarea/i.test(t.target.tagName) || ("ArrowLeft" === t.key ? (t.preventDefault(), nt ? this.next() : this.prev()) : "ArrowRight" === t.key && (t.preventDefault(), nt ? this.prev() : this.next())) } }, { key: "_getItemIndex", value: function(t) { return this._items = t && t.parentNode ? ce.find(".carousel-item", t.parentNode) : [], this._items.indexOf(t) } }, { key: "_getItemByDirection", value: function(t, e) { var n = t === pn, r = t === dn, o = this._getItemIndex(e), i = this._items.length - 1; if ((r && 0 === o || n && o === i) && !this._config.wrap) return e; t = (o + (t === dn ? -1 : 1)) % this._items.length; return -1 == t ? this._items[this._items.length - 1] : this._items[t] } }, { key: "_triggerSlideEvent", value: function(t, e) { var n = this._getItemIndex(t), r = this._getItemIndex(ce.findOne(Sn, this._element)); return Ot.trigger(this._element, hn, { relatedTarget: t, direction: e, from: r, to: n }) } }, { key: "_setActiveIndicatorElement", value: function(t) { if (this._indicatorsElement) { var e = ce.findOne(".active", this._indicatorsElement); e.classList.remove(kn), e.removeAttribute("aria-current"); for (var n = ce.find("[data-mdb-target]", this._indicatorsElement), r = 0; r < n.length; r++) if (Number.parseInt(n[r].getAttribute("data-mdb-slide-to"), 10) === this._getItemIndex(t)) { n[r].classList.add(kn), n[r].setAttribute("aria-current", "true"); break } } } }, { key: "_updateInterval", value: function() { var t = this._activeElement || ce.findOne(Sn, this._element); t && ((t = Number.parseInt(t.getAttribute("data-mdb-interval"), 10)) ? (this._config.defaultInterval = this._config.defaultInterval || this._config.interval, this._config.interval = t) : this._config.interval = this._config.defaultInterval || this._config.interval) } }, { key: "_slide", value: function(t, e) { var n = this, r = ce.findOne(Sn, this._element), o = this._getItemIndex(r), i = e || r && this._getItemByDirection(t, r), c = this._getItemIndex(i), e = Boolean(this._interval), a = t === pn ? "carousel-item-start" : "carousel-item-end", u = t === pn ? "carousel-item-next" : "carousel-item-prev", s = t === pn ? "left" : "right"; i && i.classList.contains(kn) ? this._isSliding = !1 : this._triggerSlideEvent(i, s).defaultPrevented || r && i && (this._isSliding = !0, e && this.pause(), this._setActiveIndicatorElement(i), this._activeElement = i, this._element.classList.contains("slide") ? (i.classList.add(u), X(i), r.classList.add(a), i.classList.add(a), t = W(r), Ot.one(r, "transitionend", function() { i.classList.remove(a, u), i.classList.add(kn), r.classList.remove(kn, u, a), n._isSliding = !1, setTimeout(function() { Ot.trigger(n._element, yn, { relatedTarget: i, direction: s, from: o, to: c }) }, 0) }), z(r, t)) : (r.classList.remove(kn), i.classList.add(kn), this._isSliding = !1, Ot.trigger(this._element, yn, { relatedTarget: i, direction: s, from: o, to: c })), e && this.cycle()) } }]) && en(t.prototype, e), n && en(t, n), i }(); Ot.on(document, At, "[data-mdb-slide], [data-mdb-slide-to]", Pn.dataApiClickHandler), Ot.on(window, e, function() { for (var t = ce.find('[data-mdb-ride="carousel"]'), e = 0, n = t.length; e < n; e++) Pn.carouselInterface(t[e], it.getData(t[e], un)) }), rt(an, Pn); var Tn = Pn; function Dn(t) { return (Dn = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function An(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function Cn(t, e, n) { return (Cn = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = In(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function Ln(t, e) { return (Ln = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function Rn(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = In(n); return t = r ? (t = In(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== Dn(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function In(t) { return (In = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var Nn = "carousel", At = "mdb.".concat(Nn), e = ".".concat(At), Mn = "slide.bs.carousel", Hn = "slid.bs.carousel", Bn = "slide".concat(e), Un = "slid".concat(e), Wn = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && Ln(t, e) }(o, Tn); var t, e, n, r = Rn(o); function o(t, e) { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (e = r.call(this, t, e))._init(), e } return t = o, n = [{ key: "NAME", get: function() { return Nn } }], (e = [{ key: "dispose", value: function() { D.off(this._element, Mn), D.off(this._element, Hn), Cn(In(o.prototype), "dispose", this).call(this) } }, { key: "_init", value: function() { this._bindSlideEvent(), this._bindSlidEvent() } }, { key: "_bindSlideEvent", value: function() { var e = this; D.on(this._element, Mn, function(t) { D.trigger(e._element, Bn, { relatedTarget: t.relatedTarget, direction: t.direction, from: t.from, to: t.to }) }) } }, { key: "_bindSlidEvent", value: function() { var e = this; D.on(this._element, Hn, function(t) { D.trigger(e._element, Un, { relatedTarget: t.relatedTarget, direction: t.direction, from: t.from, to: t.to }) }) } }]) && An(t.prototype, e), n && An(t, n), o }(); Z.find('[data-mdb-ride="carousel"]').forEach(function(t) { Wn.getInstance(t) || new Wn(t) }), u(function() { var t, e = r(); e && (t = e.fn[Nn], e.fn[Nn] = Wn.jQueryInterface, e.fn[Nn].Constructor = Wn, e.fn[Nn].noConflict = function() { return e.fn[Nn] = t, Wn.jQueryInterface }) }); var Fn = Wn; function Qn(t) { return (Qn = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function zn(e, t) { var n, r = Object.keys(e); return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(e), t && (n = n.filter(function(t) { return Object.getOwnPropertyDescriptor(e, t).enumerable })), r.push.apply(r, n)), r } function Kn(r) { for (var t = 1; t < arguments.length; t++) { var o = null != arguments[t] ? arguments[t] : {}; t % 2 ? zn(Object(o), !0).forEach(function(t) { var e, n; e = r, t = o[n = t], n in e ? Object.defineProperty(e, n, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = t }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(r, Object.getOwnPropertyDescriptors(o)) : zn(Object(o)).forEach(function(t) { Object.defineProperty(r, t, Object.getOwnPropertyDescriptor(o, t)) }) } return r } function Yn(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function qn(t, e, n) { return (qn = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = $n(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function Vn(t, e) { return (Vn = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function Xn(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = $n(n); return t = r ? (t = $n(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== Qn(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function $n(t) { return ($n = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var Gn = "bs.modal", Jn = ".".concat(Gn), Zn = { backdrop: !0, keyboard: !0, focus: !0 }, tr = { backdrop: "(boolean|string)", keyboard: "boolean", focus: "boolean" }, er = "hide".concat(Jn), nr = "hidePrevented".concat(Jn), rr = "hidden".concat(Jn), or = "show".concat(Jn), ir = "shown".concat(Jn), cr = "focusin".concat(Jn), ar = "resize".concat(Jn), ur = "click.dismiss".concat(Jn), sr = "keydown.dismiss".concat(Jn), lr = "mouseup.dismiss".concat(Jn), fr = "mousedown.dismiss".concat(Jn), At = "click".concat(Jn).concat(".data-api"), pr = "modal-open", dr = "fade", hr = "show", yr = "modal-static", gr = ".modal-dialog", vr = ".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", mr = ".sticky-top", br = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && Vn(t, e) }(o, jt); var t, e, n, r = Xn(o); function o(t, e) { var n; return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (n = r.call(this, t))._config = n._getConfig(e), n._dialog = ce.findOne(gr, t), n._backdrop = null, n._isShown = !1, n._isBodyOverflowing = !1, n._ignoreBackdropClick = !1, n._isTransitioning = !1, n._scrollbarWidth = 0, n } return t = o, n = [{ key: "Default", get: function() { return Zn } }, { key: "DATA_KEY", get: function() { return Gn } }, { key: "jQueryInterface", value: function(n, r) { return this.each(function() { var t = it.getData(this, Gn), e = Kn(Kn(Kn({}, Zn), re.getDataAttributes(this)), "object" === Qn(n) && n ? n : {}), t = t || new o(this, e); if ("string" == typeof n) { if (void 0 === t[n]) throw new TypeError('No method named "'.concat(n, '"')); t[n](r) } }) } }], (e = [{ key: "toggle", value: function(t) { return this._isShown ? this.hide() : this.show(t) } }, { key: "show", value: function(t) { var e, n = this; this._isShown || this._isTransitioning || (this._element.classList.contains(dr) && (this._isTransitioning = !0), e = Ot.trigger(this._element, or, { relatedTarget: t }), this._isShown || e.defaultPrevented || (this._isShown = !0, this._checkScrollbar(), this._setScrollbar(), this._adjustDialog(), this._setEscapeEvent(), this._setResizeEvent(), Ot.on(this._element, ur, '[data-mdb-dismiss="modal"]', function(t) { return n.hide(t) }), Ot.on(this._dialog, fr, function() { Ot.one(n._element, lr, function(t) { t.target === n._element && (n._ignoreBackdropClick = !0) }) }), this._showBackdrop(function() { return n._showElement(t) }))) } }, { key: "hide", value: function(t) { var e = this; t && t.preventDefault(), this._isShown && !this._isTransitioning && (Ot.trigger(this._element, er).defaultPrevented || (this._isShown = !1, (t = this._element.classList.contains(dr)) && (this._isTransitioning = !0), this._setEscapeEvent(), this._setResizeEvent(), Ot.off(document, cr), this._element.classList.remove(hr), Ot.off(this._element, ur), Ot.off(this._dialog, fr), t ? (t = W(this._element), Ot.one(this._element, "transitionend", function(t) { return e._hideModal(t) }), z(this._element, t)) : this._hideModal())) } }, { key: "dispose", value: function() { [window, this._element, this._dialog].forEach(function(t) { return Ot.off(t, Jn) }), qn($n(o.prototype), "dispose", this).call(this), Ot.off(document, cr), this._config = null, this._dialog = null, this._backdrop = null, this._isShown = null, this._isBodyOverflowing = null, this._ignoreBackdropClick = null, this._isTransitioning = null, this._scrollbarWidth = null } }, { key: "handleUpdate", value: function() { this._adjustDialog() } }, { key: "_getConfig", value: function(t) { return t = Kn(Kn(Kn({}, Zn), re.getDataAttributes(this._element)), t), K("modal", t, tr), t } }, { key: "_showElement", value: function(t) { var e = this, n = this._element.classList.contains(dr), r = ce.findOne(".modal-body", this._dialog); this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE || document.body.appendChild(this._element), this._element.style.display = "block", this._element.removeAttribute("aria-hidden"), this._element.setAttribute("aria-modal", !0), this._element.setAttribute("role", "dialog"), this._element.scrollTop = 0, r && (r.scrollTop = 0), n && X(this._element), this._element.classList.add(hr), this._config.focus && this._enforceFocus(); r = function() { e._config.focus && e._element.focus(), e._isTransitioning = !1, Ot.trigger(e._element, ir, { relatedTarget: t }) }; n ? (n = W(this._dialog), Ot.one(this._dialog, "transitionend", r), z(this._dialog, n)) : r() } }, { key: "_enforceFocus", value: function() { var e = this; Ot.off(document, cr), Ot.on(document, cr, function(t) { document === t.target || e._element === t.target || e._element.contains(t.target) || e._element.focus() }) } }, { key: "_setEscapeEvent", value: function() { var e = this; this._isShown ? Ot.on(this._element, sr, function(t) { e._config.keyboard && "Escape" === t.key ? (t.preventDefault(), e.hide()) : e._config.keyboard || "Escape" !== t.key || e._triggerBackdropTransition() }) : Ot.off(this._element, sr) } }, { key: "_setResizeEvent", value: function() { var t = this; this._isShown ? Ot.on(window, ar, function() { return t._adjustDialog() }) : Ot.off(window, ar) } }, { key: "_hideModal", value: function() { var t = this; this._element.style.display = "none", this._element.setAttribute("aria-hidden", !0), this._element.removeAttribute("aria-modal"), this._element.removeAttribute("role"), this._isTransitioning = !1, this._showBackdrop(function() { document.body.classList.remove(pr), t._resetAdjustments(), t._resetScrollbar(), Ot.trigger(t._element, rr) }) } }, { key: "_removeBackdrop", value: function() { this._backdrop.parentNode.removeChild(this._backdrop), this._backdrop = null } }, { key: "_showBackdrop", value: function(t) { var e, n = this, r = this._element.classList.contains(dr) ? dr : ""; this._isShown && this._config.backdrop ? (this._backdrop = document.createElement("div"), this._backdrop.className = "modal-backdrop", r && this._backdrop.classList.add(r), document.body.appendChild(this._backdrop), Ot.on(this._element, ur, function(t) { n._ignoreBackdropClick ? n._ignoreBackdropClick = !1 : t.target === t.currentTarget && ("static" === n._config.backdrop ? n._triggerBackdropTransition() : n.hide()) }), r && X(this._backdrop), this._backdrop.classList.add(hr), r ? (e = W(this._backdrop), Ot.one(this._backdrop, "transitionend", t), z(this._backdrop, e)) : t()) : !this._isShown && this._backdrop ? (this._backdrop.classList.remove(hr), r = function() { n._removeBackdrop(), t() }, this._element.classList.contains(dr) ? (e = W(this._backdrop), Ot.one(this._backdrop, "transitionend", r), z(this._backdrop, e)) : r()) : t() } }, { key: "_triggerBackdropTransition", value: function() { var t, e, n = this; Ot.trigger(this._element, nr).defaultPrevented || ((t = this._element.scrollHeight > document.documentElement.clientHeight) || (this._element.style.overflowY = "hidden"), this._element.classList.add(yr), e = W(this._dialog), Ot.off(this._element, "transitionend"), Ot.one(this._element, "transitionend", function() { n._element.classList.remove(yr), t || (Ot.one(n._element, "transitionend", function() { n._element.style.overflowY = "" }), z(n._element, e)) }), z(this._element, e), this._element.focus()) } }, { key: "_adjustDialog", value: function() { var t = this._element.scrollHeight > document.documentElement.clientHeight; (!this._isBodyOverflowing && t && !nt || this._isBodyOverflowing && !t && nt) && (this._element.style.paddingLeft = "".concat(this._scrollbarWidth, "px")), (this._isBodyOverflowing && !t && !nt || !this._isBodyOverflowing && t && nt) && (this._element.style.paddingRight = "".concat(this._scrollbarWidth, "px")) } }, { key: "_resetAdjustments", value: function() { this._element.style.paddingLeft = "", this._element.style.paddingRight = "" } }, { key: "_checkScrollbar", value: function() { var t = document.body.getBoundingClientRect(); this._isBodyOverflowing = Math.round(t.left + t.right) < window.innerWidth, this._scrollbarWidth = this._getScrollbarWidth() } }, { key: "_setScrollbar", value: function() { var e = this; this._isBodyOverflowing && (this._setElementAttributes(vr, "paddingRight", function(t) { return t + e._scrollbarWidth }), this._setElementAttributes(mr, "marginRight", function(t) { return t - e._scrollbarWidth }), this._setElementAttributes("body", "paddingRight", function(t) { return t + e._scrollbarWidth })), document.body.classList.add(pr) } }, { key: "_setElementAttributes", value: function(t, r, o) { ce.find(t).forEach(function(t) { var e = t.style[r], n = window.getComputedStyle(t)[r]; re.setDataAttribute(t, r, e), t.style[r] = o(Number.parseFloat(n)) + "px" }) } }, { key: "_resetScrollbar", value: function() { this._resetElementAttributes(vr, "paddingRight"), this._resetElementAttributes(mr, "marginRight"), this._resetElementAttributes("body", "paddingRight") } }, { key: "_resetElementAttributes", value: function(t, n) { ce.find(t).forEach(function(t) { var e = re.getDataAttribute(t, n); void 0 === e && t === document.body ? t.style[n] = "" : (re.removeDataAttribute(t, n), t.style[n] = e) }) } }, { key: "_getScrollbarWidth", value: function() { var t = document.createElement("div"); t.className = "modal-scrollbar-measure", document.body.appendChild(t); var e = t.getBoundingClientRect().width - t.clientWidth; return document.body.removeChild(t), e } }]) && Yn(t.prototype, e), n && Yn(t, n), o }(); Ot.on(document, At, '[data-mdb-toggle="modal"]', function(t) { var e = this, n = U(this); "A" !== this.tagName && "AREA" !== this.tagName || t.preventDefault(), Ot.one(n, or, function(t) { t.defaultPrevented || Ot.one(n, rr, function() { Y(e) && e.focus() }) }); var r = it.getData(n, Gn); r || (t = Kn(Kn({}, re.getDataAttributes(n)), re.getDataAttributes(this)), r = new br(n, t)), r.toggle(this) }), rt("modal", br); var _r = br; function wr(t) { return (wr = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function Or(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function Er(t, e, n) { return (Er = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = Sr(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function jr(t, e) { return (jr = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function kr(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = Sr(n); return t = r ? (t = Sr(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== wr(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function Sr(t) { return (Sr = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var xr = "modal", e = "mdb.".concat(xr), At = ".".concat(e), Pr = "hide.bs.modal", Tr = "hidePrevented.bs.modal", Dr = "hidden.bs.modal", Ar = "show.bs.modal", Cr = "shown.bs.modal", Lr = "hide".concat(At), Rr = "hidePrevented".concat(At), Ir = "hidden".concat(At), Nr = "show".concat(At), Mr = "shown".concat(At), Hr = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && jr(t, e) }(o, _r); var t, e, n, r = kr(o); function o(t, e) { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (e = r.call(this, t, e))._init(), e } return t = o, n = [{ key: "NAME", get: function() { return xr } }], (e = [{ key: "dispose", value: function() { D.off(this._element, Ar), D.off(this._element, Cr), D.off(this._element, Pr), D.off(this._element, Dr), D.off(this._element, Tr), Er(Sr(o.prototype), "dispose", this).call(this) } }, { key: "_init", value: function() { this._bindShowEvent(), this._bindShownEvent(), this._bindHideEvent(), this._bindHiddenEvent(), this._bindHidePreventedEvent() } }, { key: "_bindShowEvent", value: function() { var e = this; D.on(this._element, Ar, function(t) { D.trigger(e._element, Nr, { relatedTarget: t.relatedTarget }) }) } }, { key: "_bindShownEvent", value: function() { var e = this; D.on(this._element, Cr, function(t) { D.trigger(e._element, Mr, { relatedTarget: t.relatedTarget }) }) } }, { key: "_bindHideEvent", value: function() { var t = this; D.on(this._element, Pr, function() { D.trigger(t._element, Lr) }) } }, { key: "_bindHiddenEvent", value: function() { var t = this; D.on(this._element, Dr, function() { D.trigger(t._element, Ir) }) } }, { key: "_bindHidePreventedEvent", value: function() { var t = this; D.on(this._element, Tr, function() { D.trigger(t._element, Rr) }) } }]) && Or(t.prototype, e), n && Or(t, n), o }(); Z.find('[data-mdb-toggle="modal"]').forEach(function(t) { t = function(t) { t = i(t); return t && document.querySelector(t) ? t : null }(t), t = Z.findOne(t), Hr.getInstance(t) || new Hr(t) }), u(function() { var t, e = r(); e && (t = e.fn[xr], e.fn[xr] = Hr.jQueryInterface, e.fn[xr].Constructor = Hr, e.fn[xr].noConflict = function() { return e.fn[xr] = t, Hr.jQueryInterface }) }); var Br = Hr, Ur = (n(25), "top"), Wr = "bottom", Fr = "right", Qr = "left", zr = "auto", Kr = [Ur, Wr, Fr, Qr], Yr = "start", qr = "end", Vr = "clippingParents", Xr = "viewport", $r = "popper", Gr = "reference", Jr = Kr.reduce(function(t, e) { return t.concat([e + "-" + Yr, e + "-" + qr]) }, []), Zr = [].concat(Kr, [zr]).reduce(function(t, e) { return t.concat([e, e + "-" + Yr, e + "-" + qr]) }, []), to = "beforeRead", eo = "read", no = "afterRead", ro = "beforeMain", oo = "main", io = "afterMain", co = "beforeWrite", ao = "write", uo = "afterWrite", so = [to, eo, no, ro, oo, io, co, ao, uo]; function lo(t) { return t ? (t.nodeName || "").toLowerCase() : null } function fo(t) { if ("[object Window]" === t.toString()) return t; t = t.ownerDocument; return t && t.defaultView || window } function po(t) { return t instanceof fo(t).Element || t instanceof Element } function ho(t) { return t instanceof fo(t).HTMLElement || t instanceof HTMLElement } function yo(t) { return t instanceof fo(t).ShadowRoot || t instanceof ShadowRoot } var go = { name: "applyStyles", enabled: !0, phase: "write", fn: function(t) { var o = t.state; Object.keys(o.elements).forEach(function(t) { var e = o.styles[t] || {}, n = o.attributes[t] || {}, r = o.elements[t]; ho(r) && lo(r) && (Object.assign(r.style, e), Object.keys(n).forEach(function(t) { var e = n[t]; !1 === e ? r.removeAttribute(t) : r.setAttribute(t, !0 === e ? "" : e) })) }) }, effect: function(t) { var r = t.state, o = { popper: { position: r.options.strategy, left: "0", top: "0", margin: "0" }, arrow: { position: "absolute" }, reference: {} }; return Object.assign(r.elements.popper.style, o.popper), r.styles = o, r.elements.arrow && Object.assign(r.elements.arrow.style, o.arrow), function() { Object.keys(r.elements).forEach(function(t) { var e = r.elements[t], n = r.attributes[t] || {}, t = Object.keys((r.styles.hasOwnProperty(t) ? r.styles : o)[t]).reduce(function(t, e) { return t[e] = "", t }, {}); ho(e) && lo(e) && (Object.assign(e.style, t), Object.keys(n).forEach(function(t) { e.removeAttribute(t) })) }) } }, requires: ["computeStyles"] }; function vo(t) { return t.split("-")[0] } function mo(t) { return { x: t.offsetLeft, y: t.offsetTop, width: t.offsetWidth, height: t.offsetHeight } } function bo(t, e) { var n = e.getRootNode && e.getRootNode(); if (t.contains(e)) return !0; if (n && yo(n)) { var r = e; do { if (r && t.isSameNode(r)) return !0 } while (r = r.parentNode || r.host) } return !1 } function _o(t) { return fo(t).getComputedStyle(t) } function wo(t) { return ((po(t) ? t.ownerDocument : t.document) || window.document).documentElement } function Oo(t) { return "html" === lo(t) ? t : t.assignedSlot || t.parentNode || (yo(t) ? t.host : null) || wo(t) } function Eo(t) { return ho(t) && "fixed" !== _o(t).position ? t.offsetParent : null } function jo(t) { for (var e = fo(t), n = Eo(t); n && 0 <= ["table", "td", "th"].indexOf(lo(n)) && "static" === _o(n).position;) n = Eo(n); return (!n || "html" !== lo(n) && ("body" !== lo(n) || "static" !== _o(n).position)) && (n || function(t) { for (var e = navigator.userAgent.toLowerCase().includes("firefox"), n = Oo(t); ho(n) && ["html", "body"].indexOf(lo(n)) < 0;) { var r = _o(n); if ("none" !== r.transform || "none" !== r.perspective || "paint" === r.contain || ["transform", "perspective"].includes(r.willChange) || e && "filter" === r.willChange || e && r.filter && "none" !== r.filter) return n; n = n.parentNode } return null }(t)) || e } function ko(t) { return 0 <= ["top", "bottom"].indexOf(t) ? "x" : "y" } var So = Math.max, xo = Math.min, Po = Math.round; function To(t, e, n) { return So(t, xo(e, n)) } function Do() { return { top: 0, right: 0, bottom: 0, left: 0 } } function Ao(t) { return Object.assign({}, Do(), t) } function Co(n, t) { return t.reduce(function(t, e) { return t[e] = n, t }, {}) } var Lo = { name: "arrow", enabled: !0, phase: "main", fn: function(t) { var e, n, r, o = t.state, i = t.name, c = o.elements.arrow, a = o.modifiersData.popperOffsets, u = vo(o.placement), s = ko(u), l = 0 <= [Qr, Fr].indexOf(u) ? "height" : "width"; c && a && (e = o.modifiersData[i + "#persistent"].padding, n = mo(c), r = "y" === s ? Ur : Qr, t = "y" === s ? Wr : Fr, u = o.rects.reference[l] + o.rects.reference[s] - a[s] - o.rects.popper[l], a = a[s] - o.rects.reference[s], c = (c = jo(c)) ? "y" === s ? c.clientHeight || 0 : c.clientWidth || 0 : 0, a = u / 2 - a / 2, r = e[r], t = c - n[l] - e[t], t = To(r, a = c / 2 - n[l] / 2 + a, t), o.modifiersData[i] = ((i = {})[s] = t, i.centerOffset = t - a, i)) }, effect: function(t) { var e = t.state, n = t.options, r = t.name, t = void 0 === (t = n.element) ? "[data-popper-arrow]" : t, n = void 0 === (n = n.padding) ? 0 : n; null != t && ("string" != typeof t || (t = e.elements.popper.querySelector(t))) && bo(e.elements.popper, t) && (n = "function" == typeof n ? n(Object.assign({}, e.rects, { placement: e.placement })) : n, e.elements.arrow = t, e.modifiersData[r + "#persistent"] = { padding: Ao("number" != typeof n ? n : Co(n, Kr)) }) }, requires: ["popperOffsets"], requiresIfExists: ["preventOverflow"] }, Ro = { top: "auto", right: "auto", bottom: "auto", left: "auto" }; function Io(t) { var e = t.popper, n = t.popperRect, r = t.placement, o = t.offsets, i = t.position, c = t.gpuAcceleration, a = t.adaptive, u = t.roundOffsets, s = !0 === u ? (d = (y = o).x, h = y.y, y = window.devicePixelRatio || 1, { x: Po(Po(d * y) / y) || 0, y: Po(Po(h * y) / y) || 0 }) : "function" == typeof u ? u(o) : o, l = s.x, f = void 0 === l ? 0 : l, p = s.y, t = void 0 === p ? 0 : p, d = o.hasOwnProperty("x"), h = o.hasOwnProperty("y"), y = Qr, u = Ur, l = window; a && (s = "clientHeight", p = "clientWidth", (o = jo(e)) === fo(e) && "static" !== _o(o = wo(e)).position && (s = "scrollHeight", p = "scrollWidth"), r === Ur && (u = Wr, t -= o[s] - n.height, t *= c ? 1 : -1), r === Qr && (y = Fr, f -= o[p] - n.width, f *= c ? 1 : -1)); var a = Object.assign({ position: i }, a && Ro); return c ? Object.assign({}, a, ((c = {})[u] = h ? "0" : "", c[y] = d ? "0" : "", c.transform = (l.devicePixelRatio || 1) < 2 ? "translate(" + f + "px, " + t + "px)" : "translate3d(" + f + "px, " + t + "px, 0)", c)) : Object.assign({}, a, ((a = {})[u] = h ? t + "px" : "", a[y] = d ? f + "px" : "", a.transform = "", a)) } var No = { name: "computeStyles", enabled: !0, phase: "beforeWrite", fn: function(t) { var e = t.state, n = t.options, t = void 0 === (r = n.gpuAcceleration) || r, r = void 0 === (r = n.adaptive) || r, n = void 0 === (n = n.roundOffsets) || n, t = { placement: vo(e.placement), popper: e.elements.popper, popperRect: e.rects.popper, gpuAcceleration: t }; null != e.modifiersData.popperOffsets && (e.styles.popper = Object.assign({}, e.styles.popper, Io(Object.assign({}, t, { offsets: e.modifiersData.popperOffsets, position: e.options.strategy, adaptive: r, roundOffsets: n })))), null != e.modifiersData.arrow && (e.styles.arrow = Object.assign({}, e.styles.arrow, Io(Object.assign({}, t, { offsets: e.modifiersData.arrow, position: "absolute", adaptive: !1, roundOffsets: n })))), e.attributes.popper = Object.assign({}, e.attributes.popper, { "data-popper-placement": e.placement }) }, data: {} }, Mo = { passive: !0 }; var Ho = { name: "eventListeners", enabled: !0, phase: "write", fn: function() {}, effect: function(t) { var e = t.state, n = t.instance, r = t.options, o = void 0 === (t = r.scroll) || t, i = void 0 === (r = r.resize) || r, c = fo(e.elements.popper), a = [].concat(e.scrollParents.reference, e.scrollParents.popper); return o && a.forEach(function(t) { t.addEventListener("scroll", n.update, Mo) }), i && c.addEventListener("resize", n.update, Mo), function() { o && a.forEach(function(t) { t.removeEventListener("scroll", n.update, Mo) }), i && c.removeEventListener("resize", n.update, Mo) } }, data: {} }, Bo = { left: "right", right: "left", bottom: "top", top: "bottom" }; function Uo(t) { return t.replace(/left|right|bottom|top/g, function(t) { return Bo[t] }) } var Wo = { start: "end", end: "start" }; function Fo(t) { return t.replace(/start|end/g, function(t) { return Wo[t] }) } function Qo(t) { t = t.getBoundingClientRect(); return { width: t.width, height: t.height, top: t.top, right: t.right, bottom: t.bottom, left: t.left, x: t.left, y: t.top } } function zo(t) { t = fo(t); return { scrollLeft: t.pageXOffset, scrollTop: t.pageYOffset } } function Ko(t) { return Qo(wo(t)).left + zo(t).scrollLeft } function Yo(t) { var e = _o(t), n = e.overflow, t = e.overflowX, e = e.overflowY; return /auto|scroll|overlay|hidden/.test(n + e + t) } function qo(t, e) { void 0 === e && (e = []); var n = function t(e) { return 0 <= ["html", "body", "#document"].indexOf(lo(e)) ? e.ownerDocument.body : ho(e) && Yo(e) ? e : t(Oo(e)) }(t), t = n === (null == (r = t.ownerDocument) ? void 0 : r.body), r = fo(n), n = t ? [r].concat(r.visualViewport || [], Yo(n) ? n : []) : n, e = e.concat(n); return t ? e : e.concat(qo(Oo(n))) } function Vo(t) { return Object.assign({}, t, { left: t.x, top: t.y, right: t.x + t.width, bottom: t.y + t.height }) } function Xo(t, e) { return e === Xr ? Vo((i = fo(o = t), c = wo(o), a = i.visualViewport, u = c.clientWidth, s = c.clientHeight, c = i = 0, a && (u = a.width, s = a.height, /^((?!chrome|android).)*safari/i.test(navigator.userAgent) || (i = a.offsetLeft, c = a.offsetTop)), { width: u, height: s, x: i + Ko(o), y: c })) : ho(e) ? ((r = Qo(n = e)).top = r.top + n.clientTop, r.left = r.left + n.clientLeft, r.bottom = r.top + n.clientHeight, r.right = r.left + n.clientWidth, r.width = n.clientWidth, r.height = n.clientHeight, r.x = r.left, r.y = r.top, r) : Vo((o = wo(t), c = wo(o), e = zo(o), r = null == (n = o.ownerDocument) ? void 0 : n.body, t = So(c.scrollWidth, c.clientWidth, r ? r.scrollWidth : 0, r ? r.clientWidth : 0), n = So(c.scrollHeight, c.clientHeight, r ? r.scrollHeight : 0, r ? r.clientHeight : 0), o = -e.scrollLeft + Ko(o), e = -e.scrollTop, "rtl" === _o(r || c).direction && (o += So(c.clientWidth, r ? r.clientWidth : 0) - t), { width: t, height: n, x: o, y: e })); var n, r, o, i, c, a, u, s } function $o(n, t, e) { var r, o, i, t = "clippingParents" === t ? (o = qo(Oo(r = n)), po(i = 0 <= ["absolute", "fixed"].indexOf(_o(r).position) && ho(r) ? jo(r) : r) ? o.filter(function(t) { return po(t) && bo(t, i) && "body" !== lo(t) }) : []) : [].concat(t), t = [].concat(t, [e]), e = t[0], e = t.reduce(function(t, e) { e = Xo(n, e); return t.top = So(e.top, t.top), t.right = xo(e.right, t.right), t.bottom = xo(e.bottom, t.bottom), t.left = So(e.left, t.left), t }, Xo(n, e)); return e.width = e.right - e.left, e.height = e.bottom - e.top, e.x = e.left, e.y = e.top, e } function Go(t) { return t.split("-")[1] } function Jo(t) { var e, n = t.reference, r = t.element, o = t.placement, t = o ? vo(o) : null, o = o ? Go(o) : null, i = n.x + n.width / 2 - r.width / 2, c = n.y + n.height / 2 - r.height / 2; switch (t) { case Ur: e = { x: i, y: n.y - r.height }; break; case Wr: e = { x: i, y: n.y + n.height }; break; case Fr: e = { x: n.x + n.width, y: c }; break; case Qr: e = { x: n.x - r.width, y: c }; break; default: e = { x: n.x, y: n.y } } var a = t ? ko(t) : null; if (null != a) { var u = "y" === a ? "height" : "width"; switch (o) { case Yr: e[a] = e[a] - (n[u] / 2 - r[u] / 2); break; case qr: e[a] = e[a] + (n[u] / 2 - r[u] / 2) } } return e } function Zo(t, e) { var r, n = (e = void 0 === e ? {} : e).placement, o = void 0 === n ? t.placement : n, i = e.boundary, c = void 0 === i ? Vr : i, a = e.rootBoundary, u = void 0 === a ? Xr : a, s = e.elementContext, l = void 0 === s ? $r : s, n = e.altBoundary, i = void 0 !== n && n, a = e.padding, s = void 0 === a ? 0 : a, n = Ao("number" != typeof s ? s : Co(s, Kr)), e = l === $r ? Gr : $r, a = t.elements.reference, s = t.rects.popper, e = t.elements[i ? e : l], c = $o(po(e) ? e : e.contextElement || wo(t.elements.popper), c, u), u = Qo(a), a = Jo({ reference: u, element: s, strategy: "absolute", placement: o }), a = Vo(Object.assign({}, s, a)), u = l === $r ? a : u, f = { top: c.top - u.top + n.top, bottom: u.bottom - c.bottom + n.bottom, left: c.left - u.left + n.left, right: u.right - c.right + n.right }, t = t.modifiersData.offset; return l === $r && t && (r = t[o], Object.keys(f).forEach(function(t) { var e = 0 <= [Fr, Wr].indexOf(t) ? 1 : -1, n = 0 <= [Ur, Wr].indexOf(t) ? "y" : "x"; f[t] += r[n] * e })), f } var ti = { name: "flip", enabled: !0, phase: "main", fn: function(t) { var f = t.state, e = t.options, n = t.name; if (!f.modifiersData[n]._skip) { for (var r = e.mainAxis, o = void 0 === r || r, t = e.altAxis, i = void 0 === t || t, r = e.fallbackPlacements, p = e.padding, d = e.boundary, h = e.rootBoundary, c = e.altBoundary, t = e.flipVariations, y = void 0 === t || t, g = e.allowedAutoPlacements, t = f.options.placement, e = vo(t), e = r || (e === t || !y ? [Uo(t)] : function(t) { if (vo(t) === zr) return []; var e = Uo(t); return [Fo(t), e, Fo(e)] }(t)), a = [t].concat(e).reduce(function(t, e) { return t.concat(vo(e) === zr ? (n = f, o = (r = void 0 === (r = { placement: e, boundary: d, rootBoundary: h, padding: p, flipVariations: y, allowedAutoPlacements: g }) ? {} : r).placement, i = r.boundary, c = r.rootBoundary, a = r.padding, t = r.flipVariations, u = void 0 === (r = r.allowedAutoPlacements) ? Zr : r, s = Go(o), o = s ? t ? Jr : Jr.filter(function(t) { return Go(t) === s }) : Kr, l = (t = 0 === (t = o.filter(function(t) { return 0 <= u.indexOf(t) })).length ? o : t).reduce(function(t, e) { return t[e] = Zo(n, { placement: e, boundary: i, rootBoundary: c, padding: a })[vo(e)], t }, {}), Object.keys(l).sort(function(t, e) { return l[t] - l[e] })) : e); var n, r, o, i, c, a, u, s, l }, []), u = f.rects.reference, s = f.rects.popper, l = new Map, v = !0, m = a[0], b = 0; b < a.length; b++) { var _ = a[b], w = vo(_), O = Go(_) === Yr, E = 0 <= [Ur, Wr].indexOf(w), j = E ? "width" : "height", k = Zo(f, { placement: _, boundary: d, rootBoundary: h, altBoundary: c, padding: p }), E = E ? O ? Fr : Qr : O ? Wr : Ur; u[j] > s[j] && (E = Uo(E)); O = Uo(E), j = []; if (o && j.push(k[w] <= 0), i && j.push(k[E] <= 0, k[O] <= 0), j.every(function(t) { return t })) { m = _, v = !1; break } l.set(_, j) } if (v) for (var S = y ? 3 : 1; 0 < S; S--) if ("break" === function(e) { var t = a.find(function(t) { t = l.get(t); if (t) return t.slice(0, e).every(function(t) { return t }) }); if (t) return m = t, "break" }(S)) break; f.placement !== m && (f.modifiersData[n]._skip = !0, f.placement = m, f.reset = !0) } }, requiresIfExists: ["offset"], data: { _skip: !1 } }; function ei(t, e, n) { return void 0 === n && (n = { x: 0, y: 0 }), { top: t.top - e.height - n.y, right: t.right - e.width + n.x, bottom: t.bottom - e.height + n.y, left: t.left - e.width - n.x } } function ni(e) { return [Ur, Fr, Wr, Qr].some(function(t) { return 0 <= e[t] }) } var ri = { name: "hide", enabled: !0, phase: "main", requiresIfExists: ["preventOverflow"], fn: function(t) { var e = t.state, n = t.name, r = e.rects.reference, o = e.rects.popper, i = e.modifiersData.preventOverflow, c = Zo(e, { elementContext: "reference" }), t = Zo(e, { altBoundary: !0 }), r = ei(c, r), t = ei(t, o, i), o = ni(r), i = ni(t); e.modifiersData[n] = { referenceClippingOffsets: r, popperEscapeOffsets: t, isReferenceHidden: o, hasPopperEscaped: i }, e.attributes.popper = Object.assign({}, e.attributes.popper, { "data-popper-reference-hidden": o, "data-popper-escaped": i }) } }; var oi = { name: "offset", enabled: !0, phase: "main", requires: ["popperOffsets"], fn: function(t) { var c = t.state, e = t.options, n = t.name, a = void 0 === (r = e.offset) ? [0, 0] : r, t = Zr.reduce(function(t, e) { var n, r, o, i; return t[e] = (n = e, r = c.rects, o = a, i = vo(n), e = 0 <= [Qr, Ur].indexOf(i) ? -1 : 1, o = (o = (n = "function" == typeof o ? o(Object.assign({}, r, { placement: n })) : o)[0]) || 0, n = ((n = n[1]) || 0) * e, 0 <= [Qr, Fr].indexOf(i) ? { x: n, y: o } : { x: o, y: n }), t }, {}), r = (e = t[c.placement]).x, e = e.y; null != c.modifiersData.popperOffsets && (c.modifiersData.popperOffsets.x += r, c.modifiersData.popperOffsets.y += e), c.modifiersData[n] = t } }; var ii = { name: "popperOffsets", enabled: !0, phase: "read", fn: function(t) { var e = t.state, t = t.name; e.modifiersData[t] = Jo({ reference: e.rects.reference, element: e.rects.popper, strategy: "absolute", placement: e.placement }) }, data: {} }; var ci = { name: "preventOverflow", enabled: !0, phase: "main", fn: function(t) { var e = t.state, n = t.options, r = t.name, o = void 0 === (O = n.mainAxis) || O, i = void 0 !== (E = n.altAxis) && E, c = n.boundary, a = n.rootBoundary, u = n.altBoundary, s = n.padding, l = n.tether, f = void 0 === l || l, p = n.tetherOffset, d = void 0 === p ? 0 : p, h = Zo(e, { boundary: c, rootBoundary: a, padding: s, altBoundary: u }), y = vo(e.placement), g = Go(e.placement), v = !g, m = ko(y), b = "x" === m ? "y" : "x", _ = e.modifiersData.popperOffsets, w = e.rects.reference, t = e.rects.popper, O = "function" == typeof d ? d(Object.assign({}, e.rects, { placement: e.placement })) : d, E = { x: 0, y: 0 }; _ && ((o || i) && (l = "y" === m ? Ur : Qr, n = "y" === m ? Wr : Fr, p = "y" === m ? "height" : "width", c = _[m], a = _[m] + h[l], s = _[m] - h[n], u = f ? -t[p] / 2 : 0, y = (g === Yr ? w : t)[p], d = g === Yr ? -t[p] : -w[p], g = e.elements.arrow, t = f && g ? mo(g) : { width: 0, height: 0 }, l = (g = e.modifiersData["arrow#persistent"] ? e.modifiersData["arrow#persistent"].padding : Do())[l], n = g[n], t = To(0, w[p], t[p]), l = v ? w[p] / 2 - u - t - l - O : y - t - l - O, t = v ? -w[p] / 2 + u + t + n + O : d + t + n + O, O = (n = e.elements.arrow && jo(e.elements.arrow)) ? "y" === m ? n.clientTop || 0 : n.clientLeft || 0 : 0, n = e.modifiersData.offset ? e.modifiersData.offset[e.placement][m] : 0, O = _[m] + l - n - O, n = _[m] + t - n, o && (s = To(f ? xo(a, O) : a, c, f ? So(s, n) : s), _[m] = s, E[m] = s - c), i && (c = "x" === m ? Ur : Qr, i = "x" === m ? Wr : Fr, c = (m = _[b]) + h[c], i = m - h[i], i = To(f ? xo(c, O) : c, m, f ? So(i, n) : i), _[b] = i, E[b] = i - m)), e.modifiersData[r] = E) }, requiresIfExists: ["offset"] }; function ai(t, e, n) { void 0 === n && (n = !1); var r = wo(e), o = Qo(t), i = ho(e), c = { scrollLeft: 0, scrollTop: 0 }, t = { x: 0, y: 0 }; return !i && (i || n) || ("body" === lo(e) && !Yo(r) || (c = (i = e) !== fo(i) && ho(i) ? { scrollLeft: (n = i).scrollLeft, scrollTop: n.scrollTop } : zo(i)), ho(e) ? ((t = Qo(e)).x += e.clientLeft, t.y += e.clientTop) : r && (t.x = Ko(r))), { x: o.left + c.scrollLeft - t.x, y: o.top + c.scrollTop - t.y, width: o.width, height: o.height } } function ui(t) { var n = new Map, r = new Set, o = []; return t.forEach(function(t) { n.set(t.name, t) }), t.forEach(function(t) { r.has(t.name) || ! function e(t) { r.add(t.name), [].concat(t.requires || [], t.requiresIfExists || []).forEach(function(t) { r.has(t) || (t = n.get(t)) && e(t) }), o.push(t) }(t) }), o } var si = { placement: "bottom", modifiers: [], strategy: "absolute" }; function li() { for (var t = arguments.length, e = new Array(t), n = 0; n < t; n++) e[n] = arguments[n]; return !e.some(function(t) { return !(t && "function" == typeof t.getBoundingClientRect) }) } function fi(t) { var e = (t = void 0 === t ? {} : t).defaultModifiers, f = void 0 === e ? [] : e, t = t.defaultOptions, p = void 0 === t ? si : t; return function(r, o, e) { void 0 === e && (e = p); var n, i, c = { placement: "bottom", orderedModifiers: [], options: Object.assign({}, si, p), modifiersData: {}, elements: { reference: r, popper: o }, attributes: {}, styles: {} }, a = [], u = !1, s = { state: c, setOptions: function(t) { l(), c.options = Object.assign({}, p, c.options, t), c.scrollParents = { reference: po(r) ? qo(r) : r.contextElement ? qo(r.contextElement) : [], popper: qo(o) }; var n, e, t = (t = [].concat(f, c.options.modifiers), e = t.reduce(function(t, e) { var n = t[e.name]; return t[e.name] = n ? Object.assign({}, n, e, { options: Object.assign({}, n.options, e.options), data: Object.assign({}, n.data, e.data) }) : e, t }, {}), t = Object.keys(e).map(function(t) { return e[t] }), n = ui(t), so.reduce(function(t, e) { return t.concat(n.filter(function(t) { return t.phase === e })) }, [])); return c.orderedModifiers = t.filter(function(t) { return t.enabled }), c.orderedModifiers.forEach(function(t) { var e = t.name, n = t.options, n = void 0 === n ? {} : n, t = t.effect; "function" == typeof t && (n = t({ state: c, name: e, instance: s, options: n }), a.push(n || function() {})) }), s.update() }, forceUpdate: function() { if (!u) { var t = c.elements, e = t.reference, t = t.popper; if (li(e, t)) { c.rects = { reference: ai(e, jo(t), "fixed" === c.options.strategy), popper: mo(t) }, c.reset = !1, c.placement = c.options.placement, c.orderedModifiers.forEach(function(t) { return c.modifiersData[t.name] = Object.assign({}, t.data) }); for (var n, r, o, i = 0; i < c.orderedModifiers.length; i++) 0, !0 !== c.reset ? (n = (o = c.orderedModifiers[i]).fn, r = void 0 === (r = o.options) ? {} : r, o = o.name, "function" == typeof n && (c = n({ state: c, options: r, name: o, instance: s }) || c)) : (c.reset = !1, i = -1) } } }, update: (n = function() { return new Promise(function(t) { s.forceUpdate(), t(c) }) }, function() { return i = i || new Promise(function(t) { Promise.resolve().then(function() { i = void 0, t(n()) }) }) }), destroy: function() { l(), u = !0 } }; return li(r, o) && s.setOptions(e).then(function(t) { !u && e.onFirstUpdate && e.onFirstUpdate(t) }), s; function l() { a.forEach(function(t) { return t() }), a = [] } } } var pi = fi(), di = fi({ defaultModifiers: [Ho, ii, No, go, oi, ti, ci, Lo, ri] }), hi = fi({ defaultModifiers: [Ho, ii, No, go] }); function yi(t) { return function(t) { if (Array.isArray(t)) return gi(t) }(t) || function(t) { if ("undefined" != typeof Symbol && Symbol.iterator in Object(t)) return Array.from(t) }(t) || function(t, e) { if (!t) return; if ("string" == typeof t) return gi(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); "Object" === n && t.constructor && (n = t.constructor.name); if ("Map" === n || "Set" === n) return Array.from(t); if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return gi(t, e) }(t) || function() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") }() } function gi(t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++) r[n] = t[n]; return r } var vi = new Set(["background", "cite", "href", "itemtype", "longdesc", "poster", "src", "xlink:href"]), mi = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/gi, bi = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i, e = { "*": ["class", "dir", "id", "lang", "role", /^aria-[\w-]*$/i], a: ["target", "href", "title", "rel"], area: [], b: [], br: [], col: [], code: [], div: [], em: [], hr: [], h1: [], h2: [], h3: [], h4: [], h5: [], h6: [], i: [], img: ["src", "srcset", "alt", "title", "width", "height"], li: [], ol: [], p: [], pre: [], s: [], small: [], span: [], sub: [], sup: [], strong: [], u: [], ul: [] }; function _i(t, i, e) { if (!t.length) return t; if (e && "function" == typeof e) return e(t); for (var e = (new window.DOMParser).parseFromString(t, "text/html"), c = Object.keys(i), a = (t = []).concat.apply(t, yi(e.body.querySelectorAll("*"))), n = function(t, e) { var n = a[t], r = n.nodeName.toLowerCase(); if (!c.includes(r)) return n.parentNode.removeChild(n), "continue"; var t = (t = []).concat.apply(t, yi(n.attributes)), o = [].concat(i["*"] || [], i[r] || []); t.forEach(function(t) { ! function(t, e) { var n = t.nodeName.toLowerCase(); if (e.includes(n)) return !vi.has(n) || Boolean(t.nodeValue.match(mi) || t.nodeValue.match(bi)); for (var r = e.filter(function(t) { return t instanceof RegExp }), o = 0, i = r.length; o < i; o++) if (n.match(r[o])) return !0; return !1 }(t, o) && n.removeAttribute(t.nodeName) }) }, r = 0, o = a.length; r < o; r++) n(r); return e.body.innerHTML } function wi(e, t) { var n, r = Object.keys(e); return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(e), t && (n = n.filter(function(t) { return Object.getOwnPropertyDescriptor(e, t).enumerable })), r.push.apply(r, n)), r } function Oi(r) { for (var t = 1; t < arguments.length; t++) { var o = null != arguments[t] ? arguments[t] : {}; t % 2 ? wi(Object(o), !0).forEach(function(t) { var e, n; e = r, t = o[n = t], n in e ? Object.defineProperty(e, n, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = t }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(r, Object.getOwnPropertyDescriptors(o)) : wi(Object(o)).forEach(function(t) { Object.defineProperty(r, t, Object.getOwnPropertyDescriptor(o, t)) }) } return r } function Ei(t) { return (Ei = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function ji(t) { return function(t) { if (Array.isArray(t)) return ki(t) }(t) || function(t) { if ("undefined" != typeof Symbol && Symbol.iterator in Object(t)) return Array.from(t) }(t) || function(t, e) { if (!t) return; if ("string" == typeof t) return ki(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); "Object" === n && t.constructor && (n = t.constructor.name); if ("Map" === n || "Set" === n) return Array.from(t); if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return ki(t, e) }(t) || function() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") }() } function ki(t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++) r[n] = t[n]; return r } function Si(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function xi(t, e, n) { return (xi = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = Di(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function Pi(t, e) { return (Pi = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function Ti(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = Di(n); return t = r ? (t = Di(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== Ei(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function Di(t) { return (Di = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var Ai = "tooltip", Ci = "bs.tooltip", Li = ".".concat(Ci), Ri = "bs-tooltip", Ii = new RegExp("(^|\\s)".concat(Ri, "\\S+"), "g"), Ni = new Set(["sanitize", "allowList", "sanitizeFn"]), Mi = { animation: "boolean", template: "string", title: "(string|element|function)", trigger: "string", delay: "(number|object)", html: "boolean", selector: "(string|boolean)", placement: "(string|function)", offset: "(array|string|function)", container: "(string|element|boolean)", fallbackPlacements: "array", boundary: "(string|element)", customClass: "(string|function)", sanitize: "boolean", sanitizeFn: "(null|function)", allowList: "object", popperConfig: "(null|object|function)" }, Hi = { AUTO: "auto", TOP: "top", RIGHT: nt ? "left" : "right", BOTTOM: "bottom", LEFT: nt ? "right" : "left" }, Bi = { animation: !0, template: '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>', trigger: "hover focus", title: "", delay: 0, html: !1, selector: !1, placement: "top", offset: [0, 0], container: !1, fallbackPlacements: ["top", "right", "bottom", "left"], boundary: "clippingParents", customClass: "", sanitize: !0, sanitizeFn: null, allowList: e, popperConfig: null }, Ui = { HIDE: "hide".concat(Li), HIDDEN: "hidden".concat(Li), SHOW: "show".concat(Li), SHOWN: "shown".concat(Li), INSERTED: "inserted".concat(Li), CLICK: "click".concat(Li), FOCUSIN: "focusin".concat(Li), FOCUSOUT: "focusout".concat(Li), MOUSEENTER: "mouseenter".concat(Li), MOUSELEAVE: "mouseleave".concat(Li) }, Wi = "fade", Fi = "show", Qi = "show", zi = "hover", Ki = "focus", At = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && Pi(t, e) }(o, jt); var t, e, n, r = Ti(o); function o(t, e) { if (! function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), void 0 === c) throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)"); return (t = r.call(this, t))._isEnabled = !0, t._timeout = 0, t._hoverState = "", t._activeTrigger = {}, t._popper = null, t.config = t._getConfig(e), t.tip = null, t._setListeners(), t } return t = o, n = [{ key: "Default", get: function() { return Bi } }, { key: "NAME", get: function() { return Ai } }, { key: "DATA_KEY", get: function() { return Ci } }, { key: "Event", get: function() { return Ui } }, { key: "EVENT_KEY", get: function() { return Li } }, { key: "DefaultType", get: function() { return Mi } }, { key: "jQueryInterface", value: function(n) { return this.each(function() { var t = it.getData(this, Ci), e = "object" === Ei(n) && n; if ((t || !/dispose|hide/.test(n)) && (t = t || new o(this, e), "string" == typeof n)) { if (void 0 === t[n]) throw new TypeError('No method named "'.concat(n, '"')); t[n]() } }) } }], (e = [{ key: "enable", value: function() { this._isEnabled = !0 } }, { key: "disable", value: function() { this._isEnabled = !1 } }, { key: "toggleEnabled", value: function() { this._isEnabled = !this._isEnabled } }, { key: "toggle", value: function(t) { this._isEnabled && (t ? ((t = this._initializeOnDelegatedTarget(t))._activeTrigger.click = !t._activeTrigger.click, t._isWithActiveTrigger() ? t._enter(null, t) : t._leave(null, t)) : this.getTipElement().classList.contains(Fi) ? this._leave(null, this) : this._enter(null, this)) } }, { key: "dispose", value: function() { clearTimeout(this._timeout), Ot.off(this._element, this.constructor.EVENT_KEY), Ot.off(this._element.closest(".".concat("modal")), "hide.bs.modal", this._hideModalHandler), this.tip && this.tip.parentNode && this.tip.parentNode.removeChild(this.tip), this._isEnabled = null, this._timeout = null, this._hoverState = null, this._activeTrigger = null, this._popper && this._popper.destroy(), this._popper = null, this.config = null, this.tip = null, xi(Di(o.prototype), "dispose", this).call(this) } }, { key: "show", value: function() { var t, e, n, r, o = this; if ("none" === this._element.style.display) throw new Error("Please use show on visible elements"); this.isWithContent() && this._isEnabled && (n = Ot.trigger(this._element, this.constructor.Event.SHOW), t = (null === (e = q(this._element)) ? this._element.ownerDocument.documentElement : e).contains(this._element), !n.defaultPrevented && t && (e = this.getTipElement(), n = H(this.constructor.NAME), e.setAttribute("id", n), this._element.setAttribute("aria-describedby", n), this.setContent(), this.config.animation && e.classList.add(Wi), t = "function" == typeof this.config.placement ? this.config.placement.call(this, e, this._element) : this.config.placement, n = this._getAttachment(t), this._addAttachmentClass(n), t = this._getContainer(), it.setData(e, this.constructor.DATA_KEY, this), this._element.ownerDocument.documentElement.contains(this.tip) || t.appendChild(e), Ot.trigger(this._element, this.constructor.Event.INSERTED), this._popper = di(this._element, e, this._getPopperConfig(n)), e.classList.add(Fi), (n = "function" == typeof this.config.customClass ? this.config.customClass() : this.config.customClass) && (e = e.classList).add.apply(e, ji(n.split(" "))), "ontouchstart" in document.documentElement && (r = []).concat.apply(r, ji(document.body.children)).forEach(function(t) { Ot.on(t, "mouseover", V()) }), n = function() { var t = o._hoverState; o._hoverState = null, Ot.trigger(o._element, o.constructor.Event.SHOWN), "out" === t && o._leave(null, o) }, this.tip.classList.contains(Wi) ? (r = W(this.tip), Ot.one(this.tip, "transitionend", n), z(this.tip, r)) : n())) } }, { key: "hide", value: function() { var t, e, n, r = this; this._popper && (t = this.getTipElement(), e = function() { r._hoverState !== Qi && t.parentNode && t.parentNode.removeChild(t), r._cleanTipClass(), r._element.removeAttribute("aria-describedby"), Ot.trigger(r._element, r.constructor.Event.HIDDEN), r._popper && (r._popper.destroy(), r._popper = null) }, Ot.trigger(this._element, this.constructor.Event.HIDE).defaultPrevented || (t.classList.remove(Fi), "ontouchstart" in document.documentElement && (n = []).concat.apply(n, ji(document.body.children)).forEach(function(t) { return Ot.off(t, "mouseover", V) }), this._activeTrigger.click = !1, this._activeTrigger[Ki] = !1, this._activeTrigger[zi] = !1, this.tip.classList.contains(Wi) ? (n = W(t), Ot.one(t, "transitionend", e), z(t, n)) : e(), this._hoverState = "")) } }, { key: "update", value: function() { null !== this._popper && this._popper.update() } }, { key: "isWithContent", value: function() { return Boolean(this.getTitle()) } }, { key: "getTipElement", value: function() { if (this.tip) return this.tip; var t = document.createElement("div"); return t.innerHTML = this.config.template, this.tip = t.children[0], this.tip } }, { key: "setContent", value: function() { var t = this.getTipElement(); this.setElementContent(ce.findOne(".tooltip-inner", t), this.getTitle()), t.classList.remove(Wi, Fi) } }, { key: "setElementContent", value: function(t, e) { if (null !== t) return "object" === Ei(e) && Q(e) ? (e.jquery && (e = e[0]), void(this.config.html ? e.parentNode !== t && (t.innerHTML = "", t.appendChild(e)) : t.textContent = e.textContent)) : void(this.config.html ? (this.config.sanitize && (e = _i(e, this.config.allowList, this.config.sanitizeFn)), t.innerHTML = e) : t.textContent = e) } }, { key: "getTitle", value: function() { return this._element.getAttribute("data-mdb-original-title") || ("function" == typeof this.config.title ? this.config.title.call(this._element) : this.config.title) } }, { key: "updateAttachment", value: function(t) { return "right" === t ? "end" : "left" === t ? "start" : t } }, { key: "_initializeOnDelegatedTarget", value: function(t, e) { var n = this.constructor.DATA_KEY; return (e = e || it.getData(t.delegateTarget, n)) || (e = new this.constructor(t.delegateTarget, this._getDelegateConfig()), it.setData(t.delegateTarget, n, e)), e } }, { key: "_getOffset", value: function() { var e = this, n = this.config.offset; return "string" == typeof n ? n.split(",").map(function(t) { return Number.parseInt(t, 10) }) : "function" == typeof n ? function(t) { return n(t, e._element) } : n } }, { key: "_getPopperConfig", value: function(t) { var e = this, t = { placement: t, modifiers: [{ name: "flip", options: { altBoundary: !0, fallbackPlacements: this.config.fallbackPlacements } }, { name: "offset", options: { offset: this._getOffset() } }, { name: "preventOverflow", options: { boundary: this.config.boundary } }, { name: "arrow", options: { element: ".".concat(this.constructor.NAME, "-arrow") } }, { name: "onChange", enabled: !0, phase: "afterWrite", fn: function(t) { return e._handlePopperPlacementChange(t) } }], onFirstUpdate: function(t) { t.options.placement !== t.placement && e._handlePopperPlacementChange(t) } }; return Oi(Oi({}, t), "function" == typeof this.config.popperConfig ? this.config.popperConfig(t) : this.config.popperConfig) } }, { key: "_addAttachmentClass", value: function(t) { this.getTipElement().classList.add("".concat(Ri, "-").concat(this.updateAttachment(t))) } }, { key: "_getContainer", value: function() { return !1 === this.config.container ? document.body : Q(this.config.container) ? this.config.container : ce.findOne(this.config.container) } }, { key: "_getAttachment", value: function(t) { return Hi[t.toUpperCase()] } }, { key: "_setListeners", value: function() { var n = this; this.config.trigger.split(" ").forEach(function(t) { var e; "click" === t ? Ot.on(n._element, n.constructor.Event.CLICK, n.config.selector, function(t) { return n.toggle(t) }) : "manual" !== t && (e = t === zi ? n.constructor.Event.MOUSEENTER : n.constructor.Event.FOCUSIN, t = t === zi ? n.constructor.Event.MOUSELEAVE : n.constructor.Event.FOCUSOUT, Ot.on(n._element, e, n.config.selector, function(t) { return n._enter(t) }), Ot.on(n._element, t, n.config.selector, function(t) { return n._leave(t) })) }), this._hideModalHandler = function() { n._element && n.hide() }, Ot.on(this._element.closest(".".concat("modal")), "hide.bs.modal", this._hideModalHandler), this.config.selector ? this.config = Oi(Oi({}, this.config), {}, { trigger: "manual", selector: "" }) : this._fixTitle() } }, { key: "_fixTitle", value: function() { var t = this._element.getAttribute("title"), e = Ei(this._element.getAttribute("data-mdb-original-title")); !t && "string" === e || (this._element.setAttribute("data-mdb-original-title", t || ""), !t || this._element.getAttribute("aria-label") || this._element.textContent || this._element.setAttribute("aria-label", t), this._element.setAttribute("title", "")) } }, { key: "_enter", value: function(t, e) { e = this._initializeOnDelegatedTarget(t, e), t && (e._activeTrigger["focusin" === t.type ? Ki : zi] = !0), e.getTipElement().classList.contains(Fi) || e._hoverState === Qi ? e._hoverState = Qi : (clearTimeout(e._timeout), e._hoverState = Qi, e.config.delay && e.config.delay.show ? e._timeout = setTimeout(function() { e._hoverState === Qi && e.show() }, e.config.delay.show) : e.show()) } }, { key: "_leave", value: function(t, e) { e = this._initializeOnDelegatedTarget(t, e), t && (e._activeTrigger["focusout" === t.type ? Ki : zi] = !1), e._isWithActiveTrigger() || (clearTimeout(e._timeout), e._hoverState = "out", e.config.delay && e.config.delay.hide ? e._timeout = setTimeout(function() { "out" === e._hoverState && e.hide() }, e.config.delay.hide) : e.hide()) } }, { key: "_isWithActiveTrigger", value: function() { for (var t in this._activeTrigger) if (this._activeTrigger[t]) return !0; return !1 } }, { key: "_getConfig", value: function(t) { var e = re.getDataAttributes(this._element); return Object.keys(e).forEach(function(t) { Ni.has(t) && delete e[t] }), t && "object" === Ei(t.container) && t.container.jquery && (t.container = t.container[0]), "number" == typeof(t = Oi(Oi(Oi({}, this.constructor.Default), e), "object" === Ei(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()), K(Ai, t, this.constructor.DefaultType), t.sanitize && (t.template = _i(t.template, t.allowList, t.sanitizeFn)), t } }, { key: "_getDelegateConfig", value: 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 } }, { key: "_cleanTipClass", value: function() { var e = this.getTipElement(), t = e.getAttribute("class").match(Ii); null !== t && 0 < t.length && t.map(function(t) { return t.trim() }).forEach(function(t) { return e.classList.remove(t) }) } }, { key: "_handlePopperPlacementChange", value: function(t) { t = t.state; t && (this.tip = t.elements.popper, this._cleanTipClass(), this._addAttachmentClass(this._getAttachment(t.placement))) } }]) && Si(t.prototype, e), n && Si(t, n), o }(); rt(Ai, At); var Yi = At; function qi(t) { return (qi = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function Vi(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function Xi(t, e) { return (Xi = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function $i(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = Gi(n); return t = r ? (t = Gi(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== qi(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function Gi(t) { return (Gi = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } function Ji(e, t) { var n, r = Object.keys(e); return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(e), t && (n = n.filter(function(t) { return Object.getOwnPropertyDescriptor(e, t).enumerable })), r.push.apply(r, n)), r } function Zi(r) { for (var t = 1; t < arguments.length; t++) { var o = null != arguments[t] ? arguments[t] : {}; t % 2 ? Ji(Object(o), !0).forEach(function(t) { var e, n; e = r, t = o[n = t], n in e ? Object.defineProperty(e, n, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = t }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(r, Object.getOwnPropertyDescriptors(o)) : Ji(Object(o)).forEach(function(t) { Object.defineProperty(r, t, Object.getOwnPropertyDescriptor(o, t)) }) } return r } var tc = "popover", ec = "bs.popover", nc = ".".concat(ec), rc = "bs-popover", oc = new RegExp("(^|\\s)".concat(rc, "\\S+"), "g"), ic = Zi(Zi({}, Yi.Default), {}, { placement: "right", offset: [0, 8], trigger: "click", content: "", template: '<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>' }), cc = Zi(Zi({}, Yi.DefaultType), {}, { content: "(string|element|function)" }), ac = { HIDE: "hide".concat(nc), HIDDEN: "hidden".concat(nc), SHOW: "show".concat(nc), SHOWN: "shown".concat(nc), INSERTED: "inserted".concat(nc), CLICK: "click".concat(nc), FOCUSIN: "focusin".concat(nc), FOCUSOUT: "focusout".concat(nc), MOUSEENTER: "mouseenter".concat(nc), MOUSELEAVE: "mouseleave".concat(nc) }, e = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && Xi(t, e) }(o, Yi); var t, e, n, r = $i(o); function o() { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), r.apply(this, arguments) } return t = o, n = [{ key: "Default", get: function() { return ic } }, { key: "NAME", get: function() { return tc } }, { key: "DATA_KEY", get: function() { return ec } }, { key: "Event", get: function() { return ac } }, { key: "EVENT_KEY", get: function() { return nc } }, { key: "DefaultType", get: function() { return cc } }, { key: "jQueryInterface", value: function(n) { return this.each(function() { var t = it.getData(this, ec), e = "object" === qi(n) ? n : null; if ((t || !/dispose|hide/.test(n)) && (t || (t = new o(this, e), it.setData(this, ec, t)), "string" == typeof n)) { if (void 0 === t[n]) throw new TypeError('No method named "'.concat(n, '"')); t[n]() } }) } }], (e = [{ key: "isWithContent", value: function() { return this.getTitle() || this._getContent() } }, { key: "setContent", value: function() { var t = this.getTipElement(); this.setElementContent(ce.findOne(".popover-header", t), this.getTitle()); var e = this._getContent(); "function" == typeof e && (e = e.call(this._element)), this.setElementContent(ce.findOne(".popover-body", t), e), t.classList.remove("fade", "show") } }, { key: "_addAttachmentClass", value: function(t) { this.getTipElement().classList.add("".concat(rc, "-").concat(this.updateAttachment(t))) } }, { key: "_getContent", value: function() { return this._element.getAttribute("data-mdb-content") || this.config.content } }, { key: "_cleanTipClass", value: function() { var e = this.getTipElement(), t = e.getAttribute("class").match(oc); null !== t && 0 < t.length && t.map(function(t) { return t.trim() }).forEach(function(t) { return e.classList.remove(t) }) } }]) && Vi(t.prototype, e), n && Vi(t, n), o }(); rt(tc, e); var uc = e; function sc(t) { return (sc = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function lc(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function fc(t, e, n) { return (fc = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = hc(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function pc(t, e) { return (pc = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function dc(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = hc(n); return t = r ? (t = hc(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== sc(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function hc(t) { return (hc = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var yc = "popover", At = "mdb.".concat(yc), e = ".".concat(At), gc = "show.bs.popover", vc = "shown.bs.popover", mc = "hide.bs.popover", bc = "hidden.bs.popover", _c = "inserted.bs.popover", wc = "show".concat(e), Oc = "shown".concat(e), Ec = "hide".concat(e), jc = "hidden".concat(e), kc = "inserted".concat(e), Sc = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && pc(t, e) }(o, uc); var t, e, n, r = dc(o); function o(t, e) { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (e = r.call(this, t, e))._init(), e } return t = o, n = [{ key: "NAME", get: function() { return yc } }], (e = [{ key: "dispose", value: function() { D.off(this.element, gc), D.off(this.element, vc), D.off(this.element, mc), D.off(this.element, bc), D.off(this.element, _c), fc(hc(o.prototype), "dispose", this).call(this) } }, { key: "_init", value: function() { this._bindShowEvent(), this._bindShownEvent(), this._bindHideEvent(), this._bindHiddenEvent(), this._bindInsertedEvent() } }, { key: "_bindShowEvent", value: function() { var t = this; D.on(this.element, gc, function() { D.trigger(t.element, wc) }) } }, { key: "_bindShownEvent", value: function() { var t = this; D.on(this.element, vc, function() { D.trigger(t.element, Oc) }) } }, { key: "_bindHideEvent", value: function() { var t = this; D.on(this.element, mc, function() { D.trigger(t.element, Ec) }) } }, { key: "_bindHiddenEvent", value: function() { var t = this; D.on(this.element, bc, function() { D.trigger(t.element, jc) }) } }, { key: "_bindInsertedEvent", value: function() { var t = this; D.on(this.element, _c, function() { D.trigger(t.element, kc) }) } }]) && lc(t.prototype, e), n && lc(t, n), o }(); Z.find('[data-mdb-toggle="popover"]').forEach(function(t) { Sc.getInstance(t) || new Sc(t) }), u(function() { var t, e = r(); e && (t = e.fn[yc], e.fn[yc] = Sc.jQueryInterface, e.fn[yc].Constructor = Sc, e.fn[yc].noConflict = function() { return e.fn[yc] = t, Sc.jQueryInterface }) }); var xc = Sc; n(112); function Pc(t) { return (Pc = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function Tc(e, t) { var n, r = Object.keys(e); return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(e), t && (n = n.filter(function(t) { return Object.getOwnPropertyDescriptor(e, t).enumerable })), r.push.apply(r, n)), r } function Dc(r) { for (var t = 1; t < arguments.length; t++) { var o = null != arguments[t] ? arguments[t] : {}; t % 2 ? Tc(Object(o), !0).forEach(function(t) { var e, n; e = r, t = o[n = t], n in e ? Object.defineProperty(e, n, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = t }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(r, Object.getOwnPropertyDescriptors(o)) : Tc(Object(o)).forEach(function(t) { Object.defineProperty(r, t, Object.getOwnPropertyDescriptor(o, t)) }) } return r } function Ac(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function Cc(t, e, n) { return (Cc = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = Ic(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function Lc(t, e) { return (Lc = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function Rc(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = Ic(n); return t = r ? (t = Ic(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== Pc(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function Ic(t) { return (Ic = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var Nc = "scrollspy", Mc = "bs.scrollspy", Hc = ".".concat(Mc), Bc = { offset: 10, method: "auto", target: "" }, Uc = { offset: "number", method: "string", target: "(string|element)" }, Wc = "activate".concat(Hc), Fc = "scroll".concat(Hc), At = "load".concat(Hc).concat(".data-api"), Qc = "dropdown-item", zc = "active", Kc = ".nav-link", Yc = ".list-group-item", qc = "position", Vc = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && Lc(t, e) }(o, jt); var t, e, n, r = Rc(o); function o(t, e) { var n; return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (n = r.call(this, t))._scrollElement = "BODY" === t.tagName ? window : t, n._config = n._getConfig(e), n._selector = "".concat(n._config.target, " ").concat(Kc, ", ").concat(n._config.target, " ").concat(Yc, ", ").concat(n._config.target, " .").concat(Qc), n._offsets = [], n._targets = [], n._activeTarget = null, n._scrollHeight = 0, Ot.on(n._scrollElement, Fc, function() { return n._process() }), n.refresh(), n._process(), n } return t = o, n = [{ key: "Default", get: function() { return Bc } }, { key: "DATA_KEY", get: function() { return Mc } }, { key: "jQueryInterface", value: function(n) { return this.each(function() { var t = it.getData(this, Mc), e = "object" === Pc(n) && n, t = t || new o(this, e); if ("string" == typeof n) { if (void 0 === t[n]) throw new TypeError('No method named "'.concat(n, '"')); t[n]() } }) } }], (e = [{ key: "refresh", value: function() { var e = this, t = this._scrollElement === this._scrollElement.window ? "offset" : qc, r = "auto" === this._config.method ? t : this._config.method, o = r === qc ? this._getScrollTop() : 0; this._offsets = [], this._targets = [], this._scrollHeight = this._getScrollHeight(), ce.find(this._selector).map(function(t) { var e = et(t), n = e ? ce.findOne(e) : null; if (n) { t = n.getBoundingClientRect(); if (t.width || t.height) return [re[r](n).top + o, e] } 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]) }) } }, { key: "dispose", value: function() { Cc(Ic(o.prototype), "dispose", this).call(this), Ot.off(this._scrollElement, Hc), this._scrollElement = null, this._config = null, this._selector = null, this._offsets = null, this._targets = null, this._activeTarget = null, this._scrollHeight = null } }, { key: "_getConfig", value: function(t) { var e; return "string" != typeof(t = Dc(Dc({}, Bc), "object" === Pc(t) && t ? t : {})).target && Q(t.target) && ((e = t.target.id) || (e = H(Nc), t.target.id = e), t.target = "#".concat(e)), K(Nc, t, Uc), t } }, { key: "_getScrollTop", value: function() { return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop } }, { key: "_getScrollHeight", value: function() { return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight) } }, { key: "_getOffsetHeight", value: function() { return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height } }, { key: "_process", value: 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) { n = this._targets[this._targets.length - 1]; this._activeTarget !== n && this._activate(n) } 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] && (void 0 === this._offsets[r + 1] || t < this._offsets[r + 1]) && this._activate(this._targets[r]) } } }, { key: "_activate", value: function(e) { this._activeTarget = e, this._clear(); var t = this._selector.split(",").map(function(t) { return "".concat(t, '[data-mdb-target="').concat(e, '"],').concat(t, '[href="').concat(e, '"]') }), t = ce.findOne(t.join(",")); t.classList.contains(Qc) ? (ce.findOne(".dropdown-toggle", t.closest(".dropdown")).classList.add(zc), t.classList.add(zc)) : (t.classList.add(zc), ce.parents(t, ".nav, .list-group").forEach(function(t) { ce.prev(t, "".concat(Kc, ", ").concat(Yc)).forEach(function(t) { return t.classList.add(zc) }), ce.prev(t, ".nav-item").forEach(function(t) { ce.children(t, Kc).forEach(function(t) { return t.classList.add(zc) }) }) })), Ot.trigger(this._scrollElement, Wc, { relatedTarget: e }) } }, { key: "_clear", value: function() { ce.find(this._selector).filter(function(t) { return t.classList.contains(zc) }).forEach(function(t) { return t.classList.remove(zc) }) } }]) && Ac(t.prototype, e), n && Ac(t, n), o }(); Ot.on(window, At, function() { ce.find('[data-mdb-spy="scroll"]').forEach(function(t) { return new Vc(t, re.getDataAttributes(t)) }) }), rt(Nc, Vc); var Xc = Vc; function $c(t) { return ($c = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function Gc(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function Jc(t, e, n) { return (Jc = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = ea(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function Zc(t, e) { return (Zc = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function ta(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = ea(n); return t = r ? (t = ea(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== $c(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function ea(t) { return (ea = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var na = "scrollspy", e = "mdb.".concat(na), At = ".".concat(e), ra = "activate.bs.scrollspy", oa = "activate".concat(At), e = "load".concat(At).concat(".data-api"), ia = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && Zc(t, e) }(o, Xc); var t, e, n, r = ta(o); function o(t, e) { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (e = r.call(this, t, e))._scrollElement = "BODY" === t.tagName ? window : t, e._init(), e } return t = o, n = [{ key: "NAME", get: function() { return na } }], (e = [{ key: "dispose", value: function() { D.off(this._scrollElement, ra), this._scrollElement = null, Jc(ea(o.prototype), "dispose", this).call(this) } }, { key: "_init", value: function() { this._bindActivateEvent() } }, { key: "_bindActivateEvent", value: function() { var e = this; D.on(this._scrollElement, ra, function(t) { D.trigger(e._scrollElement, oa, { relatedTarget: t.relatedTarget }) }) } }]) && Gc(t.prototype, e), n && Gc(t, n), o }(); D.on(window, e, function() { Z.find('[data-mdb-spy="scroll"]').forEach(function(t) { ia.getInstance(t) || new ia(t, I.getDataAttributes(t)) }) }), u(function() { var t, e = r(); e && (t = e.fn[na], e.fn[na] = ia.jQueryInterface, e.fn[na].Constructor = ia, e.fn[na].noConflict = function() { return e.fn[na] = t, ia.jQueryInterface }) }); var ca = ia; function aa(t) { return (aa = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function ua(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function sa(t, e) { return (sa = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function la(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = fa(n); return t = r ? (t = fa(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== aa(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function fa(t) { return (fa = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var pa = "bs.tab", At = ".".concat(pa), da = "hide".concat(At), ha = "hidden".concat(At), ya = "show".concat(At), ga = "shown".concat(At), e = "click".concat(At).concat(".data-api"), va = "active", ma = ".active", ba = ":scope > li > .active", _a = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && sa(t, e) }(o, jt); var t, e, n, r = la(o); function o() { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), r.apply(this, arguments) } return t = o, n = [{ key: "DATA_KEY", get: function() { return pa } }, { key: "jQueryInterface", value: function(e) { return this.each(function() { var t = it.getData(this, pa) || new o(this); if ("string" == typeof e) { if (void 0 === t[e]) throw new TypeError('No method named "'.concat(e, '"')); t[e]() } }) } }], (e = [{ key: "show", value: function() { var t, e, n, r, o = this; this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains(va) || this._element.classList.contains("disabled") || (t = U(this._element), (r = this._element.closest(".nav, .list-group")) && (n = "UL" === r.nodeName || "OL" === r.nodeName ? ba : ma, e = (e = ce.find(n, r))[e.length - 1]), n = e ? Ot.trigger(e, da, { relatedTarget: this._element }) : null, Ot.trigger(this._element, ya, { relatedTarget: e }).defaultPrevented || null !== n && n.defaultPrevented || (this._activate(this._element, r), r = function() { Ot.trigger(e, ha, { relatedTarget: o._element }), Ot.trigger(o._element, ga, { relatedTarget: e }) }, t ? this._activate(t, t.parentNode, r) : r())) } }, { key: "_activate", value: function(t, e, n) { var r = this, o = (!e || "UL" !== e.nodeName && "OL" !== e.nodeName ? ce.children(e, ma) : ce.find(ba, e))[0], i = n && o && o.classList.contains("fade"), e = function() { return r._transitionComplete(t, o, n) }; o && i ? (i = W(o), o.classList.remove("show"), Ot.one(o, "transitionend", e), z(o, i)) : e() } }, { key: "_transitionComplete", value: function(t, e, n) { var r; e && (e.classList.remove(va), (r = ce.findOne(":scope > .dropdown-menu .active", e.parentNode)) && r.classList.remove(va), "tab" === e.getAttribute("role") && e.setAttribute("aria-selected", !1)), t.classList.add(va), "tab" === t.getAttribute("role") && t.setAttribute("aria-selected", !0), X(t), t.classList.contains("fade") && t.classList.add("show"), t.parentNode && t.parentNode.classList.contains("dropdown-menu") && (t.closest(".dropdown") && ce.find(".dropdown-toggle").forEach(function(t) { return t.classList.add(va) }), t.setAttribute("aria-expanded", !0)), n && n() } }]) && ua(t.prototype, e), n && ua(t, n), o }(); Ot.on(document, e, '[data-mdb-toggle="tab"], [data-mdb-toggle="pill"], [data-mdb-toggle="list"]', function(t) { t.preventDefault(), (it.getData(this, pa) || new _a(this)).show() }), rt("tab", _a); var wa = _a; function Oa(t) { return (Oa = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function Ea(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function ja(t, e, n) { return (ja = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = xa(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function ka(t, e) { return (ka = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function Sa(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = xa(n); return t = r ? (t = xa(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== Oa(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function xa(t) { return (xa = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var Pa = "tab", At = "mdb.".concat(Pa), e = ".".concat(At), Ta = "show.bs.tab", Da = "shown.bs.tab", Aa = "hide.bs.tab", Ca = "hidden.bs.tab", La = "show".concat(e), Ra = "shown".concat(e), Ia = "hide".concat(e), Na = "hidden".concat(e), Ma = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && ka(t, e) }(o, wa); var t, e, n, r = Sa(o); function o(t) { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (t = r.call(this, t))._previous = null, t._init(), t } return t = o, n = [{ key: "NAME", get: function() { return Pa } }], (e = [{ key: "dispose", value: function() { D.off(this._element, Ta), D.off(this._element, Da), ja(xa(o.prototype), "dispose", this).call(this) } }, { key: "show", value: function() { var t, e, n, r, o = this; this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains("active") || this._element.classList.contains("disabled") || (t = function(t) { t = i(t); return t ? document.querySelector(t) : null }(this._element), (r = this._element.closest(".nav, .list-group")) && (n = "UL" === r.nodeName || "OL" === r.nodeName ? ":scope > li > .active" : ".active", this._previous = Z.find(n, r), this._previous = this._previous[this._previous.length - 1]), n = e = null, this._previous && (e = D.trigger(this._previous, Aa, { relatedTarget: this._element }), n = D.trigger(this._previous, Ia, { relatedTarget: this._element })), D.trigger(this._element, Ta, { relatedTarget: this._previous }).defaultPrevented || null !== e && e.defaultPrevented || null !== n && n.defaultPrevented || (this._activate(this._element, r), r = function() { D.trigger(o._previous, Ca, { relatedTarget: o._element }), D.trigger(o._previous, Na, { relatedTarget: o._element }), D.trigger(o._element, Da, { relatedTarget: o._previous }) }, t ? this._activate(t, t.parentNode, r) : r())) } }, { key: "_init", value: function() { this._bindShowEvent(), this._bindShownEvent(), this._bindHideEvent(), this._bindHiddenEvent() } }, { key: "_bindShowEvent", value: function() { var e = this; D.on(this._element, Ta, function(t) { D.trigger(e._element, La, { relatedTarget: t.relatedTarget }) }) } }, { key: "_bindShownEvent", value: function() { var e = this; D.on(this._element, Da, function(t) { D.trigger(e._element, Ra, { relatedTarget: t.relatedTarget }) }) } }, { key: "_bindHideEvent", value: function() { var t = this; D.on(this._previous, Aa, function() { D.trigger(t._previous, Ia) }) } }, { key: "_bindHiddenEvent", value: function() { var t = this; D.on(this._previous, Ca, function() { D.trigger(t._previous, Na) }) } }]) && Ea(t.prototype, e), n && Ea(t, n), o }(); Z.find('[data-mdb-toggle="tab"], [data-mdb-toggle="pill"], [data-mdb-toggle="list"]').forEach(function(t) { Ma.getInstance(t) || new Ma(t) }), u(function() { var t, e = r(); e && (t = e.fn.tab, e.fn.tab = Ma.jQueryInterface, e.fn.tab.Constructor = Ma, e.fn.tab.noConflict = function() { return e.fn.tab = t, Ma.jQueryInterface }) }); var Ha = Ma; function Ba(t) { return (Ba = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function Ua(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function Wa(t, e, n) { return (Wa = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = za(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function Fa(t, e) { return (Fa = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function Qa(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = za(n); return t = r ? (t = za(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== Ba(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function za(t) { return (za = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var Ka = "tooltip", At = "mdb.".concat(Ka), e = ".".concat(At), Ya = "hide.bs.tooltip", qa = "hidden.bs.tooltip", Va = "show.bs.tooltip", Xa = "shown.bs.tooltip", $a = "inserted.bs.tooltip", Ga = "hide".concat(e), Ja = "hidden".concat(e), Za = "show".concat(e), tu = "shown".concat(e), eu = "inserted".concat(e), nu = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && Fa(t, e) }(o, Yi); var t, e, n, r = Qa(o); function o(t, e) { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (e = r.call(this, t, e))._init(), e } return t = o, n = [{ key: "NAME", get: function() { return Ka } }], (e = [{ key: "dispose", value: function() { D.off(this._element, Va), D.off(this._element, Xa), D.off(this._element, Ya), D.off(this._element, qa), D.off(this._element, $a), Wa(za(o.prototype), "dispose", this).call(this) } }, { key: "_init", value: function() { this._bindShowEvent(), this._bindShownEvent(), this._bindHideEvent(), this._bindHiddenEvent(), this._bindHidePreventedEvent() } }, { key: "_bindShowEvent", value: function() { var t = this; D.on(this.element, Va, function() { D.trigger(t.element, Za) }) } }, { key: "_bindShownEvent", value: function() { var t = this; D.on(this.element, Xa, function() { D.trigger(t.element, tu) }) } }, { key: "_bindHideEvent", value: function() { var t = this; D.on(this.element, Ya, function() { D.trigger(t.element, Ga) }) } }, { key: "_bindHiddenEvent", value: function() { var t = this; D.on(this.element, qa, function() { D.trigger(t.element, Ja) }) } }, { key: "_bindHidePreventedEvent", value: function() { var t = this; D.on(this.element, $a, function() { D.trigger(t.element, eu) }) } }]) && Ua(t.prototype, e), n && Ua(t, n), o }(); Z.find('[data-mdb-toggle="tooltip"]').forEach(function(t) { nu.getInstance(t) || new nu(t) }), u(function() { var t, e = r(); e && (t = e.fn[Ka], e.fn[Ka] = nu.jQueryInterface, e.fn[Ka].Constructor = nu, e.fn[Ka].noConflict = function() { return e.fn[Ka] = t, nu.jQueryInterface }) }); var ru = nu; function ou(t) { return (ou = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function iu(e, t) { var n, r = Object.keys(e); return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(e), t && (n = n.filter(function(t) { return Object.getOwnPropertyDescriptor(e, t).enumerable })), r.push.apply(r, n)), r } function cu(r) { for (var t = 1; t < arguments.length; t++) { var o = null != arguments[t] ? arguments[t] : {}; t % 2 ? iu(Object(o), !0).forEach(function(t) { var e, n; e = r, t = o[n = t], n in e ? Object.defineProperty(e, n, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = t }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(r, Object.getOwnPropertyDescriptors(o)) : iu(Object(o)).forEach(function(t) { Object.defineProperty(r, t, Object.getOwnPropertyDescriptor(o, t)) }) } return r } function au(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function uu(t, e, n) { return (uu = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = fu(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function su(t, e) { return (su = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function lu(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = fu(n); return t = r ? (t = fu(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== ou(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function fu(t) { return (fu = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var pu = "bs.toast", At = ".".concat(pu), du = "click.dismiss".concat(At), hu = "hide".concat(At), yu = "hidden".concat(At), gu = "show".concat(At), vu = "shown".concat(At), mu = "show", bu = "showing", _u = { animation: "boolean", autohide: "boolean", delay: "number" }, wu = { animation: !0, autohide: !0, delay: 5e3 }, e = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && su(t, e) }(o, jt); var t, e, n, r = lu(o); function o(t, e) { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (t = r.call(this, t))._config = t._getConfig(e), t._timeout = null, t._setListeners(), t } return t = o, n = [{ key: "DefaultType", get: function() { return _u } }, { key: "Default", get: function() { return wu } }, { key: "DATA_KEY", get: function() { return pu } }, { key: "jQueryInterface", value: function(n) { return this.each(function() { var t = it.getData(this, pu), e = "object" === ou(n) && n, t = t || new o(this, e); if ("string" == typeof n) { if (void 0 === t[n]) throw new TypeError('No method named "'.concat(n, '"')); t[n](this) } }) } }], (e = [{ key: "show", value: function() { var t, e, n = this; Ot.trigger(this._element, gu).defaultPrevented || (this._clearTimeout(), this._config.animation && this._element.classList.add("fade"), t = function() { n._element.classList.remove(bu), n._element.classList.add(mu), Ot.trigger(n._element, vu), n._config.autohide && (n._timeout = setTimeout(function() { n.hide() }, n._config.delay)) }, this._element.classList.remove("hide"), X(this._element), this._element.classList.add(bu), this._config.animation ? (e = W(this._element), Ot.one(this._element, "transitionend", t), z(this._element, e)) : t()) } }, { key: "hide", value: function() { var t, e, n = this; this._element.classList.contains(mu) && (Ot.trigger(this._element, hu).defaultPrevented || (t = function() { n._element.classList.add("hide"), Ot.trigger(n._element, yu) }, this._element.classList.remove(mu), this._config.animation ? (e = W(this._element), Ot.one(this._element, "transitionend", t), z(this._element, e)) : t())) } }, { key: "dispose", value: function() { this._clearTimeout(), this._element.classList.contains(mu) && this._element.classList.remove(mu), Ot.off(this._element, du), uu(fu(o.prototype), "dispose", this).call(this), this._config = null } }, { key: "_getConfig", value: function(t) { return t = cu(cu(cu({}, wu), re.getDataAttributes(this._element)), "object" === ou(t) && t ? t : {}), K("toast", t, this.constructor.DefaultType), t } }, { key: "_setListeners", value: function() { var t = this; Ot.on(this._element, du, '[data-mdb-dismiss="toast"]', function() { return t.hide() }) } }, { key: "_clearTimeout", value: function() { clearTimeout(this._timeout), this._timeout = null } }]) && au(t.prototype, e), n && au(t, n), o }(); rt("toast", e); var Ou = e; function Eu(t) { return (Eu = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function ju(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function ku(t, e, n) { return (ku = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = Pu(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function Su(t, e) { return (Su = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function xu(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = Pu(n); return t = r ? (t = Pu(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== Eu(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function Pu(t) { return (Pu = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var Tu = "toast", At = "mdb.".concat(Tu), e = ".".concat(At), Du = "show.bs.toast", Au = "shown.bs.toast", Cu = "hide.bs.toast", Lu = "hidden.bs.toast", Ru = "show".concat(e), Iu = "shown".concat(e), Nu = "hide".concat(e), Mu = "hidden".concat(e), Hu = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && Su(t, e) }(o, Ou); var t, e, n, r = xu(o); function o(t, e) { return function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (e = r.call(this, t, e))._init(), e } return t = o, n = [{ key: "NAME", get: function() { return Tu } }], (e = [{ key: "dispose", value: function() { D.off(this._element, Du), D.off(this._element, Au), D.off(this._element, Cu), D.off(this._element, Lu), ku(Pu(o.prototype), "dispose", this).call(this) } }, { key: "_init", value: function() { this._bindShowEvent(), this._bindShownEvent(), this._bindHideEvent(), this._bindHiddenEvent() } }, { key: "_bindShowEvent", value: function() { var t = this; D.on(this._element, Du, function() { D.trigger(t._element, Ru) }) } }, { key: "_bindShownEvent", value: function() { var t = this; D.on(this._element, Au, function() { D.trigger(t._element, Iu) }) } }, { key: "_bindHideEvent", value: function() { var t = this; D.on(this._element, Cu, function() { D.trigger(t._element, Nu) }) } }, { key: "_bindHiddenEvent", value: function() { var t = this; D.on(this._element, Lu, function() { D.trigger(t._element, Mu) }) } }]) && ju(t.prototype, e), n && ju(t, n), o }(); Z.find(".toast").forEach(function(t) { Hu.getInstance(t) || new Hu(t) }), u(function() { var t, e = r(); e && (t = e.fn[Tu], e.fn[Tu] = Hu.jQueryInterface, e.fn[Tu].Constructor = Hu, e.fn[Tu].noConflict = function() { return e.fn[Tu] = t, Hu.jQueryInterface }) }); var Bu = Hu; n(140); function Uu(t) { return (Uu = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function Wu(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } var Fu = "input", Qu = "mdb.input", At = "form-outline", zu = "active", Ku = "form-notch", Yu = "form-notch-leading", qu = "form-notch-middle", Vu = ".".concat(At, " input"), Xu = ".".concat(At, " textarea"), $u = ".".concat(Ku), Gu = ".".concat(Yu), Ju = ".".concat(qu), Zu = ".".concat("form-helper"), ts = function() { function o(t) { ! function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), this._element = t, this._label = null, this._labelWidth = 0, this._labelMarginLeft = 0, this._notchLeading = null, this._notchMiddle = null, this._notchTrailing = null, this._initiated = !1, this._helper = null, this._counter = !1, this._counterElement = null, this._maxLength = 0, this._leadingIcon = null, this._element && (p.setData(t, Qu, this), this.init()) } var t, e, n; return t = o, n = [{ key: "NAME", get: function() { return Fu } }, { key: "activate", value: function(e) { return function(t) { e._activate(t) } } }, { key: "deactivate", value: function(e) { return function(t) { e._deactivate(t) } } }, { key: "jQueryInterface", value: function(n, r) { return this.each(function() { var t = p.getData(this, Qu), e = "object" === Uu(n) && n; if ((t || !/dispose/.test(n)) && (t = t || new o(this), "string" == typeof n)) { if (void 0 === t[n]) throw new TypeError('No method named "'.concat(n, '"')); t[n](r) } }) } }, { key: "getInstance", value: function(t) { return p.getData(t, Qu) } }], (e = [{ key: "input", get: function() { return Z.findOne("input", this._element) || Z.findOne("textarea", this._element) } }, { key: "init", value: function() { this._initiated || (this._getLabelData(), this._applyDivs(), this._applyNotch(), this._activate(), this._getHelper(), this._getCounter(), this._initiated = !0) } }, { key: "update", value: function() { this._getLabelData(), this._getNotchData(), this._applyNotch(), this._activate(), this._getHelper(), this._getCounter() } }, { key: "forceActive", value: function() { I.addClass(this.input, zu) } }, { key: "forceInactive", value: function() { I.removeClass(this.input, zu) } }, { key: "dispose", value: function() { this._removeBorder(), p.removeData(this._element, Qu), this._element = null } }, { key: "_getLabelData", value: function() { this._label = Z.findOne("label", this._element), null === this._label ? this._showPlaceholder() : (this._getLabelWidth(), this._getLabelPositionInInputGroup()) } }, { key: "_getHelper", value: function() { this._helper = Z.findOne(Zu, this._element) } }, { key: "_getCounter", value: function() { this._counter = I.getDataAttribute(this.input, "showcounter"), this._counter && (this._maxLength = this.input.maxLength, this._showCounter()) } }, { key: "_showCounter", value: function() { this._counterElement = document.createElement("div"), I.addClass(this._counterElement, "form-counter"); var t = this.input.value.length; this._counterElement.innerHTML = "".concat(t, " / ").concat(this._maxLength), this._helper.appendChild(this._counterElement), this._bindCounter() } }, { key: "_bindCounter", value: function() { var e = this; D.on(this.input, "input", function() { var t = e.input.value.length; e._counterElement.innerHTML = "".concat(t, " / ").concat(e._maxLength) }) } }, { key: "_showPlaceholder", value: function() { I.addClass(this.input, "placeholder-active") } }, { key: "_getNotchData", value: function() { this._notchMiddle = Z.findOne(Ju, this._element), this._notchLeading = Z.findOne(Gu, this._element) } }, { key: "_getLabelWidth", value: function() { this._labelWidth = .8 * this._label.clientWidth + 8 } }, { key: "_getLabelPositionInInputGroup", value: function() { var t; this._labelMarginLeft = 0, this._element.classList.contains("input-group") && (t = this.input, t = Z.prev(t, ".input-group-text")[0], this._labelMarginLeft = void 0 === t ? 0 : t.offsetWidth - 1) } }, { key: "_applyDivs", value: function() { var t = s("div"); I.addClass(t, Ku), this._notchLeading = s("div"), I.addClass(this._notchLeading, Yu), this._notchMiddle = s("div"), I.addClass(this._notchMiddle, qu), this._notchTrailing = s("div"), I.addClass(this._notchTrailing, "form-notch-trailing"), t.append(this._notchLeading), t.append(this._notchMiddle), t.append(this._notchTrailing), this._element.append(t) } }, { key: "_applyNotch", value: function() { this._notchMiddle.style.width = "".concat(this._labelWidth, "px"), this._notchLeading.style.width = "".concat(this._labelMarginLeft + 9, "px"), null !== this._label && (this._label.style.marginLeft = "".concat(this._labelMarginLeft, "px")) } }, { key: "_removeBorder", value: function() { var t = Z.findOne($u, this._element); t && t.remove() } }, { key: "_activate", value: function(e) { var n = this; u(function() { n._getElements(e); var t = e ? e.target : n.input; "" !== t.value && I.addClass(t, zu) }) } }, { key: "_getElements", value: function(t) { var e; t && (this._element = t.target.parentNode, this._label = Z.findOne("label", this._element)), t && this._label && (e = this._labelWidth, this._getLabelData(), e !== this._labelWidth && (this._notchMiddle = Z.findOne(".form-notch-middle", t.target.parentNode), this._notchLeading = Z.findOne(Gu, t.target.parentNode), this._applyNotch())) } }, { key: "_deactivate", value: function(t) { t = t ? t.target : this.input; "" === t.value && t.classList.remove(zu) } }]) && Wu(t.prototype, e), n && Wu(t, n), o }(); D.on(document, "focus", Vu, ts.activate(new ts)), D.on(document, "input", Vu, ts.activate(new ts)), D.on(document, "blur", Vu, ts.deactivate(new ts)), D.on(document, "focus", Xu, ts.activate(new ts)), D.on(document, "input", Xu, ts.activate(new ts)), D.on(document, "blur", Xu, ts.deactivate(new ts)), D.on(window, "shown.bs.modal", function(t) { Z.find(Vu, t.target).forEach(function(t) { t = ts.getInstance(t.parentNode); t && t.update() }), Z.find(Xu, t.target).forEach(function(t) { t = ts.getInstance(t.parentNode); t && t.update() }) }), D.on(window, "shown.bs.dropdown", function(t) { t = t.target.parentNode.querySelector(".dropdown-menu"); t && (Z.find(Vu, t).forEach(function(t) { t = ts.getInstance(t.parentNode); t && t.update() }), Z.find(Xu, t).forEach(function(t) { t = ts.getInstance(t.parentNode); t && t.update() })) }), D.on(window, "shown.bs.tab", function(t) { t = t.target.href.split("#")[1], t = Z.findOne("#".concat(t)); Z.find(Vu, t).forEach(function(t) { t = ts.getInstance(t.parentNode); t && t.update() }), Z.find(Xu, t).forEach(function(t) { t = ts.getInstance(t.parentNode); t && t.update() }) }), Z.find(".".concat(At)).map(function(t) { return new ts(t) }), D.on(window, "reset", function(t) { Z.find(Vu, t.target).forEach(function(t) { t = ts.getInstance(t.parentNode); t && t.forceInactive() }), Z.find(Xu, t.target).forEach(function(t) { t = ts.getInstance(t.parentNode); t && t.forceInactive() }) }), D.on(window, "onautocomplete", function(t) { var e = ts.getInstance(t.target.parentNode); e && t.cancelable && e.forceActive() }), u(function() { var t, e = r(); e && (t = e.fn[Fu], e.fn[Fu] = ts.jQueryInterface, e.fn[Fu].Constructor = ts, e.fn[Fu].noConflict = function() { return e.fn[Fu] = t, ts.jQueryInterface }) }); var es = ts; n(141); function ns(e, t) { var n, r = Object.keys(e); return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(e), t && (n = n.filter(function(t) { return Object.getOwnPropertyDescriptor(e, t).enumerable })), r.push.apply(r, n)), r } function rs(r) { for (var t = 1; t < arguments.length; t++) { var o = null != arguments[t] ? arguments[t] : {}; t % 2 ? ns(Object(o), !0).forEach(function(t) { var e, n; e = r, t = o[n = t], n in e ? Object.defineProperty(e, n, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = t }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(r, Object.getOwnPropertyDescriptors(o)) : ns(Object(o)).forEach(function(t) { Object.defineProperty(r, t, Object.getOwnPropertyDescriptor(o, t)) }) } return r } function os(t) { return function(t) { if (Array.isArray(t)) return is(t) }(t) || function(t) { if ("undefined" != typeof Symbol && Symbol.iterator in Object(t)) return Array.from(t) }(t) || function(t, e) { if (!t) return; if ("string" == typeof t) return is(t, e); var n = Object.prototype.toString.call(t).slice(8, -1); "Object" === n && t.constructor && (n = t.constructor.name); if ("Map" === n || "Set" === n) return Array.from(t); if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return is(t, e) }(t) || function() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") }() } function is(t, e) { (null == e || e > t.length) && (e = t.length); for (var n = 0, r = new Array(e); n < e; n++) r[n] = t[n]; return r } function cs(t) { return (cs = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function as(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function us(t, e, n) { return (us = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = fs(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function ss(t, e) { return (ss = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function ls(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = fs(n); return t = r ? (t = fs(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== cs(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function fs(t) { return (fs = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var ps = "dropdown", ds = "bs.dropdown", hs = ".".concat(ds), e = ".data-api", ys = "Escape", gs = "ArrowUp", vs = "ArrowDown", ms = new RegExp("".concat(gs, "|").concat(vs, "|").concat(ys)), bs = "hide".concat(hs), _s = "hidden".concat(hs), ws = "show".concat(hs), Os = "shown".concat(hs), Es = "click".concat(hs), At = "click".concat(hs).concat(e), n = "keydown".concat(hs).concat(e), e = "keyup".concat(hs).concat(e), js = "disabled", ks = "show", Ss = '[data-mdb-toggle="dropdown"]', xs = ".dropdown-menu", Ps = nt ? "top-end" : "top-start", Ts = nt ? "top-start" : "top-end", Ds = nt ? "bottom-end" : "bottom-start", As = nt ? "bottom-start" : "bottom-end", Cs = nt ? "left-start" : "right-start", Ls = nt ? "right-start" : "left-start", Rs = { offset: [0, 2], flip: !0, boundary: "clippingParents", reference: "toggle", display: "dynamic", popperConfig: null }, Is = { offset: "(array|string|function)", flip: "boolean", boundary: "(string|element)", reference: "(string|element|object)", display: "string", popperConfig: "(null|object|function)" }, Ns = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && ss(t, e) }(i, jt); var t, e, n, r = ls(i); function i(t, e) { return function(t) { if (!(t instanceof i)) throw new TypeError("Cannot call a class as a function") }(this), (t = r.call(this, t))._popper = null, t._config = t._getConfig(e), t._menu = t._getMenuElement(), t._inNavbar = t._detectNavbar(), t._addEventListeners(), t } return t = i, n = [{ key: "Default", get: function() { return Rs } }, { key: "DefaultType", get: function() { return Is } }, { key: "DATA_KEY", get: function() { return ds } }, { key: "dropdownInterface", value: function(t, e) { var n = it.getData(t, ds), r = "object" === cs(e) ? e : null, n = n || new i(t, r); if ("string" == typeof e) { if (void 0 === n[e]) throw new TypeError('No method named "'.concat(e, '"')); n[e]() } } }, { key: "jQueryInterface", value: function(t) { return this.each(function() { i.dropdownInterface(this, t) }) } }, { key: "clearMenus", value: function(t) { if (!t || 2 !== t.button && ("keyup" !== t.type || "Tab" === t.key)) for (var e = ce.find(Ss), n = 0, r = e.length; n < r; n++) { var o, i, c = it.getData(e[n], ds), a = { relatedTarget: e[n] }; t && "click" === t.type && (a.clickEvent = t), c && (o = c._menu, e[n].classList.contains(ks) && (t && ("click" === t.type && /input|textarea/i.test(t.target.tagName) || "keyup" === t.type && "Tab" === t.key) && o.contains(t.target) || Ot.trigger(e[n], bs, a).defaultPrevented || ("ontouchstart" in document.documentElement && (i = []).concat.apply(i, os(document.body.children)).forEach(function(t) { return Ot.off(t, "mouseover", null, V()) }), e[n].setAttribute("aria-expanded", "false"), c._popper && c._popper.destroy(), o.classList.remove(ks), e[n].classList.remove(ks), re.removeDataAttribute(o, "popper"), Ot.trigger(e[n], _s, a)))) } } }, { key: "getParentFromElement", value: function(t) { return U(t) || t.parentNode } }, { key: "dataApiKeydownHandler", value: function(t) { if ((/input|textarea/i.test(t.target.tagName) ? !("Space" === t.key || t.key !== ys && (t.key !== vs && t.key !== gs || t.target.closest(xs))) : ms.test(t.key)) && (t.preventDefault(), t.stopPropagation(), !this.disabled && !this.classList.contains(js))) { var e = i.getParentFromElement(this), n = this.classList.contains(ks); if (t.key === ys) return (this.matches(Ss) ? this : ce.prev(this, Ss)[0]).focus(), void i.clearMenus(); n || t.key !== gs && t.key !== vs ? n && "Space" !== t.key ? (n = ce.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)", e).filter(Y)).length && (e = n.indexOf(t.target), t.key === gs && 0 < e && e--, t.key === vs && e < n.length - 1 && e++, n[e = -1 === e ? 0 : e].focus()) : i.clearMenus() : (this.matches(Ss) ? this : ce.prev(this, Ss)[0]).click() } } }], (e = [{ key: "toggle", value: function() { var t; this._element.disabled || this._element.classList.contains(js) || (t = this._element.classList.contains(ks), i.clearMenus(), t || this.show()) } }, { key: "show", value: function() { if (!(this._element.disabled || this._element.classList.contains(js) || this._menu.classList.contains(ks))) { var t = i.getParentFromElement(this._element), e = { relatedTarget: this._element }; if (!Ot.trigger(this._element, ws, e).defaultPrevented) { if (this._inNavbar) re.setDataAttribute(this._menu, "popper", "none"); else { if (void 0 === c) throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)"); var n = this._element; "parent" === this._config.reference ? n = t : Q(this._config.reference) ? (n = this._config.reference, void 0 !== this._config.reference.jquery && (n = this._config.reference[0])) : "object" === cs(this._config.reference) && (n = this._config.reference); var r = this._getPopperConfig(), o = r.modifiers.find(function(t) { return "applyStyles" === t.name && !1 === t.enabled }); this._popper = di(n, this._menu, r), o && re.setDataAttribute(this._menu, "popper", "static") } "ontouchstart" in document.documentElement && !t.closest(".navbar-nav") && (t = []).concat.apply(t, os(document.body.children)).forEach(function(t) { return Ot.on(t, "mouseover", null, V()) }), this._element.focus(), this._element.setAttribute("aria-expanded", !0), this._menu.classList.toggle(ks), this._element.classList.toggle(ks), Ot.trigger(this._element, Os, e) } } } }, { key: "hide", value: function() { var t; this._element.disabled || this._element.classList.contains(js) || !this._menu.classList.contains(ks) || (t = { relatedTarget: this._element }, Ot.trigger(this._element, bs, t).defaultPrevented || (this._popper && this._popper.destroy(), this._menu.classList.toggle(ks), this._element.classList.toggle(ks), re.removeDataAttribute(this._menu, "popper"), Ot.trigger(this._element, _s, t))) } }, { key: "dispose", value: function() { us(fs(i.prototype), "dispose", this).call(this), Ot.off(this._element, hs), this._menu = null, this._popper && (this._popper.destroy(), this._popper = null) } }, { key: "update", value: function() { this._inNavbar = this._detectNavbar(), this._popper && this._popper.update() } }, { key: "_addEventListeners", value: function() { var e = this; Ot.on(this._element, Es, function(t) { t.preventDefault(), t.stopPropagation(), e.toggle() }) } }, { key: "_getConfig", value: function(t) { if (t = rs(rs(rs({}, this.constructor.Default), re.getDataAttributes(this._element)), t), K(ps, t, this.constructor.DefaultType), "object" === cs(t.reference) && !Q(t.reference) && "function" != typeof t.reference.getBoundingClientRect) throw new TypeError("".concat(ps.toUpperCase(), ': Option "reference" provided type "object" without a required "getBoundingClientRect" method.')); return t } }, { key: "_getMenuElement", value: function() { return ce.next(this._element, xs)[0] } }, { key: "_getPlacement", value: function() { var t = this._element.parentNode; if (t.classList.contains("dropend")) return Cs; if (t.classList.contains("dropstart")) return Ls; var e = "end" === getComputedStyle(this._menu).getPropertyValue("--bs-position").trim(); return t.classList.contains("dropup") ? e ? Ts : Ps : e ? As : Ds } }, { key: "_detectNavbar", value: function() { return null !== this._element.closest(".".concat("navbar")) } }, { key: "_getOffset", value: function() { var e = this, n = this._config.offset; return "string" == typeof n ? n.split(",").map(function(t) { return Number.parseInt(t, 10) }) : "function" == typeof n ? function(t) { return n(t, e._element) } : n } }, { key: "_getPopperConfig", value: function() { var t = { placement: this._getPlacement(), modifiers: [{ name: "preventOverflow", options: { altBoundary: this._config.flip, boundary: this._config.boundary } }, { name: "offset", options: { offset: this._getOffset() } }] }; return "static" === this._config.display && (t.modifiers = [{ name: "applyStyles", enabled: !1 }]), rs(rs({}, t), "function" == typeof this._config.popperConfig ? this._config.popperConfig(t) : this._config.popperConfig) } }]) && as(t.prototype, e), n && as(t, n), i }(); Ot.on(document, n, Ss, Ns.dataApiKeydownHandler), Ot.on(document, n, xs, Ns.dataApiKeydownHandler), Ot.on(document, At, Ns.clearMenus), Ot.on(document, e, Ns.clearMenus), Ot.on(document, At, Ss, function(t) { t.preventDefault(), t.stopPropagation(), Ns.dropdownInterface(this, "toggle") }), Ot.on(document, At, ".dropdown form", function(t) { return t.stopPropagation() }), rt(ps, Ns); var Ms = Ns; function Hs(t) { return (Hs = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function Bs(e, t) { var n, r = Object.keys(e); return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(e), t && (n = n.filter(function(t) { return Object.getOwnPropertyDescriptor(e, t).enumerable })), r.push.apply(r, n)), r } function Us(r) { for (var t = 1; t < arguments.length; t++) { var o = null != arguments[t] ? arguments[t] : {}; t % 2 ? Bs(Object(o), !0).forEach(function(t) { var e, n; e = r, t = o[n = t], n in e ? Object.defineProperty(e, n, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = t }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(r, Object.getOwnPropertyDescriptors(o)) : Bs(Object(o)).forEach(function(t) { Object.defineProperty(r, t, Object.getOwnPropertyDescriptor(o, t)) }) } return r } function Ws(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } function Fs(t, e, n) { return (Fs = "undefined" != typeof Reflect && Reflect.get ? Reflect.get : function(t, e, n) { t = function(t, e) { for (; !Object.prototype.hasOwnProperty.call(t, e) && null !== (t = Ks(t));); return t }(t, e); if (t) { e = Object.getOwnPropertyDescriptor(t, e); return e.get ? e.get.call(n) : e.value } })(t, e, n || t) } function Qs(t, e) { return (Qs = Object.setPrototypeOf || function(t, e) { return t.__proto__ = e, t })(t, e) } function zs(n) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Date.prototype.toString.call(Reflect.construct(Date, [], function() {})), !0 } catch (t) { return !1 } }(); return function() { var t, e = Ks(n); return t = r ? (t = Ks(this).constructor, Reflect.construct(e, arguments, t)) : e.apply(this, arguments), e = this, !(t = t) || "object" !== Hs(t) && "function" != typeof t ? function(t) { if (void 0 !== t) return t; throw new ReferenceError("this hasn't been initialised - super() hasn't been called") }(e) : t } } function Ks(t) { return (Ks = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) { return t.__proto__ || Object.getPrototypeOf(t) })(t) } var Ys = "dropdown", rt = "mdb.".concat(Ys), rt = ".".concat(rt), qs = { offset: [0, 2], flip: !0, boundary: "clippingParents", reference: "toggle", display: "dynamic", popperConfig: null, dropdownAnimation: "on" }, Vs = { offset: "(array|string|function)", flip: "boolean", boundary: "(string|element)", reference: "(string|element|object)", display: "string", popperConfig: "(null|object|function)", dropdownAnimation: "string" }, Xs = "hide.bs.dropdown", $s = "hidden.bs.dropdown", Gs = "show.bs.dropdown", Js = "shown.bs.dropdown", Zs = "hide".concat(rt), tl = "hidden".concat(rt), el = "show".concat(rt), nl = "shown".concat(rt), rl = "animation", ol = "fade-in", il = "fade-out", cl = function() { ! function(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), e && Qs(t, e) }(o, Ms); var t, e, n, r = zs(o); function o(t, e) { ! function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), (t = r.call(this, t, e))._config = t._getConfig(e), t._parent = o.getParentFromElement(t._element), t._menuStyle = "", t._popperPlacement = "", t._mdbPopperConfig = ""; e = window.matchMedia("(prefers-reduced-motion: reduce)").matches; return "on" !== t._config.dropdownAnimation || e || t._init(), t } return t = o, n = [{ key: "NAME", get: function() { return Ys } }], (e = [{ key: "dispose", value: function() { D.off(this._element, Gs), D.off(this._parent, Js), D.off(this._parent, Xs), D.off(this._parent, $s), Fs(Ks(o.prototype), "dispose", this).call(this) } }, { key: "_init", value: function() { this._bindShowEvent(), this._bindShownEvent(), this._bindHideEvent(), this._bindHiddenEvent() } }, { key: "_getConfig", value: function(t) { t = Us(Us(Us({}, qs), I.getDataAttributes(this._element)), t); return a(Ys, t, Vs), t } }, { key: "_getOffset", value: function() { var e = this, n = this._config.offset; return "string" == typeof n ? n.split(",").map(function(t) { return Number.parseInt(t, 10) }) : "function" == typeof n ? function(t) { return n(t, e._element) } : n } }, { key: "_getPopperConfig", value: function() { var t = { placement: this._getPlacement(), modifiers: [{ name: "preventOverflow", options: { altBoundary: this._config.flip, boundary: this._config.boundary } }, { name: "offset", options: { offset: this._getOffset() } }] }; return "static" === this._config.display && (t.modifiers = [{ name: "applyStyles", enabled: !1 }]), Us(Us({}, t), "function" == typeof this._config.popperConfig ? this._config.popperConfig(t) : this._config.popperConfig) } }, { key: "_bindShowEvent", value: function() { var e = this; D.on(this._element, Gs, function(t) { D.trigger(e._element, el, { relatedTarget: t.relatedTarget }), e._dropdownAnimationStart("show") }) } }, { key: "_bindShownEvent", value: function() { var e = this; D.on(this._parent, Js, function(t) { D.trigger(e._parent, nl, { relatedTarget: t.relatedTarget }) }) } }, { key: "_bindHideEvent", value: function() { var e = this; D.on(this._parent, Xs, function(t) { D.trigger(e._parent, Zs, { relatedTarget: t.relatedTarget }), e._menuStyle = e._menu.style.cssText, e._popperPlacement = e._menu.getAttribute("data-popper-placement"), e._mdbPopperConfig = e._menu.getAttribute("data-mdb-popper") }) } }, { key: "_bindHiddenEvent", value: function() { var e = this; D.on(this._parent, $s, function(t) { D.trigger(e._parent, tl, { relatedTarget: t.relatedTarget }), "static" !== e._config.display && "" !== e._menuStyle && (e._menu.style.cssText = e._menuStyle), e._menu.setAttribute("data-popper-placement", e._popperPlacement), e._menu.setAttribute("data-mdb-popper", e._mdbPopperConfig), e._dropdownAnimationStart("hide") }) } }, { key: "_dropdownAnimationStart", value: function(t) { "show" === t ? (this._menu.classList.add(rl, ol), this._menu.classList.remove(il)) : (this._menu.classList.add(rl, il), this._menu.classList.remove(ol)), this._bindAnimationEnd() } }, { key: "_bindAnimationEnd", value: function() { var t = this; D.one(this._menu, "animationend", function() { t._menu.classList.remove(rl, il, ol) }) } }]) && Ws(t.prototype, e), n && Ws(t, n), o }(); Z.find('[data-mdb-toggle="dropdown"]').forEach(function(t) { cl.getInstance(t) || new cl(t) }), u(function() { var t, e = r(); e && (t = e.fn[Ys], e.fn[Ys] = cl.jQueryInterface, e.fn[Ys].Constructor = cl, e.fn[Ys].noConflict = function() { return e.fn[Ys] = t, cl.jQueryInterface }) }); var al = cl; function ul(e, t) { var n, r = Object.keys(e); return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(e), t && (n = n.filter(function(t) { return Object.getOwnPropertyDescriptor(e, t).enumerable })), r.push.apply(r, n)), r } function sl(r) { for (var t = 1; t < arguments.length; t++) { var o = null != arguments[t] ? arguments[t] : {}; t % 2 ? ul(Object(o), !0).forEach(function(t) { var e, n; e = r, t = o[n = t], n in e ? Object.defineProperty(e, n, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = t }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(r, Object.getOwnPropertyDescriptors(o)) : ul(Object(o)).forEach(function(t) { Object.defineProperty(r, t, Object.getOwnPropertyDescriptor(o, t)) }) } return r } function ll(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } var fl = "ripple", pl = "mdb.ripple", dl = "ripple-surface", hl = [".btn", ".ripple"], yl = "ripple-surface-unbound", gl = [0, 0, 0], vl = ["primary", "secondary", "success", "danger", "warning", "info", "light", "dark"], ml = { rippleCentered: !1, rippleColor: "", rippleDuration: "500ms", rippleRadius: 0, rippleUnbound: !1 }, bl = { rippleCentered: "boolean", rippleColor: "string", rippleDuration: "string", rippleRadius: "number", rippleUnbound: "boolean" }, _l = function() { function n(t, e) { ! function(t) { if (!(t instanceof n)) throw new TypeError("Cannot call a class as a function") }(this), this._element = t, this._options = this._getConfig(e), this._element && (p.setData(t, pl, this), I.addClass(this._element, dl)), this._clickHandler = this._createRipple.bind(this), this.init() } var t, e, r; return t = n, r = [{ key: "NAME", get: function() { return fl } }, { key: "autoInitial", value: function(e) { return function(t) { e._autoInit(t) } } }, { key: "jQueryInterface", value: function(t) { return this.each(function() { return p.getData(this, pl) ? null : new n(this, t) }) } }, { key: "getInstance", value: function(t) { return p.getData(t, pl) } }], (e = [{ key: "init", value: function() { this._addClickEvent(this._element) } }, { key: "dispose", value: function() { p.removeData(this._element, pl), D.off(this._element, "click", this._clickHandler), this._element = null, this._options = null } }, { key: "_autoInit", value: function(e) { var n = this; hl.forEach(function(t) { Z.closest(e.target, t) && (n._element = Z.closest(e.target, t)) }), I.addClass(this._element, dl), this._options = this._getConfig(), this._createRipple(e) } }, { key: "_addClickEvent", value: function(t) { D.on(t, "mousedown", this._clickHandler) } }, { key: "_createRipple", value: function(t) { var e = t.layerX, n = t.layerY, r = this._element.offsetHeight, o = this._element.offsetWidth, i = this._durationToMsNumber(this._options.rippleDuration), c = { offsetX: this._options.rippleCentered ? r / 2 : e, offsetY: this._options.rippleCentered ? o / 2 : n, height: r, width: o }, a = this._getDiameter(c), t = this._options.rippleRadius || a / 2, c = { delay: .5 * i, duration: i - .5 * i }, a = { left: this._options.rippleCentered ? "".concat(o / 2 - t, "px") : "".concat(e - t, "px"), top: this._options.rippleCentered ? "".concat(r / 2 - t, "px") : "".concat(n - t, "px"), height: "".concat(2 * this._options.rippleRadius || a, "px"), width: "".concat(2 * this._options.rippleRadius || a, "px"), transitionDelay: "0s, ".concat(c.delay, "ms"), transitionDuration: "".concat(i, "ms, ").concat(c.duration, "ms") }, c = s("div"); this._createHTMLRipple({ wrapper: this._element, ripple: c, styles: a }), this._removeHTMLRipple({ ripple: c, duration: i }) } }, { key: "_createHTMLRipple", value: function(t) { var e = t.wrapper, n = t.ripple, r = t.styles; Object.keys(r).forEach(function(t) { return n.style[t] = r[t] }), n.classList.add("ripple-wave"), "" !== this._options.rippleColor && (this._removeOldColorClasses(e), this._addColor(n, e)), this._toggleUnbound(e), this._appendRipple(n, e) } }, { key: "_removeHTMLRipple", value: function(t) { var e = t.ripple, t = t.duration; setTimeout(function() { e && e.remove() }, t) } }, { key: "_durationToMsNumber", value: function(t) { return Number(t.replace("ms", "").replace("s", "000")) } }, { key: "_getConfig", value: function() { var t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {}, e = I.getDataAttributes(this._element), t = sl(sl(sl({}, ml), e), t); return a(fl, t, bl), t } }, { key: "_getDiameter", value: function(t) { function e(t, e) { return Math.sqrt(Math.pow(t, 2) + Math.pow(e, 2)) } var n = t.offsetX, r = t.offsetY, o = t.height, i = t.width, c = r <= o / 2, a = n <= i / 2, u = r === o / 2 && n === i / 2, s = !0 == c && !1 == a, l = !0 == c && !0 == a, t = !1 == c && !0 == a, a = !1 == c && !1 == a, o = { topLeft: e(n, r), topRight: e(i - n, r), bottomLeft: e(n, o - r), bottomRight: e(i - n, o - r) }, r = 0; return u || a ? r = o.topLeft : t ? r = o.topRight : l ? r = o.bottomRight : s && (r = o.bottomLeft), 2 * r } }, { key: "_appendRipple", value: function(t, e) { e.appendChild(t), setTimeout(function() { I.addClass(t, "active") }, 50) } }, { key: "_toggleUnbound", value: function(t) { !0 === this._options.rippleUnbound ? I.addClass(t, yl) : t.classList.remove(yl) } }, { key: "_addColor", value: function(t, e) { var n = this; vl.find(function(t) { return t === n._options.rippleColor.toLowerCase() }) ? I.addClass(e, "".concat(dl, "-").concat(this._options.rippleColor.toLowerCase())) : (e = this._colorToRGB(this._options.rippleColor).join(","), e = "rgba({{color}}, 0.2) 0, rgba({{color}}, 0.3) 40%, rgba({{color}}, 0.4) 50%, rgba({{color}}, 0.5) 60%, rgba({{color}}, 0) 70%".split("{{color}}").join("".concat(e)), t.style.backgroundImage = "radial-gradient(circle, ".concat(e, ")")) } }, { key: "_removeOldColorClasses", value: function(e) { var t = new RegExp("".concat(dl, "-[a-z]+"), "gi"); (e.classList.value.match(t) || []).forEach(function(t) { e.classList.remove(t) }) } }, { key: "_colorToRGB", value: function(t) { return "transparent" === t.toLowerCase() ? gl : "#" === t[0] ? ((e = t).length < 7 && (e = "#".concat(e[1]).concat(e[1]).concat(e[2]).concat(e[2]).concat(e[3]).concat(e[3])), [parseInt(e.substr(1, 2), 16), parseInt(e.substr(3, 2), 16), parseInt(e.substr(5, 2), 16)]) : (-1 === t.indexOf("rgb") && (n = t, r = document.body.appendChild(document.createElement("fictum")), o = "rgb(1, 2, 3)", r.style.color = o, t = r.style.color !== o ? gl : (r.style.color = n, r.style.color === o || "" === r.style.color ? gl : (n = getComputedStyle(r).color, document.body.removeChild(r), n))), 0 === t.indexOf("rgb") ? ((i = (i = t).match(/[.\d]+/g).map(function(t) { return +Number(t) })).length = 3, i) : gl); var e, n, r, o, i } }]) && ll(t.prototype, e), r && ll(t, r), n }(); hl.forEach(function(t) { D.one(document, "mousedown", t, _l.autoInitial(new _l)) }), u(function() { var t, e = r(); e && (t = e.fn[fl], e.fn[fl] = _l.jQueryInterface, e.fn[fl].Constructor = _l, e.fn[fl].noConflict = function() { return e.fn[fl] = t, _l.jQueryInterface }) }); var wl = _l; function Ol(t) { return (Ol = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function El(t, e) { for (var n = 0; n < e.length; n++) { var r = e[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r) } } var jl = "range", kl = "mdb.range", Sl = "thumb-active", xl = ".".concat("thumb-value"), rt = ".".concat("range"), Pl = function() { function o(t) { ! function(t) { if (!(t instanceof o)) throw new TypeError("Cannot call a class as a function") }(this), this._element = t, this._initiated = !1, this._element && (p.setData(t, kl, this), this.init()) } var t, e, n; return t = o, n = [{ key: "NAME", get: function() { return jl } }, { key: "getInstance", value: function(t) { return p.getData(t, kl) } }, { key: "jQueryInterface", value: function(n, r) { return this.each(function() { var t = p.getData(this, kl), e = "object" === Ol(n) && n; if ((t || !/dispose/.test(n)) && (t = t || new o(this), "string" == typeof n)) { if (void 0 === t[n]) throw new TypeError('No method named "'.concat(n, '"')); t[n](r) } }) } }], (e = [{ key: "rangeInput", get: function() { return Z.findOne("input[type=range]", this._element) } }, { key: "init", value: function() { this._initiated || (this._addThumb(), this._updateValue(), this._thumbPositionUpdate(), this._handleEvents(), this._initiated = !0) } }, { key: "dispose", value: function() { this._disposeEvents(), p.removeData(this._element, kl), this._element = null } }, { key: "_addThumb", value: function() { var t = s("span"); I.addClass(t, "thumb"), t.innerHTML = '<span class="thumb-value"></span>', this._element.append(t) } }, { key: "_updateValue", value: function() { var t = this, e = Z.findOne(xl, this._element); e.textContent = this.rangeInput.value, this.rangeInput.oninput = function() { return e.textContent = t.rangeInput.value } } }, { key: "_handleEvents", value: function() { var t = this; D.on(this.rangeInput, "mousedown", function() { return t._showThumb() }), D.on(this.rangeInput, "mouseup", function() { return t._hideThumb() }), D.on(this.rangeInput, "touchstart", function() { return t._showThumb() }), D.on(this.rangeInput, "touchend", function() { return t._hideThumb() }), D.on(this.rangeInput, "input", function() { return t._thumbPositionUpdate() }) } }, { key: "_disposeEvents", value: function() { D.off(this.rangeInput, "mousedown", this._showThumb), D.off(this.rangeInput, "mouseup", this._hideThumb), D.off(this.rangeInput, "touchstart", this._showThumb), D.off(this.rangeInput, "touchend", this._hideThumb), D.off(this.rangeInput, "input", this._thumbPositionUpdate) } }, { key: "_showThumb", value: function() { I.addClass(this._element.lastElementChild, Sl) } }, { key: "_hideThumb", value: function() { I.removeClass(this._element.lastElementChild, Sl) } }, { key: "_thumbPositionUpdate", value: function() { var t = this.rangeInput, e = t.value, n = t.min || 0, r = t.max || 100, t = this._element.lastElementChild, n = Number(100 * (e - n) / (r - n)); t.firstElementChild.textContent = e, I.style(t, { left: "calc(".concat(n, "% + (").concat(8 - .15 * n, "px))") }) } }]) && El(t.prototype, e), n && El(t, n), o }(); Z.find(rt).map(function(t) { return new Pl(t) }), u(function() { var t, e = r(); e && (t = e.fn[jl], e.fn[jl] = Pl.jQueryInterface, e.fn[jl].Constructor = Pl, e.fn[jl].noConflict = function() { return e.fn[jl] = t, Pl.jQueryInterface }) }); var Tl = Pl }], o.c = r, o.d = function(t, e, n) { o.o(t, e) || Object.defineProperty(t, e, { enumerable: !0, get: n }) }, o.r = function(t) { "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(t, "__esModule", { value: !0 }) }, o.t = function(e, t) { if (1 & t && (e = o(e)), 8 & t) return e; if (4 & t && "object" == typeof e && e && e.__esModule) return e; var n = Object.create(null); if (o.r(n), Object.defineProperty(n, "default", { enumerable: !0, value: e }), 2 & t && "string" != typeof e) for (var r in e) o.d(n, r, function(t) { return e[t] }.bind(null, r)); return n }, o.n = function(t) { var e = t && t.__esModule ? function() { return t.default } : function() { return t }; return o.d(e, "a", e), e }, o.o = function(t, e) { return Object.prototype.hasOwnProperty.call(t, e) }, o.p = "", o(o.s = 143); function o(t) { if (r[t]) return r[t].exports; var e = r[t] = { i: t, l: !1, exports: {} }; return n[t].call(e.exports, e, e.exports, o), e.l = !0, e.exports } var n, r }); //# sourceMappingURL=mdb.min.js.map /* wow */ (function() { var a, b, c, d, e, f = function(a, b) { return function() { return a.apply(b, arguments) } }, g = [].indexOf || function(a) { for (var b = 0, c = this.length; c > b; b++) if (b in this && this[b] === a) return b; return -1 }; b = function() { function a() {} return a.prototype.extend = function(a, b) { var c, d; for (c in b) d = b[c], null == a[c] && (a[c] = d); return a }, a.prototype.isMobile = function(a) { return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(a) }, a.prototype.addEvent = function(a, b, c) { return null != a.addEventListener ? a.addEventListener(b, c, !1) : null != a.attachEvent ? a.attachEvent("on" + b, c) : a[b] = c }, a.prototype.removeEvent = function(a, b, c) { return null != a.removeEventListener ? a.removeEventListener(b, c, !1) : null != a.detachEvent ? a.detachEvent("on" + b, c) : delete a[b] }, a.prototype.innerHeight = function() { return "innerHeight" in window ? window.innerHeight : document.documentElement.clientHeight }, a }(), c = this.WeakMap || this.MozWeakMap || (c = function() { function a() { this.keys = [], this.values = [] } return a.prototype.get = function(a) { var b, c, d, e, f; for (f = this.keys, b = d = 0, e = f.length; e > d; b = ++d) if (c = f[b], c === a) return this.values[b] }, a.prototype.set = function(a, b) { var c, d, e, f, g; for (g = this.keys, c = e = 0, f = g.length; f > e; c = ++e) if (d = g[c], d === a) return void(this.values[c] = b); return this.keys.push(a), this.values.push(b) }, a }()), a = this.MutationObserver || this.WebkitMutationObserver || this.MozMutationObserver || (a = function() { function a() { "undefined" != typeof console && null !== console && console.warn("MutationObserver is not supported by your browser."), "undefined" != typeof console && null !== console && console.warn("WOW.js cannot detect dom mutations, please call .sync() after loading new content.") } return a.notSupported = !0, a.prototype.observe = function() {}, a }()), d = this.getComputedStyle || function(a) { return this.getPropertyValue = function(b) { var c; return "float" === b && (b = "styleFloat"), e.test(b) && b.replace(e, function(a, b) { return b.toUpperCase() }), (null != (c = a.currentStyle) ? c[b] : void 0) || null }, this }, e = /(\-([a-z]){1})/g, this.WOW = function() { function e(a) { null == a && (a = {}), this.scrollCallback = f(this.scrollCallback, this), this.scrollHandler = f(this.scrollHandler, this), this.start = f(this.start, this), this.scrolled = !0, this.config = this.util().extend(a, this.defaults), this.animationNameCache = new c } return e.prototype.defaults = { boxClass: "wow", animateClass: "animated", offset: 0, mobile: !0, live: !0, callback: null }, e.prototype.init = function() { var a; return this.element = window.document.documentElement, "interactive" === (a = document.readyState) || "complete" === a ? this.start() : this.util().addEvent(document, "DOMContentLoaded", this.start), this.finished = [] }, e.prototype.start = function() { var b, c, d, e; if (this.stopped = !1, this.boxes = function() { var a, c, d, e; for (d = this.element.querySelectorAll("." + this.config.boxClass), e = [], a = 0, c = d.length; c > a; a++) b = d[a], e.push(b); return e }.call(this), this.all = function() { var a, c, d, e; for (d = this.boxes, e = [], a = 0, c = d.length; c > a; a++) b = d[a], e.push(b); return e }.call(this), this.boxes.length) if (this.disabled()) this.resetStyle(); else for (e = this.boxes, c = 0, d = e.length; d > c; c++) b = e[c], this.applyStyle(b, !0); return this.disabled() || (this.util().addEvent(window, "scroll", this.scrollHandler), this.util().addEvent(window, "resize", this.scrollHandler), this.interval = setInterval(this.scrollCallback, 50)), this.config.live ? new a(function(a) { return function(b) { var c, d, e, f, g; for (g = [], e = 0, f = b.length; f > e; e++) d = b[e], g.push(function() { var a, b, e, f; for (e = d.addedNodes || [], f = [], a = 0, b = e.length; b > a; a++) c = e[a], f.push(this.doSync(c)); return f }.call(a)); return g } }(this)).observe(document.body, { childList: !0, subtree: !0 }) : void 0 }, e.prototype.stop = function() { return this.stopped = !0, this.util().removeEvent(window, "scroll", this.scrollHandler), this.util().removeEvent(window, "resize", this.scrollHandler), null != this.interval ? clearInterval(this.interval) : void 0 }, e.prototype.sync = function() { return a.notSupported ? this.doSync(this.element) : void 0 }, e.prototype.doSync = function(a) { var b, c, d, e, f; if (null == a && (a = this.element), 1 === a.nodeType) { for (a = a.parentNode || a, e = a.querySelectorAll("." + this.config.boxClass), f = [], c = 0, d = e.length; d > c; c++) b = e[c], g.call(this.all, b) < 0 ? (this.boxes.push(b), this.all.push(b), this.stopped || this.disabled() ? this.resetStyle() : this.applyStyle(b, !0), f.push(this.scrolled = !0)) : f.push(void 0); return f } }, e.prototype.show = function(a) { return this.applyStyle(a), a.className = "" + a.className + " " + this.config.animateClass, null != this.config.callback ? this.config.callback(a) : void 0 }, e.prototype.applyStyle = function(a, b) { var c, d, e; return d = a.getAttribute("data-wow-duration"), c = a.getAttribute("data-wow-delay"), e = a.getAttribute("data-wow-iteration"), this.animate(function(f) { return function() { return f.customStyle(a, b, d, c, e) } }(this)) }, e.prototype.animate = function() { return "requestAnimationFrame" in window ? function(a) { return window.requestAnimationFrame(a) } : function(a) { return a() } }(), e.prototype.resetStyle = function() { var a, b, c, d, e; for (d = this.boxes, e = [], b = 0, c = d.length; c > b; b++) a = d[b], e.push(a.style.visibility = "visible"); return e }, e.prototype.customStyle = function(a, b, c, d, e) { return b && this.cacheAnimationName(a), a.style.visibility = b ? "hidden" : "visible", c && this.vendorSet(a.style, { animationDuration: c }), d && this.vendorSet(a.style, { animationDelay: d }), e && this.vendorSet(a.style, { animationIterationCount: e }), this.vendorSet(a.style, { animationName: b ? "none" : this.cachedAnimationName(a) }), a }, e.prototype.vendors = ["moz", "webkit"], e.prototype.vendorSet = function(a, b) { var c, d, e, f; f = []; for (c in b) d = b[c], a["" + c] = d, f.push(function() { var b, f, g, h; for (g = this.vendors, h = [], b = 0, f = g.length; f > b; b++) e = g[b], h.push(a["" + e + c.charAt(0).toUpperCase() + c.substr(1)] = d); return h }.call(this)); return f }, e.prototype.vendorCSS = function(a, b) { var c, e, f, g, h, i; for (e = d(a), c = e.getPropertyCSSValue(b), i = this.vendors, g = 0, h = i.length; h > g; g++) f = i[g], c = c || e.getPropertyCSSValue("-" + f + "-" + b); return c }, e.prototype.animationName = function(a) { var b; try { b = this.vendorCSS(a, "animation-name").cssText } catch (c) { b = d(a).getPropertyValue("animation-name") } return "none" === b ? "" : b }, e.prototype.cacheAnimationName = function(a) { return this.animationNameCache.set(a, this.animationName(a)) }, e.prototype.cachedAnimationName = function(a) { return this.animationNameCache.get(a) }, e.prototype.scrollHandler = function() { return this.scrolled = !0 }, e.prototype.scrollCallback = function() { var a; return !this.scrolled || (this.scrolled = !1, this.boxes = function() { var b, c, d, e; for (d = this.boxes, e = [], b = 0, c = d.length; c > b; b++) a = d[b], a && (this.isVisible(a) ? this.show(a) : e.push(a)); return e }.call(this), this.boxes.length || this.config.live) ? void 0 : this.stop() }, e.prototype.offsetTop = function(a) { for (var b; void 0 === a.offsetTop;) a = a.parentNode; for (b = a.offsetTop; a = a.offsetParent;) b += a.offsetTop; return b }, e.prototype.isVisible = function(a) { var b, c, d, e, f; return c = a.getAttribute("data-wow-offset") || this.config.offset, f = window.pageYOffset, e = f + Math.min(this.element.clientHeight, this.util().innerHeight()) - c, d = this.offsetTop(a), b = d + a.clientHeight, e >= d && b >= f }, e.prototype.util = function() { return null != this._util ? this._util : this._util = new b }, e.prototype.disabled = function() { return !this.config.mobile && this.util().isMobile(navigator.userAgent) }, e }() }).call(this); /*! skrollr 0.6.26 (2014-06-08) | Alexander Prinzhorn - https://github.com/Prinzhorn/skrollr | Free to use under terms of MIT license */ (function(e, t, r) { "use strict"; function n(r) { if (o = t.documentElement, a = t.body, K(), it = this, r = r || {}, ut = r.constants || {}, r.easing) for (var n in r.easing) U[n] = r.easing[n]; yt = r.edgeStrategy || "set", ct = { beforerender: r.beforerender, render: r.render, keyframe: r.keyframe }, ft = r.forceHeight !== !1, ft && (Vt = r.scale || 1), mt = r.mobileDeceleration || x, dt = r.smoothScrolling !== !1, gt = r.smoothScrollingDuration || E, vt = { targetTop: it.getScrollTop() }, Gt = (r.mobileCheck || function() { return /Android|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent || navigator.vendor || e.opera) })(), Gt ? (st = t.getElementById("skrollr-body"), st && at(), X(), Dt(o, [y, S], [T])) : Dt(o, [y, b], [T]), it.refresh(), St(e, "resize orientationchange", function() { var e = o.clientWidth, t = o.clientHeight; (t !== $t || e !== Mt) && ($t = t, Mt = e, _t = !0) }); var i = Y(); return function l() { Z(), bt = i(l) }(), it } var o, a, i = { get: function() { return it }, init: function(e) { return it || new n(e) }, VERSION: "0.6.26" }, l = Object.prototype.hasOwnProperty, s = e.Math, c = e.getComputedStyle, f = "touchstart", u = "touchmove", m = "touchcancel", p = "touchend", d = "skrollable", g = d + "-before", v = d + "-between", h = d + "-after", y = "skrollr", T = "no-" + y, b = y + "-desktop", S = y + "-mobile", k = "linear", w = 1e3, x = .004, E = 200, A = "start", F = "end", C = "center", D = "bottom", H = "___skrollable_id", I = /^(?:input|textarea|button|select)$/i, P = /^\s+|\s+$/g, N = /^data(?:-(_\w+))?(?:-?(-?\d*\.?\d+p?))?(?:-?(start|end|top|center|bottom))?(?:-?(top|center|bottom))?$/, O = /\s*(@?[\w\-\[\]]+)\s*:\s*(.+?)\s*(?:;|$)/gi, V = /^(@?[a-z\-]+)\[(\w+)\]$/, z = /-([a-z0-9_])/g, q = function(e, t) { return t.toUpperCase() }, L = /[\-+]?[\d]*\.?[\d]+/g, M = /\{\?\}/g, $ = /rgba?\(\s*-?\d+\s*,\s*-?\d+\s*,\s*-?\d+/g, _ = /[a-z\-]+-gradient/g, B = "", G = "", K = function() { var e = /^(?:O|Moz|webkit|ms)|(?:-(?:o|moz|webkit|ms)-)/; if (c) { var t = c(a, null); for (var n in t) if (B = n.match(e) || +n == n && t[n].match(e)) break; if (!B) return B = G = "", r; B = B[0], "-" === B.slice(0, 1) ? (G = B, B = { "-webkit-": "webkit", "-moz-": "Moz", "-ms-": "ms", "-o-": "O" }[B]) : G = "-" + B.toLowerCase() + "-" } }, Y = function() { var t = e.requestAnimationFrame || e[B.toLowerCase() + "RequestAnimationFrame"], r = Pt(); return (Gt || !t) && (t = function(t) { var n = Pt() - r, o = s.max(0, 1e3 / 60 - n); return e.setTimeout(function() { r = Pt(), t() }, o) }), t }, R = function() { var t = e.cancelAnimationFrame || e[B.toLowerCase() + "CancelAnimationFrame"]; return (Gt || !t) && (t = function(t) { return e.clearTimeout(t) }), t }, U = { begin: function() { return 0 }, end: function() { return 1 }, linear: function(e) { return e }, quadratic: function(e) { return e * e }, cubic: function(e) { return e * e * e }, swing: function(e) { return -s.cos(e * s.PI) / 2 + .5 }, sqrt: function(e) { return s.sqrt(e) }, outCubic: function(e) { return s.pow(e - 1, 3) + 1 }, bounce: function(e) { var t; if (.5083 >= e) t = 3; else if (.8489 >= e) t = 9; else if (.96208 >= e) t = 27; else { if (!(.99981 >= e)) return 1; t = 91 } return 1 - s.abs(3 * s.cos(1.028 * e * t) / t) } }; n.prototype.refresh = function(e) { var n, o, a = !1; for (e === r ? (a = !0, lt = [], Bt = 0, e = t.getElementsByTagName("*")) : e.length === r && (e = [e]), n = 0, o = e.length; o > n; n++) { var i = e[n], l = i, s = [], c = dt, f = yt, u = !1; if (a && H in i && delete i[H], i.attributes) { for (var m = 0, p = i.attributes.length; p > m; m++) { var g = i.attributes[m]; if ("data-anchor-target" !== g.name) if ("data-smooth-scrolling" !== g.name) if ("data-edge-strategy" !== g.name) if ("data-emit-events" !== g.name) { var v = g.name.match(N); if (null !== v) { var h = { props: g.value, element: i, eventType: g.name.replace(z, q) }; s.push(h); var y = v[1]; y && (h.constant = y.substr(1)); var T = v[2]; /p$/.test(T) ? (h.isPercentage = !0, h.offset = (0 | T.slice(0, -1)) / 100) : h.offset = 0 | T; var b = v[3], S = v[4] || b; b && b !== A && b !== F ? (h.mode = "relative", h.anchors = [b, S]) : (h.mode = "absolute", b === F ? h.isEnd = !0 : h.isPercentage || (h.offset = h.offset * Vt)) } } else u = !0; else f = g.value; else c = "off" !== g.value; else if (l = t.querySelector(g.value), null === l) throw 'Unable to find anchor target "' + g.value + '"' } if (s.length) { var k, w, x; !a && H in i ? (x = i[H], k = lt[x].styleAttr, w = lt[x].classAttr) : (x = i[H] = Bt++, k = i.style.cssText, w = Ct(i)), lt[x] = { element: i, styleAttr: k, classAttr: w, anchorTarget: l, keyFrames: s, smoothScrolling: c, edgeStrategy: f, emitEvents: u, lastFrameIndex: -1 }, Dt(i, [d], []) } } } for (Et(), n = 0, o = e.length; o > n; n++) { var E = lt[e[n][H]]; E !== r && (J(E), et(E)) } return it }, n.prototype.relativeToAbsolute = function(e, t, r) { var n = o.clientHeight, a = e.getBoundingClientRect(), i = a.top, l = a.bottom - a.top; return t === D ? i -= n : t === C && (i -= n / 2), r === D ? i += l : r === C && (i += l / 2), i += it.getScrollTop(), 0 | i + .5 }, n.prototype.animateTo = function(e, t) { t = t || {}; var n = Pt(), o = it.getScrollTop(); return pt = { startTop: o, topDiff: e - o, targetTop: e, duration: t.duration || w, startTime: n, endTime: n + (t.duration || w), easing: U[t.easing || k], done: t.done }, pt.topDiff || (pt.done && pt.done.call(it, !1), pt = r), it }, n.prototype.stopAnimateTo = function() { pt && pt.done && pt.done.call(it, !0), pt = r }, n.prototype.isAnimatingTo = function() { return !!pt }, n.prototype.isMobile = function() { return Gt }, n.prototype.setScrollTop = function(t, r) { return ht = r === !0, Gt ? Kt = s.min(s.max(t, 0), Ot) : e.scrollTo(0, t), it }, n.prototype.getScrollTop = function() { return Gt ? Kt : e.pageYOffset || o.scrollTop || a.scrollTop || 0 }, n.prototype.getMaxScrollTop = function() { return Ot }, n.prototype.on = function(e, t) { return ct[e] = t, it }, n.prototype.off = function(e) { return delete ct[e], it }, n.prototype.destroy = function() { var e = R(); e(bt), wt(), Dt(o, [T], [y, b, S]); for (var t = 0, n = lt.length; n > t; t++) ot(lt[t].element); o.style.overflow = a.style.overflow = "", o.style.height = a.style.height = "", st && i.setStyle(st, "transform", "none"), it = r, st = r, ct = r, ft = r, Ot = 0, Vt = 1, ut = r, mt = r, zt = "down", qt = -1, Mt = 0, $t = 0, _t = !1, pt = r, dt = r, gt = r, vt = r, ht = r, Bt = 0, yt = r, Gt = !1, Kt = 0, Tt = r }; var X = function() { var n, i, l, c, d, g, v, h, y, T, b, S; St(o, [f, u, m, p].join(" "), function(e) { var o = e.changedTouches[0]; for (c = e.target; 3 === c.nodeType;) c = c.parentNode; switch (d = o.clientY, g = o.clientX, T = e.timeStamp, I.test(c.tagName) || e.preventDefault(), e.type) { case f: n && n.blur(), it.stopAnimateTo(), n = c, i = v = d, l = g, y = T; break; case u: I.test(c.tagName) && t.activeElement !== c && e.preventDefault(), h = d - v, S = T - b, it.setScrollTop(Kt - h, !0), v = d, b = T; break; default: case m: case p: var a = i - d, k = l - g, w = k * k + a * a; if (49 > w) { if (!I.test(n.tagName)) { n.focus(); var x = t.createEvent("MouseEvents"); x.initMouseEvent("click", !0, !0, e.view, 1, o.screenX, o.screenY, o.clientX, o.clientY, e.ctrlKey, e.altKey, e.shiftKey, e.metaKey, 0, null), n.dispatchEvent(x) } return } n = r; var E = h / S; E = s.max(s.min(E, 3), -3); var A = s.abs(E / mt), F = E * A + .5 * mt * A * A, C = it.getScrollTop() - F, D = 0; C > Ot ? (D = (Ot - C) / F, C = Ot) : 0 > C && (D = -C / F, C = 0), A *= 1 - D, it.animateTo(0 | C + .5, { easing: "outCubic", duration: A }) } }), e.scrollTo(0, 0), o.style.overflow = a.style.overflow = "hidden" }, j = function() { var e, t, r, n, a, i, l, c, f, u, m, p = o.clientHeight, d = At(); for (c = 0, f = lt.length; f > c; c++) for (e = lt[c], t = e.element, r = e.anchorTarget, n = e.keyFrames, a = 0, i = n.length; i > a; a++) l = n[a], u = l.offset, m = d[l.constant] || 0, l.frame = u, l.isPercentage && (u *= p, l.frame = u), "relative" === l.mode && (ot(t), l.frame = it.relativeToAbsolute(r, l.anchors[0], l.anchors[1]) - u, ot(t, !0)), l.frame += m, ft && !l.isEnd && l.frame > Ot && (Ot = l.frame); for (Ot = s.max(Ot, Ft()), c = 0, f = lt.length; f > c; c++) { for (e = lt[c], n = e.keyFrames, a = 0, i = n.length; i > a; a++) l = n[a], m = d[l.constant] || 0, l.isEnd && (l.frame = Ot - l.offset + m); e.keyFrames.sort(Nt) } }, W = function(e, t) { for (var r = 0, n = lt.length; n > r; r++) { var o, a, s = lt[r], c = s.element, f = s.smoothScrolling ? e : t, u = s.keyFrames, m = u.length, p = u[0], y = u[u.length - 1], T = p.frame > f, b = f > y.frame, S = T ? p : y, k = s.emitEvents, w = s.lastFrameIndex; if (T || b) { if (T && -1 === s.edge || b && 1 === s.edge) continue; switch (T ? (Dt(c, [g], [h, v]), k && w > -1 && (xt(c, p.eventType, zt), s.lastFrameIndex = -1)) : (Dt(c, [h], [g, v]), k && m > w && (xt(c, y.eventType, zt), s.lastFrameIndex = m)), s.edge = T ? -1 : 1, s.edgeStrategy) { case "reset": ot(c); continue; case "ease": f = S.frame; break; default: case "set": var x = S.props; for (o in x) l.call(x, o) && (a = nt(x[o].value), 0 === o.indexOf("@") ? c.setAttribute(o.substr(1), a) : i.setStyle(c, o, a)); continue } } else 0 !== s.edge && (Dt(c, [d, v], [g, h]), s.edge = 0); for (var E = 0; m - 1 > E; E++) if (f >= u[E].frame && u[E + 1].frame >= f) { var A = u[E], F = u[E + 1]; for (o in A.props) if (l.call(A.props, o)) { var C = (f - A.frame) / (F.frame - A.frame); C = A.props[o].easing(C), a = rt(A.props[o].value, F.props[o].value, C), a = nt(a), 0 === o.indexOf("@") ? c.setAttribute(o.substr(1), a) : i.setStyle(c, o, a) } k && w !== E && ("down" === zt ? xt(c, A.eventType, zt) : xt(c, F.eventType, zt), s.lastFrameIndex = E); break } } }, Z = function() { _t && (_t = !1, Et()); var e, t, n = it.getScrollTop(), o = Pt(); if (pt) o >= pt.endTime ? (n = pt.targetTop, e = pt.done, pt = r) : (t = pt.easing((o - pt.startTime) / pt.duration), n = 0 | pt.startTop + t * pt.topDiff), it.setScrollTop(n, !0); else if (!ht) { var a = vt.targetTop - n; a && (vt = { startTop: qt, topDiff: n - qt, targetTop: n, startTime: Lt, endTime: Lt + gt }), vt.endTime >= o && (t = U.sqrt((o - vt.startTime) / gt), n = 0 | vt.startTop + t * vt.topDiff) } if (Gt && st && i.setStyle(st, "transform", "translate(0, " + -Kt + "px) " + Tt), ht || qt !== n) { zt = n > qt ? "down" : qt > n ? "up" : zt, ht = !1; var l = { curTop: n, lastTop: qt, maxTop: Ot, direction: zt }, s = ct.beforerender && ct.beforerender.call(it, l); s !== !1 && (W(n, it.getScrollTop()), qt = n, ct.render && ct.render.call(it, l)), e && e.call(it, !1) } Lt = o }, J = function(e) { for (var t = 0, r = e.keyFrames.length; r > t; t++) { for (var n, o, a, i, l = e.keyFrames[t], s = {}; null !== (i = O.exec(l.props));) a = i[1], o = i[2], n = a.match(V), null !== n ? (a = n[1], n = n[2]) : n = k, o = o.indexOf("!") ? Q(o) : [o.slice(1)], s[a] = { value: o, easing: U[n] }; l.props = s } }, Q = function(e) { var t = []; return $.lastIndex = 0, e = e.replace($, function(e) { return e.replace(L, function(e) { return 100 * (e / 255) + "%" }) }), G && (_.lastIndex = 0, e = e.replace(_, function(e) { return G + e })), e = e.replace(L, function(e) { return t.push(+e), "{?}" }), t.unshift(e), t }, et = function(e) { var t, r, n = {}; for (t = 0, r = e.keyFrames.length; r > t; t++) tt(e.keyFrames[t], n); for (n = {}, t = e.keyFrames.length - 1; t >= 0; t--) tt(e.keyFrames[t], n) }, tt = function(e, t) { var r; for (r in t) l.call(e.props, r) || (e.props[r] = t[r]); for (r in e.props) t[r] = e.props[r] }, rt = function(e, t, r) { var n, o = e.length; if (o !== t.length) throw "Can't interpolate between \"" + e[0] + '" and "' + t[0] + '"'; var a = [e[0]]; for (n = 1; o > n; n++) a[n] = e[n] + (t[n] - e[n]) * r; return a }, nt = function(e) { var t = 1; return M.lastIndex = 0, e[0].replace(M, function() { return e[t++] }) }, ot = function(e, t) { e = [].concat(e); for (var r, n, o = 0, a = e.length; a > o; o++) n = e[o], r = lt[n[H]], r && (t ? (n.style.cssText = r.dirtyStyleAttr, Dt(n, r.dirtyClassAttr)) : (r.dirtyStyleAttr = n.style.cssText, r.dirtyClassAttr = Ct(n), n.style.cssText = r.styleAttr, Dt(n, r.classAttr))) }, at = function() { Tt = "translateZ(0)", i.setStyle(st, "transform", Tt); var e = c(st), t = e.getPropertyValue("transform"), r = e.getPropertyValue(G + "transform"), n = t && "none" !== t || r && "none" !== r; n || (Tt = "") }; i.setStyle = function(e, t, r) { var n = e.style; if (t = t.replace(z, q).replace("-", ""), "zIndex" === t) n[t] = isNaN(r) ? r : "" + (0 | r); else if ("float" === t) n.styleFloat = n.cssFloat = r; else try { B && (n[B + t.slice(0, 1).toUpperCase() + t.slice(1)] = r), n[t] = r } catch (o) {} }; var it, lt, st, ct, ft, ut, mt, pt, dt, gt, vt, ht, yt, Tt, bt, St = i.addEvent = function(t, r, n) { var o = function(t) { return t = t || e.event, t.target || (t.target = t.srcElement), t.preventDefault || (t.preventDefault = function() { t.returnValue = !1, t.defaultPrevented = !0 }), n.call(this, t) }; r = r.split(" "); for (var a, i = 0, l = r.length; l > i; i++) a = r[i], t.addEventListener ? t.addEventListener(a, n, !1) : t.attachEvent("on" + a, o), Yt.push({ element: t, name: a, listener: n }) }, kt = i.removeEvent = function(e, t, r) { t = t.split(" "); for (var n = 0, o = t.length; o > n; n++) e.removeEventListener ? e.removeEventListener(t[n], r, !1) : e.detachEvent("on" + t[n], r) }, wt = function() { for (var e, t = 0, r = Yt.length; r > t; t++) e = Yt[t], kt(e.element, e.name, e.listener); Yt = [] }, xt = function(e, t, r) { ct.keyframe && ct.keyframe.call(it, e, t, r) }, Et = function() { var e = it.getScrollTop(); Ot = 0, ft && !Gt && (a.style.height = ""), j(), ft && !Gt && (a.style.height = Ot + o.clientHeight + "px"), Gt ? it.setScrollTop(s.min(it.getScrollTop(), Ot)) : it.setScrollTop(e, !0), ht = !0 }, At = function() { var e, t, r = o.clientHeight, n = {}; for (e in ut) t = ut[e], "function" == typeof t ? t = t.call(it) : /p$/.test(t) && (t = t.slice(0, -1) / 100 * r), n[e] = t; return n }, Ft = function() { var e = st && st.offsetHeight || 0, t = s.max(e, a.scrollHeight, a.offsetHeight, o.scrollHeight, o.offsetHeight, o.clientHeight); return t - o.clientHeight }, Ct = function(t) { var r = "className"; return e.SVGElement && t instanceof e.SVGElement && (t = t[r], r = "baseVal"), t[r] }, Dt = function(t, n, o) { var a = "className"; if (e.SVGElement && t instanceof e.SVGElement && (t = t[a], a = "baseVal"), o === r) return t[a] = n, r; for (var i = t[a], l = 0, s = o.length; s > l; l++) i = It(i).replace(It(o[l]), " "); i = Ht(i); for (var c = 0, f = n.length; f > c; c++) - 1 === It(i).indexOf(It(n[c])) && (i += " " + n[c]); t[a] = Ht(i) }, Ht = function(e) { return e.replace(P, "") }, It = function(e) { return " " + e + " " }, Pt = Date.now || function() { return +new Date }, Nt = function(e, t) { return e.frame - t.frame }, Ot = 0, Vt = 1, zt = "down", qt = -1, Lt = Pt(), Mt = 0, $t = 0, _t = !1, Bt = 0, Gt = !1, Kt = 0, Yt = []; "function" == typeof define && define.amd ? define("skrollr", function() { return i }) : "undefined" != typeof module && module.exports ? module.exports = i : e.skrollr = i })(window, document); /* easing */ jQuery.easing.jswing = jQuery.easing.swing, jQuery.extend(jQuery.easing, { def: "easeOutQuad", swing: function(a, b, c, d, e) { return jQuery.easing[jQuery.easing.def](a, b, c, d, e) }, easeInQuad: function(a, b, c, d, e) { return d * (b /= e) * b + c }, easeOutQuad: function(a, b, c, d, e) { return -d * (b /= e) * (b - 2) + c }, easeInOutQuad: function(a, b, c, d, e) { return (b /= e / 2) < 1 ? d / 2 * b * b + c : -d / 2 * (--b * (b - 2) - 1) + c }, easeInCubic: function(a, b, c, d, e) { return d * (b /= e) * b * b + c }, easeOutCubic: function(a, b, c, d, e) { return d * ((b = b / e - 1) * b * b + 1) + c }, easeInOutCubic: function(a, b, c, d, e) { return (b /= e / 2) < 1 ? d / 2 * b * b * b + c : d / 2 * ((b -= 2) * b * b + 2) + c }, easeInQuart: function(a, b, c, d, e) { return d * (b /= e) * b * b * b + c }, easeOutQuart: function(a, b, c, d, e) { return -d * ((b = b / e - 1) * b * b * b - 1) + c }, easeInOutQuart: function(a, b, c, d, e) { return (b /= e / 2) < 1 ? d / 2 * b * b * b * b + c : -d / 2 * ((b -= 2) * b * b * b - 2) + c }, easeInQuint: function(a, b, c, d, e) { return d * (b /= e) * b * b * b * b + c }, easeOutQuint: function(a, b, c, d, e) { return d * ((b = b / e - 1) * b * b * b * b + 1) + c }, easeInOutQuint: function(a, b, c, d, e) { return (b /= e / 2) < 1 ? d / 2 * b * b * b * b * b + c : d / 2 * ((b -= 2) * b * b * b * b + 2) + c }, easeInSine: function(a, b, c, d, e) { return -d * Math.cos(b / e * (Math.PI / 2)) + d + c }, easeOutSine: function(a, b, c, d, e) { return d * Math.sin(b / e * (Math.PI / 2)) + c }, easeInOutSine: function(a, b, c, d, e) { return -d / 2 * (Math.cos(Math.PI * b / e) - 1) + c }, easeInExpo: function(a, b, c, d, e) { return 0 == b ? c : d * Math.pow(2, 10 * (b / e - 1)) + c }, easeOutExpo: function(a, b, c, d, e) { return b == e ? c + d : d * (-Math.pow(2, -10 * b / e) + 1) + c }, easeInOutExpo: function(a, b, c, d, e) { return 0 == b ? c : b == e ? c + d : (b /= e / 2) < 1 ? d / 2 * Math.pow(2, 10 * (b - 1)) + c : d / 2 * (-Math.pow(2, -10 * --b) + 2) + c }, easeInCirc: function(a, b, c, d, e) { return -d * (Math.sqrt(1 - (b /= e) * b) - 1) + c }, easeOutCirc: function(a, b, c, d, e) { return d * Math.sqrt(1 - (b = b / e - 1) * b) + c }, easeInOutCirc: function(a, b, c, d, e) { return (b /= e / 2) < 1 ? -d / 2 * (Math.sqrt(1 - b * b) - 1) + c : d / 2 * (Math.sqrt(1 - (b -= 2) * b) + 1) + c }, easeInElastic: function(a, b, c, d, e) { var f = 1.70158, g = 0, h = d; if (0 == b) return c; if (1 == (b /= e)) return c + d; if (g || (g = .3 * e), h < Math.abs(d)) { h = d; var f = g / 4 } else var f = g / (2 * Math.PI) * Math.asin(d / h); return -(h * Math.pow(2, 10 * (b -= 1)) * Math.sin((b * e - f) * (2 * Math.PI) / g)) + c }, easeOutElastic: function(a, b, c, d, e) { var f = 1.70158, g = 0, h = d; if (0 == b) return c; if (1 == (b /= e)) return c + d; if (g || (g = .3 * e), h < Math.abs(d)) { h = d; var f = g / 4 } else var f = g / (2 * Math.PI) * Math.asin(d / h); return h * Math.pow(2, -10 * b) * Math.sin((b * e - f) * (2 * Math.PI) / g) + d + c }, easeInOutElastic: function(a, b, c, d, e) { var f = 1.70158, g = 0, h = d; if (0 == b) return c; if (2 == (b /= e / 2)) return c + d; if (g || (g = e * (.3 * 1.5)), h < Math.abs(d)) { h = d; var f = g / 4 } else var f = g / (2 * Math.PI) * Math.asin(d / h); return b < 1 ? -.5 * (h * Math.pow(2, 10 * (b -= 1)) * Math.sin((b * e - f) * (2 * Math.PI) / g)) + c : h * Math.pow(2, -10 * (b -= 1)) * Math.sin((b * e - f) * (2 * Math.PI) / g) * .5 + d + c }, easeInBack: function(a, b, c, d, e, f) { return void 0 == f && (f = 1.70158), d * (b /= e) * b * ((f + 1) * b - f) + c }, easeOutBack: function(a, b, c, d, e, f) { return void 0 == f && (f = 1.70158), d * ((b = b / e - 1) * b * ((f + 1) * b + f) + 1) + c }, easeInOutBack: function(a, b, c, d, e, f) { return void 0 == f && (f = 1.70158), (b /= e / 2) < 1 ? d / 2 * (b * b * (((f *= 1.525) + 1) * b - f)) + c : d / 2 * ((b -= 2) * b * (((f *= 1.525) + 1) * b + f) + 2) + c }, easeInBounce: function(a, b, c, d, e) { return d - jQuery.easing.easeOutBounce(a, e - b, 0, d, e) + c }, easeOutBounce: function(a, b, c, d, e) { return (b /= e) < 1 / 2.75 ? d * (7.5625 * b * b) + c : b < 2 / 2.75 ? d * (7.5625 * (b -= 1.5 / 2.75) * b + .75) + c : b < 2.5 / 2.75 ? d * (7.5625 * (b -= 2.25 / 2.75) * b + .9375) + c : d * (7.5625 * (b -= 2.625 / 2.75) * b + .984375) + c }, easeInOutBounce: function(a, b, c, d, e) { return b < e / 2 ? .5 * jQuery.easing.easeInBounce(a, 2 * b, 0, d, e) + c : .5 * jQuery.easing.easeOutBounce(a, 2 * b - e, 0, d, e) + .5 * d + c } }); /* owl-carousel */ ! function(a, b, c, d) { function e(b, c) { this.settings = null, this.options = a.extend({}, e.Defaults, c), this.$element = a(b), this._handlers = {}, this._plugins = {}, this._supress = {}, this._current = null, this._speed = null, this._coordinates = [], this._breakpoint = null, this._width = null, this._items = [], this._clones = [], this._mergers = [], this._widths = [], this._invalidated = {}, this._pipe = [], this._drag = { time: null, target: null, pointer: null, stage: { start: null, current: null }, direction: null }, this._states = { current: {}, tags: { initializing: ["busy"], animating: ["busy"], dragging: ["interacting"] } }, a.each(["onResize", "onThrottledResize"], a.proxy(function(b, c) { this._handlers[c] = a.proxy(this[c], this) }, this)), a.each(e.Plugins, a.proxy(function(a, b) { this._plugins[a.charAt(0).toLowerCase() + a.slice(1)] = new b(this) }, this)), a.each(e.Workers, a.proxy(function(b, c) { this._pipe.push({ filter: c.filter, run: a.proxy(c.run, this) }) }, this)), this.setup(), this.initialize() } e.Defaults = { items: 3, loop: !1, center: !1, rewind: !1, checkVisibility: !0, mouseDrag: !0, touchDrag: !0, pullDrag: !0, freeDrag: !1, margin: 0, stagePadding: 0, merge: !1, mergeFit: !0, autoWidth: !1, startPosition: 0, rtl: !1, smartSpeed: 250, fluidSpeed: !1, dragEndSpeed: !1, responsive: {}, responsiveRefreshRate: 200, responsiveBaseElement: b, fallbackEasing: "swing", slideTransition: "", info: !1, nestedItemSelector: !1, itemElement: "div", stageElement: "div", refreshClass: "owl-refresh", loadedClass: "owl-loaded", loadingClass: "owl-loading", rtlClass: "owl-rtl", responsiveClass: "owl-responsive", dragClass: "owl-drag", itemClass: "owl-item", stageClass: "owl-stage", stageOuterClass: "owl-stage-outer", grabClass: "owl-grab" }, e.Width = { Default: "default", Inner: "inner", Outer: "outer" }, e.Type = { Event: "event", State: "state" }, e.Plugins = {}, e.Workers = [{ filter: ["width", "settings"], run: function() { this._width = this.$element.width() } }, { filter: ["width", "items", "settings"], run: function(a) { a.current = this._items && this._items[this.relative(this._current)] } }, { filter: ["items", "settings"], run: function() { this.$stage.children(".cloned").remove() } }, { filter: ["width", "items", "settings"], run: function(a) { var b = this.settings.margin || "", c = !this.settings.autoWidth, d = this.settings.rtl, e = { width: "auto", "margin-left": d ? b : "", "margin-right": d ? "" : b }; !c && this.$stage.children().css(e), a.css = e } }, { filter: ["width", "items", "settings"], run: function(a) { var b = (this.width() / this.settings.items).toFixed(3) - this.settings.margin, c = null, d = this._items.length, e = !this.settings.autoWidth, f = []; for (a.items = { merge: !1, width: b }; d--;) c = this._mergers[d], c = this.settings.mergeFit && Math.min(c, this.settings.items) || c, a.items.merge = c > 1 || a.items.merge, f[d] = e ? b * c : this._items[d].width(); this._widths = f } }, { filter: ["items", "settings"], run: function() { var b = [], c = this._items, d = this.settings, e = Math.max(2 * d.items, 4), f = 2 * Math.ceil(c.length / 2), g = d.loop && c.length ? d.rewind ? e : Math.max(e, f) : 0, h = "", i = ""; for (g /= 2; g > 0;) b.push(this.normalize(b.length / 2, !0)), h += c[b[b.length - 1]][0].outerHTML, b.push(this.normalize(c.length - 1 - (b.length - 1) / 2, !0)), i = c[b[b.length - 1]][0].outerHTML + i, g -= 1; this._clones = b, a(h).addClass("cloned").appendTo(this.$stage), a(i).addClass("cloned").prependTo(this.$stage) } }, { filter: ["width", "items", "settings"], run: function() { for (var a = this.settings.rtl ? 1 : -1, b = this._clones.length + this._items.length, c = -1, d = 0, e = 0, f = []; ++c < b;) d = f[c - 1] || 0, e = this._widths[this.relative(c)] + this.settings.margin, f.push(d + e * a); this._coordinates = f } }, { filter: ["width", "items", "settings"], run: function() { var a = this.settings.stagePadding, b = this._coordinates, c = { width: Math.ceil(Math.abs(b[b.length - 1])) + 2 * a, "padding-left": a || "", "padding-right": a || "" }; this.$stage.css(c) } }, { filter: ["width", "items", "settings"], run: function(a) { var b = this._coordinates.length, c = !this.settings.autoWidth, d = this.$stage.children(); if (c && a.items.merge) for (; b--;) a.css.width = this._widths[this.relative(b)], d.eq(b).css(a.css); else c && (a.css.width = a.items.width, d.css(a.css)) } }, { filter: ["items"], run: function() { this._coordinates.length < 1 && this.$stage.removeAttr("style") } }, { filter: ["width", "items", "settings"], run: function(a) { a.current = a.current ? this.$stage.children().index(a.current) : 0, a.current = Math.max(this.minimum(), Math.min(this.maximum(), a.current)), this.reset(a.current) } }, { filter: ["position"], run: function() { this.animate(this.coordinates(this._current)) } }, { filter: ["width", "position", "items", "settings"], run: function() { var a, b, c, d, e = this.settings.rtl ? 1 : -1, f = 2 * this.settings.stagePadding, g = this.coordinates(this.current()) + f, h = g + this.width() * e, i = []; for (c = 0, d = this._coordinates.length; c < d; c++) a = this._coordinates[c - 1] || 0, b = Math.abs(this._coordinates[c]) + f * e, (this.op(a, "<=", g) && this.op(a, ">", h) || this.op(b, "<", g) && this.op(b, ">", h)) && i.push(c); this.$stage.children(".active").removeClass("active"), this.$stage.children(":eq(" + i.join("), :eq(") + ")").addClass("active"), this.$stage.children(".center").removeClass("center"), this.settings.center && this.$stage.children().eq(this.current()).addClass("center") } }], e.prototype.initializeStage = function() { this.$stage = this.$element.find("." + this.settings.stageClass), this.$stage.length || (this.$element.addClass(this.options.loadingClass), this.$stage = a("<" + this.settings.stageElement + ">", { class: this.settings.stageClass }).wrap(a("<div>", { class: this.settings.stageOuterClass })), this.$element.append(this.$stage.parent())) }, e.prototype.initializeItems = function() { var b = this.$element.find(".owl-item"); if (b.length) return this._items = b.get().map(function(b) { return a(b) }), this._mergers = this._items.map(function() { return 1 }), void this.refresh(); this.replace(this.$element.children().not(this.$stage.parent())), this.isVisible() ? this.refresh() : this.invalidate("width"), this.$element.removeClass(this.options.loadingClass).addClass(this.options.loadedClass) }, e.prototype.initialize = function() { if (this.enter("initializing"), this.trigger("initialize"), this.$element.toggleClass(this.settings.rtlClass, this.settings.rtl), this.settings.autoWidth && !this.is("pre-loading")) { var a, b, c; a = this.$element.find("img"), b = this.settings.nestedItemSelector ? "." + this.settings.nestedItemSelector : d, c = this.$element.children(b).width(), a.length && c <= 0 && this.preloadAutoWidthImages(a) } this.initializeStage(), this.initializeItems(), this.registerEventHandlers(), this.leave("initializing"), this.trigger("initialized") }, e.prototype.isVisible = function() { return !this.settings.checkVisibility || this.$element.is(":visible") }, e.prototype.setup = function() { var b = this.viewport(), c = this.options.responsive, d = -1, e = null; c ? (a.each(c, function(a) { a <= b && a > d && (d = Number(a)) }), e = a.extend({}, this.options, c[d]), "function" == typeof e.stagePadding && (e.stagePadding = e.stagePadding()), delete e.responsive, e.responsiveClass && this.$element.attr("class", this.$element.attr("class").replace(new RegExp("(" + this.options.responsiveClass + "-)\\S+\\s", "g"), "$1" + d))) : e = a.extend({}, this.options), this.trigger("change", { property: { name: "settings", value: e } }), this._breakpoint = d, this.settings = e, this.invalidate("settings"), this.trigger("changed", { property: { name: "settings", value: this.settings } }) }, e.prototype.optionsLogic = function() { this.settings.autoWidth && (this.settings.stagePadding = !1, this.settings.merge = !1) }, e.prototype.prepare = function(b) { var c = this.trigger("prepare", { content: b }); return c.data || (c.data = a("<" + this.settings.itemElement + ">").addClass(this.options.itemClass).append(b)), this.trigger("prepared", { content: c.data }), c.data }, e.prototype.update = function() { for (var b = 0, c = this._pipe.length, d = a.proxy(function(a) { return this[a] }, this._invalidated), e = {}; b < c;)(this._invalidated.all || a.grep(this._pipe[b].filter, d).length > 0) && this._pipe[b].run(e), b++; this._invalidated = {}, !this.is("valid") && this.enter("valid") }, e.prototype.width = function(a) { switch (a = a || e.Width.Default) { case e.Width.Inner: case e.Width.Outer: return this._width; default: return this._width - 2 * this.settings.stagePadding + this.settings.margin } }, e.prototype.refresh = function() { this.enter("refreshing"), this.trigger("refresh"), this.setup(), this.optionsLogic(), this.$element.addClass(this.options.refreshClass), this.update(), this.$element.removeClass(this.options.refreshClass), this.leave("refreshing"), this.trigger("refreshed") }, e.prototype.onThrottledResize = function() { b.clearTimeout(this.resizeTimer), this.resizeTimer = b.setTimeout(this._handlers.onResize, this.settings.responsiveRefreshRate) }, e.prototype.onResize = function() { return !!this._items.length && (this._width !== this.$element.width() && (!!this.isVisible() && (this.enter("resizing"), this.trigger("resize").isDefaultPrevented() ? (this.leave("resizing"), !1) : (this.invalidate("width"), this.refresh(), this.leave("resizing"), void this.trigger("resized"))))) }, e.prototype.registerEventHandlers = function() { a.support.transition && this.$stage.on(a.support.transition.end + ".owl.core", a.proxy(this.onTransitionEnd, this)), !1 !== this.settings.responsive && this.on(b, "resize", this._handlers.onThrottledResize), this.settings.mouseDrag && (this.$element.addClass(this.options.dragClass), this.$stage.on("mousedown.owl.core", a.proxy(this.onDragStart, this)), this.$stage.on("dragstart.owl.core selectstart.owl.core", function() { return !1 })), this.settings.touchDrag && (this.$stage.on("touchstart.owl.core", a.proxy(this.onDragStart, this)), this.$stage.on("touchcancel.owl.core", a.proxy(this.onDragEnd, this))) }, e.prototype.onDragStart = function(b) { var d = null; 3 !== b.which && (a.support.transform ? (d = this.$stage.css("transform").replace(/.*\(|\)| /g, "").split(","), d = { x: d[16 === d.length ? 12 : 4], y: d[16 === d.length ? 13 : 5] }) : (d = this.$stage.position(), d = { x: this.settings.rtl ? d.left + this.$stage.width() - this.width() + this.settings.margin : d.left, y: d.top }), this.is("animating") && (a.support.transform ? this.animate(d.x) : this.$stage.stop(), this.invalidate("position")), this.$element.toggleClass(this.options.grabClass, "mousedown" === b.type), this.speed(0), this._drag.time = (new Date).getTime(), this._drag.target = a(b.target), this._drag.stage.start = d, this._drag.stage.current = d, this._drag.pointer = this.pointer(b), a(c).on("mouseup.owl.core touchend.owl.core", a.proxy(this.onDragEnd, this)), a(c).one("mousemove.owl.core touchmove.owl.core", a.proxy(function(b) { var d = this.difference(this._drag.pointer, this.pointer(b)); a(c).on("mousemove.owl.core touchmove.owl.core", a.proxy(this.onDragMove, this)), Math.abs(d.x) < Math.abs(d.y) && this.is("valid") || (b.preventDefault(), this.enter("dragging"), this.trigger("drag")) }, this))) }, e.prototype.onDragMove = function(a) { var b = null, c = null, d = null, e = this.difference(this._drag.pointer, this.pointer(a)), f = this.difference(this._drag.stage.start, e); this.is("dragging") && (a.preventDefault(), this.settings.loop ? (b = this.coordinates(this.minimum()), c = this.coordinates(this.maximum() + 1) - b, f.x = ((f.x - b) % c + c) % c + b) : (b = this.settings.rtl ? this.coordinates(this.maximum()) : this.coordinates(this.minimum()), c = this.settings.rtl ? this.coordinates(this.minimum()) : this.coordinates(this.maximum()), d = this.settings.pullDrag ? -1 * e.x / 5 : 0, f.x = Math.max(Math.min(f.x, b + d), c + d)), this._drag.stage.current = f, this.animate(f.x)) }, e.prototype.onDragEnd = function(b) { var d = this.difference(this._drag.pointer, this.pointer(b)), e = this._drag.stage.current, f = d.x > 0 ^ this.settings.rtl ? "left" : "right"; a(c).off(".owl.core"), this.$element.removeClass(this.options.grabClass), (0 !== d.x && this.is("dragging") || !this.is("valid")) && (this.speed(this.settings.dragEndSpeed || this.settings.smartSpeed), this.current(this.closest(e.x, 0 !== d.x ? f : this._drag.direction)), this.invalidate("position"), this.update(), this._drag.direction = f, (Math.abs(d.x) > 3 || (new Date).getTime() - this._drag.time > 300) && this._drag.target.one("click.owl.core", function() { return !1 })), this.is("dragging") && (this.leave("dragging"), this.trigger("dragged")) }, e.prototype.closest = function(b, c) { var e = -1, f = 30, g = this.width(), h = this.coordinates(); return this.settings.freeDrag || a.each(h, a.proxy(function(a, i) { return "left" === c && b > i - f && b < i + f ? e = a : "right" === c && b > i - g - f && b < i - g + f ? e = a + 1 : this.op(b, "<", i) && this.op(b, ">", h[a + 1] !== d ? h[a + 1] : i - g) && (e = "left" === c ? a + 1 : a), -1 === e }, this)), this.settings.loop || (this.op(b, ">", h[this.minimum()]) ? e = b = this.minimum() : this.op(b, "<", h[this.maximum()]) && (e = b = this.maximum())), e }, e.prototype.animate = function(b) { var c = this.speed() > 0; this.is("animating") && this.onTransitionEnd(), c && (this.enter("animating"), this.trigger("translate")), a.support.transform3d && a.support.transition ? this.$stage.css({ transform: "translate3d(" + b + "px,0px,0px)", transition: this.speed() / 1e3 + "s" + (this.settings.slideTransition ? " " + this.settings.slideTransition : "") }) : c ? this.$stage.animate({ left: b + "px" }, this.speed(), this.settings.fallbackEasing, a.proxy(this.onTransitionEnd, this)) : this.$stage.css({ left: b + "px" }) }, e.prototype.is = function(a) { return this._states.current[a] && this._states.current[a] > 0 }, e.prototype.current = function(a) { if (a === d) return this._current; if (0 === this._items.length) return d; if (a = this.normalize(a), this._current !== a) { var b = this.trigger("change", { property: { name: "position", value: a } }); b.data !== d && (a = this.normalize(b.data)), this._current = a, this.invalidate("position"), this.trigger("changed", { property: { name: "position", value: this._current } }) } return this._current }, e.prototype.invalidate = function(b) { return "string" === a.type(b) && (this._invalidated[b] = !0, this.is("valid") && this.leave("valid")), a.map(this._invalidated, function(a, b) { return b }) }, e.prototype.reset = function(a) { (a = this.normalize(a)) !== d && (this._speed = 0, this._current = a, this.suppress(["translate", "translated"]), this.animate(this.coordinates(a)), this.release(["translate", "translated"])) }, e.prototype.normalize = function(a, b) { var c = this._items.length, e = b ? 0 : this._clones.length; return !this.isNumeric(a) || c < 1 ? a = d : (a < 0 || a >= c + e) && (a = ((a - e / 2) % c + c) % c + e / 2), a }, e.prototype.relative = function(a) { return a -= this._clones.length / 2, this.normalize(a, !0) }, e.prototype.maximum = function(a) { var b, c, d, e = this.settings, f = this._coordinates.length; if (e.loop) f = this._clones.length / 2 + this._items.length - 1; else if (e.autoWidth || e.merge) { if (b = this._items.length) for (c = this._items[--b].width(), d = this.$element.width(); b-- && !((c += this._items[b].width() + this.settings.margin) > d);); f = b + 1 } else f = e.center ? this._items.length - 1 : this._items.length - e.items; return a && (f -= this._clones.length / 2), Math.max(f, 0) }, e.prototype.minimum = function(a) { return a ? 0 : this._clones.length / 2 }, e.prototype.items = function(a) { return a === d ? this._items.slice() : (a = this.normalize(a, !0), this._items[a]) }, e.prototype.mergers = function(a) { return a === d ? this._mergers.slice() : (a = this.normalize(a, !0), this._mergers[a]) }, e.prototype.clones = function(b) { var c = this._clones.length / 2, e = c + this._items.length, f = function(a) { return a % 2 == 0 ? e + a / 2 : c - (a + 1) / 2 }; return b === d ? a.map(this._clones, function(a, b) { return f(b) }) : a.map(this._clones, function(a, c) { return a === b ? f(c) : null }) }, e.prototype.speed = function(a) { return a !== d && (this._speed = a), this._speed }, e.prototype.coordinates = function(b) { var c, e = 1, f = b - 1; return b === d ? a.map(this._coordinates, a.proxy(function(a, b) { return this.coordinates(b) }, this)) : (this.settings.center ? (this.settings.rtl && (e = -1, f = b + 1), c = this._coordinates[b], c += (this.width() - c + (this._coordinates[f] || 0)) / 2 * e) : c = this._coordinates[f] || 0, c = Math.ceil(c)) }, e.prototype.duration = function(a, b, c) { return 0 === c ? 0 : Math.min(Math.max(Math.abs(b - a), 1), 6) * Math.abs(c || this.settings.smartSpeed) }, e.prototype.to = function(a, b) { var c = this.current(), d = null, e = a - this.relative(c), f = (e > 0) - (e < 0), g = this._items.length, h = this.minimum(), i = this.maximum(); this.settings.loop ? (!this.settings.rewind && Math.abs(e) > g / 2 && (e += -1 * f * g), a = c + e, (d = ((a - h) % g + g) % g + h) !== a && d - e <= i && d - e > 0 && (c = d - e, a = d, this.reset(c))) : this.settings.rewind ? (i += 1, a = (a % i + i) % i) : a = Math.max(h, Math.min(i, a)), this.speed(this.duration(c, a, b)), this.current(a), this.isVisible() && this.update() }, e.prototype.next = function(a) { a = a || !1, this.to(this.relative(this.current()) + 1, a) }, e.prototype.prev = function(a) { a = a || !1, this.to(this.relative(this.current()) - 1, a) }, e.prototype.onTransitionEnd = function(a) { if (a !== d && (a.stopPropagation(), (a.target || a.srcElement || a.originalTarget) !== this.$stage.get(0))) return !1; this.leave("animating"), this.trigger("translated") }, e.prototype.viewport = function() { var d; return this.options.responsiveBaseElement !== b ? d = a(this.options.responsiveBaseElement).width() : b.innerWidth ? d = b.innerWidth : c.documentElement && c.documentElement.clientWidth ? d = c.documentElement.clientWidth : console.warn("Can not detect viewport width."), d }, e.prototype.replace = function(b) { this.$stage.empty(), this._items = [], b && (b = b instanceof jQuery ? b : a(b)), this.settings.nestedItemSelector && (b = b.find("." + this.settings.nestedItemSelector)), b.filter(function() { return 1 === this.nodeType }).each(a.proxy(function(a, b) { b = this.prepare(b), this.$stage.append(b), this._items.push(b), this._mergers.push(1 * b.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1) }, this)), this.reset(this.isNumeric(this.settings.startPosition) ? this.settings.startPosition : 0), this.invalidate("items") }, e.prototype.add = function(b, c) { var e = this.relative(this._current); c = c === d ? this._items.length : this.normalize(c, !0), b = b instanceof jQuery ? b : a(b), this.trigger("add", { content: b, position: c }), b = this.prepare(b), 0 === this._items.length || c === this._items.length ? (0 === this._items.length && this.$stage.append(b), 0 !== this._items.length && this._items[c - 1].after(b), this._items.push(b), this._mergers.push(1 * b.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1)) : (this._items[c].before(b), this._items.splice(c, 0, b), this._mergers.splice(c, 0, 1 * b.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1)), this._items[e] && this.reset(this._items[e].index()), this.invalidate("items"), this.trigger("added", { content: b, position: c }) }, e.prototype.remove = function(a) { (a = this.normalize(a, !0)) !== d && (this.trigger("remove", { content: this._items[a], position: a }), this._items[a].remove(), this._items.splice(a, 1), this._mergers.splice(a, 1), this.invalidate("items"), this.trigger("removed", { content: null, position: a })) }, e.prototype.preloadAutoWidthImages = function(b) { b.each(a.proxy(function(b, c) { this.enter("pre-loading"), c = a(c), a(new Image).one("load", a.proxy(function(a) { c.attr("src", a.target.src), c.css("opacity", 1), this.leave("pre-loading"), !this.is("pre-loading") && !this.is("initializing") && this.refresh() }, this)).attr("src", c.attr("src") || c.attr("data-src") || c.attr("data-src-retina")) }, this)) }, e.prototype.destroy = function() { this.$element.off(".owl.core"), this.$stage.off(".owl.core"), a(c).off(".owl.core"), !1 !== this.settings.responsive && (b.clearTimeout(this.resizeTimer), this.off(b, "resize", this._handlers.onThrottledResize)); for (var d in this._plugins) this._plugins[d].destroy(); this.$stage.children(".cloned").remove(), this.$stage.unwrap(), this.$stage.children().contents().unwrap(), this.$stage.children().unwrap(), this.$stage.remove(), this.$element.removeClass(this.options.refreshClass).removeClass(this.options.loadingClass).removeClass(this.options.loadedClass).removeClass(this.options.rtlClass).removeClass(this.options.dragClass).removeClass(this.options.grabClass).attr("class", this.$element.attr("class").replace(new RegExp(this.options.responsiveClass + "-\\S+\\s", "g"), "")).removeData("owl.carousel") }, e.prototype.op = function(a, b, c) { var d = this.settings.rtl; switch (b) { case "<": return d ? a > c : a < c; case ">": return d ? a < c : a > c; case ">=": return d ? a <= c : a >= c; case "<=": return d ? a >= c : a <= c } }, e.prototype.on = function(a, b, c, d) { a.addEventListener ? a.addEventListener(b, c, d) : a.attachEvent && a.attachEvent("on" + b, c) }, e.prototype.off = function(a, b, c, d) { a.removeEventListener ? a.removeEventListener(b, c, d) : a.detachEvent && a.detachEvent("on" + b, c) }, e.prototype.trigger = function(b, c, d, f, g) { var h = { item: { count: this._items.length, index: this.current() } }, i = a.camelCase(a.grep(["on", b, d], function(a) { return a }).join("-").toLowerCase()), j = a.Event([b, "owl", d || "carousel"].join(".").toLowerCase(), a.extend({ relatedTarget: this }, h, c)); return this._supress[b] || (a.each(this._plugins, function(a, b) { b.onTrigger && b.onTrigger(j) }), this.register({ type: e.Type.Event, name: b }), this.$element.trigger(j), this.settings && "function" == typeof this.settings[i] && this.settings[i].call(this, j)), j }, e.prototype.enter = function(b) { a.each([b].concat(this._states.tags[b] || []), a.proxy(function(a, b) { this._states.current[b] === d && (this._states.current[b] = 0), this._states.current[b]++ }, this)) }, e.prototype.leave = function(b) { a.each([b].concat(this._states.tags[b] || []), a.proxy(function(a, b) { this._states.current[b]-- }, this)) }, e.prototype.register = function(b) { if (b.type === e.Type.Event) { if (a.event.special[b.name] || (a.event.special[b.name] = {}), !a.event.special[b.name].owl) { var c = a.event.special[b.name]._default; a.event.special[b.name]._default = function(a) { return !c || !c.apply || a.namespace && -1 !== a.namespace.indexOf("owl") ? a.namespace && a.namespace.indexOf("owl") > -1 : c.apply(this, arguments) }, a.event.special[b.name].owl = !0 } } else b.type === e.Type.State && (this._states.tags[b.name] ? this._states.tags[b.name] = this._states.tags[b.name].concat(b.tags) : this._states.tags[b.name] = b.tags, this._states.tags[b.name] = a.grep(this._states.tags[b.name], a.proxy(function(c, d) { return a.inArray(c, this._states.tags[b.name]) === d }, this))) }, e.prototype.suppress = function(b) { a.each(b, a.proxy(function(a, b) { this._supress[b] = !0 }, this)) }, e.prototype.release = function(b) { a.each(b, a.proxy(function(a, b) { delete this._supress[b] }, this)) }, e.prototype.pointer = function(a) { var c = { x: null, y: null }; return a = a.originalEvent || a || b.event, a = a.touches && a.touches.length ? a.touches[0] : a.changedTouches && a.changedTouches.length ? a.changedTouches[0] : a, a.pageX ? (c.x = a.pageX, c.y = a.pageY) : (c.x = a.clientX, c.y = a.clientY), c }, e.prototype.isNumeric = function(a) { return !isNaN(parseFloat(a)) }, e.prototype.difference = function(a, b) { return { x: a.x - b.x, y: a.y - b.y } }, a.fn.owlCarousel = function(b) { var c = Array.prototype.slice.call(arguments, 1); return this.each(function() { var d = a(this), f = d.data("owl.carousel"); f || (f = new e(this, "object" == typeof b && b), d.data("owl.carousel", f), a.each(["next", "prev", "to", "destroy", "refresh", "replace", "add", "remove"], function(b, c) { f.register({ type: e.Type.Event, name: c }), f.$element.on(c + ".owl.carousel.core", a.proxy(function(a) { a.namespace && a.relatedTarget !== this && (this.suppress([c]), f[c].apply(this, [].slice.call(arguments, 1)), this.release([c])) }, f)) })), "string" == typeof b && "_" !== b.charAt(0) && f[b].apply(f, c) }) }, a.fn.owlCarousel.Constructor = e }(window.Zepto || window.jQuery, window, document), function(a, b, c, d) { var e = function(b) { this._core = b, this._interval = null, this._visible = null, this._handlers = { "initialized.owl.carousel": a.proxy(function(a) { a.namespace && this._core.settings.autoRefresh && this.watch() }, this) }, this._core.options = a.extend({}, e.Defaults, this._core.options), this._core.$element.on(this._handlers) }; e.Defaults = { autoRefresh: !0, autoRefreshInterval: 500 }, e.prototype.watch = function() { this._interval || (this._visible = this._core.isVisible(), this._interval = b.setInterval(a.proxy(this.refresh, this), this._core.settings.autoRefreshInterval)) }, e.prototype.refresh = function() { this._core.isVisible() !== this._visible && (this._visible = !this._visible, this._core.$element.toggleClass("owl-hidden", !this._visible), this._visible && this._core.invalidate("width") && this._core.refresh()) }, e.prototype.destroy = function() { var a, c; b.clearInterval(this._interval); for (a in this._handlers) this._core.$element.off(a, this._handlers[a]); for (c in Object.getOwnPropertyNames(this)) "function" != typeof this[c] && (this[c] = null) }, a.fn.owlCarousel.Constructor.Plugins.AutoRefresh = e }(window.Zepto || window.jQuery, window, document), function(a, b, c, d) { var e = function(b) { this._core = b, this._loaded = [], this._handlers = { "initialized.owl.carousel change.owl.carousel resized.owl.carousel": a.proxy(function(b) { if (b.namespace && this._core.settings && this._core.settings.lazyLoad && (b.property && "position" == b.property.name || "initialized" == b.type)) { var c = this._core.settings, e = c.center && Math.ceil(c.items / 2) || c.items, f = c.center && -1 * e || 0, g = (b.property && b.property.value !== d ? b.property.value : this._core.current()) + f, h = this._core.clones().length, i = a.proxy(function(a, b) { this.load(b) }, this); for (c.lazyLoadEager > 0 && (e += c.lazyLoadEager, c.loop && (g -= c.lazyLoadEager, e++)); f++ < e;) this.load(h / 2 + this._core.relative(g)), h && a.each(this._core.clones(this._core.relative(g)), i), g++ } }, this) }, this._core.options = a.extend({}, e.Defaults, this._core.options), this._core.$element.on(this._handlers) }; e.Defaults = { lazyLoad: !1, lazyLoadEager: 0 }, e.prototype.load = function(c) { var d = this._core.$stage.children().eq(c), e = d && d.find(".owl-lazy"); !e || a.inArray(d.get(0), this._loaded) > -1 || (e.each(a.proxy(function(c, d) { var e, f = a(d), g = b.devicePixelRatio > 1 && f.attr("data-src-retina") || f.attr("data-src") || f.attr("data-srcset"); this._core.trigger("load", { element: f, url: g }, "lazy"), f.is("img") ? f.one("load.owl.lazy", a.proxy(function() { f.css("opacity", 1), this._core.trigger("loaded", { element: f, url: g }, "lazy") }, this)).attr("src", g) : f.is("source") ? f.one("load.owl.lazy", a.proxy(function() { this._core.trigger("loaded", { element: f, url: g }, "lazy") }, this)).attr("srcset", g) : (e = new Image, e.onload = a.proxy(function() { f.css({ "background-image": 'url("' + g + '")', opacity: "1" }), this._core.trigger("loaded", { element: f, url: g }, "lazy") }, this), e.src = g) }, this)), this._loaded.push(d.get(0))) }, e.prototype.destroy = function() { var a, b; for (a in this.handlers) this._core.$element.off(a, this.handlers[a]); for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null) }, a.fn.owlCarousel.Constructor.Plugins.Lazy = e }(window.Zepto || window.jQuery, window, document), function(a, b, c, d) { var e = function(c) { this._core = c, this._previousHeight = null, this._handlers = { "initialized.owl.carousel refreshed.owl.carousel": a.proxy(function(a) { a.namespace && this._core.settings.autoHeight && this.update() }, this), "changed.owl.carousel": a.proxy(function(a) { a.namespace && this._core.settings.autoHeight && "position" === a.property.name && this.update() }, this), "loaded.owl.lazy": a.proxy(function(a) { a.namespace && this._core.settings.autoHeight && a.element.closest("." + this._core.settings.itemClass).index() === this._core.current() && this.update() }, this) }, this._core.options = a.extend({}, e.Defaults, this._core.options), this._core.$element.on(this._handlers), this._intervalId = null; var d = this; a(b).on("load", function() { d._core.settings.autoHeight && d.update() }), a(b).resize(function() { d._core.settings.autoHeight && (null != d._intervalId && clearTimeout(d._intervalId), d._intervalId = setTimeout(function() { d.update() }, 250)) }) }; e.Defaults = { autoHeight: !1, autoHeightClass: "owl-height" }, e.prototype.update = function() { var b = this._core._current, c = b + this._core.settings.items, d = this._core.settings.lazyLoad, e = this._core.$stage.children().toArray().slice(b, c), f = [], g = 0; a.each(e, function(b, c) { f.push(a(c).height()) }), g = Math.max.apply(null, f), g <= 1 && d && this._previousHeight && (g = this._previousHeight), this._previousHeight = g, this._core.$stage.parent().height(g).addClass(this._core.settings.autoHeightClass) }, e.prototype.destroy = function() { var a, b; for (a in this._handlers) this._core.$element.off(a, this._handlers[a]); for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null) }, a.fn.owlCarousel.Constructor.Plugins.AutoHeight = e }(window.Zepto || window.jQuery, window, document), function(a, b, c, d) { var e = function(b) { this._core = b, this._videos = {}, this._playing = null, this._handlers = { "initialized.owl.carousel": a.proxy(function(a) { a.namespace && this._core.register({ type: "state", name: "playing", tags: ["interacting"] }) }, this), "resize.owl.carousel": a.proxy(function(a) { a.namespace && this._core.settings.video && this.isInFullScreen() && a.preventDefault() }, this), "refreshed.owl.carousel": a.proxy(function(a) { a.namespace && this._core.is("resizing") && this._core.$stage.find(".cloned .owl-video-frame").remove() }, this), "changed.owl.carousel": a.proxy(function(a) { a.namespace && "position" === a.property.name && this._playing && this.stop() }, this), "prepared.owl.carousel": a.proxy(function(b) { if (b.namespace) { var c = a(b.content).find(".owl-video"); c.length && (c.css("display", "none"), this.fetch(c, a(b.content))) } }, this) }, this._core.options = a.extend({}, e.Defaults, this._core.options), this._core.$element.on(this._handlers), this._core.$element.on("click.owl.video", ".owl-video-play-icon", a.proxy(function(a) { this.play(a) }, this)) }; e.Defaults = { video: !1, videoHeight: !1, videoWidth: !1 }, e.prototype.fetch = function(a, b) { var c = function() { return a.attr("data-vimeo-id") ? "vimeo" : a.attr("data-vzaar-id") ? "vzaar" : "youtube" }(), d = a.attr("data-vimeo-id") || a.attr("data-youtube-id") || a.attr("data-vzaar-id"), e = a.attr("data-width") || this._core.settings.videoWidth, f = a.attr("data-height") || this._core.settings.videoHeight, g = a.attr("href"); if (!g) throw new Error("Missing video URL."); if (d = g.match(/(http:|https:|)\/\/(player.|www.|app.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com|be\-nocookie\.com)|vzaar\.com)\/(video\/|videos\/|embed\/|channels\/.+\/|groups\/.+\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/), d[3].indexOf("youtu") > -1) c = "youtube"; else if (d[3].indexOf("vimeo") > -1) c = "vimeo"; else { if (!(d[3].indexOf("vzaar") > -1)) throw new Error("Video URL not supported."); c = "vzaar" } d = d[6], this._videos[g] = { type: c, id: d, width: e, height: f }, b.attr("data-video", g), this.thumbnail(a, this._videos[g]) }, e.prototype.thumbnail = function(b, c) { var d, e, f, g = c.width && c.height ? "width:" + c.width + "px;height:" + c.height + "px;" : "", h = b.find("img"), i = "src", j = "", k = this._core.settings, l = function(c) { e = '<div class="owl-video-play-icon"></div>', d = k.lazyLoad ? a("<div>", { class: "owl-video-tn " + j, srcType: c }) : a("<div>", { class: "owl-video-tn", style: "opacity:1;background-image:url(" + c + ")" }), b.after(d), b.after(e) }; if (b.wrap(a("<div>", { class: "owl-video-wrapper", style: g })), this._core.settings.lazyLoad && (i = "data-src", j = "owl-lazy"), h.length) return l(h.attr(i)), h.remove(), !1; "youtube" === c.type ? (f = "//img.youtube.com/vi/" + c.id + "/hqdefault.jpg", l(f)) : "vimeo" === c.type ? a.ajax({ type: "GET", url: "//vimeo.com/api/v2/video/" + c.id + ".json", jsonp: "callback", dataType: "jsonp", success: function(a) { f = a[0].thumbnail_large, l(f) } }) : "vzaar" === c.type && a.ajax({ type: "GET", url: "//vzaar.com/api/videos/" + c.id + ".json", jsonp: "callback", dataType: "jsonp", success: function(a) { f = a.framegrab_url, l(f) } }) }, e.prototype.stop = function() { this._core.trigger("stop", null, "video"), this._playing.find(".owl-video-frame").remove(), this._playing.removeClass("owl-video-playing"), this._playing = null, this._core.leave("playing"), this._core.trigger("stopped", null, "video") }, e.prototype.play = function(b) { var c, d = a(b.target), e = d.closest("." + this._core.settings.itemClass), f = this._videos[e.attr("data-video")], g = f.width || "100%", h = f.height || this._core.$stage.height(); this._playing || (this._core.enter("playing"), this._core.trigger("play", null, "video"), e = this._core.items(this._core.relative(e.index())), this._core.reset(e.index()), c = a('<iframe frameborder="0" allowfullscreen mozallowfullscreen webkitAllowFullScreen ></iframe>'), c.attr("height", h), c.attr("width", g), "youtube" === f.type ? c.attr("src", "//www.youtube.com/embed/" + f.id + "?autoplay=1&rel=0&v=" + f.id) : "vimeo" === f.type ? c.attr("src", "//player.vimeo.com/video/" + f.id + "?autoplay=1") : "vzaar" === f.type && c.attr("src", "//view.vzaar.com/" + f.id + "/player?autoplay=true"), a(c).wrap('<div class="owl-video-frame" >').insertAfter(e.find(".owl-video")), this._playing = e.addClass("owl-video-playing")) }, e.prototype.isInFullScreen = function() { var b = c.fullscreenElement || c.mozFullScreenElement || c.webkitFullscreenElement; return b && a(b).parent().hasClass("owl-video-frame") }, e.prototype.destroy = function() { var a, b; this._core.$element.off("click.owl.video"); for (a in this._handlers) this._core.$element.off(a, this._handlers[a]); for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null) }, a.fn.owlCarousel.Constructor.Plugins.Video = e }(window.Zepto || window.jQuery, window, document), function(a, b, c, d) { var e = function(b) { this.core = b, this.core.options = a.extend({}, e.Defaults, this.core.options), this.swapping = !0, this.previous = d, this.next = d, this.handlers = { "change.owl.carousel": a.proxy(function(a) { a.namespace && "position" == a.property.name && (this.previous = this.core.current(), this.next = a.property.value) }, this), "drag.owl.carousel dragged.owl.carousel translated.owl.carousel": a.proxy(function(a) { a.namespace && (this.swapping = "translated" == a.type) }, this), "translate.owl.carousel": a.proxy(function(a) { a.namespace && this.swapping && (this.core.options.animateOut || this.core.options.animateIn) && this.swap() }, this) }, this.core.$element.on(this.handlers) }; e.Defaults = { animateOut: !1, animateIn: !1 }, e.prototype.swap = function() { if (1 === this.core.settings.items && a.support.animation && a.support.transition) { this.core.speed(0); var b, c = a.proxy(this.clear, this), d = this.core.$stage.children().eq(this.previous), e = this.core.$stage.children().eq(this.next), f = this.core.settings.animateIn, g = this.core.settings.animateOut; this.core.current() !== this.previous && (g && (b = this.core.coordinates(this.previous) - this.core.coordinates(this.next), d.one(a.support.animation.end, c).css({ left: b + "px" }).addClass("animated owl-animated-out").addClass(g)), f && e.one(a.support.animation.end, c).addClass("animated owl-animated-in").addClass(f)) } }, e.prototype.clear = function(b) { a(b.target).css({ left: "" }).removeClass("animated owl-animated-out owl-animated-in").removeClass(this.core.settings.animateIn).removeClass(this.core.settings.animateOut), this.core.onTransitionEnd() }, e.prototype.destroy = function() { var a, b; for (a in this.handlers) this.core.$element.off(a, this.handlers[a]); for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null) }, a.fn.owlCarousel.Constructor.Plugins.Animate = e }(window.Zepto || window.jQuery, window, document), function(a, b, c, d) { var e = function(b) { this._core = b, this._call = null, this._time = 0, this._timeout = 0, this._paused = !0, this._handlers = { "changed.owl.carousel": a.proxy(function(a) { a.namespace && "settings" === a.property.name ? this._core.settings.autoplay ? this.play() : this.stop() : a.namespace && "position" === a.property.name && this._paused && (this._time = 0) }, this), "initialized.owl.carousel": a.proxy(function(a) { a.namespace && this._core.settings.autoplay && this.play() }, this), "play.owl.autoplay": a.proxy(function(a, b, c) { a.namespace && this.play(b, c) }, this), "stop.owl.autoplay": a.proxy(function(a) { a.namespace && this.stop() }, this), "mouseover.owl.autoplay": a.proxy(function() { this._core.settings.autoplayHoverPause && this._core.is("rotating") && this.pause() }, this), "mouseleave.owl.autoplay": a.proxy(function() { this._core.settings.autoplayHoverPause && this._core.is("rotating") && this.play() }, this), "touchstart.owl.core": a.proxy(function() { this._core.settings.autoplayHoverPause && this._core.is("rotating") && this.pause() }, this), "touchend.owl.core": a.proxy(function() { this._core.settings.autoplayHoverPause && this.play() }, this) }, this._core.$element.on(this._handlers), this._core.options = a.extend({}, e.Defaults, this._core.options) }; e.Defaults = { autoplay: !1, autoplayTimeout: 5e3, autoplayHoverPause: !1, autoplaySpeed: !1 }, e.prototype._next = function(d) { this._call = b.setTimeout(a.proxy(this._next, this, d), this._timeout * (Math.round(this.read() / this._timeout) + 1) - this.read()), this._core.is("interacting") || c.hidden || this._core.next(d || this._core.settings.autoplaySpeed) }, e.prototype.read = function() { return (new Date).getTime() - this._time }, e.prototype.play = function(c, d) { var e; this._core.is("rotating") || this._core.enter("rotating"), c = c || this._core.settings.autoplayTimeout, e = Math.min(this._time % (this._timeout || c), c), this._paused ? (this._time = this.read(), this._paused = !1) : b.clearTimeout(this._call), this._time += this.read() % c - e, this._timeout = c, this._call = b.setTimeout(a.proxy(this._next, this, d), c - e) }, e.prototype.stop = function() { this._core.is("rotating") && (this._time = 0, this._paused = !0, b.clearTimeout(this._call), this._core.leave("rotating")) }, e.prototype.pause = function() { this._core.is("rotating") && !this._paused && (this._time = this.read(), this._paused = !0, b.clearTimeout(this._call)) }, e.prototype.destroy = function() { var a, b; this.stop(); for (a in this._handlers) this._core.$element.off(a, this._handlers[a]); for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null) }, a.fn.owlCarousel.Constructor.Plugins.autoplay = e }(window.Zepto || window.jQuery, window, document), function(a, b, c, d) { "use strict"; var e = function(b) { this._core = b, this._initialized = !1, this._pages = [], this._controls = {}, this._templates = [], this.$element = this._core.$element, this._overrides = { next: this._core.next, prev: this._core.prev, to: this._core.to }, this._handlers = { "prepared.owl.carousel": a.proxy(function(b) { b.namespace && this._core.settings.dotsData && this._templates.push('<div class="' + this._core.settings.dotClass + '">' + a(b.content).find("[data-dot]").addBack("[data-dot]").attr("data-dot") + "</div>") }, this), "added.owl.carousel": a.proxy(function(a) { a.namespace && this._core.settings.dotsData && this._templates.splice(a.position, 0, this._templates.pop()) }, this), "remove.owl.carousel": a.proxy(function(a) { a.namespace && this._core.settings.dotsData && this._templates.splice(a.position, 1) }, this), "changed.owl.carousel": a.proxy(function(a) { a.namespace && "position" == a.property.name && this.draw() }, this), "initialized.owl.carousel": a.proxy(function(a) { a.namespace && !this._initialized && (this._core.trigger("initialize", null, "navigation"), this.initialize(), this.update(), this.draw(), this._initialized = !0, this._core.trigger("initialized", null, "navigation")) }, this), "refreshed.owl.carousel": a.proxy(function(a) { a.namespace && this._initialized && (this._core.trigger("refresh", null, "navigation"), this.update(), this.draw(), this._core.trigger("refreshed", null, "navigation")) }, this) }, this._core.options = a.extend({}, e.Defaults, this._core.options), this.$element.on(this._handlers) }; e.Defaults = { nav: !1, navText: ['<span aria-label="Previous">‹</span>', '<span aria-label="Next">›</span>'], navSpeed: !1, navElement: 'button type="button" role="presentation"', navContainer: !1, navContainerClass: "owl-nav", navClass: ["owl-prev", "owl-next"], slideBy: 1, dotClass: "owl-dot", dotsClass: "owl-dots", dots: !0, dotsEach: !1, dotsData: !1, dotsSpeed: !1, dotsContainer: !1 }, e.prototype.initialize = function() { var b, c = this._core.settings; this._controls.$relative = (c.navContainer ? a(c.navContainer) : a("<div>").addClass(c.navContainerClass).appendTo(this.$element)).addClass("disabled"), this._controls.$previous = a("<" + c.navElement + ">").addClass(c.navClass[0]).html(c.navText[0]).prependTo(this._controls.$relative).on("click", a.proxy(function(a) { this.prev(c.navSpeed) }, this)), this._controls.$next = a("<" + c.navElement + ">").addClass(c.navClass[1]).html(c.navText[1]).appendTo(this._controls.$relative).on("click", a.proxy(function(a) { this.next(c.navSpeed) }, this)), c.dotsData || (this._templates = [a('<button role="button">').addClass(c.dotClass).append(a("<span>")).prop("outerHTML")]), this._controls.$absolute = (c.dotsContainer ? a(c.dotsContainer) : a("<div>").addClass(c.dotsClass).appendTo(this.$element)).addClass("disabled"), this._controls.$absolute.on("click", "button", a.proxy(function(b) { var d = a(b.target).parent().is(this._controls.$absolute) ? a(b.target).index() : a(b.target).parent().index(); b.preventDefault(), this.to(d, c.dotsSpeed) }, this)); for (b in this._overrides) this._core[b] = a.proxy(this[b], this) }, e.prototype.destroy = function() { var a, b, c, d, e; e = this._core.settings; for (a in this._handlers) this.$element.off(a, this._handlers[a]); for (b in this._controls) "$relative" === b && e.navContainer ? this._controls[b].html("") : this._controls[b].remove(); for (d in this.overides) this._core[d] = this._overrides[d]; for (c in Object.getOwnPropertyNames(this)) "function" != typeof this[c] && (this[c] = null) }, e.prototype.update = function() { var a, b, c, d = this._core.clones().length / 2, e = d + this._core.items().length, f = this._core.maximum(!0), g = this._core.settings, h = g.center || g.autoWidth || g.dotsData ? 1 : g.dotsEach || g.items; if ("page" !== g.slideBy && (g.slideBy = Math.min(g.slideBy, g.items)), g.dots || "page" == g.slideBy) for (this._pages = [], a = d, b = 0, c = 0; a < e; a++) { if (b >= h || 0 === b) { if (this._pages.push({ start: Math.min(f, a - d), end: a - d + h - 1 }), Math.min(f, a - d) === f) break; b = 0, ++c } b += this._core.mergers(this._core.relative(a)) } }, e.prototype.draw = function() { var b, c = this._core.settings, d = this._core.items().length <= c.items, e = this._core.relative(this._core.current()), f = c.loop || c.rewind; this._controls.$relative.toggleClass("disabled", !c.nav || d), c.nav && (this._controls.$previous.toggleClass("disabled", !f && e <= this._core.minimum(!0)), this._controls.$next.toggleClass("disabled", !f && e >= this._core.maximum(!0))), this._controls.$absolute.toggleClass("disabled", !c.dots || d), c.dots && (b = this._pages.length - this._controls.$absolute.children().length, c.dotsData && 0 !== b ? this._controls.$absolute.html(this._templates.join("")) : b > 0 ? this._controls.$absolute.append(new Array(b + 1).join(this._templates[0])) : b < 0 && this._controls.$absolute.children().slice(b).remove(), this._controls.$absolute.find(".active").removeClass("active"), this._controls.$absolute.children().eq(a.inArray(this.current(), this._pages)).addClass("active")) }, e.prototype.onTrigger = function(b) { var c = this._core.settings; b.page = { index: a.inArray(this.current(), this._pages), count: this._pages.length, size: c && (c.center || c.autoWidth || c.dotsData ? 1 : c.dotsEach || c.items) } }, e.prototype.current = function() { var b = this._core.relative(this._core.current()); return a.grep(this._pages, a.proxy(function(a, c) { return a.start <= b && a.end >= b }, this)).pop() }, e.prototype.getPosition = function(b) { var c, d, e = this._core.settings; return "page" == e.slideBy ? (c = a.inArray(this.current(), this._pages), d = this._pages.length, b ? ++c : --c, c = this._pages[(c % d + d) % d].start) : (c = this._core.relative(this._core.current()), d = this._core.items().length, b ? c += e.slideBy : c -= e.slideBy), c }, e.prototype.next = function(b) { a.proxy(this._overrides.to, this._core)(this.getPosition(!0), b) }, e.prototype.prev = function(b) { a.proxy(this._overrides.to, this._core)(this.getPosition(!1), b) }, e.prototype.to = function(b, c, d) { var e; !d && this._pages.length ? (e = this._pages.length, a.proxy(this._overrides.to, this._core)(this._pages[(b % e + e) % e].start, c)) : a.proxy(this._overrides.to, this._core)(b, c) }, a.fn.owlCarousel.Constructor.Plugins.Navigation = e }(window.Zepto || window.jQuery, window, document), function(a, b, c, d) { "use strict"; var e = function(c) { this._core = c, this._hashes = {}, this.$element = this._core.$element, this._handlers = { "initialized.owl.carousel": a.proxy(function(c) { c.namespace && "URLHash" === this._core.settings.startPosition && a(b).trigger("hashchange.owl.navigation") }, this), "prepared.owl.carousel": a.proxy(function(b) { if (b.namespace) { var c = a(b.content).find("[data-hash]").addBack("[data-hash]").attr("data-hash"); if (!c) return; this._hashes[c] = b.content } }, this), "changed.owl.carousel": a.proxy(function(c) { if (c.namespace && "position" === c.property.name) { var d = this._core.items(this._core.relative(this._core.current())), e = a.map(this._hashes, function(a, b) { return a === d ? b : null }).join(); if (!e || b.location.hash.slice(1) === e) return; b.location.hash = e } }, this) }, this._core.options = a.extend({}, e.Defaults, this._core.options), this.$element.on(this._handlers), a(b).on("hashchange.owl.navigation", a.proxy(function(a) { var c = b.location.hash.substring(1), e = this._core.$stage.children(), f = this._hashes[c] && e.index(this._hashes[c]); f !== d && f !== this._core.current() && this._core.to(this._core.relative(f), !1, !0) }, this)) }; e.Defaults = { URLhashListener: !1 }, e.prototype.destroy = function() { var c, d; a(b).off("hashchange.owl.navigation"); for (c in this._handlers) this._core.$element.off(c, this._handlers[c]); for (d in Object.getOwnPropertyNames(this)) "function" != typeof this[d] && (this[d] = null) }, a.fn.owlCarousel.Constructor.Plugins.Hash = e }(window.Zepto || window.jQuery, window, document), function(a, b, c, d) { function e(b, c) { var e = !1, f = b.charAt(0).toUpperCase() + b.slice(1); return a.each((b + " " + h.join(f + " ") + f).split(" "), function(a, b) { if (g[b] !== d) return e = !c || b, !1 }), e } function f(a) { return e(a, !0) } var g = a("<support>").get(0).style, h = "Webkit Moz O ms".split(" "), i = { transition: { end: { WebkitTransition: "webkitTransitionEnd", MozTransition: "transitionend", OTransition: "oTransitionEnd", transition: "transitionend" } }, animation: { end: { WebkitAnimation: "webkitAnimationEnd", MozAnimation: "animationend", OAnimation: "oAnimationEnd", animation: "animationend" } } }, j = { csstransforms: function() { return !!e("transform") }, csstransforms3d: function() { return !!e("perspective") }, csstransitions: function() { return !!e("transition") }, cssanimations: function() { return !!e("animation") } }; j.csstransitions() && (a.support.transition = new String(f("transition")), a.support.transition.end = i.transition.end[a.support.transition]), j.cssanimations() && (a.support.animation = new String(f("animation")), a.support.animation.end = i.animation.end[a.support.animation]), j.csstransforms() && (a.support.transform = new String(f("transform")), a.support.transform3d = j.csstransforms3d()) }(window.Zepto || window.jQuery, window, document); /* magnific-popup */ ! function(a) { "function" == typeof define && define.amd ? define(["jquery"], a) : a("object" == typeof exports ? require("jquery") : window.jQuery || window.Zepto) }(function(a) { var b, c, d, e, f, g, h = "Close", i = "BeforeClose", j = "AfterClose", k = "BeforeAppend", l = "MarkupParse", m = "Open", n = "Change", o = "mfp", p = "." + o, q = "mfp-ready", r = "mfp-removing", s = "mfp-prevent-close", t = function() {}, u = !!window.jQuery, v = a(window), w = function(a, c) { b.ev.on(o + a + p, c) }, x = function(b, c, d, e) { var f = document.createElement("div"); return f.className = "mfp-" + b, d && (f.innerHTML = d), e ? c && c.appendChild(f) : (f = a(f), c && f.appendTo(c)), f }, y = function(c, d) { b.ev.triggerHandler(o + c, d), b.st.callbacks && (c = c.charAt(0).toLowerCase() + c.slice(1), b.st.callbacks[c] && b.st.callbacks[c].apply(b, a.isArray(d) ? d : [d])) }, z = function(c) { return c === g && b.currTemplate.closeBtn || (b.currTemplate.closeBtn = a(b.st.closeMarkup.replace("%title%", b.st.tClose)), g = c), b.currTemplate.closeBtn }, A = function() { a.magnificPopup.instance || (b = new t, b.init(), a.magnificPopup.instance = b) }, B = function() { var a = document.createElement("p").style, b = ["ms", "O", "Moz", "Webkit"]; if (void 0 !== a.transition) return !0; for (; b.length;) if (b.pop() + "Transition" in a) return !0; return !1 }; t.prototype = { constructor: t, init: function() { var c = navigator.appVersion; b.isIE7 = -1 !== c.indexOf("MSIE 7."), b.isIE8 = -1 !== c.indexOf("MSIE 8."), b.isLowIE = b.isIE7 || b.isIE8, b.isAndroid = /android/gi.test(c), b.isIOS = /iphone|ipad|ipod/gi.test(c), b.supportsTransition = B(), b.probablyMobile = b.isAndroid || b.isIOS || /(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent), d = a(document), b.popupsCache = {} }, open: function(c) { var e; if (c.isObj === !1) { b.items = c.items.toArray(), b.index = 0; var g, h = c.items; for (e = 0; e < h.length; e++) if (g = h[e], g.parsed && (g = g.el[0]), g === c.el[0]) { b.index = e; break } } else b.items = a.isArray(c.items) ? c.items : [c.items], b.index = c.index || 0; if (b.isOpen) return void b.updateItemHTML(); b.types = [], f = "", b.ev = c.mainEl && c.mainEl.length ? c.mainEl.eq(0) : d, c.key ? (b.popupsCache[c.key] || (b.popupsCache[c.key] = {}), b.currTemplate = b.popupsCache[c.key]) : b.currTemplate = {}, b.st = a.extend(!0, {}, a.magnificPopup.defaults, c), b.fixedContentPos = "auto" === b.st.fixedContentPos ? !b.probablyMobile : b.st.fixedContentPos, b.st.modal && (b.st.closeOnContentClick = !1, b.st.closeOnBgClick = !1, b.st.showCloseBtn = !1, b.st.enableEscapeKey = !1), b.bgOverlay || (b.bgOverlay = x("bg").on("click" + p, function() { b.close() }), b.wrap = x("wrap").attr("tabindex", -1).on("click" + p, function(a) { b._checkIfClose(a.target) && b.close() }), b.container = x("container", b.wrap)), b.contentContainer = x("content"), b.st.preloader && (b.preloader = x("preloader", b.container, b.st.tLoading)); var i = a.magnificPopup.modules; for (e = 0; e < i.length; e++) { var j = i[e]; j = j.charAt(0).toUpperCase() + j.slice(1), b["init" + j].call(b) } y("BeforeOpen"), b.st.showCloseBtn && (b.st.closeBtnInside ? (w(l, function(a, b, c, d) { c.close_replaceWith = z(d.type) }), f += " mfp-close-btn-in") : b.wrap.append(z())), b.st.alignTop && (f += " mfp-align-top"), b.wrap.css(b.fixedContentPos ? { overflow: b.st.overflowY, overflowX: "hidden", overflowY: b.st.overflowY } : { top: v.scrollTop(), position: "absolute" }), (b.st.fixedBgPos === !1 || "auto" === b.st.fixedBgPos && !b.fixedContentPos) && b.bgOverlay.css({ height: d.height(), position: "absolute" }), b.st.enableEscapeKey && d.on("keyup" + p, function(a) { 27 === a.keyCode && b.close() }), v.on("resize" + p, function() { b.updateSize() }), b.st.closeOnContentClick || (f += " mfp-auto-cursor"), f && b.wrap.addClass(f); var k = b.wH = v.height(), n = {}; if (b.fixedContentPos && b._hasScrollBar(k)) { var o = b._getScrollbarSize(); o && (n.marginRight = o) } b.fixedContentPos && (b.isIE7 ? a("body, html").css("overflow", "hidden") : n.overflow = "hidden"); var r = b.st.mainClass; return b.isIE7 && (r += " mfp-ie7"), r && b._addClassToMFP(r), b.updateItemHTML(), y("BuildControls"), a("html").css(n), b.bgOverlay.add(b.wrap).prependTo(b.st.prependTo || a(document.body)), b._lastFocusedEl = document.activeElement, setTimeout(function() { b.content ? (b._addClassToMFP(q), b._setFocus()) : b.bgOverlay.addClass(q), d.on("focusin" + p, b._onFocusIn) }, 16), b.isOpen = !0, b.updateSize(k), y(m), c }, close: function() { b.isOpen && (y(i), b.isOpen = !1, b.st.removalDelay && !b.isLowIE && b.supportsTransition ? (b._addClassToMFP(r), setTimeout(function() { b._close() }, b.st.removalDelay)) : b._close()) }, _close: function() { y(h); var c = r + " " + q + " "; if (b.bgOverlay.detach(), b.wrap.detach(), b.container.empty(), b.st.mainClass && (c += b.st.mainClass + " "), b._removeClassFromMFP(c), b.fixedContentPos) { var e = { marginRight: "" }; b.isIE7 ? a("body, html").css("overflow", "") : e.overflow = "", a("html").css(e) } d.off("keyup" + p + " focusin" + p), b.ev.off(p), b.wrap.attr("class", "mfp-wrap").removeAttr("style"), b.bgOverlay.attr("class", "mfp-bg"), b.container.attr("class", "mfp-container"), !b.st.showCloseBtn || b.st.closeBtnInside && b.currTemplate[b.currItem.type] !== !0 || b.currTemplate.closeBtn && b.currTemplate.closeBtn.detach(), b._lastFocusedEl && a(b._lastFocusedEl).focus(), b.currItem = null, b.content = null, b.currTemplate = null, b.prevHeight = 0, y(j) }, updateSize: function(a) { if (b.isIOS) { var c = document.documentElement.clientWidth / window.innerWidth, d = window.innerHeight * c; b.wrap.css("height", d), b.wH = d } else b.wH = a || v.height(); b.fixedContentPos || b.wrap.css("height", b.wH), y("Resize") }, updateItemHTML: function() { var c = b.items[b.index]; b.contentContainer.detach(), b.content && b.content.detach(), c.parsed || (c = b.parseEl(b.index)); var d = c.type; if (y("BeforeChange", [b.currItem ? b.currItem.type : "", d]), b.currItem = c, !b.currTemplate[d]) { var f = b.st[d] ? b.st[d].markup : !1; y("FirstMarkupParse", f), b.currTemplate[d] = f ? a(f) : !0 } e && e !== c.type && b.container.removeClass("mfp-" + e + "-holder"); var g = b["get" + d.charAt(0).toUpperCase() + d.slice(1)](c, b.currTemplate[d]); b.appendContent(g, d), c.preloaded = !0, y(n, c), e = c.type, b.container.prepend(b.contentContainer), y("AfterChange") }, appendContent: function(a, c) { b.content = a, a ? b.st.showCloseBtn && b.st.closeBtnInside && b.currTemplate[c] === !0 ? b.content.find(".mfp-close").length || b.content.append(z()) : b.content = a : b.content = "", y(k), b.container.addClass("mfp-" + c + "-holder"), b.contentContainer.append(b.content) }, parseEl: function(c) { var d, e = b.items[c]; if (e.tagName ? e = { el: a(e) } : (d = e.type, e = { data: e, src: e.src }), e.el) { for (var f = b.types, g = 0; g < f.length; g++) if (e.el.hasClass("mfp-" + f[g])) { d = f[g]; break } e.src = e.el.attr("data-mfp-src"), e.src || (e.src = e.el.attr("href")) } return e.type = d || b.st.type || "inline", e.index = c, e.parsed = !0, b.items[c] = e, y("ElementParse", e), b.items[c] }, addGroup: function(a, c) { var d = function(d) { d.mfpEl = this, b._openClick(d, a, c) }; c || (c = {}); var e = "click.magnificPopup"; c.mainEl = a, c.items ? (c.isObj = !0, a.off(e).on(e, d)) : (c.isObj = !1, c.delegate ? a.off(e).on(e, c.delegate, d) : (c.items = a, a.off(e).on(e, d))) }, _openClick: function(c, d, e) { var f = void 0 !== e.midClick ? e.midClick : a.magnificPopup.defaults.midClick; if (f || 2 !== c.which && !c.ctrlKey && !c.metaKey) { var g = void 0 !== e.disableOn ? e.disableOn : a.magnificPopup.defaults.disableOn; if (g) if (a.isFunction(g)) { if (!g.call(b)) return !0 } else if (v.width() < g) return !0; c.type && (c.preventDefault(), b.isOpen && c.stopPropagation()), e.el = a(c.mfpEl), e.delegate && (e.items = d.find(e.delegate)), b.open(e) } }, updateStatus: function(a, d) { if (b.preloader) { c !== a && b.container.removeClass("mfp-s-" + c), d || "loading" !== a || (d = b.st.tLoading); var e = { status: a, text: d }; y("UpdateStatus", e), a = e.status, d = e.text, b.preloader.html(d), b.preloader.find("a").on("click", function(a) { a.stopImmediatePropagation() }), b.container.addClass("mfp-s-" + a), c = a } }, _checkIfClose: function(c) { if (!a(c).hasClass(s)) { var d = b.st.closeOnContentClick, e = b.st.closeOnBgClick; if (d && e) return !0; if (!b.content || a(c).hasClass("mfp-close") || b.preloader && c === b.preloader[0]) return !0; if (c === b.content[0] || a.contains(b.content[0], c)) { if (d) return !0 } else if (e && a.contains(document, c)) return !0; return !1 } }, _addClassToMFP: function(a) { b.bgOverlay.addClass(a), b.wrap.addClass(a) }, _removeClassFromMFP: function(a) { this.bgOverlay.removeClass(a), b.wrap.removeClass(a) }, _hasScrollBar: function(a) { return (b.isIE7 ? d.height() : document.body.scrollHeight) > (a || v.height()) }, _setFocus: function() { (b.st.focus ? b.content.find(b.st.focus).eq(0) : b.wrap).focus() }, _onFocusIn: function(c) { return c.target === b.wrap[0] || a.contains(b.wrap[0], c.target) ? void 0 : (b._setFocus(), !1) }, _parseMarkup: function(b, c, d) { var e; d.data && (c = a.extend(d.data, c)), y(l, [b, c, d]), a.each(c, function(a, c) { if (void 0 === c || c === !1) return !0; if (e = a.split("_"), e.length > 1) { var d = b.find(p + "-" + e[0]); if (d.length > 0) { var f = e[1]; "replaceWith" === f ? d[0] !== c[0] && d.replaceWith(c) : "img" === f ? d.is("img") ? d.attr("src", c) : d.replaceWith('<img src="' + c + '" class="' + d.attr("class") + '" >') : d.attr(e[1], c) } } else b.find(p + "-" + a).html(c) }) }, _getScrollbarSize: function() { if (void 0 === b.scrollbarSize) { var a = document.createElement("div"); a.style.cssText = "width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;", document.body.appendChild(a), b.scrollbarSize = a.offsetWidth - a.clientWidth, document.body.removeChild(a) } return b.scrollbarSize } }, a.magnificPopup = { instance: null, proto: t.prototype, modules: [], open: function(b, c) { return A(), b = b ? a.extend(!0, {}, b) : {}, b.isObj = !0, b.index = c || 0, this.instance.open(b) }, close: function() { return a.magnificPopup.instance && a.magnificPopup.instance.close() }, registerModule: function(b, c) { c.options && (a.magnificPopup.defaults[b] = c.options), a.extend(this.proto, c.proto), this.modules.push(b) }, defaults: { disableOn: 0, key: null, midClick: !1, mainClass: "", preloader: !0, focus: "", closeOnContentClick: !1, closeOnBgClick: !0, closeBtnInside: !0, showCloseBtn: !0, enableEscapeKey: !0, modal: !1, alignTop: !1, removalDelay: 0, prependTo: null, fixedContentPos: "auto", fixedBgPos: "auto", overflowY: "auto", closeMarkup: '<button title="%title%" type="button" class="mfp-close">×</button>', tClose: "Close (Esc)", tLoading: "Loading..." } }, a.fn.magnificPopup = function(c) { A(); var d = a(this); if ("string" == typeof c) if ("open" === c) { var e, f = u ? d.data("magnificPopup") : d[0].magnificPopup, g = parseInt(arguments[1], 10) || 0; f.items ? e = f.items[g] : (e = d, f.delegate && (e = e.find(f.delegate)), e = e.eq(g)), b._openClick({ mfpEl: e }, d, f) } else b.isOpen && b[c].apply(b, Array.prototype.slice.call(arguments, 1)); else c = a.extend(!0, {}, c), u ? d.data("magnificPopup", c) : d[0].magnificPopup = c, b.addGroup(d, c); return d }; var C, D, E, F = "inline", G = function() { E && (D.after(E.addClass(C)).detach(), E = null) }; a.magnificPopup.registerModule(F, { options: { hiddenClass: "hide", markup: "", tNotFound: "Content not found" }, proto: { initInline: function() { b.types.push(F), w(h + "." + F, function() { G() }) }, getInline: function(c, d) { if (G(), c.src) { var e = b.st.inline, f = a(c.src); if (f.length) { var g = f[0].parentNode; g && g.tagName && (D || (C = e.hiddenClass, D = x(C), C = "mfp-" + C), E = f.after(D).detach().removeClass(C)), b.updateStatus("ready") } else b.updateStatus("error", e.tNotFound), f = a("<div>"); return c.inlineElement = f, f } return b.updateStatus("ready"), b._parseMarkup(d, {}, c), d } } }); var H, I = "ajax", J = function() { H && a(document.body).removeClass(H) }, K = function() { J(), b.req && b.req.abort() }; a.magnificPopup.registerModule(I, { options: { settings: null, cursor: "mfp-ajax-cur", tError: '<a href="%url%">The content</a> could not be loaded.' }, proto: { initAjax: function() { b.types.push(I), H = b.st.ajax.cursor, w(h + "." + I, K), w("BeforeChange." + I, K) }, getAjax: function(c) { H && a(document.body).addClass(H), b.updateStatus("loading"); var d = a.extend({ url: c.src, success: function(d, e, f) { var g = { data: d, xhr: f }; y("ParseAjax", g), b.appendContent(a(g.data), I), c.finished = !0, J(), b._setFocus(), setTimeout(function() { b.wrap.addClass(q) }, 16), b.updateStatus("ready"), y("AjaxContentAdded") }, error: function() { J(), c.finished = c.loadError = !0, b.updateStatus("error", b.st.ajax.tError.replace("%url%", c.src)) } }, b.st.ajax.settings); return b.req = a.ajax(d), "" } } }); var L, M = function(c) { if (c.data && void 0 !== c.data.title) return c.data.title; var d = b.st.image.titleSrc; if (d) { if (a.isFunction(d)) return d.call(b, c); if (c.el) return c.el.attr(d) || "" } return "" }; a.magnificPopup.registerModule("image", { options: { markup: '<div class="mfp-figure"><div class="mfp-close"></div><figure><div class="mfp-img"></div><figcaption><div class="mfp-bottom-bar"><div class="mfp-title"></div><div class="mfp-counter"></div></div></figcaption></figure></div>', cursor: "mfp-zoom-out-cur", titleSrc: "title", verticalFit: !0, tError: '<a href="%url%">The image</a> could not be loaded.' }, proto: { initImage: function() { var c = b.st.image, d = ".image"; b.types.push("image"), w(m + d, function() { "image" === b.currItem.type && c.cursor && a(document.body).addClass(c.cursor) }), w(h + d, function() { c.cursor && a(document.body).removeClass(c.cursor), v.off("resize" + p) }), w("Resize" + d, b.resizeImage), b.isLowIE && w("AfterChange", b.resizeImage) }, resizeImage: function() { var a = b.currItem; if (a && a.img && b.st.image.verticalFit) { var c = 0; b.isLowIE && (c = parseInt(a.img.css("padding-top"), 10) + parseInt(a.img.css("padding-bottom"), 10)), a.img.css("max-height", b.wH - c) } }, _onImageHasSize: function(a) { a.img && (a.hasSize = !0, L && clearInterval(L), a.isCheckingImgSize = !1, y("ImageHasSize", a), a.imgHidden && (b.content && b.content.removeClass("mfp-loading"), a.imgHidden = !1)) }, findImageSize: function(a) { var c = 0, d = a.img[0], e = function(f) { L && clearInterval(L), L = setInterval(function() { return d.naturalWidth > 0 ? void b._onImageHasSize(a) : (c > 200 && clearInterval(L), c++, void(3 === c ? e(10) : 40 === c ? e(50) : 100 === c && e(500))) }, f) }; e(1) }, getImage: function(c, d) { var e = 0, f = function() { c && (c.img[0].complete ? (c.img.off(".mfploader"), c === b.currItem && (b._onImageHasSize(c), b.updateStatus("ready")), c.hasSize = !0, c.loaded = !0, y("ImageLoadComplete")) : (e++, 200 > e ? setTimeout(f, 100) : g())) }, g = function() { c && (c.img.off(".mfploader"), c === b.currItem && (b._onImageHasSize(c), b.updateStatus("error", h.tError.replace("%url%", c.src))), c.hasSize = !0, c.loaded = !0, c.loadError = !0) }, h = b.st.image, i = d.find(".mfp-img"); if (i.length) { var j = document.createElement("img"); j.className = "mfp-img", c.el && c.el.find("img").length && (j.alt = c.el.find("img").attr("alt")), c.img = a(j).on("load.mfploader", f).on("error.mfploader", g), j.src = c.src, i.is("img") && (c.img = c.img.clone()), j = c.img[0], j.naturalWidth > 0 ? c.hasSize = !0 : j.width || (c.hasSize = !1) } return b._parseMarkup(d, { title: M(c), img_replaceWith: c.img }, c), b.resizeImage(), c.hasSize ? (L && clearInterval(L), c.loadError ? (d.addClass("mfp-loading"), b.updateStatus("error", h.tError.replace("%url%", c.src))) : (d.removeClass("mfp-loading"), b.updateStatus("ready")), d) : (b.updateStatus("loading"), c.loading = !0, c.hasSize || (c.imgHidden = !0, d.addClass("mfp-loading"), b.findImageSize(c)), d) } } }); var N, O = function() { return void 0 === N && (N = void 0 !== document.createElement("p").style.MozTransform), N }; a.magnificPopup.registerModule("zoom", { options: { enabled: !1, easing: "ease-in-out", duration: 300, opener: function(a) { return a.is("img") ? a : a.find("img") } }, proto: { initZoom: function() { var a, c = b.st.zoom, d = ".zoom"; if (c.enabled && b.supportsTransition) { var e, f, g = c.duration, j = function(a) { var b = a.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"), d = "all " + c.duration / 1e3 + "s " + c.easing, e = { position: "fixed", zIndex: 9999, left: 0, top: 0, "-webkit-backface-visibility": "hidden" }, f = "transition"; return e["-webkit-" + f] = e["-moz-" + f] = e["-o-" + f] = e[f] = d, b.css(e), b }, k = function() { b.content.css("visibility", "visible") }; w("BuildControls" + d, function() { if (b._allowZoom()) { if (clearTimeout(e), b.content.css("visibility", "hidden"), a = b._getItemToZoom(), !a) return void k(); f = j(a), f.css(b._getOffset()), b.wrap.append(f), e = setTimeout(function() { f.css(b._getOffset(!0)), e = setTimeout(function() { k(), setTimeout(function() { f.remove(), a = f = null, y("ZoomAnimationEnded") }, 16) }, g) }, 16) } }), w(i + d, function() { if (b._allowZoom()) { if (clearTimeout(e), b.st.removalDelay = g, !a) { if (a = b._getItemToZoom(), !a) return; f = j(a) } f.css(b._getOffset(!0)), b.wrap.append(f), b.content.css("visibility", "hidden"), setTimeout(function() { f.css(b._getOffset()) }, 16) } }), w(h + d, function() { b._allowZoom() && (k(), f && f.remove(), a = null) }) } }, _allowZoom: function() { return "image" === b.currItem.type }, _getItemToZoom: function() { return b.currItem.hasSize ? b.currItem.img : !1 }, _getOffset: function(c) { var d; d = c ? b.currItem.img : b.st.zoom.opener(b.currItem.el || b.currItem); var e = d.offset(), f = parseInt(d.css("padding-top"), 10), g = parseInt(d.css("padding-bottom"), 10); e.top -= a(window).scrollTop() - f; var h = { width: d.width(), height: (u ? d.innerHeight() : d[0].offsetHeight) - g - f }; return O() ? h["-moz-transform"] = h.transform = "translate(" + e.left + "px," + e.top + "px)" : (h.left = e.left, h.top = e.top), h } } }); var P = "iframe", Q = "//about:blank", R = function(a) { if (b.currTemplate[P]) { var c = b.currTemplate[P].find("iframe"); c.length && (a || (c[0].src = Q), b.isIE8 && c.css("display", a ? "block" : "none")) } }; a.magnificPopup.registerModule(P, { options: { markup: '<div class="mfp-iframe-scaler"><div class="mfp-close"></div><iframe class="mfp-iframe" src="//about:blank" frameborder="0" allowfullscreen></iframe></div>', srcAction: "iframe_src", patterns: { youtube: { index: "youtube.com", id: "v=", src: "//www.youtube.com/embed/%id%?autoplay=1" }, vimeo: { index: "vimeo.com/", id: "/", src: "//player.vimeo.com/video/%id%?autoplay=1" }, gmaps: { index: "//maps.google.", src: "%id%&output=embed" } } }, proto: { initIframe: function() { b.types.push(P), w("BeforeChange", function(a, b, c) { b !== c && (b === P ? R() : c === P && R(!0)) }), w(h + "." + P, function() { R() }) }, getIframe: function(c, d) { var e = c.src, f = b.st.iframe; a.each(f.patterns, function() { return e.indexOf(this.index) > -1 ? (this.id && (e = "string" == typeof this.id ? e.substr(e.lastIndexOf(this.id) + this.id.length, e.length) : this.id.call(this, e)), e = this.src.replace("%id%", e), !1) : void 0 }); var g = {}; return f.srcAction && (g[f.srcAction] = e), b._parseMarkup(d, g, c), b.updateStatus("ready"), d } } }); var S = function(a) { var c = b.items.length; return a > c - 1 ? a - c : 0 > a ? c + a : a }, T = function(a, b, c) { return a.replace(/%curr%/gi, b + 1).replace(/%total%/gi, c) }; a.magnificPopup.registerModule("gallery", { options: { enabled: !1, arrowMarkup: '<button title="%title%" type="button" class="mfp-arrow mfp-arrow-%dir%"></button>', preload: [0, 2], navigateByImgClick: !0, arrows: !0, tPrev: "Previous (Left arrow key)", tNext: "Next (Right arrow key)", tCounter: "%curr% of %total%" }, proto: { initGallery: function() { var c = b.st.gallery, e = ".mfp-gallery", g = Boolean(a.fn.mfpFastClick); return b.direction = !0, c && c.enabled ? (f += " mfp-gallery", w(m + e, function() { c.navigateByImgClick && b.wrap.on("click" + e, ".mfp-img", function() { return b.items.length > 1 ? (b.next(), !1) : void 0 }), d.on("keydown" + e, function(a) { 37 === a.keyCode ? b.prev() : 39 === a.keyCode && b.next() }) }), w("UpdateStatus" + e, function(a, c) { c.text && (c.text = T(c.text, b.currItem.index, b.items.length)) }), w(l + e, function(a, d, e, f) { var g = b.items.length; e.counter = g > 1 ? T(c.tCounter, f.index, g) : "" }), w("BuildControls" + e, function() { if (b.items.length > 1 && c.arrows && !b.arrowLeft) { var d = c.arrowMarkup, e = b.arrowLeft = a(d.replace(/%title%/gi, c.tPrev).replace(/%dir%/gi, "left")).addClass(s), f = b.arrowRight = a(d.replace(/%title%/gi, c.tNext).replace(/%dir%/gi, "right")).addClass(s), h = g ? "mfpFastClick" : "click"; e[h](function() { b.prev() }), f[h](function() { b.next() }), b.isIE7 && (x("b", e[0], !1, !0), x("a", e[0], !1, !0), x("b", f[0], !1, !0), x("a", f[0], !1, !0)), b.container.append(e.add(f)) } }), w(n + e, function() { b._preloadTimeout && clearTimeout(b._preloadTimeout), b._preloadTimeout = setTimeout(function() { b.preloadNearbyImages(), b._preloadTimeout = null }, 16) }), void w(h + e, function() { d.off(e), b.wrap.off("click" + e), b.arrowLeft && g && b.arrowLeft.add(b.arrowRight).destroyMfpFastClick(), b.arrowRight = b.arrowLeft = null })) : !1 }, next: function() { b.direction = !0, b.index = S(b.index + 1), b.updateItemHTML() }, prev: function() { b.direction = !1, b.index = S(b.index - 1), b.updateItemHTML() }, goTo: function(a) { b.direction = a >= b.index, b.index = a, b.updateItemHTML() }, preloadNearbyImages: function() { var a, c = b.st.gallery.preload, d = Math.min(c[0], b.items.length), e = Math.min(c[1], b.items.length); for (a = 1; a <= (b.direction ? e : d); a++) b._preloadItem(b.index + a); for (a = 1; a <= (b.direction ? d : e); a++) b._preloadItem(b.index - a) }, _preloadItem: function(c) { if (c = S(c), !b.items[c].preloaded) { var d = b.items[c]; d.parsed || (d = b.parseEl(c)), y("LazyLoad", d), "image" === d.type && (d.img = a('<img class="mfp-img" >').on("load.mfploader", function() { d.hasSize = !0 }).on("error.mfploader", function() { d.hasSize = !0, d.loadError = !0, y("LazyLoadError", d) }).attr("src", d.src)), d.preloaded = !0 } } } }); var U = "retina"; a.magnificPopup.registerModule(U, { options: { replaceSrc: function(a) { return a.src.replace(/\.\w+$/, function(a) { return "@2x" + a }) }, ratio: 1 }, proto: { initRetina: function() { if (window.devicePixelRatio > 1) { var a = b.st.retina, c = a.ratio; c = isNaN(c) ? c() : c, c > 1 && (w("ImageHasSize." + U, function(a, b) { b.img.css({ "max-width": b.img[0].naturalWidth / c, width: "100%" }) }), w("ElementParse." + U, function(b, d) { d.src = a.replaceSrc(d, c) })) } } } }), function() { var b = 1e3, c = "ontouchstart" in window, d = function() { v.off("touchmove" + f + " touchend" + f) }, e = "mfpFastClick", f = "." + e; a.fn.mfpFastClick = function(e) { return a(this).each(function() { var g, h = a(this); if (c) { var i, j, k, l, m, n; h.on("touchstart" + f, function(a) { l = !1, n = 1, m = a.originalEvent ? a.originalEvent.touches[0] : a.touches[0], j = m.clientX, k = m.clientY, v.on("touchmove" + f, function(a) { m = a.originalEvent ? a.originalEvent.touches : a.touches, n = m.length, m = m[0], (Math.abs(m.clientX - j) > 10 || Math.abs(m.clientY - k) > 10) && (l = !0, d()) }).on("touchend" + f, function(a) { d(), l || n > 1 || (g = !0, a.preventDefault(), clearTimeout(i), i = setTimeout(function() { g = !1 }, b), e()) }) }) } h.on("click" + f, function() { g || e() }) }) }, a.fn.destroyMfpFastClick = function() { a(this).off("touchstart" + f + " click" + f), c && v.off("touchmove" + f + " touchend" + f) } }(), A() }); /* enquire */ ! function(a, b, c) { var d = window.matchMedia; "undefined" != typeof module && module.exports ? module.exports = c(d) : "function" == typeof define && define.amd ? define(function() { return b[a] = c(d) }) : b[a] = c(d) }("enquire", this, function(a) { "use strict"; function b(a, b) { var c, d = 0, e = a.length; for (d; e > d && (c = b(a[d], d), c !== !1); d++); } function c(a) { return "[object Array]" === Object.prototype.toString.apply(a) } function d(a) { return "function" == typeof a } function e(a) { this.options = a, !a.deferSetup && this.setup() } function f(b, c) { this.query = b, this.isUnconditional = c, this.handlers = [], this.mql = a(b); var d = this; this.listener = function(a) { d.mql = a, d.assess() }, this.mql.addListener(this.listener) } function g() { if (!a) throw new Error("matchMedia not present, legacy browsers require a polyfill"); this.queries = {}, this.browserIsIncapable = !a("only all").matches } return e.prototype = { setup: function() { this.options.setup && this.options.setup(), this.initialised = !0 }, on: function() { !this.initialised && this.setup(), this.options.match && this.options.match() }, off: function() { this.options.unmatch && this.options.unmatch() }, destroy: function() { this.options.destroy ? this.options.destroy() : this.off() }, equals: function(a) { return this.options === a || this.options.match === a } }, f.prototype = { addHandler: function(a) { var b = new e(a); this.handlers.push(b), this.matches() && b.on() }, removeHandler: function(a) { var c = this.handlers; b(c, function(b, d) { return b.equals(a) ? (b.destroy(), !c.splice(d, 1)) : void 0 }) }, matches: function() { return this.mql.matches || this.isUnconditional }, clear: function() { b(this.handlers, function(a) { a.destroy() }), this.mql.removeListener(this.listener), this.handlers.length = 0 }, assess: function() { var a = this.matches() ? "on" : "off"; b(this.handlers, function(b) { b[a]() }) } }, g.prototype = { register: function(a, e, g) { var h = this.queries, i = g && this.browserIsIncapable; return h[a] || (h[a] = new f(a, i)), d(e) && (e = { match: e }), c(e) || (e = [e]), b(e, function(b) { d(b) && (b = { match: b }), h[a].addHandler(b) }), this }, unregister: function(a, b) { var c = this.queries[a]; return c && (b ? c.removeHandler(b) : (c.clear(), delete this.queries[a])), this } }, new g }); /*! * Jarallax v2.0.2 (https://github.com/nk-o/jarallax) * Copyright 2022 nK <https://nkdev.info> * Licensed under MIT (https://github.com/nk-o/jarallax/blob/master/LICENSE) */ /* plugin */ ! function() { var t = !1; window.JQClass = function() {}, JQClass.classes = {}, JQClass.extend = function e(n) { function a() { !t && this._init && this._init.apply(this, arguments) } var s = this.prototype; t = !0; var i = new this; t = !1; for (var r in n) i[r] = "function" == typeof n[r] && "function" == typeof s[r] ? function(t, e) { return function() { var n = this._super; this._super = function(e) { return s[t].apply(this, e || []) }; var a = e.apply(this, arguments); return this._super = n, a } }(r, n[r]) : n[r]; return a.prototype = i, a.prototype.constructor = a, a.extend = e, a } }(), function($) { function camelCase(t) { return t.replace(/-([a-z])/g, function(t, e) { return e.toUpperCase() }) } JQClass.classes.JQPlugin = JQClass.extend({ name: "plugin", defaultOptions: {}, regionalOptions: {}, _getters: [], _getMarker: function() { return "is-" + this.name }, _init: function() { $.extend(this.defaultOptions, this.regionalOptions && this.regionalOptions[""] || {}); var t = camelCase(this.name); $[t] = this, $.fn[t] = function(e) { var n = Array.prototype.slice.call(arguments, 1); return $[t]._isNotChained(e, n) ? $[t][e].apply($[t], [this[0]].concat(n)) : this.each(function() { if ("string" == typeof e) { if ("_" === e[0] || !$[t][e]) throw "Unknown method: " + e; $[t][e].apply($[t], [this].concat(n)) } else $[t]._attach(this, e) }) } }, setDefaults: function(t) { $.extend(this.defaultOptions, t || {}) }, _isNotChained: function(t, e) { return "option" === t && (0 === e.length || 1 === e.length && "string" == typeof e[0]) ? !0 : $.inArray(t, this._getters) > -1 }, _attach: function(t, e) { if (t = $(t), !t.hasClass(this._getMarker())) { t.addClass(this._getMarker()), e = $.extend({}, this.defaultOptions, this._getMetadata(t), e || {}); var n = $.extend({ name: this.name, elem: t, options: e }, this._instSettings(t, e)); t.data(this.name, n), this._postAttach(t, n), this.option(t, e) } }, _instSettings: function(t, e) { return {} }, _postAttach: function(t, e) {}, _getMetadata: function(elem) { try { var data = elem.data(this.name.toLowerCase()) || ""; data = data.replace(/'/g, '"'), data = data.replace(/([a-zA-Z0-9]+):/g, function(t, e, n) { var a = data.substring(0, n).match(/"/g); return a && a.length % 2 !== 0 ? e + ":" : '"' + e + '":' }), data = $.parseJSON("{" + data + "}"); for (var name in data) { var value = data[name]; "string" == typeof value && value.match(/^new Date\((.*)\)$/) && (data[name] = eval(value)) } return data } catch (e) { return {} } }, _getInst: function(t) { return $(t).data(this.name) || {} }, option: function(t, e, n) { t = $(t); var a = t.data(this.name); if (!e || "string" == typeof e && null == n) { var s = (a || {}).options; return s && e ? s[e] : s } if (t.hasClass(this._getMarker())) { var s = e || {}; "string" == typeof e && (s = {}, s[e] = n), this._optionsChanged(t, a, s), $.extend(a.options, s) } }, _optionsChanged: function(t, e, n) {}, destroy: function(t) { t = $(t), t.hasClass(this._getMarker()) && (this._preDestroy(t, this._getInst(t)), t.removeData(this.name).removeClass(this._getMarker())) }, _preDestroy: function(t, e) {} }), $.JQPlugin = { createPlugin: function(t, e) { "object" == typeof t && (e = t, t = "JQPlugin"), t = camelCase(t); var n = camelCase(e.name); JQClass.classes[n] = JQClass.classes[t].extend(e), new JQClass.classes[n] } } }(jQuery); /* countTo */ ! function(t) { function e(t, e) { return t.toFixed(e.decimals) } t.fn.countTo = function(e) { return e = e || {}, t(this).each(function() { function a() { s += l, c++, n(s), "function" == typeof o.onUpdate && o.onUpdate.call(f, s), c >= r && (i.removeData("countTo"), clearInterval(d.interval), s = o.to, "function" == typeof o.onComplete && o.onComplete.call(f, s)) } function n(t) { var e = o.formatter.call(f, t, o); i.text(e) } var o = t.extend({}, t.fn.countTo.defaults, { from: t(this).data("from"), to: t(this).data("to"), speed: t(this).data("speed"), refreshInterval: t(this).data("refresh-interval"), decimals: t(this).data("decimals") }, e), r = Math.ceil(o.speed / o.refreshInterval), l = (o.to - o.from) / r, f = this, i = t(this), c = 0, s = o.from, d = i.data("countTo") || {}; i.data("countTo", d), d.interval && clearInterval(d.interval), d.interval = setInterval(a, o.refreshInterval), n(s) }) }, t.fn.countTo.defaults = { from: 0, to: 0, speed: 1e3, refreshInterval: 100, decimals: 0, formatter: e, onUpdate: null, onComplete: null } }(jQuery); /* countdown */ ! function(t) { t.JQPlugin.createPlugin({ name: "countdown", defaultOptions: { until: null, since: null, timezone: null, serverSync: null, format: "dHMS", layout: "", compact: !1, padZeroes: !1, significant: 0, description: "", expiryUrl: "", expiryText: "", alwaysExpire: !1, onExpiry: null, onTick: null, tickInterval: 1 }, regionalOptions: { "": { labels: ["y", "m", "w", "d", "h", "m", "s"], labels1: ["y", "m", "w", "d", "h", "m", "s"], compactLabels: ["y", "m", "w", "d"], whichLabels: null, digits: ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"], timeSeparator: ":", isRTL: !1 } }, _getters: ["getTimes"], _rtlClass: "countdown-rtl", _sectionClass: "countdown-section", _amountClass: "countdown-amount", _periodClass: "countdown-period", _rowClass: "countdown-row", _holdingClass: "countdown-holding", _showClass: "countdown-show", _descrClass: "countdown-descr", _timerElems: [], _init: function() { var e = this; this._super(), this._serverSyncs = []; var i = "function" == typeof Date.now ? Date.now : function() { return (new Date).getTime() }, n = window.performance && "function" == typeof window.performance.now; var s = window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || null, o = 0; !s || t.noRequestAnimationFrame ? (t.noRequestAnimationFrame = null, setInterval(function() { e._updateElems() }, 980)) : (o = window.animationStartTime || window.webkitAnimationStartTime || window.mozAnimationStartTime || window.oAnimationStartTime || window.msAnimationStartTime || i(), s(function t(a) { var r = a < 1e12 ? n ? performance.now() + performance.timing.navigationStart : i() : a || i(); r - o >= 1e3 && (e._updateElems(), o = r), s(t) })) }, UTCDate: function(t, e, i, n, s, o, a, r) { "object" == typeof e && e.constructor == Date && (r = e.getMilliseconds(), a = e.getSeconds(), o = e.getMinutes(), s = e.getHours(), n = e.getDate(), i = e.getMonth(), e = e.getFullYear()); var l = new Date; return l.setUTCFullYear(e), l.setUTCDate(1), l.setUTCMonth(i || 0), l.setUTCDate(n || 1), l.setUTCHours(s || 0), l.setUTCMinutes((o || 0) - (Math.abs(t) < 30 ? 60 * t : t)), l.setUTCSeconds(a || 0), l.setUTCMilliseconds(r || 0), l }, periodsToSeconds: function(t) { return 31557600 * t[0] + 2629800 * t[1] + 604800 * t[2] + 86400 * t[3] + 3600 * t[4] + 60 * t[5] + t[6] }, _instSettings: function(t, e) { return { _periods: [0, 0, 0, 0, 0, 0, 0] } }, _addElem: function(t) { this._hasElem(t) || this._timerElems.push(t) }, _hasElem: function(e) { return t.inArray(e, this._timerElems) > -1 }, _removeElem: function(e) { this._timerElems = t.map(this._timerElems, function(t) { return t == e ? null : t }) }, _updateElems: function() { for (var t = this._timerElems.length - 1; t >= 0; t--) this._updateCountdown(this._timerElems[t]) }, _optionsChanged: function(e, i, n) { n.layout && (n.layout = n.layout.replace(/</g, "<").replace(/>/g, ">")), this._resetExtraLabels(i.options, n); var s = i.options.timezone != n.timezone; t.extend(i.options, n), this._adjustSettings(e, i, null != n.until || null != n.since || s); var o = new Date; (i._since && i._since < o || i._until && i._until > o) && this._addElem(e[0]), this._updateCountdown(e, i) }, _updateCountdown: function(e, i) { if (e = e.jquery ? e : t(e), i = i || this._getInst(e)) { if (e.html(this._generateHTML(i)).toggleClass(this._rtlClass, i.options.isRTL), t.isFunction(i.options.onTick)) { var n = "lap" != i._hold ? i._periods : this._calculatePeriods(i, i._show, i.options.significant, new Date); 1 != i.options.tickInterval && this.periodsToSeconds(n) % i.options.tickInterval != 0 || i.options.onTick.apply(e[0], [n]) } if ("pause" != i._hold && (i._since ? i._now.getTime() < i._since.getTime() : i._now.getTime() >= i._until.getTime()) && !i._expiring) { if (i._expiring = !0, this._hasElem(e[0]) || i.options.alwaysExpire) { if (this._removeElem(e[0]), t.isFunction(i.options.onExpiry) && i.options.onExpiry.apply(e[0], []), i.options.expiryText) { var s = i.options.layout; i.options.layout = i.options.expiryText, this._updateCountdown(e[0], i), i.options.layout = s } i.options.expiryUrl && (window.location = i.options.expiryUrl) } i._expiring = !1 } else "pause" == i._hold && this._removeElem(e[0]) } }, _resetExtraLabels: function(t, e) { for (var i in e) i.match(/[Ll]abels[02-9]|compactLabels1/) && (t[i] = e[i]); for (var i in t) i.match(/[Ll]abels[02-9]|compactLabels1/) && void 0 === e[i] && (t[i] = null) }, _adjustSettings: function(e, i, n) { for (var s, o = 0, a = null, r = 0; r < this._serverSyncs.length; r++) if (this._serverSyncs[r][0] == i.options.serverSync) { a = this._serverSyncs[r][1]; break } if (null != a) o = i.options.serverSync ? a : 0, s = new Date; else { var l = t.isFunction(i.options.serverSync) ? i.options.serverSync.apply(e[0], []) : null; s = new Date, o = l ? s.getTime() - l.getTime() : 0, this._serverSyncs.push([i.options.serverSync, o]) } var _ = i.options.timezone; _ = null == _ ? -s.getTimezoneOffset() : _, (n || !n && null == i._until && null == i._since) && (i._since = i.options.since, null != i._since && (i._since = this.UTCDate(_, this._determineTime(i._since, null)), i._since && o && i._since.setMilliseconds(i._since.getMilliseconds() + o)), i._until = this.UTCDate(_, this._determineTime(i.options.until, s)), o && i._until.setMilliseconds(i._until.getMilliseconds() + o)), i._show = this._determineShow(i) }, _preDestroy: function(t, e) { this._removeElem(t[0]), t.empty() }, pause: function(t) { this._hold(t, "pause") }, lap: function(t) { this._hold(t, "lap") }, resume: function(t) { this._hold(t, null) }, toggle: function(e) { this[(t.data(e, this.name) || {})._hold ? "resume" : "pause"](e) }, toggleLap: function(e) { this[(t.data(e, this.name) || {})._hold ? "resume" : "lap"](e) }, _hold: function(e, i) { var n = t.data(e, this.name); if (n) { if ("pause" == n._hold && !i) { n._periods = n._savePeriods; var s = n._since ? "-" : "+"; n[n._since ? "_since" : "_until"] = this._determineTime(s + n._periods[0] + "y" + s + n._periods[1] + "o" + s + n._periods[2] + "w" + s + n._periods[3] + "d" + s + n._periods[4] + "h" + s + n._periods[5] + "m" + s + n._periods[6] + "s"), this._addElem(e) } n._hold = i, n._savePeriods = "pause" == i ? n._periods : null, t.data(e, this.name, n), this._updateCountdown(e, n) } }, getTimes: function(e) { var i = t.data(e, this.name); return i ? "pause" == i._hold ? i._savePeriods : i._hold ? this._calculatePeriods(i, i._show, i.options.significant, new Date) : i._periods : null }, _determineTime: function(t, e) { var i = this, n = null == t ? e : "string" == typeof t ? function(t) { t = t.toLowerCase(); for (var e = new Date, n = e.getFullYear(), s = e.getMonth(), o = e.getDate(), a = e.getHours(), r = e.getMinutes(), l = e.getSeconds(), _ = /([+-]?[0-9]+)\s*(s|m|h|d|w|o|y)?/g, p = _.exec(t); p;) { switch (p[2] || "s") { case "s": l += parseInt(p[1], 10); break; case "m": r += parseInt(p[1], 10); break; case "h": a += parseInt(p[1], 10); break; case "d": o += parseInt(p[1], 10); break; case "w": o += 7 * parseInt(p[1], 10); break; case "o": s += parseInt(p[1], 10), o = Math.min(o, i._getDaysInMonth(n, s)); break; case "y": n += parseInt(p[1], 10), o = Math.min(o, i._getDaysInMonth(n, s)) } p = _.exec(t) } return new Date(n, s, o, a, r, l, 0) }(t) : "number" == typeof t ? function(t) { var e = new Date; return e.setTime(e.getTime() + 1e3 * t), e }(t) : t; return n && n.setMilliseconds(0), n }, _getDaysInMonth: function(t, e) { return 32 - new Date(t, e, 32).getDate() }, _normalLabels: function(t) { return t }, _generateHTML: function(e) { var i = this; e._periods = e._hold ? e._periods : this._calculatePeriods(e, e._show, e.options.significant, new Date); for (var n = !1, s = 0, o = e.options.significant, a = t.extend({}, e._show), r = 0; r <= 6; r++) n |= "?" == e._show[r] && e._periods[r] > 0, a[r] = "?" != e._show[r] || n ? e._show[r] : null, s += a[r] ? 1 : 0, o -= e._periods[r] > 0 ? 1 : 0; var l = [!1, !1, !1, !1, !1, !1, !1]; for (r = 6; r >= 0; r--) e._show[r] && (e._periods[r] ? l[r] = !0 : (l[r] = o > 0, o--)); var _ = e.options.compact ? e.options.compactLabels : e.options.labels, p = e.options.whichLabels || this._normalLabels, c = function(t) { var n = e.options["compactLabels" + p(e._periods[t])]; return a[t] ? i._translateDigits(e, e._periods[t]) + (n ? n[t] : _[t]) + " " : "" }, u = e.options.padZeroes ? 2 : 1, d = function(t) { var n = e.options["labels" + p(e._periods[t])]; return !e.options.significant && a[t] || e.options.significant && l[t] ? '<span class="' + i._sectionClass + '"><span class="' + i._amountClass + '">' + i._minDigits(e, e._periods[t], u) + (n ? n[t] : _[t]) + "</span></span>" : "" }; return e.options.layout ? this._buildLayout(e, a, e.options.layout, e.options.compact, e.options.significant, l) : (e.options.compact ? '<span class="' + this._rowClass + " " + this._amountClass + (e._hold ? " " + this._holdingClass : "") + '">' + c(0) + c(1) + c(2) + c(3) + (a[4] ? this._minDigits(e, e._periods[4], 2) : "") + (a[5] ? (a[4] ? e.options.timeSeparator : "") + this._minDigits(e, e._periods[5], 2) : "") + (a[6] ? (a[4] || a[5] ? e.options.timeSeparator : "") + this._minDigits(e, e._periods[6], 2) : "") : '<span class="' + this._rowClass + " " + this._showClass + (e.options.significant || s) + (e._hold ? " " + this._holdingClass : "") + '">' + d(0) + d(1) + d(2) + d(3) + d(4) + d(5) + d(6)) + "</span>" + (e.options.description ? '<span class="' + this._rowClass + " " + this._descrClass + '">' + e.options.description + "</span>" : "") }, _buildLayout: function(e, i, n, s, o, a) { for (var r = e.options[s ? "compactLabels" : "labels"], l = e.options.whichLabels || this._normalLabels, _ = function(t) { return (e.options[(s ? "compactLabels" : "labels") + l(e._periods[t])] || r)[t] }, p = function(t, i) { return e.options.digits[Math.floor(t / i) % 10] }, c = { desc: e.options.description, sep: e.options.timeSeparator, yl: _(0), yn: this._minDigits(e, e._periods[0], 1), ynn: this._minDigits(e, e._periods[0], 2), ynnn: this._minDigits(e, e._periods[0], 3), y1: p(e._periods[0], 1), y10: p(e._periods[0], 10), y100: p(e._periods[0], 100), y1000: p(e._periods[0], 1e3), ol: _(1), on: this._minDigits(e, e._periods[1], 1), onn: this._minDigits(e, e._periods[1], 2), onnn: this._minDigits(e, e._periods[1], 3), o1: p(e._periods[1], 1), o10: p(e._periods[1], 10), o100: p(e._periods[1], 100), o1000: p(e._periods[1], 1e3), wl: _(2), wn: this._minDigits(e, e._periods[2], 1), wnn: this._minDigits(e, e._periods[2], 2), wnnn: this._minDigits(e, e._periods[2], 3), w1: p(e._periods[2], 1), w10: p(e._periods[2], 10), w100: p(e._periods[2], 100), w1000: p(e._periods[2], 1e3), dl: _(3), dn: this._minDigits(e, e._periods[3], 1), dnn: this._minDigits(e, e._periods[3], 2), dnnn: this._minDigits(e, e._periods[3], 3), d1: p(e._periods[3], 1), d10: p(e._periods[3], 10), d100: p(e._periods[3], 100), d1000: p(e._periods[3], 1e3), hl: _(4), hn: this._minDigits(e, e._periods[4], 1), hnn: this._minDigits(e, e._periods[4], 2), hnnn: this._minDigits(e, e._periods[4], 3), h1: p(e._periods[4], 1), h10: p(e._periods[4], 10), h100: p(e._periods[4], 100), h1000: p(e._periods[4], 1e3), ml: _(5), mn: this._minDigits(e, e._periods[5], 1), mnn: this._minDigits(e, e._periods[5], 2), mnnn: this._minDigits(e, e._periods[5], 3), m1: p(e._periods[5], 1), m10: p(e._periods[5], 10), m100: p(e._periods[5], 100), m1000: p(e._periods[5], 1e3), sl: _(6), sn: this._minDigits(e, e._periods[6], 1), snn: this._minDigits(e, e._periods[6], 2), snnn: this._minDigits(e, e._periods[6], 3), s1: p(e._periods[6], 1), s10: p(e._periods[6], 10), s100: p(e._periods[6], 100), s1000: p(e._periods[6], 1e3) }, u = n, d = 0; d <= 6; d++) { var h = "yowdhms".charAt(d), m = new RegExp("\\{" + h + "<\\}([\\s\\S]*)\\{" + h + ">\\}", "g"); u = u.replace(m, !o && i[d] || o && a[d] ? "$1" : "") } return t.each(c, function(t, e) { var i = new RegExp("\\{" + t + "\\}", "g"); u = u.replace(i, e) }), u }, _minDigits: function(t, e, i) { return (e = "" + e).length >= i ? this._translateDigits(t, e) : (e = "0000000000" + e, this._translateDigits(t, e.substr(e.length - i))) }, _translateDigits: function(t, e) { return ("" + e).replace(/[0-9]/g, function(e) { return t.options.digits[e] }) }, _determineShow: function(t) { var e = t.options.format, i = []; return i[0] = e.match("y") ? "?" : e.match("Y") ? "!" : null, i[1] = e.match("o") ? "?" : e.match("O") ? "!" : null, i[2] = e.match("w") ? "?" : e.match("W") ? "!" : null, i[3] = e.match("d") ? "?" : e.match("D") ? "!" : null, i[4] = e.match("h") ? "?" : e.match("H") ? "!" : null, i[5] = e.match("m") ? "?" : e.match("M") ? "!" : null, i[6] = e.match("s") ? "?" : e.match("S") ? "!" : null, i }, _calculatePeriods: function(t, e, i, n) { t._now = n, t._now.setMilliseconds(0); var s = new Date(t._now.getTime()); t._since ? n.getTime() < t._since.getTime() ? t._now = n = s : n = t._since : (s.setTime(t._until.getTime()), n.getTime() > t._until.getTime() && (t._now = n = s)); var o = [0, 0, 0, 0, 0, 0, 0]; if (e[0] || e[1]) { var a = this._getDaysInMonth(n.getFullYear(), n.getMonth()), r = this._getDaysInMonth(s.getFullYear(), s.getMonth()), l = s.getDate() == n.getDate() || s.getDate() >= Math.min(a, r) && n.getDate() >= Math.min(a, r), _ = function(t) { return 60 * (60 * t.getHours() + t.getMinutes()) + t.getSeconds() }, p = Math.max(0, 12 * (s.getFullYear() - n.getFullYear()) + s.getMonth() - n.getMonth() + (s.getDate() < n.getDate() && !l || l && _(s) < _(n) ? -1 : 0)); o[0] = e[0] ? Math.floor(p / 12) : 0, o[1] = e[1] ? p - 12 * o[0] : 0; var c = (n = new Date(n.getTime())).getDate() == a, u = this._getDaysInMonth(n.getFullYear() + o[0], n.getMonth() + o[1]); n.getDate() > u && n.setDate(u), n.setFullYear(n.getFullYear() + o[0]), n.setMonth(n.getMonth() + o[1]), c && n.setDate(u) } var d = Math.floor((s.getTime() - n.getTime()) / 1e3), h = function(t, i) { o[t] = e[t] ? Math.floor(d / i) : 0, d -= o[t] * i }; if (h(2, 604800), h(3, 86400), h(4, 3600), h(5, 60), h(6, 1), d > 0 && !t._since) for (var m = [1, 12, 4.3482, 7, 24, 60, 60], g = 6, w = 1, f = 6; f >= 0; f--) e[f] && (o[g] >= w && (o[g] = 0, d = 1), d > 0 && (o[f]++, d = 0, g = f, w = 1)), w *= m[f]; if (i) for (f = 0; f <= 6; f++) i && o[f] ? i-- : i || (o[f] = 0); return o } }) }(jQuery); /*! jQuery & Zepto Lazy v1.7.10 - http://jquery.eisbehr.de/lazy - MIT&GPL-2.0 license - Copyright 2012-2018 Daniel 'Eisbehr' Kern */ ! function(t, e) { "use strict"; function r(r, a, i, u, l) { function f() { L = t.devicePixelRatio > 1, i = c(i), a.delay >= 0 && setTimeout(function() { s(!0) }, a.delay), (a.delay < 0 || a.combined) && (u.e = v(a.throttle, function(t) { "resize" === t.type && (w = B = -1), s(t.all) }), u.a = function(t) { t = c(t), i.push.apply(i, t) }, u.g = function() { return i = n(i).filter(function() { return !n(this).data(a.loadedName) }) }, u.f = function(t) { for (var e = 0; e < t.length; e++) { var r = i.filter(function() { return this === t[e] }); r.length && s(!1, r) } }, s(), n(a.appendScroll).on("scroll." + l + " resize." + l, u.e)) } function c(t) { var i = a.defaultImage, o = a.placeholder, u = a.imageBase, l = a.srcsetAttribute, f = a.loaderAttribute, c = a._f || {}; t = n(t).filter(function() { var t = n(this), r = m(this); return !t.data(a.handledName) && (t.attr(a.attribute) || t.attr(l) || t.attr(f) || c[r] !== e) }).data("plugin_" + a.name, r); for (var s = 0, d = t.length; s < d; s++) { var A = n(t[s]), g = m(t[s]), h = A.attr(a.imageBaseAttribute) || u; g === N && h && A.attr(l) && A.attr(l, b(A.attr(l), h)), c[g] === e || A.attr(f) || A.attr(f, c[g]), g === N && i && !A.attr(E) ? A.attr(E, i) : g === N || !o || A.css(O) && "none" !== A.css(O) || A.css(O, "url('" + o + "')") } return t } function s(t, e) { if (!i.length) return void(a.autoDestroy && r.destroy()); for (var o = e || i, u = !1, l = a.imageBase || "", f = a.srcsetAttribute, c = a.handledName, s = 0; s < o.length; s++) if (t || e || A(o[s])) { var g = n(o[s]), h = m(o[s]), b = g.attr(a.attribute), v = g.attr(a.imageBaseAttribute) || l, p = g.attr(a.loaderAttribute); g.data(c) || a.visibleOnly && !g.is(":visible") || !((b || g.attr(f)) && (h === N && (v + b !== g.attr(E) || g.attr(f) !== g.attr(F)) || h !== N && v + b !== g.css(O)) || p) || (u = !0, g.data(c, !0), d(g, h, v, p)) } u && (i = n(i).filter(function() { return !n(this).data(c) })) } function d(t, e, r, i) { ++z; var o = function() { y("onError", t), p(), o = n.noop }; y("beforeLoad", t); var u = a.attribute, l = a.srcsetAttribute, f = a.sizesAttribute, c = a.retinaAttribute, s = a.removeAttribute, d = a.loadedName, A = t.attr(c); if (i) { var g = function() { s && t.removeAttr(a.loaderAttribute), t.data(d, !0), y(T, t), setTimeout(p, 1), g = n.noop }; t.off(I).one(I, o).one(D, g), y(i, t, function(e) { e ? (t.off(D), g()) : (t.off(I), o()) }) || t.trigger(I) } else { var h = n(new Image); h.one(I, o).one(D, function() { t.hide(), e === N ? t.attr(C, h.attr(C)).attr(F, h.attr(F)).attr(E, h.attr(E)) : t.css(O, "url('" + h.attr(E) + "')"), t[a.effect](a.effectTime), s && (t.removeAttr(u + " " + l + " " + c + " " + a.imageBaseAttribute), f !== C && t.removeAttr(f)), t.data(d, !0), y(T, t), h.remove(), p() }); var m = (L && A ? A : t.attr(u)) || ""; h.attr(C, t.attr(f)).attr(F, t.attr(l)).attr(E, m ? r + m : null), h.complete && h.trigger(D) } } function A(t) { var e = t.getBoundingClientRect(), r = a.scrollDirection, n = a.threshold, i = h() + n > e.top && -n < e.bottom, o = g() + n > e.left && -n < e.right; return "vertical" === r ? i : "horizontal" === r ? o : i && o } function g() { return w >= 0 ? w : w = n(t).width() } function h() { return B >= 0 ? B : B = n(t).height() } function m(t) { return t.tagName.toLowerCase() } function b(t, e) { if (e) { var r = t.split(","); t = ""; for (var a = 0, n = r.length; a < n; a++) t += e + r[a].trim() + (a !== n - 1 ? "," : "") } return t } function v(t, e) { var n, i = 0; return function(o, u) { function l() { i = +new Date, e.call(r, o) } var f = +new Date - i; n && clearTimeout(n), f > t || !a.enableThrottle || u ? l() : n = setTimeout(l, t - f) } } function p() { --z, i.length || z || y("onFinishedAll") } function y(t, e, n) { return !!(t = a[t]) && (t.apply(r, [].slice.call(arguments, 1)), !0) } var z = 0, w = -1, B = -1, L = !1, T = "afterLoad", D = "load", I = "error", N = "img", E = "src", F = "srcset", C = "sizes", O = "background-image"; "event" === a.bind || o ? f() : n(t).on(D + "." + l, f) } function a(a, o) { var u = this, l = n.extend({}, u.config, o), f = {}, c = l.name + "-" + ++i; return u.config = function(t, r) { return r === e ? l[t] : (l[t] = r, u) }, u.addItems = function(t) { return f.a && f.a("string" === n.type(t) ? n(t) : t), u }, u.getItems = function() { return f.g ? f.g() : {} }, u.update = function(t) { return f.e && f.e({}, !t), u }, u.force = function(t) { return f.f && f.f("string" === n.type(t) ? n(t) : t), u }, u.loadAll = function() { return f.e && f.e({ all: !0 }, !0), u }, u.destroy = function() { return n(l.appendScroll).off("." + c, f.e), n(t).off("." + c), f = {}, e }, r(u, l, a, f, c), l.chainable ? a : u } var n = t.jQuery || t.Zepto, i = 0, o = !1; n.fn.Lazy = n.fn.lazy = function(t) { return new a(this, t) }, n.Lazy = n.lazy = function(t, r, i) { if (n.isFunction(r) && (i = r, r = []), n.isFunction(i)) { t = n.isArray(t) ? t : [t], r = n.isArray(r) ? r : [r]; for (var o = a.prototype.config, u = o._f || (o._f = {}), l = 0, f = t.length; l < f; l++)(o[t[l]] === e || n.isFunction(o[t[l]])) && (o[t[l]] = i); for (var c = 0, s = r.length; c < s; c++) u[r[c]] = t[0] } }, a.prototype.config = { name: "lazy", chainable: !0, autoDestroy: !0, bind: "load", threshold: 500, visibleOnly: !1, appendScroll: t, scrollDirection: "both", imageBase: null, defaultImage: "data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==", placeholder: null, delay: -1, combined: !1, attribute: "data-src", srcsetAttribute: "data-srcset", sizesAttribute: "data-sizes", retinaAttribute: "data-retina", loaderAttribute: "data-loader", imageBaseAttribute: "data-imagebase", removeAttribute: !0, handledName: "handled", loadedName: "loaded", effect: "show", effectTime: 0, enableThrottle: !0, throttle: 250, beforeLoad: e, afterLoad: e, onError: e, onFinishedAll: e }, n(t).on("load", function() { o = !0 }) }(window); /*! jQuery & Zepto Lazy - All Plugins v1.7.10 - http://jquery.eisbehr.de/lazy - MIT&GPL-2.0 license - Copyright 2012-2018 Daniel 'Eisbehr' Kern */ ! function(t) { function a(a, e, r, o) { o = o ? o.toUpperCase() : "GET"; var i; "POST" !== o && "PUT" !== o || !a.config("ajaxCreateData") || (i = a.config("ajaxCreateData").apply(a, [e])), t.ajax({ url: e.attr("data-src"), type: "POST" === o || "PUT" === o ? o : "GET", data: i, dataType: e.attr("data-type") || "html", success: function(t) { e.html(t), r(!0), a.config("removeAttribute") && e.removeAttr("data-src data-method data-type") }, error: function() { r(!1) } }) } t.lazy("ajax", function(t, e) { a(this, t, e, t.attr("data-method")) }), t.lazy("get", function(t, e) { a(this, t, e, "GET") }), t.lazy("post", function(t, e) { a(this, t, e, "POST") }), t.lazy("put", function(t, e) { a(this, t, e, "PUT") }) }(window.jQuery || window.Zepto), function(t) { t.lazy(["av", "audio", "video"], ["audio", "video"], function(a, e) { var r = a[0].tagName.toLowerCase(); if ("audio" === r || "video" === r) { var o = a.find("data-src"), i = a.find("data-track"), n = 0, c = function() { ++n === o.length && e(!1) }, s = function() { var a = t(this), e = a[0].tagName.toLowerCase(), r = a.prop("attributes"), o = t("data-src" === e ? "<source>" : "<track>"); "data-src" === e && o.one("error", c), t.each(r, function(t, a) { o.attr(a.name, a.value) }), a.replaceWith(o) }; a.one("loadedmetadata", function() { e(!0) }).off("load error").attr("poster", a.attr("data-poster")), o.length ? o.each(s) : a.attr("data-src") ? (t.each(a.attr("data-src").split(","), function(e, r) { var o = r.split("|"); a.append(t("<source>").one("error", c).attr({ src: o[0].trim(), type: o[1].trim() })) }), this.config("removeAttribute") && a.removeAttr("data-src")) : e(!1), i.length && i.each(s) } else e(!1) }) }(window.jQuery || window.Zepto), function(t) { t.lazy(["frame", "iframe"], "iframe", function(a, e) { var r = this; if ("iframe" === a[0].tagName.toLowerCase()) { var o = a.attr("data-error-detect"); "true" !== o && "1" !== o ? (a.attr("src", a.attr("data-src")), r.config("removeAttribute") && a.removeAttr("data-src data-error-detect")) : t.ajax({ url: a.attr("data-src"), dataType: "html", crossDomain: !0, xhrFields: { withCredentials: !0 }, success: function(t) { a.html(t).attr("src", a.attr("data-src")), r.config("removeAttribute") && a.removeAttr("data-src data-error-detect") }, error: function() { e(!1) } }) } else e(!1) }) }(window.jQuery || window.Zepto), function(t) { t.lazy("noop", function() {}), t.lazy("noop-success", function(t, a) { a(!0) }), t.lazy("noop-error", function(t, a) { a(!1) }) }(window.jQuery || window.Zepto), function(t) { function a(a, e, i) { var n = a.prop("attributes"), c = t("<" + e + ">"); return t.each(n, function(t, a) { "srcset" !== a.name && a.name !== o || (a.value = r(a.value, i)), c.attr(a.name, a.value) }), a.replaceWith(c), c } function e(a, e, r) { var o = t("<img>").one("load", function() { r(!0) }).one("error", function() { r(!1) }).appendTo(a).attr("src", e); o.complete && o.load() } function r(t, a) { if (a) { var e = t.split(","); t = ""; for (var r = 0, o = e.length; r < o; r++) t += a + e[r].trim() + (r !== o - 1 ? "," : "") } return t } var o = "data-src"; t.lazy(["pic", "picture"], ["picture"], function(i, n) { if ("picture" === i[0].tagName.toLowerCase()) { var c = i.find(o), s = i.find("data-img"), d = this.config("imageBase") || ""; c.length ? (c.each(function() { a(t(this), "source", d) }), 1 === s.length ? (s = a(s, "img", d), s.on("load", function() { n(!0) }).on("error", function() { n(!1) }), s.attr("src", s.attr(o)), this.config("removeAttribute") && s.removeAttr(o)) : i.attr(o) ? (e(i, d + i.attr(o), n), this.config("removeAttribute") && i.removeAttr(o)) : n(!1)) : i.attr("data-srcset") ? (t("<source>").attr({ media: i.attr("data-media"), sizes: i.attr("data-sizes"), type: i.attr("data-type"), srcset: r(i.attr("data-srcset"), d) }).appendTo(i), e(i, d + i.attr(o), n), this.config("removeAttribute") && i.removeAttr(o + " data-srcset data-media data-sizes data-type")) : n(!1) } else n(!1) }) }(window.jQuery || window.Zepto), function(t) { t.lazy(["js", "javascript", "script"], "script", function(t, a) { "script" === t[0].tagName.toLowerCase() ? (t.attr("src", t.attr("data-src")), this.config("removeAttribute") && t.removeAttr("data-src")) : a(!1) }) }(window.jQuery || window.Zepto), function(t) { t.lazy("vimeo", function(t, a) { "iframe" === t[0].tagName.toLowerCase() ? (t.attr("src", "https://player.vimeo.com/video/" + t.attr("data-src")), this.config("removeAttribute") && t.removeAttr("data-src")) : a(!1) }) }(window.jQuery || window.Zepto), function(t) { t.lazy(["yt", "youtube"], function(t, a) { if ("iframe" === t[0].tagName.toLowerCase()) { var e = /1|true/.test(t.attr("data-nocookie")); t.attr("src", "https://www.youtube" + (e ? "-nocookie" : "") + ".com/embed/" + t.attr("data-src") + "?rel=0&showinfo=0"), this.config("removeAttribute") && t.removeAttr("data-src") } else a(!1) }) }(window.jQuery || window.Zepto); /* jquery.cookie */ ! function(e) { "function" == typeof define && define.amd ? define(["jquery"], e) : "object" == typeof exports ? e(require("jquery")) : e(jQuery) }(function(e) { var n = /\+/g; function o(e) { return t.raw ? e : encodeURIComponent(e) } function i(e) { return o(t.json ? JSON.stringify(e) : String(e)) } function r(o, i) { var r = t.raw ? o : function(e) { 0 === e.indexOf('"') && (e = e.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, "\\")); try { return e = decodeURIComponent(e.replace(n, " ")), t.json ? JSON.parse(e) : e } catch (e) {} }(o); return e.isFunction(i) ? i(r) : r } var t = e.cookie = function(n, c, u) { if (void 0 !== c && !e.isFunction(c)) { if ("number" == typeof(u = e.extend({}, t.defaults, u)).expires) { var a = u.expires, d = u.expires = new Date; d.setTime(+d + 864e5 * a) } return document.cookie = [o(n), "=", i(c), u.expires ? "; expires=" + u.expires.toUTCString() : "", u.path ? "; path=" + u.path : "", u.domain ? "; domain=" + u.domain : "", u.secure ? "; secure" : ""].join("") } for (var f, p = n ? void 0 : {}, s = document.cookie ? document.cookie.split("; ") : [], m = 0, v = s.length; m < v; m++) { var x = s[m].split("="), k = (f = x.shift(), t.raw ? f : decodeURIComponent(f)), l = x.join("="); if (n && n === k) { p = r(l, c); break } n || void 0 === (l = r(l)) || (p[k] = l) } return p }; t.defaults = {}, e.removeCookie = function(n, o) { return void 0 !== e.cookie(n) && (e.cookie(n, "", e.extend({}, o, { expires: -1 })), !e.cookie(n)) } }); /* SmoothScroll */ ! function() { var s, i, c, a, o = { frameRate: 150, animationTime: 400, stepSize: 100, pulseAlgorithm: true, pulseScale: 4, pulseNormalize: 1, accelerationDelta: 50, accelerationMax: 3, keyboardSupport: true, arrowScroll: 50, fixedBackground: true, excluded: "" }, p = o, u = !1, d = !1, n = { x: 0, y: 0 }, f = !1, m = document.documentElement, l = [], h = /^Mac/.test(navigator.platform), w = { left: 37, up: 38, right: 39, down: 40, spacebar: 32, pageup: 33, pagedown: 34, end: 35, home: 36 }, v = { 37: 1, 38: 1, 39: 1, 40: 1 }; function y() { if (!f && document.body) { f = !0; var e = document.body, t = document.documentElement, o = window.innerHeight, n = e.scrollHeight; if (m = 0 <= document.compatMode.indexOf("CSS") ? t : e, s = e, p.keyboardSupport && Y("keydown", x), top != self) d = !0; else if (Q && o < n && (e.offsetHeight <= o || t.offsetHeight <= o)) { var r, a = document.createElement("div"); a.style.cssText = "position:absolute; z-index:-10000; top:0; left:0; right:0; height:" + m.scrollHeight + "px", document.body.appendChild(a), c = function() { r = r || setTimeout(function() { u || (a.style.height = "0", a.style.height = m.scrollHeight + "px", r = null) }, 500) }, setTimeout(c, 10), Y("resize", c); if ((i = new R(c)).observe(e, { attributes: !0, childList: !0, characterData: !1 }), m.offsetHeight <= o) { var l = document.createElement("div"); l.style.clear = "both", e.appendChild(l) } } p.fixedBackground || u || (e.style.backgroundAttachment = "scroll", t.style.backgroundAttachment = "scroll") } } var b = [], g = !1, r = Date.now(); function S(d, f, m) { if (function(e, t) { e = 0 < e ? 1 : -1, t = 0 < t ? 1 : -1, n.x === e && n.y === t || (n.x = e, n.y = t, b = [], r = 0) }(f, m), 1 != p.accelerationMax) { var e = Date.now() - r; if (e < p.accelerationDelta) { var t = (1 + 50 / e) / 2; 1 < t && (t = Math.min(t, p.accelerationMax), f *= t, m *= t) } r = Date.now() } if (b.push({ x: f, y: m, lastX: f < 0 ? .99 : -.99, lastY: m < 0 ? .99 : -.99, start: Date.now() }), !g) { var o = q(), h = d === o || d === document.body; null == d.$scrollBehavior && function(e) { var t = M(e); if (null == B[t]) { var o = getComputedStyle(e, "")["scroll-behavior"]; B[t] = "smooth" == o } return B[t] }(d) && (d.$scrollBehavior = d.style.scrollBehavior, d.style.scrollBehavior = "auto"); var w = function(e) { for (var t = Date.now(), o = 0, n = 0, r = 0; r < b.length; r++) { var a = b[r], l = t - a.start, i = l >= p.animationTime, c = i ? 1 : l / p.animationTime; p.pulseAlgorithm && (c = F(c)); var s = a.x * c - a.lastX >> 0, u = a.y * c - a.lastY >> 0; o += s, n += u, a.lastX += s, a.lastY += u, i && (b.splice(r, 1), r--) } h ? window.scrollBy(o, n) : (o && (d.scrollLeft += o), n && (d.scrollTop += n)), f || m || (b = []), b.length ? j(w, d, 1e3 / p.frameRate + 1) : (g = !1, null != d.$scrollBehavior && (d.style.scrollBehavior = d.$scrollBehavior, d.$scrollBehavior = null)) }; j(w, d, 0), g = !0 } } function e(e) { f || y(); var t = e.target; if (e.defaultPrevented || e.ctrlKey) return !0; if (N(s, "embed") || N(t, "embed") && /\.pdf/i.test(t.src) || N(s, "object") || t.shadowRoot) return !0; var o = -e.wheelDeltaX || e.deltaX || 0, n = -e.wheelDeltaY || e.deltaY || 0; h && (e.wheelDeltaX && K(e.wheelDeltaX, 120) && (o = e.wheelDeltaX / Math.abs(e.wheelDeltaX) * -120), e.wheelDeltaY && K(e.wheelDeltaY, 120) && (n = e.wheelDeltaY / Math.abs(e.wheelDeltaY) * -120)), o || n || (n = -e.wheelDelta || 0), 1 === e.deltaMode && (o *= 40, n *= 40); var r = z(t); return r ? !! function(e) { if (!e) return; l.length || (l = [e, e, e]); e = Math.abs(e), l.push(e), l.shift(), clearTimeout(a), a = setTimeout(function() { try { localStorage.SS_deltaBuffer = l.join(",") } catch (e) {} }, 1e3); var t = 120 < e && P(e), o = !P(120) && !P(100) && !t; return e < 50 || o }(n) || (1.2 < Math.abs(o) && (o *= p.stepSize / 120), 1.2 < Math.abs(n) && (n *= p.stepSize / 120), S(r, o, n), e.preventDefault(), void C()) : !d || !W || (Object.defineProperty(e, "target", { value: window.frameElement }), parent.wheel(e)) } function x(e) { var t = e.target, o = e.ctrlKey || e.altKey || e.metaKey || e.shiftKey && e.keyCode !== w.spacebar; document.body.contains(s) || (s = document.activeElement); var n = /^(button|submit|radio|checkbox|file|color|image)$/i; if (e.defaultPrevented || /^(textarea|select|embed|object)$/i.test(t.nodeName) || N(t, "input") && !n.test(t.type) || N(s, "video") || function(e) { var t = e.target, o = !1; if (-1 != document.URL.indexOf("www.youtube.com/watch")) do { if (o = t.classList && t.classList.contains("html5-video-controls")) break } while (t = t.parentNode); return o }(e) || t.isContentEditable || o) return !0; if ((N(t, "button") || N(t, "input") && n.test(t.type)) && e.keyCode === w.spacebar) return !0; if (N(t, "input") && "radio" == t.type && v[e.keyCode]) return !0; var r = 0, a = 0, l = z(s); if (!l) return !d || !W || parent.keydown(e); var i = l.clientHeight; switch (l == document.body && (i = window.innerHeight), e.keyCode) { case w.up: a = -p.arrowScroll; break; case w.down: a = p.arrowScroll; break; case w.spacebar: a = -(e.shiftKey ? 1 : -1) * i * .9; break; case w.pageup: a = .9 * -i; break; case w.pagedown: a = .9 * i; break; case w.home: l == document.body && document.scrollingElement && (l = document.scrollingElement), a = -l.scrollTop; break; case w.end: var c = l.scrollHeight - l.scrollTop - i; a = 0 < c ? 10 + c : 0; break; case w.left: r = -p.arrowScroll; break; case w.right: r = p.arrowScroll; break; default: return !0 } S(l, r, a), e.preventDefault(), C() } function t(e) { s = e.target } var k, D, M = (k = 0, function(e) { return e.uniqueID || (e.uniqueID = k++) }), E = {}, T = {}, B = {}; function C() { clearTimeout(D), D = setInterval(function() { E = T = B = {} }, 1e3) } function H(e, t, o) { for (var n = o ? E : T, r = e.length; r--;) n[M(e[r])] = t; return t } function z(e) { var t = [], o = document.body, n = m.scrollHeight; do { var r = (!1 ? E : T)[M(e)]; if (r) return H(t, r); if (t.push(e), n === e.scrollHeight) { var a = O(m) && O(o) || X(m); if (d && L(m) || !d && a) return H(t, q()) } else if (L(e) && X(e)) return H(t, e) } while (e = e.parentElement) } function L(e) { return e.clientHeight + 10 < e.scrollHeight } function O(e) { return "hidden" !== getComputedStyle(e, "").getPropertyValue("overflow-y") } function X(e) { var t = getComputedStyle(e, "").getPropertyValue("overflow-y"); return "scroll" === t || "auto" === t } function Y(e, t, o) { window.addEventListener(e, t, o || !1) } function A(e, t, o) { window.removeEventListener(e, t, o || !1) } function N(e, t) { return e && (e.nodeName || "").toLowerCase() === t.toLowerCase() } if (window.localStorage && localStorage.SS_deltaBuffer) try { l = localStorage.SS_deltaBuffer.split(",") } catch (e) {} function K(e, t) { return Math.floor(e / t) == e / t } function P(e) { return K(l[0], e) && K(l[1], e) && K(l[2], e) } var $, j = window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || function(e, t, o) { window.setTimeout(e, o || 1e3 / 60) }, R = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver, q = ($ = document.scrollingElement, function() { if (!$) { var e = document.createElement("div"); e.style.cssText = "height:10000px;width:1px;", document.body.appendChild(e); var t = document.body.scrollTop; document.documentElement.scrollTop, window.scrollBy(0, 3), $ = document.body.scrollTop != t ? document.body : document.documentElement, window.scrollBy(0, -3), document.body.removeChild(e) } return $ }); function V(e) { var t; return ((e *= p.pulseScale) < 1 ? e - (1 - Math.exp(-e)) : (e -= 1, (t = Math.exp(-1)) + (1 - Math.exp(-e)) * (1 - t))) * p.pulseNormalize } function F(e) { return 1 <= e ? 1 : e <= 0 ? 0 : (1 == p.pulseNormalize && (p.pulseNormalize /= V(1)), V(e)) } var I = window.navigator.userAgent, _ = /Edge/.test(I), W = /chrome/i.test(I) && !_, U = /safari/i.test(I) && !_, G = /mobile/i.test(I), J = /Windows NT 6.1/i.test(I) && /rv:11/i.test(I), Q = U && (/Version\/8/i.test(I) || /Version\/9/i.test(I)), Z = (W || U || J) && !G, ee = !1; try { window.addEventListener("test", null, Object.defineProperty({}, "passive", { get: function() { ee = !0 } })) } catch (e) {} var te = !!ee && { passive: !1 }, oe = "onwheel" in document.createElement("div") ? "wheel" : "mousewheel"; function ne(e) { for (var t in e) o.hasOwnProperty(t) && (p[t] = e[t]) } oe && Z && (Y(oe, e, te), Y("mousedown", t), Y("load", y)), ne.destroy = function() { i && i.disconnect(), A(oe, e), A("mousedown", t), A("keydown", x), A("resize", c), A("load", y) }, window.SmoothScrollOptions && ne(window.SmoothScrollOptions), "function" == typeof define && define.amd ? define(function() { return ne }) : "object" == typeof exports ? module.exports = ne : window.SmoothScroll = ne }(); /** * jquery-circle-progress - jQuery Plugin to draw animated circular progress bars: * {@link http://kottenator.github.io/jquery-circle-progress/} * * @author Rostyslav Bryzgunov <kottenator@gmail.com> * @version 1.2.2 * @licence MIT * @preserve */ ! function(i) { if ("function" == typeof define && define.amd) define(["jquery"], i); else if ("object" == typeof module && module.exports) { var t = require("jquery"); i(t), module.exports = t } else i(jQuery) }(function(i) { function t(i) { this.init(i) } t.prototype = { value: 0, size: 100, startAngle: -Math.PI, thickness: "auto", fill: { gradient: ["#3aeabb", "#fdd250"] }, emptyFill: "rgba(0, 0, 0, .1)", animation: { duration: 1200, easing: "circleProgressEasing" }, animationStartValue: 0, reverse: !1, lineCap: "butt", insertMode: "prepend", constructor: t, el: null, canvas: null, ctx: null, radius: 0, arcFill: null, lastFrameValue: 0, init: function(t) { i.extend(this, t), this.radius = this.size / 2, this.initWidget(), this.initFill(), this.draw(), this.el.trigger("circle-inited") }, initWidget: function() { this.canvas || (this.canvas = i("<canvas>")["prepend" == this.insertMode ? "prependTo" : "appendTo"](this.el)[0]); var t = this.canvas; if (t.width = this.size, t.height = this.size, this.ctx = t.getContext("2d"), window.devicePixelRatio > 1) { var e = window.devicePixelRatio; t.style.width = t.style.height = this.size + "px", t.width = t.height = this.size * e, this.ctx.scale(e, e) } }, initFill: function() { function t() { var t = i("<canvas>")[0]; t.width = e.size, t.height = e.size, t.getContext("2d").drawImage(g, 0, 0, r, r), e.arcFill = e.ctx.createPattern(t, "no-repeat"), e.drawFrame(e.lastFrameValue) } var e = this, a = this.fill, n = this.ctx, r = this.size; if (!a) throw Error("The fill is not specified!"); if ("string" == typeof a && (a = { color: a }), a.color && (this.arcFill = a.color), a.gradient) { var s = a.gradient; if (1 == s.length) this.arcFill = s[0]; else if (s.length > 1) { for (var l = a.gradientAngle || 0, o = a.gradientDirection || [r / 2 * (1 - Math.cos(l)), r / 2 * (1 + Math.sin(l)), r / 2 * (1 + Math.cos(l)), r / 2 * (1 - Math.sin(l))], h = n.createLinearGradient.apply(n, o), c = 0; c < s.length; c++) { var d = s[c], u = c / (s.length - 1); i.isArray(d) && (u = d[1], d = d[0]), h.addColorStop(u, d) } this.arcFill = h } } if (a.image) { var g; a.image instanceof Image ? g = a.image : (g = new Image, g.src = a.image), g.complete ? t() : g.onload = t } }, draw: function() { this.animation ? this.drawAnimated(this.value) : this.drawFrame(this.value) }, drawFrame: function(i) { this.lastFrameValue = i, this.ctx.clearRect(0, 0, this.size, this.size), this.drawEmptyArc(i), this.drawArc(i) }, drawArc: function(i) { if (0 !== i) { var t = this.ctx, e = this.radius, a = this.getThickness(), n = this.startAngle; t.save(), t.beginPath(), this.reverse ? t.arc(e, e, e - a / 2, n - 2 * Math.PI * i, n) : t.arc(e, e, e - a / 2, n, n + 2 * Math.PI * i), t.lineWidth = a, t.lineCap = this.lineCap, t.strokeStyle = this.arcFill, t.stroke(), t.restore() } }, drawEmptyArc: function(i) { var t = this.ctx, e = this.radius, a = this.getThickness(), n = this.startAngle; i < 1 && (t.save(), t.beginPath(), i <= 0 ? t.arc(e, e, e - a / 2, 0, 2 * Math.PI) : this.reverse ? t.arc(e, e, e - a / 2, n, n - 2 * Math.PI * i) : t.arc(e, e, e - a / 2, n + 2 * Math.PI * i, n), t.lineWidth = a, t.strokeStyle = this.emptyFill, t.stroke(), t.restore()) }, drawAnimated: function(t) { var e = this, a = this.el, n = i(this.canvas); n.stop(!0, !1), a.trigger("circle-animation-start"), n.css({ animationProgress: 0 }).animate({ animationProgress: 1 }, i.extend({}, this.animation, { step: function(i) { var n = e.animationStartValue * (1 - i) + t * i; e.drawFrame(n), a.trigger("circle-animation-progress", [i, n]) } })).promise().always(function() { a.trigger("circle-animation-end") }) }, getThickness: function() { return i.isNumeric(this.thickness) ? this.thickness : this.size / 14 }, getValue: function() { return this.value }, setValue: function(i) { this.animation && (this.animationStartValue = this.lastFrameValue), this.value = i, this.draw() } }, i.circleProgress = { defaults: t.prototype }, i.easing.circleProgressEasing = function(i) { return i < .5 ? (i = 2 * i, .5 * i * i * i) : (i = 2 - 2 * i, 1 - .5 * i * i * i) }, i.fn.circleProgress = function(e, a) { var n = "circle-progress", r = this.data(n); if ("widget" == e) { if (!r) throw Error('Calling "widget" method on not initialized instance is forbidden'); return r.canvas } if ("value" == e) { if (!r) throw Error('Calling "value" method on not initialized instance is forbidden'); if ("undefined" == typeof a) return r.getValue(); var s = arguments[1]; return this.each(function() { i(this).data(n).setValue(s) }) } return this.each(function() { var a = i(this), r = a.data(n), s = i.isPlainObject(e) ? e : {}; if (r) r.init(s); else { var l = i.extend({}, a.data()); "string" == typeof l.fill && (l.fill = JSON.parse(l.fill)), "string" == typeof l.animation && (l.animation = JSON.parse(l.animation)), s = i.extend(l, s), s.el = a, r = new t(s), a.data(n, r) } }) } }); ! function(e, t) { "object" == typeof exports && "undefined" != typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define(t) : (e = "undefined" != typeof globalThis ? globalThis : e || self).jarallax = t() }(this, (function() { "use strict"; function e(e) { "complete" === document.readyState || "interactive" === document.readyState ? e() : document.addEventListener("DOMContentLoaded", e, { capture: !0, once: !0, passive: !0 }) } let t; t = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {}; var i = t; const { navigator: o } = i, n = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(o.userAgent); let a, s; function l() { n ? (!a && document.body && (a = document.createElement("div"), a.style.cssText = "position: fixed; top: -9999px; left: 0; height: 100vh; width: 0;", document.body.appendChild(a)), s = (a ? a.clientHeight : 0) || i.innerHeight || document.documentElement.clientHeight) : s = i.innerHeight || document.documentElement.clientHeight } l(), i.addEventListener("resize", l), i.addEventListener("orientationchange", l), i.addEventListener("load", l), e((() => { l() })); const r = []; function m() { r.length && (r.forEach(((e, t) => { const { instance: o, oldData: n } = e, a = o.$item.getBoundingClientRect(), l = { width: a.width, height: a.height, top: a.top, bottom: a.bottom, wndW: i.innerWidth, wndH: s }, m = !n || n.wndW !== l.wndW || n.wndH !== l.wndH || n.width !== l.width || n.height !== l.height, c = m || !n || n.top !== l.top || n.bottom !== l.bottom; r[t].oldData = l, m && o.onResize(), c && o.onScroll() })), i.requestAnimationFrame(m)) } let c = 0; class p { constructor(e, t) { const i = this; i.instanceID = c, c += 1, i.$item = e, i.defaults = { type: "scroll", speed: .5, imgSrc: null, imgElement: ".jarallax-img", imgSize: "cover", imgPosition: "50% 50%", imgRepeat: "no-repeat", keepImg: !1, elementInViewport: null, zIndex: -100, disableParallax: !1, disableVideo: !1, videoSrc: null, videoStartTime: 0, videoEndTime: 0, videoVolume: 0, videoLoop: !0, videoPlayOnlyVisible: !0, videoLazyLoading: !0, onScroll: null, onInit: null, onDestroy: null, onCoverImage: null }; const n = i.$item.dataset || {}, a = {}; if (Object.keys(n).forEach((e => { const t = e.substr(0, 1).toLowerCase() + e.substr(1); t && void 0 !== i.defaults[t] && (a[t] = n[e]) })), i.options = i.extend({}, i.defaults, a, t), i.pureOptions = i.extend({}, i.options), Object.keys(i.options).forEach((e => { "true" === i.options[e] ? i.options[e] = !0 : "false" === i.options[e] && (i.options[e] = !1) })), i.options.speed = Math.min(2, Math.max(-1, parseFloat(i.options.speed))), "string" == typeof i.options.disableParallax && (i.options.disableParallax = new RegExp(i.options.disableParallax)), i.options.disableParallax instanceof RegExp) { const e = i.options.disableParallax; i.options.disableParallax = () => e.test(o.userAgent) } if ("function" != typeof i.options.disableParallax && (i.options.disableParallax = () => !1), "string" == typeof i.options.disableVideo && (i.options.disableVideo = new RegExp(i.options.disableVideo)), i.options.disableVideo instanceof RegExp) { const e = i.options.disableVideo; i.options.disableVideo = () => e.test(o.userAgent) } "function" != typeof i.options.disableVideo && (i.options.disableVideo = () => !1); let s = i.options.elementInViewport; s && "object" == typeof s && void 0 !== s.length && ([s] = s), s instanceof Element || (s = null), i.options.elementInViewport = s, i.image = { src: i.options.imgSrc || null, $container: null, useImgTag: !1, position: "fixed" }, i.initImg() && i.canInitParallax() && i.init() } css(e, t) { return "string" == typeof t ? i.getComputedStyle(e).getPropertyValue(t) : (Object.keys(t).forEach((i => { e.style[i] = t[i] })), e) } extend(e, ...t) { return e = e || {}, Object.keys(t).forEach((i => { t[i] && Object.keys(t[i]).forEach((o => { e[o] = t[i][o] })) })), e } getWindowData() { return { width: i.innerWidth || document.documentElement.clientWidth, height: s, y: document.documentElement.scrollTop } } initImg() { const e = this; let t = e.options.imgElement; return t && "string" == typeof t && (t = e.$item.querySelector(t)), t instanceof Element || (e.options.imgSrc ? (t = new Image, t.src = e.options.imgSrc) : t = null), t && (e.options.keepImg ? e.image.$item = t.cloneNode(!0) : (e.image.$item = t, e.image.$itemParent = t.parentNode), e.image.useImgTag = !0), !!e.image.$item || (null === e.image.src && (e.image.src = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7", e.image.bgImage = e.css(e.$item, "background-image")), !(!e.image.bgImage || "none" === e.image.bgImage)) } canInitParallax() { return !this.options.disableParallax() } init() { const e = this, t = { position: "absolute", top: 0, left: 0, width: "100%", height: "100%", overflow: "hidden" }; let o = { pointerEvents: "none", transformStyle: "preserve-3d", backfaceVisibility: "hidden", willChange: "transform,opacity" }; if (!e.options.keepImg) { const t = e.$item.getAttribute("style"); if (t && e.$item.setAttribute("data-jarallax-original-styles", t), e.image.useImgTag) { const t = e.image.$item.getAttribute("style"); t && e.image.$item.setAttribute("data-jarallax-original-styles", t) } } if ("static" === e.css(e.$item, "position") && e.css(e.$item, { position: "relative" }), "auto" === e.css(e.$item, "z-index") && e.css(e.$item, { zIndex: 0 }), e.image.$container = document.createElement("div"), e.css(e.image.$container, t), e.css(e.image.$container, { "z-index": e.options.zIndex }), "fixed" === this.image.position && e.css(e.image.$container, { "-webkit-clip-path": "polygon(0 0, 100% 0, 100% 100%, 0 100%)", "clip-path": "polygon(0 0, 100% 0, 100% 100%, 0 100%)" }), e.image.$container.setAttribute("id", `jarallax-container-${e.instanceID}`), e.$item.appendChild(e.image.$container), e.image.useImgTag ? o = e.extend({ "object-fit": e.options.imgSize, "object-position": e.options.imgPosition, "max-width": "none" }, t, o) : (e.image.$item = document.createElement("div"), e.image.src && (o = e.extend({ "background-position": e.options.imgPosition, "background-size": e.options.imgSize, "background-repeat": e.options.imgRepeat, "background-image": e.image.bgImage || `url("${e.image.src}")` }, t, o))), "opacity" !== e.options.type && "scale" !== e.options.type && "scale-opacity" !== e.options.type && 1 !== e.options.speed || (e.image.position = "absolute"), "fixed" === e.image.position) { const t = function(e) { const t = []; for (; null !== e.parentElement;) 1 === (e = e.parentElement).nodeType && t.push(e); return t }(e.$item).filter((e => { const t = i.getComputedStyle(e), o = t["-webkit-transform"] || t["-moz-transform"] || t.transform; return o && "none" !== o || /(auto|scroll)/.test(t.overflow + t["overflow-y"] + t["overflow-x"]) })); e.image.position = t.length ? "absolute" : "fixed" } o.position = e.image.position, e.css(e.image.$item, o), e.image.$container.appendChild(e.image.$item), e.onResize(), e.onScroll(!0), e.options.onInit && e.options.onInit.call(e), "none" !== e.css(e.$item, "background-image") && e.css(e.$item, { "background-image": "none" }), e.addToParallaxList() } addToParallaxList() { r.push({ instance: this }), 1 === r.length && i.requestAnimationFrame(m) } removeFromParallaxList() { const e = this; r.forEach(((t, i) => { t.instance.instanceID === e.instanceID && r.splice(i, 1) })) } destroy() { const e = this; e.removeFromParallaxList(); const t = e.$item.getAttribute("data-jarallax-original-styles"); if (e.$item.removeAttribute("data-jarallax-original-styles"), t ? e.$item.setAttribute("style", t) : e.$item.removeAttribute("style"), e.image.useImgTag) { const i = e.image.$item.getAttribute("data-jarallax-original-styles"); e.image.$item.removeAttribute("data-jarallax-original-styles"), i ? e.image.$item.setAttribute("style", t) : e.image.$item.removeAttribute("style"), e.image.$itemParent && e.image.$itemParent.appendChild(e.image.$item) } e.image.$container && e.image.$container.parentNode.removeChild(e.image.$container), e.options.onDestroy && e.options.onDestroy.call(e), delete e.$item.jarallax } clipContainer() {} coverImage() { const e = this, t = e.image.$container.getBoundingClientRect(), i = t.height, { speed: o } = e.options, n = "scroll" === e.options.type || "scroll-opacity" === e.options.type; let a = 0, l = i, r = 0; return n && (0 > o ? (a = o * Math.max(i, s), s < i && (a -= o * (i - s))) : a = o * (i + s), 1 < o ? l = Math.abs(a - s) : 0 > o ? l = a / o + Math.abs(a) : l += (s - i) * (1 - o), a /= 2), e.parallaxScrollDistance = a, r = n ? (s - l) / 2 : (i - l) / 2, e.css(e.image.$item, { height: `${l}px`, marginTop: `${r}px`, left: "fixed" === e.image.position ? `${t.left}px` : "0", width: `${t.width}px` }), e.options.onCoverImage && e.options.onCoverImage.call(e), { image: { height: l, marginTop: r }, container: t } } isVisible() { return this.isElementInViewport || !1 } onScroll(e) { const t = this, o = t.$item.getBoundingClientRect(), n = o.top, a = o.height, l = {}; let r = o; if (t.options.elementInViewport && (r = t.options.elementInViewport.getBoundingClientRect()), t.isElementInViewport = 0 <= r.bottom && 0 <= r.right && r.top <= s && r.left <= i.innerWidth, !e && !t.isElementInViewport) return; const m = Math.max(0, n), c = Math.max(0, a + n), p = Math.max(0, -n), d = Math.max(0, n + a - s), g = Math.max(0, a - (n + a - s)), u = Math.max(0, -n + s - a), f = 1 - (s - n) / (s + a) * 2; let h = 1; if (a < s ? h = 1 - (p || d) / a : c <= s ? h = c / s : g <= s && (h = g / s), "opacity" !== t.options.type && "scale-opacity" !== t.options.type && "scroll-opacity" !== t.options.type || (l.transform = "translate3d(0,0,0)", l.opacity = h), "scale" === t.options.type || "scale-opacity" === t.options.type) { let e = 1; 0 > t.options.speed ? e -= t.options.speed * h : e += t.options.speed * (1 - h), l.transform = `scale(${e}) translate3d(0,0,0)` } if ("scroll" === t.options.type || "scroll-opacity" === t.options.type) { let e = t.parallaxScrollDistance * f; "absolute" === t.image.position && (e -= n), l.transform = `translate3d(0,${e}px,0)` } t.css(t.image.$item, l), t.options.onScroll && t.options.onScroll.call(t, { section: o, beforeTop: m, beforeTopEnd: c, afterTop: p, beforeBottom: d, beforeBottomEnd: g, afterBottom: u, visiblePercent: h, fromViewportCenter: f }) } onResize() { this.coverImage() } } const d = function(e, t, ...i) { ("object" == typeof HTMLElement ? e instanceof HTMLElement : e && "object" == typeof e && null !== e && 1 === e.nodeType && "string" == typeof e.nodeName) && (e = [e]); const o = e.length; let n, a = 0; for (; a < o; a += 1) if ("object" == typeof t || void 0 === t ? e[a].jarallax || (e[a].jarallax = new p(e[a], t)) : e[a].jarallax && (n = e[a].jarallax[t].apply(e[a].jarallax, i)), void 0 !== n) return n; return e }; d.constructor = p; const g = i.jQuery; if (void 0 !== g) { const e = function(...e) { Array.prototype.unshift.call(e, this); const t = d.apply(i, e); return "object" != typeof t ? t : this }; e.constructor = d.constructor; const t = g.fn.jarallax; g.fn.jarallax = e, g.fn.jarallax.noConflict = function() { return g.fn.jarallax = t, this } } return e((() => { d(document.querySelectorAll("[data-jarallax]")) })), d })); /*! * Video Extension for Jarallax v2.0.2 (https://github.com/nk-o/jarallax) * Copyright 2022 nK <https://nkdev.info> * Licensed under MIT (https://github.com/nk-o/jarallax/blob/master/LICENSE) */ ! function(e, t) { "object" == typeof exports && "undefined" != typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define(t) : (e = "undefined" != typeof globalThis ? globalThis : e || self).jarallaxVideo = t() }(this, (function() { "use strict"; /*! * Name : Video Worker * Version : 2.0.0 * Author : nK <https://nkdev.info> * GitHub : https://github.com/nk-o/video-worker */ let e; e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {}; var t = e; function o() { this.doneCallbacks = [], this.failCallbacks = [] } o.prototype = { execute(e, t) { let o = e.length; for (t = Array.prototype.slice.call(t); o;) o -= 1, e[o].apply(null, t) }, resolve(...e) { this.execute(this.doneCallbacks, e) }, reject(...e) { this.execute(this.failCallbacks, e) }, done(e) { this.doneCallbacks.push(e) }, fail(e) { this.failCallbacks.push(e) } }; let i = 0, a = 0, n = 0, s = 0, l = 0; const r = new o, p = new o; class d { constructor(e, t) { const o = this; o.url = e, o.options_default = { autoplay: !1, loop: !1, mute: !1, volume: 100, showControls: !0, accessibilityHidden: !1, startTime: 0, endTime: 0 }, o.options = o.extend({}, o.options_default, t), void 0 !== o.options.showContols && (o.options.showControls = o.options.showContols, delete o.options.showContols), o.videoID = o.parseURL(e), o.videoID && (o.ID = i, i += 1, o.loadAPI(), o.init()) } extend(...e) { const t = e[0] || {}; return Object.keys(e).forEach((o => { e[o] && Object.keys(e[o]).forEach((i => { t[i] = e[o][i] })) })), t } parseURL(e) { const t = function(e) { const t = e.match(/.*(?:youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=)([^#\&\?]*).*/); return !(!t || 11 !== t[1].length) && t[1] }(e), o = function(e) { const t = e.match(/https?:\/\/(?:www\.|player\.)?vimeo.com\/(?:channels\/(?:\w+\/)?|groups\/([^/]*)\/videos\/|album\/(\d+)\/video\/|video\/|)(\d+)(?:$|\/|\?)/); return !(!t || !t[3]) && t[3] }(e), i = function(e) { const t = e.split(/,(?=mp4\:|webm\:|ogv\:|ogg\:)/), o = {}; let i = 0; return t.forEach((e => { const t = e.match(/^(mp4|webm|ogv|ogg)\:(.*)/); t && t[1] && t[2] && (o["ogv" === t[1] ? "ogg" : t[1]] = t[2], i = 1) })), !!i && o }(e); return t ? (this.type = "youtube", t) : o ? (this.type = "vimeo", o) : !!i && (this.type = "local", i) } isValid() { return !!this.videoID } on(e, t) { this.userEventsList = this.userEventsList || [], (this.userEventsList[e] || (this.userEventsList[e] = [])).push(t) } off(e, t) { this.userEventsList && this.userEventsList[e] && (t ? this.userEventsList[e].forEach(((o, i) => { o === t && (this.userEventsList[e][i] = !1) })) : delete this.userEventsList[e]) } fire(e, ...t) { this.userEventsList && void 0 !== this.userEventsList[e] && this.userEventsList[e].forEach((e => { e && e.apply(this, t) })) } play(e) { const o = this; o.player && ("youtube" === o.type && o.player.playVideo && (void 0 !== e && o.player.seekTo(e || 0), t.YT.PlayerState.PLAYING !== o.player.getPlayerState() && o.player.playVideo()), "vimeo" === o.type && (void 0 !== e && o.player.setCurrentTime(e), o.player.getPaused().then((e => { e && o.player.play() }))), "local" === o.type && (void 0 !== e && (o.player.currentTime = e), o.player.paused && o.player.play())) } pause() { const e = this; e.player && ("youtube" === e.type && e.player.pauseVideo && t.YT.PlayerState.PLAYING === e.player.getPlayerState() && e.player.pauseVideo(), "vimeo" === e.type && e.player.getPaused().then((t => { t || e.player.pause() })), "local" === e.type && (e.player.paused || e.player.pause())) } mute() { const e = this; e.player && ("youtube" === e.type && e.player.mute && e.player.mute(), "vimeo" === e.type && e.player.setVolume && e.player.setVolume(0), "local" === e.type && (e.$video.muted = !0)) } unmute() { const e = this; e.player && ("youtube" === e.type && e.player.mute && e.player.unMute(), "vimeo" === e.type && e.player.setVolume && e.player.setVolume(e.options.volume), "local" === e.type && (e.$video.muted = !1)) } setVolume(e = !1) { const t = this; t.player && e && ("youtube" === t.type && t.player.setVolume && t.player.setVolume(e), "vimeo" === t.type && t.player.setVolume && t.player.setVolume(e), "local" === t.type && (t.$video.volume = e / 100)) } getVolume(e) { const t = this; t.player ? ("youtube" === t.type && t.player.getVolume && e(t.player.getVolume()), "vimeo" === t.type && t.player.getVolume && t.player.getVolume().then((t => { e(t) })), "local" === t.type && e(100 * t.$video.volume)) : e(!1) } getMuted(e) { const t = this; t.player ? ("youtube" === t.type && t.player.isMuted && e(t.player.isMuted()), "vimeo" === t.type && t.player.getVolume && t.player.getVolume().then((t => { e(!!t) })), "local" === t.type && e(t.$video.muted)) : e(null) } getImageURL(e) { const t = this; if (t.videoImage) e(t.videoImage); else { if ("youtube" === t.type) { const o = ["maxresdefault", "sddefault", "hqdefault", "0"]; let i = 0; const a = new Image; a.onload = function() { 120 !== (this.naturalWidth || this.width) || i === o.length - 1 ? (t.videoImage = `https://img.youtube.com/vi/${t.videoID}/${o[i]}.jpg`, e(t.videoImage)) : (i += 1, this.src = `https://img.youtube.com/vi/${t.videoID}/${o[i]}.jpg`) }, a.src = `https://img.youtube.com/vi/${t.videoID}/${o[i]}.jpg` } if ("vimeo" === t.type) { let o = new XMLHttpRequest; o.open("GET", `https://vimeo.com/api/oembed.json?url=${t.url}`, !0), o.onreadystatechange = function() { if (4 === this.readyState && this.status >= 200 && this.status < 400) { const o = JSON.parse(this.responseText); o.thumbnail_url && (t.videoImage = o.thumbnail_url, e(t.videoImage)) } }, o.send(), o = null } } } getIframe(e) { this.getVideo(e) } getVideo(e) { const o = this; o.$video ? e(o.$video) : o.onAPIready((() => { let i; if (o.$video || (i = document.createElement("div"), i.style.display = "none"), "youtube" === o.type) { let e, a; o.playerOptions = { host: "https://www.youtube-nocookie.com", videoId: o.videoID, playerVars: { autohide: 1, rel: 0, autoplay: 0, playsinline: 1 } }, o.options.showControls || (o.playerOptions.playerVars.iv_load_policy = 3, o.playerOptions.playerVars.modestbranding = 1, o.playerOptions.playerVars.controls = 0, o.playerOptions.playerVars.showinfo = 0, o.playerOptions.playerVars.disablekb = 1), o.playerOptions.events = { onReady(e) { if (o.options.mute ? e.target.mute() : o.options.volume && e.target.setVolume(o.options.volume), o.options.autoplay && o.play(o.options.startTime), o.fire("ready", e), o.options.loop && !o.options.endTime) { const e = .1; o.options.endTime = o.player.getDuration() - e } setInterval((() => { o.getVolume((t => { o.options.volume !== t && (o.options.volume = t, o.fire("volumechange", e)) })) }), 150) }, onStateChange(i) { o.options.loop && i.data === t.YT.PlayerState.ENDED && o.play(o.options.startTime), e || i.data !== t.YT.PlayerState.PLAYING || (e = 1, o.fire("started", i)), i.data === t.YT.PlayerState.PLAYING && o.fire("play", i), i.data === t.YT.PlayerState.PAUSED && o.fire("pause", i), i.data === t.YT.PlayerState.ENDED && o.fire("ended", i), i.data === t.YT.PlayerState.PLAYING ? a = setInterval((() => { o.fire("timeupdate", i), o.options.endTime && o.player.getCurrentTime() >= o.options.endTime && (o.options.loop ? o.play(o.options.startTime) : o.pause()) }), 150) : clearInterval(a) }, onError(e) { o.fire("error", e) } }; const n = !o.$video; if (n) { const e = document.createElement("div"); e.setAttribute("id", o.playerID), i.appendChild(e), document.body.appendChild(i) } o.player = o.player || new t.YT.Player(o.playerID, o.playerOptions), n && (o.$video = document.getElementById(o.playerID), o.options.accessibilityHidden && (o.$video.setAttribute("tabindex", "-1"), o.$video.setAttribute("aria-hidden", "true")), o.videoWidth = parseInt(o.$video.getAttribute("width"), 10) || 1280, o.videoHeight = parseInt(o.$video.getAttribute("height"), 10) || 720) } if ("vimeo" === o.type) { if (o.playerOptions = { dnt: 1, id: o.videoID, autopause: 0, transparent: 0, autoplay: o.options.autoplay ? 1 : 0, loop: o.options.loop ? 1 : 0, muted: o.options.mute ? 1 : 0 }, o.options.volume && (o.playerOptions.volume = o.options.volume), o.options.showControls || (o.playerOptions.badge = 0, o.playerOptions.byline = 0, o.playerOptions.portrait = 0, o.playerOptions.title = 0, o.playerOptions.background = 1), !o.$video) { let e = ""; Object.keys(o.playerOptions).forEach((t => { "" !== e && (e += "&"), e += `${t}=${encodeURIComponent(o.playerOptions[t])}` })), o.$video = document.createElement("iframe"), o.$video.setAttribute("id", o.playerID), o.$video.setAttribute("src", `https://player.vimeo.com/video/${o.videoID}?${e}`), o.$video.setAttribute("frameborder", "0"), o.$video.setAttribute("mozallowfullscreen", ""), o.$video.setAttribute("allowfullscreen", ""), o.$video.setAttribute("title", "Vimeo video player"), o.options.accessibilityHidden && (o.$video.setAttribute("tabindex", "-1"), o.$video.setAttribute("aria-hidden", "true")), i.appendChild(o.$video), document.body.appendChild(i) } let e; o.player = o.player || new t.Vimeo.Player(o.$video, o.playerOptions), o.options.startTime && o.options.autoplay && o.player.setCurrentTime(o.options.startTime), o.player.getVideoWidth().then((e => { o.videoWidth = e || 1280 })), o.player.getVideoHeight().then((e => { o.videoHeight = e || 720 })), o.player.on("timeupdate", (t => { e || (o.fire("started", t), e = 1), o.fire("timeupdate", t), o.options.endTime && o.options.endTime && t.seconds >= o.options.endTime && (o.options.loop ? o.play(o.options.startTime) : o.pause()) })), o.player.on("play", (e => { o.fire("play", e), o.options.startTime && 0 === e.seconds && o.play(o.options.startTime) })), o.player.on("pause", (e => { o.fire("pause", e) })), o.player.on("ended", (e => { o.fire("ended", e) })), o.player.on("loaded", (e => { o.fire("ready", e) })), o.player.on("volumechange", (e => { o.fire("volumechange", e) })), o.player.on("error", (e => { o.fire("error", e) })) } if ("local" === o.type) { let e; o.$video || (o.$video = document.createElement("video"), o.options.showControls && (o.$video.controls = !0), o.options.mute ? o.$video.muted = !0 : o.$video.volume && (o.$video.volume = o.options.volume / 100), o.options.loop && (o.$video.loop = !0), o.$video.setAttribute("playsinline", ""), o.$video.setAttribute("webkit-playsinline", ""), o.options.accessibilityHidden && (o.$video.setAttribute("tabindex", "-1"), o.$video.setAttribute("aria-hidden", "true")), o.$video.setAttribute("id", o.playerID), i.appendChild(o.$video), document.body.appendChild(i), Object.keys(o.videoID).forEach((e => { ! function(e, t, o) { const i = document.createElement("source"); i.src = t, i.type = o, e.appendChild(i) }(o.$video, o.videoID[e], `video/${e}`) }))), o.player = o.player || o.$video, o.player.addEventListener("playing", (t => { e || o.fire("started", t), e = 1 })), o.player.addEventListener("timeupdate", (function(e) { o.fire("timeupdate", e), o.options.endTime && o.options.endTime && this.currentTime >= o.options.endTime && (o.options.loop ? o.play(o.options.startTime) : o.pause()) })), o.player.addEventListener("play", (e => { o.fire("play", e) })), o.player.addEventListener("pause", (e => { o.fire("pause", e) })), o.player.addEventListener("ended", (e => { o.fire("ended", e) })), o.player.addEventListener("loadedmetadata", (function() { o.videoWidth = this.videoWidth || 1280, o.videoHeight = this.videoHeight || 720, o.fire("ready"), o.options.autoplay && o.play(o.options.startTime) })), o.player.addEventListener("volumechange", (e => { o.getVolume((e => { o.options.volume = e })), o.fire("volumechange", e) })), o.player.addEventListener("error", (e => { o.fire("error", e) })) } e(o.$video) })) } init() { this.playerID = `VideoWorker-${this.ID}` } loadAPI() { if (a && n) return; let e = ""; if ("youtube" !== this.type || a || (a = 1, e = "https://www.youtube.com/iframe_api"), "vimeo" === this.type && !n) { if (n = 1, void 0 !== t.Vimeo) return; e = "https://player.vimeo.com/api/player.js" } if (!e) return; let o = document.createElement("script"), i = document.getElementsByTagName("head")[0]; o.src = e, i.appendChild(o), i = null, o = null } onAPIready(e) { const o = this; if ("youtube" === o.type && (void 0 !== t.YT && 0 !== t.YT.loaded || s ? "object" == typeof t.YT && 1 === t.YT.loaded ? e() : r.done((() => { e() })) : (s = 1, t.onYouTubeIframeAPIReady = function() { t.onYouTubeIframeAPIReady = null, r.resolve("done"), e() })), "vimeo" === o.type) if (void 0 !== t.Vimeo || l) void 0 !== t.Vimeo ? e() : p.done((() => { e() })); else { l = 1; const o = setInterval((() => { void 0 !== t.Vimeo && (clearInterval(o), p.resolve("done"), e()) }), 20) } "local" === o.type && e() } } let u; u = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {}; var y, m = u; function c(e = m.jarallax) { if (void 0 === e) return; const t = e.constructor, o = t.prototype.onScroll; t.prototype.onScroll = function() { const e = this; o.apply(e); !e.isVideoInserted && e.video && (!e.options.videoLazyLoading || e.isElementInViewport) && !e.options.disableVideo() && (e.isVideoInserted = !0, e.video.getVideo((t => { const o = t.parentNode; e.css(t, { position: e.image.position, top: "0px", left: "0px", right: "0px", bottom: "0px", width: "100%", height: "100%", maxWidth: "none", maxHeight: "none", pointerEvents: "none", transformStyle: "preserve-3d", backfaceVisibility: "hidden", willChange: "transform,opacity", margin: 0, zIndex: -1 }), e.$video = t, "local" === e.video.type && (e.image.src ? e.$video.setAttribute("poster", e.image.src) : e.image.$item && "IMG" === e.image.$item.tagName && e.image.$item.src && e.$video.setAttribute("poster", e.image.$item.src)), e.image.$container.appendChild(t), o.parentNode.removeChild(o), e.options.onVideoInsert && e.options.onVideoInsert.call(e) }))) }; const i = t.prototype.coverImage; t.prototype.coverImage = function() { const e = this, t = i.apply(e), o = !!e.image.$item && e.image.$item.nodeName; if (t && e.video && o && ("IFRAME" === o || "VIDEO" === o)) { let i = t.image.height, a = i * e.image.width / e.image.height, n = (t.container.width - a) / 2, s = t.image.marginTop; t.container.width > a && (a = t.container.width, i = a * e.image.height / e.image.width, n = 0, s += (t.image.height - i) / 2), "IFRAME" === o && (i += 400, s -= 200), e.css(e.$video, { width: `${a}px`, marginLeft: `${n}px`, height: `${i}px`, marginTop: `${s}px` }) } return t }; const a = t.prototype.initImg; t.prototype.initImg = function() { const e = this, t = a.apply(e); return e.options.videoSrc || (e.options.videoSrc = e.$item.getAttribute("data-jarallax-video") || null), e.options.videoSrc ? (e.defaultInitImgResult = t, !0) : t }; const n = t.prototype.canInitParallax; t.prototype.canInitParallax = function() { const e = this; let t = n.apply(e); if (!e.options.videoSrc) return t; const o = new d(e.options.videoSrc, { autoplay: !0, loop: e.options.videoLoop, showControls: !1, accessibilityHidden: !0, startTime: e.options.videoStartTime || 0, endTime: e.options.videoEndTime || 0, mute: e.options.videoVolume ? 0 : 1, volume: e.options.videoVolume || 0 }); function i() { e.image.$default_item && (e.image.$item = e.image.$default_item, e.image.$item.style.display = "block", e.coverImage(), e.onScroll()) } if (e.options.onVideoWorkerInit && e.options.onVideoWorkerInit.call(e, o), o.isValid()) if (this.options.disableParallax() && (t = !0, e.image.position = "absolute", e.options.type = "scroll", e.options.speed = 1), t) { if (o.on("ready", (() => { if (e.options.videoPlayOnlyVisible) { const t = e.onScroll; e.onScroll = function() { t.apply(e), e.videoError || !e.options.videoLoop && (e.options.videoLoop || e.videoEnded) || (e.isVisible() ? o.play() : o.pause()) } } else o.play() })), o.on("started", (() => { e.image.$default_item = e.image.$item, e.image.$item = e.$video, e.image.width = e.video.videoWidth || 1280, e.image.height = e.video.videoHeight || 720, e.coverImage(), e.onScroll(), e.image.$default_item && (e.image.$default_item.style.display = "none") })), o.on("ended", (() => { e.videoEnded = !0, e.options.videoLoop || i() })), o.on("error", (() => { e.videoError = !0, i() })), e.video = o, !e.defaultInitImgResult && (e.image.src = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7", "local" !== o.type)) return o.getImageURL((t => { e.image.bgImage = `url("${t}")`, e.init() })), !1 } else e.defaultInitImgResult || o.getImageURL((t => { const o = e.$item.getAttribute("style"); o && e.$item.setAttribute("data-jarallax-original-styles", o), e.css(e.$item, { "background-image": `url("${t}")`, "background-position": "center", "background-size": "cover" }) })); return t }; const s = t.prototype.destroy; t.prototype.destroy = function() { const e = this; e.image.$default_item && (e.image.$item = e.image.$default_item, delete e.image.$default_item), s.apply(e) } } return c(), y = () => { void 0 !== m.jarallax && m.jarallax(document.querySelectorAll("[data-jarallax-video]")) }, "complete" === document.readyState || "interactive" === document.readyState ? y() : document.addEventListener("DOMContentLoaded", y, { capture: !0, once: !0, passive: !0 }), m.VideoWorker || (m.VideoWorker = d), c })); /*! * Name : Elements Extension for Jarallax * Version : 1.0.0 * Author : nK <https://nkdev.info> * GitHub : https://github.com/nk-o/jarallax */ ! function(n) { var o = {}; function r(t) { if (o[t]) return o[t].exports; var e = o[t] = { i: t, l: !1, exports: {} }; return n[t].call(e.exports, e, e.exports, r), e.l = !0, e.exports } r.m = n, r.c = o, r.d = function(t, e, n) { r.o(t, e) || Object.defineProperty(t, e, { enumerable: !0, get: n }) }, r.r = function(t) { "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(t, "__esModule", { value: !0 }) }, r.t = function(e, t) { if (1 & t && (e = r(e)), 8 & t) return e; if (4 & t && "object" == typeof e && e && e.__esModule) return e; var n = Object.create(null); if (r.r(n), Object.defineProperty(n, "default", { enumerable: !0, value: e }), 2 & t && "string" != typeof e) for (var o in e) r.d(n, o, function(t) { return e[t] }.bind(null, o)); return n }, r.n = function(t) { var e = t && t.__esModule ? function() { return t.default } : function() { return t }; return r.d(e, "a", e), e }, r.o = function(t, e) { return Object.prototype.hasOwnProperty.call(t, e) }, r.p = "", r(r.s = 0) }([function(t, e, n) { t.exports = n(1) }, function(t, e, n) { "use strict"; var o = r(n(2)); function r(t) { return t && t.__esModule ? t : { default: t } }(0, r(n(3)).default)(), (0, o.default)(function() { "undefined" != typeof jarallax && jarallax(document.querySelectorAll("[data-jarallax-element]")) }) }, function(t, e, n) { "use strict"; t.exports = function(t) { "complete" === document.readyState || "interactive" === document.readyState ? t.call() : document.attachEvent ? document.attachEvent("onreadystatechange", function() { "interactive" === document.readyState && t.call() }) : document.addEventListener && document.addEventListener("DOMContentLoaded", t) } }, function(t, e, n) { "use strict"; Object.defineProperty(e, "__esModule", { value: !0 }), e.default = function() { var t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : i.default.jarallax; if (void 0 === t) return; var e = t.constructor; ["initImg", "canInitParallax", "init", "destroy", "clipContainer", "coverImage", "isVisible", "onScroll", "onResize"].forEach(function(p) { var f = e.prototype[p]; e.prototype[p] = function() { var t = this, e = arguments || []; if ("initImg" === p && null !== t.$item.getAttribute("data-jarallax-element") && (t.options.type = "element", t.pureOptions.speed = t.$item.getAttribute("data-jarallax-element") || t.pureOptions.speed), "element" !== t.options.type) return f.apply(t, e); switch (t.pureOptions.threshold = t.$item.getAttribute("data-threshold") || "", p) { case "init": var n = t.pureOptions.speed.split(" "); t.options.speed = t.pureOptions.speed || 0, t.options.speedY = n[0] ? parseFloat(n[0]) : 0, t.options.speedX = n[1] ? parseFloat(n[1]) : 0; var o = t.pureOptions.threshold.split(" "); t.options.thresholdY = o[0] ? parseFloat(o[0]) : null, t.options.thresholdX = o[1] ? parseFloat(o[1]) : null; break; case "onResize": var r = t.css(t.$item, "transform"); t.css(t.$item, { transform: "" }); var i = t.$item.getBoundingClientRect(); t.itemData = { width: i.width, height: i.height, y: i.top + t.getWindowData().y, x: i.left }, t.css(t.$item, { transform: r }); break; case "onScroll": var a = t.getWindowData(), s = (a.y + a.height / 2 - t.itemData.y - t.itemData.height / 2) / (a.height / 2), l = s * t.options.speedY, u = s * t.options.speedX, c = l, d = u; null !== t.options.thresholdY && l > t.options.thresholdY && (c = 0), null !== t.options.thresholdX && u > t.options.thresholdX && (d = 0), t.css(t.$item, { transform: "translate3d(" + d + "px," + c + "px,0)" }); break; case "initImg": case "isVisible": case "clipContainer": case "coverImage": return !0 } return f.apply(t, e) } }) }; var o, r = n(4), i = (o = r) && o.__esModule ? o : { default: o } }, function(n, t, e) { "use strict"; (function(t) { var e; e = "undefined" != typeof window ? window : void 0 !== t ? t : "undefined" != typeof self ? self : {}, n.exports = e }).call(this, e(5)) }, function(t, e, n) { "use strict"; var o, r = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) { return typeof t } : function(t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t }; o = function() { return this }(); try { o = o || Function("return this")() || (0, eval)("this") } catch (t) { "object" === ("undefined" == typeof window ? "undefined" : r(window)) && (o = window) } t.exports = o }]); //# sourceMappingURL=jarallax-element.min.js.map /* typed */ ! function($) { "use strict"; var a = function(a, b) { this.el = $(a), this.options = $.extend({}, $.fn.typed.defaults, b), this.isInput = this.el.is("input"), this.attr = this.options.attr, this.showCursor = !this.isInput && this.options.showCursor, this.elContent = this.attr ? this.el.attr(this.attr) : this.el.text(), this.contentType = this.options.contentType, this.typeSpeed = this.options.typeSpeed, this.startDelay = this.options.startDelay, this.backSpeed = this.options.backSpeed, this.backDelay = this.options.backDelay, this.stringsElement = this.options.stringsElement, this.strings = this.options.strings, this.strPos = 0, this.arrayPos = 0, this.stopNum = 0, this.loop = this.options.loop, this.loopCount = this.options.loopCount, this.curLoop = 0, this.stop = !1, this.cursorChar = this.options.cursorChar, this.shuffle = this.options.shuffle, this.sequence = [], this.build() }; a.prototype = { constructor: a, init: function() { var a = this; a.timeout = setTimeout(function() { for (var b = 0; b < a.strings.length; ++b) a.sequence[b] = b; a.shuffle && (a.sequence = a.shuffleArray(a.sequence)), a.typewrite(a.strings[a.sequence[a.arrayPos]], a.strPos) }, a.startDelay) }, build: function() { var a = this; if (!0 === this.showCursor && (this.cursor = $('<span class="typed-cursor">' + this.cursorChar + "</span>"), this.el.after(this.cursor)), this.stringsElement) { a.strings = [], this.stringsElement.hide(); var b = this.stringsElement.find("p"); $.each(b, function(c, b) { a.strings.push($(b).html()) }) } this.init() }, typewrite: function(c, d) { if (!0 !== this.stop) { var a = Math.round(70 * Math.random()) + this.typeSpeed, b = this; b.timeout = setTimeout(function() { var g = 0, a = c.substr(d); if ("^" === a.charAt(0)) { var h = 1; /^\^\d+/.test(a) && (h += (a = /\d+/.exec(a)[0]).length, g = parseInt(a)), c = c.substring(0, d) + c.substring(d + h) } if ("html" === b.contentType) { var e = c.substr(d).charAt(0); if ("<" === e || "&" === e) { var i = "", f = ""; for (f = "<" === e ? ">" : ";"; c.substr(d).charAt(0) !== f;) i += c.substr(d).charAt(0), d++; d++, i += f } } b.timeout = setTimeout(function() { if (d === c.length) b.options.onStringTyped(b.arrayPos), (b.arrayPos !== b.strings.length - 1 || (b.options.callback(), b.curLoop++, !1 !== b.loop && b.curLoop !== b.loopCount)) && (b.timeout = setTimeout(function() { b.backspace(c, d) }, b.backDelay)); else { 0 === d && b.options.preStringTyped(b.arrayPos); var a = c.substr(0, d + 1); b.attr ? b.el.attr(b.attr, a) : b.isInput ? b.el.val(a) : "html" === b.contentType ? b.el.html(a) : b.el.text(a), d++, b.typewrite(c, d) } }, g) }, a) } }, backspace: function(c, d) { if (!0 !== this.stop) { var a = Math.round(70 * Math.random()) + this.backSpeed, b = this; b.timeout = setTimeout(function() { if ("html" === b.contentType && ">" === c.substr(d).charAt(0)) { for (var e = ""; "<" !== c.substr(d).charAt(0);) e -= c.substr(d).charAt(0), d--; d--, e += "<" } var a = c.substr(0, d); b.attr ? b.el.attr(b.attr, a) : b.isInput ? b.el.val(a) : "html" === b.contentType ? b.el.html(a) : b.el.text(a), d > b.stopNum ? (d--, b.backspace(c, d)) : d <= b.stopNum && (b.arrayPos++, b.arrayPos === b.strings.length ? (b.arrayPos = 0, b.shuffle && (b.sequence = b.shuffleArray(b.sequence)), b.init()) : b.typewrite(b.strings[b.sequence[b.arrayPos]], d)) }, a) } }, shuffleArray: function(a) { var c, d, b = a.length; if (b) for (; --b;) c = a[d = Math.floor(Math.random() * (b + 1))], a[d] = a[b], a[b] = c; return a }, reset: function() { clearInterval(this.timeout); var a = this.el.attr("id"); this.el.after('<span id="' + a + '">'), this.el.remove(), void 0 !== this.cursor && this.cursor.remove(), this.options.resetCallback() } }, $.fn.typed = function(b) { return this.each(function() { var d = $(this), c = d.data("typed"); c || d.data("typed", c = new a(this, "object" == typeof b && b)), "string" == typeof b && c[b]() }) }, $.fn.typed.defaults = { strings: ["These are the default values...", "You know what you should do?", "Use your own!", "Have a great day!"], stringsElement: null, typeSpeed: 0, startDelay: 0, backSpeed: 0, shuffle: !1, backDelay: 500, loop: !1, loopCount: !1, showCursor: !0, cursorChar: "|", attr: null, contentType: "html", callback: function() {}, preStringTyped: function() {}, onStringTyped: function() {}, resetCallback: function() {} } }(window.jQuery) /* cookit js */ ! function(o) { o.cookit = function(t) { var n = o.extend({ backgroundColor: "#1c1c1c", messageColor: "#fff", linkColor: "#fad04c", buttonColor: "#fad04c", messageText: "<b>Do you hungry ?</b> 🍪 Pursuing navigation on this site, you accept the use of cookies.", linkText: "Learn more", linkUrl: "https://www.cookiesandyou.com", buttonText: "I accept" }, t); const e = o("<div id='cookit'></div>"), c = o("<div id='cookit-container'></div>"); var i = link = button = null; (function(o) { const t = decodeURIComponent(document.cookie).split(";"); o += "="; for (let n = 0; n < t.length; n++) { let e = t[n]; for (; " " === e.charAt(0);) e = e.substring(1); if (0 === e.indexOf(o)) return e.substring(o.length, e.length) } })("cookies-consent") || (i = o("<p id='cookit-message'>" + n.messageText + "</p>"), link = o("<a id='cookit-link' href='" + n.linkUrl + "' target='_blank'>" + n.linkText + "</a>"), button = o("<a id='cookit-button' href='#'>" + n.buttonText + "</a>"), o("body").append(e), e.append(c), c.append(i), c.append(link), c.append(button), e.css({ "background-color": n.backgroundColor }), i.css({ color: n.messageColor }), link.css({ color: n.linkColor }), button.css({ "background-color": n.buttonColor, color: n.backgroundColor }), o("#cookit-button").on("click", () => { o("#cookit").addClass("hidden"), function(o, t, n) { const e = new Date; e.setTime(e.getTime() + 24 * n * 60 * 60 * 1e3); const c = "expires=" + e.toUTCString(); document.cookie = o + "=" + t + ";" + c + ";path=/" }("cookies-consent", 1, 365) })) } }(jQuery); /*! skrollr 0.6.26 (2014-06-08) | Alexander Prinzhorn - https://github.com/Prinzhorn/skrollr | Free to use under terms of MIT license */ (function(e, t, r) { "use strict"; function n(r) { if (o = t.documentElement, a = t.body, K(), it = this, r = r || {}, ut = r.constants || {}, r.easing) for (var n in r.easing) U[n] = r.easing[n]; yt = r.edgeStrategy || "set", ct = { beforerender: r.beforerender, render: r.render, keyframe: r.keyframe }, ft = r.forceHeight !== !1, ft && (Vt = r.scale || 1), mt = r.mobileDeceleration || x, dt = r.smoothScrolling !== !1, gt = r.smoothScrollingDuration || E, vt = { targetTop: it.getScrollTop() }, Gt = (r.mobileCheck || function() { return /Android|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent || navigator.vendor || e.opera) })(), Gt ? (st = t.getElementById("skrollr-body"), st && at(), X(), Dt(o, [y, S], [T])) : Dt(o, [y, b], [T]), it.refresh(), St(e, "resize orientationchange", function() { var e = o.clientWidth, t = o.clientHeight; (t !== $t || e !== Mt) && ($t = t, Mt = e, _t = !0) }); var i = Y(); return function l() { Z(), bt = i(l) }(), it } var o, a, i = { get: function() { return it }, init: function(e) { return it || new n(e) }, VERSION: "0.6.26" }, l = Object.prototype.hasOwnProperty, s = e.Math, c = e.getComputedStyle, f = "touchstart", u = "touchmove", m = "touchcancel", p = "touchend", d = "skrollable", g = d + "-before", v = d + "-between", h = d + "-after", y = "skrollr", T = "no-" + y, b = y + "-desktop", S = y + "-mobile", k = "linear", w = 1e3, x = .004, E = 200, A = "start", F = "end", C = "center", D = "bottom", H = "___skrollable_id", I = /^(?:input|textarea|button|select)$/i, P = /^\s+|\s+$/g, N = /^data(?:-(_\w+))?(?:-?(-?\d*\.?\d+p?))?(?:-?(start|end|top|center|bottom))?(?:-?(top|center|bottom))?$/, O = /\s*(@?[\w\-\[\]]+)\s*:\s*(.+?)\s*(?:;|$)/gi, V = /^(@?[a-z\-]+)\[(\w+)\]$/, z = /-([a-z0-9_])/g, q = function(e, t) { return t.toUpperCase() }, L = /[\-+]?[\d]*\.?[\d]+/g, M = /\{\?\}/g, $ = /rgba?\(\s*-?\d+\s*,\s*-?\d+\s*,\s*-?\d+/g, _ = /[a-z\-]+-gradient/g, B = "", G = "", K = function() { var e = /^(?:O|Moz|webkit|ms)|(?:-(?:o|moz|webkit|ms)-)/; if (c) { var t = c(a, null); for (var n in t) if (B = n.match(e) || +n == n && t[n].match(e)) break; if (!B) return B = G = "", r; B = B[0], "-" === B.slice(0, 1) ? (G = B, B = { "-webkit-": "webkit", "-moz-": "Moz", "-ms-": "ms", "-o-": "O" }[B]) : G = "-" + B.toLowerCase() + "-" } }, Y = function() { var t = e.requestAnimationFrame || e[B.toLowerCase() + "RequestAnimationFrame"], r = Pt(); return (Gt || !t) && (t = function(t) { var n = Pt() - r, o = s.max(0, 1e3 / 60 - n); return e.setTimeout(function() { r = Pt(), t() }, o) }), t }, R = function() { var t = e.cancelAnimationFrame || e[B.toLowerCase() + "CancelAnimationFrame"]; return (Gt || !t) && (t = function(t) { return e.clearTimeout(t) }), t }, U = { begin: function() { return 0 }, end: function() { return 1 }, linear: function(e) { return e }, quadratic: function(e) { return e * e }, cubic: function(e) { return e * e * e }, swing: function(e) { return -s.cos(e * s.PI) / 2 + .5 }, sqrt: function(e) { return s.sqrt(e) }, outCubic: function(e) { return s.pow(e - 1, 3) + 1 }, bounce: function(e) { var t; if (.5083 >= e) t = 3; else if (.8489 >= e) t = 9; else if (.96208 >= e) t = 27; else { if (!(.99981 >= e)) return 1; t = 91 } return 1 - s.abs(3 * s.cos(1.028 * e * t) / t) } }; n.prototype.refresh = function(e) { var n, o, a = !1; for (e === r ? (a = !0, lt = [], Bt = 0, e = t.getElementsByTagName("*")) : e.length === r && (e = [e]), n = 0, o = e.length; o > n; n++) { var i = e[n], l = i, s = [], c = dt, f = yt, u = !1; if (a && H in i && delete i[H], i.attributes) { for (var m = 0, p = i.attributes.length; p > m; m++) { var g = i.attributes[m]; if ("data-anchor-target" !== g.name) if ("data-smooth-scrolling" !== g.name) if ("data-edge-strategy" !== g.name) if ("data-emit-events" !== g.name) { var v = g.name.match(N); if (null !== v) { var h = { props: g.value, element: i, eventType: g.name.replace(z, q) }; s.push(h); var y = v[1]; y && (h.constant = y.substr(1)); var T = v[2]; /p$/.test(T) ? (h.isPercentage = !0, h.offset = (0 | T.slice(0, -1)) / 100) : h.offset = 0 | T; var b = v[3], S = v[4] || b; b && b !== A && b !== F ? (h.mode = "relative", h.anchors = [b, S]) : (h.mode = "absolute", b === F ? h.isEnd = !0 : h.isPercentage || (h.offset = h.offset * Vt)) } } else u = !0; else f = g.value; else c = "off" !== g.value; else if (l = t.querySelector(g.value), null === l) throw 'Unable to find anchor target "' + g.value + '"' } if (s.length) { var k, w, x; !a && H in i ? (x = i[H], k = lt[x].styleAttr, w = lt[x].classAttr) : (x = i[H] = Bt++, k = i.style.cssText, w = Ct(i)), lt[x] = { element: i, styleAttr: k, classAttr: w, anchorTarget: l, keyFrames: s, smoothScrolling: c, edgeStrategy: f, emitEvents: u, lastFrameIndex: -1 }, Dt(i, [d], []) } } } for (Et(), n = 0, o = e.length; o > n; n++) { var E = lt[e[n][H]]; E !== r && (J(E), et(E)) } return it }, n.prototype.relativeToAbsolute = function(e, t, r) { var n = o.clientHeight, a = e.getBoundingClientRect(), i = a.top, l = a.bottom - a.top; return t === D ? i -= n : t === C && (i -= n / 2), r === D ? i += l : r === C && (i += l / 2), i += it.getScrollTop(), 0 | i + .5 }, n.prototype.animateTo = function(e, t) { t = t || {}; var n = Pt(), o = it.getScrollTop(); return pt = { startTop: o, topDiff: e - o, targetTop: e, duration: t.duration || w, startTime: n, endTime: n + (t.duration || w), easing: U[t.easing || k], done: t.done }, pt.topDiff || (pt.done && pt.done.call(it, !1), pt = r), it }, n.prototype.stopAnimateTo = function() { pt && pt.done && pt.done.call(it, !0), pt = r }, n.prototype.isAnimatingTo = function() { return !!pt }, n.prototype.isMobile = function() { return Gt }, n.prototype.setScrollTop = function(t, r) { return ht = r === !0, Gt ? Kt = s.min(s.max(t, 0), Ot) : e.scrollTo(0, t), it }, n.prototype.getScrollTop = function() { return Gt ? Kt : e.pageYOffset || o.scrollTop || a.scrollTop || 0 }, n.prototype.getMaxScrollTop = function() { return Ot }, n.prototype.on = function(e, t) { return ct[e] = t, it }, n.prototype.off = function(e) { return delete ct[e], it }, n.prototype.destroy = function() { var e = R(); e(bt), wt(), Dt(o, [T], [y, b, S]); for (var t = 0, n = lt.length; n > t; t++) ot(lt[t].element); o.style.overflow = a.style.overflow = "", o.style.height = a.style.height = "", st && i.setStyle(st, "transform", "none"), it = r, st = r, ct = r, ft = r, Ot = 0, Vt = 1, ut = r, mt = r, zt = "down", qt = -1, Mt = 0, $t = 0, _t = !1, pt = r, dt = r, gt = r, vt = r, ht = r, Bt = 0, yt = r, Gt = !1, Kt = 0, Tt = r }; var X = function() { var n, i, l, c, d, g, v, h, y, T, b, S; St(o, [f, u, m, p].join(" "), function(e) { var o = e.changedTouches[0]; for (c = e.target; 3 === c.nodeType;) c = c.parentNode; switch (d = o.clientY, g = o.clientX, T = e.timeStamp, I.test(c.tagName) || e.preventDefault(), e.type) { case f: n && n.blur(), it.stopAnimateTo(), n = c, i = v = d, l = g, y = T; break; case u: I.test(c.tagName) && t.activeElement !== c && e.preventDefault(), h = d - v, S = T - b, it.setScrollTop(Kt - h, !0), v = d, b = T; break; default: case m: case p: var a = i - d, k = l - g, w = k * k + a * a; if (49 > w) { if (!I.test(n.tagName)) { n.focus(); var x = t.createEvent("MouseEvents"); x.initMouseEvent("click", !0, !0, e.view, 1, o.screenX, o.screenY, o.clientX, o.clientY, e.ctrlKey, e.altKey, e.shiftKey, e.metaKey, 0, null), n.dispatchEvent(x) } return } n = r; var E = h / S; E = s.max(s.min(E, 3), -3); var A = s.abs(E / mt), F = E * A + .5 * mt * A * A, C = it.getScrollTop() - F, D = 0; C > Ot ? (D = (Ot - C) / F, C = Ot) : 0 > C && (D = -C / F, C = 0), A *= 1 - D, it.animateTo(0 | C + .5, { easing: "outCubic", duration: A }) } }), e.scrollTo(0, 0), o.style.overflow = a.style.overflow = "hidden" }, j = function() { var e, t, r, n, a, i, l, c, f, u, m, p = o.clientHeight, d = At(); for (c = 0, f = lt.length; f > c; c++) for (e = lt[c], t = e.element, r = e.anchorTarget, n = e.keyFrames, a = 0, i = n.length; i > a; a++) l = n[a], u = l.offset, m = d[l.constant] || 0, l.frame = u, l.isPercentage && (u *= p, l.frame = u), "relative" === l.mode && (ot(t), l.frame = it.relativeToAbsolute(r, l.anchors[0], l.anchors[1]) - u, ot(t, !0)), l.frame += m, ft && !l.isEnd && l.frame > Ot && (Ot = l.frame); for (Ot = s.max(Ot, Ft()), c = 0, f = lt.length; f > c; c++) { for (e = lt[c], n = e.keyFrames, a = 0, i = n.length; i > a; a++) l = n[a], m = d[l.constant] || 0, l.isEnd && (l.frame = Ot - l.offset + m); e.keyFrames.sort(Nt) } }, W = function(e, t) { for (var r = 0, n = lt.length; n > r; r++) { var o, a, s = lt[r], c = s.element, f = s.smoothScrolling ? e : t, u = s.keyFrames, m = u.length, p = u[0], y = u[u.length - 1], T = p.frame > f, b = f > y.frame, S = T ? p : y, k = s.emitEvents, w = s.lastFrameIndex; if (T || b) { if (T && -1 === s.edge || b && 1 === s.edge) continue; switch (T ? (Dt(c, [g], [h, v]), k && w > -1 && (xt(c, p.eventType, zt), s.lastFrameIndex = -1)) : (Dt(c, [h], [g, v]), k && m > w && (xt(c, y.eventType, zt), s.lastFrameIndex = m)), s.edge = T ? -1 : 1, s.edgeStrategy) { case "reset": ot(c); continue; case "ease": f = S.frame; break; default: case "set": var x = S.props; for (o in x) l.call(x, o) && (a = nt(x[o].value), 0 === o.indexOf("@") ? c.setAttribute(o.substr(1), a) : i.setStyle(c, o, a)); continue } } else 0 !== s.edge && (Dt(c, [d, v], [g, h]), s.edge = 0); for (var E = 0; m - 1 > E; E++) if (f >= u[E].frame && u[E + 1].frame >= f) { var A = u[E], F = u[E + 1]; for (o in A.props) if (l.call(A.props, o)) { var C = (f - A.frame) / (F.frame - A.frame); C = A.props[o].easing(C), a = rt(A.props[o].value, F.props[o].value, C), a = nt(a), 0 === o.indexOf("@") ? c.setAttribute(o.substr(1), a) : i.setStyle(c, o, a) } k && w !== E && ("down" === zt ? xt(c, A.eventType, zt) : xt(c, F.eventType, zt), s.lastFrameIndex = E); break } } }, Z = function() { _t && (_t = !1, Et()); var e, t, n = it.getScrollTop(), o = Pt(); if (pt) o >= pt.endTime ? (n = pt.targetTop, e = pt.done, pt = r) : (t = pt.easing((o - pt.startTime) / pt.duration), n = 0 | pt.startTop + t * pt.topDiff), it.setScrollTop(n, !0); else if (!ht) { var a = vt.targetTop - n; a && (vt = { startTop: qt, topDiff: n - qt, targetTop: n, startTime: Lt, endTime: Lt + gt }), vt.endTime >= o && (t = U.sqrt((o - vt.startTime) / gt), n = 0 | vt.startTop + t * vt.topDiff) } if (Gt && st && i.setStyle(st, "transform", "translate(0, " + -Kt + "px) " + Tt), ht || qt !== n) { zt = n > qt ? "down" : qt > n ? "up" : zt, ht = !1; var l = { curTop: n, lastTop: qt, maxTop: Ot, direction: zt }, s = ct.beforerender && ct.beforerender.call(it, l); s !== !1 && (W(n, it.getScrollTop()), qt = n, ct.render && ct.render.call(it, l)), e && e.call(it, !1) } Lt = o }, J = function(e) { for (var t = 0, r = e.keyFrames.length; r > t; t++) { for (var n, o, a, i, l = e.keyFrames[t], s = {}; null !== (i = O.exec(l.props));) a = i[1], o = i[2], n = a.match(V), null !== n ? (a = n[1], n = n[2]) : n = k, o = o.indexOf("!") ? Q(o) : [o.slice(1)], s[a] = { value: o, easing: U[n] }; l.props = s } }, Q = function(e) { var t = []; return $.lastIndex = 0, e = e.replace($, function(e) { return e.replace(L, function(e) { return 100 * (e / 255) + "%" }) }), G && (_.lastIndex = 0, e = e.replace(_, function(e) { return G + e })), e = e.replace(L, function(e) { return t.push(+e), "{?}" }), t.unshift(e), t }, et = function(e) { var t, r, n = {}; for (t = 0, r = e.keyFrames.length; r > t; t++) tt(e.keyFrames[t], n); for (n = {}, t = e.keyFrames.length - 1; t >= 0; t--) tt(e.keyFrames[t], n) }, tt = function(e, t) { var r; for (r in t) l.call(e.props, r) || (e.props[r] = t[r]); for (r in e.props) t[r] = e.props[r] }, rt = function(e, t, r) { var n, o = e.length; if (o !== t.length) throw "Can't interpolate between \"" + e[0] + '" and "' + t[0] + '"'; var a = [e[0]]; for (n = 1; o > n; n++) a[n] = e[n] + (t[n] - e[n]) * r; return a }, nt = function(e) { var t = 1; return M.lastIndex = 0, e[0].replace(M, function() { return e[t++] }) }, ot = function(e, t) { e = [].concat(e); for (var r, n, o = 0, a = e.length; a > o; o++) n = e[o], r = lt[n[H]], r && (t ? (n.style.cssText = r.dirtyStyleAttr, Dt(n, r.dirtyClassAttr)) : (r.dirtyStyleAttr = n.style.cssText, r.dirtyClassAttr = Ct(n), n.style.cssText = r.styleAttr, Dt(n, r.classAttr))) }, at = function() { Tt = "translateZ(0)", i.setStyle(st, "transform", Tt); var e = c(st), t = e.getPropertyValue("transform"), r = e.getPropertyValue(G + "transform"), n = t && "none" !== t || r && "none" !== r; n || (Tt = "") }; i.setStyle = function(e, t, r) { var n = e.style; if (t = t.replace(z, q).replace("-", ""), "zIndex" === t) n[t] = isNaN(r) ? r : "" + (0 | r); else if ("float" === t) n.styleFloat = n.cssFloat = r; else try { B && (n[B + t.slice(0, 1).toUpperCase() + t.slice(1)] = r), n[t] = r } catch (o) {} }; var it, lt, st, ct, ft, ut, mt, pt, dt, gt, vt, ht, yt, Tt, bt, St = i.addEvent = function(t, r, n) { var o = function(t) { return t = t || e.event, t.target || (t.target = t.srcElement), t.preventDefault || (t.preventDefault = function() { t.returnValue = !1, t.defaultPrevented = !0 }), n.call(this, t) }; r = r.split(" "); for (var a, i = 0, l = r.length; l > i; i++) a = r[i], t.addEventListener ? t.addEventListener(a, n, !1) : t.attachEvent("on" + a, o), Yt.push({ element: t, name: a, listener: n }) }, kt = i.removeEvent = function(e, t, r) { t = t.split(" "); for (var n = 0, o = t.length; o > n; n++) e.removeEventListener ? e.removeEventListener(t[n], r, !1) : e.detachEvent("on" + t[n], r) }, wt = function() { for (var e, t = 0, r = Yt.length; r > t; t++) e = Yt[t], kt(e.element, e.name, e.listener); Yt = [] }, xt = function(e, t, r) { ct.keyframe && ct.keyframe.call(it, e, t, r) }, Et = function() { var e = it.getScrollTop(); Ot = 0, ft && !Gt && (a.style.height = ""), j(), ft && !Gt && (a.style.height = Ot + o.clientHeight + "px"), Gt ? it.setScrollTop(s.min(it.getScrollTop(), Ot)) : it.setScrollTop(e, !0), ht = !0 }, At = function() { var e, t, r = o.clientHeight, n = {}; for (e in ut) t = ut[e], "function" == typeof t ? t = t.call(it) : /p$/.test(t) && (t = t.slice(0, -1) / 100 * r), n[e] = t; return n }, Ft = function() { var e = st && st.offsetHeight || 0, t = s.max(e, a.scrollHeight, a.offsetHeight, o.scrollHeight, o.offsetHeight, o.clientHeight); return t - o.clientHeight }, Ct = function(t) { var r = "className"; return e.SVGElement && t instanceof e.SVGElement && (t = t[r], r = "baseVal"), t[r] }, Dt = function(t, n, o) { var a = "className"; if (e.SVGElement && t instanceof e.SVGElement && (t = t[a], a = "baseVal"), o === r) return t[a] = n, r; for (var i = t[a], l = 0, s = o.length; s > l; l++) i = It(i).replace(It(o[l]), " "); i = Ht(i); for (var c = 0, f = n.length; f > c; c++) - 1 === It(i).indexOf(It(n[c])) && (i += " " + n[c]); t[a] = Ht(i) }, Ht = function(e) { return e.replace(P, "") }, It = function(e) { return " " + e + " " }, Pt = Date.now || function() { return +new Date }, Nt = function(e, t) { return e.frame - t.frame }, Ot = 0, Vt = 1, zt = "down", qt = -1, Lt = Pt(), Mt = 0, $t = 0, _t = !1, Bt = 0, Gt = !1, Kt = 0, Yt = []; "function" == typeof define && define.amd ? define("skrollr", function() { return i }) : "undefined" != typeof module && module.exports ? module.exports = i : e.skrollr = i })(window, document); /* marquee */ /** * jQuery.marquee - scrolling text like old marquee element * @author Aamir Afridi - aamirafridi(at)gmail(dot)com / http://aamirafridi.com/jquery/jquery-marquee-plugin */ (function(f) { f.fn.marquee = function(x) { return this.each(function() { var a = f.extend({}, f.fn.marquee.defaults, x), b = f(this), c, t, e = 3, y = "animation-play-state", p = !1, E = function(a, b, c) { for (var e = ["webkit", "moz", "MS", "o", ""], d = 0; d < e.length; d++) e[d] || (b = b.toLowerCase()), a.addEventListener(e[d] + b, c, !1) }, F = function(a) { var b = [], c; for (c in a) a.hasOwnProperty(c) && b.push(c + ":" + a[c]); b.push(); return "{" + b.join(",") + "}" }, l = { pause: function() { p && a.allowCss3Support ? c.css(y, "paused") : f.fn.pause && c.pause(); b.data("runningStatus", "paused"); b.trigger("paused") }, resume: function() { p && a.allowCss3Support ? c.css(y, "running") : f.fn.resume && c.resume(); b.data("runningStatus", "resumed"); b.trigger("resumed") }, toggle: function() { l["resumed" == b.data("runningStatus") ? "pause" : "resume"]() }, destroy: function() { clearTimeout(b.timer); b.find("*").addBack().unbind(); b.html(b.find(".js-marquee:first").html()) } }; if ("string" === typeof x) f.isFunction(l[x]) && (c || (c = b.find(".js-marquee-wrapper")), !0 === b.data("css3AnimationIsSupported") && (p = !0), l[x]()); else { var u; f.each(a, function(c, d) { u = b.attr("data-" + c); if ("undefined" !== typeof u) { switch (u) { case "true": u = !0; break; case "false": u = !1 } a[c] = u } }); a.speed && (a.duration = parseInt(b.width(), 10) / a.speed * 1E3); var v = "up" == a.direction || "down" == a.direction; a.gap = a.duplicated ? parseInt(a.gap) : 0; b.wrapInner('<div class="js-marquee"></div>'); var h = b.find(".js-marquee").css({ "margin-right": a.gap, "float": "left" }); a.duplicated && h.clone(!0).appendTo(b); b.wrapInner('<div style="width:100000px" class="js-marquee-wrapper"></div>'); c = b.find(".js-marquee-wrapper"); if (v) { var k = b.height(); c.removeAttr("style"); b.height(k); b.find(".js-marquee").css({ "float": "none", "margin-bottom": a.gap, "margin-right": 0 }); a.duplicated && b.find(".js-marquee:last").css({ "margin-bottom": 0 }); var q = b.find(".js-marquee:first").height() + a.gap; a.startVisible && !a.duplicated ? (a._completeDuration = (parseInt(q, 10) + parseInt(k, 10)) / parseInt(k, 10) * a.duration, a.duration *= parseInt(q, 10) / parseInt(k, 10)) : a.duration *= (parseInt(q, 10) + parseInt(k, 10)) / parseInt(k, 10) } else { var m = b.find(".js-marquee:first").width() + a.gap; var n = b.width(); a.startVisible && !a.duplicated ? (a._completeDuration = (parseInt(m, 10) + parseInt(n, 10)) / parseInt(n, 10) * a.duration, a.duration *= parseInt(m, 10) / parseInt(n, 10)) : a.duration *= (parseInt(m, 10) + parseInt(n, 10)) / parseInt(n, 10) } a.duplicated && (a.duration /= 2); if (a.allowCss3Support) { h = document.body || document.createElement("div"); var g = "marqueeAnimation-" + Math.floor(1E7 * Math.random()), A = ["Webkit", "Moz", "O", "ms", "Khtml"], B = "animation", d = "", r = ""; h.style.animation && (r = "@keyframes " + g + " ", p = !0); if (!1 === p) for (var z = 0; z < A.length; z++) if (void 0 !== h.style[A[z] + "AnimationName"]) { h = "-" + A[z].toLowerCase() + "-"; B = h + B; y = h + y; r = "@" + h + "keyframes " + g + " "; p = !0; break } p && (d = g + " " + a.duration / 1E3 + "s " + a.delayBeforeStart / 1E3 + "s infinite " + a.css3easing, b.data("css3AnimationIsSupported", !0)) } var C = function() { c.css("transform", "translateY(" + ("up" == a.direction ? k + "px" : "-" + q + "px") + ")") }, D = function() { c.css("transform", "translateX(" + ("left" == a.direction ? n + "px" : "-" + m + "px") + ")") }; a.duplicated ? (v ? a.startVisible ? c.css("transform", "translateY(0)") : c.css("transform", "translateY(" + ("up" == a.direction ? k + "px" : "-" + (2 * q - a.gap) + "px") + ")") : a.startVisible ? c.css("transform", "translateX(0)") : c.css("transform", "translateX(" + ("left" == a.direction ? n + "px" : "-" + (2 * m - a.gap) + "px") + ")"), a.startVisible || (e = 1)) : a.startVisible ? e = 2 : v ? C() : D(); var w = function() { a.duplicated && (1 === e ? (a._originalDuration = a.duration, a.duration = v ? "up" == a.direction ? a.duration + k / (q / a.duration) : 2 * a.duration : "left" == a.direction ? a.duration + n / (m / a.duration) : 2 * a.duration, d && (d = g + " " + a.duration / 1E3 + "s " + a.delayBeforeStart / 1E3 + "s " + a.css3easing), e++) : 2 === e && (a.duration = a._originalDuration, d && (g += "0", r = f.trim(r) + "0 ", d = g + " " + a.duration / 1E3 + "s 0s infinite " + a.css3easing), e++)); v ? a.duplicated ? (2 < e && c.css("transform", "translateY(" + ("up" == a.direction ? 0 : "-" + q + "px") + ")"), t = { transform: "translateY(" + ("up" == a.direction ? "-" + q + "px" : 0) + ")" }) : a.startVisible ? 2 === e ? (d && (d = g + " " + a.duration / 1E3 + "s " + a.delayBeforeStart / 1E3 + "s " + a.css3easing), t = { transform: "translateY(" + ("up" == a.direction ? "-" + q + "px" : k + "px") + ")" }, e++) : 3 === e && (a.duration = a._completeDuration, d && (g += "0", r = f.trim(r) + "0 ", d = g + " " + a.duration / 1E3 + "s 0s infinite " + a.css3easing), C()) : (C(), t = { transform: "translateY(" + ("up" == a.direction ? "-" + c.height() + "px" : k + "px") + ")" }) : a.duplicated ? (2 < e && c.css("transform", "translateX(" + ("left" == a.direction ? 0 : "-" + m + "px") + ")"), t = { transform: "translateX(" + ("left" == a.direction ? "-" + m + "px" : 0) + ")" }) : a.startVisible ? 2 === e ? (d && (d = g + " " + a.duration / 1E3 + "s " + a.delayBeforeStart / 1E3 + "s " + a.css3easing), t = { transform: "translateX(" + ("left" == a.direction ? "-" + m + "px" : n + "px") + ")" }, e++) : 3 === e && (a.duration = a._completeDuration, d && (g += "0", r = f.trim(r) + "0 ", d = g + " " + a.duration / 1E3 + "s 0s infinite " + a.css3easing), D()) : (D(), t = { transform: "translateX(" + ("left" == a.direction ? "-" + m + "px" : n + "px") + ")" }); b.trigger("beforeStarting"); if (p) { c.css(B, d); var h = r + " { 100% " + F(t) + "}", l = c.find("style"); 0 !== l.length ? l.filter(":last").html(h) : f("head").append("<style>" + h + "</style>"); E(c[0], "AnimationIteration", function() { b.trigger("finished") }); E(c[0], "AnimationEnd", function() { w(); b.trigger("finished") }) } else c.animate(t, a.duration, a.easing, function() { b.trigger("finished"); a.pauseOnCycle ? b.timer = setTimeout(w, a.delayBeforeStart) : w() }); b.data("runningStatus", "resumed") }; b.bind("pause", l.pause); b.bind("resume", l.resume); a.pauseOnHover && (b.bind("mouseenter", l.pause), b.bind("mouseleave", l.resume)); p && a.allowCss3Support ? w() : b.timer = setTimeout(w, a.delayBeforeStart) } }) }; f.fn.marquee.defaults = { allowCss3Support: !0, css3easing: "linear", easing: "linear", delayBeforeStart: 1E3, direction: "left", duplicated: !1, duration: 5E3, gap: 20, pauseOnCycle: !1, pauseOnHover: !1, startVisible: !1 } })(jQuery); /*! Select2 4.1.0-rc.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ ! function(n) { "function" == typeof define && define.amd ? define(["jquery"], n) : "object" == typeof module && module.exports ? module.exports = function(e, t) { return void 0 === t && (t = "undefined" != typeof window ? require("jquery") : require("jquery")(e)), n(t), t } : n(jQuery) }(function(t) { var e, n, s, p, r, o, h, f, g, m, y, v, i, a, _, s = ((u = t && t.fn && t.fn.select2 && t.fn.select2.amd ? t.fn.select2.amd : u) && u.requirejs || (u ? n = u : u = {}, g = {}, m = {}, y = {}, v = {}, i = Object.prototype.hasOwnProperty, a = [].slice, _ = /\.js$/, h = function(e, t) { var n, s, i = c(e), r = i[0], t = t[1]; return e = i[1], r && (n = x(r = l(r, t))), r ? e = n && n.normalize ? n.normalize(e, (s = t, function(e) { return l(e, s) })) : l(e, t) : (r = (i = c(e = l(e, t)))[0], e = i[1], r && (n = x(r))), { f: r ? r + "!" + e : e, n: e, pr: r, p: n } }, f = { require: function(e) { return w(e) }, exports: function(e) { var t = g[e]; return void 0 !== t ? t : g[e] = {} }, module: function(e) { return { id: e, uri: "", exports: g[e], config: (t = e, function() { return y && y.config && y.config[t] || {} }) }; var t } }, r = function(e, t, n, s) { var i, r, o, a, l, c = [], u = typeof n, d = A(s = s || e); if ("undefined" == u || "function" == u) { for (t = !t.length && n.length ? ["require", "exports", "module"] : t, a = 0; a < t.length; a += 1) if ("require" === (r = (o = h(t[a], d)).f)) c[a] = f.require(e); else if ("exports" === r) c[a] = f.exports(e), l = !0; else if ("module" === r) i = c[a] = f.module(e); else if (b(g, r) || b(m, r) || b(v, r)) c[a] = x(r); else { if (!o.p) throw new Error(e + " missing " + r); o.p.load(o.n, w(s, !0), function(t) { return function(e) { g[t] = e } }(r), {}), c[a] = g[r] } u = n ? n.apply(g[e], c) : void 0, e && (i && i.exports !== p && i.exports !== g[e] ? g[e] = i.exports : u === p && l || (g[e] = u)) } else e && (g[e] = n) }, e = n = o = function(e, t, n, s, i) { if ("string" == typeof e) return f[e] ? f[e](t) : x(h(e, A(t)).f); if (!e.splice) { if ((y = e).deps && o(y.deps, y.callback), !t) return; t.splice ? (e = t, t = n, n = null) : e = p } return t = t || function() {}, "function" == typeof n && (n = s, s = i), s ? r(p, e, t, n) : setTimeout(function() { r(p, e, t, n) }, 4), o }, o.config = function(e) { return o(e) }, e._defined = g, (s = function(e, t, n) { if ("string" != typeof e) throw new Error("See almond README: incorrect module build, no module name"); t.splice || (n = t, t = []), b(g, e) || b(m, e) || (m[e] = [e, t, n]) }).amd = { jQuery: !0 }, u.requirejs = e, u.require = n, u.define = s), u.define("almond", function() {}), u.define("jquery", [], function() { var e = t || $; return null == e && console && console.error && console.error("Select2: An instance of jQuery or a jQuery-compatible library was not found. Make sure that you are including jQuery before Select2 on your web page."), e }), u.define("select2/utils", ["jquery"], function(r) { var s = {}; function c(e) { var t, n = e.prototype, s = []; for (t in n) "function" == typeof n[t] && "constructor" !== t && s.push(t); return s } s.Extend = function(e, t) { var n, s = {}.hasOwnProperty; function i() { this.constructor = e } for (n in t) s.call(t, n) && (e[n] = t[n]); return i.prototype = t.prototype, e.prototype = new i, e.__super__ = t.prototype, e }, s.Decorate = function(s, i) { var e = c(i), t = c(s); function r() { var e = Array.prototype.unshift, t = i.prototype.constructor.length, n = s.prototype.constructor; 0 < t && (e.call(arguments, s.prototype.constructor), n = i.prototype.constructor), n.apply(this, arguments) } i.displayName = s.displayName, r.prototype = new function() { this.constructor = r }; for (var n = 0; n < t.length; n++) { var o = t[n]; r.prototype[o] = s.prototype[o] } for (var a = 0; a < e.length; a++) { var l = e[a]; r.prototype[l] = function(e) { var t = function() {}; e in r.prototype && (t = r.prototype[e]); var n = i.prototype[e]; return function() { return Array.prototype.unshift.call(arguments, t), n.apply(this, arguments) } }(l) } return r }; function e() { this.listeners = {} } e.prototype.on = function(e, t) { this.listeners = this.listeners || {}, e in this.listeners ? this.listeners[e].push(t) : this.listeners[e] = [t] }, e.prototype.trigger = function(e) { var t = Array.prototype.slice, n = t.call(arguments, 1); this.listeners = this.listeners || {}, 0 === (n = null == n ? [] : n).length && n.push({}), (n[0]._type = e) in this.listeners && this.invoke(this.listeners[e], t.call(arguments, 1)), "*" in this.listeners && this.invoke(this.listeners["*"], arguments) }, e.prototype.invoke = function(e, t) { for (var n = 0, s = e.length; n < s; n++) e[n].apply(this, t) }, s.Observable = e, s.generateChars = function(e) { for (var t = "", n = 0; n < e; n++) t += Math.floor(36 * Math.random()).toString(36); return t }, s.bind = function(e, t) { return function() { e.apply(t, arguments) } }, s._convertData = function(e) { for (var t in e) { var n = t.split("-"), s = e; if (1 !== n.length) { for (var i = 0; i < n.length; i++) { var r = n[i]; (r = r.substring(0, 1).toLowerCase() + r.substring(1)) in s || (s[r] = {}), i == n.length - 1 && (s[r] = e[t]), s = s[r] } delete e[t] } } return e }, s.hasScroll = function(e, t) { var n = r(t), s = t.style.overflowX, i = t.style.overflowY; return (s !== i || "hidden" !== i && "visible" !== i) && ("scroll" === s || "scroll" === i || (n.innerHeight() < t.scrollHeight || n.innerWidth() < t.scrollWidth)) }, s.escapeMarkup = function(e) { var t = { "\\": "\", "&": "&", "<": "<", ">": ">", '"': """, "'": "'", "/": "/" }; return "string" != typeof e ? e : String(e).replace(/[&<>"'\/\\]/g, function(e) { return t[e] }) }, s.__cache = {}; var n = 0; return s.GetUniqueElementId = function(e) { var t = e.getAttribute("data-select2-id"); return null != t || (t = e.id ? "select2-data-" + e.id : "select2-data-" + (++n).toString() + "-" + s.generateChars(4), e.setAttribute("data-select2-id", t)), t }, s.StoreData = function(e, t, n) { e = s.GetUniqueElementId(e); s.__cache[e] || (s.__cache[e] = {}), s.__cache[e][t] = n }, s.GetData = function(e, t) { var n = s.GetUniqueElementId(e); return t ? s.__cache[n] && null != s.__cache[n][t] ? s.__cache[n][t] : r(e).data(t) : s.__cache[n] }, s.RemoveData = function(e) { var t = s.GetUniqueElementId(e); null != s.__cache[t] && delete s.__cache[t], e.removeAttribute("data-select2-id") }, s.copyNonInternalCssClasses = function(e, t) { var n = (n = e.getAttribute("class").trim().split(/\s+/)).filter(function(e) { return 0 === e.indexOf("select2-") }), t = (t = t.getAttribute("class").trim().split(/\s+/)).filter(function(e) { return 0 !== e.indexOf("select2-") }), t = n.concat(t); e.setAttribute("class", t.join(" ")) }, s }), u.define("select2/results", ["jquery", "./utils"], function(d, p) { function s(e, t, n) { this.$element = e, this.data = n, this.options = t, s.__super__.constructor.call(this) } return p.Extend(s, p.Observable), s.prototype.render = function() { var e = d('<ul class="select2-results__options" role="listbox"></ul>'); return this.options.get("multiple") && e.attr("aria-multiselectable", "true"), this.$results = e }, s.prototype.clear = function() { this.$results.empty() }, s.prototype.displayMessage = function(e) { var t = this.options.get("escapeMarkup"); this.clear(), this.hideLoading(); var n = d('<li role="alert" aria-live="assertive" class="select2-results__option"></li>'), s = this.options.get("translations").get(e.message); n.append(t(s(e.args))), n[0].className += " select2-results__message", this.$results.append(n) }, s.prototype.hideMessages = function() { this.$results.find(".select2-results__message").remove() }, s.prototype.append = function(e) { this.hideLoading(); var t = []; if (null != e.results && 0 !== e.results.length) { e.results = this.sort(e.results); for (var n = 0; n < e.results.length; n++) { var s = e.results[n], s = this.option(s); t.push(s) } this.$results.append(t) } else 0 === this.$results.children().length && this.trigger("results:message", { message: "noResults" }) }, s.prototype.position = function(e, t) { t.find(".select2-results").append(e) }, s.prototype.sort = function(e) { return this.options.get("sorter")(e) }, s.prototype.highlightFirstItem = function() { var e = this.$results.find(".select2-results__option--selectable"), t = e.filter(".select2-results__option--selected"); (0 < t.length ? t : e).first().trigger("mouseenter"), this.ensureHighlightVisible() }, s.prototype.setClasses = function() { var t = this; this.data.current(function(e) { var s = e.map(function(e) { return e.id.toString() }); t.$results.find(".select2-results__option--selectable").each(function() { var e = d(this), t = p.GetData(this, "data"), n = "" + t.id; null != t.element && t.element.selected || null == t.element && -1 < s.indexOf(n) ? (this.classList.add("select2-results__option--selected"), e.attr("aria-selected", "true")) : (this.classList.remove("select2-results__option--selected"), e.attr("aria-selected", "false")) }) }) }, s.prototype.showLoading = function(e) { this.hideLoading(); e = { disabled: !0, loading: !0, text: this.options.get("translations").get("searching")(e) }, e = this.option(e); e.className += " loading-results", this.$results.prepend(e) }, s.prototype.hideLoading = function() { this.$results.find(".loading-results").remove() }, s.prototype.option = function(e) { var t = document.createElement("li"); t.classList.add("select2-results__option"), t.classList.add("select2-results__option--selectable"); var n, s = { role: "option" }, i = window.Element.prototype.matches || window.Element.prototype.msMatchesSelector || window.Element.prototype.webkitMatchesSelector; for (n in (null != e.element && i.call(e.element, ":disabled") || null == e.element && e.disabled) && (s["aria-disabled"] = "true", t.classList.remove("select2-results__option--selectable"), t.classList.add("select2-results__option--disabled")), null == e.id && t.classList.remove("select2-results__option--selectable"), null != e._resultId && (t.id = e._resultId), e.title && (t.title = e.title), e.children && (s.role = "group", s["aria-label"] = e.text, t.classList.remove("select2-results__option--selectable"), t.classList.add("select2-results__option--group")), s) { var r = s[n]; t.setAttribute(n, r) } if (e.children) { var o = d(t), a = document.createElement("strong"); a.className = "select2-results__group", this.template(e, a); for (var l = [], c = 0; c < e.children.length; c++) { var u = e.children[c], u = this.option(u); l.push(u) } i = d("<ul></ul>", { class: "select2-results__options select2-results__options--nested", role: "none" }); i.append(l), o.append(a), o.append(i) } else this.template(e, t); return p.StoreData(t, "data", e), t }, s.prototype.bind = function(t, e) { var i = this, n = t.id + "-results"; this.$results.attr("id", n), t.on("results:all", function(e) { i.clear(), i.append(e.data), t.isOpen() && (i.setClasses(), i.highlightFirstItem()) }), t.on("results:append", function(e) { i.append(e.data), t.isOpen() && i.setClasses() }), t.on("query", function(e) { i.hideMessages(), i.showLoading(e) }), t.on("select", function() { t.isOpen() && (i.setClasses(), i.options.get("scrollAfterSelect") && i.highlightFirstItem()) }), t.on("unselect", function() { t.isOpen() && (i.setClasses(), i.options.get("scrollAfterSelect") && i.highlightFirstItem()) }), t.on("open", function() { i.$results.attr("aria-expanded", "true"), i.$results.attr("aria-hidden", "false"), i.setClasses(), i.ensureHighlightVisible() }), t.on("close", function() { i.$results.attr("aria-expanded", "false"), i.$results.attr("aria-hidden", "true"), i.$results.removeAttr("aria-activedescendant") }), t.on("results:toggle", function() { var e = i.getHighlightedResults(); 0 !== e.length && e.trigger("mouseup") }), t.on("results:select", function() { var e, t = i.getHighlightedResults(); 0 !== t.length && (e = p.GetData(t[0], "data"), t.hasClass("select2-results__option--selected") ? i.trigger("close", {}) : i.trigger("select", { data: e })) }), t.on("results:previous", function() { var e, t = i.getHighlightedResults(), n = i.$results.find(".select2-results__option--selectable"), s = n.index(t); s <= 0 || (e = s - 1, 0 === t.length && (e = 0), (s = n.eq(e)).trigger("mouseenter"), t = i.$results.offset().top, n = s.offset().top, s = i.$results.scrollTop() + (n - t), 0 === e ? i.$results.scrollTop(0) : n - t < 0 && i.$results.scrollTop(s)) }), t.on("results:next", function() { var e, t = i.getHighlightedResults(), n = i.$results.find(".select2-results__option--selectable"), s = n.index(t) + 1; s >= n.length || ((e = n.eq(s)).trigger("mouseenter"), t = i.$results.offset().top + i.$results.outerHeight(!1), n = e.offset().top + e.outerHeight(!1), e = i.$results.scrollTop() + n - t, 0 === s ? i.$results.scrollTop(0) : t < n && i.$results.scrollTop(e)) }), t.on("results:focus", function(e) { e.element[0].classList.add("select2-results__option--highlighted"), e.element[0].setAttribute("aria-selected", "true") }), t.on("results:message", function(e) { i.displayMessage(e) }), d.fn.mousewheel && this.$results.on("mousewheel", function(e) { var t = i.$results.scrollTop(), n = i.$results.get(0).scrollHeight - t + e.deltaY, t = 0 < e.deltaY && t - e.deltaY <= 0, n = e.deltaY < 0 && n <= i.$results.height(); t ? (i.$results.scrollTop(0), e.preventDefault(), e.stopPropagation()) : n && (i.$results.scrollTop(i.$results.get(0).scrollHeight - i.$results.height()), e.preventDefault(), e.stopPropagation()) }), this.$results.on("mouseup", ".select2-results__option--selectable", function(e) { var t = d(this), n = p.GetData(this, "data"); t.hasClass("select2-results__option--selected") ? i.options.get("multiple") ? i.trigger("unselect", { originalEvent: e, data: n }) : i.trigger("close", {}) : i.trigger("select", { originalEvent: e, data: n }) }), this.$results.on("mouseenter", ".select2-results__option--selectable", function(e) { var t = p.GetData(this, "data"); i.getHighlightedResults().removeClass("select2-results__option--highlighted").attr("aria-selected", "false"), i.trigger("results:focus", { data: t, element: d(this) }) }) }, s.prototype.getHighlightedResults = function() { return this.$results.find(".select2-results__option--highlighted") }, s.prototype.destroy = function() { this.$results.remove() }, s.prototype.ensureHighlightVisible = function() { var e, t, n, s, i = this.getHighlightedResults(); 0 !== i.length && (e = this.$results.find(".select2-results__option--selectable").index(i), s = this.$results.offset().top, t = i.offset().top, n = this.$results.scrollTop() + (t - s), s = t - s, n -= 2 * i.outerHeight(!1), e <= 2 ? this.$results.scrollTop(0) : (s > this.$results.outerHeight() || s < 0) && this.$results.scrollTop(n)) }, s.prototype.template = function(e, t) { var n = this.options.get("templateResult"), s = this.options.get("escapeMarkup"), e = n(e, t); null == e ? t.style.display = "none" : "string" == typeof e ? t.innerHTML = s(e) : d(t).append(e) }, s }), u.define("select2/keys", [], function() { return { BACKSPACE: 8, TAB: 9, ENTER: 13, SHIFT: 16, CTRL: 17, ALT: 18, ESC: 27, SPACE: 32, PAGE_UP: 33, PAGE_DOWN: 34, END: 35, HOME: 36, LEFT: 37, UP: 38, RIGHT: 39, DOWN: 40, DELETE: 46 } }), u.define("select2/selection/base", ["jquery", "../utils", "../keys"], function(n, s, i) { function r(e, t) { this.$element = e, this.options = t, r.__super__.constructor.call(this) } return s.Extend(r, s.Observable), r.prototype.render = function() { var e = n('<span class="select2-selection" role="combobox" aria-haspopup="true" aria-expanded="false"></span>'); return this._tabindex = 0, null != s.GetData(this.$element[0], "old-tabindex") ? this._tabindex = s.GetData(this.$element[0], "old-tabindex") : null != this.$element.attr("tabindex") && (this._tabindex = this.$element.attr("tabindex")), e.attr("title", this.$element.attr("title")), e.attr("tabindex", this._tabindex), e.attr("aria-disabled", "false"), this.$selection = e }, r.prototype.bind = function(e, t) { var n = this, s = e.id + "-results"; this.container = e, this.$selection.on("focus", function(e) { n.trigger("focus", e) }), this.$selection.on("blur", function(e) { n._handleBlur(e) }), this.$selection.on("keydown", function(e) { n.trigger("keypress", e), e.which === i.SPACE && e.preventDefault() }), e.on("results:focus", function(e) { n.$selection.attr("aria-activedescendant", e.data._resultId) }), e.on("selection:update", function(e) { n.update(e.data) }), e.on("open", function() { n.$selection.attr("aria-expanded", "true"), n.$selection.attr("aria-owns", s), n._attachCloseHandler(e) }), e.on("close", function() { n.$selection.attr("aria-expanded", "false"), n.$selection.removeAttr("aria-activedescendant"), n.$selection.removeAttr("aria-owns"), n.$selection.trigger("focus"), n._detachCloseHandler(e) }), e.on("enable", function() { n.$selection.attr("tabindex", n._tabindex), n.$selection.attr("aria-disabled", "false") }), e.on("disable", function() { n.$selection.attr("tabindex", "-1"), n.$selection.attr("aria-disabled", "true") }) }, r.prototype._handleBlur = function(e) { var t = this; window.setTimeout(function() { document.activeElement == t.$selection[0] || n.contains(t.$selection[0], document.activeElement) || t.trigger("blur", e) }, 1) }, r.prototype._attachCloseHandler = function(e) { n(document.body).on("mousedown.select2." + e.id, function(e) { var t = n(e.target).closest(".select2"); n(".select2.select2-container--open").each(function() { this != t[0] && s.GetData(this, "element").select2("close") }) }) }, r.prototype._detachCloseHandler = function(e) { n(document.body).off("mousedown.select2." + e.id) }, r.prototype.position = function(e, t) { t.find(".selection").append(e) }, r.prototype.destroy = function() { this._detachCloseHandler(this.container) }, r.prototype.update = function(e) { throw new Error("The `update` method must be defined in child classes.") }, r.prototype.isEnabled = function() { return !this.isDisabled() }, r.prototype.isDisabled = function() { return this.options.get("disabled") }, r }), u.define("select2/selection/single", ["jquery", "./base", "../utils", "../keys"], function(e, t, n, s) { function i() { i.__super__.constructor.apply(this, arguments) } return n.Extend(i, t), i.prototype.render = function() { var e = i.__super__.render.call(this); return e[0].classList.add("select2-selection--single"), e.html('<span class="select2-selection__rendered"></span><span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span>'), e }, i.prototype.bind = function(t, e) { var n = this; i.__super__.bind.apply(this, arguments); var s = t.id + "-container"; this.$selection.find(".select2-selection__rendered").attr("id", s).attr("role", "textbox").attr("aria-readonly", "true"), this.$selection.attr("aria-labelledby", s), this.$selection.attr("aria-controls", s), this.$selection.on("mousedown", function(e) { 1 === e.which && n.trigger("toggle", { originalEvent: e }) }), this.$selection.on("focus", function(e) {}), this.$selection.on("blur", function(e) {}), t.on("focus", function(e) { t.isOpen() || n.$selection.trigger("focus") }) }, i.prototype.clear = function() { var e = this.$selection.find(".select2-selection__rendered"); e.empty(), e.removeAttr("title") }, i.prototype.display = function(e, t) { var n = this.options.get("templateSelection"); return this.options.get("escapeMarkup")(n(e, t)) }, i.prototype.selectionContainer = function() { return e("<span></span>") }, i.prototype.update = function(e) { var t, n; 0 !== e.length ? (n = e[0], t = this.$selection.find(".select2-selection__rendered"), e = this.display(n, t), t.empty().append(e), (n = n.title || n.text) ? t.attr("title", n) : t.removeAttr("title")) : this.clear() }, i }), u.define("select2/selection/multiple", ["jquery", "./base", "../utils"], function(i, e, c) { function r(e, t) { r.__super__.constructor.apply(this, arguments) } return c.Extend(r, e), r.prototype.render = function() { var e = r.__super__.render.call(this); return e[0].classList.add("select2-selection--multiple"), e.html('<ul class="select2-selection__rendered"></ul>'), e }, r.prototype.bind = function(e, t) { var n = this; r.__super__.bind.apply(this, arguments); var s = e.id + "-container"; this.$selection.find(".select2-selection__rendered").attr("id", s), this.$selection.on("click", function(e) { n.trigger("toggle", { originalEvent: e }) }), this.$selection.on("click", ".select2-selection__choice__remove", function(e) { var t; n.isDisabled() || (t = i(this).parent(), t = c.GetData(t[0], "data"), n.trigger("unselect", { originalEvent: e, data: t })) }), this.$selection.on("keydown", ".select2-selection__choice__remove", function(e) { n.isDisabled() || e.stopPropagation() }) }, r.prototype.clear = function() { var e = this.$selection.find(".select2-selection__rendered"); e.empty(), e.removeAttr("title") }, r.prototype.display = function(e, t) { var n = this.options.get("templateSelection"); return this.options.get("escapeMarkup")(n(e, t)) }, r.prototype.selectionContainer = function() { return i('<li class="select2-selection__choice"><button type="button" class="select2-selection__choice__remove" tabindex="-1"><span aria-hidden="true">×</span></button><span class="select2-selection__choice__display"></span></li>') }, r.prototype.update = function(e) { if (this.clear(), 0 !== e.length) { for (var t = [], n = this.$selection.find(".select2-selection__rendered").attr("id") + "-choice-", s = 0; s < e.length; s++) { var i = e[s], r = this.selectionContainer(), o = this.display(i, r), a = n + c.generateChars(4) + "-"; i.id ? a += i.id : a += c.generateChars(4), r.find(".select2-selection__choice__display").append(o).attr("id", a); var l = i.title || i.text; l && r.attr("title", l); o = this.options.get("translations").get("removeItem"), l = r.find(".select2-selection__choice__remove"); l.attr("title", o()), l.attr("aria-label", o()), l.attr("aria-describedby", a), c.StoreData(r[0], "data", i), t.push(r) } this.$selection.find(".select2-selection__rendered").append(t) } }, r }), u.define("select2/selection/placeholder", [], function() { function e(e, t, n) { this.placeholder = this.normalizePlaceholder(n.get("placeholder")), e.call(this, t, n) } return e.prototype.normalizePlaceholder = function(e, t) { return t = "string" == typeof t ? { id: "", text: t } : t }, e.prototype.createPlaceholder = function(e, t) { var n = this.selectionContainer(); n.html(this.display(t)), n[0].classList.add("select2-selection__placeholder"), n[0].classList.remove("select2-selection__choice"); t = t.title || t.text || n.text(); return this.$selection.find(".select2-selection__rendered").attr("title", t), n }, e.prototype.update = function(e, t) { var n = 1 == t.length && t[0].id != this.placeholder.id; if (1 < t.length || n) return e.call(this, t); this.clear(); t = this.createPlaceholder(this.placeholder); this.$selection.find(".select2-selection__rendered").append(t) }, e }), u.define("select2/selection/allowClear", ["jquery", "../keys", "../utils"], function(i, s, a) { function e() {} return e.prototype.bind = function(e, t, n) { var s = this; e.call(this, t, n), null == this.placeholder && this.options.get("debug") && window.console && console.error && console.error("Select2: The `allowClear` option should be used in combination with the `placeholder` option."), this.$selection.on("mousedown", ".select2-selection__clear", function(e) { s._handleClear(e) }), t.on("keypress", function(e) { s._handleKeyboardClear(e, t) }) }, e.prototype._handleClear = function(e, t) { if (!this.isDisabled()) { var n = this.$selection.find(".select2-selection__clear"); if (0 !== n.length) { t.stopPropagation(); var s = a.GetData(n[0], "data"), i = this.$element.val(); this.$element.val(this.placeholder.id); var r = { data: s }; if (this.trigger("clear", r), r.prevented) this.$element.val(i); else { for (var o = 0; o < s.length; o++) if (r = { data: s[o] }, this.trigger("unselect", r), r.prevented) return void this.$element.val(i); this.$element.trigger("input").trigger("change"), this.trigger("toggle", {}) } } } }, e.prototype._handleKeyboardClear = function(e, t, n) { n.isOpen() || t.which != s.DELETE && t.which != s.BACKSPACE || this._handleClear(t) }, e.prototype.update = function(e, t) { var n, s; e.call(this, t), this.$selection.find(".select2-selection__clear").remove(), this.$selection[0].classList.remove("select2-selection--clearable"), 0 < this.$selection.find(".select2-selection__placeholder").length || 0 === t.length || (n = this.$selection.find(".select2-selection__rendered").attr("id"), s = this.options.get("translations").get("removeAllItems"), (e = i('<button type="button" class="select2-selection__clear" tabindex="-1"><span aria-hidden="true">×</span></button>')).attr("title", s()), e.attr("aria-label", s()), e.attr("aria-describedby", n), a.StoreData(e[0], "data", t), this.$selection.prepend(e), this.$selection[0].classList.add("select2-selection--clearable")) }, e }), u.define("select2/selection/search", ["jquery", "../utils", "../keys"], function(s, a, l) { function e(e, t, n) { e.call(this, t, n) } return e.prototype.render = function(e) { var t = this.options.get("translations").get("search"), n = s('<span class="select2-search select2-search--inline"><textarea class="select2-search__field" type="search" tabindex="-1" autocorrect="off" autocapitalize="none" spellcheck="false" role="searchbox" aria-autocomplete="list" ></textarea></span>'); this.$searchContainer = n, this.$search = n.find("textarea"), this.$search.prop("autocomplete", this.options.get("autocomplete")), this.$search.attr("aria-label", t()); e = e.call(this); return this._transferTabIndex(), e.append(this.$searchContainer), e }, e.prototype.bind = function(e, t, n) { var s = this, i = t.id + "-results", r = t.id + "-container"; e.call(this, t, n), s.$search.attr("aria-describedby", r), t.on("open", function() { s.$search.attr("aria-controls", i), s.$search.trigger("focus") }), t.on("close", function() { s.$search.val(""), s.resizeSearch(), s.$search.removeAttr("aria-controls"), s.$search.removeAttr("aria-activedescendant"), s.$search.trigger("focus") }), t.on("enable", function() { s.$search.prop("disabled", !1), s._transferTabIndex() }), t.on("disable", function() { s.$search.prop("disabled", !0) }), t.on("focus", function(e) { s.$search.trigger("focus") }), t.on("results:focus", function(e) { e.data._resultId ? s.$search.attr("aria-activedescendant", e.data._resultId) : s.$search.removeAttr("aria-activedescendant") }), this.$selection.on("focusin", ".select2-search--inline", function(e) { s.trigger("focus", e) }), this.$selection.on("focusout", ".select2-search--inline", function(e) { s._handleBlur(e) }), this.$selection.on("keydown", ".select2-search--inline", function(e) { var t; e.stopPropagation(), s.trigger("keypress", e), s._keyUpPrevented = e.isDefaultPrevented(), e.which !== l.BACKSPACE || "" !== s.$search.val() || 0 < (t = s.$selection.find(".select2-selection__choice").last()).length && (t = a.GetData(t[0], "data"), s.searchRemoveChoice(t), e.preventDefault()) }), this.$selection.on("click", ".select2-search--inline", function(e) { s.$search.val() && e.stopPropagation() }); var t = document.documentMode, o = t && t <= 11; this.$selection.on("input.searchcheck", ".select2-search--inline", function(e) { o ? s.$selection.off("input.search input.searchcheck") : s.$selection.off("keyup.search") }), this.$selection.on("keyup.search input.search", ".select2-search--inline", function(e) { var t; o && "input" === e.type ? s.$selection.off("input.search input.searchcheck") : (t = e.which) != l.SHIFT && t != l.CTRL && t != l.ALT && t != l.TAB && s.handleSearch(e) }) }, e.prototype._transferTabIndex = function(e) { this.$search.attr("tabindex", this.$selection.attr("tabindex")), this.$selection.attr("tabindex", "-1") }, e.prototype.createPlaceholder = function(e, t) { this.$search.attr("placeholder", t.text) }, e.prototype.update = function(e, t) { var n = this.$search[0] == document.activeElement; this.$search.attr("placeholder", ""), e.call(this, t), this.resizeSearch(), n && this.$search.trigger("focus") }, e.prototype.handleSearch = function() { var e; this.resizeSearch(), this._keyUpPrevented || (e = this.$search.val(), this.trigger("query", { term: e })), this._keyUpPrevented = !1 }, e.prototype.searchRemoveChoice = function(e, t) { this.trigger("unselect", { data: t }), this.$search.val(t.text), this.handleSearch() }, e.prototype.resizeSearch = function() { this.$search.css("width", "25px"); var e = "100%"; "" === this.$search.attr("placeholder") && (e = .75 * (this.$search.val().length + 1) + "em"), this.$search.css("width", e) }, e }), u.define("select2/selection/selectionCss", ["../utils"], function(n) { function e() {} return e.prototype.render = function(e) { var t = e.call(this), e = this.options.get("selectionCssClass") || ""; return -1 !== e.indexOf(":all:") && (e = e.replace(":all:", ""), n.copyNonInternalCssClasses(t[0], this.$element[0])), t.addClass(e), t }, e }), u.define("select2/selection/eventRelay", ["jquery"], function(o) { function e() {} return e.prototype.bind = function(e, t, n) { var s = this, i = ["open", "opening", "close", "closing", "select", "selecting", "unselect", "unselecting", "clear", "clearing"], r = ["opening", "closing", "selecting", "unselecting", "clearing"]; e.call(this, t, n), t.on("*", function(e, t) { var n; - 1 !== i.indexOf(e) && (t = t || {}, n = o.Event("select2:" + e, { params: t }), s.$element.trigger(n), -1 !== r.indexOf(e) && (t.prevented = n.isDefaultPrevented())) }) }, e }), u.define("select2/translation", ["jquery", "require"], function(t, n) { function s(e) { this.dict = e || {} } return s.prototype.all = function() { return this.dict }, s.prototype.get = function(e) { return this.dict[e] }, s.prototype.extend = function(e) { this.dict = t.extend({}, e.all(), this.dict) }, s._cache = {}, s.loadPath = function(e) { var t; return e in s._cache || (t = n(e), s._cache[e] = t), new s(s._cache[e]) }, s }), u.define("select2/diacritics", [], function() { return { "Ⓐ": "A", "A": "A", "À": "A", "Á": "A", "Â": "A", "Ầ": "A", "Ấ": "A", "Ẫ": "A", "Ẩ": "A", "Ã": "A", "Ā": "A", "Ă": "A", "Ằ": "A", "Ắ": "A", "Ẵ": "A", "Ẳ": "A", "Ȧ": "A", "Ǡ": "A", "Ä": "A", "Ǟ": "A", "Ả": "A", "Å": "A", "Ǻ": "A", "Ǎ": "A", "Ȁ": "A", "Ȃ": "A", "Ạ": "A", "Ậ": "A", "Ặ": "A", "Ḁ": "A", "Ą": "A", "Ⱥ": "A", "Ɐ": "A", "Ꜳ": "AA", "Æ": "AE", "Ǽ": "AE", "Ǣ": "AE", "Ꜵ": "AO", "Ꜷ": "AU", "Ꜹ": "AV", "Ꜻ": "AV", "Ꜽ": "AY", "Ⓑ": "B", "B": "B", "Ḃ": "B", "Ḅ": "B", "Ḇ": "B", "Ƀ": "B", "Ƃ": "B", "Ɓ": "B", "Ⓒ": "C", "C": "C", "Ć": "C", "Ĉ": "C", "Ċ": "C", "Č": "C", "Ç": "C", "Ḉ": "C", "Ƈ": "C", "Ȼ": "C", "Ꜿ": "C", "Ⓓ": "D", "D": "D", "Ḋ": "D", "Ď": "D", "Ḍ": "D", "Ḑ": "D", "Ḓ": "D", "Ḏ": "D", "Đ": "D", "Ƌ": "D", "Ɗ": "D", "Ɖ": "D", "Ꝺ": "D", "DZ": "DZ", "DŽ": "DZ", "Dz": "Dz", "Dž": "Dz", "Ⓔ": "E", "E": "E", "È": "E", "É": "E", "Ê": "E", "Ề": "E", "Ế": "E", "Ễ": "E", "Ể": "E", "Ẽ": "E", "Ē": "E", "Ḕ": "E", "Ḗ": "E", "Ĕ": "E", "Ė": "E", "Ë": "E", "Ẻ": "E", "Ě": "E", "Ȅ": "E", "Ȇ": "E", "Ẹ": "E", "Ệ": "E", "Ȩ": "E", "Ḝ": "E", "Ę": "E", "Ḙ": "E", "Ḛ": "E", "Ɛ": "E", "Ǝ": "E", "Ⓕ": "F", "F": "F", "Ḟ": "F", "Ƒ": "F", "Ꝼ": "F", "Ⓖ": "G", "G": "G", "Ǵ": "G", "Ĝ": "G", "Ḡ": "G", "Ğ": "G", "Ġ": "G", "Ǧ": "G", "Ģ": "G", "Ǥ": "G", "Ɠ": "G", "Ꞡ": "G", "Ᵹ": "G", "Ꝿ": "G", "Ⓗ": "H", "H": "H", "Ĥ": "H", "Ḣ": "H", "Ḧ": "H", "Ȟ": "H", "Ḥ": "H", "Ḩ": "H", "Ḫ": "H", "Ħ": "H", "Ⱨ": "H", "Ⱶ": "H", "Ɥ": "H", "Ⓘ": "I", "I": "I", "Ì": "I", "Í": "I", "Î": "I", "Ĩ": "I", "Ī": "I", "Ĭ": "I", "İ": "I", "Ï": "I", "Ḯ": "I", "Ỉ": "I", "Ǐ": "I", "Ȉ": "I", "Ȋ": "I", "Ị": "I", "Į": "I", "Ḭ": "I", "Ɨ": "I", "Ⓙ": "J", "J": "J", "Ĵ": "J", "Ɉ": "J", "Ⓚ": "K", "K": "K", "Ḱ": "K", "Ǩ": "K", "Ḳ": "K", "Ķ": "K", "Ḵ": "K", "Ƙ": "K", "Ⱪ": "K", "Ꝁ": "K", "Ꝃ": "K", "Ꝅ": "K", "Ꞣ": "K", "Ⓛ": "L", "L": "L", "Ŀ": "L", "Ĺ": "L", "Ľ": "L", "Ḷ": "L", "Ḹ": "L", "Ļ": "L", "Ḽ": "L", "Ḻ": "L", "Ł": "L", "Ƚ": "L", "Ɫ": "L", "Ⱡ": "L", "Ꝉ": "L", "Ꝇ": "L", "Ꞁ": "L", "LJ": "LJ", "Lj": "Lj", "Ⓜ": "M", "M": "M", "Ḿ": "M", "Ṁ": "M", "Ṃ": "M", "Ɱ": "M", "Ɯ": "M", "Ⓝ": "N", "N": "N", "Ǹ": "N", "Ń": "N", "Ñ": "N", "Ṅ": "N", "Ň": "N", "Ṇ": "N", "Ņ": "N", "Ṋ": "N", "Ṉ": "N", "Ƞ": "N", "Ɲ": "N", "Ꞑ": "N", "Ꞥ": "N", "NJ": "NJ", "Nj": "Nj", "Ⓞ": "O", "O": "O", "Ò": "O", "Ó": "O", "Ô": "O", "Ồ": "O", "Ố": "O", "Ỗ": "O", "Ổ": "O", "Õ": "O", "Ṍ": "O", "Ȭ": "O", "Ṏ": "O", "Ō": "O", "Ṑ": "O", "Ṓ": "O", "Ŏ": "O", "Ȯ": "O", "Ȱ": "O", "Ö": "O", "Ȫ": "O", "Ỏ": "O", "Ő": "O", "Ǒ": "O", "Ȍ": "O", "Ȏ": "O", "Ơ": "O", "Ờ": "O", "Ớ": "O", "Ỡ": "O", "Ở": "O", "Ợ": "O", "Ọ": "O", "Ộ": "O", "Ǫ": "O", "Ǭ": "O", "Ø": "O", "Ǿ": "O", "Ɔ": "O", "Ɵ": "O", "Ꝋ": "O", "Ꝍ": "O", "Œ": "OE", "Ƣ": "OI", "Ꝏ": "OO", "Ȣ": "OU", "Ⓟ": "P", "P": "P", "Ṕ": "P", "Ṗ": "P", "Ƥ": "P", "Ᵽ": "P", "Ꝑ": "P", "Ꝓ": "P", "Ꝕ": "P", "Ⓠ": "Q", "Q": "Q", "Ꝗ": "Q", "Ꝙ": "Q", "Ɋ": "Q", "Ⓡ": "R", "R": "R", "Ŕ": "R", "Ṙ": "R", "Ř": "R", "Ȑ": "R", "Ȓ": "R", "Ṛ": "R", "Ṝ": "R", "Ŗ": "R", "Ṟ": "R", "Ɍ": "R", "Ɽ": "R", "Ꝛ": "R", "Ꞧ": "R", "Ꞃ": "R", "Ⓢ": "S", "S": "S", "ẞ": "S", "Ś": "S", "Ṥ": "S", "Ŝ": "S", "Ṡ": "S", "Š": "S", "Ṧ": "S", "Ṣ": "S", "Ṩ": "S", "Ș": "S", "Ş": "S", "Ȿ": "S", "Ꞩ": "S", "Ꞅ": "S", "Ⓣ": "T", "T": "T", "Ṫ": "T", "Ť": "T", "Ṭ": "T", "Ț": "T", "Ţ": "T", "Ṱ": "T", "Ṯ": "T", "Ŧ": "T", "Ƭ": "T", "Ʈ": "T", "Ⱦ": "T", "Ꞇ": "T", "Ꜩ": "TZ", "Ⓤ": "U", "U": "U", "Ù": "U", "Ú": "U", "Û": "U", "Ũ": "U", "Ṹ": "U", "Ū": "U", "Ṻ": "U", "Ŭ": "U", "Ü": "U", "Ǜ": "U", "Ǘ": "U", "Ǖ": "U", "Ǚ": "U", "Ủ": "U", "Ů": "U", "Ű": "U", "Ǔ": "U", "Ȕ": "U", "Ȗ": "U", "Ư": "U", "Ừ": "U", "Ứ": "U", "Ữ": "U", "Ử": "U", "Ự": "U", "Ụ": "U", "Ṳ": "U", "Ų": "U", "Ṷ": "U", "Ṵ": "U", "Ʉ": "U", "Ⓥ": "V", "V": "V", "Ṽ": "V", "Ṿ": "V", "Ʋ": "V", "Ꝟ": "V", "Ʌ": "V", "Ꝡ": "VY", "Ⓦ": "W", "W": "W", "Ẁ": "W", "Ẃ": "W", "Ŵ": "W", "Ẇ": "W", "Ẅ": "W", "Ẉ": "W", "Ⱳ": "W", "Ⓧ": "X", "X": "X", "Ẋ": "X", "Ẍ": "X", "Ⓨ": "Y", "Y": "Y", "Ỳ": "Y", "Ý": "Y", "Ŷ": "Y", "Ỹ": "Y", "Ȳ": "Y", "Ẏ": "Y", "Ÿ": "Y", "Ỷ": "Y", "Ỵ": "Y", "Ƴ": "Y", "Ɏ": "Y", "Ỿ": "Y", "Ⓩ": "Z", "Z": "Z", "Ź": "Z", "Ẑ": "Z", "Ż": "Z", "Ž": "Z", "Ẓ": "Z", "Ẕ": "Z", "Ƶ": "Z", "Ȥ": "Z", "Ɀ": "Z", "Ⱬ": "Z", "Ꝣ": "Z", "ⓐ": "a", "a": "a", "ẚ": "a", "à": "a", "á": "a", "â": "a", "ầ": "a", "ấ": "a", "ẫ": "a", "ẩ": "a", "ã": "a", "ā": "a", "ă": "a", "ằ": "a", "ắ": "a", "ẵ": "a", "ẳ": "a", "ȧ": "a", "ǡ": "a", "ä": "a", "ǟ": "a", "ả": "a", "å": "a", "ǻ": "a", "ǎ": "a", "ȁ": "a", "ȃ": "a", "ạ": "a", "ậ": "a", "ặ": "a", "ḁ": "a", "ą": "a", "ⱥ": "a", "ɐ": "a", "ꜳ": "aa", "æ": "ae", "ǽ": "ae", "ǣ": "ae", "ꜵ": "ao", "ꜷ": "au", "ꜹ": "av", "ꜻ": "av", "ꜽ": "ay", "ⓑ": "b", "b": "b", "ḃ": "b", "ḅ": "b", "ḇ": "b", "ƀ": "b", "ƃ": "b", "ɓ": "b", "ⓒ": "c", "c": "c", "ć": "c", "ĉ": "c", "ċ": "c", "č": "c", "ç": "c", "ḉ": "c", "ƈ": "c", "ȼ": "c", "ꜿ": "c", "ↄ": "c", "ⓓ": "d", "d": "d", "ḋ": "d", "ď": "d", "ḍ": "d", "ḑ": "d", "ḓ": "d", "ḏ": "d", "đ": "d", "ƌ": "d", "ɖ": "d", "ɗ": "d", "ꝺ": "d", "dz": "dz", "dž": "dz", "ⓔ": "e", "e": "e", "è": "e", "é": "e", "ê": "e", "ề": "e", "ế": "e", "ễ": "e", "ể": "e", "ẽ": "e", "ē": "e", "ḕ": "e", "ḗ": "e", "ĕ": "e", "ė": "e", "ë": "e", "ẻ": "e", "ě": "e", "ȅ": "e", "ȇ": "e", "ẹ": "e", "ệ": "e", "ȩ": "e", "ḝ": "e", "ę": "e", "ḙ": "e", "ḛ": "e", "ɇ": "e", "ɛ": "e", "ǝ": "e", "ⓕ": "f", "f": "f", "ḟ": "f", "ƒ": "f", "ꝼ": "f", "ⓖ": "g", "g": "g", "ǵ": "g", "ĝ": "g", "ḡ": "g", "ğ": "g", "ġ": "g", "ǧ": "g", "ģ": "g", "ǥ": "g", "ɠ": "g", "ꞡ": "g", "ᵹ": "g", "ꝿ": "g", "ⓗ": "h", "h": "h", "ĥ": "h", "ḣ": "h", "ḧ": "h", "ȟ": "h", "ḥ": "h", "ḩ": "h", "ḫ": "h", "ẖ": "h", "ħ": "h", "ⱨ": "h", "ⱶ": "h", "ɥ": "h", "ƕ": "hv", "ⓘ": "i", "i": "i", "ì": "i", "í": "i", "î": "i", "ĩ": "i", "ī": "i", "ĭ": "i", "ï": "i", "ḯ": "i", "ỉ": "i", "ǐ": "i", "ȉ": "i", "ȋ": "i", "ị": "i", "į": "i", "ḭ": "i", "ɨ": "i", "ı": "i", "ⓙ": "j", "j": "j", "ĵ": "j", "ǰ": "j", "ɉ": "j", "ⓚ": "k", "k": "k", "ḱ": "k", "ǩ": "k", "ḳ": "k", "ķ": "k", "ḵ": "k", "ƙ": "k", "ⱪ": "k", "ꝁ": "k", "ꝃ": "k", "ꝅ": "k", "ꞣ": "k", "ⓛ": "l", "l": "l", "ŀ": "l", "ĺ": "l", "ľ": "l", "ḷ": "l", "ḹ": "l", "ļ": "l", "ḽ": "l", "ḻ": "l", "ſ": "l", "ł": "l", "ƚ": "l", "ɫ": "l", "ⱡ": "l", "ꝉ": "l", "ꞁ": "l", "ꝇ": "l", "lj": "lj", "ⓜ": "m", "m": "m", "ḿ": "m", "ṁ": "m", "ṃ": "m", "ɱ": "m", "ɯ": "m", "ⓝ": "n", "n": "n", "ǹ": "n", "ń": "n", "ñ": "n", "ṅ": "n", "ň": "n", "ṇ": "n", "ņ": "n", "ṋ": "n", "ṉ": "n", "ƞ": "n", "ɲ": "n", "ʼn": "n", "ꞑ": "n", "ꞥ": "n", "nj": "nj", "ⓞ": "o", "o": "o", "ò": "o", "ó": "o", "ô": "o", "ồ": "o", "ố": "o", "ỗ": "o", "ổ": "o", "õ": "o", "ṍ": "o", "ȭ": "o", "ṏ": "o", "ō": "o", "ṑ": "o", "ṓ": "o", "ŏ": "o", "ȯ": "o", "ȱ": "o", "ö": "o", "ȫ": "o", "ỏ": "o", "ő": "o", "ǒ": "o", "ȍ": "o", "ȏ": "o", "ơ": "o", "ờ": "o", "ớ": "o", "ỡ": "o", "ở": "o", "ợ": "o", "ọ": "o", "ộ": "o", "ǫ": "o", "ǭ": "o", "ø": "o", "ǿ": "o", "ɔ": "o", "ꝋ": "o", "ꝍ": "o", "ɵ": "o", "œ": "oe", "ƣ": "oi", "ȣ": "ou", "ꝏ": "oo", "ⓟ": "p", "p": "p", "ṕ": "p", "ṗ": "p", "ƥ": "p", "ᵽ": "p", "ꝑ": "p", "ꝓ": "p", "ꝕ": "p", "ⓠ": "q", "q": "q", "ɋ": "q", "ꝗ": "q", "ꝙ": "q", "ⓡ": "r", "r": "r", "ŕ": "r", "ṙ": "r", "ř": "r", "ȑ": "r", "ȓ": "r", "ṛ": "r", "ṝ": "r", "ŗ": "r", "ṟ": "r", "ɍ": "r", "ɽ": "r", "ꝛ": "r", "ꞧ": "r", "ꞃ": "r", "ⓢ": "s", "s": "s", "ß": "s", "ś": "s", "ṥ": "s", "ŝ": "s", "ṡ": "s", "š": "s", "ṧ": "s", "ṣ": "s", "ṩ": "s", "ș": "s", "ş": "s", "ȿ": "s", "ꞩ": "s", "ꞅ": "s", "ẛ": "s", "ⓣ": "t", "t": "t", "ṫ": "t", "ẗ": "t", "ť": "t", "ṭ": "t", "ț": "t", "ţ": "t", "ṱ": "t", "ṯ": "t", "ŧ": "t", "ƭ": "t", "ʈ": "t", "ⱦ": "t", "ꞇ": "t", "ꜩ": "tz", "ⓤ": "u", "u": "u", "ù": "u", "ú": "u", "û": "u", "ũ": "u", "ṹ": "u", "ū": "u", "ṻ": "u", "ŭ": "u", "ü": "u", "ǜ": "u", "ǘ": "u", "ǖ": "u", "ǚ": "u", "ủ": "u", "ů": "u", "ű": "u", "ǔ": "u", "ȕ": "u", "ȗ": "u", "ư": "u", "ừ": "u", "ứ": "u", "ữ": "u", "ử": "u", "ự": "u", "ụ": "u", "ṳ": "u", "ų": "u", "ṷ": "u", "ṵ": "u", "ʉ": "u", "ⓥ": "v", "v": "v", "ṽ": "v", "ṿ": "v", "ʋ": "v", "ꝟ": "v", "ʌ": "v", "ꝡ": "vy", "ⓦ": "w", "w": "w", "ẁ": "w", "ẃ": "w", "ŵ": "w", "ẇ": "w", "ẅ": "w", "ẘ": "w", "ẉ": "w", "ⱳ": "w", "ⓧ": "x", "x": "x", "ẋ": "x", "ẍ": "x", "ⓨ": "y", "y": "y", "ỳ": "y", "ý": "y", "ŷ": "y", "ỹ": "y", "ȳ": "y", "ẏ": "y", "ÿ": "y", "ỷ": "y", "ẙ": "y", "ỵ": "y", "ƴ": "y", "ɏ": "y", "ỿ": "y", "ⓩ": "z", "z": "z", "ź": "z", "ẑ": "z", "ż": "z", "ž": "z", "ẓ": "z", "ẕ": "z", "ƶ": "z", "ȥ": "z", "ɀ": "z", "ⱬ": "z", "ꝣ": "z", "Ά": "Α", "Έ": "Ε", "Ή": "Η", "Ί": "Ι", "Ϊ": "Ι", "Ό": "Ο", "Ύ": "Υ", "Ϋ": "Υ", "Ώ": "Ω", "ά": "α", "έ": "ε", "ή": "η", "ί": "ι", "ϊ": "ι", "ΐ": "ι", "ό": "ο", "ύ": "υ", "ϋ": "υ", "ΰ": "υ", "ώ": "ω", "ς": "σ", "’": "'" } }), u.define("select2/data/base", ["../utils"], function(n) { function s(e, t) { s.__super__.constructor.call(this) } return n.Extend(s, n.Observable), s.prototype.current = function(e) { throw new Error("The `current` method must be defined in child classes.") }, s.prototype.query = function(e, t) { throw new Error("The `query` method must be defined in child classes.") }, s.prototype.bind = function(e, t) {}, s.prototype.destroy = function() {}, s.prototype.generateResultId = function(e, t) { e = e.id + "-result-"; return e += n.generateChars(4), null != t.id ? e += "-" + t.id.toString() : e += "-" + n.generateChars(4), e }, s }), u.define("select2/data/select", ["./base", "../utils", "jquery"], function(e, a, l) { function n(e, t) { this.$element = e, this.options = t, n.__super__.constructor.call(this) } return a.Extend(n, e), n.prototype.current = function(e) { var t = this; e(Array.prototype.map.call(this.$element[0].querySelectorAll(":checked"), function(e) { return t.item(l(e)) })) }, n.prototype.select = function(i) { var e, r = this; if (i.selected = !0, null != i.element && "option" === i.element.tagName.toLowerCase()) return i.element.selected = !0, void this.$element.trigger("input").trigger("change"); this.$element.prop("multiple") ? this.current(function(e) { var t = []; (i = [i]).push.apply(i, e); for (var n = 0; n < i.length; n++) { var s = i[n].id; - 1 === t.indexOf(s) && t.push(s) } r.$element.val(t), r.$element.trigger("input").trigger("change") }) : (e = i.id, this.$element.val(e), this.$element.trigger("input").trigger("change")) }, n.prototype.unselect = function(i) { var r = this; if (this.$element.prop("multiple")) { if (i.selected = !1, null != i.element && "option" === i.element.tagName.toLowerCase()) return i.element.selected = !1, void this.$element.trigger("input").trigger("change"); this.current(function(e) { for (var t = [], n = 0; n < e.length; n++) { var s = e[n].id; s !== i.id && -1 === t.indexOf(s) && t.push(s) } r.$element.val(t), r.$element.trigger("input").trigger("change") }) } }, n.prototype.bind = function(e, t) { var n = this; (this.container = e).on("select", function(e) { n.select(e.data) }), e.on("unselect", function(e) { n.unselect(e.data) }) }, n.prototype.destroy = function() { this.$element.find("*").each(function() { a.RemoveData(this) }) }, n.prototype.query = function(t, e) { var n = [], s = this; this.$element.children().each(function() { var e; "option" !== this.tagName.toLowerCase() && "optgroup" !== this.tagName.toLowerCase() || (e = l(this), e = s.item(e), null !== (e = s.matches(t, e)) && n.push(e)) }), e({ results: n }) }, n.prototype.addOptions = function(e) { this.$element.append(e) }, n.prototype.option = function(e) { var t; e.children ? (t = document.createElement("optgroup")).label = e.text : void 0 !== (t = document.createElement("option")).textContent ? t.textContent = e.text : t.innerText = e.text, void 0 !== e.id && (t.value = e.id), e.disabled && (t.disabled = !0), e.selected && (t.selected = !0), e.title && (t.title = e.title); e = this._normalizeItem(e); return e.element = t, a.StoreData(t, "data", e), l(t) }, n.prototype.item = function(e) { var t = {}; if (null != (t = a.GetData(e[0], "data"))) return t; var n = e[0]; if ("option" === n.tagName.toLowerCase()) t = { id: e.val(), text: e.text(), disabled: e.prop("disabled"), selected: e.prop("selected"), title: e.prop("title") }; else if ("optgroup" === n.tagName.toLowerCase()) { t = { text: e.prop("label"), children: [], title: e.prop("title") }; for (var s = e.children("option"), i = [], r = 0; r < s.length; r++) { var o = l(s[r]), o = this.item(o); i.push(o) } t.children = i } return (t = this._normalizeItem(t)).element = e[0], a.StoreData(e[0], "data", t), t }, n.prototype._normalizeItem = function(e) { e !== Object(e) && (e = { id: e, text: e }); return null != (e = l.extend({}, { text: "" }, e)).id && (e.id = e.id.toString()), null != e.text && (e.text = e.text.toString()), null == e._resultId && e.id && null != this.container && (e._resultId = this.generateResultId(this.container, e)), l.extend({}, { selected: !1, disabled: !1 }, e) }, n.prototype.matches = function(e, t) { return this.options.get("matcher")(e, t) }, n }), u.define("select2/data/array", ["./select", "../utils", "jquery"], function(e, t, c) { function s(e, t) { this._dataToConvert = t.get("data") || [], s.__super__.constructor.call(this, e, t) } return t.Extend(s, e), s.prototype.bind = function(e, t) { s.__super__.bind.call(this, e, t), this.addOptions(this.convertToOptions(this._dataToConvert)) }, s.prototype.select = function(n) { var e = this.$element.find("option").filter(function(e, t) { return t.value == n.id.toString() }); 0 === e.length && (e = this.option(n), this.addOptions(e)), s.__super__.select.call(this, n) }, s.prototype.convertToOptions = function(e) { var t = this, n = this.$element.find("option"), s = n.map(function() { return t.item(c(this)).id }).get(), i = []; for (var r = 0; r < e.length; r++) { var o, a, l = this._normalizeItem(e[r]); 0 <= s.indexOf(l.id) ? (o = n.filter(function(e) { return function() { return c(this).val() == e.id } }(l)), a = this.item(o), a = c.extend(!0, {}, l, a), a = this.option(a), o.replaceWith(a)) : (a = this.option(l), l.children && (l = this.convertToOptions(l.children), a.append(l)), i.push(a)) } return i }, s }), u.define("select2/data/ajax", ["./array", "../utils", "jquery"], function(e, t, r) { function n(e, t) { this.ajaxOptions = this._applyDefaults(t.get("ajax")), null != this.ajaxOptions.processResults && (this.processResults = this.ajaxOptions.processResults), n.__super__.constructor.call(this, e, t) } return t.Extend(n, e), n.prototype._applyDefaults = function(e) { var t = { data: function(e) { return r.extend({}, e, { q: e.term }) }, transport: function(e, t, n) { e = r.ajax(e); return e.then(t), e.fail(n), e } }; return r.extend({}, t, e, !0) }, n.prototype.processResults = function(e) { return e }, n.prototype.query = function(t, n) { var s = this; null != this._request && ("function" == typeof this._request.abort && this._request.abort(), this._request = null); var i = r.extend({ type: "GET" }, this.ajaxOptions); function e() { var e = i.transport(i, function(e) { e = s.processResults(e, t); s.options.get("debug") && window.console && console.error && (e && e.results && Array.isArray(e.results) || console.error("Select2: The AJAX results did not return an array in the `results` key of the response.")), n(e) }, function() { "status" in e && (0 === e.status || "0" === e.status) || s.trigger("results:message", { message: "errorLoading" }) }); s._request = e } "function" == typeof i.url && (i.url = i.url.call(this.$element, t)), "function" == typeof i.data && (i.data = i.data.call(this.$element, t)), this.ajaxOptions.delay && null != t.term ? (this._queryTimeout && window.clearTimeout(this._queryTimeout), this._queryTimeout = window.setTimeout(e, this.ajaxOptions.delay)) : e() }, n }), u.define("select2/data/tags", ["jquery"], function(t) { function e(e, t, n) { var s = n.get("tags"), i = n.get("createTag"); void 0 !== i && (this.createTag = i); i = n.get("insertTag"); if (void 0 !== i && (this.insertTag = i), e.call(this, t, n), Array.isArray(s)) for (var r = 0; r < s.length; r++) { var o = s[r], o = this._normalizeItem(o), o = this.option(o); this.$element.append(o) } } return e.prototype.query = function(e, c, u) { var d = this; this._removeOldTags(), null != c.term && null == c.page ? e.call(this, c, function e(t, n) { for (var s = t.results, i = 0; i < s.length; i++) { var r = s[i], o = null != r.children && !e({ results: r.children }, !0); if ((r.text || "").toUpperCase() === (c.term || "").toUpperCase() || o) return !n && (t.data = s, void u(t)) } if (n) return !0; var a, l = d.createTag(c); null != l && ((a = d.option(l)).attr("data-select2-tag", "true"), d.addOptions([a]), d.insertTag(s, l)), t.results = s, u(t) }) : e.call(this, c, u) }, e.prototype.createTag = function(e, t) { if (null == t.term) return null; t = t.term.trim(); return "" === t ? null : { id: t, text: t } }, e.prototype.insertTag = function(e, t, n) { t.unshift(n) }, e.prototype._removeOldTags = function(e) { this.$element.find("option[data-select2-tag]").each(function() { this.selected || t(this).remove() }) }, e }), u.define("select2/data/tokenizer", ["jquery"], function(c) { function e(e, t, n) { var s = n.get("tokenizer"); void 0 !== s && (this.tokenizer = s), e.call(this, t, n) } return e.prototype.bind = function(e, t, n) { e.call(this, t, n), this.$search = t.dropdown.$search || t.selection.$search || n.find(".select2-search__field") }, e.prototype.query = function(e, t, n) { var s = this; t.term = t.term || ""; var i = this.tokenizer(t, this.options, function(e) { var t, n = s._normalizeItem(e); s.$element.find("option").filter(function() { return c(this).val() === n.id }).length || ((t = s.option(n)).attr("data-select2-tag", !0), s._removeOldTags(), s.addOptions([t])), t = n, s.trigger("select", { data: t }) }); i.term !== t.term && (this.$search.length && (this.$search.val(i.term), this.$search.trigger("focus")), t.term = i.term), e.call(this, t, n) }, e.prototype.tokenizer = function(e, t, n, s) { for (var i = n.get("tokenSeparators") || [], r = t.term, o = 0, a = this.createTag || function(e) { return { id: e.term, text: e.term } }; o < r.length;) { var l = r[o]; - 1 !== i.indexOf(l) ? (l = r.substr(0, o), null != (l = a(c.extend({}, t, { term: l }))) ? (s(l), r = r.substr(o + 1) || "", o = 0) : o++) : o++ } return { term: r } }, e }), u.define("select2/data/minimumInputLength", [], function() { function e(e, t, n) { this.minimumInputLength = n.get("minimumInputLength"), e.call(this, t, n) } return e.prototype.query = function(e, t, n) { t.term = t.term || "", t.term.length < this.minimumInputLength ? this.trigger("results:message", { message: "inputTooShort", args: { minimum: this.minimumInputLength, input: t.term, params: t } }) : e.call(this, t, n) }, e }), u.define("select2/data/maximumInputLength", [], function() { function e(e, t, n) { this.maximumInputLength = n.get("maximumInputLength"), e.call(this, t, n) } return e.prototype.query = function(e, t, n) { t.term = t.term || "", 0 < this.maximumInputLength && t.term.length > this.maximumInputLength ? this.trigger("results:message", { message: "inputTooLong", args: { maximum: this.maximumInputLength, input: t.term, params: t } }) : e.call(this, t, n) }, e }), u.define("select2/data/maximumSelectionLength", [], function() { function e(e, t, n) { this.maximumSelectionLength = n.get("maximumSelectionLength"), e.call(this, t, n) } return e.prototype.bind = function(e, t, n) { var s = this; e.call(this, t, n), t.on("select", function() { s._checkIfMaximumSelected() }) }, e.prototype.query = function(e, t, n) { var s = this; this._checkIfMaximumSelected(function() { e.call(s, t, n) }) }, e.prototype._checkIfMaximumSelected = function(e, t) { var n = this; this.current(function(e) { e = null != e ? e.length : 0; 0 < n.maximumSelectionLength && e >= n.maximumSelectionLength ? n.trigger("results:message", { message: "maximumSelected", args: { maximum: n.maximumSelectionLength } }) : t && t() }) }, e }), u.define("select2/dropdown", ["jquery", "./utils"], function(t, e) { function n(e, t) { this.$element = e, this.options = t, n.__super__.constructor.call(this) } return e.Extend(n, e.Observable), n.prototype.render = function() { var e = t('<span class="select2-dropdown"><span class="select2-results"></span></span>'); return e.attr("dir", this.options.get("dir")), this.$dropdown = e }, n.prototype.bind = function() {}, n.prototype.position = function(e, t) {}, n.prototype.destroy = function() { this.$dropdown.remove() }, n }), u.define("select2/dropdown/search", ["jquery"], function(r) { function e() {} return e.prototype.render = function(e) { var t = e.call(this), n = this.options.get("translations").get("search"), e = r('<span class="select2-search select2-search--dropdown"><input class="select2-search__field" type="search" tabindex="-1" autocorrect="off" autocapitalize="none" spellcheck="false" role="searchbox" aria-autocomplete="list" /></span>'); return this.$searchContainer = e, this.$search = e.find("input"), this.$search.prop("autocomplete", this.options.get("autocomplete")), this.$search.attr("aria-label", n()), t.prepend(e), t }, e.prototype.bind = function(e, t, n) { var s = this, i = t.id + "-results"; e.call(this, t, n), this.$search.on("keydown", function(e) { s.trigger("keypress", e), s._keyUpPrevented = e.isDefaultPrevented() }), this.$search.on("input", function(e) { r(this).off("keyup") }), this.$search.on("keyup input", function(e) { s.handleSearch(e) }), t.on("open", function() { s.$search.attr("tabindex", 0), s.$search.attr("aria-controls", i), s.$search.trigger("focus"), window.setTimeout(function() { s.$search.trigger("focus") }, 0) }), t.on("close", function() { s.$search.attr("tabindex", -1), s.$search.removeAttr("aria-controls"), s.$search.removeAttr("aria-activedescendant"), s.$search.val(""), s.$search.trigger("blur") }), t.on("focus", function() { t.isOpen() || s.$search.trigger("focus") }), t.on("results:all", function(e) { null != e.query.term && "" !== e.query.term || (s.showSearch(e) ? s.$searchContainer[0].classList.remove("select2-search--hide") : s.$searchContainer[0].classList.add("select2-search--hide")) }), t.on("results:focus", function(e) { e.data._resultId ? s.$search.attr("aria-activedescendant", e.data._resultId) : s.$search.removeAttr("aria-activedescendant") }) }, e.prototype.handleSearch = function(e) { var t; this._keyUpPrevented || (t = this.$search.val(), this.trigger("query", { term: t })), this._keyUpPrevented = !1 }, e.prototype.showSearch = function(e, t) { return !0 }, e }), u.define("select2/dropdown/hidePlaceholder", [], function() { function e(e, t, n, s) { this.placeholder = this.normalizePlaceholder(n.get("placeholder")), e.call(this, t, n, s) } return e.prototype.append = function(e, t) { t.results = this.removePlaceholder(t.results), e.call(this, t) }, e.prototype.normalizePlaceholder = function(e, t) { return t = "string" == typeof t ? { id: "", text: t } : t }, e.prototype.removePlaceholder = function(e, t) { for (var n = t.slice(0), s = t.length - 1; 0 <= s; s--) { var i = t[s]; this.placeholder.id === i.id && n.splice(s, 1) } return n }, e }), u.define("select2/dropdown/infiniteScroll", ["jquery"], function(n) { function e(e, t, n, s) { this.lastParams = {}, e.call(this, t, n, s), this.$loadingMore = this.createLoadingMore(), this.loading = !1 } return e.prototype.append = function(e, t) { this.$loadingMore.remove(), this.loading = !1, e.call(this, t), this.showLoadingMore(t) && (this.$results.append(this.$loadingMore), this.loadMoreIfNeeded()) }, e.prototype.bind = function(e, t, n) { var s = this; e.call(this, t, n), t.on("query", function(e) { s.lastParams = e, s.loading = !0 }), t.on("query:append", function(e) { s.lastParams = e, s.loading = !0 }), this.$results.on("scroll", this.loadMoreIfNeeded.bind(this)) }, e.prototype.loadMoreIfNeeded = function() { var e = n.contains(document.documentElement, this.$loadingMore[0]); !this.loading && e && (e = this.$results.offset().top + this.$results.outerHeight(!1), this.$loadingMore.offset().top + this.$loadingMore.outerHeight(!1) <= e + 50 && this.loadMore()) }, e.prototype.loadMore = function() { this.loading = !0; var e = n.extend({}, { page: 1 }, this.lastParams); e.page++, this.trigger("query:append", e) }, e.prototype.showLoadingMore = function(e, t) { return t.pagination && t.pagination.more }, e.prototype.createLoadingMore = function() { var e = n('<li class="select2-results__option select2-results__option--load-more"role="option" aria-disabled="true"></li>'), t = this.options.get("translations").get("loadingMore"); return e.html(t(this.lastParams)), e }, e }), u.define("select2/dropdown/attachBody", ["jquery", "../utils"], function(u, o) { function e(e, t, n) { this.$dropdownParent = u(n.get("dropdownParent") || document.body), e.call(this, t, n) } return e.prototype.bind = function(e, t, n) { var s = this; e.call(this, t, n), t.on("open", function() { s._showDropdown(), s._attachPositioningHandler(t), s._bindContainerResultHandlers(t) }), t.on("close", function() { s._hideDropdown(), s._detachPositioningHandler(t) }), this.$dropdownContainer.on("mousedown", function(e) { e.stopPropagation() }) }, e.prototype.destroy = function(e) { e.call(this), this.$dropdownContainer.remove() }, e.prototype.position = function(e, t, n) { t.attr("class", n.attr("class")), t[0].classList.remove("select2"), t[0].classList.add("select2-container--open"), t.css({ position: "absolute", top: -999999 }), this.$container = n }, e.prototype.render = function(e) { var t = u("<span></span>"), e = e.call(this); return t.append(e), this.$dropdownContainer = t }, e.prototype._hideDropdown = function(e) { this.$dropdownContainer.detach() }, e.prototype._bindContainerResultHandlers = function(e, t) { var n; this._containerResultsHandlersBound || (n = this, t.on("results:all", function() { n._positionDropdown(), n._resizeDropdown() }), t.on("results:append", function() { n._positionDropdown(), n._resizeDropdown() }), t.on("results:message", function() { n._positionDropdown(), n._resizeDropdown() }), t.on("select", function() { n._positionDropdown(), n._resizeDropdown() }), t.on("unselect", function() { n._positionDropdown(), n._resizeDropdown() }), this._containerResultsHandlersBound = !0) }, e.prototype._attachPositioningHandler = function(e, t) { var n = this, s = "scroll.select2." + t.id, i = "resize.select2." + t.id, r = "orientationchange.select2." + t.id, t = this.$container.parents().filter(o.hasScroll); t.each(function() { o.StoreData(this, "select2-scroll-position", { x: u(this).scrollLeft(), y: u(this).scrollTop() }) }), t.on(s, function(e) { var t = o.GetData(this, "select2-scroll-position"); u(this).scrollTop(t.y) }), u(window).on(s + " " + i + " " + r, function(e) { n._positionDropdown(), n._resizeDropdown() }) }, e.prototype._detachPositioningHandler = function(e, t) { var n = "scroll.select2." + t.id, s = "resize.select2." + t.id, t = "orientationchange.select2." + t.id; this.$container.parents().filter(o.hasScroll).off(n), u(window).off(n + " " + s + " " + t) }, e.prototype._positionDropdown = function() { var e = u(window), t = this.$dropdown[0].classList.contains("select2-dropdown--above"), n = this.$dropdown[0].classList.contains("select2-dropdown--below"), s = null, i = this.$container.offset(); i.bottom = i.top + this.$container.outerHeight(!1); var r = { height: this.$container.outerHeight(!1) }; r.top = i.top, r.bottom = i.top + r.height; var o = this.$dropdown.outerHeight(!1), a = e.scrollTop(), l = e.scrollTop() + e.height(), c = a < i.top - o, e = l > i.bottom + o, a = { left: i.left, top: r.bottom }, l = this.$dropdownParent; "static" === l.css("position") && (l = l.offsetParent()); i = { top: 0, left: 0 }; (u.contains(document.body, l[0]) || l[0].isConnected) && (i = l.offset()), a.top -= i.top, a.left -= i.left, t || n || (s = "below"), e || !c || t ? !c && e && t && (s = "below") : s = "above", ("above" == s || t && "below" !== s) && (a.top = r.top - i.top - o), null != s && (this.$dropdown[0].classList.remove("select2-dropdown--below"), this.$dropdown[0].classList.remove("select2-dropdown--above"), this.$dropdown[0].classList.add("select2-dropdown--" + s), this.$container[0].classList.remove("select2-container--below"), this.$container[0].classList.remove("select2-container--above"), this.$container[0].classList.add("select2-container--" + s)), this.$dropdownContainer.css(a) }, e.prototype._resizeDropdown = function() { var e = { width: this.$container.outerWidth(!1) + "px" }; this.options.get("dropdownAutoWidth") && (e.minWidth = e.width, e.position = "relative", e.width = "auto"), this.$dropdown.css(e) }, e.prototype._showDropdown = function(e) { this.$dropdownContainer.appendTo(this.$dropdownParent), this._positionDropdown(), this._resizeDropdown() }, e }), u.define("select2/dropdown/minimumResultsForSearch", [], function() { function e(e, t, n, s) { this.minimumResultsForSearch = n.get("minimumResultsForSearch"), this.minimumResultsForSearch < 0 && (this.minimumResultsForSearch = 1 / 0), e.call(this, t, n, s) } return e.prototype.showSearch = function(e, t) { return !(function e(t) { for (var n = 0, s = 0; s < t.length; s++) { var i = t[s]; i.children ? n += e(i.children) : n++ } return n }(t.data.results) < this.minimumResultsForSearch) && e.call(this, t) }, e }), u.define("select2/dropdown/selectOnClose", ["../utils"], function(s) { function e() {} return e.prototype.bind = function(e, t, n) { var s = this; e.call(this, t, n), t.on("close", function(e) { s._handleSelectOnClose(e) }) }, e.prototype._handleSelectOnClose = function(e, t) { if (t && null != t.originalSelect2Event) { var n = t.originalSelect2Event; if ("select" === n._type || "unselect" === n._type) return } n = this.getHighlightedResults(); n.length < 1 || (null != (n = s.GetData(n[0], "data")).element && n.element.selected || null == n.element && n.selected || this.trigger("select", { data: n })) }, e }), u.define("select2/dropdown/closeOnSelect", [], function() { function e() {} return e.prototype.bind = function(e, t, n) { var s = this; e.call(this, t, n), t.on("select", function(e) { s._selectTriggered(e) }), t.on("unselect", function(e) { s._selectTriggered(e) }) }, e.prototype._selectTriggered = function(e, t) { var n = t.originalEvent; n && (n.ctrlKey || n.metaKey) || this.trigger("close", { originalEvent: n, originalSelect2Event: t }) }, e }), u.define("select2/dropdown/dropdownCss", ["../utils"], function(n) { function e() {} return e.prototype.render = function(e) { var t = e.call(this), e = this.options.get("dropdownCssClass") || ""; return -1 !== e.indexOf(":all:") && (e = e.replace(":all:", ""), n.copyNonInternalCssClasses(t[0], this.$element[0])), t.addClass(e), t }, e }), u.define("select2/dropdown/tagsSearchHighlight", ["../utils"], function(s) { function e() {} return e.prototype.highlightFirstItem = function(e) { var t = this.$results.find(".select2-results__option--selectable:not(.select2-results__option--selected)"); if (0 < t.length) { var n = t.first(), t = s.GetData(n[0], "data").element; if (t && t.getAttribute && "true" === t.getAttribute("data-select2-tag")) return void n.trigger("mouseenter") } e.call(this) }, e }), u.define("select2/i18n/en", [], function() { return { errorLoading: function() { return "The results could not be loaded." }, inputTooLong: function(e) { var t = e.input.length - e.maximum, e = "Please delete " + t + " character"; return 1 != t && (e += "s"), e }, inputTooShort: function(e) { return "Please enter " + (e.minimum - e.input.length) + " or more characters" }, loadingMore: function() { return "Loading more results…" }, maximumSelected: function(e) { var t = "You can only select " + e.maximum + " item"; return 1 != e.maximum && (t += "s"), t }, noResults: function() { return "No results found" }, searching: function() { return "Searching…" }, removeAllItems: function() { return "Remove all items" }, removeItem: function() { return "Remove item" }, search: function() { return "Search" } } }), u.define("select2/defaults", ["jquery", "./results", "./selection/single", "./selection/multiple", "./selection/placeholder", "./selection/allowClear", "./selection/search", "./selection/selectionCss", "./selection/eventRelay", "./utils", "./translation", "./diacritics", "./data/select", "./data/array", "./data/ajax", "./data/tags", "./data/tokenizer", "./data/minimumInputLength", "./data/maximumInputLength", "./data/maximumSelectionLength", "./dropdown", "./dropdown/search", "./dropdown/hidePlaceholder", "./dropdown/infiniteScroll", "./dropdown/attachBody", "./dropdown/minimumResultsForSearch", "./dropdown/selectOnClose", "./dropdown/closeOnSelect", "./dropdown/dropdownCss", "./dropdown/tagsSearchHighlight", "./i18n/en"], function(l, r, o, a, c, u, d, p, h, f, g, t, m, y, v, _, b, $, w, x, A, D, S, E, O, C, L, T, q, I, e) { function n() { this.reset() } return n.prototype.apply = function(e) { var t; null == (e = l.extend(!0, {}, this.defaults, e)).dataAdapter && (null != e.ajax ? e.dataAdapter = v : null != e.data ? e.dataAdapter = y : e.dataAdapter = m, 0 < e.minimumInputLength && (e.dataAdapter = f.Decorate(e.dataAdapter, $)), 0 < e.maximumInputLength && (e.dataAdapter = f.Decorate(e.dataAdapter, w)), 0 < e.maximumSelectionLength && (e.dataAdapter = f.Decorate(e.dataAdapter, x)), e.tags && (e.dataAdapter = f.Decorate(e.dataAdapter, _)), null == e.tokenSeparators && null == e.tokenizer || (e.dataAdapter = f.Decorate(e.dataAdapter, b))), null == e.resultsAdapter && (e.resultsAdapter = r, null != e.ajax && (e.resultsAdapter = f.Decorate(e.resultsAdapter, E)), null != e.placeholder && (e.resultsAdapter = f.Decorate(e.resultsAdapter, S)), e.selectOnClose && (e.resultsAdapter = f.Decorate(e.resultsAdapter, L)), e.tags && (e.resultsAdapter = f.Decorate(e.resultsAdapter, I))), null == e.dropdownAdapter && (e.multiple ? e.dropdownAdapter = A : (t = f.Decorate(A, D), e.dropdownAdapter = t), 0 !== e.minimumResultsForSearch && (e.dropdownAdapter = f.Decorate(e.dropdownAdapter, C)), e.closeOnSelect && (e.dropdownAdapter = f.Decorate(e.dropdownAdapter, T)), null != e.dropdownCssClass && (e.dropdownAdapter = f.Decorate(e.dropdownAdapter, q)), e.dropdownAdapter = f.Decorate(e.dropdownAdapter, O)), null == e.selectionAdapter && (e.multiple ? e.selectionAdapter = a : e.selectionAdapter = o, null != e.placeholder && (e.selectionAdapter = f.Decorate(e.selectionAdapter, c)), e.allowClear && (e.selectionAdapter = f.Decorate(e.selectionAdapter, u)), e.multiple && (e.selectionAdapter = f.Decorate(e.selectionAdapter, d)), null != e.selectionCssClass && (e.selectionAdapter = f.Decorate(e.selectionAdapter, p)), e.selectionAdapter = f.Decorate(e.selectionAdapter, h)), e.language = this._resolveLanguage(e.language), e.language.push("en"); for (var n = [], s = 0; s < e.language.length; s++) { var i = e.language[s]; - 1 === n.indexOf(i) && n.push(i) } return e.language = n, e.translations = this._processTranslations(e.language, e.debug), e }, n.prototype.reset = function() { function a(e) { return e.replace(/[^\u0000-\u007E]/g, function(e) { return t[e] || e }) } this.defaults = { amdLanguageBase: "./i18n/", autocomplete: "off", closeOnSelect: !0, debug: !1, dropdownAutoWidth: !1, escapeMarkup: f.escapeMarkup, language: {}, matcher: function e(t, n) { if (null == t.term || "" === t.term.trim()) return n; if (n.children && 0 < n.children.length) { for (var s = l.extend(!0, {}, n), i = n.children.length - 1; 0 <= i; i--) null == e(t, n.children[i]) && s.children.splice(i, 1); return 0 < s.children.length ? s : e(t, s) } var r = a(n.text).toUpperCase(), o = a(t.term).toUpperCase(); return -1 < r.indexOf(o) ? n : null }, minimumInputLength: 0, maximumInputLength: 0, maximumSelectionLength: 0, minimumResultsForSearch: 0, selectOnClose: !1, scrollAfterSelect: !1, sorter: function(e) { return e }, templateResult: function(e) { return e.text }, templateSelection: function(e) { return e.text }, theme: "default", width: "resolve" } }, n.prototype.applyFromElement = function(e, t) { var n = e.language, s = this.defaults.language, i = t.prop("lang"), t = t.closest("[lang]").prop("lang"), t = Array.prototype.concat.call(this._resolveLanguage(i), this._resolveLanguage(n), this._resolveLanguage(s), this._resolveLanguage(t)); return e.language = t, e }, n.prototype._resolveLanguage = function(e) { if (!e) return []; if (l.isEmptyObject(e)) return []; if (l.isPlainObject(e)) return [e]; for (var t, n = Array.isArray(e) ? e : [e], s = [], i = 0; i < n.length; i++) s.push(n[i]), "string" == typeof n[i] && 0 < n[i].indexOf("-") && (t = n[i].split("-")[0], s.push(t)); return s }, n.prototype._processTranslations = function(e, t) { for (var n = new g, s = 0; s < e.length; s++) { var i = new g, r = e[s]; if ("string" == typeof r) try { i = g.loadPath(r) } catch (e) { try { r = this.defaults.amdLanguageBase + r, i = g.loadPath(r) } catch (e) { t && window.console && console.warn && console.warn('Select2: The language file for "' + r + '" could not be automatically loaded. A fallback will be used instead.') } } else i = l.isPlainObject(r) ? new g(r) : r; n.extend(i) } return n }, n.prototype.set = function(e, t) { var n = {}; n[l.camelCase(e)] = t; n = f._convertData(n); l.extend(!0, this.defaults, n) }, new n }), u.define("select2/options", ["jquery", "./defaults", "./utils"], function(c, n, u) { function e(e, t) { this.options = e, null != t && this.fromElement(t), null != t && (this.options = n.applyFromElement(this.options, t)), this.options = n.apply(this.options) } return e.prototype.fromElement = function(e) { var t = ["select2"]; null == this.options.multiple && (this.options.multiple = e.prop("multiple")), null == this.options.disabled && (this.options.disabled = e.prop("disabled")), null == this.options.autocomplete && e.prop("autocomplete") && (this.options.autocomplete = e.prop("autocomplete")), null == this.options.dir && (e.prop("dir") ? this.options.dir = e.prop("dir") : e.closest("[dir]").prop("dir") ? this.options.dir = e.closest("[dir]").prop("dir") : this.options.dir = "ltr"), e.prop("disabled", this.options.disabled), e.prop("multiple", this.options.multiple), u.GetData(e[0], "select2Tags") && (this.options.debug && window.console && console.warn && console.warn('Select2: The `data-select2-tags` attribute has been changed to use the `data-data` and `data-tags="true"` attributes and will be removed in future versions of Select2.'), u.StoreData(e[0], "data", u.GetData(e[0], "select2Tags")), u.StoreData(e[0], "tags", !0)), u.GetData(e[0], "ajaxUrl") && (this.options.debug && window.console && console.warn && console.warn("Select2: The `data-ajax-url` attribute has been changed to `data-ajax--url` and support for the old attribute will be removed in future versions of Select2."), e.attr("ajax--url", u.GetData(e[0], "ajaxUrl")), u.StoreData(e[0], "ajax-Url", u.GetData(e[0], "ajaxUrl"))); var n = {}; function s(e, t) { return t.toUpperCase() } for (var i = 0; i < e[0].attributes.length; i++) { var r = e[0].attributes[i].name, o = "data-"; r.substr(0, o.length) == o && (r = r.substring(o.length), o = u.GetData(e[0], r), n[r.replace(/-([a-z])/g, s)] = o) } c.fn.jquery && "1." == c.fn.jquery.substr(0, 2) && e[0].dataset && (n = c.extend(!0, {}, e[0].dataset, n)); var a, l = c.extend(!0, {}, u.GetData(e[0]), n); for (a in l = u._convertData(l)) - 1 < t.indexOf(a) || (c.isPlainObject(this.options[a]) ? c.extend(this.options[a], l[a]) : this.options[a] = l[a]); return this }, e.prototype.get = function(e) { return this.options[e] }, e.prototype.set = function(e, t) { this.options[e] = t }, e }), u.define("select2/core", ["jquery", "./options", "./utils", "./keys"], function(t, i, r, s) { var o = function(e, t) { null != r.GetData(e[0], "select2") && r.GetData(e[0], "select2").destroy(), this.$element = e, this.id = this._generateId(e), t = t || {}, this.options = new i(t, e), o.__super__.constructor.call(this); var n = e.attr("tabindex") || 0; r.StoreData(e[0], "old-tabindex", n), e.attr("tabindex", "-1"); t = this.options.get("dataAdapter"); this.dataAdapter = new t(e, this.options); n = this.render(); this._placeContainer(n); t = this.options.get("selectionAdapter"); this.selection = new t(e, this.options), this.$selection = this.selection.render(), this.selection.position(this.$selection, n); t = this.options.get("dropdownAdapter"); this.dropdown = new t(e, this.options), this.$dropdown = this.dropdown.render(), this.dropdown.position(this.$dropdown, n); n = this.options.get("resultsAdapter"); this.results = new n(e, this.options, this.dataAdapter), this.$results = this.results.render(), this.results.position(this.$results, this.$dropdown); var s = this; this._bindAdapters(), this._registerDomEvents(), this._registerDataEvents(), this._registerSelectionEvents(), this._registerDropdownEvents(), this._registerResultsEvents(), this._registerEvents(), this.dataAdapter.current(function(e) { s.trigger("selection:update", { data: e }) }), e[0].classList.add("select2-hidden-accessible"), e.attr("aria-hidden", "true"), this._syncAttributes(), r.StoreData(e[0], "select2", this), e.data("select2", this) }; return r.Extend(o, r.Observable), o.prototype._generateId = function(e) { return "select2-" + (null != e.attr("id") ? e.attr("id") : null != e.attr("name") ? e.attr("name") + "-" + r.generateChars(2) : r.generateChars(4)).replace(/(:|\.|\[|\]|,)/g, "") }, o.prototype._placeContainer = function(e) { e.insertAfter(this.$element); var t = this._resolveWidth(this.$element, this.options.get("width")); null != t && e.css("width", t) }, o.prototype._resolveWidth = function(e, t) { var n = /^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i; if ("resolve" == t) { var s = this._resolveWidth(e, "style"); return null != s ? s : this._resolveWidth(e, "element") } if ("element" == t) { s = e.outerWidth(!1); return s <= 0 ? "auto" : s + "px" } if ("style" != t) return "computedstyle" != t ? t : window.getComputedStyle(e[0]).width; e = e.attr("style"); if ("string" != typeof e) return null; for (var i = e.split(";"), r = 0, o = i.length; r < o; r += 1) { var a = i[r].replace(/\s/g, "").match(n); if (null !== a && 1 <= a.length) return a[1] } return null }, o.prototype._bindAdapters = function() { this.dataAdapter.bind(this, this.$container), this.selection.bind(this, this.$container), this.dropdown.bind(this, this.$container), this.results.bind(this, this.$container) }, o.prototype._registerDomEvents = function() { var t = this; this.$element.on("change.select2", function() { t.dataAdapter.current(function(e) { t.trigger("selection:update", { data: e }) }) }), this.$element.on("focus.select2", function(e) { t.trigger("focus", e) }), this._syncA = r.bind(this._syncAttributes, this), this._syncS = r.bind(this._syncSubtree, this), this._observer = new window.MutationObserver(function(e) { t._syncA(), t._syncS(e) }), this._observer.observe(this.$element[0], { attributes: !0, childList: !0, subtree: !1 }) }, o.prototype._registerDataEvents = function() { var n = this; this.dataAdapter.on("*", function(e, t) { n.trigger(e, t) }) }, o.prototype._registerSelectionEvents = function() { var n = this, s = ["toggle", "focus"]; this.selection.on("toggle", function() { n.toggleDropdown() }), this.selection.on("focus", function(e) { n.focus(e) }), this.selection.on("*", function(e, t) { -1 === s.indexOf(e) && n.trigger(e, t) }) }, o.prototype._registerDropdownEvents = function() { var n = this; this.dropdown.on("*", function(e, t) { n.trigger(e, t) }) }, o.prototype._registerResultsEvents = function() { var n = this; this.results.on("*", function(e, t) { n.trigger(e, t) }) }, o.prototype._registerEvents = function() { var n = this; this.on("open", function() { n.$container[0].classList.add("select2-container--open") }), this.on("close", function() { n.$container[0].classList.remove("select2-container--open") }), this.on("enable", function() { n.$container[0].classList.remove("select2-container--disabled") }), this.on("disable", function() { n.$container[0].classList.add("select2-container--disabled") }), this.on("blur", function() { n.$container[0].classList.remove("select2-container--focus") }), this.on("query", function(t) { n.isOpen() || n.trigger("open", {}), this.dataAdapter.query(t, function(e) { n.trigger("results:all", { data: e, query: t }) }) }), this.on("query:append", function(t) { this.dataAdapter.query(t, function(e) { n.trigger("results:append", { data: e, query: t }) }) }), this.on("keypress", function(e) { var t = e.which; n.isOpen() ? t === s.ESC || t === s.UP && e.altKey ? (n.close(e), e.preventDefault()) : t === s.ENTER || t === s.TAB ? (n.trigger("results:select", {}), e.preventDefault()) : t === s.SPACE && e.ctrlKey ? (n.trigger("results:toggle", {}), e.preventDefault()) : t === s.UP ? (n.trigger("results:previous", {}), e.preventDefault()) : t === s.DOWN && (n.trigger("results:next", {}), e.preventDefault()) : (t === s.ENTER || t === s.SPACE || t === s.DOWN && e.altKey) && (n.open(), e.preventDefault()) }) }, o.prototype._syncAttributes = function() { this.options.set("disabled", this.$element.prop("disabled")), this.isDisabled() ? (this.isOpen() && this.close(), this.trigger("disable", {})) : this.trigger("enable", {}) }, o.prototype._isChangeMutation = function(e) { var t = this; if (e.addedNodes && 0 < e.addedNodes.length) { for (var n = 0; n < e.addedNodes.length; n++) if (e.addedNodes[n].selected) return !0 } else { if (e.removedNodes && 0 < e.removedNodes.length) return !0; if (Array.isArray(e)) return e.some(function(e) { return t._isChangeMutation(e) }) } return !1 }, o.prototype._syncSubtree = function(e) { var e = this._isChangeMutation(e), t = this; e && this.dataAdapter.current(function(e) { t.trigger("selection:update", { data: e }) }) }, o.prototype.trigger = function(e, t) { var n = o.__super__.trigger, s = { open: "opening", close: "closing", select: "selecting", unselect: "unselecting", clear: "clearing" }; if (void 0 === t && (t = {}), e in s) { var i = s[e], s = { prevented: !1, name: e, args: t }; if (n.call(this, i, s), s.prevented) return void(t.prevented = !0) } n.call(this, e, t) }, o.prototype.toggleDropdown = function() { this.isDisabled() || (this.isOpen() ? this.close() : this.open()) }, o.prototype.open = function() { this.isOpen() || this.isDisabled() || this.trigger("query", {}) }, o.prototype.close = function(e) { this.isOpen() && this.trigger("close", { originalEvent: e }) }, o.prototype.isEnabled = function() { return !this.isDisabled() }, o.prototype.isDisabled = function() { return this.options.get("disabled") }, o.prototype.isOpen = function() { return this.$container[0].classList.contains("select2-container--open") }, o.prototype.hasFocus = function() { return this.$container[0].classList.contains("select2-container--focus") }, o.prototype.focus = function(e) { this.hasFocus() || (this.$container[0].classList.add("select2-container--focus"), this.trigger("focus", {})) }, o.prototype.enable = function(e) { this.options.get("debug") && window.console && console.warn && console.warn('Select2: The `select2("enable")` method has been deprecated and will be removed in later Select2 versions. Use $element.prop("disabled") instead.'); e = !(e = null == e || 0 === e.length ? [!0] : e)[0]; this.$element.prop("disabled", e) }, o.prototype.data = function() { this.options.get("debug") && 0 < arguments.length && window.console && console.warn && console.warn('Select2: Data can no longer be set using `select2("data")`. You should consider setting the value instead using `$element.val()`.'); var t = []; return this.dataAdapter.current(function(e) { t = e }), t }, o.prototype.val = function(e) { if (this.options.get("debug") && window.console && console.warn && console.warn('Select2: The `select2("val")` method has been deprecated and will be removed in later Select2 versions. Use $element.val() instead.'), null == e || 0 === e.length) return this.$element.val(); e = e[0]; Array.isArray(e) && (e = e.map(function(e) { return e.toString() })), this.$element.val(e).trigger("input").trigger("change") }, o.prototype.destroy = function() { r.RemoveData(this.$container[0]), this.$container.remove(), this._observer.disconnect(), this._observer = null, this._syncA = null, this._syncS = null, this.$element.off(".select2"), this.$element.attr("tabindex", r.GetData(this.$element[0], "old-tabindex")), this.$element[0].classList.remove("select2-hidden-accessible"), this.$element.attr("aria-hidden", "false"), r.RemoveData(this.$element[0]), this.$element.removeData("select2"), this.dataAdapter.destroy(), this.selection.destroy(), this.dropdown.destroy(), this.results.destroy(), this.dataAdapter = null, this.selection = null, this.dropdown = null, this.results = null }, o.prototype.render = function() { var e = t('<span class="select2 select2-container"><span class="selection"></span><span class="dropdown-wrapper" aria-hidden="true"></span></span>'); return e.attr("dir", this.options.get("dir")), this.$container = e, this.$container[0].classList.add("select2-container--" + this.options.get("theme")), r.StoreData(e[0], "element", this.$element), e }, o }), u.define("jquery-mousewheel", ["jquery"], function(e) { return e }), u.define("jquery.select2", ["jquery", "jquery-mousewheel", "./select2/core", "./select2/defaults", "./select2/utils"], function(i, e, r, t, o) { var a; return null == i.fn.select2 && (a = ["open", "close", "destroy"], i.fn.select2 = function(t) { if ("object" == typeof(t = t || {})) return this.each(function() { var e = i.extend(!0, {}, t); new r(i(this), e) }), this; if ("string" != typeof t) throw new Error("Invalid arguments for Select2: " + t); var n, s = Array.prototype.slice.call(arguments, 1); return this.each(function() { var e = o.GetData(this, "select2"); null == e && window.console && console.error && console.error("The select2('" + t + "') method was called on an element that is not using Select2."), n = e[t].apply(e, s) }), -1 < a.indexOf(t) ? this : n }), null == i.fn.select2.defaults && (i.fn.select2.defaults = t), r }), { define: u.define, require: u.require }); function b(e, t) { return i.call(e, t) } function l(e, t) { var n, s, i, r, o, a, l, c, u, d, p = t && t.split("/"), h = y.map, f = h && h["*"] || {}; if (e) { for (t = (e = e.split("/")).length - 1, y.nodeIdCompat && _.test(e[t]) && (e[t] = e[t].replace(_, "")), "." === e[0].charAt(0) && p && (e = p.slice(0, p.length - 1).concat(e)), c = 0; c < e.length; c++) "." === (d = e[c]) ? (e.splice(c, 1), --c) : ".." === d && (0 === c || 1 === c && ".." === e[2] || ".." === e[c - 1] || 0 < c && (e.splice(c - 1, 2), c -= 2)); e = e.join("/") } if ((p || f) && h) { for (c = (n = e.split("/")).length; 0 < c; --c) { if (s = n.slice(0, c).join("/"), p) for (u = p.length; 0 < u; --u) if (i = h[p.slice(0, u).join("/")], i = i && i[s]) { r = i, o = c; break } if (r) break; !a && f && f[s] && (a = f[s], l = c) }!r && a && (r = a, o = l), r && (n.splice(0, o, r), e = n.join("/")) } return e } function w(t, n) { return function() { var e = a.call(arguments, 0); return "string" != typeof e[0] && 1 === e.length && e.push(null), o.apply(p, e.concat([t, n])) } } function x(e) { var t; if (b(m, e) && (t = m[e], delete m[e], v[e] = !0, r.apply(p, t)), !b(g, e) && !b(v, e)) throw new Error("No " + e); return g[e] } function c(e) { var t, n = e ? e.indexOf("!") : -1; return -1 < n && (t = e.substring(0, n), e = e.substring(n + 1, e.length)), [t, e] } function A(e) { return e ? c(e) : [] } var u = s.require("jquery.select2"); return t.fn.select2.amd = s, u }); //! moment.js //! version : 2.18.1 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors //! license : MIT //! momentjs.com ! function(a, b) { "object" == typeof exports && "undefined" != typeof module ? module.exports = b() : "function" == typeof define && define.amd ? define(b) : a.moment = b() }(this, function() { "use strict"; function a() { return sd.apply(null, arguments) } function b(a) { sd = a } function c(a) { return a instanceof Array || "[object Array]" === Object.prototype.toString.call(a) } function d(a) { return null != a && "[object Object]" === Object.prototype.toString.call(a) } function e(a) { var b; for (b in a) return !1; return !0 } function f(a) { return void 0 === a } function g(a) { return "number" == typeof a || "[object Number]" === Object.prototype.toString.call(a) } function h(a) { return a instanceof Date || "[object Date]" === Object.prototype.toString.call(a) } function i(a, b) { var c, d = []; for (c = 0; c < a.length; ++c) d.push(b(a[c], c)); return d } function j(a, b) { return Object.prototype.hasOwnProperty.call(a, b) } function k(a, b) { for (var c in b) j(b, c) && (a[c] = b[c]); return j(b, "toString") && (a.toString = b.toString), j(b, "valueOf") && (a.valueOf = b.valueOf), a } function l(a, b, c, d) { return sb(a, b, c, d, !0).utc() } function m() { return { empty: !1, unusedTokens: [], unusedInput: [], overflow: -2, charsLeftOver: 0, nullInput: !1, invalidMonth: null, invalidFormat: !1, userInvalidated: !1, iso: !1, parsedDateParts: [], meridiem: null, rfc2822: !1, weekdayMismatch: !1 } } function n(a) { return null == a._pf && (a._pf = m()), a._pf } function o(a) { if (null == a._isValid) { var b = n(a), c = ud.call(b.parsedDateParts, function(a) { return null != a }), d = !isNaN(a._d.getTime()) && b.overflow < 0 && !b.empty && !b.invalidMonth && !b.invalidWeekday && !b.nullInput && !b.invalidFormat && !b.userInvalidated && (!b.meridiem || b.meridiem && c); if (a._strict && (d = d && 0 === b.charsLeftOver && 0 === b.unusedTokens.length && void 0 === b.bigHour), null != Object.isFrozen && Object.isFrozen(a)) return d; a._isValid = d } return a._isValid } function p(a) { var b = l(NaN); return null != a ? k(n(b), a) : n(b).userInvalidated = !0, b } function q(a, b) { var c, d, e; if (f(b._isAMomentObject) || (a._isAMomentObject = b._isAMomentObject), f(b._i) || (a._i = b._i), f(b._f) || (a._f = b._f), f(b._l) || (a._l = b._l), f(b._strict) || (a._strict = b._strict), f(b._tzm) || (a._tzm = b._tzm), f(b._isUTC) || (a._isUTC = b._isUTC), f(b._offset) || (a._offset = b._offset), f(b._pf) || (a._pf = n(b)), f(b._locale) || (a._locale = b._locale), vd.length > 0) for (c = 0; c < vd.length; c++) d = vd[c], e = b[d], f(e) || (a[d] = e); return a } function r(b) { q(this, b), this._d = new Date(null != b._d ? b._d.getTime() : NaN), this.isValid() || (this._d = new Date(NaN)), wd === !1 && (wd = !0, a.updateOffset(this), wd = !1) } function s(a) { return a instanceof r || null != a && null != a._isAMomentObject } function t(a) { return a < 0 ? Math.ceil(a) || 0 : Math.floor(a) } function u(a) { var b = +a, c = 0; return 0 !== b && isFinite(b) && (c = t(b)), c } function v(a, b, c) { var d, e = Math.min(a.length, b.length), f = Math.abs(a.length - b.length), g = 0; for (d = 0; d < e; d++)(c && a[d] !== b[d] || !c && u(a[d]) !== u(b[d])) && g++; return g + f } function w(b) { a.suppressDeprecationWarnings === !1 && "undefined" != typeof console && console.warn && console.warn("Deprecation warning: " + b) } function x(b, c) { var d = !0; return k(function() { if (null != a.deprecationHandler && a.deprecationHandler(null, b), d) { for (var e, f = [], g = 0; g < arguments.length; g++) { if (e = "", "object" == typeof arguments[g]) { e += "\n[" + g + "] "; for (var h in arguments[0]) e += h + ": " + arguments[0][h] + ", "; e = e.slice(0, -2) } else e = arguments[g]; f.push(e) } w(b + "\nArguments: " + Array.prototype.slice.call(f).join("") + "\n" + (new Error).stack), d = !1 } return c.apply(this, arguments) }, c) } function y(b, c) { null != a.deprecationHandler && a.deprecationHandler(b, c), xd[b] || (w(c), xd[b] = !0) } function z(a) { return a instanceof Function || "[object Function]" === Object.prototype.toString.call(a) } function A(a) { var b, c; for (c in a) b = a[c], z(b) ? this[c] = b : this["_" + c] = b; this._config = a, this._dayOfMonthOrdinalParseLenient = new RegExp((this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) + "|" + /\d{1,2}/.source) } function B(a, b) { var c, e = k({}, a); for (c in b) j(b, c) && (d(a[c]) && d(b[c]) ? (e[c] = {}, k(e[c], a[c]), k(e[c], b[c])) : null != b[c] ? e[c] = b[c] : delete e[c]); for (c in a) j(a, c) && !j(b, c) && d(a[c]) && (e[c] = k({}, e[c])); return e } function C(a) { null != a && this.set(a) } function D(a, b, c) { var d = this._calendar[a] || this._calendar.sameElse; return z(d) ? d.call(b, c) : d } function E(a) { var b = this._longDateFormat[a], c = this._longDateFormat[a.toUpperCase()]; return b || !c ? b : (this._longDateFormat[a] = c.replace(/MMMM|MM|DD|dddd/g, function(a) { return a.slice(1) }), this._longDateFormat[a]) } function F() { return this._invalidDate } function G(a) { return this._ordinal.replace("%d", a) } function H(a, b, c, d) { var e = this._relativeTime[c]; return z(e) ? e(a, b, c, d) : e.replace(/%d/i, a) } function I(a, b) { var c = this._relativeTime[a > 0 ? "future" : "past"]; return z(c) ? c(b) : c.replace(/%s/i, b) } function J(a, b) { var c = a.toLowerCase(); Hd[c] = Hd[c + "s"] = Hd[b] = a } function K(a) { return "string" == typeof a ? Hd[a] || Hd[a.toLowerCase()] : void 0 } function L(a) { var b, c, d = {}; for (c in a) j(a, c) && (b = K(c), b && (d[b] = a[c])); return d } function M(a, b) { Id[a] = b } function N(a) { var b = []; for (var c in a) b.push({ unit: c, priority: Id[c] }); return b.sort(function(a, b) { return a.priority - b.priority }), b } function O(b, c) { return function(d) { return null != d ? (Q(this, b, d), a.updateOffset(this, c), this) : P(this, b) } } function P(a, b) { return a.isValid() ? a._d["get" + (a._isUTC ? "UTC" : "") + b]() : NaN } function Q(a, b, c) { a.isValid() && a._d["set" + (a._isUTC ? "UTC" : "") + b](c) } function R(a) { return a = K(a), z(this[a]) ? this[a]() : this } function S(a, b) { if ("object" == typeof a) { a = L(a); for (var c = N(a), d = 0; d < c.length; d++) this[c[d].unit](a[c[d].unit]) } else if (a = K(a), z(this[a])) return this[a](b); return this } function T(a, b, c) { var d = "" + Math.abs(a), e = b - d.length, f = a >= 0; return (f ? c ? "+" : "" : "-") + Math.pow(10, Math.max(0, e)).toString().substr(1) + d } function U(a, b, c, d) { var e = d; "string" == typeof d && (e = function() { return this[d]() }), a && (Md[a] = e), b && (Md[b[0]] = function() { return T(e.apply(this, arguments), b[1], b[2]) }), c && (Md[c] = function() { return this.localeData().ordinal(e.apply(this, arguments), a) }) } function V(a) { return a.match(/\[[\s\S]/) ? a.replace(/^\[|\]$/g, "") : a.replace(/\\/g, "") } function W(a) { var b, c, d = a.match(Jd); for (b = 0, c = d.length; b < c; b++) Md[d[b]] ? d[b] = Md[d[b]] : d[b] = V(d[b]); return function(b) { var e, f = ""; for (e = 0; e < c; e++) f += z(d[e]) ? d[e].call(b, a) : d[e]; return f } } function X(a, b) { return a.isValid() ? (b = Y(b, a.localeData()), Ld[b] = Ld[b] || W(b), Ld[b](a)) : a.localeData().invalidDate() } function Y(a, b) { function c(a) { return b.longDateFormat(a) || a } var d = 5; for (Kd.lastIndex = 0; d >= 0 && Kd.test(a);) a = a.replace(Kd, c), Kd.lastIndex = 0, d -= 1; return a } function Z(a, b, c) { ce[a] = z(b) ? b : function(a, d) { return a && c ? c : b } } function $(a, b) { return j(ce, a) ? ce[a](b._strict, b._locale) : new RegExp(_(a)) } function _(a) { return aa(a.replace("\\", "").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function(a, b, c, d, e) { return b || c || d || e })) } function aa(a) { return a.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&") } function ba(a, b) { var c, d = b; for ("string" == typeof a && (a = [a]), g(b) && (d = function(a, c) { c[b] = u(a) }), c = 0; c < a.length; c++) de[a[c]] = d } function ca(a, b) { ba(a, function(a, c, d, e) { d._w = d._w || {}, b(a, d._w, d, e) }) } function da(a, b, c) { null != b && j(de, a) && de[a](b, c._a, c, a) } function ea(a, b) { return new Date(Date.UTC(a, b + 1, 0)).getUTCDate() } function fa(a, b) { return a ? c(this._months) ? this._months[a.month()] : this._months[(this._months.isFormat || oe).test(b) ? "format" : "standalone"][a.month()] : c(this._months) ? this._months : this._months.standalone } function ga(a, b) { return a ? c(this._monthsShort) ? this._monthsShort[a.month()] : this._monthsShort[oe.test(b) ? "format" : "standalone"][a.month()] : c(this._monthsShort) ? this._monthsShort : this._monthsShort.standalone } function ha(a, b, c) { var d, e, f, g = a.toLocaleLowerCase(); if (!this._monthsParse) for (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = [], d = 0; d < 12; ++d) f = l([2e3, d]), this._shortMonthsParse[d] = this.monthsShort(f, "").toLocaleLowerCase(), this._longMonthsParse[d] = this.months(f, "").toLocaleLowerCase(); return c ? "MMM" === b ? (e = ne.call(this._shortMonthsParse, g), e !== -1 ? e : null) : (e = ne.call(this._longMonthsParse, g), e !== -1 ? e : null) : "MMM" === b ? (e = ne.call(this._shortMonthsParse, g), e !== -1 ? e : (e = ne.call(this._longMonthsParse, g), e !== -1 ? e : null)) : (e = ne.call(this._longMonthsParse, g), e !== -1 ? e : (e = ne.call(this._shortMonthsParse, g), e !== -1 ? e : null)) } function ia(a, b, c) { var d, e, f; if (this._monthsParseExact) return ha.call(this, a, b, c); for (this._monthsParse || (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = []), d = 0; d < 12; d++) { if (e = l([2e3, d]), c && !this._longMonthsParse[d] && (this._longMonthsParse[d] = new RegExp("^" + this.months(e, "").replace(".", "") + "$", "i"), this._shortMonthsParse[d] = new RegExp("^" + this.monthsShort(e, "").replace(".", "") + "$", "i")), c || this._monthsParse[d] || (f = "^" + this.months(e, "") + "|^" + this.monthsShort(e, ""), this._monthsParse[d] = new RegExp(f.replace(".", ""), "i")), c && "MMMM" === b && this._longMonthsParse[d].test(a)) return d; if (c && "MMM" === b && this._shortMonthsParse[d].test(a)) return d; if (!c && this._monthsParse[d].test(a)) return d } } function ja(a, b) { var c; if (!a.isValid()) return a; if ("string" == typeof b) if (/^\d+$/.test(b)) b = u(b); else if (b = a.localeData().monthsParse(b), !g(b)) return a; return c = Math.min(a.date(), ea(a.year(), b)), a._d["set" + (a._isUTC ? "UTC" : "") + "Month"](b, c), a } function ka(b) { return null != b ? (ja(this, b), a.updateOffset(this, !0), this) : P(this, "Month") } function la() { return ea(this.year(), this.month()) } function ma(a) { return this._monthsParseExact ? (j(this, "_monthsRegex") || oa.call(this), a ? this._monthsShortStrictRegex : this._monthsShortRegex) : (j(this, "_monthsShortRegex") || (this._monthsShortRegex = re), this._monthsShortStrictRegex && a ? this._monthsShortStrictRegex : this._monthsShortRegex) } function na(a) { return this._monthsParseExact ? (j(this, "_monthsRegex") || oa.call(this), a ? this._monthsStrictRegex : this._monthsRegex) : (j(this, "_monthsRegex") || (this._monthsRegex = se), this._monthsStrictRegex && a ? this._monthsStrictRegex : this._monthsRegex) } function oa() { function a(a, b) { return b.length - a.length } var b, c, d = [], e = [], f = []; for (b = 0; b < 12; b++) c = l([2e3, b]), d.push(this.monthsShort(c, "")), e.push(this.months(c, "")), f.push(this.months(c, "")), f.push(this.monthsShort(c, "")); for (d.sort(a), e.sort(a), f.sort(a), b = 0; b < 12; b++) d[b] = aa(d[b]), e[b] = aa(e[b]); for (b = 0; b < 24; b++) f[b] = aa(f[b]); this._monthsRegex = new RegExp("^(" + f.join("|") + ")", "i"), this._monthsShortRegex = this._monthsRegex, this._monthsStrictRegex = new RegExp("^(" + e.join("|") + ")", "i"), this._monthsShortStrictRegex = new RegExp("^(" + d.join("|") + ")", "i") } function pa(a) { return qa(a) ? 366 : 365 } function qa(a) { return a % 4 === 0 && a % 100 !== 0 || a % 400 === 0 } function ra() { return qa(this.year()) } function sa(a, b, c, d, e, f, g) { var h = new Date(a, b, c, d, e, f, g); return a < 100 && a >= 0 && isFinite(h.getFullYear()) && h.setFullYear(a), h } function ta(a) { var b = new Date(Date.UTC.apply(null, arguments)); return a < 100 && a >= 0 && isFinite(b.getUTCFullYear()) && b.setUTCFullYear(a), b } function ua(a, b, c) { var d = 7 + b - c, e = (7 + ta(a, 0, d).getUTCDay() - b) % 7; return -e + d - 1 } function va(a, b, c, d, e) { var f, g, h = (7 + c - d) % 7, i = ua(a, d, e), j = 1 + 7 * (b - 1) + h + i; return j <= 0 ? (f = a - 1, g = pa(f) + j) : j > pa(a) ? (f = a + 1, g = j - pa(a)) : (f = a, g = j), { year: f, dayOfYear: g } } function wa(a, b, c) { var d, e, f = ua(a.year(), b, c), g = Math.floor((a.dayOfYear() - f - 1) / 7) + 1; return g < 1 ? (e = a.year() - 1, d = g + xa(e, b, c)) : g > xa(a.year(), b, c) ? (d = g - xa(a.year(), b, c), e = a.year() + 1) : (e = a.year(), d = g), { week: d, year: e } } function xa(a, b, c) { var d = ua(a, b, c), e = ua(a + 1, b, c); return (pa(a) - d + e) / 7 } function ya(a) { return wa(a, this._week.dow, this._week.doy).week } function za() { return this._week.dow } function Aa() { return this._week.doy } function Ba(a) { var b = this.localeData().week(this); return null == a ? b : this.add(7 * (a - b), "d") } function Ca(a) { var b = wa(this, 1, 4).week; return null == a ? b : this.add(7 * (a - b), "d") } function Da(a, b) { return "string" != typeof a ? a : isNaN(a) ? (a = b.weekdaysParse(a), "number" == typeof a ? a : null) : parseInt(a, 10) } function Ea(a, b) { return "string" == typeof a ? b.weekdaysParse(a) % 7 || 7 : isNaN(a) ? null : a } function Fa(a, b) { return a ? c(this._weekdays) ? this._weekdays[a.day()] : this._weekdays[this._weekdays.isFormat.test(b) ? "format" : "standalone"][a.day()] : c(this._weekdays) ? this._weekdays : this._weekdays.standalone } function Ga(a) { return a ? this._weekdaysShort[a.day()] : this._weekdaysShort } function Ha(a) { return a ? this._weekdaysMin[a.day()] : this._weekdaysMin } function Ia(a, b, c) { var d, e, f, g = a.toLocaleLowerCase(); if (!this._weekdaysParse) for (this._weekdaysParse = [], this._shortWeekdaysParse = [], this._minWeekdaysParse = [], d = 0; d < 7; ++d) f = l([2e3, 1]).day(d), this._minWeekdaysParse[d] = this.weekdaysMin(f, "").toLocaleLowerCase(), this._shortWeekdaysParse[d] = this.weekdaysShort(f, "").toLocaleLowerCase(), this._weekdaysParse[d] = this.weekdays(f, "").toLocaleLowerCase(); return c ? "dddd" === b ? (e = ne.call(this._weekdaysParse, g), e !== -1 ? e : null) : "ddd" === b ? (e = ne.call(this._shortWeekdaysParse, g), e !== -1 ? e : null) : (e = ne.call(this._minWeekdaysParse, g), e !== -1 ? e : null) : "dddd" === b ? (e = ne.call(this._weekdaysParse, g), e !== -1 ? e : (e = ne.call(this._shortWeekdaysParse, g), e !== -1 ? e : (e = ne.call(this._minWeekdaysParse, g), e !== -1 ? e : null))) : "ddd" === b ? (e = ne.call(this._shortWeekdaysParse, g), e !== -1 ? e : (e = ne.call(this._weekdaysParse, g), e !== -1 ? e : (e = ne.call(this._minWeekdaysParse, g), e !== -1 ? e : null))) : (e = ne.call(this._minWeekdaysParse, g), e !== -1 ? e : (e = ne.call(this._weekdaysParse, g), e !== -1 ? e : (e = ne.call(this._shortWeekdaysParse, g), e !== -1 ? e : null))) } function Ja(a, b, c) { var d, e, f; if (this._weekdaysParseExact) return Ia.call(this, a, b, c); for (this._weekdaysParse || (this._weekdaysParse = [], this._minWeekdaysParse = [], this._shortWeekdaysParse = [], this._fullWeekdaysParse = []), d = 0; d < 7; d++) { if (e = l([2e3, 1]).day(d), c && !this._fullWeekdaysParse[d] && (this._fullWeekdaysParse[d] = new RegExp("^" + this.weekdays(e, "").replace(".", ".?") + "$", "i"), this._shortWeekdaysParse[d] = new RegExp("^" + this.weekdaysShort(e, "").replace(".", ".?") + "$", "i"), this._minWeekdaysParse[d] = new RegExp("^" + this.weekdaysMin(e, "").replace(".", ".?") + "$", "i")), this._weekdaysParse[d] || (f = "^" + this.weekdays(e, "") + "|^" + this.weekdaysShort(e, "") + "|^" + this.weekdaysMin(e, ""), this._weekdaysParse[d] = new RegExp(f.replace(".", ""), "i")), c && "dddd" === b && this._fullWeekdaysParse[d].test(a)) return d; if (c && "ddd" === b && this._shortWeekdaysParse[d].test(a)) return d; if (c && "dd" === b && this._minWeekdaysParse[d].test(a)) return d; if (!c && this._weekdaysParse[d].test(a)) return d } } function Ka(a) { if (!this.isValid()) return null != a ? this : NaN; var b = this._isUTC ? this._d.getUTCDay() : this._d.getDay(); return null != a ? (a = Da(a, this.localeData()), this.add(a - b, "d")) : b } function La(a) { if (!this.isValid()) return null != a ? this : NaN; var b = (this.day() + 7 - this.localeData()._week.dow) % 7; return null == a ? b : this.add(a - b, "d") } function Ma(a) { if (!this.isValid()) return null != a ? this : NaN; if (null != a) { var b = Ea(a, this.localeData()); return this.day(this.day() % 7 ? b : b - 7) } return this.day() || 7 } function Na(a) { return this._weekdaysParseExact ? (j(this, "_weekdaysRegex") || Qa.call(this), a ? this._weekdaysStrictRegex : this._weekdaysRegex) : (j(this, "_weekdaysRegex") || (this._weekdaysRegex = ye), this._weekdaysStrictRegex && a ? this._weekdaysStrictRegex : this._weekdaysRegex) } function Oa(a) { return this._weekdaysParseExact ? (j(this, "_weekdaysRegex") || Qa.call(this), a ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex) : (j(this, "_weekdaysShortRegex") || (this._weekdaysShortRegex = ze), this._weekdaysShortStrictRegex && a ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex) } function Pa(a) { return this._weekdaysParseExact ? (j(this, "_weekdaysRegex") || Qa.call(this), a ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex) : (j(this, "_weekdaysMinRegex") || (this._weekdaysMinRegex = Ae), this._weekdaysMinStrictRegex && a ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex) } function Qa() { function a(a, b) { return b.length - a.length } var b, c, d, e, f, g = [], h = [], i = [], j = []; for (b = 0; b < 7; b++) c = l([2e3, 1]).day(b), d = this.weekdaysMin(c, ""), e = this.weekdaysShort(c, ""), f = this.weekdays(c, ""), g.push(d), h.push(e), i.push(f), j.push(d), j.push(e), j.push(f); for (g.sort(a), h.sort(a), i.sort(a), j.sort(a), b = 0; b < 7; b++) h[b] = aa(h[b]), i[b] = aa(i[b]), j[b] = aa(j[b]); this._weekdaysRegex = new RegExp("^(" + j.join("|") + ")", "i"), this._weekdaysShortRegex = this._weekdaysRegex, this._weekdaysMinRegex = this._weekdaysRegex, this._weekdaysStrictRegex = new RegExp("^(" + i.join("|") + ")", "i"), this._weekdaysShortStrictRegex = new RegExp("^(" + h.join("|") + ")", "i"), this._weekdaysMinStrictRegex = new RegExp("^(" + g.join("|") + ")", "i") } function Ra() { return this.hours() % 12 || 12 } function Sa() { return this.hours() || 24 } function Ta(a, b) { U(a, 0, 0, function() { return this.localeData().meridiem(this.hours(), this.minutes(), b) }) } function Ua(a, b) { return b._meridiemParse } function Va(a) { return "p" === (a + "").toLowerCase().charAt(0) } function Wa(a, b, c) { return a > 11 ? c ? "pm" : "PM" : c ? "am" : "AM" } function Xa(a) { return a ? a.toLowerCase().replace("_", "-") : a } function Ya(a) { for (var b, c, d, e, f = 0; f < a.length;) { for (e = Xa(a[f]).split("-"), b = e.length, c = Xa(a[f + 1]), c = c ? c.split("-") : null; b > 0;) { if (d = Za(e.slice(0, b).join("-"))) return d; if (c && c.length >= b && v(e, c, !0) >= b - 1) break; b-- } f++ } return null } function Za(a) { var b = null; if (!Fe[a] && "undefined" != typeof module && module && module.exports) try { b = Be._abbr, require("./locale/" + a), $a(b) } catch (a) {} return Fe[a] } function $a(a, b) { var c; return a && (c = f(b) ? bb(a) : _a(a, b), c && (Be = c)), Be._abbr } function _a(a, b) { if (null !== b) { var c = Ee; if (b.abbr = a, null != Fe[a]) y("defineLocaleOverride", "use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."), c = Fe[a]._config; else if (null != b.parentLocale) { if (null == Fe[b.parentLocale]) return Ge[b.parentLocale] || (Ge[b.parentLocale] = []), Ge[b.parentLocale].push({ name: a, config: b }), null; c = Fe[b.parentLocale]._config } return Fe[a] = new C(B(c, b)), Ge[a] && Ge[a].forEach(function(a) { _a(a.name, a.config) }), $a(a), Fe[a] } return delete Fe[a], null } function ab(a, b) { if (null != b) { var c, d = Ee; null != Fe[a] && (d = Fe[a]._config), b = B(d, b), c = new C(b), c.parentLocale = Fe[a], Fe[a] = c, $a(a) } else null != Fe[a] && (null != Fe[a].parentLocale ? Fe[a] = Fe[a].parentLocale : null != Fe[a] && delete Fe[a]); return Fe[a] } function bb(a) { var b; if (a && a._locale && a._locale._abbr && (a = a._locale._abbr), !a) return Be; if (!c(a)) { if (b = Za(a)) return b; a = [a] } return Ya(a) } function cb() { return Ad(Fe) } function db(a) { var b, c = a._a; return c && n(a).overflow === -2 && (b = c[fe] < 0 || c[fe] > 11 ? fe : c[ge] < 1 || c[ge] > ea(c[ee], c[fe]) ? ge : c[he] < 0 || c[he] > 24 || 24 === c[he] && (0 !== c[ie] || 0 !== c[je] || 0 !== c[ke]) ? he : c[ie] < 0 || c[ie] > 59 ? ie : c[je] < 0 || c[je] > 59 ? je : c[ke] < 0 || c[ke] > 999 ? ke : -1, n(a)._overflowDayOfYear && (b < ee || b > ge) && (b = ge), n(a)._overflowWeeks && b === -1 && (b = le), n(a)._overflowWeekday && b === -1 && (b = me), n(a).overflow = b), a } function eb(a) { var b, c, d, e, f, g, h = a._i, i = He.exec(h) || Ie.exec(h); if (i) { for (n(a).iso = !0, b = 0, c = Ke.length; b < c; b++) if (Ke[b][1].exec(i[1])) { e = Ke[b][0], d = Ke[b][2] !== !1; break } if (null == e) return void(a._isValid = !1); if (i[3]) { for (b = 0, c = Le.length; b < c; b++) if (Le[b][1].exec(i[3])) { f = (i[2] || " ") + Le[b][0]; break } if (null == f) return void(a._isValid = !1) } if (!d && null != f) return void(a._isValid = !1); if (i[4]) { if (!Je.exec(i[4])) return void(a._isValid = !1); g = "Z" } a._f = e + (f || "") + (g || ""), lb(a) } else a._isValid = !1 } function fb(a) { var b, c, d, e, f, g, h, i, j = { " GMT": " +0000", " EDT": " -0400", " EST": " -0500", " CDT": " -0500", " CST": " -0600", " MDT": " -0600", " MST": " -0700", " PDT": " -0700", " PST": " -0800" }, k = "YXWVUTSRQPONZABCDEFGHIKLM"; if (b = a._i.replace(/\([^\)]*\)|[\n\t]/g, " ").replace(/(\s\s+)/g, " ").replace(/^\s|\s$/g, ""), c = Ne.exec(b)) { if (d = c[1] ? "ddd" + (5 === c[1].length ? ", " : " ") : "", e = "D MMM " + (c[2].length > 10 ? "YYYY " : "YY "), f = "HH:mm" + (c[4] ? ":ss" : ""), c[1]) { var l = new Date(c[2]), m = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"][l.getDay()]; if (c[1].substr(0, 3) !== m) return n(a).weekdayMismatch = !0, void(a._isValid = !1) } switch (c[5].length) { case 2: 0 === i ? h = " +0000" : (i = k.indexOf(c[5][1].toUpperCase()) - 12, h = (i < 0 ? " -" : " +") + ("" + i).replace(/^-?/, "0").match(/..$/)[0] + "00"); break; case 4: h = j[c[5]]; break; default: h = j[" GMT"] } c[5] = h, a._i = c.splice(1).join(""), g = " ZZ", a._f = d + e + f + g, lb(a), n(a).rfc2822 = !0 } else a._isValid = !1 } function gb(b) { var c = Me.exec(b._i); return null !== c ? void(b._d = new Date(+c[1])) : (eb(b), void(b._isValid === !1 && (delete b._isValid, fb(b), b._isValid === !1 && (delete b._isValid, a.createFromInputFallback(b))))) } function hb(a, b, c) { return null != a ? a : null != b ? b : c } function ib(b) { var c = new Date(a.now()); return b._useUTC ? [c.getUTCFullYear(), c.getUTCMonth(), c.getUTCDate()] : [c.getFullYear(), c.getMonth(), c.getDate()] } function jb(a) { var b, c, d, e, f = []; if (!a._d) { for (d = ib(a), a._w && null == a._a[ge] && null == a._a[fe] && kb(a), null != a._dayOfYear && (e = hb(a._a[ee], d[ee]), (a._dayOfYear > pa(e) || 0 === a._dayOfYear) && (n(a)._overflowDayOfYear = !0), c = ta(e, 0, a._dayOfYear), a._a[fe] = c.getUTCMonth(), a._a[ge] = c.getUTCDate()), b = 0; b < 3 && null == a._a[b]; ++b) a._a[b] = f[b] = d[b]; for (; b < 7; b++) a._a[b] = f[b] = null == a._a[b] ? 2 === b ? 1 : 0 : a._a[b]; 24 === a._a[he] && 0 === a._a[ie] && 0 === a._a[je] && 0 === a._a[ke] && (a._nextDay = !0, a._a[he] = 0), a._d = (a._useUTC ? ta : sa).apply(null, f), null != a._tzm && a._d.setUTCMinutes(a._d.getUTCMinutes() - a._tzm), a._nextDay && (a._a[he] = 24) } } function kb(a) { var b, c, d, e, f, g, h, i; if (b = a._w, null != b.GG || null != b.W || null != b.E) f = 1, g = 4, c = hb(b.GG, a._a[ee], wa(tb(), 1, 4).year), d = hb(b.W, 1), e = hb(b.E, 1), (e < 1 || e > 7) && (i = !0); else { f = a._locale._week.dow, g = a._locale._week.doy; var j = wa(tb(), f, g); c = hb(b.gg, a._a[ee], j.year), d = hb(b.w, j.week), null != b.d ? (e = b.d, (e < 0 || e > 6) && (i = !0)) : null != b.e ? (e = b.e + f, (b.e < 0 || b.e > 6) && (i = !0)) : e = f } d < 1 || d > xa(c, f, g) ? n(a)._overflowWeeks = !0 : null != i ? n(a)._overflowWeekday = !0 : (h = va(c, d, e, f, g), a._a[ee] = h.year, a._dayOfYear = h.dayOfYear) } function lb(b) { if (b._f === a.ISO_8601) return void eb(b); if (b._f === a.RFC_2822) return void fb(b); b._a = [], n(b).empty = !0; var c, d, e, f, g, h = "" + b._i, i = h.length, j = 0; for (e = Y(b._f, b._locale).match(Jd) || [], c = 0; c < e.length; c++) f = e[c], d = (h.match($(f, b)) || [])[0], d && (g = h.substr(0, h.indexOf(d)), g.length > 0 && n(b).unusedInput.push(g), h = h.slice(h.indexOf(d) + d.length), j += d.length), Md[f] ? (d ? n(b).empty = !1 : n(b).unusedTokens.push(f), da(f, d, b)) : b._strict && !d && n(b).unusedTokens.push(f); n(b).charsLeftOver = i - j, h.length > 0 && n(b).unusedInput.push(h), b._a[he] <= 12 && n(b).bigHour === !0 && b._a[he] > 0 && (n(b).bigHour = void 0), n(b).parsedDateParts = b._a.slice(0), n(b).meridiem = b._meridiem, b._a[he] = mb(b._locale, b._a[he], b._meridiem), jb(b), db(b) } function mb(a, b, c) { var d; return null == c ? b : null != a.meridiemHour ? a.meridiemHour(b, c) : null != a.isPM ? (d = a.isPM(c), d && b < 12 && (b += 12), d || 12 !== b || (b = 0), b) : b } function nb(a) { var b, c, d, e, f; if (0 === a._f.length) return n(a).invalidFormat = !0, void(a._d = new Date(NaN)); for (e = 0; e < a._f.length; e++) f = 0, b = q({}, a), null != a._useUTC && (b._useUTC = a._useUTC), b._f = a._f[e], lb(b), o(b) && (f += n(b).charsLeftOver, f += 10 * n(b).unusedTokens.length, n(b).score = f, (null == d || f < d) && (d = f, c = b)); k(a, c || b) } function ob(a) { if (!a._d) { var b = L(a._i); a._a = i([b.year, b.month, b.day || b.date, b.hour, b.minute, b.second, b.millisecond], function(a) { return a && parseInt(a, 10) }), jb(a) } } function pb(a) { var b = new r(db(qb(a))); return b._nextDay && (b.add(1, "d"), b._nextDay = void 0), b } function qb(a) { var b = a._i, d = a._f; return a._locale = a._locale || bb(a._l), null === b || void 0 === d && "" === b ? p({ nullInput: !0 }) : ("string" == typeof b && (a._i = b = a._locale.preparse(b)), s(b) ? new r(db(b)) : (h(b) ? a._d = b : c(d) ? nb(a) : d ? lb(a) : rb(a), o(a) || (a._d = null), a)) } function rb(b) { var e = b._i; f(e) ? b._d = new Date(a.now()) : h(e) ? b._d = new Date(e.valueOf()) : "string" == typeof e ? gb(b) : c(e) ? (b._a = i(e.slice(0), function(a) { return parseInt(a, 10) }), jb(b)) : d(e) ? ob(b) : g(e) ? b._d = new Date(e) : a.createFromInputFallback(b) } function sb(a, b, f, g, h) { var i = {}; return f !== !0 && f !== !1 || (g = f, f = void 0), (d(a) && e(a) || c(a) && 0 === a.length) && (a = void 0), i._isAMomentObject = !0, i._useUTC = i._isUTC = h, i._l = f, i._i = a, i._f = b, i._strict = g, pb(i) } function tb(a, b, c, d) { return sb(a, b, c, d, !1) } function ub(a, b) { var d, e; if (1 === b.length && c(b[0]) && (b = b[0]), !b.length) return tb(); for (d = b[0], e = 1; e < b.length; ++e) b[e].isValid() && !b[e][a](d) || (d = b[e]); return d } function vb() { var a = [].slice.call(arguments, 0); return ub("isBefore", a) } function wb() { var a = [].slice.call(arguments, 0); return ub("isAfter", a) } function xb(a) { for (var b in a) if (Re.indexOf(b) === -1 || null != a[b] && isNaN(a[b])) return !1; for (var c = !1, d = 0; d < Re.length; ++d) if (a[Re[d]]) { if (c) return !1; parseFloat(a[Re[d]]) !== u(a[Re[d]]) && (c = !0) } return !0 } function yb() { return this._isValid } function zb() { return Sb(NaN) } function Ab(a) { var b = L(a), c = b.year || 0, d = b.quarter || 0, e = b.month || 0, f = b.week || 0, g = b.day || 0, h = b.hour || 0, i = b.minute || 0, j = b.second || 0, k = b.millisecond || 0; this._isValid = xb(b), this._milliseconds = +k + 1e3 * j + 6e4 * i + 1e3 * h * 60 * 60, this._days = +g + 7 * f, this._months = +e + 3 * d + 12 * c, this._data = {}, this._locale = bb(), this._bubble() } function Bb(a) { return a instanceof Ab } function Cb(a) { return a < 0 ? Math.round(-1 * a) * -1 : Math.round(a) } function Db(a, b) { U(a, 0, 0, function() { var a = this.utcOffset(), c = "+"; return a < 0 && (a = -a, c = "-"), c + T(~~(a / 60), 2) + b + T(~~a % 60, 2) }) } function Eb(a, b) { var c = (b || "").match(a); if (null === c) return null; var d = c[c.length - 1] || [], e = (d + "").match(Se) || ["-", 0, 0], f = +(60 * e[1]) + u(e[2]); return 0 === f ? 0 : "+" === e[0] ? f : -f } function Fb(b, c) { var d, e; return c._isUTC ? (d = c.clone(), e = (s(b) || h(b) ? b.valueOf() : tb(b).valueOf()) - d.valueOf(), d._d.setTime(d._d.valueOf() + e), a.updateOffset(d, !1), d) : tb(b).local() } function Gb(a) { return 15 * -Math.round(a._d.getTimezoneOffset() / 15) } function Hb(b, c, d) { var e, f = this._offset || 0; if (!this.isValid()) return null != b ? this : NaN; if (null != b) { if ("string" == typeof b) { if (b = Eb(_d, b), null === b) return this } else Math.abs(b) < 16 && !d && (b = 60 * b); return !this._isUTC && c && (e = Gb(this)), this._offset = b, this._isUTC = !0, null != e && this.add(e, "m"), f !== b && (!c || this._changeInProgress ? Xb(this, Sb(b - f, "m"), 1, !1) : this._changeInProgress || (this._changeInProgress = !0, a.updateOffset(this, !0), this._changeInProgress = null)), this } return this._isUTC ? f : Gb(this) } function Ib(a, b) { return null != a ? ("string" != typeof a && (a = -a), this.utcOffset(a, b), this) : -this.utcOffset() } function Jb(a) { return this.utcOffset(0, a) } function Kb(a) { return this._isUTC && (this.utcOffset(0, a), this._isUTC = !1, a && this.subtract(Gb(this), "m")), this } function Lb() { if (null != this._tzm) this.utcOffset(this._tzm, !1, !0); else if ("string" == typeof this._i) { var a = Eb($d, this._i); null != a ? this.utcOffset(a) : this.utcOffset(0, !0) } return this } function Mb(a) { return !!this.isValid() && (a = a ? tb(a).utcOffset() : 0, (this.utcOffset() - a) % 60 === 0) } function Nb() { return this.utcOffset() > this.clone().month(0).utcOffset() || this.utcOffset() > this.clone().month(5).utcOffset() } function Ob() { if (!f(this._isDSTShifted)) return this._isDSTShifted; var a = {}; if (q(a, this), a = qb(a), a._a) { var b = a._isUTC ? l(a._a) : tb(a._a); this._isDSTShifted = this.isValid() && v(a._a, b.toArray()) > 0 } else this._isDSTShifted = !1; return this._isDSTShifted } function Pb() { return !!this.isValid() && !this._isUTC } function Qb() { return !!this.isValid() && this._isUTC } function Rb() { return !!this.isValid() && (this._isUTC && 0 === this._offset) } function Sb(a, b) { var c, d, e, f = a, h = null; return Bb(a) ? f = { ms: a._milliseconds, d: a._days, M: a._months } : g(a) ? (f = {}, b ? f[b] = a : f.milliseconds = a) : (h = Te.exec(a)) ? (c = "-" === h[1] ? -1 : 1, f = { y: 0, d: u(h[ge]) * c, h: u(h[he]) * c, m: u(h[ie]) * c, s: u(h[je]) * c, ms: u(Cb(1e3 * h[ke])) * c }) : (h = Ue.exec(a)) ? (c = "-" === h[1] ? -1 : 1, f = { y: Tb(h[2], c), M: Tb(h[3], c), w: Tb(h[4], c), d: Tb(h[5], c), h: Tb(h[6], c), m: Tb(h[7], c), s: Tb(h[8], c) }) : null == f ? f = {} : "object" == typeof f && ("from" in f || "to" in f) && (e = Vb(tb(f.from), tb(f.to)), f = {}, f.ms = e.milliseconds, f.M = e.months), d = new Ab(f), Bb(a) && j(a, "_locale") && (d._locale = a._locale), d } function Tb(a, b) { var c = a && parseFloat(a.replace(",", ".")); return (isNaN(c) ? 0 : c) * b } function Ub(a, b) { var c = { milliseconds: 0, months: 0 }; return c.months = b.month() - a.month() + 12 * (b.year() - a.year()), a.clone().add(c.months, "M").isAfter(b) && --c.months, c.milliseconds = +b - +a.clone().add(c.months, "M"), c } function Vb(a, b) { var c; return a.isValid() && b.isValid() ? (b = Fb(b, a), a.isBefore(b) ? c = Ub(a, b) : (c = Ub(b, a), c.milliseconds = -c.milliseconds, c.months = -c.months), c) : { milliseconds: 0, months: 0 } } function Wb(a, b) { return function(c, d) { var e, f; return null === d || isNaN(+d) || (y(b, "moment()." + b + "(period, number) is deprecated. Please use moment()." + b + "(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."), f = c, c = d, d = f), c = "string" == typeof c ? +c : c, e = Sb(c, d), Xb(this, e, a), this } } function Xb(b, c, d, e) { var f = c._milliseconds, g = Cb(c._days), h = Cb(c._months); b.isValid() && (e = null == e || e, f && b._d.setTime(b._d.valueOf() + f * d), g && Q(b, "Date", P(b, "Date") + g * d), h && ja(b, P(b, "Month") + h * d), e && a.updateOffset(b, g || h)) } function Yb(a, b) { var c = a.diff(b, "days", !0); return c < -6 ? "sameElse" : c < -1 ? "lastWeek" : c < 0 ? "lastDay" : c < 1 ? "sameDay" : c < 2 ? "nextDay" : c < 7 ? "nextWeek" : "sameElse" } function Zb(b, c) { var d = b || tb(), e = Fb(d, this).startOf("day"), f = a.calendarFormat(this, e) || "sameElse", g = c && (z(c[f]) ? c[f].call(this, d) : c[f]); return this.format(g || this.localeData().calendar(f, this, tb(d))) } function $b() { return new r(this) } function _b(a, b) { var c = s(a) ? a : tb(a); return !(!this.isValid() || !c.isValid()) && (b = K(f(b) ? "millisecond" : b), "millisecond" === b ? this.valueOf() > c.valueOf() : c.valueOf() < this.clone().startOf(b).valueOf()) } function ac(a, b) { var c = s(a) ? a : tb(a); return !(!this.isValid() || !c.isValid()) && (b = K(f(b) ? "millisecond" : b), "millisecond" === b ? this.valueOf() < c.valueOf() : this.clone().endOf(b).valueOf() < c.valueOf()) } function bc(a, b, c, d) { return d = d || "()", ("(" === d[0] ? this.isAfter(a, c) : !this.isBefore(a, c)) && (")" === d[1] ? this.isBefore(b, c) : !this.isAfter(b, c)) } function cc(a, b) { var c, d = s(a) ? a : tb(a); return !(!this.isValid() || !d.isValid()) && (b = K(b || "millisecond"), "millisecond" === b ? this.valueOf() === d.valueOf() : (c = d.valueOf(), this.clone().startOf(b).valueOf() <= c && c <= this.clone().endOf(b).valueOf())) } function dc(a, b) { return this.isSame(a, b) || this.isAfter(a, b) } function ec(a, b) { return this.isSame(a, b) || this.isBefore(a, b) } function fc(a, b, c) { var d, e, f, g; return this.isValid() ? (d = Fb(a, this), d.isValid() ? (e = 6e4 * (d.utcOffset() - this.utcOffset()), b = K(b), "year" === b || "month" === b || "quarter" === b ? (g = gc(this, d), "quarter" === b ? g /= 3 : "year" === b && (g /= 12)) : (f = this - d, g = "second" === b ? f / 1e3 : "minute" === b ? f / 6e4 : "hour" === b ? f / 36e5 : "day" === b ? (f - e) / 864e5 : "week" === b ? (f - e) / 6048e5 : f), c ? g : t(g)) : NaN) : NaN } function gc(a, b) { var c, d, e = 12 * (b.year() - a.year()) + (b.month() - a.month()), f = a.clone().add(e, "months"); return b - f < 0 ? (c = a.clone().add(e - 1, "months"), d = (b - f) / (f - c)) : (c = a.clone().add(e + 1, "months"), d = (b - f) / (c - f)), -(e + d) || 0 } function hc() { return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ") } function ic() { if (!this.isValid()) return null; var a = this.clone().utc(); return a.year() < 0 || a.year() > 9999 ? X(a, "YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]") : z(Date.prototype.toISOString) ? this.toDate().toISOString() : X(a, "YYYY-MM-DD[T]HH:mm:ss.SSS[Z]") } function jc() { if (!this.isValid()) return "moment.invalid(/* " + this._i + " */)"; var a = "moment", b = ""; this.isLocal() || (a = 0 === this.utcOffset() ? "moment.utc" : "moment.parseZone", b = "Z"); var c = "[" + a + '("]', d = 0 <= this.year() && this.year() <= 9999 ? "YYYY" : "YYYYYY", e = "-MM-DD[T]HH:mm:ss.SSS", f = b + '[")]'; return this.format(c + d + e + f) } function kc(b) { b || (b = this.isUtc() ? a.defaultFormatUtc : a.defaultFormat); var c = X(this, b); return this.localeData().postformat(c) } function lc(a, b) { return this.isValid() && (s(a) && a.isValid() || tb(a).isValid()) ? Sb({ to: this, from: a }).locale(this.locale()).humanize(!b) : this.localeData().invalidDate() } function mc(a) { return this.from(tb(), a) } function nc(a, b) { return this.isValid() && (s(a) && a.isValid() || tb(a).isValid()) ? Sb({ from: this, to: a }).locale(this.locale()).humanize(!b) : this.localeData().invalidDate() } function oc(a) { return this.to(tb(), a) } function pc(a) { var b; return void 0 === a ? this._locale._abbr : (b = bb(a), null != b && (this._locale = b), this) } function qc() { return this._locale } function rc(a) { switch (a = K(a)) { case "year": this.month(0); case "quarter": case "month": this.date(1); case "week": case "isoWeek": case "day": case "date": this.hours(0); case "hour": this.minutes(0); case "minute": this.seconds(0); case "second": this.milliseconds(0) } return "week" === a && this.weekday(0), "isoWeek" === a && this.isoWeekday(1), "quarter" === a && this.month(3 * Math.floor(this.month() / 3)), this } function sc(a) { return a = K(a), void 0 === a || "millisecond" === a ? this : ("date" === a && (a = "day"), this.startOf(a).add(1, "isoWeek" === a ? "week" : a).subtract(1, "ms")) } function tc() { return this._d.valueOf() - 6e4 * (this._offset || 0) } function uc() { return Math.floor(this.valueOf() / 1e3) } function vc() { return new Date(this.valueOf()) } function wc() { var a = this; return [a.year(), a.month(), a.date(), a.hour(), a.minute(), a.second(), a.millisecond()] } function xc() { var a = this; return { years: a.year(), months: a.month(), date: a.date(), hours: a.hours(), minutes: a.minutes(), seconds: a.seconds(), milliseconds: a.milliseconds() } } function yc() { return this.isValid() ? this.toISOString() : null } function zc() { return o(this) } function Ac() { return k({}, n(this)) } function Bc() { return n(this).overflow } function Cc() { return { input: this._i, format: this._f, locale: this._locale, isUTC: this._isUTC, strict: this._strict } } function Dc(a, b) { U(0, [a, a.length], 0, b) } function Ec(a) { return Ic.call(this, a, this.week(), this.weekday(), this.localeData()._week.dow, this.localeData()._week.doy) } function Fc(a) { return Ic.call(this, a, this.isoWeek(), this.isoWeekday(), 1, 4) } function Gc() { return xa(this.year(), 1, 4) } function Hc() { var a = this.localeData()._week; return xa(this.year(), a.dow, a.doy) } function Ic(a, b, c, d, e) { var f; return null == a ? wa(this, d, e).year : (f = xa(a, d, e), b > f && (b = f), Jc.call(this, a, b, c, d, e)) } function Jc(a, b, c, d, e) { var f = va(a, b, c, d, e), g = ta(f.year, 0, f.dayOfYear); return this.year(g.getUTCFullYear()), this.month(g.getUTCMonth()), this.date(g.getUTCDate()), this } function Kc(a) { return null == a ? Math.ceil((this.month() + 1) / 3) : this.month(3 * (a - 1) + this.month() % 3) } function Lc(a) { var b = Math.round((this.clone().startOf("day") - this.clone().startOf("year")) / 864e5) + 1; return null == a ? b : this.add(a - b, "d") } function Mc(a, b) { b[ke] = u(1e3 * ("0." + a)) } function Nc() { return this._isUTC ? "UTC" : "" } function Oc() { return this._isUTC ? "Coordinated Universal Time" : "" } function Pc(a) { return tb(1e3 * a) } function Qc() { return tb.apply(null, arguments).parseZone() } function Rc(a) { return a } function Sc(a, b, c, d) { var e = bb(), f = l().set(d, b); return e[c](f, a) } function Tc(a, b, c) { if (g(a) && (b = a, a = void 0), a = a || "", null != b) return Sc(a, b, c, "month"); var d, e = []; for (d = 0; d < 12; d++) e[d] = Sc(a, d, c, "month"); return e } function Uc(a, b, c, d) { "boolean" == typeof a ? (g(b) && (c = b, b = void 0), b = b || "") : (b = a, c = b, a = !1, g(b) && (c = b, b = void 0), b = b || ""); var e = bb(), f = a ? e._week.dow : 0; if (null != c) return Sc(b, (c + f) % 7, d, "day"); var h, i = []; for (h = 0; h < 7; h++) i[h] = Sc(b, (h + f) % 7, d, "day"); return i } function Vc(a, b) { return Tc(a, b, "months") } function Wc(a, b) { return Tc(a, b, "monthsShort") } function Xc(a, b, c) { return Uc(a, b, c, "weekdays") } function Yc(a, b, c) { return Uc(a, b, c, "weekdaysShort") } function Zc(a, b, c) { return Uc(a, b, c, "weekdaysMin") } function $c() { var a = this._data; return this._milliseconds = df(this._milliseconds), this._days = df(this._days), this._months = df(this._months), a.milliseconds = df(a.milliseconds), a.seconds = df(a.seconds), a.minutes = df(a.minutes), a.hours = df(a.hours), a.months = df(a.months), a.years = df(a.years), this } function _c(a, b, c, d) { var e = Sb(b, c); return a._milliseconds += d * e._milliseconds, a._days += d * e._days, a._months += d * e._months, a._bubble() } function ad(a, b) { return _c(this, a, b, 1) } function bd(a, b) { return _c(this, a, b, -1) } function cd(a) { return a < 0 ? Math.floor(a) : Math.ceil(a) } function dd() { var a, b, c, d, e, f = this._milliseconds, g = this._days, h = this._months, i = this._data; return f >= 0 && g >= 0 && h >= 0 || f <= 0 && g <= 0 && h <= 0 || (f += 864e5 * cd(fd(h) + g), g = 0, h = 0), i.milliseconds = f % 1e3, a = t(f / 1e3), i.seconds = a % 60, b = t(a / 60), i.minutes = b % 60, c = t(b / 60), i.hours = c % 24, g += t(c / 24), e = t(ed(g)), h += e, g -= cd(fd(e)), d = t(h / 12), h %= 12, i.days = g, i.months = h, i.years = d, this } function ed(a) { return 4800 * a / 146097 } function fd(a) { return 146097 * a / 4800 } function gd(a) { if (!this.isValid()) return NaN; var b, c, d = this._milliseconds; if (a = K(a), "month" === a || "year" === a) return b = this._days + d / 864e5, c = this._months + ed(b), "month" === a ? c : c / 12; switch (b = this._days + Math.round(fd(this._months)), a) { case "week": return b / 7 + d / 6048e5; case "day": return b + d / 864e5; case "hour": return 24 * b + d / 36e5; case "minute": return 1440 * b + d / 6e4; case "second": return 86400 * b + d / 1e3; case "millisecond": return Math.floor(864e5 * b) + d; default: throw new Error("Unknown unit " + a) } } function hd() { return this.isValid() ? this._milliseconds + 864e5 * this._days + this._months % 12 * 2592e6 + 31536e6 * u(this._months / 12) : NaN } function id(a) { return function() { return this.as(a) } } function jd(a) { return a = K(a), this.isValid() ? this[a + "s"]() : NaN } function kd(a) { return function() { return this.isValid() ? this._data[a] : NaN } } function ld() { return t(this.days() / 7) } function md(a, b, c, d, e) { return e.relativeTime(b || 1, !!c, a, d) } function nd(a, b, c) { var d = Sb(a).abs(), e = uf(d.as("s")), f = uf(d.as("m")), g = uf(d.as("h")), h = uf(d.as("d")), i = uf(d.as("M")), j = uf(d.as("y")), k = e <= vf.ss && ["s", e] || e < vf.s && ["ss", e] || f <= 1 && ["m"] || f < vf.m && ["mm", f] || g <= 1 && ["h"] || g < vf.h && ["hh", g] || h <= 1 && ["d"] || h < vf.d && ["dd", h] || i <= 1 && ["M"] || i < vf.M && ["MM", i] || j <= 1 && ["y"] || ["yy", j]; return k[2] = b, k[3] = +a > 0, k[4] = c, md.apply(null, k) } function od(a) { return void 0 === a ? uf : "function" == typeof a && (uf = a, !0) } function pd(a, b) { return void 0 !== vf[a] && (void 0 === b ? vf[a] : (vf[a] = b, "s" === a && (vf.ss = b - 1), !0)) } function qd(a) { if (!this.isValid()) return this.localeData().invalidDate(); var b = this.localeData(), c = nd(this, !a, b); return a && (c = b.pastFuture(+this, c)), b.postformat(c) } function rd() { if (!this.isValid()) return this.localeData().invalidDate(); var a, b, c, d = wf(this._milliseconds) / 1e3, e = wf(this._days), f = wf(this._months); a = t(d / 60), b = t(a / 60), d %= 60, a %= 60, c = t(f / 12), f %= 12; var g = c, h = f, i = e, j = b, k = a, l = d, m = this.asSeconds(); return m ? (m < 0 ? "-" : "") + "P" + (g ? g + "Y" : "") + (h ? h + "M" : "") + (i ? i + "D" : "") + (j || k || l ? "T" : "") + (j ? j + "H" : "") + (k ? k + "M" : "") + (l ? l + "S" : "") : "P0D" } var sd, td; td = Array.prototype.some ? Array.prototype.some : function(a) { for (var b = Object(this), c = b.length >>> 0, d = 0; d < c; d++) if (d in b && a.call(this, b[d], d, b)) return !0; return !1 }; var ud = td, vd = a.momentProperties = [], wd = !1, xd = {}; a.suppressDeprecationWarnings = !1, a.deprecationHandler = null; var yd; yd = Object.keys ? Object.keys : function(a) { var b, c = []; for (b in a) j(a, b) && c.push(b); return c }; var zd, Ad = yd, Bd = { sameDay: "[Today at] LT", nextDay: "[Tomorrow at] LT", nextWeek: "dddd [at] LT", lastDay: "[Yesterday at] LT", lastWeek: "[Last] dddd [at] LT", sameElse: "L" }, Cd = { LTS: "h:mm:ss A", LT: "h:mm A", L: "MM/DD/YYYY", LL: "MMMM D, YYYY", LLL: "MMMM D, YYYY h:mm A", LLLL: "dddd, MMMM D, YYYY h:mm A" }, Dd = "Invalid date", Ed = "%d", Fd = /\d{1,2}/, Gd = { future: "in %s", past: "%s ago", s: "a few seconds", ss: "%d seconds", m: "a minute", mm: "%d minutes", h: "an hour", hh: "%d hours", d: "a day", dd: "%d days", M: "a month", MM: "%d months", y: "a year", yy: "%d years" }, Hd = {}, Id = {}, Jd = /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g, Kd = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, Ld = {}, Md = {}, Nd = /\d/, Od = /\d\d/, Pd = /\d{3}/, Qd = /\d{4}/, Rd = /[+-]?\d{6}/, Sd = /\d\d?/, Td = /\d\d\d\d?/, Ud = /\d\d\d\d\d\d?/, Vd = /\d{1,3}/, Wd = /\d{1,4}/, Xd = /[+-]?\d{1,6}/, Yd = /\d+/, Zd = /[+-]?\d+/, $d = /Z|[+-]\d\d:?\d\d/gi, _d = /Z|[+-]\d\d(?::?\d\d)?/gi, ae = /[+-]?\d+(\.\d{1,3})?/, be = /[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i, ce = {}, de = {}, ee = 0, fe = 1, ge = 2, he = 3, ie = 4, je = 5, ke = 6, le = 7, me = 8; zd = Array.prototype.indexOf ? Array.prototype.indexOf : function(a) { var b; for (b = 0; b < this.length; ++b) if (this[b] === a) return b; return -1 }; var ne = zd; U("M", ["MM", 2], "Mo", function() { return this.month() + 1 }), U("MMM", 0, 0, function(a) { return this.localeData().monthsShort(this, a) }), U("MMMM", 0, 0, function(a) { return this.localeData().months(this, a) }), J("month", "M"), M("month", 8), Z("M", Sd), Z("MM", Sd, Od), Z("MMM", function(a, b) { return b.monthsShortRegex(a) }), Z("MMMM", function(a, b) { return b.monthsRegex(a) }), ba(["M", "MM"], function(a, b) { b[fe] = u(a) - 1 }), ba(["MMM", "MMMM"], function(a, b, c, d) { var e = c._locale.monthsParse(a, d, c._strict); null != e ? b[fe] = e : n(c).invalidMonth = a }); var oe = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/, pe = "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), qe = "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), re = be, se = be; U("Y", 0, 0, function() { var a = this.year(); return a <= 9999 ? "" + a : "+" + a }), U(0, ["YY", 2], 0, function() { return this.year() % 100 }), U(0, ["YYYY", 4], 0, "year"), U(0, ["YYYYY", 5], 0, "year"), U(0, ["YYYYYY", 6, !0], 0, "year"), J("year", "y"), M("year", 1), Z("Y", Zd), Z("YY", Sd, Od), Z("YYYY", Wd, Qd), Z("YYYYY", Xd, Rd), Z("YYYYYY", Xd, Rd), ba(["YYYYY", "YYYYYY"], ee), ba("YYYY", function(b, c) { c[ee] = 2 === b.length ? a.parseTwoDigitYear(b) : u(b) }), ba("YY", function(b, c) { c[ee] = a.parseTwoDigitYear(b) }), ba("Y", function(a, b) { b[ee] = parseInt(a, 10) }), a.parseTwoDigitYear = function(a) { return u(a) + (u(a) > 68 ? 1900 : 2e3) }; var te = O("FullYear", !0); U("w", ["ww", 2], "wo", "week"), U("W", ["WW", 2], "Wo", "isoWeek"), J("week", "w"), J("isoWeek", "W"), M("week", 5), M("isoWeek", 5), Z("w", Sd), Z("ww", Sd, Od), Z("W", Sd), Z("WW", Sd, Od), ca(["w", "ww", "W", "WW"], function(a, b, c, d) { b[d.substr(0, 1)] = u(a) }); var ue = { dow: 0, doy: 6 }; U("d", 0, "do", "day"), U("dd", 0, 0, function(a) { return this.localeData().weekdaysMin(this, a) }), U("ddd", 0, 0, function(a) { return this.localeData().weekdaysShort(this, a) }), U("dddd", 0, 0, function(a) { return this.localeData().weekdays(this, a) }), U("e", 0, 0, "weekday"), U("E", 0, 0, "isoWeekday"), J("day", "d"), J("weekday", "e"), J("isoWeekday", "E"), M("day", 11), M("weekday", 11), M("isoWeekday", 11), Z("d", Sd), Z("e", Sd), Z("E", Sd), Z("dd", function(a, b) { return b.weekdaysMinRegex(a) }), Z("ddd", function(a, b) { return b.weekdaysShortRegex(a) }), Z("dddd", function(a, b) { return b.weekdaysRegex(a) }), ca(["dd", "ddd", "dddd"], function(a, b, c, d) { var e = c._locale.weekdaysParse(a, d, c._strict); null != e ? b.d = e : n(c).invalidWeekday = a }), ca(["d", "e", "E"], function(a, b, c, d) { b[d] = u(a) }); var ve = "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), we = "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), xe = "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), ye = be, ze = be, Ae = be; U("H", ["HH", 2], 0, "hour"), U("h", ["hh", 2], 0, Ra), U("k", ["kk", 2], 0, Sa), U("hmm", 0, 0, function() { return "" + Ra.apply(this) + T(this.minutes(), 2) }), U("hmmss", 0, 0, function() { return "" + Ra.apply(this) + T(this.minutes(), 2) + T(this.seconds(), 2) }), U("Hmm", 0, 0, function() { return "" + this.hours() + T(this.minutes(), 2) }), U("Hmmss", 0, 0, function() { return "" + this.hours() + T(this.minutes(), 2) + T(this.seconds(), 2) }), Ta("a", !0), Ta("A", !1), J("hour", "h"), M("hour", 13), Z("a", Ua), Z("A", Ua), Z("H", Sd), Z("h", Sd), Z("k", Sd), Z("HH", Sd, Od), Z("hh", Sd, Od), Z("kk", Sd, Od), Z("hmm", Td), Z("hmmss", Ud), Z("Hmm", Td), Z("Hmmss", Ud), ba(["H", "HH"], he), ba(["k", "kk"], function(a, b, c) { var d = u(a); b[he] = 24 === d ? 0 : d }), ba(["a", "A"], function(a, b, c) { c._isPm = c._locale.isPM(a), c._meridiem = a }), ba(["h", "hh"], function(a, b, c) { b[he] = u(a), n(c).bigHour = !0 }), ba("hmm", function(a, b, c) { var d = a.length - 2; b[he] = u(a.substr(0, d)), b[ie] = u(a.substr(d)), n(c).bigHour = !0 }), ba("hmmss", function(a, b, c) { var d = a.length - 4, e = a.length - 2; b[he] = u(a.substr(0, d)), b[ie] = u(a.substr(d, 2)), b[je] = u(a.substr(e)), n(c).bigHour = !0 }), ba("Hmm", function(a, b, c) { var d = a.length - 2; b[he] = u(a.substr(0, d)), b[ie] = u(a.substr(d)) }), ba("Hmmss", function(a, b, c) { var d = a.length - 4, e = a.length - 2; b[he] = u(a.substr(0, d)), b[ie] = u(a.substr(d, 2)), b[je] = u(a.substr(e)) }); var Be, Ce = /[ap]\.?m?\.?/i, De = O("Hours", !0), Ee = { calendar: Bd, longDateFormat: Cd, invalidDate: Dd, ordinal: Ed, dayOfMonthOrdinalParse: Fd, relativeTime: Gd, months: pe, monthsShort: qe, week: ue, weekdays: ve, weekdaysMin: xe, weekdaysShort: we, meridiemParse: Ce }, Fe = {}, Ge = {}, He = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/, Ie = /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/, Je = /Z|[+-]\d\d(?::?\d\d)?/, Ke = [ ["YYYYYY-MM-DD", /[+-]\d{6}-\d\d-\d\d/], ["YYYY-MM-DD", /\d{4}-\d\d-\d\d/], ["GGGG-[W]WW-E", /\d{4}-W\d\d-\d/], ["GGGG-[W]WW", /\d{4}-W\d\d/, !1], ["YYYY-DDD", /\d{4}-\d{3}/], ["YYYY-MM", /\d{4}-\d\d/, !1], ["YYYYYYMMDD", /[+-]\d{10}/], ["YYYYMMDD", /\d{8}/], ["GGGG[W]WWE", /\d{4}W\d{3}/], ["GGGG[W]WW", /\d{4}W\d{2}/, !1], ["YYYYDDD", /\d{7}/] ], Le = [ ["HH:mm:ss.SSSS", /\d\d:\d\d:\d\d\.\d+/], ["HH:mm:ss,SSSS", /\d\d:\d\d:\d\d,\d+/], ["HH:mm:ss", /\d\d:\d\d:\d\d/], ["HH:mm", /\d\d:\d\d/], ["HHmmss.SSSS", /\d\d\d\d\d\d\.\d+/], ["HHmmss,SSSS", /\d\d\d\d\d\d,\d+/], ["HHmmss", /\d\d\d\d\d\d/], ["HHmm", /\d\d\d\d/], ["HH", /\d\d/] ], Me = /^\/?Date\((\-?\d+)/i, Ne = /^((?:Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d?\d\s(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(?:\d\d)?\d\d\s)(\d\d:\d\d)(\:\d\d)?(\s(?:UT|GMT|[ECMP][SD]T|[A-IK-Za-ik-z]|[+-]\d{4}))$/; a.createFromInputFallback = x("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.", function(a) { a._d = new Date(a._i + (a._useUTC ? " UTC" : "")) }), a.ISO_8601 = function() {}, a.RFC_2822 = function() {}; var Oe = x("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/", function() { var a = tb.apply(null, arguments); return this.isValid() && a.isValid() ? a < this ? this : a : p() }), Pe = x("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/", function() { var a = tb.apply(null, arguments); return this.isValid() && a.isValid() ? a > this ? this : a : p() }), Qe = function() { return Date.now ? Date.now() : +new Date }, Re = ["year", "quarter", "month", "week", "day", "hour", "minute", "second", "millisecond"]; Db("Z", ":"), Db("ZZ", ""), Z("Z", _d), Z("ZZ", _d), ba(["Z", "ZZ"], function(a, b, c) { c._useUTC = !0, c._tzm = Eb(_d, a) }); var Se = /([\+\-]|\d\d)/gi; a.updateOffset = function() {}; var Te = /^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/, Ue = /^(-)?P(?:(-?[0-9,.]*)Y)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)W)?(?:(-?[0-9,.]*)D)?(?:T(?:(-?[0-9,.]*)H)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)S)?)?$/; Sb.fn = Ab.prototype, Sb.invalid = zb; var Ve = Wb(1, "add"), We = Wb(-1, "subtract"); a.defaultFormat = "YYYY-MM-DDTHH:mm:ssZ", a.defaultFormatUtc = "YYYY-MM-DDTHH:mm:ss[Z]"; var Xe = x("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.", function(a) { return void 0 === a ? this.localeData() : this.locale(a) }); U(0, ["gg", 2], 0, function() { return this.weekYear() % 100 }), U(0, ["GG", 2], 0, function() { return this.isoWeekYear() % 100 }), Dc("gggg", "weekYear"), Dc("ggggg", "weekYear"), Dc("GGGG", "isoWeekYear"), Dc("GGGGG", "isoWeekYear"), J("weekYear", "gg"), J("isoWeekYear", "GG"), M("weekYear", 1), M("isoWeekYear", 1), Z("G", Zd), Z("g", Zd), Z("GG", Sd, Od), Z("gg", Sd, Od), Z("GGGG", Wd, Qd), Z("gggg", Wd, Qd), Z("GGGGG", Xd, Rd), Z("ggggg", Xd, Rd), ca(["gggg", "ggggg", "GGGG", "GGGGG"], function(a, b, c, d) { b[d.substr(0, 2)] = u(a) }), ca(["gg", "GG"], function(b, c, d, e) { c[e] = a.parseTwoDigitYear(b) }), U("Q", 0, "Qo", "quarter"), J("quarter", "Q"), M("quarter", 7), Z("Q", Nd), ba("Q", function(a, b) { b[fe] = 3 * (u(a) - 1) }), U("D", ["DD", 2], "Do", "date"), J("date", "D"), M("date", 9), Z("D", Sd), Z("DD", Sd, Od), Z("Do", function(a, b) { return a ? b._dayOfMonthOrdinalParse || b._ordinalParse : b._dayOfMonthOrdinalParseLenient }), ba(["D", "DD"], ge), ba("Do", function(a, b) { b[ge] = u(a.match(Sd)[0], 10) }); var Ye = O("Date", !0); U("DDD", ["DDDD", 3], "DDDo", "dayOfYear"), J("dayOfYear", "DDD"), M("dayOfYear", 4), Z("DDD", Vd), Z("DDDD", Pd), ba(["DDD", "DDDD"], function(a, b, c) { c._dayOfYear = u(a) }), U("m", ["mm", 2], 0, "minute"), J("minute", "m"), M("minute", 14), Z("m", Sd), Z("mm", Sd, Od), ba(["m", "mm"], ie); var Ze = O("Minutes", !1); U("s", ["ss", 2], 0, "second"), J("second", "s"), M("second", 15), Z("s", Sd), Z("ss", Sd, Od), ba(["s", "ss"], je); var $e = O("Seconds", !1); U("S", 0, 0, function() { return ~~(this.millisecond() / 100) }), U(0, ["SS", 2], 0, function() { return ~~(this.millisecond() / 10) }), U(0, ["SSS", 3], 0, "millisecond"), U(0, ["SSSS", 4], 0, function() { return 10 * this.millisecond() }), U(0, ["SSSSS", 5], 0, function() { return 100 * this.millisecond() }), U(0, ["SSSSSS", 6], 0, function() { return 1e3 * this.millisecond() }), U(0, ["SSSSSSS", 7], 0, function() { return 1e4 * this.millisecond() }), U(0, ["SSSSSSSS", 8], 0, function() { return 1e5 * this.millisecond() }), U(0, ["SSSSSSSSS", 9], 0, function() { return 1e6 * this.millisecond() }), J("millisecond", "ms"), M("millisecond", 16), Z("S", Vd, Nd), Z("SS", Vd, Od), Z("SSS", Vd, Pd); var _e; for (_e = "SSSS"; _e.length <= 9; _e += "S") Z(_e, Yd); for (_e = "S"; _e.length <= 9; _e += "S") ba(_e, Mc); var af = O("Milliseconds", !1); U("z", 0, 0, "zoneAbbr"), U("zz", 0, 0, "zoneName"); var bf = r.prototype; bf.add = Ve, bf.calendar = Zb, bf.clone = $b, bf.diff = fc, bf.endOf = sc, bf.format = kc, bf.from = lc, bf.fromNow = mc, bf.to = nc, bf.toNow = oc, bf.get = R, bf.invalidAt = Bc, bf.isAfter = _b, bf.isBefore = ac, bf.isBetween = bc, bf.isSame = cc, bf.isSameOrAfter = dc, bf.isSameOrBefore = ec, bf.isValid = zc, bf.lang = Xe, bf.locale = pc, bf.localeData = qc, bf.max = Pe, bf.min = Oe, bf.parsingFlags = Ac, bf.set = S, bf.startOf = rc, bf.subtract = We, bf.toArray = wc, bf.toObject = xc, bf.toDate = vc, bf.toISOString = ic, bf.inspect = jc, bf.toJSON = yc, bf.toString = hc, bf.unix = uc, bf.valueOf = tc, bf.creationData = Cc, bf.year = te, bf.isLeapYear = ra, bf.weekYear = Ec, bf.isoWeekYear = Fc, bf.quarter = bf.quarters = Kc, bf.month = ka, bf.daysInMonth = la, bf.week = bf.weeks = Ba, bf.isoWeek = bf.isoWeeks = Ca, bf.weeksInYear = Hc, bf.isoWeeksInYear = Gc, bf.date = Ye, bf.day = bf.days = Ka, bf.weekday = La, bf.isoWeekday = Ma, bf.dayOfYear = Lc, bf.hour = bf.hours = De, bf.minute = bf.minutes = Ze, bf.second = bf.seconds = $e, bf.millisecond = bf.milliseconds = af, bf.utcOffset = Hb, bf.utc = Jb, bf.local = Kb, bf.parseZone = Lb, bf.hasAlignedHourOffset = Mb, bf.isDST = Nb, bf.isLocal = Pb, bf.isUtcOffset = Qb, bf.isUtc = Rb, bf.isUTC = Rb, bf.zoneAbbr = Nc, bf.zoneName = Oc, bf.dates = x("dates accessor is deprecated. Use date instead.", Ye), bf.months = x("months accessor is deprecated. Use month instead", ka), bf.years = x("years accessor is deprecated. Use year instead", te), bf.zone = x("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/", Ib), bf.isDSTShifted = x("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information", Ob); var cf = C.prototype; cf.calendar = D, cf.longDateFormat = E, cf.invalidDate = F, cf.ordinal = G, cf.preparse = Rc, cf.postformat = Rc, cf.relativeTime = H, cf.pastFuture = I, cf.set = A, cf.months = fa, cf.monthsShort = ga, cf.monthsParse = ia, cf.monthsRegex = na, cf.monthsShortRegex = ma, cf.week = ya, cf.firstDayOfYear = Aa, cf.firstDayOfWeek = za, cf.weekdays = Fa, cf.weekdaysMin = Ha, cf.weekdaysShort = Ga, cf.weekdaysParse = Ja, cf.weekdaysRegex = Na, cf.weekdaysShortRegex = Oa, cf.weekdaysMinRegex = Pa, cf.isPM = Va, cf.meridiem = Wa, $a("en", { dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, ordinal: function(a) { var b = a % 10, c = 1 === u(a % 100 / 10) ? "th" : 1 === b ? "st" : 2 === b ? "nd" : 3 === b ? "rd" : "th"; return a + c } }), a.lang = x("moment.lang is deprecated. Use moment.locale instead.", $a), a.langData = x("moment.langData is deprecated. Use moment.localeData instead.", bb); var df = Math.abs, ef = id("ms"), ff = id("s"), gf = id("m"), hf = id("h"), jf = id("d"), kf = id("w"), lf = id("M"), mf = id("y"), nf = kd("milliseconds"), of = kd("seconds"), pf = kd("minutes"), qf = kd("hours"), rf = kd("days"), sf = kd("months"), tf = kd("years"), uf = Math.round, vf = { ss: 44, s: 45, m: 45, h: 22, d: 26, M: 11 }, wf = Math.abs, xf = Ab.prototype; return xf.isValid = yb, xf.abs = $c, xf.add = ad, xf.subtract = bd, xf.as = gd, xf.asMilliseconds = ef, xf.asSeconds = ff, xf.asMinutes = gf, xf.asHours = hf, xf.asDays = jf, xf.asWeeks = kf, xf.asMonths = lf, xf.asYears = mf, xf.valueOf = hd, xf._bubble = dd, xf.get = jd, xf.milliseconds = nf, xf.seconds = of , xf.minutes = pf, xf.hours = qf, xf.days = rf, xf.weeks = ld, xf.months = sf, xf.years = tf, xf.humanize = qd, xf.toISOString = rd, xf.toString = rd, xf.toJSON = rd, xf.locale = pc, xf.localeData = qc, xf.toIsoString = x("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)", rd), xf.lang = Xe, U("X", 0, 0, "unix"), U("x", 0, 0, "valueOf"), Z("x", Zd), Z("X", ae), ba("X", function(a, b, c) { c._d = new Date(1e3 * parseFloat(a, 10)) }), ba("x", function(a, b, c) { c._d = new Date(u(a)) }), a.version = "2.18.1", b(tb), a.fn = bf, a.min = vb, a.max = wb, a.now = Qe, a.utc = l, a.unix = Pc, a.months = Vc, a.isDate = h, a.locale = $a, a.invalid = p, a.duration = Sb, a.isMoment = s, a.weekdays = Xc, a.parseZone = Qc, a.localeData = bb, a.isDuration = Bb, a.monthsShort = Wc, a.weekdaysMin = Zc, a.defineLocale = _a, a.updateLocale = ab, a.locales = cb, a.weekdaysShort = Yc, a.normalizeUnits = K, a.relativeTimeRounding = od, a.relativeTimeThreshold = pd, a.calendarFormat = Yb, a.prototype = bf, a }); /** * @version: 2.1.25 * @author: Dan Grossman http://www.dangrossman.info/ * @copyright: Copyright (c) 2012-2017 Dan Grossman. All rights reserved. * @license: Licensed under the MIT license. See http://www.opensource.org/licenses/mit-license.php * @website: https://www.daterangepicker.com/ */ ! function(t, e) { if ("function" == typeof define && define.amd) define(["moment", "jquery"], function(a, i) { return t.daterangepicker = e(a, i) }); else if ("object" == typeof module && module.exports) { var a = "undefined" != typeof window ? window.jQuery : void 0; a || (a = require("jquery")).fn || (a.fn = {}), module.exports = e(require("moment"), a) } else t.daterangepicker = e(t.moment, t.jQuery) }(this, function(t, e) { var a = function(a, i, s) { if (this.parentEl = "body", this.element = e(a), this.startDate = t().startOf("day"), this.endDate = t().endOf("day"), this.minDate = !1, this.maxDate = !1, this.dateLimit = !1, this.autoApply = !1, this.singleDatePicker = !1, this.showDropdowns = !1, this.showWeekNumbers = !1, this.showISOWeekNumbers = !1, this.showCustomRangeLabel = !0, this.timePicker = !1, this.timePicker24Hour = !1, this.timePickerIncrement = 1, this.timePickerSeconds = !1, this.linkedCalendars = !0, this.autoUpdateInput = !0, this.alwaysShowCalendars = !1, this.ranges = {}, this.opens = "right", this.element.hasClass("pull-right") && (this.opens = "left"), this.drops = "down", this.element.hasClass("dropup") && (this.drops = "up"), this.buttonClasses = "btn btn-sm", this.applyClass = "btn-success", this.cancelClass = "btn-default", this.locale = { direction: "ltr", format: t.localeData().longDateFormat("L"), separator: " - ", applyLabel: "Apply", cancelLabel: "Cancel", weekLabel: "W", customRangeLabel: "Custom Range", daysOfWeek: t.weekdaysMin(), monthNames: t.monthsShort(), firstDay: t.localeData().firstDayOfWeek() }, this.callback = function() {}, this.isShowing = !1, this.leftCalendar = {}, this.rightCalendar = {}, ("object" != typeof i || null === i) && (i = {}), "string" == typeof(i = e.extend(this.element.data(), i)).template || i.template instanceof e || (i.template = '<div class="daterangepicker dropdown-menu"><div class="calendar left"><div class="daterangepicker_input"><input class="input-mini form-control" type="text" name="daterangepicker_start" value="" /><i class="fa fa-calendar glyphicon glyphicon-calendar"></i><div class="calendar-time"><div></div><i class="fa fa-clock-o glyphicon glyphicon-time"></i></div></div><div class="calendar-table"></div></div><div class="calendar right"><div class="daterangepicker_input"><input class="input-mini form-control" type="text" name="daterangepicker_end" value="" /><i class="fa fa-calendar glyphicon glyphicon-calendar"></i><div class="calendar-time"><div></div><i class="fa fa-clock-o glyphicon glyphicon-time"></i></div></div><div class="calendar-table"></div></div><div class="ranges"><div class="range_inputs"><button class="applyBtn" disabled="disabled" type="button"></button> <button class="cancelBtn" type="button"></button></div></div></div>'), this.parentEl = i.parentEl && e(i.parentEl).length ? e(i.parentEl) : e(this.parentEl), this.container = e(i.template).appendTo(this.parentEl), "object" == typeof i.locale && ("string" == typeof i.locale.direction && (this.locale.direction = i.locale.direction), "string" == typeof i.locale.format && (this.locale.format = i.locale.format), "string" == typeof i.locale.separator && (this.locale.separator = i.locale.separator), "object" == typeof i.locale.daysOfWeek && (this.locale.daysOfWeek = i.locale.daysOfWeek.slice()), "object" == typeof i.locale.monthNames && (this.locale.monthNames = i.locale.monthNames.slice()), "number" == typeof i.locale.firstDay && (this.locale.firstDay = i.locale.firstDay), "string" == typeof i.locale.applyLabel && (this.locale.applyLabel = i.locale.applyLabel), "string" == typeof i.locale.cancelLabel && (this.locale.cancelLabel = i.locale.cancelLabel), "string" == typeof i.locale.weekLabel && (this.locale.weekLabel = i.locale.weekLabel), "string" == typeof i.locale.customRangeLabel)) { var n, r, h, o = document.createElement("textarea"); o.innerHTML = i.locale.customRangeLabel; var l = o.value; this.locale.customRangeLabel = l } if (this.container.addClass(this.locale.direction), "string" == typeof i.startDate && (this.startDate = t(i.startDate, this.locale.format)), "string" == typeof i.endDate && (this.endDate = t(i.endDate, this.locale.format)), "string" == typeof i.minDate && (this.minDate = t(i.minDate, this.locale.format)), "string" == typeof i.maxDate && (this.maxDate = t(i.maxDate, this.locale.format)), "object" == typeof i.startDate && (this.startDate = t(i.startDate)), "object" == typeof i.endDate && (this.endDate = t(i.endDate)), "object" == typeof i.minDate && (this.minDate = t(i.minDate)), "object" == typeof i.maxDate && (this.maxDate = t(i.maxDate)), this.minDate && this.startDate.isBefore(this.minDate) && (this.startDate = this.minDate.clone()), this.maxDate && this.endDate.isAfter(this.maxDate) && (this.endDate = this.maxDate.clone()), "string" == typeof i.applyClass && (this.applyClass = i.applyClass), "string" == typeof i.cancelClass && (this.cancelClass = i.cancelClass), "object" == typeof i.dateLimit && (this.dateLimit = i.dateLimit), "string" == typeof i.opens && (this.opens = i.opens), "string" == typeof i.drops && (this.drops = i.drops), "boolean" == typeof i.showWeekNumbers && (this.showWeekNumbers = i.showWeekNumbers), "boolean" == typeof i.showISOWeekNumbers && (this.showISOWeekNumbers = i.showISOWeekNumbers), "string" == typeof i.buttonClasses && (this.buttonClasses = i.buttonClasses), "object" == typeof i.buttonClasses && (this.buttonClasses = i.buttonClasses.join(" ")), "boolean" == typeof i.showDropdowns && (this.showDropdowns = i.showDropdowns), "boolean" == typeof i.showCustomRangeLabel && (this.showCustomRangeLabel = i.showCustomRangeLabel), "boolean" == typeof i.singleDatePicker && (this.singleDatePicker = i.singleDatePicker, this.singleDatePicker && (this.endDate = this.startDate.clone())), "boolean" == typeof i.timePicker && (this.timePicker = i.timePicker), "boolean" == typeof i.timePickerSeconds && (this.timePickerSeconds = i.timePickerSeconds), "number" == typeof i.timePickerIncrement && (this.timePickerIncrement = i.timePickerIncrement), "boolean" == typeof i.timePicker24Hour && (this.timePicker24Hour = i.timePicker24Hour), "boolean" == typeof i.autoApply && (this.autoApply = i.autoApply), "boolean" == typeof i.autoUpdateInput && (this.autoUpdateInput = i.autoUpdateInput), "boolean" == typeof i.linkedCalendars && (this.linkedCalendars = i.linkedCalendars), "function" == typeof i.isInvalidDate && (this.isInvalidDate = i.isInvalidDate), "function" == typeof i.isCustomDate && (this.isCustomDate = i.isCustomDate), "boolean" == typeof i.alwaysShowCalendars && (this.alwaysShowCalendars = i.alwaysShowCalendars), 0 != this.locale.firstDay) for (var c = this.locale.firstDay; c > 0;) this.locale.daysOfWeek.push(this.locale.daysOfWeek.shift()), c--; if (void 0 === i.startDate && void 0 === i.endDate && e(this.element).is("input[type=text]")) { var d = e(this.element).val(), m = d.split(this.locale.separator); n = r = null, 2 == m.length ? (n = t(m[0], this.locale.format), r = t(m[1], this.locale.format)) : this.singleDatePicker && "" !== d && (n = t(d, this.locale.format), r = t(d, this.locale.format)), null !== n && null !== r && (this.setStartDate(n), this.setEndDate(r)) } if ("object" == typeof i.ranges) { for (h in i.ranges) { n = "string" == typeof i.ranges[h][0] ? t(i.ranges[h][0], this.locale.format) : t(i.ranges[h][0]), r = "string" == typeof i.ranges[h][1] ? t(i.ranges[h][1], this.locale.format) : t(i.ranges[h][1]), this.minDate && n.isBefore(this.minDate) && (n = this.minDate.clone()); var f = this.maxDate; if (this.dateLimit && f && n.clone().add(this.dateLimit).isAfter(f) && (f = n.clone().add(this.dateLimit)), f && r.isAfter(f) && (r = f.clone()), !(this.minDate && r.isBefore(this.minDate, this.timepicker ? "minute" : "day") || f && n.isAfter(f, this.timepicker ? "minute" : "day"))) { var o = document.createElement("textarea"); o.innerHTML = h; var l = o.value; this.ranges[l] = [n, r] } } var p = "<ul>"; for (h in this.ranges) p += '<li data-range-key="' + h + '">' + h + "</li>"; this.showCustomRangeLabel && (p += '<li data-range-key="' + this.locale.customRangeLabel + '">' + this.locale.customRangeLabel + "</li>"), p += "</ul>", this.container.find(".ranges").prepend(p) } "function" == typeof s && (this.callback = s), this.timePicker || (this.startDate = this.startDate.startOf("day"), this.endDate = this.endDate.endOf("day"), this.container.find(".calendar-time").hide()), this.timePicker && this.autoApply && (this.autoApply = !1), this.autoApply && "object" != typeof i.ranges ? this.container.find(".ranges").hide() : this.autoApply && this.container.find(".applyBtn, .cancelBtn").addClass("hide"), this.singleDatePicker && (this.container.addClass("single"), this.container.find(".calendar.left").addClass("single"), this.container.find(".calendar.left").show(), this.container.find(".calendar.right").hide(), this.container.find(".daterangepicker_input input, .daterangepicker_input > i").hide(), this.timePicker ? this.container.find(".ranges ul").hide() : this.container.find(".ranges").hide()), (void 0 === i.ranges && !this.singleDatePicker || this.alwaysShowCalendars) && this.container.addClass("show-calendar"), this.container.addClass("opens" + this.opens), void 0 !== i.ranges && "right" == this.opens && this.container.find(".ranges").prependTo(this.container.find(".calendar.left").parent()), this.container.find(".applyBtn, .cancelBtn").addClass(this.buttonClasses), this.applyClass.length && this.container.find(".applyBtn").addClass(this.applyClass), this.cancelClass.length && this.container.find(".cancelBtn").addClass(this.cancelClass), this.container.find(".applyBtn").html(this.locale.applyLabel), this.container.find(".cancelBtn").html(this.locale.cancelLabel), this.container.find(".calendar").on("click.daterangepicker", ".prev", e.proxy(this.clickPrev, this)).on("click.daterangepicker", ".next", e.proxy(this.clickNext, this)).on("mousedown.daterangepicker", "td.available", e.proxy(this.clickDate, this)).on("mouseenter.daterangepicker", "td.available", e.proxy(this.hoverDate, this)).on("mouseleave.daterangepicker", "td.available", e.proxy(this.updateFormInputs, this)).on("change.daterangepicker", "select.yearselect", e.proxy(this.monthOrYearChanged, this)).on("change.daterangepicker", "select.monthselect", e.proxy(this.monthOrYearChanged, this)).on("change.daterangepicker", "select.hourselect,select.minuteselect,select.secondselect,select.ampmselect", e.proxy(this.timeChanged, this)).on("click.daterangepicker", ".daterangepicker_input input", e.proxy(this.showCalendars, this)).on("focus.daterangepicker", ".daterangepicker_input input", e.proxy(this.formInputsFocused, this)).on("blur.daterangepicker", ".daterangepicker_input input", e.proxy(this.formInputsBlurred, this)).on("change.daterangepicker", ".daterangepicker_input input", e.proxy(this.formInputsChanged, this)), this.container.find(".ranges").on("click.daterangepicker", "button.applyBtn", e.proxy(this.clickApply, this)).on("click.daterangepicker", "button.cancelBtn", e.proxy(this.clickCancel, this)).on("click.daterangepicker", "li", e.proxy(this.clickRange, this)).on("mouseenter.daterangepicker", "li", e.proxy(this.hoverRange, this)).on("mouseleave.daterangepicker", "li", e.proxy(this.updateFormInputs, this)), this.element.is("input") || this.element.is("button") ? this.element.on({ "click.daterangepicker": e.proxy(this.show, this), "focus.daterangepicker": e.proxy(this.show, this), "keyup.daterangepicker": e.proxy(this.elementChanged, this), "keydown.daterangepicker": e.proxy(this.keydown, this) }) : this.element.on("click.daterangepicker", e.proxy(this.toggle, this)), this.element.is("input") && !this.singleDatePicker && this.autoUpdateInput ? (this.element.val(this.startDate.format(this.locale.format) + this.locale.separator + this.endDate.format(this.locale.format)), this.element.trigger("change")) : this.element.is("input") && this.autoUpdateInput && (this.element.val(this.startDate.format(this.locale.format)), this.element.trigger("change")) }; return a.prototype = { constructor: a, setStartDate: function(e) { "string" == typeof e && (this.startDate = t(e, this.locale.format)), "object" == typeof e && (this.startDate = t(e)), this.timePicker || (this.startDate = this.startDate.startOf("day")), this.timePicker && this.timePickerIncrement && this.startDate.minute(Math.round(this.startDate.minute() / this.timePickerIncrement) * this.timePickerIncrement), this.minDate && this.startDate.isBefore(this.minDate) && (this.startDate = this.minDate.clone(), this.timePicker && this.timePickerIncrement && this.startDate.minute(Math.round(this.startDate.minute() / this.timePickerIncrement) * this.timePickerIncrement)), this.maxDate && this.startDate.isAfter(this.maxDate) && (this.startDate = this.maxDate.clone(), this.timePicker && this.timePickerIncrement && this.startDate.minute(Math.floor(this.startDate.minute() / this.timePickerIncrement) * this.timePickerIncrement)), this.isShowing || this.updateElement(), this.updateMonthsInView() }, setEndDate: function(e) { "string" == typeof e && (this.endDate = t(e, this.locale.format)), "object" == typeof e && (this.endDate = t(e)), this.timePicker || (this.endDate = this.endDate.endOf("day")), this.timePicker && this.timePickerIncrement && this.endDate.minute(Math.round(this.endDate.minute() / this.timePickerIncrement) * this.timePickerIncrement), this.endDate.isBefore(this.startDate) && (this.endDate = this.startDate.clone()), this.maxDate && this.endDate.isAfter(this.maxDate) && (this.endDate = this.maxDate.clone()), this.dateLimit && this.startDate.clone().add(this.dateLimit).isBefore(this.endDate) && (this.endDate = this.startDate.clone().add(this.dateLimit)), this.previousRightTime = this.endDate.clone(), this.isShowing || this.updateElement(), this.updateMonthsInView() }, isInvalidDate: function() { return !1 }, isCustomDate: function() { return !1 }, updateView: function() { this.timePicker && (this.renderTimePicker("left"), this.renderTimePicker("right"), this.endDate ? this.container.find(".right .calendar-time select").removeAttr("disabled").removeClass("disabled") : this.container.find(".right .calendar-time select").attr("disabled", "disabled").addClass("disabled")), this.endDate ? (this.container.find('input[name="daterangepicker_end"]').removeClass("active"), this.container.find('input[name="daterangepicker_start"]').addClass("active")) : (this.container.find('input[name="daterangepicker_end"]').addClass("active"), this.container.find('input[name="daterangepicker_start"]').removeClass("active")), this.updateMonthsInView(), this.updateCalendars(), this.updateFormInputs() }, updateMonthsInView: function() { if (this.endDate) { if (!this.singleDatePicker && this.leftCalendar.month && this.rightCalendar.month && (this.startDate.format("YYYY-MM") == this.leftCalendar.month.format("YYYY-MM") || this.startDate.format("YYYY-MM") == this.rightCalendar.month.format("YYYY-MM")) && (this.endDate.format("YYYY-MM") == this.leftCalendar.month.format("YYYY-MM") || this.endDate.format("YYYY-MM") == this.rightCalendar.month.format("YYYY-MM"))) return; this.leftCalendar.month = this.startDate.clone().date(2), this.linkedCalendars || this.endDate.month() == this.startDate.month() && this.endDate.year() == this.startDate.year() ? this.rightCalendar.month = this.startDate.clone().date(2).add(1, "month") : this.rightCalendar.month = this.endDate.clone().date(2) } else this.leftCalendar.month.format("YYYY-MM") != this.startDate.format("YYYY-MM") && this.rightCalendar.month.format("YYYY-MM") != this.startDate.format("YYYY-MM") && (this.leftCalendar.month = this.startDate.clone().date(2), this.rightCalendar.month = this.startDate.clone().date(2).add(1, "month")); this.maxDate && this.linkedCalendars && !this.singleDatePicker && this.rightCalendar.month > this.maxDate && (this.rightCalendar.month = this.maxDate.clone().date(2), this.leftCalendar.month = this.maxDate.clone().date(2).subtract(1, "month")) }, updateCalendars: function() { if (this.timePicker) { var t, e, a; if (this.endDate) { if (t = parseInt(this.container.find(".left .hourselect").val(), 10), e = parseInt(this.container.find(".left .minuteselect").val(), 10), a = this.timePickerSeconds ? parseInt(this.container.find(".left .secondselect").val(), 10) : 0, !this.timePicker24Hour) { var i = this.container.find(".left .ampmselect").val(); "PM" === i && t < 12 && (t += 12), "AM" === i && 12 === t && (t = 0) } } else if (t = parseInt(this.container.find(".right .hourselect").val(), 10), e = parseInt(this.container.find(".right .minuteselect").val(), 10), a = this.timePickerSeconds ? parseInt(this.container.find(".right .secondselect").val(), 10) : 0, !this.timePicker24Hour) { var i = this.container.find(".right .ampmselect").val(); "PM" === i && t < 12 && (t += 12), "AM" === i && 12 === t && (t = 0) } this.leftCalendar.month.hour(t).minute(e).second(a), this.rightCalendar.month.hour(t).minute(e).second(a) } this.renderCalendar("left"), this.renderCalendar("right"), this.container.find(".ranges li").removeClass("active"), null != this.endDate && this.calculateChosenLabel() }, renderCalendar: function(a) { var i, s, n = "left" == a ? this.leftCalendar : this.rightCalendar, r = n.month.month(), h = n.month.year(), o = n.month.hour(), l = n.month.minute(), c = n.month.second(), d = t([h, r]).daysInMonth(), m = t([h, r, 1]), f = t([h, r, d]), p = t(m).subtract(1, "month").month(), u = t(m).subtract(1, "month").year(), g = t([u, p]).daysInMonth(), D = m.day(), n = []; n.firstDay = m, n.lastDay = f; for (var k = 0; k < 6; k++) n[k] = []; var y = g - D + this.locale.firstDay + 1; y > g && (y -= 7), D == this.locale.firstDay && (y = g - 6); for (var v = t([u, p, y, 12, l, c]), k = 0, i = 0, s = 0; k < 42; k++, i++, v = t(v).add(24, "hour")) k > 0 && i % 7 == 0 && (i = 0, s++), n[s][i] = v.clone().hour(o).minute(l).second(c), v.hour(12), this.minDate && n[s][i].format("YYYY-MM-DD") == this.minDate.format("YYYY-MM-DD") && n[s][i].isBefore(this.minDate) && "left" == a && (n[s][i] = this.minDate.clone()), this.maxDate && n[s][i].format("YYYY-MM-DD") == this.maxDate.format("YYYY-MM-DD") && n[s][i].isAfter(this.maxDate) && "right" == a && (n[s][i] = this.maxDate.clone()); "left" == a ? this.leftCalendar.calendar = n : this.rightCalendar.calendar = n; var b = "left" == a ? this.minDate : this.startDate, C = this.maxDate; "left" == a ? this.startDate : this.endDate; var _ = "ltr" == this.locale.direction ? { left: "chevron-left", right: "chevron-right" } : { left: "chevron-right", right: "chevron-left" }, Y = '<table class="table-condensed">'; Y += "<thead>", Y += "<tr>", (this.showWeekNumbers || this.showISOWeekNumbers) && (Y += "<th></th>"), (!b || b.isBefore(n.firstDay)) && (!this.linkedCalendars || "left" == a) ? Y += '<th class="prev available"><i class="fa fa-' + _.left + " glyphicon glyphicon-" + _.left + '"></i></th>' : Y += "<th></th>"; var w = this.locale.monthNames[n[1][1].month()] + n[1][1].format(" YYYY"); if (this.showDropdowns) { for (var P = n[1][1].month(), $ = n[1][1].year(), M = C && C.year() || $ + 5, x = b && b.year() || $ - 50, L = $ == x, I = $ == M, S = '<select class="monthselect">', A = 0; A < 12; A++)(!L || A >= b.month()) && (!I || A <= C.month()) ? S += "<option value='" + A + "'" + (A === P ? " selected='selected'" : "") + ">" + this.locale.monthNames[A] + "</option>" : S += "<option value='" + A + "'" + (A === P ? " selected='selected'" : "") + " disabled='disabled'>" + this.locale.monthNames[A] + "</option>"; S += "</select>"; for (var B = '<select class="yearselect">', E = x; E <= M; E++) B += '<option value="' + E + '"' + (E === $ ? ' selected="selected"' : "") + ">" + E + "</option>"; B += "</select>", w = S + B } if (Y += '<th colspan="5" class="month">' + w + "</th>", (!C || C.isAfter(n.lastDay)) && (!this.linkedCalendars || "right" == a || this.singleDatePicker) ? Y += '<th class="next available"><i class="fa fa-' + _.right + " glyphicon glyphicon-" + _.right + '"></i></th>' : Y += "<th></th>", Y += "</tr>", Y += "<tr>", (this.showWeekNumbers || this.showISOWeekNumbers) && (Y += '<th class="week">' + this.locale.weekLabel + "</th>"), e.each(this.locale.daysOfWeek, function(t, e) { Y += "<th>" + e + "</th>" }), Y += "</tr>", Y += "</thead>", Y += "<tbody>", null == this.endDate && this.dateLimit) { var W = this.startDate.clone().add(this.dateLimit).endOf("day"); (!C || W.isBefore(C)) && (C = W) } for (var s = 0; s < 6; s++) { Y += "<tr>", this.showWeekNumbers ? Y += '<td class="week">' + n[s][0].week() + "</td>" : this.showISOWeekNumbers && (Y += '<td class="week">' + n[s][0].isoWeek() + "</td>"); for (var i = 0; i < 7; i++) { var O = []; n[s][i].isSame(new Date, "day") && O.push("today"), n[s][i].isoWeekday() > 5 && O.push("weekend"), n[s][i].month() != n[1][1].month() && O.push("off"), this.minDate && n[s][i].isBefore(this.minDate, "day") && O.push("off", "disabled"), C && n[s][i].isAfter(C, "day") && O.push("off", "disabled"), this.isInvalidDate(n[s][i]) && O.push("off", "disabled"), n[s][i].format("YYYY-MM-DD") == this.startDate.format("YYYY-MM-DD") && O.push("active", "start-date"), null != this.endDate && n[s][i].format("YYYY-MM-DD") == this.endDate.format("YYYY-MM-DD") && O.push("active", "end-date"), null != this.endDate && n[s][i] > this.startDate && n[s][i] < this.endDate && O.push("in-range"); var N = this.isCustomDate(n[s][i]); !1 !== N && ("string" == typeof N ? O.push(N) : Array.prototype.push.apply(O, N)); for (var R = "", j = !1, k = 0; k < O.length; k++) R += O[k] + " ", "disabled" == O[k] && (j = !0); j || (R += "available"), Y += '<td class="' + R.replace(/^\s+|\s+$/g, "") + '" data-title="r' + s + "c" + i + '">' + n[s][i].date() + "</td>" } Y += "</tr>" } Y += "</tbody>", Y += "</table>", this.container.find(".calendar." + a + " .calendar-table").html(Y) }, renderTimePicker: function(t) { if ("right" != t || this.endDate) { var e, a, i, s = this.maxDate; if (this.dateLimit && (!this.maxDate || this.startDate.clone().add(this.dateLimit).isAfter(this.maxDate)) && (s = this.startDate.clone().add(this.dateLimit)), "left" == t) a = this.startDate.clone(), i = this.minDate; else if ("right" == t) { a = this.endDate.clone(), i = this.startDate; var n = this.container.find(".calendar.right .calendar-time div"); if ("" != n.html() && (a.hour(n.find(".hourselect option:selected").val() || a.hour()), a.minute(n.find(".minuteselect option:selected").val() || a.minute()), a.second(n.find(".secondselect option:selected").val() || a.second()), !this.timePicker24Hour)) { var r = n.find(".ampmselect option:selected").val(); "PM" === r && 12 > a.hour() && a.hour(a.hour() + 12), "AM" === r && 12 === a.hour() && a.hour(0) } a.isBefore(this.startDate) && (a = this.startDate.clone()), s && a.isAfter(s) && (a = s.clone()) } e = '<select class="hourselect">'; for (var h = this.timePicker24Hour ? 0 : 1, o = this.timePicker24Hour ? 23 : 12, l = h; l <= o; l++) { var c = l; this.timePicker24Hour || (c = a.hour() >= 12 ? 12 == l ? 12 : l + 12 : 12 == l ? 0 : l); var d = a.clone().hour(c), m = !1; i && d.minute(59).isBefore(i) && (m = !0), s && d.minute(0).isAfter(s) && (m = !0), c != a.hour() || m ? m ? e += '<option value="' + l + '" disabled="disabled" class="disabled">' + l + "</option>" : e += '<option value="' + l + '">' + l + "</option>" : e += '<option value="' + l + '" selected="selected">' + l + "</option>" } e += "</select> ", e += ': <select class="minuteselect">'; for (var l = 0; l < 60; l += this.timePickerIncrement) { var f = l < 10 ? "0" + l : l, d = a.clone().minute(l), m = !1; i && d.second(59).isBefore(i) && (m = !0), s && d.second(0).isAfter(s) && (m = !0), a.minute() != l || m ? m ? e += '<option value="' + l + '" disabled="disabled" class="disabled">' + f + "</option>" : e += '<option value="' + l + '">' + f + "</option>" : e += '<option value="' + l + '" selected="selected">' + f + "</option>" } if (e += "</select> ", this.timePickerSeconds) { e += ': <select class="secondselect">'; for (var l = 0; l < 60; l++) { var f = l < 10 ? "0" + l : l, d = a.clone().second(l), m = !1; i && d.isBefore(i) && (m = !0), s && d.isAfter(s) && (m = !0), a.second() != l || m ? m ? e += '<option value="' + l + '" disabled="disabled" class="disabled">' + f + "</option>" : e += '<option value="' + l + '">' + f + "</option>" : e += '<option value="' + l + '" selected="selected">' + f + "</option>" } e += "</select> " } if (!this.timePicker24Hour) { e += '<select class="ampmselect">'; var p = "", u = ""; i && a.clone().hour(12).minute(0).second(0).isBefore(i) && (p = ' disabled="disabled" class="disabled"'), s && a.clone().hour(0).minute(0).second(0).isAfter(s) && (u = ' disabled="disabled" class="disabled"'), a.hour() >= 12 ? e += '<option value="AM"' + p + '>AM</option><option value="PM" selected="selected"' + u + ">PM</option>" : e += '<option value="AM" selected="selected"' + p + '>AM</option><option value="PM"' + u + ">PM</option>", e += "</select>" } this.container.find(".calendar." + t + " .calendar-time div").html(e) } }, updateFormInputs: function() { this.container.find("input[name=daterangepicker_start]").is(":focus") || this.container.find("input[name=daterangepicker_end]").is(":focus") || (this.container.find("input[name=daterangepicker_start]").val(this.startDate.format(this.locale.format)), this.endDate && this.container.find("input[name=daterangepicker_end]").val(this.endDate.format(this.locale.format)), this.singleDatePicker || this.endDate && (this.startDate.isBefore(this.endDate) || this.startDate.isSame(this.endDate)) ? this.container.find("button.applyBtn").removeAttr("disabled") : this.container.find("button.applyBtn").attr("disabled", "disabled")) }, move: function() { var t, a = { top: 0, left: 0 }, i = e(window).width(); this.parentEl.is("body") || (a = { top: this.parentEl.offset().top - this.parentEl.scrollTop(), left: this.parentEl.offset().left - this.parentEl.scrollLeft() }, i = this.parentEl[0].clientWidth + this.parentEl.offset().left), t = "up" == this.drops ? this.element.offset().top - this.container.outerHeight() - a.top : this.element.offset().top + this.element.outerHeight() - a.top, this.container["up" == this.drops ? "addClass" : "removeClass"]("dropup"), "left" == this.opens ? (this.container.css({ top: t, right: i - this.element.offset().left - this.element.outerWidth(), left: "auto" }), this.container.offset().left < 0 && this.container.css({ right: "auto", left: 9 })) : "center" == this.opens ? (this.container.css({ top: t, left: this.element.offset().left - a.left + this.element.outerWidth() / 2 - this.container.outerWidth() / 2, right: "auto" }), this.container.offset().left < 0 && this.container.css({ right: "auto", left: 9 })) : (this.container.css({ top: t, left: this.element.offset().left - a.left, right: "auto" }), this.container.offset().left + this.container.outerWidth() > e(window).width() && this.container.css({ left: "auto", right: 0 })) }, show: function(t) { this.isShowing || (this._outsideClickProxy = e.proxy(function(t) { this.outsideClick(t) }, this), e(document).on("mousedown.daterangepicker", this._outsideClickProxy).on("touchend.daterangepicker", this._outsideClickProxy).on("click.daterangepicker", "[data-toggle=dropdown]", this._outsideClickProxy).on("focusin.daterangepicker", this._outsideClickProxy), e(window).on("resize.daterangepicker", e.proxy(function(t) { this.move(t) }, this)), this.oldStartDate = this.startDate.clone(), this.oldEndDate = this.endDate.clone(), this.previousRightTime = this.endDate.clone(), this.updateView(), this.container.show(), this.move(), this.element.trigger("show.daterangepicker", this), this.isShowing = !0) }, hide: function(t) { this.isShowing && (this.endDate || (this.startDate = this.oldStartDate.clone(), this.endDate = this.oldEndDate.clone()), this.startDate.isSame(this.oldStartDate) && this.endDate.isSame(this.oldEndDate) || this.callback(this.startDate, this.endDate, this.chosenLabel), this.updateElement(), e(document).off(".daterangepicker"), e(window).off(".daterangepicker"), this.container.hide(), this.element.trigger("hide.daterangepicker", this), this.isShowing = !1) }, toggle: function(t) { this.isShowing ? this.hide() : this.show() }, outsideClick: function(t) { var a = e(t.target); "focusin" == t.type || a.closest(this.element).length || a.closest(this.container).length || a.closest(".calendar-table").length || (this.hide(), this.element.trigger("outsideClick.daterangepicker", this)) }, showCalendars: function() { this.container.addClass("show-calendar"), this.move(), this.element.trigger("showCalendar.daterangepicker", this) }, hideCalendars: function() { this.container.removeClass("show-calendar"), this.element.trigger("hideCalendar.daterangepicker", this) }, hoverRange: function(t) { if (!(this.container.find("input[name=daterangepicker_start]").is(":focus") || this.container.find("input[name=daterangepicker_end]").is(":focus"))) { var e = t.target.getAttribute("data-range-key"); if (e == this.locale.customRangeLabel) this.updateView(); else { var a = this.ranges[e]; this.container.find("input[name=daterangepicker_start]").val(a[0].format(this.locale.format)), this.container.find("input[name=daterangepicker_end]").val(a[1].format(this.locale.format)) } } }, clickRange: function(t) { var e = t.target.getAttribute("data-range-key"); if (this.chosenLabel = e, e == this.locale.customRangeLabel) this.showCalendars(); else { var a = this.ranges[e]; this.startDate = a[0], this.endDate = a[1], this.timePicker || (this.startDate.startOf("day"), this.endDate.endOf("day")), this.alwaysShowCalendars || this.hideCalendars(), this.clickApply() } }, clickPrev: function(t) { e(t.target).parents(".calendar").hasClass("left") ? (this.leftCalendar.month.subtract(1, "month"), this.linkedCalendars && this.rightCalendar.month.subtract(1, "month")) : this.rightCalendar.month.subtract(1, "month"), this.updateCalendars() }, clickNext: function(t) { e(t.target).parents(".calendar").hasClass("left") ? this.leftCalendar.month.add(1, "month") : (this.rightCalendar.month.add(1, "month"), this.linkedCalendars && this.leftCalendar.month.add(1, "month")), this.updateCalendars() }, hoverDate: function(t) { if (e(t.target).hasClass("available")) { var a = e(t.target).attr("data-title"), i = a.substr(1, 1), s = a.substr(3, 1), n = e(t.target).parents(".calendar").hasClass("left") ? this.leftCalendar.calendar[i][s] : this.rightCalendar.calendar[i][s]; this.endDate && !this.container.find("input[name=daterangepicker_start]").is(":focus") ? this.container.find("input[name=daterangepicker_start]").val(n.format(this.locale.format)) : this.endDate || this.container.find("input[name=daterangepicker_end]").is(":focus") || this.container.find("input[name=daterangepicker_end]").val(n.format(this.locale.format)); var r = this.leftCalendar, h = this.rightCalendar, o = this.startDate; this.endDate || this.container.find(".calendar tbody td").each(function(t, a) { if (!e(a).hasClass("week")) { var i = e(a).attr("data-title"), s = i.substr(1, 1), l = i.substr(3, 1), c = e(a).parents(".calendar").hasClass("left") ? r.calendar[s][l] : h.calendar[s][l]; c.isAfter(o) && c.isBefore(n) || c.isSame(n, "day") ? e(a).addClass("in-range") : e(a).removeClass("in-range") } }) } }, clickDate: function(t) { if (e(t.target).hasClass("available")) { var a = e(t.target).attr("data-title"), i = a.substr(1, 1), s = a.substr(3, 1), n = e(t.target).parents(".calendar").hasClass("left") ? this.leftCalendar.calendar[i][s] : this.rightCalendar.calendar[i][s]; if (this.endDate || n.isBefore(this.startDate, "day")) { if (this.timePicker) { var r = parseInt(this.container.find(".left .hourselect").val(), 10); if (!this.timePicker24Hour) { var h = this.container.find(".left .ampmselect").val(); "PM" === h && r < 12 && (r += 12), "AM" === h && 12 === r && (r = 0) } var o = parseInt(this.container.find(".left .minuteselect").val(), 10), l = this.timePickerSeconds ? parseInt(this.container.find(".left .secondselect").val(), 10) : 0; n = n.clone().hour(r).minute(o).second(l) } this.endDate = null, this.setStartDate(n.clone()) } else if (!this.endDate && n.isBefore(this.startDate)) this.setEndDate(this.startDate.clone()); else { if (this.timePicker) { var r = parseInt(this.container.find(".right .hourselect").val(), 10); if (!this.timePicker24Hour) { var h = this.container.find(".right .ampmselect").val(); "PM" === h && r < 12 && (r += 12), "AM" === h && 12 === r && (r = 0) } var o = parseInt(this.container.find(".right .minuteselect").val(), 10), l = this.timePickerSeconds ? parseInt(this.container.find(".right .secondselect").val(), 10) : 0; n = n.clone().hour(r).minute(o).second(l) } this.setEndDate(n.clone()), this.autoApply && (this.calculateChosenLabel(), this.clickApply()) } this.singleDatePicker && (this.setEndDate(this.startDate), this.timePicker || this.clickApply()), this.updateView(), t.stopPropagation() } }, calculateChosenLabel: function() { var t = !0, e = 0; for (var a in this.ranges) { if (this.timePicker) { if (this.startDate.isSame(this.ranges[a][0]) && this.endDate.isSame(this.ranges[a][1])) { t = !1, this.chosenLabel = this.container.find(".ranges li:eq(" + e + ")").addClass("active").html(); break } } else if (this.startDate.format("YYYY-MM-DD") == this.ranges[a][0].format("YYYY-MM-DD") && this.endDate.format("YYYY-MM-DD") == this.ranges[a][1].format("YYYY-MM-DD")) { t = !1, this.chosenLabel = this.container.find(".ranges li:eq(" + e + ")").addClass("active").html(); break } e++ } t && (this.showCustomRangeLabel ? this.chosenLabel = this.container.find(".ranges li:last").addClass("active").html() : this.chosenLabel = null, this.showCalendars()) }, clickApply: function(t) { this.hide(), this.element.trigger("apply.daterangepicker", this) }, clickCancel: function(t) { this.startDate = this.oldStartDate, this.endDate = this.oldEndDate, this.hide(), this.element.trigger("cancel.daterangepicker", this) }, monthOrYearChanged: function(t) { var a = e(t.target).closest(".calendar").hasClass("left"), i = this.container.find(".calendar." + (a ? "left" : "right")), s = parseInt(i.find(".monthselect").val(), 10), n = i.find(".yearselect").val(); !a && (n < this.startDate.year() || n == this.startDate.year() && s < this.startDate.month()) && (s = this.startDate.month(), n = this.startDate.year()), this.minDate && (n < this.minDate.year() || n == this.minDate.year() && s < this.minDate.month()) && (s = this.minDate.month(), n = this.minDate.year()), this.maxDate && (n > this.maxDate.year() || n == this.maxDate.year() && s > this.maxDate.month()) && (s = this.maxDate.month(), n = this.maxDate.year()), a ? (this.leftCalendar.month.month(s).year(n), this.linkedCalendars && (this.rightCalendar.month = this.leftCalendar.month.clone().add(1, "month"))) : (this.rightCalendar.month.month(s).year(n), this.linkedCalendars && (this.leftCalendar.month = this.rightCalendar.month.clone().subtract(1, "month"))), this.updateCalendars() }, timeChanged: function(t) { var a = e(t.target).closest(".calendar"), i = a.hasClass("left"), s = parseInt(a.find(".hourselect").val(), 10), n = parseInt(a.find(".minuteselect").val(), 10), r = this.timePickerSeconds ? parseInt(a.find(".secondselect").val(), 10) : 0; if (!this.timePicker24Hour) { var h = a.find(".ampmselect").val(); "PM" === h && s < 12 && (s += 12), "AM" === h && 12 === s && (s = 0) } if (i) { var o = this.startDate.clone(); o.hour(s), o.minute(n), o.second(r), this.setStartDate(o), this.singleDatePicker ? this.endDate = this.startDate.clone() : this.endDate && this.endDate.format("YYYY-MM-DD") == o.format("YYYY-MM-DD") && this.endDate.isBefore(o) && this.setEndDate(o.clone()) } else if (this.endDate) { var l = this.endDate.clone(); l.hour(s), l.minute(n), l.second(r), this.setEndDate(l) } this.updateCalendars(), this.updateFormInputs(), this.renderTimePicker("left"), this.renderTimePicker("right") }, formInputsChanged: function(a) { var i = e(a.target).closest(".calendar").hasClass("right"), s = t(this.container.find('input[name="daterangepicker_start"]').val(), this.locale.format), n = t(this.container.find('input[name="daterangepicker_end"]').val(), this.locale.format); s.isValid() && n.isValid() && (i && n.isBefore(s) && (s = n.clone()), this.setStartDate(s), this.setEndDate(n), i ? this.container.find('input[name="daterangepicker_start"]').val(this.startDate.format(this.locale.format)) : this.container.find('input[name="daterangepicker_end"]').val(this.endDate.format(this.locale.format))), this.updateView() }, formInputsFocused: function(t) { this.container.find('input[name="daterangepicker_start"], input[name="daterangepicker_end"]').removeClass("active"), e(t.target).addClass("active"), e(t.target).closest(".calendar").hasClass("right") && (this.endDate = null, this.setStartDate(this.startDate.clone()), this.updateView()) }, formInputsBlurred: function(e) { if (!this.endDate) { var a = t(this.container.find('input[name="daterangepicker_end"]').val(), this.locale.format); a.isValid() && (this.setEndDate(a), this.updateView()) } }, elementChanged: function() { if (this.element.is("input") && this.element.val().length && !(this.element.val().length < this.locale.format.length)) { var e = this.element.val().split(this.locale.separator), a = null, i = null; 2 === e.length && (a = t(e[0], this.locale.format), i = t(e[1], this.locale.format)), (this.singleDatePicker || null === a || null === i) && (i = a = t(this.element.val(), this.locale.format)), a.isValid() && i.isValid() && (this.setStartDate(a), this.setEndDate(i), this.updateView()) } }, keydown: function(t) { (9 === t.keyCode || 13 === t.keyCode) && this.hide() }, updateElement: function() { this.element.is("input") && !this.singleDatePicker && this.autoUpdateInput ? (this.element.val(this.startDate.format(this.locale.format) + this.locale.separator + this.endDate.format(this.locale.format)), this.element.trigger("change")) : this.element.is("input") && this.autoUpdateInput && (this.element.val(this.startDate.format(this.locale.format)), this.element.trigger("change")) }, remove: function() { this.container.remove(), this.element.off(".daterangepicker"), this.element.removeData() } }, e.fn.daterangepicker = function(t, i) { return this.each(function() { var s = e(this); s.data("daterangepicker") && s.data("daterangepicker").remove(), s.data("daterangepicker", new a(s, t, i)) }), this }, a });