﻿/*!
* jQuery JavaScript Library v1.5.2
* http://jquery.com/
*
* Copyright 2011, John Resig
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* Includes Sizzle.js
* http://sizzlejs.com/
* Copyright 2011, The Dojo Foundation
* Released under the MIT, BSD, and GPL Licenses.
*
* Date: Thu Mar 31 15:28:23 2011 -0400
*/
(function (a, b) { function ci(a) { return d.isWindow(a) ? a : a.nodeType === 9 ? a.defaultView || a.parentWindow : !1 } function cf(a) { if (!b_[a]) { var b = d("<" + a + ">").appendTo("body"), c = b.css("display"); b.remove(); if (c === "none" || c === "") c = "block"; b_[a] = c } return b_[a] } function ce(a, b) { var c = {}; d.each(cd.concat.apply([], cd.slice(0, b)), function () { c[this] = a }); return c } function b$() { try { return new a.ActiveXObject("Microsoft.XMLHTTP") } catch (b) { } } function bZ() { try { return new a.XMLHttpRequest } catch (b) { } } function bY() { d(a).unload(function () { for (var a in bW) bW[a](0, 1) }) } function bS(a, c) { a.dataFilter && (c = a.dataFilter(c, a.dataType)); var e = a.dataTypes, f = {}, g, h, i = e.length, j, k = e[0], l, m, n, o, p; for (g = 1; g < i; g++) { if (g === 1) for (h in a.converters) typeof h === "string" && (f[h.toLowerCase()] = a.converters[h]); l = k, k = e[g]; if (k === "*") k = l; else if (l !== "*" && l !== k) { m = l + " " + k, n = f[m] || f["* " + k]; if (!n) { p = b; for (o in f) { j = o.split(" "); if (j[0] === l || j[0] === "*") { p = f[j[1] + " " + k]; if (p) { o = f[o], o === !0 ? n = p : p === !0 && (n = o); break } } } } !n && !p && d.error("No conversion from " + m.replace(" ", " to ")), n !== !0 && (c = n ? n(c) : p(o(c))) } } return c } function bR(a, c, d) { var e = a.contents, f = a.dataTypes, g = a.responseFields, h, i, j, k; for (i in g) i in d && (c[g[i]] = d[i]); while (f[0] === "*") f.shift(), h === b && (h = a.mimeType || c.getResponseHeader("content-type")); if (h) for (i in e) if (e[i] && e[i].test(h)) { f.unshift(i); break } if (f[0] in d) j = f[0]; else { for (i in d) { if (!f[0] || a.converters[i + " " + f[0]]) { j = i; break } k || (k = i) } j = j || k } if (j) { j !== f[0] && f.unshift(j); return d[j] } } function bQ(a, b, c, e) { if (d.isArray(b) && b.length) d.each(b, function (b, f) { c || bs.test(a) ? e(a, f) : bQ(a + "[" + (typeof f === "object" || d.isArray(f) ? b : "") + "]", f, c, e) }); else if (c || b == null || typeof b !== "object") e(a, b); else if (d.isArray(b) || d.isEmptyObject(b)) e(a, ""); else for (var f in b) bQ(a + "[" + f + "]", b[f], c, e) } function bP(a, c, d, e, f, g) { f = f || c.dataTypes[0], g = g || {}, g[f] = !0; var h = a[f], i = 0, j = h ? h.length : 0, k = a === bJ, l; for (; i < j && (k || !l); i++) l = h[i](c, d, e), typeof l === "string" && (!k || g[l] ? l = b : (c.dataTypes.unshift(l), l = bP(a, c, d, e, l, g))); (k || !l) && !g["*"] && (l = bP(a, c, d, e, "*", g)); return l } function bO(a) { return function (b, c) { typeof b !== "string" && (c = b, b = "*"); if (d.isFunction(c)) { var e = b.toLowerCase().split(bD), f = 0, g = e.length, h, i, j; for (; f < g; f++) h = e[f], j = /^\+/.test(h), j && (h = h.substr(1) || "*"), i = a[h] = a[h] || [], i[j ? "unshift" : "push"](c) } } } function bq(a, b, c) { var e = b === "width" ? bk : bl, f = b === "width" ? a.offsetWidth : a.offsetHeight; if (c === "border") return f; d.each(e, function () { c || (f -= parseFloat(d.css(a, "padding" + this)) || 0), c === "margin" ? f += parseFloat(d.css(a, "margin" + this)) || 0 : f -= parseFloat(d.css(a, "border" + this + "Width")) || 0 }); return f } function bc(a, b) { b.src ? d.ajax({ url: b.src, async: !1, dataType: "script" }) : d.globalEval(b.text || b.textContent || b.innerHTML || ""), b.parentNode && b.parentNode.removeChild(b) } function bb(a) { return "getElementsByTagName" in a ? a.getElementsByTagName("*") : "querySelectorAll" in a ? a.querySelectorAll("*") : [] } function ba(a, b) { if (b.nodeType === 1) { var c = b.nodeName.toLowerCase(); b.clearAttributes(), b.mergeAttributes(a); if (c === "object") b.outerHTML = a.outerHTML; else if (c !== "input" || a.type !== "checkbox" && a.type !== "radio") { if (c === "option") b.selected = a.defaultSelected; else if (c === "input" || c === "textarea") b.defaultValue = a.defaultValue } else a.checked && (b.defaultChecked = b.checked = a.checked), b.value !== a.value && (b.value = a.value); b.removeAttribute(d.expando) } } function _(a, b) { if (b.nodeType === 1 && d.hasData(a)) { var c = d.expando, e = d.data(a), f = d.data(b, e); if (e = e[c]) { var g = e.events; f = f[c] = d.extend({}, e); if (g) { delete f.handle, f.events = {}; for (var h in g) for (var i = 0, j = g[h].length; i < j; i++) d.event.add(b, h + (g[h][i].namespace ? "." : "") + g[h][i].namespace, g[h][i], g[h][i].data) } } } } function $(a, b) { return d.nodeName(a, "table") ? a.getElementsByTagName("tbody")[0] || a.appendChild(a.ownerDocument.createElement("tbody")) : a } function Q(a, b, c) { if (d.isFunction(b)) return d.grep(a, function (a, d) { var e = !!b.call(a, d, a); return e === c }); if (b.nodeType) return d.grep(a, function (a, d) { return a === b === c }); if (typeof b === "string") { var e = d.grep(a, function (a) { return a.nodeType === 1 }); if (L.test(b)) return d.filter(b, e, !c); b = d.filter(b, e) } return d.grep(a, function (a, e) { return d.inArray(a, b) >= 0 === c }) } function P(a) { return !a || !a.parentNode || a.parentNode.nodeType === 11 } function H(a, b) { return (a && a !== "*" ? a + "." : "") + b.replace(t, "`").replace(u, "&") } function G(a) { var b, c, e, f, g, h, i, j, k, l, m, n, o, p = [], q = [], s = d._data(this, "events"); if (a.liveFired !== this && s && s.live && !a.target.disabled && (!a.button || a.type !== "click")) { a.namespace && (n = new RegExp("(^|\\.)" + a.namespace.split(".").join("\\.(?:.*\\.)?") + "(\\.|$)")), a.liveFired = this; var t = s.live.slice(0); for (i = 0; i < t.length; i++) g = t[i], g.origType.replace(r, "") === a.type ? q.push(g.selector) : t.splice(i--, 1); f = d(a.target).closest(q, a.currentTarget); for (j = 0, k = f.length; j < k; j++) { m = f[j]; for (i = 0; i < t.length; i++) { g = t[i]; if (m.selector === g.selector && (!n || n.test(g.namespace)) && !m.elem.disabled) { h = m.elem, e = null; if (g.preType === "mouseenter" || g.preType === "mouseleave") a.type = g.preType, e = d(a.relatedTarget).closest(g.selector)[0]; (!e || e !== h) && p.push({ elem: h, handleObj: g, level: m.level }) } } } for (j = 0, k = p.length; j < k; j++) { f = p[j]; if (c && f.level > c) break; a.currentTarget = f.elem, a.data = f.handleObj.data, a.handleObj = f.handleObj, o = f.handleObj.origHandler.apply(f.elem, arguments); if (o === !1 || a.isPropagationStopped()) { c = f.level, o === !1 && (b = !1); if (a.isImmediatePropagationStopped()) break } } return b } } function E(a, c, e) { var f = d.extend({}, e[0]); f.type = a, f.originalEvent = {}, f.liveFired = b, d.event.handle.call(c, f), f.isDefaultPrevented() && e[0].preventDefault() } function y() { return !0 } function x() { return !1 } function i(a) { for (var b in a) if (b !== "toJSON") return !1; return !0 } function h(a, c, e) { if (e === b && a.nodeType === 1) { e = a.getAttribute("data-" + c); if (typeof e === "string") { try { e = e === "true" ? !0 : e === "false" ? !1 : e === "null" ? null : d.isNaN(e) ? g.test(e) ? d.parseJSON(e) : e : parseFloat(e) } catch (f) { } d.data(a, c, e) } else e = b } return e } var c = a.document, d = function () { function G() { if (!d.isReady) { try { c.documentElement.doScroll("left") } catch (a) { setTimeout(G, 1); return } d.ready() } } var d = function (a, b) { return new d.fn.init(a, b, g) }, e = a.jQuery, f = a.$, g, h = /^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/, i = /\S/, j = /^\s+/, k = /\s+$/, l = /\d/, m = /^<(\w+)\s*\/?>(?:<\/\1>)?$/, n = /^[\],:{}\s]*$/, o = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, p = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, q = /(?:^|:|,)(?:\s*\[)+/g, r = /(webkit)[ \/]([\w.]+)/, s = /(opera)(?:.*version)?[ \/]([\w.]+)/, t = /(msie) ([\w.]+)/, u = /(mozilla)(?:.*? rv:([\w.]+))?/, v = navigator.userAgent, w, x, y, z = Object.prototype.toString, A = Object.prototype.hasOwnProperty, B = Array.prototype.push, C = Array.prototype.slice, D = String.prototype.trim, E = Array.prototype.indexOf, F = {}; d.fn = d.prototype = { constructor: d, init: function (a, e, f) { var g, i, j, k; if (!a) return this; if (a.nodeType) { this.context = this[0] = a, this.length = 1; return this } if (a === "body" && !e && c.body) { this.context = c, this[0] = c.body, this.selector = "body", this.length = 1; return this } if (typeof a === "string") { g = h.exec(a); if (!g || !g[1] && e) return !e || e.jquery ? (e || f).find(a) : this.constructor(e).find(a); if (g[1]) { e = e instanceof d ? e[0] : e, k = e ? e.ownerDocument || e : c, j = m.exec(a), j ? d.isPlainObject(e) ? (a = [c.createElement(j[1])], d.fn.attr.call(a, e, !0)) : a = [k.createElement(j[1])] : (j = d.buildFragment([g[1]], [k]), a = (j.cacheable ? d.clone(j.fragment) : j.fragment).childNodes); return d.merge(this, a) } i = c.getElementById(g[2]); if (i && i.parentNode) { if (i.id !== g[2]) return f.find(a); this.length = 1, this[0] = i } this.context = c, this.selector = a; return this } if (d.isFunction(a)) return f.ready(a); a.selector !== b && (this.selector = a.selector, this.context = a.context); return d.makeArray(a, this) }, selector: "", jquery: "1.5.2", length: 0, size: function () { return this.length }, toArray: function () { return C.call(this, 0) }, get: function (a) { return a == null ? this.toArray() : a < 0 ? this[this.length + a] : this[a] }, pushStack: function (a, b, c) { var e = this.constructor(); d.isArray(a) ? B.apply(e, a) : d.merge(e, a), e.prevObject = this, e.context = this.context, b === "find" ? e.selector = this.selector + (this.selector ? " " : "") + c : b && (e.selector = this.selector + "." + b + "(" + c + ")"); return e }, each: function (a, b) { return d.each(this, a, b) }, ready: function (a) { d.bindReady(), x.done(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(C.apply(this, arguments), "slice", C.call(arguments).join(",")) }, map: function (a) { return this.pushStack(d.map(this, function (b, c) { return a.call(b, c, b) })) }, end: function () { return this.prevObject || this.constructor(null) }, push: B, sort: [].sort, splice: [].splice }, d.fn.init.prototype = d.fn, d.extend = d.fn.extend = function () { var a, c, e, f, g, h, i = arguments[0] || {}, j = 1, k = arguments.length, l = !1; typeof i === "boolean" && (l = i, i = arguments[1] || {}, j = 2), typeof i !== "object" && !d.isFunction(i) && (i = {}), k === j && (i = this, --j); for (; j < k; j++) if ((a = arguments[j]) != null) for (c in a) { e = i[c], f = a[c]; if (i === f) continue; l && f && (d.isPlainObject(f) || (g = d.isArray(f))) ? (g ? (g = !1, h = e && d.isArray(e) ? e : []) : h = e && d.isPlainObject(e) ? e : {}, i[c] = d.extend(l, h, f)) : f !== b && (i[c] = f) } return i }, d.extend({ noConflict: function (b) { a.$ = f, b && (a.jQuery = e); return d }, isReady: !1, readyWait: 1, ready: function (a) { a === !0 && d.readyWait--; if (!d.readyWait || a !== !0 && !d.isReady) { if (!c.body) return setTimeout(d.ready, 1); d.isReady = !0; if (a !== !0 && --d.readyWait > 0) return; x.resolveWith(c, [d]), d.fn.trigger && d(c).trigger("ready").unbind("ready") } }, bindReady: function () { if (!x) { x = d._Deferred(); if (c.readyState === "complete") return setTimeout(d.ready, 1); if (c.addEventListener) c.addEventListener("DOMContentLoaded", y, !1), a.addEventListener("load", d.ready, !1); else if (c.attachEvent) { c.attachEvent("onreadystatechange", y), a.attachEvent("onload", d.ready); var b = !1; try { b = a.frameElement == null } catch (e) { } c.documentElement.doScroll && b && G() } } }, isFunction: function (a) { return d.type(a) === "function" }, isArray: Array.isArray || function (a) { return d.type(a) === "array" }, isWindow: function (a) { return a && typeof a === "object" && "setInterval" in a }, isNaN: function (a) { return a == null || !l.test(a) || isNaN(a) }, type: function (a) { return a == null ? String(a) : F[z.call(a)] || "object" }, isPlainObject: function (a) { if (!a || d.type(a) !== "object" || a.nodeType || d.isWindow(a)) return !1; if (a.constructor && !A.call(a, "constructor") && !A.call(a.constructor.prototype, "isPrototypeOf")) return !1; var c; for (c in a) { } return c === b || A.call(a, c) }, isEmptyObject: function (a) { for (var b in a) return !1; return !0 }, error: function (a) { throw a }, parseJSON: function (b) { if (typeof b !== "string" || !b) return null; b = d.trim(b); if (n.test(b.replace(o, "@").replace(p, "]").replace(q, ""))) return a.JSON && a.JSON.parse ? a.JSON.parse(b) : (new Function("return " + b))(); d.error("Invalid JSON: " + b) }, parseXML: function (b, c, e) { a.DOMParser ? (e = new DOMParser, c = e.parseFromString(b, "text/xml")) : (c = new ActiveXObject("Microsoft.XMLDOM"), c.async = "false", c.loadXML(b)), e = c.documentElement, (!e || !e.nodeName || e.nodeName === "parsererror") && d.error("Invalid XML: " + b); return c }, noop: function () { }, globalEval: function (a) { if (a && i.test(a)) { var b = c.head || c.getElementsByTagName("head")[0] || c.documentElement, e = c.createElement("script"); d.support.scriptEval() ? e.appendChild(c.createTextNode(a)) : e.text = a, b.insertBefore(e, b.firstChild), b.removeChild(e) } }, nodeName: function (a, b) { return a.nodeName && a.nodeName.toUpperCase() === b.toUpperCase() }, each: function (a, c, e) { var f, g = 0, h = a.length, i = h === b || d.isFunction(a); if (e) { if (i) { for (f in a) if (c.apply(a[f], e) === !1) break } else for (; g < h; ) if (c.apply(a[g++], e) === !1) break } else if (i) { for (f in a) if (c.call(a[f], f, a[f]) === !1) break } else for (var j = a[0]; g < h && c.call(j, g, j) !== !1; j = a[++g]) { } return a }, trim: D ? function (a) { return a == null ? "" : D.call(a) } : function (a) { return a == null ? "" : (a + "").replace(j, "").replace(k, "") }, makeArray: function (a, b) { var c = b || []; if (a != null) { var e = d.type(a); a.length == null || e === "string" || e === "function" || e === "regexp" || d.isWindow(a) ? B.call(c, a) : d.merge(c, a) } return c }, 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 while (c[e] !== b) a[d++] = c[e++]; a.length = d; return a }, grep: function (a, b, c) { var d = [], e; c = !!c; for (var f = 0, g = a.length; f < g; f++) e = !!b(a[f], f), c !== e && d.push(a[f]); return d }, map: function (a, b, c) { var d = [], e; for (var f = 0, g = a.length; f < g; f++) e = b(a[f], f, c), e != null && (d[d.length] = e); return d.concat.apply([], d) }, guid: 1, proxy: function (a, c, e) { arguments.length === 2 && (typeof c === "string" ? (e = a, a = e[c], c = b) : c && !d.isFunction(c) && (e = c, c = b)), !c && a && (c = function () { return a.apply(e || this, arguments) }), a && (c.guid = a.guid = a.guid || c.guid || d.guid++); return c }, access: function (a, c, e, f, g, h) { var i = a.length; if (typeof c === "object") { for (var j in c) d.access(a, j, c[j], f, g, e); return a } if (e !== b) { f = !h && f && d.isFunction(e); for (var k = 0; k < i; k++) g(a[k], c, f ? e.call(a[k], k, g(a[k], c)) : e, h); return a } return i ? g(a[0], c) : b }, now: function () { return (new Date).getTime() }, uaMatch: function (a) { a = a.toLowerCase(); var b = r.exec(a) || s.exec(a) || t.exec(a) || a.indexOf("compatible") < 0 && u.exec(a) || []; return { browser: b[1] || "", version: b[2] || "0"} }, sub: function () { function a(b, c) { return new a.fn.init(b, c) } d.extend(!0, a, this), a.superclass = this, a.fn = a.prototype = this(), a.fn.constructor = a, a.subclass = this.subclass, a.fn.init = function b(b, c) { c && c instanceof d && !(c instanceof a) && (c = a(c)); return d.fn.init.call(this, b, c, e) }, a.fn.init.prototype = a.fn; var e = a(c); return a }, browser: {} }), d.each("Boolean Number String Function Array Date RegExp Object".split(" "), function (a, b) { F["[object " + b + "]"] = b.toLowerCase() }), w = d.uaMatch(v), w.browser && (d.browser[w.browser] = !0, d.browser.version = w.version), d.browser.webkit && (d.browser.safari = !0), E && (d.inArray = function (a, b) { return E.call(b, a) }), i.test(" ") && (j = /^[\s\xA0]+/, k = /[\s\xA0]+$/), g = d(c), c.addEventListener ? y = function () { c.removeEventListener("DOMContentLoaded", y, !1), d.ready() } : c.attachEvent && (y = function () { c.readyState === "complete" && (c.detachEvent("onreadystatechange", y), d.ready()) }); return d } (), e = "then done fail isResolved isRejected promise".split(" "), f = [].slice; d.extend({ _Deferred: function () { var a = [], b, c, e, f = { done: function () { if (!e) { var c = arguments, g, h, i, j, k; b && (k = b, b = 0); for (g = 0, h = c.length; g < h; g++) i = c[g], j = d.type(i), j === "array" ? f.done.apply(f, i) : j === "function" && a.push(i); k && f.resolveWith(k[0], k[1]) } return this }, resolveWith: function (d, f) { if (!e && !b && !c) { f = f || [], c = 1; try { while (a[0]) a.shift().apply(d, f) } finally { b = [d, f], c = 0 } } return this }, resolve: function () { f.resolveWith(this, arguments); return this }, isResolved: function () { return c || b }, cancel: function () { e = 1, a = []; return this } }; return f }, Deferred: function (a) { var b = d._Deferred(), c = d._Deferred(), f; d.extend(b, { then: function (a, c) { b.done(a).fail(c); return this }, fail: c.done, rejectWith: c.resolveWith, reject: c.resolve, isRejected: c.isResolved, promise: function (a) { if (a == null) { if (f) return f; f = a = {} } var c = e.length; while (c--) a[e[c]] = b[e[c]]; return a } }), b.done(c.cancel).fail(b.cancel), delete b.cancel, a && a.call(b, b); return b }, when: function (a) { function i(a) { return function (c) { b[a] = arguments.length > 1 ? f.call(arguments, 0) : c, --g || h.resolveWith(h, f.call(b, 0)) } } var b = arguments, c = 0, e = b.length, g = e, h = e <= 1 && a && d.isFunction(a.promise) ? a : d.Deferred(); if (e > 1) { for (; c < e; c++) b[c] && d.isFunction(b[c].promise) ? b[c].promise().then(i(c), h.reject) : --g; g || h.resolveWith(h, b) } else h !== a && h.resolveWith(h, e ? [a] : []); return h.promise() } }), function () { d.support = {}; var b = c.createElement("div"); b.style.display = "none", b.innerHTML = "   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>"; var e = b.getElementsByTagName("*"), f = b.getElementsByTagName("a")[0], g = c.createElement("select"), h = g.appendChild(c.createElement("option")), i = b.getElementsByTagName("input")[0]; if (e && e.length && f) { d.support = { leadingWhitespace: b.firstChild.nodeType === 3, tbody: !b.getElementsByTagName("tbody").length, htmlSerialize: !!b.getElementsByTagName("link").length, style: /red/.test(f.getAttribute("style")), hrefNormalized: f.getAttribute("href") === "/a", opacity: /^0.55$/.test(f.style.opacity), cssFloat: !!f.style.cssFloat, checkOn: i.value === "on", optSelected: h.selected, deleteExpando: !0, optDisabled: !1, checkClone: !1, noCloneEvent: !0, noCloneChecked: !0, boxModel: null, inlineBlockNeedsLayout: !1, shrinkWrapBlocks: !1, reliableHiddenOffsets: !0, reliableMarginRight: !0 }, i.checked = !0, d.support.noCloneChecked = i.cloneNode(!0).checked, g.disabled = !0, d.support.optDisabled = !h.disabled; var j = null; d.support.scriptEval = function () { if (j === null) { var b = c.documentElement, e = c.createElement("script"), f = "script" + d.now(); try { e.appendChild(c.createTextNode("window." + f + "=1;")) } catch (g) { } b.insertBefore(e, b.firstChild), a[f] ? (j = !0, delete a[f]) : j = !1, b.removeChild(e) } return j }; try { delete b.test } catch (k) { d.support.deleteExpando = !1 } !b.addEventListener && b.attachEvent && b.fireEvent && (b.attachEvent("onclick", function l() { d.support.noCloneEvent = !1, b.detachEvent("onclick", l) }), b.cloneNode(!0).fireEvent("onclick")), b = c.createElement("div"), b.innerHTML = "<input type='radio' name='radiotest' checked='checked'/>"; var m = c.createDocumentFragment(); m.appendChild(b.firstChild), d.support.checkClone = m.cloneNode(!0).cloneNode(!0).lastChild.checked, d(function () { var a = c.createElement("div"), b = c.getElementsByTagName("body")[0]; if (b) { a.style.width = a.style.paddingLeft = "1px", b.appendChild(a), d.boxModel = d.support.boxModel = a.offsetWidth === 2, "zoom" in a.style && (a.style.display = "inline", a.style.zoom = 1, d.support.inlineBlockNeedsLayout = a.offsetWidth === 2, a.style.display = "", a.innerHTML = "<div style='width:4px;'></div>", d.support.shrinkWrapBlocks = a.offsetWidth !== 2), a.innerHTML = "<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>"; var e = a.getElementsByTagName("td"); d.support.reliableHiddenOffsets = e[0].offsetHeight === 0, e[0].style.display = "", e[1].style.display = "none", d.support.reliableHiddenOffsets = d.support.reliableHiddenOffsets && e[0].offsetHeight === 0, a.innerHTML = "", c.defaultView && c.defaultView.getComputedStyle && (a.style.width = "1px", a.style.marginRight = "0", d.support.reliableMarginRight = (parseInt(c.defaultView.getComputedStyle(a, null).marginRight, 10) || 0) === 0), b.removeChild(a).style.display = "none", a = e = null } }); var n = function (a) { var b = c.createElement("div"); a = "on" + a; if (!b.attachEvent) return !0; var d = a in b; d || (b.setAttribute(a, "return;"), d = typeof b[a] === "function"); return d }; d.support.submitBubbles = n("submit"), d.support.changeBubbles = n("change"), b = e = f = null } } (); var g = /^(?:\{.*\}|\[.*\])$/; d.extend({ cache: {}, uuid: 0, expando: "jQuery" + (d.fn.jquery + Math.random()).replace(/\D/g, ""), noData: { embed: !0, object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000", applet: !0 }, hasData: function (a) { a = a.nodeType ? d.cache[a[d.expando]] : a[d.expando]; return !!a && !i(a) }, data: function (a, c, e, f) { if (d.acceptData(a)) { var g = d.expando, h = typeof c === "string", i, j = a.nodeType, k = j ? d.cache : a, l = j ? a[d.expando] : a[d.expando] && d.expando; if ((!l || f && l && !k[l][g]) && h && e === b) return; l || (j ? a[d.expando] = l = ++d.uuid : l = d.expando), k[l] || (k[l] = {}, j || (k[l].toJSON = d.noop)); if (typeof c === "object" || typeof c === "function") f ? k[l][g] = d.extend(k[l][g], c) : k[l] = d.extend(k[l], c); i = k[l], f && (i[g] || (i[g] = {}), i = i[g]), e !== b && (i[c] = e); if (c === "events" && !i[c]) return i[g] && i[g].events; return h ? i[c] : i } }, removeData: function (b, c, e) { if (d.acceptData(b)) { var f = d.expando, g = b.nodeType, h = g ? d.cache : b, j = g ? b[d.expando] : d.expando; if (!h[j]) return; if (c) { var k = e ? h[j][f] : h[j]; if (k) { delete k[c]; if (!i(k)) return } } if (e) { delete h[j][f]; if (!i(h[j])) return } var l = h[j][f]; d.support.deleteExpando || h != a ? delete h[j] : h[j] = null, l ? (h[j] = {}, g || (h[j].toJSON = d.noop), h[j][f] = l) : g && (d.support.deleteExpando ? delete b[d.expando] : b.removeAttribute ? b.removeAttribute(d.expando) : b[d.expando] = null) } }, _data: function (a, b, c) { return d.data(a, b, c, !0) }, acceptData: function (a) { if (a.nodeName) { var b = d.noData[a.nodeName.toLowerCase()]; if (b) return b !== !0 && a.getAttribute("classid") === b } return !0 } }), d.fn.extend({ data: function (a, c) { var e = null; if (typeof a === "undefined") { if (this.length) { e = d.data(this[0]); if (this[0].nodeType === 1) { var f = this[0].attributes, g; for (var i = 0, j = f.length; i < j; i++) g = f[i].name, g.indexOf("data-") === 0 && (g = g.substr(5), h(this[0], g, e[g])) } } return e } if (typeof a === "object") return this.each(function () { d.data(this, a) }); var k = a.split("."); k[1] = k[1] ? "." + k[1] : ""; if (c === b) { e = this.triggerHandler("getData" + k[1] + "!", [k[0]]), e === b && this.length && (e = d.data(this[0], a), e = h(this[0], a, e)); return e === b && k[1] ? this.data(k[0]) : e } return this.each(function () { var b = d(this), e = [k[0], c]; b.triggerHandler("setData" + k[1] + "!", e), d.data(this, a, c), b.triggerHandler("changeData" + k[1] + "!", e) }) }, removeData: function (a) { return this.each(function () { d.removeData(this, a) }) } }), d.extend({ queue: function (a, b, c) { if (a) { b = (b || "fx") + "queue"; var e = d._data(a, b); if (!c) return e || []; !e || d.isArray(c) ? e = d._data(a, b, d.makeArray(c)) : e.push(c); return e } }, dequeue: function (a, b) { b = b || "fx"; var c = d.queue(a, b), e = c.shift(); e === "inprogress" && (e = c.shift()), e && (b === "fx" && c.unshift("inprogress"), e.call(a, function () { d.dequeue(a, b) })), c.length || d.removeData(a, b + "queue", !0) } }), d.fn.extend({ queue: function (a, c) { typeof a !== "string" && (c = a, a = "fx"); if (c === b) return d.queue(this[0], a); return this.each(function (b) { var e = d.queue(this, a, c); a === "fx" && e[0] !== "inprogress" && d.dequeue(this, a) }) }, dequeue: function (a) { return this.each(function () { d.dequeue(this, a) }) }, delay: function (a, b) { a = d.fx ? d.fx.speeds[a] || a : a, b = b || "fx"; return this.queue(b, function () { var c = this; setTimeout(function () { d.dequeue(c, b) }, a) }) }, clearQueue: function (a) { return this.queue(a || "fx", []) } }); var j = /[\n\t\r]/g, k = /\s+/, l = /\r/g, m = /^(?:href|src|style)$/, n = /^(?:button|input)$/i, o = /^(?:button|input|object|select|textarea)$/i, p = /^a(?:rea)?$/i, q = /^(?:radio|checkbox)$/i; d.props = { "for": "htmlFor", "class": "className", readonly: "readOnly", maxlength: "maxLength", cellspacing: "cellSpacing", rowspan: "rowSpan", colspan: "colSpan", tabindex: "tabIndex", usemap: "useMap", frameborder: "frameBorder" }, d.fn.extend({ attr: function (a, b) { return d.access(this, a, b, !0, d.attr) }, removeAttr: function (a, b) { return this.each(function () { d.attr(this, a, ""), this.nodeType === 1 && this.removeAttribute(a) }) }, addClass: function (a) { if (d.isFunction(a)) return this.each(function (b) { var c = d(this); c.addClass(a.call(this, b, c.attr("class"))) }); if (a && typeof a === "string") { var b = (a || "").split(k); for (var c = 0, e = this.length; c < e; c++) { var f = this[c]; if (f.nodeType === 1) if (f.className) { var g = " " + f.className + " ", h = f.className; for (var i = 0, j = b.length; i < j; i++) g.indexOf(" " + b[i] + " ") < 0 && (h += " " + b[i]); f.className = d.trim(h) } else f.className = a } } return this }, removeClass: function (a) { if (d.isFunction(a)) return this.each(function (b) { var c = d(this); c.removeClass(a.call(this, b, c.attr("class"))) }); if (a && typeof a === "string" || a === b) { var c = (a || "").split(k); for (var e = 0, f = this.length; e < f; e++) { var g = this[e]; if (g.nodeType === 1 && g.className) if (a) { var h = (" " + g.className + " ").replace(j, " "); for (var i = 0, l = c.length; i < l; i++) h = h.replace(" " + c[i] + " ", " "); g.className = d.trim(h) } else g.className = "" } } return this }, toggleClass: function (a, b) { var c = typeof a, e = typeof b === "boolean"; if (d.isFunction(a)) return this.each(function (c) { var e = d(this); e.toggleClass(a.call(this, c, e.attr("class"), b), b) }); return this.each(function () { if (c === "string") { var f, g = 0, h = d(this), i = b, j = a.split(k); while (f = j[g++]) i = e ? i : !h.hasClass(f), h[i ? "addClass" : "removeClass"](f) } else if (c === "undefined" || c === "boolean") this.className && d._data(this, "__className__", this.className), this.className = this.className || a === !1 ? "" : d._data(this, "__className__") || "" }) }, hasClass: function (a) { var b = " " + a + " "; for (var c = 0, d = this.length; c < d; c++) if ((" " + this[c].className + " ").replace(j, " ").indexOf(b) > -1) return !0; return !1 }, val: function (a) { if (!arguments.length) { var c = this[0]; if (c) { if (d.nodeName(c, "option")) { var e = c.attributes.value; return !e || e.specified ? c.value : c.text } if (d.nodeName(c, "select")) { var f = c.selectedIndex, g = [], h = c.options, i = c.type === "select-one"; if (f < 0) return null; for (var j = i ? f : 0, k = i ? f + 1 : h.length; j < k; j++) { var m = h[j]; if (m.selected && (d.support.optDisabled ? !m.disabled : m.getAttribute("disabled") === null) && (!m.parentNode.disabled || !d.nodeName(m.parentNode, "optgroup"))) { a = d(m).val(); if (i) return a; g.push(a) } } if (i && !g.length && h.length) return d(h[f]).val(); return g } if (q.test(c.type) && !d.support.checkOn) return c.getAttribute("value") === null ? "on" : c.value; return (c.value || "").replace(l, "") } return b } var n = d.isFunction(a); return this.each(function (b) { var c = d(this), e = a; if (this.nodeType === 1) { n && (e = a.call(this, b, c.val())), e == null ? e = "" : typeof e === "number" ? e += "" : d.isArray(e) && (e = d.map(e, function (a) { return a == null ? "" : a + "" })); if (d.isArray(e) && q.test(this.type)) this.checked = d.inArray(c.val(), e) >= 0; else if (d.nodeName(this, "select")) { var f = d.makeArray(e); d("option", this).each(function () { this.selected = d.inArray(d(this).val(), f) >= 0 }), f.length || (this.selectedIndex = -1) } else this.value = e } }) } }), d.extend({ attrFn: { val: !0, css: !0, html: !0, text: !0, data: !0, width: !0, height: !0, offset: !0 }, attr: function (a, c, e, f) { if (!a || a.nodeType === 3 || a.nodeType === 8 || a.nodeType === 2) return b; if (f && c in d.attrFn) return d(a)[c](e); var g = a.nodeType !== 1 || !d.isXMLDoc(a), h = e !== b; c = g && d.props[c] || c; if (a.nodeType === 1) { var i = m.test(c); if (c === "selected" && !d.support.optSelected) { var j = a.parentNode; j && (j.selectedIndex, j.parentNode && j.parentNode.selectedIndex) } if ((c in a || a[c] !== b) && g && !i) { h && (c === "type" && n.test(a.nodeName) && a.parentNode && d.error("type property can't be changed"), e === null ? a.nodeType === 1 && a.removeAttribute(c) : a[c] = e); if (d.nodeName(a, "form") && a.getAttributeNode(c)) return a.getAttributeNode(c).nodeValue; if (c === "tabIndex") { var k = a.getAttributeNode("tabIndex"); return k && k.specified ? k.value : o.test(a.nodeName) || p.test(a.nodeName) && a.href ? 0 : b } return a[c] } if (!d.support.style && g && c === "style") { h && (a.style.cssText = "" + e); return a.style.cssText } h && a.setAttribute(c, "" + e); if (!a.attributes[c] && (a.hasAttribute && !a.hasAttribute(c))) return b; var l = !d.support.hrefNormalized && g && i ? a.getAttribute(c, 2) : a.getAttribute(c); return l === null ? b : l } h && (a[c] = e); return a[c] } }); var r = /\.(.*)$/, s = /^(?:textarea|input|select)$/i, t = /\./g, u = / /g, v = /[^\w\s.|`]/g, w = function (a) { return a.replace(v, "\\$&") }; d.event = { add: function (c, e, f, g) { if (c.nodeType !== 3 && c.nodeType !== 8) { try { d.isWindow(c) && (c !== a && !c.frameElement) && (c = a) } catch (h) { } if (f === !1) f = x; else if (!f) return; var i, j; f.handler && (i = f, f = i.handler), f.guid || (f.guid = d.guid++); var k = d._data(c); if (!k) return; var l = k.events, m = k.handle; l || (k.events = l = {}), m || (k.handle = m = function (a) { return typeof d !== "undefined" && d.event.triggered !== a.type ? d.event.handle.apply(m.elem, arguments) : b }), m.elem = c, e = e.split(" "); var n, o = 0, p; while (n = e[o++]) { j = i ? d.extend({}, i) : { handler: f, data: g }, n.indexOf(".") > -1 ? (p = n.split("."), n = p.shift(), j.namespace = p.slice(0).sort().join(".")) : (p = [], j.namespace = ""), j.type = n, j.guid || (j.guid = f.guid); var q = l[n], r = d.event.special[n] || {}; if (!q) { q = l[n] = []; if (!r.setup || r.setup.call(c, g, p, m) === !1) c.addEventListener ? c.addEventListener(n, m, !1) : c.attachEvent && c.attachEvent("on" + n, m) } r.add && (r.add.call(c, j), j.handler.guid || (j.handler.guid = f.guid)), q.push(j), d.event.global[n] = !0 } c = null } }, global: {}, remove: function (a, c, e, f) { if (a.nodeType !== 3 && a.nodeType !== 8) { e === !1 && (e = x); var g, h, i, j, k = 0, l, m, n, o, p, q, r, s = d.hasData(a) && d._data(a), t = s && s.events; if (!s || !t) return; c && c.type && (e = c.handler, c = c.type); if (!c || typeof c === "string" && c.charAt(0) === ".") { c = c || ""; for (h in t) d.event.remove(a, h + c); return } c = c.split(" "); while (h = c[k++]) { r = h, q = null, l = h.indexOf(".") < 0, m = [], l || (m = h.split("."), h = m.shift(), n = new RegExp("(^|\\.)" + d.map(m.slice(0).sort(), w).join("\\.(?:.*\\.)?") + "(\\.|$)")), p = t[h]; if (!p) continue; if (!e) { for (j = 0; j < p.length; j++) { q = p[j]; if (l || n.test(q.namespace)) d.event.remove(a, r, q.handler, j), p.splice(j--, 1) } continue } o = d.event.special[h] || {}; for (j = f || 0; j < p.length; j++) { q = p[j]; if (e.guid === q.guid) { if (l || n.test(q.namespace)) f == null && p.splice(j--, 1), o.remove && o.remove.call(a, q); if (f != null) break } } if (p.length === 0 || f != null && p.length === 1) (!o.teardown || o.teardown.call(a, m) === !1) && d.removeEvent(a, h, s.handle), g = null, delete t[h] } if (d.isEmptyObject(t)) { var u = s.handle; u && (u.elem = null), delete s.events, delete s.handle, d.isEmptyObject(s) && d.removeData(a, b, !0) } } }, trigger: function (a, c, e) { var f = a.type || a, g = arguments[3]; if (!g) { a = typeof a === "object" ? a[d.expando] ? a : d.extend(d.Event(f), a) : d.Event(f), f.indexOf("!") >= 0 && (a.type = f = f.slice(0, -1), a.exclusive = !0), e || (a.stopPropagation(), d.event.global[f] && d.each(d.cache, function () { var b = d.expando, e = this[b]; e && e.events && e.events[f] && d.event.trigger(a, c, e.handle.elem) })); if (!e || e.nodeType === 3 || e.nodeType === 8) return b; a.result = b, a.target = e, c = d.makeArray(c), c.unshift(a) } a.currentTarget = e; var h = d._data(e, "handle"); h && h.apply(e, c); var i = e.parentNode || e.ownerDocument; try { e && e.nodeName && d.noData[e.nodeName.toLowerCase()] || e["on" + f] && e["on" + f].apply(e, c) === !1 && (a.result = !1, a.preventDefault()) } catch (j) { } if (!a.isPropagationStopped() && i) d.event.trigger(a, c, i, !0); else if (!a.isDefaultPrevented()) { var k, l = a.target, m = f.replace(r, ""), n = d.nodeName(l, "a") && m === "click", o = d.event.special[m] || {}; if ((!o._default || o._default.call(e, a) === !1) && !n && !(l && l.nodeName && d.noData[l.nodeName.toLowerCase()])) { try { l[m] && (k = l["on" + m], k && (l["on" + m] = null), d.event.triggered = a.type, l[m]()) } catch (p) { } k && (l["on" + m] = k), d.event.triggered = b } } }, handle: function (c) { var e, f, g, h, i, j = [], k = d.makeArray(arguments); c = k[0] = d.event.fix(c || a.event), c.currentTarget = this, e = c.type.indexOf(".") < 0 && !c.exclusive, e || (g = c.type.split("."), c.type = g.shift(), j = g.slice(0).sort(), h = new RegExp("(^|\\.)" + j.join("\\.(?:.*\\.)?") + "(\\.|$)")), c.namespace = c.namespace || j.join("."), i = d._data(this, "events"), f = (i || {})[c.type]; if (i && f) { f = f.slice(0); for (var l = 0, m = f.length; l < m; l++) { var n = f[l]; if (e || h.test(n.namespace)) { c.handler = n.handler, c.data = n.data, c.handleObj = n; var o = n.handler.apply(this, k); o !== b && (c.result = o, o === !1 && (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 pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "), fix: function (a) { if (a[d.expando]) return a; var e = a; a = d.Event(e); for (var f = this.props.length, g; f; ) g = this.props[--f], a[g] = e[g]; a.target || (a.target = a.srcElement || c), a.target.nodeType === 3 && (a.target = a.target.parentNode), !a.relatedTarget && a.fromElement && (a.relatedTarget = a.fromElement === a.target ? a.toElement : a.fromElement); if (a.pageX == null && a.clientX != null) { var h = c.documentElement, i = c.body; a.pageX = a.clientX + (h && h.scrollLeft || i && i.scrollLeft || 0) - (h && h.clientLeft || i && i.clientLeft || 0), a.pageY = a.clientY + (h && h.scrollTop || i && i.scrollTop || 0) - (h && h.clientTop || i && i.clientTop || 0) } a.which == null && (a.charCode != null || a.keyCode != null) && (a.which = a.charCode != null ? a.charCode : a.keyCode), !a.metaKey && a.ctrlKey && (a.metaKey = a.ctrlKey), !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: d.proxy, special: { ready: { setup: d.bindReady, teardown: d.noop }, live: { add: function (a) { d.event.add(this, H(a.origType, a.selector), d.extend({}, a, { handler: G, guid: a.handler.guid })) }, remove: function (a) { d.event.remove(this, H(a.origType, a.selector), a) } }, beforeunload: { setup: function (a, b, c) { d.isWindow(this) && (this.onbeforeunload = c) }, teardown: function (a, b) { this.onbeforeunload === b && (this.onbeforeunload = null) } }} }, d.removeEvent = c.removeEventListener ? function (a, b, c) { a.removeEventListener && a.removeEventListener(b, c, !1) } : function (a, b, c) { a.detachEvent && a.detachEvent("on" + b, c) }, d.Event = function (a) { if (!this.preventDefault) return new d.Event(a); a && a.type ? (this.originalEvent = a, this.type = a.type, this.isDefaultPrevented = a.defaultPrevented || a.returnValue === !1 || a.getPreventDefault && a.getPreventDefault() ? y : x) : this.type = a, this.timeStamp = d.now(), this[d.expando] = !0 }, d.Event.prototype = { preventDefault: function () { this.isDefaultPrevented = y; var a = this.originalEvent; a && (a.preventDefault ? a.preventDefault() : a.returnValue = !1) }, stopPropagation: function () { this.isPropagationStopped = y; var a = this.originalEvent; a && (a.stopPropagation && a.stopPropagation(), a.cancelBubble = !0) }, stopImmediatePropagation: function () { this.isImmediatePropagationStopped = y, this.stopPropagation() }, isDefaultPrevented: x, isPropagationStopped: x, isImmediatePropagationStopped: x }; var z = function (a) { var b = a.relatedTarget; try { if (b && b !== c && !b.parentNode) return; while (b && b !== this) b = b.parentNode; b !== this && (a.type = a.data, d.event.handle.apply(this, arguments)) } catch (e) { } }, A = function (a) { a.type = a.data, d.event.handle.apply(this, arguments) }; d.each({ mouseenter: "mouseover", mouseleave: "mouseout" }, function (a, b) { d.event.special[a] = { setup: function (c) { d.event.add(this, b, c && c.selector ? A : z, a) }, teardown: function (a) { d.event.remove(this, b, a && a.selector ? A : z) } } }), d.support.submitBubbles || (d.event.special.submit = { setup: function (a, b) { if (this.nodeName && this.nodeName.toLowerCase() !== "form") d.event.add(this, "click.specialSubmit", function (a) { var b = a.target, c = b.type; (c === "submit" || c === "image") && d(b).closest("form").length && E("submit", this, arguments) }), d.event.add(this, "keypress.specialSubmit", function (a) { var b = a.target, c = b.type; (c === "text" || c === "password") && d(b).closest("form").length && a.keyCode === 13 && E("submit", this, arguments) }); else return !1 }, teardown: function (a) { d.event.remove(this, ".specialSubmit") } }); if (!d.support.changeBubbles) { var B, C = function (a) { var b = a.type, c = a.value; b === "radio" || b === "checkbox" ? c = a.checked : b === "select-multiple" ? c = a.selectedIndex > -1 ? d.map(a.options, function (a) { return a.selected }).join("-") : "" : a.nodeName.toLowerCase() === "select" && (c = a.selectedIndex); return c }, D = function D(a) { var c = a.target, e, f; if (s.test(c.nodeName) && !c.readOnly) { e = d._data(c, "_change_data"), f = C(c), (a.type !== "focusout" || c.type !== "radio") && d._data(c, "_change_data", f); if (e === b || f === e) return; if (e != null || f) a.type = "change", a.liveFired = b, d.event.trigger(a, arguments[1], c) } }; d.event.special.change = { filters: { focusout: D, beforedeactivate: D, click: function (a) { var b = a.target, c = b.type; (c === "radio" || c === "checkbox" || b.nodeName.toLowerCase() === "select") && D.call(this, a) }, keydown: function (a) { var b = a.target, c = b.type; (a.keyCode === 13 && b.nodeName.toLowerCase() !== "textarea" || a.keyCode === 32 && (c === "checkbox" || c === "radio") || c === "select-multiple") && D.call(this, a) }, beforeactivate: function (a) { var b = a.target; d._data(b, "_change_data", C(b)) } }, setup: function (a, b) { if (this.type === "file") return !1; for (var c in B) d.event.add(this, c + ".specialChange", B[c]); return s.test(this.nodeName) }, teardown: function (a) { d.event.remove(this, ".specialChange"); return s.test(this.nodeName) } }, B = d.event.special.change.filters, B.focus = B.beforeactivate } c.addEventListener && d.each({ focus: "focusin", blur: "focusout" }, function (a, b) { function f(a) { var c = d.event.fix(a); c.type = b, c.originalEvent = {}, d.event.trigger(c, null, c.target), c.isDefaultPrevented() && a.preventDefault() } var e = 0; d.event.special[b] = { setup: function () { e++ === 0 && c.addEventListener(a, f, !0) }, teardown: function () { --e === 0 && c.removeEventListener(a, f, !0) } } }), d.each(["bind", "one"], function (a, c) { d.fn[c] = function (a, e, f) { if (typeof a === "object") { for (var g in a) this[c](g, e, a[g], f); return this } if (d.isFunction(e) || e === !1) f = e, e = b; var h = c === "one" ? d.proxy(f, function (a) { d(this).unbind(a, h); return f.apply(this, arguments) }) : f; if (a === "unload" && c !== "one") this.one(a, e, f); else for (var i = 0, j = this.length; i < j; i++) d.event.add(this[i], a, h, e); return this } }), d.fn.extend({ unbind: function (a, b) { if (typeof a !== "object" || a.preventDefault) for (var e = 0, f = this.length; e < f; e++) d.event.remove(this[e], a, b); else for (var c in a) this.unbind(c, a[c]); return this }, delegate: function (a, b, c, d) { return this.live(b, c, d, a) }, undelegate: function (a, b, c) { return arguments.length === 0 ? this.unbind("live") : this.die(b, null, c, a) }, trigger: function (a, b) { return this.each(function () { d.event.trigger(a, b, this) }) }, triggerHandler: function (a, b) { if (this[0]) { var c = d.Event(a); c.preventDefault(), c.stopPropagation(), d.event.trigger(c, b, this[0]); return c.result } }, toggle: function (a) { var b = arguments, c = 1; while (c < b.length) d.proxy(a, b[c++]); return this.click(d.proxy(a, function (e) { var f = (d._data(this, "lastToggle" + a.guid) || 0) % c; d._data(this, "lastToggle" + a.guid, f + 1), e.preventDefault(); return b[f].apply(this, arguments) || !1 })) }, hover: function (a, b) { return this.mouseenter(a).mouseleave(b || a) } }); var F = { focus: "focusin", blur: "focusout", mouseenter: "mouseover", mouseleave: "mouseout" }; d.each(["live", "die"], function (a, c) { d.fn[c] = function (a, e, f, g) { var h, i = 0, j, k, l, m = g || this.selector, n = g ? this : d(this.context); if (typeof a === "object" && !a.preventDefault) { for (var o in a) n[c](o, e, a[o], m); return this } d.isFunction(e) && (f = e, e = b), a = (a || "").split(" "); while ((h = a[i++]) != null) { j = r.exec(h), k = "", j && (k = j[0], h = h.replace(r, "")); if (h === "hover") { a.push("mouseenter" + k, "mouseleave" + k); continue } l = h, h === "focus" || h === "blur" ? (a.push(F[h] + k), h = h + k) : h = (F[h] || h) + k; if (c === "live") for (var p = 0, q = n.length; p < q; p++) d.event.add(n[p], "live." + H(h, m), { data: e, selector: m, handler: f, origType: h, origHandler: f, preType: l }); else n.unbind("live." + H(h, m), f) } return this } }), d.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) { d.fn[b] = function (a, c) { c == null && (c = a, a = null); return arguments.length > 0 ? this.bind(b, a, c) : this.trigger(b) }, d.attrFn && (d.attrFn[b] = !0) }), function () { function u(a, b, c, d, e, f) { for (var g = 0, h = d.length; g < h; g++) { var i = d[g]; if (i) { var j = !1; i = i[a]; while (i) { if (i.sizcache === c) { j = d[i.sizset]; break } if (i.nodeType === 1) { f || (i.sizcache = c, i.sizset = g); if (typeof b !== "string") { if (i === b) { j = !0; break } } else if (k.filter(b, [i]).length > 0) { j = i; break } } i = i[a] } d[g] = j } } } function t(a, b, c, d, e, f) { for (var g = 0, h = d.length; g < h; g++) { var i = d[g]; if (i) { var j = !1; i = i[a]; while (i) { if (i.sizcache === c) { j = d[i.sizset]; break } i.nodeType === 1 && !f && (i.sizcache = c, i.sizset = g); if (i.nodeName.toLowerCase() === b) { j = i; break } i = i[a] } d[g] = j } } } var a = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g, e = 0, f = Object.prototype.toString, g = !1, h = !0, i = /\\/g, j = /\W/; [0, 0].sort(function () { h = !1; return 0 }); var k = function (b, d, e, g) { e = e || [], d = d || c; var h = d; if (d.nodeType !== 1 && d.nodeType !== 9) return []; if (!b || typeof b !== "string") return e; var i, j, n, o, q, r, s, t, u = !0, w = k.isXML(d), x = [], y = b; do { a.exec(""), i = a.exec(y); if (i) { y = i[3], x.push(i[1]); if (i[2]) { o = i[3]; break } } } while (i); if (x.length > 1 && m.exec(b)) if (x.length === 2 && l.relative[x[0]]) j = v(x[0] + x[1], d); else { j = l.relative[x[0]] ? [d] : k(x.shift(), d); while (x.length) b = x.shift(), l.relative[b] && (b += x.shift()), j = v(b, j) } else { !g && x.length > 1 && d.nodeType === 9 && !w && l.match.ID.test(x[0]) && !l.match.ID.test(x[x.length - 1]) && (q = k.find(x.shift(), d, w), d = q.expr ? k.filter(q.expr, q.set)[0] : q.set[0]); if (d) { q = g ? { expr: x.pop(), set: p(g)} : k.find(x.pop(), x.length === 1 && (x[0] === "~" || x[0] === "+") && d.parentNode ? d.parentNode : d, w), j = q.expr ? k.filter(q.expr, q.set) : q.set, x.length > 0 ? n = p(j) : u = !1; while (x.length) r = x.pop(), s = r, l.relative[r] ? s = x.pop() : r = "", s == null && (s = d), l.relative[r](n, s, w) } else n = x = [] } n || (n = j), n || k.error(r || b); if (f.call(n) === "[object Array]") if (u) if (d && d.nodeType === 1) for (t = 0; n[t] != null; t++) n[t] && (n[t] === !0 || n[t].nodeType === 1 && k.contains(d, n[t])) && e.push(j[t]); else for (t = 0; n[t] != null; t++) n[t] && n[t].nodeType === 1 && e.push(j[t]); else e.push.apply(e, n); else p(n, e); o && (k(o, h, e, g), k.uniqueSort(e)); return e }; k.uniqueSort = function (a) { if (r) { g = h, a.sort(r); if (g) for (var b = 1; b < a.length; b++) a[b] === a[b - 1] && a.splice(b--, 1) } return a }, k.matches = function (a, b) { return k(a, null, null, b) }, k.matchesSelector = function (a, b) { return k(b, null, null, [a]).length > 0 }, k.find = function (a, b, c) { var d; if (!a) return []; for (var e = 0, f = l.order.length; e < f; e++) { var g, h = l.order[e]; if (g = l.leftMatch[h].exec(a)) { var j = g[1]; g.splice(1, 1); if (j.substr(j.length - 1) !== "\\") { g[1] = (g[1] || "").replace(i, ""), d = l.find[h](g, b, c); if (d != null) { a = a.replace(l.match[h], ""); break } } } } d || (d = typeof b.getElementsByTagName !== "undefined" ? b.getElementsByTagName("*") : []); return { set: d, expr: a} }, k.filter = function (a, c, d, e) { var f, g, h = a, i = [], j = c, m = c && c[0] && k.isXML(c[0]); while (a && c.length) { for (var n in l.filter) if ((f = l.leftMatch[n].exec(a)) != null && f[2]) { var o, p, q = l.filter[n], r = f[1]; g = !1, f.splice(1, 1); if (r.substr(r.length - 1) === "\\") continue; j === i && (i = []); if (l.preFilter[n]) { f = l.preFilter[n](f, j, d, i, e, m); if (f) { if (f === !0) continue } else g = o = !0 } if (f) for (var s = 0; (p = j[s]) != null; s++) if (p) { o = q(p, f, s, j); var t = e ^ !!o; d && o != null ? t ? g = !0 : j[s] = !1 : t && (i.push(p), g = !0) } if (o !== b) { d || (j = i), a = a.replace(l.match[n], ""); if (!g) return []; break } } if (a === h) if (g == null) k.error(a); else break; h = a } return j }, k.error = function (a) { throw "Syntax error, unrecognized expression: " + a }; var l = k.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|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/, TAG: /^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/, CHILD: /:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/, 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") }, type: function (a) { return a.getAttribute("type") } }, relative: { "+": function (a, b) { var c = typeof b === "string", d = c && !j.test(b), e = c && !d; d && (b = b.toLowerCase()); for (var f = 0, g = a.length, h; f < g; f++) if (h = a[f]) { while ((h = h.previousSibling) && h.nodeType !== 1) { } a[f] = e || h && h.nodeName.toLowerCase() === b ? h || !1 : h === b } e && k.filter(b, a, !0) }, ">": function (a, b) { var c, d = typeof b === "string", e = 0, f = a.length; if (d && !j.test(b)) { b = b.toLowerCase(); for (; e < f; e++) { c = a[e]; if (c) { var g = c.parentNode; a[e] = g.nodeName.toLowerCase() === b ? g : !1 } } } else { for (; e < f; e++) c = a[e], c && (a[e] = d ? c.parentNode : c.parentNode === b); d && k.filter(b, a, !0) } }, "": function (a, b, c) { var d, f = e++, g = u; typeof b === "string" && !j.test(b) && (b = b.toLowerCase(), d = b, g = t), g("parentNode", b, f, a, d, c) }, "~": function (a, b, c) { var d, f = e++, g = u; typeof b === "string" && !j.test(b) && (b = b.toLowerCase(), d = b, g = t), g("previousSibling", b, f, a, d, c) } }, find: { ID: function (a, b, c) { if (typeof b.getElementById !== "undefined" && !c) { var d = b.getElementById(a[1]); return d && d.parentNode ? [d] : [] } }, NAME: function (a, b) { if (typeof b.getElementsByName !== "undefined") { var c = [], d = b.getElementsByName(a[1]); for (var e = 0, f = d.length; e < f; e++) d[e].getAttribute("name") === a[1] && c.push(d[e]); return c.length === 0 ? null : c } }, TAG: function (a, b) { if (typeof b.getElementsByTagName !== "undefined") return b.getElementsByTagName(a[1]) } }, preFilter: { CLASS: function (a, b, c, d, e, f) { a = " " + a[1].replace(i, "") + " "; if (f) return a; for (var g = 0, h; (h = b[g]) != null; g++) h && (e ^ (h.className && (" " + h.className + " ").replace(/[\t\n\r]/g, " ").indexOf(a) >= 0) ? c || d.push(h) : c && (b[g] = !1)); return !1 }, ID: function (a) { return a[1].replace(i, "") }, TAG: function (a, b) { return a[1].replace(i, "").toLowerCase() }, CHILD: function (a) { if (a[1] === "nth") { a[2] || k.error(a[0]), a[2] = a[2].replace(/^\+|\s*/g, ""); 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 } else a[2] && k.error(a[0]); a[0] = e++; return a }, ATTR: function (a, b, c, d, e, f) { var g = a[1] = a[1].replace(i, ""); !f && l.attrMap[g] && (a[1] = l.attrMap[g]), a[4] = (a[4] || a[5] || "").replace(i, ""), a[2] === "~=" && (a[4] = " " + a[4] + " "); return a }, PSEUDO: function (b, c, d, e, f) { if (b[1] === "not") if ((a.exec(b[3]) || "").length > 1 || /^\w/.test(b[3])) b[3] = k(b[3], null, null, c); else { var g = k.filter(b[3], c, d, !0 ^ f); d || e.push.apply(e, g); return !1 } else if (l.match.POS.test(b[0]) || l.match.CHILD.test(b[0])) return !0; return b }, POS: function (a) { a.unshift(!0); return a } }, filters: { enabled: function (a) { return a.disabled === !1 && a.type !== "hidden" }, disabled: function (a) { return a.disabled === !0 }, checked: function (a) { return a.checked === !0 }, selected: function (a) { a.parentNode && a.parentNode.selectedIndex; return a.selected === !0 }, parent: function (a) { return !!a.firstChild }, empty: function (a) { return !a.firstChild }, has: function (a, b, c) { return !!k(c[3], a).length }, header: function (a) { return /h\d/i.test(a.nodeName) }, text: function (a) { var b = a.getAttribute("type"), c = a.type; return "text" === c && (b === c || b === null) }, 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 (a, b, c, d) { var e = b[1], f = l.filters[e]; if (f) return f(a, c, b, d); if (e === "contains") return (a.textContent || a.innerText || k.getText([a]) || "").indexOf(b[3]) >= 0; if (e === "not") { var g = b[3]; for (var h = 0, i = g.length; h < i; h++) if (g[h] === a) return !1; return !0 } k.error(e) }, CHILD: function (a, b) { var c = b[1], d = a; switch (c) { case "only": case "first": while (d = d.previousSibling) if (d.nodeType === 1) return !1; if (c === "first") return !0; d = a; case "last": while (d = d.nextSibling) if (d.nodeType === 1) return !1; return !0; case "nth": var e = b[2], f = b[3]; if (e === 1 && f === 0) return !0; var g = b[0], h = a.parentNode; if (h && (h.sizcache !== g || !a.nodeIndex)) { var i = 0; for (d = h.firstChild; d; d = d.nextSibling) d.nodeType === 1 && (d.nodeIndex = ++i); h.sizcache = g } var j = a.nodeIndex - f; return e === 0 ? j === 0 : j % e === 0 && j / e >= 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], d = l.attrHandle[c] ? l.attrHandle[c](a) : a[c] != null ? a[c] : a.getAttribute(c), e = d + "", f = b[2], g = b[4]; return d == null ? f === "!=" : f === "=" ? e === g : f === "*=" ? e.indexOf(g) >= 0 : f === "~=" ? (" " + e + " ").indexOf(g) >= 0 : g ? f === "!=" ? e !== g : f === "^=" ? e.indexOf(g) === 0 : f === "$=" ? e.substr(e.length - g.length) === g : f === "|=" ? e === g || e.substr(0, g.length + 1) === g + "-" : !1 : e && d !== !1 }, POS: function (a, b, c, d) { var e = b[2], f = l.setFilters[e]; if (f) return f(a, c, b, d) } } }, m = l.match.POS, n = function (a, b) { return "\\" + (b - 0 + 1) }; for (var o in l.match) l.match[o] = new RegExp(l.match[o].source + /(?![^\[]*\])(?![^\(]*\))/.source), l.leftMatch[o] = new RegExp(/(^(?:.|\r|\n)*?)/.source + l.match[o].source.replace(/\\(\d+)/g, n)); var p = 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(c.documentElement.childNodes, 0)[0].nodeType } catch (q) { p = function (a, b) { var c = 0, d = b || []; if (f.call(a) === "[object Array]") Array.prototype.push.apply(d, a); else if (typeof a.length === "number") for (var e = a.length; c < e; c++) d.push(a[c]); else for (; a[c]; c++) d.push(a[c]); return d } } var r, s; c.documentElement.compareDocumentPosition ? r = function (a, b) { if (a === b) { g = !0; return 0 } if (!a.compareDocumentPosition || !b.compareDocumentPosition) return a.compareDocumentPosition ? -1 : 1; return a.compareDocumentPosition(b) & 4 ? -1 : 1 } : (r = function (a, b) { var c, d, e = [], f = [], h = a.parentNode, i = b.parentNode, j = h; if (a === b) { g = !0; return 0 } if (h === i) return s(a, b); if (!h) return -1; if (!i) return 1; while (j) e.unshift(j), j = j.parentNode; j = i; while (j) f.unshift(j), j = j.parentNode; c = e.length, d = f.length; for (var k = 0; k < c && k < d; k++) if (e[k] !== f[k]) return s(e[k], f[k]); return k === c ? s(a, f[k], -1) : s(e[k], b, 1) }, s = function (a, b, c) { if (a === b) return c; var d = a.nextSibling; while (d) { if (d === b) return -1; d = d.nextSibling } return 1 }), k.getText = function (a) { var b = "", c; for (var d = 0; a[d]; d++) c = a[d], c.nodeType === 3 || c.nodeType === 4 ? b += c.nodeValue : c.nodeType !== 8 && (b += k.getText(c.childNodes)); return b }, function () { var a = c.createElement("div"), d = "script" + (new Date).getTime(), e = c.documentElement; a.innerHTML = "<a name='" + d + "'/>", e.insertBefore(a, e.firstChild), c.getElementById(d) && (l.find.ID = function (a, c, d) { if (typeof c.getElementById !== "undefined" && !d) { var e = c.getElementById(a[1]); return e ? e.id === a[1] || typeof e.getAttributeNode !== "undefined" && e.getAttributeNode("id").nodeValue === a[1] ? [e] : b : [] } }, l.filter.ID = function (a, b) { var c = typeof a.getAttributeNode !== "undefined" && a.getAttributeNode("id"); return a.nodeType === 1 && c && c.nodeValue === b }), e.removeChild(a), e = a = null } (), function () { var a = c.createElement("div"); a.appendChild(c.createComment("")), a.getElementsByTagName("*").length > 0 && (l.find.TAG = function (a, b) { var c = b.getElementsByTagName(a[1]); if (a[1] === "*") { var d = []; for (var e = 0; c[e]; e++) c[e].nodeType === 1 && d.push(c[e]); c = d } return c }), a.innerHTML = "<a href='#'></a>", a.firstChild && typeof a.firstChild.getAttribute !== "undefined" && a.firstChild.getAttribute("href") !== "#" && (l.attrHandle.href = function (a) { return a.getAttribute("href", 2) }), a = null } (), c.querySelectorAll && function () { var a = k, b = c.createElement("div"), d = "__sizzle__"; b.innerHTML = "<p class='TEST'></p>"; if (!b.querySelectorAll || b.querySelectorAll(".TEST").length !== 0) { k = function (b, e, f, g) { e = e || c; if (!g && !k.isXML(e)) { var h = /^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b); if (h && (e.nodeType === 1 || e.nodeType === 9)) { if (h[1]) return p(e.getElementsByTagName(b), f); if (h[2] && l.find.CLASS && e.getElementsByClassName) return p(e.getElementsByClassName(h[2]), f) } if (e.nodeType === 9) { if (b === "body" && e.body) return p([e.body], f); if (h && h[3]) { var i = e.getElementById(h[3]); if (!i || !i.parentNode) return p([], f); if (i.id === h[3]) return p([i], f) } try { return p(e.querySelectorAll(b), f) } catch (j) { } } else if (e.nodeType === 1 && e.nodeName.toLowerCase() !== "object") { var m = e, n = e.getAttribute("id"), o = n || d, q = e.parentNode, r = /^\s*[+~]/.test(b); n ? o = o.replace(/'/g, "\\$&") : e.setAttribute("id", o), r && q && (e = e.parentNode); try { if (!r || q) return p(e.querySelectorAll("[id='" + o + "'] " + b), f) } catch (s) { } finally { n || m.removeAttribute("id") } } } return a(b, e, f, g) }; for (var e in a) k[e] = a[e]; b = null } } (), function () { var a = c.documentElement, b = a.matchesSelector || a.mozMatchesSelector || a.webkitMatchesSelector || a.msMatchesSelector; if (b) { var d = !b.call(c.createElement("div"), "div"), e = !1; try { b.call(c.documentElement, "[test!='']:sizzle") } catch (f) { e = !0 } k.matchesSelector = function (a, c) { c = c.replace(/\=\s*([^'"\]]*)\s*\]/g, "='$1']"); if (!k.isXML(a)) try { if (e || !l.match.PSEUDO.test(c) && !/!=/.test(c)) { var f = b.call(a, c); if (f || !d || a.document && a.document.nodeType !== 11) return f } } catch (g) { } return k(c, null, null, [a]).length > 0 } } } (), function () { var a = c.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) return; l.order.splice(1, 0, "CLASS"), l.find.CLASS = function (a, b, c) { if (typeof b.getElementsByClassName !== "undefined" && !c) return b.getElementsByClassName(a[1]) }, a = null } } (), c.documentElement.contains ? k.contains = function (a, b) { return a !== b && (a.contains ? a.contains(b) : !0) } : c.documentElement.compareDocumentPosition ? k.contains = function (a, b) { return !!(a.compareDocumentPosition(b) & 16) } : k.contains = function () { return !1 }, k.isXML = function (a) { var b = (a ? a.ownerDocument || a : 0).documentElement; return b ? b.nodeName !== "HTML" : !1 }; var v = function (a, b) { var c, d = [], e = "", f = b.nodeType ? [b] : b; while (c = l.match.PSEUDO.exec(a)) e += c[0], a = a.replace(l.match.PSEUDO, ""); a = l.relative[a] ? a + "*" : a; for (var g = 0, h = f.length; g < h; g++) k(a, f[g], d); return k.filter(e, d) }; d.find = k, d.expr = k.selectors, d.expr[":"] = d.expr.filters, d.unique = k.uniqueSort, d.text = k.getText, d.isXMLDoc = k.isXML, d.contains = k.contains } (); var I = /Until$/, J = /^(?:parents|prevUntil|prevAll)/, K = /,/, L = /^.[^:#\[\.,]*$/, M = Array.prototype.slice, N = d.expr.match.POS, O = { children: !0, contents: !0, next: !0, prev: !0 }; d.fn.extend({ find: function (a) { var b = this.pushStack("", "find", a), c = 0; for (var e = 0, f = this.length; e < f; e++) { c = b.length, d.find(a, this[e], b); if (e > 0) for (var g = c; g < b.length; g++) for (var h = 0; h < c; h++) if (b[h] === b[g]) { b.splice(g--, 1); break } } return b }, has: function (a) { var b = d(a); return this.filter(function () { for (var a = 0, c = b.length; a < c; a++) if (d.contains(this, b[a])) return !0 }) }, not: function (a) { return this.pushStack(Q(this, a, !1), "not", a) }, filter: function (a) { return this.pushStack(Q(this, a, !0), "filter", a) }, is: function (a) { return !!a && d.filter(a, this).length > 0 }, closest: function (a, b) { var c = [], e, f, g = this[0]; if (d.isArray(a)) { var h, i, j = {}, k = 1; if (g && a.length) { for (e = 0, f = a.length; e < f; e++) i = a[e], j[i] || (j[i] = d.expr.match.POS.test(i) ? d(i, b || this.context) : i); while (g && g.ownerDocument && g !== b) { for (i in j) h = j[i], (h.jquery ? h.index(g) > -1 : d(g).is(h)) && c.push({ selector: i, elem: g, level: k }); g = g.parentNode, k++ } } return c } var l = N.test(a) ? d(a, b || this.context) : null; for (e = 0, f = this.length; e < f; e++) { g = this[e]; while (g) { if (l ? l.index(g) > -1 : d.find.matchesSelector(g, a)) { c.push(g); break } g = g.parentNode; if (!g || !g.ownerDocument || g === b) break } } c = c.length > 1 ? d.unique(c) : c; return this.pushStack(c, "closest", a) }, index: function (a) { if (!a || typeof a === "string") return d.inArray(this[0], a ? d(a) : this.parent().children()); return d.inArray(a.jquery ? a[0] : a, this) }, add: function (a, b) { var c = typeof a === "string" ? d(a, b) : d.makeArray(a), e = d.merge(this.get(), c); return this.pushStack(P(c[0]) || P(e[0]) ? e : d.unique(e)) }, andSelf: function () { return this.add(this.prevObject) } }), d.each({ parent: function (a) { var b = a.parentNode; return b && b.nodeType !== 11 ? b : null }, parents: function (a) { return d.dir(a, "parentNode") }, parentsUntil: function (a, b, c) { return d.dir(a, "parentNode", c) }, next: function (a) { return d.nth(a, 2, "nextSibling") }, prev: function (a) { return d.nth(a, 2, "previousSibling") }, nextAll: function (a) { return d.dir(a, "nextSibling") }, prevAll: function (a) { return d.dir(a, "previousSibling") }, nextUntil: function (a, b, c) { return d.dir(a, "nextSibling", c) }, prevUntil: function (a, b, c) { return d.dir(a, "previousSibling", c) }, siblings: function (a) { return d.sibling(a.parentNode.firstChild, a) }, children: function (a) { return d.sibling(a.firstChild) }, contents: function (a) { return d.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document : d.makeArray(a.childNodes) } }, function (a, b) { d.fn[a] = function (c, e) { var f = d.map(this, b, c), g = M.call(arguments); I.test(a) || (e = c), e && typeof e === "string" && (f = d.filter(e, f)), f = this.length > 1 && !O[a] ? d.unique(f) : f, (this.length > 1 || K.test(e)) && J.test(a) && (f = f.reverse()); return this.pushStack(f, a, g.join(",")) } }), d.extend({ filter: function (a, b, c) { c && (a = ":not(" + a + ")"); return b.length === 1 ? d.find.matchesSelector(b[0], a) ? [b[0]] : [] : d.find.matches(a, b) }, dir: function (a, c, e) { var f = [], g = a[c]; while (g && g.nodeType !== 9 && (e === b || g.nodeType !== 1 || !d(g).is(e))) g.nodeType === 1 && f.push(g), g = g[c]; return f }, nth: function (a, b, c, d) { b = b || 1; var e = 0; for (; a; a = a[c]) if (a.nodeType === 1 && ++e === b) break; return a }, sibling: function (a, b) { var c = []; for (; a; a = a.nextSibling) a.nodeType === 1 && a !== b && c.push(a); return c } }); var R = / jQuery\d+="(?:\d+|null)"/g, S = /^\s+/, T = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig, U = /<([\w:]+)/, V = /<tbody/i, W = /<|&#?\w+;/, X = /<(?:script|object|embed|option|style)/i, Y = /checked\s*(?:[^=]|=\s*.checked.)/i, Z = { 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, "", ""] }; Z.optgroup = Z.option, Z.tbody = Z.tfoot = Z.colgroup = Z.caption = Z.thead, Z.th = Z.td, d.support.htmlSerialize || (Z._default = [1, "div<div>", "</div>"]), d.fn.extend({ text: function (a) { if (d.isFunction(a)) return this.each(function (b) { var c = d(this); c.text(a.call(this, b, c.text())) }); if (typeof a !== "object" && a !== b) return this.empty().append((this[0] && this[0].ownerDocument || c).createTextNode(a)); return d.text(this) }, wrapAll: function (a) { if (d.isFunction(a)) return this.each(function (b) { d(this).wrapAll(a.call(this, b)) }); if (this[0]) { var b = d(a, this[0].ownerDocument).eq(0).clone(!0); this[0].parentNode && b.insertBefore(this[0]), b.map(function () { var a = this; while (a.firstChild && a.firstChild.nodeType === 1) a = a.firstChild; return a }).append(this) } return this }, wrapInner: function (a) { if (d.isFunction(a)) return this.each(function (b) { d(this).wrapInner(a.call(this, b)) }); return this.each(function () { var b = d(this), c = b.contents(); c.length ? c.wrapAll(a) : b.append(a) }) }, wrap: function (a) { return this.each(function () { d(this).wrapAll(a) }) }, unwrap: function () { return this.parent().each(function () { d.nodeName(this, "body") || d(this).replaceWith(this.childNodes) }).end() }, append: function () { return this.domManip(arguments, !0, function (a) { this.nodeType === 1 && this.appendChild(a) }) }, prepend: function () { return this.domManip(arguments, !0, function (a) { this.nodeType === 1 && this.insertBefore(a, this.firstChild) }) }, before: function () { if (this[0] && this[0].parentNode) return this.domManip(arguments, !1, function (a) { this.parentNode.insertBefore(a, this) }); if (arguments.length) { var a = d(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, !1, function (a) { this.parentNode.insertBefore(a, this.nextSibling) }); if (arguments.length) { var a = this.pushStack(this, "after", arguments); a.push.apply(a, d(arguments[0]).toArray()); return a } }, remove: function (a, b) { for (var c = 0, e; (e = this[c]) != null; c++) if (!a || d.filter(a, [e]).length) !b && e.nodeType === 1 && (d.cleanData(e.getElementsByTagName("*")), d.cleanData([e])), e.parentNode && e.parentNode.removeChild(e); return this }, empty: function () { for (var a = 0, b; (b = this[a]) != null; a++) { b.nodeType === 1 && d.cleanData(b.getElementsByTagName("*")); while (b.firstChild) b.removeChild(b.firstChild) } return this }, clone: function (a, b) { a = a == null ? !1 : a, b = b == null ? a : b; return this.map(function () { return d.clone(this, a, b) }) }, html: function (a) { if (a === b) return this[0] && this[0].nodeType === 1 ? this[0].innerHTML.replace(R, "") : null; if (typeof a !== "string" || X.test(a) || !d.support.leadingWhitespace && S.test(a) || Z[(U.exec(a) || ["", ""])[1].toLowerCase()]) d.isFunction(a) ? this.each(function (b) { var c = d(this); c.html(a.call(this, b, c.html())) }) : this.empty().append(a); else { a = a.replace(T, "<$1></$2>"); try { for (var c = 0, e = this.length; c < e; c++) this[c].nodeType === 1 && (d.cleanData(this[c].getElementsByTagName("*")), this[c].innerHTML = a) } catch (f) { this.empty().append(a) } } return this }, replaceWith: function (a) { if (this[0] && this[0].parentNode) { if (d.isFunction(a)) return this.each(function (b) { var c = d(this), e = c.html(); c.replaceWith(a.call(this, b, e)) }); typeof a !== "string" && (a = d(a).detach()); return this.each(function () { var b = this.nextSibling, c = this.parentNode; d(this).remove(), b ? d(b).before(a) : d(c).append(a) }) } return this.length ? this.pushStack(d(d.isFunction(a) ? a() : a), "replaceWith", a) : this }, detach: function (a) { return this.remove(a, !0) }, domManip: function (a, c, e) { var f, g, h, i, j = a[0], k = []; if (!d.support.checkClone && arguments.length === 3 && typeof j === "string" && Y.test(j)) return this.each(function () { d(this).domManip(a, c, e, !0) }); if (d.isFunction(j)) return this.each(function (f) { var g = d(this); a[0] = j.call(this, f, c ? g.html() : b), g.domManip(a, c, e) }); if (this[0]) { i = j && j.parentNode, d.support.parentNode && i && i.nodeType === 11 && i.childNodes.length === this.length ? f = { fragment: i} : f = d.buildFragment(a, this, k), h = f.fragment, h.childNodes.length === 1 ? g = h = h.firstChild : g = h.firstChild; if (g) { c = c && d.nodeName(g, "tr"); for (var l = 0, m = this.length, n = m - 1; l < m; l++) e.call(c ? $(this[l], g) : this[l], f.cacheable || m > 1 && l < n ? d.clone(h, !0, !0) : h) } k.length && d.each(k, bc) } return this } }), d.buildFragment = function (a, b, e) { var f, g, h, i = b && b[0] ? b[0].ownerDocument || b[0] : c; a.length === 1 && typeof a[0] === "string" && a[0].length < 512 && i === c && a[0].charAt(0) === "<" && !X.test(a[0]) && (d.support.checkClone || !Y.test(a[0])) && (g = !0, h = d.fragments[a[0]], h && (h !== 1 && (f = h))), f || (f = i.createDocumentFragment(), d.clean(a, i, f, e)), g && (d.fragments[a[0]] = h ? f : 1); return { fragment: f, cacheable: g} }, d.fragments = {}, d.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function (a, b) { d.fn[a] = function (c) { var e = [], f = d(c), g = this.length === 1 && this[0].parentNode; if (g && g.nodeType === 11 && g.childNodes.length === 1 && f.length === 1) { f[b](this[0]); return this } for (var h = 0, i = f.length; h < i; h++) { var j = (h > 0 ? this.clone(!0) : this).get(); d(f[h])[b](j), e = e.concat(j) } return this.pushStack(e, a, f.selector) } }), d.extend({ clone: function (a, b, c) { var e = a.cloneNode(!0), f, g, h; if ((!d.support.noCloneEvent || !d.support.noCloneChecked) && (a.nodeType === 1 || a.nodeType === 11) && !d.isXMLDoc(a)) { ba(a, e), f = bb(a), g = bb(e); for (h = 0; f[h]; ++h) ba(f[h], g[h]) } if (b) { _(a, e); if (c) { f = bb(a), g = bb(e); for (h = 0; f[h]; ++h) _(f[h], g[h]) } } return e }, clean: function (a, b, e, f) { b = b || c, typeof b.createElement === "undefined" && (b = b.ownerDocument || b[0] && b[0].ownerDocument || c); var g = []; for (var h = 0, i; (i = a[h]) != null; h++) { typeof i === "number" && (i += ""); if (!i) continue; if (typeof i !== "string" || W.test(i)) { if (typeof i === "string") { i = i.replace(T, "<$1></$2>"); var j = (U.exec(i) || ["", ""])[1].toLowerCase(), k = Z[j] || Z._default, l = k[0], m = b.createElement("div"); m.innerHTML = k[1] + i + k[2]; while (l--) m = m.lastChild; if (!d.support.tbody) { var n = V.test(i), o = j === "table" && !n ? m.firstChild && m.firstChild.childNodes : k[1] === "<table>" && !n ? m.childNodes : []; for (var p = o.length - 1; p >= 0; --p) d.nodeName(o[p], "tbody") && !o[p].childNodes.length && o[p].parentNode.removeChild(o[p]) } !d.support.leadingWhitespace && S.test(i) && m.insertBefore(b.createTextNode(S.exec(i)[0]), m.firstChild), i = m.childNodes } } else i = b.createTextNode(i); i.nodeType ? g.push(i) : g = d.merge(g, i) } if (e) for (h = 0; g[h]; h++) !f || !d.nodeName(g[h], "script") || g[h].type && g[h].type.toLowerCase() !== "text/javascript" ? (g[h].nodeType === 1 && g.splice.apply(g, [h + 1, 0].concat(d.makeArray(g[h].getElementsByTagName("script")))), e.appendChild(g[h])) : f.push(g[h].parentNode ? g[h].parentNode.removeChild(g[h]) : g[h]); return g }, cleanData: function (a) { var b, c, e = d.cache, f = d.expando, g = d.event.special, h = d.support.deleteExpando; for (var i = 0, j; (j = a[i]) != null; i++) { if (j.nodeName && d.noData[j.nodeName.toLowerCase()]) continue; c = j[d.expando]; if (c) { b = e[c] && e[c][f]; if (b && b.events) { for (var k in b.events) g[k] ? d.event.remove(j, k) : d.removeEvent(j, k, b.handle); b.handle && (b.handle.elem = null) } h ? delete j[d.expando] : j.removeAttribute && j.removeAttribute(d.expando), delete e[c] } } } }); var bd = /alpha\([^)]*\)/i, be = /opacity=([^)]*)/, bf = /-([a-z])/ig, bg = /([A-Z]|^ms)/g, bh = /^-?\d+(?:px)?$/i, bi = /^-?\d/, bj = { position: "absolute", visibility: "hidden", display: "block" }, bk = ["Left", "Right"], bl = ["Top", "Bottom"], bm, bn, bo, bp = function (a, b) { return b.toUpperCase() }; d.fn.css = function (a, c) { if (arguments.length === 2 && c === b) return this; return d.access(this, a, c, !0, function (a, c, e) { return e !== b ? d.style(a, c, e) : d.css(a, c) }) }, d.extend({ cssHooks: { opacity: { get: function (a, b) { if (b) { var c = bm(a, "opacity", "opacity"); return c === "" ? "1" : c } return a.style.opacity } } }, cssNumber: { zIndex: !0, fontWeight: !0, opacity: !0, zoom: !0, lineHeight: !0 }, cssProps: { "float": d.support.cssFloat ? "cssFloat" : "styleFloat" }, style: function (a, c, e, f) { if (a && a.nodeType !== 3 && a.nodeType !== 8 && a.style) { var g, h = d.camelCase(c), i = a.style, j = d.cssHooks[h]; c = d.cssProps[h] || h; if (e === b) { if (j && "get" in j && (g = j.get(a, !1, f)) !== b) return g; return i[c] } if (typeof e === "number" && isNaN(e) || e == null) return; typeof e === "number" && !d.cssNumber[h] && (e += "px"); if (!j || !("set" in j) || (e = j.set(a, e)) !== b) try { i[c] = e } catch (k) { } } }, css: function (a, c, e) { var f, g = d.camelCase(c), h = d.cssHooks[g]; c = d.cssProps[g] || g; if (h && "get" in h && (f = h.get(a, !0, e)) !== b) return f; if (bm) return bm(a, c, g) }, 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] }, camelCase: function (a) { return a.replace(bf, bp) } }), d.curCSS = d.css, d.each(["height", "width"], function (a, b) { d.cssHooks[b] = { get: function (a, c, e) { var f; if (c) { a.offsetWidth !== 0 ? f = bq(a, b, e) : d.swap(a, bj, function () { f = bq(a, b, e) }); if (f <= 0) { f = bm(a, b, b), f === "0px" && bo && (f = bo(a, b, b)); if (f != null) return f === "" || f === "auto" ? "0px" : f } if (f < 0 || f == null) { f = a.style[b]; return f === "" || f === "auto" ? "0px" : f } return typeof f === "string" ? f : f + "px" } }, set: function (a, b) { if (!bh.test(b)) return b; b = parseFloat(b); if (b >= 0) return b + "px" } } }), d.support.opacity || (d.cssHooks.opacity = { get: function (a, b) { return be.test((b && a.currentStyle ? a.currentStyle.filter : a.style.filter) || "") ? parseFloat(RegExp.$1) / 100 + "" : b ? "1" : "" }, set: function (a, b) { var c = a.style; c.zoom = 1; var e = d.isNaN(b) ? "" : "alpha(opacity=" + b * 100 + ")", f = c.filter || ""; c.filter = bd.test(f) ? f.replace(bd, e) : c.filter + " " + e } }), d(function () { d.support.reliableMarginRight || (d.cssHooks.marginRight = { get: function (a, b) { var c; d.swap(a, { display: "inline-block" }, function () { b ? c = bm(a, "margin-right", "marginRight") : c = a.style.marginRight }); return c } }) }), c.defaultView && c.defaultView.getComputedStyle && (bn = function (a, c, e) { var f, g, h; e = e.replace(bg, "-$1").toLowerCase(); if (!(g = a.ownerDocument.defaultView)) return b; if (h = g.getComputedStyle(a, null)) f = h.getPropertyValue(e), f === "" && !d.contains(a.ownerDocument.documentElement, a) && (f = d.style(a, e)); return f }), c.documentElement.currentStyle && (bo = function (a, b) { var c, d = a.currentStyle && a.currentStyle[b], e = a.runtimeStyle && a.runtimeStyle[b], f = a.style; !bh.test(d) && bi.test(d) && (c = f.left, e && (a.runtimeStyle.left = a.currentStyle.left), f.left = b === "fontSize" ? "1em" : d || 0, d = f.pixelLeft + "px", f.left = c, e && (a.runtimeStyle.left = e)); return d === "" ? "auto" : d }), bm = bn || bo, d.expr && d.expr.filters && (d.expr.filters.hidden = function (a) { var b = a.offsetWidth, c = a.offsetHeight; return b === 0 && c === 0 || !d.support.reliableHiddenOffsets && (a.style.display || d.css(a, "display")) === "none" }, d.expr.filters.visible = function (a) { return !d.expr.filters.hidden(a) }); var br = /%20/g, bs = /\[\]$/, bt = /\r?\n/g, bu = /#.*$/, bv = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, bw = /^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i, bx = /^(?:about|app|app\-storage|.+\-extension|file|widget):$/, by = /^(?:GET|HEAD)$/, bz = /^\/\//, bA = /\?/, bB = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, bC = /^(?:select|textarea)/i, bD = /\s+/, bE = /([?&])_=[^&]*/, bF = /(^|\-)([a-z])/g, bG = function (a, b, c) { return b + c.toUpperCase() }, bH = /^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/, bI = d.fn.load, bJ = {}, bK = {}, bL, bM; try { bL = c.location.href } catch (bN) { bL = c.createElement("a"), bL.href = "", bL = bL.href } bM = bH.exec(bL.toLowerCase()) || [], d.fn.extend({ load: function (a, c, e) { if (typeof a !== "string" && bI) return bI.apply(this, arguments); if (!this.length) return this; var f = a.indexOf(" "); if (f >= 0) { var g = a.slice(f, a.length); a = a.slice(0, f) } var h = "GET"; c && (d.isFunction(c) ? (e = c, c = b) : typeof c === "object" && (c = d.param(c, d.ajaxSettings.traditional), h = "POST")); var i = this; d.ajax({ url: a, type: h, dataType: "html", data: c, complete: function (a, b, c) { c = a.responseText, a.isResolved() && (a.done(function (a) { c = a }), i.html(g ? d("<div>").append(c.replace(bB, "")).find(g) : c)), e && i.each(e, [c, b, a]) } }); return this }, serialize: function () { return d.param(this.serializeArray()) }, serializeArray: function () { return this.map(function () { return this.elements ? d.makeArray(this.elements) : this }).filter(function () { return this.name && !this.disabled && (this.checked || bC.test(this.nodeName) || bw.test(this.type)) }).map(function (a, b) { var c = d(this).val(); return c == null ? null : d.isArray(c) ? d.map(c, function (a, c) { return { name: b.name, value: a.replace(bt, "\r\n")} }) : { name: b.name, value: c.replace(bt, "\r\n")} }).get() } }), d.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), function (a, b) { d.fn[b] = function (a) { return this.bind(b, a) } }), d.each(["get", "post"], function (a, c) { d[c] = function (a, e, f, g) { d.isFunction(e) && (g = g || f, f = e, e = b); return d.ajax({ type: c, url: a, data: e, success: f, dataType: g }) } }), d.extend({ getScript: function (a, c) { return d.get(a, b, c, "script") }, getJSON: function (a, b, c) { return d.get(a, b, c, "json") }, ajaxSetup: function (a, b) { b ? d.extend(!0, a, d.ajaxSettings, b) : (b = a, a = d.extend(!0, d.ajaxSettings, b)); for (var c in { context: 1, url: 1 }) c in b ? a[c] = b[c] : c in d.ajaxSettings && (a[c] = d.ajaxSettings[c]); return a }, ajaxSettings: { url: bL, isLocal: bx.test(bM[1]), global: !0, type: "GET", contentType: "application/x-www-form-urlencoded", processData: !0, async: !0, accepts: { xml: "application/xml, text/xml", html: "text/html", text: "text/plain", json: "application/json, text/javascript", "*": "*/*" }, contents: { xml: /xml/, html: /html/, json: /json/ }, responseFields: { xml: "responseXML", text: "responseText" }, converters: { "* text": a.String, "text html": !0, "text json": d.parseJSON, "text xml": d.parseXML} }, ajaxPrefilter: bO(bJ), ajaxTransport: bO(bK), ajax: function (a, c) { function v(a, c, l, n) { if (r !== 2) { r = 2, p && clearTimeout(p), o = b, m = n || "", u.readyState = a ? 4 : 0; var q, t, v, w = l ? bR(e, u, l) : b, x, y; if (a >= 200 && a < 300 || a === 304) { if (e.ifModified) { if (x = u.getResponseHeader("Last-Modified")) d.lastModified[k] = x; if (y = u.getResponseHeader("Etag")) d.etag[k] = y } if (a === 304) c = "notmodified", q = !0; else try { t = bS(e, w), c = "success", q = !0 } catch (z) { c = "parsererror", v = z } } else { v = c; if (!c || a) c = "error", a < 0 && (a = 0) } u.status = a, u.statusText = c, q ? h.resolveWith(f, [t, c, u]) : h.rejectWith(f, [u, c, v]), u.statusCode(j), j = b, s && g.trigger("ajax" + (q ? "Success" : "Error"), [u, e, q ? t : v]), i.resolveWith(f, [u, c]), s && (g.trigger("ajaxComplete", [u, e]), --d.active || d.event.trigger("ajaxStop")) } } typeof a === "object" && (c = a, a = b), c = c || {}; var e = d.ajaxSetup({}, c), f = e.context || e, g = f !== e && (f.nodeType || f instanceof d) ? d(f) : d.event, h = d.Deferred(), i = d._Deferred(), j = e.statusCode || {}, k, l = {}, m, n, o, p, q, r = 0, s, t, u = { readyState: 0, setRequestHeader: function (a, b) { r || (l[a.toLowerCase().replace(bF, bG)] = b); return this }, getAllResponseHeaders: function () { return r === 2 ? m : null }, getResponseHeader: function (a) { var c; if (r === 2) { if (!n) { n = {}; while (c = bv.exec(m)) n[c[1].toLowerCase()] = c[2] } c = n[a.toLowerCase()] } return c === b ? null : c }, overrideMimeType: function (a) { r || (e.mimeType = a); return this }, abort: function (a) { a = a || "abort", o && o.abort(a), v(0, a); return this } }; h.promise(u), u.success = u.done, u.error = u.fail, u.complete = i.done, u.statusCode = function (a) { if (a) { var b; if (r < 2) for (b in a) j[b] = [j[b], a[b]]; else b = a[u.status], u.then(b, b) } return this }, e.url = ((a || e.url) + "").replace(bu, "").replace(bz, bM[1] + "//"), e.dataTypes = d.trim(e.dataType || "*").toLowerCase().split(bD), e.crossDomain == null && (q = bH.exec(e.url.toLowerCase()), e.crossDomain = q && (q[1] != bM[1] || q[2] != bM[2] || (q[3] || (q[1] === "http:" ? 80 : 443)) != (bM[3] || (bM[1] === "http:" ? 80 : 443)))), e.data && e.processData && typeof e.data !== "string" && (e.data = d.param(e.data, e.traditional)), bP(bJ, e, c, u); if (r === 2) return !1; s = e.global, e.type = e.type.toUpperCase(), e.hasContent = !by.test(e.type), s && d.active++ === 0 && d.event.trigger("ajaxStart"); if (!e.hasContent) { e.data && (e.url += (bA.test(e.url) ? "&" : "?") + e.data), k = e.url; if (e.cache === !1) { var w = d.now(), x = e.url.replace(bE, "$1_=" + w); e.url = x + (x === e.url ? (bA.test(e.url) ? "&" : "?") + "_=" + w : "") } } if (e.data && e.hasContent && e.contentType !== !1 || c.contentType) l["Content-Type"] = e.contentType; e.ifModified && (k = k || e.url, d.lastModified[k] && (l["If-Modified-Since"] = d.lastModified[k]), d.etag[k] && (l["If-None-Match"] = d.etag[k])), l.Accept = e.dataTypes[0] && e.accepts[e.dataTypes[0]] ? e.accepts[e.dataTypes[0]] + (e.dataTypes[0] !== "*" ? ", */*; q=0.01" : "") : e.accepts["*"]; for (t in e.headers) u.setRequestHeader(t, e.headers[t]); if (e.beforeSend && (e.beforeSend.call(f, u, e) === !1 || r === 2)) { u.abort(); return !1 } for (t in { success: 1, error: 1, complete: 1 }) u[t](e[t]); o = bP(bK, e, c, u); if (o) { u.readyState = 1, s && g.trigger("ajaxSend", [u, e]), e.async && e.timeout > 0 && (p = setTimeout(function () { u.abort("timeout") }, e.timeout)); try { r = 1, o.send(l, v) } catch (y) { status < 2 ? v(-1, y) : d.error(y) } } else v(-1, "No Transport"); return u }, param: function (a, c) { var e = [], f = function (a, b) { b = d.isFunction(b) ? b() : b, e[e.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b) }; c === b && (c = d.ajaxSettings.traditional); if (d.isArray(a) || a.jquery && !d.isPlainObject(a)) d.each(a, function () { f(this.name, this.value) }); else for (var g in a) bQ(g, a[g], c, f); return e.join("&").replace(br, "+") } }), d.extend({ active: 0, lastModified: {}, etag: {} }); var bT = d.now(), bU = /(\=)\?(&|$)|\?\?/i; d.ajaxSetup({ jsonp: "callback", jsonpCallback: function () { return d.expando + "_" + bT++ } }), d.ajaxPrefilter("json jsonp", function (b, c, e) { var f = typeof b.data === "string"; if (b.dataTypes[0] === "jsonp" || c.jsonpCallback || c.jsonp != null || b.jsonp !== !1 && (bU.test(b.url) || f && bU.test(b.data))) { var g, h = b.jsonpCallback = d.isFunction(b.jsonpCallback) ? b.jsonpCallback() : b.jsonpCallback, i = a[h], j = b.url, k = b.data, l = "$1" + h + "$2", m = function () { a[h] = i, g && d.isFunction(i) && a[h](g[0]) }; b.jsonp !== !1 && (j = j.replace(bU, l), b.url === j && (f && (k = k.replace(bU, l)), b.data === k && (j += (/\?/.test(j) ? "&" : "?") + b.jsonp + "=" + h))), b.url = j, b.data = k, a[h] = function (a) { g = [a] }, e.then(m, m), b.converters["script json"] = function () { g || d.error(h + " was not called"); return g[0] }, b.dataTypes[0] = "json"; return "script" } }), d.ajaxSetup({ accepts: { script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" }, contents: { script: /javascript|ecmascript/ }, converters: { "text script": function (a) { d.globalEval(a); return a } } }), d.ajaxPrefilter("script", function (a) { a.cache === b && (a.cache = !1), a.crossDomain && (a.type = "GET", a.global = !1) }), d.ajaxTransport("script", function (a) { if (a.crossDomain) { var d, e = c.head || c.getElementsByTagName("head")[0] || c.documentElement; return { send: function (f, g) { d = c.createElement("script"), d.async = "async", a.scriptCharset && (d.charset = a.scriptCharset), d.src = a.url, d.onload = d.onreadystatechange = function (a, c) { if (!d.readyState || /loaded|complete/.test(d.readyState)) d.onload = d.onreadystatechange = null, e && d.parentNode && e.removeChild(d), d = b, c || g(200, "success") }, e.insertBefore(d, e.firstChild) }, abort: function () { d && d.onload(0, 1) } } } }); var bV = d.now(), bW, bX; d.ajaxSettings.xhr = a.ActiveXObject ? function () { return !this.isLocal && bZ() || b$() } : bZ, bX = d.ajaxSettings.xhr(), d.support.ajax = !!bX, d.support.cors = bX && "withCredentials" in bX, bX = b, d.support.ajax && d.ajaxTransport(function (a) { if (!a.crossDomain || d.support.cors) { var c; return { send: function (e, f) { var g = a.xhr(), h, i; a.username ? g.open(a.type, a.url, a.async, a.username, a.password) : g.open(a.type, a.url, a.async); if (a.xhrFields) for (i in a.xhrFields) g[i] = a.xhrFields[i]; a.mimeType && g.overrideMimeType && g.overrideMimeType(a.mimeType), !a.crossDomain && !e["X-Requested-With"] && (e["X-Requested-With"] = "XMLHttpRequest"); try { for (i in e) g.setRequestHeader(i, e[i]) } catch (j) { } g.send(a.hasContent && a.data || null), c = function (e, i) { var j, k, l, m, n; try { if (c && (i || g.readyState === 4)) { c = b, h && (g.onreadystatechange = d.noop, delete bW[h]); if (i) g.readyState !== 4 && g.abort(); else { j = g.status, l = g.getAllResponseHeaders(), m = {}, n = g.responseXML, n && n.documentElement && (m.xml = n), m.text = g.responseText; try { k = g.statusText } catch (o) { k = "" } j || !a.isLocal || a.crossDomain ? j === 1223 && (j = 204) : j = m.text ? 200 : 404 } } } catch (p) { i || f(-1, p) } m && f(j, k, m, l) }, a.async && g.readyState !== 4 ? (bW || (bW = {}, bY()), h = bV++, g.onreadystatechange = bW[h] = c) : c() }, abort: function () { c && c(0, 1) } } } }); var b_ = {}, ca = /^(?:toggle|show|hide)$/, cb = /^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i, cc, cd = [["height", "marginTop", "marginBottom", "paddingTop", "paddingBottom"], ["width", "marginLeft", "marginRight", "paddingLeft", "paddingRight"], ["opacity"]]; d.fn.extend({ show: function (a, b, c) { var e, f; if (a || a === 0) return this.animate(ce("show", 3), a, b, c); for (var g = 0, h = this.length; g < h; g++) e = this[g], f = e.style.display, !d._data(e, "olddisplay") && f === "none" && (f = e.style.display = ""), f === "" && d.css(e, "display") === "none" && d._data(e, "olddisplay", cf(e.nodeName)); for (g = 0; g < h; g++) { e = this[g], f = e.style.display; if (f === "" || f === "none") e.style.display = d._data(e, "olddisplay") || "" } return this }, hide: function (a, b, c) { if (a || a === 0) return this.animate(ce("hide", 3), a, b, c); for (var e = 0, f = this.length; e < f; e++) { var g = d.css(this[e], "display"); g !== "none" && !d._data(this[e], "olddisplay") && d._data(this[e], "olddisplay", g) } for (e = 0; e < f; e++) this[e].style.display = "none"; return this }, _toggle: d.fn.toggle, toggle: function (a, b, c) { var e = typeof a === "boolean"; d.isFunction(a) && d.isFunction(b) ? this._toggle.apply(this, arguments) : a == null || e ? this.each(function () { var b = e ? a : d(this).is(":hidden"); d(this)[b ? "show" : "hide"]() }) : this.animate(ce("toggle", 3), a, b, c); return this }, fadeTo: function (a, b, c, d) { return this.filter(":hidden").css("opacity", 0).show().end().animate({ opacity: b }, a, c, d) }, animate: function (a, b, c, e) { var f = d.speed(b, c, e); if (d.isEmptyObject(a)) return this.each(f.complete); return this[f.queue === !1 ? "each" : "queue"](function () { var b = d.extend({}, f), c, e = this.nodeType === 1, g = e && d(this).is(":hidden"), h = this; for (c in a) { var i = d.camelCase(c); c !== i && (a[i] = a[c], delete a[c], c = i); if (a[c] === "hide" && g || a[c] === "show" && !g) return b.complete.call(this); if (e && (c === "height" || c === "width")) { b.overflow = [this.style.overflow, this.style.overflowX, this.style.overflowY]; if (d.css(this, "display") === "inline" && d.css(this, "float") === "none") if (d.support.inlineBlockNeedsLayout) { var j = cf(this.nodeName); j === "inline" ? this.style.display = "inline-block" : (this.style.display = "inline", this.style.zoom = 1) } else this.style.display = "inline-block" } d.isArray(a[c]) && ((b.specialEasing = b.specialEasing || {})[c] = a[c][1], a[c] = a[c][0]) } b.overflow != null && (this.style.overflow = "hidden"), b.curAnim = d.extend({}, a), d.each(a, function (c, e) { var f = new d.fx(h, b, c); if (ca.test(e)) f[e === "toggle" ? g ? "show" : "hide" : e](a); else { var i = cb.exec(e), j = f.cur(); if (i) { var k = parseFloat(i[2]), l = i[3] || (d.cssNumber[c] ? "" : "px"); l !== "px" && (d.style(h, c, (k || 1) + l), j = (k || 1) / f.cur() * j, d.style(h, c, j + l)), i[1] && (k = (i[1] === "-=" ? -1 : 1) * k + j), f.custom(j, k, l) } else f.custom(j, e, "") } }); return !0 }) }, stop: function (a, b) { var c = d.timers; a && this.queue([]), this.each(function () { for (var a = c.length - 1; a >= 0; a--) c[a].elem === this && (b && c[a](!0), c.splice(a, 1)) }), b || this.dequeue(); return this } }), d.each({ slideDown: ce("show", 1), slideUp: ce("hide", 1), slideToggle: ce("toggle", 1), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide" }, fadeToggle: { opacity: "toggle"} }, function (a, b) { d.fn[a] = function (a, c, d) { return this.animate(b, a, c, d) } }), d.extend({ speed: function (a, b, c) { var e = a && typeof a === "object" ? d.extend({}, a) : { complete: c || !c && b || d.isFunction(a) && a, duration: a, easing: c && b || b && !d.isFunction(b) && b }; e.duration = d.fx.off ? 0 : typeof e.duration === "number" ? e.duration : e.duration in d.fx.speeds ? d.fx.speeds[e.duration] : d.fx.speeds._default, e.old = e.complete, e.complete = function () { e.queue !== !1 && d(this).dequeue(), d.isFunction(e.old) && e.old.call(this) }; return e }, 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, b.orig || (b.orig = {}) } }), d.fx.prototype = { update: function () { this.options.step && this.options.step.call(this.elem, this.now, this), (d.fx.step[this.prop] || d.fx.step._default)(this) }, cur: function () { if (this.elem[this.prop] != null && (!this.elem.style || this.elem.style[this.prop] == null)) return this.elem[this.prop]; var a, b = d.css(this.elem, this.prop); return isNaN(a = parseFloat(b)) ? !b || b === "auto" ? 0 : b : a }, custom: function (a, b, c) { function g(a) { return e.step(a) } var e = this, f = d.fx; this.startTime = d.now(), this.start = a, this.end = b, this.unit = c || this.unit || (d.cssNumber[this.prop] ? "" : "px"), this.now = this.start, this.pos = this.state = 0, g.elem = this.elem, g() && d.timers.push(g) && !cc && (cc = setInterval(f.tick, f.interval)) }, show: function () { this.options.orig[this.prop] = d.style(this.elem, this.prop), this.options.show = !0, this.custom(this.prop === "width" || this.prop === "height" ? 1 : 0, this.cur()), d(this.elem).show() }, hide: function () { this.options.orig[this.prop] = d.style(this.elem, this.prop), this.options.hide = !0, this.custom(this.cur(), 0) }, step: function (a) { var b = d.now(), c = !0; if (a || b >= this.options.duration + this.startTime) { this.now = this.end, this.pos = this.state = 1, this.update(), this.options.curAnim[this.prop] = !0; for (var e in this.options.curAnim) this.options.curAnim[e] !== !0 && (c = !1); if (c) { if (this.options.overflow != null && !d.support.shrinkWrapBlocks) { var f = this.elem, g = this.options; d.each(["", "X", "Y"], function (a, b) { f.style["overflow" + b] = g.overflow[a] }) } this.options.hide && d(this.elem).hide(); if (this.options.hide || this.options.show) for (var h in this.options.curAnim) d.style(this.elem, h, this.options.orig[h]); this.options.complete.call(this.elem) } return !1 } var i = b - this.startTime; this.state = i / this.options.duration; var j = this.options.specialEasing && this.options.specialEasing[this.prop], k = this.options.easing || (d.easing.swing ? "swing" : "linear"); this.pos = d.easing[j || k](this.state, i, 0, 1, this.options.duration), this.now = this.start + (this.end - this.start) * this.pos, this.update(); return !0 } }, d.extend(d.fx, { tick: function () { var a = d.timers; for (var b = 0; b < a.length; b++) a[b]() || a.splice(b--, 1); a.length || d.fx.stop() }, interval: 13, stop: function () { clearInterval(cc), cc = null }, speeds: { slow: 600, fast: 200, _default: 400 }, step: { opacity: function (a) { d.style(a.elem, "opacity", a.now) }, _default: function (a) { 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 : a.elem[a.prop] = a.now } } }), d.expr && d.expr.filters && (d.expr.filters.animated = function (a) { return d.grep(d.timers, function (b) { return a === b.elem }).length }); var cg = /^t(?:able|d|h)$/i, ch = /^(?:body|html)$/i; "getBoundingClientRect" in c.documentElement ? d.fn.offset = function (a) { var b = this[0], c; if (a) return this.each(function (b) { d.offset.setOffset(this, a, b) }); if (!b || !b.ownerDocument) return null; if (b === b.ownerDocument.body) return d.offset.bodyOffset(b); try { c = b.getBoundingClientRect() } catch (e) { } var f = b.ownerDocument, g = f.documentElement; if (!c || !d.contains(g, b)) return c ? { top: c.top, left: c.left} : { top: 0, left: 0 }; var h = f.body, i = ci(f), j = g.clientTop || h.clientTop || 0, k = g.clientLeft || h.clientLeft || 0, l = i.pageYOffset || d.support.boxModel && g.scrollTop || h.scrollTop, m = i.pageXOffset || d.support.boxModel && g.scrollLeft || h.scrollLeft, n = c.top + l - j, o = c.left + m - k; return { top: n, left: o} } : d.fn.offset = function (a) { var b = this[0]; if (a) return this.each(function (b) { d.offset.setOffset(this, a, b) }); if (!b || !b.ownerDocument) return null; if (b === b.ownerDocument.body) return d.offset.bodyOffset(b); d.offset.initialize(); var c, e = b.offsetParent, f = b, g = b.ownerDocument, h = g.documentElement, i = g.body, j = g.defaultView, k = j ? j.getComputedStyle(b, null) : b.currentStyle, l = b.offsetTop, m = b.offsetLeft; while ((b = b.parentNode) && b !== i && b !== h) { if (d.offset.supportsFixedPosition && k.position === "fixed") break; c = j ? j.getComputedStyle(b, null) : b.currentStyle, l -= b.scrollTop, m -= b.scrollLeft, b === e && (l += b.offsetTop, m += b.offsetLeft, d.offset.doesNotAddBorder && (!d.offset.doesAddBorderForTableAndCells || !cg.test(b.nodeName)) && (l += parseFloat(c.borderTopWidth) || 0, m += parseFloat(c.borderLeftWidth) || 0), f = e, e = b.offsetParent), d.offset.subtractsBorderForOverflowNotVisible && c.overflow !== "visible" && (l += parseFloat(c.borderTopWidth) || 0, m += parseFloat(c.borderLeftWidth) || 0), k = c } if (k.position === "relative" || k.position === "static") l += i.offsetTop, m += i.offsetLeft; d.offset.supportsFixedPosition && k.position === "fixed" && (l += Math.max(h.scrollTop, i.scrollTop), m += Math.max(h.scrollLeft, i.scrollLeft)); return { top: l, left: m} }, d.offset = { initialize: function () { var a = c.body, b = c.createElement("div"), e, f, g, h, i = parseFloat(d.css(a, "marginTop")) || 0, j = "<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>"; d.extend(b.style, { position: "absolute", top: 0, left: 0, margin: 0, border: 0, width: "1px", height: "1px", visibility: "hidden" }), b.innerHTML = j, a.insertBefore(b, a.firstChild), e = b.firstChild, f = e.firstChild, h = e.nextSibling.firstChild.firstChild, this.doesNotAddBorder = f.offsetTop !== 5, this.doesAddBorderForTableAndCells = h.offsetTop === 5, f.style.position = "fixed", f.style.top = "20px", this.supportsFixedPosition = f.offsetTop === 20 || f.offsetTop === 15, f.style.position = f.style.top = "", e.style.overflow = "hidden", e.style.position = "relative", this.subtractsBorderForOverflowNotVisible = f.offsetTop === -5, this.doesNotIncludeMarginInBodyOffset = a.offsetTop !== i, a.removeChild(b), d.offset.initialize = d.noop }, bodyOffset: function (a) { var b = a.offsetTop, c = a.offsetLeft; d.offset.initialize(), d.offset.doesNotIncludeMarginInBodyOffset && (b += parseFloat(d.css(a, "marginTop")) || 0, c += parseFloat(d.css(a, "marginLeft")) || 0); return { top: b, left: c} }, setOffset: function (a, b, c) { var e = d.css(a, "position"); e === "static" && (a.style.position = "relative"); var f = d(a), g = f.offset(), h = d.css(a, "top"), i = d.css(a, "left"), j = (e === "absolute" || e === "fixed") && d.inArray("auto", [h, i]) > -1, k = {}, l = {}, m, n; j && (l = f.position()), m = j ? l.top : parseInt(h, 10) || 0, n = j ? l.left : parseInt(i, 10) || 0, d.isFunction(b) && (b = b.call(a, c, g)), b.top != null && (k.top = b.top - g.top + m), b.left != null && (k.left = b.left - g.left + n), "using" in b ? b.using.call(a, k) : f.css(k) } }, d.fn.extend({ position: function () { if (!this[0]) return null; var a = this[0], b = this.offsetParent(), c = this.offset(), e = ch.test(b[0].nodeName) ? { top: 0, left: 0} : b.offset(); c.top -= parseFloat(d.css(a, "marginTop")) || 0, c.left -= parseFloat(d.css(a, "marginLeft")) || 0, e.top += parseFloat(d.css(b[0], "borderTopWidth")) || 0, e.left += parseFloat(d.css(b[0], "borderLeftWidth")) || 0; return { top: c.top - e.top, left: c.left - e.left} }, offsetParent: function () { return this.map(function () { var a = this.offsetParent || c.body; while (a && (!ch.test(a.nodeName) && d.css(a, "position") === "static")) a = a.offsetParent; return a }) } }), d.each(["Left", "Top"], function (a, c) { var e = "scroll" + c; d.fn[e] = function (c) { var f = this[0], g; if (!f) return null; if (c !== b) return this.each(function () { g = ci(this), g ? g.scrollTo(a ? d(g).scrollLeft() : c, a ? c : d(g).scrollTop()) : this[e] = c }); g = ci(f); return g ? "pageXOffset" in g ? g[a ? "pageYOffset" : "pageXOffset"] : d.support.boxModel && g.document.documentElement[e] || g.document.body[e] : f[e] } }), d.each(["Height", "Width"], function (a, c) { var e = c.toLowerCase(); d.fn["inner" + c] = function () { return this[0] ? parseFloat(d.css(this[0], e, "padding")) : null }, d.fn["outer" + c] = function (a) { return this[0] ? parseFloat(d.css(this[0], e, a ? "margin" : "border")) : null }, d.fn[e] = function (a) { var f = this[0]; if (!f) return a == null ? null : this; if (d.isFunction(a)) return this.each(function (b) { var c = d(this); c[e](a.call(this, b, c[e]())) }); if (d.isWindow(f)) { var g = f.document.documentElement["client" + c]; return f.document.compatMode === "CSS1Compat" && g || f.document.body["client" + c] || g } if (f.nodeType === 9) return Math.max(f.documentElement["client" + c], f.body["scroll" + c], f.documentElement["scroll" + c], f.body["offset" + c], f.documentElement["offset" + c]); if (a === b) { var h = d.css(f, e), i = parseFloat(h); return d.isNaN(i) ? h : i } return this.css(e, typeof a === "string" ? a : a + "px") } }), a.jQuery = a.$ = d })(window);

/*!
* jQuery UI 1.8.16
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* http://docs.jquery.com/UI
*/
(function (a, d) {
    function c(h, g) { var i = h.nodeName.toLowerCase(); if ("area" === i) { g = h.parentNode; i = g.name; if (!h.href || !i || g.nodeName.toLowerCase() !== "map") return false; h = a("img[usemap=#" + i + "]")[0]; return !!h && e(h) } return (/input|select|textarea|button|object/.test(i) ? !h.disabled : "a" == i ? h.href || g : g) && e(h) } function e(h) { return !a(h).parents().andSelf().filter(function () { return a.curCSS(this, "visibility") === "hidden" || a.expr.filters.hidden(this) }).length } a.ui = a.ui || {}; if (!a.ui.version) {
        a.extend(a.ui, { version: "1.8.16",
            keyCode: { ALT: 18, BACKSPACE: 8, CAPS_LOCK: 20, COMMA: 188, COMMAND: 91, COMMAND_LEFT: 91, COMMAND_RIGHT: 93, CONTROL: 17, DELETE: 46, DOWN: 40, END: 35, ENTER: 13, ESCAPE: 27, HOME: 36, INSERT: 45, LEFT: 37, MENU: 93, NUMPAD_ADD: 107, NUMPAD_DECIMAL: 110, NUMPAD_DIVIDE: 111, NUMPAD_ENTER: 108, NUMPAD_MULTIPLY: 106, NUMPAD_SUBTRACT: 109, PAGE_DOWN: 34, PAGE_UP: 33, PERIOD: 190, RIGHT: 39, SHIFT: 16, SPACE: 32, TAB: 9, UP: 38, WINDOWS: 91}
        }); a.fn.extend({ propAttr: a.fn.prop || a.fn.attr, _focus: a.fn.focus, focus: function (h, g) {
            return typeof h === "number" ? this.each(function () {
                var i =
this; setTimeout(function () { a(i).focus(); g && g.call(i) }, h)
            }) : this._focus.apply(this, arguments)
        }, scrollParent: function () {
            var h; h = a.browser.msie && /(static|relative)/.test(this.css("position")) || /absolute/.test(this.css("position")) ? this.parents().filter(function () { return /(relative|absolute|fixed)/.test(a.curCSS(this, "position", 1)) && /(auto|scroll)/.test(a.curCSS(this, "overflow", 1) + a.curCSS(this, "overflow-y", 1) + a.curCSS(this, "overflow-x", 1)) }).eq(0) : this.parents().filter(function () {
                return /(auto|scroll)/.test(a.curCSS(this,
"overflow", 1) + a.curCSS(this, "overflow-y", 1) + a.curCSS(this, "overflow-x", 1))
            }).eq(0); return /fixed/.test(this.css("position")) || !h.length ? a(document) : h
        }, zIndex: function (h) { if (h !== d) return this.css("zIndex", h); if (this.length) { h = a(this[0]); for (var g; h.length && h[0] !== document; ) { g = h.css("position"); if (g === "absolute" || g === "relative" || g === "fixed") { g = parseInt(h.css("zIndex"), 10); if (!isNaN(g) && g !== 0) return g } h = h.parent() } } return 0 }, disableSelection: function () {
            return this.bind((a.support.selectstart ? "selectstart" :
"mousedown") + ".ui-disableSelection", function (h) { h.preventDefault() })
        }, enableSelection: function () { return this.unbind(".ui-disableSelection") } 
        }); a.each(["Width", "Height"], function (h, g) {
            function i(l, o, n, k) { a.each(b, function () { o -= parseFloat(a.curCSS(l, "padding" + this, true)) || 0; if (n) o -= parseFloat(a.curCSS(l, "border" + this + "Width", true)) || 0; if (k) o -= parseFloat(a.curCSS(l, "margin" + this, true)) || 0 }); return o } var b = g === "Width" ? ["Left", "Right"] : ["Top", "Bottom"], f = g.toLowerCase(), j = { innerWidth: a.fn.innerWidth, innerHeight: a.fn.innerHeight,
                outerWidth: a.fn.outerWidth, outerHeight: a.fn.outerHeight
            }; a.fn["inner" + g] = function (l) { if (l === d) return j["inner" + g].call(this); return this.each(function () { a(this).css(f, i(this, l) + "px") }) }; a.fn["outer" + g] = function (l, o) { if (typeof l !== "number") return j["outer" + g].call(this, l); return this.each(function () { a(this).css(f, i(this, l, true, o) + "px") }) } 
        }); a.extend(a.expr[":"], { data: function (h, g, i) { return !!a.data(h, i[3]) }, focusable: function (h) { return c(h, !isNaN(a.attr(h, "tabindex"))) }, tabbable: function (h) {
            var g = a.attr(h,
"tabindex"), i = isNaN(g); return (i || g >= 0) && c(h, !i)
        } 
        }); a(function () { var h = document.body, g = h.appendChild(g = document.createElement("div")); a.extend(g.style, { minHeight: "100px", height: "auto", padding: 0, borderWidth: 0 }); a.support.minHeight = g.offsetHeight === 100; a.support.selectstart = "onselectstart" in g; h.removeChild(g).style.display = "none" }); a.extend(a.ui, { plugin: { add: function (h, g, i) { h = a.ui[h].prototype; for (var b in i) { h.plugins[b] = h.plugins[b] || []; h.plugins[b].push([g, i[b]]) } }, call: function (h, g, i) {
            if ((g = h.plugins[g]) &&
h.element[0].parentNode) for (var b = 0; b < g.length; b++) h.options[g[b][0]] && g[b][1].apply(h.element, i)
        } 
        }, contains: function (h, g) { return document.compareDocumentPosition ? h.compareDocumentPosition(g) & 16 : h !== g && h.contains(g) }, hasScroll: function (h, g) { if (a(h).css("overflow") === "hidden") return false; g = g && g === "left" ? "scrollLeft" : "scrollTop"; var i = false; if (h[g] > 0) return true; h[g] = 1; i = h[g] > 0; h[g] = 0; return i }, isOverAxis: function (h, g, i) { return h > g && h < g + i }, isOver: function (h, g, i, b, f, j) {
            return a.ui.isOverAxis(h, i, f) &&
a.ui.isOverAxis(g, b, j)
        } 
        })
    } 
})(jQuery);
(function (a, d) {
    if (a.cleanData) { var c = a.cleanData; a.cleanData = function (h) { for (var g = 0, i; (i = h[g]) != null; g++) try { a(i).triggerHandler("remove") } catch (b) { } c(h) } } else { var e = a.fn.remove; a.fn.remove = function (h, g) { return this.each(function () { if (!g) if (!h || a.filter(h, [this]).length) a("*", this).add([this]).each(function () { try { a(this).triggerHandler("remove") } catch (i) { } }); return e.call(a(this), h, g) }) } } a.widget = function (h, g, i) {
        var b = h.split(".")[0], f; h = h.split(".")[1]; f = b + "-" + h; if (!i) { i = g; g = a.Widget } a.expr[":"][f] =
function (j) { return !!a.data(j, h) }; a[b] = a[b] || {}; a[b][h] = function (j, l) { arguments.length && this._createWidget(j, l) }; g = new g; g.options = a.extend(true, {}, g.options); a[b][h].prototype = a.extend(true, g, { namespace: b, widgetName: h, widgetEventPrefix: a[b][h].prototype.widgetEventPrefix || h, widgetBaseClass: f }, i); a.widget.bridge(h, a[b][h])
    }; a.widget.bridge = function (h, g) {
        a.fn[h] = function (i) {
            var b = typeof i === "string", f = Array.prototype.slice.call(arguments, 1), j = this; i = !b && f.length ? a.extend.apply(null, [true, i].concat(f)) :
i; if (b && i.charAt(0) === "_") return j; b ? this.each(function () { var l = a.data(this, h), o = l && a.isFunction(l[i]) ? l[i].apply(l, f) : l; if (o !== l && o !== d) { j = o; return false } }) : this.each(function () { var l = a.data(this, h); l ? l.option(i || {})._init() : a.data(this, h, new g(i, this)) }); return j
        } 
    }; a.Widget = function (h, g) { arguments.length && this._createWidget(h, g) }; a.Widget.prototype = { widgetName: "widget", widgetEventPrefix: "", options: { disabled: false }, _createWidget: function (h, g) {
        a.data(g, this.widgetName, this); this.element = a(g); this.options =
a.extend(true, {}, this.options, this._getCreateOptions(), h); var i = this; this.element.bind("remove." + this.widgetName, function () { i.destroy() }); this._create(); this._trigger("create"); this._init()
    }, _getCreateOptions: function () { return a.metadata && a.metadata.get(this.element[0])[this.widgetName] }, _create: function () { }, _init: function () { }, destroy: function () {
        this.element.unbind("." + this.widgetName).removeData(this.widgetName); this.widget().unbind("." + this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass +
"-disabled ui-state-disabled")
    }, widget: function () { return this.element }, option: function (h, g) { var i = h; if (arguments.length === 0) return a.extend({}, this.options); if (typeof h === "string") { if (g === d) return this.options[h]; i = {}; i[h] = g } this._setOptions(i); return this }, _setOptions: function (h) { var g = this; a.each(h, function (i, b) { g._setOption(i, b) }); return this }, _setOption: function (h, g) {
        this.options[h] = g; if (h === "disabled") this.widget()[g ? "addClass" : "removeClass"](this.widgetBaseClass + "-disabled ui-state-disabled").attr("aria-disabled",
g); return this
    }, enable: function () { return this._setOption("disabled", false) }, disable: function () { return this._setOption("disabled", true) }, _trigger: function (h, g, i) { var b = this.options[h]; g = a.Event(g); g.type = (h === this.widgetEventPrefix ? h : this.widgetEventPrefix + h).toLowerCase(); i = i || {}; if (g.originalEvent) { h = a.event.props.length; for (var f; h; ) { f = a.event.props[--h]; g[f] = g.originalEvent[f] } } this.element.trigger(g, i); return !(a.isFunction(b) && b.call(this.element[0], g, i) === false || g.isDefaultPrevented()) } 
    }
})(jQuery);
(function (a) {
    var d = false; a(document).mouseup(function () { d = false }); a.widget("ui.mouse", { options: { cancel: ":input,option", distance: 1, delay: 0 }, _mouseInit: function () { var c = this; this.element.bind("mousedown." + this.widgetName, function (e) { return c._mouseDown(e) }).bind("click." + this.widgetName, function (e) { if (true === a.data(e.target, c.widgetName + ".preventClickEvent")) { a.removeData(e.target, c.widgetName + ".preventClickEvent"); e.stopImmediatePropagation(); return false } }); this.started = false }, _mouseDestroy: function () {
        this.element.unbind("." +
this.widgetName)
    }, _mouseDown: function (c) {
        if (!d) {
            this._mouseStarted && this._mouseUp(c); this._mouseDownEvent = c; var e = this, h = c.which == 1, g = typeof this.options.cancel == "string" && c.target.nodeName ? a(c.target).closest(this.options.cancel).length : false; if (!h || g || !this._mouseCapture(c)) return true; this.mouseDelayMet = !this.options.delay; if (!this.mouseDelayMet) this._mouseDelayTimer = setTimeout(function () { e.mouseDelayMet = true }, this.options.delay); if (this._mouseDistanceMet(c) && this._mouseDelayMet(c)) {
                this._mouseStarted =
this._mouseStart(c) !== false; if (!this._mouseStarted) { c.preventDefault(); return true } 
            } true === a.data(c.target, this.widgetName + ".preventClickEvent") && a.removeData(c.target, this.widgetName + ".preventClickEvent"); this._mouseMoveDelegate = function (i) { return e._mouseMove(i) }; this._mouseUpDelegate = function (i) { return e._mouseUp(i) }; a(document).bind("mousemove." + this.widgetName, this._mouseMoveDelegate).bind("mouseup." + this.widgetName, this._mouseUpDelegate); c.preventDefault(); return d = true
        } 
    }, _mouseMove: function (c) {
        if (a.browser.msie &&
!(document.documentMode >= 9) && !c.button) return this._mouseUp(c); if (this._mouseStarted) { this._mouseDrag(c); return c.preventDefault() } if (this._mouseDistanceMet(c) && this._mouseDelayMet(c)) (this._mouseStarted = this._mouseStart(this._mouseDownEvent, c) !== false) ? this._mouseDrag(c) : this._mouseUp(c); return !this._mouseStarted
    }, _mouseUp: function (c) {
        a(document).unbind("mousemove." + this.widgetName, this._mouseMoveDelegate).unbind("mouseup." + this.widgetName, this._mouseUpDelegate); if (this._mouseStarted) {
            this._mouseStarted =
false; c.target == this._mouseDownEvent.target && a.data(c.target, this.widgetName + ".preventClickEvent", true); this._mouseStop(c)
        } return false
    }, _mouseDistanceMet: function (c) { return Math.max(Math.abs(this._mouseDownEvent.pageX - c.pageX), Math.abs(this._mouseDownEvent.pageY - c.pageY)) >= this.options.distance }, _mouseDelayMet: function () { return this.mouseDelayMet }, _mouseStart: function () { }, _mouseDrag: function () { }, _mouseStop: function () { }, _mouseCapture: function () { return true } 
    })
})(jQuery);
(function (a) {
    a.widget("ui.draggable", a.ui.mouse, { widgetEventPrefix: "drag", options: { addClasses: true, appendTo: "parent", axis: false, connectToSortable: false, containment: false, cursor: "auto", cursorAt: false, grid: false, handle: false, helper: "original", iframeFix: false, opacity: false, refreshPositions: false, revert: false, revertDuration: 500, scope: "default", scroll: true, scrollSensitivity: 20, scrollSpeed: 20, snap: false, snapMode: "both", snapTolerance: 20, stack: false, zIndex: false }, _create: function () {
        if (this.options.helper ==
"original" && !/^(?:r|a|f)/.test(this.element.css("position"))) this.element[0].style.position = "relative"; this.options.addClasses && this.element.addClass("ui-draggable"); this.options.disabled && this.element.addClass("ui-draggable-disabled"); this._mouseInit()
    }, destroy: function () { if (this.element.data("draggable")) { this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"); this._mouseDestroy(); return this } }, _mouseCapture: function (d) {
        var c =
this.options; if (this.helper || c.disabled || a(d.target).is(".ui-resizable-handle")) return false; this.handle = this._getHandle(d); if (!this.handle) return false; if (c.iframeFix) a(c.iframeFix === true ? "iframe" : c.iframeFix).each(function () { a('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({ width: this.offsetWidth + "px", height: this.offsetHeight + "px", position: "absolute", opacity: "0.001", zIndex: 1E3 }).css(a(this).offset()).appendTo("body") }); return true
    }, _mouseStart: function (d) {
        var c = this.options;
        this.helper = this._createHelper(d); this._cacheHelperProportions(); if (a.ui.ddmanager) a.ui.ddmanager.current = this; this._cacheMargins(); this.cssPosition = this.helper.css("position"); this.scrollParent = this.helper.scrollParent(); this.offset = this.positionAbs = this.element.offset(); this.offset = { top: this.offset.top - this.margins.top, left: this.offset.left - this.margins.left }; a.extend(this.offset, { click: { left: d.pageX - this.offset.left, top: d.pageY - this.offset.top }, parent: this._getParentOffset(), relative: this._getRelativeOffset() });
        this.originalPosition = this.position = this._generatePosition(d); this.originalPageX = d.pageX; this.originalPageY = d.pageY; c.cursorAt && this._adjustOffsetFromHelper(c.cursorAt); c.containment && this._setContainment(); if (this._trigger("start", d) === false) { this._clear(); return false } this._cacheHelperProportions(); a.ui.ddmanager && !c.dropBehaviour && a.ui.ddmanager.prepareOffsets(this, d); this.helper.addClass("ui-draggable-dragging"); this._mouseDrag(d, true); a.ui.ddmanager && a.ui.ddmanager.dragStart(this, d); return true
    },
        _mouseDrag: function (d, c) { this.position = this._generatePosition(d); this.positionAbs = this._convertPositionTo("absolute"); if (!c) { c = this._uiHash(); if (this._trigger("drag", d, c) === false) { this._mouseUp({}); return false } this.position = c.position } if (!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left + "px"; if (!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top + "px"; a.ui.ddmanager && a.ui.ddmanager.drag(this, d); return false }, _mouseStop: function (d) {
            var c =
false; if (a.ui.ddmanager && !this.options.dropBehaviour) c = a.ui.ddmanager.drop(this, d); if (this.dropped) { c = this.dropped; this.dropped = false } if ((!this.element[0] || !this.element[0].parentNode) && this.options.helper == "original") return false; if (this.options.revert == "invalid" && !c || this.options.revert == "valid" && c || this.options.revert === true || a.isFunction(this.options.revert) && this.options.revert.call(this.element, c)) {
                var e = this; a(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration,
10), function () { e._trigger("stop", d) !== false && e._clear() })
            } else this._trigger("stop", d) !== false && this._clear(); return false
        }, _mouseUp: function (d) { this.options.iframeFix === true && a("div.ui-draggable-iframeFix").each(function () { this.parentNode.removeChild(this) }); a.ui.ddmanager && a.ui.ddmanager.dragStop(this, d); return a.ui.mouse.prototype._mouseUp.call(this, d) }, cancel: function () { this.helper.is(".ui-draggable-dragging") ? this._mouseUp({}) : this._clear(); return this }, _getHandle: function (d) {
            var c = !this.options.handle ||
!a(this.options.handle, this.element).length ? true : false; a(this.options.handle, this.element).find("*").andSelf().each(function () { if (this == d.target) c = true }); return c
        }, _createHelper: function (d) {
            var c = this.options; d = a.isFunction(c.helper) ? a(c.helper.apply(this.element[0], [d])) : c.helper == "clone" ? this.element.clone().removeAttr("id") : this.element; d.parents("body").length || d.appendTo(c.appendTo == "parent" ? this.element[0].parentNode : c.appendTo); d[0] != this.element[0] && !/(fixed|absolute)/.test(d.css("position")) &&
d.css("position", "absolute"); return d
        }, _adjustOffsetFromHelper: function (d) { if (typeof d == "string") d = d.split(" "); if (a.isArray(d)) d = { left: +d[0], top: +d[1] || 0 }; if ("left" in d) this.offset.click.left = d.left + this.margins.left; if ("right" in d) this.offset.click.left = this.helperProportions.width - d.right + this.margins.left; if ("top" in d) this.offset.click.top = d.top + this.margins.top; if ("bottom" in d) this.offset.click.top = this.helperProportions.height - d.bottom + this.margins.top }, _getParentOffset: function () {
            this.offsetParent =
this.helper.offsetParent(); var d = this.offsetParent.offset(); if (this.cssPosition == "absolute" && this.scrollParent[0] != document && a.ui.contains(this.scrollParent[0], this.offsetParent[0])) { d.left += this.scrollParent.scrollLeft(); d.top += this.scrollParent.scrollTop() } if (this.offsetParent[0] == document.body || this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == "html" && a.browser.msie) d = { top: 0, left: 0 }; return { top: d.top + (parseInt(this.offsetParent.css("borderTopWidth"), 10) || 0), left: d.left + (parseInt(this.offsetParent.css("borderLeftWidth"),
10) || 0)
}
        }, _getRelativeOffset: function () { if (this.cssPosition == "relative") { var d = this.element.position(); return { top: d.top - (parseInt(this.helper.css("top"), 10) || 0) + this.scrollParent.scrollTop(), left: d.left - (parseInt(this.helper.css("left"), 10) || 0) + this.scrollParent.scrollLeft()} } else return { top: 0, left: 0} }, _cacheMargins: function () {
            this.margins = { left: parseInt(this.element.css("marginLeft"), 10) || 0, top: parseInt(this.element.css("marginTop"), 10) || 0, right: parseInt(this.element.css("marginRight"), 10) || 0, bottom: parseInt(this.element.css("marginBottom"),
10) || 0
            }
        }, _cacheHelperProportions: function () { this.helperProportions = { width: this.helper.outerWidth(), height: this.helper.outerHeight()} }, _setContainment: function () {
            var d = this.options; if (d.containment == "parent") d.containment = this.helper[0].parentNode; if (d.containment == "document" || d.containment == "window") this.containment = [d.containment == "document" ? 0 : a(window).scrollLeft() - this.offset.relative.left - this.offset.parent.left, d.containment == "document" ? 0 : a(window).scrollTop() - this.offset.relative.top - this.offset.parent.top,
(d.containment == "document" ? 0 : a(window).scrollLeft()) + a(d.containment == "document" ? document : window).width() - this.helperProportions.width - this.margins.left, (d.containment == "document" ? 0 : a(window).scrollTop()) + (a(d.containment == "document" ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top]; if (!/^(document|window|parent)$/.test(d.containment) && d.containment.constructor != Array) {
                d = a(d.containment); var c = d[0]; if (c) {
                    d.offset(); var e = a(c).css("overflow") !=
"hidden"; this.containment = [(parseInt(a(c).css("borderLeftWidth"), 10) || 0) + (parseInt(a(c).css("paddingLeft"), 10) || 0), (parseInt(a(c).css("borderTopWidth"), 10) || 0) + (parseInt(a(c).css("paddingTop"), 10) || 0), (e ? Math.max(c.scrollWidth, c.offsetWidth) : c.offsetWidth) - (parseInt(a(c).css("borderLeftWidth"), 10) || 0) - (parseInt(a(c).css("paddingRight"), 10) || 0) - this.helperProportions.width - this.margins.left - this.margins.right, (e ? Math.max(c.scrollHeight, c.offsetHeight) : c.offsetHeight) - (parseInt(a(c).css("borderTopWidth"),
10) || 0) - (parseInt(a(c).css("paddingBottom"), 10) || 0) - this.helperProportions.height - this.margins.top - this.margins.bottom]; this.relative_container = d
                } 
            } else if (d.containment.constructor == Array) this.containment = d.containment
        }, _convertPositionTo: function (d, c) {
            if (!c) c = this.position; d = d == "absolute" ? 1 : -1; var e = this.cssPosition == "absolute" && !(this.scrollParent[0] != document && a.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, h = /(html|body)/i.test(e[0].tagName); return { top: c.top +
this.offset.relative.top * d + this.offset.parent.top * d - (a.browser.safari && a.browser.version < 526 && this.cssPosition == "fixed" ? 0 : (this.cssPosition == "fixed" ? -this.scrollParent.scrollTop() : h ? 0 : e.scrollTop()) * d), left: c.left + this.offset.relative.left * d + this.offset.parent.left * d - (a.browser.safari && a.browser.version < 526 && this.cssPosition == "fixed" ? 0 : (this.cssPosition == "fixed" ? -this.scrollParent.scrollLeft() : h ? 0 : e.scrollLeft()) * d)
            }
        }, _generatePosition: function (d) {
            var c = this.options, e = this.cssPosition == "absolute" &&
!(this.scrollParent[0] != document && a.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, h = /(html|body)/i.test(e[0].tagName), g = d.pageX, i = d.pageY; if (this.originalPosition) {
                var b; if (this.containment) {
                    if (this.relative_container) { b = this.relative_container.offset(); b = [this.containment[0] + b.left, this.containment[1] + b.top, this.containment[2] + b.left, this.containment[3] + b.top] } else b = this.containment; if (d.pageX - this.offset.click.left < b[0]) g = b[0] + this.offset.click.left;
                    if (d.pageY - this.offset.click.top < b[1]) i = b[1] + this.offset.click.top; if (d.pageX - this.offset.click.left > b[2]) g = b[2] + this.offset.click.left; if (d.pageY - this.offset.click.top > b[3]) i = b[3] + this.offset.click.top
                } if (c.grid) {
                    i = c.grid[1] ? this.originalPageY + Math.round((i - this.originalPageY) / c.grid[1]) * c.grid[1] : this.originalPageY; i = b ? !(i - this.offset.click.top < b[1] || i - this.offset.click.top > b[3]) ? i : !(i - this.offset.click.top < b[1]) ? i - c.grid[1] : i + c.grid[1] : i; g = c.grid[0] ? this.originalPageX + Math.round((g - this.originalPageX) /
c.grid[0]) * c.grid[0] : this.originalPageX; g = b ? !(g - this.offset.click.left < b[0] || g - this.offset.click.left > b[2]) ? g : !(g - this.offset.click.left < b[0]) ? g - c.grid[0] : g + c.grid[0] : g
                } 
            } return { top: i - this.offset.click.top - this.offset.relative.top - this.offset.parent.top + (a.browser.safari && a.browser.version < 526 && this.cssPosition == "fixed" ? 0 : this.cssPosition == "fixed" ? -this.scrollParent.scrollTop() : h ? 0 : e.scrollTop()), left: g - this.offset.click.left - this.offset.relative.left - this.offset.parent.left + (a.browser.safari && a.browser.version <
526 && this.cssPosition == "fixed" ? 0 : this.cssPosition == "fixed" ? -this.scrollParent.scrollLeft() : h ? 0 : e.scrollLeft())
            }
        }, _clear: function () { this.helper.removeClass("ui-draggable-dragging"); this.helper[0] != this.element[0] && !this.cancelHelperRemoval && this.helper.remove(); this.helper = null; this.cancelHelperRemoval = false }, _trigger: function (d, c, e) {
            e = e || this._uiHash(); a.ui.plugin.call(this, d, [c, e]); if (d == "drag") this.positionAbs = this._convertPositionTo("absolute"); return a.Widget.prototype._trigger.call(this, d, c,
e)
        }, plugins: {}, _uiHash: function () { return { helper: this.helper, position: this.position, originalPosition: this.originalPosition, offset: this.positionAbs} } 
    }); a.extend(a.ui.draggable, { version: "1.8.16" }); a.ui.plugin.add("draggable", "connectToSortable", { start: function (d, c) {
        var e = a(this).data("draggable"), h = e.options, g = a.extend({}, c, { item: e.element }); e.sortables = []; a(h.connectToSortable).each(function () {
            var i = a.data(this, "sortable"); if (i && !i.options.disabled) {
                e.sortables.push({ instance: i, shouldRevert: i.options.revert });
                i.refreshPositions(); i._trigger("activate", d, g)
            } 
        })
    }, stop: function (d, c) {
        var e = a(this).data("draggable"), h = a.extend({}, c, { item: e.element }); a.each(e.sortables, function () {
            if (this.instance.isOver) { this.instance.isOver = 0; e.cancelHelperRemoval = true; this.instance.cancelHelperRemoval = false; if (this.shouldRevert) this.instance.options.revert = true; this.instance._mouseStop(d); this.instance.options.helper = this.instance.options._helper; e.options.helper == "original" && this.instance.currentItem.css({ top: "auto", left: "auto" }) } else {
                this.instance.cancelHelperRemoval =
false; this.instance._trigger("deactivate", d, h)
            } 
        })
    }, drag: function (d, c) {
        var e = a(this).data("draggable"), h = this; a.each(e.sortables, function () {
            this.instance.positionAbs = e.positionAbs; this.instance.helperProportions = e.helperProportions; this.instance.offset.click = e.offset.click; if (this.instance._intersectsWith(this.instance.containerCache)) {
                if (!this.instance.isOver) {
                    this.instance.isOver = 1; this.instance.currentItem = a(h).clone().removeAttr("id").appendTo(this.instance.element).data("sortable-item", true);
                    this.instance.options._helper = this.instance.options.helper; this.instance.options.helper = function () { return c.helper[0] }; d.target = this.instance.currentItem[0]; this.instance._mouseCapture(d, true); this.instance._mouseStart(d, true, true); this.instance.offset.click.top = e.offset.click.top; this.instance.offset.click.left = e.offset.click.left; this.instance.offset.parent.left -= e.offset.parent.left - this.instance.offset.parent.left; this.instance.offset.parent.top -= e.offset.parent.top - this.instance.offset.parent.top;
                    e._trigger("toSortable", d); e.dropped = this.instance.element; e.currentItem = e.element; this.instance.fromOutside = e
                } this.instance.currentItem && this.instance._mouseDrag(d)
            } else if (this.instance.isOver) {
                this.instance.isOver = 0; this.instance.cancelHelperRemoval = true; this.instance.options.revert = false; this.instance._trigger("out", d, this.instance._uiHash(this.instance)); this.instance._mouseStop(d, true); this.instance.options.helper = this.instance.options._helper; this.instance.currentItem.remove(); this.instance.placeholder &&
this.instance.placeholder.remove(); e._trigger("fromSortable", d); e.dropped = false
            } 
        })
    } 
    }); a.ui.plugin.add("draggable", "cursor", { start: function () { var d = a("body"), c = a(this).data("draggable").options; if (d.css("cursor")) c._cursor = d.css("cursor"); d.css("cursor", c.cursor) }, stop: function () { var d = a(this).data("draggable").options; d._cursor && a("body").css("cursor", d._cursor) } }); a.ui.plugin.add("draggable", "opacity", { start: function (d, c) {
        d = a(c.helper); c = a(this).data("draggable").options; if (d.css("opacity")) c._opacity =
d.css("opacity"); d.css("opacity", c.opacity)
    }, stop: function (d, c) { d = a(this).data("draggable").options; d._opacity && a(c.helper).css("opacity", d._opacity) } 
    }); a.ui.plugin.add("draggable", "scroll", { start: function () { var d = a(this).data("draggable"); if (d.scrollParent[0] != document && d.scrollParent[0].tagName != "HTML") d.overflowOffset = d.scrollParent.offset() }, drag: function (d) {
        var c = a(this).data("draggable"), e = c.options, h = false; if (c.scrollParent[0] != document && c.scrollParent[0].tagName != "HTML") {
            if (!e.axis || e.axis !=
"x") if (c.overflowOffset.top + c.scrollParent[0].offsetHeight - d.pageY < e.scrollSensitivity) c.scrollParent[0].scrollTop = h = c.scrollParent[0].scrollTop + e.scrollSpeed; else if (d.pageY - c.overflowOffset.top < e.scrollSensitivity) c.scrollParent[0].scrollTop = h = c.scrollParent[0].scrollTop - e.scrollSpeed; if (!e.axis || e.axis != "y") if (c.overflowOffset.left + c.scrollParent[0].offsetWidth - d.pageX < e.scrollSensitivity) c.scrollParent[0].scrollLeft = h = c.scrollParent[0].scrollLeft + e.scrollSpeed; else if (d.pageX - c.overflowOffset.left <
e.scrollSensitivity) c.scrollParent[0].scrollLeft = h = c.scrollParent[0].scrollLeft - e.scrollSpeed
        } else {
            if (!e.axis || e.axis != "x") if (d.pageY - a(document).scrollTop() < e.scrollSensitivity) h = a(document).scrollTop(a(document).scrollTop() - e.scrollSpeed); else if (a(window).height() - (d.pageY - a(document).scrollTop()) < e.scrollSensitivity) h = a(document).scrollTop(a(document).scrollTop() + e.scrollSpeed); if (!e.axis || e.axis != "y") if (d.pageX - a(document).scrollLeft() < e.scrollSensitivity) h = a(document).scrollLeft(a(document).scrollLeft() -
e.scrollSpeed); else if (a(window).width() - (d.pageX - a(document).scrollLeft()) < e.scrollSensitivity) h = a(document).scrollLeft(a(document).scrollLeft() + e.scrollSpeed)
        } h !== false && a.ui.ddmanager && !e.dropBehaviour && a.ui.ddmanager.prepareOffsets(c, d)
    } 
    }); a.ui.plugin.add("draggable", "snap", { start: function () {
        var d = a(this).data("draggable"), c = d.options; d.snapElements = []; a(c.snap.constructor != String ? c.snap.items || ":data(draggable)" : c.snap).each(function () {
            var e = a(this), h = e.offset(); this != d.element[0] && d.snapElements.push({ item: this,
                width: e.outerWidth(), height: e.outerHeight(), top: h.top, left: h.left
            })
        })
    }, drag: function (d, c) {
        for (var e = a(this).data("draggable"), h = e.options, g = h.snapTolerance, i = c.offset.left, b = i + e.helperProportions.width, f = c.offset.top, j = f + e.helperProportions.height, l = e.snapElements.length - 1; l >= 0; l--) {
            var o = e.snapElements[l].left, n = o + e.snapElements[l].width, k = e.snapElements[l].top, m = k + e.snapElements[l].height; if (o - g < i && i < n + g && k - g < f && f < m + g || o - g < i && i < n + g && k - g < j && j < m + g || o - g < b && b < n + g && k - g < f && f < m + g || o - g < b && b < n + g && k - g < j &&
j < m + g) {
                if (h.snapMode != "inner") { var p = Math.abs(k - j) <= g, q = Math.abs(m - f) <= g, s = Math.abs(o - b) <= g, r = Math.abs(n - i) <= g; if (p) c.position.top = e._convertPositionTo("relative", { top: k - e.helperProportions.height, left: 0 }).top - e.margins.top; if (q) c.position.top = e._convertPositionTo("relative", { top: m, left: 0 }).top - e.margins.top; if (s) c.position.left = e._convertPositionTo("relative", { top: 0, left: o - e.helperProportions.width }).left - e.margins.left; if (r) c.position.left = e._convertPositionTo("relative", { top: 0, left: n }).left - e.margins.left } var u =
p || q || s || r; if (h.snapMode != "outer") { p = Math.abs(k - f) <= g; q = Math.abs(m - j) <= g; s = Math.abs(o - i) <= g; r = Math.abs(n - b) <= g; if (p) c.position.top = e._convertPositionTo("relative", { top: k, left: 0 }).top - e.margins.top; if (q) c.position.top = e._convertPositionTo("relative", { top: m - e.helperProportions.height, left: 0 }).top - e.margins.top; if (s) c.position.left = e._convertPositionTo("relative", { top: 0, left: o }).left - e.margins.left; if (r) c.position.left = e._convertPositionTo("relative", { top: 0, left: n - e.helperProportions.width }).left - e.margins.left } if (!e.snapElements[l].snapping &&
(p || q || s || r || u)) e.options.snap.snap && e.options.snap.snap.call(e.element, d, a.extend(e._uiHash(), { snapItem: e.snapElements[l].item })); e.snapElements[l].snapping = p || q || s || r || u
            } else { e.snapElements[l].snapping && e.options.snap.release && e.options.snap.release.call(e.element, d, a.extend(e._uiHash(), { snapItem: e.snapElements[l].item })); e.snapElements[l].snapping = false } 
        } 
    } 
    }); a.ui.plugin.add("draggable", "stack", { start: function () {
        var d = a(this).data("draggable").options; d = a.makeArray(a(d.stack)).sort(function (e, h) {
            return (parseInt(a(e).css("zIndex"),
10) || 0) - (parseInt(a(h).css("zIndex"), 10) || 0)
        }); if (d.length) { var c = parseInt(d[0].style.zIndex) || 0; a(d).each(function (e) { this.style.zIndex = c + e }); this[0].style.zIndex = c + d.length } 
    } 
    }); a.ui.plugin.add("draggable", "zIndex", { start: function (d, c) { d = a(c.helper); c = a(this).data("draggable").options; if (d.css("zIndex")) c._zIndex = d.css("zIndex"); d.css("zIndex", c.zIndex) }, stop: function (d, c) { d = a(this).data("draggable").options; d._zIndex && a(c.helper).css("zIndex", d._zIndex) } })
})(jQuery);
(function (a) {
    a.widget("ui.droppable", { widgetEventPrefix: "drop", options: { accept: "*", activeClass: false, addClasses: true, greedy: false, hoverClass: false, scope: "default", tolerance: "intersect" }, _create: function () {
        var d = this.options, c = d.accept; this.isover = 0; this.isout = 1; this.accept = a.isFunction(c) ? c : function (e) { return e.is(c) }; this.proportions = { width: this.element[0].offsetWidth, height: this.element[0].offsetHeight }; a.ui.ddmanager.droppables[d.scope] = a.ui.ddmanager.droppables[d.scope] || []; a.ui.ddmanager.droppables[d.scope].push(this);
        d.addClasses && this.element.addClass("ui-droppable")
    }, destroy: function () { for (var d = a.ui.ddmanager.droppables[this.options.scope], c = 0; c < d.length; c++) d[c] == this && d.splice(c, 1); this.element.removeClass("ui-droppable ui-droppable-disabled").removeData("droppable").unbind(".droppable"); return this }, _setOption: function (d, c) { if (d == "accept") this.accept = a.isFunction(c) ? c : function (e) { return e.is(c) }; a.Widget.prototype._setOption.apply(this, arguments) }, _activate: function (d) {
        var c = a.ui.ddmanager.current; this.options.activeClass &&
this.element.addClass(this.options.activeClass); c && this._trigger("activate", d, this.ui(c))
    }, _deactivate: function (d) { var c = a.ui.ddmanager.current; this.options.activeClass && this.element.removeClass(this.options.activeClass); c && this._trigger("deactivate", d, this.ui(c)) }, _over: function (d) {
        var c = a.ui.ddmanager.current; if (!(!c || (c.currentItem || c.element)[0] == this.element[0])) if (this.accept.call(this.element[0], c.currentItem || c.element)) {
            this.options.hoverClass && this.element.addClass(this.options.hoverClass);
            this._trigger("over", d, this.ui(c))
        } 
    }, _out: function (d) { var c = a.ui.ddmanager.current; if (!(!c || (c.currentItem || c.element)[0] == this.element[0])) if (this.accept.call(this.element[0], c.currentItem || c.element)) { this.options.hoverClass && this.element.removeClass(this.options.hoverClass); this._trigger("out", d, this.ui(c)) } }, _drop: function (d, c) {
        var e = c || a.ui.ddmanager.current; if (!e || (e.currentItem || e.element)[0] == this.element[0]) return false; var h = false; this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function () {
            var g =
a.data(this, "droppable"); if (g.options.greedy && !g.options.disabled && g.options.scope == e.options.scope && g.accept.call(g.element[0], e.currentItem || e.element) && a.ui.intersect(e, a.extend(g, { offset: g.element.offset() }), g.options.tolerance)) { h = true; return false } 
        }); if (h) return false; if (this.accept.call(this.element[0], e.currentItem || e.element)) {
            this.options.activeClass && this.element.removeClass(this.options.activeClass); this.options.hoverClass && this.element.removeClass(this.options.hoverClass); this._trigger("drop",
d, this.ui(e)); return this.element
        } return false
    }, ui: function (d) { return { draggable: d.currentItem || d.element, helper: d.helper, position: d.position, offset: d.positionAbs} } 
    }); a.extend(a.ui.droppable, { version: "1.8.16" }); a.ui.intersect = function (d, c, e) {
        if (!c.offset) return false; var h = (d.positionAbs || d.position.absolute).left, g = h + d.helperProportions.width, i = (d.positionAbs || d.position.absolute).top, b = i + d.helperProportions.height, f = c.offset.left, j = f + c.proportions.width, l = c.offset.top, o = l + c.proportions.height;
        switch (e) {
            case "fit": return f <= h && g <= j && l <= i && b <= o; case "intersect": return f < h + d.helperProportions.width / 2 && g - d.helperProportions.width / 2 < j && l < i + d.helperProportions.height / 2 && b - d.helperProportions.height / 2 < o; case "pointer": return a.ui.isOver((d.positionAbs || d.position.absolute).top + (d.clickOffset || d.offset.click).top, (d.positionAbs || d.position.absolute).left + (d.clickOffset || d.offset.click).left, l, f, c.proportions.height, c.proportions.width); case "touch": return (i >= l && i <= o || b >= l && b <= o || i < l && b > o) && (h >=
f && h <= j || g >= f && g <= j || h < f && g > j); default: return false
        } 
    }; a.ui.ddmanager = { current: null, droppables: { "default": [] }, prepareOffsets: function (d, c) {
        var e = a.ui.ddmanager.droppables[d.options.scope] || [], h = c ? c.type : null, g = (d.currentItem || d.element).find(":data(droppable)").andSelf(), i = 0; a: for (; i < e.length; i++) if (!(e[i].options.disabled || d && !e[i].accept.call(e[i].element[0], d.currentItem || d.element))) {
            for (var b = 0; b < g.length; b++) if (g[b] == e[i].element[0]) { e[i].proportions.height = 0; continue a } e[i].visible = e[i].element.css("display") !=
"none"; if (e[i].visible) { h == "mousedown" && e[i]._activate.call(e[i], c); e[i].offset = e[i].element.offset(); e[i].proportions = { width: e[i].element[0].offsetWidth, height: e[i].element[0].offsetHeight} } 
        } 
    }, drop: function (d, c) {
        var e = false; a.each(a.ui.ddmanager.droppables[d.options.scope] || [], function () {
            if (this.options) {
                if (!this.options.disabled && this.visible && a.ui.intersect(d, this, this.options.tolerance)) e = e || this._drop.call(this, c); if (!this.options.disabled && this.visible && this.accept.call(this.element[0], d.currentItem ||
d.element)) { this.isout = 1; this.isover = 0; this._deactivate.call(this, c) } 
            } 
        }); return e
    }, dragStart: function (d, c) { d.element.parents(":not(body,html)").bind("scroll.droppable", function () { d.options.refreshPositions || a.ui.ddmanager.prepareOffsets(d, c) }) }, drag: function (d, c) {
        d.options.refreshPositions && a.ui.ddmanager.prepareOffsets(d, c); a.each(a.ui.ddmanager.droppables[d.options.scope] || [], function () {
            if (!(this.options.disabled || this.greedyChild || !this.visible)) {
                var e = a.ui.intersect(d, this, this.options.tolerance);
                if (e = !e && this.isover == 1 ? "isout" : e && this.isover == 0 ? "isover" : null) { var h; if (this.options.greedy) { var g = this.element.parents(":data(droppable):eq(0)"); if (g.length) { h = a.data(g[0], "droppable"); h.greedyChild = e == "isover" ? 1 : 0 } } if (h && e == "isover") { h.isover = 0; h.isout = 1; h._out.call(h, c) } this[e] = 1; this[e == "isout" ? "isover" : "isout"] = 0; this[e == "isover" ? "_over" : "_out"].call(this, c); if (h && e == "isout") { h.isout = 0; h.isover = 1; h._over.call(h, c) } } 
            } 
        })
    }, dragStop: function (d, c) {
        d.element.parents(":not(body,html)").unbind("scroll.droppable");
        d.options.refreshPositions || a.ui.ddmanager.prepareOffsets(d, c)
    } 
    }
})(jQuery);
(function (a) {
    a.widget("ui.resizable", a.ui.mouse, { widgetEventPrefix: "resize", options: { alsoResize: false, animate: false, animateDuration: "slow", animateEasing: "swing", aspectRatio: false, autoHide: false, containment: false, ghost: false, grid: false, handles: "e,s,se", helper: false, maxHeight: null, maxWidth: null, minHeight: 10, minWidth: 10, zIndex: 1E3 }, _create: function () {
        var e = this, h = this.options; this.element.addClass("ui-resizable"); a.extend(this, { _aspectRatio: !!h.aspectRatio, aspectRatio: h.aspectRatio, originalElement: this.element,
            _proportionallyResizeElements: [], _helper: h.helper || h.ghost || h.animate ? h.helper || "ui-resizable-helper" : null
        }); if (this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)) {
            /relative/.test(this.element.css("position")) && a.browser.opera && this.element.css({ position: "relative", top: "auto", left: "auto" }); this.element.wrap(a('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({ position: this.element.css("position"), width: this.element.outerWidth(), height: this.element.outerHeight(),
                top: this.element.css("top"), left: this.element.css("left")
            })); this.element = this.element.parent().data("resizable", this.element.data("resizable")); this.elementIsWrapper = true; this.element.css({ marginLeft: this.originalElement.css("marginLeft"), marginTop: this.originalElement.css("marginTop"), marginRight: this.originalElement.css("marginRight"), marginBottom: this.originalElement.css("marginBottom") }); this.originalElement.css({ marginLeft: 0, marginTop: 0, marginRight: 0, marginBottom: 0 }); this.originalResizeStyle =
this.originalElement.css("resize"); this.originalElement.css("resize", "none"); this._proportionallyResizeElements.push(this.originalElement.css({ position: "static", zoom: 1, display: "block" })); this.originalElement.css({ margin: this.originalElement.css("margin") }); this._proportionallyResize()
        } this.handles = h.handles || (!a(".ui-resizable-handle", this.element).length ? "e,s,se" : { n: ".ui-resizable-n", e: ".ui-resizable-e", s: ".ui-resizable-s", w: ".ui-resizable-w", se: ".ui-resizable-se", sw: ".ui-resizable-sw", ne: ".ui-resizable-ne",
            nw: ".ui-resizable-nw"
        }); if (this.handles.constructor == String) { if (this.handles == "all") this.handles = "n,e,s,w,se,sw,ne,nw"; var g = this.handles.split(","); this.handles = {}; for (var i = 0; i < g.length; i++) { var b = a.trim(g[i]), f = a('<div class="ui-resizable-handle ' + ("ui-resizable-" + b) + '"></div>'); /sw|se|ne|nw/.test(b) && f.css({ zIndex: ++h.zIndex }); "se" == b && f.addClass("ui-icon ui-icon-gripsmall-diagonal-se"); this.handles[b] = ".ui-resizable-" + b; this.element.append(f) } } this._renderAxis = function (j) {
            j = j || this.element; for (var l in this.handles) {
                if (this.handles[l].constructor ==
String) this.handles[l] = a(this.handles[l], this.element).show(); if (this.elementIsWrapper && this.originalElement[0].nodeName.match(/textarea|input|select|button/i)) { var o = a(this.handles[l], this.element), n = 0; n = /sw|ne|nw|se|n|s/.test(l) ? o.outerHeight() : o.outerWidth(); o = ["padding", /ne|nw|n/.test(l) ? "Top" : /se|sw|s/.test(l) ? "Bottom" : /^e$/.test(l) ? "Right" : "Left"].join(""); j.css(o, n); this._proportionallyResize() } a(this.handles[l])
            } 
        }; this._renderAxis(this.element); this._handles = a(".ui-resizable-handle", this.element).disableSelection();
        this._handles.mouseover(function () { if (!e.resizing) { if (this.className) var j = this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i); e.axis = j && j[1] ? j[1] : "se" } }); if (h.autoHide) { this._handles.hide(); a(this.element).addClass("ui-resizable-autohide").hover(function () { if (!h.disabled) { a(this).removeClass("ui-resizable-autohide"); e._handles.show() } }, function () { if (!h.disabled) if (!e.resizing) { a(this).addClass("ui-resizable-autohide"); e._handles.hide() } }) } this._mouseInit()
    }, destroy: function () {
        this._mouseDestroy();
        var e = function (g) { a(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove() }; if (this.elementIsWrapper) { e(this.element); var h = this.element; h.after(this.originalElement.css({ position: h.css("position"), width: h.outerWidth(), height: h.outerHeight(), top: h.css("top"), left: h.css("left") })).remove() } this.originalElement.css("resize", this.originalResizeStyle); e(this.originalElement); return this
    }, _mouseCapture: function (e) {
        var h =
false; for (var g in this.handles) if (a(this.handles[g])[0] == e.target) h = true; return !this.options.disabled && h
    }, _mouseStart: function (e) {
        var h = this.options, g = this.element.position(), i = this.element; this.resizing = true; this.documentScroll = { top: a(document).scrollTop(), left: a(document).scrollLeft() }; if (i.is(".ui-draggable") || /absolute/.test(i.css("position"))) i.css({ position: "absolute", top: g.top, left: g.left }); a.browser.opera && /relative/.test(i.css("position")) && i.css({ position: "relative", top: "auto", left: "auto" });
        this._renderProxy(); g = d(this.helper.css("left")); var b = d(this.helper.css("top")); if (h.containment) { g += a(h.containment).scrollLeft() || 0; b += a(h.containment).scrollTop() || 0 } this.offset = this.helper.offset(); this.position = { left: g, top: b }; this.size = this._helper ? { width: i.outerWidth(), height: i.outerHeight()} : { width: i.width(), height: i.height() }; this.originalSize = this._helper ? { width: i.outerWidth(), height: i.outerHeight()} : { width: i.width(), height: i.height() }; this.originalPosition = { left: g, top: b }; this.sizeDiff =
{ width: i.outerWidth() - i.width(), height: i.outerHeight() - i.height() }; this.originalMousePosition = { left: e.pageX, top: e.pageY }; this.aspectRatio = typeof h.aspectRatio == "number" ? h.aspectRatio : this.originalSize.width / this.originalSize.height || 1; h = a(".ui-resizable-" + this.axis).css("cursor"); a("body").css("cursor", h == "auto" ? this.axis + "-resize" : h); i.addClass("ui-resizable-resizing"); this._propagate("start", e); return true
    }, _mouseDrag: function (e) {
        var h = this.helper, g = this.originalMousePosition, i = this._change[this.axis];
        if (!i) return false; g = i.apply(this, [e, e.pageX - g.left || 0, e.pageY - g.top || 0]); this._updateVirtualBoundaries(e.shiftKey); if (this._aspectRatio || e.shiftKey) g = this._updateRatio(g, e); g = this._respectSize(g, e); this._propagate("resize", e); h.css({ top: this.position.top + "px", left: this.position.left + "px", width: this.size.width + "px", height: this.size.height + "px" }); !this._helper && this._proportionallyResizeElements.length && this._proportionallyResize(); this._updateCache(g); this._trigger("resize", e, this.ui()); return false
    },
        _mouseStop: function (e) {
            this.resizing = false; var h = this.options, g = this; if (this._helper) {
                var i = this._proportionallyResizeElements, b = i.length && /textarea/i.test(i[0].nodeName); i = b && a.ui.hasScroll(i[0], "left") ? 0 : g.sizeDiff.height; b = b ? 0 : g.sizeDiff.width; b = { width: g.helper.width() - b, height: g.helper.height() - i }; i = parseInt(g.element.css("left"), 10) + (g.position.left - g.originalPosition.left) || null; var f = parseInt(g.element.css("top"), 10) + (g.position.top - g.originalPosition.top) || null; h.animate || this.element.css(a.extend(b,
{ top: f, left: i })); g.helper.height(g.size.height); g.helper.width(g.size.width); this._helper && !h.animate && this._proportionallyResize()
            } a("body").css("cursor", "auto"); this.element.removeClass("ui-resizable-resizing"); this._propagate("stop", e); this._helper && this.helper.remove(); return false
        }, _updateVirtualBoundaries: function (e) {
            var h = this.options, g, i, b; h = { minWidth: c(h.minWidth) ? h.minWidth : 0, maxWidth: c(h.maxWidth) ? h.maxWidth : Infinity, minHeight: c(h.minHeight) ? h.minHeight : 0, maxHeight: c(h.maxHeight) ? h.maxHeight :
Infinity
            }; if (this._aspectRatio || e) { e = h.minHeight * this.aspectRatio; i = h.minWidth / this.aspectRatio; g = h.maxHeight * this.aspectRatio; b = h.maxWidth / this.aspectRatio; if (e > h.minWidth) h.minWidth = e; if (i > h.minHeight) h.minHeight = i; if (g < h.maxWidth) h.maxWidth = g; if (b < h.maxHeight) h.maxHeight = b } this._vBoundaries = h
        }, _updateCache: function (e) {
            this.offset = this.helper.offset(); if (c(e.left)) this.position.left = e.left; if (c(e.top)) this.position.top = e.top; if (c(e.height)) this.size.height = e.height; if (c(e.width)) this.size.width =
e.width
        }, _updateRatio: function (e) { var h = this.position, g = this.size, i = this.axis; if (c(e.height)) e.width = e.height * this.aspectRatio; else if (c(e.width)) e.height = e.width / this.aspectRatio; if (i == "sw") { e.left = h.left + (g.width - e.width); e.top = null } if (i == "nw") { e.top = h.top + (g.height - e.height); e.left = h.left + (g.width - e.width) } return e }, _respectSize: function (e) {
            var h = this._vBoundaries, g = this.axis, i = c(e.width) && h.maxWidth && h.maxWidth < e.width, b = c(e.height) && h.maxHeight && h.maxHeight < e.height, f = c(e.width) && h.minWidth &&
h.minWidth > e.width, j = c(e.height) && h.minHeight && h.minHeight > e.height; if (f) e.width = h.minWidth; if (j) e.height = h.minHeight; if (i) e.width = h.maxWidth; if (b) e.height = h.maxHeight; var l = this.originalPosition.left + this.originalSize.width, o = this.position.top + this.size.height, n = /sw|nw|w/.test(g); g = /nw|ne|n/.test(g); if (f && n) e.left = l - h.minWidth; if (i && n) e.left = l - h.maxWidth; if (j && g) e.top = o - h.minHeight; if (b && g) e.top = o - h.maxHeight; if ((h = !e.width && !e.height) && !e.left && e.top) e.top = null; else if (h && !e.top && e.left) e.left =
null; return e
        }, _proportionallyResize: function () {
            if (this._proportionallyResizeElements.length) for (var e = this.helper || this.element, h = 0; h < this._proportionallyResizeElements.length; h++) {
                var g = this._proportionallyResizeElements[h]; if (!this.borderDif) {
                    var i = [g.css("borderTopWidth"), g.css("borderRightWidth"), g.css("borderBottomWidth"), g.css("borderLeftWidth")], b = [g.css("paddingTop"), g.css("paddingRight"), g.css("paddingBottom"), g.css("paddingLeft")]; this.borderDif = a.map(i, function (f, j) {
                        f = parseInt(f, 10) ||
0; j = parseInt(b[j], 10) || 0; return f + j
                    })
                } a.browser.msie && (a(e).is(":hidden") || a(e).parents(":hidden").length) || g.css({ height: e.height() - this.borderDif[0] - this.borderDif[2] || 0, width: e.width() - this.borderDif[1] - this.borderDif[3] || 0 })
            } 
        }, _renderProxy: function () {
            var e = this.options; this.elementOffset = this.element.offset(); if (this._helper) {
                this.helper = this.helper || a('<div style="overflow:hidden;"></div>'); var h = a.browser.msie && a.browser.version < 7, g = h ? 1 : 0; h = h ? 2 : -1; this.helper.addClass(this._helper).css({ width: this.element.outerWidth() +
h, height: this.element.outerHeight() + h, position: "absolute", left: this.elementOffset.left - g + "px", top: this.elementOffset.top - g + "px", zIndex: ++e.zIndex
                }); this.helper.appendTo("body").disableSelection()
            } else this.helper = this.element
        }, _change: { e: function (e, h) { return { width: this.originalSize.width + h} }, w: function (e, h) { return { left: this.originalPosition.left + h, width: this.originalSize.width - h} }, n: function (e, h, g) { return { top: this.originalPosition.top + g, height: this.originalSize.height - g} }, s: function (e, h, g) {
            return { height: this.originalSize.height +
g
            }
        }, se: function (e, h, g) { return a.extend(this._change.s.apply(this, arguments), this._change.e.apply(this, [e, h, g])) }, sw: function (e, h, g) { return a.extend(this._change.s.apply(this, arguments), this._change.w.apply(this, [e, h, g])) }, ne: function (e, h, g) { return a.extend(this._change.n.apply(this, arguments), this._change.e.apply(this, [e, h, g])) }, nw: function (e, h, g) { return a.extend(this._change.n.apply(this, arguments), this._change.w.apply(this, [e, h, g])) } 
        }, _propagate: function (e, h) {
            a.ui.plugin.call(this, e, [h, this.ui()]);
            e != "resize" && this._trigger(e, h, this.ui())
        }, plugins: {}, ui: function () { return { originalElement: this.originalElement, element: this.element, helper: this.helper, position: this.position, size: this.size, originalSize: this.originalSize, originalPosition: this.originalPosition} } 
    }); a.extend(a.ui.resizable, { version: "1.8.16" }); a.ui.plugin.add("resizable", "alsoResize", { start: function () {
        var e = a(this).data("resizable").options, h = function (g) {
            a(g).each(function () {
                var i = a(this); i.data("resizable-alsoresize", { width: parseInt(i.width(),
10), height: parseInt(i.height(), 10), left: parseInt(i.css("left"), 10), top: parseInt(i.css("top"), 10), position: i.css("position")
                })
            })
        }; if (typeof e.alsoResize == "object" && !e.alsoResize.parentNode) if (e.alsoResize.length) { e.alsoResize = e.alsoResize[0]; h(e.alsoResize) } else a.each(e.alsoResize, function (g) { h(g) }); else h(e.alsoResize)
    }, resize: function (e, h) {
        var g = a(this).data("resizable"); e = g.options; var i = g.originalSize, b = g.originalPosition, f = { height: g.size.height - i.height || 0, width: g.size.width - i.width || 0, top: g.position.top -
b.top || 0, left: g.position.left - b.left || 0
        }, j = function (l, o) { a(l).each(function () { var n = a(this), k = a(this).data("resizable-alsoresize"), m = {}, p = o && o.length ? o : n.parents(h.originalElement[0]).length ? ["width", "height"] : ["width", "height", "top", "left"]; a.each(p, function (q, s) { if ((q = (k[s] || 0) + (f[s] || 0)) && q >= 0) m[s] = q || null }); if (a.browser.opera && /relative/.test(n.css("position"))) { g._revertToRelativePosition = true; n.css({ position: "absolute", top: "auto", left: "auto" }) } n.css(m) }) }; typeof e.alsoResize == "object" && !e.alsoResize.nodeType ?
a.each(e.alsoResize, function (l, o) { j(l, o) }) : j(e.alsoResize)
    }, stop: function () { var e = a(this).data("resizable"), h = e.options, g = function (i) { a(i).each(function () { var b = a(this); b.css({ position: b.data("resizable-alsoresize").position }) }) }; if (e._revertToRelativePosition) { e._revertToRelativePosition = false; typeof h.alsoResize == "object" && !h.alsoResize.nodeType ? a.each(h.alsoResize, function (i) { g(i) }) : g(h.alsoResize) } a(this).removeData("resizable-alsoresize") } 
    }); a.ui.plugin.add("resizable", "animate", { stop: function (e) {
        var h =
a(this).data("resizable"), g = h.options, i = h._proportionallyResizeElements, b = i.length && /textarea/i.test(i[0].nodeName), f = b && a.ui.hasScroll(i[0], "left") ? 0 : h.sizeDiff.height; b = { width: h.size.width - (b ? 0 : h.sizeDiff.width), height: h.size.height - f }; f = parseInt(h.element.css("left"), 10) + (h.position.left - h.originalPosition.left) || null; var j = parseInt(h.element.css("top"), 10) + (h.position.top - h.originalPosition.top) || null; h.element.animate(a.extend(b, j && f ? { top: j, left: f} : {}), { duration: g.animateDuration, easing: g.animateEasing,
    step: function () { var l = { width: parseInt(h.element.css("width"), 10), height: parseInt(h.element.css("height"), 10), top: parseInt(h.element.css("top"), 10), left: parseInt(h.element.css("left"), 10) }; i && i.length && a(i[0]).css({ width: l.width, height: l.height }); h._updateCache(l); h._propagate("resize", e) } 
})
    } 
    }); a.ui.plugin.add("resizable", "containment", { start: function () {
        var e = a(this).data("resizable"), h = e.element, g = e.options.containment; if (h = g instanceof a ? g.get(0) : /parent/.test(g) ? h.parent().get(0) : g) {
            e.containerElement =
a(h); if (/document/.test(g) || g == document) { e.containerOffset = { left: 0, top: 0 }; e.containerPosition = { left: 0, top: 0 }; e.parentData = { element: a(document), left: 0, top: 0, width: a(document).width(), height: a(document).height() || document.body.parentNode.scrollHeight} } else {
                var i = a(h), b = []; a(["Top", "Right", "Left", "Bottom"]).each(function (l, o) { b[l] = d(i.css("padding" + o)) }); e.containerOffset = i.offset(); e.containerPosition = i.position(); e.containerSize = { height: i.innerHeight() - b[3], width: i.innerWidth() - b[1] }; g = e.containerOffset;
                var f = e.containerSize.height, j = e.containerSize.width; j = a.ui.hasScroll(h, "left") ? h.scrollWidth : j; f = a.ui.hasScroll(h) ? h.scrollHeight : f; e.parentData = { element: h, left: g.left, top: g.top, width: j, height: f}
            } 
        } 
    }, resize: function (e) {
        var h = a(this).data("resizable"), g = h.options, i = h.containerOffset, b = h.position; e = h._aspectRatio || e.shiftKey; var f = { top: 0, left: 0 }, j = h.containerElement; if (j[0] != document && /static/.test(j.css("position"))) f = i; if (b.left < (h._helper ? i.left : 0)) {
            h.size.width += h._helper ? h.position.left - i.left :
h.position.left - f.left; if (e) h.size.height = h.size.width / g.aspectRatio; h.position.left = g.helper ? i.left : 0
        } if (b.top < (h._helper ? i.top : 0)) { h.size.height += h._helper ? h.position.top - i.top : h.position.top; if (e) h.size.width = h.size.height * g.aspectRatio; h.position.top = h._helper ? i.top : 0 } h.offset.left = h.parentData.left + h.position.left; h.offset.top = h.parentData.top + h.position.top; g = Math.abs((h._helper ? h.offset.left - f.left : h.offset.left - f.left) + h.sizeDiff.width); i = Math.abs((h._helper ? h.offset.top - f.top : h.offset.top -
i.top) + h.sizeDiff.height); b = h.containerElement.get(0) == h.element.parent().get(0); f = /relative|absolute/.test(h.containerElement.css("position")); if (b && f) g -= h.parentData.left; if (g + h.size.width >= h.parentData.width) { h.size.width = h.parentData.width - g; if (e) h.size.height = h.size.width / h.aspectRatio } if (i + h.size.height >= h.parentData.height) { h.size.height = h.parentData.height - i; if (e) h.size.width = h.size.height * h.aspectRatio } 
    }, stop: function () {
        var e = a(this).data("resizable"), h = e.options, g = e.containerOffset, i = e.containerPosition,
b = e.containerElement, f = a(e.helper), j = f.offset(), l = f.outerWidth() - e.sizeDiff.width; f = f.outerHeight() - e.sizeDiff.height; e._helper && !h.animate && /relative/.test(b.css("position")) && a(this).css({ left: j.left - i.left - g.left, width: l, height: f }); e._helper && !h.animate && /static/.test(b.css("position")) && a(this).css({ left: j.left - i.left - g.left, width: l, height: f })
    } 
    }); a.ui.plugin.add("resizable", "ghost", { start: function () {
        var e = a(this).data("resizable"), h = e.options, g = e.size; e.ghost = e.originalElement.clone(); e.ghost.css({ opacity: 0.25,
            display: "block", position: "relative", height: g.height, width: g.width, margin: 0, left: 0, top: 0
        }).addClass("ui-resizable-ghost").addClass(typeof h.ghost == "string" ? h.ghost : ""); e.ghost.appendTo(e.helper)
    }, resize: function () { var e = a(this).data("resizable"); e.ghost && e.ghost.css({ position: "relative", height: e.size.height, width: e.size.width }) }, stop: function () { var e = a(this).data("resizable"); e.ghost && e.helper && e.helper.get(0).removeChild(e.ghost.get(0)) } 
    }); a.ui.plugin.add("resizable", "grid", { resize: function () {
        var e =
a(this).data("resizable"), h = e.options, g = e.size, i = e.originalSize, b = e.originalPosition, f = e.axis; h.grid = typeof h.grid == "number" ? [h.grid, h.grid] : h.grid; var j = Math.round((g.width - i.width) / (h.grid[0] || 1)) * (h.grid[0] || 1); h = Math.round((g.height - i.height) / (h.grid[1] || 1)) * (h.grid[1] || 1); if (/^(se|s|e)$/.test(f)) { e.size.width = i.width + j; e.size.height = i.height + h } else if (/^(ne)$/.test(f)) { e.size.width = i.width + j; e.size.height = i.height + h; e.position.top = b.top - h } else {
            if (/^(sw)$/.test(f)) {
                e.size.width = i.width + j; e.size.height =
i.height + h
            } else { e.size.width = i.width + j; e.size.height = i.height + h; e.position.top = b.top - h } e.position.left = b.left - j
        } 
    } 
    }); var d = function (e) { return parseInt(e, 10) || 0 }, c = function (e) { return !isNaN(parseInt(e, 10)) } 
})(jQuery);
(function (a) {
    a.widget("ui.selectable", a.ui.mouse, { options: { appendTo: "body", autoRefresh: true, distance: 0, filter: "*", tolerance: "touch" }, _create: function () {
        var d = this; this.element.addClass("ui-selectable"); this.dragged = false; var c; this.refresh = function () {
            c = a(d.options.filter, d.element[0]); c.each(function () {
                var e = a(this), h = e.offset(); a.data(this, "selectable-item", { element: this, $element: e, left: h.left, top: h.top, right: h.left + e.outerWidth(), bottom: h.top + e.outerHeight(), startselected: false, selected: e.hasClass("ui-selected"),
                    selecting: e.hasClass("ui-selecting"), unselecting: e.hasClass("ui-unselecting")
                })
            })
        }; this.refresh(); this.selectees = c.addClass("ui-selectee"); this._mouseInit(); this.helper = a("<div class='ui-selectable-helper'></div>")
    }, destroy: function () { this.selectees.removeClass("ui-selectee").removeData("selectable-item"); this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable"); this._mouseDestroy(); return this }, _mouseStart: function (d) {
        var c = this; this.opos = [d.pageX,
d.pageY]; if (!this.options.disabled) {
            var e = this.options; this.selectees = a(e.filter, this.element[0]); this._trigger("start", d); a(e.appendTo).append(this.helper); this.helper.css({ left: d.clientX, top: d.clientY, width: 0, height: 0 }); e.autoRefresh && this.refresh(); this.selectees.filter(".ui-selected").each(function () {
                var h = a.data(this, "selectable-item"); h.startselected = true; if (!d.metaKey) {
                    h.$element.removeClass("ui-selected"); h.selected = false; h.$element.addClass("ui-unselecting"); h.unselecting = true; c._trigger("unselecting",
d, { unselecting: h.element })
                } 
            }); a(d.target).parents().andSelf().each(function () { var h = a.data(this, "selectable-item"); if (h) { var g = !d.metaKey || !h.$element.hasClass("ui-selected"); h.$element.removeClass(g ? "ui-unselecting" : "ui-selected").addClass(g ? "ui-selecting" : "ui-unselecting"); h.unselecting = !g; h.selecting = g; (h.selected = g) ? c._trigger("selecting", d, { selecting: h.element }) : c._trigger("unselecting", d, { unselecting: h.element }); return false } })
        } 
    }, _mouseDrag: function (d) {
        var c = this; this.dragged = true; if (!this.options.disabled) {
            var e =
this.options, h = this.opos[0], g = this.opos[1], i = d.pageX, b = d.pageY; if (h > i) { var f = i; i = h; h = f } if (g > b) { f = b; b = g; g = f } this.helper.css({ left: h, top: g, width: i - h, height: b - g }); this.selectees.each(function () {
    var j = a.data(this, "selectable-item"); if (!(!j || j.element == c.element[0])) {
        var l = false; if (e.tolerance == "touch") l = !(j.left > i || j.right < h || j.top > b || j.bottom < g); else if (e.tolerance == "fit") l = j.left > h && j.right < i && j.top > g && j.bottom < b; if (l) {
            if (j.selected) { j.$element.removeClass("ui-selected"); j.selected = false } if (j.unselecting) {
                j.$element.removeClass("ui-unselecting");
                j.unselecting = false
            } if (!j.selecting) { j.$element.addClass("ui-selecting"); j.selecting = true; c._trigger("selecting", d, { selecting: j.element }) } 
        } else {
            if (j.selecting) if (d.metaKey && j.startselected) { j.$element.removeClass("ui-selecting"); j.selecting = false; j.$element.addClass("ui-selected"); j.selected = true } else { j.$element.removeClass("ui-selecting"); j.selecting = false; if (j.startselected) { j.$element.addClass("ui-unselecting"); j.unselecting = true } c._trigger("unselecting", d, { unselecting: j.element }) } if (j.selected) if (!d.metaKey &&
!j.startselected) { j.$element.removeClass("ui-selected"); j.selected = false; j.$element.addClass("ui-unselecting"); j.unselecting = true; c._trigger("unselecting", d, { unselecting: j.element }) } 
        } 
    } 
}); return false
        } 
    }, _mouseStop: function (d) {
        var c = this; this.dragged = false; a(".ui-unselecting", this.element[0]).each(function () { var e = a.data(this, "selectable-item"); e.$element.removeClass("ui-unselecting"); e.unselecting = false; e.startselected = false; c._trigger("unselected", d, { unselected: e.element }) }); a(".ui-selecting", this.element[0]).each(function () {
            var e =
a.data(this, "selectable-item"); e.$element.removeClass("ui-selecting").addClass("ui-selected"); e.selecting = false; e.selected = true; e.startselected = true; c._trigger("selected", d, { selected: e.element })
        }); this._trigger("stop", d); this.helper.remove(); return false
    } 
    }); a.extend(a.ui.selectable, { version: "1.8.16" })
})(jQuery);
(function (a) {
    a.widget("ui.sortable", a.ui.mouse, { widgetEventPrefix: "sort", options: { appendTo: "parent", axis: false, connectWith: false, containment: false, cursor: "auto", cursorAt: false, dropOnEmpty: true, forcePlaceholderSize: false, forceHelperSize: false, grid: false, handle: false, helper: "original", items: "> *", opacity: false, placeholder: false, revert: false, scroll: true, scrollSensitivity: 20, scrollSpeed: 20, scope: "default", tolerance: "intersect", zIndex: 1E3 }, _create: function () {
        var d = this.options; this.containerCache = {}; this.element.addClass("ui-sortable");
        this.refresh(); this.floating = this.items.length ? d.axis === "x" || /left|right/.test(this.items[0].item.css("float")) || /inline|table-cell/.test(this.items[0].item.css("display")) : false; this.offset = this.element.offset(); this._mouseInit()
    }, destroy: function () { this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable"); this._mouseDestroy(); for (var d = this.items.length - 1; d >= 0; d--) this.items[d].item.removeData("sortable-item"); return this }, _setOption: function (d, c) {
        if (d ===
"disabled") { this.options[d] = c; this.widget()[c ? "addClass" : "removeClass"]("ui-sortable-disabled") } else a.Widget.prototype._setOption.apply(this, arguments)
    }, _mouseCapture: function (d, c) {
        if (this.reverting) return false; if (this.options.disabled || this.options.type == "static") return false; this._refreshItems(d); var e = null, h = this; a(d.target).parents().each(function () { if (a.data(this, "sortable-item") == h) { e = a(this); return false } }); if (a.data(d.target, "sortable-item") == h) e = a(d.target); if (!e) return false; if (this.options.handle &&
!c) { var g = false; a(this.options.handle, e).find("*").andSelf().each(function () { if (this == d.target) g = true }); if (!g) return false } this.currentItem = e; this._removeCurrentsFromItems(); return true
    }, _mouseStart: function (d, c, e) {
        c = this.options; var h = this; this.currentContainer = this; this.refreshPositions(); this.helper = this._createHelper(d); this._cacheHelperProportions(); this._cacheMargins(); this.scrollParent = this.helper.scrollParent(); this.offset = this.currentItem.offset(); this.offset = { top: this.offset.top - this.margins.top,
            left: this.offset.left - this.margins.left
        }; this.helper.css("position", "absolute"); this.cssPosition = this.helper.css("position"); a.extend(this.offset, { click: { left: d.pageX - this.offset.left, top: d.pageY - this.offset.top }, parent: this._getParentOffset(), relative: this._getRelativeOffset() }); this.originalPosition = this._generatePosition(d); this.originalPageX = d.pageX; this.originalPageY = d.pageY; c.cursorAt && this._adjustOffsetFromHelper(c.cursorAt); this.domPosition = { prev: this.currentItem.prev()[0], parent: this.currentItem.parent()[0] };
        this.helper[0] != this.currentItem[0] && this.currentItem.hide(); this._createPlaceholder(); c.containment && this._setContainment(); if (c.cursor) { if (a("body").css("cursor")) this._storedCursor = a("body").css("cursor"); a("body").css("cursor", c.cursor) } if (c.opacity) { if (this.helper.css("opacity")) this._storedOpacity = this.helper.css("opacity"); this.helper.css("opacity", c.opacity) } if (c.zIndex) { if (this.helper.css("zIndex")) this._storedZIndex = this.helper.css("zIndex"); this.helper.css("zIndex", c.zIndex) } if (this.scrollParent[0] !=
document && this.scrollParent[0].tagName != "HTML") this.overflowOffset = this.scrollParent.offset(); this._trigger("start", d, this._uiHash()); this._preserveHelperProportions || this._cacheHelperProportions(); if (!e) for (e = this.containers.length - 1; e >= 0; e--) this.containers[e]._trigger("activate", d, h._uiHash(this)); if (a.ui.ddmanager) a.ui.ddmanager.current = this; a.ui.ddmanager && !c.dropBehaviour && a.ui.ddmanager.prepareOffsets(this, d); this.dragging = true; this.helper.addClass("ui-sortable-helper"); this._mouseDrag(d);
        return true
    }, _mouseDrag: function (d) {
        this.position = this._generatePosition(d); this.positionAbs = this._convertPositionTo("absolute"); if (!this.lastPositionAbs) this.lastPositionAbs = this.positionAbs; if (this.options.scroll) {
            var c = this.options, e = false; if (this.scrollParent[0] != document && this.scrollParent[0].tagName != "HTML") {
                if (this.overflowOffset.top + this.scrollParent[0].offsetHeight - d.pageY < c.scrollSensitivity) this.scrollParent[0].scrollTop = e = this.scrollParent[0].scrollTop + c.scrollSpeed; else if (d.pageY - this.overflowOffset.top <
c.scrollSensitivity) this.scrollParent[0].scrollTop = e = this.scrollParent[0].scrollTop - c.scrollSpeed; if (this.overflowOffset.left + this.scrollParent[0].offsetWidth - d.pageX < c.scrollSensitivity) this.scrollParent[0].scrollLeft = e = this.scrollParent[0].scrollLeft + c.scrollSpeed; else if (d.pageX - this.overflowOffset.left < c.scrollSensitivity) this.scrollParent[0].scrollLeft = e = this.scrollParent[0].scrollLeft - c.scrollSpeed
            } else {
                if (d.pageY - a(document).scrollTop() < c.scrollSensitivity) e = a(document).scrollTop(a(document).scrollTop() -
c.scrollSpeed); else if (a(window).height() - (d.pageY - a(document).scrollTop()) < c.scrollSensitivity) e = a(document).scrollTop(a(document).scrollTop() + c.scrollSpeed); if (d.pageX - a(document).scrollLeft() < c.scrollSensitivity) e = a(document).scrollLeft(a(document).scrollLeft() - c.scrollSpeed); else if (a(window).width() - (d.pageX - a(document).scrollLeft()) < c.scrollSensitivity) e = a(document).scrollLeft(a(document).scrollLeft() + c.scrollSpeed)
            } e !== false && a.ui.ddmanager && !c.dropBehaviour && a.ui.ddmanager.prepareOffsets(this,
d)
        } this.positionAbs = this._convertPositionTo("absolute"); if (!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left + "px"; if (!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top + "px"; for (c = this.items.length - 1; c >= 0; c--) {
            e = this.items[c]; var h = e.item[0], g = this._intersectsWithPointer(e); if (g) if (h != this.currentItem[0] && this.placeholder[g == 1 ? "next" : "prev"]()[0] != h && !a.ui.contains(this.placeholder[0], h) && (this.options.type == "semi-dynamic" ? !a.ui.contains(this.element[0],
h) : true)) { this.direction = g == 1 ? "down" : "up"; if (this.options.tolerance == "pointer" || this._intersectsWithSides(e)) this._rearrange(d, e); else break; this._trigger("change", d, this._uiHash()); break } 
        } this._contactContainers(d); a.ui.ddmanager && a.ui.ddmanager.drag(this, d); this._trigger("sort", d, this._uiHash()); this.lastPositionAbs = this.positionAbs; return false
    }, _mouseStop: function (d, c) {
        if (d) {
            a.ui.ddmanager && !this.options.dropBehaviour && a.ui.ddmanager.drop(this, d); if (this.options.revert) {
                var e = this; c = e.placeholder.offset();
                e.reverting = true; a(this.helper).animate({ left: c.left - this.offset.parent.left - e.margins.left + (this.offsetParent[0] == document.body ? 0 : this.offsetParent[0].scrollLeft), top: c.top - this.offset.parent.top - e.margins.top + (this.offsetParent[0] == document.body ? 0 : this.offsetParent[0].scrollTop) }, parseInt(this.options.revert, 10) || 500, function () { e._clear(d) })
            } else this._clear(d, c); return false
        } 
    }, cancel: function () {
        var d = this; if (this.dragging) {
            this._mouseUp({ target: null }); this.options.helper == "original" ? this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper") :
this.currentItem.show(); for (var c = this.containers.length - 1; c >= 0; c--) { this.containers[c]._trigger("deactivate", null, d._uiHash(this)); if (this.containers[c].containerCache.over) { this.containers[c]._trigger("out", null, d._uiHash(this)); this.containers[c].containerCache.over = 0 } } 
        } if (this.placeholder) {
            this.placeholder[0].parentNode && this.placeholder[0].parentNode.removeChild(this.placeholder[0]); this.options.helper != "original" && this.helper && this.helper[0].parentNode && this.helper.remove(); a.extend(this, { helper: null,
                dragging: false, reverting: false, _noFinalSort: null
            }); this.domPosition.prev ? a(this.domPosition.prev).after(this.currentItem) : a(this.domPosition.parent).prepend(this.currentItem)
        } return this
    }, serialize: function (d) { var c = this._getItemsAsjQuery(d && d.connected), e = []; d = d || {}; a(c).each(function () { var h = (a(d.item || this).attr(d.attribute || "id") || "").match(d.expression || /(.+)[-=_](.+)/); if (h) e.push((d.key || h[1] + "[]") + "=" + (d.key && d.expression ? h[1] : h[2])) }); !e.length && d.key && e.push(d.key + "="); return e.join("&") },
        toArray: function (d) { var c = this._getItemsAsjQuery(d && d.connected), e = []; d = d || {}; c.each(function () { e.push(a(d.item || this).attr(d.attribute || "id") || "") }); return e }, _intersectsWith: function (d) {
            var c = this.positionAbs.left, e = c + this.helperProportions.width, h = this.positionAbs.top, g = h + this.helperProportions.height, i = d.left, b = i + d.width, f = d.top, j = f + d.height, l = this.offset.click.top, o = this.offset.click.left; l = h + l > f && h + l < j && c + o > i && c + o < b; return this.options.tolerance == "pointer" || this.options.forcePointerForContainers ||
this.options.tolerance != "pointer" && this.helperProportions[this.floating ? "width" : "height"] > d[this.floating ? "width" : "height"] ? l : i < c + this.helperProportions.width / 2 && e - this.helperProportions.width / 2 < b && f < h + this.helperProportions.height / 2 && g - this.helperProportions.height / 2 < j
        }, _intersectsWithPointer: function (d) {
            var c = a.ui.isOverAxis(this.positionAbs.top + this.offset.click.top, d.top, d.height); d = a.ui.isOverAxis(this.positionAbs.left + this.offset.click.left, d.left, d.width); c = c && d; d = this._getDragVerticalDirection();
            var e = this._getDragHorizontalDirection(); if (!c) return false; return this.floating ? e && e == "right" || d == "down" ? 2 : 1 : d && (d == "down" ? 2 : 1)
        }, _intersectsWithSides: function (d) { var c = a.ui.isOverAxis(this.positionAbs.top + this.offset.click.top, d.top + d.height / 2, d.height); d = a.ui.isOverAxis(this.positionAbs.left + this.offset.click.left, d.left + d.width / 2, d.width); var e = this._getDragVerticalDirection(), h = this._getDragHorizontalDirection(); return this.floating && h ? h == "right" && d || h == "left" && !d : e && (e == "down" && c || e == "up" && !c) },
        _getDragVerticalDirection: function () { var d = this.positionAbs.top - this.lastPositionAbs.top; return d != 0 && (d > 0 ? "down" : "up") }, _getDragHorizontalDirection: function () { var d = this.positionAbs.left - this.lastPositionAbs.left; return d != 0 && (d > 0 ? "right" : "left") }, refresh: function (d) { this._refreshItems(d); this.refreshPositions(); return this }, _connectWith: function () { var d = this.options; return d.connectWith.constructor == String ? [d.connectWith] : d.connectWith }, _getItemsAsjQuery: function (d) {
            var c = [], e = [], h = this._connectWith();
            if (h && d) for (d = h.length - 1; d >= 0; d--) for (var g = a(h[d]), i = g.length - 1; i >= 0; i--) { var b = a.data(g[i], "sortable"); if (b && b != this && !b.options.disabled) e.push([a.isFunction(b.options.items) ? b.options.items.call(b.element) : a(b.options.items, b.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"), b]) } e.push([a.isFunction(this.options.items) ? this.options.items.call(this.element, null, { options: this.options, item: this.currentItem }) : a(this.options.items, this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),
this]); for (d = e.length - 1; d >= 0; d--) e[d][0].each(function () { c.push(this) }); return a(c)
        }, _removeCurrentsFromItems: function () { for (var d = this.currentItem.find(":data(sortable-item)"), c = 0; c < this.items.length; c++) for (var e = 0; e < d.length; e++) d[e] == this.items[c].item[0] && this.items.splice(c, 1) }, _refreshItems: function (d) {
            this.items = []; this.containers = [this]; var c = this.items, e = [[a.isFunction(this.options.items) ? this.options.items.call(this.element[0], d, { item: this.currentItem }) : a(this.options.items, this.element),
this]], h = this._connectWith(); if (h) for (var g = h.length - 1; g >= 0; g--) for (var i = a(h[g]), b = i.length - 1; b >= 0; b--) { var f = a.data(i[b], "sortable"); if (f && f != this && !f.options.disabled) { e.push([a.isFunction(f.options.items) ? f.options.items.call(f.element[0], d, { item: this.currentItem }) : a(f.options.items, f.element), f]); this.containers.push(f) } } for (g = e.length - 1; g >= 0; g--) { d = e[g][1]; h = e[g][0]; b = 0; for (i = h.length; b < i; b++) { f = a(h[b]); f.data("sortable-item", d); c.push({ item: f, instance: d, width: 0, height: 0, left: 0, top: 0 }) } } 
        }, refreshPositions: function (d) {
            if (this.offsetParent &&
this.helper) this.offset.parent = this._getParentOffset(); for (var c = this.items.length - 1; c >= 0; c--) { var e = this.items[c]; if (!(e.instance != this.currentContainer && this.currentContainer && e.item[0] != this.currentItem[0])) { var h = this.options.toleranceElement ? a(this.options.toleranceElement, e.item) : e.item; if (!d) { e.width = h.outerWidth(); e.height = h.outerHeight() } h = h.offset(); e.left = h.left; e.top = h.top } } if (this.options.custom && this.options.custom.refreshContainers) this.options.custom.refreshContainers.call(this); else for (c =
this.containers.length - 1; c >= 0; c--) { h = this.containers[c].element.offset(); this.containers[c].containerCache.left = h.left; this.containers[c].containerCache.top = h.top; this.containers[c].containerCache.width = this.containers[c].element.outerWidth(); this.containers[c].containerCache.height = this.containers[c].element.outerHeight() } return this
        }, _createPlaceholder: function (d) {
            var c = d || this, e = c.options; if (!e.placeholder || e.placeholder.constructor == String) {
                var h = e.placeholder; e.placeholder = { element: function () {
                    var g =
a(document.createElement(c.currentItem[0].nodeName)).addClass(h || c.currentItem[0].className + " ui-sortable-placeholder").removeClass("ui-sortable-helper")[0]; if (!h) g.style.visibility = "hidden"; return g
                }, update: function (g, i) {
                    if (!(h && !e.forcePlaceholderSize)) {
                        i.height() || i.height(c.currentItem.innerHeight() - parseInt(c.currentItem.css("paddingTop") || 0, 10) - parseInt(c.currentItem.css("paddingBottom") || 0, 10)); i.width() || i.width(c.currentItem.innerWidth() - parseInt(c.currentItem.css("paddingLeft") || 0, 10) - parseInt(c.currentItem.css("paddingRight") ||
0, 10))
                    } 
                } 
                }
            } c.placeholder = a(e.placeholder.element.call(c.element, c.currentItem)); c.currentItem.after(c.placeholder); e.placeholder.update(c, c.placeholder)
        }, _contactContainers: function (d) {
            for (var c = null, e = null, h = this.containers.length - 1; h >= 0; h--) if (!a.ui.contains(this.currentItem[0], this.containers[h].element[0])) if (this._intersectsWith(this.containers[h].containerCache)) { if (!(c && a.ui.contains(this.containers[h].element[0], c.element[0]))) { c = this.containers[h]; e = h } } else if (this.containers[h].containerCache.over) {
                this.containers[h]._trigger("out",
d, this._uiHash(this)); this.containers[h].containerCache.over = 0
            } if (c) if (this.containers.length === 1) { this.containers[e]._trigger("over", d, this._uiHash(this)); this.containers[e].containerCache.over = 1 } else if (this.currentContainer != this.containers[e]) {
                c = 1E4; h = null; for (var g = this.positionAbs[this.containers[e].floating ? "left" : "top"], i = this.items.length - 1; i >= 0; i--) if (a.ui.contains(this.containers[e].element[0], this.items[i].item[0])) {
                    var b = this.items[i][this.containers[e].floating ? "left" : "top"]; if (Math.abs(b -
g) < c) { c = Math.abs(b - g); h = this.items[i] } 
                } if (h || this.options.dropOnEmpty) { this.currentContainer = this.containers[e]; h ? this._rearrange(d, h, null, true) : this._rearrange(d, null, this.containers[e].element, true); this._trigger("change", d, this._uiHash()); this.containers[e]._trigger("change", d, this._uiHash(this)); this.options.placeholder.update(this.currentContainer, this.placeholder); this.containers[e]._trigger("over", d, this._uiHash(this)); this.containers[e].containerCache.over = 1 } 
            } 
        }, _createHelper: function (d) {
            var c =
this.options; d = a.isFunction(c.helper) ? a(c.helper.apply(this.element[0], [d, this.currentItem])) : c.helper == "clone" ? this.currentItem.clone() : this.currentItem; d.parents("body").length || a(c.appendTo != "parent" ? c.appendTo : this.currentItem[0].parentNode)[0].appendChild(d[0]); if (d[0] == this.currentItem[0]) this._storedCSS = { width: this.currentItem[0].style.width, height: this.currentItem[0].style.height, position: this.currentItem.css("position"), top: this.currentItem.css("top"), left: this.currentItem.css("left") }; if (d[0].style.width ==
"" || c.forceHelperSize) d.width(this.currentItem.width()); if (d[0].style.height == "" || c.forceHelperSize) d.height(this.currentItem.height()); return d
        }, _adjustOffsetFromHelper: function (d) {
            if (typeof d == "string") d = d.split(" "); if (a.isArray(d)) d = { left: +d[0], top: +d[1] || 0 }; if ("left" in d) this.offset.click.left = d.left + this.margins.left; if ("right" in d) this.offset.click.left = this.helperProportions.width - d.right + this.margins.left; if ("top" in d) this.offset.click.top = d.top + this.margins.top; if ("bottom" in d) this.offset.click.top =
this.helperProportions.height - d.bottom + this.margins.top
        }, _getParentOffset: function () {
            this.offsetParent = this.helper.offsetParent(); var d = this.offsetParent.offset(); if (this.cssPosition == "absolute" && this.scrollParent[0] != document && a.ui.contains(this.scrollParent[0], this.offsetParent[0])) { d.left += this.scrollParent.scrollLeft(); d.top += this.scrollParent.scrollTop() } if (this.offsetParent[0] == document.body || this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == "html" && a.browser.msie) d =
{ top: 0, left: 0 }; return { top: d.top + (parseInt(this.offsetParent.css("borderTopWidth"), 10) || 0), left: d.left + (parseInt(this.offsetParent.css("borderLeftWidth"), 10) || 0)}
        }, _getRelativeOffset: function () { if (this.cssPosition == "relative") { var d = this.currentItem.position(); return { top: d.top - (parseInt(this.helper.css("top"), 10) || 0) + this.scrollParent.scrollTop(), left: d.left - (parseInt(this.helper.css("left"), 10) || 0) + this.scrollParent.scrollLeft()} } else return { top: 0, left: 0} }, _cacheMargins: function () {
            this.margins = { left: parseInt(this.currentItem.css("marginLeft"),
10) || 0, top: parseInt(this.currentItem.css("marginTop"), 10) || 0
            }
        }, _cacheHelperProportions: function () { this.helperProportions = { width: this.helper.outerWidth(), height: this.helper.outerHeight()} }, _setContainment: function () {
            var d = this.options; if (d.containment == "parent") d.containment = this.helper[0].parentNode; if (d.containment == "document" || d.containment == "window") this.containment = [0 - this.offset.relative.left - this.offset.parent.left, 0 - this.offset.relative.top - this.offset.parent.top, a(d.containment == "document" ?
document : window).width() - this.helperProportions.width - this.margins.left, (a(d.containment == "document" ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top]; if (!/^(document|window|parent)$/.test(d.containment)) {
                var c = a(d.containment)[0]; d = a(d.containment).offset(); var e = a(c).css("overflow") != "hidden"; this.containment = [d.left + (parseInt(a(c).css("borderLeftWidth"), 10) || 0) + (parseInt(a(c).css("paddingLeft"), 10) || 0) - this.margins.left, d.top + (parseInt(a(c).css("borderTopWidth"),
10) || 0) + (parseInt(a(c).css("paddingTop"), 10) || 0) - this.margins.top, d.left + (e ? Math.max(c.scrollWidth, c.offsetWidth) : c.offsetWidth) - (parseInt(a(c).css("borderLeftWidth"), 10) || 0) - (parseInt(a(c).css("paddingRight"), 10) || 0) - this.helperProportions.width - this.margins.left, d.top + (e ? Math.max(c.scrollHeight, c.offsetHeight) : c.offsetHeight) - (parseInt(a(c).css("borderTopWidth"), 10) || 0) - (parseInt(a(c).css("paddingBottom"), 10) || 0) - this.helperProportions.height - this.margins.top]
            } 
        }, _convertPositionTo: function (d, c) {
            if (!c) c =
this.position; d = d == "absolute" ? 1 : -1; var e = this.cssPosition == "absolute" && !(this.scrollParent[0] != document && a.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, h = /(html|body)/i.test(e[0].tagName); return { top: c.top + this.offset.relative.top * d + this.offset.parent.top * d - (a.browser.safari && this.cssPosition == "fixed" ? 0 : (this.cssPosition == "fixed" ? -this.scrollParent.scrollTop() : h ? 0 : e.scrollTop()) * d), left: c.left + this.offset.relative.left * d + this.offset.parent.left * d - (a.browser.safari &&
this.cssPosition == "fixed" ? 0 : (this.cssPosition == "fixed" ? -this.scrollParent.scrollLeft() : h ? 0 : e.scrollLeft()) * d)
}
        }, _generatePosition: function (d) {
            var c = this.options, e = this.cssPosition == "absolute" && !(this.scrollParent[0] != document && a.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, h = /(html|body)/i.test(e[0].tagName); if (this.cssPosition == "relative" && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) this.offset.relative = this._getRelativeOffset();
            var g = d.pageX, i = d.pageY; if (this.originalPosition) {
                if (this.containment) { if (d.pageX - this.offset.click.left < this.containment[0]) g = this.containment[0] + this.offset.click.left; if (d.pageY - this.offset.click.top < this.containment[1]) i = this.containment[1] + this.offset.click.top; if (d.pageX - this.offset.click.left > this.containment[2]) g = this.containment[2] + this.offset.click.left; if (d.pageY - this.offset.click.top > this.containment[3]) i = this.containment[3] + this.offset.click.top } if (c.grid) {
                    i = this.originalPageY + Math.round((i -
this.originalPageY) / c.grid[1]) * c.grid[1]; i = this.containment ? !(i - this.offset.click.top < this.containment[1] || i - this.offset.click.top > this.containment[3]) ? i : !(i - this.offset.click.top < this.containment[1]) ? i - c.grid[1] : i + c.grid[1] : i; g = this.originalPageX + Math.round((g - this.originalPageX) / c.grid[0]) * c.grid[0]; g = this.containment ? !(g - this.offset.click.left < this.containment[0] || g - this.offset.click.left > this.containment[2]) ? g : !(g - this.offset.click.left < this.containment[0]) ? g - c.grid[0] : g + c.grid[0] : g
                } 
            } return { top: i -
this.offset.click.top - this.offset.relative.top - this.offset.parent.top + (a.browser.safari && this.cssPosition == "fixed" ? 0 : this.cssPosition == "fixed" ? -this.scrollParent.scrollTop() : h ? 0 : e.scrollTop()), left: g - this.offset.click.left - this.offset.relative.left - this.offset.parent.left + (a.browser.safari && this.cssPosition == "fixed" ? 0 : this.cssPosition == "fixed" ? -this.scrollParent.scrollLeft() : h ? 0 : e.scrollLeft())
            }
        }, _rearrange: function (d, c, e, h) {
            e ? e[0].appendChild(this.placeholder[0]) : c.item[0].parentNode.insertBefore(this.placeholder[0],
this.direction == "down" ? c.item[0] : c.item[0].nextSibling); this.counter = this.counter ? ++this.counter : 1; var g = this, i = this.counter; window.setTimeout(function () { i == g.counter && g.refreshPositions(!h) }, 0)
        }, _clear: function (d, c) {
            this.reverting = false; var e = []; !this._noFinalSort && this.currentItem.parent().length && this.placeholder.before(this.currentItem); this._noFinalSort = null; if (this.helper[0] == this.currentItem[0]) {
                for (var h in this._storedCSS) if (this._storedCSS[h] == "auto" || this._storedCSS[h] == "static") this._storedCSS[h] =
""; this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")
            } else this.currentItem.show(); this.fromOutside && !c && e.push(function (g) { this._trigger("receive", g, this._uiHash(this.fromOutside)) }); if ((this.fromOutside || this.domPosition.prev != this.currentItem.prev().not(".ui-sortable-helper")[0] || this.domPosition.parent != this.currentItem.parent()[0]) && !c) e.push(function (g) { this._trigger("update", g, this._uiHash()) }); if (!a.ui.contains(this.element[0], this.currentItem[0])) {
                c || e.push(function (g) {
                    this._trigger("remove",
g, this._uiHash())
                }); for (h = this.containers.length - 1; h >= 0; h--) if (a.ui.contains(this.containers[h].element[0], this.currentItem[0]) && !c) { e.push(function (g) { return function (i) { g._trigger("receive", i, this._uiHash(this)) } } .call(this, this.containers[h])); e.push(function (g) { return function (i) { g._trigger("update", i, this._uiHash(this)) } } .call(this, this.containers[h])) } 
            } for (h = this.containers.length - 1; h >= 0; h--) {
                c || e.push(function (g) { return function (i) { g._trigger("deactivate", i, this._uiHash(this)) } } .call(this,
this.containers[h])); if (this.containers[h].containerCache.over) { e.push(function (g) { return function (i) { g._trigger("out", i, this._uiHash(this)) } } .call(this, this.containers[h])); this.containers[h].containerCache.over = 0 } 
            } this._storedCursor && a("body").css("cursor", this._storedCursor); this._storedOpacity && this.helper.css("opacity", this._storedOpacity); if (this._storedZIndex) this.helper.css("zIndex", this._storedZIndex == "auto" ? "" : this._storedZIndex); this.dragging = false; if (this.cancelHelperRemoval) {
                if (!c) {
                    this._trigger("beforeStop",
d, this._uiHash()); for (h = 0; h < e.length; h++) e[h].call(this, d); this._trigger("stop", d, this._uiHash())
                } return false
            } c || this._trigger("beforeStop", d, this._uiHash()); this.placeholder[0].parentNode.removeChild(this.placeholder[0]); this.helper[0] != this.currentItem[0] && this.helper.remove(); this.helper = null; if (!c) { for (h = 0; h < e.length; h++) e[h].call(this, d); this._trigger("stop", d, this._uiHash()) } this.fromOutside = false; return true
        }, _trigger: function () { a.Widget.prototype._trigger.apply(this, arguments) === false && this.cancel() },
        _uiHash: function (d) { var c = d || this; return { helper: c.helper, placeholder: c.placeholder || a([]), position: c.position, originalPosition: c.originalPosition, offset: c.positionAbs, item: c.currentItem, sender: d ? d.element : null} } 
    }); a.extend(a.ui.sortable, { version: "1.8.16" })
})(jQuery);
jQuery.effects || function (a, d) {
    function c(n) {
        var k; if (n && n.constructor == Array && n.length == 3) return n; if (k = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(n)) return [parseInt(k[1], 10), parseInt(k[2], 10), parseInt(k[3], 10)]; if (k = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(n)) return [parseFloat(k[1]) * 2.55, parseFloat(k[2]) * 2.55, parseFloat(k[3]) * 2.55]; if (k = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(n)) return [parseInt(k[1],
16), parseInt(k[2], 16), parseInt(k[3], 16)]; if (k = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(n)) return [parseInt(k[1] + k[1], 16), parseInt(k[2] + k[2], 16), parseInt(k[3] + k[3], 16)]; if (/rgba\(0, 0, 0, 0\)/.exec(n)) return j.transparent; return j[a.trim(n).toLowerCase()]
    } function e(n, k) { var m; do { m = a.curCSS(n, k); if (m != "" && m != "transparent" || a.nodeName(n, "body")) break; k = "backgroundColor" } while (n = n.parentNode); return c(m) } function h() {
        var n = document.defaultView ? document.defaultView.getComputedStyle(this, null) : this.currentStyle,
k = {}, m, p; if (n && n.length && n[0] && n[n[0]]) for (var q = n.length; q--; ) { m = n[q]; if (typeof n[m] == "string") { p = m.replace(/\-(\w)/g, function (s, r) { return r.toUpperCase() }); k[p] = n[m] } } else for (m in n) if (typeof n[m] === "string") k[m] = n[m]; return k
    } function g(n) { var k, m; for (k in n) { m = n[k]; if (m == null || a.isFunction(m) || k in o || /scrollbar/.test(k) || !/color/i.test(k) && isNaN(parseFloat(m))) delete n[k] } return n } function i(n, k) { var m = { _: 0 }, p; for (p in k) if (n[p] != k[p]) m[p] = k[p]; return m } function b(n, k, m, p) {
        if (typeof n == "object") {
            p =
k; m = null; k = n; n = k.effect
        } if (a.isFunction(k)) { p = k; m = null; k = {} } if (typeof k == "number" || a.fx.speeds[k]) { p = m; m = k; k = {} } if (a.isFunction(m)) { p = m; m = null } k = k || {}; m = m || k.duration; m = a.fx.off ? 0 : typeof m == "number" ? m : m in a.fx.speeds ? a.fx.speeds[m] : a.fx.speeds._default; p = p || k.complete; return [n, k, m, p]
    } function f(n) { if (!n || typeof n === "number" || a.fx.speeds[n]) return true; if (typeof n === "string" && !a.effects[n]) return true; return false } a.effects = {}; a.each(["backgroundColor", "borderBottomColor", "borderLeftColor", "borderRightColor",
"borderTopColor", "borderColor", "color", "outlineColor"], function (n, k) { a.fx.step[k] = function (m) { if (!m.colorInit) { m.start = e(m.elem, k); m.end = c(m.end); m.colorInit = true } m.elem.style[k] = "rgb(" + Math.max(Math.min(parseInt(m.pos * (m.end[0] - m.start[0]) + m.start[0], 10), 255), 0) + "," + Math.max(Math.min(parseInt(m.pos * (m.end[1] - m.start[1]) + m.start[1], 10), 255), 0) + "," + Math.max(Math.min(parseInt(m.pos * (m.end[2] - m.start[2]) + m.start[2], 10), 255), 0) + ")" } }); var j = { aqua: [0, 255, 255], azure: [240, 255, 255], beige: [245, 245, 220], black: [0,
0, 0], blue: [0, 0, 255], brown: [165, 42, 42], cyan: [0, 255, 255], darkblue: [0, 0, 139], darkcyan: [0, 139, 139], darkgrey: [169, 169, 169], darkgreen: [0, 100, 0], darkkhaki: [189, 183, 107], darkmagenta: [139, 0, 139], darkolivegreen: [85, 107, 47], darkorange: [255, 140, 0], darkorchid: [153, 50, 204], darkred: [139, 0, 0], darksalmon: [233, 150, 122], darkviolet: [148, 0, 211], fuchsia: [255, 0, 255], gold: [255, 215, 0], green: [0, 128, 0], indigo: [75, 0, 130], khaki: [240, 230, 140], lightblue: [173, 216, 230], lightcyan: [224, 255, 255], lightgreen: [144, 238, 144], lightgrey: [211,
211, 211], lightpink: [255, 182, 193], lightyellow: [255, 255, 224], lime: [0, 255, 0], magenta: [255, 0, 255], maroon: [128, 0, 0], navy: [0, 0, 128], olive: [128, 128, 0], orange: [255, 165, 0], pink: [255, 192, 203], purple: [128, 0, 128], violet: [128, 0, 128], red: [255, 0, 0], silver: [192, 192, 192], white: [255, 255, 255], yellow: [255, 255, 0], transparent: [255, 255, 255]
}, l = ["add", "remove", "toggle"], o = { border: 1, borderBottom: 1, borderColor: 1, borderLeft: 1, borderRight: 1, borderTop: 1, borderWidth: 1, margin: 1, padding: 1 }; a.effects.animateClass = function (n, k, m,
p) { if (a.isFunction(m)) { p = m; m = null } return this.queue(function () { var q = a(this), s = q.attr("style") || " ", r = g(h.call(this)), u, v = q.attr("class"); a.each(l, function (w, x) { n[x] && q[x + "Class"](n[x]) }); u = g(h.call(this)); q.attr("class", v); q.animate(i(r, u), { queue: false, duration: k, easing: m, complete: function () { a.each(l, function (w, x) { n[x] && q[x + "Class"](n[x]) }); if (typeof q.attr("style") == "object") { q.attr("style").cssText = ""; q.attr("style").cssText = s } else q.attr("style", s); p && p.apply(this, arguments); a.dequeue(this) } }) }) };
    a.fn.extend({ _addClass: a.fn.addClass, addClass: function (n, k, m, p) { return k ? a.effects.animateClass.apply(this, [{ add: n }, k, m, p]) : this._addClass(n) }, _removeClass: a.fn.removeClass, removeClass: function (n, k, m, p) { return k ? a.effects.animateClass.apply(this, [{ remove: n }, k, m, p]) : this._removeClass(n) }, _toggleClass: a.fn.toggleClass, toggleClass: function (n, k, m, p, q) {
        return typeof k == "boolean" || k === d ? m ? a.effects.animateClass.apply(this, [k ? { add: n} : { remove: n }, m, p, q]) : this._toggleClass(n, k) : a.effects.animateClass.apply(this,
[{ toggle: n }, k, m, p])
    }, switchClass: function (n, k, m, p, q) { return a.effects.animateClass.apply(this, [{ add: k, remove: n }, m, p, q]) } 
    }); a.extend(a.effects, { version: "1.8.16", save: function (n, k) { for (var m = 0; m < k.length; m++) k[m] !== null && n.data("ec.storage." + k[m], n[0].style[k[m]]) }, restore: function (n, k) { for (var m = 0; m < k.length; m++) k[m] !== null && n.css(k[m], n.data("ec.storage." + k[m])) }, setMode: function (n, k) { if (k == "toggle") k = n.is(":hidden") ? "show" : "hide"; return k }, getBaseline: function (n, k) {
        var m; switch (n[0]) {
            case "top": m =
0; break; case "middle": m = 0.5; break; case "bottom": m = 1; break; default: m = n[0] / k.height
        } switch (n[1]) { case "left": n = 0; break; case "center": n = 0.5; break; case "right": n = 1; break; default: n = n[1] / k.width } return { x: n, y: m}
    }, createWrapper: function (n) {
        if (n.parent().is(".ui-effects-wrapper")) return n.parent(); var k = { width: n.outerWidth(true), height: n.outerHeight(true), "float": n.css("float") }, m = a("<div></div>").addClass("ui-effects-wrapper").css({ fontSize: "100%", background: "transparent", border: "none", margin: 0, padding: 0 }),
p = document.activeElement; n.wrap(m); if (n[0] === p || a.contains(n[0], p)) a(p).focus(); m = n.parent(); if (n.css("position") == "static") { m.css({ position: "relative" }); n.css({ position: "relative" }) } else { a.extend(k, { position: n.css("position"), zIndex: n.css("z-index") }); a.each(["top", "left", "bottom", "right"], function (q, s) { k[s] = n.css(s); if (isNaN(parseInt(k[s], 10))) k[s] = "auto" }); n.css({ position: "relative", top: 0, left: 0, right: "auto", bottom: "auto" }) } return m.css(k).show()
    }, removeWrapper: function (n) {
        var k, m = document.activeElement;
        if (n.parent().is(".ui-effects-wrapper")) { k = n.parent().replaceWith(n); if (n[0] === m || a.contains(n[0], m)) a(m).focus(); return k } return n
    }, setTransition: function (n, k, m, p) { p = p || {}; a.each(k, function (q, s) { unit = n.cssUnit(s); if (unit[0] > 0) p[s] = unit[0] * m + unit[1] }); return p } 
    }); a.fn.extend({ effect: function (n) {
        var k = b.apply(this, arguments), m = { options: k[1], duration: k[2], callback: k[3] }; k = m.options.mode; var p = a.effects[n]; if (a.fx.off || !p) return k ? this[k](m.duration, m.callback) : this.each(function () { m.callback && m.callback.call(this) });
        return p.call(this, m)
    }, _show: a.fn.show, show: function (n) { if (f(n)) return this._show.apply(this, arguments); else { var k = b.apply(this, arguments); k[1].mode = "show"; return this.effect.apply(this, k) } }, _hide: a.fn.hide, hide: function (n) { if (f(n)) return this._hide.apply(this, arguments); else { var k = b.apply(this, arguments); k[1].mode = "hide"; return this.effect.apply(this, k) } }, __toggle: a.fn.toggle, toggle: function (n) {
        if (f(n) || typeof n === "boolean" || a.isFunction(n)) return this.__toggle.apply(this, arguments); else {
            var k = b.apply(this,
arguments); k[1].mode = "toggle"; return this.effect.apply(this, k)
        } 
    }, cssUnit: function (n) { var k = this.css(n), m = []; a.each(["em", "px", "%", "pt"], function (p, q) { if (k.indexOf(q) > 0) m = [parseFloat(k), q] }); return m } 
    }); a.easing.jswing = a.easing.swing; a.extend(a.easing, { def: "easeOutQuad", swing: function (n, k, m, p, q) { return a.easing[a.easing.def](n, k, m, p, q) }, easeInQuad: function (n, k, m, p, q) { return p * (k /= q) * k + m }, easeOutQuad: function (n, k, m, p, q) { return -p * (k /= q) * (k - 2) + m }, easeInOutQuad: function (n, k, m, p, q) {
        if ((k /= q / 2) < 1) return p /
2 * k * k + m; return -p / 2 * (--k * (k - 2) - 1) + m
    }, easeInCubic: function (n, k, m, p, q) { return p * (k /= q) * k * k + m }, easeOutCubic: function (n, k, m, p, q) { return p * ((k = k / q - 1) * k * k + 1) + m }, easeInOutCubic: function (n, k, m, p, q) { if ((k /= q / 2) < 1) return p / 2 * k * k * k + m; return p / 2 * ((k -= 2) * k * k + 2) + m }, easeInQuart: function (n, k, m, p, q) { return p * (k /= q) * k * k * k + m }, easeOutQuart: function (n, k, m, p, q) { return -p * ((k = k / q - 1) * k * k * k - 1) + m }, easeInOutQuart: function (n, k, m, p, q) { if ((k /= q / 2) < 1) return p / 2 * k * k * k * k + m; return -p / 2 * ((k -= 2) * k * k * k - 2) + m }, easeInQuint: function (n, k, m,
p, q) { return p * (k /= q) * k * k * k * k + m }, easeOutQuint: function (n, k, m, p, q) { return p * ((k = k / q - 1) * k * k * k * k + 1) + m }, easeInOutQuint: function (n, k, m, p, q) { if ((k /= q / 2) < 1) return p / 2 * k * k * k * k * k + m; return p / 2 * ((k -= 2) * k * k * k * k + 2) + m }, easeInSine: function (n, k, m, p, q) { return -p * Math.cos(k / q * (Math.PI / 2)) + p + m }, easeOutSine: function (n, k, m, p, q) { return p * Math.sin(k / q * (Math.PI / 2)) + m }, easeInOutSine: function (n, k, m, p, q) { return -p / 2 * (Math.cos(Math.PI * k / q) - 1) + m }, easeInExpo: function (n, k, m, p, q) { return k == 0 ? m : p * Math.pow(2, 10 * (k / q - 1)) + m }, easeOutExpo: function (n,
k, m, p, q) { return k == q ? m + p : p * (-Math.pow(2, -10 * k / q) + 1) + m }, easeInOutExpo: function (n, k, m, p, q) { if (k == 0) return m; if (k == q) return m + p; if ((k /= q / 2) < 1) return p / 2 * Math.pow(2, 10 * (k - 1)) + m; return p / 2 * (-Math.pow(2, -10 * --k) + 2) + m }, easeInCirc: function (n, k, m, p, q) { return -p * (Math.sqrt(1 - (k /= q) * k) - 1) + m }, easeOutCirc: function (n, k, m, p, q) { return p * Math.sqrt(1 - (k = k / q - 1) * k) + m }, easeInOutCirc: function (n, k, m, p, q) { if ((k /= q / 2) < 1) return -p / 2 * (Math.sqrt(1 - k * k) - 1) + m; return p / 2 * (Math.sqrt(1 - (k -= 2) * k) + 1) + m }, easeInElastic: function (n, k, m,
p, q) { n = 1.70158; var s = 0, r = p; if (k == 0) return m; if ((k /= q) == 1) return m + p; s || (s = q * 0.3); if (r < Math.abs(p)) { r = p; n = s / 4 } else n = s / (2 * Math.PI) * Math.asin(p / r); return -(r * Math.pow(2, 10 * (k -= 1)) * Math.sin((k * q - n) * 2 * Math.PI / s)) + m }, easeOutElastic: function (n, k, m, p, q) { n = 1.70158; var s = 0, r = p; if (k == 0) return m; if ((k /= q) == 1) return m + p; s || (s = q * 0.3); if (r < Math.abs(p)) { r = p; n = s / 4 } else n = s / (2 * Math.PI) * Math.asin(p / r); return r * Math.pow(2, -10 * k) * Math.sin((k * q - n) * 2 * Math.PI / s) + p + m }, easeInOutElastic: function (n, k, m, p, q) {
    n = 1.70158; var s =
0, r = p; if (k == 0) return m; if ((k /= q / 2) == 2) return m + p; s || (s = q * 0.3 * 1.5); if (r < Math.abs(p)) { r = p; n = s / 4 } else n = s / (2 * Math.PI) * Math.asin(p / r); if (k < 1) return -0.5 * r * Math.pow(2, 10 * (k -= 1)) * Math.sin((k * q - n) * 2 * Math.PI / s) + m; return r * Math.pow(2, -10 * (k -= 1)) * Math.sin((k * q - n) * 2 * Math.PI / s) * 0.5 + p + m
}, easeInBack: function (n, k, m, p, q, s) { if (s == d) s = 1.70158; return p * (k /= q) * k * ((s + 1) * k - s) + m }, easeOutBack: function (n, k, m, p, q, s) { if (s == d) s = 1.70158; return p * ((k = k / q - 1) * k * ((s + 1) * k + s) + 1) + m }, easeInOutBack: function (n, k, m, p, q, s) {
    if (s == d) s = 1.70158;
    if ((k /= q / 2) < 1) return p / 2 * k * k * (((s *= 1.525) + 1) * k - s) + m; return p / 2 * ((k -= 2) * k * (((s *= 1.525) + 1) * k + s) + 2) + m
}, easeInBounce: function (n, k, m, p, q) { return p - a.easing.easeOutBounce(n, q - k, 0, p, q) + m }, easeOutBounce: function (n, k, m, p, q) { return (k /= q) < 1 / 2.75 ? p * 7.5625 * k * k + m : k < 2 / 2.75 ? p * (7.5625 * (k -= 1.5 / 2.75) * k + 0.75) + m : k < 2.5 / 2.75 ? p * (7.5625 * (k -= 2.25 / 2.75) * k + 0.9375) + m : p * (7.5625 * (k -= 2.625 / 2.75) * k + 0.984375) + m }, easeInOutBounce: function (n, k, m, p, q) {
    if (k < q / 2) return a.easing.easeInBounce(n, k * 2, 0, p, q) * 0.5 + m; return a.easing.easeOutBounce(n,
k * 2 - q, 0, p, q) * 0.5 + p * 0.5 + m
} 
    })
} (jQuery);
(function (a) {
    a.effects.blind = function (d) {
        return this.queue(function () {
            var c = a(this), e = ["position", "top", "bottom", "left", "right"], h = a.effects.setMode(c, d.options.mode || "hide"), g = d.options.direction || "vertical"; a.effects.save(c, e); c.show(); var i = a.effects.createWrapper(c).css({ overflow: "hidden" }), b = g == "vertical" ? "height" : "width"; g = g == "vertical" ? i.height() : i.width(); h == "show" && i.css(b, 0); var f = {}; f[b] = h == "show" ? g : 0; i.animate(f, d.duration, d.options.easing, function () {
                h == "hide" && c.hide(); a.effects.restore(c,
e); a.effects.removeWrapper(c); d.callback && d.callback.apply(c[0], arguments); c.dequeue()
            })
        })
    } 
})(jQuery);
(function (a) {
    a.effects.bounce = function (d) {
        return this.queue(function () {
            var c = a(this), e = ["position", "top", "bottom", "left", "right"], h = a.effects.setMode(c, d.options.mode || "effect"), g = d.options.direction || "up", i = d.options.distance || 20, b = d.options.times || 5, f = d.duration || 250; /show|hide/.test(h) && e.push("opacity"); a.effects.save(c, e); c.show(); a.effects.createWrapper(c); var j = g == "up" || g == "down" ? "top" : "left"; g = g == "up" || g == "left" ? "pos" : "neg"; i = d.options.distance || (j == "top" ? c.outerHeight({ margin: true }) / 3 : c.outerWidth({ margin: true }) /
3); if (h == "show") c.css("opacity", 0).css(j, g == "pos" ? -i : i); if (h == "hide") i /= b * 2; h != "hide" && b--; if (h == "show") { var l = { opacity: 1 }; l[j] = (g == "pos" ? "+=" : "-=") + i; c.animate(l, f / 2, d.options.easing); i /= 2; b-- } for (l = 0; l < b; l++) { var o = {}, n = {}; o[j] = (g == "pos" ? "-=" : "+=") + i; n[j] = (g == "pos" ? "+=" : "-=") + i; c.animate(o, f / 2, d.options.easing).animate(n, f / 2, d.options.easing); i = h == "hide" ? i * 2 : i / 2 } if (h == "hide") {
                l = { opacity: 0 }; l[j] = (g == "pos" ? "-=" : "+=") + i; c.animate(l, f / 2, d.options.easing, function () {
                    c.hide(); a.effects.restore(c, e); a.effects.removeWrapper(c);
                    d.callback && d.callback.apply(this, arguments)
                })
            } else { o = {}; n = {}; o[j] = (g == "pos" ? "-=" : "+=") + i; n[j] = (g == "pos" ? "+=" : "-=") + i; c.animate(o, f / 2, d.options.easing).animate(n, f / 2, d.options.easing, function () { a.effects.restore(c, e); a.effects.removeWrapper(c); d.callback && d.callback.apply(this, arguments) }) } c.queue("fx", function () { c.dequeue() }); c.dequeue()
        })
    } 
})(jQuery);
(function (a) {
    a.effects.clip = function (d) {
        return this.queue(function () {
            var c = a(this), e = ["position", "top", "bottom", "left", "right", "height", "width"], h = a.effects.setMode(c, d.options.mode || "hide"), g = d.options.direction || "vertical"; a.effects.save(c, e); c.show(); var i = a.effects.createWrapper(c).css({ overflow: "hidden" }); i = c[0].tagName == "IMG" ? i : c; var b = { size: g == "vertical" ? "height" : "width", position: g == "vertical" ? "top" : "left" }; g = g == "vertical" ? i.height() : i.width(); if (h == "show") {
                i.css(b.size, 0); i.css(b.position,
g / 2)
            } var f = {}; f[b.size] = h == "show" ? g : 0; f[b.position] = h == "show" ? 0 : g / 2; i.animate(f, { queue: false, duration: d.duration, easing: d.options.easing, complete: function () { h == "hide" && c.hide(); a.effects.restore(c, e); a.effects.removeWrapper(c); d.callback && d.callback.apply(c[0], arguments); c.dequeue() } })
        })
    } 
})(jQuery);
(function (a) {
    a.effects.drop = function (d) {
        return this.queue(function () {
            var c = a(this), e = ["position", "top", "bottom", "left", "right", "opacity"], h = a.effects.setMode(c, d.options.mode || "hide"), g = d.options.direction || "left"; a.effects.save(c, e); c.show(); a.effects.createWrapper(c); var i = g == "up" || g == "down" ? "top" : "left"; g = g == "up" || g == "left" ? "pos" : "neg"; var b = d.options.distance || (i == "top" ? c.outerHeight({ margin: true }) / 2 : c.outerWidth({ margin: true }) / 2); if (h == "show") c.css("opacity", 0).css(i, g == "pos" ? -b : b); var f = { opacity: h ==
"show" ? 1 : 0
            }; f[i] = (h == "show" ? g == "pos" ? "+=" : "-=" : g == "pos" ? "-=" : "+=") + b; c.animate(f, { queue: false, duration: d.duration, easing: d.options.easing, complete: function () { h == "hide" && c.hide(); a.effects.restore(c, e); a.effects.removeWrapper(c); d.callback && d.callback.apply(this, arguments); c.dequeue() } })
        })
    } 
})(jQuery);
(function (a) {
    a.effects.explode = function (d) {
        return this.queue(function () {
            var c = d.options.pieces ? Math.round(Math.sqrt(d.options.pieces)) : 3, e = d.options.pieces ? Math.round(Math.sqrt(d.options.pieces)) : 3; d.options.mode = d.options.mode == "toggle" ? a(this).is(":visible") ? "hide" : "show" : d.options.mode; var h = a(this).show().css("visibility", "hidden"), g = h.offset(); g.top -= parseInt(h.css("marginTop"), 10) || 0; g.left -= parseInt(h.css("marginLeft"), 10) || 0; for (var i = h.outerWidth(true), b = h.outerHeight(true), f = 0; f < c; f++) for (var j =
0; j < e; j++) h.clone().appendTo("body").wrap("<div></div>").css({ position: "absolute", visibility: "visible", left: -j * (i / e), top: -f * (b / c) }).parent().addClass("ui-effects-explode").css({ position: "absolute", overflow: "hidden", width: i / e, height: b / c, left: g.left + j * (i / e) + (d.options.mode == "show" ? (j - Math.floor(e / 2)) * (i / e) : 0), top: g.top + f * (b / c) + (d.options.mode == "show" ? (f - Math.floor(c / 2)) * (b / c) : 0), opacity: d.options.mode == "show" ? 0 : 1 }).animate({ left: g.left + j * (i / e) + (d.options.mode == "show" ? 0 : (j - Math.floor(e / 2)) * (i / e)), top: g.top +
f * (b / c) + (d.options.mode == "show" ? 0 : (f - Math.floor(c / 2)) * (b / c)), opacity: d.options.mode == "show" ? 1 : 0
}, d.duration || 500); setTimeout(function () { d.options.mode == "show" ? h.css({ visibility: "visible" }) : h.css({ visibility: "visible" }).hide(); d.callback && d.callback.apply(h[0]); h.dequeue(); a("div.ui-effects-explode").remove() }, d.duration || 500)
        })
    } 
})(jQuery);
(function (a) { a.effects.fade = function (d) { return this.queue(function () { var c = a(this), e = a.effects.setMode(c, d.options.mode || "hide"); c.animate({ opacity: e }, { queue: false, duration: d.duration, easing: d.options.easing, complete: function () { d.callback && d.callback.apply(this, arguments); c.dequeue() } }) }) } })(jQuery);
(function (a) {
    a.effects.fold = function (d) {
        return this.queue(function () {
            var c = a(this), e = ["position", "top", "bottom", "left", "right"], h = a.effects.setMode(c, d.options.mode || "hide"), g = d.options.size || 15, i = !!d.options.horizFirst, b = d.duration ? d.duration / 2 : a.fx.speeds._default / 2; a.effects.save(c, e); c.show(); var f = a.effects.createWrapper(c).css({ overflow: "hidden" }), j = h == "show" != i, l = j ? ["width", "height"] : ["height", "width"]; j = j ? [f.width(), f.height()] : [f.height(), f.width()]; var o = /([0-9]+)%/.exec(g); if (o) g = parseInt(o[1],
10) / 100 * j[h == "hide" ? 0 : 1]; if (h == "show") f.css(i ? { height: 0, width: g} : { height: g, width: 0 }); i = {}; o = {}; i[l[0]] = h == "show" ? j[0] : g; o[l[1]] = h == "show" ? j[1] : 0; f.animate(i, b, d.options.easing).animate(o, b, d.options.easing, function () { h == "hide" && c.hide(); a.effects.restore(c, e); a.effects.removeWrapper(c); d.callback && d.callback.apply(c[0], arguments); c.dequeue() })
        })
    } 
})(jQuery);
(function (a) {
    a.effects.highlight = function (d) {
        return this.queue(function () {
            var c = a(this), e = ["backgroundImage", "backgroundColor", "opacity"], h = a.effects.setMode(c, d.options.mode || "show"), g = { backgroundColor: c.css("backgroundColor") }; if (h == "hide") g.opacity = 0; a.effects.save(c, e); c.show().css({ backgroundImage: "none", backgroundColor: d.options.color || "#ffff99" }).animate(g, { queue: false, duration: d.duration, easing: d.options.easing, complete: function () {
                h == "hide" && c.hide(); a.effects.restore(c, e); h == "show" && !a.support.opacity &&
this.style.removeAttribute("filter"); d.callback && d.callback.apply(this, arguments); c.dequeue()
            } 
            })
        })
    } 
})(jQuery);
(function (a) {
    a.effects.pulsate = function (d) {
        return this.queue(function () {
            var c = a(this), e = a.effects.setMode(c, d.options.mode || "show"); times = (d.options.times || 5) * 2 - 1; duration = d.duration ? d.duration / 2 : a.fx.speeds._default / 2; isVisible = c.is(":visible"); animateTo = 0; if (!isVisible) { c.css("opacity", 0).show(); animateTo = 1 } if (e == "hide" && isVisible || e == "show" && !isVisible) times--; for (e = 0; e < times; e++) { c.animate({ opacity: animateTo }, duration, d.options.easing); animateTo = (animateTo + 1) % 2 } c.animate({ opacity: animateTo }, duration,
d.options.easing, function () { animateTo == 0 && c.hide(); d.callback && d.callback.apply(this, arguments) }); c.queue("fx", function () { c.dequeue() }).dequeue()
        })
    } 
})(jQuery);
(function (a) {
    a.effects.puff = function (d) { return this.queue(function () { var c = a(this), e = a.effects.setMode(c, d.options.mode || "hide"), h = parseInt(d.options.percent, 10) || 150, g = h / 100, i = { height: c.height(), width: c.width() }; a.extend(d.options, { fade: true, mode: e, percent: e == "hide" ? h : 100, from: e == "hide" ? i : { height: i.height * g, width: i.width * g} }); c.effect("scale", d.options, d.duration, d.callback); c.dequeue() }) }; a.effects.scale = function (d) {
        return this.queue(function () {
            var c = a(this), e = a.extend(true, {}, d.options), h = a.effects.setMode(c,
d.options.mode || "effect"), g = parseInt(d.options.percent, 10) || (parseInt(d.options.percent, 10) == 0 ? 0 : h == "hide" ? 0 : 100), i = d.options.direction || "both", b = d.options.origin; if (h != "effect") { e.origin = b || ["middle", "center"]; e.restore = true } b = { height: c.height(), width: c.width() }; c.from = d.options.from || (h == "show" ? { height: 0, width: 0} : b); g = { y: i != "horizontal" ? g / 100 : 1, x: i != "vertical" ? g / 100 : 1 }; c.to = { height: b.height * g.y, width: b.width * g.x }; if (d.options.fade) {
                if (h == "show") { c.from.opacity = 0; c.to.opacity = 1 } if (h == "hide") {
                    c.from.opacity =
1; c.to.opacity = 0
                } 
            } e.from = c.from; e.to = c.to; e.mode = h; c.effect("size", e, d.duration, d.callback); c.dequeue()
        })
    }; a.effects.size = function (d) {
        return this.queue(function () {
            var c = a(this), e = ["position", "top", "bottom", "left", "right", "width", "height", "overflow", "opacity"], h = ["position", "top", "bottom", "left", "right", "overflow", "opacity"], g = ["width", "height", "overflow"], i = ["fontSize"], b = ["borderTopWidth", "borderBottomWidth", "paddingTop", "paddingBottom"], f = ["borderLeftWidth", "borderRightWidth", "paddingLeft", "paddingRight"],
j = a.effects.setMode(c, d.options.mode || "effect"), l = d.options.restore || false, o = d.options.scale || "both", n = d.options.origin, k = { height: c.height(), width: c.width() }; c.from = d.options.from || k; c.to = d.options.to || k; if (n) { n = a.effects.getBaseline(n, k); c.from.top = (k.height - c.from.height) * n.y; c.from.left = (k.width - c.from.width) * n.x; c.to.top = (k.height - c.to.height) * n.y; c.to.left = (k.width - c.to.width) * n.x } var m = { from: { y: c.from.height / k.height, x: c.from.width / k.width }, to: { y: c.to.height / k.height, x: c.to.width / k.width} };
            if (o == "box" || o == "both") { if (m.from.y != m.to.y) { e = e.concat(b); c.from = a.effects.setTransition(c, b, m.from.y, c.from); c.to = a.effects.setTransition(c, b, m.to.y, c.to) } if (m.from.x != m.to.x) { e = e.concat(f); c.from = a.effects.setTransition(c, f, m.from.x, c.from); c.to = a.effects.setTransition(c, f, m.to.x, c.to) } } if (o == "content" || o == "both") if (m.from.y != m.to.y) { e = e.concat(i); c.from = a.effects.setTransition(c, i, m.from.y, c.from); c.to = a.effects.setTransition(c, i, m.to.y, c.to) } a.effects.save(c, l ? e : h); c.show(); a.effects.createWrapper(c);
            c.css("overflow", "hidden").css(c.from); if (o == "content" || o == "both") {
                b = b.concat(["marginTop", "marginBottom"]).concat(i); f = f.concat(["marginLeft", "marginRight"]); g = e.concat(b).concat(f); c.find("*[width]").each(function () {
                    child = a(this); l && a.effects.save(child, g); var p = { height: child.height(), width: child.width() }; child.from = { height: p.height * m.from.y, width: p.width * m.from.x }; child.to = { height: p.height * m.to.y, width: p.width * m.to.x }; if (m.from.y != m.to.y) {
                        child.from = a.effects.setTransition(child, b, m.from.y, child.from);
                        child.to = a.effects.setTransition(child, b, m.to.y, child.to)
                    } if (m.from.x != m.to.x) { child.from = a.effects.setTransition(child, f, m.from.x, child.from); child.to = a.effects.setTransition(child, f, m.to.x, child.to) } child.css(child.from); child.animate(child.to, d.duration, d.options.easing, function () { l && a.effects.restore(child, g) })
                })
            } c.animate(c.to, { queue: false, duration: d.duration, easing: d.options.easing, complete: function () {
                c.to.opacity === 0 && c.css("opacity", c.from.opacity); j == "hide" && c.hide(); a.effects.restore(c,
l ? e : h); a.effects.removeWrapper(c); d.callback && d.callback.apply(this, arguments); c.dequeue()
            } 
            })
        })
    } 
})(jQuery);
(function (a) {
    a.effects.shake = function (d) {
        return this.queue(function () {
            var c = a(this), e = ["position", "top", "bottom", "left", "right"]; a.effects.setMode(c, d.options.mode || "effect"); var h = d.options.direction || "left", g = d.options.distance || 20, i = d.options.times || 3, b = d.duration || d.options.duration || 140; a.effects.save(c, e); c.show(); a.effects.createWrapper(c); var f = h == "up" || h == "down" ? "top" : "left", j = h == "up" || h == "left" ? "pos" : "neg"; h = {}; var l = {}, o = {}; h[f] = (j == "pos" ? "-=" : "+=") + g; l[f] = (j == "pos" ? "+=" : "-=") + g * 2; o[f] =
(j == "pos" ? "-=" : "+=") + g * 2; c.animate(h, b, d.options.easing); for (g = 1; g < i; g++) c.animate(l, b, d.options.easing).animate(o, b, d.options.easing); c.animate(l, b, d.options.easing).animate(h, b / 2, d.options.easing, function () { a.effects.restore(c, e); a.effects.removeWrapper(c); d.callback && d.callback.apply(this, arguments) }); c.queue("fx", function () { c.dequeue() }); c.dequeue()
        })
    } 
})(jQuery);
(function (a) {
    a.effects.slide = function (d) {
        return this.queue(function () {
            var c = a(this), e = ["position", "top", "bottom", "left", "right"], h = a.effects.setMode(c, d.options.mode || "show"), g = d.options.direction || "left"; a.effects.save(c, e); c.show(); a.effects.createWrapper(c).css({ overflow: "hidden" }); var i = g == "up" || g == "down" ? "top" : "left"; g = g == "up" || g == "left" ? "pos" : "neg"; var b = d.options.distance || (i == "top" ? c.outerHeight({ margin: true }) : c.outerWidth({ margin: true })); if (h == "show") c.css(i, g == "pos" ? isNaN(b) ? "-" + b : -b : b);
            var f = {}; f[i] = (h == "show" ? g == "pos" ? "+=" : "-=" : g == "pos" ? "-=" : "+=") + b; c.animate(f, { queue: false, duration: d.duration, easing: d.options.easing, complete: function () { h == "hide" && c.hide(); a.effects.restore(c, e); a.effects.removeWrapper(c); d.callback && d.callback.apply(this, arguments); c.dequeue() } })
        })
    } 
})(jQuery);
(function (a) {
    a.effects.transfer = function (d) {
        return this.queue(function () {
            var c = a(this), e = a(d.options.to), h = e.offset(); e = { top: h.top, left: h.left, height: e.innerHeight(), width: e.innerWidth() }; h = c.offset(); var g = a('<div class="ui-effects-transfer"></div>').appendTo(document.body).addClass(d.options.className).css({ top: h.top, left: h.left, height: c.innerHeight(), width: c.innerWidth(), position: "absolute" }).animate(e, d.duration, d.options.easing, function () {
                g.remove(); d.callback && d.callback.apply(c[0], arguments);
                c.dequeue()
            })
        })
    } 
})(jQuery);
(function (a) {
    a.widget("ui.accordion", { options: { active: 0, animated: "slide", autoHeight: true, clearStyle: false, collapsible: false, event: "click", fillSpace: false, header: "> li > :first-child,> :not(li):even", icons: { header: "ui-icon-triangle-1-e", headerSelected: "ui-icon-triangle-1-s" }, navigation: false, navigationFilter: function () { return this.href.toLowerCase() === location.href.toLowerCase() } }, _create: function () {
        var d = this, c = d.options; d.running = 0; d.element.addClass("ui-accordion ui-widget ui-helper-reset").children("li").addClass("ui-accordion-li-fix"); d.headers =
d.element.find(c.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion", function () { c.disabled || a(this).addClass("ui-state-hover") }).bind("mouseleave.accordion", function () { c.disabled || a(this).removeClass("ui-state-hover") }).bind("focus.accordion", function () { c.disabled || a(this).addClass("ui-state-focus") }).bind("blur.accordion", function () { c.disabled || a(this).removeClass("ui-state-focus") }); d.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");
        if (c.navigation) { var e = d.element.find("a").filter(c.navigationFilter).eq(0); if (e.length) { var h = e.closest(".ui-accordion-header"); d.active = h.length ? h : e.closest(".ui-accordion-content").prev() } } d.active = d._findActive(d.active || c.active).addClass("ui-state-default ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top"); d.active.next().addClass("ui-accordion-content-active"); d._createIcons(); d.resize(); d.element.attr("role", "tablist"); d.headers.attr("role", "tab").bind("keydown.accordion",
function (g) { return d._keydown(g) }).next().attr("role", "tabpanel"); d.headers.not(d.active || "").attr({ "aria-expanded": "false", "aria-selected": "false", tabIndex: -1 }).next().hide(); d.active.length ? d.active.attr({ "aria-expanded": "true", "aria-selected": "true", tabIndex: 0 }) : d.headers.eq(0).attr("tabIndex", 0); a.browser.safari || d.headers.find("a").attr("tabIndex", -1); c.event && d.headers.bind(c.event.split(" ").join(".accordion ") + ".accordion", function (g) { d._clickHandler.call(d, g, this); g.preventDefault() })
    }, _createIcons: function () {
        var d =
this.options; if (d.icons) { a("<span></span>").addClass("ui-icon " + d.icons.header).prependTo(this.headers); this.active.children(".ui-icon").toggleClass(d.icons.header).toggleClass(d.icons.headerSelected); this.element.addClass("ui-accordion-icons") } 
    }, _destroyIcons: function () { this.headers.children(".ui-icon").remove(); this.element.removeClass("ui-accordion-icons") }, destroy: function () {
        var d = this.options; this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role"); this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-accordion-disabled ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("tabIndex");
        this.headers.find("a").removeAttr("tabIndex"); this._destroyIcons(); var c = this.headers.next().css("display", "").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-accordion-disabled ui-state-disabled"); if (d.autoHeight || d.fillHeight) c.css("height", ""); return a.Widget.prototype.destroy.call(this)
    }, _setOption: function (d, c) {
        a.Widget.prototype._setOption.apply(this, arguments); d == "active" && this.activate(c); if (d == "icons") {
            this._destroyIcons();
            c && this._createIcons()
        } if (d == "disabled") this.headers.add(this.headers.next())[c ? "addClass" : "removeClass"]("ui-accordion-disabled ui-state-disabled")
    }, _keydown: function (d) {
        if (!(this.options.disabled || d.altKey || d.ctrlKey)) {
            var c = a.ui.keyCode, e = this.headers.length, h = this.headers.index(d.target), g = false; switch (d.keyCode) {
                case c.RIGHT: case c.DOWN: g = this.headers[(h + 1) % e]; break; case c.LEFT: case c.UP: g = this.headers[(h - 1 + e) % e]; break; case c.SPACE: case c.ENTER: this._clickHandler({ target: d.target }, d.target);
                    d.preventDefault()
            } if (g) { a(d.target).attr("tabIndex", -1); a(g).attr("tabIndex", 0); g.focus(); return false } return true
        } 
    }, resize: function () {
        var d = this.options, c; if (d.fillSpace) {
            if (a.browser.msie) { var e = this.element.parent().css("overflow"); this.element.parent().css("overflow", "hidden") } c = this.element.parent().height(); a.browser.msie && this.element.parent().css("overflow", e); this.headers.each(function () { c -= a(this).outerHeight(true) }); this.headers.next().each(function () {
                a(this).height(Math.max(0, c - a(this).innerHeight() +
a(this).height()))
            }).css("overflow", "auto")
        } else if (d.autoHeight) { c = 0; this.headers.next().each(function () { c = Math.max(c, a(this).height("").height()) }).height(c) } return this
    }, activate: function (d) { this.options.active = d; d = this._findActive(d)[0]; this._clickHandler({ target: d }, d); return this }, _findActive: function (d) { return d ? typeof d === "number" ? this.headers.filter(":eq(" + d + ")") : this.headers.not(this.headers.not(d)) : d === false ? a([]) : this.headers.filter(":eq(0)") }, _clickHandler: function (d, c) {
        var e = this.options;
        if (!e.disabled) if (d.target) {
            d = a(d.currentTarget || c); c = d[0] === this.active[0]; e.active = e.collapsible && c ? false : this.headers.index(d); if (!(this.running || !e.collapsible && c)) {
                var h = this.active; f = d.next(); i = this.active.next(); b = { options: e, newHeader: c && e.collapsible ? a([]) : d, oldHeader: this.active, newContent: c && e.collapsible ? a([]) : f, oldContent: i }; var g = this.headers.index(this.active[0]) > this.headers.index(d[0]); this.active = c ? a([]) : d; this._toggle(f, i, b, c, g); h.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(e.icons.headerSelected).addClass(e.icons.header);
                if (!c) { d.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").children(".ui-icon").removeClass(e.icons.header).addClass(e.icons.headerSelected); d.next().addClass("ui-accordion-content-active") } 
            } 
        } else if (e.collapsible) {
            this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(e.icons.headerSelected).addClass(e.icons.header); this.active.next().addClass("ui-accordion-content-active"); var i = this.active.next(),
b = { options: e, newHeader: a([]), oldHeader: e.active, newContent: a([]), oldContent: i }, f = this.active = a([]); this._toggle(f, i, b)
        } 
    }, _toggle: function (d, c, e, h, g) {
        var i = this, b = i.options; i.toShow = d; i.toHide = c; i.data = e; var f = function () { if (i) return i._completed.apply(i, arguments) }; i._trigger("changestart", null, i.data); i.running = c.size() === 0 ? d.size() : c.size(); if (b.animated) {
            e = {}; e = b.collapsible && h ? { toShow: a([]), toHide: c, complete: f, down: g, autoHeight: b.autoHeight || b.fillSpace} : { toShow: d, toHide: c, complete: f, down: g, autoHeight: b.autoHeight ||
b.fillSpace
            }; if (!b.proxied) b.proxied = b.animated; if (!b.proxiedDuration) b.proxiedDuration = b.duration; b.animated = a.isFunction(b.proxied) ? b.proxied(e) : b.proxied; b.duration = a.isFunction(b.proxiedDuration) ? b.proxiedDuration(e) : b.proxiedDuration; h = a.ui.accordion.animations; var j = b.duration, l = b.animated; if (l && !h[l] && !a.easing[l]) l = "slide"; h[l] || (h[l] = function (o) { this.slide(o, { easing: l, duration: j || 700 }) }); h[l](e)
        } else { if (b.collapsible && h) d.toggle(); else { c.hide(); d.show() } f(true) } c.prev().attr({ "aria-expanded": "false",
            "aria-selected": "false", tabIndex: -1
        }).blur(); d.prev().attr({ "aria-expanded": "true", "aria-selected": "true", tabIndex: 0 }).focus()
    }, _completed: function (d) { this.running = d ? 0 : --this.running; if (!this.running) { this.options.clearStyle && this.toShow.add(this.toHide).css({ height: "", overflow: "" }); this.toHide.removeClass("ui-accordion-content-active"); if (this.toHide.length) this.toHide.parent()[0].className = this.toHide.parent()[0].className; this._trigger("change", null, this.data) } } 
    }); a.extend(a.ui.accordion, { version: "1.8.16",
        animations: { slide: function (d, c) {
            d = a.extend({ easing: "swing", duration: 300 }, d, c); if (d.toHide.size()) if (d.toShow.size()) {
                var e = d.toShow.css("overflow"), h = 0, g = {}, i = {}, b; c = d.toShow; b = c[0].style.width; c.width(parseInt(c.parent().width(), 10) - parseInt(c.css("paddingLeft"), 10) - parseInt(c.css("paddingRight"), 10) - (parseInt(c.css("borderLeftWidth"), 10) || 0) - (parseInt(c.css("borderRightWidth"), 10) || 0)); a.each(["height", "paddingTop", "paddingBottom"], function (f, j) {
                    i[j] = "hide"; f = ("" + a.css(d.toShow[0], j)).match(/^([\d+-.]+)(.*)$/);
                    g[j] = { value: f[1], unit: f[2] || "px"}
                }); d.toShow.css({ height: 0, overflow: "hidden" }).show(); d.toHide.filter(":hidden").each(d.complete).end().filter(":visible").animate(i, { step: function (f, j) { if (j.prop == "height") h = j.end - j.start === 0 ? 0 : (j.now - j.start) / (j.end - j.start); d.toShow[0].style[j.prop] = h * g[j.prop].value + g[j.prop].unit }, duration: d.duration, easing: d.easing, complete: function () { d.autoHeight || d.toShow.css("height", ""); d.toShow.css({ width: b, overflow: e }); d.complete() } })
            } else d.toHide.animate({ height: "hide",
                paddingTop: "hide", paddingBottom: "hide"
            }, d); else d.toShow.animate({ height: "show", paddingTop: "show", paddingBottom: "show" }, d)
        }, bounceslide: function (d) { this.slide(d, { easing: d.down ? "easeOutBounce" : "swing", duration: d.down ? 1E3 : 200 }) } 
        }
    })
})(jQuery);
(function (a) {
    var d = 0; a.widget("ui.autocomplete", { options: { appendTo: "body", autoFocus: false, delay: 300, minLength: 1, position: { my: "left top", at: "left bottom", collision: "none" }, source: null }, pending: 0, _create: function () {
        var c = this, e = this.element[0].ownerDocument, h; this.element.addClass("ui-autocomplete-input").attr("autocomplete", "off").attr({ role: "textbox", "aria-autocomplete": "list", "aria-haspopup": "true" }).bind("keydown.autocomplete", function (g) {
            if (!(c.options.disabled || c.element.propAttr("readOnly"))) {
                h =
false; var i = a.ui.keyCode; switch (g.keyCode) {
                    case i.PAGE_UP: c._move("previousPage", g); break; case i.PAGE_DOWN: c._move("nextPage", g); break; case i.UP: c._move("previous", g); g.preventDefault(); break; case i.DOWN: c._move("next", g); g.preventDefault(); break; case i.ENTER: case i.NUMPAD_ENTER: if (c.menu.active) { h = true; g.preventDefault() } case i.TAB: if (!c.menu.active) return; c.menu.select(g); break; case i.ESCAPE: c.element.val(c.term); c.close(g); break; default: clearTimeout(c.searching); c.searching = setTimeout(function () {
                        if (c.term !=
c.element.val()) { c.selectedItem = null; c.search(null, g) } 
                    }, c.options.delay); break
                } 
            } 
        }).bind("keypress.autocomplete", function (g) { if (h) { h = false; g.preventDefault() } }).bind("focus.autocomplete", function () { if (!c.options.disabled) { c.selectedItem = null; c.previous = c.element.val() } }).bind("blur.autocomplete", function (g) { if (!c.options.disabled) { clearTimeout(c.searching); c.closing = setTimeout(function () { c.close(g); c._change(g) }, 150) } }); this._initSource(); this.response = function () { return c._response.apply(c, arguments) };
        this.menu = a("<ul></ul>").addClass("ui-autocomplete").appendTo(a(this.options.appendTo || "body", e)[0]).mousedown(function (g) { var i = c.menu.element[0]; a(g.target).closest(".ui-menu-item").length || setTimeout(function () { a(document).one("mousedown", function (b) { b.target !== c.element[0] && b.target !== i && !a.ui.contains(i, b.target) && c.close() }) }, 1); setTimeout(function () { clearTimeout(c.closing) }, 13) }).menu({ focus: function (g, i) {
            i = i.item.data("item.autocomplete"); false !== c._trigger("focus", g, { item: i }) && /^key/.test(g.originalEvent.type) &&
c.element.val(i.value)
        }, selected: function (g, i) { var b = i.item.data("item.autocomplete"), f = c.previous; if (c.element[0] !== e.activeElement) { c.element.focus(); c.previous = f; setTimeout(function () { c.previous = f; c.selectedItem = b }, 1) } false !== c._trigger("select", g, { item: b }) && c.element.val(b.value); c.term = c.element.val(); c.close(g); c.selectedItem = b }, blur: function () { c.menu.element.is(":visible") && c.element.val() !== c.term && c.element.val(c.term) } 
        }).zIndex(this.element.zIndex() + 1).css({ top: 0, left: 0 }).hide().data("menu");
        a.fn.bgiframe && this.menu.element.bgiframe()
    }, destroy: function () { this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup"); this.menu.element.remove(); a.Widget.prototype.destroy.call(this) }, _setOption: function (c, e) {
        a.Widget.prototype._setOption.apply(this, arguments); c === "source" && this._initSource(); if (c === "appendTo") this.menu.element.appendTo(a(e || "body", this.element[0].ownerDocument)[0]); c === "disabled" &&
e && this.xhr && this.xhr.abort()
    }, _initSource: function () {
        var c = this, e, h; if (a.isArray(this.options.source)) { e = this.options.source; this.source = function (g, i) { i(a.ui.autocomplete.filter(e, g.term)) } } else if (typeof this.options.source === "string") { h = this.options.source; this.source = function (g, i) { c.xhr && c.xhr.abort(); c.xhr = a.ajax({ url: h, data: g, dataType: "json", autocompleteRequest: ++d, success: function (b) { this.autocompleteRequest === d && i(b) }, error: function () { this.autocompleteRequest === d && i([]) } }) } } else this.source =
this.options.source
    }, search: function (c, e) { c = c != null ? c : this.element.val(); this.term = this.element.val(); if (c.length < this.options.minLength) return this.close(e); clearTimeout(this.closing); if (this._trigger("search", e) !== false) return this._search(c) }, _search: function (c) { this.pending++; this.element.addClass("ui-autocomplete-loading"); this.source({ term: c }, this.response) }, _response: function (c) {
        if (!this.options.disabled && c && c.length) { c = this._normalize(c); this._suggest(c); this._trigger("open") } else this.close();
        this.pending--; this.pending || this.element.removeClass("ui-autocomplete-loading")
    }, close: function (c) { clearTimeout(this.closing); if (this.menu.element.is(":visible")) { this.menu.element.hide(); this.menu.deactivate(); this._trigger("close", c) } }, _change: function (c) { this.previous !== this.element.val() && this._trigger("change", c, { item: this.selectedItem }) }, _normalize: function (c) {
        if (c.length && c[0].label && c[0].value) return c; return a.map(c, function (e) {
            if (typeof e === "string") return { label: e, value: e }; return a.extend({ label: e.label ||
e.value, value: e.value || e.label
            }, e)
        })
    }, _suggest: function (c) { var e = this.menu.element.empty().zIndex(this.element.zIndex() + 1); this._renderMenu(e, c); this.menu.deactivate(); this.menu.refresh(); e.show(); this._resizeMenu(); e.position(a.extend({ of: this.element }, this.options.position)); this.options.autoFocus && this.menu.next(new a.Event("mouseover")) }, _resizeMenu: function () { var c = this.menu.element; c.outerWidth(Math.max(c.width("").outerWidth(), this.element.outerWidth())) }, _renderMenu: function (c, e) {
        var h = this;
        a.each(e, function (g, i) { h._renderItem(c, i) })
    }, _renderItem: function (c, e) { return a("<li></li>").data("item.autocomplete", e).append(a("<a></a>").text(e.label)).appendTo(c) }, _move: function (c, e) { if (this.menu.element.is(":visible")) if (this.menu.first() && /^previous/.test(c) || this.menu.last() && /^next/.test(c)) { this.element.val(this.term); this.menu.deactivate() } else this.menu[c](e); else this.search(null, e) }, widget: function () { return this.menu.element } 
    }); a.extend(a.ui.autocomplete, { escapeRegex: function (c) {
        return c.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,
"\\$&")
    }, filter: function (c, e) { var h = new RegExp(a.ui.autocomplete.escapeRegex(e), "i"); return a.grep(c, function (g) { return h.test(g.label || g.value || g) }) } 
    })
})(jQuery);
(function (a) {
    a.widget("ui.menu", { _create: function () { var d = this; this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({ role: "listbox", "aria-activedescendant": "ui-active-menuitem" }).click(function (c) { if (a(c.target).closest(".ui-menu-item a").length) { c.preventDefault(); d.select(c) } }); this.refresh() }, refresh: function () {
        var d = this; this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role", "menuitem").children("a").addClass("ui-corner-all").attr("tabindex",
-1).mouseenter(function (c) { d.activate(c, a(this).parent()) }).mouseleave(function () { d.deactivate() })
    }, activate: function (d, c) { this.deactivate(); if (this.hasScroll()) { var e = c.offset().top - this.element.offset().top, h = this.element.scrollTop(), g = this.element.height(); if (e < 0) this.element.scrollTop(h + e); else e >= g && this.element.scrollTop(h + e - g + c.height()) } this.active = c.eq(0).children("a").addClass("ui-state-hover").attr("id", "ui-active-menuitem").end(); this._trigger("focus", d, { item: c }) }, deactivate: function () {
        if (this.active) {
            this.active.children("a").removeClass("ui-state-hover").removeAttr("id");
            this._trigger("blur"); this.active = null
        } 
    }, next: function (d) { this.move("next", ".ui-menu-item:first", d) }, previous: function (d) { this.move("prev", ".ui-menu-item:last", d) }, first: function () { return this.active && !this.active.prevAll(".ui-menu-item").length }, last: function () { return this.active && !this.active.nextAll(".ui-menu-item").length }, move: function (d, c, e) {
        if (this.active) { d = this.active[d + "All"](".ui-menu-item").eq(0); d.length ? this.activate(e, d) : this.activate(e, this.element.children(c)) } else this.activate(e,
this.element.children(c))
    }, nextPage: function (d) {
        if (this.hasScroll()) if (!this.active || this.last()) this.activate(d, this.element.children(".ui-menu-item:first")); else { var c = this.active.offset().top, e = this.element.height(), h = this.element.children(".ui-menu-item").filter(function () { var g = a(this).offset().top - c - e + a(this).height(); return g < 10 && g > -10 }); h.length || (h = this.element.children(".ui-menu-item:last")); this.activate(d, h) } else this.activate(d, this.element.children(".ui-menu-item").filter(!this.active ||
this.last() ? ":first" : ":last"))
    }, previousPage: function (d) {
        if (this.hasScroll()) if (!this.active || this.first()) this.activate(d, this.element.children(".ui-menu-item:last")); else { var c = this.active.offset().top, e = this.element.height(); result = this.element.children(".ui-menu-item").filter(function () { var h = a(this).offset().top - c + e - a(this).height(); return h < 10 && h > -10 }); result.length || (result = this.element.children(".ui-menu-item:first")); this.activate(d, result) } else this.activate(d, this.element.children(".ui-menu-item").filter(!this.active ||
this.first() ? ":last" : ":first"))
    }, hasScroll: function () { return this.element.height() < this.element[a.fn.prop ? "prop" : "attr"]("scrollHeight") }, select: function (d) { this._trigger("selected", d, { item: this.active }) } 
    })
})(jQuery);
(function (a) {
    var d, c, e, h, g = function () { var b = a(this).find(":ui-button"); setTimeout(function () { b.button("refresh") }, 1) }, i = function (b) { var f = b.name, j = b.form, l = a([]); if (f) l = j ? a(j).find("[name='" + f + "']") : a("[name='" + f + "']", b.ownerDocument).filter(function () { return !this.form }); return l }; a.widget("ui.button", { options: { disabled: null, text: true, label: null, icons: { primary: null, secondary: null} }, _create: function () {
        this.element.closest("form").unbind("reset.button").bind("reset.button", g); if (typeof this.options.disabled !==
"boolean") this.options.disabled = this.element.propAttr("disabled"); this._determineButtonType(); this.hasTitle = !!this.buttonElement.attr("title"); var b = this, f = this.options, j = this.type === "checkbox" || this.type === "radio", l = "ui-state-hover" + (!j ? " ui-state-active" : ""); if (f.label === null) f.label = this.buttonElement.html(); if (this.element.is(":disabled")) f.disabled = true; this.buttonElement.addClass("ui-button ui-widget ui-state-default ui-corner-all").attr("role", "button").bind("mouseenter.button", function () {
    if (!f.disabled) {
        a(this).addClass("ui-state-hover");
        this === d && a(this).addClass("ui-state-active")
    } 
}).bind("mouseleave.button", function () { f.disabled || a(this).removeClass(l) }).bind("click.button", function (o) { if (f.disabled) { o.preventDefault(); o.stopImmediatePropagation() } }); this.element.bind("focus.button", function () { b.buttonElement.addClass("ui-state-focus") }).bind("blur.button", function () { b.buttonElement.removeClass("ui-state-focus") }); if (j) {
            this.element.bind("change.button", function () { h || b.refresh() }); this.buttonElement.bind("mousedown.button", function (o) {
                if (!f.disabled) {
                    h =
false; c = o.pageX; e = o.pageY
                } 
            }).bind("mouseup.button", function (o) { if (!f.disabled) if (c !== o.pageX || e !== o.pageY) h = true })
        } if (this.type === "checkbox") this.buttonElement.bind("click.button", function () { if (f.disabled || h) return false; a(this).toggleClass("ui-state-active"); b.buttonElement.attr("aria-pressed", b.element[0].checked) }); else if (this.type === "radio") this.buttonElement.bind("click.button", function () {
            if (f.disabled || h) return false; a(this).addClass("ui-state-active"); b.buttonElement.attr("aria-pressed", "true");
            var o = b.element[0]; i(o).not(o).map(function () { return a(this).button("widget")[0] }).removeClass("ui-state-active").attr("aria-pressed", "false")
        }); else {
            this.buttonElement.bind("mousedown.button", function () { if (f.disabled) return false; a(this).addClass("ui-state-active"); d = this; a(document).one("mouseup", function () { d = null }) }).bind("mouseup.button", function () { if (f.disabled) return false; a(this).removeClass("ui-state-active") }).bind("keydown.button", function (o) {
                if (f.disabled) return false; if (o.keyCode == a.ui.keyCode.SPACE ||
o.keyCode == a.ui.keyCode.ENTER) a(this).addClass("ui-state-active")
            }).bind("keyup.button", function () { a(this).removeClass("ui-state-active") }); this.buttonElement.is("a") && this.buttonElement.keyup(function (o) { o.keyCode === a.ui.keyCode.SPACE && a(this).click() })
        } this._setOption("disabled", f.disabled); this._resetButton()
    }, _determineButtonType: function () {
        this.type = this.element.is(":checkbox") ? "checkbox" : this.element.is(":radio") ? "radio" : this.element.is("input") ? "input" : "button"; if (this.type === "checkbox" || this.type ===
"radio") { var b = this.element.parents().filter(":last"), f = "label[for='" + this.element.attr("id") + "']"; this.buttonElement = b.find(f); if (!this.buttonElement.length) { b = b.length ? b.siblings() : this.element.siblings(); this.buttonElement = b.filter(f); if (!this.buttonElement.length) this.buttonElement = b.find(f) } this.element.addClass("ui-helper-hidden-accessible"); (b = this.element.is(":checked")) && this.buttonElement.addClass("ui-state-active"); this.buttonElement.attr("aria-pressed", b) } else this.buttonElement = this.element
    },
        widget: function () { return this.buttonElement }, destroy: function () {
            this.element.removeClass("ui-helper-hidden-accessible"); this.buttonElement.removeClass("ui-button ui-widget ui-state-default ui-corner-all ui-state-hover ui-state-active  ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only").removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html()); this.hasTitle || this.buttonElement.removeAttr("title");
            a.Widget.prototype.destroy.call(this)
        }, _setOption: function (b, f) { a.Widget.prototype._setOption.apply(this, arguments); if (b === "disabled") f ? this.element.propAttr("disabled", true) : this.element.propAttr("disabled", false); else this._resetButton() }, refresh: function () {
            var b = this.element.is(":disabled"); b !== this.options.disabled && this._setOption("disabled", b); if (this.type === "radio") i(this.element[0]).each(function () {
                a(this).is(":checked") ? a(this).button("widget").addClass("ui-state-active").attr("aria-pressed",
"true") : a(this).button("widget").removeClass("ui-state-active").attr("aria-pressed", "false")
            }); else if (this.type === "checkbox") this.element.is(":checked") ? this.buttonElement.addClass("ui-state-active").attr("aria-pressed", "true") : this.buttonElement.removeClass("ui-state-active").attr("aria-pressed", "false")
        }, _resetButton: function () {
            if (this.type === "input") this.options.label && this.element.val(this.options.label); else {
                var b = this.buttonElement.removeClass("ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only"),
f = a("<span></span>").addClass("ui-button-text").html(this.options.label).appendTo(b.empty()).text(), j = this.options.icons, l = j.primary && j.secondary, o = []; if (j.primary || j.secondary) {
                    if (this.options.text) o.push("ui-button-text-icon" + (l ? "s" : j.primary ? "-primary" : "-secondary")); j.primary && b.prepend("<span class='ui-button-icon-primary ui-icon " + j.primary + "'></span>"); j.secondary && b.append("<span class='ui-button-icon-secondary ui-icon " + j.secondary + "'></span>"); if (!this.options.text) {
                        o.push(l ? "ui-button-icons-only" :
"ui-button-icon-only"); this.hasTitle || b.attr("title", f)
                    } 
                } else o.push("ui-button-text-only"); b.addClass(o.join(" "))
            } 
        } 
    }); a.widget("ui.buttonset", { options: { items: ":button, :submit, :reset, :checkbox, :radio, a, :data(button)" }, _create: function () { this.element.addClass("ui-buttonset") }, _init: function () { this.refresh() }, _setOption: function (b, f) { b === "disabled" && this.buttons.button("option", b, f); a.Widget.prototype._setOption.apply(this, arguments) }, refresh: function () {
        var b = this.element.css("direction") ===
"ltr"; this.buttons = this.element.find(this.options.items).filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function () { return a(this).button("widget")[0] }).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass(b ? "ui-corner-left" : "ui-corner-right").end().filter(":last").addClass(b ? "ui-corner-right" : "ui-corner-left").end().end()
    }, destroy: function () {
        this.element.removeClass("ui-buttonset"); this.buttons.map(function () { return a(this).button("widget")[0] }).removeClass("ui-corner-left ui-corner-right").end().button("destroy");
        a.Widget.prototype.destroy.call(this)
    } 
    })
})(jQuery);
(function (a, d) {
    function c() {
        this.debug = false; this._curInst = null; this._keyEvent = false; this._disabledInputs = []; this._inDialog = this._datepickerShowing = false; this._mainDivId = "ui-datepicker-div"; this._inlineClass = "ui-datepicker-inline"; this._appendClass = "ui-datepicker-append"; this._triggerClass = "ui-datepicker-trigger"; this._dialogClass = "ui-datepicker-dialog"; this._disableClass = "ui-datepicker-disabled"; this._unselectableClass = "ui-datepicker-unselectable"; this._currentClass = "ui-datepicker-current-day"; this._dayOverClass =
"ui-datepicker-days-cell-over"; this.regional = []; this.regional[""] = { closeText: "Done", prevText: "Prev", nextText: "Next", currentText: "Today", monthNames: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], monthNamesShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], dayNames: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], dayNamesShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], dayNamesMin: ["Su",
"Mo", "Tu", "We", "Th", "Fr", "Sa"], weekHeader: "Wk", dateFormat: "mm/dd/yy", firstDay: 0, isRTL: false, showMonthAfterYear: false, yearSuffix: ""
}; this._defaults = { showOn: "focus", showAnim: "fadeIn", showOptions: {}, defaultDate: null, appendText: "", buttonText: "...", buttonImage: "", buttonImageOnly: false, hideIfNoPrevNext: false, navigationAsDateFormat: false, gotoCurrent: false, changeMonth: false, changeYear: false, yearRange: "c-10:c+10", showOtherMonths: false, selectOtherMonths: false, showWeek: false, calculateWeek: this.iso8601Week, shortYearCutoff: "+10",
    minDate: null, maxDate: null, duration: "fast", beforeShowDay: null, beforeShow: null, onSelect: null, onChangeMonthYear: null, onClose: null, numberOfMonths: 1, showCurrentAtPos: 0, stepMonths: 1, stepBigMonths: 12, altField: "", altFormat: "", constrainInput: true, showButtonPanel: false, autoSize: false, disabled: false
}; a.extend(this._defaults, this.regional[""]); this.dpDiv = e(a('<div id="' + this._mainDivId + '" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))
    } function e(b) {
        return b.bind("mouseout",
function (f) { f = a(f.target).closest("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a"); f.length && f.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover") }).bind("mouseover", function (f) {
    f = a(f.target).closest("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a"); if (!(a.datepicker._isDisabledDatepicker(i.inline ? b.parent()[0] : i.input[0]) || !f.length)) {
        f.parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");
        f.addClass("ui-state-hover"); f.hasClass("ui-datepicker-prev") && f.addClass("ui-datepicker-prev-hover"); f.hasClass("ui-datepicker-next") && f.addClass("ui-datepicker-next-hover")
    } 
})
    } function h(b, f) { a.extend(b, f); for (var j in f) if (f[j] == null || f[j] == d) b[j] = f[j]; return b } a.extend(a.ui, { datepicker: { version: "1.8.16"} }); var g = (new Date).getTime(), i; a.extend(c.prototype, { markerClassName: "hasDatepicker", maxRows: 4, log: function () { this.debug && console.log.apply("", arguments) }, _widgetDatepicker: function () { return this.dpDiv },
        setDefaults: function (b) { h(this._defaults, b || {}); return this }, _attachDatepicker: function (b, f) { var j = null; for (var l in this._defaults) { var o = b.getAttribute("date:" + l); if (o) { j = j || {}; try { j[l] = eval(o) } catch (n) { j[l] = o } } } l = b.nodeName.toLowerCase(); o = l == "div" || l == "span"; if (!b.id) { this.uuid += 1; b.id = "dp" + this.uuid } var k = this._newInst(a(b), o); k.settings = a.extend({}, f || {}, j || {}); if (l == "input") this._connectDatepicker(b, k); else o && this._inlineDatepicker(b, k) }, _newInst: function (b, f) {
            return { id: b[0].id.replace(/([^A-Za-z0-9_-])/g,
"\\\\$1"), input: b, selectedDay: 0, selectedMonth: 0, selectedYear: 0, drawMonth: 0, drawYear: 0, inline: f, dpDiv: !f ? this.dpDiv : e(a('<div class="' + this._inlineClass + ' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))
            }
        }, _connectDatepicker: function (b, f) {
            var j = a(b); f.append = a([]); f.trigger = a([]); if (!j.hasClass(this.markerClassName)) {
                this._attachments(j, f); j.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",
function (l, o, n) { f.settings[o] = n }).bind("getData.datepicker", function (l, o) { return this._get(f, o) }); this._autoSize(f); a.data(b, "datepicker", f); f.settings.disabled && this._disableDatepicker(b)
            } 
        }, _attachments: function (b, f) {
            var j = this._get(f, "appendText"), l = this._get(f, "isRTL"); f.append && f.append.remove(); if (j) { f.append = a('<span class="' + this._appendClass + '">' + j + "</span>"); b[l ? "before" : "after"](f.append) } b.unbind("focus", this._showDatepicker); f.trigger && f.trigger.remove(); j = this._get(f, "showOn"); if (j ==
"focus" || j == "both") b.focus(this._showDatepicker); if (j == "button" || j == "both") {
                j = this._get(f, "buttonText"); var o = this._get(f, "buttonImage"); f.trigger = a(this._get(f, "buttonImageOnly") ? a("<img/>").addClass(this._triggerClass).attr({ src: o, alt: j, title: j }) : a('<button type="button"></button>').addClass(this._triggerClass).html(o == "" ? j : a("<img/>").attr({ src: o, alt: j, title: j }))); b[l ? "before" : "after"](f.trigger); f.trigger.click(function () {
                    a.datepicker._datepickerShowing && a.datepicker._lastInput == b[0] ? a.datepicker._hideDatepicker() :
a.datepicker._showDatepicker(b[0]); return false
                })
            } 
        }, _autoSize: function (b) { if (this._get(b, "autoSize") && !b.inline) { var f = new Date(2009, 11, 20), j = this._get(b, "dateFormat"); if (j.match(/[DM]/)) { var l = function (o) { for (var n = 0, k = 0, m = 0; m < o.length; m++) if (o[m].length > n) { n = o[m].length; k = m } return k }; f.setMonth(l(this._get(b, j.match(/MM/) ? "monthNames" : "monthNamesShort"))); f.setDate(l(this._get(b, j.match(/DD/) ? "dayNames" : "dayNamesShort")) + 20 - f.getDay()) } b.input.attr("size", this._formatDate(b, f).length) } }, _inlineDatepicker: function (b,
f) { var j = a(b); if (!j.hasClass(this.markerClassName)) { j.addClass(this.markerClassName).append(f.dpDiv).bind("setData.datepicker", function (l, o, n) { f.settings[o] = n }).bind("getData.datepicker", function (l, o) { return this._get(f, o) }); a.data(b, "datepicker", f); this._setDate(f, this._getDefaultDate(f), true); this._updateDatepicker(f); this._updateAlternate(f); f.settings.disabled && this._disableDatepicker(b); f.dpDiv.css("display", "block") } }, _dialogDatepicker: function (b, f, j, l, o) {
    b = this._dialogInst; if (!b) {
        this.uuid +=
1; this._dialogInput = a('<input type="text" id="' + ("dp" + this.uuid) + '" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>'); this._dialogInput.keydown(this._doKeyDown); a("body").append(this._dialogInput); b = this._dialogInst = this._newInst(this._dialogInput, false); b.settings = {}; a.data(this._dialogInput[0], "datepicker", b)
    } h(b.settings, l || {}); f = f && f.constructor == Date ? this._formatDate(b, f) : f; this._dialogInput.val(f); this._pos = o ? o.length ? o : [o.pageX, o.pageY] : null; if (!this._pos) this._pos = [document.documentElement.clientWidth /
2 - 100 + (document.documentElement.scrollLeft || document.body.scrollLeft), document.documentElement.clientHeight / 2 - 150 + (document.documentElement.scrollTop || document.body.scrollTop)]; this._dialogInput.css("left", this._pos[0] + 20 + "px").css("top", this._pos[1] + "px"); b.settings.onSelect = j; this._inDialog = true; this.dpDiv.addClass(this._dialogClass); this._showDatepicker(this._dialogInput[0]); a.blockUI && a.blockUI(this.dpDiv); a.data(this._dialogInput[0], "datepicker", b); return this
}, _destroyDatepicker: function (b) {
    var f =
a(b), j = a.data(b, "datepicker"); if (f.hasClass(this.markerClassName)) { var l = b.nodeName.toLowerCase(); a.removeData(b, "datepicker"); if (l == "input") { j.append.remove(); j.trigger.remove(); f.removeClass(this.markerClassName).unbind("focus", this._showDatepicker).unbind("keydown", this._doKeyDown).unbind("keypress", this._doKeyPress).unbind("keyup", this._doKeyUp) } else if (l == "div" || l == "span") f.removeClass(this.markerClassName).empty() } 
}, _enableDatepicker: function (b) {
    var f = a(b), j = a.data(b, "datepicker"); if (f.hasClass(this.markerClassName)) {
        var l =
b.nodeName.toLowerCase(); if (l == "input") { b.disabled = false; j.trigger.filter("button").each(function () { this.disabled = false }).end().filter("img").css({ opacity: "1.0", cursor: "" }) } else if (l == "div" || l == "span") { f = f.children("." + this._inlineClass); f.children().removeClass("ui-state-disabled"); f.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled") } this._disabledInputs = a.map(this._disabledInputs, function (o) { return o == b ? null : o })
    } 
}, _disableDatepicker: function (b) {
    var f = a(b), j = a.data(b,
"datepicker"); if (f.hasClass(this.markerClassName)) {
        var l = b.nodeName.toLowerCase(); if (l == "input") { b.disabled = true; j.trigger.filter("button").each(function () { this.disabled = true }).end().filter("img").css({ opacity: "0.5", cursor: "default" }) } else if (l == "div" || l == "span") { f = f.children("." + this._inlineClass); f.children().addClass("ui-state-disabled"); f.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled", "disabled") } this._disabledInputs = a.map(this._disabledInputs, function (o) {
            return o ==
b ? null : o
        }); this._disabledInputs[this._disabledInputs.length] = b
    } 
}, _isDisabledDatepicker: function (b) { if (!b) return false; for (var f = 0; f < this._disabledInputs.length; f++) if (this._disabledInputs[f] == b) return true; return false }, _getInst: function (b) { try { return a.data(b, "datepicker") } catch (f) { throw "Missing instance data for this datepicker"; } }, _optionDatepicker: function (b, f, j) {
    var l = this._getInst(b); if (arguments.length == 2 && typeof f == "string") return f == "defaults" ? a.extend({}, a.datepicker._defaults) : l ? f == "all" ?
a.extend({}, l.settings) : this._get(l, f) : null; var o = f || {}; if (typeof f == "string") { o = {}; o[f] = j } if (l) {
        this._curInst == l && this._hideDatepicker(); var n = this._getDateDatepicker(b, true), k = this._getMinMaxDate(l, "min"), m = this._getMinMaxDate(l, "max"); h(l.settings, o); if (k !== null && o.dateFormat !== d && o.minDate === d) l.settings.minDate = this._formatDate(l, k); if (m !== null && o.dateFormat !== d && o.maxDate === d) l.settings.maxDate = this._formatDate(l, m); this._attachments(a(b), l); this._autoSize(l); this._setDate(l, n); this._updateAlternate(l);
        this._updateDatepicker(l)
    } 
}, _changeDatepicker: function (b, f, j) { this._optionDatepicker(b, f, j) }, _refreshDatepicker: function (b) { (b = this._getInst(b)) && this._updateDatepicker(b) }, _setDateDatepicker: function (b, f) { if (b = this._getInst(b)) { this._setDate(b, f); this._updateDatepicker(b); this._updateAlternate(b) } }, _getDateDatepicker: function (b, f) { (b = this._getInst(b)) && !b.inline && this._setDateFromField(b, f); return b ? this._getDate(b) : null }, _doKeyDown: function (b) {
    var f = a.datepicker._getInst(b.target), j = true, l = f.dpDiv.is(".ui-datepicker-rtl");
    f._keyEvent = true; if (a.datepicker._datepickerShowing) switch (b.keyCode) {
        case 9: a.datepicker._hideDatepicker(); j = false; break; case 13: j = a("td." + a.datepicker._dayOverClass + ":not(." + a.datepicker._currentClass + ")", f.dpDiv); j[0] && a.datepicker._selectDay(b.target, f.selectedMonth, f.selectedYear, j[0]); if (b = a.datepicker._get(f, "onSelect")) { j = a.datepicker._formatDate(f); b.apply(f.input ? f.input[0] : null, [j, f]) } else a.datepicker._hideDatepicker(); return false; case 27: a.datepicker._hideDatepicker(); break; case 33: a.datepicker._adjustDate(b.target,
b.ctrlKey ? -a.datepicker._get(f, "stepBigMonths") : -a.datepicker._get(f, "stepMonths"), "M"); break; case 34: a.datepicker._adjustDate(b.target, b.ctrlKey ? +a.datepicker._get(f, "stepBigMonths") : +a.datepicker._get(f, "stepMonths"), "M"); break; case 35: if (b.ctrlKey || b.metaKey) a.datepicker._clearDate(b.target); j = b.ctrlKey || b.metaKey; break; case 36: if (b.ctrlKey || b.metaKey) a.datepicker._gotoToday(b.target); j = b.ctrlKey || b.metaKey; break; case 37: if (b.ctrlKey || b.metaKey) a.datepicker._adjustDate(b.target, l ? +1 : -1, "D"); j =
b.ctrlKey || b.metaKey; if (b.originalEvent.altKey) a.datepicker._adjustDate(b.target, b.ctrlKey ? -a.datepicker._get(f, "stepBigMonths") : -a.datepicker._get(f, "stepMonths"), "M"); break; case 38: if (b.ctrlKey || b.metaKey) a.datepicker._adjustDate(b.target, -7, "D"); j = b.ctrlKey || b.metaKey; break; case 39: if (b.ctrlKey || b.metaKey) a.datepicker._adjustDate(b.target, l ? -1 : +1, "D"); j = b.ctrlKey || b.metaKey; if (b.originalEvent.altKey) a.datepicker._adjustDate(b.target, b.ctrlKey ? +a.datepicker._get(f, "stepBigMonths") : +a.datepicker._get(f,
"stepMonths"), "M"); break; case 40: if (b.ctrlKey || b.metaKey) a.datepicker._adjustDate(b.target, +7, "D"); j = b.ctrlKey || b.metaKey; break; default: j = false
    } else if (b.keyCode == 36 && b.ctrlKey) a.datepicker._showDatepicker(this); else j = false; if (j) { b.preventDefault(); b.stopPropagation() } 
}, _doKeyPress: function (b) {
    var f = a.datepicker._getInst(b.target); if (a.datepicker._get(f, "constrainInput")) {
        f = a.datepicker._possibleChars(a.datepicker._get(f, "dateFormat")); var j = String.fromCharCode(b.charCode == d ? b.keyCode : b.charCode);
        return b.ctrlKey || b.metaKey || j < " " || !f || f.indexOf(j) > -1
    } 
}, _doKeyUp: function (b) { b = a.datepicker._getInst(b.target); if (b.input.val() != b.lastVal) try { if (a.datepicker.parseDate(a.datepicker._get(b, "dateFormat"), b.input ? b.input.val() : null, a.datepicker._getFormatConfig(b))) { a.datepicker._setDateFromField(b); a.datepicker._updateAlternate(b); a.datepicker._updateDatepicker(b) } } catch (f) { a.datepicker.log(f) } return true }, _showDatepicker: function (b) {
    b = b.target || b; if (b.nodeName.toLowerCase() != "input") b = a("input",
b.parentNode)[0]; if (!(a.datepicker._isDisabledDatepicker(b) || a.datepicker._lastInput == b)) {
        var f = a.datepicker._getInst(b); if (a.datepicker._curInst && a.datepicker._curInst != f) { a.datepicker._datepickerShowing && a.datepicker._triggerOnClose(a.datepicker._curInst); a.datepicker._curInst.dpDiv.stop(true, true) } var j = a.datepicker._get(f, "beforeShow"); j = j ? j.apply(b, [b, f]) : {}; if (j !== false) {
            h(f.settings, j); f.lastVal = null; a.datepicker._lastInput = b; a.datepicker._setDateFromField(f); if (a.datepicker._inDialog) b.value =
""; if (!a.datepicker._pos) { a.datepicker._pos = a.datepicker._findPos(b); a.datepicker._pos[1] += b.offsetHeight } var l = false; a(b).parents().each(function () { l |= a(this).css("position") == "fixed"; return !l }); if (l && a.browser.opera) { a.datepicker._pos[0] -= document.documentElement.scrollLeft; a.datepicker._pos[1] -= document.documentElement.scrollTop } j = { left: a.datepicker._pos[0], top: a.datepicker._pos[1] }; a.datepicker._pos = null; f.dpDiv.empty(); f.dpDiv.css({ position: "absolute", display: "block", top: "-1000px" }); a.datepicker._updateDatepicker(f);
            j = a.datepicker._checkOffset(f, j, l); f.dpDiv.css({ position: a.datepicker._inDialog && a.blockUI ? "static" : l ? "fixed" : "absolute", display: "none", left: j.left + "px", top: j.top + "px" }); if (!f.inline) {
                j = a.datepicker._get(f, "showAnim"); var o = a.datepicker._get(f, "duration"), n = function () { var k = f.dpDiv.find("iframe.ui-datepicker-cover"); if (k.length) { var m = a.datepicker._getBorders(f.dpDiv); k.css({ left: -m[0], top: -m[1], width: f.dpDiv.outerWidth(), height: f.dpDiv.outerHeight() }) } }; f.dpDiv.zIndex(a(b).zIndex() + 1); a.datepicker._datepickerShowing =
true; a.effects && a.effects[j] ? f.dpDiv.show(j, a.datepicker._get(f, "showOptions"), o, n) : f.dpDiv[j || "show"](j ? o : null, n); if (!j || !o) n(); f.input.is(":visible") && !f.input.is(":disabled") && f.input.focus(); a.datepicker._curInst = f
            } 
        } 
    } 
}, _updateDatepicker: function (b) {
    this.maxRows = 4; var f = a.datepicker._getBorders(b.dpDiv); i = b; b.dpDiv.empty().append(this._generateHTML(b)); var j = b.dpDiv.find("iframe.ui-datepicker-cover"); j.length && j.css({ left: -f[0], top: -f[1], width: b.dpDiv.outerWidth(), height: b.dpDiv.outerHeight() });
    b.dpDiv.find("." + this._dayOverClass + " a").mouseover(); f = this._getNumberOfMonths(b); j = f[1]; b.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""); j > 1 && b.dpDiv.addClass("ui-datepicker-multi-" + j).css("width", 17 * j + "em"); b.dpDiv[(f[0] != 1 || f[1] != 1 ? "add" : "remove") + "Class"]("ui-datepicker-multi"); b.dpDiv[(this._get(b, "isRTL") ? "add" : "remove") + "Class"]("ui-datepicker-rtl"); b == a.datepicker._curInst && a.datepicker._datepickerShowing && b.input && b.input.is(":visible") &&
!b.input.is(":disabled") && b.input[0] != document.activeElement && b.input.focus(); if (b.yearshtml) { var l = b.yearshtml; setTimeout(function () { l === b.yearshtml && b.yearshtml && b.dpDiv.find("select.ui-datepicker-year:first").replaceWith(b.yearshtml); l = b.yearshtml = null }, 0) } 
}, _getBorders: function (b) { var f = function (j) { return { thin: 1, medium: 2, thick: 3}[j] || j }; return [parseFloat(f(b.css("border-left-width"))), parseFloat(f(b.css("border-top-width")))] }, _checkOffset: function (b, f, j) {
    var l = b.dpDiv.outerWidth(), o = b.dpDiv.outerHeight(),
n = b.input ? b.input.outerWidth() : 0, k = b.input ? b.input.outerHeight() : 0, m = document.documentElement.clientWidth + a(document).scrollLeft(), p = document.documentElement.clientHeight + a(document).scrollTop(); f.left -= this._get(b, "isRTL") ? l - n : 0; f.left -= j && f.left == b.input.offset().left ? a(document).scrollLeft() : 0; f.top -= j && f.top == b.input.offset().top + k ? a(document).scrollTop() : 0; f.left -= Math.min(f.left, f.left + l > m && m > l ? Math.abs(f.left + l - m) : 0); f.top -= Math.min(f.top, f.top + o > p && p > o ? Math.abs(o + k) : 0); return f
}, _findPos: function (b) {
    for (var f =
this._get(this._getInst(b), "isRTL"); b && (b.type == "hidden" || b.nodeType != 1 || a.expr.filters.hidden(b)); ) b = b[f ? "previousSibling" : "nextSibling"]; b = a(b).offset(); return [b.left, b.top]
}, _triggerOnClose: function (b) { var f = this._get(b, "onClose"); if (f) f.apply(b.input ? b.input[0] : null, [b.input ? b.input.val() : "", b]) }, _hideDatepicker: function (b) {
    var f = this._curInst; if (!(!f || b && f != a.data(b, "datepicker"))) if (this._datepickerShowing) {
        b = this._get(f, "showAnim"); var j = this._get(f, "duration"), l = function () {
            a.datepicker._tidyDialog(f);
            this._curInst = null
        }; a.effects && a.effects[b] ? f.dpDiv.hide(b, a.datepicker._get(f, "showOptions"), j, l) : f.dpDiv[b == "slideDown" ? "slideUp" : b == "fadeIn" ? "fadeOut" : "hide"](b ? j : null, l); b || l(); a.datepicker._triggerOnClose(f); this._datepickerShowing = false; this._lastInput = null; if (this._inDialog) { this._dialogInput.css({ position: "absolute", left: "0", top: "-100px" }); if (a.blockUI) { a.unblockUI(); a("body").append(this.dpDiv) } } this._inDialog = false
    } 
}, _tidyDialog: function (b) { b.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar") },
        _checkExternalClick: function (b) { if (a.datepicker._curInst) { b = a(b.target); b[0].id != a.datepicker._mainDivId && b.parents("#" + a.datepicker._mainDivId).length == 0 && !b.hasClass(a.datepicker.markerClassName) && !b.hasClass(a.datepicker._triggerClass) && a.datepicker._datepickerShowing && !(a.datepicker._inDialog && a.blockUI) && a.datepicker._hideDatepicker() } }, _adjustDate: function (b, f, j) {
            b = a(b); var l = this._getInst(b[0]); if (!this._isDisabledDatepicker(b[0])) {
                this._adjustInstDate(l, f + (j == "M" ? this._get(l, "showCurrentAtPos") :
0), j); this._updateDatepicker(l)
            } 
        }, _gotoToday: function (b) { b = a(b); var f = this._getInst(b[0]); if (this._get(f, "gotoCurrent") && f.currentDay) { f.selectedDay = f.currentDay; f.drawMonth = f.selectedMonth = f.currentMonth; f.drawYear = f.selectedYear = f.currentYear } else { var j = new Date; f.selectedDay = j.getDate(); f.drawMonth = f.selectedMonth = j.getMonth(); f.drawYear = f.selectedYear = j.getFullYear() } this._notifyChange(f); this._adjustDate(b) }, _selectMonthYear: function (b, f, j) {
            b = a(b); var l = this._getInst(b[0]); l["selected" + (j == "M" ?
"Month" : "Year")] = l["draw" + (j == "M" ? "Month" : "Year")] = parseInt(f.options[f.selectedIndex].value, 10); this._notifyChange(l); this._adjustDate(b)
        }, _selectDay: function (b, f, j, l) { var o = a(b); if (!(a(l).hasClass(this._unselectableClass) || this._isDisabledDatepicker(o[0]))) { o = this._getInst(o[0]); o.selectedDay = o.currentDay = a("a", l).html(); o.selectedMonth = o.currentMonth = f; o.selectedYear = o.currentYear = j; this._selectDate(b, this._formatDate(o, o.currentDay, o.currentMonth, o.currentYear)) } }, _clearDate: function (b) {
            b = a(b);
            this._getInst(b[0]); this._selectDate(b, "")
        }, _selectDate: function (b, f) { b = this._getInst(a(b)[0]); f = f != null ? f : this._formatDate(b); b.input && b.input.val(f); this._updateAlternate(b); var j = this._get(b, "onSelect"); if (j) j.apply(b.input ? b.input[0] : null, [f, b]); else b.input && b.input.trigger("change"); if (b.inline) this._updateDatepicker(b); else { this._hideDatepicker(); this._lastInput = b.input[0]; typeof b.input[0] != "object" && b.input.focus(); this._lastInput = null } }, _updateAlternate: function (b) {
            var f = this._get(b, "altField");
            if (f) { var j = this._get(b, "altFormat") || this._get(b, "dateFormat"), l = this._getDate(b), o = this.formatDate(j, l, this._getFormatConfig(b)); a(f).each(function () { a(this).val(o) }) } 
        }, noWeekends: function (b) { b = b.getDay(); return [b > 0 && b < 6, ""] }, iso8601Week: function (b) { b = new Date(b.getTime()); b.setDate(b.getDate() + 4 - (b.getDay() || 7)); var f = b.getTime(); b.setMonth(0); b.setDate(1); return Math.floor(Math.round((f - b) / 864E5) / 7) + 1 }, parseDate: function (b, f, j) {
            if (b == null || f == null) throw "Invalid arguments"; f = typeof f == "object" ?
f.toString() : f + ""; if (f == "") return null; var l = (j ? j.shortYearCutoff : null) || this._defaults.shortYearCutoff; l = typeof l != "string" ? l : (new Date).getFullYear() % 100 + parseInt(l, 10); for (var o = (j ? j.dayNamesShort : null) || this._defaults.dayNamesShort, n = (j ? j.dayNames : null) || this._defaults.dayNames, k = (j ? j.monthNamesShort : null) || this._defaults.monthNamesShort, m = (j ? j.monthNames : null) || this._defaults.monthNames, p = j = -1, q = -1, s = -1, r = false, u = function (z) { (z = H + 1 < b.length && b.charAt(H + 1) == z) && H++; return z }, v = function (z) {
    var I =
u(z); z = new RegExp("^\\d{1," + (z == "@" ? 14 : z == "!" ? 20 : z == "y" && I ? 4 : z == "o" ? 3 : 2) + "}"); z = f.substring(y).match(z); if (!z) throw "Missing number at position " + y; y += z[0].length; return parseInt(z[0], 10)
}, w = function (z, I, N) { z = a.map(u(z) ? N : I, function (D, E) { return [[E, D]] }).sort(function (D, E) { return -(D[1].length - E[1].length) }); var J = -1; a.each(z, function (D, E) { D = E[1]; if (f.substr(y, D.length).toLowerCase() == D.toLowerCase()) { J = E[0]; y += D.length; return false } }); if (J != -1) return J + 1; else throw "Unknown name at position " + y; }, x =
function () { if (f.charAt(y) != b.charAt(H)) throw "Unexpected literal at position " + y; y++ }, y = 0, H = 0; H < b.length; H++) if (r) if (b.charAt(H) == "'" && !u("'")) r = false; else x(); else switch (b.charAt(H)) {
                case "d": q = v("d"); break; case "D": w("D", o, n); break; case "o": s = v("o"); break; case "m": p = v("m"); break; case "M": p = w("M", k, m); break; case "y": j = v("y"); break; case "@": var C = new Date(v("@")); j = C.getFullYear(); p = C.getMonth() + 1; q = C.getDate(); break; case "!": C = new Date((v("!") - this._ticksTo1970) / 1E4); j = C.getFullYear(); p = C.getMonth() +
1; q = C.getDate(); break; case "'": if (u("'")) x(); else r = true; break; default: x()
            } if (y < f.length) throw "Extra/unparsed characters found in date: " + f.substring(y); if (j == -1) j = (new Date).getFullYear(); else if (j < 100) j += (new Date).getFullYear() - (new Date).getFullYear() % 100 + (j <= l ? 0 : -100); if (s > -1) { p = 1; q = s; do { l = this._getDaysInMonth(j, p - 1); if (q <= l) break; p++; q -= l } while (1) } C = this._daylightSavingAdjust(new Date(j, p - 1, q)); if (C.getFullYear() != j || C.getMonth() + 1 != p || C.getDate() != q) throw "Invalid date"; return C
        }, ATOM: "yy-mm-dd",
        COOKIE: "D, dd M yy", ISO_8601: "yy-mm-dd", RFC_822: "D, d M y", RFC_850: "DD, dd-M-y", RFC_1036: "D, d M y", RFC_1123: "D, d M yy", RFC_2822: "D, d M yy", RSS: "D, d M y", TICKS: "!", TIMESTAMP: "@", W3C: "yy-mm-dd", _ticksTo1970: (718685 + Math.floor(492.5) - Math.floor(19.7) + Math.floor(4.925)) * 24 * 60 * 60 * 1E7, formatDate: function (b, f, j) {
            if (!f) return ""; var l = (j ? j.dayNamesShort : null) || this._defaults.dayNamesShort, o = (j ? j.dayNames : null) || this._defaults.dayNames, n = (j ? j.monthNamesShort : null) || this._defaults.monthNamesShort; j = (j ? j.monthNames :
null) || this._defaults.monthNames; var k = function (u) { (u = r + 1 < b.length && b.charAt(r + 1) == u) && r++; return u }, m = function (u, v, w) { v = "" + v; if (k(u)) for (; v.length < w; ) v = "0" + v; return v }, p = function (u, v, w, x) { return k(u) ? x[v] : w[v] }, q = "", s = false; if (f) for (var r = 0; r < b.length; r++) if (s) if (b.charAt(r) == "'" && !k("'")) s = false; else q += b.charAt(r); else switch (b.charAt(r)) {
                case "d": q += m("d", f.getDate(), 2); break; case "D": q += p("D", f.getDay(), l, o); break; case "o": q += m("o", Math.round(((new Date(f.getFullYear(), f.getMonth(), f.getDate())).getTime() -
(new Date(f.getFullYear(), 0, 0)).getTime()) / 864E5), 3); break; case "m": q += m("m", f.getMonth() + 1, 2); break; case "M": q += p("M", f.getMonth(), n, j); break; case "y": q += k("y") ? f.getFullYear() : (f.getYear() % 100 < 10 ? "0" : "") + f.getYear() % 100; break; case "@": q += f.getTime(); break; case "!": q += f.getTime() * 1E4 + this._ticksTo1970; break; case "'": if (k("'")) q += "'"; else s = true; break; default: q += b.charAt(r)
            } return q
        }, _possibleChars: function (b) {
            for (var f = "", j = false, l = function (n) { (n = o + 1 < b.length && b.charAt(o + 1) == n) && o++; return n }, o =
0; o < b.length; o++) if (j) if (b.charAt(o) == "'" && !l("'")) j = false; else f += b.charAt(o); else switch (b.charAt(o)) { case "d": case "m": case "y": case "@": f += "0123456789"; break; case "D": case "M": return null; case "'": if (l("'")) f += "'"; else j = true; break; default: f += b.charAt(o) } return f
        }, _get: function (b, f) { return b.settings[f] !== d ? b.settings[f] : this._defaults[f] }, _setDateFromField: function (b, f) {
            if (b.input.val() != b.lastVal) {
                var j = this._get(b, "dateFormat"), l = b.lastVal = b.input ? b.input.val() : null, o, n; o = n = this._getDefaultDate(b);
                var k = this._getFormatConfig(b); try { o = this.parseDate(j, l, k) || n } catch (m) { this.log(m); l = f ? "" : l } b.selectedDay = o.getDate(); b.drawMonth = b.selectedMonth = o.getMonth(); b.drawYear = b.selectedYear = o.getFullYear(); b.currentDay = l ? o.getDate() : 0; b.currentMonth = l ? o.getMonth() : 0; b.currentYear = l ? o.getFullYear() : 0; this._adjustInstDate(b)
            } 
        }, _getDefaultDate: function (b) { return this._restrictMinMax(b, this._determineDate(b, this._get(b, "defaultDate"), new Date)) }, _determineDate: function (b, f, j) {
            var l = function (n) {
                var k = new Date;
                k.setDate(k.getDate() + n); return k
            }, o = function (n) {
                try { return a.datepicker.parseDate(a.datepicker._get(b, "dateFormat"), n, a.datepicker._getFormatConfig(b)) } catch (k) { } var m = (n.toLowerCase().match(/^c/) ? a.datepicker._getDate(b) : null) || new Date, p = m.getFullYear(), q = m.getMonth(); m = m.getDate(); for (var s = /([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g, r = s.exec(n); r; ) {
                    switch (r[2] || "d") {
                        case "d": case "D": m += parseInt(r[1], 10); break; case "w": case "W": m += parseInt(r[1], 10) * 7; break; case "m": case "M": q += parseInt(r[1], 10); m =
Math.min(m, a.datepicker._getDaysInMonth(p, q)); break; case "y": case "Y": p += parseInt(r[1], 10); m = Math.min(m, a.datepicker._getDaysInMonth(p, q)); break
                    } r = s.exec(n)
                } return new Date(p, q, m)
            }; if (f = (f = f == null || f === "" ? j : typeof f == "string" ? o(f) : typeof f == "number" ? isNaN(f) ? j : l(f) : new Date(f.getTime())) && f.toString() == "Invalid Date" ? j : f) { f.setHours(0); f.setMinutes(0); f.setSeconds(0); f.setMilliseconds(0) } return this._daylightSavingAdjust(f)
        }, _daylightSavingAdjust: function (b) {
            if (!b) return null; b.setHours(b.getHours() >
12 ? b.getHours() + 2 : 0); return b
        }, _setDate: function (b, f, j) { var l = !f, o = b.selectedMonth, n = b.selectedYear; f = this._restrictMinMax(b, this._determineDate(b, f, new Date)); b.selectedDay = b.currentDay = f.getDate(); b.drawMonth = b.selectedMonth = b.currentMonth = f.getMonth(); b.drawYear = b.selectedYear = b.currentYear = f.getFullYear(); if ((o != b.selectedMonth || n != b.selectedYear) && !j) this._notifyChange(b); this._adjustInstDate(b); if (b.input) b.input.val(l ? "" : this._formatDate(b)) }, _getDate: function (b) {
            return !b.currentYear || b.input &&
b.input.val() == "" ? null : this._daylightSavingAdjust(new Date(b.currentYear, b.currentMonth, b.currentDay))
        }, _generateHTML: function (b) {
            var f = new Date; f = this._daylightSavingAdjust(new Date(f.getFullYear(), f.getMonth(), f.getDate())); var j = this._get(b, "isRTL"), l = this._get(b, "showButtonPanel"), o = this._get(b, "hideIfNoPrevNext"), n = this._get(b, "navigationAsDateFormat"), k = this._getNumberOfMonths(b), m = this._get(b, "showCurrentAtPos"), p = this._get(b, "stepMonths"), q = k[0] != 1 || k[1] != 1, s = this._daylightSavingAdjust(!b.currentDay ?
new Date(9999, 9, 9) : new Date(b.currentYear, b.currentMonth, b.currentDay)), r = this._getMinMaxDate(b, "min"), u = this._getMinMaxDate(b, "max"); m = b.drawMonth - m; var v = b.drawYear; if (m < 0) { m += 12; v-- } if (u) { var w = this._daylightSavingAdjust(new Date(u.getFullYear(), u.getMonth() - k[0] * k[1] + 1, u.getDate())); for (w = r && w < r ? r : w; this._daylightSavingAdjust(new Date(v, m, 1)) > w; ) { m--; if (m < 0) { m = 11; v-- } } } b.drawMonth = m; b.drawYear = v; w = this._get(b, "prevText"); w = !n ? w : this.formatDate(w, this._daylightSavingAdjust(new Date(v, m - p, 1)), this._getFormatConfig(b));
            w = this._canAdjustMonth(b, -1, v, m) ? '<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_' + g + ".datepicker._adjustDate('#" + b.id + "', -" + p + ", 'M');\" title=\"" + w + '"><span class="ui-icon ui-icon-circle-triangle-' + (j ? "e" : "w") + '">' + w + "</span></a>" : o ? "" : '<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="' + w + '"><span class="ui-icon ui-icon-circle-triangle-' + (j ? "e" : "w") + '">' + w + "</span></a>"; var x = this._get(b, "nextText"); x = !n ? x : this.formatDate(x, this._daylightSavingAdjust(new Date(v,
m + p, 1)), this._getFormatConfig(b)); o = this._canAdjustMonth(b, +1, v, m) ? '<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_' + g + ".datepicker._adjustDate('#" + b.id + "', +" + p + ", 'M');\" title=\"" + x + '"><span class="ui-icon ui-icon-circle-triangle-' + (j ? "w" : "e") + '">' + x + "</span></a>" : o ? "" : '<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="' + x + '"><span class="ui-icon ui-icon-circle-triangle-' + (j ? "w" : "e") + '">' + x + "</span></a>"; p = this._get(b, "currentText"); x = this._get(b, "gotoCurrent") &&
b.currentDay ? s : f; p = !n ? p : this.formatDate(p, x, this._getFormatConfig(b)); n = !b.inline ? '<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_' + g + '.datepicker._hideDatepicker();">' + this._get(b, "closeText") + "</button>" : ""; l = l ? '<div class="ui-datepicker-buttonpane ui-widget-content">' + (j ? n : "") + (this._isInRange(b, x) ? '<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_' +
g + ".datepicker._gotoToday('#" + b.id + "');\">" + p + "</button>" : "") + (j ? "" : n) + "</div>" : ""; n = parseInt(this._get(b, "firstDay"), 10); n = isNaN(n) ? 0 : n; p = this._get(b, "showWeek"); x = this._get(b, "dayNames"); this._get(b, "dayNamesShort"); var y = this._get(b, "dayNamesMin"), H = this._get(b, "monthNames"), C = this._get(b, "monthNamesShort"), z = this._get(b, "beforeShowDay"), I = this._get(b, "showOtherMonths"), N = this._get(b, "selectOtherMonths"); this._get(b, "calculateWeek"); for (var J = this._getDefaultDate(b), D = "", E = 0; E < k[0]; E++) {
                var P =
""; this.maxRows = 4; for (var L = 0; L < k[1]; L++) {
                    var Q = this._daylightSavingAdjust(new Date(v, m, b.selectedDay)), B = " ui-corner-all", F = ""; if (q) { F += '<div class="ui-datepicker-group'; if (k[1] > 1) switch (L) { case 0: F += " ui-datepicker-group-first"; B = " ui-corner-" + (j ? "right" : "left"); break; case k[1] - 1: F += " ui-datepicker-group-last"; B = " ui-corner-" + (j ? "left" : "right"); break; default: F += " ui-datepicker-group-middle"; B = ""; break } F += '">' } F += '<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix' + B + '">' + (/all|left/.test(B) &&
E == 0 ? j ? o : w : "") + (/all|right/.test(B) && E == 0 ? j ? w : o : "") + this._generateMonthYearHeader(b, m, v, r, u, E > 0 || L > 0, H, C) + '</div><table class="ui-datepicker-calendar"><thead><tr>'; var G = p ? '<th class="ui-datepicker-week-col">' + this._get(b, "weekHeader") + "</th>" : ""; for (B = 0; B < 7; B++) { var A = (B + n) % 7; G += "<th" + ((B + n + 6) % 7 >= 5 ? ' class="ui-datepicker-week-end"' : "") + '><span title="' + x[A] + '">' + y[A] + "</span></th>" } F += G + "</tr></thead><tbody>"; G = this._getDaysInMonth(v, m); if (v == b.selectedYear && m == b.selectedMonth) b.selectedDay = Math.min(b.selectedDay,
G); B = (this._getFirstDayOfMonth(v, m) - n + 7) % 7; G = Math.ceil((B + G) / 7); this.maxRows = G = q ? this.maxRows > G ? this.maxRows : G : G; A = this._daylightSavingAdjust(new Date(v, m, 1 - B)); for (var R = 0; R < G; R++) {
                        F += "<tr>"; var S = !p ? "" : '<td class="ui-datepicker-week-col">' + this._get(b, "calculateWeek")(A) + "</td>"; for (B = 0; B < 7; B++) {
                            var M = z ? z.apply(b.input ? b.input[0] : null, [A]) : [true, ""], K = A.getMonth() != m, O = K && !N || !M[0] || r && A < r || u && A > u; S += '<td class="' + ((B + n + 6) % 7 >= 5 ? " ui-datepicker-week-end" : "") + (K ? " ui-datepicker-other-month" : "") + (A.getTime() ==
Q.getTime() && m == b.selectedMonth && b._keyEvent || J.getTime() == A.getTime() && J.getTime() == Q.getTime() ? " " + this._dayOverClass : "") + (O ? " " + this._unselectableClass + " ui-state-disabled" : "") + (K && !I ? "" : " " + M[1] + (A.getTime() == s.getTime() ? " " + this._currentClass : "") + (A.getTime() == f.getTime() ? " ui-datepicker-today" : "")) + '"' + ((!K || I) && M[2] ? ' title="' + M[2] + '"' : "") + (O ? "" : ' onclick="DP_jQuery_' + g + ".datepicker._selectDay('#" + b.id + "'," + A.getMonth() + "," + A.getFullYear() + ', this);return false;"') + ">" + (K && !I ? "&#xa0;" : O ? '<span class="ui-state-default">' +
A.getDate() + "</span>" : '<a class="ui-state-default' + (A.getTime() == f.getTime() ? " ui-state-highlight" : "") + (A.getTime() == s.getTime() ? " ui-state-active" : "") + (K ? " ui-priority-secondary" : "") + '" href="#">' + A.getDate() + "</a>") + "</td>"; A.setDate(A.getDate() + 1); A = this._daylightSavingAdjust(A)
                        } F += S + "</tr>"
                    } m++; if (m > 11) { m = 0; v++ } F += "</tbody></table>" + (q ? "</div>" + (k[0] > 0 && L == k[1] - 1 ? '<div class="ui-datepicker-row-break"></div>' : "") : ""); P += F
                } D += P
            } D += l + (a.browser.msie && parseInt(a.browser.version, 10) < 7 && !b.inline ? '<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>' :
""); b._keyEvent = false; return D
        }, _generateMonthYearHeader: function (b, f, j, l, o, n, k, m) {
            var p = this._get(b, "changeMonth"), q = this._get(b, "changeYear"), s = this._get(b, "showMonthAfterYear"), r = '<div class="ui-datepicker-title">', u = ""; if (n || !p) u += '<span class="ui-datepicker-month">' + k[f] + "</span>"; else {
                k = l && l.getFullYear() == j; var v = o && o.getFullYear() == j; u += '<select class="ui-datepicker-month" onchange="DP_jQuery_' + g + ".datepicker._selectMonthYear('#" + b.id + "', this, 'M');\" >"; for (var w = 0; w < 12; w++) if ((!k || w >= l.getMonth()) &&
(!v || w <= o.getMonth())) u += '<option value="' + w + '"' + (w == f ? ' selected="selected"' : "") + ">" + m[w] + "</option>"; u += "</select>"
            } s || (r += u + (n || !(p && q) ? "&#xa0;" : "")); if (!b.yearshtml) {
                b.yearshtml = ""; if (n || !q) r += '<span class="ui-datepicker-year">' + j + "</span>"; else {
                    m = this._get(b, "yearRange").split(":"); var x = (new Date).getFullYear(); k = function (y) { y = y.match(/c[+-].*/) ? j + parseInt(y.substring(1), 10) : y.match(/[+-].*/) ? x + parseInt(y, 10) : parseInt(y, 10); return isNaN(y) ? x : y }; f = k(m[0]); m = Math.max(f, k(m[1] || "")); f = l ? Math.max(f,
l.getFullYear()) : f; m = o ? Math.min(m, o.getFullYear()) : m; for (b.yearshtml += '<select class="ui-datepicker-year" onchange="DP_jQuery_' + g + ".datepicker._selectMonthYear('#" + b.id + "', this, 'Y');\" >"; f <= m; f++) b.yearshtml += '<option value="' + f + '"' + (f == j ? ' selected="selected"' : "") + ">" + f + "</option>"; b.yearshtml += "</select>"; r += b.yearshtml; b.yearshtml = null
                } 
            } r += this._get(b, "yearSuffix"); if (s) r += (n || !(p && q) ? "&#xa0;" : "") + u; r += "</div>"; return r
        }, _adjustInstDate: function (b, f, j) {
            var l = b.drawYear + (j == "Y" ? f : 0), o = b.drawMonth +
(j == "M" ? f : 0); f = Math.min(b.selectedDay, this._getDaysInMonth(l, o)) + (j == "D" ? f : 0); l = this._restrictMinMax(b, this._daylightSavingAdjust(new Date(l, o, f))); b.selectedDay = l.getDate(); b.drawMonth = b.selectedMonth = l.getMonth(); b.drawYear = b.selectedYear = l.getFullYear(); if (j == "M" || j == "Y") this._notifyChange(b)
        }, _restrictMinMax: function (b, f) { var j = this._getMinMaxDate(b, "min"); b = this._getMinMaxDate(b, "max"); f = j && f < j ? j : f; return f = b && f > b ? b : f }, _notifyChange: function (b) {
            var f = this._get(b, "onChangeMonthYear"); if (f) f.apply(b.input ?
b.input[0] : null, [b.selectedYear, b.selectedMonth + 1, b])
        }, _getNumberOfMonths: function (b) { b = this._get(b, "numberOfMonths"); return b == null ? [1, 1] : typeof b == "number" ? [1, b] : b }, _getMinMaxDate: function (b, f) { return this._determineDate(b, this._get(b, f + "Date"), null) }, _getDaysInMonth: function (b, f) { return 32 - this._daylightSavingAdjust(new Date(b, f, 32)).getDate() }, _getFirstDayOfMonth: function (b, f) { return (new Date(b, f, 1)).getDay() }, _canAdjustMonth: function (b, f, j, l) {
            var o = this._getNumberOfMonths(b); j = this._daylightSavingAdjust(new Date(j,
l + (f < 0 ? f : o[0] * o[1]), 1)); f < 0 && j.setDate(this._getDaysInMonth(j.getFullYear(), j.getMonth())); return this._isInRange(b, j)
        }, _isInRange: function (b, f) { var j = this._getMinMaxDate(b, "min"); b = this._getMinMaxDate(b, "max"); return (!j || f.getTime() >= j.getTime()) && (!b || f.getTime() <= b.getTime()) }, _getFormatConfig: function (b) {
            var f = this._get(b, "shortYearCutoff"); f = typeof f != "string" ? f : (new Date).getFullYear() % 100 + parseInt(f, 10); return { shortYearCutoff: f, dayNamesShort: this._get(b, "dayNamesShort"), dayNames: this._get(b,
"dayNames"), monthNamesShort: this._get(b, "monthNamesShort"), monthNames: this._get(b, "monthNames")
            }
        }, _formatDate: function (b, f, j, l) { if (!f) { b.currentDay = b.selectedDay; b.currentMonth = b.selectedMonth; b.currentYear = b.selectedYear } f = f ? typeof f == "object" ? f : this._daylightSavingAdjust(new Date(l, j, f)) : this._daylightSavingAdjust(new Date(b.currentYear, b.currentMonth, b.currentDay)); return this.formatDate(this._get(b, "dateFormat"), f, this._getFormatConfig(b)) } 
    }); a.fn.datepicker = function (b) {
        if (!this.length) return this;
        if (!a.datepicker.initialized) { a(document).mousedown(a.datepicker._checkExternalClick).find("body").append(a.datepicker.dpDiv); a.datepicker.initialized = true } var f = Array.prototype.slice.call(arguments, 1); if (typeof b == "string" && (b == "isDisabled" || b == "getDate" || b == "widget")) return a.datepicker["_" + b + "Datepicker"].apply(a.datepicker, [this[0]].concat(f)); if (b == "option" && arguments.length == 2 && typeof arguments[1] == "string") return a.datepicker["_" + b + "Datepicker"].apply(a.datepicker, [this[0]].concat(f)); return this.each(function () {
            typeof b ==
"string" ? a.datepicker["_" + b + "Datepicker"].apply(a.datepicker, [this].concat(f)) : a.datepicker._attachDatepicker(this, b)
        })
    }; a.datepicker = new c; a.datepicker.initialized = false; a.datepicker.uuid = (new Date).getTime(); a.datepicker.version = "1.8.16"; window["DP_jQuery_" + g] = a
})(jQuery);
(function (a, d) {
    var c = { buttons: true, height: true, maxHeight: true, maxWidth: true, minHeight: true, minWidth: true, width: true }, e = { maxHeight: true, maxWidth: true, minHeight: true, minWidth: true }, h = a.attrFn || { val: true, css: true, html: true, text: true, data: true, width: true, height: true, offset: true, click: true }; a.widget("ui.dialog", { options: { autoOpen: true, buttons: {}, closeOnEscape: true, closeText: "close", dialogClass: "", draggable: true, hide: null, height: "auto", maxHeight: false, maxWidth: false, minHeight: 150, minWidth: 150, modal: false,
        position: { my: "center", at: "center", collision: "fit", using: function (g) { var i = a(this).css(g).offset().top; i < 0 && a(this).css("top", g.top - i) } }, resizable: true, show: null, stack: true, title: "", width: 300, zIndex: 1E3
    }, _create: function () {
        this.originalTitle = this.element.attr("title"); if (typeof this.originalTitle !== "string") this.originalTitle = ""; this.options.title = this.options.title || this.originalTitle; var g = this, i = g.options, b = i.title || "&#160;", f = a.ui.dialog.getTitleId(g.element), j = (g.uiDialog = a("<div></div>")).appendTo(document.body).hide().addClass("ui-dialog ui-widget ui-widget-content ui-corner-all " +
i.dialogClass).css({ zIndex: i.zIndex }).attr("tabIndex", -1).css("outline", 0).keydown(function (n) { if (i.closeOnEscape && !n.isDefaultPrevented() && n.keyCode && n.keyCode === a.ui.keyCode.ESCAPE) { g.close(n); n.preventDefault() } }).attr({ role: "dialog", "aria-labelledby": f }).mousedown(function (n) { g.moveToTop(false, n) }); g.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(j); var l = (g.uiDialogTitlebar = a("<div></div>")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(j),
o = a('<a href="#"></a>').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role", "button").hover(function () { o.addClass("ui-state-hover") }, function () { o.removeClass("ui-state-hover") }).focus(function () { o.addClass("ui-state-focus") }).blur(function () { o.removeClass("ui-state-focus") }).click(function (n) { g.close(n); return false }).appendTo(l); (g.uiDialogTitlebarCloseText = a("<span></span>")).addClass("ui-icon ui-icon-closethick").text(i.closeText).appendTo(o); a("<span></span>").addClass("ui-dialog-title").attr("id",
f).html(b).prependTo(l); if (a.isFunction(i.beforeclose) && !a.isFunction(i.beforeClose)) i.beforeClose = i.beforeclose; l.find("*").add(l).disableSelection(); i.draggable && a.fn.draggable && g._makeDraggable(); i.resizable && a.fn.resizable && g._makeResizable(); g._createButtons(i.buttons); g._isOpen = false; a.fn.bgiframe && j.bgiframe()
    }, _init: function () { this.options.autoOpen && this.open() }, destroy: function () {
        var g = this; g.overlay && g.overlay.destroy(); g.uiDialog.hide(); g.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body");
        g.uiDialog.remove(); g.originalTitle && g.element.attr("title", g.originalTitle); return g
    }, widget: function () { return this.uiDialog }, close: function (g) {
        var i = this, b, f; if (false !== i._trigger("beforeClose", g)) {
            i.overlay && i.overlay.destroy(); i.uiDialog.unbind("keypress.ui-dialog"); i._isOpen = false; if (i.options.hide) i.uiDialog.hide(i.options.hide, function () { i._trigger("close", g) }); else { i.uiDialog.hide(); i._trigger("close", g) } a.ui.dialog.overlay.resize(); if (i.options.modal) {
                b = 0; a(".ui-dialog").each(function () {
                    if (this !==
i.uiDialog[0]) { f = a(this).css("z-index"); isNaN(f) || (b = Math.max(b, f)) } 
                }); a.ui.dialog.maxZ = b
            } return i
        } 
    }, isOpen: function () { return this._isOpen }, moveToTop: function (g, i) {
        var b = this, f = b.options; if (f.modal && !g || !f.stack && !f.modal) return b._trigger("focus", i); if (f.zIndex > a.ui.dialog.maxZ) a.ui.dialog.maxZ = f.zIndex; if (b.overlay) { a.ui.dialog.maxZ += 1; b.overlay.$el.css("z-index", a.ui.dialog.overlay.maxZ = a.ui.dialog.maxZ) } g = { scrollTop: b.element.scrollTop(), scrollLeft: b.element.scrollLeft() }; a.ui.dialog.maxZ += 1;
        b.uiDialog.css("z-index", a.ui.dialog.maxZ); b.element.attr(g); b._trigger("focus", i); return b
    }, open: function () {
        if (!this._isOpen) {
            var g = this, i = g.options, b = g.uiDialog; g.overlay = i.modal ? new a.ui.dialog.overlay(g) : null; g._size(); g._position(i.position); b.show(i.show); g.moveToTop(true); i.modal && b.bind("keypress.ui-dialog", function (f) {
                if (f.keyCode === a.ui.keyCode.TAB) {
                    var j = a(":tabbable", this), l = j.filter(":first"); j = j.filter(":last"); if (f.target === j[0] && !f.shiftKey) { l.focus(1); return false } else if (f.target ===
l[0] && f.shiftKey) { j.focus(1); return false } 
                } 
            }); a(g.element.find(":tabbable").get().concat(b.find(".ui-dialog-buttonpane :tabbable").get().concat(b.get()))).eq(0).focus(); g._isOpen = true; g._trigger("open"); return g
        } 
    }, _createButtons: function (g) {
        var i = this, b = false, f = a("<div></div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"), j = a("<div></div>").addClass("ui-dialog-buttonset").appendTo(f); i.uiDialog.find(".ui-dialog-buttonpane").remove(); typeof g === "object" && g !== null && a.each(g,
function () { return !(b = true) }); if (b) { a.each(g, function (l, o) { o = a.isFunction(o) ? { click: o, text: l} : o; var n = a('<button type="button"></button>').click(function () { o.click.apply(i.element[0], arguments) }).appendTo(j); a.each(o, function (k, m) { if (k !== "click") k in h ? n[k](m) : n.attr(k, m) }); a.fn.button && n.button() }); f.appendTo(i.uiDialog) } 
    }, _makeDraggable: function () {
        function g(l) { return { position: l.position, offset: l.offset} } var i = this, b = i.options, f = a(document), j; i.uiDialog.draggable({ cancel: ".ui-dialog-content, .ui-dialog-titlebar-close",
            handle: ".ui-dialog-titlebar", containment: "document", start: function (l, o) { j = b.height === "auto" ? "auto" : a(this).height(); a(this).height(a(this).height()).addClass("ui-dialog-dragging"); i._trigger("dragStart", l, g(o)) }, drag: function (l, o) { i._trigger("drag", l, g(o)) }, stop: function (l, o) { b.position = [o.position.left - f.scrollLeft(), o.position.top - f.scrollTop()]; a(this).removeClass("ui-dialog-dragging").height(j); i._trigger("dragStop", l, g(o)); a.ui.dialog.overlay.resize() } 
        })
    }, _makeResizable: function (g) {
        function i(l) {
            return { originalPosition: l.originalPosition,
                originalSize: l.originalSize, position: l.position, size: l.size
            }
        } g = g === d ? this.options.resizable : g; var b = this, f = b.options, j = b.uiDialog.css("position"); g = typeof g === "string" ? g : "n,e,s,w,se,sw,ne,nw"; b.uiDialog.resizable({ cancel: ".ui-dialog-content", containment: "document", alsoResize: b.element, maxWidth: f.maxWidth, maxHeight: f.maxHeight, minWidth: f.minWidth, minHeight: b._minHeight(), handles: g, start: function (l, o) { a(this).addClass("ui-dialog-resizing"); b._trigger("resizeStart", l, i(o)) }, resize: function (l, o) {
            b._trigger("resize",
l, i(o))
        }, stop: function (l, o) { a(this).removeClass("ui-dialog-resizing"); f.height = a(this).height(); f.width = a(this).width(); b._trigger("resizeStop", l, i(o)); a.ui.dialog.overlay.resize() } 
        }).css("position", j).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")
    }, _minHeight: function () { var g = this.options; return g.height === "auto" ? g.minHeight : Math.min(g.minHeight, g.height) }, _position: function (g) {
        var i = [], b = [0, 0], f; if (g) {
            if (typeof g === "string" || typeof g === "object" && "0" in g) {
                i = g.split ? g.split(" ") :
[g[0], g[1]]; if (i.length === 1) i[1] = i[0]; a.each(["left", "top"], function (j, l) { if (+i[j] === i[j]) { b[j] = i[j]; i[j] = l } }); g = { my: i.join(" "), at: i.join(" "), offset: b.join(" ")}
            } g = a.extend({}, a.ui.dialog.prototype.options.position, g)
        } else g = a.ui.dialog.prototype.options.position; (f = this.uiDialog.is(":visible")) || this.uiDialog.show(); this.uiDialog.css({ top: 0, left: 0 }).position(a.extend({ of: window }, g)); f || this.uiDialog.hide()
    }, _setOptions: function (g) {
        var i = this, b = {}, f = false; a.each(g, function (j, l) {
            i._setOption(j, l);
            if (j in c) f = true; if (j in e) b[j] = l
        }); f && this._size(); this.uiDialog.is(":data(resizable)") && this.uiDialog.resizable("option", b)
    }, _setOption: function (g, i) {
        var b = this, f = b.uiDialog; switch (g) {
            case "beforeclose": g = "beforeClose"; break; case "buttons": b._createButtons(i); break; case "closeText": b.uiDialogTitlebarCloseText.text("" + i); break; case "dialogClass": f.removeClass(b.options.dialogClass).addClass("ui-dialog ui-widget ui-widget-content ui-corner-all " + i); break; case "disabled": i ? f.addClass("ui-dialog-disabled") :
f.removeClass("ui-dialog-disabled"); break; case "draggable": var j = f.is(":data(draggable)"); j && !i && f.draggable("destroy"); !j && i && b._makeDraggable(); break; case "position": b._position(i); break; case "resizable": (j = f.is(":data(resizable)")) && !i && f.resizable("destroy"); j && typeof i === "string" && f.resizable("option", "handles", i); !j && i !== false && b._makeResizable(i); break; case "title": a(".ui-dialog-title", b.uiDialogTitlebar).html("" + (i || "&#160;")); break
        } a.Widget.prototype._setOption.apply(b, arguments)
    }, _size: function () {
        var g =
this.options, i, b, f = this.uiDialog.is(":visible"); this.element.show().css({ width: "auto", minHeight: 0, height: 0 }); if (g.minWidth > g.width) g.width = g.minWidth; i = this.uiDialog.css({ height: "auto", width: g.width }).height(); b = Math.max(0, g.minHeight - i); if (g.height === "auto") if (a.support.minHeight) this.element.css({ minHeight: b, height: "auto" }); else { this.uiDialog.show(); g = this.element.css("height", "auto").height(); f || this.uiDialog.hide(); this.element.height(Math.max(g, b)) } else this.element.height(Math.max(g.height -
i, 0)); this.uiDialog.is(":data(resizable)") && this.uiDialog.resizable("option", "minHeight", this._minHeight())
    } 
    }); a.extend(a.ui.dialog, { version: "1.8.16", uuid: 0, maxZ: 0, getTitleId: function (g) { g = g.attr("id"); if (!g) { this.uuid += 1; g = this.uuid } return "ui-dialog-title-" + g }, overlay: function (g) { this.$el = a.ui.dialog.overlay.create(g) } }); a.extend(a.ui.dialog.overlay, { instances: [], oldInstances: [], maxZ: 0, events: a.map("focus,mousedown,mouseup,keydown,keypress,click".split(","), function (g) { return g + ".dialog-overlay" }).join(" "),
        create: function (g) {
            if (this.instances.length === 0) { setTimeout(function () { a.ui.dialog.overlay.instances.length && a(document).bind(a.ui.dialog.overlay.events, function (b) { if (a(b.target).zIndex() < a.ui.dialog.overlay.maxZ) return false }) }, 1); a(document).bind("keydown.dialog-overlay", function (b) { if (g.options.closeOnEscape && !b.isDefaultPrevented() && b.keyCode && b.keyCode === a.ui.keyCode.ESCAPE) { g.close(b); b.preventDefault() } }); a(window).bind("resize.dialog-overlay", a.ui.dialog.overlay.resize) } var i = (this.oldInstances.pop() ||
a("<div></div>").addClass("ui-widget-overlay")).appendTo(document.body).css({ width: this.width(), height: this.height() }); a.fn.bgiframe && i.bgiframe(); this.instances.push(i); return i
        }, destroy: function (g) { var i = a.inArray(g, this.instances); i != -1 && this.oldInstances.push(this.instances.splice(i, 1)[0]); this.instances.length === 0 && a([document, window]).unbind(".dialog-overlay"); g.remove(); var b = 0; a.each(this.instances, function () { b = Math.max(b, this.css("z-index")) }); this.maxZ = b }, height: function () {
            var g, i; if (a.browser.msie &&
a.browser.version < 7) { g = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight); i = Math.max(document.documentElement.offsetHeight, document.body.offsetHeight); return g < i ? a(window).height() + "px" : g + "px" } else return a(document).height() + "px"
        }, width: function () {
            var g, i; if (a.browser.msie) { g = Math.max(document.documentElement.scrollWidth, document.body.scrollWidth); i = Math.max(document.documentElement.offsetWidth, document.body.offsetWidth); return g < i ? a(window).width() + "px" : g + "px" } else return a(document).width() +
"px"
        }, resize: function () { var g = a([]); a.each(a.ui.dialog.overlay.instances, function () { g = g.add(this) }); g.css({ width: 0, height: 0 }).css({ width: a.ui.dialog.overlay.width(), height: a.ui.dialog.overlay.height() }) } 
    }); a.extend(a.ui.dialog.overlay.prototype, { destroy: function () { a.ui.dialog.overlay.destroy(this.$el) } })
})(jQuery);
(function (a) {
    a.ui = a.ui || {}; var d = /left|center|right/, c = /top|center|bottom/, e = a.fn.position, h = a.fn.offset; a.fn.position = function (g) {
        if (!g || !g.of) return e.apply(this, arguments); g = a.extend({}, g); var i = a(g.of), b = i[0], f = (g.collision || "flip").split(" "), j = g.offset ? g.offset.split(" ") : [0, 0], l, o, n; if (b.nodeType === 9) { l = i.width(); o = i.height(); n = { top: 0, left: 0} } else if (b.setTimeout) { l = i.width(); o = i.height(); n = { top: i.scrollTop(), left: i.scrollLeft()} } else if (b.preventDefault) {
            g.at = "left top"; l = o = 0; n = { top: g.of.pageY,
                left: g.of.pageX
            }
        } else { l = i.outerWidth(); o = i.outerHeight(); n = i.offset() } a.each(["my", "at"], function () { var k = (g[this] || "").split(" "); if (k.length === 1) k = d.test(k[0]) ? k.concat(["center"]) : c.test(k[0]) ? ["center"].concat(k) : ["center", "center"]; k[0] = d.test(k[0]) ? k[0] : "center"; k[1] = c.test(k[1]) ? k[1] : "center"; g[this] = k }); if (f.length === 1) f[1] = f[0]; j[0] = parseInt(j[0], 10) || 0; if (j.length === 1) j[1] = j[0]; j[1] = parseInt(j[1], 10) || 0; if (g.at[0] === "right") n.left += l; else if (g.at[0] === "center") n.left += l / 2; if (g.at[1] === "bottom") n.top +=
o; else if (g.at[1] === "center") n.top += o / 2; n.left += j[0]; n.top += j[1]; return this.each(function () {
    var k = a(this), m = k.outerWidth(), p = k.outerHeight(), q = parseInt(a.curCSS(this, "marginLeft", true)) || 0, s = parseInt(a.curCSS(this, "marginTop", true)) || 0, r = m + q + (parseInt(a.curCSS(this, "marginRight", true)) || 0), u = p + s + (parseInt(a.curCSS(this, "marginBottom", true)) || 0), v = a.extend({}, n), w; if (g.my[0] === "right") v.left -= m; else if (g.my[0] === "center") v.left -= m / 2; if (g.my[1] === "bottom") v.top -= p; else if (g.my[1] === "center") v.top -=
p / 2; v.left = Math.round(v.left); v.top = Math.round(v.top); w = { left: v.left - q, top: v.top - s }; a.each(["left", "top"], function (x, y) { a.ui.position[f[x]] && a.ui.position[f[x]][y](v, { targetWidth: l, targetHeight: o, elemWidth: m, elemHeight: p, collisionPosition: w, collisionWidth: r, collisionHeight: u, offset: j, my: g.my, at: g.at }) }); a.fn.bgiframe && k.bgiframe(); k.offset(a.extend(v, { using: g.using }))
})
    }; a.ui.position = { fit: { left: function (g, i) {
        var b = a(window); b = i.collisionPosition.left + i.collisionWidth - b.width() - b.scrollLeft(); g.left =
b > 0 ? g.left - b : Math.max(g.left - i.collisionPosition.left, g.left)
    }, top: function (g, i) { var b = a(window); b = i.collisionPosition.top + i.collisionHeight - b.height() - b.scrollTop(); g.top = b > 0 ? g.top - b : Math.max(g.top - i.collisionPosition.top, g.top) } 
    }, flip: { left: function (g, i) {
        if (i.at[0] !== "center") {
            var b = a(window); b = i.collisionPosition.left + i.collisionWidth - b.width() - b.scrollLeft(); var f = i.my[0] === "left" ? -i.elemWidth : i.my[0] === "right" ? i.elemWidth : 0, j = i.at[0] === "left" ? i.targetWidth : -i.targetWidth, l = -2 * i.offset[0]; g.left +=
i.collisionPosition.left < 0 ? f + j + l : b > 0 ? f + j + l : 0
        } 
    }, top: function (g, i) { if (i.at[1] !== "center") { var b = a(window); b = i.collisionPosition.top + i.collisionHeight - b.height() - b.scrollTop(); var f = i.my[1] === "top" ? -i.elemHeight : i.my[1] === "bottom" ? i.elemHeight : 0, j = i.at[1] === "top" ? i.targetHeight : -i.targetHeight, l = -2 * i.offset[1]; g.top += i.collisionPosition.top < 0 ? f + j + l : b > 0 ? f + j + l : 0 } } 
    }
    }; if (!a.offset.setOffset) {
        a.offset.setOffset = function (g, i) {
            if (/static/.test(a.curCSS(g, "position"))) g.style.position = "relative"; var b = a(g),
f = b.offset(), j = parseInt(a.curCSS(g, "top", true), 10) || 0, l = parseInt(a.curCSS(g, "left", true), 10) || 0; f = { top: i.top - f.top + j, left: i.left - f.left + l }; "using" in i ? i.using.call(g, f) : b.css(f)
        }; a.fn.offset = function (g) { var i = this[0]; if (!i || !i.ownerDocument) return null; if (g) return this.each(function () { a.offset.setOffset(this, g) }); return h.call(this) } 
    } 
})(jQuery);
(function (a, d) {
    a.widget("ui.progressbar", { options: { value: 0, max: 100 }, min: 0, _create: function () { this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({ role: "progressbar", "aria-valuemin": this.min, "aria-valuemax": this.options.max, "aria-valuenow": this._value() }); this.valueDiv = a("<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>").appendTo(this.element); this.oldValue = this._value(); this._refreshValue() }, destroy: function () {
        this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow");
        this.valueDiv.remove(); a.Widget.prototype.destroy.apply(this, arguments)
    }, value: function (c) { if (c === d) return this._value(); this._setOption("value", c); return this }, _setOption: function (c, e) { if (c === "value") { this.options.value = e; this._refreshValue(); this._value() === this.options.max && this._trigger("complete") } a.Widget.prototype._setOption.apply(this, arguments) }, _value: function () { var c = this.options.value; if (typeof c !== "number") c = 0; return Math.min(this.options.max, Math.max(this.min, c)) }, _percentage: function () {
        return 100 *
this._value() / this.options.max
    }, _refreshValue: function () { var c = this.value(), e = this._percentage(); if (this.oldValue !== c) { this.oldValue = c; this._trigger("change") } this.valueDiv.toggle(c > this.min).toggleClass("ui-corner-right", c === this.options.max).width(e.toFixed(0) + "%"); this.element.attr("aria-valuenow", c) } 
    }); a.extend(a.ui.progressbar, { version: "1.8.16" })
})(jQuery);
(function (a) {
    a.widget("ui.slider", a.ui.mouse, { widgetEventPrefix: "slide", options: { animate: false, distance: 0, max: 100, min: 0, orientation: "horizontal", range: false, step: 1, value: 0, values: null }, _create: function () {
        var d = this, c = this.options, e = this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"), h = c.values && c.values.length || 1, g = []; this._mouseSliding = this._keySliding = false; this._animateOff = true; this._handleIndex = null; this._detectOrientation(); this._mouseInit(); this.element.addClass("ui-slider ui-slider-" +
this.orientation + " ui-widget ui-widget-content ui-corner-all" + (c.disabled ? " ui-slider-disabled ui-disabled" : "")); this.range = a([]); if (c.range) { if (c.range === true) { if (!c.values) c.values = [this._valueMin(), this._valueMin()]; if (c.values.length && c.values.length !== 2) c.values = [c.values[0], c.values[0]] } this.range = a("<div></div>").appendTo(this.element).addClass("ui-slider-range ui-widget-header" + (c.range === "min" || c.range === "max" ? " ui-slider-range-" + c.range : "")) } for (var i = e.length; i < h; i += 1) g.push("<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>");
        this.handles = e.add(a(g.join("")).appendTo(d.element)); this.handle = this.handles.eq(0); this.handles.add(this.range).filter("a").click(function (b) { b.preventDefault() }).hover(function () { c.disabled || a(this).addClass("ui-state-hover") }, function () { a(this).removeClass("ui-state-hover") }).focus(function () { if (c.disabled) a(this).blur(); else { a(".ui-slider .ui-state-focus").removeClass("ui-state-focus"); a(this).addClass("ui-state-focus") } }).blur(function () { a(this).removeClass("ui-state-focus") }); this.handles.each(function (b) {
            a(this).data("index.ui-slider-handle",
b)
        }); this.handles.keydown(function (b) {
            var f = true, j = a(this).data("index.ui-slider-handle"), l, o, n; if (!d.options.disabled) {
                switch (b.keyCode) { case a.ui.keyCode.HOME: case a.ui.keyCode.END: case a.ui.keyCode.PAGE_UP: case a.ui.keyCode.PAGE_DOWN: case a.ui.keyCode.UP: case a.ui.keyCode.RIGHT: case a.ui.keyCode.DOWN: case a.ui.keyCode.LEFT: f = false; if (!d._keySliding) { d._keySliding = true; a(this).addClass("ui-state-active"); l = d._start(b, j); if (l === false) return } break } n = d.options.step; l = d.options.values && d.options.values.length ?
(o = d.values(j)) : (o = d.value()); switch (b.keyCode) {
                    case a.ui.keyCode.HOME: o = d._valueMin(); break; case a.ui.keyCode.END: o = d._valueMax(); break; case a.ui.keyCode.PAGE_UP: o = d._trimAlignValue(l + (d._valueMax() - d._valueMin()) / 5); break; case a.ui.keyCode.PAGE_DOWN: o = d._trimAlignValue(l - (d._valueMax() - d._valueMin()) / 5); break; case a.ui.keyCode.UP: case a.ui.keyCode.RIGHT: if (l === d._valueMax()) return; o = d._trimAlignValue(l + n); break; case a.ui.keyCode.DOWN: case a.ui.keyCode.LEFT: if (l === d._valueMin()) return; o = d._trimAlignValue(l -
n); break
                } d._slide(b, j, o); return f
            } 
        }).keyup(function (b) { var f = a(this).data("index.ui-slider-handle"); if (d._keySliding) { d._keySliding = false; d._stop(b, f); d._change(b, f); a(this).removeClass("ui-state-active") } }); this._refreshValue(); this._animateOff = false
    }, destroy: function () {
        this.handles.remove(); this.range.remove(); this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider"); this._mouseDestroy();
        return this
    }, _mouseCapture: function (d) {
        var c = this.options, e, h, g, i, b; if (c.disabled) return false; this.elementSize = { width: this.element.outerWidth(), height: this.element.outerHeight() }; this.elementOffset = this.element.offset(); e = this._normValueFromMouse({ x: d.pageX, y: d.pageY }); h = this._valueMax() - this._valueMin() + 1; i = this; this.handles.each(function (f) { var j = Math.abs(e - i.values(f)); if (h > j) { h = j; g = a(this); b = f } }); if (c.range === true && this.values(1) === c.min) { b += 1; g = a(this.handles[b]) } if (this._start(d, b) === false) return false;
        this._mouseSliding = true; i._handleIndex = b; g.addClass("ui-state-active").focus(); c = g.offset(); this._clickOffset = !a(d.target).parents().andSelf().is(".ui-slider-handle") ? { left: 0, top: 0} : { left: d.pageX - c.left - g.width() / 2, top: d.pageY - c.top - g.height() / 2 - (parseInt(g.css("borderTopWidth"), 10) || 0) - (parseInt(g.css("borderBottomWidth"), 10) || 0) + (parseInt(g.css("marginTop"), 10) || 0) }; this.handles.hasClass("ui-state-hover") || this._slide(d, b, e); return this._animateOff = true
    }, _mouseStart: function () { return true }, _mouseDrag: function (d) {
        var c =
this._normValueFromMouse({ x: d.pageX, y: d.pageY }); this._slide(d, this._handleIndex, c); return false
    }, _mouseStop: function (d) { this.handles.removeClass("ui-state-active"); this._mouseSliding = false; this._stop(d, this._handleIndex); this._change(d, this._handleIndex); this._clickOffset = this._handleIndex = null; return this._animateOff = false }, _detectOrientation: function () { this.orientation = this.options.orientation === "vertical" ? "vertical" : "horizontal" }, _normValueFromMouse: function (d) {
        var c; if (this.orientation === "horizontal") {
            c =
this.elementSize.width; d = d.x - this.elementOffset.left - (this._clickOffset ? this._clickOffset.left : 0)
        } else { c = this.elementSize.height; d = d.y - this.elementOffset.top - (this._clickOffset ? this._clickOffset.top : 0) } c = d / c; if (c > 1) c = 1; if (c < 0) c = 0; if (this.orientation === "vertical") c = 1 - c; d = this._valueMax() - this._valueMin(); return this._trimAlignValue(this._valueMin() + c * d)
    }, _start: function (d, c) {
        var e = { handle: this.handles[c], value: this.value() }; if (this.options.values && this.options.values.length) {
            e.value = this.values(c);
            e.values = this.values()
        } return this._trigger("start", d, e)
    }, _slide: function (d, c, e) {
        var h; if (this.options.values && this.options.values.length) { h = this.values(c ? 0 : 1); if (this.options.values.length === 2 && this.options.range === true && (c === 0 && e > h || c === 1 && e < h)) e = h; if (e !== this.values(c)) { h = this.values(); h[c] = e; d = this._trigger("slide", d, { handle: this.handles[c], value: e, values: h }); this.values(c ? 0 : 1); d !== false && this.values(c, e, true) } } else if (e !== this.value()) {
            d = this._trigger("slide", d, { handle: this.handles[c], value: e });
            d !== false && this.value(e)
        } 
    }, _stop: function (d, c) { var e = { handle: this.handles[c], value: this.value() }; if (this.options.values && this.options.values.length) { e.value = this.values(c); e.values = this.values() } this._trigger("stop", d, e) }, _change: function (d, c) { if (!this._keySliding && !this._mouseSliding) { var e = { handle: this.handles[c], value: this.value() }; if (this.options.values && this.options.values.length) { e.value = this.values(c); e.values = this.values() } this._trigger("change", d, e) } }, value: function (d) {
        if (arguments.length) {
            this.options.value =
this._trimAlignValue(d); this._refreshValue(); this._change(null, 0)
        } else return this._value()
    }, values: function (d, c) {
        var e, h, g; if (arguments.length > 1) { this.options.values[d] = this._trimAlignValue(c); this._refreshValue(); this._change(null, d) } else if (arguments.length) if (a.isArray(arguments[0])) { e = this.options.values; h = arguments[0]; for (g = 0; g < e.length; g += 1) { e[g] = this._trimAlignValue(h[g]); this._change(null, g) } this._refreshValue() } else return this.options.values && this.options.values.length ? this._values(d) :
this.value(); else return this._values()
    }, _setOption: function (d, c) {
        var e, h = 0; if (a.isArray(this.options.values)) h = this.options.values.length; a.Widget.prototype._setOption.apply(this, arguments); switch (d) {
            case "disabled": if (c) { this.handles.filter(".ui-state-focus").blur(); this.handles.removeClass("ui-state-hover"); this.handles.propAttr("disabled", true); this.element.addClass("ui-disabled") } else { this.handles.propAttr("disabled", false); this.element.removeClass("ui-disabled") } break; case "orientation": this._detectOrientation();
                this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-" + this.orientation); this._refreshValue(); break; case "value": this._animateOff = true; this._refreshValue(); this._change(null, 0); this._animateOff = false; break; case "values": this._animateOff = true; this._refreshValue(); for (e = 0; e < h; e += 1) this._change(null, e); this._animateOff = false; break
        } 
    }, _value: function () { var d = this.options.value; return d = this._trimAlignValue(d) }, _values: function (d) {
        var c, e; if (arguments.length) {
            c = this.options.values[d];
            return c = this._trimAlignValue(c)
        } else { c = this.options.values.slice(); for (e = 0; e < c.length; e += 1) c[e] = this._trimAlignValue(c[e]); return c } 
    }, _trimAlignValue: function (d) { if (d <= this._valueMin()) return this._valueMin(); if (d >= this._valueMax()) return this._valueMax(); var c = this.options.step > 0 ? this.options.step : 1, e = (d - this._valueMin()) % c; d = d - e; if (Math.abs(e) * 2 >= c) d += e > 0 ? c : -c; return parseFloat(d.toFixed(5)) }, _valueMin: function () { return this.options.min }, _valueMax: function () { return this.options.max }, _refreshValue: function () {
        var d =
this.options.range, c = this.options, e = this, h = !this._animateOff ? c.animate : false, g, i = {}, b, f, j, l; if (this.options.values && this.options.values.length) this.handles.each(function (o) {
    g = (e.values(o) - e._valueMin()) / (e._valueMax() - e._valueMin()) * 100; i[e.orientation === "horizontal" ? "left" : "bottom"] = g + "%"; a(this).stop(1, 1)[h ? "animate" : "css"](i, c.animate); if (e.options.range === true) if (e.orientation === "horizontal") {
        if (o === 0) e.range.stop(1, 1)[h ? "animate" : "css"]({ left: g + "%" }, c.animate); if (o === 1) e.range[h ? "animate" : "css"]({ width: g -
b + "%"
        }, { queue: false, duration: c.animate })
    } else { if (o === 0) e.range.stop(1, 1)[h ? "animate" : "css"]({ bottom: g + "%" }, c.animate); if (o === 1) e.range[h ? "animate" : "css"]({ height: g - b + "%" }, { queue: false, duration: c.animate }) } b = g
}); else {
            f = this.value(); j = this._valueMin(); l = this._valueMax(); g = l !== j ? (f - j) / (l - j) * 100 : 0; i[e.orientation === "horizontal" ? "left" : "bottom"] = g + "%"; this.handle.stop(1, 1)[h ? "animate" : "css"](i, c.animate); if (d === "min" && this.orientation === "horizontal") this.range.stop(1, 1)[h ? "animate" : "css"]({ width: g + "%" },
c.animate); if (d === "max" && this.orientation === "horizontal") this.range[h ? "animate" : "css"]({ width: 100 - g + "%" }, { queue: false, duration: c.animate }); if (d === "min" && this.orientation === "vertical") this.range.stop(1, 1)[h ? "animate" : "css"]({ height: g + "%" }, c.animate); if (d === "max" && this.orientation === "vertical") this.range[h ? "animate" : "css"]({ height: 100 - g + "%" }, { queue: false, duration: c.animate })
        } 
    } 
    }); a.extend(a.ui.slider, { version: "1.8.16" })
})(jQuery);
(function (a, d) {
    function c() { return ++h } function e() { return ++g } var h = 0, g = 0; a.widget("ui.tabs", { options: { add: null, ajaxOptions: null, cache: false, cookie: null, collapsible: false, disable: null, disabled: [], enable: null, event: "click", fx: null, idPrefix: "ui-tabs-", load: null, panelTemplate: "<div></div>", remove: null, select: null, show: null, spinner: "<em>Loading&#8230;</em>", tabTemplate: "<li><a href='#{href}'><span>#{label}</span></a></li>" }, _create: function () { this._tabify(true) }, _setOption: function (i, b) {
        if (i == "selected") this.options.collapsible &&
b == this.options.selected || this.select(b); else { this.options[i] = b; this._tabify() } 
    }, _tabId: function (i) { return i.title && i.title.replace(/\s/g, "_").replace(/[^\w\u00c0-\uFFFF-]/g, "") || this.options.idPrefix + c() }, _sanitizeSelector: function (i) { return i.replace(/:/g, "\\:") }, _cookie: function () { var i = this.cookie || (this.cookie = this.options.cookie.name || "ui-tabs-" + e()); return a.cookie.apply(null, [i].concat(a.makeArray(arguments))) }, _ui: function (i, b) { return { tab: i, panel: b, index: this.anchors.index(i)} }, _cleanup: function () {
        this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function () {
            var i =
a(this); i.html(i.data("label.tabs")).removeData("label.tabs")
        })
    }, _tabify: function (i) {
        function b(r, u) { r.css("display", ""); !a.support.opacity && u.opacity && r[0].style.removeAttribute("filter") } var f = this, j = this.options, l = /^#.+/; this.list = this.element.find("ol,ul").eq(0); this.lis = a(" > li:has(a[href])", this.list); this.anchors = this.lis.map(function () { return a("a", this)[0] }); this.panels = a([]); this.anchors.each(function (r, u) {
            var v = a(u).attr("href"), w = v.split("#")[0], x; if (w && (w === location.toString().split("#")[0] ||
(x = a("base")[0]) && w === x.href)) { v = u.hash; u.href = v } if (l.test(v)) f.panels = f.panels.add(f.element.find(f._sanitizeSelector(v))); else if (v && v !== "#") { a.data(u, "href.tabs", v); a.data(u, "load.tabs", v.replace(/#.*$/, "")); v = f._tabId(u); u.href = "#" + v; u = f.element.find("#" + v); if (!u.length) { u = a(j.panelTemplate).attr("id", v).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(f.panels[r - 1] || f.list); u.data("destroy.tabs", true) } f.panels = f.panels.add(u) } else j.disabled.push(r)
        }); if (i) {
            this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all");
            this.list.addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all"); this.lis.addClass("ui-state-default ui-corner-top"); this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom"); if (j.selected === d) {
                location.hash && this.anchors.each(function (r, u) { if (u.hash == location.hash) { j.selected = r; return false } }); if (typeof j.selected !== "number" && j.cookie) j.selected = parseInt(f._cookie(), 10); if (typeof j.selected !== "number" && this.lis.filter(".ui-tabs-selected").length) j.selected =
this.lis.index(this.lis.filter(".ui-tabs-selected")); j.selected = j.selected || (this.lis.length ? 0 : -1)
            } else if (j.selected === null) j.selected = -1; j.selected = j.selected >= 0 && this.anchors[j.selected] || j.selected < 0 ? j.selected : 0; j.disabled = a.unique(j.disabled.concat(a.map(this.lis.filter(".ui-state-disabled"), function (r) { return f.lis.index(r) }))).sort(); a.inArray(j.selected, j.disabled) != -1 && j.disabled.splice(a.inArray(j.selected, j.disabled), 1); this.panels.addClass("ui-tabs-hide"); this.lis.removeClass("ui-tabs-selected ui-state-active");
            if (j.selected >= 0 && this.anchors.length) { f.element.find(f._sanitizeSelector(f.anchors[j.selected].hash)).removeClass("ui-tabs-hide"); this.lis.eq(j.selected).addClass("ui-tabs-selected ui-state-active"); f.element.queue("tabs", function () { f._trigger("show", null, f._ui(f.anchors[j.selected], f.element.find(f._sanitizeSelector(f.anchors[j.selected].hash))[0])) }); this.load(j.selected) } a(window).bind("unload", function () { f.lis.add(f.anchors).unbind(".tabs"); f.lis = f.anchors = f.panels = null })
        } else j.selected = this.lis.index(this.lis.filter(".ui-tabs-selected"));
        this.element[j.collapsible ? "addClass" : "removeClass"]("ui-tabs-collapsible"); j.cookie && this._cookie(j.selected, j.cookie); i = 0; for (var o; o = this.lis[i]; i++) a(o)[a.inArray(i, j.disabled) != -1 && !a(o).hasClass("ui-tabs-selected") ? "addClass" : "removeClass"]("ui-state-disabled"); j.cache === false && this.anchors.removeData("cache.tabs"); this.lis.add(this.anchors).unbind(".tabs"); if (j.event !== "mouseover") {
            var n = function (r, u) { u.is(":not(.ui-state-disabled)") && u.addClass("ui-state-" + r) }, k = function (r, u) {
                u.removeClass("ui-state-" +
r)
            }; this.lis.bind("mouseover.tabs", function () { n("hover", a(this)) }); this.lis.bind("mouseout.tabs", function () { k("hover", a(this)) }); this.anchors.bind("focus.tabs", function () { n("focus", a(this).closest("li")) }); this.anchors.bind("blur.tabs", function () { k("focus", a(this).closest("li")) })
        } var m, p; if (j.fx) if (a.isArray(j.fx)) { m = j.fx[0]; p = j.fx[1] } else m = p = j.fx; var q = p ? function (r, u) {
            a(r).closest("li").addClass("ui-tabs-selected ui-state-active"); u.hide().removeClass("ui-tabs-hide").animate(p, p.duration || "normal",
function () { b(u, p); f._trigger("show", null, f._ui(r, u[0])) })
        } : function (r, u) { a(r).closest("li").addClass("ui-tabs-selected ui-state-active"); u.removeClass("ui-tabs-hide"); f._trigger("show", null, f._ui(r, u[0])) }, s = m ? function (r, u) { u.animate(m, m.duration || "normal", function () { f.lis.removeClass("ui-tabs-selected ui-state-active"); u.addClass("ui-tabs-hide"); b(u, m); f.element.dequeue("tabs") }) } : function (r, u) { f.lis.removeClass("ui-tabs-selected ui-state-active"); u.addClass("ui-tabs-hide"); f.element.dequeue("tabs") };
        this.anchors.bind(j.event + ".tabs", function () {
            var r = this, u = a(r).closest("li"), v = f.panels.filter(":not(.ui-tabs-hide)"), w = f.element.find(f._sanitizeSelector(r.hash)); if (u.hasClass("ui-tabs-selected") && !j.collapsible || u.hasClass("ui-state-disabled") || u.hasClass("ui-state-processing") || f.panels.filter(":animated").length || f._trigger("select", null, f._ui(this, w[0])) === false) { this.blur(); return false } j.selected = f.anchors.index(this); f.abort(); if (j.collapsible) if (u.hasClass("ui-tabs-selected")) {
                j.selected =
-1; j.cookie && f._cookie(j.selected, j.cookie); f.element.queue("tabs", function () { s(r, v) }).dequeue("tabs"); this.blur(); return false
            } else if (!v.length) { j.cookie && f._cookie(j.selected, j.cookie); f.element.queue("tabs", function () { q(r, w) }); f.load(f.anchors.index(this)); this.blur(); return false } j.cookie && f._cookie(j.selected, j.cookie); if (w.length) { v.length && f.element.queue("tabs", function () { s(r, v) }); f.element.queue("tabs", function () { q(r, w) }); f.load(f.anchors.index(this)) } else throw "jQuery UI Tabs: Mismatching fragment identifier.";
            a.browser.msie && this.blur()
        }); this.anchors.bind("click.tabs", function () { return false })
    }, _getIndex: function (i) { if (typeof i == "string") i = this.anchors.index(this.anchors.filter("[href$=" + i + "]")); return i }, destroy: function () {
        var i = this.options; this.abort(); this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs"); this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all"); this.anchors.each(function () {
            var b =
a.data(this, "href.tabs"); if (b) this.href = b; var f = a(this).unbind(".tabs"); a.each(["href", "load", "cache"], function (j, l) { f.removeData(l + ".tabs") })
        }); this.lis.unbind(".tabs").add(this.panels).each(function () { a.data(this, "destroy.tabs") ? a(this).remove() : a(this).removeClass("ui-state-default ui-corner-top ui-tabs-selected ui-state-active ui-state-hover ui-state-focus ui-state-disabled ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide") }); i.cookie && this._cookie(null, i.cookie); return this
    }, add: function (i,
b, f) {
        if (f === d) f = this.anchors.length; var j = this, l = this.options; b = a(l.tabTemplate.replace(/#\{href\}/g, i).replace(/#\{label\}/g, b)); i = !i.indexOf("#") ? i.replace("#", "") : this._tabId(a("a", b)[0]); b.addClass("ui-state-default ui-corner-top").data("destroy.tabs", true); var o = j.element.find("#" + i); o.length || (o = a(l.panelTemplate).attr("id", i).data("destroy.tabs", true)); o.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide"); if (f >= this.lis.length) { b.appendTo(this.list); o.appendTo(this.list[0].parentNode) } else {
            b.insertBefore(this.lis[f]);
            o.insertBefore(this.panels[f])
        } l.disabled = a.map(l.disabled, function (n) { return n >= f ? ++n : n }); this._tabify(); if (this.anchors.length == 1) { l.selected = 0; b.addClass("ui-tabs-selected ui-state-active"); o.removeClass("ui-tabs-hide"); this.element.queue("tabs", function () { j._trigger("show", null, j._ui(j.anchors[0], j.panels[0])) }); this.load(0) } this._trigger("add", null, this._ui(this.anchors[f], this.panels[f])); return this
    }, remove: function (i) {
        i = this._getIndex(i); var b = this.options, f = this.lis.eq(i).remove(), j = this.panels.eq(i).remove();
        if (f.hasClass("ui-tabs-selected") && this.anchors.length > 1) this.select(i + (i + 1 < this.anchors.length ? 1 : -1)); b.disabled = a.map(a.grep(b.disabled, function (l) { return l != i }), function (l) { return l >= i ? --l : l }); this._tabify(); this._trigger("remove", null, this._ui(f.find("a")[0], j[0])); return this
    }, enable: function (i) {
        i = this._getIndex(i); var b = this.options; if (a.inArray(i, b.disabled) != -1) {
            this.lis.eq(i).removeClass("ui-state-disabled"); b.disabled = a.grep(b.disabled, function (f) { return f != i }); this._trigger("enable", null,
this._ui(this.anchors[i], this.panels[i])); return this
        } 
    }, disable: function (i) { i = this._getIndex(i); var b = this.options; if (i != b.selected) { this.lis.eq(i).addClass("ui-state-disabled"); b.disabled.push(i); b.disabled.sort(); this._trigger("disable", null, this._ui(this.anchors[i], this.panels[i])) } return this }, select: function (i) { i = this._getIndex(i); if (i == -1) if (this.options.collapsible && this.options.selected != -1) i = this.options.selected; else return this; this.anchors.eq(i).trigger(this.options.event + ".tabs"); return this },
        load: function (i) {
            i = this._getIndex(i); var b = this, f = this.options, j = this.anchors.eq(i)[0], l = a.data(j, "load.tabs"); this.abort(); if (!l || this.element.queue("tabs").length !== 0 && a.data(j, "cache.tabs")) this.element.dequeue("tabs"); else {
                this.lis.eq(i).addClass("ui-state-processing"); if (f.spinner) { var o = a("span", j); o.data("label.tabs", o.html()).html(f.spinner) } this.xhr = a.ajax(a.extend({}, f.ajaxOptions, { url: l, success: function (n, k) {
                    b.element.find(b._sanitizeSelector(j.hash)).html(n); b._cleanup(); f.cache && a.data(j,
"cache.tabs", true); b._trigger("load", null, b._ui(b.anchors[i], b.panels[i])); try { f.ajaxOptions.success(n, k) } catch (m) { } 
                }, error: function (n, k) { b._cleanup(); b._trigger("load", null, b._ui(b.anchors[i], b.panels[i])); try { f.ajaxOptions.error(n, k, i, j) } catch (m) { } } 
                })); b.element.dequeue("tabs"); return this
            } 
        }, abort: function () { this.element.queue([]); this.panels.stop(false, true); this.element.queue("tabs", this.element.queue("tabs").splice(-2, 2)); if (this.xhr) { this.xhr.abort(); delete this.xhr } this._cleanup(); return this },
        url: function (i, b) { this.anchors.eq(i).removeData("cache.tabs").data("load.tabs", b); return this }, length: function () { return this.anchors.length } 
    }); a.extend(a.ui.tabs, { version: "1.8.16" }); a.extend(a.ui.tabs.prototype, { rotation: null, rotate: function (i, b) {
        var f = this, j = this.options, l = f._rotate || (f._rotate = function (o) { clearTimeout(f.rotation); f.rotation = setTimeout(function () { var n = j.selected; f.select(++n < f.anchors.length ? n : 0) }, i); o && o.stopPropagation() }); b = f._unrotate || (f._unrotate = !b ? function (o) {
            o.clientX &&
f.rotate(null)
        } : function () { t = j.selected; l() }); if (i) { this.element.bind("tabsshow", l); this.anchors.bind(j.event + ".tabs", b); l() } else { clearTimeout(f.rotation); this.element.unbind("tabsshow", l); this.anchors.unbind(j.event + ".tabs", b); delete this._rotate; delete this._unrotate } return this
    } 
    })
})(jQuery);
