(function (a, b) { function p(a) { return "scrollTo" in a && a.document ? a : a.nodeType === 9 ? a.defaultView || a.parentWindow : false } function o(a, b) { var c = {}; q.each(bP.concat.apply([], bP.slice(0, b)), function () { c[this] = a }); return c } function n(a, b, c) { var d, e, f; if (a.length === 1 && typeof a[0] === "string" && a[0].length < 512 && a[0].indexOf("<option") < 0 && (q.support.checkClone || !bl.test(a[0]))) { e = true; if (f = q.fragments[a[0]]) if (f !== 1) d = f } if (!d) { b = b && b[0] ? b[0].ownerDocument || b[0] : t; d = b.createDocumentFragment(); q.clean(a, b, d, c) } if (e) q.fragments[a[0]] = f ? d : 1; return { fragment: d, cacheable: e} } function m(a, b) { var c = 0; b.each(function () { if (this.nodeName === (a[c] && a[c].nodeName)) { var b = q.data(a[c++]), d = q.data(this, b); if (b = b && b.events) { delete d.handle; d.events = {}; for (var e in b) for (var f in b[e]) q.event.add(this, e, b[e][f], b[e][f].data) } } }) } function l(a) { return !a || !a.parentNode || a.parentNode.nodeType === 11 } function k(a, b) { return "live." + (a ? a + "." : "") + b.replace(/\./g, "`").replace(/ /g, "&") } function j(a) { var b, c = [], d = [], e = arguments, f, g, h, i, j, k, l = q.extend({}, q.data(this, "events").live); if (!(a.button && a.type === "click")) { for (i in l) { g = l[i]; if (g.live === a.type || g.altLive && q.inArray(a.type, g.altLive) > -1) { f = g.data; f.beforeFilter && f.beforeFilter[a.type] && !f.beforeFilter[a.type](a) || d.push(g.selector) } else delete l[i] } f = q(a.target).closest(d, a.currentTarget); j = 0; for (k = f.length; j < k; j++) for (i in l) { g = l[i]; h = f[j].elem; d = null; if (f[j].selector === g.selector) { if (g.live === "mouseenter" || g.live === "mouseleave") d = q(a.relatedTarget).closest(g.selector)[0]; if (!d || d !== h) c.push({ elem: h, fn: g }) } } j = 0; for (k = c.length; j < k; j++) { f = c[j]; a.currentTarget = f.elem; a.data = f.fn.data; if (f.fn.apply(f.elem, e) === false) { b = false; break } } return b } } function i(a, b, c) { c[0].type = a; return q.event.handle.apply(b, c) } function h() { return true } function g() { return false } function f() { return (new Date).getTime() } function e(a, c, d, f, g, h) { var i = a.length; if (typeof c === "object") { for (var j in c) e(a, j, c[j], f, g, d); return a } if (d !== b) { f = !h && f && q.isFunction(d); for (j = 0; j < i; j++) g(a[j], c, f ? d.call(a[j], j, g(a[j], c)) : d, h); return a } return i ? g(a[0], c) : null } function d(a, b) { b.src ? q.ajax({ url: b.src, async: false, dataType: "script" }) : q.globalEval(b.text || b.textContent || b.innerHTML || ""); b.parentNode && b.parentNode.removeChild(b) } function c() { if (!q.isReady) { try { t.documentElement.doScroll("left") } catch (a) { setTimeout(c, 1); return } q.ready() } } var q = function (a, b) { return new q.fn.init(a, b) }, r = a.jQuery, s = a.$, t = a.document, u, v = /^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/, w = /^.[^:#\[\.,]*$/, x = /\S/, y = /^(\s|\u00A0)+|(\s|\u00A0)+$/g, z = /^<(\w+)\s*\/?>(?:<\/\1>)?$/, A = navigator.userAgent, B = false, C = [], D, E = Object.prototype.toString, F = Object.prototype.hasOwnProperty, G = Array.prototype.push, H = Array.prototype.slice, I = Array.prototype.indexOf; q.fn = q.prototype = { init: function (a, c) { var d, e; if (!a) return this; if (a.nodeType) { this.context = this[0] = a; this.length = 1; return this } if (typeof a === "string") if ((d = v.exec(a)) && (d[1] || !c)) if (d[1]) { e = c ? c.ownerDocument || c : t; if (a = z.exec(a)) if (q.isPlainObject(c)) { a = [t.createElement(a[1])]; q.fn.attr.call(a, c, true) } else a = [e.createElement(a[1])]; else { a = n([d[1]], [e]); a = (a.cacheable ? a.fragment.cloneNode(true) : a.fragment).childNodes } } else { if (c = t.getElementById(d[2])) { if (c.id !== d[2]) return u.find(a); this.length = 1; this[0] = c } this.context = t; this.selector = a; return this } else if (!c && /^\w+$/.test(a)) { this.selector = a; this.context = t; a = t.getElementsByTagName(a) } else return !c || c.jquery ? (c || u).find(a) : q(c).find(a); else if (q.isFunction(a)) return u.ready(a); if (a.selector !== b) { this.selector = a.selector; this.context = a.context } return q.isArray(a) ? this.setArray(a) : q.makeArray(a, this) }, selector: "", jquery: "1.4.1", length: 0, size: function () { return this.length }, toArray: function () { return H.call(this, 0) }, get: function (a) { return a == null ? this.toArray() : a < 0 ? this.slice(a)[0] : this[a] }, pushStack: function (a, b, c) { a = q(a || null); a.prevObject = this; a.context = this.context; if (b === "find") a.selector = this.selector + (this.selector ? " " : "") + c; else if (b) a.selector = this.selector + "." + b + "(" + c + ")"; return a }, setArray: function (a) { this.length = 0; G.apply(this, a); return this }, each: function (a, b) { return q.each(this, a, b) }, ready: function (a) { q.bindReady(); if (q.isReady) a.call(t, q); else C && C.push(a); return this }, eq: function (a) { return a === -1 ? this.slice(a) : this.slice(a, +a + 1) }, first: function () { return this.eq(0) }, last: function () { return this.eq(-1) }, slice: function () { return this.pushStack(H.apply(this, arguments), "slice", H.call(arguments).join(",")) }, map: function (a) { return this.pushStack(q.map(this, function (b, c) { return a.call(b, c, b) })) }, end: function () { return this.prevObject || q(null) }, push: G, sort: [].sort, splice: [].splice }; q.fn.init.prototype = q.fn; q.extend = q.fn.extend = function () { var a = arguments[0] || {}, c = 1, d = arguments.length, e = false, f, g, h, i; if (typeof a === "boolean") { e = a; a = arguments[1] || {}; c = 2 } if (typeof a !== "object" && !q.isFunction(a)) a = {}; if (d === c) { a = this; --c } for (; c < d; c++) if ((f = arguments[c]) != null) for (g in f) { h = a[g]; i = f[g]; if (a !== i) if (e && i && (q.isPlainObject(i) || q.isArray(i))) { h = h && (q.isPlainObject(h) || q.isArray(h)) ? h : q.isArray(i) ? [] : {}; a[g] = q.extend(e, h, i) } else if (i !== b) a[g] = i } return a }; q.extend({ noConflict: function (b) { a.$ = s; if (b) a.jQuery = r; return q }, isReady: false, ready: function () { if (!q.isReady) { if (!t.body) return setTimeout(q.ready, 13); q.isReady = true; if (C) { for (var a, b = 0; a = C[b++]; ) a.call(t, q); C = null } q.fn.triggerHandler && q(t).triggerHandler("ready") } }, bindReady: function () { if (!B) { B = true; if (t.readyState === "complete") return q.ready(); if (t.addEventListener) { t.addEventListener("DOMContentLoaded", D, false); a.addEventListener("load", q.ready, false) } else if (t.attachEvent) { t.attachEvent("onreadystatechange", D); a.attachEvent("onload", q.ready); var b = false; try { b = a.frameElement == null } catch (d) { } t.documentElement.doScroll && b && c() } } }, isFunction: function (a) { return E.call(a) === "[object Function]" }, isArray: function (a) { return E.call(a) === "[object Array]" }, isPlainObject: function (a) { if (!a || E.call(a) !== "[object Object]" || a.nodeType || a.setInterval) return false; if (a.constructor && !F.call(a, "constructor") && !F.call(a.constructor.prototype, "isPrototypeOf")) return false; var c; for (c in a); return c === b || F.call(a, c) }, isEmptyObject: function (a) { for (var b in a) return false; return true }, error: function (a) { throw a }, parseJSON: function (b) { if (typeof b !== "string" || !b) return null; if (/^[\],:{}\s]*$/.test(b.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, "@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "]").replace(/(?:^|:|,)(?:\s*\[)+/g, ""))) return a.JSON && a.JSON.parse ? a.JSON.parse(b) : (new Function("return " + b))(); else q.error("Invalid JSON: " + b) }, noop: function () { }, globalEval: function (a) { if (a && x.test(a)) { var b = t.getElementsByTagName("head")[0] || t.documentElement, c = t.createElement("script"); c.type = "text/javascript"; if (q.support.scriptEval) c.appendChild(t.createTextNode(a)); else c.text = a; b.insertBefore(c, b.firstChild); b.removeChild(c) } }, nodeName: function (a, b) { return a.nodeName && a.nodeName.toUpperCase() === b.toUpperCase() }, each: function (a, c, d) { var e, f = 0, g = a.length, h = g === b || q.isFunction(a); if (d) if (h) for (e in a) { if (c.apply(a[e], d) === false) break } else for (; f < g; ) { if (c.apply(a[f++], d) === false) break } else if (h) for (e in a) { if (c.call(a[e], e, a[e]) === false) break } else for (d = a[0]; f < g && c.call(d, f, d) !== false; d = a[++f]); return a }, trim: function (a) { return (a || "").replace(y, "") }, makeArray: function (a, b) { b = b || []; if (a != null) a.length == null || typeof a === "string" || q.isFunction(a) || typeof a !== "function" && a.setInterval ? G.call(b, a) : q.merge(b, a); return b }, inArray: function (a, b) { if (b.indexOf) return b.indexOf(a); for (var c = 0, d = b.length; c < d; c++) if (b[c] === a) return c; return -1 }, merge: function (a, c) { var d = a.length, e = 0; if (typeof c.length === "number") for (var f = c.length; e < f; e++) a[d++] = c[e]; else for (; c[e] !== b; ) a[d++] = c[e++]; a.length = d; return a }, grep: function (a, b, c) { for (var d = [], e = 0, f = a.length; e < f; e++) !c !== !b(a[e], e) && d.push(a[e]); return d }, map: function (a, b, c) { for (var d = [], e, f = 0, g = a.length; f < g; f++) { e = b(a[f], f, c); if (e != null) d[d.length] = e } return d.concat.apply([], d) }, guid: 1, proxy: function (a, c, d) { if (arguments.length === 2) if (typeof c === "string") { d = a; a = d[c]; c = b } else if (c && !q.isFunction(c)) { d = c; c = b } if (!c && a) c = function () { return a.apply(d || this, arguments) }; if (a) c.guid = a.guid = a.guid || c.guid || q.guid++; return c }, uaMatch: function (a) { a = a.toLowerCase(); a = /(webkit)[ \/]([\w.]+)/.exec(a) || /(opera)(?:.*version)?[ \/]([\w.]+)/.exec(a) || /(msie) ([\w.]+)/.exec(a) || !/compatible/.test(a) && /(mozilla)(?:.*? rv:([\w.]+))?/.exec(a) || []; return { browser: a[1] || "", version: a[2] || "0"} }, browser: {} }); A = q.uaMatch(A); if (A.browser) { q.browser[A.browser] = true; q.browser.version = A.version } if (q.browser.webkit) q.browser.safari = true; if (I) q.inArray = function (a, b) { return I.call(b, a) }; u = q(t); if (t.addEventListener) D = function () { t.removeEventListener("DOMContentLoaded", D, false); q.ready() }; else if (t.attachEvent) D = function () { if (t.readyState === "complete") { t.detachEvent("onreadystatechange", D); q.ready() } }; (function () { q.support = {}; var b = t.documentElement, c = t.createElement("script"), d = t.createElement("div"), e = "script" + f(); d.style.display = "none"; d.innerHTML = "   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>"; var g = d.getElementsByTagName("*"), h = d.getElementsByTagName("a")[0]; if (!(!g || !g.length || !h)) { q.support = { leadingWhitespace: d.firstChild.nodeType === 3, tbody: !d.getElementsByTagName("tbody").length, htmlSerialize: !!d.getElementsByTagName("link").length, style: /red/.test(h.getAttribute("style")), hrefNormalized: h.getAttribute("href") === "/a", opacity: /^0.55$/.test(h.style.opacity), cssFloat: !!h.style.cssFloat, checkOn: d.getElementsByTagName("input")[0].value === "on", optSelected: t.createElement("select").appendChild(t.createElement("option")).selected, checkClone: false, scriptEval: false, noCloneEvent: true, boxModel: null }; c.type = "text/javascript"; try { c.appendChild(t.createTextNode("window." + e + "=1;")) } catch (i) { } b.insertBefore(c, b.firstChild); if (a[e]) { q.support.scriptEval = true; delete a[e] } b.removeChild(c); if (d.attachEvent && d.fireEvent) { d.attachEvent("onclick", function j() { q.support.noCloneEvent = false; d.detachEvent("onclick", j) }); d.cloneNode(true).fireEvent("onclick") } d = t.createElement("div"); d.innerHTML = "<input type='radio' name='radiotest' checked='checked'/>"; b = t.createDocumentFragment(); b.appendChild(d.firstChild); q.support.checkClone = b.cloneNode(true).cloneNode(true).lastChild.checked; q(function () { var a = t.createElement("div"); a.style.width = a.style.paddingLeft = "1px"; t.body.appendChild(a); q.boxModel = q.support.boxModel = a.offsetWidth === 2; t.body.removeChild(a).style.display = "none" }); b = function (a) { var b = t.createElement("div"); a = "on" + a; var c = a in b; if (!c) { b.setAttribute(a, "return;"); c = typeof b[a] === "function" } return c }; q.support.submitBubbles = b("submit"); q.support.changeBubbles = b("change"); b = c = d = g = h = null } })(); q.props = { "for": "htmlFor", "class": "className", readonly: "readOnly", maxlength: "maxLength", cellspacing: "cellSpacing", rowspan: "rowSpan", colspan: "colSpan", tabindex: "tabIndex", usemap: "useMap", frameborder: "frameBorder" }; var J = "jQuery" + f(), K = 0, L = {}, M = {}; q.extend({ cache: {}, expando: J, noData: { embed: true, object: true, applet: true }, data: function (c, d, e) { if (!(c.nodeName && q.noData[c.nodeName.toLowerCase()])) { c = c == a ? L : c; var f = c[J], g = q.cache; if (!d && !f) return null; f || (f = ++K); if (typeof d === "object") { c[J] = f; g = g[f] = q.extend(true, {}, d) } else g = g[f] ? g[f] : typeof e === "undefined" ? M : g[f] = {}; if (e !== b) { c[J] = f; g[d] = e } return typeof d === "string" ? g[d] : g } }, removeData: function (b, c) { if (!(b.nodeName && q.noData[b.nodeName.toLowerCase()])) { b = b == a ? L : b; var d = b[J], e = q.cache, f = e[d]; if (c) { if (f) { delete f[c]; q.isEmptyObject(f) && q.removeData(b) } } else { try { delete b[J] } catch (g) { b.removeAttribute && b.removeAttribute(J) } delete e[d] } } } }); q.fn.extend({ data: function (a, c) { if (typeof a === "undefined" && this.length) return q.data(this[0]); else if (typeof a === "object") return this.each(function () { q.data(this, a) }); var d = a.split("."); d[1] = d[1] ? "." + d[1] : ""; if (c === b) { var e = this.triggerHandler("getData" + d[1] + "!", [d[0]]); if (e === b && this.length) e = q.data(this[0], a); return e === b && d[1] ? this.data(d[0]) : e } else return this.trigger("setData" + d[1] + "!", [d[0], c]).each(function () { q.data(this, a, c) }) }, removeData: function (a) { return this.each(function () { q.removeData(this, a) }) } }); q.extend({ queue: function (a, b, c) { if (a) { b = (b || "fx") + "queue"; var d = q.data(a, b); if (!c) return d || []; if (!d || q.isArray(c)) d = q.data(a, b, q.makeArray(c)); else d.push(c); return d } }, dequeue: function (a, b) { b = b || "fx"; var c = q.queue(a, b), d = c.shift(); if (d === "inprogress") d = c.shift(); if (d) { b === "fx" && c.unshift("inprogress"); d.call(a, function () { q.dequeue(a, b) }) } } }); q.fn.extend({ queue: function (a, c) { if (typeof a !== "string") { c = a; a = "fx" } if (c === b) return q.queue(this[0], a); return this.each(function () { var b = q.queue(this, a, c); a === "fx" && b[0] !== "inprogress" && q.dequeue(this, a) }) }, dequeue: function (a) { return this.each(function () { q.dequeue(this, a) }) }, delay: function (a, b) { a = q.fx ? q.fx.speeds[a] || a : a; b = b || "fx"; return this.queue(b, function () { var c = this; setTimeout(function () { q.dequeue(c, b) }, a) }) }, clearQueue: function (a) { return this.queue(a || "fx", []) } }); var N = /[\n\t]/g, O = /\s+/, P = /\r/g, Q = /href|src|style/, R = /(button|input)/i, S = /(button|input|object|select|textarea)/i, T = /^(a|area)$/i, U = /radio|checkbox/; q.fn.extend({ attr: function (a, b) { return e(this, a, b, true, q.attr) }, removeAttr: function (a) { return this.each(function () { q.attr(this, a, ""); this.nodeType === 1 && this.removeAttribute(a) }) }, addClass: function (a) { if (q.isFunction(a)) return this.each(function (b) { var c = q(this); c.addClass(a.call(this, b, c.attr("class"))) }); if (a && typeof a === "string") for (var b = (a || "").split(O), c = 0, d = this.length; c < d; c++) { var e = this[c]; if (e.nodeType === 1) if (e.className) for (var f = " " + e.className + " ", g = 0, h = b.length; g < h; g++) { if (f.indexOf(" " + b[g] + " ") < 0) e.className += " " + b[g] } else e.className = a } return this }, removeClass: function (a) { if (q.isFunction(a)) return this.each(function (b) { var c = q(this); c.removeClass(a.call(this, b, c.attr("class"))) }); if (a && typeof a === "string" || a === b) for (var c = (a || "").split(O), d = 0, e = this.length; d < e; d++) { var f = this[d]; if (f.nodeType === 1 && f.className) if (a) { for (var g = (" " + f.className + " ").replace(N, " "), h = 0, i = c.length; h < i; h++) g = g.replace(" " + c[h] + " ", " "); f.className = g.substring(1, g.length - 1) } else f.className = "" } return this }, toggleClass: function (a, b) { var c = typeof a, d = typeof b === "boolean"; if (q.isFunction(a)) return this.each(function (c) { var d = q(this); d.toggleClass(a.call(this, c, d.attr("class"), b), b) }); return this.each(function () { if (c === "string") for (var e, f = 0, g = q(this), h = b, i = a.split(O); e = i[f++]; ) { h = d ? h : !g.hasClass(e); g[h ? "addClass" : "removeClass"](e) } else if (c === "undefined" || c === "boolean") { this.className && q.data(this, "__className__", this.className); this.className = this.className || a === false ? "" : q.data(this, "__className__") || "" } }) }, hasClass: function (a) { a = " " + a + " "; for (var b = 0, c = this.length; b < c; b++) if ((" " + this[b].className + " ").replace(N, " ").indexOf(a) > -1) return true; return false }, val: function (a) { if (a === b) { var c = this[0]; if (c) { if (q.nodeName(c, "option")) return (c.attributes.value || {}).specified ? c.value : c.text; if (q.nodeName(c, "select")) { var d = c.selectedIndex, e = [], f = c.options; c = c.type === "select-one"; if (d < 0) return null; var g = c ? d : 0; for (d = c ? d + 1 : f.length; g < d; g++) { var h = f[g]; if (h.selected) { a = q(h).val(); if (c) return a; e.push(a) } } return e } if (U.test(c.type) && !q.support.checkOn) return c.getAttribute("value") === null ? "on" : c.value; return (c.value || "").replace(P, "") } return b } var i = q.isFunction(a); return this.each(function (b) { var c = q(this), d = a; if (this.nodeType === 1) { if (i) d = a.call(this, b, c.val()); if (typeof d === "number") d += ""; if (q.isArray(d) && U.test(this.type)) this.checked = q.inArray(c.val(), d) >= 0; else if (q.nodeName(this, "select")) { var e = q.makeArray(d); q("option", this).each(function () { this.selected = q.inArray(q(this).val(), e) >= 0 }); if (!e.length) this.selectedIndex = -1 } else this.value = d } }) } }); q.extend({ attrFn: { val: true, css: true, html: true, text: true, data: true, width: true, height: true, offset: true }, attr: function (a, c, d, e) { if (!a || a.nodeType === 3 || a.nodeType === 8) return b; if (e && c in q.attrFn) return q(a)[c](d); e = a.nodeType !== 1 || !q.isXMLDoc(a); var f = d !== b; c = e && q.props[c] || c; if (a.nodeType === 1) { var g = Q.test(c); if (c in a && e && !g) { if (f) { c === "type" && R.test(a.nodeName) && a.parentNode && q.error("type property can't be changed"); a[c] = d } if (q.nodeName(a, "form") && a.getAttributeNode(c)) return a.getAttributeNode(c).nodeValue; if (c === "tabIndex") return (c = a.getAttributeNode("tabIndex")) && c.specified ? c.value : S.test(a.nodeName) || T.test(a.nodeName) && a.href ? 0 : b; return a[c] } if (!q.support.style && e && c === "style") { if (f) a.style.cssText = "" + d; return a.style.cssText } f && a.setAttribute(c, "" + d); a = !q.support.hrefNormalized && e && g ? a.getAttribute(c, 2) : a.getAttribute(c); return a === null ? b : a } return q.style(a, c, d) } }); var V = function (a) { return a.replace(/[^\w\s\.\|`]/g, function (a) { return "\\" + a }) }; q.event = { add: function (c, d, e, f) { if (!(c.nodeType === 3 || c.nodeType === 8)) { if (c.setInterval && c !== a && !c.frameElement) c = a; if (!e.guid) e.guid = q.guid++; if (f !== b) { e = q.proxy(e); e.data = f } var g = q.data(c, "events") || q.data(c, "events", {}), h = q.data(c, "handle"), i; if (!h) { i = function () { return typeof q !== "undefined" && !q.event.triggered ? q.event.handle.apply(i.elem, arguments) : b }; h = q.data(c, "handle", i) } if (h) { h.elem = c; d = d.split(/\s+/); for (var j, k = 0; j = d[k++]; ) { var l = j.split("."); j = l.shift(); if (k > 1) { e = q.proxy(e); if (f !== b) e.data = f } e.type = l.slice(0).sort().join("."); var m = g[j], n = this.special[j] || {}; if (!m) { m = g[j] = {}; if (!n.setup || n.setup.call(c, f, l, e) === false) if (c.addEventListener) c.addEventListener(j, h, false); else c.attachEvent && c.attachEvent("on" + j, h) } if (n.add) if ((l = n.add.call(c, e, f, l, m)) && q.isFunction(l)) { l.guid = l.guid || e.guid; l.data = l.data || e.data; l.type = l.type || e.type; e = l } m[e.guid] = e; this.global[j] = true } c = null } } }, global: {}, remove: function (a, c, d) { if (!(a.nodeType === 3 || a.nodeType === 8)) { var e = q.data(a, "events"), f, g, h; if (e) { if (c === b || typeof c === "string" && c.charAt(0) === ".") for (g in e) this.remove(a, g + (c || "")); else { if (c.type) { d = c.handler; c = c.type } c = c.split(/\s+/); for (var i = 0; g = c[i++]; ) { var j = g.split("."); g = j.shift(); var k = !j.length, l = q.map(j.slice(0).sort(), V); l = new RegExp("(^|\\.)" + l.join("\\.(?:.*\\.)?") + "(\\.|$)"); var m = this.special[g] || {}; if (e[g]) { if (d) { h = e[g][d.guid]; delete e[g][d.guid] } else for (var n in e[g]) if (k || l.test(e[g][n].type)) delete e[g][n]; m.remove && m.remove.call(a, j, h); for (f in e[g]) break; if (!f) { if (!m.teardown || m.teardown.call(a, j) === false) if (a.removeEventListener) a.removeEventListener(g, q.data(a, "handle"), false); else a.detachEvent && a.detachEvent("on" + g, q.data(a, "handle")); f = null; delete e[g] } } } } for (f in e) break; if (!f) { if (n = q.data(a, "handle")) n.elem = null; q.removeData(a, "events"); q.removeData(a, "handle") } } } }, trigger: function (a, c, d, e) { var f = a.type || a; if (!e) { a = typeof a === "object" ? a[J] ? a : q.extend(q.Event(f), a) : q.Event(f); if (f.indexOf("!") >= 0) { a.type = f = f.slice(0, -1); a.exclusive = true } if (!d) { a.stopPropagation(); this.global[f] && q.each(q.cache, function () { this.events && this.events[f] && q.event.trigger(a, c, this.handle.elem) }) } if (!d || d.nodeType === 3 || d.nodeType === 8) return b; a.result = b; a.target = d; c = q.makeArray(c); c.unshift(a) } a.currentTarget = d; (e = q.data(d, "handle")) && e.apply(d, c); e = d.parentNode || d.ownerDocument; try { if (!(d && d.nodeName && q.noData[d.nodeName.toLowerCase()])) if (d["on" + f] && d["on" + f].apply(d, c) === false) a.result = false } catch (g) { } if (!a.isPropagationStopped() && e) q.event.trigger(a, c, e, true); else if (!a.isDefaultPrevented()) { d = a.target; var h; if (!(q.nodeName(d, "a") && f === "click") && !(d && d.nodeName && q.noData[d.nodeName.toLowerCase()])) { try { if (d[f]) { if (h = d["on" + f]) d["on" + f] = null; this.triggered = true; d[f]() } } catch (i) { } if (h) d["on" + f] = h; this.triggered = false } } }, handle: function (c) { var d, e; c = arguments[0] = q.event.fix(c || a.event); c.currentTarget = this; e = c.type.split("."); c.type = e.shift(); d = !e.length && !c.exclusive; var f = new RegExp("(^|\\.)" + e.slice(0).sort().join("\\.(?:.*\\.)?") + "(\\.|$)"); e = (q.data(this, "events") || {})[c.type]; for (var g in e) { var h = e[g]; if (d || f.test(h.type)) { c.handler = h; c.data = h.data; h = h.apply(this, arguments); if (h !== b) { c.result = h; if (h === false) { c.preventDefault(); c.stopPropagation() } } if (c.isImmediatePropagationStopped()) break } } return c.result }, props: "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "), fix: function (a) { if (a[J]) return a; var c = a; a = q.Event(c); for (var d = this.props.length, e; d; ) { e = this.props[--d]; a[e] = c[e] } if (!a.target) a.target = a.srcElement || t; if (a.target.nodeType === 3) a.target = a.target.parentNode; if (!a.relatedTarget && a.fromElement) a.relatedTarget = a.fromElement === a.target ? a.toElement : a.fromElement; if (a.pageX == null && a.clientX != null) { c = t.documentElement; d = t.body; a.pageX = a.clientX + (c && c.scrollLeft || d && d.scrollLeft || 0) - (c && c.clientLeft || d && d.clientLeft || 0); a.pageY = a.clientY + (c && c.scrollTop || d && d.scrollTop || 0) - (c && c.clientTop || d && d.clientTop || 0) } if (!a.which && (a.charCode || a.charCode === 0 ? a.charCode : a.keyCode)) a.which = a.charCode || a.keyCode; if (!a.metaKey && a.ctrlKey) a.metaKey = a.ctrlKey; if (!a.which && a.button !== b) a.which = a.button & 1 ? 1 : a.button & 2 ? 3 : a.button & 4 ? 2 : 0; return a }, guid: 1e8, proxy: q.proxy, special: { ready: { setup: q.bindReady, teardown: q.noop }, live: { add: function (a, b) { q.extend(a, b || {}); a.guid += b.selector + b.live; b.liveProxy = a; q.event.add(this, b.live, j, b) }, remove: function (a) { if (a.length) { var b = 0, c = new RegExp("(^|\\.)" + a[0] + "(\\.|$)"); q.each(q.data(this, "events").live || {}, function () { c.test(this.type) && b++ }); b < 1 && q.event.remove(this, a[0], j) } }, special: {} }, beforeunload: { setup: function (a, b, c) { if (this.setInterval) this.onbeforeunload = c; return false }, teardown: function (a, b) { if (this.onbeforeunload === b) this.onbeforeunload = null } }} }; q.Event = function (a) { if (!this.preventDefault) return new q.Event(a); if (a && a.type) { this.originalEvent = a; this.type = a.type } else this.type = a; this.timeStamp = f(); this[J] = true }; q.Event.prototype = { preventDefault: function () { this.isDefaultPrevented = h; var a = this.originalEvent; if (a) { a.preventDefault && a.preventDefault(); a.returnValue = false } }, stopPropagation: function () { this.isPropagationStopped = h; var a = this.originalEvent; if (a) { a.stopPropagation && a.stopPropagation(); a.cancelBubble = true } }, stopImmediatePropagation: function () { this.isImmediatePropagationStopped = h; this.stopPropagation() }, isDefaultPrevented: g, isPropagationStopped: g, isImmediatePropagationStopped: g }; var W = function (a) { for (var b = a.relatedTarget; b && b !== this; ) try { b = b.parentNode } catch (c) { break } if (b !== this) { a.type = a.data; q.event.handle.apply(this, arguments) } }, X = function (a) { a.type = a.data; q.event.handle.apply(this, arguments) }; q.each({ mouseenter: "mouseover", mouseleave: "mouseout" }, function (a, b) { q.event.special[a] = { setup: function (c) { q.event.add(this, b, c && c.selector ? X : W, a) }, teardown: function (a) { q.event.remove(this, b, a && a.selector ? X : W) } } }); if (!q.support.submitBubbles) q.event.special.submit = { setup: function (a, b, c) { if (this.nodeName.toLowerCase() !== "form") { q.event.add(this, "click.specialSubmit." + c.guid, function (a) { var b = a.target, c = b.type; if ((c === "submit" || c === "image") && q(b).closest("form").length) return i("submit", this, arguments) }); q.event.add(this, "keypress.specialSubmit." + c.guid, function (a) { var b = a.target, c = b.type; if ((c === "text" || c === "password") && q(b).closest("form").length && a.keyCode === 13) return i("submit", this, arguments) }) } else return false }, remove: function (a, b) { q.event.remove(this, "click.specialSubmit" + (b ? "." + b.guid : "")); q.event.remove(this, "keypress.specialSubmit" + (b ? "." + b.guid : "")) } }; if (!q.support.changeBubbles) { var Y = /textarea|input|select/i; function Z(a) { var b = a.type, c = a.value; if (b === "radio" || b === "checkbox") c = a.checked; else if (b === "select-multiple") c = a.selectedIndex > -1 ? q.map(a.options, function (a) { return a.selected }).join("-") : ""; else if (a.nodeName.toLowerCase() === "select") c = a.selectedIndex; return c } function $(a, c) { var d = a.target, e, f; if (!(!Y.test(d.nodeName) || d.readOnly)) { e = q.data(d, "_change_data"); f = Z(d); if (a.type !== "focusout" || d.type !== "radio") q.data(d, "_change_data", f); if (!(e === b || f === e)) if (e != null || f) { a.type = "change"; return q.event.trigger(a, c, d) } } } q.event.special.change = { filters: { focusout: $, click: function (a) { var b = a.target, c = b.type; if (c === "radio" || c === "checkbox" || b.nodeName.toLowerCase() === "select") return $.call(this, a) }, keydown: function (a) { var b = a.target, c = b.type; if (a.keyCode === 13 && b.nodeName.toLowerCase() !== "textarea" || a.keyCode === 32 && (c === "checkbox" || c === "radio") || c === "select-multiple") return $.call(this, a) }, beforeactivate: function (a) { a = a.target; a.nodeName.toLowerCase() === "input" && a.type === "radio" && q.data(a, "_change_data", Z(a)) } }, setup: function (a, b, c) { for (var d in _) q.event.add(this, d + ".specialChange." + c.guid, _[d]); return Y.test(this.nodeName) }, remove: function (a, b) { for (var c in _) q.event.remove(this, c + ".specialChange" + (b ? "." + b.guid : ""), _[c]); return Y.test(this.nodeName) } }; var _ = q.event.special.change.filters } t.addEventListener && q.each({ focus: "focusin", blur: "focusout" }, function (a, b) { function c(a) { a = q.event.fix(a); a.type = b; return q.event.handle.call(this, a) } q.event.special[b] = { setup: function () { this.addEventListener(a, c, true) }, teardown: function () { this.removeEventListener(a, c, true) } } }); q.each(["bind", "one"], function (a, c) { q.fn[c] = function (a, d, e) { if (typeof a === "object") { for (var f in a) this[c](f, d, a[f], e); return this } if (q.isFunction(d)) { e = d; d = b } var g = c === "one" ? q.proxy(e, function (a) { q(this).unbind(a, g); return e.apply(this, arguments) }) : e; return a === "unload" && c !== "one" ? this.one(a, d, e) : this.each(function () { q.event.add(this, a, g, d) }) } }); q.fn.extend({ unbind: function (a, b) { if (typeof a === "object" && !a.preventDefault) { for (var c in a) this.unbind(c, a[c]); return this } return this.each(function () { q.event.remove(this, a, b) }) }, trigger: function (a, b) { return this.each(function () { q.event.trigger(a, b, this) }) }, triggerHandler: function (a, b) { if (this[0]) { a = q.Event(a); a.preventDefault(); a.stopPropagation(); q.event.trigger(a, b, this[0]); return a.result } }, toggle: function (a) { for (var b = arguments, c = 1; c < b.length; ) q.proxy(a, b[c++]); return this.click(q.proxy(a, function (d) { var e = (q.data(this, "lastToggle" + a.guid) || 0) % c; q.data(this, "lastToggle" + a.guid, e + 1); d.preventDefault(); return b[e].apply(this, arguments) || false })) }, hover: function (a, b) { return this.mouseenter(a).mouseleave(b || a) } }); q.each(["live", "die"], function (a, c) { q.fn[c] = function (a, d, e) { var f, g = 0; if (q.isFunction(d)) { e = d; d = b } for (a = (a || "").split(/\s+/); (f = a[g++]) != null; ) { f = f === "focus" ? "focusin" : f === "blur" ? "focusout" : f === "hover" ? a.push("mouseleave") && "mouseenter" : f; c === "live" ? q(this.context).bind(k(f, this.selector), { data: d, selector: this.selector, live: f }, e) : q(this.context).unbind(k(f, this.selector), e ? { guid: e.guid + this.selector + f} : null) } return this } }); q.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".split(" "), function (a, b) { q.fn[b] = function (a) { return a ? this.bind(b, a) : this.trigger(b) }; if (q.attrFn) q.attrFn[b] = true }); a.attachEvent && !a.addEventListener && a.attachEvent("onunload", function () { for (var a in q.cache) if (q.cache[a].handle) try { q.event.remove(q.cache[a].handle.elem) } catch (b) { } }); (function () { function d(a, b, c, d, e, f) { e = 0; for (var g = d.length; e < g; e++) { var h = d[e]; if (h) { h = h[a]; for (var i = false; h; ) { if (h.sizcache === c) { i = d[h.sizset]; break } if (h.nodeType === 1) { if (!f) { h.sizcache = c; h.sizset = e } if (typeof b !== "string") { if (h === b) { i = true; break } } else if (j.filter(b, [h]).length > 0) { i = h; break } } h = h[a] } d[e] = i } } } function c(a, b, c, d, e, f) { e = 0; for (var g = d.length; e < g; e++) { var h = d[e]; if (h) { h = h[a]; for (var i = false; h; ) { if (h.sizcache === c) { i = d[h.sizset]; break } if (h.nodeType === 1 && !f) { h.sizcache = c; h.sizset = e } if (h.nodeName.toLowerCase() === b) { i = h; break } h = h[a] } d[e] = i } } } function a(b) { for (var c = "", d, e = 0; b[e]; e++) { d = b[e]; if (d.nodeType === 3 || d.nodeType === 4) c += d.nodeValue; else if (d.nodeType !== 8) c += a(d.childNodes) } return c } var e = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g, f = 0, g = Object.prototype.toString, h = false, i = true; [0, 0].sort(function () { i = false; return 0 }); var j = function (a, b, c, d) { c = c || []; var f = b = b || t; if (b.nodeType !== 1 && b.nodeType !== 9) return []; if (!a || typeof a !== "string") return c; for (var h = [], i, m, o, p, q = true, v = s(b), w = a; (e.exec(""), i = e.exec(w)) !== null; ) { w = i[3]; h.push(i[1]); if (i[2]) { p = i[3]; break } } if (h.length > 1 && l.exec(a)) if (h.length === 2 && k.relative[h[0]]) m = u(h[0] + h[1], b); else for (m = k.relative[h[0]] ? [b] : j(h.shift(), b); h.length; ) { a = h.shift(); if (k.relative[a]) a += h.shift(); m = u(a, m) } else { if (!d && h.length > 1 && b.nodeType === 9 && !v && k.match.ID.test(h[0]) && !k.match.ID.test(h[h.length - 1])) { i = j.find(h.shift(), b, v); b = i.expr ? j.filter(i.expr, i.set)[0] : i.set[0] } if (b) { i = d ? { expr: h.pop(), set: n(d)} : j.find(h.pop(), h.length === 1 && (h[0] === "~" || h[0] === "+") && b.parentNode ? b.parentNode : b, v); m = i.expr ? j.filter(i.expr, i.set) : i.set; if (h.length > 0) o = n(m); else q = false; for (; h.length; ) { var x = h.pop(); i = x; if (k.relative[x]) i = h.pop(); else x = ""; if (i == null) i = b; k.relative[x](o, i, v) } } else o = [] } o || (o = m); o || j.error(x || a); if (g.call(o) === "[object Array]") if (q) if (b && b.nodeType === 1) for (a = 0; o[a] != null; a++) { if (o[a] && (o[a] === true || o[a].nodeType === 1 && r(b, o[a]))) c.push(m[a]) } else for (a = 0; o[a] != null; a++) o[a] && o[a].nodeType === 1 && c.push(m[a]); else c.push.apply(c, o); else n(o, c); if (p) { j(p, f, c, d); j.uniqueSort(c) } return c }; j.uniqueSort = function (a) { if (p) { h = i; a.sort(p); if (h) for (var b = 1; b < a.length; b++) a[b] === a[b - 1] && a.splice(b--, 1) } return a }; j.matches = function (a, b) { return j(a, null, null, b) }; j.find = function (a, b, c) { var d, e; if (!a) return []; for (var f = 0, g = k.order.length; f < g; f++) { var h = k.order[f]; if (e = k.leftMatch[h].exec(a)) { var i = e[1]; e.splice(1, 1); if (i.substr(i.length - 1) !== "\\") { e[1] = (e[1] || "").replace(/\\/g, ""); d = k.find[h](e, b, c); if (d != null) { a = a.replace(k.match[h], ""); break } } } } d || (d = b.getElementsByTagName("*")); return { set: d, expr: a} }; j.filter = function (a, c, d, e) { for (var f = a, g = [], h = c, i, l, m = c && c[0] && s(c[0]); a && c.length; ) { for (var n in k.filter) if ((i = k.leftMatch[n].exec(a)) != null && i[2]) { var o = k.filter[n], p, q; q = i[1]; l = false; i.splice(1, 1); if (q.substr(q.length - 1) !== "\\") { if (h === g) g = []; if (k.preFilter[n]) if (i = k.preFilter[n](i, h, d, g, e, m)) { if (i === true) continue } else l = p = true; if (i) for (var r = 0; (q = h[r]) != null; r++) if (q) { p = o(q, i, r, h); var t = e ^ !!p; if (d && p != null) if (t) l = true; else h[r] = false; else if (t) { g.push(q); l = true } } if (p !== b) { d || (h = g); a = a.replace(k.match[n], ""); if (!l) return []; break } } } if (a === f) if (l == null) j.error(a); else break; f = a } return h }; j.error = function (a) { throw "Syntax error, unrecognized expression: " + a }; var k = j.selectors = { order: ["ID", "NAME", "TAG"], match: { ID: /#((?:[\w\u00c0-\uFFFF-]|\\.)+)/, CLASS: /\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/, NAME: /\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/, ATTR: /\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/, TAG: /^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/, CHILD: /:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/, POS: /:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/, PSEUDO: /:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/ }, leftMatch: {}, attrMap: { "class": "className", "for": "htmlFor" }, attrHandle: { href: function (a) { return a.getAttribute("href") } }, relative: { "+": function (a, b) { var c = typeof b === "string", d = c && !/\W/.test(b); c = c && !d; if (d) b = b.toLowerCase(); d = 0; for (var e = a.length, f; d < e; d++) if (f = a[d]) { for (; (f = f.previousSibling) && f.nodeType !== 1; ); a[d] = c || f && f.nodeName.toLowerCase() === b ? f || false : f === b } c && j.filter(b, a, true) }, ">": function (a, b) { var c = typeof b === "string"; if (c && !/\W/.test(b)) { b = b.toLowerCase(); for (var d = 0, e = a.length; d < e; d++) { var f = a[d]; if (f) { c = f.parentNode; a[d] = c.nodeName.toLowerCase() === b ? c : false } } } else { d = 0; for (e = a.length; d < e; d++) if (f = a[d]) a[d] = c ? f.parentNode : f.parentNode === b; c && j.filter(b, a, true) } }, "": function (a, b, e) { var g = f++, h = d; if (typeof b === "string" && !/\W/.test(b)) { var i = b = b.toLowerCase(); h = c } h("parentNode", b, g, a, i, e) }, "~": function (a, b, e) { var g = f++, h = d; if (typeof b === "string" && !/\W/.test(b)) { var i = b = b.toLowerCase(); h = c } h("previousSibling", b, g, a, i, e) } }, find: { ID: function (a, b, c) { if (typeof b.getElementById !== "undefined" && !c) return (a = b.getElementById(a[1])) ? [a] : [] }, NAME: function (a, b) { if (typeof b.getElementsByName !== "undefined") { var c = []; b = b.getElementsByName(a[1]); for (var d = 0, e = b.length; d < e; d++) b[d].getAttribute("name") === a[1] && c.push(b[d]); return c.length === 0 ? null : c } }, TAG: function (a, b) { return b.getElementsByTagName(a[1]) } }, preFilter: { CLASS: function (a, b, c, d, e, f) { a = " " + a[1].replace(/\\/g, "") + " "; if (f) return a; f = 0; for (var g; (g = b[f]) != null; f++) if (g) if (e ^ (g.className && (" " + g.className + " ").replace(/[\t\n]/g, " ").indexOf(a) >= 0)) c || d.push(g); else if (c) b[f] = false; return false }, ID: function (a) { return a[1].replace(/\\/g, "") }, TAG: function (a) { return a[1].toLowerCase() }, CHILD: function (a) { if (a[1] === "nth") { var b = /(-?)(\d*)n((?:\+|-)?\d*)/.exec(a[2] === "even" && "2n" || a[2] === "odd" && "2n+1" || !/\D/.test(a[2]) && "0n+" + a[2] || a[2]); a[2] = b[1] + (b[2] || 1) - 0; a[3] = b[3] - 0 } a[0] = f++; return a }, ATTR: function (a, b, c, d, e, f) { b = a[1].replace(/\\/g, ""); if (!f && k.attrMap[b]) a[1] = k.attrMap[b]; if (a[2] === "~=") a[4] = " " + a[4] + " "; return a }, PSEUDO: function (a, b, c, d, f) { if (a[1] === "not") if ((e.exec(a[3]) || "").length > 1 || /^\w/.test(a[3])) a[3] = j(a[3], null, null, b); else { a = j.filter(a[3], b, c, true ^ f); c || d.push.apply(d, a); return false } else if (k.match.POS.test(a[0]) || k.match.CHILD.test(a[0])) return true; return a }, POS: function (a) { a.unshift(true); return a } }, filters: { enabled: function (a) { return a.disabled === false && a.type !== "hidden" }, disabled: function (a) { return a.disabled === true }, checked: function (a) { return a.checked === true }, selected: function (a) { return a.selected === true }, parent: function (a) { return !!a.firstChild }, empty: function (a) { return !a.firstChild }, has: function (a, b, c) { return !!j(c[3], a).length }, header: function (a) { return /h\d/i.test(a.nodeName) }, text: function (a) { return "text" === a.type }, radio: function (a) { return "radio" === a.type }, checkbox: function (a) { return "checkbox" === a.type }, file: function (a) { return "file" === a.type }, password: function (a) { return "password" === a.type }, submit: function (a) { return "submit" === a.type }, image: function (a) { return "image" === a.type }, reset: function (a) { return "reset" === a.type }, button: function (a) { return "button" === a.type || a.nodeName.toLowerCase() === "button" }, input: function (a) { return /input|select|textarea|button/i.test(a.nodeName) } }, setFilters: { first: function (a, b) { return b === 0 }, last: function (a, b, c, d) { return b === d.length - 1 }, even: function (a, b) { return b % 2 === 0 }, odd: function (a, b) { return b % 2 === 1 }, lt: function (a, b, c) { return b < c[3] - 0 }, gt: function (a, b, c) { return b > c[3] - 0 }, nth: function (a, b, c) { return c[3] - 0 === b }, eq: function (a, b, c) { return c[3] - 0 === b } }, filter: { PSEUDO: function (b, c, d, e) { var f = c[1], g = k.filters[f]; if (g) return g(b, d, c, e); else if (f === "contains") return (b.textContent || b.innerText || a([b]) || "").indexOf(c[3]) >= 0; else if (f === "not") { c = c[3]; d = 0; for (e = c.length; d < e; d++) if (c[d] === b) return false; return true } else j.error("Syntax error, unrecognized expression: " + f) }, CHILD: function (a, b) { var c = b[1], d = a; switch (c) { case "only": case "first": for (; d = d.previousSibling; ) if (d.nodeType === 1) return false; if (c === "first") return true; d = a; case "last": for (; d = d.nextSibling; ) if (d.nodeType === 1) return false; return true; case "nth": c = b[2]; var e = b[3]; if (c === 1 && e === 0) return true; b = b[0]; var f = a.parentNode; if (f && (f.sizcache !== b || !a.nodeIndex)) { var g = 0; for (d = f.firstChild; d; d = d.nextSibling) if (d.nodeType === 1) d.nodeIndex = ++g; f.sizcache = b } a = a.nodeIndex - e; return c === 0 ? a === 0 : a % c === 0 && a / c >= 0 } }, ID: function (a, b) { return a.nodeType === 1 && a.getAttribute("id") === b }, TAG: function (a, b) { return b === "*" && a.nodeType === 1 || a.nodeName.toLowerCase() === b }, CLASS: function (a, b) { return (" " + (a.className || a.getAttribute("class")) + " ").indexOf(b) > -1 }, ATTR: function (a, b) { var c = b[1]; a = k.attrHandle[c] ? k.attrHandle[c](a) : a[c] != null ? a[c] : a.getAttribute(c); c = a + ""; var d = b[2]; b = b[4]; return a == null ? d === "!=" : d === "=" ? c === b : d === "*=" ? c.indexOf(b) >= 0 : d === "~=" ? (" " + c + " ").indexOf(b) >= 0 : !b ? c && a !== false : d === "!=" ? c !== b : d === "^=" ? c.indexOf(b) === 0 : d === "$=" ? c.substr(c.length - b.length) === b : d === "|=" ? c === b || c.substr(0, b.length + 1) === b + "-" : false }, POS: function (a, b, c, d) { var e = k.setFilters[b[2]]; if (e) return e(a, c, b, d) } } }, l = k.match.POS; for (var m in k.match) { k.match[m] = new RegExp(k.match[m].source + /(?![^\[]*\])(?![^\(]*\))/.source); k.leftMatch[m] = new RegExp(/(^(?:.|\r|\n)*?)/.source + k.match[m].source.replace(/\\(\d+)/g, function (a, b) { return "\\" + (b - 0 + 1) })) } var n = function (a, b) { a = Array.prototype.slice.call(a, 0); if (b) { b.push.apply(b, a); return b } return a }; try { Array.prototype.slice.call(t.documentElement.childNodes, 0) } catch (o) { n = function (a, b) { b = b || []; if (g.call(a) === "[object Array]") Array.prototype.push.apply(b, a); else if (typeof a.length === "number") for (var c = 0, d = a.length; c < d; c++) b.push(a[c]); else for (c = 0; a[c]; c++) b.push(a[c]); return b } } var p; if (t.documentElement.compareDocumentPosition) p = function (a, b) { if (!a.compareDocumentPosition || !b.compareDocumentPosition) { if (a == b) h = true; return a.compareDocumentPosition ? -1 : 1 } a = a.compareDocumentPosition(b) & 4 ? -1 : a === b ? 0 : 1; if (a === 0) h = true; return a }; else if ("sourceIndex" in t.documentElement) p = function (a, b) { if (!a.sourceIndex || !b.sourceIndex) { if (a == b) h = true; return a.sourceIndex ? -1 : 1 } a = a.sourceIndex - b.sourceIndex; if (a === 0) h = true; return a }; else if (t.createRange) p = function (a, b) { if (!a.ownerDocument || !b.ownerDocument) { if (a == b) h = true; return a.ownerDocument ? -1 : 1 } var c = a.ownerDocument.createRange(), d = b.ownerDocument.createRange(); c.setStart(a, 0); c.setEnd(a, 0); d.setStart(b, 0); d.setEnd(b, 0); a = c.compareBoundaryPoints(Range.START_TO_END, d); if (a === 0) h = true; return a }; (function () { var a = t.createElement("div"), c = "script" + (new Date).getTime(); a.innerHTML = "<a name='" + c + "'/>"; var d = t.documentElement; d.insertBefore(a, d.firstChild); if (t.getElementById(c)) { k.find.ID = function (a, c, d) { if (typeof c.getElementById !== "undefined" && !d) return (c = c.getElementById(a[1])) ? c.id === a[1] || typeof c.getAttributeNode !== "undefined" && c.getAttributeNode("id").nodeValue === a[1] ? [c] : b : [] }; k.filter.ID = function (a, b) { var c = typeof a.getAttributeNode !== "undefined" && a.getAttributeNode("id"); return a.nodeType === 1 && c && c.nodeValue === b } } d.removeChild(a); d = a = null })(); (function () { var a = t.createElement("div"); a.appendChild(t.createComment("")); if (a.getElementsByTagName("*").length > 0) k.find.TAG = function (a, b) { b = b.getElementsByTagName(a[1]); if (a[1] === "*") { a = []; for (var c = 0; b[c]; c++) b[c].nodeType === 1 && a.push(b[c]); b = a } return b }; a.innerHTML = "<a href='#'></a>"; if (a.firstChild && typeof a.firstChild.getAttribute !== "undefined" && a.firstChild.getAttribute("href") !== "#") k.attrHandle.href = function (a) { return a.getAttribute("href", 2) }; a = null })(); t.querySelectorAll && function () { var a = j, b = t.createElement("div"); b.innerHTML = "<p class='TEST'></p>"; if (!(b.querySelectorAll && b.querySelectorAll(".TEST").length === 0)) { j = function (b, c, d, e) { c = c || t; if (!e && c.nodeType === 9 && !s(c)) try { return n(c.querySelectorAll(b), d) } catch (f) { } return a(b, c, d, e) }; for (var c in a) j[c] = a[c]; b = null } } (); (function () { var a = t.createElement("div"); a.innerHTML = "<div class='test e'></div><div class='test'></div>"; if (!(!a.getElementsByClassName || a.getElementsByClassName("e").length === 0)) { a.lastChild.className = "e"; if (a.getElementsByClassName("e").length !== 1) { k.order.splice(1, 0, "CLASS"); k.find.CLASS = function (a, b, c) { if (typeof b.getElementsByClassName !== "undefined" && !c) return b.getElementsByClassName(a[1]) }; a = null } } })(); var r = t.compareDocumentPosition ? function (a, b) { return a.compareDocumentPosition(b) & 16 } : function (a, b) { return a !== b && (a.contains ? a.contains(b) : true) }, s = function (a) { return (a = (a ? a.ownerDocument || a : 0).documentElement) ? a.nodeName !== "HTML" : false }, u = function (a, b) { var c = [], d = "", e; for (b = b.nodeType ? [b] : b; e = k.match.PSEUDO.exec(a); ) { d += e[0]; a = a.replace(k.match.PSEUDO, "") } a = k.relative[a] ? a + "*" : a; e = 0; for (var f = b.length; e < f; e++) j(a, b[e], c); return j.filter(d, c) }; q.find = j; q.expr = j.selectors; q.expr[":"] = q.expr.filters; q.unique = j.uniqueSort; q.getText = a; q.isXMLDoc = s; q.contains = r })(); var ba = /Until$/, bb = /^(?:parents|prevUntil|prevAll)/, bc = /,/; H = Array.prototype.slice; var bd = function (a, b, c) { if (q.isFunction(b)) return q.grep(a, function (a, d) { return !!b.call(a, d, a) === c }); else if (b.nodeType) return q.grep(a, function (a) { return a === b === c }); else if (typeof b === "string") { var d = q.grep(a, function (a) { return a.nodeType === 1 }); if (w.test(b)) return q.filter(b, d, !c); else b = q.filter(b, d) } return q.grep(a, function (a) { return q.inArray(a, b) >= 0 === c }) }; q.fn.extend({ find: function (a) { for (var b = this.pushStack("", "find", a), c = 0, d = 0, e = this.length; d < e; d++) { c = b.length; q.find(a, this[d], b); if (d > 0) for (var f = c; f < b.length; f++) for (var g = 0; g < c; g++) if (b[g] === b[f]) { b.splice(f--, 1); break } } return b }, has: function (a) { var b = q(a); return this.filter(function () { for (var a = 0, c = b.length; a < c; a++) if (q.contains(this, b[a])) return true }) }, not: function (a) { return this.pushStack(bd(this, a, false), "not", a) }, filter: function (a) { return this.pushStack(bd(this, a, true), "filter", a) }, is: function (a) { return !!a && q.filter(a, this).length > 0 }, closest: function (a, b) { if (q.isArray(a)) { var c = [], d = this[0], e, f = {}, g; if (d && a.length) { e = 0; for (var h = a.length; e < h; e++) { g = a[e]; f[g] || (f[g] = q.expr.match.POS.test(g) ? q(g, b || this.context) : g) } for (; d && d.ownerDocument && d !== b; ) { for (g in f) { e = f[g]; if (e.jquery ? e.index(d) > -1 : q(d).is(e)) { c.push({ selector: g, elem: d }); delete f[g] } } d = d.parentNode } } return c } var i = q.expr.match.POS.test(a) ? q(a, b || this.context) : null; return this.map(function (c, d) { for (; d && d.ownerDocument && d !== b; ) { if (i ? i.index(d) > -1 : q(d).is(a)) return d; d = d.parentNode } return null }) }, index: function (a) { if (!a || typeof a === "string") return q.inArray(this[0], a ? q(a) : this.parent().children()); return q.inArray(a.jquery ? a[0] : a, this) }, add: function (a, b) { a = typeof a === "string" ? q(a, b || this.context) : q.makeArray(a); b = q.merge(this.get(), a); return this.pushStack(l(a[0]) || l(b[0]) ? b : q.unique(b)) }, andSelf: function () { return this.add(this.prevObject) } }); q.each({ parent: function (a) { return (a = a.parentNode) && a.nodeType !== 11 ? a : null }, parents: function (a) { return q.dir(a, "parentNode") }, parentsUntil: function (a, b, c) { return q.dir(a, "parentNode", c) }, next: function (a) { return q.nth(a, 2, "nextSibling") }, prev: function (a) { return q.nth(a, 2, "previousSibling") }, nextAll: function (a) { return q.dir(a, "nextSibling") }, prevAll: function (a) { return q.dir(a, "previousSibling") }, nextUntil: function (a, b, c) { return q.dir(a, "nextSibling", c) }, prevUntil: function (a, b, c) { return q.dir(a, "previousSibling", c) }, siblings: function (a) { return q.sibling(a.parentNode.firstChild, a) }, children: function (a) { return q.sibling(a.firstChild) }, contents: function (a) { return q.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document : q.makeArray(a.childNodes) } }, function (a, b) { q.fn[a] = function (c, d) { var e = q.map(this, b, c); ba.test(a) || (d = c); if (d && typeof d === "string") e = q.filter(d, e); e = this.length > 1 ? q.unique(e) : e; if ((this.length > 1 || bc.test(d)) && bb.test(a)) e = e.reverse(); return this.pushStack(e, a, H.call(arguments).join(",")) } }); q.extend({ filter: function (a, b, c) { if (c) a = ":not(" + a + ")"; return q.find.matches(a, b) }, dir: function (a, c, d) { var e = []; for (a = a[c]; a && a.nodeType !== 9 && (d === b || a.nodeType !== 1 || !q(a).is(d)); ) { a.nodeType === 1 && e.push(a); a = a[c] } return e }, nth: function (a, b, c) { b = b || 1; for (var d = 0; a; a = a[c]) if (a.nodeType === 1 && ++d === b) break; return a }, sibling: function (a, b) { for (var c = []; a; a = a.nextSibling) a.nodeType === 1 && a !== b && c.push(a); return c } }); var be = / jQuery\d+="(?:\d+|null)"/g, bf = /^\s+/, bg = /(<([\w:]+)[^>]*?)\/>/g, bh = /^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i, bi = /<([\w:]+)/, bj = /<tbody/i, bk = /<|&\w+;/, bl = /checked\s*(?:[^=]|=\s*.checked.)/i, bm = function (a, b, c) { return bh.test(c) ? a : b + "></" + c + ">" }, bn = { option: [1, "<select multiple='multiple'>", "</select>"], legend: [1, "<fieldset>", "</fieldset>"], thead: [1, "<table>", "</table>"], tr: [2, "<table><tbody>", "</tbody></table>"], td: [3, "<table><tbody><tr>", "</tr></tbody></table>"], col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"], area: [1, "<map>", "</map>"], _default: [0, "", ""] }; bn.optgroup = bn.option; bn.tbody = bn.tfoot = bn.colgroup = bn.caption = bn.thead; bn.th = bn.td; if (!q.support.htmlSerialize) bn._default = [1, "div<div>", "</div>"]; q.fn.extend({ text: function (a) { if (q.isFunction(a)) return this.each(function (b) { var c = q(this); c.text(a.call(this, b, c.text())) }); if (typeof a !== "object" && a !== b) return this.empty().append((this[0] && this[0].ownerDocument || t).createTextNode(a)); return q.getText(this) }, wrapAll: function (a) { if (q.isFunction(a)) return this.each(function (b) { q(this).wrapAll(a.call(this, b)) }); if (this[0]) { var b = q(a, this[0].ownerDocument).eq(0).clone(true); this[0].parentNode && b.insertBefore(this[0]); b.map(function () { for (var a = this; a.firstChild && a.firstChild.nodeType === 1; ) a = a.firstChild; return a }).append(this) } return this }, wrapInner: function (a) { if (q.isFunction(a)) return this.each(function (b) { q(this).wrapInner(a.call(this, b)) }); return this.each(function () { var b = q(this), c = b.contents(); c.length ? c.wrapAll(a) : b.append(a) }) }, wrap: function (a) { return this.each(function () { q(this).wrapAll(a) }) }, unwrap: function () { return this.parent().each(function () { q.nodeName(this, "body") || q(this).replaceWith(this.childNodes) }).end() }, append: function () { return this.domManip(arguments, true, function (a) { this.nodeType === 1 && this.appendChild(a) }) }, prepend: function () { return this.domManip(arguments, true, function (a) { this.nodeType === 1 && this.insertBefore(a, this.firstChild) }) }, before: function () { if (this[0] && this[0].parentNode) return this.domManip(arguments, false, function (a) { this.parentNode.insertBefore(a, this) }); else if (arguments.length) { var a = q(arguments[0]); a.push.apply(a, this.toArray()); return this.pushStack(a, "before", arguments) } }, after: function () { if (this[0] && this[0].parentNode) return this.domManip(arguments, false, function (a) { this.parentNode.insertBefore(a, this.nextSibling) }); else if (arguments.length) { var a = this.pushStack(this, "after", arguments); a.push.apply(a, q(arguments[0]).toArray()); return a } }, clone: function (a) { var b = this.map(function () { if (!q.support.noCloneEvent && !q.isXMLDoc(this)) { var a = this.outerHTML, b = this.ownerDocument; if (!a) { a = b.createElement("div"); a.appendChild(this.cloneNode(true)); a = a.innerHTML } return q.clean([a.replace(be, "").replace(bf, "")], b)[0] } else return this.cloneNode(true) }); if (a === true) { m(this, b); m(this.find("*"), b.find("*")) } return b }, html: function (a) { if (a === b) return this[0] && this[0].nodeType === 1 ? this[0].innerHTML.replace(be, "") : null; else if (typeof a === "string" && !/<script/i.test(a) && (q.support.leadingWhitespace || !bf.test(a)) && !bn[(bi.exec(a) || ["", ""])[1].toLowerCase()]) { a = a.replace(bg, bm); try { for (var c = 0, d = this.length; c < d; c++) if (this[c].nodeType === 1) { q.cleanData(this[c].getElementsByTagName("*")); this[c].innerHTML = a } } catch (e) { this.empty().append(a) } } else q.isFunction(a) ? this.each(function (b) { var c = q(this), d = c.html(); c.empty().append(function () { return a.call(this, b, d) }) }) : this.empty().append(a); return this }, replaceWith: function (a) { if (this[0] && this[0].parentNode) { if (q.isFunction(a)) return this.each(function (b) { var c = q(this), d = c.html(); c.replaceWith(a.call(this, b, d)) }); else a = q(a).detach(); return this.each(function () { var b = this.nextSibling, c = this.parentNode; q(this).remove(); b ? q(b).before(a) : q(c).append(a) }) } else return this.pushStack(q(q.isFunction(a) ? a() : a), "replaceWith", a) }, detach: function (a) { return this.remove(a, true) }, domManip: function (a, c, e) { function f(a) { return q.nodeName(a, "table") ? a.getElementsByTagName("tbody")[0] || a.appendChild(a.ownerDocument.createElement("tbody")) : a } var g, h, i = a[0], j = []; if (!q.support.checkClone && arguments.length === 3 && typeof i === "string" && bl.test(i)) return this.each(function () { q(this).domManip(a, c, e, true) }); if (q.isFunction(i)) return this.each(function (d) { var f = q(this); a[0] = i.call(this, d, c ? f.html() : b); f.domManip(a, c, e) }); if (this[0]) { g = a[0] && a[0].parentNode && a[0].parentNode.nodeType === 11 ? { fragment: a[0].parentNode} : n(a, this, j); if (h = g.fragment.firstChild) { c = c && q.nodeName(h, "tr"); for (var k = 0, l = this.length; k < l; k++) e.call(c ? f(this[k], h) : this[k], g.cacheable || this.length > 1 || k > 0 ? g.fragment.cloneNode(true) : g.fragment) } j && q.each(j, d) } return this } }); q.fragments = {}; q.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function (a, b) { q.fn[a] = function (c) { var d = []; c = q(c); for (var e = 0, f = c.length; e < f; e++) { var g = (e > 0 ? this.clone(true) : this).get(); q.fn[b].apply(q(c[e]), g); d = d.concat(g) } return this.pushStack(d, a, c.selector) } }); q.each({ remove: function (a, b) { if (!a || q.filter(a, [this]).length) { if (!b && this.nodeType === 1) { q.cleanData(this.getElementsByTagName("*")); q.cleanData([this]) } this.parentNode && this.parentNode.removeChild(this) } }, empty: function () { for (this.nodeType === 1 && q.cleanData(this.getElementsByTagName("*")); this.firstChild; ) this.removeChild(this.firstChild) } }, function (a, b) { q.fn[a] = function () { return this.each(b, arguments) } }); q.extend({ clean: function (a, b, c, d) { b = b || t; if (typeof b.createElement === "undefined") b = b.ownerDocument || b[0] && b[0].ownerDocument || t; var e = []; q.each(a, function (a, c) { if (typeof c === "number") c += ""; if (c) { if (typeof c === "string" && !bk.test(c)) c = b.createTextNode(c); else if (typeof c === "string") { c = c.replace(bg, bm); var d = (bi.exec(c) || ["", ""])[1].toLowerCase(), f = bn[d] || bn._default, g = f[0]; a = b.createElement("div"); for (a.innerHTML = f[1] + c + f[2]; g--; ) a = a.lastChild; if (!q.support.tbody) { g = bj.test(c); d = d === "table" && !g ? a.firstChild && a.firstChild.childNodes : f[1] === "<table>" && !g ? a.childNodes : []; for (f = d.length - 1; f >= 0; --f) q.nodeName(d[f], "tbody") && !d[f].childNodes.length && d[f].parentNode.removeChild(d[f]) } !q.support.leadingWhitespace && bf.test(c) && a.insertBefore(b.createTextNode(bf.exec(c)[0]), a.firstChild); c = q.makeArray(a.childNodes) } if (c.nodeType) e.push(c); else e = q.merge(e, c) } }); if (c) for (a = 0; e[a]; a++) if (d && q.nodeName(e[a], "script") && (!e[a].type || e[a].type.toLowerCase() === "text/javascript")) d.push(e[a].parentNode ? e[a].parentNode.removeChild(e[a]) : e[a]); else { e[a].nodeType === 1 && e.splice.apply(e, [a + 1, 0].concat(q.makeArray(e[a].getElementsByTagName("script")))); c.appendChild(e[a]) } return e }, cleanData: function (a) { for (var b = 0, c; (c = a[b]) != null; b++) { q.event.remove(c); q.removeData(c) } } }); var bo = /z-?index|font-?weight|opacity|zoom|line-?height/i, bp = /alpha\([^)]*\)/, bq = /opacity=([^)]*)/, br = /float/i, bs = /-([a-z])/ig, bt = /([A-Z])/g, bu = /^-?\d+(?:px)?$/i, bv = /^-?\d/, bw = { position: "absolute", visibility: "hidden", display: "block" }, bx = ["Left", "Right"], by = ["Top", "Bottom"], bz = t.defaultView && t.defaultView.getComputedStyle, bA = q.support.cssFloat ? "cssFloat" : "styleFloat", bB = function (a, b) { return b.toUpperCase() }; q.fn.css = function (a, c) { return e(this, a, c, true, function (a, c, d) { if (d === b) return q.curCSS(a, c); if (typeof d === "number" && !bo.test(c)) d += "px"; q.style(a, c, d) }) }; q.extend({ style: function (a, c, d) { if (!a || a.nodeType === 3 || a.nodeType === 8) return b; if ((c === "width" || c === "height") && parseFloat(d) < 0) d = b; var e = a.style || a, f = d !== b; if (!q.support.opacity && c === "opacity") { if (f) { e.zoom = 1; c = parseInt(d, 10) + "" === "NaN" ? "" : "alpha(opacity=" + d * 100 + ")"; a = e.filter || q.curCSS(a, "filter") || ""; e.filter = bp.test(a) ? a.replace(bp, c) : c } return e.filter && e.filter.indexOf("opacity=") >= 0 ? parseFloat(bq.exec(e.filter)[1]) / 100 + "" : "" } if (br.test(c)) c = bA; c = c.replace(bs, bB); if (f) e[c] = d; return e[c] }, css: function (a, b, c, d) { if (b === "width" || b === "height") { var e, f = b === "width" ? bx : by; function g() { e = b === "width" ? a.offsetWidth : a.offsetHeight; d !== "border" && q.each(f, function () { d || (e -= parseFloat(q.curCSS(a, "padding" + this, true)) || 0); if (d === "margin") e += parseFloat(q.curCSS(a, "margin" + this, true)) || 0; else e -= parseFloat(q.curCSS(a, "border" + this + "Width", true)) || 0 }) } a.offsetWidth !== 0 ? g() : q.swap(a, bw, g); return Math.max(0, Math.round(e)) } return q.curCSS(a, b, c) }, curCSS: function (a, b, c) { var d, e = a.style; if (!q.support.opacity && b === "opacity" && a.currentStyle) { d = bq.test(a.currentStyle.filter || "") ? parseFloat(RegExp.$1) / 100 + "" : ""; return d === "" ? "1" : d } if (br.test(b)) b = bA; if (!c && e && e[b]) d = e[b]; else if (bz) { if (br.test(b)) b = "float"; b = b.replace(bt, "-$1").toLowerCase(); e = a.ownerDocument.defaultView; if (!e) return null; if (a = e.getComputedStyle(a, null)) d = a.getPropertyValue(b); if (b === "opacity" && d === "") d = "1" } else if (a.currentStyle) { c = b.replace(bs, bB); d = a.currentStyle[b] || a.currentStyle[c]; if (!bu.test(d) && bv.test(d)) { b = e.left; var f = a.runtimeStyle.left; a.runtimeStyle.left = a.currentStyle.left; e.left = c === "fontSize" ? "1em" : d || 0; d = e.pixelLeft + "px"; e.left = b; a.runtimeStyle.left = f } } return d }, swap: function (a, b, c) { var d = {}; for (var e in b) { d[e] = a.style[e]; a.style[e] = b[e] } c.call(a); for (e in b) a.style[e] = d[e] } }); if (q.expr && q.expr.filters) { q.expr.filters.hidden = function (a) { var b = a.offsetWidth, c = a.offsetHeight, d = a.nodeName.toLowerCase() === "tr"; return b === 0 && c === 0 && !d ? true : b > 0 && c > 0 && !d ? false : q.curCSS(a, "display") === "none" }; q.expr.filters.visible = function (a) { return !q.expr.filters.hidden(a) } } var bC = f(), bD = /<script(.|\s)*?\/script>/gi, bE = /select|textarea/i, bF = /color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i, bG = /=\?(&|$)/, bH = /\?/, bI = /(\?|&)_=.*?(&|$)/, bJ = /^(\w+:)?\/\/([^\/?#]+)/, bK = /%20/g; q.fn.extend({ _load: q.fn.load, load: function (a, b, c) { if (typeof a !== "string") return this._load(a); else if (!this.length) return this; var d = a.indexOf(" "); if (d >= 0) { var e = a.slice(d, a.length); a = a.slice(0, d) } d = "GET"; if (b) if (q.isFunction(b)) { c = b; b = null } else if (typeof b === "object") { b = q.param(b, q.ajaxSettings.traditional); d = "POST" } var f = this; q.ajax({ url: a, type: d, dataType: "html", data: b, complete: function (a, b) { if (b === "success" || b === "notmodified") f.html(e ? q("<div />").append(a.responseText.replace(bD, "")).find(e) : a.responseText); c && f.each(c, [a.responseText, b, a]) } }); return this }, serialize: function () { return q.param(this.serializeArray()) }, serializeArray: function () { return this.map(function () { return this.elements ? q.makeArray(this.elements) : this }).filter(function () { return this.name && !this.disabled && (this.checked || bE.test(this.nodeName) || bF.test(this.type)) }).map(function (a, b) { a = q(this).val(); return a == null ? null : q.isArray(a) ? q.map(a, function (a) { return { name: b.name, value: a} }) : { name: b.name, value: a} }).get() } }); q.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), function (a, b) { q.fn[b] = function (a) { return this.bind(b, a) } }); q.extend({ get: function (a, b, c, d) { if (q.isFunction(b)) { d = d || c; c = b; b = null } return q.ajax({ type: "GET", url: a, data: b, success: c, dataType: d }) }, getScript: function (a, b) { return q.get(a, null, b, "script") }, getJSON: function (a, b, c) { return q.get(a, b, c, "json") }, post: function (a, b, c, d) { if (q.isFunction(b)) { d = d || c; c = b; b = {} } return q.ajax({ type: "POST", url: a, data: b, success: c, dataType: d }) }, ajaxSetup: function (a) { q.extend(q.ajaxSettings, a) }, ajaxSettings: { url: location.href, global: true, type: "GET", contentType: "application/x-www-form-urlencoded", processData: true, async: true, xhr: a.XMLHttpRequest && (a.location.protocol !== "file:" || !a.ActiveXObject) ? function () { return new a.XMLHttpRequest } : function () { try { return new a.ActiveXObject("Microsoft.XMLHTTP") } catch (b) { } }, accepts: { xml: "application/xml, text/xml", html: "text/html", script: "text/javascript, application/javascript", json: "application/json, text/javascript", text: "text/plain", _default: "*/*"} }, lastModified: {}, etag: {}, ajax: function (c) { function g(a, b) { (h.context ? q(h.context) : q.event).trigger(a, b) } function e() { h.complete && h.complete.call(l, v, j); h.global && g("ajaxComplete", [v, h]); h.global && ! --q.active && q.event.trigger("ajaxStop") } function d() { h.success && h.success.call(l, k, j, v); h.global && g("ajaxSuccess", [v, h]) } var h = q.extend(true, {}, q.ajaxSettings, c), i, j, k, l = c && c.context || h, m = h.type.toUpperCase(); if (h.data && h.processData && typeof h.data !== "string") h.data = q.param(h.data, h.traditional); if (h.dataType === "jsonp") { if (m === "GET") bG.test(h.url) || (h.url += (bH.test(h.url) ? "&" : "?") + (h.jsonp || "callback") + "=?"); else if (!h.data || !bG.test(h.data)) h.data = (h.data ? h.data + "&" : "") + (h.jsonp || "callback") + "=?"; h.dataType = "json" } if (h.dataType === "json" && (h.data && bG.test(h.data) || bG.test(h.url))) { i = h.jsonpCallback || "jsonp" + bC++; if (h.data) h.data = (h.data + "").replace(bG, "=" + i + "$1"); h.url = h.url.replace(bG, "=" + i + "$1"); h.dataType = "script"; a[i] = a[i] || function (c) { k = c; d(); e(); a[i] = b; try { delete a[i] } catch (f) { } p && p.removeChild(r) } } if (h.dataType === "script" && h.cache === null) h.cache = false; if (h.cache === false && m === "GET") { var n = f(), o = h.url.replace(bI, "$1_=" + n + "$2"); h.url = o + (o === h.url ? (bH.test(h.url) ? "&" : "?") + "_=" + n : "") } if (h.data && m === "GET") h.url += (bH.test(h.url) ? "&" : "?") + h.data; h.global && !(q.active++) && q.event.trigger("ajaxStart"); n = (n = bJ.exec(h.url)) && (n[1] && n[1] !== location.protocol || n[2] !== location.host); if (h.dataType === "script" && m === "GET" && n) { var p = t.getElementsByTagName("head")[0] || t.documentElement, r = t.createElement("script"); r.src = h.url; if (h.scriptCharset) r.charset = h.scriptCharset; if (!i) { var s = false; r.onload = r.onreadystatechange = function () { if (!s && (!this.readyState || this.readyState === "loaded" || this.readyState === "complete")) { s = true; d(); e(); r.onload = r.onreadystatechange = null; p && r.parentNode && p.removeChild(r) } } } p.insertBefore(r, p.firstChild); return b } var u = false, v = h.xhr(); if (v) { h.username ? v.open(m, h.url, h.async, h.username, h.password) : v.open(m, h.url, h.async); try { if (h.data || c && c.contentType) v.setRequestHeader("Content-Type", h.contentType); if (h.ifModified) { q.lastModified[h.url] && v.setRequestHeader("If-Modified-Since", q.lastModified[h.url]); q.etag[h.url] && v.setRequestHeader("If-None-Match", q.etag[h.url]) } n || v.setRequestHeader("X-Requested-With", "XMLHttpRequest"); v.setRequestHeader("Accept", h.dataType && h.accepts[h.dataType] ? h.accepts[h.dataType] + ", */*" : h.accepts._default) } catch (w) { } if (h.beforeSend && h.beforeSend.call(l, v, h) === false) { h.global && ! --q.active && q.event.trigger("ajaxStop"); v.abort(); return false } h.global && g("ajaxSend", [v, h]); var x = v.onreadystatechange = function (a) { if (!v || v.readyState === 0 || a === "abort") { u || e(); u = true; if (v) v.onreadystatechange = q.noop } else if (!u && v && (v.readyState === 4 || a === "timeout")) { u = true; v.onreadystatechange = q.noop; j = a === "timeout" ? "timeout" : !q.httpSuccess(v) ? "error" : h.ifModified && q.httpNotModified(v, h.url) ? "notmodified" : "success"; var b; if (j === "success") try { k = q.httpData(v, h.dataType, h) } catch (c) { j = "parsererror"; b = c } if (j === "success" || j === "notmodified") i || d(); else q.handleError(h, v, j, b); e(); a === "timeout" && v.abort(); if (h.async) v = null } }; try { var y = v.abort; v.abort = function () { v && y.call(v); x("abort") } } catch (z) { } h.async && h.timeout > 0 && setTimeout(function () { v && !u && x("timeout") }, h.timeout); try { v.send(m === "POST" || m === "PUT" || m === "DELETE" ? h.data : null) } catch (A) { q.handleError(h, v, null, A); e() } h.async || x(); return v } }, handleError: function (a, b, c, d) { if (a.error) a.error.call(a.context || a, b, c, d); if (a.global) (a.context ? q(a.context) : q.event).trigger("ajaxError", [b, a, d]) }, active: 0, httpSuccess: function (a) { try { return !a.status && location.protocol === "file:" || a.status >= 200 && a.status < 300 || a.status === 304 || a.status === 1223 || a.status === 0 } catch (b) { } return false }, httpNotModified: function (a, b) { var c = a.getResponseHeader("Last-Modified"), d = a.getResponseHeader("Etag"); if (c) q.lastModified[b] = c; if (d) q.etag[b] = d; return a.status === 304 || a.status === 0 }, httpData: function (a, b, c) { var d = a.getResponseHeader("content-type") || "", e = b === "xml" || !b && d.indexOf("xml") >= 0; a = e ? a.responseXML : a.responseText; e && a.documentElement.nodeName === "parsererror" && q.error("parsererror"); if (c && c.dataFilter) a = c.dataFilter(a, b); if (typeof a === "string") if (b === "json" || !b && d.indexOf("json") >= 0) a = q.parseJSON(a); else if (b === "script" || !b && d.indexOf("javascript") >= 0) q.globalEval(a); return a }, param: function (a, c) { function e(a, b) { b = q.isFunction(b) ? b() : b; f[f.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b) } function d(a, b) { if (q.isArray(b)) q.each(b, function (b, f) { c ? e(a, f) : d(a + "[" + (typeof f === "object" || q.isArray(f) ? b : "") + "]", f) }); else !c && b != null && typeof b === "object" ? q.each(b, function (b, c) { d(a + "[" + b + "]", c) }) : e(a, b) } var f = []; if (c === b) c = q.ajaxSettings.traditional; if (q.isArray(a) || a.jquery) q.each(a, function () { e(this.name, this.value) }); else for (var g in a) d(g, a[g]); return f.join("&").replace(bK, "+") } }); var bL = {}, bM = /toggle|show|hide/, bN = /^([+-]=)?([\d+-.]+)(.*)$/, bO, bP = [["height", "marginTop", "marginBottom", "paddingTop", "paddingBottom"], ["width", "marginLeft", "marginRight", "paddingLeft", "paddingRight"], ["opacity"]]; q.fn.extend({ show: function (a, b) { if (a || a === 0) return this.animate(o("show", 3), a, b); else { a = 0; for (b = this.length; a < b; a++) { var c = q.data(this[a], "olddisplay"); this[a].style.display = c || ""; if (q.css(this[a], "display") === "none") { c = this[a].nodeName; var d; if (bL[c]) d = bL[c]; else { var e = q("<" + c + " />").appendTo("body"); d = e.css("display"); if (d === "none") d = "block"; e.remove(); bL[c] = d } q.data(this[a], "olddisplay", d) } } a = 0; for (b = this.length; a < b; a++) this[a].style.display = q.data(this[a], "olddisplay") || ""; return this } }, hide: function (a, b) { if (a || a === 0) return this.animate(o("hide", 3), a, b); else { a = 0; for (b = this.length; a < b; a++) { var c = q.data(this[a], "olddisplay"); !c && c !== "none" && q.data(this[a], "olddisplay", q.css(this[a], "display")) } a = 0; for (b = this.length; a < b; a++) this[a].style.display = "none"; return this } }, _toggle: q.fn.toggle, toggle: function (a, b) { var c = typeof a === "boolean"; if (q.isFunction(a) && q.isFunction(b)) this._toggle.apply(this, arguments); else a == null || c ? this.each(function () { var b = c ? a : q(this).is(":hidden"); q(this)[b ? "show" : "hide"]() }) : this.animate(o("toggle", 3), a, b); return this }, fadeTo: function (a, b, c) { return this.filter(":hidden").css("opacity", 0).show().end().animate({ opacity: b }, a, c) }, animate: function (a, b, c, d) { var e = q.speed(b, c, d); if (q.isEmptyObject(a)) return this.each(e.complete); return this[e.queue === false ? "each" : "queue"](function () { var b = q.extend({}, e), c, d = this.nodeType === 1 && q(this).is(":hidden"), f = this; for (c in a) { var g = c.replace(bs, bB); if (c !== g) { a[g] = a[c]; delete a[c]; c = g } if (a[c] === "hide" && d || a[c] === "show" && !d) return b.complete.call(this); if ((c === "height" || c === "width") && this.style) { b.display = q.css(this, "display"); b.overflow = this.style.overflow } if (q.isArray(a[c])) { (b.specialEasing = b.specialEasing || {})[c] = a[c][1]; a[c] = a[c][0] } } if (b.overflow != null) this.style.overflow = "hidden"; b.curAnim = q.extend({}, a); q.each(a, function (c, e) { var g = new q.fx(f, b, c); if (bM.test(e)) g[e === "toggle" ? d ? "show" : "hide" : e](a); else { var h = bN.exec(e), i = g.cur(true) || 0; if (h) { e = parseFloat(h[2]); var j = h[3] || "px"; if (j !== "px") { f.style[c] = (e || 1) + j; i = (e || 1) / g.cur(true) * i; f.style[c] = i + j } if (h[1]) e = (h[1] === "-=" ? -1 : 1) * e + i; g.custom(i, e, j) } else g.custom(i, e, "") } }); return true }) }, stop: function (a, b) { var c = q.timers; a && this.queue([]); this.each(function () { for (var a = c.length - 1; a >= 0; a--) if (c[a].elem === this) { b && c[a](true); c.splice(a, 1) } }); b || this.dequeue(); return this } }); q.each({ slideDown: o("show", 1), slideUp: o("hide", 1), slideToggle: o("toggle", 1), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide"} }, function (a, b) { q.fn[a] = function (a, c) { return this.animate(b, a, c) } }); q.extend({ speed: function (a, b, c) { var d = a && typeof a === "object" ? a : { complete: c || !c && b || q.isFunction(a) && a, duration: a, easing: c && b || b && !q.isFunction(b) && b }; d.duration = q.fx.off ? 0 : typeof d.duration === "number" ? d.duration : q.fx.speeds[d.duration] || q.fx.speeds._default; d.old = d.complete; d.complete = function () { d.queue !== false && q(this).dequeue(); q.isFunction(d.old) && d.old.call(this) }; return d }, easing: { linear: function (a, b, c, d) { return c + d * a }, swing: function (a, b, c, d) { return (-Math.cos(a * Math.PI) / 2 + .5) * d + c } }, timers: [], fx: function (a, b, c) { this.options = b; this.elem = a; this.prop = c; if (!b.orig) b.orig = {} } }); q.fx.prototype = { update: function () { this.options.step && this.options.step.call(this.elem, this.now, this); (q.fx.step[this.prop] || q.fx.step._default)(this); if ((this.prop === "height" || this.prop === "width") && this.elem.style) this.elem.style.display = "block" }, cur: function (a) { if (this.elem[this.prop] != null && (!this.elem.style || this.elem.style[this.prop] == null)) return this.elem[this.prop]; return (a = parseFloat(q.css(this.elem, this.prop, a))) && a > -1e4 ? a : parseFloat(q.curCSS(this.elem, this.prop)) || 0 }, custom: function (a, b, c) { function d(a) { return e.step(a) } this.startTime = f(); this.start = a; this.end = b; this.unit = c || this.unit || "px"; this.now = this.start; this.pos = this.state = 0; var e = this; d.elem = this.elem; if (d() && q.timers.push(d) && !bO) bO = setInterval(q.fx.tick, 13) }, show: function () { this.options.orig[this.prop] = q.style(this.elem, this.prop); this.options.show = true; this.custom(this.prop === "width" || this.prop === "height" ? 1 : 0, this.cur()); q(this.elem).show() }, hide: function () { this.options.orig[this.prop] = q.style(this.elem, this.prop); this.options.hide = true; this.custom(this.cur(), 0) }, step: function (a) { var b = f(), c = true; if (a || b >= this.options.duration + this.startTime) { this.now = this.end; this.pos = this.state = 1; this.update(); this.options.curAnim[this.prop] = true; for (var d in this.options.curAnim) if (this.options.curAnim[d] !== true) c = false; if (c) { if (this.options.display != null) { this.elem.style.overflow = this.options.overflow; a = q.data(this.elem, "olddisplay"); this.elem.style.display = a ? a : this.options.display; if (q.css(this.elem, "display") === "none") this.elem.style.display = "block" } this.options.hide && q(this.elem).hide(); if (this.options.hide || this.options.show) for (var e in this.options.curAnim) q.style(this.elem, e, this.options.orig[e]); this.options.complete.call(this.elem) } return false } else { e = b - this.startTime; this.state = e / this.options.duration; a = this.options.easing || (q.easing.swing ? "swing" : "linear"); this.pos = q.easing[this.options.specialEasing && this.options.specialEasing[this.prop] || a](this.state, e, 0, 1, this.options.duration); this.now = this.start + (this.end - this.start) * this.pos; this.update() } return true } }; q.extend(q.fx, { tick: function () { for (var a = q.timers, b = 0; b < a.length; b++) a[b]() || a.splice(b--, 1); a.length || q.fx.stop() }, stop: function () { clearInterval(bO); bO = null }, speeds: { slow: 600, fast: 200, _default: 400 }, step: { opacity: function (a) { q.style(a.elem, "opacity", a.now) }, _default: function (a) { if (a.elem.style && a.elem.style[a.prop] != null) a.elem.style[a.prop] = (a.prop === "width" || a.prop === "height" ? Math.max(0, a.now) : a.now) + a.unit; else a.elem[a.prop] = a.now } } }); if (q.expr && q.expr.filters) q.expr.filters.animated = function (a) { return q.grep(q.timers, function (b) { return a === b.elem }).length }; q.fn.offset = "getBoundingClientRect" in t.documentElement ? function (a) { var b = this[0]; if (a) return this.each(function (b) { q.offset.setOffset(this, a, b) }); if (!b || !b.ownerDocument) return null; if (b === b.ownerDocument.body) return q.offset.bodyOffset(b); var c = b.getBoundingClientRect(), d = b.ownerDocument; b = d.body; d = d.documentElement; return { top: c.top + (self.pageYOffset || q.support.boxModel && d.scrollTop || b.scrollTop) - (d.clientTop || b.clientTop || 0), left: c.left + (self.pageXOffset || q.support.boxModel && d.scrollLeft || b.scrollLeft) - (d.clientLeft || b.clientLeft || 0)} } : function (a) { var b = this[0]; if (a) return this.each(function (b) { q.offset.setOffset(this, a, b) }); if (!b || !b.ownerDocument) return null; if (b === b.ownerDocument.body) return q.offset.bodyOffset(b); q.offset.initialize(); var c = b.offsetParent, d = b, e = b.ownerDocument, f, g = e.documentElement, h = e.body; d = (e = e.defaultView) ? e.getComputedStyle(b, null) : b.currentStyle; for (var i = b.offsetTop, j = b.offsetLeft; (b = b.parentNode) && b !== h && b !== g; ) { if (q.offset.supportsFixedPosition && d.position === "fixed") break; f = e ? e.getComputedStyle(b, null) : b.currentStyle; i -= b.scrollTop; j -= b.scrollLeft; if (b === c) { i += b.offsetTop; j += b.offsetLeft; if (q.offset.doesNotAddBorder && !(q.offset.doesAddBorderForTableAndCells && /^t(able|d|h)$/i.test(b.nodeName))) { i += parseFloat(f.borderTopWidth) || 0; j += parseFloat(f.borderLeftWidth) || 0 } d = c; c = b.offsetParent } if (q.offset.subtractsBorderForOverflowNotVisible && f.overflow !== "visible") { i += parseFloat(f.borderTopWidth) || 0; j += parseFloat(f.borderLeftWidth) || 0 } d = f } if (d.position === "relative" || d.position === "static") { i += h.offsetTop; j += h.offsetLeft } if (q.offset.supportsFixedPosition && d.position === "fixed") { i += Math.max(g.scrollTop, h.scrollTop); j += Math.max(g.scrollLeft, h.scrollLeft) } return { top: i, left: j} }; q.offset = { initialize: function () { var a = t.body, b = t.createElement("div"), c, d, e, f = parseFloat(q.curCSS(a, "marginTop", true)) || 0; q.extend(b.style, { position: "absolute", top: 0, left: 0, margin: 0, border: 0, width: "1px", height: "1px", visibility: "hidden" }); b.innerHTML = "<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>"; a.insertBefore(b, a.firstChild); c = b.firstChild; d = c.firstChild; e = c.nextSibling.firstChild.firstChild; this.doesNotAddBorder = d.offsetTop !== 5; this.doesAddBorderForTableAndCells = e.offsetTop === 5; d.style.position = "fixed"; d.style.top = "20px"; this.supportsFixedPosition = d.offsetTop === 20 || d.offsetTop === 15; d.style.position = d.style.top = ""; c.style.overflow = "hidden"; c.style.position = "relative"; this.subtractsBorderForOverflowNotVisible = d.offsetTop === -5; this.doesNotIncludeMarginInBodyOffset = a.offsetTop !== f; a.removeChild(b); q.offset.initialize = q.noop }, bodyOffset: function (a) { var b = a.offsetTop, c = a.offsetLeft; q.offset.initialize(); if (q.offset.doesNotIncludeMarginInBodyOffset) { b += parseFloat(q.curCSS(a, "marginTop", true)) || 0; c += parseFloat(q.curCSS(a, "marginLeft", true)) || 0 } return { top: b, left: c} }, setOffset: function (a, b, c) { if (/static/.test(q.curCSS(a, "position"))) a.style.position = "relative"; var d = q(a), e = d.offset(), f = parseInt(q.curCSS(a, "top", true), 10) || 0, g = parseInt(q.curCSS(a, "left", true), 10) || 0; if (q.isFunction(b)) b = b.call(a, c, e); c = { top: b.top - e.top + f, left: b.left - e.left + g }; "using" in b ? b.using.call(a, c) : d.css(c) } }; q.fn.extend({ position: function () { if (!this[0]) return null; var a = this[0], b = this.offsetParent(), c = this.offset(), d = /^body|html$/i.test(b[0].nodeName) ? { top: 0, left: 0} : b.offset(); c.top -= parseFloat(q.curCSS(a, "marginTop", true)) || 0; c.left -= parseFloat(q.curCSS(a, "marginLeft", true)) || 0; d.top += parseFloat(q.curCSS(b[0], "borderTopWidth", true)) || 0; d.left += parseFloat(q.curCSS(b[0], "borderLeftWidth", true)) || 0; return { top: c.top - d.top, left: c.left - d.left} }, offsetParent: function () { return this.map(function () { for (var a = this.offsetParent || t.body; a && !/^body|html$/i.test(a.nodeName) && q.css(a, "position") === "static"; ) a = a.offsetParent; return a }) } }); q.each(["Left", "Top"], function (a, c) { var d = "scroll" + c; q.fn[d] = function (c) { var e = this[0], f; if (!e) return null; if (c !== b) return this.each(function () { if (f = p(this)) f.scrollTo(!a ? c : q(f).scrollLeft(), a ? c : q(f).scrollTop()); else this[d] = c }); else return (f = p(e)) ? "pageXOffset" in f ? f[a ? "pageYOffset" : "pageXOffset"] : q.support.boxModel && f.document.documentElement[d] || f.document.body[d] : e[d] } }); q.each(["Height", "Width"], function (a, c) { var d = c.toLowerCase(); q.fn["inner" + c] = function () { return this[0] ? q.css(this[0], d, false, "padding") : null }; q.fn["outer" + c] = function (a) { return this[0] ? q.css(this[0], d, false, a ? "margin" : "border") : null }; q.fn[d] = function (a) { var e = this[0]; if (!e) return a == null ? null : this; if (q.isFunction(a)) return this.each(function (b) { var c = q(this); c[d](a.call(this, b, c[d]())) }); return "scrollTo" in e && e.document ? e.document.compatMode === "CSS1Compat" && e.document.documentElement["client" + c] || e.document.body["client" + c] : e.nodeType === 9 ? Math.max(e.documentElement["client" + c], e.body["scroll" + c], e.documentElement["scroll" + c], e.body["offset" + c], e.documentElement["offset" + c]) : a === b ? q.css(e, d) : this.css(d, typeof a === "string" ? a : a + "px") } }); a.jQuery = a.$ = q })(window)
