UNPKG

flocking

Version:

Creative audio synthesis for the Web

995 lines (994 loc) 696 kB
/*! Flocking 3.0.1, Copyright 2022 Colin Clark | flockingjs.org */ !function(e, t) { "use strict"; "object" == typeof module && "object" == typeof module.exports ? module.exports = e.document ? t(e, !0) : function(e) { if (e.document) return t(e); throw new Error("jQuery requires a window with a document"); } : t(e); }("undefined" != typeof window ? window : this, function(x, V) { "use strict"; function y(e) { return "function" == typeof e && "number" != typeof e.nodeType && "function" != typeof e.item; } function g(e) { return null != e && e === e.window; } var t = [], F = Object.getPrototypeOf, u = t.slice, B = t.flat ? function(e) { return t.flat.call(e); } : function(e) { return t.concat.apply([], e); }, q = t.push, G = t.indexOf, j = {}, _ = j.toString, U = j.hasOwnProperty, H = U.toString, W = H.call(Object), h = {}, S = x.document, z = { type: !0, src: !0, nonce: !0, noModule: !0 }; function $(e, t, n) { var r, o, a = (n = n || S).createElement("script"); if (a.text = e, t) for (r in z) (o = t[r] || t.getAttribute && t.getAttribute(r)) && a.setAttribute(r, o); n.head.appendChild(a).parentNode.removeChild(a); } function m(e) { return null == e ? e + "" : "object" == typeof e || "function" == typeof e ? j[_.call(e)] || "object" : typeof e; } var e = "3.6.0", C = function(e, t) { return new C.fn.init(e, t); }; function K(e) { var t = !!e && "length" in e && e.length, n = m(e); return !y(e) && !g(e) && ("array" === n || 0 === t || "number" == typeof t && 0 < t && t - 1 in e); } C.fn = C.prototype = { jquery: e, constructor: C, length: 0, toArray: function() { return u.call(this); }, get: function(e) { return null == e ? u.call(this) : e < 0 ? this[e + this.length] : this[e]; }, pushStack: function(e) { e = C.merge(this.constructor(), e); return e.prevObject = this, e; }, each: function(e) { return C.each(this, e); }, map: function(n) { return this.pushStack(C.map(this, function(e, t) { return n.call(e, t, e); })); }, slice: function() { return this.pushStack(u.apply(this, arguments)); }, first: function() { return this.eq(0); }, last: function() { return this.eq(-1); }, even: function() { return this.pushStack(C.grep(this, function(e, t) { return (t + 1) % 2; })); }, odd: function() { return this.pushStack(C.grep(this, function(e, t) { return t % 2; })); }, eq: function(e) { var t = this.length, e = +e + (e < 0 ? t : 0); return this.pushStack(0 <= e && e < t ? [ this[e] ] : []); }, end: function() { return this.prevObject || this.constructor(); }, push: q, sort: t.sort, splice: t.splice }, C.extend = C.fn.extend = function() { var e, t, n, r, o, a = arguments[0] || {}, i = 1, u = arguments.length, s = !1; for ("boolean" == typeof a && (s = a, a = arguments[i] || {}, i++), "object" == typeof a || y(a) || (a = {}), i === u && (a = this, i--); i < u; i++) if (null != (e = arguments[i])) for (t in e) n = e[t], "__proto__" !== t && a !== n && (s && n && (C.isPlainObject(n) || (r = Array.isArray(n))) ? (o = a[t], o = r && !Array.isArray(o) ? [] : r || C.isPlainObject(o) ? o : {}, r = !1, a[t] = C.extend(s, o, n)) : void 0 !== n && (a[t] = n)); return a; }, C.extend({ expando: "jQuery" + (e + Math.random()).replace(/\D/g, ""), isReady: !0, error: function(e) { throw new Error(e); }, noop: function() {}, isPlainObject: function(e) { return !(!e || "[object Object]" !== _.call(e)) && (!(e = F(e)) || "function" == typeof (e = U.call(e, "constructor") && e.constructor) && H.call(e) === W); }, isEmptyObject: function(e) { for (var t in e) return !1; return !0; }, globalEval: function(e, t, n) { $(e, { nonce: t && t.nonce }, n); }, each: function(e, t) { var n, r = 0; if (K(e)) for (n = e.length; r < n && !1 !== t.call(e[r], r, e[r]); r++); else for (r in e) if (!1 === t.call(e[r], r, e[r])) break; return e; }, makeArray: function(e, t) { t = t || []; return null != e && (K(Object(e)) ? C.merge(t, "string" == typeof e ? [ e ] : e) : q.call(t, e)), t; }, inArray: function(e, t, n) { return null == t ? -1 : G.call(t, e, n); }, merge: function(e, t) { for (var n = +t.length, r = 0, o = e.length; r < n; r++) e[o++] = t[r]; return e.length = o, e; }, grep: function(e, t, n) { for (var r = [], o = 0, a = e.length, i = !n; o < a; o++) !t(e[o], o) != i && r.push(e[o]); return r; }, map: function(e, t, n) { var r, o, a = 0, i = []; if (K(e)) for (r = e.length; a < r; a++) null != (o = t(e[a], a, n)) && i.push(o); else for (a in e) null != (o = t(e[a], a, n)) && i.push(o); return B(i); }, guid: 1, support: h }), "function" == typeof Symbol && (C.fn[Symbol.iterator] = t[Symbol.iterator]), C.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function(e, t) { j["[object " + t + "]"] = t.toLowerCase(); }); function r(e, t, n) { for (var r = [], o = void 0 !== n; (e = e[t]) && 9 !== e.nodeType; ) if (1 === e.nodeType) { if (o && C(e).is(n)) break; r.push(e); } return r; } function J(e, t) { for (var n = []; e; e = e.nextSibling) 1 === e.nodeType && e !== t && n.push(e); return n; } var e = function(V) { function f(e, t) { return e = "0x" + e.slice(1) - 65536, t || (e < 0 ? String.fromCharCode(65536 + e) : String.fromCharCode(e >> 10 | 55296, 1023 & e | 56320)); } function F(e, t) { return t ? "\0" === e ? "\ufffd" : e.slice(0, -1) + "\\" + e.charCodeAt(e.length - 1).toString(16) + " " : "\\" + e; } function B() { S(); } var e, d, b, a, q, p, G, j, x, s, l, S, C, n, w, m, r, o, g, A = "sizzle" + +new Date(), c = V.document, N = 0, _ = 0, U = M(), H = M(), W = M(), h = M(), z = function(e, t) { return e === t && (l = !0), 0; }, $ = {}.hasOwnProperty, t = [], K = t.pop, J = t.push, T = t.push, X = t.slice, y = function(e, t) { for (var n = 0, r = e.length; n < r; n++) if (e[n] === t) return n; return -1; }, Q = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", i = "[\\x20\\t\\r\\n\\f]", u = "(?:\\\\[\\da-fA-F]{1,6}" + i + "?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+", Y = "\\[" + i + "*(" + u + ")(?:" + i + "*([*^$|!~]?=)" + i + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + u + "))|)" + i + "*\\]", Z = ":(" + u + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + Y + ")*)|.*)\\)|)", ee = new RegExp(i + "+", "g"), v = new RegExp("^" + i + "+|((?:^|[^\\\\])(?:\\\\.)*)" + i + "+$", "g"), te = new RegExp("^" + i + "*," + i + "*"), ne = new RegExp("^" + i + "*([>+~]|" + i + ")" + i + "*"), re = new RegExp(i + "|>"), oe = new RegExp(Z), ae = new RegExp("^" + u + "$"), k = { ID: new RegExp("^#(" + u + ")"), CLASS: new RegExp("^\\.(" + u + ")"), TAG: new RegExp("^(" + u + "|[*])"), ATTR: new RegExp("^" + Y), PSEUDO: new RegExp("^" + Z), CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + i + "*(even|odd|(([+-]|)(\\d*)n|)" + i + "*(?:([+-]|)" + i + "*(\\d+)|))" + i + "*\\)|)", "i"), bool: new RegExp("^(?:" + Q + ")$", "i"), needsContext: new RegExp("^" + i + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + i + "*((?:-\\d)?\\d*)" + i + "*\\)|)(?=[^-]|$)", "i") }, ie = /HTML$/i, ue = /^(?:input|select|textarea|button)$/i, se = /^h\d$/i, I = /^[^{]+\{\s*\[native \w/, le = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, ce = /[+~]/, D = new RegExp("\\\\[\\da-fA-F]{1,6}" + i + "?|\\\\([^\\r\\n\\f])", "g"), fe = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, de = ye(function(e) { return !0 === e.disabled && "fieldset" === e.nodeName.toLowerCase(); }, { dir: "parentNode", next: "legend" }); try { T.apply(t = X.call(c.childNodes), c.childNodes), t[c.childNodes.length].nodeType; } catch (e) { T = { apply: t.length ? function(e, t) { J.apply(e, X.call(t)); } : function(e, t) { for (var n = e.length, r = 0; e[n++] = t[r++]; ); e.length = n - 1; } }; } function O(t, e, n, r) { var o, a, i, u, s, l, c = e && e.ownerDocument, f = e ? e.nodeType : 9; if (n = n || [], "string" != typeof t || !t || 1 !== f && 9 !== f && 11 !== f) return n; if (!r && (S(e), e = e || C, w)) { if (11 !== f && (u = le.exec(t))) if (o = u[1]) { if (9 === f) { if (!(l = e.getElementById(o))) return n; if (l.id === o) return n.push(l), n; } else if (c && (l = c.getElementById(o)) && g(e, l) && l.id === o) return n.push(l), n; } else { if (u[2]) return T.apply(n, e.getElementsByTagName(t)), n; if ((o = u[3]) && d.getElementsByClassName && e.getElementsByClassName) return T.apply(n, e.getElementsByClassName(o)), n; } if (d.qsa && !h[t + " "] && (!m || !m.test(t)) && (1 !== f || "object" !== e.nodeName.toLowerCase())) { if (l = t, c = e, 1 === f && (re.test(t) || ne.test(t))) { for ((c = ce.test(t) && he(e.parentNode) || e) === e && d.scope || ((i = e.getAttribute("id")) ? i = i.replace(fe, F) : e.setAttribute("id", i = A)), a = (s = p(t)).length; a--; ) s[a] = (i ? "#" + i : ":scope") + " " + R(s[a]); l = s.join(","); } try { return T.apply(n, c.querySelectorAll(l)), n; } catch (e) { h(t, !0); } finally { i === A && e.removeAttribute("id"); } } } return j(t.replace(v, "$1"), e, n, r); } function M() { var n = []; function r(e, t) { return n.push(e + " ") > b.cacheLength && delete r[n.shift()], r[e + " "] = t; } return r; } function P(e) { return e[A] = !0, e; } function L(e) { var t = C.createElement("fieldset"); try { return !!e(t); } catch (e) { return !1; } finally { t.parentNode && t.parentNode.removeChild(t); } } function pe(e, t) { for (var n = e.split("|"), r = n.length; r--; ) b.attrHandle[n[r]] = t; } function me(e, t) { var n = t && e, r = n && 1 === e.nodeType && 1 === t.nodeType && e.sourceIndex - t.sourceIndex; if (r) return r; if (n) for (;n = n.nextSibling; ) if (n === t) return -1; return e ? 1 : -1; } function ge(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 && de(e) === t : e.disabled === t : "label" in e && e.disabled === t; }; } function E(i) { return P(function(a) { return a = +a, P(function(e, t) { for (var n, r = i([], e.length, a), o = r.length; o--; ) e[n = r[o]] && (e[n] = !(t[n] = e[n])); }); }); } function he(e) { return e && void 0 !== e.getElementsByTagName && e; } for (e in d = O.support = {}, q = O.isXML = function(e) { var t = e && e.namespaceURI, e = e && (e.ownerDocument || e).documentElement; return !ie.test(t || e && e.nodeName || "HTML"); }, S = O.setDocument = function(e) { var e = e ? e.ownerDocument || e : c; return e != C && 9 === e.nodeType && e.documentElement && (n = (C = e).documentElement, w = !q(C), c != C && (e = C.defaultView) && e.top !== e && (e.addEventListener ? e.addEventListener("unload", B, !1) : e.attachEvent && e.attachEvent("onunload", B)), d.scope = L(function(e) { return n.appendChild(e).appendChild(C.createElement("div")), void 0 !== e.querySelectorAll && !e.querySelectorAll(":scope fieldset div").length; }), d.attributes = L(function(e) { return e.className = "i", !e.getAttribute("className"); }), d.getElementsByTagName = L(function(e) { return e.appendChild(C.createComment("")), !e.getElementsByTagName("*").length; }), d.getElementsByClassName = I.test(C.getElementsByClassName), d.getById = L(function(e) { return n.appendChild(e).id = A, !C.getElementsByName || !C.getElementsByName(A).length; }), d.getById ? (b.filter.ID = function(e) { var t = e.replace(D, f); return function(e) { return e.getAttribute("id") === t; }; }, b.find.ID = function(e, t) { if (void 0 !== t.getElementById && w) return (t = t.getElementById(e)) ? [ t ] : []; }) : (b.filter.ID = function(e) { var t = e.replace(D, f); return function(e) { e = void 0 !== e.getAttributeNode && e.getAttributeNode("id"); return e && e.value === t; }; }, b.find.ID = function(e, t) { if (void 0 !== t.getElementById && w) { var n, r, o, a = t.getElementById(e); if (a) { if ((n = a.getAttributeNode("id")) && n.value === e) return [ a ]; for (o = t.getElementsByName(e), r = 0; a = o[r++]; ) if ((n = a.getAttributeNode("id")) && n.value === e) return [ a ]; } return []; } }), b.find.TAG = d.getElementsByTagName ? function(e, t) { return void 0 !== t.getElementsByTagName ? t.getElementsByTagName(e) : d.qsa ? t.querySelectorAll(e) : void 0; } : function(e, t) { var n, r = [], o = 0, a = t.getElementsByTagName(e); if ("*" !== e) return a; for (;n = a[o++]; ) 1 === n.nodeType && r.push(n); return r; }, b.find.CLASS = d.getElementsByClassName && function(e, t) { if (void 0 !== t.getElementsByClassName && w) return t.getElementsByClassName(e); }, r = [], m = [], (d.qsa = I.test(C.querySelectorAll)) && (L(function(e) { var t; n.appendChild(e).innerHTML = "<a id='" + A + "'></a><select id='" + A + "-\r\\' msallowcapture=''><option selected=''></option></select>", e.querySelectorAll("[msallowcapture^='']").length && m.push("[*^$]=" + i + "*(?:''|\"\")"), e.querySelectorAll("[selected]").length || m.push("\\[" + i + "*(?:value|" + Q + ")"), e.querySelectorAll("[id~=" + A + "-]").length || m.push("~="), (t = C.createElement("input")).setAttribute("name", ""), e.appendChild(t), e.querySelectorAll("[name='']").length || m.push("\\[" + i + "*name" + i + "*=" + i + "*(?:''|\"\")"), e.querySelectorAll(":checked").length || m.push(":checked"), e.querySelectorAll("a#" + A + "+*").length || m.push(".#.+[+~]"), e.querySelectorAll("\\\f"), m.push("[\\r\\n\\f]"); }), L(function(e) { e.innerHTML = "<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>"; var t = C.createElement("input"); t.setAttribute("type", "hidden"), e.appendChild(t).setAttribute("name", "D"), e.querySelectorAll("[name=d]").length && m.push("name" + i + "*[*^$|!~]?="), 2 !== e.querySelectorAll(":enabled").length && m.push(":enabled", ":disabled"), n.appendChild(e).disabled = !0, 2 !== e.querySelectorAll(":disabled").length && m.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), m.push(",.*:"); })), (d.matchesSelector = I.test(o = n.matches || n.webkitMatchesSelector || n.mozMatchesSelector || n.oMatchesSelector || n.msMatchesSelector)) && L(function(e) { d.disconnectedMatch = o.call(e, "*"), o.call(e, "[s!='']:x"), r.push("!=", Z); }), m = m.length && new RegExp(m.join("|")), r = r.length && new RegExp(r.join("|")), e = I.test(n.compareDocumentPosition), g = e || I.test(n.contains) ? function(e, t) { var n = 9 === e.nodeType ? e.documentElement : e, t = t && t.parentNode; return e === t || !(!t || 1 !== t.nodeType || !(n.contains ? n.contains(t) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(t))); } : function(e, t) { if (t) for (;t = t.parentNode; ) if (t === e) return !0; return !1; }, z = e ? function(e, t) { if (e === t) return l = !0, 0; var n = !e.compareDocumentPosition - !t.compareDocumentPosition; return n || (1 & (n = (e.ownerDocument || e) == (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1) || !d.sortDetached && t.compareDocumentPosition(e) === n ? e == C || e.ownerDocument == c && g(c, e) ? -1 : t == C || t.ownerDocument == c && g(c, t) ? 1 : s ? y(s, e) - y(s, t) : 0 : 4 & n ? -1 : 1); } : function(e, t) { if (e === t) return l = !0, 0; var n, r = 0, o = e.parentNode, a = t.parentNode, i = [ e ], u = [ t ]; if (!o || !a) return e == C ? -1 : t == C ? 1 : o ? -1 : a ? 1 : s ? y(s, e) - y(s, t) : 0; if (o === a) return me(e, t); for (n = e; n = n.parentNode; ) i.unshift(n); for (n = t; n = n.parentNode; ) u.unshift(n); for (;i[r] === u[r]; ) r++; return r ? me(i[r], u[r]) : i[r] == c ? -1 : u[r] == c ? 1 : 0; }), C; }, O.matches = function(e, t) { return O(e, null, null, t); }, O.matchesSelector = function(e, t) { if (S(e), d.matchesSelector && w && !h[t + " "] && (!r || !r.test(t)) && (!m || !m.test(t))) try { var n = o.call(e, t); if (n || d.disconnectedMatch || e.document && 11 !== e.document.nodeType) return n; } catch (e) { h(t, !0); } return 0 < O(t, C, null, [ e ]).length; }, O.contains = function(e, t) { return (e.ownerDocument || e) != C && S(e), g(e, t); }, O.attr = function(e, t) { (e.ownerDocument || e) != C && S(e); var n = b.attrHandle[t.toLowerCase()], n = n && $.call(b.attrHandle, t.toLowerCase()) ? n(e, t, !w) : void 0; return void 0 !== n ? n : d.attributes || !w ? e.getAttribute(t) : (n = e.getAttributeNode(t)) && n.specified ? n.value : null; }, O.escape = function(e) { return (e + "").replace(fe, F); }, O.error = function(e) { throw new Error("Syntax error, unrecognized expression: " + e); }, O.uniqueSort = function(e) { var t, n = [], r = 0, o = 0; if (l = !d.detectDuplicates, s = !d.sortStable && e.slice(0), e.sort(z), l) { for (;t = e[o++]; ) t === e[o] && (r = n.push(o)); for (;r--; ) e.splice(n[r], 1); } return s = null, e; }, a = O.getText = function(e) { var t, n = "", r = 0, o = e.nodeType; if (o) { if (1 === o || 9 === o || 11 === o) { if ("string" == typeof e.textContent) return e.textContent; for (e = e.firstChild; e; e = e.nextSibling) n += a(e); } else if (3 === o || 4 === o) return e.nodeValue; } else for (;t = e[r++]; ) n += a(t); return n; }, (b = O.selectors = { cacheLength: 50, createPseudo: P, match: k, attrHandle: {}, find: {}, relative: { ">": { dir: "parentNode", first: !0 }, " ": { dir: "parentNode" }, "+": { dir: "previousSibling", first: !0 }, "~": { dir: "previousSibling" } }, preFilter: { ATTR: function(e) { return e[1] = e[1].replace(D, f), e[3] = (e[3] || e[4] || e[5] || "").replace(D, f), "~=" === e[2] && (e[3] = " " + e[3] + " "), e.slice(0, 4); }, CHILD: function(e) { return e[1] = e[1].toLowerCase(), "nth" === e[1].slice(0, 3) ? (e[3] || O.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ("even" === e[3] || "odd" === e[3])), e[5] = +(e[7] + e[8] || "odd" === e[3])) : e[3] && O.error(e[0]), e; }, PSEUDO: function(e) { var t, n = !e[6] && e[2]; return k.CHILD.test(e[0]) ? null : (e[3] ? e[2] = e[4] || e[5] || "" : n && oe.test(n) && (t = p(n, !0)) && (t = n.indexOf(")", n.length - t) - n.length) && (e[0] = e[0].slice(0, t), e[2] = n.slice(0, t)), e.slice(0, 3)); } }, filter: { TAG: function(e) { var t = e.replace(D, f).toLowerCase(); return "*" === e ? function() { return !0; } : function(e) { return e.nodeName && e.nodeName.toLowerCase() === t; }; }, CLASS: function(e) { var t = U[e + " "]; return t || (t = new RegExp("(^|" + i + ")" + e + "(" + i + "|$)")) && U(e, function(e) { return t.test("string" == typeof e.className && e.className || void 0 !== e.getAttribute && e.getAttribute("class") || ""); }); }, ATTR: function(t, n, r) { return function(e) { e = O.attr(e, t); return null == e ? "!=" === n : !n || (e += "", "=" === n ? e === r : "!=" === n ? e !== r : "^=" === n ? r && 0 === e.indexOf(r) : "*=" === n ? r && -1 < e.indexOf(r) : "$=" === n ? r && e.slice(-r.length) === r : "~=" === n ? -1 < (" " + e.replace(ee, " ") + " ").indexOf(r) : "|=" === n && (e === r || e.slice(0, r.length + 1) === r + "-")); }; }, CHILD: function(m, e, t, g, h) { var v = "nth" !== m.slice(0, 3), y = "last" !== m.slice(-4), k = "of-type" === e; return 1 === g && 0 === h ? function(e) { return !!e.parentNode; } : function(e, t, n) { var r, o, a, i, u, s, l = v != y ? "nextSibling" : "previousSibling", c = e.parentNode, f = k && e.nodeName.toLowerCase(), d = !n && !k, p = !1; if (c) { if (v) { for (;l; ) { for (i = e; i = i[l]; ) if (k ? i.nodeName.toLowerCase() === f : 1 === i.nodeType) return !1; s = l = "only" === m && !s && "nextSibling"; } return !0; } if (s = [ y ? c.firstChild : c.lastChild ], y && d) { for (p = (u = (r = (o = (a = (i = c)[A] || (i[A] = {}))[i.uniqueID] || (a[i.uniqueID] = {}))[m] || [])[0] === N && r[1]) && r[2], i = u && c.childNodes[u]; i = ++u && i && i[l] || (p = u = 0) || s.pop(); ) if (1 === i.nodeType && ++p && i === e) { o[m] = [ N, u, p ]; break; } } else if (!1 === (p = d ? u = (r = (o = (a = (i = e)[A] || (i[A] = {}))[i.uniqueID] || (a[i.uniqueID] = {}))[m] || [])[0] === N && r[1] : p)) for (;(i = ++u && i && i[l] || (p = u = 0) || s.pop()) && ((k ? i.nodeName.toLowerCase() !== f : 1 !== i.nodeType) || !++p || (d && ((o = (a = i[A] || (i[A] = {}))[i.uniqueID] || (a[i.uniqueID] = {}))[m] = [ N, p ]), i !== e)); ); return (p -= h) === g || p % g == 0 && 0 <= p / g; } }; }, PSEUDO: function(e, a) { var t, i = b.pseudos[e] || b.setFilters[e.toLowerCase()] || O.error("unsupported pseudo: " + e); return i[A] ? i(a) : 1 < i.length ? (t = [ e, e, "", a ], b.setFilters.hasOwnProperty(e.toLowerCase()) ? P(function(e, t) { for (var n, r = i(e, a), o = r.length; o--; ) e[n = y(e, r[o])] = !(t[n] = r[o]); }) : function(e) { return i(e, 0, t); }) : i; } }, pseudos: { not: P(function(e) { var r = [], o = [], u = G(e.replace(v, "$1")); return u[A] ? P(function(e, t, n, r) { for (var o, a = u(e, null, r, []), i = e.length; i--; ) (o = a[i]) && (e[i] = !(t[i] = o)); }) : function(e, t, n) { return r[0] = e, u(r, null, n, o), r[0] = null, !o.pop(); }; }), has: P(function(t) { return function(e) { return 0 < O(t, e).length; }; }), contains: P(function(t) { return t = t.replace(D, f), function(e) { return -1 < (e.textContent || a(e)).indexOf(t); }; }), lang: P(function(n) { return ae.test(n || "") || O.error("unsupported lang: " + n), n = n.replace(D, f).toLowerCase(), function(e) { var t; do { if (t = w ? e.lang : e.getAttribute("xml:lang") || e.getAttribute("lang")) return (t = t.toLowerCase()) === n || 0 === t.indexOf(n + "-"); } while ((e = e.parentNode) && 1 === e.nodeType); return !1; }; }), target: function(e) { var t = V.location && V.location.hash; return t && t.slice(1) === e.id; }, root: function(e) { return e === n; }, focus: function(e) { return e === C.activeElement && (!C.hasFocus || C.hasFocus()) && !!(e.type || e.href || ~e.tabIndex); }, enabled: ge(!1), disabled: ge(!0), checked: function(e) { var t = e.nodeName.toLowerCase(); return "input" === t && !!e.checked || "option" === t && !!e.selected; }, selected: function(e) { return e.parentNode && e.parentNode.selectedIndex, !0 === e.selected; }, empty: function(e) { for (e = e.firstChild; e; e = e.nextSibling) if (e.nodeType < 6) return !1; return !0; }, parent: function(e) { return !b.pseudos.empty(e); }, header: function(e) { return se.test(e.nodeName); }, input: function(e) { return ue.test(e.nodeName); }, button: function(e) { var t = e.nodeName.toLowerCase(); return "input" === t && "button" === e.type || "button" === t; }, text: function(e) { return "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (e = e.getAttribute("type")) || "text" === e.toLowerCase()); }, first: E(function() { return [ 0 ]; }), last: E(function(e, t) { return [ t - 1 ]; }), eq: E(function(e, t, n) { return [ n < 0 ? n + t : n ]; }), even: E(function(e, t) { for (var n = 0; n < t; n += 2) e.push(n); return e; }), odd: E(function(e, t) { for (var n = 1; n < t; n += 2) e.push(n); return e; }), lt: E(function(e, t, n) { for (var r = n < 0 ? n + t : t < n ? t : n; 0 <= --r; ) e.push(r); return e; }), gt: E(function(e, t, n) { for (var r = n < 0 ? n + t : n; ++r < t; ) e.push(r); return e; }) } }).pseudos.nth = b.pseudos.eq, { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 }) b.pseudos[e] = function(t) { return function(e) { return "input" === e.nodeName.toLowerCase() && e.type === t; }; }(e); for (e in { submit: !0, reset: !0 }) b.pseudos[e] = function(n) { return function(e) { var t = e.nodeName.toLowerCase(); return ("input" === t || "button" === t) && e.type === n; }; }(e); function ve() {} function R(e) { for (var t = 0, n = e.length, r = ""; t < n; t++) r += e[t].value; return r; } function ye(i, e, t) { var u = e.dir, s = e.next, l = s || u, c = t && "parentNode" === l, f = _++; return e.first ? function(e, t, n) { for (;e = e[u]; ) if (1 === e.nodeType || c) return i(e, t, n); return !1; } : function(e, t, n) { var r, o, a = [ N, f ]; if (n) { for (;e = e[u]; ) if ((1 === e.nodeType || c) && i(e, t, n)) return !0; } else for (;e = e[u]; ) if (1 === e.nodeType || c) if (o = (o = e[A] || (e[A] = {}))[e.uniqueID] || (o[e.uniqueID] = {}), s && s === e.nodeName.toLowerCase()) e = e[u] || e; else { if ((r = o[l]) && r[0] === N && r[1] === f) return a[2] = r[2]; if ((o[l] = a)[2] = i(e, t, n)) return !0; } return !1; }; } function ke(o) { return 1 < o.length ? function(e, t, n) { for (var r = o.length; r--; ) if (!o[r](e, t, n)) return !1; return !0; } : o[0]; } function be(e, t, n, r, o) { for (var a, i = [], u = 0, s = e.length, l = null != t; u < s; u++) !(a = e[u]) || n && !n(a, r, o) || (i.push(a), l && t.push(u)); return i; } function xe(p, m, g, h, v, e) { return h && !h[A] && (h = xe(h)), v && !v[A] && (v = xe(v, e)), P(function(e, t, n, r) { var o, a, i, u = [], s = [], l = t.length, c = e || function(e, t, n) { for (var r = 0, o = t.length; r < o; r++) O(e, t[r], n); return n; }(m || "*", n.nodeType ? [ n ] : n, []), f = !p || !e && m ? c : be(c, u, p, n, r), d = g ? v || (e ? p : l || h) ? [] : t : f; if (g && g(f, d, n, r), h) for (o = be(d, s), h(o, [], n, r), a = o.length; a--; ) (i = o[a]) && (d[s[a]] = !(f[s[a]] = i)); if (e) { if (v || p) { if (v) { for (o = [], a = d.length; a--; ) (i = d[a]) && o.push(f[a] = i); v(null, d = [], o, r); } for (a = d.length; a--; ) (i = d[a]) && -1 < (o = v ? y(e, i) : u[a]) && (e[o] = !(t[o] = i)); } } else d = be(d === t ? d.splice(l, d.length) : d), v ? v(null, t, d, r) : T.apply(t, d); }); } function Se(h, v) { function e(e, t, n, r, o) { var a, i, u, s = 0, l = "0", c = e && [], f = [], d = x, p = e || k && b.find.TAG("*", o), m = N += null == d ? 1 : Math.random() || .1, g = p.length; for (o && (x = t == C || t || o); l !== g && null != (a = p[l]); l++) { if (k && a) { for (i = 0, t || a.ownerDocument == C || (S(a), n = !w); u = h[i++]; ) if (u(a, t || C, n)) { r.push(a); break; } o && (N = m); } y && ((a = !u && a) && s--, e && c.push(a)); } if (s += l, y && l !== s) { for (i = 0; u = v[i++]; ) u(c, f, t, n); if (e) { if (0 < s) for (;l--; ) c[l] || f[l] || (f[l] = K.call(r)); f = be(f); } T.apply(r, f), o && !e && 0 < f.length && 1 < s + v.length && O.uniqueSort(r); } return o && (N = m, x = d), c; } var y = 0 < v.length, k = 0 < h.length; return y ? P(e) : e; } return ve.prototype = b.filters = b.pseudos, b.setFilters = new ve(), p = O.tokenize = function(e, t) { var n, r, o, a, i, u, s, l = H[e + " "]; if (l) return t ? 0 : l.slice(0); for (i = e, u = [], s = b.preFilter; i; ) { for (a in n && !(r = te.exec(i)) || (r && (i = i.slice(r[0].length) || i), u.push(o = [])), n = !1, (r = ne.exec(i)) && (n = r.shift(), o.push({ value: n, type: r[0].replace(v, " ") }), i = i.slice(n.length)), b.filter) !(r = k[a].exec(i)) || s[a] && !(r = s[a](r)) || (n = r.shift(), o.push({ value: n, type: a, matches: r }), i = i.slice(n.length)); if (!n) break; } return t ? i.length : i ? O.error(e) : H(e, u).slice(0); }, G = O.compile = function(e, t) { var n, r = [], o = [], a = W[e + " "]; if (!a) { for (n = (t = t || p(e)).length; n--; ) ((a = function e(t) { for (var r, n, o, a = t.length, i = b.relative[t[0].type], u = i || b.relative[" "], s = i ? 1 : 0, l = ye(function(e) { return e === r; }, u, !0), c = ye(function(e) { return -1 < y(r, e); }, u, !0), f = [ function(e, t, n) { return e = !i && (n || t !== x) || ((r = t).nodeType ? l : c)(e, t, n), r = null, e; } ]; s < a; s++) if (n = b.relative[t[s].type]) f = [ ye(ke(f), n) ]; else { if ((n = b.filter[t[s].type].apply(null, t[s].matches))[A]) { for (o = ++s; o < a && !b.relative[t[o].type]; o++); return xe(1 < s && ke(f), 1 < s && R(t.slice(0, s - 1).concat({ value: " " === t[s - 2].type ? "*" : "" })).replace(v, "$1"), n, s < o && e(t.slice(s, o)), o < a && e(t = t.slice(o)), o < a && R(t)); } f.push(n); } return ke(f); }(t[n]))[A] ? r : o).push(a); (a = W(e, Se(o, r))).selector = e; } return a; }, j = O.select = function(e, t, n, r) { var o, a, i, u, s, l = "function" == typeof e && e, c = !r && p(e = l.selector || e); if (n = n || [], 1 === c.length) { if (2 < (a = c[0] = c[0].slice(0)).length && "ID" === (i = a[0]).type && 9 === t.nodeType && w && b.relative[a[1].type]) { if (!(t = (b.find.ID(i.matches[0].replace(D, f), t) || [])[0])) return n; l && (t = t.parentNode), e = e.slice(a.shift().value.length); } for (o = k.needsContext.test(e) ? 0 : a.length; o-- && (i = a[o], !b.relative[u = i.type]); ) if ((s = b.find[u]) && (r = s(i.matches[0].replace(D, f), ce.test(a[0].type) && he(t.parentNode) || t))) { if (a.splice(o, 1), e = r.length && R(a)) break; return T.apply(n, r), n; } } return (l || G(e, c))(r, t, !w, n, !t || ce.test(e) && he(t.parentNode) || t), n; }, d.sortStable = A.split("").sort(z).join("") === A, d.detectDuplicates = !!l, S(), d.sortDetached = L(function(e) { return 1 & e.compareDocumentPosition(C.createElement("fieldset")); }), L(function(e) { return e.innerHTML = "<a href='#'></a>", "#" === e.firstChild.getAttribute("href"); }) || pe("type|href|height|width", function(e, t, n) { if (!n) return e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2); }), d.attributes && L(function(e) { return e.innerHTML = "<input/>", e.firstChild.setAttribute("value", ""), "" === e.firstChild.getAttribute("value"); }) || pe("value", function(e, t, n) { if (!n && "input" === e.nodeName.toLowerCase()) return e.defaultValue; }), L(function(e) { return null == e.getAttribute("disabled"); }) || pe(Q, function(e, t, n) { if (!n) return !0 === e[t] ? t.toLowerCase() : (n = e.getAttributeNode(t)) && n.specified ? n.value : null; }), O; }(x), X = (C.find = e, C.expr = e.selectors, C.expr[":"] = C.expr.pseudos, C.uniqueSort = C.unique = e.uniqueSort, C.text = e.getText, C.isXMLDoc = e.isXML, C.contains = e.contains, C.escapeSelector = e.escape, C.expr.match.needsContext); function s(e, t) { return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase(); } var Q = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i; function Y(e, n, r) { return y(n) ? C.grep(e, function(e, t) { return !!n.call(e, t, e) !== r; }) : n.nodeType ? C.grep(e, function(e) { return e === n !== r; }) : "string" != typeof n ? C.grep(e, function(e) { return -1 < G.call(n, e) !== r; }) : C.filter(n, e, r); } C.filter = function(e, t, n) { var r = t[0]; return n && (e = ":not(" + e + ")"), 1 === t.length && 1 === r.nodeType ? C.find.matchesSelector(r, e) ? [ r ] : [] : C.find.matches(e, C.grep(t, function(e) { return 1 === e.nodeType; })); }, C.fn.extend({ find: function(e) { var t, n, r = this.length, o = this; if ("string" != typeof e) return this.pushStack(C(e).filter(function() { for (t = 0; t < r; t++) if (C.contains(o[t], this)) return !0; })); for (n = this.pushStack([]), t = 0; t < r; t++) C.find(e, o[t], n); return 1 < r ? C.uniqueSort(n) : n; }, filter: function(e) { return this.pushStack(Y(this, e || [], !1)); }, not: function(e) { return this.pushStack(Y(this, e || [], !0)); }, is: function(e) { return !!Y(this, "string" == typeof e && X.test(e) ? C(e) : e || [], !1).length; } }); var Z, ee = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/, te = ((C.fn.init = function(e, t, n) { if (!e) return this; if (n = n || Z, "string" != typeof e) return e.nodeType ? (this[0] = e, this.length = 1, this) : y(e) ? void 0 !== n.ready ? n.ready(e) : e(C) : C.makeArray(e, this); if (!(r = "<" === e[0] && ">" === e[e.length - 1] && 3 <= e.length ? [ null, e, null ] : ee.exec(e)) || !r[1] && t) return (!t || t.jquery ? t || n : this.constructor(t)).find(e); if (r[1]) { if (t = t instanceof C ? t[0] : t, C.merge(this, C.parseHTML(r[1], t && t.nodeType ? t.ownerDocument || t : S, !0)), Q.test(r[1]) && C.isPlainObject(t)) for (var r in t) y(this[r]) ? this[r](t[r]) : this.attr(r, t[r]); return this; } return (n = S.getElementById(r[2])) && (this[0] = n, this.length = 1), this; }).prototype = C.fn, Z = C(S), /^(?:parents|prev(?:Until|All))/), ne = { children: !0, contents: !0, next: !0, prev: !0 }; function re(e, t) { for (;(e = e[t]) && 1 !== e.nodeType; ); return e; } C.fn.extend({ has: function(e) { var t = C(e, this), n = t.length; return this.filter(function() { for (var e = 0; e < n; e++) if (C.contains(this, t[e])) return !0; }); }, closest: function(e, t) { var n, r = 0, o = this.length, a = [], i = "string" != typeof e && C(e); if (!X.test(e)) for (;r < o; r++) for (n = this[r]; n && n !== t; n = n.parentNode) if (n.nodeType < 11 && (i ? -1 < i.index(n) : 1 === n.nodeType && C.find.matchesSelector(n, e))) { a.push(n); break; } return this.pushStack(1 < a.length ? C.uniqueSort(a) : a); }, index: function(e) { return e ? "string" == typeof e ? G.call(C(e), this[0]) : G.call(this, e.jquery ? e[0] : e) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1; }, add: function(e, t) { return this.pushStack(C.uniqueSort(C.merge(this.get(), C(e, t)))); }, addBack: function(e) { return this.add(null == e ? this.prevObject : this.prevObject.filter(e)); } }), C.each({ parent: function(e) { e = e.parentNode; return e && 11 !== e.nodeType ? e : null; }, parents: function(e) { return r(e, "parentNode"); }, parentsUntil: function(e, t, n) { return r(e, "parentNode", n); }, next: function(e) { return re(e, "nextSibling"); }, prev: function(e) { return re(e, "previousSibling"); }, nextAll: function(e) { return r(e, "nextSibling"); }, prevAll: function(e) { return r(e, "previousSibling"); }, nextUntil: function(e, t, n) { return r(e, "nextSibling", n); }, prevUntil: function(e, t, n) { return r(e, "previousSibling", n); }, siblings: function(e) { return J((e.parentNode || {}).firstChild, e); }, children: function(e) { return J(e.firstChild); }, contents: function(e) { return null != e.contentDocument && F(e.contentDocument) ? e.contentDocument : (s(e, "template") && (e = e.content || e), C.merge([], e.childNodes)); } }, function(r, o) { C.fn[r] = function(e, t) { var n = C.map(this, o, e); return (t = "Until" !== r.slice(-5) ? e : t) && "string" == typeof t && (n = C.filter(t, n)), 1 < this.length && (ne[r] || C.uniqueSort(n), te.test(r) && n.reverse()), this.pushStack(n); }; }); var w = /[^\x20\t\r\n\f]+/g; function c(e) { return e; } function oe(e) { throw e; } function ae(e, t, n, r) { var o; try { e && y(o = e.promise) ? o.call(e).done(t).fail(n) : e && y(o = e.then) ? o.call(e, t, n) : t.apply(void 0, [ e ].slice(r)); } catch (e) { n.apply(void 0, [ e ]); } } C.Callbacks = function(r) { var e, n; r = "string" == typeof r ? (e = r, n = {}, C.each(e.match(w) || [], function(e, t) { n[t] = !0; }), n) : C.extend({}, r); function o() { for (u = u || r.once, i = a = !0; l.length; c = -1) for (t = l.shift(); ++c < s.length; ) !1 === s[c].apply(t[0], t[1]) && r.stopOnFalse && (c = s.length, t = !1); r.memory || (t = !1), a = !1, u && (s = t ? [] : ""); } var a, t, i, u, s = [], l = [], c = -1, f = { add: function() { return s && (t && !a && (c = s.length - 1, l.push(t)), function n(e) { C.each(e, function(e, t) { y(t) ? r.unique && f.has(t) || s.push(t) : t && t.length && "string" !== m(t) && n(t); }); }(arguments), t && !a && o()), this; }, remove: function() { return C.each(arguments, function(e, t) { for (var n; -1 < (n = C.inArray(t, s, n)); ) s.splice(n, 1), n <= c && c--; }), this; }, has: function(e) { return e ? -1 < C.inArray(e, s) : 0 < s.length; }, empty: function() { return s = s && [], this; }, disable: function() { return u = l = [], s = t = "", this; }, disabled: function() { return !s; }, lock: function() { return u = l = [], t || a || (s = t = ""), this; }, locked: function() { return !!u; }, fireWith: function(e, t) { return u || (t = [ e, (t = t || []).slice ? t.slice() : t ], l.push(t), a || o()), this; }, fire: function() { return f.fireWith(this, arguments), this; }, fired: function() { return !!i; } }; return f; }, C.extend({ Deferred: function(e) { var a = [ [ "notify", "progress", C.Callbacks("memory"), C.Callbacks("memory"), 2 ], [ "resolve", "done", C.Callbacks("once memory"), C.Callbacks("once memory"), 0, "resolved" ], [ "reject", "fail", C.Callbacks("once memory"), C.Callbacks("once memory"), 1, "rejected" ] ], o = "pending", i = { state: function() { return o; }, always: function() { return u.done(arguments).fail(arguments), this; }, catch: function(e) { return i.then(null, e); }, pipe: function() { var o = arguments; return C.Deferred(function(r) { C.each(a, function(e, t) { var n = y(o[t[4]]) && o[t[4]]; u[t[1]](function() { var e = n && n.apply(this, arguments); e && y(e.promise) ? e.promise().progress(r.notify).done(r.resolve).fail(r.reject) : r[t[0] + "With"](this, n ? [ e ] : arguments); }); }), o = null; }).promise(); }, then: function(t, n, r) { var s = 0; function l(o, a, i, u) { return function() { function e() { var e, t; if (!(o < s)) {