Files
2026-05-03 22:07:40 +05:30

5448 lines
211 KiB
JavaScript

(function(r, m) {
function Pa(a) {
var b = a.length
, d = c.type(a);
return c.isWindow(a) ? !1 : 1 === a.nodeType && b ? !0 : "array" === d || "function" !== d && (0 === b || "number" === typeof b && 0 < b && b - 1 in a)
}
function xb(a, b, d, e) {
if (c.acceptData(a)) {
var f = c.expando
, g = "string" === typeof b
, h = a.nodeType
, j = h ? c.cache : a
, k = h ? a[f] : a[f] && f;
if (k && j[k] && (e || j[k].data) || !(g && d === m)) {
k || (h ? a[f] = k = ca.pop() || c.guid++ : k = f);
j[k] || (j[k] = {},
h || (j[k].toJSON = c.noop));
if ("object" === typeof b || "function" === typeof b)
e ? j[k] = c.extend(j[k], b) : j[k].data = c.extend(j[k].data, b);
a = j[k];
e || (a.data || (a.data = {}),
a = a.data);
d !== m && (a[c.camelCase(b)] = d);
g ? (d = a[b],
null == d && (d = a[c.camelCase(b)])) : d = a;
return d
}
}
}
function yb(a, b, d) {
if (c.acceptData(a)) {
var e, f, g, h = a.nodeType, j = h ? c.cache : a, k = h ? a[c.expando] : c.expando;
if (j[k]) {
if (b && (g = d ? j[k] : j[k].data)) {
c.isArray(b) ? b = b.concat(c.map(b, c.camelCase)) : b in g ? b = [b] : (b = c.camelCase(b),
b = b in g ? [b] : b.split(" "));
e = 0;
for (f = b.length; e < f; e++)
delete g[b[e]];
if (!(d ? Qa : c.isEmptyObject)(g))
return
}
if (!d && (delete j[k].data,
!Qa(j[k])))
return;
h ? c.cleanData([a], !0) : c.support.deleteExpando || j != j.window ? delete j[k] : j[k] = null
}
}
}
function zb(a, b, d) {
if (d === m && 1 === a.nodeType)
if (d = "data-" + b.replace(Fc, "-$1").toLowerCase(),
d = a.getAttribute(d),
"string" === typeof d) {
try {
d = "true" === d ? !0 : "false" === d ? !1 : "null" === d ? null : +d + "" === d ? +d : Gc.test(d) ? c.parseJSON(d) : d
} catch (e) {}
c.data(a, b, d)
} else
d = m;
return d
}
function Qa(a) {
for (var b in a)
if (!("data" === b && c.isEmptyObject(a[b])) && "toJSON" !== b)
return !1;
return !0
}
function ta() {
return !0
}
function da() {
return !1
}
function Ab(a, b) {
do
a = a[b];
while (a && 1 !== a.nodeType);
return a
}
function Bb(a, b, d) {
b = b || 0;
if (c.isFunction(b))
return c.grep(a, function(a, e) {
return !!b.call(a, e, a) === d
});
if (b.nodeType)
return c.grep(a, function(a) {
return a === b === d
});
if ("string" === typeof b) {
var e = c.grep(a, function(a) {
return 1 === a.nodeType
});
if (Hc.test(b))
return c.filter(b, e, !d);
b = c.filter(b, e)
}
return c.grep(a, function(a) {
return 0 <= c.inArray(a, b) === d
})
}
function Cb(a) {
var b = Db.split("|");
a = a.createDocumentFragment();
if (a.createElement)
for (; b.length; )
a.createElement(b.pop());
return a
}
function Eb(a) {
var b = a.getAttributeNode("type");
a.type = (b && b.specified) + "/" + a.type;
return a
}
function Fb(a) {
var b = Ic.exec(a.type);
b ? a.type = b[1] : a.removeAttribute("type");
return a
}
function Ra(a, b) {
for (var d, e = 0; null != (d = a[e]); e++)
c._data(d, "globalEval", !b || c._data(b[e], "globalEval"))
}
function Gb(a, b) {
if (1 === b.nodeType && c.hasData(a)) {
var d, e, f;
e = c._data(a);
var g = c._data(b, e)
, h = e.events;
if (h)
for (d in delete g.handle,
g.events = {},
h) {
e = 0;
for (f = h[d].length; e < f; e++)
c.event.add(b, d, h[d][e])
}
g.data && (g.data = c.extend({}, g.data))
}
}
function B(a, b) {
var d, e, f = 0, g = typeof a.getElementsByTagName !== L ? a.getElementsByTagName(b || "*") : typeof a.querySelectorAll !== L ? a.querySelectorAll(b || "*") : m;
if (!g) {
g = [];
for (d = a.childNodes || a; null != (e = d[f]); f++)
!b || c.nodeName(e, b) ? g.push(e) : c.merge(g, B(e, b))
}
return b === m || b && c.nodeName(a, b) ? c.merge([a], g) : g
}
function Jc(a) {
Sa.test(a.type) && (a.defaultChecked = a.checked)
}
function Hb(a, b) {
if (b in a)
return b;
for (var d = b.charAt(0).toUpperCase() + b.slice(1), e = b, c = Ib.length; c--; )
if (b = Ib[c] + d,
b in a)
return b;
return e
}
function na(a, b) {
a = b || a;
return "none" === c.css(a, "display") || !c.contains(a.ownerDocument, a)
}
function Jb(a, b) {
for (var d, e, f, g = [], h = 0, j = a.length; h < j; h++)
if (e = a[h],
e.style)
if (g[h] = c._data(e, "olddisplay"),
d = e.style.display,
b)
!g[h] && "none" === d && (e.style.display = ""),
"" === e.style.display && na(e) && (g[h] = c._data(e, "olddisplay", Kb(e.nodeName)));
else if (!g[h] && (f = na(e),
d && "none" !== d || !f))
c._data(e, "olddisplay", f ? d : c.css(e, "display"));
for (h = 0; h < j; h++)
if (e = a[h],
e.style && (!b || "none" === e.style.display || "" === e.style.display))
e.style.display = b ? g[h] || "" : "none";
return a
}
function Lb(a, b, d) {
return (a = Kc.exec(b)) ? Math.max(0, a[1] - (d || 0)) + (a[2] || "px") : b
}
function Mb(a, b, d, e, f) {
b = d === (e ? "border" : "content") ? 4 : "width" === b ? 1 : 0;
for (var g = 0; 4 > b; b += 2)
"margin" === d && (g += c.css(a, d + V[b], !0, f)),
e ? ("content" === d && (g -= c.css(a, "padding" + V[b], !0, f)),
"margin" !== d && (g -= c.css(a, "border" + V[b] + "Width", !0, f))) : (g += c.css(a, "padding" + V[b], !0, f),
"padding" !== d && (g += c.css(a, "border" + V[b] + "Width", !0, f)));
return g
}
function Nb(a, b, d) {
var e = !0
, f = "width" === b ? a.offsetWidth : a.offsetHeight
, g = W(a)
, h = c.support.boxSizing && "border-box" === c.css(a, "boxSizing", !1, g);
if (0 >= f || null == f) {
f = X(a, b, g);
if (0 > f || null == f)
f = a.style[b];
if (ua.test(f))
return f;
e = h && (c.support.boxSizingReliable || f === a.style[b]);
f = parseFloat(f) || 0
}
return f + Mb(a, b, d || (h ? "border" : "content"), e, g) + "px"
}
function Kb(a) {
var b = p
, d = Ob[a];
if (!d) {
d = Pb(a, b);
if ("none" === d || !d)
oa = (oa || c("<iframe frameborder='0' width='0' height='0'/>").css("cssText", "display:block !important")).appendTo(b.documentElement),
b = (oa[0].contentWindow || oa[0].contentDocument).document,
b.write("<!doctype html><html><body>"),
b.close(),
d = Pb(a, b),
oa.detach();
Ob[a] = d
}
return d
}
function Pb(a, b) {
var d = c(b.createElement(a)).appendTo(b.body)
, e = c.css(d[0], "display");
d.remove();
return e
}
function Ta(a, b, d, e) {
var f;
if (c.isArray(b))
c.each(b, function(b, c) {
d || Lc.test(a) ? e(a, c) : Ta(a + "[" + ("object" === typeof c ? b : "") + "]", c, d, e)
});
else if (!d && "object" === c.type(b))
for (f in b)
Ta(a + "[" + f + "]", b[f], d, e);
else
e(a, b)
}
function Qb(a) {
return function(b, d) {
"string" !== typeof b && (d = b,
b = "*");
var e, f = 0, g = b.toLowerCase().match(O) || [];
if (c.isFunction(d))
for (; e = g[f++]; )
"+" === e[0] ? (e = e.slice(1) || "*",
(a[e] = a[e] || []).unshift(d)) : (a[e] = a[e] || []).push(d)
}
}
function Rb(a, b, d, e) {
function f(j) {
var k;
g[j] = !0;
c.each(a[j] || [], function(a, c) {
var j = c(b, d, e);
if ("string" === typeof j && !h && !g[j])
return b.dataTypes.unshift(j),
f(j),
!1;
if (h)
return !(k = j)
});
return k
}
var g = {}
, h = a === Ua;
return f(b.dataTypes[0]) || !g["*"] && f("*")
}
function Va(a, b) {
var d, e, f = c.ajaxSettings.flatOptions || {};
for (e in b)
b[e] !== m && ((f[e] ? a : d || (d = {}))[e] = b[e]);
d && c.extend(!0, a, d);
return a
}
function Sb() {
try {
return new r.XMLHttpRequest
} catch (a) {}
}
function Tb() {
setTimeout(function() {
ea = m
});
return ea = c.now()
}
function Ub(a, b, d) {
var e, f, g = 0, h = va.length, j = c.Deferred().always(function() {
delete k.elem
}), k = function() {
if (f)
return !1;
for (var b = ea || Tb(), b = Math.max(0, l.startTime + l.duration - b), d = 1 - (b / l.duration || 0), e = 0, c = l.tweens.length; e < c; e++)
l.tweens[e].run(d);
j.notifyWith(a, [l, d, b]);
if (1 > d && c)
return b;
j.resolveWith(a, [l]);
return !1
}, l = j.promise({
elem: a,
props: c.extend({}, b),
opts: c.extend(!0, {
specialEasing: {}
}, d),
originalProperties: b,
originalOptions: d,
startTime: ea || Tb(),
duration: d.duration,
tweens: [],
createTween: function(b, d) {
var e = c.Tween(a, l.opts, b, d, l.opts.specialEasing[b] || l.opts.easing);
l.tweens.push(e);
return e
},
stop: function(b) {
var d = 0
, e = b ? l.tweens.length : 0;
if (f)
return this;
for (f = !0; d < e; d++)
l.tweens[d].run(1);
b ? j.resolveWith(a, [l, b]) : j.rejectWith(a, [l, b]);
return this
}
});
b = l.props;
d = l.opts.specialEasing;
var q, n, C, F;
for (e in b)
if (n = c.camelCase(e),
C = d[n],
q = b[e],
c.isArray(q) && (C = q[1],
q = b[e] = q[0]),
e !== n && (b[n] = q,
delete b[e]),
(F = c.cssHooks[n]) && "expand"in F)
for (e in q = F.expand(q),
delete b[n],
q)
e in b || (b[e] = q[e],
d[e] = C);
else
d[n] = C;
for (; g < h; g++)
if (e = va[g].call(l, a, b, l.opts))
return e;
var m = l;
c.each(b, function(a, b) {
for (var d = (pa[a] || []).concat(pa["*"]), e = 0, c = d.length; e < c && !d[e].call(m, a, b); e++)
;
});
c.isFunction(l.opts.start) && l.opts.start.call(a, l);
c.fx.timer(c.extend(k, {
elem: a,
anim: l,
queue: l.opts.queue
}));
return l.progress(l.opts.progress).done(l.opts.done, l.opts.complete).fail(l.opts.fail).always(l.opts.always)
}
function D(a, b, d, e, c) {
return new D.prototype.init(a,b,d,e,c)
}
function wa(a, b) {
var d, e = {
height: a
}, c = 0;
for (b = b ? 1 : 0; 4 > c; c += 2 - b)
d = V[c],
e["margin" + d] = e["padding" + d] = a;
b && (e.opacity = e.width = a);
return e
}
function Vb(a) {
return c.isWindow(a) ? a : 9 === a.nodeType ? a.defaultView || a.parentWindow : !1
}
var xa, Wb, L = typeof m, p = r.document, Nc = r.location, Oc = r.jQuery, Pc = r.$, ya = {}, ca = [], Xb = ca.concat, Wa = ca.push, Y = ca.slice, Yb = ca.indexOf, Qc = ya.toString, qa = ya.hasOwnProperty, Xa = "1.9.1".trim, c = function(a, b) {
return new c.fn.init(a,b,Wb)
}, za = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, O = /\S+/g, Rc = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, Sc = /^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/, Zb = /^<(\w+)\s*\/?>(?:<\/\1>|)$/, Tc = /^[\],:{}\s]*$/, Uc = /(?:^|:|,)(?:\s*\[)+/g, Vc = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g, Wc = /"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g, Xc = /^-ms-/, Yc = /-([\da-z])/gi, Zc = function(a, b) {
return b.toUpperCase()
}, P = function(a) {
if (p.addEventListener || "load" === a.type || "complete" === p.readyState)
$b(),
c.ready()
}, $b = function() {
p.addEventListener ? (p.removeEventListener("DOMContentLoaded", P, !1),
r.removeEventListener("load", P, !1)) : (p.detachEvent("onreadystatechange", P),
r.detachEvent("onload", P))
};
c.fn = c.prototype = {
jquery: "1.9.1",
constructor: c,
init: function(a, b, d) {
var e;
if (!a)
return this;
if ("string" === typeof a) {
if ((e = "<" === a.charAt(0) && ">" === a.charAt(a.length - 1) && 3 <= a.length ? [null, a, null] : Sc.exec(a)) && (e[1] || !b)) {
if (e[1]) {
if (b = b instanceof c ? b[0] : b,
c.merge(this, c.parseHTML(e[1], b && b.nodeType ? b.ownerDocument || b : p, !0)),
Zb.test(e[1]) && c.isPlainObject(b))
for (e in b)
if (c.isFunction(this[e]))
this[e](b[e]);
else
this.attr(e, b[e])
} else {
if ((b = p.getElementById(e[2])) && b.parentNode) {
if (b.id !== e[2])
return d.find(a);
this.length = 1;
this[0] = b
}
this.context = p;
this.selector = a
}
return this
}
return !b || b.jquery ? (b || d).find(a) : this.constructor(b).find(a)
}
if (a.nodeType)
return this.context = this[0] = a,
this.length = 1,
this;
if (c.isFunction(a))
return d.ready(a);
a.selector !== m && (this.selector = a.selector,
this.context = a.context);
return c.makeArray(a, this)
},
selector: "",
length: 0,
size: function() {
return this.length
},
toArray: function() {
return Y.call(this)
},
get: function(a) {
return null == a ? this.toArray() : 0 > a ? this[this.length + a] : this[a]
},
pushStack: function(a) {
a = c.merge(this.constructor(), a);
a.prevObject = this;
a.context = this.context;
return a
},
each: function(a, b) {
return c.each(this, a, b)
},
ready: function(a) {
c.ready.promise().done(a);
return this
},
slice: function() {
return this.pushStack(Y.apply(this, arguments))
},
first: function() {
return this.eq(0)
},
last: function() {
return this.eq(-1)
},
eq: function(a) {
var b = this.length;
a = +a + (0 > a ? b : 0);
return this.pushStack(0 <= a && a < b ? [this[a]] : [])
},
map: function(a) {
return this.pushStack(c.map(this, function(b, d) {
return a.call(b, d, b)
}))
},
end: function() {
return this.prevObject || this.constructor(null)
},
push: Wa,
sort: [].sort,
splice: [].splice
};
c.fn.init.prototype = c.fn;
c.extend = c.fn.extend = function() {
var a, b, d, e, f, g = arguments[0] || {}, h = 1, j = arguments.length, k = !1;
"boolean" === typeof g && (k = g,
g = arguments[1] || {},
h = 2);
"object" !== typeof g && !c.isFunction(g) && (g = {});
j === h && (g = this,
--h);
for (; h < j; h++)
if (null != (f = arguments[h]))
for (e in f)
a = g[e],
d = f[e],
g !== d && (k && d && (c.isPlainObject(d) || (b = c.isArray(d))) ? (b ? (b = !1,
a = a && c.isArray(a) ? a : []) : a = a && c.isPlainObject(a) ? a : {},
g[e] = c.extend(k, a, d)) : d !== m && (g[e] = d));
return g
}
;
c.extend({
noConflict: function(a) {
r.$ === c && (r.$ = Pc);
a && r.jQuery === c && (r.jQuery = Oc);
return c
},
isReady: !1,
readyWait: 1,
holdReady: function(a) {
a ? c.readyWait++ : c.ready(!0)
},
ready: function(a) {
if (!(!0 === a ? --c.readyWait : c.isReady)) {
if (!p.body)
return setTimeout(c.ready);
c.isReady = !0;
!0 !== a && 0 < --c.readyWait || (xa.resolveWith(p, [c]),
c.fn.trigger && c(p).trigger("ready").off("ready"))
}
},
isFunction: function(a) {
return "function" === c.type(a)
},
isArray: Array.isArray || function(a) {
return "array" === c.type(a)
}
,
isWindow: function(a) {
return null != a && a == a.window
},
isNumeric: function(a) {
return !isNaN(parseFloat(a)) && isFinite(a)
},
type: function(a) {
return null == a ? String(a) : "object" === typeof a || "function" === typeof a ? ya[Qc.call(a)] || "object" : typeof a
},
isPlainObject: function(a) {
if (!a || "object" !== c.type(a) || a.nodeType || c.isWindow(a))
return !1;
try {
if (a.constructor && !qa.call(a, "constructor") && !qa.call(a.constructor.prototype, "isPrototypeOf"))
return !1
} catch (b) {
return !1
}
for (var d in a)
;
return d === m || qa.call(a, d)
},
isEmptyObject: function(a) {
for (var b in a)
return !1;
return !0
},
error: function(a) {
throw Error(a);
},
parseHTML: function(a, b, d) {
if (!a || "string" !== typeof a)
return null;
"boolean" === typeof b && (d = b,
b = !1);
b = b || p;
var e = Zb.exec(a);
d = !d && [];
if (e)
return [b.createElement(e[1])];
e = c.buildFragment([a], b, d);
d && c(d).remove();
return c.merge([], e.childNodes)
},
parseJSON: function(a) {
if (r.JSON && r.JSON.parse)
return r.JSON.parse(a);
if (null === a)
return a;
if ("string" === typeof a && (a = c.trim(a)) && Tc.test(a.replace(Vc, "@").replace(Wc, "]").replace(Uc, "")))
return (new Function("return " + a))();
c.error("Invalid JSON: " + a)
},
parseXML: function(a) {
var b, d;
if (!a || "string" !== typeof a)
return null;
try {
r.DOMParser ? (d = new DOMParser,
b = d.parseFromString(a, "text/xml")) : (b = new ActiveXObject("Microsoft.XMLDOM"),
b.async = "false",
b.loadXML(a))
} catch (e) {
b = m
}
(!b || !b.documentElement || b.getElementsByTagName("parsererror").length) && c.error("Invalid XML: " + a);
return b
},
noop: function() {},
globalEval: function(a) {
a && c.trim(a) && (r.execScript || function(a) {
r.eval.call(r, a)
}
)(a)
},
camelCase: function(a) {
return a.replace(Xc, "ms-").replace(Yc, Zc)
},
nodeName: function(a, b) {
return a.nodeName && a.nodeName.toLowerCase() === b.toLowerCase()
},
each: function(a, b, d) {
var e, c = 0, g = a.length;
e = Pa(a);
if (d)
if (e)
for (; c < g && !(e = b.apply(a[c], d),
!1 === e); c++)
;
else
for (c in a) {
if (e = b.apply(a[c], d),
!1 === e)
break
}
else if (e)
for (; c < g && !(e = b.call(a[c], c, a[c]),
!1 === e); c++)
;
else
for (c in a)
if (e = b.call(a[c], c, a[c]),
!1 === e)
break;
return a
},
trim: Xa && !Xa.call("\ufeff\u00a0") ? function(a) {
return null == a ? "" : Xa.call(a)
}
: function(a) {
return null == a ? "" : (a + "").replace(Rc, "")
}
,
makeArray: function(a, b) {
var d = b || [];
null != a && (Pa(Object(a)) ? c.merge(d, "string" === typeof a ? [a] : a) : Wa.call(d, a));
return d
},
inArray: function(a, b, d) {
var c;
if (b) {
if (Yb)
return Yb.call(b, a, d);
c = b.length;
for (d = d ? 0 > d ? Math.max(0, c + d) : d : 0; d < c; d++)
if (d in b && b[d] === a)
return d
}
return -1
},
merge: function(a, b) {
var d = b.length
, c = a.length
, f = 0;
if ("number" === typeof d)
for (; f < d; f++)
a[c++] = b[f];
else
for (; b[f] !== m; )
a[c++] = b[f++];
a.length = c;
return a
},
grep: function(a, b, d) {
var c, f = [], g = 0, h = a.length;
for (d = !!d; g < h; g++)
c = !!b(a[g], g),
d !== c && f.push(a[g]);
return f
},
map: function(a, b, d) {
var c, f = 0, g = a.length, h = [];
if (Pa(a))
for (; f < g; f++)
c = b(a[f], f, d),
null != c && (h[h.length] = c);
else
for (f in a)
c = b(a[f], f, d),
null != c && (h[h.length] = c);
return Xb.apply([], h)
},
guid: 1,
proxy: function(a, b) {
var d, e;
"string" === typeof b && (e = a[b],
b = a,
a = e);
if (!c.isFunction(a))
return m;
d = Y.call(arguments, 2);
e = function() {
return a.apply(b || this, d.concat(Y.call(arguments)))
}
;
e.guid = a.guid = a.guid || c.guid++;
return e
},
access: function(a, b, d, e, f, g, h) {
var j = 0
, k = a.length
, l = null == d;
if ("object" === c.type(d))
for (j in f = !0,
d)
c.access(a, b, j, d[j], !0, g, h);
else if (e !== m && (f = !0,
c.isFunction(e) || (h = !0),
l && (h ? (b.call(a, e),
b = null) : (l = b,
b = function(a, b, d) {
return l.call(c(a), d)
}
)),
b))
for (; j < k; j++)
b(a[j], d, h ? e : e.call(a[j], j, b(a[j], d)));
return f ? a : l ? b.call(a) : k ? b(a[0], d) : g
},
now: function() {
return (new Date).getTime()
}
});
c.ready.promise = function(a) {
if (!xa)
if (xa = c.Deferred(),
"complete" === p.readyState)
setTimeout(c.ready);
else if (p.addEventListener)
p.addEventListener("DOMContentLoaded", P, !1),
r.addEventListener("load", P, !1);
else {
p.attachEvent("onreadystatechange", P);
r.attachEvent("onload", P);
var b = !1;
try {
b = null == r.frameElement && p.documentElement
} catch (d) {}
b && b.doScroll && function f() {
if (!c.isReady) {
try {
b.doScroll("left")
} catch (a) {
return setTimeout(f, 50)
}
$b();
c.ready()
}
}()
}
return xa.promise(a)
}
;
c.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function(a, b) {
ya["[object " + b + "]"] = b.toLowerCase()
});
Wb = c(p);
var ac = {};
c.Callbacks = function(a) {
var b;
if ("string" === typeof a) {
if (!(b = ac[a])) {
b = a;
var d = ac[b] = {};
c.each(b.match(O) || [], function(a, b) {
d[b] = !0
});
b = d
}
} else
b = c.extend({}, a);
a = b;
var e, f, g, h, j, k, l = [], q = !a.once && [], n = function(b) {
f = a.memory && b;
g = !0;
j = k || 0;
k = 0;
h = l.length;
for (e = !0; l && j < h; j++)
if (!1 === l[j].apply(b[0], b[1]) && a.stopOnFalse) {
f = !1;
break
}
e = !1;
l && (q ? q.length && n(q.shift()) : f ? l = [] : C.disable())
}, C = {
add: function() {
if (l) {
var b = l.length;
(function Mc(b) {
c.each(b, function(b, d) {
var e = c.type(d);
"function" === e ? (!a.unique || !C.has(d)) && l.push(d) : d && (d.length && "string" !== e) && Mc(d)
})
}
)(arguments);
e ? h = l.length : f && (k = b,
n(f))
}
return this
},
remove: function() {
l && c.each(arguments, function(a, b) {
for (var d; -1 < (d = c.inArray(b, l, d)); )
l.splice(d, 1),
e && (d <= h && h--,
d <= j && j--)
});
return this
},
has: function(a) {
return a ? -1 < c.inArray(a, l) : !(!l || !l.length)
},
empty: function() {
l = [];
return this
},
disable: function() {
l = q = f = m;
return this
},
disabled: function() {
return !l
},
lock: function() {
q = m;
f || C.disable();
return this
},
locked: function() {
return !q
},
fireWith: function(a, b) {
b = b || [];
b = [a, b.slice ? b.slice() : b];
if (l && (!g || q))
e ? q.push(b) : n(b);
return this
},
fire: function() {
C.fireWith(this, arguments);
return this
},
fired: function() {
return !!g
}
};
return C
}
;
c.extend({
Deferred: function(a) {
var b = [["resolve", "done", c.Callbacks("once memory"), "resolved"], ["reject", "fail", c.Callbacks("once memory"), "rejected"], ["notify", "progress", c.Callbacks("memory")]]
, d = "pending"
, e = {
state: function() {
return d
},
always: function() {
f.done(arguments).fail(arguments);
return this
},
then: function() {
var a = arguments;
return c.Deferred(function(d) {
c.each(b, function(b, k) {
var l = k[0]
, q = c.isFunction(a[b]) && a[b];
f[k[1]](function() {
var a = q && q.apply(this, arguments);
if (a && c.isFunction(a.promise))
a.promise().done(d.resolve).fail(d.reject).progress(d.notify);
else
d[l + "With"](this === e ? d.promise() : this, q ? [a] : arguments)
})
});
a = null
}).promise()
},
promise: function(a) {
return null != a ? c.extend(a, e) : e
}
}
, f = {};
e.pipe = e.then;
c.each(b, function(a, c) {
var j = c[2]
, k = c[3];
e[c[1]] = j.add;
k && j.add(function() {
d = k
}, b[a ^ 1][2].disable, b[2][2].lock);
f[c[0]] = function() {
f[c[0] + "With"](this === f ? e : this, arguments);
return this
}
;
f[c[0] + "With"] = j.fireWith
});
e.promise(f);
a && a.call(f, f);
return f
},
when: function(a) {
var b = 0, d = Y.call(arguments), e = d.length, f = 1 !== e || a && c.isFunction(a.promise) ? e : 0, g = 1 === f ? a : c.Deferred(), h = function(a, b, d) {
return function(c) {
b[a] = this;
d[a] = 1 < arguments.length ? Y.call(arguments) : c;
d === j ? g.notifyWith(b, d) : --f || g.resolveWith(b, d)
}
}, j, k, l;
if (1 < e) {
j = Array(e);
k = Array(e);
for (l = Array(e); b < e; b++)
d[b] && c.isFunction(d[b].promise) ? d[b].promise().done(h(b, l, d)).fail(g.reject).progress(h(b, k, j)) : --f
}
f || g.resolveWith(l, d);
return g.promise()
}
});
var $c = c, Ya;
var v, Aa, Q, E, Ba, Ca, Da, Za, bc, $a, s = p.createElement("div");
s.setAttribute("className", "t");
s.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>";
Aa = s.getElementsByTagName("*");
Q = s.getElementsByTagName("a")[0];
if (!Aa || !Q || !Aa.length)
Ya = {};
else {
Ba = p.createElement("select");
Da = Ba.appendChild(p.createElement("option"));
E = s.getElementsByTagName("input")[0];
Q.style.cssText = "top:1px;float:left;opacity:.5";
v = {
getSetAttribute: "t" !== s.className,
leadingWhitespace: 3 === s.firstChild.nodeType,
tbody: !s.getElementsByTagName("tbody").length,
htmlSerialize: !!s.getElementsByTagName("link").length,
style: /top/.test(Q.getAttribute("style")),
hrefNormalized: "/a" === Q.getAttribute("href"),
opacity: /^0.5/.test(Q.style.opacity),
cssFloat: !!Q.style.cssFloat,
checkOn: !!E.value,
optSelected: Da.selected,
enctype: !!p.createElement("form").enctype,
html5Clone: "<:nav></:nav>" !== p.createElement("nav").cloneNode(!0).outerHTML,
boxModel: "CSS1Compat" === p.compatMode,
deleteExpando: !0,
noCloneEvent: !0,
inlineBlockNeedsLayout: !1,
shrinkWrapBlocks: !1,
reliableMarginRight: !0,
boxSizingReliable: !0,
pixelPosition: !1
};
E.checked = !0;
v.noCloneChecked = E.cloneNode(!0).checked;
Ba.disabled = !0;
v.optDisabled = !Da.disabled;
try {
delete s.test
} catch (Qd) {
v.deleteExpando = !1
}
E = p.createElement("input");
E.setAttribute("value", "");
v.input = "" === E.getAttribute("value");
E.value = "t";
E.setAttribute("type", "radio");
v.radioValue = "t" === E.value;
E.setAttribute("checked", "t");
E.setAttribute("name", "t");
Ca = p.createDocumentFragment();
Ca.appendChild(E);
v.appendChecked = E.checked;
v.checkClone = Ca.cloneNode(!0).cloneNode(!0).lastChild.checked;
s.attachEvent && (s.attachEvent("onclick", function() {
v.noCloneEvent = !1
}),
s.cloneNode(!0).click());
for ($a in {
submit: !0,
change: !0,
focusin: !0
})
s.setAttribute(Za = "on" + $a, "t"),
v[$a + "Bubbles"] = Za in r || !1 === s.attributes[Za].expando;
s.style.backgroundClip = "content-box";
s.cloneNode(!0).style.backgroundClip = "";
v.clearCloneStyle = "content-box" === s.style.backgroundClip;
c(function() {
var a, b, d = p.getElementsByTagName("body")[0];
d && (a = p.createElement("div"),
a.style.cssText = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",
d.appendChild(a).appendChild(s),
s.innerHTML = "<table><tr><td></td><td>t</td></tr></table>",
b = s.getElementsByTagName("td"),
b[0].style.cssText = "padding:0;margin:0;border:0;display:none",
bc = 0 === b[0].offsetHeight,
b[0].style.display = "",
b[1].style.display = "none",
v.reliableHiddenOffsets = bc && 0 === b[0].offsetHeight,
s.innerHTML = "",
s.style.cssText = "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",
v.boxSizing = 4 === s.offsetWidth,
v.doesNotIncludeMarginInBodyOffset = 1 !== d.offsetTop,
r.getComputedStyle && (v.pixelPosition = "1%" !== (r.getComputedStyle(s, null) || {}).top,
v.boxSizingReliable = "4px" === (r.getComputedStyle(s, null) || {
width: "4px"
}).width,
b = s.appendChild(p.createElement("div")),
b.style.cssText = s.style.cssText = "padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",
b.style.marginRight = b.style.width = "0",
s.style.width = "1px",
v.reliableMarginRight = !parseFloat((r.getComputedStyle(b, null) || {}).marginRight)),
typeof s.style.zoom !== L && (s.innerHTML = "",
s.style.cssText = "padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;width:1px;padding:1px;display:inline;zoom:1",
v.inlineBlockNeedsLayout = 3 === s.offsetWidth,
s.style.display = "block",
s.innerHTML = "<div></div>",
s.firstChild.style.width = "5px",
v.shrinkWrapBlocks = 3 !== s.offsetWidth,
v.inlineBlockNeedsLayout && (d.style.zoom = 1)),
d.removeChild(a),
s = null)
});
Aa = Ba = Ca = Da = Q = E = null;
Ya = v
}
$c.support = Ya;
var Gc = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/
, Fc = /([A-Z])/g;
c.extend({
cache: {},
expando: "jQuery" + ("1.9.1" + Math.random()).replace(/\D/g, ""),
noData: {
embed: !0,
object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
applet: !0
},
hasData: function(a) {
a = a.nodeType ? c.cache[a[c.expando]] : a[c.expando];
return !!a && !Qa(a)
},
data: function(a, b, d) {
return xb(a, b, d)
},
removeData: function(a, b) {
return yb(a, b)
},
_data: function(a, b, d) {
return xb(a, b, d, !0)
},
_removeData: function(a, b) {
return yb(a, b, !0)
},
acceptData: function(a) {
if (a.nodeType && 1 !== a.nodeType && 9 !== a.nodeType)
return !1;
var b = a.nodeName && c.noData[a.nodeName.toLowerCase()];
return !b || !0 !== b && a.getAttribute("classid") === b
}
});
c.fn.extend({
data: function(a, b) {
var d, e, f = this[0], g = 0, h = null;
if (a === m) {
if (this.length && (h = c.data(f),
1 === f.nodeType && !c._data(f, "parsedAttrs"))) {
for (d = f.attributes; g < d.length; g++)
e = d[g].name,
e.indexOf("data-") || (e = c.camelCase(e.slice(5)),
zb(f, e, h[e]));
c._data(f, "parsedAttrs", !0)
}
return h
}
return "object" === typeof a ? this.each(function() {
c.data(this, a)
}) : c.access(this, function(b) {
if (b === m)
return f ? zb(f, a, c.data(f, a)) : null;
this.each(function() {
c.data(this, a, b)
})
}, null, b, 1 < arguments.length, null, !0)
},
removeData: function(a) {
return this.each(function() {
c.removeData(this, a)
})
}
});
c.extend({
queue: function(a, b, d) {
var e;
if (a)
return b = (b || "fx") + "queue",
e = c._data(a, b),
d && (!e || c.isArray(d) ? e = c._data(a, b, c.makeArray(d)) : e.push(d)),
e || []
},
dequeue: function(a, b) {
b = b || "fx";
var d = c.queue(a, b)
, e = d.length
, f = d.shift()
, g = c._queueHooks(a, b)
, h = function() {
c.dequeue(a, b)
};
"inprogress" === f && (f = d.shift(),
e--);
if (g.cur = f)
"fx" === b && d.unshift("inprogress"),
delete g.stop,
f.call(a, h, g);
!e && g && g.empty.fire()
},
_queueHooks: function(a, b) {
var d = b + "queueHooks";
return c._data(a, d) || c._data(a, d, {
empty: c.Callbacks("once memory").add(function() {
c._removeData(a, b + "queue");
c._removeData(a, d)
})
})
}
});
c.fn.extend({
queue: function(a, b) {
var d = 2;
"string" !== typeof a && (b = a,
a = "fx",
d--);
return arguments.length < d ? c.queue(this[0], a) : b === m ? this : this.each(function() {
var d = c.queue(this, a, b);
c._queueHooks(this, a);
"fx" === a && "inprogress" !== d[0] && c.dequeue(this, a)
})
},
dequeue: function(a) {
return this.each(function() {
c.dequeue(this, a)
})
},
delay: function(a, b) {
a = c.fx ? c.fx.speeds[a] || a : a;
return this.queue(b || "fx", function(b, c) {
var f = setTimeout(b, a);
c.stop = function() {
clearTimeout(f)
}
})
},
clearQueue: function(a) {
return this.queue(a || "fx", [])
},
promise: function(a, b) {
var d, e = 1, f = c.Deferred(), g = this, h = this.length, j = function() {
--e || f.resolveWith(g, [g])
};
"string" !== typeof a && (b = a,
a = m);
for (a = a || "fx"; h--; )
if ((d = c._data(g[h], a + "queueHooks")) && d.empty)
e++,
d.empty.add(j);
j();
return f.promise(b)
}
});
var fa, cc, ab = /[\t\r\n]/g, ad = /\r/g, bd = /^(?:input|select|textarea|button|object)$/i, cd = /^(?:a|area)$/i, dc = /^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped)$/i, bb = /^(?:checked|selected)$/i, Z = c.support.getSetAttribute, cb = c.support.input;
c.fn.extend({
attr: function(a, b) {
return c.access(this, c.attr, a, b, 1 < arguments.length)
},
removeAttr: function(a) {
return this.each(function() {
c.removeAttr(this, a)
})
},
prop: function(a, b) {
return c.access(this, c.prop, a, b, 1 < arguments.length)
},
removeProp: function(a) {
a = c.propFix[a] || a;
return this.each(function() {
try {
this[a] = m,
delete this[a]
} catch (b) {}
})
},
addClass: function(a) {
var b, d, e, f, g, h = 0, j = this.length;
b = "string" === typeof a && a;
if (c.isFunction(a))
return this.each(function(b) {
c(this).addClass(a.call(this, b, this.className))
});
if (b)
for (b = (a || "").match(O) || []; h < j; h++)
if (d = this[h],
e = 1 === d.nodeType && (d.className ? (" " + d.className + " ").replace(ab, " ") : " ")) {
for (g = 0; f = b[g++]; )
0 > e.indexOf(" " + f + " ") && (e += f + " ");
d.className = c.trim(e)
}
return this
},
removeClass: function(a) {
var b, d, e, f, g, h = 0, j = this.length;
b = 0 === arguments.length || "string" === typeof a && a;
if (c.isFunction(a))
return this.each(function(b) {
c(this).removeClass(a.call(this, b, this.className))
});
if (b)
for (b = (a || "").match(O) || []; h < j; h++)
if (d = this[h],
e = 1 === d.nodeType && (d.className ? (" " + d.className + " ").replace(ab, " ") : "")) {
for (g = 0; f = b[g++]; )
for (; 0 <= e.indexOf(" " + f + " "); )
e = e.replace(" " + f + " ", " ");
d.className = a ? c.trim(e) : ""
}
return this
},
toggleClass: function(a, b) {
var d = typeof a
, e = "boolean" === typeof b;
return c.isFunction(a) ? this.each(function(d) {
c(this).toggleClass(a.call(this, d, this.className, b), b)
}) : this.each(function() {
if ("string" === d)
for (var f, g = 0, h = c(this), j = b, k = a.match(O) || []; f = k[g++]; )
j = e ? j : !h.hasClass(f),
h[j ? "addClass" : "removeClass"](f);
else if (d === L || "boolean" === d)
this.className && c._data(this, "__className__", this.className),
this.className = this.className || !1 === a ? "" : c._data(this, "__className__") || ""
})
},
hasClass: function(a) {
a = " " + a + " ";
for (var b = 0, d = this.length; b < d; b++)
if (1 === this[b].nodeType && 0 <= (" " + this[b].className + " ").replace(ab, " ").indexOf(a))
return !0;
return !1
},
val: function(a) {
var b, d, e, f = this[0];
if (arguments.length)
return e = c.isFunction(a),
this.each(function(b) {
var f = c(this);
if (1 === this.nodeType && (b = e ? a.call(this, b, f.val()) : a,
null == b ? b = "" : "number" === typeof b ? b += "" : c.isArray(b) && (b = c.map(b, function(a) {
return null == a ? "" : a + ""
})),
d = c.valHooks[this.type] || c.valHooks[this.nodeName.toLowerCase()],
!d || !("set"in d) || d.set(this, b, "value") === m))
this.value = b
});
if (f) {
if ((d = c.valHooks[f.type] || c.valHooks[f.nodeName.toLowerCase()]) && "get"in d && (b = d.get(f, "value")) !== m)
return b;
b = f.value;
return "string" === typeof b ? b.replace(ad, "") : null == b ? "" : b
}
}
});
c.extend({
valHooks: {
option: {
get: function(a) {
var b = a.attributes.value;
return !b || b.specified ? a.value : a.text
}
},
select: {
get: function(a) {
for (var b, d = a.options, e = a.selectedIndex, f = (a = "select-one" === a.type || 0 > e) ? null : [], g = a ? e + 1 : d.length, h = 0 > e ? g : a ? e : 0; h < g; h++)
if (b = d[h],
(b.selected || h === e) && (c.support.optDisabled ? !b.disabled : null === b.getAttribute("disabled")) && (!b.parentNode.disabled || !c.nodeName(b.parentNode, "optgroup"))) {
b = c(b).val();
if (a)
return b;
f.push(b)
}
return f
},
set: function(a, b) {
var d = c.makeArray(b);
c(a).find("option").each(function() {
this.selected = 0 <= c.inArray(c(this).val(), d)
});
d.length || (a.selectedIndex = -1);
return d
}
}
},
attr: function(a, b, d) {
var e, f, g;
f = a.nodeType;
if (a && !(3 === f || 8 === f || 2 === f)) {
if (typeof a.getAttribute === L)
return c.prop(a, b, d);
if (f = 1 !== f || !c.isXMLDoc(a))
b = b.toLowerCase(),
e = c.attrHooks[b] || (dc.test(b) ? cc : fa);
if (d !== m)
if (null === d)
c.removeAttr(a, b);
else {
if (e && f && "set"in e && (g = e.set(a, d, b)) !== m)
return g;
a.setAttribute(b, d + "");
return d
}
else {
if (e && f && "get"in e && null !== (g = e.get(a, b)))
return g;
typeof a.getAttribute !== L && (g = a.getAttribute(b));
return null == g ? m : g
}
}
},
removeAttr: function(a, b) {
var d, e, f = 0, g = b && b.match(O);
if (g && 1 === a.nodeType)
for (; d = g[f++]; )
e = c.propFix[d] || d,
dc.test(d) ? !Z && bb.test(d) ? a[c.camelCase("default-" + d)] = a[e] = !1 : a[e] = !1 : c.attr(a, d, ""),
a.removeAttribute(Z ? d : e)
},
attrHooks: {
type: {
set: function(a, b) {
if (!c.support.radioValue && "radio" === b && c.nodeName(a, "input")) {
var d = a.value;
a.setAttribute("type", b);
d && (a.value = d);
return b
}
}
}
},
propFix: {
tabindex: "tabIndex",
readonly: "readOnly",
"for": "htmlFor",
"class": "className",
maxlength: "maxLength",
cellspacing: "cellSpacing",
cellpadding: "cellPadding",
rowspan: "rowSpan",
colspan: "colSpan",
usemap: "useMap",
frameborder: "frameBorder",
contenteditable: "contentEditable"
},
prop: function(a, b, d) {
var e, f, g;
g = a.nodeType;
if (a && !(3 === g || 8 === g || 2 === g)) {
if (g = 1 !== g || !c.isXMLDoc(a))
b = c.propFix[b] || b,
f = c.propHooks[b];
return d !== m ? f && "set"in f && (e = f.set(a, d, b)) !== m ? e : a[b] = d : f && "get"in f && null !== (e = f.get(a, b)) ? e : a[b]
}
},
propHooks: {
tabIndex: {
get: function(a) {
var b = a.getAttributeNode("tabindex");
return b && b.specified ? parseInt(b.value, 10) : bd.test(a.nodeName) || cd.test(a.nodeName) && a.href ? 0 : m
}
}
}
});
cc = {
get: function(a, b) {
var d = c.prop(a, b)
, e = "boolean" === typeof d && a.getAttribute(b);
return (d = "boolean" === typeof d ? cb && Z ? null != e : bb.test(b) ? a[c.camelCase("default-" + b)] : !!e : a.getAttributeNode(b)) && !1 !== d.value ? b.toLowerCase() : m
},
set: function(a, b, d) {
!1 === b ? c.removeAttr(a, d) : cb && Z || !bb.test(d) ? a.setAttribute(!Z && c.propFix[d] || d, d) : a[c.camelCase("default-" + d)] = a[d] = !0;
return d
}
};
if (!cb || !Z)
c.attrHooks.value = {
get: function(a, b) {
var d = a.getAttributeNode(b);
return c.nodeName(a, "input") ? a.defaultValue : d && d.specified ? d.value : m
},
set: function(a, b, d) {
if (c.nodeName(a, "input"))
a.defaultValue = b;
else
return fa && fa.set(a, b, d)
}
};
Z || (fa = c.valHooks.button = {
get: function(a, b) {
var d = a.getAttributeNode(b);
return d && ("id" === b || "name" === b || "coords" === b ? "" !== d.value : d.specified) ? d.value : m
},
set: function(a, b, d) {
var c = a.getAttributeNode(d);
c || a.setAttributeNode(c = a.ownerDocument.createAttribute(d));
c.value = b += "";
return "value" === d || b === a.getAttribute(d) ? b : m
}
},
c.attrHooks.contenteditable = {
get: fa.get,
set: function(a, b, d) {
fa.set(a, "" === b ? !1 : b, d)
}
},
c.each(["width", "height"], function(a, b) {
c.attrHooks[b] = c.extend(c.attrHooks[b], {
set: function(a, c) {
if ("" === c)
return a.setAttribute(b, "auto"),
c
}
})
}));
c.support.hrefNormalized || (c.each(["href", "src", "width", "height"], function(a, b) {
c.attrHooks[b] = c.extend(c.attrHooks[b], {
get: function(a) {
a = a.getAttribute(b, 2);
return null == a ? m : a
}
})
}),
c.each(["href", "src"], function(a, b) {
c.propHooks[b] = {
get: function(a) {
return a.getAttribute(b, 4)
}
}
}));
c.support.style || (c.attrHooks.style = {
get: function(a) {
return a.style.cssText || m
},
set: function(a, b) {
return a.style.cssText = b + ""
}
});
c.support.optSelected || (c.propHooks.selected = c.extend(c.propHooks.selected, {
get: function(a) {
if (a = a.parentNode)
a.selectedIndex,
a.parentNode && a.parentNode.selectedIndex;
return null
}
}));
c.support.enctype || (c.propFix.enctype = "encoding");
c.support.checkOn || c.each(["radio", "checkbox"], function() {
c.valHooks[this] = {
get: function(a) {
return null === a.getAttribute("value") ? "on" : a.value
}
}
});
c.each(["radio", "checkbox"], function() {
c.valHooks[this] = c.extend(c.valHooks[this], {
set: function(a, b) {
if (c.isArray(b))
return a.checked = 0 <= c.inArray(c(a).val(), b)
}
})
});
var db = /^(?:input|select|textarea)$/i
, dd = /^key/
, ed = /^(?:mouse|contextmenu)|click/
, ec = /^(?:focusinfocus|focusoutblur)$/
, fc = /^([^.]*)(?:\.(.+)|)$/;
c.event = {
global: {},
add: function(a, b, d, e, f) {
var g, h, j, k, l, q, n, C, F;
if (j = c._data(a)) {
d.handler && (k = d,
d = k.handler,
f = k.selector);
d.guid || (d.guid = c.guid++);
if (!(h = j.events))
h = j.events = {};
if (!(l = j.handle))
l = j.handle = function(a) {
return typeof c !== L && (!a || c.event.triggered !== a.type) ? c.event.dispatch.apply(l.elem, arguments) : m
}
,
l.elem = a;
b = (b || "").match(O) || [""];
for (j = b.length; j--; ) {
g = fc.exec(b[j]) || [];
C = q = g[1];
F = (g[2] || "").split(".").sort();
g = c.event.special[C] || {};
C = (f ? g.delegateType : g.bindType) || C;
g = c.event.special[C] || {};
q = c.extend({
type: C,
origType: q,
data: e,
handler: d,
guid: d.guid,
selector: f,
needsContext: f && c.expr.match.needsContext.test(f),
namespace: F.join(".")
}, k);
if (!(n = h[C]))
if (n = h[C] = [],
n.delegateCount = 0,
!g.setup || !1 === g.setup.call(a, e, F, l))
a.addEventListener ? a.addEventListener(C, l, !1) : a.attachEvent && a.attachEvent("on" + C, l);
g.add && (g.add.call(a, q),
q.handler.guid || (q.handler.guid = d.guid));
f ? n.splice(n.delegateCount++, 0, q) : n.push(q);
c.event.global[C] = !0
}
a = null
}
},
remove: function(a, b, d, e, f) {
var g, h, j, k, l, q, n, C, m, p, r, z = c.hasData(a) && c._data(a);
if (z && (q = z.events)) {
b = (b || "").match(O) || [""];
for (l = b.length; l--; )
if (j = fc.exec(b[l]) || [],
m = r = j[1],
p = (j[2] || "").split(".").sort(),
m) {
n = c.event.special[m] || {};
m = (e ? n.delegateType : n.bindType) || m;
C = q[m] || [];
j = j[2] && RegExp("(^|\\.)" + p.join("\\.(?:.*\\.|)") + "(\\.|$)");
for (k = g = C.length; g--; )
if (h = C[g],
(f || r === h.origType) && (!d || d.guid === h.guid) && (!j || j.test(h.namespace)) && (!e || e === h.selector || "**" === e && h.selector))
C.splice(g, 1),
h.selector && C.delegateCount--,
n.remove && n.remove.call(a, h);
k && !C.length && ((!n.teardown || !1 === n.teardown.call(a, p, z.handle)) && c.removeEvent(a, m, z.handle),
delete q[m])
} else
for (m in q)
c.event.remove(a, m + b[l], d, e, !0);
c.isEmptyObject(q) && (delete z.handle,
c._removeData(a, "events"))
}
},
trigger: function(a, b, d, e) {
var f, g, h, j, k, l, q = [d || p], n = qa.call(a, "type") ? a.type : a;
k = qa.call(a, "namespace") ? a.namespace.split(".") : [];
h = f = d = d || p;
if (!(3 === d.nodeType || 8 === d.nodeType) && !ec.test(n + c.event.triggered))
if (0 <= n.indexOf(".") && (k = n.split("."),
n = k.shift(),
k.sort()),
g = 0 > n.indexOf(":") && "on" + n,
a = a[c.expando] ? a : new c.Event(n,"object" === typeof a && a),
a.isTrigger = !0,
a.namespace = k.join("."),
a.namespace_re = a.namespace ? RegExp("(^|\\.)" + k.join("\\.(?:.*\\.|)") + "(\\.|$)") : null,
a.result = m,
a.target || (a.target = d),
b = null == b ? [a] : c.makeArray(b, [a]),
k = c.event.special[n] || {},
e || !(k.trigger && !1 === k.trigger.apply(d, b))) {
if (!e && !k.noBubble && !c.isWindow(d)) {
j = k.delegateType || n;
ec.test(j + n) || (h = h.parentNode);
for (; h; h = h.parentNode)
q.push(h),
f = h;
if (f === (d.ownerDocument || p))
q.push(f.defaultView || f.parentWindow || r)
}
for (l = 0; (h = q[l++]) && !a.isPropagationStopped(); )
a.type = 1 < l ? j : k.bindType || n,
(f = (c._data(h, "events") || {})[a.type] && c._data(h, "handle")) && f.apply(h, b),
(f = g && h[g]) && (c.acceptData(h) && f.apply && !1 === f.apply(h, b)) && a.preventDefault();
a.type = n;
if (!e && !a.isDefaultPrevented() && (!k._default || !1 === k._default.apply(d.ownerDocument, b)) && !("click" === n && c.nodeName(d, "a")) && c.acceptData(d) && g && d[n] && !c.isWindow(d)) {
(f = d[g]) && (d[g] = null);
c.event.triggered = n;
try {
d[n]()
} catch (C) {}
c.event.triggered = m;
f && (d[g] = f)
}
return a.result
}
},
dispatch: function(a) {
a = c.event.fix(a);
var b, d, e, f, g = [], h = Y.call(arguments);
b = (c._data(this, "events") || {})[a.type] || [];
var j = c.event.special[a.type] || {};
h[0] = a;
a.delegateTarget = this;
if (!(j.preDispatch && !1 === j.preDispatch.call(this, a))) {
g = c.event.handlers.call(this, a, b);
for (b = 0; (e = g[b++]) && !a.isPropagationStopped(); ) {
a.currentTarget = e.elem;
for (f = 0; (d = e.handlers[f++]) && !a.isImmediatePropagationStopped(); )
if (!a.namespace_re || a.namespace_re.test(d.namespace))
if (a.handleObj = d,
a.data = d.data,
d = ((c.event.special[d.origType] || {}).handle || d.handler).apply(e.elem, h),
d !== m && !1 === (a.result = d))
a.preventDefault(),
a.stopPropagation()
}
j.postDispatch && j.postDispatch.call(this, a);
return a.result
}
},
handlers: function(a, b) {
var d, e, f, g, h = [], j = b.delegateCount, k = a.target;
if (j && k.nodeType && (!a.button || "click" !== a.type))
for (; k != this; k = k.parentNode || this)
if (1 === k.nodeType && (!0 !== k.disabled || "click" !== a.type)) {
f = [];
for (g = 0; g < j; g++)
e = b[g],
d = e.selector + " ",
f[d] === m && (f[d] = e.needsContext ? 0 <= c(d, this).index(k) : c.find(d, this, null, [k]).length),
f[d] && f.push(e);
f.length && h.push({
elem: k,
handlers: f
})
}
j < b.length && h.push({
elem: this,
handlers: b.slice(j)
});
return h
},
fix: function(a) {
if (a[c.expando])
return a;
var b, d, e;
b = a.type;
var f = a
, g = this.fixHooks[b];
g || (this.fixHooks[b] = g = ed.test(b) ? this.mouseHooks : dd.test(b) ? this.keyHooks : {});
e = g.props ? this.props.concat(g.props) : this.props;
a = new c.Event(f);
for (b = e.length; b--; )
d = e[b],
a[d] = f[d];
a.target || (a.target = f.srcElement || p);
3 === a.target.nodeType && (a.target = a.target.parentNode);
a.metaKey = !!a.metaKey;
return g.filter ? g.filter(a, f) : a
},
props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
fixHooks: {},
keyHooks: {
props: ["char", "charCode", "key", "keyCode"],
filter: function(a, b) {
null == a.which && (a.which = null != b.charCode ? b.charCode : b.keyCode);
return a
}
},
mouseHooks: {
props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
filter: function(a, b) {
var d, c, f = b.button, g = b.fromElement;
null == a.pageX && null != b.clientX && (d = a.target.ownerDocument || p,
c = d.documentElement,
d = d.body,
a.pageX = b.clientX + (c && c.scrollLeft || d && d.scrollLeft || 0) - (c && c.clientLeft || d && d.clientLeft || 0),
a.pageY = b.clientY + (c && c.scrollTop || d && d.scrollTop || 0) - (c && c.clientTop || d && d.clientTop || 0));
!a.relatedTarget && g && (a.relatedTarget = g === a.target ? b.toElement : g);
!a.which && f !== m && (a.which = f & 1 ? 1 : f & 2 ? 3 : f & 4 ? 2 : 0);
return a
}
},
special: {
load: {
noBubble: !0
},
click: {
trigger: function() {
if (c.nodeName(this, "input") && "checkbox" === this.type && this.click)
return this.click(),
!1
}
},
focus: {
trigger: function() {
if (this !== p.activeElement && this.focus)
try {
return this.focus(),
!1
} catch (a) {}
},
delegateType: "focusin"
},
blur: {
trigger: function() {
if (this === p.activeElement && this.blur)
return this.blur(),
!1
},
delegateType: "focusout"
},
beforeunload: {
postDispatch: function(a) {
a.result !== m && (a.originalEvent.returnValue = a.result)
}
}
},
simulate: function(a, b, d, e) {
a = c.extend(new c.Event, d, {
type: a,
isSimulated: !0,
originalEvent: {}
});
e ? c.event.trigger(a, null, b) : c.event.dispatch.call(b, a);
a.isDefaultPrevented() && d.preventDefault()
}
};
c.removeEvent = p.removeEventListener ? function(a, b, d) {
a.removeEventListener && a.removeEventListener(b, d, !1)
}
: function(a, b, d) {
b = "on" + b;
a.detachEvent && (typeof a[b] === L && (a[b] = null),
a.detachEvent(b, d))
}
;
c.Event = function(a, b) {
if (!(this instanceof c.Event))
return new c.Event(a,b);
a && a.type ? (this.originalEvent = a,
this.type = a.type,
this.isDefaultPrevented = a.defaultPrevented || !1 === a.returnValue || a.getPreventDefault && a.getPreventDefault() ? ta : da) : this.type = a;
b && c.extend(this, b);
this.timeStamp = a && a.timeStamp || c.now();
this[c.expando] = !0
}
;
c.Event.prototype = {
isDefaultPrevented: da,
isPropagationStopped: da,
isImmediatePropagationStopped: da,
preventDefault: function() {
var a = this.originalEvent;
this.isDefaultPrevented = ta;
a && (a.preventDefault ? a.preventDefault() : a.returnValue = !1)
},
stopPropagation: function() {
var a = this.originalEvent;
this.isPropagationStopped = ta;
a && (a.stopPropagation && a.stopPropagation(),
a.cancelBubble = !0)
},
stopImmediatePropagation: function() {
this.isImmediatePropagationStopped = ta;
this.stopPropagation()
}
};
c.each({
mouseenter: "mouseover",
mouseleave: "mouseout"
}, function(a, b) {
c.event.special[a] = {
delegateType: b,
bindType: b,
handle: function(a) {
var e, f = a.relatedTarget, g = a.handleObj;
if (!f || f !== this && !c.contains(this, f))
a.type = g.origType,
e = g.handler.apply(this, arguments),
a.type = b;
return e
}
}
});
c.support.submitBubbles || (c.event.special.submit = {
setup: function() {
if (c.nodeName(this, "form"))
return !1;
c.event.add(this, "click._submit keypress._submit", function(a) {
a = a.target;
if ((a = c.nodeName(a, "input") || c.nodeName(a, "button") ? a.form : m) && !c._data(a, "submitBubbles"))
c.event.add(a, "submit._submit", function(a) {
a._submit_bubble = !0
}),
c._data(a, "submitBubbles", !0)
})
},
postDispatch: function(a) {
a._submit_bubble && (delete a._submit_bubble,
this.parentNode && !a.isTrigger && c.event.simulate("submit", this.parentNode, a, !0))
},
teardown: function() {
if (c.nodeName(this, "form"))
return !1;
c.event.remove(this, "._submit")
}
});
c.support.changeBubbles || (c.event.special.change = {
setup: function() {
if (db.test(this.nodeName)) {
if ("checkbox" === this.type || "radio" === this.type)
c.event.add(this, "propertychange._change", function(a) {
"checked" === a.originalEvent.propertyName && (this._just_changed = !0)
}),
c.event.add(this, "click._change", function(a) {
this._just_changed && !a.isTrigger && (this._just_changed = !1);
c.event.simulate("change", this, a, !0)
});
return !1
}
c.event.add(this, "beforeactivate._change", function(a) {
a = a.target;
db.test(a.nodeName) && !c._data(a, "changeBubbles") && (c.event.add(a, "change._change", function(a) {
this.parentNode && (!a.isSimulated && !a.isTrigger) && c.event.simulate("change", this.parentNode, a, !0)
}),
c._data(a, "changeBubbles", !0))
})
},
handle: function(a) {
var b = a.target;
if (this !== b || a.isSimulated || a.isTrigger || "radio" !== b.type && "checkbox" !== b.type)
return a.handleObj.handler.apply(this, arguments)
},
teardown: function() {
c.event.remove(this, "._change");
return !db.test(this.nodeName)
}
});
c.support.focusinBubbles || c.each({
focus: "focusin",
blur: "focusout"
}, function(a, b) {
var d = 0
, e = function(a) {
c.event.simulate(b, a.target, c.event.fix(a), !0)
};
c.event.special[b] = {
setup: function() {
0 === d++ && p.addEventListener(a, e, !0)
},
teardown: function() {
0 === --d && p.removeEventListener(a, e, !0)
}
}
});
c.fn.extend({
on: function(a, b, d, e, f) {
var g, h;
if ("object" === typeof a) {
"string" !== typeof b && (d = d || b,
b = m);
for (g in a)
this.on(g, b, d, a[g], f);
return this
}
null == d && null == e ? (e = b,
d = b = m) : null == e && ("string" === typeof b ? (e = d,
d = m) : (e = d,
d = b,
b = m));
if (!1 === e)
e = da;
else if (!e)
return this;
1 === f && (h = e,
e = function(a) {
c().off(a);
return h.apply(this, arguments)
}
,
e.guid = h.guid || (h.guid = c.guid++));
return this.each(function() {
c.event.add(this, a, e, d, b)
})
},
one: function(a, b, d, c) {
return this.on(a, b, d, c, 1)
},
off: function(a, b, d) {
var e;
if (a && a.preventDefault && a.handleObj)
return e = a.handleObj,
c(a.delegateTarget).off(e.namespace ? e.origType + "." + e.namespace : e.origType, e.selector, e.handler),
this;
if ("object" === typeof a) {
for (e in a)
this.off(e, b, a[e]);
return this
}
if (!1 === b || "function" === typeof b)
d = b,
b = m;
!1 === d && (d = da);
return this.each(function() {
c.event.remove(this, a, d, b)
})
},
bind: function(a, b, d) {
return this.on(a, null, b, d)
},
unbind: function(a, b) {
return this.off(a, null, b)
},
delegate: function(a, b, d, c) {
return this.on(b, a, d, c)
},
undelegate: function(a, b, d) {
return 1 === arguments.length ? this.off(a, "**") : this.off(b, a || "**", d)
},
trigger: function(a, b) {
return this.each(function() {
c.event.trigger(a, b, this)
})
},
triggerHandler: function(a, b) {
var d = this[0];
if (d)
return c.event.trigger(a, b, d, !0)
}
});
var eb = r, fb = function() {
var a, b = [];
return a = function(d, c) {
b.push(d += " ") > w.cacheLength && delete a[b.shift()];
return a[d] = c
}
}, J = function(a) {
a[t] = !0;
return a
}, R = function(a) {
var b = A.createElement("div");
try {
return a(b)
} catch (d) {
return !1
} finally {}
}, x = function(a, b, d, c) {
var f, g, h, j, k;
(b ? b.ownerDocument || b : $) !== A && ga(b);
b = b || A;
d = d || [];
if (!a || "string" !== typeof a)
return d;
if (1 !== (j = b.nodeType) && 9 !== j)
return [];
if (!I && !c) {
if (f = fd.exec(a))
if (h = f[1])
if (9 === j)
if ((g = b.getElementById(h)) && g.parentNode) {
if (g.id === h)
return d.push(g),
d
} else
return d;
else {
if (b.ownerDocument && (g = b.ownerDocument.getElementById(h)) && ra(b, g) && g.id === h)
return d.push(g),
d
}
else {
if (f[2])
return ha.apply(d, ia.call(b.getElementsByTagName(a), 0)),
d;
if ((h = f[3]) && u.getByClassName && b.getElementsByClassName)
return ha.apply(d, ia.call(b.getElementsByClassName(h), 0)),
d
}
if (u.qsa && !M.test(a)) {
f = !0;
g = t;
h = b;
k = 9 === j && a;
if (1 === j && "object" !== b.nodeName.toLowerCase()) {
j = Ea(a);
(f = b.getAttribute("id")) ? g = f.replace(gd, "\\$&") : b.setAttribute("id", g);
g = "[id='" + g + "'] ";
for (h = j.length; h--; )
j[h] = g + Fa(j[h]);
h = gb.test(a) && b.parentNode || b;
k = j.join(",")
}
if (k)
try {
return ha.apply(d, ia.call(h.querySelectorAll(k), 0)),
d
} catch (l) {} finally {
f || b.removeAttribute("id")
}
}
}
var q;
a: {
a = a.replace(Ga, "$1");
g = Ea(a);
if (!c && 1 === g.length) {
f = g[0] = g[0].slice(0);
if (2 < f.length && "ID" === (q = f[0]).type && 9 === b.nodeType && !I && w.relative[f[1].type]) {
b = w.find.ID(q.matches[0].replace(S, T), b)[0];
if (!b) {
q = d;
break a
}
a = a.slice(f.shift().value.length)
}
for (j = Ha.needsContext.test(a) ? 0 : f.length; j--; ) {
q = f[j];
if (w.relative[h = q.type])
break;
if (h = w.find[h])
if (c = h(q.matches[0].replace(S, T), gb.test(f[0].type) && b.parentNode || b)) {
f.splice(j, 1);
a = c.length && Fa(f);
if (!a) {
ha.apply(d, ia.call(c, 0));
q = d;
break a
}
break
}
}
}
hb(a, g)(c, b, I, d, gb.test(a));
q = d
}
return q
}, hc = function(a, b) {
var d = b && a
, c = d && (~b.sourceIndex || gc) - (~a.sourceIndex || gc);
if (c)
return c;
if (d)
for (; d = d.nextSibling; )
if (d === b)
return -1;
return a ? 1 : -1
}, hd = function(a) {
return function(b) {
return "input" === b.nodeName.toLowerCase() && b.type === a
}
}, id = function(a) {
return function(b) {
var d = b.nodeName.toLowerCase();
return ("input" === d || "button" === d) && b.type === a
}
}, aa = function(a) {
return J(function(b) {
b = +b;
return J(function(d, c) {
for (var f, g = a([], d.length, b), h = g.length; h--; )
if (d[f = g[h]])
d[f] = !(c[f] = d[f])
})
})
}, Ea = function(a, b) {
var d, c, f, g, h, j, k;
if (h = ic[a + " "])
return b ? 0 : h.slice(0);
h = a;
j = [];
for (k = w.preFilter; h; ) {
if (!d || (c = jd.exec(h)))
c && (h = h.slice(c[0].length) || h),
j.push(f = []);
d = !1;
if (c = kd.exec(h))
d = c.shift(),
f.push({
value: d,
type: c[0].replace(Ga, " ")
}),
h = h.slice(d.length);
for (g in w.filter)
if ((c = Ha[g].exec(h)) && (!k[g] || (c = k[g](c))))
d = c.shift(),
f.push({
value: d,
type: g,
matches: c
}),
h = h.slice(d.length);
if (!d)
break
}
return b ? h.length : h ? x.error(a) : ic(a, j).slice(0)
}, Fa = function(a) {
for (var b = 0, d = a.length, c = ""; b < d; b++)
c += a[b].value;
return c
}, ib = function(a, b, d) {
var c = b.dir
, f = d && "parentNode" === c
, g = ld++;
return b.first ? function(b, d, g) {
for (; b = b[c]; )
if (1 === b.nodeType || f)
return a(b, d, g)
}
: function(b, d, k) {
var l, q, n, m = N + " " + g;
if (k)
for (; b = b[c]; ) {
if ((1 === b.nodeType || f) && a(b, d, k))
return !0
}
else
for (; b = b[c]; )
if (1 === b.nodeType || f)
if (n = b[t] || (b[t] = {}),
(q = n[c]) && q[0] === m) {
if (!0 === (l = q[1]) || l === Ia)
return !0 === l
} else if (q = n[c] = [m],
q[1] = a(b, d, k) || Ia,
!0 === q[1])
return !0
}
}, jb = function(a) {
return 1 < a.length ? function(b, d, c) {
for (var f = a.length; f--; )
if (!a[f](b, d, c))
return !1;
return !0
}
: a[0]
}, Ja = function(a, b, d, c, f) {
for (var g, h = [], j = 0, k = a.length, l = null != b; j < k; j++)
if (g = a[j])
if (!d || d(g, c, f))
h.push(g),
l && b.push(j);
return h
}, kb = function(a, b, d, c, f, g) {
c && !c[t] && (c = kb(c));
f && !f[t] && (f = kb(f, g));
return J(function(g, j, k, l) {
var q, n, m = [], F = [], p = j.length, r;
if (!(r = g)) {
r = b || "*";
for (var z = k.nodeType ? [k] : k, s = [], w = 0, t = z.length; w < t; w++)
x(r, z[w], s);
r = s
}
r = a && (g || !b) ? Ja(r, m, a, k, l) : r;
z = d ? f || (g ? a : p || c) ? [] : j : r;
d && d(r, z, k, l);
if (c) {
q = Ja(z, F);
c(q, [], k, l);
for (k = q.length; k--; )
if (n = q[k])
z[F[k]] = !(r[F[k]] = n)
}
if (g) {
if (f || a) {
if (f) {
q = [];
for (k = z.length; k--; )
if (n = z[k])
q.push(r[k] = n);
f(null, z = [], q, l)
}
for (k = z.length; k--; )
if ((n = z[k]) && -1 < (q = f ? lb.call(g, n) : m[k]))
g[q] = !(j[q] = n)
}
} else
z = Ja(z === j ? z.splice(p, z.length) : z),
f ? f(null, j, z, l) : ha.apply(j, z)
})
}, mb = function(a) {
var b, d, c, f = a.length, g = w.relative[a[0].type];
d = g || w.relative[" "];
for (var h = g ? 1 : 0, j = ib(function(a) {
return a === b
}, d, !0), k = ib(function(a) {
return -1 < lb.call(b, a)
}, d, !0), l = [function(a, d, c) {
return !g && (c || d !== Ka) || ((b = d).nodeType ? j(a, d, c) : k(a, d, c))
}
]; h < f; h++)
if (d = w.relative[a[h].type])
l = [ib(jb(l), d)];
else {
d = w.filter[a[h].type].apply(null, a[h].matches);
if (d[t]) {
for (c = ++h; c < f && !w.relative[a[c].type]; c++)
;
return kb(1 < h && jb(l), 1 < h && Fa(a.slice(0, h - 1)).replace(Ga, "$1"), d, h < c && mb(a.slice(h, c)), c < f && mb(a = a.slice(c)), c < f && Fa(a))
}
l.push(d)
}
return jb(l)
}, jc = function() {}, ja, Ia, w, La, kc, hb, ka, Ka, ga, A, H, I, M, la, Ma, ra, nb, t = "sizzle" + -new Date, $ = eb.document, u = {}, N = 0, ld = 0, lc = fb(), ic = fb(), mc = fb(), gc = -2147483648, Na = [], md = Na.pop, ha = Na.push, ia = Na.slice, lb = Na.indexOf || function(a) {
for (var b = 0, d = this.length; b < d; b++)
if (this[b] === a)
return b;
return -1
}
, nc = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+".replace("w", "w#"), oc = "\\[[\\x20\\t\\r\\n\\f]*((?:\\\\.|[\\w-]|[^\\x00-\\xa0])+)[\\x20\\t\\r\\n\\f]*(?:([*^$|!~]?=)[\\x20\\t\\r\\n\\f]*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + nc + ")|)|)[\\x20\\t\\r\\n\\f]*\\]", ob = ":((?:\\\\.|[\\w-]|[^\\x00-\\xa0])+)(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|" + oc.replace(3, 8) + ")*)|.*)\\)|)", Ga = RegExp("^[\\x20\\t\\r\\n\\f]+|((?:^|[^\\\\])(?:\\\\.)*)[\\x20\\t\\r\\n\\f]+$", "g"), jd = /^[\x20\t\r\n\f]*,[\x20\t\r\n\f]*/, kd = /^[\x20\t\r\n\f]*([\x20\t\r\n\f>+~])[\x20\t\r\n\f]*/, nd = RegExp(ob), od = RegExp("^" + nc + "$"), Ha = {
ID: /^#((?:\\.|[\w-]|[^\x00-\xa0])+)/,
CLASS: /^\.((?:\\.|[\w-]|[^\x00-\xa0])+)/,
NAME: /^\[name=['"]?((?:\\.|[\w-]|[^\x00-\xa0])+)['"]?\]/,
TAG: RegExp("^(" + "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+".replace("w", "w*") + ")"),
ATTR: RegExp("^" + oc),
PSEUDO: RegExp("^" + ob),
CHILD: RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\([\\x20\\t\\r\\n\\f]*(even|odd|(([+-]|)(\\d*)n|)[\\x20\\t\\r\\n\\f]*(?:([+-]|)[\\x20\\t\\r\\n\\f]*(\\d+)|))[\\x20\\t\\r\\n\\f]*\\)|)", "i"),
needsContext: RegExp("^[\\x20\\t\\r\\n\\f]*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\([\\x20\\t\\r\\n\\f]*((?:-\\d)?\\d*)[\\x20\\t\\r\\n\\f]*\\)|)(?=[^-]|$)", "i")
}, gb = /[\x20\t\r\n\f]*[+~]/, pb = /^[^{]+\{\s*\[native code/, fd = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, pd = /^(?:input|select|textarea|button)$/i, qd = /^h\d$/i, gd = /'|\\/g, rd = /\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g, S = /\\([\da-fA-F]{1,6}[\x20\t\r\n\f]?|.)/g, T = function(a, b) {
var d = "0x" + b - 65536;
return d !== d ? b : 0 > d ? String.fromCharCode(d + 65536) : String.fromCharCode(d >> 10 | 55296, d & 1023 | 56320)
};
try {
ia.call($.documentElement.childNodes, 0)[0].nodeType
} catch (Rd) {
ia = function(a) {
for (var b, d = []; b = this[a++]; )
d.push(b);
return d
}
}
kc = x.isXML = function(a) {
return (a = a && (a.ownerDocument || a).documentElement) ? "HTML" !== a.nodeName : !1
}
;
ga = x.setDocument = function(a) {
var b = a ? a.ownerDocument || a : $;
if (b === A || 9 !== b.nodeType || !b.documentElement)
return A;
A = b;
H = b.documentElement;
I = kc(b);
u.tagNameNoComments = R(function(a) {
a.appendChild(b.createComment(""));
return !a.getElementsByTagName("*").length
});
u.attributes = R(function(a) {
a.innerHTML = "<select></select>";
a = typeof a.lastChild.getAttribute("multiple");
return "boolean" !== a && "string" !== a
});
u.getByClassName = R(function(a) {
a.innerHTML = "<div class='hidden e'></div><div class='hidden'></div>";
if (!a.getElementsByClassName || !a.getElementsByClassName("e").length)
return !1;
a.lastChild.className = "e";
return 2 === a.getElementsByClassName("e").length
});
u.getByName = R(function(a) {
a.id = t + 0;
a.innerHTML = "<a name='" + t + "'></a><div name='" + t + "'></div>";
H.insertBefore(a, H.firstChild);
var d = b.getElementsByName && b.getElementsByName(t).length === 2 + b.getElementsByName(t + 0).length;
u.getIdNotName = !b.getElementById(t);
H.removeChild(a);
return d
});
w.attrHandle = R(function(a) {
a.innerHTML = "<a href='#'></a>";
return a.firstChild && "undefined" !== typeof a.firstChild.getAttribute && "#" === a.firstChild.getAttribute("href")
}) ? {} : {
href: function(a) {
return a.getAttribute("href", 2)
},
type: function(a) {
return a.getAttribute("type")
}
};
u.getIdNotName ? (w.find.ID = function(a, b) {
if ("undefined" !== typeof b.getElementById && !I) {
var d = b.getElementById(a);
return d && d.parentNode ? [d] : []
}
}
,
w.filter.ID = function(a) {
var b = a.replace(S, T);
return function(a) {
return a.getAttribute("id") === b
}
}
) : (w.find.ID = function(a, b) {
if ("undefined" !== typeof b.getElementById && !I) {
var d = b.getElementById(a);
return d ? d.id === a || "undefined" !== typeof d.getAttributeNode && d.getAttributeNode("id").value === a ? [d] : void 0 : []
}
}
,
w.filter.ID = function(a) {
var b = a.replace(S, T);
return function(a) {
return (a = "undefined" !== typeof a.getAttributeNode && a.getAttributeNode("id")) && a.value === b
}
}
);
w.find.TAG = u.tagNameNoComments ? function(a, b) {
if ("undefined" !== typeof b.getElementsByTagName)
return b.getElementsByTagName(a)
}
: function(a, b) {
var d, c = [], j = 0, k = b.getElementsByTagName(a);
if ("*" === a) {
for (; d = k[j++]; )
1 === d.nodeType && c.push(d);
return c
}
return k
}
;
w.find.NAME = u.getByName && function(a, b) {
if ("undefined" !== typeof b.getElementsByName)
return b.getElementsByName(name)
}
;
w.find.CLASS = u.getByClassName && function(a, b) {
if ("undefined" !== typeof b.getElementsByClassName && !I)
return b.getElementsByClassName(a)
}
;
la = [];
M = [":focus"];
if (u.qsa = pb.test(b.querySelectorAll + ""))
R(function(a) {
a.innerHTML = "<select><option selected=''></option></select>";
a.querySelectorAll("[selected]").length || M.push("\\[[\\x20\\t\\r\\n\\f]*(?:checked|disabled|ismap|multiple|readonly|selected|value)");
a.querySelectorAll(":checked").length || M.push(":checked")
}),
R(function(a) {
a.innerHTML = "<input type='hidden' i=''/>";
a.querySelectorAll("[i^='']").length && M.push("[*^$]=[\\x20\\t\\r\\n\\f]*(?:\"\"|'')");
a.querySelectorAll(":enabled").length || M.push(":enabled", ":disabled");
a.querySelectorAll("*,:x");
M.push(",.*:")
});
a = u;
var d;
d = Ma = H.matchesSelector || H.mozMatchesSelector || H.webkitMatchesSelector || H.oMatchesSelector || H.msMatchesSelector;
d = pb.test(d + "");
(a.matchesSelector = d) && R(function(a) {
u.disconnectedMatch = Ma.call(a, "div");
Ma.call(a, "[s!='']:x");
la.push("!=", ob)
});
M = RegExp(M.join("|"));
la = RegExp(la.join("|"));
ra = pb.test(H.contains + "") || H.compareDocumentPosition ? function(a, b) {
var d = 9 === a.nodeType ? a.documentElement : a
, c = b && b.parentNode;
return a === c || !(!c || !(1 === c.nodeType && (d.contains ? d.contains(c) : a.compareDocumentPosition && a.compareDocumentPosition(c) & 16)))
}
: function(a, b) {
if (b)
for (; b = b.parentNode; )
if (b === a)
return !0;
return !1
}
;
nb = H.compareDocumentPosition ? function(a, d) {
var c;
return a === d ? (ka = !0,
0) : (c = d.compareDocumentPosition && a.compareDocumentPosition && a.compareDocumentPosition(d)) ? c & 1 || a.parentNode && 11 === a.parentNode.nodeType ? a === b || ra($, a) ? -1 : d === b || ra($, d) ? 1 : 0 : c & 4 ? -1 : 1 : a.compareDocumentPosition ? -1 : 1
}
: function(a, d) {
var c, h = 0;
c = a.parentNode;
var j = d.parentNode
, k = [a]
, l = [d];
if (a === d)
return ka = !0,
0;
if (!c || !j)
return a === b ? -1 : d === b ? 1 : c ? -1 : j ? 1 : 0;
if (c === j)
return hc(a, d);
for (c = a; c = c.parentNode; )
k.unshift(c);
for (c = d; c = c.parentNode; )
l.unshift(c);
for (; k[h] === l[h]; )
h++;
return h ? hc(k[h], l[h]) : k[h] === $ ? -1 : l[h] === $ ? 1 : 0
}
;
ka = !1;
[0, 0].sort(nb);
u.detectDuplicates = ka;
return A
}
;
x.matches = function(a, b) {
return x(a, null, null, b)
}
;
x.matchesSelector = function(a, b) {
(a.ownerDocument || a) !== A && ga(a);
b = b.replace(rd, "='$1']");
if (u.matchesSelector && !I && (!la || !la.test(b)) && !M.test(b))
try {
var d = Ma.call(a, b);
if (d || u.disconnectedMatch || a.document && 11 !== a.document.nodeType)
return d
} catch (c) {}
return 0 < x(b, A, null, [a]).length
}
;
x.contains = function(a, b) {
(a.ownerDocument || a) !== A && ga(a);
return ra(a, b)
}
;
x.attr = function(a, b) {
var d;
(a.ownerDocument || a) !== A && ga(a);
I || (b = b.toLowerCase());
return (d = w.attrHandle[b]) ? d(a) : I || u.attributes ? a.getAttribute(b) : ((d = a.getAttributeNode(b)) || a.getAttribute(b)) && !0 === a[b] ? b : d && d.specified ? d.value : null
}
;
x.error = function(a) {
throw Error("Syntax error, unrecognized expression: " + a);
}
;
x.uniqueSort = function(a) {
var b, d = [], c = 1, f = 0;
ka = !u.detectDuplicates;
a.sort(nb);
if (ka) {
for (; b = a[c]; c++)
b === a[c - 1] && (f = d.push(c));
for (; f--; )
a.splice(d[f], 1)
}
return a
}
;
La = x.getText = function(a) {
var b, d = "", c = 0;
if (b = a.nodeType)
if (1 === b || 9 === b || 11 === b) {
if ("string" === typeof a.textContent)
return a.textContent;
for (a = a.firstChild; a; a = a.nextSibling)
d += La(a)
} else {
if (3 === b || 4 === b)
return a.nodeValue
}
else
for (; b = a[c]; c++)
d += La(b);
return d
}
;
w = x.selectors = {
cacheLength: 50,
createPseudo: J,
match: Ha,
find: {},
relative: {
">": {
dir: "parentNode",
first: !0
},
" ": {
dir: "parentNode"
},
"+": {
dir: "previousSibling",
first: !0
},
"~": {
dir: "previousSibling"
}
},
preFilter: {
ATTR: function(a) {
a[1] = a[1].replace(S, T);
a[3] = (a[4] || a[5] || "").replace(S, T);
"~=" === a[2] && (a[3] = " " + a[3] + " ");
return a.slice(0, 4)
},
CHILD: function(a) {
a[1] = a[1].toLowerCase();
"nth" === a[1].slice(0, 3) ? (a[3] || x.error(a[0]),
a[4] = +(a[4] ? a[5] + (a[6] || 1) : 2 * ("even" === a[3] || "odd" === a[3])),
a[5] = +(a[7] + a[8] || "odd" === a[3])) : a[3] && x.error(a[0]);
return a
},
PSEUDO: function(a) {
var b, d = !a[5] && a[2];
if (Ha.CHILD.test(a[0]))
return null;
if (a[4])
a[2] = a[4];
else if (d && nd.test(d) && (b = Ea(d, !0)) && (b = d.indexOf(")", d.length - b) - d.length))
a[0] = a[0].slice(0, b),
a[2] = d.slice(0, b);
return a.slice(0, 3)
}
},
filter: {
TAG: function(a) {
if ("*" === a)
return function() {
return !0
}
;
a = a.replace(S, T).toLowerCase();
return function(b) {
return b.nodeName && b.nodeName.toLowerCase() === a
}
},
CLASS: function(a) {
var b = lc[a + " "];
return b || (b = RegExp("(^|[\\x20\\t\\r\\n\\f])" + a + "([\\x20\\t\\r\\n\\f]|$)")) && lc(a, function(a) {
return b.test(a.className || "undefined" !== typeof a.getAttribute && a.getAttribute("class") || "")
})
},
ATTR: function(a, b, d) {
return function(c) {
c = x.attr(c, a);
if (null == c)
return "!=" === b;
if (!b)
return !0;
c += "";
return "=" === b ? c === d : "!=" === b ? c !== d : "^=" === b ? d && 0 === c.indexOf(d) : "*=" === b ? d && -1 < c.indexOf(d) : "$=" === b ? d && c.slice(-d.length) === d : "~=" === b ? -1 < (" " + c + " ").indexOf(d) : "|=" === b ? c === d || c.slice(0, d.length + 1) === d + "-" : !1
}
},
CHILD: function(a, b, d, c, f) {
var g = "nth" !== a.slice(0, 3)
, h = "last" !== a.slice(-4)
, j = "of-type" === b;
return 1 === c && 0 === f ? function(a) {
return !!a.parentNode
}
: function(b, d, q) {
var n, m, F, p, r;
d = g !== h ? "nextSibling" : "previousSibling";
var z = b.parentNode
, s = j && b.nodeName.toLowerCase();
q = !q && !j;
if (z) {
if (g) {
for (; d; ) {
for (m = b; m = m[d]; )
if (j ? m.nodeName.toLowerCase() === s : 1 === m.nodeType)
return !1;
r = d = "only" === a && !r && "nextSibling"
}
return !0
}
r = [h ? z.firstChild : z.lastChild];
if (h && q) {
q = z[t] || (z[t] = {});
n = q[a] || [];
p = n[0] === N && n[1];
F = n[0] === N && n[2];
for (m = p && z.childNodes[p]; m = ++p && m && m[d] || (F = p = 0) || r.pop(); )
if (1 === m.nodeType && ++F && m === b) {
q[a] = [N, p, F];
break
}
} else if (q && (n = (b[t] || (b[t] = {}))[a]) && n[0] === N)
F = n[1];
else
for (; m = ++p && m && m[d] || (F = p = 0) || r.pop(); )
if ((j ? m.nodeName.toLowerCase() === s : 1 === m.nodeType) && ++F)
if (q && ((m[t] || (m[t] = {}))[a] = [N, F]),
m === b)
break;
F -= f;
return F === c || 0 === F % c && 0 <= F / c
}
}
},
PSEUDO: function(a, b) {
var d, c = w.pseudos[a] || w.setFilters[a.toLowerCase()] || x.error("unsupported pseudo: " + a);
return c[t] ? c(b) : 1 < c.length ? (d = [a, a, "", b],
w.setFilters.hasOwnProperty(a.toLowerCase()) ? J(function(a, d) {
for (var h, j = c(a, b), k = j.length; k--; )
h = lb.call(a, j[k]),
a[h] = !(d[h] = j[k])
}) : function(a) {
return c(a, 0, d)
}
) : c
}
},
pseudos: {
not: J(function(a) {
var b = []
, d = []
, c = hb(a.replace(Ga, "$1"));
return c[t] ? J(function(a, b, d, j) {
j = c(a, null, j, []);
for (var k = a.length; k--; )
if (d = j[k])
a[k] = !(b[k] = d)
}) : function(a, g, h) {
b[0] = a;
c(b, null, h, d);
return !d.pop()
}
}),
has: J(function(a) {
return function(b) {
return 0 < x(a, b).length
}
}),
contains: J(function(a) {
return function(b) {
return -1 < (b.textContent || b.innerText || La(b)).indexOf(a)
}
}),
lang: J(function(a) {
od.test(a || "") || x.error("unsupported lang: " + a);
a = a.replace(S, T).toLowerCase();
return function(b) {
var d;
do
if (d = I ? b.getAttribute("xml:lang") || b.getAttribute("lang") : b.lang)
return d = d.toLowerCase(),
d === a || 0 === d.indexOf(a + "-");
while ((b = b.parentNode) && 1 === b.nodeType);
return !1
}
}),
target: function(a) {
var b = eb.location && eb.location.hash;
return b && b.slice(1) === a.id
},
root: function(a) {
return a === H
},
focus: function(a) {
return a === A.activeElement && (!A.hasFocus || A.hasFocus()) && !(!a.type && !a.href && !~a.tabIndex)
},
enabled: function(a) {
return !1 === a.disabled
},
disabled: function(a) {
return !0 === a.disabled
},
checked: function(a) {
var b = a.nodeName.toLowerCase();
return "input" === b && !!a.checked || "option" === b && !!a.selected
},
selected: function(a) {
a.parentNode && a.parentNode.selectedIndex;
return !0 === a.selected
},
empty: function(a) {
for (a = a.firstChild; a; a = a.nextSibling)
if ("@" < a.nodeName || 3 === a.nodeType || 4 === a.nodeType)
return !1;
return !0
},
parent: function(a) {
return !w.pseudos.empty(a)
},
header: function(a) {
return qd.test(a.nodeName)
},
input: function(a) {
return pd.test(a.nodeName)
},
button: function(a) {
var b = a.nodeName.toLowerCase();
return "input" === b && "button" === a.type || "button" === b
},
text: function(a) {
var b;
return "input" === a.nodeName.toLowerCase() && "text" === a.type && (null == (b = a.getAttribute("type")) || b.toLowerCase() === a.type)
},
first: aa(function() {
return [0]
}),
last: aa(function(a, b) {
return [b - 1]
}),
eq: aa(function(a, b, d) {
return [0 > d ? d + b : d]
}),
even: aa(function(a, b) {
for (var d = 0; d < b; d += 2)
a.push(d);
return a
}),
odd: aa(function(a, b) {
for (var d = 1; d < b; d += 2)
a.push(d);
return a
}),
lt: aa(function(a, b, d) {
for (b = 0 > d ? d + b : d; 0 <= --b; )
a.push(b);
return a
}),
gt: aa(function(a, b, d) {
for (d = 0 > d ? d + b : d; ++d < b; )
a.push(d);
return a
})
}
};
for (ja in {
radio: !0,
checkbox: !0,
file: !0,
password: !0,
image: !0
})
w.pseudos[ja] = hd(ja);
for (ja in {
submit: !0,
reset: !0
})
w.pseudos[ja] = id(ja);
hb = x.compile = function(a, b) {
var d, c = [], f = [], g = mc[a + " "];
if (!g) {
b || (b = Ea(a));
for (d = b.length; d--; )
g = mb(b[d]),
g[t] ? c.push(g) : f.push(g);
var h = 0
, j = 0 < c.length
, k = 0 < f.length;
d = function(a, b, d, g, m) {
var p, r, s = [], t = 0, v = "0", u = a && [], B = null != m, y = Ka, E = a || k && w.find.TAG("*", m && b.parentNode || b), pc = N += null == y ? 1 : Math.random() || 0.1;
B && (Ka = b !== A && b,
Ia = h);
for (; null != (m = E[v]); v++) {
if (k && m) {
for (p = 0; r = f[p++]; )
if (r(m, b, d)) {
g.push(m);
break
}
B && (N = pc,
Ia = ++h)
}
j && ((m = !r && m) && t--,
a && u.push(m))
}
t += v;
if (j && v !== t) {
for (p = 0; r = c[p++]; )
r(u, s, b, d);
if (a) {
if (0 < t)
for (; v--; )
!u[v] && !s[v] && (s[v] = md.call(g));
s = Ja(s)
}
ha.apply(g, s);
B && (!a && 0 < s.length && 1 < t + c.length) && x.uniqueSort(g)
}
B && (N = pc,
Ka = y);
return u
}
;
d = j ? J(d) : d;
g = mc(a, d)
}
return g
}
;
w.pseudos.nth = w.pseudos.eq;
w.filters = jc.prototype = w.pseudos;
w.setFilters = new jc;
ga();
x.attr = c.attr;
c.find = x;
c.expr = x.selectors;
c.expr[":"] = c.expr.pseudos;
c.unique = x.uniqueSort;
c.text = x.getText;
c.isXMLDoc = x.isXML;
c.contains = x.contains;
var sd = /Until$/
, td = /^(?:parents|prev(?:Until|All))/
, Hc = /^.[^:#\[\.,]*$/
, qc = c.expr.match.needsContext
, ud = {
children: !0,
contents: !0,
next: !0,
prev: !0
};
c.fn.extend({
find: function(a) {
var b, d, e, f = this.length;
if ("string" !== typeof a)
return e = this,
this.pushStack(c(a).filter(function() {
for (b = 0; b < f; b++)
if (c.contains(e[b], this))
return !0
}));
d = [];
for (b = 0; b < f; b++)
c.find(a, this[b], d);
d = this.pushStack(1 < f ? c.unique(d) : d);
d.selector = (this.selector ? this.selector + " " : "") + a;
return d
},
has: function(a) {
var b, d = c(a, this), e = d.length;
return this.filter(function() {
for (b = 0; b < e; b++)
if (c.contains(this, d[b]))
return !0
})
},
not: function(a) {
return this.pushStack(Bb(this, a, !1))
},
filter: function(a) {
return this.pushStack(Bb(this, a, !0))
},
is: function(a) {
return !!a && ("string" === typeof a ? qc.test(a) ? 0 <= c(a, this.context).index(this[0]) : 0 < c.filter(a, this).length : 0 < this.filter(a).length)
},
closest: function(a, b) {
for (var d, e = 0, f = this.length, g = [], h = qc.test(a) || "string" !== typeof a ? c(a, b || this.context) : 0; e < f; e++)
for (d = this[e]; d && d.ownerDocument && d !== b && 11 !== d.nodeType; ) {
if (h ? -1 < h.index(d) : c.find.matchesSelector(d, a)) {
g.push(d);
break
}
d = d.parentNode
}
return this.pushStack(1 < g.length ? c.unique(g) : g)
},
index: function(a) {
return !a ? this[0] && this[0].parentNode ? this.first().prevAll().length : -1 : "string" === typeof a ? c.inArray(this[0], c(a)) : c.inArray(a.jquery ? a[0] : a, this)
},
add: function(a, b) {
var d = "string" === typeof a ? c(a, b) : c.makeArray(a && a.nodeType ? [a] : a)
, d = c.merge(this.get(), d);
return this.pushStack(c.unique(d))
},
addBack: function(a) {
return this.add(null == a ? this.prevObject : this.prevObject.filter(a))
}
});
c.fn.andSelf = c.fn.addBack;
c.each({
parent: function(a) {
return (a = a.parentNode) && 11 !== a.nodeType ? a : null
},
parents: function(a) {
return c.dir(a, "parentNode")
},
parentsUntil: function(a, b, d) {
return c.dir(a, "parentNode", d)
},
next: function(a) {
return Ab(a, "nextSibling")
},
prev: function(a) {
return Ab(a, "previousSibling")
},
nextAll: function(a) {
return c.dir(a, "nextSibling")
},
prevAll: function(a) {
return c.dir(a, "previousSibling")
},
nextUntil: function(a, b, d) {
return c.dir(a, "nextSibling", d)
},
prevUntil: function(a, b, d) {
return c.dir(a, "previousSibling", d)
},
siblings: function(a) {
return c.sibling((a.parentNode || {}).firstChild, a)
},
children: function(a) {
return c.sibling(a.firstChild)
},
contents: function(a) {
return c.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document : c.merge([], a.childNodes)
}
}, function(a, b) {
c.fn[a] = function(d, e) {
var f = c.map(this, b, d);
sd.test(a) || (e = d);
e && "string" === typeof e && (f = c.filter(e, f));
f = 1 < this.length && !ud[a] ? c.unique(f) : f;
1 < this.length && td.test(a) && (f = f.reverse());
return this.pushStack(f)
}
});
c.extend({
filter: function(a, b, d) {
d && (a = ":not(" + a + ")");
return 1 === b.length ? c.find.matchesSelector(b[0], a) ? [b[0]] : [] : c.find.matches(a, b)
},
dir: function(a, b, d) {
var e = [];
for (a = a[b]; a && 9 !== a.nodeType && (d === m || 1 !== a.nodeType || !c(a).is(d)); )
1 === a.nodeType && e.push(a),
a = a[b];
return e
},
sibling: function(a, b) {
for (var d = []; a; a = a.nextSibling)
1 === a.nodeType && a !== b && d.push(a);
return d
}
});
var Db = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video"
, vd = / jQuery\d+="(?:null|\d+)"/g
, rc = RegExp("<(?:" + Db + ")[\\s/>]", "i")
, qb = /^\s+/
, sc = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi
, tc = /<([\w:]+)/
, uc = /<tbody/i
, wd = /<|&#?\w+;/
, xd = /<(?:script|style|link)/i
, Sa = /^(?:checkbox|radio)$/i
, yd = /checked\s*(?:[^=]|=\s*.checked.)/i
, vc = /^$|\/(?:java|ecma)script/i
, Ic = /^true\/(.*)/
, zd = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g
, G = {
option: [1, "<select multiple='multiple'>", "</select>"],
legend: [1, "<fieldset>", "</fieldset>"],
area: [1, "<map>", "</map>"],
param: [1, "<object>", "</object>"],
thead: [1, "<table>", "</table>"],
tr: [2, "<table><tbody>", "</tbody></table>"],
col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"],
td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
_default: c.support.htmlSerialize ? [0, "", ""] : [1, "X<div>", "</div>"]
}
, rb = Cb(p).appendChild(p.createElement("div"));
G.optgroup = G.option;
G.tbody = G.tfoot = G.colgroup = G.caption = G.thead;
G.th = G.td;
c.fn.extend({
text: function(a) {
return c.access(this, function(a) {
return a === m ? c.text(this) : this.empty().append((this[0] && this[0].ownerDocument || p).createTextNode(a))
}, null, a, arguments.length)
},
wrapAll: function(a) {
if (c.isFunction(a))
return this.each(function(b) {
c(this).wrapAll(a.call(this, b))
});
if (this[0]) {
var b = c(a, this[0].ownerDocument).eq(0).clone(!0);
this[0].parentNode && b.insertBefore(this[0]);
b.map(function() {
for (var a = this; a.firstChild && 1 === a.firstChild.nodeType; )
a = a.firstChild;
return a
}).append(this)
}
return this
},
wrapInner: function(a) {
return c.isFunction(a) ? this.each(function(b) {
c(this).wrapInner(a.call(this, b))
}) : this.each(function() {
var b = c(this)
, d = b.contents();
d.length ? d.wrapAll(a) : b.append(a)
})
},
wrap: function(a) {
var b = c.isFunction(a);
return this.each(function(d) {
c(this).wrapAll(b ? a.call(this, d) : a)
})
},
unwrap: function() {
return this.parent().each(function() {
c.nodeName(this, "body") || c(this).replaceWith(this.childNodes)
}).end()
},
append: function() {
return this.domManip(arguments, !0, function(a) {
(1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) && this.appendChild(a)
})
},
prepend: function() {
return this.domManip(arguments, !0, function(a) {
(1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) && this.insertBefore(a, this.firstChild)
})
},
before: function() {
return this.domManip(arguments, !1, function(a) {
this.parentNode && this.parentNode.insertBefore(a, this)
})
},
after: function() {
return this.domManip(arguments, !1, function(a) {
this.parentNode && this.parentNode.insertBefore(a, this.nextSibling)
})
},
remove: function(a, b) {
for (var d, e = 0; null != (d = this[e]); e++)
if (!a || 0 < c.filter(a, [d]).length)
!b && 1 === d.nodeType && c.cleanData(B(d)),
d.parentNode && (b && c.contains(d.ownerDocument, d) && Ra(B(d, "script")),
d.parentNode.removeChild(d));
return this
},
empty: function() {
for (var a, b = 0; null != (a = this[b]); b++) {
for (1 === a.nodeType && c.cleanData(B(a, !1)); a.firstChild; )
a.removeChild(a.firstChild);
a.options && c.nodeName(a, "select") && (a.options.length = 0)
}
return this
},
clone: function(a, b) {
a = null == a ? !1 : a;
b = null == b ? a : b;
return this.map(function() {
return c.clone(this, a, b)
})
},
html: function(a) {
return c.access(this, function(a) {
var d = this[0] || {}
, e = 0
, f = this.length;
if (a === m)
return 1 === d.nodeType ? d.innerHTML.replace(vd, "") : m;
if ("string" === typeof a && !xd.test(a) && (c.support.htmlSerialize || !rc.test(a)) && (c.support.leadingWhitespace || !qb.test(a)) && !G[(tc.exec(a) || ["", ""])[1].toLowerCase()]) {
a = a.replace(sc, "<$1></$2>");
try {
for (; e < f; e++)
d = this[e] || {},
1 === d.nodeType && (c.cleanData(B(d, !1)),
d.innerHTML = a);
d = 0
} catch (g) {}
}
d && this.empty().append(a)
}, null, a, arguments.length)
},
replaceWith: function(a) {
!c.isFunction(a) && "string" !== typeof a && (a = c(a).not(this).detach());
return this.domManip([a], !0, function(a) {
var d = this.nextSibling
, e = this.parentNode;
e && (c(this).remove(),
e.insertBefore(a, d))
})
},
detach: function(a) {
return this.remove(a, !0)
},
domManip: function(a, b, d) {
a = Xb.apply([], a);
var e, f, g, h, j = 0, k = this.length, l = this, q = k - 1, n = a[0], p = c.isFunction(n);
if (p || !(1 >= k || "string" !== typeof n || c.support.checkClone || !yd.test(n)))
return this.each(function(c) {
var e = l.eq(c);
p && (a[0] = n.call(this, c, b ? e.html() : m));
e.domManip(a, b, d)
});
if (k && (h = c.buildFragment(a, this[0].ownerDocument, !1, this),
e = h.firstChild,
1 === h.childNodes.length && (h = e),
e)) {
b = b && c.nodeName(e, "tr");
g = c.map(B(h, "script"), Eb);
for (f = g.length; j < k; j++)
e = h,
j !== q && (e = c.clone(e, !0, !0),
f && c.merge(g, B(e, "script"))),
d.call(b && c.nodeName(this[j], "table") ? this[j].getElementsByTagName("tbody")[0] || this[j].appendChild(this[j].ownerDocument.createElement("tbody")) : this[j], e, j);
if (f) {
h = g[g.length - 1].ownerDocument;
c.map(g, Fb);
for (j = 0; j < f; j++)
if (e = g[j],
vc.test(e.type || "") && !c._data(e, "globalEval") && c.contains(h, e))
e.src ? c.ajax({
url: e.src,
type: "GET",
dataType: "script",
async: !1,
global: !1,
"throws": !0
}) : c.globalEval((e.text || e.textContent || e.innerHTML || "").replace(zd, ""))
}
h = e = null
}
return this
}
});
c.each({
appendTo: "append",
prependTo: "prepend",
insertBefore: "before",
insertAfter: "after",
replaceAll: "replaceWith"
}, function(a, b) {
c.fn[a] = function(a) {
for (var e = 0, f = [], g = c(a), h = g.length - 1; e <= h; e++)
a = e === h ? this : this.clone(!0),
c(g[e])[b](a),
Wa.apply(f, a.get());
return this.pushStack(f)
}
});
c.extend({
clone: function(a, b, d) {
var e, f, g, h, j, k = c.contains(a.ownerDocument, a);
c.support.html5Clone || c.isXMLDoc(a) || !rc.test("<" + a.nodeName + ">") ? g = a.cloneNode(!0) : (rb.innerHTML = a.outerHTML,
rb.removeChild(g = rb.firstChild));
if ((!c.support.noCloneEvent || !c.support.noCloneChecked) && (1 === a.nodeType || 11 === a.nodeType) && !c.isXMLDoc(a)) {
e = B(g);
j = B(a);
for (h = 0; null != (f = j[h]); ++h)
if (e[h]) {
var l = e[h]
, m = void 0
, n = void 0
, p = void 0;
if (1 === l.nodeType) {
m = l.nodeName.toLowerCase();
if (!c.support.noCloneEvent && l[c.expando]) {
p = c._data(l);
for (n in p.events)
c.removeEvent(l, n, p.handle);
l.removeAttribute(c.expando)
}
if ("script" === m && l.text !== f.text)
Eb(l).text = f.text,
Fb(l);
else if ("object" === m)
l.parentNode && (l.outerHTML = f.outerHTML),
c.support.html5Clone && (f.innerHTML && !c.trim(l.innerHTML)) && (l.innerHTML = f.innerHTML);
else if ("input" === m && Sa.test(f.type))
l.defaultChecked = l.checked = f.checked,
l.value !== f.value && (l.value = f.value);
else if ("option" === m)
l.defaultSelected = l.selected = f.defaultSelected;
else if ("input" === m || "textarea" === m)
l.defaultValue = f.defaultValue
}
}
}
if (b)
if (d) {
j = j || B(a);
e = e || B(g);
for (h = 0; null != (f = j[h]); h++)
Gb(f, e[h])
} else
Gb(a, g);
e = B(g, "script");
0 < e.length && Ra(e, !k && B(a, "script"));
return g
},
buildFragment: function(a, b, d, e) {
for (var f, g, h, j, k, l, m = a.length, n = Cb(b), p = [], r = 0; r < m; r++)
if ((g = a[r]) || 0 === g)
if ("object" === c.type(g))
c.merge(p, g.nodeType ? [g] : g);
else if (wd.test(g)) {
h = h || n.appendChild(b.createElement("div"));
j = (tc.exec(g) || ["", ""])[1].toLowerCase();
l = G[j] || G._default;
h.innerHTML = l[1] + g.replace(sc, "<$1></$2>") + l[2];
for (f = l[0]; f--; )
h = h.lastChild;
!c.support.leadingWhitespace && qb.test(g) && p.push(b.createTextNode(qb.exec(g)[0]));
if (!c.support.tbody)
for (f = (g = "table" === j && !uc.test(g) ? h.firstChild : "<table>" === l[1] && !uc.test(g) ? h : 0) && g.childNodes.length; f--; )
c.nodeName(k = g.childNodes[f], "tbody") && !k.childNodes.length && g.removeChild(k);
c.merge(p, h.childNodes);
for (h.textContent = ""; h.firstChild; )
h.removeChild(h.firstChild);
h = n.lastChild
} else
p.push(b.createTextNode(g));
h && n.removeChild(h);
c.support.appendChecked || c.grep(B(p, "input"), Jc);
for (r = 0; g = p[r++]; )
if (!(e && -1 !== c.inArray(g, e)) && (a = c.contains(g.ownerDocument, g),
h = B(n.appendChild(g), "script"),
a && Ra(h),
d))
for (f = 0; g = h[f++]; )
vc.test(g.type || "") && d.push(g);
return n
},
cleanData: function(a, b) {
for (var d, e, f, g, h = 0, j = c.expando, k = c.cache, l = c.support.deleteExpando, m = c.event.special; null != (d = a[h]); h++)
if (b || c.acceptData(d))
if (g = (f = d[j]) && k[f]) {
if (g.events)
for (e in g.events)
m[e] ? c.event.remove(d, e) : c.removeEvent(d, e, g.handle);
k[f] && (delete k[f],
l ? delete d[j] : typeof d.removeAttribute !== L ? d.removeAttribute(j) : d[j] = null,
ca.push(f))
}
}
});
var oa, W, X, sb = /alpha\([^)]*\)/i, Ad = /opacity\s*=\s*([^)]*)/, Bd = /^(top|right|bottom|left)$/, Cd = /^(none|table(?!-c[ea]).+)/, wc = /^margin/, Kc = RegExp("^(" + za + ")(.*)$", "i"), ua = RegExp("^(" + za + ")(?!px)[a-z%]+$", "i"), Dd = RegExp("^([+-])=(" + za + ")", "i"), Ob = {
BODY: "block"
}, Ed = {
position: "absolute",
visibility: "hidden",
display: "block"
}, xc = {
letterSpacing: 0,
fontWeight: 400
}, V = ["Top", "Right", "Bottom", "Left"], Ib = ["Webkit", "O", "Moz", "ms"];
c.fn.extend({
css: function(a, b) {
return c.access(this, function(a, b, f) {
var g, h = {}, j = 0;
if (c.isArray(b)) {
g = W(a);
for (f = b.length; j < f; j++)
h[b[j]] = c.css(a, b[j], !1, g);
return h
}
return f !== m ? c.style(a, b, f) : c.css(a, b)
}, a, b, 1 < arguments.length)
},
show: function() {
return Jb(this, !0)
},
hide: function() {
return Jb(this)
},
toggle: function(a) {
var b = "boolean" === typeof a;
return this.each(function() {
(b ? a : na(this)) ? c(this).show() : c(this).hide()
})
}
});
c.extend({
cssHooks: {
opacity: {
get: function(a, b) {
if (b) {
var c = X(a, "opacity");
return "" === c ? "1" : c
}
}
}
},
cssNumber: {
columnCount: !0,
fillOpacity: !0,
fontWeight: !0,
lineHeight: !0,
opacity: !0,
orphans: !0,
widows: !0,
zIndex: !0,
zoom: !0
},
cssProps: {
"float": c.support.cssFloat ? "cssFloat" : "styleFloat"
},
style: function(a, b, d, e) {
if (a && !(3 === a.nodeType || 8 === a.nodeType || !a.style)) {
var f, g, h, j = c.camelCase(b), k = a.style;
b = c.cssProps[j] || (c.cssProps[j] = Hb(k, j));
h = c.cssHooks[b] || c.cssHooks[j];
if (d !== m) {
g = typeof d;
if ("string" === g && (f = Dd.exec(d)))
d = (f[1] + 1) * f[2] + parseFloat(c.css(a, b)),
g = "number";
if (!(null == d || "number" === g && isNaN(d)))
if ("number" === g && !c.cssNumber[j] && (d += "px"),
!c.support.clearCloneStyle && ("" === d && 0 === b.indexOf("background")) && (k[b] = "inherit"),
!h || !("set"in h) || (d = h.set(a, d, e)) !== m)
try {
k[b] = d
} catch (l) {}
} else
return h && "get"in h && (f = h.get(a, !1, e)) !== m ? f : k[b]
}
},
css: function(a, b, d, e) {
var f, g;
g = c.camelCase(b);
b = c.cssProps[g] || (c.cssProps[g] = Hb(a.style, g));
(g = c.cssHooks[b] || c.cssHooks[g]) && "get"in g && (f = g.get(a, !0, d));
f === m && (f = X(a, b, e));
"normal" === f && b in xc && (f = xc[b]);
return "" === d || d ? (a = parseFloat(f),
!0 === d || c.isNumeric(a) ? a || 0 : f) : f
},
swap: function(a, b, c, e) {
var f, g = {};
for (f in b)
g[f] = a.style[f],
a.style[f] = b[f];
c = c.apply(a, e || []);
for (f in b)
a.style[f] = g[f];
return c
}
});
r.getComputedStyle ? (W = function(a) {
return r.getComputedStyle(a, null)
}
,
X = function(a, b, d) {
var e, f = (d = d || W(a)) ? d.getPropertyValue(b) || d[b] : m, g = a.style;
d && ("" === f && !c.contains(a.ownerDocument, a) && (f = c.style(a, b)),
ua.test(f) && wc.test(b) && (a = g.width,
b = g.minWidth,
e = g.maxWidth,
g.minWidth = g.maxWidth = g.width = f,
f = d.width,
g.width = a,
g.minWidth = b,
g.maxWidth = e));
return f
}
) : p.documentElement.currentStyle && (W = function(a) {
return a.currentStyle
}
,
X = function(a, b, c) {
var e, f, g = (c = c || W(a)) ? c[b] : m, h = a.style;
null == g && (h && h[b]) && (g = h[b]);
if (ua.test(g) && !Bd.test(b)) {
c = h.left;
if (f = (e = a.runtimeStyle) && e.left)
e.left = a.currentStyle.left;
h.left = "fontSize" === b ? "1em" : g;
g = h.pixelLeft + "px";
h.left = c;
f && (e.left = f)
}
return "" === g ? "auto" : g
}
);
c.each(["height", "width"], function(a, b) {
c.cssHooks[b] = {
get: function(a, e, f) {
if (e)
return 0 === a.offsetWidth && Cd.test(c.css(a, "display")) ? c.swap(a, Ed, function() {
return Nb(a, b, f)
}) : Nb(a, b, f)
},
set: function(a, e, f) {
var g = f && W(a);
return Lb(a, e, f ? Mb(a, b, f, c.support.boxSizing && "border-box" === c.css(a, "boxSizing", !1, g), g) : 0)
}
}
});
c.support.opacity || (c.cssHooks.opacity = {
get: function(a, b) {
return Ad.test((b && a.currentStyle ? a.currentStyle.filter : a.style.filter) || "") ? 0.01 * parseFloat(RegExp.$1) + "" : b ? "1" : ""
},
set: function(a, b) {
var d = a.style
, e = a.currentStyle
, f = c.isNumeric(b) ? "alpha(opacity=" + 100 * b + ")" : ""
, g = e && e.filter || d.filter || "";
d.zoom = 1;
if ((1 <= b || "" === b) && "" === c.trim(g.replace(sb, "")) && d.removeAttribute)
if (d.removeAttribute("filter"),
"" === b || e && !e.filter)
return;
d.filter = sb.test(g) ? g.replace(sb, f) : g + " " + f
}
});
c(function() {
c.support.reliableMarginRight || (c.cssHooks.marginRight = {
get: function(a, b) {
if (b)
return c.swap(a, {
display: "inline-block"
}, X, [a, "marginRight"])
}
});
!c.support.pixelPosition && c.fn.position && c.each(["top", "left"], function(a, b) {
c.cssHooks[b] = {
get: function(a, e) {
if (e)
return e = X(a, b),
ua.test(e) ? c(a).position()[b] + "px" : e
}
}
})
});
c.expr && c.expr.filters && (c.expr.filters.hidden = function(a) {
return 0 >= a.offsetWidth && 0 >= a.offsetHeight || !c.support.reliableHiddenOffsets && "none" === (a.style && a.style.display || c.css(a, "display"))
}
,
c.expr.filters.visible = function(a) {
return !c.expr.filters.hidden(a)
}
);
c.each({
margin: "",
padding: "",
border: "Width"
}, function(a, b) {
c.cssHooks[a + b] = {
expand: function(c) {
var e = 0
, f = {};
for (c = "string" === typeof c ? c.split(" ") : [c]; 4 > e; e++)
f[a + V[e] + b] = c[e] || c[e - 2] || c[0];
return f
}
};
wc.test(a) || (c.cssHooks[a + b].set = Lb)
});
var Fd = /%20/g
, Lc = /\[\]$/
, yc = /\r?\n/g
, Gd = /^(?:submit|button|image|reset|file)$/i
, Hd = /^(?:input|select|textarea|keygen)/i;
c.fn.extend({
serialize: function() {
return c.param(this.serializeArray())
},
serializeArray: function() {
return this.map(function() {
var a = c.prop(this, "elements");
return a ? c.makeArray(a) : this
}).filter(function() {
var a = this.type;
return this.name && !c(this).is(":disabled") && Hd.test(this.nodeName) && !Gd.test(a) && (this.checked || !Sa.test(a))
}).map(function(a, b) {
var d = c(this).val();
return null == d ? null : c.isArray(d) ? c.map(d, function(a) {
return {
name: b.name,
value: a.replace(yc, "\r\n")
}
}) : {
name: b.name,
value: d.replace(yc, "\r\n")
}
}).get()
}
});
c.param = function(a, b) {
var d, e = [], f = function(a, b) {
b = c.isFunction(b) ? b() : null == b ? "" : b;
e[e.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b)
};
b === m && (b = c.ajaxSettings && c.ajaxSettings.traditional);
if (c.isArray(a) || a.jquery && !c.isPlainObject(a))
c.each(a, function() {
f(this.name, this.value)
});
else
for (d in a)
Ta(d, a[d], b, f);
return e.join("&").replace(Fd, "+")
}
;
c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function(a, b) {
c.fn[b] = function(a, c) {
return 0 < arguments.length ? this.on(b, null, a, c) : this.trigger(b)
}
});
c.fn.hover = function(a, b) {
return this.mouseenter(a).mouseleave(b || a)
}
;
var ba, U, tb = c.now(), ub = /\?/, Id = /#.*$/, zc = /([?&])_=[^&]*/, Jd = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, Kd = /^(?:GET|HEAD)$/, Ld = /^\/\//, Ac = /^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/, Bc = c.fn.load, Cc = {}, Ua = {}, Dc = "*/".concat("*");
try {
U = Nc.href
} catch (Sd) {
U = p.createElement("a"),
U.href = "",
U = U.href
}
ba = Ac.exec(U.toLowerCase()) || [];
c.fn.load = function(a, b, d) {
if ("string" !== typeof a && Bc)
return Bc.apply(this, arguments);
var e, f, g, h = this, j = a.indexOf(" ");
0 <= j && (e = a.slice(j, a.length),
a = a.slice(0, j));
c.isFunction(b) ? (d = b,
b = m) : b && "object" === typeof b && (g = "POST");
0 < h.length && c.ajax({
url: a,
type: g,
dataType: "html",
data: b
}).done(function(a) {
f = arguments;
h.html(e ? c("<div>").append(c.parseHTML(a)).find(e) : a)
}).complete(d && function(a, b) {
h.each(d, f || [a.responseText, b, a])
}
);
return this
}
;
c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), function(a, b) {
c.fn[b] = function(a) {
return this.on(b, a)
}
});
c.each(["get", "post"], function(a, b) {
c[b] = function(a, e, f, g) {
c.isFunction(e) && (g = g || f,
f = e,
e = m);
return c.ajax({
url: a,
type: b,
dataType: g,
data: e,
success: f
})
}
});
c.extend({
active: 0,
lastModified: {},
etag: {},
ajaxSettings: {
url: U,
type: "GET",
isLocal: /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(ba[1]),
global: !0,
processData: !0,
async: !0,
contentType: "application/x-www-form-urlencoded; charset=UTF-8",
accepts: {
"*": Dc,
text: "text/plain",
html: "text/html",
xml: "application/xml, text/xml",
json: "application/json, text/javascript"
},
contents: {
xml: /xml/,
html: /html/,
json: /json/
},
responseFields: {
xml: "responseXML",
text: "responseText"
},
converters: {
"* text": r.String,
"text html": !0,
"text json": c.parseJSON,
"text xml": c.parseXML
},
flatOptions: {
url: !0,
context: !0
}
},
ajaxSetup: function(a, b) {
return b ? Va(Va(a, c.ajaxSettings), b) : Va(c.ajaxSettings, a)
},
ajaxPrefilter: Qb(Cc),
ajaxTransport: Qb(Ua),
ajax: function(a, b) {
function d(a, b, d, e) {
var f, q, t, v, u = b;
if (2 !== x) {
x = 2;
j && clearTimeout(j);
l = m;
h = e || "";
y.readyState = 0 < a ? 4 : 0;
if (d) {
v = n;
e = y;
var B, E, A, D, H = v.contents, G = v.dataTypes, J = v.responseFields;
for (D in J)
D in d && (e[J[D]] = d[D]);
for (; "*" === G[0]; )
G.shift(),
E === m && (E = v.mimeType || e.getResponseHeader("Content-Type"));
if (E)
for (D in H)
if (H[D] && H[D].test(E)) {
G.unshift(D);
break
}
if (G[0]in d)
A = G[0];
else {
for (D in d) {
if (!G[0] || v.converters[D + " " + G[0]]) {
A = D;
break
}
B || (B = D)
}
A = A || B
}
A ? (A !== G[0] && G.unshift(A),
v = d[A]) : v = void 0
}
if (200 <= a && 300 > a || 304 === a)
if (n.ifModified && ((d = y.getResponseHeader("Last-Modified")) && (c.lastModified[g] = d),
(d = y.getResponseHeader("etag")) && (c.etag[g] = d)),
204 === a)
f = !0,
u = "nocontent";
else if (304 === a)
f = !0,
u = "notmodified";
else {
a: {
q = n;
t = v;
var I, K, u = {};
B = 0;
E = q.dataTypes.slice();
A = E[0];
q.dataFilter && (t = q.dataFilter(t, q.dataType));
if (E[1])
for (K in q.converters)
u[K.toLowerCase()] = q.converters[K];
for (; d = E[++B]; )
if ("*" !== d) {
if ("*" !== A && A !== d) {
K = u[A + " " + d] || u["* " + d];
if (!K)
for (I in u)
if (f = I.split(" "),
f[1] === d && (K = u[A + " " + f[0]] || u["* " + f[0]])) {
!0 === K ? K = u[I] : !0 !== u[I] && (d = f[0],
E.splice(B--, 0, d));
break
}
if (!0 !== K)
if (K && q["throws"])
t = K(t);
else
try {
t = K(t)
} catch (L) {
f = {
state: "parsererror",
error: K ? L : "No conversion from " + A + " to " + d
};
break a
}
}
A = d
}
f = {
state: "success",
data: t
}
}
u = f.state;
q = f.data;
t = f.error;
f = !t
}
else if (t = u,
a || !u)
u = "error",
0 > a && (a = 0);
y.status = a;
y.statusText = (b || u) + "";
f ? s.resolveWith(p, [q, u, y]) : s.rejectWith(p, [y, u, t]);
y.statusCode(z);
z = m;
k && r.trigger(f ? "ajaxSuccess" : "ajaxError", [y, n, f ? q : t]);
w.fireWith(p, [y, u]);
k && (r.trigger("ajaxComplete", [y, n]),
--c.active || c.event.trigger("ajaxStop"))
}
}
"object" === typeof a && (b = a,
a = m);
b = b || {};
var e, f, g, h, j, k, l, q, n = c.ajaxSetup({}, b), p = n.context || n, r = n.context && (p.nodeType || p.jquery) ? c(p) : c.event, s = c.Deferred(), w = c.Callbacks("once memory"), z = n.statusCode || {}, t = {}, v = {}, x = 0, u = "canceled", y = {
readyState: 0,
getResponseHeader: function(a) {
var b;
if (2 === x) {
if (!q)
for (q = {}; b = Jd.exec(h); )
q[b[1].toLowerCase()] = b[2];
b = q[a.toLowerCase()]
}
return null == b ? null : b
},
getAllResponseHeaders: function() {
return 2 === x ? h : null
},
setRequestHeader: function(a, b) {
var c = a.toLowerCase();
x || (a = v[c] = v[c] || a,
t[a] = b);
return this
},
overrideMimeType: function(a) {
x || (n.mimeType = a);
return this
},
statusCode: function(a) {
var b;
if (a)
if (2 > x)
for (b in a)
z[b] = [z[b], a[b]];
else
y.always(a[y.status]);
return this
},
abort: function(a) {
a = a || u;
l && l.abort(a);
d(0, a);
return this
}
};
s.promise(y).complete = w.add;
y.success = y.done;
y.error = y.fail;
n.url = ((a || n.url || U) + "").replace(Id, "").replace(Ld, ba[1] + "//");
n.type = b.method || b.type || n.method || n.type;
n.dataTypes = c.trim(n.dataType || "*").toLowerCase().match(O) || [""];
null == n.crossDomain && (e = Ac.exec(n.url.toLowerCase()),
n.crossDomain = !(!e || !(e[1] !== ba[1] || e[2] !== ba[2] || (e[3] || ("http:" === e[1] ? 80 : 443)) != (ba[3] || ("http:" === ba[1] ? 80 : 443)))));
n.data && (n.processData && "string" !== typeof n.data) && (n.data = c.param(n.data, n.traditional));
Rb(Cc, n, b, y);
if (2 === x)
return y;
(k = n.global) && 0 === c.active++ && c.event.trigger("ajaxStart");
n.type = n.type.toUpperCase();
n.hasContent = !Kd.test(n.type);
g = n.url;
n.hasContent || (n.data && (g = n.url += (ub.test(g) ? "&" : "?") + n.data,
delete n.data),
!1 === n.cache && (n.url = zc.test(g) ? g.replace(zc, "$1_=" + tb++) : g + (ub.test(g) ? "&" : "?") + "_=" + tb++));
n.ifModified && (c.lastModified[g] && y.setRequestHeader("If-Modified-Since", c.lastModified[g]),
c.etag[g] && y.setRequestHeader("If-None-Match", c.etag[g]));
(n.data && n.hasContent && !1 !== n.contentType || b.contentType) && y.setRequestHeader("Content-Type", n.contentType);
y.setRequestHeader("Accept", n.dataTypes[0] && n.accepts[n.dataTypes[0]] ? n.accepts[n.dataTypes[0]] + ("*" !== n.dataTypes[0] ? ", " + Dc + "; q=0.01" : "") : n.accepts["*"]);
for (f in n.headers)
y.setRequestHeader(f, n.headers[f]);
if (n.beforeSend && (!1 === n.beforeSend.call(p, y, n) || 2 === x))
return y.abort();
u = "abort";
for (f in {
success: 1,
error: 1,
complete: 1
})
y[f](n[f]);
if (l = Rb(Ua, n, b, y)) {
y.readyState = 1;
k && r.trigger("ajaxSend", [y, n]);
n.async && 0 < n.timeout && (j = setTimeout(function() {
y.abort("timeout")
}, n.timeout));
try {
x = 1,
l.send(t, d)
} catch (B) {
if (2 > x)
d(-1, B);
else
throw B;
}
} else
d(-1, "No Transport");
return y
},
getScript: function(a, b) {
return c.get(a, m, b, "script")
},
getJSON: function(a, b, d) {
return c.get(a, b, d, "json")
}
});
c.ajaxSetup({
accepts: {
script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
},
contents: {
script: /(?:java|ecma)script/
},
converters: {
"text script": function(a) {
c.globalEval(a);
return a
}
}
});
c.ajaxPrefilter("script", function(a) {
a.cache === m && (a.cache = !1);
a.crossDomain && (a.type = "GET",
a.global = !1)
});
c.ajaxTransport("script", function(a) {
if (a.crossDomain) {
var b, d = p.head || c("head")[0] || p.documentElement;
return {
send: function(c, f) {
b = p.createElement("script");
b.async = !0;
a.scriptCharset && (b.charset = a.scriptCharset);
b.src = a.url;
b.onload = b.onreadystatechange = function(a, c) {
if (c || !b.readyState || /loaded|complete/.test(b.readyState))
b.onload = b.onreadystatechange = null,
b.parentNode && b.parentNode.removeChild(b),
b = null,
c || f(200, "success")
}
;
d.insertBefore(b, d.firstChild)
},
abort: function() {
if (b)
b.onload(m, !0)
}
}
}
});
var Ec = []
, vb = /(=)\?(?=&|$)|\?\?/;
c.ajaxSetup({
jsonp: "callback",
jsonpCallback: function() {
var a = Ec.pop() || c.expando + "_" + tb++;
this[a] = !0;
return a
}
});
c.ajaxPrefilter("json jsonp", function(a, b, d) {
var e, f, g, h = !1 !== a.jsonp && (vb.test(a.url) ? "url" : "string" === typeof a.data && !(a.contentType || "").indexOf("application/x-www-form-urlencoded") && vb.test(a.data) && "data");
if (h || "jsonp" === a.dataTypes[0])
return e = a.jsonpCallback = c.isFunction(a.jsonpCallback) ? a.jsonpCallback() : a.jsonpCallback,
h ? a[h] = a[h].replace(vb, "$1" + e) : !1 !== a.jsonp && (a.url += (ub.test(a.url) ? "&" : "?") + a.jsonp + "=" + e),
a.converters["script json"] = function() {
g || c.error(e + " was not called");
return g[0]
}
,
a.dataTypes[0] = "json",
f = r[e],
r[e] = function() {
g = arguments
}
,
d.always(function() {
r[e] = f;
a[e] && (a.jsonpCallback = b.jsonpCallback,
Ec.push(e));
g && c.isFunction(f) && f(g[0]);
g = f = m
}),
"script"
});
var ma, sa, Md = 0, wb = r.ActiveXObject && function() {
for (var a in ma)
ma[a](m, !0)
}
;
c.ajaxSettings.xhr = r.ActiveXObject ? function() {
var a;
if (!(a = !this.isLocal && Sb()))
a: {
try {
a = new r.ActiveXObject("Microsoft.XMLHTTP");
break a
} catch (b) {}
a = void 0
}
return a
}
: Sb;
sa = c.ajaxSettings.xhr();
c.support.cors = !!sa && "withCredentials"in sa;
(sa = c.support.ajax = !!sa) && c.ajaxTransport(function(a) {
if (!a.crossDomain || c.support.cors) {
var b;
return {
send: function(d, e) {
var f, g, h = a.xhr();
a.username ? h.open(a.type, a.url, a.async, a.username, a.password) : h.open(a.type, a.url, a.async);
if (a.xhrFields)
for (g in a.xhrFields)
h[g] = a.xhrFields[g];
a.mimeType && h.overrideMimeType && h.overrideMimeType(a.mimeType);
!a.crossDomain && !d["X-Requested-With"] && (d["X-Requested-With"] = "XMLHttpRequest");
try {
for (g in d)
h.setRequestHeader(g, d[g])
} catch (j) {}
h.send(a.hasContent && a.data || null);
b = function(d, g) {
var j, n, p, r;
try {
if (b && (g || 4 === h.readyState))
if (b = m,
f && (h.onreadystatechange = c.noop,
wb && delete ma[f]),
g)
4 !== h.readyState && h.abort();
else {
r = {};
j = h.status;
n = h.getAllResponseHeaders();
"string" === typeof h.responseText && (r.text = h.responseText);
try {
p = h.statusText
} catch (s) {
p = ""
}
!j && a.isLocal && !a.crossDomain ? j = r.text ? 200 : 404 : 1223 === j && (j = 204)
}
} catch (t) {
g || e(-1, t)
}
r && e(j, p, r, n)
}
;
a.async ? 4 === h.readyState ? setTimeout(b) : (f = ++Md,
wb && (ma || (ma = {},
c(r).unload(wb)),
ma[f] = b),
h.onreadystatechange = b) : b()
},
abort: function() {
b && b(m, !0)
}
}
}
});
var ea, Oa, Nd = /^(?:toggle|show|hide)$/, Od = RegExp("^(?:([+-])=|)(" + za + ")([a-z%]*)$", "i"), Pd = /queueHooks$/, va = [function(a, b, d) {
var e, f, g, h, j, k, l = this, m = a.style, n = {}, p = [], r = a.nodeType && na(a);
d.queue || (j = c._queueHooks(a, "fx"),
null == j.unqueued && (j.unqueued = 0,
k = j.empty.fire,
j.empty.fire = function() {
j.unqueued || k()
}
),
j.unqueued++,
l.always(function() {
l.always(function() {
j.unqueued--;
c.queue(a, "fx").length || j.empty.fire()
})
}));
if (1 === a.nodeType && ("height"in b || "width"in b))
d.overflow = [m.overflow, m.overflowX, m.overflowY],
"inline" === c.css(a, "display") && "none" === c.css(a, "float") && (!c.support.inlineBlockNeedsLayout || "inline" === Kb(a.nodeName) ? m.display = "inline-block" : m.zoom = 1);
d.overflow && (m.overflow = "hidden",
c.support.shrinkWrapBlocks || l.always(function() {
m.overflow = d.overflow[0];
m.overflowX = d.overflow[1];
m.overflowY = d.overflow[2]
}));
for (f in b)
g = b[f],
Nd.exec(g) && (delete b[f],
e = e || "toggle" === g,
g !== (r ? "hide" : "show") && p.push(f));
if (b = p.length) {
g = c._data(a, "fxshow") || c._data(a, "fxshow", {});
"hidden"in g && (r = g.hidden);
e && (g.hidden = !r);
r ? c(a).show() : l.done(function() {
c(a).hide()
});
l.done(function() {
var b;
c._removeData(a, "fxshow");
for (b in n)
c.style(a, b, n[b])
});
for (f = 0; f < b; f++)
e = p[f],
h = l.createTween(e, r ? g[e] : 0),
n[e] = g[e] || c.style(a, e),
e in g || (g[e] = h.start,
r && (h.end = h.start,
h.start = "width" === e || "height" === e ? 1 : 0))
}
}
], pa = {
"*": [function(a, b) {
var d, e, f = this.createTween(a, b), g = Od.exec(b), h = f.cur(), j = +h || 0, k = 1, l = 20;
if (g) {
d = +g[2];
e = g[3] || (c.cssNumber[a] ? "" : "px");
if ("px" !== e && j) {
j = c.css(f.elem, a, !0) || d || 1;
do
k = k || ".5",
j /= k,
c.style(f.elem, a, j + e);
while (k !== (k = f.cur() / h) && 1 !== k && --l)
}
f.unit = e;
f.start = j;
f.end = g[1] ? j + (g[1] + 1) * d : d
}
return f
}
]
};
c.Animation = c.extend(Ub, {
tweener: function(a, b) {
c.isFunction(a) ? (b = a,
a = ["*"]) : a = a.split(" ");
for (var d, e = 0, f = a.length; e < f; e++)
d = a[e],
pa[d] = pa[d] || [],
pa[d].unshift(b)
},
prefilter: function(a, b) {
b ? va.unshift(a) : va.push(a)
}
});
c.Tween = D;
D.prototype = {
constructor: D,
init: function(a, b, d, e, f, g) {
this.elem = a;
this.prop = d;
this.easing = f || "swing";
this.options = b;
this.start = this.now = this.cur();
this.end = e;
this.unit = g || (c.cssNumber[d] ? "" : "px")
},
cur: function() {
var a = D.propHooks[this.prop];
return a && a.get ? a.get(this) : D.propHooks._default.get(this)
},
run: function(a) {
var b, d = D.propHooks[this.prop];
this.pos = this.options.duration ? b = c.easing[this.easing](a, this.options.duration * a, 0, 1, this.options.duration) : b = a;
this.now = (this.end - this.start) * b + this.start;
this.options.step && this.options.step.call(this.elem, this.now, this);
d && d.set ? d.set(this) : D.propHooks._default.set(this);
return this
}
};
D.prototype.init.prototype = D.prototype;
D.propHooks = {
_default: {
get: function(a) {
if (null != a.elem[a.prop] && (!a.elem.style || null == a.elem.style[a.prop]))
return a.elem[a.prop];
a = c.css(a.elem, a.prop, "");
return !a || "auto" === a ? 0 : a
},
set: function(a) {
if (c.fx.step[a.prop])
c.fx.step[a.prop](a);
else
a.elem.style && (null != a.elem.style[c.cssProps[a.prop]] || c.cssHooks[a.prop]) ? c.style(a.elem, a.prop, a.now + a.unit) : a.elem[a.prop] = a.now
}
}
};
D.propHooks.scrollTop = D.propHooks.scrollLeft = {
set: function(a) {
a.elem.nodeType && a.elem.parentNode && (a.elem[a.prop] = a.now)
}
};
c.each(["toggle", "show", "hide"], function(a, b) {
var d = c.fn[b];
c.fn[b] = function(a, c, g) {
return null == a || "boolean" === typeof a ? d.apply(this, arguments) : this.animate(wa(b, !0), a, c, g)
}
});
c.fn.extend({
fadeTo: function(a, b, c, e) {
return this.filter(na).css("opacity", 0).show().end().animate({
opacity: b
}, a, c, e)
},
animate: function(a, b, d, e) {
var f = c.isEmptyObject(a)
, g = c.speed(b, d, e)
, h = function() {
var b = Ub(this, c.extend({}, a), g);
h.finish = function() {
b.stop(!0)
}
;
(f || c._data(this, "finish")) && b.stop(!0)
};
h.finish = h;
return f || !1 === g.queue ? this.each(h) : this.queue(g.queue, h)
},
stop: function(a, b, d) {
var e = function(a) {
var b = a.stop;
delete a.stop;
b(d)
};
"string" !== typeof a && (d = b,
b = a,
a = m);
b && !1 !== a && this.queue(a || "fx", []);
return this.each(function() {
var b = !0
, g = null != a && a + "queueHooks"
, h = c.timers
, j = c._data(this);
if (g)
j[g] && j[g].stop && e(j[g]);
else
for (g in j)
j[g] && (j[g].stop && Pd.test(g)) && e(j[g]);
for (g = h.length; g--; )
if (h[g].elem === this && (null == a || h[g].queue === a))
h[g].anim.stop(d),
b = !1,
h.splice(g, 1);
(b || !d) && c.dequeue(this, a)
})
},
finish: function(a) {
!1 !== a && (a = a || "fx");
return this.each(function() {
var b, d = c._data(this), e = d[a + "queue"];
b = d[a + "queueHooks"];
var f = c.timers
, g = e ? e.length : 0;
d.finish = !0;
c.queue(this, a, []);
b && (b.cur && b.cur.finish) && b.cur.finish.call(this);
for (b = f.length; b--; )
f[b].elem === this && f[b].queue === a && (f[b].anim.stop(!0),
f.splice(b, 1));
for (b = 0; b < g; b++)
e[b] && e[b].finish && e[b].finish.call(this);
delete d.finish
})
}
});
c.each({
slideDown: wa("show"),
slideUp: wa("hide"),
slideToggle: wa("toggle"),
fadeIn: {
opacity: "show"
},
fadeOut: {
opacity: "hide"
},
fadeToggle: {
opacity: "toggle"
}
}, function(a, b) {
c.fn[a] = function(a, c, f) {
return this.animate(b, a, c, f)
}
});
c.speed = function(a, b, d) {
var e = a && "object" === typeof a ? c.extend({}, a) : {
complete: d || !d && b || c.isFunction(a) && a,
duration: a,
easing: d && b || b && !c.isFunction(b) && b
};
e.duration = c.fx.off ? 0 : "number" === typeof e.duration ? e.duration : e.duration in c.fx.speeds ? c.fx.speeds[e.duration] : c.fx.speeds._default;
if (null == e.queue || !0 === e.queue)
e.queue = "fx";
e.old = e.complete;
e.complete = function() {
c.isFunction(e.old) && e.old.call(this);
e.queue && c.dequeue(this, e.queue)
}
;
return e
}
;
c.easing = {
linear: function(a) {
return a
},
swing: function(a) {
return 0.5 - Math.cos(a * Math.PI) / 2
}
};
c.timers = [];
c.fx = D.prototype.init;
c.fx.tick = function() {
var a, b = c.timers, d = 0;
for (ea = c.now(); d < b.length; d++)
a = b[d],
!a() && b[d] === a && b.splice(d--, 1);
b.length || c.fx.stop();
ea = m
}
;
c.fx.timer = function(a) {
a() && c.timers.push(a) && c.fx.start()
}
;
c.fx.interval = 13;
c.fx.start = function() {
Oa || (Oa = setInterval(c.fx.tick, c.fx.interval))
}
;
c.fx.stop = function() {
clearInterval(Oa);
Oa = null
}
;
c.fx.speeds = {
slow: 600,
fast: 200,
_default: 400
};
c.fx.step = {};
c.expr && c.expr.filters && (c.expr.filters.animated = function(a) {
return c.grep(c.timers, function(b) {
return a === b.elem
}).length
}
);
c.fn.offset = function(a) {
if (arguments.length)
return a === m ? this : this.each(function(b) {
c.offset.setOffset(this, a, b)
});
var b, d, e = {
top: 0,
left: 0
}, f = (d = this[0]) && d.ownerDocument;
if (f) {
b = f.documentElement;
if (!c.contains(b, d))
return e;
typeof d.getBoundingClientRect !== L && (e = d.getBoundingClientRect());
d = Vb(f);
return {
top: e.top + (d.pageYOffset || b.scrollTop) - (b.clientTop || 0),
left: e.left + (d.pageXOffset || b.scrollLeft) - (b.clientLeft || 0)
}
}
}
;
c.offset = {
setOffset: function(a, b, d) {
var e = c.css(a, "position");
"static" === e && (a.style.position = "relative");
var f = c(a)
, g = f.offset()
, h = c.css(a, "top")
, j = c.css(a, "left")
, k = {}
, l = {};
("absolute" === e || "fixed" === e) && -1 < c.inArray("auto", [h, j]) ? (l = f.position(),
e = l.top,
j = l.left) : (e = parseFloat(h) || 0,
j = parseFloat(j) || 0);
c.isFunction(b) && (b = b.call(a, d, g));
null != b.top && (k.top = b.top - g.top + e);
null != b.left && (k.left = b.left - g.left + j);
"using"in b ? b.using.call(a, k) : f.css(k)
}
};
c.fn.extend({
position: function() {
if (this[0]) {
var a, b, d = {
top: 0,
left: 0
}, e = this[0];
"fixed" === c.css(e, "position") ? b = e.getBoundingClientRect() : (a = this.offsetParent(),
b = this.offset(),
c.nodeName(a[0], "html") || (d = a.offset()),
d.top += c.css(a[0], "borderTopWidth", !0),
d.left += c.css(a[0], "borderLeftWidth", !0));
return {
top: b.top - d.top - c.css(e, "marginTop", !0),
left: b.left - d.left - c.css(e, "marginLeft", !0)
}
}
},
offsetParent: function() {
return this.map(function() {
for (var a = this.offsetParent || p.documentElement; a && !c.nodeName(a, "html") && "static" === c.css(a, "position"); )
a = a.offsetParent;
return a || p.documentElement
})
}
});
c.each({
scrollLeft: "pageXOffset",
scrollTop: "pageYOffset"
}, function(a, b) {
var d = /Y/.test(b);
c.fn[a] = function(e) {
return c.access(this, function(a, e, h) {
var j = Vb(a);
if (h === m)
return j ? b in j ? j[b] : j.document.documentElement[e] : a[e];
j ? j.scrollTo(!d ? h : c(j).scrollLeft(), d ? h : c(j).scrollTop()) : a[e] = h
}, a, e, arguments.length, null)
}
});
c.each({
Height: "height",
Width: "width"
}, function(a, b) {
c.each({
padding: "inner" + a,
content: b,
"": "outer" + a
}, function(d, e) {
c.fn[e] = function(e, g) {
var h = arguments.length && (d || "boolean" !== typeof e)
, j = d || (!0 === e || !0 === g ? "margin" : "border");
return c.access(this, function(b, d, e) {
return c.isWindow(b) ? b.document.documentElement["client" + a] : 9 === b.nodeType ? (d = b.documentElement,
Math.max(b.body["scroll" + a], d["scroll" + a], b.body["offset" + a], d["offset" + a], d["client" + a])) : e === m ? c.css(b, d, j) : c.style(b, d, e, j)
}, b, h ? e : m, h, null)
}
})
});
r.jQuery = r.$ = c;
"function" === typeof define && (define.amd && define.amd.jQuery) && define("jquery", [], function() {
return c
})
}
)(window);
(function(b) {
b.fn.jPlayer = function(a) {
var d = "string" == typeof a
, c = Array.prototype.slice.call(arguments, 1);
if (d && "_" == a.substring(0, 1))
return this;
var e;
if (e = d) {
e = a;
var g;
g = b.jPlayer.getter || [];
g = "string" == typeof g ? g.split(/,?\s+/) : g;
e = -1 != b.inArray(e, g)
}
return e ? (e = b.data(this[0], "jPlayer")) ? e[a].apply(e, c) : void 0 : this.each(function() {
var e = b.data(this, "jPlayer");
!e && !d && b.data(this, "jPlayer", new b.jPlayer(this,a))._init();
e && d && b.isFunction(e[a]) && e[a].apply(e, c)
})
}
;
b.jPlayer = function(a, d) {
this.options = b.extend({}, d);
this.element = b(a)
}
;
b.jPlayer.getter = "jPlayerOnProgressChange jPlayerOnSoundComplete jPlayerVolume jPlayerReady getData jPlayerController";
b.jPlayer.defaults = {
cssPrefix: "jqjp",
swfPath: "js",
volume: 80,
oggSupport: !1,
nativeSupport: !0,
preload: "none",
customCssIds: !1,
graphicsFix: !0,
errorAlerts: !1,
warningAlerts: !1,
position: "absolute",
width: "0",
height: "0",
top: "0",
left: "0",
quality: "high",
bgcolor: "#ffffff"
};
b.jPlayer._config = {
version: "1.2.0",
swfVersionRequired: "1.2.0",
swfVersion: "unknown",
jPlayerControllerId: void 0,
delayedCommandId: void 0,
isWaitingForPlay: !1,
isFileSet: !1
};
b.jPlayer._diag = {
isPlaying: !1,
src: "",
loadPercent: 0,
playedPercentRelative: 0,
playedPercentAbsolute: 0,
playedTime: 0,
totalTime: 0
};
b.jPlayer._cssId = {
play: "jplayer_play",
pause: "jplayer_pause",
stop: "jplayer_stop",
loadBar: "jplayer_load_bar",
playBar: "jplayer_play_bar",
volumeMin: "jplayer_volume_min",
volumeMax: "jplayer_volume_max",
volumeBar: "jplayer_volume_bar",
volumeBarValue: "jplayer_volume_bar_value"
};
b.jPlayer.count = 0;
b.jPlayer.timeFormat = {
showHour: !1,
showMin: !0,
showSec: !0,
padHour: !1,
padMin: !0,
padSec: !0,
sepHour: ":",
sepMin: ":",
sepSec: ""
};
b.jPlayer.convertTime = function(a) {
var d = new Date(a)
, c = d.getUTCHours();
a = d.getUTCMinutes();
d = d.getUTCSeconds();
c = b.jPlayer.timeFormat.padHour && 10 > c ? "0" + c : c;
a = b.jPlayer.timeFormat.padMin && 10 > a ? "0" + a : a;
d = b.jPlayer.timeFormat.padSec && 10 > d ? "0" + d : d;
return (b.jPlayer.timeFormat.showHour ? c + b.jPlayer.timeFormat.sepHour : "") + (b.jPlayer.timeFormat.showMin ? a + b.jPlayer.timeFormat.sepMin : "") + (b.jPlayer.timeFormat.showSec ? d + b.jPlayer.timeFormat.sepSec : "")
}
;
b.jPlayer.prototype = {
_init: function() {
var a = this
, d = this.element;
this.config = b.extend({}, b.jPlayer.defaults, this.options, b.jPlayer._config);
this.config.diag = b.extend({}, b.jPlayer._diag);
this.config.cssId = {};
this.config.cssSelector = {};
this.config.cssDisplay = {};
this.config.clickHandler = {};
this.element.data("jPlayer.config", this.config);
b.extend(this.config, {
id: this.element.attr("id"),
swf: this.config.swfPath + ("" != this.config.swfPath && "/" != this.config.swfPath.slice(-1) ? "/" : "") + "Jplayer.swf",
fid: this.config.cssPrefix + "_flash_" + b.jPlayer.count,
aid: this.config.cssPrefix + "_audio_" + b.jPlayer.count,
hid: this.config.cssPrefix + "_force_" + b.jPlayer.count,
i: b.jPlayer.count,
volume: this._limitValue(this.config.volume, 0, 100),
autobuffer: "none" != this.config.preload
});
b.jPlayer.count++;
void 0 != this.config.ready && (b.isFunction(this.config.ready) ? this.jPlayerReadyCustom = this.config.ready : this._warning("Constructor's ready option is not a function."));
this.config.audio = document.createElement("audio");
this.config.audio.id = this.config.aid;
b.extend(this.config, {
canPlayMP3: !(!this.config.audio.canPlayType || !("" != this.config.audio.canPlayType("audio/mpeg") && "no" != this.config.audio.canPlayType("audio/mpeg"))),
canPlayOGG: !(!this.config.audio.canPlayType || !("" != this.config.audio.canPlayType("audio/ogg") && "no" != this.config.audio.canPlayType("audio/ogg"))),
aSel: b("#" + this.config.aid)
});
b.extend(this.config, {
html5: !!(this.config.oggSupport ? this.config.canPlayOGG || this.config.canPlayMP3 : this.config.canPlayMP3)
});
b.extend(this.config, {
usingFlash: !(this.config.html5 && this.config.nativeSupport),
usingMP3: !(this.config.oggSupport && this.config.canPlayOGG && this.config.nativeSupport)
});
var c = {
setButtons: function(d, b) {
a.config.diag.isPlaying = b;
void 0 != a.config.cssId.play && void 0 != a.config.cssId.pause && (b ? (a.config.cssSelector.play.css("display", "none"),
a.config.cssSelector.pause.css("display", a.config.cssDisplay.pause)) : (a.config.cssSelector.play.css("display", a.config.cssDisplay.play),
a.config.cssSelector.pause.css("display", "none")));
b && (a.config.isWaitingForPlay = !1)
}
}
, e = {
setFile: function(b, c) {
try {
a._getMovie().fl_setFile_mp3(c),
a.config.autobuffer && d.trigger("jPlayer.load"),
a.config.diag.src = c,
a.config.isFileSet = !0,
d.trigger("jPlayer.setButtons", !1)
} catch (e) {
a._flashError(e)
}
},
clearFile: function() {
try {
d.trigger("jPlayer.setButtons", !1),
a._getMovie().fl_clearFile_mp3(),
a.config.diag.src = "",
a.config.isFileSet = !1
} catch (b) {
a._flashError(b)
}
},
load: function() {
try {
a._getMovie().fl_load_mp3()
} catch (d) {
a._flashError(d)
}
},
play: function() {
try {
a._getMovie().fl_play_mp3() && d.trigger("jPlayer.setButtons", !0)
} catch (b) {
a._flashError(b)
}
},
pause: function() {
try {
a._getMovie().fl_pause_mp3() && d.trigger("jPlayer.setButtons", !1)
} catch (b) {
a._flashError(b)
}
},
stop: function() {
try {
a._getMovie().fl_stop_mp3() && d.trigger("jPlayer.setButtons", !1)
} catch (b) {
a._flashError(b)
}
},
playHead: function(b, c) {
try {
a._getMovie().fl_play_head_mp3(c) && d.trigger("jPlayer.setButtons", !0)
} catch (e) {
a._flashError(e)
}
},
playHeadTime: function(b, c) {
try {
a._getMovie().fl_play_head_time_mp3(c) && d.trigger("jPlayer.setButtons", !0)
} catch (e) {
a._flashError(e)
}
},
volume: function(d, b) {
a.config.volume = b;
try {
a._getMovie().fl_volume_mp3(b)
} catch (c) {
a._flashError(c)
}
}
}
, g = {
setFile: function(b, c, e) {
a.config.diag.src = a.config.usingMP3 ? c : e;
a.config.isFileSet && !a.config.isWaitingForPlay && d.trigger("jPlayer.pause");
a.config.audio.autobuffer = a.config.autobuffer;
a.config.audio.preload = a.config.preload;
a.config.autobuffer ? (a.config.audio.src = a.config.diag.src,
a.config.audio.load()) : a.config.isWaitingForPlay = !0;
a.config.isFileSet = !0;
a.jPlayerOnProgressChange(0, 0, 0, 0, 0);
clearInterval(a.config.jPlayerControllerId);
a.config.autobuffer && (a.config.jPlayerControllerId = window.setInterval(function() {
a.jPlayerController(!1)
}, 100));
clearInterval(a.config.delayedCommandId)
},
clearFile: function() {
a.setFile("", "");
a.config.isWaitingForPlay = !1;
a.config.isFileSet = !1
},
load: function() {
a.config.isFileSet && a.config.isWaitingForPlay && (a.config.audio.autobuffer = !0,
a.config.audio.preload = "auto",
a.config.audio.src = a.config.diag.src,
a.config.audio.load(),
a.config.isWaitingForPlay = !1,
clearInterval(a.config.jPlayerControllerId),
a.config.jPlayerControllerId = window.setInterval(function() {
a.jPlayerController(!1)
}, 100))
},
play: function() {
a.config.isFileSet && (a.config.isWaitingForPlay && (a.config.audio.src = a.config.diag.src,
a.config.audio.load()),
a.config.audio.play(),
d.trigger("jPlayer.setButtons", !0),
clearInterval(a.config.jPlayerControllerId),
a.config.jPlayerControllerId = window.setInterval(function() {
a.jPlayerController(!1)
}, 100),
clearInterval(a.config.delayedCommandId))
},
pause: function() {
a.config.isFileSet && (a.config.audio.pause(),
d.trigger("jPlayer.setButtons", !1),
clearInterval(a.config.delayedCommandId))
},
stop: function() {
if (a.config.isFileSet)
try {
d.trigger("jPlayer.pause"),
a.config.audio.currentTime = 0,
clearInterval(a.config.jPlayerControllerId),
a.config.jPlayerControllerId = window.setInterval(function() {
a.jPlayerController(!0)
}, 100)
} catch (b) {
clearInterval(a.config.delayedCommandId),
a.config.delayedCommandId = window.setTimeout(function() {
a.stop()
}, 100)
}
},
playHead: function(b, c) {
if (a.config.isFileSet)
try {
d.trigger("jPlayer.load");
if ("object" == typeof a.config.audio.buffered && 0 < a.config.audio.buffered.length)
a.config.audio.currentTime = c * a.config.audio.buffered.end(a.config.audio.buffered.length - 1) / 100;
else if (0 < a.config.audio.duration && !isNaN(a.config.audio.duration))
a.config.audio.currentTime = c * a.config.audio.duration / 100;
else
throw "e";
d.trigger("jPlayer.play")
} catch (e) {
d.trigger("jPlayer.play"),
d.trigger("jPlayer.pause"),
a.config.delayedCommandId = window.setTimeout(function() {
a.playHead(c)
}, 100)
}
},
playHeadTime: function(b, c) {
if (a.config.isFileSet)
try {
d.trigger("jPlayer.load"),
a.config.audio.currentTime = c / 1E3,
d.trigger("jPlayer.play")
} catch (e) {
d.trigger("jPlayer.play"),
d.trigger("jPlayer.pause"),
a.config.delayedCommandId = window.setTimeout(function() {
a.playHeadTime(c)
}, 100)
}
},
volume: function(b, d) {
a.config.volume = d;
a.config.audio.volume = d / 100;
a.jPlayerVolume(d)
}
};
this.config.usingFlash ? b.extend(c, e) : b.extend(c, g);
for (var f in c)
e = "jPlayer." + f,
this.element.unbind(e),
this.element.bind(e, c[f]);
if (this.config.usingFlash)
if (this._checkForFlash(8))
if (b.browser.msie) {
f = '<object id="' + this.config.fid + '"';
f = f + ' classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"' + (' codebase="' + document.URL.substring(0, document.URL.indexOf(":")) + '://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab"');
f += ' type="application/x-shockwave-flash"';
f += ' width="' + this.config.width + '" height="' + this.config.height + '">';
f += "</object>";
c = [];
c[0] = '<param name="movie" value="' + this.config.swf + '" />';
c[1] = '<param name="quality" value="high" />';
c[2] = '<param name="FlashVars" value="id=' + escape(this.config.id) + "&fid=" + escape(this.config.fid) + "&vol=" + this.config.volume + '" />';
c[3] = '<param name="allowScriptAccess" value="always" />';
c[4] = '<param name="bgcolor" value="' + this.config.bgcolor + '" />';
f = document.createElement(f);
for (e = 0; e < c.length; e++)
f.appendChild(document.createElement(c[e]));
this.element.html(f)
} else
c = '<embed name="' + this.config.fid + '" id="' + this.config.fid + '" src="' + this.config.swf + '"',
c += ' width="' + this.config.width + '" height="' + this.config.height + '" bgcolor="' + this.config.bgcolor + '"',
c += ' quality="high" FlashVars="id=' + escape(this.config.id) + "&fid=" + escape(this.config.fid) + "&vol=" + this.config.volume + '"',
c += ' allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />',
this.element.html(c);
else
this.element.html("<p>Flash 8 or above is not installed. <a href='http://get.adobe.com/flashplayer'>Get Flash!</a></p>");
else
this.config.audio.autobuffer = this.config.autobuffer,
this.config.audio.preload = this.config.preload,
this.config.audio.addEventListener("canplay", function() {
var b = 0.1 * Math.random();
a.config.audio.volume = (a.config.volume + (50 > a.config.volume ? b : -b)) / 100
}, !1),
this.config.audio.addEventListener("ended", function() {
clearInterval(a.config.jPlayerControllerId);
a.jPlayerOnSoundComplete()
}, !1),
this.element.append(this.config.audio);
this.element.css({
position: this.config.position,
top: this.config.top,
left: this.config.left
});
this.config.graphicsFix && (this.element.append('<div id="' + this.config.hid + '"></div>'),
b.extend(this.config, {
hSel: b("#" + this.config.hid)
}),
this.config.hSel.css({
"text-indent": "-9999px"
}));
this.config.customCssIds || b.each(b.jPlayer._cssId, function(b, d) {
a.cssId(b, d)
});
this.config.usingFlash || (this.element.css({
left: "-9999px"
}),
window.setTimeout(function() {
a.volume(a.config.volume);
a.jPlayerReady()
}, 100))
},
jPlayerReady: function(a) {
this.config.usingFlash ? (this.config.swfVersion = a,
this.config.swfVersionRequired != this.config.swfVersion && this._error("jPlayer's JavaScript / SWF version mismatch!\n\nJavaScript requires SWF : " + this.config.swfVersionRequired + "\nThe Jplayer.swf used is : " + this.config.swfVersion)) : this.config.swfVersion = "n/a";
this.jPlayerReadyCustom()
},
jPlayerReadyCustom: function() {},
setFile: function(a, b) {
this.element.trigger("jPlayer.setFile", [a, b])
},
clearFile: function() {
this.element.trigger("jPlayer.clearFile")
},
load: function() {
this.element.trigger("jPlayer.load")
},
play: function() {
this.element.trigger("jPlayer.play")
},
pause: function() {
this.element.trigger("jPlayer.pause")
},
stop: function() {
this.element.trigger("jPlayer.stop")
},
playHead: function(a) {
this.element.trigger("jPlayer.playHead", [a])
},
playHeadTime: function(a) {
this.element.trigger("jPlayer.playHeadTime", [a])
},
volume: function(a) {
a = this._limitValue(a, 0, 100);
this.element.trigger("jPlayer.volume", [a])
},
cssId: function(a, d) {
var c = this;
if ("string" == typeof d)
if (b.jPlayer._cssId[a]) {
void 0 != this.config.cssId[a] && this.config.cssSelector[a].unbind("click", this.config.clickHandler[a]);
this.config.cssId[a] = d;
this.config.cssSelector[a] = b("#" + d);
this.config.clickHandler[a] = function(d) {
c[a](d);
b(this).blur();
return !1
}
;
this.config.cssSelector[a].click(this.config.clickHandler[a]);
var e = this.config.cssSelector[a].css("display");
"play" == a && (this.config.cssDisplay.pause = e);
"pause" == a && "none" == e || (this.config.cssDisplay[a] = e,
"pause" == a && this.config.cssSelector[a].css("display", "none"))
} else
this._warning("Unknown/Illegal function in cssId\n\njPlayer('cssId', '" + a + "', '" + d + "')");
else
this._warning("cssId CSS Id must be a string\n\njPlayer('cssId', '" + a + "', " + d + ")")
},
loadBar: function(a) {
if (void 0 != this.config.cssId.loadBar) {
var b = this.config.cssSelector.loadBar.offset();
a = a.pageX - b.left;
b = this.config.cssSelector.loadBar.width();
this.playHead(100 * a / b)
}
},
playBar: function(a) {
this.loadBar(a)
},
onProgressChange: function(a) {
b.isFunction(a) ? this.onProgressChangeCustom = a : this._warning("onProgressChange parameter is not a function.")
},
onProgressChangeCustom: function() {},
jPlayerOnProgressChange: function(a, b, c, e, g) {
this.config.diag.loadPercent = a;
this.config.diag.playedPercentRelative = b;
this.config.diag.playedPercentAbsolute = c;
this.config.diag.playedTime = e;
this.config.diag.totalTime = g;
void 0 != this.config.cssId.loadBar && this.config.cssSelector.loadBar.width(a + "%");
void 0 != this.config.cssId.playBar && this.config.cssSelector.playBar.width(b + "%");
this.onProgressChangeCustom(a, b, c, e, g);
this._forceUpdate()
},
jPlayerController: function(a) {
var b = 0
, c = 0
, e = 0
, g = 0
, f = 0;
1 <= this.config.audio.readyState && (b = 1E3 * this.config.audio.currentTime,
c = 1E3 * this.config.audio.duration,
c = isNaN(c) ? 0 : c,
e = 0 < c ? 100 * b / c : 0,
"object" == typeof this.config.audio.buffered && 0 < this.config.audio.buffered.length ? (g = 100 * this.config.audio.buffered.end(this.config.audio.buffered.length - 1) / this.config.audio.duration,
f = 100 * this.config.audio.currentTime / this.config.audio.buffered.end(this.config.audio.buffered.length - 1)) : (g = 100,
f = e));
!this.config.diag.isPlaying && 100 <= g && clearInterval(this.config.jPlayerControllerId);
a ? this.jPlayerOnProgressChange(g, 0, 0, 0, c) : this.jPlayerOnProgressChange(g, f, e, b, c)
},
volumeMin: function() {
this.volume(0)
},
volumeMax: function() {
this.volume(100)
},
volumeBar: function(a) {
if (void 0 != this.config.cssId.volumeBar) {
var b = this.config.cssSelector.volumeBar.offset();
a = a.pageX - b.left;
b = this.config.cssSelector.volumeBar.width();
this.volume(100 * a / b)
}
},
volumeBarValue: function(a) {
this.volumeBar(a)
},
jPlayerVolume: function(a) {
null != this.config.cssId.volumeBarValue && (this.config.cssSelector.volumeBarValue.width(a + "%"),
this._forceUpdate())
},
onSoundComplete: function(a) {
b.isFunction(a) ? this.onSoundCompleteCustom = a : this._warning("onSoundComplete parameter is not a function.")
},
onSoundCompleteCustom: function() {},
jPlayerOnSoundComplete: function() {
this.element.trigger("jPlayer.setButtons", !1);
this.onSoundCompleteCustom()
},
getData: function(a) {
for (var b = a.split("."), c = this.config, e = 0; e < b.length; e++)
if (void 0 != c[b[e]])
c = c[b[e]];
else {
this._warning("Undefined data requested.\n\njPlayer('getData', '" + a + "')");
return
}
return c
},
_getMovie: function() {
return document[this.config.fid]
},
_checkForFlash: function(a) {
var b = !1, c;
if (window.ActiveXObject)
try {
new ActiveXObject("ShockwaveFlash.ShockwaveFlash." + a),
b = !0
} catch (e) {}
else
navigator.plugins && 0 < navigator.mimeTypes.length && (c = navigator.plugins["Shockwave Flash"]) && navigator.plugins["Shockwave Flash"].description.replace(/.*\s(\d+\.\d+).*/, "$1") >= a && (b = !0);
return b
},
_forceUpdate: function() {
this.config.graphicsFix && this.config.hSel.text("" + Math.random())
},
_limitValue: function(a, b, c) {
return a < b ? b : a > c ? c : a
},
_flashError: function(a) {
this._error("Problem with Flash component.\n\nCheck the swfPath points at the Jplayer.swf path.\n\nswfPath = " + this.config.swfPath + "\nurl: " + this.config.swf + "\n\nError: " + a.message)
},
_error: function(a) {
this.config.errorAlerts && this._alert("Error!\n\n" + a)
},
_warning: function(a) {
this.config.warningAlerts && this._alert("Warning!\n\n" + a)
},
_alert: function(a) {
alert("jPlayer " + this.config.version + " : id='" + this.config.id + "' : " + a)
}
}
}
)(jQuery);
(function(d) {
d.fn.fadeShow = function(g, c, h) {
var b = this;
b.css("overflow", "hidden");
if (g.shuffle)
for (var j = c.length; j; ) {
var k = Math.floor(Math.random() * j)
, l = c[--j];
c[j] = c[k];
c[k] = l
}
if (!g.fadeTime || 0 >= g.fadeTime)
g.fadeTime = 1E3;
if (!g.imageTime || 0 >= g.imageTime)
g.imageTime = 4E3;
b.currentImage = 0;
for (var p = function(a) {
if (a.ratio) {
var m, n;
a.hasCompleted ? (m = d(a).height(),
n = d(a).width()) : (b.width() / b.height() > a.ratio ? (a.width = b.width(),
a.height = b.width() / a.ratio) : (a.height = b.height(),
a.width = b.height() * a.ratio),
m = a.height,
n = a.width);
b.width() / b.height() > a.ratio ? d(a).css("width", "100%").css("height", "auto") : d(a).css("height", "100%").css("width", "auto");
d(a).css("top", Math.min(0, (b.height() - m) / 2).toString() + "px");
d(a).css("left", Math.min(0, (b.width() - n) / 2).toString() + "px")
}
}, q = function(a) {
if (!(this.naturalHeight && this.naturalWidth || this.__lookupSetter__ && (!this.__lookupSetter__("naturalHeight") || !this.__lookupSetter__("naturalWidth")))) {
var b = new Image;
b.onload = function() {
a.naturalHeight = this.height;
a.naturalWidth = this.width
}
;
b.src = a.src
}
}, j = function() {
q(this);
this.ratio = this.width / this.height;
this.hasCompleted = !0;
p(this)
}, k = function() {
q(this);
this.hasCompleted = !0
}, l = function(a, b, d) {
return !b || !h ? a : function() {
h(d);
a.apply(d)
}
}, f = 0; f < c.length; ++f)
if (c[f].src) {
var e = document.createElement("img");
e.hasCompleted = !1;
d(e).css("margin", "0px").css("position", "absolute");
0 < f && d(e).hide();
c[f].width && c[f].height ? (e.ratio = c[f].width / c[f].height,
e.onload = l(k, 0 == f, e)) : (e.ratio = 0,
e.onload = l(j, 0 == f, e));
e.src = c[f].src;
e.ratio && p(e);
b.append(e)
}
d(window).resize(function() {
b.children("img").each(function(a, b) {
p(b)
})
});
window.setInterval(function() {
var a = b.children("img"), e = a[b.currentImage], c;
do
if (++b.currentImage >= a.length && (b.currentImage = 0),
c = a[b.currentImage],
c == e)
return;
while (!c.hasCompleted);
b.currentImage ? d(c).fadeIn(g.fadeTime, function() {
d(e).hide();
h && h(c)
}) : (d(c).show(),
d(e).fadeOut(g.fadeTime, function() {
h && h(c)
}))
}, g.imageTime);
return b
}
}
)(jQuery);
$(document).ready(function() {
function j() {
$("#improvisations").position().top <= $("#name").position().top + $("#name").height() ? ($("#improvisations").css("visibility", "hidden"),
$("#down").css("visibility", "visible")) : ($("#improvisations").css("visibility", "visible"),
$("#down").css("visibility", "hidden"));
$("#photos").position().left <= $("#name").position().left + $("#name").width() ? ($("#photos").css("visibility", "hidden"),
$("#right").css("visibility", "visible")) : ($("#photos").css("visibility", "visible"),
$("#right").css("visibility", "hidden"));
var a = $("#photos").height() / 2 - 64;
$("#recent_photos_box").height(a);
$("#random_photos_box").height(a)
}
$("#background").fadeShow({
shuffle: !0,
imageTime: 5E3,
fadeTime: 2E3
}, [{
src: "images/jonatan-pie-h8nxGssjQXs-unsplash.jpg",
width: 7042,
height: 4699
}/*, {
src: "images/centralpark.jpg",
width: 1920,
height: 1440
}, {
src: "images/coney.jpg",
width: 1920,
height: 1440
}, {
src: "images/dyingsky.jpg",
width: 1920,
height: 1278
}, {
src: "images/ericguitar.jpg",
width: 1920,
height: 1200
}, {
src: "images/mtwashington.jpg",
width: 1920,
height: 1439
}, {
src: "images/openroad.jpg",
width: 1920,
height: 1278
}, {
src: "images/ranch.jpg",
width: 1920,
height: 1278
}, {
src: "images/revolutionlake.jpg",
width: 1920,
height: 1440
}, {
src: "images/statue.jpg",
width: 1920,
height: 1382
}, {
src: "images/vexin.jpg",
width: 1920,
height: 1285
} */], function(a) {
var b = document.createElement("canvas");
if (b.getContext) {
b.width = $(a).parent().width();
b.height = $(a).parent().height();
var c = b.getContext("2d")
, e = -$(a).offset().top * a.naturalWidth / a.width
, f = -$(a).offset().left * a.naturalHeight / a.height
, d = $(a).parent().width() * a.naturalWidth / a.width
, g = $(a).parent().height() * a.naturalHeight / a.height;
if (!d || !g)
delete canavs;
else {
c.drawImage(a, f, e, d, g, 0, 0, b.width, b.height);
a = c.getImageData(0, 0, b.width, b.height);
c = $("#name");
f = e = 0;
for (d = c.offset().left; d < c.offset().left + c.width(); ++d)
for (g = c.offset().top; d < c.offset().top + c.height(); ++d) {
var h = g * 4 * a.width + 4 * d
, e = e + (11 * a.data[h] + 16 * a.data[h + 1] + 5 * a.data[h + 2]) / 32;
++f
}
a = e / f / 255 / 2.5;
$(".transparentbox").fadeTo(800, Math.max(0.1, a));
delete b
}
} else
delete b
});
$("#background img").each(function(a, b) {
b.title = "Horizon"
});
$(window).resize(j);
j()
});
$(document).ready(function() {
function b(a) {
for (var c = "", h = a.length - 1; 0 <= h; --h)
c += a[h];
return c
}
var j = function(a) {
if ("" == a)
return "root";
"/" == a[0] && (a = a.substring(1));
for (a = a.replace(/ /g, "_").replace(/\//g, "-").replace(/\(/g, "").replace(/\)/g, "").replace(/#/g, "").replace(/&/g, "").replace(/,/g, "").replace(/\[/g, "").replace(/\]/g, "").replace(/"/g, "").replace(/'/g, "").replace(/_-_/g, "-").toLowerCase(); -1 != a.indexOf("--"); )
a = a.replace(/--/g, "-");
for (; -1 != a.indexOf("__"); )
a = a.replace(/__/g, "_");
return a
}
, g = function(a, c) {
$.each(c, function(c, e) {
var f = e
, d = f.lastIndexOf("/")
, b = f.substring(0, d)
, k = f.substring(d + 1)
, d = b.lastIndexOf("/")
, g = b.substring(d + 1)
, d = k.lastIndexOf(".");
e = {
title: k.substring(0, d) + " from " + g,
page: "https://photos.jasondonenfeld.com/#!/" + j(b) + "/" + j(k),
thumb: "https://photos.jasondonenfeld.com/cache/" + j(f) + "_75s.jpg"
};
a.append('<a target="_blank" href="' + e.page + '"><img width="75" height="75" title="' + e.title + '" src="' + e.thumb + '" onerror="this.parentNode.removeChild(this);" /></a>')
})
};
$.ajax({
dataType: "jsonp",
url: "https://photos.jasondonenfeld.com/photos?count=27",
success: function(a) {
$("#recent_photos_box > .loading").remove();
g($("#recent_photos_box"), a.photos)
}
});
$.ajax({
dataType: "jsonp",
url: "https://photos.jasondonenfeld.com/photos?count=27&random=true",
success: function(a) {
$("#random_photos_box > .loading").remove();
g($("#random_photos_box"), a.photos)
}
});
var l = b("nosaJ") + "@" + b("4c2xz") + "." + b("moc");
$("#contact").html('<a href="mailto:' + l + '">' + l + "</a>")
});
$(document).ready(function() {
function g(b) {
$("#jplayer_playlist_item_" + a).removeClass("jplayer_playlist_current").parent().removeClass("jplayer_playlist_current");
$("#jplayer_playlist_item_" + b).addClass("jplayer_playlist_current").parent().addClass("jplayer_playlist_current");
var d = $("#jplayer_playlist_item_" + b).parent().position().top - $("#jplayer_playlist_item_0").parent().position().top
, h = $("#jplayer_playlist_item_" + b).height()
, e = $("#jplayer_playlist");
(e.scrollTop() > d - h || e.scrollTop() + e.innerHeight() < d + h) && e.scrollTop(d);
a = b;
$("#jquery_jplayer").jPlayer("setFile", c[a].mp3)
}
function f(a) {
g(a);
$("#jquery_jplayer").jPlayer("play")
}
var c = [{
name: "April 14, 2016",
mp3: "music/04 Rap - April 14, 2016.mp3"
}, {
name: "April 07, 2016",
mp3: "music/03 Footprints - April 7, 2016.mp3"
}, {
name: "March 31, 2016",
mp3: "music/Jason A. Donenfeld - Caveau des Oubliettes - March 31, 2016.mp3"
}, {
name: "April 06, 2013",
mp3: "music/Tiger's Alley.mp3"
}, {
name: "March 24, 2013",
mp3: "music/10 Marsupial.mp3"
}, {
name: "August 29, 2012",
mp3: "music/09 Change the Date on my Tamagotchi.mp3"
}, {
name: "August 22, 2012",
mp3: "music/08 The Peacocks.mp3"
}, {
name: "July 25, 2012",
mp3: "music/03 Playing With a New Sound (Unnamed Sketch).mp3"
}, {
name: "June 09, 2012",
mp3: "music/02 Ron Carter Zero.mp3"
}, {
name: "January 18, 2012",
mp3: "music/01 Bedtime Ditty.mp3"
}, {
name: "October 31, 2011",
mp3: "music/06 Elevator.mp3"
}, {
name: "October 26, 2011",
mp3: "music/05 Seven Agevin.mp3"
}, {
name: "July 26, 2011",
mp3: "music/03 Fabe Nurtures Blue Alien Child and Grow Immortal Space Bonds.mp3"
}, {
name: "July 12, 2011",
mp3: "music/02 Warm Up.mp3"
}, {
name: "June 24, 2011",
mp3: "music/01 Madalina Attempts to Think but the Large Muttenchops on her Earlobes Prevent her from Changing Chords so she is Stuck in Mixolydian.mp3"
}, {
name: "May 18, 2011",
mp3: "music/09 Graduation.mp3"
}, {
name: "April 24, 2011",
mp3: "music/08 Forgot to Knock.mp3"
}, {
name: "April 21, 2011",
mp3: "music/07 Wafted Sleep.mp3"
}, {
name: "March 13, 2011",
mp3: "music/01 Billie Jean.mp3"
}, {
name: "March 12, 2011",
mp3: "music/05 Riley Rap Song.mp3"
}, {
name: "October 27, 2010",
mp3: "music/04 Incorrect Flannel.mp3"
}, {
name: "October 27, 2010",
mp3: "music/03 Tootsie Roll.mp3"
}, {
name: "September 29, 2010",
mp3: "music/02 Moon Lanker.mp3"
}, {
name: "September 26, 2010",
mp3: "music/01 Super Mario Plays Funk Basketball.mp3"
}, {
name: "July 30, 2010",
mp3: "music/01 Owl (Sophie, Improv).mp3"
}, {
name: "June 28, 2010",
mp3: "music/01 Sososo.mp3"
}, {
name: "October 24, 2009",
mp3: "music/02 Freemaze I.mp3"
}, {
name: "September 12, 2009",
mp3: "music/01 I Might Be Wrong Beat Test.mp3"
}, {
name: "August 3, 2009",
mp3: "music/Footprints-Owl.mp3"
}, {
name: "June 20, 2009",
mp3: "music/01 Again.mp3"
}, {
name: "May 15, 2009",
mp3: "music/01 Stolen Moments.mp3"
}, {
name: "May 6, 2009",
mp3: "music/05 Freema.mp3"
}, {
name: "May 6, 2009",
mp3: "music/04 BCED Sketch.mp3"
}, {
name: "April 4, 2009",
mp3: "music/Zoe.mp3"
}, {
name: "March 29, 2009",
mp3: "music/Follow Your Heart - Down By The River.mp3"
}, {
name: "February 7, 2009",
mp3: "music/03 Love Song (2-7-09, 5am).mp3"
}, {
name: "October 14, 2008",
mp3: "music/02 Dream Improvisation (10-14-08).mp3"
}, {
name: "October 14, 2008",
mp3: "music/01 Improvisation (10-14-08).mp3"
}, {
name: "May 22, 2008",
mp3: "music/The Dalliance of the Eagles.mp3"
}, {
name: "May 21, 2008",
mp3: "music/Owl [Early Sketch].mp3"
}, {
name: "May 20, 2008",
mp3: "music/Improvisation (5-20-08).mp3"
}, {
name: "May, 2008",
mp3: "music/Tiger's Alley [Protools Test 2, Amp Modelers].mp3"
}, {
name: "April 8, 2008",
mp3: "music/Jason's Jazz Explosion.mp3"
}, {
name: "February, 2008",
mp3: "music/Jason A. Donenfeld, JP Wiegand - Alice's Bass.mp3"
}, {
name: "February, 2008",
mp3: "music/Jason A. Donenfeld - JP's House of Funk.mp3"
}, {
name: "February, 2008",
mp3: "music/Jason A. Donenfeld, Rani Schloss, JP Wiegand - Rani's Yakus.mp3"
}, {
name: "January, 2008",
mp3: "music/Poke It Through.mp3"
}, {
name: "January, 2008",
mp3: "music/Jason A. Donenfeld, JP Wiegand - Auburn Moss.mp3"
}, {
name: "November, 2007",
mp3: "music/All The Animals Come Out at Night.mp3"
}, {
name: "October, 2007",
mp3: "music/Endoplasmic Stroll [draft].mp3"
}]
, a = 0
, j = !1;
0 == window.location.hash.indexOf("#improv") && (a = parseInt(window.location.hash.substring(7)),
a = isNaN(a) ? 0 : c.length - a,
j = !0);
var k = $("#jplayer_play_time")
, l = $("#jplayer_total_time");
$("#jquery_jplayer").jPlayer({
ready: function() {
$("#jplayer_playlist ul").empty();
for (var b = 0; b < c.length; ++b) {
var d = b == c.length - 1 ? "<li class='jplayer_playlist_item_last'>" : "<li>"
, d = d + ("<a href='#improv" + (c.length - b).toString() + "' id='jplayer_playlist_item_" + b + "' tabindex='1'>" + c[b].name + "</a></li>");
$("#jplayer_playlist ul").append(d);
$("#jplayer_playlist_item_" + b).data("index", b).click(function() {
var b = $(this).data("index");
a != b ? f(b) : $("#jquery_jplayer").jPlayer("play");
$(this).blur();
return !1
})
}
j ? f(a) : g(a)
},
oggSupport: !1,
nativeSupport: !0
}).jPlayer("onProgressChange", function(a, c, f, e, g) {
k.text($.jPlayer.convertTime(e));
l.text($.jPlayer.convertTime(g))
}).jPlayer("onSoundComplete", function() {
f(a + 1 < c.length ? a + 1 : 0)
});
$("#jplayer_previous").click(function() {
f(0 <= a - 1 ? a - 1 : c.length - 1);
$(this).blur();
return !1
});
$("#jplayer_next").click(function() {
f(a + 1 < c.length ? a + 1 : 0);
$(this).blur();
return !1
})
});
$(window).load(function() {
window._gaq = window._gaq || [];
window._gaq.push(["_setAccount", "UA-135234-2"]);
window._gaq.push(["_trackPageview"]);
var a = document.createElement("script");
a.type = "text/javascript";
a.async = !0;
a.src = ("https:" == document.location.protocol ? "https://ssl" : "http://www") + ".google-analytics.com/ga.js";
var b = document.getElementsByTagName("script")[0];
b.parentNode.insertBefore(a, b)
});
document.addEventListener('DOMContentLoaded', function () {
const container = document.getElementById('careerContainer');
const progressBar = document.getElementById('careerProgress');
const stages = Array.from(document.querySelectorAll('.career-stage'));
const character = document.getElementById('character');
const timeline = document.getElementById('timeline');
const journeyLabel = document.getElementById('journeyLabel');
const journeyPercent = document.getElementById('journeyPercent');
if (!container || !progressBar || !stages.length || !character || !timeline) return;
function clamp(value, min, max) {
return Math.min(Math.max(value, min), max);
}
function updateProgress() {
const maxScroll = Math.max(container.scrollHeight - container.clientHeight, 0);
const scrollPos = clamp(container.scrollTop, 0, maxScroll);
const percent = maxScroll > 0 ? (scrollPos / maxScroll) * 100 : 0;
progressBar.value = percent;
journeyPercent.textContent = Math.round(percent) + '%';
const trackHeight = Math.max(container.clientHeight - character.offsetHeight - 32, 0);
const moveY = (percent / 100) * trackHeight;
character.style.transform = 'translateY(' + moveY + 'px)';
}
container.addEventListener('scroll', updateProgress, { passive: true });
window.addEventListener('resize', updateProgress);
updateProgress();
});
function showSection(section) {
const about = document.getElementById('About-Me');
const projects = document.getElementById('Projects');
if (section === 'About-Me') {
about.style.display = 'block';
projects.style.display = 'none';
} else if (section === 'Projects') {
about.style.display = 'none';
projects.style.display = 'block';
}
}