! function(t) { var e = {}; function i(n) { if (e[n]) return e[n].exports; var o = e[n] = { i: n, l: !1, exports: {} }; return t[n].call(o.exports, o, o.exports, i), o.l = !0, o.exports } i.m = t, i.c = e, i.d = function(t, e, n) { i.o(t, e) || Object.defineProperty(t, e, { configurable: !1, enumerable: !0, get: n }) }, i.n = function(t) { var e = t && t.__esModule ? function() { return t.default } : function() { return t }; return i.d(e, "a", e), e }, i.o = function(t, e) { return Object.prototype.hasOwnProperty.call(t, e) }, i.p = "/", i(i.s = 2) }([function(t, e, i) { var n; ! function(e, i) { "use strict"; "object" == typeof t && "object" == typeof t.exports ? t.exports = e.document ? i(e, !0) : function(t) { if (!t.document) throw new Error("jQuery requires a window with a document"); return i(t) } : i(e) }("undefined" != typeof window ? window : this, function(i, o) { "use strict"; var s = [], r = Object.getPrototypeOf, a = s.slice, l = s.flat ? function(t) { return s.flat.call(t) } : function(t) { return s.concat.apply([], t) }, c = s.push, d = s.indexOf, u = {}, p = u.toString, f = u.hasOwnProperty, h = f.toString, v = h.call(Object), g = {}, m = function(t) { return "function" == typeof t && "number" != typeof t.nodeType }, y = function(t) { return null != t && t === t.window }, b = i.document, w = { type: !0, src: !0, nonce: !0, noModule: !0 }; function x(t, e, i) { var n, o, s = (i = i || b).createElement("script"); if (s.text = t, e) for (n in w)(o = e[n] || e.getAttribute && e.getAttribute(n)) && s.setAttribute(n, o); i.head.appendChild(s).parentNode.removeChild(s) } function k(t) { return null == t ? t + "" : "object" == typeof t || "function" == typeof t ? u[p.call(t)] || "object" : typeof t } var S = function(t, e) { return new S.fn.init(t, e) }; function T(t) { var e = !!t && "length" in t && t.length, i = k(t); return !m(t) && !y(t) && ("array" === i || 0 === e || "number" == typeof e && e > 0 && e - 1 in t) } S.fn = S.prototype = { jquery: "3.5.1", constructor: S, length: 0, toArray: function() { return a.call(this) }, get: function(t) { return null == t ? a.call(this) : t < 0 ? this[t + this.length] : this[t] }, pushStack: function(t) { var e = S.merge(this.constructor(), t); return e.prevObject = this, e }, each: function(t) { return S.each(this, t) }, map: function(t) { return this.pushStack(S.map(this, function(e, i) { return t.call(e, i, e) })) }, slice: function() { return this.pushStack(a.apply(this, arguments)) }, first: function() { return this.eq(0) }, last: function() { return this.eq(-1) }, even: function() { return this.pushStack(S.grep(this, function(t, e) { return (e + 1) % 2 })) }, odd: function() { return this.pushStack(S.grep(this, function(t, e) { return e % 2 })) }, eq: function(t) { var e = this.length, i = +t + (t < 0 ? e : 0); return this.pushStack(i >= 0 && i < e ? [this[i]] : []) }, end: function() { return this.prevObject || this.constructor() }, push: c, sort: s.sort, splice: s.splice }, S.extend = S.fn.extend = function() { var t, e, i, n, o, s, r = arguments[0] || {}, a = 1, l = arguments.length, c = !1; for ("boolean" == typeof r && (c = r, r = arguments[a] || {}, a++), "object" == typeof r || m(r) || (r = {}), a === l && (r = this, a--); a < l; a++) if (null != (t = arguments[a])) for (e in t) n = t[e], "__proto__" !== e && r !== n && (c && n && (S.isPlainObject(n) || (o = Array.isArray(n))) ? (i = r[e], s = o && !Array.isArray(i) ? [] : o || S.isPlainObject(i) ? i : {}, o = !1, r[e] = S.extend(c, s, n)) : void 0 !== n && (r[e] = n)); return r }, S.extend({ expando: "jQuery" + ("3.5.1" + Math.random()).replace(/\D/g, ""), isReady: !0, error: function(t) { throw new Error(t) }, noop: function() {}, isPlainObject: function(t) { var e, i; return !(!t || "[object Object]" !== p.call(t)) && (!(e = r(t)) || "function" == typeof(i = f.call(e, "constructor") && e.constructor) && h.call(i) === v) }, isEmptyObject: function(t) { var e; for (e in t) return !1; return !0 }, globalEval: function(t, e, i) { x(t, { nonce: e && e.nonce }, i) }, each: function(t, e) { var i, n = 0; if (T(t)) for (i = t.length; n < i && !1 !== e.call(t[n], n, t[n]); n++); else for (n in t) if (!1 === e.call(t[n], n, t[n])) break; return t }, makeArray: function(t, e) { var i = e || []; return null != t && (T(Object(t)) ? S.merge(i, "string" == typeof t ? [t] : t) : c.call(i, t)), i }, inArray: function(t, e, i) { return null == e ? -1 : d.call(e, t, i) }, merge: function(t, e) { for (var i = +e.length, n = 0, o = t.length; n < i; n++) t[o++] = e[n]; return t.length = o, t }, grep: function(t, e, i) { for (var n = [], o = 0, s = t.length, r = !i; o < s; o++) !e(t[o], o) !== r && n.push(t[o]); return n }, map: function(t, e, i) { var n, o, s = 0, r = []; if (T(t)) for (n = t.length; s < n; s++) null != (o = e(t[s], s, i)) && r.push(o); else for (s in t) null != (o = e(t[s], s, i)) && r.push(o); return l(r) }, guid: 1, support: g }), "function" == typeof Symbol && (S.fn[Symbol.iterator] = s[Symbol.iterator]), S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function(t, e) { u["[object " + e + "]"] = e.toLowerCase() }); var C = function(t) { var e, i, n, o, s, r, a, l, c, d, u, p, f, h, v, g, m, y, b, w = "sizzle" + 1 * new Date, x = t.document, k = 0, S = 0, T = lt(), C = lt(), $ = lt(), P = lt(), _ = function(t, e) { return t === e && (u = !0), 0 }, E = {}.hasOwnProperty, A = [], L = A.pop, j = A.push, M = A.push, O = A.slice, D = function(t, e) { for (var i = 0, n = t.length; i < n; i++) if (t[i] === e) return i; return -1 }, I = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", z = "[\\x20\\t\\r\\n\\f]", q = "(?:\\\\[\\da-fA-F]{1,6}" + z + "?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+", H = "\\[" + z + "*(" + q + ")(?:" + z + "*([*^$|!~]?=)" + z + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + q + "))|)" + z + "*\\]", F = ":(" + q + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + H + ")*)|.*)\\)|)", N = new RegExp(z + "+", "g"), R = new RegExp("^" + z + "+|((?:^|[^\\\\])(?:\\\\.)*)" + z + "+$", "g"), B = new RegExp("^" + z + "*," + z + "*"), W = new RegExp("^" + z + "*([>+~]|" + z + ")" + z + "*"), X = new RegExp(z + "|>"), Y = new RegExp(F), U = new RegExp("^" + q + "$"), V = { ID: new RegExp("^#(" + q + ")"), CLASS: new RegExp("^\\.(" + q + ")"), TAG: new RegExp("^(" + q + "|[*])"), ATTR: new RegExp("^" + H), PSEUDO: new RegExp("^" + F), CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + z + "*(even|odd|(([+-]|)(\\d*)n|)" + z + "*(?:([+-]|)" + z + "*(\\d+)|))" + z + "*\\)|)", "i"), bool: new RegExp("^(?:" + I + ")$", "i"), needsContext: new RegExp("^" + z + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + z + "*((?:-\\d)?\\d*)" + z + "*\\)|)(?=[^-]|$)", "i") }, J = /HTML$/i, G = /^(?:input|select|textarea|button)$/i, Q = /^h\d$/i, Z = /^[^{]+\{\s*\[native \w/, K = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, tt = /[+~]/, et = new RegExp("\\\\[\\da-fA-F]{1,6}" + z + "?|\\\\([^\\r\\n\\f])", "g"), it = function(t, e) { var i = "0x" + t.slice(1) - 65536; return e || (i < 0 ? String.fromCharCode(i + 65536) : String.fromCharCode(i >> 10 | 55296, 1023 & i | 56320)) }, nt = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, ot = function(t, e) { return e ? "\0" === t ? "�" : t.slice(0, -1) + "\\" + t.charCodeAt(t.length - 1).toString(16) + " " : "\\" + t }, st = function() { p() }, rt = wt(function(t) { return !0 === t.disabled && "fieldset" === t.nodeName.toLowerCase() }, { dir: "parentNode", next: "legend" }); try { M.apply(A = O.call(x.childNodes), x.childNodes), A[x.childNodes.length].nodeType } catch (t) { M = { apply: A.length ? function(t, e) { j.apply(t, O.call(e)) } : function(t, e) { for (var i = t.length, n = 0; t[i++] = e[n++];); t.length = i - 1 } } } function at(t, e, n, o) { var s, a, c, d, u, h, m, y = e && e.ownerDocument, x = e ? e.nodeType : 9; if (n = n || [], "string" != typeof t || !t || 1 !== x && 9 !== x && 11 !== x) return n; if (!o && (p(e), e = e || f, v)) { if (11 !== x && (u = K.exec(t))) if (s = u[1]) { if (9 === x) { if (!(c = e.getElementById(s))) return n; if (c.id === s) return n.push(c), n } else if (y && (c = y.getElementById(s)) && b(e, c) && c.id === s) return n.push(c), n } else { if (u[2]) return M.apply(n, e.getElementsByTagName(t)), n; if ((s = u[3]) && i.getElementsByClassName && e.getElementsByClassName) return M.apply(n, e.getElementsByClassName(s)), n } if (i.qsa && !P[t + " "] && (!g || !g.test(t)) && (1 !== x || "object" !== e.nodeName.toLowerCase())) { if (m = t, y = e, 1 === x && (X.test(t) || W.test(t))) { for ((y = tt.test(t) && mt(e.parentNode) || e) === e && i.scope || ((d = e.getAttribute("id")) ? d = d.replace(nt, ot) : e.setAttribute("id", d = w)), a = (h = r(t)).length; a--;) h[a] = (d ? "#" + d : ":scope") + " " + bt(h[a]); m = h.join(",") } try { return M.apply(n, y.querySelectorAll(m)), n } catch (e) { P(t, !0) } finally { d === w && e.removeAttribute("id") } } } return l(t.replace(R, "$1"), e, n, o) } function lt() { var t = []; return function e(i, o) { return t.push(i + " ") > n.cacheLength && delete e[t.shift()], e[i + " "] = o } } function ct(t) { return t[w] = !0, t } function dt(t) { var e = f.createElement("fieldset"); try { return !!t(e) } catch (t) { return !1 } finally { e.parentNode && e.parentNode.removeChild(e), e = null } } function ut(t, e) { for (var i = t.split("|"), o = i.length; o--;) n.attrHandle[i[o]] = e } function pt(t, e) { var i = e && t, n = i && 1 === t.nodeType && 1 === e.nodeType && t.sourceIndex - e.sourceIndex; if (n) return n; if (i) for (; i = i.nextSibling;) if (i === e) return -1; return t ? 1 : -1 } function ft(t) { return function(e) { return "input" === e.nodeName.toLowerCase() && e.type === t } } function ht(t) { return function(e) { var i = e.nodeName.toLowerCase(); return ("input" === i || "button" === i) && e.type === t } } function vt(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 && rt(e) === t : e.disabled === t : "label" in e && e.disabled === t } } function gt(t) { return ct(function(e) { return e = +e, ct(function(i, n) { for (var o, s = t([], i.length, e), r = s.length; r--;) i[o = s[r]] && (i[o] = !(n[o] = i[o])) }) }) } function mt(t) { return t && void 0 !== t.getElementsByTagName && t } for (e in i = at.support = {}, s = at.isXML = function(t) { var e = t.namespaceURI, i = (t.ownerDocument || t).documentElement; return !J.test(e || i && i.nodeName || "HTML") }, p = at.setDocument = function(t) { var e, o, r = t ? t.ownerDocument || t : x; return r != f && 9 === r.nodeType && r.documentElement ? (h = (f = r).documentElement, v = !s(f), x != f && (o = f.defaultView) && o.top !== o && (o.addEventListener ? o.addEventListener("unload", st, !1) : o.attachEvent && o.attachEvent("onunload", st)), i.scope = dt(function(t) { return h.appendChild(t).appendChild(f.createElement("div")), void 0 !== t.querySelectorAll && !t.querySelectorAll(":scope fieldset div").length }), i.attributes = dt(function(t) { return t.className = "i", !t.getAttribute("className") }), i.getElementsByTagName = dt(function(t) { return t.appendChild(f.createComment("")), !t.getElementsByTagName("*").length }), i.getElementsByClassName = Z.test(f.getElementsByClassName), i.getById = dt(function(t) { return h.appendChild(t).id = w, !f.getElementsByName || !f.getElementsByName(w).length }), i.getById ? (n.filter.ID = function(t) { var e = t.replace(et, it); return function(t) { return t.getAttribute("id") === e } }, n.find.ID = function(t, e) { if (void 0 !== e.getElementById && v) { var i = e.getElementById(t); return i ? [i] : [] } }) : (n.filter.ID = function(t) { var e = t.replace(et, it); return function(t) { var i = void 0 !== t.getAttributeNode && t.getAttributeNode("id"); return i && i.value === e } }, n.find.ID = function(t, e) { if (void 0 !== e.getElementById && v) { var i, n, o, s = e.getElementById(t); if (s) { if ((i = s.getAttributeNode("id")) && i.value === t) return [s]; for (o = e.getElementsByName(t), n = 0; s = o[n++];) if ((i = s.getAttributeNode("id")) && i.value === t) return [s] } return [] } }), n.find.TAG = i.getElementsByTagName ? function(t, e) { return void 0 !== e.getElementsByTagName ? e.getElementsByTagName(t) : i.qsa ? e.querySelectorAll(t) : void 0 } : function(t, e) { var i, n = [], o = 0, s = e.getElementsByTagName(t); if ("*" === t) { for (; i = s[o++];) 1 === i.nodeType && n.push(i); return n } return s }, n.find.CLASS = i.getElementsByClassName && function(t, e) { if (void 0 !== e.getElementsByClassName && v) return e.getElementsByClassName(t) }, m = [], g = [], (i.qsa = Z.test(f.querySelectorAll)) && (dt(function(t) { var e; h.appendChild(t).innerHTML = "", t.querySelectorAll("[msallowcapture^='']").length && g.push("[*^$]=" + z + "*(?:''|\"\")"), t.querySelectorAll("[selected]").length || g.push("\\[" + z + "*(?:value|" + I + ")"), t.querySelectorAll("[id~=" + w + "-]").length || g.push("~="), (e = f.createElement("input")).setAttribute("name", ""), t.appendChild(e), t.querySelectorAll("[name='']").length || g.push("\\[" + z + "*name" + z + "*=" + z + "*(?:''|\"\")"), t.querySelectorAll(":checked").length || g.push(":checked"), t.querySelectorAll("a#" + w + "+*").length || g.push(".#.+[+~]"), t.querySelectorAll("\\\f"), g.push("[\\r\\n\\f]") }), dt(function(t) { t.innerHTML = ""; var e = f.createElement("input"); e.setAttribute("type", "hidden"), t.appendChild(e).setAttribute("name", "D"), t.querySelectorAll("[name=d]").length && g.push("name" + z + "*[*^$|!~]?="), 2 !== t.querySelectorAll(":enabled").length && g.push(":enabled", ":disabled"), h.appendChild(t).disabled = !0, 2 !== t.querySelectorAll(":disabled").length && g.push(":enabled", ":disabled"), t.querySelectorAll("*,:x"), g.push(",.*:") })), (i.matchesSelector = Z.test(y = h.matches || h.webkitMatchesSelector || h.mozMatchesSelector || h.oMatchesSelector || h.msMatchesSelector)) && dt(function(t) { i.disconnectedMatch = y.call(t, "*"), y.call(t, "[s!='']:x"), m.push("!=", F) }), g = g.length && new RegExp(g.join("|")), m = m.length && new RegExp(m.join("|")), e = Z.test(h.compareDocumentPosition), b = e || Z.test(h.contains) ? function(t, e) { var i = 9 === t.nodeType ? t.documentElement : t, n = e && e.parentNode; return t === n || !(!n || 1 !== n.nodeType || !(i.contains ? i.contains(n) : t.compareDocumentPosition && 16 & t.compareDocumentPosition(n))) } : function(t, e) { if (e) for (; e = e.parentNode;) if (e === t) return !0; return !1 }, _ = e ? function(t, e) { if (t === e) return u = !0, 0; var n = !t.compareDocumentPosition - !e.compareDocumentPosition; return n || (1 & (n = (t.ownerDocument || t) == (e.ownerDocument || e) ? t.compareDocumentPosition(e) : 1) || !i.sortDetached && e.compareDocumentPosition(t) === n ? t == f || t.ownerDocument == x && b(x, t) ? -1 : e == f || e.ownerDocument == x && b(x, e) ? 1 : d ? D(d, t) - D(d, e) : 0 : 4 & n ? -1 : 1) } : function(t, e) { if (t === e) return u = !0, 0; var i, n = 0, o = t.parentNode, s = e.parentNode, r = [t], a = [e]; if (!o || !s) return t == f ? -1 : e == f ? 1 : o ? -1 : s ? 1 : d ? D(d, t) - D(d, e) : 0; if (o === s) return pt(t, e); for (i = t; i = i.parentNode;) r.unshift(i); for (i = e; i = i.parentNode;) a.unshift(i); for (; r[n] === a[n];) n++; return n ? pt(r[n], a[n]) : r[n] == x ? -1 : a[n] == x ? 1 : 0 }, f) : f }, at.matches = function(t, e) { return at(t, null, null, e) }, at.matchesSelector = function(t, e) { if (p(t), i.matchesSelector && v && !P[e + " "] && (!m || !m.test(e)) && (!g || !g.test(e))) try { var n = y.call(t, e); if (n || i.disconnectedMatch || t.document && 11 !== t.document.nodeType) return n } catch (t) { P(e, !0) } return at(e, f, null, [t]).length > 0 }, at.contains = function(t, e) { return (t.ownerDocument || t) != f && p(t), b(t, e) }, at.attr = function(t, e) { (t.ownerDocument || t) != f && p(t); var o = n.attrHandle[e.toLowerCase()], s = o && E.call(n.attrHandle, e.toLowerCase()) ? o(t, e, !v) : void 0; return void 0 !== s ? s : i.attributes || !v ? t.getAttribute(e) : (s = t.getAttributeNode(e)) && s.specified ? s.value : null }, at.escape = function(t) { return (t + "").replace(nt, ot) }, at.error = function(t) { throw new Error("Syntax error, unrecognized expression: " + t) }, at.uniqueSort = function(t) { var e, n = [], o = 0, s = 0; if (u = !i.detectDuplicates, d = !i.sortStable && t.slice(0), t.sort(_), u) { for (; e = t[s++];) e === t[s] && (o = n.push(s)); for (; o--;) t.splice(n[o], 1) } return d = null, t }, o = at.getText = function(t) { var e, i = "", n = 0, s = t.nodeType; if (s) { if (1 === s || 9 === s || 11 === s) { if ("string" == typeof t.textContent) return t.textContent; for (t = t.firstChild; t; t = t.nextSibling) i += o(t) } else if (3 === s || 4 === s) return t.nodeValue } else for (; e = t[n++];) i += o(e); return i }, (n = at.selectors = { cacheLength: 50, createPseudo: ct, match: V, attrHandle: {}, find: {}, relative: { ">": { dir: "parentNode", first: !0 }, " ": { dir: "parentNode" }, "+": { dir: "previousSibling", first: !0 }, "~": { dir: "previousSibling" } }, preFilter: { ATTR: function(t) { return t[1] = t[1].replace(et, it), t[3] = (t[3] || t[4] || t[5] || "").replace(et, it), "~=" === t[2] && (t[3] = " " + t[3] + " "), t.slice(0, 4) }, CHILD: function(t) { return t[1] = t[1].toLowerCase(), "nth" === t[1].slice(0, 3) ? (t[3] || at.error(t[0]), t[4] = +(t[4] ? t[5] + (t[6] || 1) : 2 * ("even" === t[3] || "odd" === t[3])), t[5] = +(t[7] + t[8] || "odd" === t[3])) : t[3] && at.error(t[0]), t }, PSEUDO: function(t) { var e, i = !t[6] && t[2]; return V.CHILD.test(t[0]) ? null : (t[3] ? t[2] = t[4] || t[5] || "" : i && Y.test(i) && (e = r(i, !0)) && (e = i.indexOf(")", i.length - e) - i.length) && (t[0] = t[0].slice(0, e), t[2] = i.slice(0, e)), t.slice(0, 3)) } }, filter: { TAG: function(t) { var e = t.replace(et, it).toLowerCase(); return "*" === t ? function() { return !0 } : function(t) { return t.nodeName && t.nodeName.toLowerCase() === e } }, CLASS: function(t) { var e = T[t + " "]; return e || (e = new RegExp("(^|" + z + ")" + t + "(" + z + "|$)")) && T(t, function(t) { return e.test("string" == typeof t.className && t.className || void 0 !== t.getAttribute && t.getAttribute("class") || "") }) }, ATTR: function(t, e, i) { return function(n) { var o = at.attr(n, t); return null == o ? "!=" === e : !e || (o += "", "=" === e ? o === i : "!=" === e ? o !== i : "^=" === e ? i && 0 === o.indexOf(i) : "*=" === e ? i && o.indexOf(i) > -1 : "$=" === e ? i && o.slice(-i.length) === i : "~=" === e ? (" " + o.replace(N, " ") + " ").indexOf(i) > -1 : "|=" === e && (o === i || o.slice(0, i.length + 1) === i + "-")) } }, CHILD: function(t, e, i, n, o) { var s = "nth" !== t.slice(0, 3), r = "last" !== t.slice(-4), a = "of-type" === e; return 1 === n && 0 === o ? function(t) { return !!t.parentNode } : function(e, i, l) { var c, d, u, p, f, h, v = s !== r ? "nextSibling" : "previousSibling", g = e.parentNode, m = a && e.nodeName.toLowerCase(), y = !l && !a, b = !1; if (g) { if (s) { for (; v;) { for (p = e; p = p[v];) if (a ? p.nodeName.toLowerCase() === m : 1 === p.nodeType) return !1; h = v = "only" === t && !h && "nextSibling" } return !0 } if (h = [r ? g.firstChild : g.lastChild], r && y) { for (b = (f = (c = (d = (u = (p = g)[w] || (p[w] = {}))[p.uniqueID] || (u[p.uniqueID] = {}))[t] || [])[0] === k && c[1]) && c[2], p = f && g.childNodes[f]; p = ++f && p && p[v] || (b = f = 0) || h.pop();) if (1 === p.nodeType && ++b && p === e) { d[t] = [k, f, b]; break } } else if (y && (b = f = (c = (d = (u = (p = e)[w] || (p[w] = {}))[p.uniqueID] || (u[p.uniqueID] = {}))[t] || [])[0] === k && c[1]), !1 === b) for (; (p = ++f && p && p[v] || (b = f = 0) || h.pop()) && ((a ? p.nodeName.toLowerCase() !== m : 1 !== p.nodeType) || !++b || (y && ((d = (u = p[w] || (p[w] = {}))[p.uniqueID] || (u[p.uniqueID] = {}))[t] = [k, b]), p !== e));); return (b -= o) === n || b % n == 0 && b / n >= 0 } } }, PSEUDO: function(t, e) { var i, o = n.pseudos[t] || n.setFilters[t.toLowerCase()] || at.error("unsupported pseudo: " + t); return o[w] ? o(e) : o.length > 1 ? (i = [t, t, "", e], n.setFilters.hasOwnProperty(t.toLowerCase()) ? ct(function(t, i) { for (var n, s = o(t, e), r = s.length; r--;) t[n = D(t, s[r])] = !(i[n] = s[r]) }) : function(t) { return o(t, 0, i) }) : o } }, pseudos: { not: ct(function(t) { var e = [], i = [], n = a(t.replace(R, "$1")); return n[w] ? ct(function(t, e, i, o) { for (var s, r = n(t, null, o, []), a = t.length; a--;)(s = r[a]) && (t[a] = !(e[a] = s)) }) : function(t, o, s) { return e[0] = t, n(e, null, s, i), e[0] = null, !i.pop() } }), has: ct(function(t) { return function(e) { return at(t, e).length > 0 } }), contains: ct(function(t) { return t = t.replace(et, it), function(e) { return (e.textContent || o(e)).indexOf(t) > -1 } }), lang: ct(function(t) { return U.test(t || "") || at.error("unsupported lang: " + t), t = t.replace(et, it).toLowerCase(), function(e) { var i; do { if (i = v ? e.lang : e.getAttribute("xml:lang") || e.getAttribute("lang")) return (i = i.toLowerCase()) === t || 0 === i.indexOf(t + "-") } while ((e = e.parentNode) && 1 === e.nodeType); return !1 } }), target: function(e) { var i = t.location && t.location.hash; return i && i.slice(1) === e.id }, root: function(t) { return t === h }, focus: function(t) { return t === f.activeElement && (!f.hasFocus || f.hasFocus()) && !!(t.type || t.href || ~t.tabIndex) }, enabled: vt(!1), disabled: vt(!0), checked: function(t) { var e = t.nodeName.toLowerCase(); return "input" === e && !!t.checked || "option" === e && !!t.selected }, selected: function(t) { return t.parentNode && t.parentNode.selectedIndex, !0 === t.selected }, empty: function(t) { for (t = t.firstChild; t; t = t.nextSibling) if (t.nodeType < 6) return !1; return !0 }, parent: function(t) { return !n.pseudos.empty(t) }, header: function(t) { return Q.test(t.nodeName) }, input: function(t) { return G.test(t.nodeName) }, button: function(t) { var e = t.nodeName.toLowerCase(); return "input" === e && "button" === t.type || "button" === e }, text: function(t) { var e; return "input" === t.nodeName.toLowerCase() && "text" === t.type && (null == (e = t.getAttribute("type")) || "text" === e.toLowerCase()) }, first: gt(function() { return [0] }), last: gt(function(t, e) { return [e - 1] }), eq: gt(function(t, e, i) { return [i < 0 ? i + e : i] }), even: gt(function(t, e) { for (var i = 0; i < e; i += 2) t.push(i); return t }), odd: gt(function(t, e) { for (var i = 1; i < e; i += 2) t.push(i); return t }), lt: gt(function(t, e, i) { for (var n = i < 0 ? i + e : i > e ? e : i; --n >= 0;) t.push(n); return t }), gt: gt(function(t, e, i) { for (var n = i < 0 ? i + e : i; ++n < e;) t.push(n); return t }) } }).pseudos.nth = n.pseudos.eq, { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 }) n.pseudos[e] = ft(e); for (e in { submit: !0, reset: !0 }) n.pseudos[e] = ht(e); function yt() {} function bt(t) { for (var e = 0, i = t.length, n = ""; e < i; e++) n += t[e].value; return n } function wt(t, e, i) { var n = e.dir, o = e.next, s = o || n, r = i && "parentNode" === s, a = S++; return e.first ? function(e, i, o) { for (; e = e[n];) if (1 === e.nodeType || r) return t(e, i, o); return !1 } : function(e, i, l) { var c, d, u, p = [k, a]; if (l) { for (; e = e[n];) if ((1 === e.nodeType || r) && t(e, i, l)) return !0 } else for (; e = e[n];) if (1 === e.nodeType || r) if (d = (u = e[w] || (e[w] = {}))[e.uniqueID] || (u[e.uniqueID] = {}), o && o === e.nodeName.toLowerCase()) e = e[n] || e; else { if ((c = d[s]) && c[0] === k && c[1] === a) return p[2] = c[2]; if (d[s] = p, p[2] = t(e, i, l)) return !0 } return !1 } } function xt(t) { return t.length > 1 ? function(e, i, n) { for (var o = t.length; o--;) if (!t[o](e, i, n)) return !1; return !0 } : t[0] } function kt(t, e, i, n, o) { for (var s, r = [], a = 0, l = t.length, c = null != e; a < l; a++)(s = t[a]) && (i && !i(s, n, o) || (r.push(s), c && e.push(a))); return r } function St(t, e, i, n, o, s) { return n && !n[w] && (n = St(n)), o && !o[w] && (o = St(o, s)), ct(function(s, r, a, l) { var c, d, u, p = [], f = [], h = r.length, v = s || function(t, e, i) { for (var n = 0, o = e.length; n < o; n++) at(t, e[n], i); return i }(e || "*", a.nodeType ? [a] : a, []), g = !t || !s && e ? v : kt(v, p, t, a, l), m = i ? o || (s ? t : h || n) ? [] : r : g; if (i && i(g, m, a, l), n) for (c = kt(m, f), n(c, [], a, l), d = c.length; d--;)(u = c[d]) && (m[f[d]] = !(g[f[d]] = u)); if (s) { if (o || t) { if (o) { for (c = [], d = m.length; d--;)(u = m[d]) && c.push(g[d] = u); o(null, m = [], c, l) } for (d = m.length; d--;)(u = m[d]) && (c = o ? D(s, u) : p[d]) > -1 && (s[c] = !(r[c] = u)) } } else m = kt(m === r ? m.splice(h, m.length) : m), o ? o(null, r, m, l) : M.apply(r, m) }) } function Tt(t) { for (var e, i, o, s = t.length, r = n.relative[t[0].type], a = r || n.relative[" "], l = r ? 1 : 0, d = wt(function(t) { return t === e }, a, !0), u = wt(function(t) { return D(e, t) > -1 }, a, !0), p = [function(t, i, n) { var o = !r && (n || i !== c) || ((e = i).nodeType ? d(t, i, n) : u(t, i, n)); return e = null, o }]; l < s; l++) if (i = n.relative[t[l].type]) p = [wt(xt(p), i)]; else { if ((i = n.filter[t[l].type].apply(null, t[l].matches))[w]) { for (o = ++l; o < s && !n.relative[t[o].type]; o++); return St(l > 1 && xt(p), l > 1 && bt(t.slice(0, l - 1).concat({ value: " " === t[l - 2].type ? "*" : "" })).replace(R, "$1"), i, l < o && Tt(t.slice(l, o)), o < s && Tt(t = t.slice(o)), o < s && bt(t)) } p.push(i) } return xt(p) } return yt.prototype = n.filters = n.pseudos, n.setFilters = new yt, r = at.tokenize = function(t, e) { var i, o, s, r, a, l, c, d = C[t + " "]; if (d) return e ? 0 : d.slice(0); for (a = t, l = [], c = n.preFilter; a;) { for (r in i && !(o = B.exec(a)) || (o && (a = a.slice(o[0].length) || a), l.push(s = [])), i = !1, (o = W.exec(a)) && (i = o.shift(), s.push({ value: i, type: o[0].replace(R, " ") }), a = a.slice(i.length)), n.filter) !(o = V[r].exec(a)) || c[r] && !(o = c[r](o)) || (i = o.shift(), s.push({ value: i, type: r, matches: o }), a = a.slice(i.length)); if (!i) break } return e ? a.length : a ? at.error(t) : C(t, l).slice(0) }, a = at.compile = function(t, e) { var i, o = [], s = [], a = $[t + " "]; if (!a) { for (e || (e = r(t)), i = e.length; i--;)(a = Tt(e[i]))[w] ? o.push(a) : s.push(a); (a = $(t, function(t, e) { var i = e.length > 0, o = t.length > 0, s = function(s, r, a, l, d) { var u, h, g, m = 0, y = "0", b = s && [], w = [], x = c, S = s || o && n.find.TAG("*", d), T = k += null == x ? 1 : Math.random() || .1, C = S.length; for (d && (c = r == f || r || d); y !== C && null != (u = S[y]); y++) { if (o && u) { for (h = 0, r || u.ownerDocument == f || (p(u), a = !v); g = t[h++];) if (g(u, r || f, a)) { l.push(u); break } d && (k = T) } i && ((u = !g && u) && m--, s && b.push(u)) } if (m += y, i && y !== m) { for (h = 0; g = e[h++];) g(b, w, r, a); if (s) { if (m > 0) for (; y--;) b[y] || w[y] || (w[y] = L.call(l)); w = kt(w) } M.apply(l, w), d && !s && w.length > 0 && m + e.length > 1 && at.uniqueSort(l) } return d && (k = T, c = x), b }; return i ? ct(s) : s }(s, o))).selector = t } return a }, l = at.select = function(t, e, i, o) { var s, l, c, d, u, p = "function" == typeof t && t, f = !o && r(t = p.selector || t); if (i = i || [], 1 === f.length) { if ((l = f[0] = f[0].slice(0)).length > 2 && "ID" === (c = l[0]).type && 9 === e.nodeType && v && n.relative[l[1].type]) { if (!(e = (n.find.ID(c.matches[0].replace(et, it), e) || [])[0])) return i; p && (e = e.parentNode), t = t.slice(l.shift().value.length) } for (s = V.needsContext.test(t) ? 0 : l.length; s-- && (c = l[s], !n.relative[d = c.type]);) if ((u = n.find[d]) && (o = u(c.matches[0].replace(et, it), tt.test(l[0].type) && mt(e.parentNode) || e))) { if (l.splice(s, 1), !(t = o.length && bt(l))) return M.apply(i, o), i; break } } return (p || a(t, f))(o, e, !v, i, !e || tt.test(t) && mt(e.parentNode) || e), i }, i.sortStable = w.split("").sort(_).join("") === w, i.detectDuplicates = !!u, p(), i.sortDetached = dt(function(t) { return 1 & t.compareDocumentPosition(f.createElement("fieldset")) }), dt(function(t) { return t.innerHTML = "", "#" === t.firstChild.getAttribute("href") }) || ut("type|href|height|width", function(t, e, i) { if (!i) return t.getAttribute(e, "type" === e.toLowerCase() ? 1 : 2) }), i.attributes && dt(function(t) { return t.innerHTML = "", t.firstChild.setAttribute("value", ""), "" === t.firstChild.getAttribute("value") }) || ut("value", function(t, e, i) { if (!i && "input" === t.nodeName.toLowerCase()) return t.defaultValue }), dt(function(t) { return null == t.getAttribute("disabled") }) || ut(I, function(t, e, i) { var n; if (!i) return !0 === t[e] ? e.toLowerCase() : (n = t.getAttributeNode(e)) && n.specified ? n.value : null }), at }(i); S.find = C, S.expr = C.selectors, S.expr[":"] = S.expr.pseudos, S.uniqueSort = S.unique = C.uniqueSort, S.text = C.getText, S.isXMLDoc = C.isXML, S.contains = C.contains, S.escapeSelector = C.escape; var $ = function(t, e, i) { for (var n = [], o = void 0 !== i; (t = t[e]) && 9 !== t.nodeType;) if (1 === t.nodeType) { if (o && S(t).is(i)) break; n.push(t) } return n }, P = function(t, e) { for (var i = []; t; t = t.nextSibling) 1 === t.nodeType && t !== e && i.push(t); return i }, _ = S.expr.match.needsContext; function E(t, e) { return t.nodeName && t.nodeName.toLowerCase() === e.toLowerCase() } var A = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i; function L(t, e, i) { return m(e) ? S.grep(t, function(t, n) { return !!e.call(t, n, t) !== i }) : e.nodeType ? S.grep(t, function(t) { return t === e !== i }) : "string" != typeof e ? S.grep(t, function(t) { return d.call(e, t) > -1 !== i }) : S.filter(e, t, i) } S.filter = function(t, e, i) { var n = e[0]; return i && (t = ":not(" + t + ")"), 1 === e.length && 1 === n.nodeType ? S.find.matchesSelector(n, t) ? [n] : [] : S.find.matches(t, S.grep(e, function(t) { return 1 === t.nodeType })) }, S.fn.extend({ find: function(t) { var e, i, n = this.length, o = this; if ("string" != typeof t) return this.pushStack(S(t).filter(function() { for (e = 0; e < n; e++) if (S.contains(o[e], this)) return !0 })); for (i = this.pushStack([]), e = 0; e < n; e++) S.find(t, o[e], i); return n > 1 ? S.uniqueSort(i) : i }, filter: function(t) { return this.pushStack(L(this, t || [], !1)) }, not: function(t) { return this.pushStack(L(this, t || [], !0)) }, is: function(t) { return !!L(this, "string" == typeof t && _.test(t) ? S(t) : t || [], !1).length } }); var j, M = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/; (S.fn.init = function(t, e, i) { var n, o; if (!t) return this; if (i = i || j, "string" == typeof t) { if (!(n = "<" === t[0] && ">" === t[t.length - 1] && t.length >= 3 ? [null, t, null] : M.exec(t)) || !n[1] && e) return !e || e.jquery ? (e || i).find(t) : this.constructor(e).find(t); if (n[1]) { if (e = e instanceof S ? e[0] : e, S.merge(this, S.parseHTML(n[1], e && e.nodeType ? e.ownerDocument || e : b, !0)), A.test(n[1]) && S.isPlainObject(e)) for (n in e) m(this[n]) ? this[n](e[n]) : this.attr(n, e[n]); return this } return (o = b.getElementById(n[2])) && (this[0] = o, this.length = 1), this } return t.nodeType ? (this[0] = t, this.length = 1, this) : m(t) ? void 0 !== i.ready ? i.ready(t) : t(S) : S.makeArray(t, this) }).prototype = S.fn, j = S(b); var O = /^(?:parents|prev(?:Until|All))/, D = { children: !0, contents: !0, next: !0, prev: !0 }; function I(t, e) { for (; (t = t[e]) && 1 !== t.nodeType;); return t } S.fn.extend({ has: function(t) { var e = S(t, this), i = e.length; return this.filter(function() { for (var t = 0; t < i; t++) if (S.contains(this, e[t])) return !0 }) }, closest: function(t, e) { var i, n = 0, o = this.length, s = [], r = "string" != typeof t && S(t); if (!_.test(t)) for (; n < o; n++) for (i = this[n]; i && i !== e; i = i.parentNode) if (i.nodeType < 11 && (r ? r.index(i) > -1 : 1 === i.nodeType && S.find.matchesSelector(i, t))) { s.push(i); break } return this.pushStack(s.length > 1 ? S.uniqueSort(s) : s) }, index: function(t) { return t ? "string" == typeof t ? d.call(S(t), this[0]) : d.call(this, t.jquery ? t[0] : t) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1 }, add: function(t, e) { return this.pushStack(S.uniqueSort(S.merge(this.get(), S(t, e)))) }, addBack: function(t) { return this.add(null == t ? this.prevObject : this.prevObject.filter(t)) } }), S.each({ parent: function(t) { var e = t.parentNode; return e && 11 !== e.nodeType ? e : null }, parents: function(t) { return $(t, "parentNode") }, parentsUntil: function(t, e, i) { return $(t, "parentNode", i) }, next: function(t) { return I(t, "nextSibling") }, prev: function(t) { return I(t, "previousSibling") }, nextAll: function(t) { return $(t, "nextSibling") }, prevAll: function(t) { return $(t, "previousSibling") }, nextUntil: function(t, e, i) { return $(t, "nextSibling", i) }, prevUntil: function(t, e, i) { return $(t, "previousSibling", i) }, siblings: function(t) { return P((t.parentNode || {}).firstChild, t) }, children: function(t) { return P(t.firstChild) }, contents: function(t) { return null != t.contentDocument && r(t.contentDocument) ? t.contentDocument : (E(t, "template") && (t = t.content || t), S.merge([], t.childNodes)) } }, function(t, e) { S.fn[t] = function(i, n) { var o = S.map(this, e, i); return "Until" !== t.slice(-5) && (n = i), n && "string" == typeof n && (o = S.filter(n, o)), this.length > 1 && (D[t] || S.uniqueSort(o), O.test(t) && o.reverse()), this.pushStack(o) } }); var z = /[^\x20\t\r\n\f]+/g; function q(t) { return t } function H(t) { throw t } function F(t, e, i, n) { var o; try { t && m(o = t.promise) ? o.call(t).done(e).fail(i) : t && m(o = t.then) ? o.call(t, e, i) : e.apply(void 0, [t].slice(n)) } catch (t) { i.apply(void 0, [t]) } } S.Callbacks = function(t) { t = "string" == typeof t ? function(t) { var e = {}; return S.each(t.match(z) || [], function(t, i) { e[i] = !0 }), e }(t) : S.extend({}, t); var e, i, n, o, s = [], r = [], a = -1, l = function() { for (o = o || t.once, n = e = !0; r.length; a = -1) for (i = r.shift(); ++a < s.length;) !1 === s[a].apply(i[0], i[1]) && t.stopOnFalse && (a = s.length, i = !1); t.memory || (i = !1), e = !1, o && (s = i ? [] : "") }, c = { add: function() { return s && (i && !e && (a = s.length - 1, r.push(i)), function e(i) { S.each(i, function(i, n) { m(n) ? t.unique && c.has(n) || s.push(n) : n && n.length && "string" !== k(n) && e(n) }) }(arguments), i && !e && l()), this }, remove: function() { return S.each(arguments, function(t, e) { for (var i; (i = S.inArray(e, s, i)) > -1;) s.splice(i, 1), i <= a && a-- }), this }, has: function(t) { return t ? S.inArray(t, s) > -1 : s.length > 0 }, empty: function() { return s && (s = []), this }, disable: function() { return o = r = [], s = i = "", this }, disabled: function() { return !s }, lock: function() { return o = r = [], i || e || (s = i = ""), this }, locked: function() { return !!o }, fireWith: function(t, i) { return o || (i = [t, (i = i || []).slice ? i.slice() : i], r.push(i), e || l()), this }, fire: function() { return c.fireWith(this, arguments), this }, fired: function() { return !!n } }; return c }, S.extend({ Deferred: function(t) { var e = [ ["notify", "progress", S.Callbacks("memory"), S.Callbacks("memory"), 2], ["resolve", "done", S.Callbacks("once memory"), S.Callbacks("once memory"), 0, "resolved"], ["reject", "fail", S.Callbacks("once memory"), S.Callbacks("once memory"), 1, "rejected"] ], n = "pending", o = { state: function() { return n }, always: function() { return s.done(arguments).fail(arguments), this }, catch: function(t) { return o.then(null, t) }, pipe: function() { var t = arguments; return S.Deferred(function(i) { S.each(e, function(e, n) { var o = m(t[n[4]]) && t[n[4]]; s[n[1]](function() { var t = o && o.apply(this, arguments); t && m(t.promise) ? t.promise().progress(i.notify).done(i.resolve).fail(i.reject) : i[n[0] + "With"](this, o ? [t] : arguments) }) }), t = null }).promise() }, then: function(t, n, o) { var s = 0; function r(t, e, n, o) { return function() { var a = this, l = arguments, c = function() { var i, c; if (!(t < s)) { if ((i = n.apply(a, l)) === e.promise()) throw new TypeError("Thenable self-resolution"); c = i && ("object" == typeof i || "function" == typeof i) && i.then, m(c) ? o ? c.call(i, r(s, e, q, o), r(s, e, H, o)) : (s++, c.call(i, r(s, e, q, o), r(s, e, H, o), r(s, e, q, e.notifyWith))) : (n !== q && (a = void 0, l = [i]), (o || e.resolveWith)(a, l)) } }, d = o ? c : function() { try { c() } catch (i) { S.Deferred.exceptionHook && S.Deferred.exceptionHook(i, d.stackTrace), t + 1 >= s && (n !== H && (a = void 0, l = [i]), e.rejectWith(a, l)) } }; t ? d() : (S.Deferred.getStackHook && (d.stackTrace = S.Deferred.getStackHook()), i.setTimeout(d)) } } return S.Deferred(function(i) { e[0][3].add(r(0, i, m(o) ? o : q, i.notifyWith)), e[1][3].add(r(0, i, m(t) ? t : q)), e[2][3].add(r(0, i, m(n) ? n : H)) }).promise() }, promise: function(t) { return null != t ? S.extend(t, o) : o } }, s = {}; return S.each(e, function(t, i) { var r = i[2], a = i[5]; o[i[1]] = r.add, a && r.add(function() { n = a }, e[3 - t][2].disable, e[3 - t][3].disable, e[0][2].lock, e[0][3].lock), r.add(i[3].fire), s[i[0]] = function() { return s[i[0] + "With"](this === s ? void 0 : this, arguments), this }, s[i[0] + "With"] = r.fireWith }), o.promise(s), t && t.call(s, s), s }, when: function(t) { var e = arguments.length, i = e, n = Array(i), o = a.call(arguments), s = S.Deferred(), r = function(t) { return function(i) { n[t] = this, o[t] = arguments.length > 1 ? a.call(arguments) : i, --e || s.resolveWith(n, o) } }; if (e <= 1 && (F(t, s.done(r(i)).resolve, s.reject, !e), "pending" === s.state() || m(o[i] && o[i].then))) return s.then(); for (; i--;) F(o[i], r(i), s.reject); return s.promise() } }); var N = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; S.Deferred.exceptionHook = function(t, e) { i.console && i.console.warn && t && N.test(t.name) && i.console.warn("jQuery.Deferred exception: " + t.message, t.stack, e) }, S.readyException = function(t) { i.setTimeout(function() { throw t }) }; var R = S.Deferred(); function B() { b.removeEventListener("DOMContentLoaded", B), i.removeEventListener("load", B), S.ready() } S.fn.ready = function(t) { return R.then(t).catch(function(t) { S.readyException(t) }), this }, S.extend({ isReady: !1, readyWait: 1, ready: function(t) { (!0 === t ? --S.readyWait : S.isReady) || (S.isReady = !0, !0 !== t && --S.readyWait > 0 || R.resolveWith(b, [S])) } }), S.ready.then = R.then, "complete" === b.readyState || "loading" !== b.readyState && !b.documentElement.doScroll ? i.setTimeout(S.ready) : (b.addEventListener("DOMContentLoaded", B), i.addEventListener("load", B)); var W = function(t, e, i, n, o, s, r) { var a = 0, l = t.length, c = null == i; if ("object" === k(i)) for (a in o = !0, i) W(t, e, a, i[a], !0, s, r); else if (void 0 !== n && (o = !0, m(n) || (r = !0), c && (r ? (e.call(t, n), e = null) : (c = e, e = function(t, e, i) { return c.call(S(t), i) })), e)) for (; a < l; a++) e(t[a], i, r ? n : n.call(t[a], a, e(t[a], i))); return o ? t : c ? e.call(t) : l ? e(t[0], i) : s }, X = /^-ms-/, Y = /-([a-z])/g; function U(t, e) { return e.toUpperCase() } function V(t) { return t.replace(X, "ms-").replace(Y, U) } var J = function(t) { return 1 === t.nodeType || 9 === t.nodeType || !+t.nodeType }; function G() { this.expando = S.expando + G.uid++ } G.uid = 1, G.prototype = { cache: function(t) { var e = t[this.expando]; return e || (e = {}, J(t) && (t.nodeType ? t[this.expando] = e : Object.defineProperty(t, this.expando, { value: e, configurable: !0 }))), e }, set: function(t, e, i) { var n, o = this.cache(t); if ("string" == typeof e) o[V(e)] = i; else for (n in e) o[V(n)] = e[n]; return o }, get: function(t, e) { return void 0 === e ? this.cache(t) : t[this.expando] && t[this.expando][V(e)] }, access: function(t, e, i) { return void 0 === e || e && "string" == typeof e && void 0 === i ? this.get(t, e) : (this.set(t, e, i), void 0 !== i ? i : e) }, remove: function(t, e) { var i, n = t[this.expando]; if (void 0 !== n) { if (void 0 !== e) { i = (e = Array.isArray(e) ? e.map(V) : (e = V(e)) in n ? [e] : e.match(z) || []).length; for (; i--;) delete n[e[i]] }(void 0 === e || S.isEmptyObject(n)) && (t.nodeType ? t[this.expando] = void 0 : delete t[this.expando]) } }, hasData: function(t) { var e = t[this.expando]; return void 0 !== e && !S.isEmptyObject(e) } }; var Q = new G, Z = new G, K = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, tt = /[A-Z]/g; function et(t, e, i) { var n; if (void 0 === i && 1 === t.nodeType) if (n = "data-" + e.replace(tt, "-$&").toLowerCase(), "string" == typeof(i = t.getAttribute(n))) { try { i = function(t) { return "true" === t || "false" !== t && ("null" === t ? null : t === +t + "" ? +t : K.test(t) ? JSON.parse(t) : t) }(i) } catch (t) {} Z.set(t, e, i) } else i = void 0; return i } S.extend({ hasData: function(t) { return Z.hasData(t) || Q.hasData(t) }, data: function(t, e, i) { return Z.access(t, e, i) }, removeData: function(t, e) { Z.remove(t, e) }, _data: function(t, e, i) { return Q.access(t, e, i) }, _removeData: function(t, e) { Q.remove(t, e) } }), S.fn.extend({ data: function(t, e) { var i, n, o, s = this[0], r = s && s.attributes; if (void 0 === t) { if (this.length && (o = Z.get(s), 1 === s.nodeType && !Q.get(s, "hasDataAttrs"))) { for (i = r.length; i--;) r[i] && 0 === (n = r[i].name).indexOf("data-") && (n = V(n.slice(5)), et(s, n, o[n])); Q.set(s, "hasDataAttrs", !0) } return o } return "object" == typeof t ? this.each(function() { Z.set(this, t) }) : W(this, function(e) { var i; if (s && void 0 === e) return void 0 !== (i = Z.get(s, t)) ? i : void 0 !== (i = et(s, t)) ? i : void 0; this.each(function() { Z.set(this, t, e) }) }, null, e, arguments.length > 1, null, !0) }, removeData: function(t) { return this.each(function() { Z.remove(this, t) }) } }), S.extend({ queue: function(t, e, i) { var n; if (t) return e = (e || "fx") + "queue", n = Q.get(t, e), i && (!n || Array.isArray(i) ? n = Q.access(t, e, S.makeArray(i)) : n.push(i)), n || [] }, dequeue: function(t, e) { e = e || "fx"; var i = S.queue(t, e), n = i.length, o = i.shift(), s = S._queueHooks(t, e); "inprogress" === o && (o = i.shift(), n--), o && ("fx" === e && i.unshift("inprogress"), delete s.stop, o.call(t, function() { S.dequeue(t, e) }, s)), !n && s && s.empty.fire() }, _queueHooks: function(t, e) { var i = e + "queueHooks"; return Q.get(t, i) || Q.access(t, i, { empty: S.Callbacks("once memory").add(function() { Q.remove(t, [e + "queue", i]) }) }) } }), S.fn.extend({ queue: function(t, e) { var i = 2; return "string" != typeof t && (e = t, t = "fx", i--), arguments.length < i ? S.queue(this[0], t) : void 0 === e ? this : this.each(function() { var i = S.queue(this, t, e); S._queueHooks(this, t), "fx" === t && "inprogress" !== i[0] && S.dequeue(this, t) }) }, dequeue: function(t) { return this.each(function() { S.dequeue(this, t) }) }, clearQueue: function(t) { return this.queue(t || "fx", []) }, promise: function(t, e) { var i, n = 1, o = S.Deferred(), s = this, r = this.length, a = function() { --n || o.resolveWith(s, [s]) }; for ("string" != typeof t && (e = t, t = void 0), t = t || "fx"; r--;)(i = Q.get(s[r], t + "queueHooks")) && i.empty && (n++, i.empty.add(a)); return a(), o.promise(e) } }); var it = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, nt = new RegExp("^(?:([+-])=|)(" + it + ")([a-z%]*)$", "i"), ot = ["Top", "Right", "Bottom", "Left"], st = b.documentElement, rt = function(t) { return S.contains(t.ownerDocument, t) }, at = { composed: !0 }; st.getRootNode && (rt = function(t) { return S.contains(t.ownerDocument, t) || t.getRootNode(at) === t.ownerDocument }); var lt = function(t, e) { return "none" === (t = e || t).style.display || "" === t.style.display && rt(t) && "none" === S.css(t, "display") }; function ct(t, e, i, n) { var o, s, r = 20, a = n ? function() { return n.cur() } : function() { return S.css(t, e, "") }, l = a(), c = i && i[3] || (S.cssNumber[e] ? "" : "px"), d = t.nodeType && (S.cssNumber[e] || "px" !== c && +l) && nt.exec(S.css(t, e)); if (d && d[3] !== c) { for (l /= 2, c = c || d[3], d = +l || 1; r--;) S.style(t, e, d + c), (1 - s) * (1 - (s = a() / l || .5)) <= 0 && (r = 0), d /= s; d *= 2, S.style(t, e, d + c), i = i || [] } return i && (d = +d || +l || 0, o = i[1] ? d + (i[1] + 1) * i[2] : +i[2], n && (n.unit = c, n.start = d, n.end = o)), o } var dt = {}; function ut(t) { var e, i = t.ownerDocument, n = t.nodeName, o = dt[n]; return o || (e = i.body.appendChild(i.createElement(n)), o = S.css(e, "display"), e.parentNode.removeChild(e), "none" === o && (o = "block"), dt[n] = o, o) } function pt(t, e) { for (var i, n, o = [], s = 0, r = t.length; s < r; s++)(n = t[s]).style && (i = n.style.display, e ? ("none" === i && (o[s] = Q.get(n, "display") || null, o[s] || (n.style.display = "")), "" === n.style.display && lt(n) && (o[s] = ut(n))) : "none" !== i && (o[s] = "none", Q.set(n, "display", i))); for (s = 0; s < r; s++) null != o[s] && (t[s].style.display = o[s]); return t } S.fn.extend({ show: function() { return pt(this, !0) }, hide: function() { return pt(this) }, toggle: function(t) { return "boolean" == typeof t ? t ? this.show() : this.hide() : this.each(function() { lt(this) ? S(this).show() : S(this).hide() }) } }); var ft, ht, vt = /^(?:checkbox|radio)$/i, gt = /<([a-z][^\/\0>\x20\t\r\n\f]*)/i, mt = /^$|^module$|\/(?:java|ecma)script/i; ft = b.createDocumentFragment().appendChild(b.createElement("div")), (ht = b.createElement("input")).setAttribute("type", "radio"), ht.setAttribute("checked", "checked"), ht.setAttribute("name", "t"), ft.appendChild(ht), g.checkClone = ft.cloneNode(!0).cloneNode(!0).lastChild.checked, ft.innerHTML = "", g.noCloneChecked = !!ft.cloneNode(!0).lastChild.defaultValue, ft.innerHTML = "", g.option = !!ft.lastChild; var yt = { thead: [1, "", "
"], col: [2, "", "
"], tr: [2, "", "
"], td: [3, "", "
"], _default: [0, "", ""] }; function bt(t, e) { var i; return i = void 0 !== t.getElementsByTagName ? t.getElementsByTagName(e || "*") : void 0 !== t.querySelectorAll ? t.querySelectorAll(e || "*") : [], void 0 === e || e && E(t, e) ? S.merge([t], i) : i } function wt(t, e) { for (var i = 0, n = t.length; i < n; i++) Q.set(t[i], "globalEval", !e || Q.get(e[i], "globalEval")) } yt.tbody = yt.tfoot = yt.colgroup = yt.caption = yt.thead, yt.th = yt.td, g.option || (yt.optgroup = yt.option = [1, ""]); var xt = /<|&#?\w+;/; function kt(t, e, i, n, o) { for (var s, r, a, l, c, d, u = e.createDocumentFragment(), p = [], f = 0, h = t.length; f < h; f++) if ((s = t[f]) || 0 === s) if ("object" === k(s)) S.merge(p, s.nodeType ? [s] : s); else if (xt.test(s)) { for (r = r || u.appendChild(e.createElement("div")), a = (gt.exec(s) || ["", ""])[1].toLowerCase(), l = yt[a] || yt._default, r.innerHTML = l[1] + S.htmlPrefilter(s) + l[2], d = l[0]; d--;) r = r.lastChild; S.merge(p, r.childNodes), (r = u.firstChild).textContent = "" } else p.push(e.createTextNode(s)); for (u.textContent = "", f = 0; s = p[f++];) if (n && S.inArray(s, n) > -1) o && o.push(s); else if (c = rt(s), r = bt(u.appendChild(s), "script"), c && wt(r), i) for (d = 0; s = r[d++];) mt.test(s.type || "") && i.push(s); return u } var St = /^key/, Tt = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, Ct = /^([^.]*)(?:\.(.+)|)/; function $t() { return !0 } function Pt() { return !1 } function _t(t, e) { return t === function() { try { return b.activeElement } catch (t) {} }() == ("focus" === e) } function Et(t, e, i, n, o, s) { var r, a; if ("object" == typeof e) { for (a in "string" != typeof i && (n = n || i, i = void 0), e) Et(t, a, i, n, e[a], s); return t } if (null == n && null == o ? (o = i, n = i = void 0) : null == o && ("string" == typeof i ? (o = n, n = void 0) : (o = n, n = i, i = void 0)), !1 === o) o = Pt; else if (!o) return t; return 1 === s && (r = o, (o = function(t) { return S().off(t), r.apply(this, arguments) }).guid = r.guid || (r.guid = S.guid++)), t.each(function() { S.event.add(this, e, o, n, i) }) } function At(t, e, i) { i ? (Q.set(t, e, !1), S.event.add(t, e, { namespace: !1, handler: function(t) { var n, o, s = Q.get(this, e); if (1 & t.isTrigger && this[e]) { if (s.length)(S.event.special[e] || {}).delegateType && t.stopPropagation(); else if (s = a.call(arguments), Q.set(this, e, s), n = i(this, e), this[e](), s !== (o = Q.get(this, e)) || n ? Q.set(this, e, !1) : o = {}, s !== o) return t.stopImmediatePropagation(), t.preventDefault(), o.value } else s.length && (Q.set(this, e, { value: S.event.trigger(S.extend(s[0], S.Event.prototype), s.slice(1), this) }), t.stopImmediatePropagation()) } })) : void 0 === Q.get(t, e) && S.event.add(t, e, $t) } S.event = { global: {}, add: function(t, e, i, n, o) { var s, r, a, l, c, d, u, p, f, h, v, g = Q.get(t); if (J(t)) for (i.handler && (i = (s = i).handler, o = s.selector), o && S.find.matchesSelector(st, o), i.guid || (i.guid = S.guid++), (l = g.events) || (l = g.events = Object.create(null)), (r = g.handle) || (r = g.handle = function(e) { return void 0 !== S && S.event.triggered !== e.type ? S.event.dispatch.apply(t, arguments) : void 0 }), c = (e = (e || "").match(z) || [""]).length; c--;) f = v = (a = Ct.exec(e[c]) || [])[1], h = (a[2] || "").split(".").sort(), f && (u = S.event.special[f] || {}, f = (o ? u.delegateType : u.bindType) || f, u = S.event.special[f] || {}, d = S.extend({ type: f, origType: v, data: n, handler: i, guid: i.guid, selector: o, needsContext: o && S.expr.match.needsContext.test(o), namespace: h.join(".") }, s), (p = l[f]) || ((p = l[f] = []).delegateCount = 0, u.setup && !1 !== u.setup.call(t, n, h, r) || t.addEventListener && t.addEventListener(f, r)), u.add && (u.add.call(t, d), d.handler.guid || (d.handler.guid = i.guid)), o ? p.splice(p.delegateCount++, 0, d) : p.push(d), S.event.global[f] = !0) }, remove: function(t, e, i, n, o) { var s, r, a, l, c, d, u, p, f, h, v, g = Q.hasData(t) && Q.get(t); if (g && (l = g.events)) { for (c = (e = (e || "").match(z) || [""]).length; c--;) if (f = v = (a = Ct.exec(e[c]) || [])[1], h = (a[2] || "").split(".").sort(), f) { for (u = S.event.special[f] || {}, p = l[f = (n ? u.delegateType : u.bindType) || f] || [], a = a[2] && new RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)"), r = s = p.length; s--;) d = p[s], !o && v !== d.origType || i && i.guid !== d.guid || a && !a.test(d.namespace) || n && n !== d.selector && ("**" !== n || !d.selector) || (p.splice(s, 1), d.selector && p.delegateCount--, u.remove && u.remove.call(t, d)); r && !p.length && (u.teardown && !1 !== u.teardown.call(t, h, g.handle) || S.removeEvent(t, f, g.handle), delete l[f]) } else for (f in l) S.event.remove(t, f + e[c], i, n, !0); S.isEmptyObject(l) && Q.remove(t, "handle events") } }, dispatch: function(t) { var e, i, n, o, s, r, a = new Array(arguments.length), l = S.event.fix(t), c = (Q.get(this, "events") || Object.create(null))[l.type] || [], d = S.event.special[l.type] || {}; for (a[0] = l, e = 1; e < arguments.length; e++) a[e] = arguments[e]; if (l.delegateTarget = this, !d.preDispatch || !1 !== d.preDispatch.call(this, l)) { for (r = S.event.handlers.call(this, l, c), e = 0; (o = r[e++]) && !l.isPropagationStopped();) for (l.currentTarget = o.elem, i = 0; (s = o.handlers[i++]) && !l.isImmediatePropagationStopped();) l.rnamespace && !1 !== s.namespace && !l.rnamespace.test(s.namespace) || (l.handleObj = s, l.data = s.data, void 0 !== (n = ((S.event.special[s.origType] || {}).handle || s.handler).apply(o.elem, a)) && !1 === (l.result = n) && (l.preventDefault(), l.stopPropagation())); return d.postDispatch && d.postDispatch.call(this, l), l.result } }, handlers: function(t, e) { var i, n, o, s, r, a = [], l = e.delegateCount, c = t.target; if (l && c.nodeType && !("click" === t.type && t.button >= 1)) for (; c !== this; c = c.parentNode || this) if (1 === c.nodeType && ("click" !== t.type || !0 !== c.disabled)) { for (s = [], r = {}, i = 0; i < l; i++) void 0 === r[o = (n = e[i]).selector + " "] && (r[o] = n.needsContext ? S(o, this).index(c) > -1 : S.find(o, this, null, [c]).length), r[o] && s.push(n); s.length && a.push({ elem: c, handlers: s }) } return c = this, l < e.length && a.push({ elem: c, handlers: e.slice(l) }), a }, addProp: function(t, e) { Object.defineProperty(S.Event.prototype, t, { enumerable: !0, configurable: !0, get: m(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(t) { return t[S.expando] ? t : new S.Event(t) }, special: { load: { noBubble: !0 }, click: { setup: function(t) { var e = this || t; return vt.test(e.type) && e.click && E(e, "input") && At(e, "click", $t), !1 }, trigger: function(t) { var e = this || t; return vt.test(e.type) && e.click && E(e, "input") && At(e, "click"), !0 }, _default: function(t) { var e = t.target; return vt.test(e.type) && e.click && E(e, "input") && Q.get(e, "click") || E(e, "a") } }, beforeunload: { postDispatch: function(t) { void 0 !== t.result && t.originalEvent && (t.originalEvent.returnValue = t.result) } } } }, S.removeEvent = function(t, e, i) { t.removeEventListener && t.removeEventListener(e, i) }, S.Event = function(t, e) { if (!(this instanceof S.Event)) return new S.Event(t, e); t && t.type ? (this.originalEvent = t, this.type = t.type, this.isDefaultPrevented = t.defaultPrevented || void 0 === t.defaultPrevented && !1 === t.returnValue ? $t : Pt, this.target = t.target && 3 === t.target.nodeType ? t.target.parentNode : t.target, this.currentTarget = t.currentTarget, this.relatedTarget = t.relatedTarget) : this.type = t, e && S.extend(this, e), this.timeStamp = t && t.timeStamp || Date.now(), this[S.expando] = !0 }, S.Event.prototype = { constructor: S.Event, isDefaultPrevented: Pt, isPropagationStopped: Pt, isImmediatePropagationStopped: Pt, isSimulated: !1, preventDefault: function() { var t = this.originalEvent; this.isDefaultPrevented = $t, t && !this.isSimulated && t.preventDefault() }, stopPropagation: function() { var t = this.originalEvent; this.isPropagationStopped = $t, t && !this.isSimulated && t.stopPropagation() }, stopImmediatePropagation: function() { var t = this.originalEvent; this.isImmediatePropagationStopped = $t, t && !this.isSimulated && t.stopImmediatePropagation(), this.stopPropagation() } }, S.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: function(t) { var e = t.button; return null == t.which && St.test(t.type) ? null != t.charCode ? t.charCode : t.keyCode : !t.which && void 0 !== e && Tt.test(t.type) ? 1 & e ? 1 : 2 & e ? 3 : 4 & e ? 2 : 0 : t.which } }, S.event.addProp), S.each({ focus: "focusin", blur: "focusout" }, function(t, e) { S.event.special[t] = { setup: function() { return At(this, t, _t), !1 }, trigger: function() { return At(this, t), !0 }, delegateType: e } }), S.each({ mouseenter: "mouseover", mouseleave: "mouseout", pointerenter: "pointerover", pointerleave: "pointerout" }, function(t, e) { S.event.special[t] = { delegateType: e, bindType: e, handle: function(t) { var i, n = t.relatedTarget, o = t.handleObj; return n && (n === this || S.contains(this, n)) || (t.type = o.origType, i = o.handler.apply(this, arguments), t.type = e), i } } }), S.fn.extend({ on: function(t, e, i, n) { return Et(this, t, e, i, n) }, one: function(t, e, i, n) { return Et(this, t, e, i, n, 1) }, off: function(t, e, i) { var n, o; if (t && t.preventDefault && t.handleObj) return n = t.handleObj, S(t.delegateTarget).off(n.namespace ? n.origType + "." + n.namespace : n.origType, n.selector, n.handler), this; if ("object" == typeof t) { for (o in t) this.off(o, e, t[o]); return this } return !1 !== e && "function" != typeof e || (i = e, e = void 0), !1 === i && (i = Pt), this.each(function() { S.event.remove(this, t, i, e) }) } }); var Lt = /\s*$/g; function Ot(t, e) { return E(t, "table") && E(11 !== e.nodeType ? e : e.firstChild, "tr") && S(t).children("tbody")[0] || t } function Dt(t) { return t.type = (null !== t.getAttribute("type")) + "/" + t.type, t } function It(t) { return "true/" === (t.type || "").slice(0, 5) ? t.type = t.type.slice(5) : t.removeAttribute("type"), t } function zt(t, e) { var i, n, o, s, r, a; if (1 === e.nodeType) { if (Q.hasData(t) && (a = Q.get(t).events)) for (o in Q.remove(e, "handle events"), a) for (i = 0, n = a[o].length; i < n; i++) S.event.add(e, o, a[o][i]); Z.hasData(t) && (s = Z.access(t), r = S.extend({}, s), Z.set(e, r)) } } function qt(t, e, i, n) { e = l(e); var o, s, r, a, c, d, u = 0, p = t.length, f = p - 1, h = e[0], v = m(h); if (v || p > 1 && "string" == typeof h && !g.checkClone && jt.test(h)) return t.each(function(o) { var s = t.eq(o); v && (e[0] = h.call(this, o, s.html())), qt(s, e, i, n) }); if (p && (s = (o = kt(e, t[0].ownerDocument, !1, t, n)).firstChild, 1 === o.childNodes.length && (o = s), s || n)) { for (a = (r = S.map(bt(o, "script"), Dt)).length; u < p; u++) c = o, u !== f && (c = S.clone(c, !0, !0), a && S.merge(r, bt(c, "script"))), i.call(t[u], c, u); if (a) for (d = r[r.length - 1].ownerDocument, S.map(r, It), u = 0; u < a; u++) c = r[u], mt.test(c.type || "") && !Q.access(c, "globalEval") && S.contains(d, c) && (c.src && "module" !== (c.type || "").toLowerCase() ? S._evalUrl && !c.noModule && S._evalUrl(c.src, { nonce: c.nonce || c.getAttribute("nonce") }, d) : x(c.textContent.replace(Mt, ""), c, d)) } return t } function Ht(t, e, i) { for (var n, o = e ? S.filter(e, t) : t, s = 0; null != (n = o[s]); s++) i || 1 !== n.nodeType || S.cleanData(bt(n)), n.parentNode && (i && rt(n) && wt(bt(n, "script")), n.parentNode.removeChild(n)); return t } S.extend({ htmlPrefilter: function(t) { return t }, clone: function(t, e, i) { var n, o, s, r, a, l, c, d = t.cloneNode(!0), u = rt(t); if (!(g.noCloneChecked || 1 !== t.nodeType && 11 !== t.nodeType || S.isXMLDoc(t))) for (r = bt(d), n = 0, o = (s = bt(t)).length; n < o; n++) a = s[n], l = r[n], void 0, "input" === (c = l.nodeName.toLowerCase()) && vt.test(a.type) ? l.checked = a.checked : "input" !== c && "textarea" !== c || (l.defaultValue = a.defaultValue); if (e) if (i) for (s = s || bt(t), r = r || bt(d), n = 0, o = s.length; n < o; n++) zt(s[n], r[n]); else zt(t, d); return (r = bt(d, "script")).length > 0 && wt(r, !u && bt(t, "script")), d }, cleanData: function(t) { for (var e, i, n, o = S.event.special, s = 0; void 0 !== (i = t[s]); s++) if (J(i)) { if (e = i[Q.expando]) { if (e.events) for (n in e.events) o[n] ? S.event.remove(i, n) : S.removeEvent(i, n, e.handle); i[Q.expando] = void 0 } i[Z.expando] && (i[Z.expando] = void 0) } } }), S.fn.extend({ detach: function(t) { return Ht(this, t, !0) }, remove: function(t) { return Ht(this, t) }, text: function(t) { return W(this, function(t) { return void 0 === t ? S.text(this) : this.empty().each(function() { 1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (this.textContent = t) }) }, null, t, arguments.length) }, append: function() { return qt(this, arguments, function(t) { 1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || Ot(this, t).appendChild(t) }) }, prepend: function() { return qt(this, arguments, function(t) { if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) { var e = Ot(this, t); e.insertBefore(t, e.firstChild) } }) }, before: function() { return qt(this, arguments, function(t) { this.parentNode && this.parentNode.insertBefore(t, this) }) }, after: function() { return qt(this, arguments, function(t) { this.parentNode && this.parentNode.insertBefore(t, this.nextSibling) }) }, empty: function() { for (var t, e = 0; null != (t = this[e]); e++) 1 === t.nodeType && (S.cleanData(bt(t, !1)), t.textContent = ""); return this }, clone: function(t, e) { return t = null != t && t, e = null == e ? t : e, this.map(function() { return S.clone(this, t, e) }) }, html: function(t) { return W(this, function(t) { var e = this[0] || {}, i = 0, n = this.length; if (void 0 === t && 1 === e.nodeType) return e.innerHTML; if ("string" == typeof t && !Lt.test(t) && !yt[(gt.exec(t) || ["", ""])[1].toLowerCase()]) { t = S.htmlPrefilter(t); try { for (; i < n; i++) 1 === (e = this[i] || {}).nodeType && (S.cleanData(bt(e, !1)), e.innerHTML = t); e = 0 } catch (t) {} } e && this.empty().append(t) }, null, t, arguments.length) }, replaceWith: function() { var t = []; return qt(this, arguments, function(e) { var i = this.parentNode; S.inArray(this, t) < 0 && (S.cleanData(bt(this)), i && i.replaceChild(e, this)) }, t) } }), S.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function(t, e) { S.fn[t] = function(t) { for (var i, n = [], o = S(t), s = o.length - 1, r = 0; r <= s; r++) i = r === s ? this : this.clone(!0), S(o[r])[e](i), c.apply(n, i.get()); return this.pushStack(n) } }); var Ft = new RegExp("^(" + it + ")(?!px)[a-z%]+$", "i"), Nt = function(t) { var e = t.ownerDocument.defaultView; return e && e.opener || (e = i), e.getComputedStyle(t) }, Rt = function(t, e, i) { var n, o, s = {}; for (o in e) s[o] = t.style[o], t.style[o] = e[o]; for (o in n = i.call(t), e) t.style[o] = s[o]; return n }, Bt = new RegExp(ot.join("|"), "i"); function Wt(t, e, i) { var n, o, s, r, a = t.style; return (i = i || Nt(t)) && ("" !== (r = i.getPropertyValue(e) || i[e]) || rt(t) || (r = S.style(t, e)), !g.pixelBoxStyles() && Ft.test(r) && Bt.test(e) && (n = a.width, o = a.minWidth, s = a.maxWidth, a.minWidth = a.maxWidth = a.width = r, r = i.width, a.width = n, a.minWidth = o, a.maxWidth = s)), void 0 !== r ? r + "" : r } function Xt(t, e) { return { get: function() { if (!t()) return (this.get = e).apply(this, arguments); delete this.get } } }! function() { function t() { if (d) { c.style.cssText = "position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0", d.style.cssText = "position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%", st.appendChild(c).appendChild(d); var t = i.getComputedStyle(d); n = "1%" !== t.top, l = 12 === e(t.marginLeft), d.style.right = "60%", r = 36 === e(t.right), o = 36 === e(t.width), d.style.position = "absolute", s = 12 === e(d.offsetWidth / 3), st.removeChild(c), d = null } } function e(t) { return Math.round(parseFloat(t)) } var n, o, s, r, a, l, c = b.createElement("div"), d = b.createElement("div"); d.style && (d.style.backgroundClip = "content-box", d.cloneNode(!0).style.backgroundClip = "", g.clearCloneStyle = "content-box" === d.style.backgroundClip, S.extend(g, { boxSizingReliable: function() { return t(), o }, pixelBoxStyles: function() { return t(), r }, pixelPosition: function() { return t(), n }, reliableMarginLeft: function() { return t(), l }, scrollboxSize: function() { return t(), s }, reliableTrDimensions: function() { var t, e, n, o; return null == a && (t = b.createElement("table"), e = b.createElement("tr"), n = b.createElement("div"), t.style.cssText = "position:absolute;left:-11111px", e.style.height = "1px", n.style.height = "9px", st.appendChild(t).appendChild(e).appendChild(n), o = i.getComputedStyle(e), a = parseInt(o.height) > 3, st.removeChild(t)), a } })) }(); var Yt = ["Webkit", "Moz", "ms"], Ut = b.createElement("div").style, Vt = {}; function Jt(t) { var e = S.cssProps[t] || Vt[t]; return e || (t in Ut ? t : Vt[t] = function(t) { for (var e = t[0].toUpperCase() + t.slice(1), i = Yt.length; i--;) if ((t = Yt[i] + e) in Ut) return t }(t) || t) } var Gt = /^(none|table(?!-c[ea]).+)/, Qt = /^--/, Zt = { position: "absolute", visibility: "hidden", display: "block" }, Kt = { letterSpacing: "0", fontWeight: "400" }; function te(t, e, i) { var n = nt.exec(e); return n ? Math.max(0, n[2] - (i || 0)) + (n[3] || "px") : e } function ee(t, e, i, n, o, s) { var r = "width" === e ? 1 : 0, a = 0, l = 0; if (i === (n ? "border" : "content")) return 0; for (; r < 4; r += 2) "margin" === i && (l += S.css(t, i + ot[r], !0, o)), n ? ("content" === i && (l -= S.css(t, "padding" + ot[r], !0, o)), "margin" !== i && (l -= S.css(t, "border" + ot[r] + "Width", !0, o))) : (l += S.css(t, "padding" + ot[r], !0, o), "padding" !== i ? l += S.css(t, "border" + ot[r] + "Width", !0, o) : a += S.css(t, "border" + ot[r] + "Width", !0, o)); return !n && s >= 0 && (l += Math.max(0, Math.ceil(t["offset" + e[0].toUpperCase() + e.slice(1)] - s - l - a - .5)) || 0), l } function ie(t, e, i) { var n = Nt(t), o = (!g.boxSizingReliable() || i) && "border-box" === S.css(t, "boxSizing", !1, n), s = o, r = Wt(t, e, n), a = "offset" + e[0].toUpperCase() + e.slice(1); if (Ft.test(r)) { if (!i) return r; r = "auto" } return (!g.boxSizingReliable() && o || !g.reliableTrDimensions() && E(t, "tr") || "auto" === r || !parseFloat(r) && "inline" === S.css(t, "display", !1, n)) && t.getClientRects().length && (o = "border-box" === S.css(t, "boxSizing", !1, n), (s = a in t) && (r = t[a])), (r = parseFloat(r) || 0) + ee(t, e, i || (o ? "border" : "content"), s, n, r) + "px" } function ne(t, e, i, n, o) { return new ne.prototype.init(t, e, i, n, o) } S.extend({ cssHooks: { opacity: { get: function(t, e) { if (e) { var i = Wt(t, "opacity"); return "" === i ? "1" : i } } } }, cssNumber: { animationIterationCount: !0, columnCount: !0, fillOpacity: !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, widows: !0, zIndex: !0, zoom: !0 }, cssProps: {}, style: function(t, e, i, n) { if (t && 3 !== t.nodeType && 8 !== t.nodeType && t.style) { var o, s, r, a = V(e), l = Qt.test(e), c = t.style; if (l || (e = Jt(a)), r = S.cssHooks[e] || S.cssHooks[a], void 0 === i) return r && "get" in r && void 0 !== (o = r.get(t, !1, n)) ? o : c[e]; "string" === (s = typeof i) && (o = nt.exec(i)) && o[1] && (i = ct(t, e, o), s = "number"), null != i && i == i && ("number" !== s || l || (i += o && o[3] || (S.cssNumber[a] ? "" : "px")), g.clearCloneStyle || "" !== i || 0 !== e.indexOf("background") || (c[e] = "inherit"), r && "set" in r && void 0 === (i = r.set(t, i, n)) || (l ? c.setProperty(e, i) : c[e] = i)) } }, css: function(t, e, i, n) { var o, s, r, a = V(e); return Qt.test(e) || (e = Jt(a)), (r = S.cssHooks[e] || S.cssHooks[a]) && "get" in r && (o = r.get(t, !0, i)), void 0 === o && (o = Wt(t, e, n)), "normal" === o && e in Kt && (o = Kt[e]), "" === i || i ? (s = parseFloat(o), !0 === i || isFinite(s) ? s || 0 : o) : o } }), S.each(["height", "width"], function(t, e) { S.cssHooks[e] = { get: function(t, i, n) { if (i) return !Gt.test(S.css(t, "display")) || t.getClientRects().length && t.getBoundingClientRect().width ? ie(t, e, n) : Rt(t, Zt, function() { return ie(t, e, n) }) }, set: function(t, i, n) { var o, s = Nt(t), r = !g.scrollboxSize() && "absolute" === s.position, a = (r || n) && "border-box" === S.css(t, "boxSizing", !1, s), l = n ? ee(t, e, n, a, s) : 0; return a && r && (l -= Math.ceil(t["offset" + e[0].toUpperCase() + e.slice(1)] - parseFloat(s[e]) - ee(t, e, "border", !1, s) - .5)), l && (o = nt.exec(i)) && "px" !== (o[3] || "px") && (t.style[e] = i, i = S.css(t, e)), te(0, i, l) } } }), S.cssHooks.marginLeft = Xt(g.reliableMarginLeft, function(t, e) { if (e) return (parseFloat(Wt(t, "marginLeft")) || t.getBoundingClientRect().left - Rt(t, { marginLeft: 0 }, function() { return t.getBoundingClientRect().left })) + "px" }), S.each({ margin: "", padding: "", border: "Width" }, function(t, e) { S.cssHooks[t + e] = { expand: function(i) { for (var n = 0, o = {}, s = "string" == typeof i ? i.split(" ") : [i]; n < 4; n++) o[t + ot[n] + e] = s[n] || s[n - 2] || s[0]; return o } }, "margin" !== t && (S.cssHooks[t + e].set = te) }), S.fn.extend({ css: function(t, e) { return W(this, function(t, e, i) { var n, o, s = {}, r = 0; if (Array.isArray(e)) { for (n = Nt(t), o = e.length; r < o; r++) s[e[r]] = S.css(t, e[r], !1, n); return s } return void 0 !== i ? S.style(t, e, i) : S.css(t, e) }, t, e, arguments.length > 1) } }), S.Tween = ne, ne.prototype = { constructor: ne, init: function(t, e, i, n, o, s) { this.elem = t, this.prop = i, this.easing = o || S.easing._default, this.options = e, this.start = this.now = this.cur(), this.end = n, this.unit = s || (S.cssNumber[i] ? "" : "px") }, cur: function() { var t = ne.propHooks[this.prop]; return t && t.get ? t.get(this) : ne.propHooks._default.get(this) }, run: function(t) { var e, i = ne.propHooks[this.prop]; return this.options.duration ? this.pos = e = S.easing[this.easing](t, this.options.duration * t, 0, 1, this.options.duration) : this.pos = e = t, this.now = (this.end - this.start) * e + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), i && i.set ? i.set(this) : ne.propHooks._default.set(this), this } }, ne.prototype.init.prototype = ne.prototype, ne.propHooks = { _default: { get: function(t) { var e; return 1 !== t.elem.nodeType || null != t.elem[t.prop] && null == t.elem.style[t.prop] ? t.elem[t.prop] : (e = S.css(t.elem, t.prop, "")) && "auto" !== e ? e : 0 }, set: function(t) { S.fx.step[t.prop] ? S.fx.step[t.prop](t) : 1 !== t.elem.nodeType || !S.cssHooks[t.prop] && null == t.elem.style[Jt(t.prop)] ? t.elem[t.prop] = t.now : S.style(t.elem, t.prop, t.now + t.unit) } } }, ne.propHooks.scrollTop = ne.propHooks.scrollLeft = { set: function(t) { t.elem.nodeType && t.elem.parentNode && (t.elem[t.prop] = t.now) } }, S.easing = { linear: function(t) { return t }, swing: function(t) { return .5 - Math.cos(t * Math.PI) / 2 }, _default: "swing" }, S.fx = ne.prototype.init, S.fx.step = {}; var oe, se, re = /^(?:toggle|show|hide)$/, ae = /queueHooks$/; function le() { se && (!1 === b.hidden && i.requestAnimationFrame ? i.requestAnimationFrame(le) : i.setTimeout(le, S.fx.interval), S.fx.tick()) } function ce() { return i.setTimeout(function() { oe = void 0 }), oe = Date.now() } function de(t, e) { var i, n = 0, o = { height: t }; for (e = e ? 1 : 0; n < 4; n += 2 - e) o["margin" + (i = ot[n])] = o["padding" + i] = t; return e && (o.opacity = o.width = t), o } function ue(t, e, i) { for (var n, o = (pe.tweeners[e] || []).concat(pe.tweeners["*"]), s = 0, r = o.length; s < r; s++) if (n = o[s].call(i, e, t)) return n } function pe(t, e, i) { var n, o, s = 0, r = pe.prefilters.length, a = S.Deferred().always(function() { delete l.elem }), l = function() { if (o) return !1; for (var e = oe || ce(), i = Math.max(0, c.startTime + c.duration - e), n = 1 - (i / c.duration || 0), s = 0, r = c.tweens.length; s < r; s++) c.tweens[s].run(n); return a.notifyWith(t, [c, n, i]), n < 1 && r ? i : (r || a.notifyWith(t, [c, 1, 0]), a.resolveWith(t, [c]), !1) }, c = a.promise({ elem: t, props: S.extend({}, e), opts: S.extend(!0, { specialEasing: {}, easing: S.easing._default }, i), originalProperties: e, originalOptions: i, startTime: oe || ce(), duration: i.duration, tweens: [], createTween: function(e, i) { var n = S.Tween(t, c.opts, e, i, c.opts.specialEasing[e] || c.opts.easing); return c.tweens.push(n), n }, stop: function(e) { var i = 0, n = e ? c.tweens.length : 0; if (o) return this; for (o = !0; i < n; i++) c.tweens[i].run(1); return e ? (a.notifyWith(t, [c, 1, 0]), a.resolveWith(t, [c, e])) : a.rejectWith(t, [c, e]), this } }), d = c.props; for (! function(t, e) { var i, n, o, s, r; for (i in t) if (o = e[n = V(i)], s = t[i], Array.isArray(s) && (o = s[1], s = t[i] = s[0]), i !== n && (t[n] = s, delete t[i]), (r = S.cssHooks[n]) && "expand" in r) for (i in s = r.expand(s), delete t[n], s) i in t || (t[i] = s[i], e[i] = o); else e[n] = o }(d, c.opts.specialEasing); s < r; s++) if (n = pe.prefilters[s].call(c, t, d, c.opts)) return m(n.stop) && (S._queueHooks(c.elem, c.opts.queue).stop = n.stop.bind(n)), n; return S.map(d, ue, c), m(c.opts.start) && c.opts.start.call(t, c), c.progress(c.opts.progress).done(c.opts.done, c.opts.complete).fail(c.opts.fail).always(c.opts.always), S.fx.timer(S.extend(l, { elem: t, anim: c, queue: c.opts.queue })), c } S.Animation = S.extend(pe, { tweeners: { "*": [function(t, e) { var i = this.createTween(t, e); return ct(i.elem, t, nt.exec(e), i), i }] }, tweener: function(t, e) { m(t) ? (e = t, t = ["*"]) : t = t.match(z); for (var i, n = 0, o = t.length; n < o; n++) i = t[n], pe.tweeners[i] = pe.tweeners[i] || [], pe.tweeners[i].unshift(e) }, prefilters: [function(t, e, i) { var n, o, s, r, a, l, c, d, u = "width" in e || "height" in e, p = this, f = {}, h = t.style, v = t.nodeType && lt(t), g = Q.get(t, "fxshow"); for (n in i.queue || (null == (r = S._queueHooks(t, "fx")).unqueued && (r.unqueued = 0, a = r.empty.fire, r.empty.fire = function() { r.unqueued || a() }), r.unqueued++, p.always(function() { p.always(function() { r.unqueued--, S.queue(t, "fx").length || r.empty.fire() }) })), e) if (o = e[n], re.test(o)) { if (delete e[n], s = s || "toggle" === o, o === (v ? "hide" : "show")) { if ("show" !== o || !g || void 0 === g[n]) continue; v = !0 } f[n] = g && g[n] || S.style(t, n) } if ((l = !S.isEmptyObject(e)) || !S.isEmptyObject(f)) for (n in u && 1 === t.nodeType && (i.overflow = [h.overflow, h.overflowX, h.overflowY], null == (c = g && g.display) && (c = Q.get(t, "display")), "none" === (d = S.css(t, "display")) && (c ? d = c : (pt([t], !0), c = t.style.display || c, d = S.css(t, "display"), pt([t]))), ("inline" === d || "inline-block" === d && null != c) && "none" === S.css(t, "float") && (l || (p.done(function() { h.display = c }), null == c && (d = h.display, c = "none" === d ? "" : d)), h.display = "inline-block")), i.overflow && (h.overflow = "hidden", p.always(function() { h.overflow = i.overflow[0], h.overflowX = i.overflow[1], h.overflowY = i.overflow[2] })), l = !1, f) l || (g ? "hidden" in g && (v = g.hidden) : g = Q.access(t, "fxshow", { display: c }), s && (g.hidden = !v), v && pt([t], !0), p.done(function() { for (n in v || pt([t]), Q.remove(t, "fxshow"), f) S.style(t, n, f[n]) })), l = ue(v ? g[n] : 0, n, p), n in g || (g[n] = l.start, v && (l.end = l.start, l.start = 0)) }], prefilter: function(t, e) { e ? pe.prefilters.unshift(t) : pe.prefilters.push(t) } }), S.speed = function(t, e, i) { var n = t && "object" == typeof t ? S.extend({}, t) : { complete: i || !i && e || m(t) && t, duration: t, easing: i && e || e && !m(e) && e }; return S.fx.off ? n.duration = 0 : "number" != typeof n.duration && (n.duration in S.fx.speeds ? n.duration = S.fx.speeds[n.duration] : n.duration = S.fx.speeds._default), null != n.queue && !0 !== n.queue || (n.queue = "fx"), n.old = n.complete, n.complete = function() { m(n.old) && n.old.call(this), n.queue && S.dequeue(this, n.queue) }, n }, S.fn.extend({ fadeTo: function(t, e, i, n) { return this.filter(lt).css("opacity", 0).show().end().animate({ opacity: e }, t, i, n) }, animate: function(t, e, i, n) { var o = S.isEmptyObject(t), s = S.speed(e, i, n), r = function() { var e = pe(this, S.extend({}, t), s); (o || Q.get(this, "finish")) && e.stop(!0) }; return r.finish = r, o || !1 === s.queue ? this.each(r) : this.queue(s.queue, r) }, stop: function(t, e, i) { var n = function(t) { var e = t.stop; delete t.stop, e(i) }; return "string" != typeof t && (i = e, e = t, t = void 0), e && this.queue(t || "fx", []), this.each(function() { var e = !0, o = null != t && t + "queueHooks", s = S.timers, r = Q.get(this); if (o) r[o] && r[o].stop && n(r[o]); else for (o in r) r[o] && r[o].stop && ae.test(o) && n(r[o]); for (o = s.length; o--;) s[o].elem !== this || null != t && s[o].queue !== t || (s[o].anim.stop(i), e = !1, s.splice(o, 1)); !e && i || S.dequeue(this, t) }) }, finish: function(t) { return !1 !== t && (t = t || "fx"), this.each(function() { var e, i = Q.get(this), n = i[t + "queue"], o = i[t + "queueHooks"], s = S.timers, r = n ? n.length : 0; for (i.finish = !0, S.queue(this, t, []), o && o.stop && o.stop.call(this, !0), e = s.length; e--;) s[e].elem === this && s[e].queue === t && (s[e].anim.stop(!0), s.splice(e, 1)); for (e = 0; e < r; e++) n[e] && n[e].finish && n[e].finish.call(this); delete i.finish }) } }), S.each(["toggle", "show", "hide"], function(t, e) { var i = S.fn[e]; S.fn[e] = function(t, n, o) { return null == t || "boolean" == typeof t ? i.apply(this, arguments) : this.animate(de(e, !0), t, n, o) } }), S.each({ slideDown: de("show"), slideUp: de("hide"), slideToggle: de("toggle"), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide" }, fadeToggle: { opacity: "toggle" } }, function(t, e) { S.fn[t] = function(t, i, n) { return this.animate(e, t, i, n) } }), S.timers = [], S.fx.tick = function() { var t, e = 0, i = S.timers; for (oe = Date.now(); e < i.length; e++)(t = i[e])() || i[e] !== t || i.splice(e--, 1); i.length || S.fx.stop(), oe = void 0 }, S.fx.timer = function(t) { S.timers.push(t), S.fx.start() }, S.fx.interval = 13, S.fx.start = function() { se || (se = !0, le()) }, S.fx.stop = function() { se = null }, S.fx.speeds = { slow: 600, fast: 200, _default: 400 }, S.fn.delay = function(t, e) { return t = S.fx && S.fx.speeds[t] || t, e = e || "fx", this.queue(e, function(e, n) { var o = i.setTimeout(e, t); n.stop = function() { i.clearTimeout(o) } }) }, function() { var t = b.createElement("input"), e = b.createElement("select").appendChild(b.createElement("option")); t.type = "checkbox", g.checkOn = "" !== t.value, g.optSelected = e.selected, (t = b.createElement("input")).value = "t", t.type = "radio", g.radioValue = "t" === t.value }(); var fe, he = S.expr.attrHandle; S.fn.extend({ attr: function(t, e) { return W(this, S.attr, t, e, arguments.length > 1) }, removeAttr: function(t) { return this.each(function() { S.removeAttr(this, t) }) } }), S.extend({ attr: function(t, e, i) { var n, o, s = t.nodeType; if (3 !== s && 8 !== s && 2 !== s) return void 0 === t.getAttribute ? S.prop(t, e, i) : (1 === s && S.isXMLDoc(t) || (o = S.attrHooks[e.toLowerCase()] || (S.expr.match.bool.test(e) ? fe : void 0)), void 0 !== i ? null === i ? void S.removeAttr(t, e) : o && "set" in o && void 0 !== (n = o.set(t, i, e)) ? n : (t.setAttribute(e, i + ""), i) : o && "get" in o && null !== (n = o.get(t, e)) ? n : null == (n = S.find.attr(t, e)) ? void 0 : n) }, attrHooks: { type: { set: function(t, e) { if (!g.radioValue && "radio" === e && E(t, "input")) { var i = t.value; return t.setAttribute("type", e), i && (t.value = i), e } } } }, removeAttr: function(t, e) { var i, n = 0, o = e && e.match(z); if (o && 1 === t.nodeType) for (; i = o[n++];) t.removeAttribute(i) } }), fe = { set: function(t, e, i) { return !1 === e ? S.removeAttr(t, i) : t.setAttribute(i, i), i } }, S.each(S.expr.match.bool.source.match(/\w+/g), function(t, e) { var i = he[e] || S.find.attr; he[e] = function(t, e, n) { var o, s, r = e.toLowerCase(); return n || (s = he[r], he[r] = o, o = null != i(t, e, n) ? r : null, he[r] = s), o } }); var ve = /^(?:input|select|textarea|button)$/i, ge = /^(?:a|area)$/i; function me(t) { return (t.match(z) || []).join(" ") } function ye(t) { return t.getAttribute && t.getAttribute("class") || "" } function be(t) { return Array.isArray(t) ? t : "string" == typeof t && t.match(z) || [] } S.fn.extend({ prop: function(t, e) { return W(this, S.prop, t, e, arguments.length > 1) }, removeProp: function(t) { return this.each(function() { delete this[S.propFix[t] || t] }) } }), S.extend({ prop: function(t, e, i) { var n, o, s = t.nodeType; if (3 !== s && 8 !== s && 2 !== s) return 1 === s && S.isXMLDoc(t) || (e = S.propFix[e] || e, o = S.propHooks[e]), void 0 !== i ? o && "set" in o && void 0 !== (n = o.set(t, i, e)) ? n : t[e] = i : o && "get" in o && null !== (n = o.get(t, e)) ? n : t[e] }, propHooks: { tabIndex: { get: function(t) { var e = S.find.attr(t, "tabindex"); return e ? parseInt(e, 10) : ve.test(t.nodeName) || ge.test(t.nodeName) && t.href ? 0 : -1 } } }, propFix: { for: "htmlFor", class: "className" } }), g.optSelected || (S.propHooks.selected = { get: function(t) { var e = t.parentNode; return e && e.parentNode && e.parentNode.selectedIndex, null }, set: function(t) { var e = t.parentNode; e && (e.selectedIndex, e.parentNode && e.parentNode.selectedIndex) } }), S.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function() { S.propFix[this.toLowerCase()] = this }), S.fn.extend({ addClass: function(t) { var e, i, n, o, s, r, a, l = 0; if (m(t)) return this.each(function(e) { S(this).addClass(t.call(this, e, ye(this))) }); if ((e = be(t)).length) for (; i = this[l++];) if (o = ye(i), n = 1 === i.nodeType && " " + me(o) + " ") { for (r = 0; s = e[r++];) n.indexOf(" " + s + " ") < 0 && (n += s + " "); o !== (a = me(n)) && i.setAttribute("class", a) } return this }, removeClass: function(t) { var e, i, n, o, s, r, a, l = 0; if (m(t)) return this.each(function(e) { S(this).removeClass(t.call(this, e, ye(this))) }); if (!arguments.length) return this.attr("class", ""); if ((e = be(t)).length) for (; i = this[l++];) if (o = ye(i), n = 1 === i.nodeType && " " + me(o) + " ") { for (r = 0; s = e[r++];) for (; n.indexOf(" " + s + " ") > -1;) n = n.replace(" " + s + " ", " "); o !== (a = me(n)) && i.setAttribute("class", a) } return this }, toggleClass: function(t, e) { var i = typeof t, n = "string" === i || Array.isArray(t); return "boolean" == typeof e && n ? e ? this.addClass(t) : this.removeClass(t) : m(t) ? this.each(function(i) { S(this).toggleClass(t.call(this, i, ye(this), e), e) }) : this.each(function() { var e, o, s, r; if (n) for (o = 0, s = S(this), r = be(t); e = r[o++];) s.hasClass(e) ? s.removeClass(e) : s.addClass(e); else void 0 !== t && "boolean" !== i || ((e = ye(this)) && Q.set(this, "__className__", e), this.setAttribute && this.setAttribute("class", e || !1 === t ? "" : Q.get(this, "__className__") || "")) }) }, hasClass: function(t) { var e, i, n = 0; for (e = " " + t + " "; i = this[n++];) if (1 === i.nodeType && (" " + me(ye(i)) + " ").indexOf(e) > -1) return !0; return !1 } }); var we = /\r/g; S.fn.extend({ val: function(t) { var e, i, n, o = this[0]; return arguments.length ? (n = m(t), this.each(function(i) { var o; 1 === this.nodeType && (null == (o = n ? t.call(this, i, S(this).val()) : t) ? o = "" : "number" == typeof o ? o += "" : Array.isArray(o) && (o = S.map(o, function(t) { return null == t ? "" : t + "" })), (e = S.valHooks[this.type] || S.valHooks[this.nodeName.toLowerCase()]) && "set" in e && void 0 !== e.set(this, o, "value") || (this.value = o)) })) : o ? (e = S.valHooks[o.type] || S.valHooks[o.nodeName.toLowerCase()]) && "get" in e && void 0 !== (i = e.get(o, "value")) ? i : "string" == typeof(i = o.value) ? i.replace(we, "") : null == i ? "" : i : void 0 } }), S.extend({ valHooks: { option: { get: function(t) { var e = S.find.attr(t, "value"); return null != e ? e : me(S.text(t)) } }, select: { get: function(t) { var e, i, n, o = t.options, s = t.selectedIndex, r = "select-one" === t.type, a = r ? null : [], l = r ? s + 1 : o.length; for (n = s < 0 ? l : r ? s : 0; n < l; n++) if (((i = o[n]).selected || n === s) && !i.disabled && (!i.parentNode.disabled || !E(i.parentNode, "optgroup"))) { if (e = S(i).val(), r) return e; a.push(e) } return a }, set: function(t, e) { for (var i, n, o = t.options, s = S.makeArray(e), r = o.length; r--;)((n = o[r]).selected = S.inArray(S.valHooks.option.get(n), s) > -1) && (i = !0); return i || (t.selectedIndex = -1), s } } } }), S.each(["radio", "checkbox"], function() { S.valHooks[this] = { set: function(t, e) { if (Array.isArray(e)) return t.checked = S.inArray(S(t).val(), e) > -1 } }, g.checkOn || (S.valHooks[this].get = function(t) { return null === t.getAttribute("value") ? "on" : t.value }) }), g.focusin = "onfocusin" in i; var xe = /^(?:focusinfocus|focusoutblur)$/, ke = function(t) { t.stopPropagation() }; S.extend(S.event, { trigger: function(t, e, n, o) { var s, r, a, l, c, d, u, p, h = [n || b], v = f.call(t, "type") ? t.type : t, g = f.call(t, "namespace") ? t.namespace.split(".") : []; if (r = p = a = n = n || b, 3 !== n.nodeType && 8 !== n.nodeType && !xe.test(v + S.event.triggered) && (v.indexOf(".") > -1 && (v = (g = v.split(".")).shift(), g.sort()), c = v.indexOf(":") < 0 && "on" + v, (t = t[S.expando] ? t : new S.Event(v, "object" == typeof t && t)).isTrigger = o ? 2 : 3, t.namespace = g.join("."), t.rnamespace = t.namespace ? new RegExp("(^|\\.)" + g.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, t.result = void 0, t.target || (t.target = n), e = null == e ? [t] : S.makeArray(e, [t]), u = S.event.special[v] || {}, o || !u.trigger || !1 !== u.trigger.apply(n, e))) { if (!o && !u.noBubble && !y(n)) { for (l = u.delegateType || v, xe.test(l + v) || (r = r.parentNode); r; r = r.parentNode) h.push(r), a = r; a === (n.ownerDocument || b) && h.push(a.defaultView || a.parentWindow || i) } for (s = 0; (r = h[s++]) && !t.isPropagationStopped();) p = r, t.type = s > 1 ? l : u.bindType || v, (d = (Q.get(r, "events") || Object.create(null))[t.type] && Q.get(r, "handle")) && d.apply(r, e), (d = c && r[c]) && d.apply && J(r) && (t.result = d.apply(r, e), !1 === t.result && t.preventDefault()); return t.type = v, o || t.isDefaultPrevented() || u._default && !1 !== u._default.apply(h.pop(), e) || !J(n) || c && m(n[v]) && !y(n) && ((a = n[c]) && (n[c] = null), S.event.triggered = v, t.isPropagationStopped() && p.addEventListener(v, ke), n[v](), t.isPropagationStopped() && p.removeEventListener(v, ke), S.event.triggered = void 0, a && (n[c] = a)), t.result } }, simulate: function(t, e, i) { var n = S.extend(new S.Event, i, { type: t, isSimulated: !0 }); S.event.trigger(n, null, e) } }), S.fn.extend({ trigger: function(t, e) { return this.each(function() { S.event.trigger(t, e, this) }) }, triggerHandler: function(t, e) { var i = this[0]; if (i) return S.event.trigger(t, e, i, !0) } }), g.focusin || S.each({ focus: "focusin", blur: "focusout" }, function(t, e) { var i = function(t) { S.event.simulate(e, t.target, S.event.fix(t)) }; S.event.special[e] = { setup: function() { var n = this.ownerDocument || this.document || this, o = Q.access(n, e); o || n.addEventListener(t, i, !0), Q.access(n, e, (o || 0) + 1) }, teardown: function() { var n = this.ownerDocument || this.document || this, o = Q.access(n, e) - 1; o ? Q.access(n, e, o) : (n.removeEventListener(t, i, !0), Q.remove(n, e)) } } }); var Se = i.location, Te = { guid: Date.now() }, Ce = /\?/; S.parseXML = function(t) { var e; if (!t || "string" != typeof t) return null; try { e = (new i.DOMParser).parseFromString(t, "text/xml") } catch (t) { e = void 0 } return e && !e.getElementsByTagName("parsererror").length || S.error("Invalid XML: " + t), e }; var $e = /\[\]$/, Pe = /\r?\n/g, _e = /^(?:submit|button|image|reset|file)$/i, Ee = /^(?:input|select|textarea|keygen)/i; function Ae(t, e, i, n) { var o; if (Array.isArray(e)) S.each(e, function(e, o) { i || $e.test(t) ? n(t, o) : Ae(t + "[" + ("object" == typeof o && null != o ? e : "") + "]", o, i, n) }); else if (i || "object" !== k(e)) n(t, e); else for (o in e) Ae(t + "[" + o + "]", e[o], i, n) } S.param = function(t, e) { var i, n = [], o = function(t, e) { var i = m(e) ? e() : e; n[n.length] = encodeURIComponent(t) + "=" + encodeURIComponent(null == i ? "" : i) }; if (null == t) return ""; if (Array.isArray(t) || t.jquery && !S.isPlainObject(t)) S.each(t, function() { o(this.name, this.value) }); else for (i in t) Ae(i, t[i], e, o); return n.join("&") }, S.fn.extend({ serialize: function() { return S.param(this.serializeArray()) }, serializeArray: function() { return this.map(function() { var t = S.prop(this, "elements"); return t ? S.makeArray(t) : this }).filter(function() { var t = this.type; return this.name && !S(this).is(":disabled") && Ee.test(this.nodeName) && !_e.test(t) && (this.checked || !vt.test(t)) }).map(function(t, e) { var i = S(this).val(); return null == i ? null : Array.isArray(i) ? S.map(i, function(t) { return { name: e.name, value: t.replace(Pe, "\r\n") } }) : { name: e.name, value: i.replace(Pe, "\r\n") } }).get() } }); var Le = /%20/g, je = /#.*$/, Me = /([?&])_=[^&]*/, Oe = /^(.*?):[ \t]*([^\r\n]*)$/gm, De = /^(?:GET|HEAD)$/, Ie = /^\/\//, ze = {}, qe = {}, He = "*/".concat("*"), Fe = b.createElement("a"); function Ne(t) { return function(e, i) { "string" != typeof e && (i = e, e = "*"); var n, o = 0, s = e.toLowerCase().match(z) || []; if (m(i)) for (; n = s[o++];) "+" === n[0] ? (n = n.slice(1) || "*", (t[n] = t[n] || []).unshift(i)) : (t[n] = t[n] || []).push(i) } } function Re(t, e, i, n) { var o = {}, s = t === qe; function r(a) { var l; return o[a] = !0, S.each(t[a] || [], function(t, a) { var c = a(e, i, n); return "string" != typeof c || s || o[c] ? s ? !(l = c) : void 0 : (e.dataTypes.unshift(c), r(c), !1) }), l } return r(e.dataTypes[0]) || !o["*"] && r("*") } function Be(t, e) { var i, n, o = S.ajaxSettings.flatOptions || {}; for (i in e) void 0 !== e[i] && ((o[i] ? t : n || (n = {}))[i] = e[i]); return n && S.extend(!0, t, n), t } Fe.href = Se.href, S.extend({ active: 0, lastModified: {}, etag: {}, ajaxSettings: { url: Se.href, type: "GET", isLocal: /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Se.protocol), global: !0, processData: !0, async: !0, contentType: "application/x-www-form-urlencoded; charset=UTF-8", accepts: { "*": He, 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": S.parseXML }, flatOptions: { url: !0, context: !0 } }, ajaxSetup: function(t, e) { return e ? Be(Be(t, S.ajaxSettings), e) : Be(S.ajaxSettings, t) }, ajaxPrefilter: Ne(ze), ajaxTransport: Ne(qe), ajax: function(t, e) { "object" == typeof t && (e = t, t = void 0), e = e || {}; var n, o, s, r, a, l, c, d, u, p, f = S.ajaxSetup({}, e), h = f.context || f, v = f.context && (h.nodeType || h.jquery) ? S(h) : S.event, g = S.Deferred(), m = S.Callbacks("once memory"), y = f.statusCode || {}, w = {}, x = {}, k = "canceled", T = { readyState: 0, getResponseHeader: function(t) { var e; if (c) { if (!r) for (r = {}; e = Oe.exec(s);) r[e[1].toLowerCase() + " "] = (r[e[1].toLowerCase() + " "] || []).concat(e[2]); e = r[t.toLowerCase() + " "] } return null == e ? null : e.join(", ") }, getAllResponseHeaders: function() { return c ? s : null }, setRequestHeader: function(t, e) { return null == c && (t = x[t.toLowerCase()] = x[t.toLowerCase()] || t, w[t] = e), this }, overrideMimeType: function(t) { return null == c && (f.mimeType = t), this }, statusCode: function(t) { var e; if (t) if (c) T.always(t[T.status]); else for (e in t) y[e] = [y[e], t[e]]; return this }, abort: function(t) { var e = t || k; return n && n.abort(e), C(0, e), this } }; if (g.promise(T), f.url = ((t || f.url || Se.href) + "").replace(Ie, Se.protocol + "//"), f.type = e.method || e.type || f.method || f.type, f.dataTypes = (f.dataType || "*").toLowerCase().match(z) || [""], null == f.crossDomain) { l = b.createElement("a"); try { l.href = f.url, l.href = l.href, f.crossDomain = Fe.protocol + "//" + Fe.host != l.protocol + "//" + l.host } catch (t) { f.crossDomain = !0 } } if (f.data && f.processData && "string" != typeof f.data && (f.data = S.param(f.data, f.traditional)), Re(ze, f, e, T), c) return T; for (u in (d = S.event && f.global) && 0 == S.active++ && S.event.trigger("ajaxStart"), f.type = f.type.toUpperCase(), f.hasContent = !De.test(f.type), o = f.url.replace(je, ""), f.hasContent ? f.data && f.processData && 0 === (f.contentType || "").indexOf("application/x-www-form-urlencoded") && (f.data = f.data.replace(Le, "+")) : (p = f.url.slice(o.length), f.data && (f.processData || "string" == typeof f.data) && (o += (Ce.test(o) ? "&" : "?") + f.data, delete f.data), !1 === f.cache && (o = o.replace(Me, "$1"), p = (Ce.test(o) ? "&" : "?") + "_=" + Te.guid++ + p), f.url = o + p), f.ifModified && (S.lastModified[o] && T.setRequestHeader("If-Modified-Since", S.lastModified[o]), S.etag[o] && T.setRequestHeader("If-None-Match", S.etag[o])), (f.data && f.hasContent && !1 !== f.contentType || e.contentType) && T.setRequestHeader("Content-Type", f.contentType), T.setRequestHeader("Accept", f.dataTypes[0] && f.accepts[f.dataTypes[0]] ? f.accepts[f.dataTypes[0]] + ("*" !== f.dataTypes[0] ? ", " + He + "; q=0.01" : "") : f.accepts["*"]), f.headers) T.setRequestHeader(u, f.headers[u]); if (f.beforeSend && (!1 === f.beforeSend.call(h, T, f) || c)) return T.abort(); if (k = "abort", m.add(f.complete), T.done(f.success), T.fail(f.error), n = Re(qe, f, e, T)) { if (T.readyState = 1, d && v.trigger("ajaxSend", [T, f]), c) return T; f.async && f.timeout > 0 && (a = i.setTimeout(function() { T.abort("timeout") }, f.timeout)); try { c = !1, n.send(w, C) } catch (t) { if (c) throw t; C(-1, t) } } else C(-1, "No Transport"); function C(t, e, r, l) { var u, p, b, w, x, k = e; c || (c = !0, a && i.clearTimeout(a), n = void 0, s = l || "", T.readyState = t > 0 ? 4 : 0, u = t >= 200 && t < 300 || 304 === t, r && (w = function(t, e, i) { for (var n, o, s, r, a = t.contents, l = t.dataTypes; "*" === l[0];) l.shift(), void 0 === n && (n = t.mimeType || e.getResponseHeader("Content-Type")); if (n) for (o in a) if (a[o] && a[o].test(n)) { l.unshift(o); break } if (l[0] in i) s = l[0]; else { for (o in i) { if (!l[0] || t.converters[o + " " + l[0]]) { s = o; break } r || (r = o) } s = s || r } if (s) return s !== l[0] && l.unshift(s), i[s] }(f, T, r)), !u && S.inArray("script", f.dataTypes) > -1 && (f.converters["text script"] = function() {}), w = function(t, e, i, n) { var o, s, r, a, l, c = {}, d = t.dataTypes.slice(); if (d[1]) for (r in t.converters) c[r.toLowerCase()] = t.converters[r]; for (s = d.shift(); s;) if (t.responseFields[s] && (i[t.responseFields[s]] = e), !l && n && t.dataFilter && (e = t.dataFilter(e, t.dataType)), l = s, s = d.shift()) if ("*" === s) s = l; else if ("*" !== l && l !== s) { if (!(r = c[l + " " + s] || c["* " + s])) for (o in c) if ((a = o.split(" "))[1] === s && (r = c[l + " " + a[0]] || c["* " + a[0]])) { !0 === r ? r = c[o] : !0 !== c[o] && (s = a[0], d.unshift(a[1])); break } if (!0 !== r) if (r && t.throws) e = r(e); else try { e = r(e) } catch (t) { return { state: "parsererror", error: r ? t : "No conversion from " + l + " to " + s } } } return { state: "success", data: e } }(f, w, T, u), u ? (f.ifModified && ((x = T.getResponseHeader("Last-Modified")) && (S.lastModified[o] = x), (x = T.getResponseHeader("etag")) && (S.etag[o] = x)), 204 === t || "HEAD" === f.type ? k = "nocontent" : 304 === t ? k = "notmodified" : (k = w.state, p = w.data, u = !(b = w.error))) : (b = k, !t && k || (k = "error", t < 0 && (t = 0))), T.status = t, T.statusText = (e || k) + "", u ? g.resolveWith(h, [p, k, T]) : g.rejectWith(h, [T, k, b]), T.statusCode(y), y = void 0, d && v.trigger(u ? "ajaxSuccess" : "ajaxError", [T, f, u ? p : b]), m.fireWith(h, [T, k]), d && (v.trigger("ajaxComplete", [T, f]), --S.active || S.event.trigger("ajaxStop"))) } return T }, getJSON: function(t, e, i) { return S.get(t, e, i, "json") }, getScript: function(t, e) { return S.get(t, void 0, e, "script") } }), S.each(["get", "post"], function(t, e) { S[e] = function(t, i, n, o) { return m(i) && (o = o || n, n = i, i = void 0), S.ajax(S.extend({ url: t, type: e, dataType: o, data: i, success: n }, S.isPlainObject(t) && t)) } }), S.ajaxPrefilter(function(t) { var e; for (e in t.headers) "content-type" === e.toLowerCase() && (t.contentType = t.headers[e] || "") }), S._evalUrl = function(t, e, i) { return S.ajax({ url: t, type: "GET", dataType: "script", cache: !0, async: !1, global: !1, converters: { "text script": function() {} }, dataFilter: function(t) { S.globalEval(t, e, i) } }) }, S.fn.extend({ wrapAll: function(t) { var e; return this[0] && (m(t) && (t = t.call(this[0])), e = S(t, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && e.insertBefore(this[0]), e.map(function() { for (var t = this; t.firstElementChild;) t = t.firstElementChild; return t }).append(this)), this }, wrapInner: function(t) { return m(t) ? this.each(function(e) { S(this).wrapInner(t.call(this, e)) }) : this.each(function() { var e = S(this), i = e.contents(); i.length ? i.wrapAll(t) : e.append(t) }) }, wrap: function(t) { var e = m(t); return this.each(function(i) { S(this).wrapAll(e ? t.call(this, i) : t) }) }, unwrap: function(t) { return this.parent(t).not("body").each(function() { S(this).replaceWith(this.childNodes) }), this } }), S.expr.pseudos.hidden = function(t) { return !S.expr.pseudos.visible(t) }, S.expr.pseudos.visible = function(t) { return !!(t.offsetWidth || t.offsetHeight || t.getClientRects().length) }, S.ajaxSettings.xhr = function() { try { return new i.XMLHttpRequest } catch (t) {} }; var We = { 0: 200, 1223: 204 }, Xe = S.ajaxSettings.xhr(); g.cors = !!Xe && "withCredentials" in Xe, g.ajax = Xe = !!Xe, S.ajaxTransport(function(t) { var e, n; if (g.cors || Xe && !t.crossDomain) return { send: function(o, s) { var r, a = t.xhr(); if (a.open(t.type, t.url, t.async, t.username, t.password), t.xhrFields) for (r in t.xhrFields) a[r] = t.xhrFields[r]; for (r in t.mimeType && a.overrideMimeType && a.overrideMimeType(t.mimeType), t.crossDomain || o["X-Requested-With"] || (o["X-Requested-With"] = "XMLHttpRequest"), o) a.setRequestHeader(r, o[r]); e = function(t) { return function() { e && (e = n = a.onload = a.onerror = a.onabort = a.ontimeout = a.onreadystatechange = null, "abort" === t ? a.abort() : "error" === t ? "number" != typeof a.status ? s(0, "error") : s(a.status, a.statusText) : s(We[a.status] || a.status, a.statusText, "text" !== (a.responseType || "text") || "string" != typeof a.responseText ? { binary: a.response } : { text: a.responseText }, a.getAllResponseHeaders())) } }, a.onload = e(), n = a.onerror = a.ontimeout = e("error"), void 0 !== a.onabort ? a.onabort = n : a.onreadystatechange = function() { 4 === a.readyState && i.setTimeout(function() { e && n() }) }, e = e("abort"); try { a.send(t.hasContent && t.data || null) } catch (t) { if (e) throw t } }, abort: function() { e && e() } } }), S.ajaxPrefilter(function(t) { t.crossDomain && (t.contents.script = !1) }), S.ajaxSetup({ accepts: { script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" }, contents: { script: /\b(?:java|ecma)script\b/ }, converters: { "text script": function(t) { return S.globalEval(t), t } } }), S.ajaxPrefilter("script", function(t) { void 0 === t.cache && (t.cache = !1), t.crossDomain && (t.type = "GET") }), S.ajaxTransport("script", function(t) { var e, i; if (t.crossDomain || t.scriptAttrs) return { send: function(n, o) { e = S("