You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by mc...@apache.org on 2014/12/16 18:37:16 UTC

[30/50] [abbrv] incubator-nifi git commit: NIFI-27: - Starting to upgrade jQuery and jQuery UI.

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/71e53ae5/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/jquery-1.7.min.js
----------------------------------------------------------------------
diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/jquery-1.7.min.js b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/jquery-1.7.min.js
deleted file mode 100755
index af79a71..0000000
--- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/jquery-1.7.min.js
+++ /dev/null
@@ -1,2934 +0,0 @@
-/*! jQuery v1.7 jquery.com | jquery.org/license */
-(function (a, b) {
-    function cA(a) {
-        return f.isWindow(a) ? a : a.nodeType === 9 ? a.defaultView || a.parentWindow : !1
-    }
-    function cx(a) {
-        if (!cm[a]) {
-            var b = c.body, d = f("<" + a + ">").appendTo(b), e = d.css("display");
-            d.remove();
-            if (e === "none" || e === "") {
-                cn || (cn = c.createElement("iframe"), cn.frameBorder = cn.width = cn.height = 0), b.appendChild(cn);
-                if (!co || !cn.createElement)
-                    co = (cn.contentWindow || cn.contentDocument).document, co.write((c.compatMode === "CSS1Compat" ? "<!doctype html>" : "") + "<html><body>"), co.close();
-                d = co.createElement(a), co.body.appendChild(d), e = f.css(d, "display"), b.removeChild(cn)
-            }
-            cm[a] = e
-        }
-        return cm[a]
-    }
-    function cw(a, b) {
-        var c = {};
-        f.each(cs.concat.apply([], cs.slice(0, b)), function () {
-            c[this] = a
-        });
-        return c
-    }
-    function cv() {
-        ct = b
-    }
-    function cu() {
-        setTimeout(cv, 0);
-        return ct = f.now()
-    }
-    function cl() {
-        try {
-            return new a.ActiveXObject("Microsoft.XMLHTTP")
-        } catch (b) {
-        }
-    }
-    function ck() {
-        try {
-            return new a.XMLHttpRequest
-        } catch (b) {
-        }
-    }
-    function ce(a, c) {
-        a.dataFilter && (c = a.dataFilter(c, a.dataType));
-        var d = a.dataTypes, e = {}, g, h, i = d.length, j, k = d[0], l, m, n, o, p;
-        for (g = 1; g < i; g++) {
-            if (g === 1)
-                for (h in a.converters)
-                    typeof h == "string" && (e[h.toLowerCase()] = a.converters[h]);
-            l = k, k = d[g];
-            if (k === "*")
-                k = l;
-            else if (l !== "*" && l !== k) {
-                m = l + " " + k, n = e[m] || e["* " + k];
-                if (!n) {
-                    p = b;
-                    for (o in e) {
-                        j = o.split(" ");
-                        if (j[0] === l || j[0] === "*") {
-                            p = e[j[1] + " " + k];
-                            if (p) {
-                                o = e[o], o === !0 ? n = p : p === !0 && (n = o);
-                                break
-                            }
-                        }
-                    }
-                }
-                !n && !p && f.error("No conversion from " + m.replace(" ", " to ")), n !== !0 && (c = n ? n(c) : p(o(c)))
-            }
-        }
-        return c
-    }
-    function cd(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 cc(a, b, c, d) {
-        if (f.isArray(b))
-            f.each(b, function (b, e) {
-                c || bG.test(a) ? d(a, e) : cc(a + "[" + (typeof e == "object" || f.isArray(e) ? b : "") + "]", e, c, d)
-            });
-        else if (!c && b != null && typeof b == "object")
-            for (var e in b)
-                cc(a + "[" + e + "]", b[e], c, d);
-        else
-            d(a, b)
-    }
-    function cb(a, c) {
-        var d, e, g = f.ajaxSettings.flatOptions || {};
-        for (d in c)
-            c[d] !== b && ((g[d] ? a : e || (e = {}))[d] = c[d]);
-        e && f.extend(!0, a, e)
-    }
-    function ca(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 === bV, 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 = ca(a, c, d, e, l, g)));
-        (k || !l) && !g["*"] && (l = ca(a, c, d, e, "*", g));
-        return l
-    }
-    function b_(a) {
-        return function (b, c) {
-            typeof b != "string" && (c = b, b = "*");
-            if (f.isFunction(c)) {
-                var d = b.toLowerCase().split(bR), e = 0, g = d.length, h, i, j;
-                for (; e < g; e++)
-                    h = d[e], j = /^\+/.test(h), j && (h = h.substr(1) || "*"), i = a[h] = a[h] || [], i[j ? "unshift" : "push"](c)
-            }
-        }
-    }
-    function bE(a, b, c) {
-        var d = b === "width" ? a.offsetWidth : a.offsetHeight, e = b === "width" ? bz : bA;
-        if (d > 0) {
-            c !== "border" && f.each(e, function () {
-                c || (d -= parseFloat(f.css(a, "padding" + this)) || 0), c === "margin" ? d += parseFloat(f.css(a, c + this)) || 0 : d -= parseFloat(f.css(a, "border" + this + "Width")) || 0
-            });
-            return d + "px"
-        }
-        d = bB(a, b, b);
-        if (d < 0 || d == null)
-            d = a.style[b] || 0;
-        d = parseFloat(d) || 0, c && f.each(e, function () {
-            d += parseFloat(f.css(a, "padding" + this)) || 0, c !== "padding" && (d += parseFloat(f.css(a, "border" + this + "Width")) || 0), c === "margin" && (d += parseFloat(f.css(a, c + this)) || 0)
-        });
-        return d + "px"
-    }
-    function br(a, b) {
-        b.src ? f.ajax({url: b.src, async: !1, dataType: "script"}) : f.globalEval((b.text || b.textContent || b.innerHTML || "").replace(bi, "/*$0*/")), b.parentNode && b.parentNode.removeChild(b)
-    }
-    function bq(a) {
-        var b = (a.nodeName || "").toLowerCase();
-        b === "input" ? bp(a) : b !== "script" && typeof a.getElementsByTagName != "undefined" && f.grep(a.getElementsByTagName("input"), bp)
-    }
-    function bp(a) {
-        if (a.type === "checkbox" || a.type === "radio")
-            a.defaultChecked = a.checked
-    }
-    function bo(a) {
-        return typeof a.getElementsByTagName != "undefined" ? a.getElementsByTagName("*") : typeof a.querySelectorAll != "undefined" ? a.querySelectorAll("*") : []
-    }
-    function bn(a, b) {
-        var c;
-        if (b.nodeType === 1) {
-            b.clearAttributes && b.clearAttributes(), b.mergeAttributes && b.mergeAttributes(a), c = b.nodeName.toLowerCase();
-            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(f.expando)
-        }
-    }
-    function bm(a, b) {
-        if (b.nodeType === 1 && !!f.hasData(a)) {
-            var c, d, e, g = f._data(a), h = f._data(b, g), i = g.events;
-            if (i) {
-                delete h.handle, h.events = {};
-                for (c in i)
-                    for (d = 0, e = i[c].length; d < e; d++)
-                        f.event.add(b, c + (i[c][d].namespace ? "." : "") + i[c][d].namespace, i[c][d], i[c][d].data)
-            }
-            h.data && (h.data = f.extend({}, h.data))
-        }
-    }
-    function bl(a, b) {
-        return f.nodeName(a, "table") ? a.getElementsByTagName("tbody")[0] || a.appendChild(a.ownerDocument.createElement("tbody")) : a
-    }
-    function X(a) {
-        var b = Y.split(" "), c = a.createDocumentFragment();
-        if (c.createElement)
-            while (b.length)
-                c.createElement(b.pop());
-        return c
-    }
-    function W(a, b, c) {
-        b = b || 0;
-        if (f.isFunction(b))
-            return f.grep(a, function (a, d) {
-                var e = !!b.call(a, d, a);
-                return e === c
-            });
-        if (b.nodeType)
-            return f.grep(a, function (a, d) {
-                return a === b === c
-            });
-        if (typeof b == "string") {
-            var d = f.grep(a, function (a) {
-                return a.nodeType === 1
-            });
-            if (R.test(b))
-                return f.filter(b, d, !c);
-            b = f.filter(b, d)
-        }
-        return f.grep(a, function (a, d) {
-            return f.inArray(a, b) >= 0 === c
-        })
-    }
-    function V(a) {
-        return!a || !a.parentNode || a.parentNode.nodeType === 11
-    }
-    function N() {
-        return!0
-    }
-    function M() {
-        return!1
-    }
-    function n(a, b, c) {
-        var d = b + "defer", e = b + "queue", g = b + "mark", h = f._data(a, d);
-        h && (c === "queue" || !f._data(a, e)) && (c === "mark" || !f._data(a, g)) && setTimeout(function () {
-            !f._data(a, e) && !f._data(a, g) && (f.removeData(a, d, !0), h.fire())
-        }, 0)
-    }
-    function m(a) {
-        for (var b in a) {
-            if (b === "data" && f.isEmptyObject(a[b]))
-                continue;
-            if (b !== "toJSON")
-                return!1
-        }
-        return!0
-    }
-    function l(a, c, d) {
-        if (d === b && a.nodeType === 1) {
-            var e = "data-" + c.replace(k, "-$1").toLowerCase();
-            d = a.getAttribute(e);
-            if (typeof d == "string") {
-                try {
-                    d = d === "true" ? !0 : d === "false" ? !1 : d === "null" ? null : f.isNumeric(d) ? parseFloat(d) : j.test(d) ? f.parseJSON(d) : d
-                } catch (g) {
-                }
-                f.data(a, c, d)
-            } else
-                d = b
-        }
-        return d
-    }
-    function h(a) {
-        var b = g[a] = {}, c, d;
-        a = a.split(/\s+/);
-        for (c = 0, d = a.length; c < d; c++)
-            b[a[c]] = !0;
-        return b
-    }
-    var c = a.document, d = a.navigator, e = a.location, f = function () {
-        function K() {
-            if (!e.isReady) {
-                try {
-                    c.documentElement.doScroll("left")
-                } catch (a) {
-                    setTimeout(K, 1);
-                    return
-                }
-                e.ready()
-            }
-        }
-        var e = function (a, b) {
-            return new e.fn.init(a, b, h)
-        }, f = a.jQuery, g = a.$, h, i = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/, j = /\S/, k = /^\s+/, l = /\s+$/, m = /\d/, n = /^<(\w+)\s*\/?>(?:<\/\1>)?$/, o = /^[\],:{}\s]*$/, p = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, q = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, r = /(?:^|:|,)(?:\s*\[)+/g, s = /(webkit)[ \/]([\w.]+)/, t = /(opera)(?:.*version)?[ \/]([\w.]+)/, u = /(msie) ([\w.]+)/, v = /(mozilla)(?:.*? rv:([\w.]+))?/, w = /-([a-z]|[0-9])/ig, x = /^-ms-/, y = function (a, b) {
-            return(b + "").toUpperCase()
-        }, z = d.userAgent, A, B, C, D = Object.prototype.toString, E = Object.prototype.hasOwnProperty, F = Array.prototype.push, G = Array.prototype.slice, H = String.prototype.trim, I = Array.prototype.indexOf, J = {};
-        e.fn = e.prototype = {constructor: e, init: function (a, d, f) {
-                var g, h, j, k;
-                if (!a)
-                    return this;
-                if (a.nodeType) {
-                    this.context = this[0] = a, this.length = 1;
-                    return this
-                }
-                if (a === "body" && !d && c.body) {
-                    this.context = c, this[0] = c.body, this.selector = a, this.length = 1;
-                    return this
-                }
-                if (typeof a == "string") {
-                    a.charAt(0) !== "<" || a.charAt(a.length - 1) !== ">" || a.length < 3 ? g = i.exec(a) : g = [null, a, null];
-                    if (g && (g[1] || !d)) {
-                        if (g[1]) {
-                            d = d instanceof e ? d[0] : d, k = d ? d.ownerDocument || d : c, j = n.exec(a), j ? e.isPlainObject(d) ? (a = [c.createElement(j[1])], e.fn.attr.call(a, d, !0)) : a = [k.createElement(j[1])] : (j = e.buildFragment([g[1]], [k]), a = (j.cacheable ? e.clone(j.fragment) : j.fragment).childNodes);
-                            return e.merge(this, a)
-                        }
-                        h = c.getElementById(g[2]);
-                        if (h && h.parentNode) {
-                            if (h.id !== g[2])
-                                return f.find(a);
-                            this.length = 1, this[0] = h
-                        }
-                        this.context = c, this.selector = a;
-                        return this
-                    }
-                    return!d || d.jquery ? (d || f).find(a) : this.constructor(d).find(a)
-                }
-                if (e.isFunction(a))
-                    return f.ready(a);
-                a.selector !== b && (this.selector = a.selector, this.context = a.context);
-                return e.makeArray(a, this)
-            }, selector: "", jquery: "1.7", length: 0, size: function () {
-                return this.length
-            }, toArray: function () {
-                return G.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 d = this.constructor();
-                e.isArray(a) ? F.apply(d, a) : e.merge(d, a), d.prevObject = this, d.context = this.context, b === "find" ? d.selector = this.selector + (this.selector ? " " : "") + c : b && (d.selector = this.selector + "." + b + "(" + c + ")");
-                return d
-            }, each: function (a, b) {
-                return e.each(this, a, b)
-            }, ready: function (a) {
-                e.bindReady(), B.add(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(G.apply(this, arguments), "slice", G.call(arguments).join(","))
-            }, map: function (a) {
-                return this.pushStack(e.map(this, function (b, c) {
-                    return a.call(b, c, b)
-                }))
-            }, end: function () {
-                return this.prevObject || this.constructor(null)
-            }, push: F, sort: [].sort, splice: [].splice}, e.fn.init.prototype = e.fn, e.extend = e.fn.extend = function () {
-            var a, c, d, 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" && !e.isFunction(i) && (i = {}), k === j && (i = this, --j);
-            for (; j < k; j++)
-                if ((a = arguments[j]) != null)
-                    for (c in a) {
-                        d = i[c], f = a[c];
-                        if (i === f)
-                            continue;
-                        l && f && (e.isPlainObject(f) || (g = e.isArray(f))) ? (g ? (g = !1, h = d && e.isArray(d) ? d : []) : h = d && e.isPlainObject(d) ? d : {}, i[c] = e.extend(l, h, f)) : f !== b && (i[c] = f)
-                    }
-            return i
-        }, e.extend({noConflict: function (b) {
-                a.$ === e && (a.$ = g), b && a.jQuery === e && (a.jQuery = f);
-                return e
-            }, isReady: !1, readyWait: 1, holdReady: function (a) {
-                a ? e.readyWait++ : e.ready(!0)
-            }, ready: function (a) {
-                if (a === !0 && !--e.readyWait || a !== !0 && !e.isReady) {
-                    if (!c.body)
-                        return setTimeout(e.ready, 1);
-                    e.isReady = !0;
-                    if (a !== !0 && --e.readyWait > 0)
-                        return;
-                    B.fireWith(c, [e]), e.fn.trigger && e(c).trigger("ready").unbind("ready")
-                }
-            }, bindReady: function () {
-                if (!B) {
-                    B = e.Callbacks("once memory");
-                    if (c.readyState === "complete")
-                        return setTimeout(e.ready, 1);
-                    if (c.addEventListener)
-                        c.addEventListener("DOMContentLoaded", C, !1), a.addEventListener("load", e.ready, !1);
-                    else if (c.attachEvent) {
-                        c.attachEvent("onreadystatechange", C), a.attachEvent("onload", e.ready);
-                        var b = !1;
-                        try {
-                            b = a.frameElement == null
-                        } catch (d) {
-                        }
-                        c.documentElement.doScroll && b && K()
-                    }
-                }
-            }, isFunction: function (a) {
-                return e.type(a) === "function"
-            }, isArray: Array.isArray || function (a) {
-                return e.type(a) === "array"
-            }, isWindow: function (a) {
-                return a && typeof a == "object" && "setInterval"in a
-            }, isNumeric: function (a) {
-                return a != null && m.test(a) && !isNaN(a)
-            }, type: function (a) {
-                return a == null ? String(a) : J[D.call(a)] || "object"
-            }, isPlainObject: function (a) {
-                if (!a || e.type(a) !== "object" || a.nodeType || e.isWindow(a))
-                    return!1;
-                try {
-                    if (a.constructor && !E.call(a, "constructor") && !E.call(a.constructor.prototype, "isPrototypeOf"))
-                        return!1
-                } catch (c) {
-                    return!1
-                }
-                var d;
-                for (d in a)
-                    ;
-                return d === b || E.call(a, d)
-            }, 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 = e.trim(b);
-                if (a.JSON && a.JSON.parse)
-                    return a.JSON.parse(b);
-                if (o.test(b.replace(p, "@").replace(q, "]").replace(r, "")))
-                    return(new Function("return " + b))();
-                e.error("Invalid JSON: " + b)
-            }, parseXML: function (c) {
-                var d, f;
-                try {
-                    a.DOMParser ? (f = new DOMParser, d = f.parseFromString(c, "text/xml")) : (d = new ActiveXObject("Microsoft.XMLDOM"), d.async = "false", d.loadXML(c))
-                } catch (g) {
-                    d = b
-                }
-                (!d || !d.documentElement || d.getElementsByTagName("parsererror").length) && e.error("Invalid XML: " + c);
-                return d
-            }, noop: function () {
-            }, globalEval: function (b) {
-                b && j.test(b) && (a.execScript || function (b) {
-                    a.eval.call(a, b)
-                })(b)
-            }, camelCase: function (a) {
-                return a.replace(x, "ms-").replace(w, y)
-            }, nodeName: function (a, b) {
-                return a.nodeName && a.nodeName.toUpperCase() === b.toUpperCase()
-            }, each: function (a, c, d) {
-                var f, g = 0, h = a.length, i = h === b || e.isFunction(a);
-                if (d) {
-                    if (i) {
-                        for (f in a)
-                            if (c.apply(a[f], d) === !1)
-                                break
-                    } else
-                        for (; g < h; )
-                            if (c.apply(a[g++], d) === !1)
-                                break
-                } else if (i) {
-                    for (f in a)
-                        if (c.call(a[f], f, a[f]) === !1)
-                            break
-                } else
-                    for (; g < h; )
-                        if (c.call(a[g], g, a[g++]) === !1)
-                            break;
-                return a
-            }, trim: H ? function (a) {
-                return a == null ? "" : H.call(a)
-            } : function (a) {
-                return a == null ? "" : (a + "").replace(k, "").replace(l, "")
-            }, makeArray: function (a, b) {
-                var c = b || [];
-                if (a != null) {
-                    var d = e.type(a);
-                    a.length == null || d === "string" || d === "function" || d === "regexp" || e.isWindow(a) ? F.call(c, a) : e.merge(c, a)
-                }
-                return c
-            }, inArray: function (a, b, c) {
-                var d;
-                if (b) {
-                    if (I)
-                        return I.call(b, a, c);
-                    d = b.length, c = c ? c < 0 ? Math.max(0, d + c) : c : 0;
-                    for (; c < d; c++)
-                        if (c in b && 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, c, d) {
-                var f, g, h = [], i = 0, j = a.length, k = a instanceof e || j !== b && typeof j == "number" && (j > 0 && a[0] && a[j - 1] || j === 0 || e.isArray(a));
-                if (k)
-                    for (; i < j; i++)
-                        f = c(a[i], i, d), f != null && (h[h.length] = f);
-                else
-                    for (g in a)
-                        f = c(a[g], g, d), f != null && (h[h.length] = f);
-                return h.concat.apply([], h)
-            }, guid: 1, proxy: function (a, c) {
-                if (typeof c == "string") {
-                    var d = a[c];
-                    c = a, a = d
-                }
-                if (!e.isFunction(a))
-                    return b;
-                var f = G.call(arguments, 2), g = function () {
-                    return a.apply(c, f.concat(G.call(arguments)))
-                };
-                g.guid = a.guid = a.guid || g.guid || e.guid++;
-                return g
-            }, access: function (a, c, d, f, g, h) {
-                var i = a.length;
-                if (typeof c == "object") {
-                    for (var j in c)
-                        e.access(a, j, c[j], f, g, d);
-                    return a
-                }
-                if (d !== b) {
-                    f = !h && f && e.isFunction(d);
-                    for (var k = 0; k < i; k++)
-                        g(a[k], c, f ? d.call(a[k], k, g(a[k], c)) : d, h);
-                    return a
-                }
-                return i ? g(a[0], c) : b
-            }, now: function () {
-                return(new Date).getTime()
-            }, uaMatch: function (a) {
-                a = a.toLowerCase();
-                var b = s.exec(a) || t.exec(a) || u.exec(a) || a.indexOf("compatible") < 0 && v.exec(a) || [];
-                return{browser: b[1] || "", version: b[2] || "0"}
-            }, sub: function () {
-                function a(b, c) {
-                    return new a.fn.init(b, c)
-                }
-                e.extend(!0, a, this), a.superclass = this, a.fn = a.prototype = this(), a.fn.constructor = a, a.sub = this.sub, a.fn.init = function (d, f) {
-                    f && f instanceof e && !(f instanceof a) && (f = a(f));
-                    return e.fn.init.call(this, d, f, b)
-                }, a.fn.init.prototype = a.fn;
-                var b = a(c);
-                return a
-            }, browser: {}}), e.each("Boolean Number String Function Array Date RegExp Object".split(" "), function (a, b) {
-            J["[object " + b + "]"] = b.toLowerCase()
-        }), A = e.uaMatch(z), A.browser && (e.browser[A.browser] = !0, e.browser.version = A.version), e.browser.webkit && (e.browser.safari = !0), j.test(" ") && (k = /^[\s\xA0]+/, l = /[\s\xA0]+$/), h = e(c), c.addEventListener ? C = function () {
-            c.removeEventListener("DOMContentLoaded", C, !1), e.ready()
-        } : c.attachEvent && (C = function () {
-            c.readyState === "complete" && (c.detachEvent("onreadystatechange", C), e.ready())
-        }), typeof define == "function" && define.amd && define.amd.jQuery && define("jquery", [], function () {
-            return e
-        });
-        return e
-    }(), g = {};
-    f.Callbacks = function (a) {
-        a = a ? g[a] || h(a) : {};
-        var c = [], d = [], e, i, j, k, l, m = function (b) {
-            var d, e, g, h, i;
-            for (d = 0, e = b.length; d < e; d++)
-                g = b[d], h = f.type(g), h === "array" ? m(g) : h === "function" && (!a.unique || !o.has(g)) && c.push(g)
-        }, n = function (b, f) {
-            f = f || [], e = !a.memory || [b, f], i = !0, l = j || 0, j = 0, k = c.length;
-            for (; c && l < k; l++)
-                if (c[l].apply(b, f) === !1 && a.stopOnFalse) {
-                    e = !0;
-                    break
-                }
-            i = !1, c && (a.once ? e === !0 ? o.disable() : c = [] : d && d.length && (e = d.shift(), o.fireWith(e[0], e[1])))
-        }, o = {add: function () {
-                if (c) {
-                    var a = c.length;
-                    m(arguments), i ? k = c.length : e && e !== !0 && (j = a, n(e[0], e[1]))
-                }
-                return this
-            }, remove: function () {
-                if (c) {
-                    var b = arguments, d = 0, e = b.length;
-                    for (; d < e; d++)
-                        for (var f = 0; f < c.length; f++)
-                            if (b[d] === c[f]) {
-                                i && f <= k && (k--, f <= l && l--), c.splice(f--, 1);
-                                if (a.unique)
-                                    break
-                            }
-                }
-                return this
-            }, has: function (a) {
-                if (c) {
-                    var b = 0, d = c.length;
-                    for (; b < d; b++)
-                        if (a === c[b])
-                            return!0
-                }
-                return!1
-            }, empty: function () {
-                c = [];
-                return this
-            }, disable: function () {
-                c = d = e = b;
-                return this
-            }, disabled: function () {
-                return!c
-            }, lock: function () {
-                d = b, (!e || e === !0) && o.disable();
-                return this
-            }, locked: function () {
-                return!d
-            }, fireWith: function (b, c) {
-                d && (i ? a.once || d.push([b, c]) : (!a.once || !e) && n(b, c));
-                return this
-            }, fire: function () {
-                o.fireWith(this, arguments);
-                return this
-            }, fired: function () {
-                return!!e
-            }};
-        return o
-    };
-    var i = [].slice;
-    f.extend({Deferred: function (a) {
-            var b = f.Callbacks("once memory"), c = f.Callbacks("once memory"), d = f.Callbacks("memory"), e = "pending", g = {resolve: b, reject: c, notify: d}, h = {done: b.add, fail: c.add, progress: d.add, state: function () {
-                    return e
-                }, isResolved: b.fired, isRejected: c.fired, then: function (a, b, c) {
-                    i.done(a).fail(b).progress(c);
-                    return this
-                }, always: function () {
-                    return i.done.apply(i, arguments).fail.apply(i, arguments)
-                }, pipe: function (a, b, c) {
-                    return f.Deferred(function (d) {
-                        f.each({done: [a, "resolve"], fail: [b, "reject"], progress: [c, "notify"]}, function (a, b) {
-                            var c = b[0], e = b[1], g;
-                            f.isFunction(c) ? i[a](function () {
-                                g = c.apply(this, arguments), g && f.isFunction(g.promise) ? g.promise().then(d.resolve, d.reject, d.notify) : d[e + "With"](this === i ? d : this, [g])
-                            }) : i[a](d[e])
-                        })
-                    }).promise()
-                }, promise: function (a) {
-                    if (a == null)
-                        a = h;
-                    else
-                        for (var b in h)
-                            a[b] = h[b];
-                    return a
-                }}, i = h.promise({}), j;
-            for (j in g)
-                i[j] = g[j].fire, i[j + "With"] = g[j].fireWith;
-            i.done(function () {
-                e = "resolved"
-            }, c.disable, d.lock).fail(function () {
-                e = "rejected"
-            }, b.disable, d.lock), a && a.call(i, i);
-            return i
-        }, when: function (a) {
-            function m(a) {
-                return function (b) {
-                    e[a] = arguments.length > 1 ? i.call(arguments, 0) : b, j.notifyWith(k, e)
-                }
-            }
-            function l(a) {
-                return function (c) {
-                    b[a] = arguments.length > 1 ? i.call(arguments, 0) : c, --g || j.resolveWith(j, b)
-                }
-            }
-            var b = i.call(arguments, 0), c = 0, d = b.length, e = Array(d), g = d, h = d, j = d <= 1 && a && f.isFunction(a.promise) ? a : f.Deferred(), k = j.promise();
-            if (d > 1) {
-                for (; c < d; c++)
-                    b[c] && b[c].promise && f.isFunction(b[c].promise) ? b[c].promise().then(l(c), j.reject, m(c)) : --g;
-                g || j.resolveWith(j, b)
-            } else
-                j !== a && j.resolveWith(j, d ? [a] : []);
-            return k
-        }}), f.support = function () {
-        var a = c.createElement("div"), b = c.documentElement, d, e, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u;
-        a.setAttribute("className", "t"), a.innerHTML = "   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/><nav></nav>", d = a.getElementsByTagName("*"), e = a.getElementsByTagName("a")[0];
-        if (!d || !d.length || !e)
-            return{};
-        g = c.createElement("select"), h = g.appendChild(c.createElement("option")), i = a.getElementsByTagName("input")[0], k = {leadingWhitespace: a.firstChild.nodeType === 3, tbody: !a.getElementsByTagName("tbody").length, htmlSerialize: !!a.getElementsByTagName("link").length, style: /top/.test(e.getAttribute("style")), hrefNormalized: e.getAttribute("href") === "/a", opacity: /^0.55/.test(e.style.opacity), cssFloat: !!e.style.cssFloat, unknownElems: !!a.getElementsByTagName("nav").length, checkOn: i.value === "on", optSelected: h.selected, getSetAttribute: a.className !== "t", enctype: !!c.createElement("form").enctype, submitBubbles: !0, changeBubbles: !0, focusinBubbles: !1, deleteExpando: !0, noCloneEvent: !0, inlineBlockNeedsLayout: !1, shrinkWrapBlocks: !1, reliableMarginRight: !0}, i.checked = !0, k.noCloneChecked = i.cloneNode(!0).checked, g.disabled = !0, k.optDisabled = !h.disabled;
-        try {
-            delete a.test
-        } catch (v) {
-            k.deleteExpando = !1
-        }
-        !a.addEventListener && a.attachEvent && a.fireEvent && (a.attachEvent("onclick", function () {
-            k.noCloneEvent = !1
-        }), a.cloneNode(!0).fireEvent("onclick")), i = c.createElement("input"), i.value = "t", i.setAttribute("type", "radio"), k.radioValue = i.value === "t", i.setAttribute("checked", "checked"), a.appendChild(i), l = c.createDocumentFragment(), l.appendChild(a.lastChild), k.checkClone = l.cloneNode(!0).cloneNode(!0).lastChild.checked, a.innerHTML = "", a.style.width = a.style.paddingLeft = "1px", m = c.getElementsByTagName("body")[0], o = c.createElement(m ? "div" : "body"), p = {visibility: "hidden", width: 0, height: 0, border: 0, margin: 0, background: "none"}, m && f.extend(p, {position: "absolute", left: "-999px", top: "-999px"});
-        for (t in p)
-            o.style[t] = p[t];
-        o.appendChild(a), n = m || b, n.insertBefore(o, n.firstChild), k.appendChecked = i.checked, k.boxModel = a.offsetWidth === 2, "zoom"in a.style && (a.style.display = "inline", a.style.zoom = 1, k.inlineBlockNeedsLayout = a.offsetWidth === 2, a.style.display = "", a.innerHTML = "<div style='width:4px;'></div>", k.shrinkWrapBlocks = a.offsetWidth !== 2), a.innerHTML = "<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>", q = a.getElementsByTagName("td"), u = q[0].offsetHeight === 0, q[0].style.display = "", q[1].style.display = "none", k.reliableHiddenOffsets = u && q[0].offsetHeight === 0, a.innerHTML = "", c.defaultView && c.defaultView.getComputedStyle && (j = c.createElement("div"), j.style.width = "0", j.style.marginRight = "0", a.appendChild(j), k.reliableMarginRight = (parseInt((c.defaultView.getComputedStyle(j, null) || {marginRight: 0}).marginRight, 10) || 0) === 0);
-        if (a.attachEvent)
-            for (t in{submit:1, change:1, focusin:1})
-                s = "on" + t, u = s in a, u || (a.setAttribute(s, "return;"), u = typeof a[s] == "function"), k[t + "Bubbles"] = u;
-        f(function () {
-            var a, b, d, e, g, h, i = 1, j = "position:absolute;top:0;left:0;width:1px;height:1px;margin:0;", l = "visibility:hidden;border:0;", n = "style='" + j + "border:5px solid #000;padding:0;'", p = "<div " + n + "><div></div></div>" + "<table " + n + " cellpadding='0' cellspacing='0'>" + "<tr><td></td></tr></table>";
-            m = c.getElementsByTagName("body")[0];
-            !m || (a = c.createElement("div"), a.style.cssText = l + "width:0;height:0;position:static;top:0;margin-top:" + i + "px", m.insertBefore(a, m.firstChild), o = c.createElement("div"), o.style.cssText = j + l, o.innerHTML = p, a.appendChild(o), b = o.firstChild, d = b.firstChild, g = b.nextSibling.firstChild.firstChild, h = {doesNotAddBorder: d.offsetTop !== 5, doesAddBorderForTableAndCells: g.offsetTop === 5}, d.style.position = "fixed", d.style.top = "20px", h.fixedPosition = d.offsetTop === 20 || d.offsetTop === 15, d.style.position = d.style.top = "", b.style.overflow = "hidden", b.style.position = "relative", h.subtractsBorderForOverflowNotVisible = d.offsetTop === -5, h.doesNotIncludeMarginInBodyOffset = m.offsetTop !== i, m.removeChild(a), o = a = null, f.extend(k, h))
-        }), o.innerHTML = "", n.removeChild(o), o = l = g = h = m = j = a = i = null;
-        return k
-    }(), f.boxModel = f.support.boxModel;
-    var j = /^(?:\{.*\}|\[.*\])$/, k = /([A-Z])/g;
-    f.extend({cache: {}, uuid: 0, expando: "jQuery" + (f.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 ? f.cache[a[f.expando]] : a[f.expando];
-            return!!a && !m(a)
-        }, data: function (a, c, d, e) {
-            if (!!f.acceptData(a)) {
-                var g, h, i, j = f.expando, k = typeof c == "string", l = a.nodeType, m = l ? f.cache : a, n = l ? a[f.expando] : a[f.expando] && f.expando, o = c === "events";
-                if ((!n || !m[n] || !o && !e && !m[n].data) && k && d === b)
-                    return;
-                n || (l ? a[f.expando] = n = ++f.uuid : n = f.expando), m[n] || (m[n] = {}, l || (m[n].toJSON = f.noop));
-                if (typeof c == "object" || typeof c == "function")
-                    e ? m[n] = f.extend(m[n], c) : m[n].data = f.extend(m[n].data, c);
-                g = h = m[n], e || (h.data || (h.data = {}), h = h.data), d !== b && (h[f.camelCase(c)] = d);
-                if (o && !h[c])
-                    return g.events;
-                k ? (i = h[c], i == null && (i = h[f.camelCase(c)])) : i = h;
-                return i
-            }
-        }, removeData: function (a, b, c) {
-            if (!!f.acceptData(a)) {
-                var d, e, g, h = f.expando, i = a.nodeType, j = i ? f.cache : a, k = i ? a[f.expando] : f.expando;
-                if (!j[k])
-                    return;
-                if (b) {
-                    d = c ? j[k] : j[k].data;
-                    if (d) {
-                        f.isArray(b) ? b = b : b in d ? b = [b] : (b = f.camelCase(b), b in d ? b = [b] : b = b.split(" "));
-                        for (e = 0, g = b.length; e < g; e++)
-                            delete d[b[e]];
-                        if (!(c ? m : f.isEmptyObject)(d))
-                            return
-                    }
-                }
-                if (!c) {
-                    delete j[k].data;
-                    if (!m(j[k]))
-                        return
-                }
-                f.support.deleteExpando || !j.setInterval ? delete j[k] : j[k] = null, i && (f.support.deleteExpando ? delete a[f.expando] : a.removeAttribute ? a.removeAttribute(f.expando) : a[f.expando] = null)
-            }
-        }, _data: function (a, b, c) {
-            return f.data(a, b, c, !0)
-        }, acceptData: function (a) {
-            if (a.nodeName) {
-                var b = f.noData[a.nodeName.toLowerCase()];
-                if (b)
-                    return b !== !0 && a.getAttribute("classid") === b
-            }
-            return!0
-        }}), f.fn.extend({data: function (a, c) {
-            var d, e, g, h = null;
-            if (typeof a == "undefined") {
-                if (this.length) {
-                    h = f.data(this[0]);
-                    if (this[0].nodeType === 1 && !f._data(this[0], "parsedAttrs")) {
-                        e = this[0].attributes;
-                        for (var i = 0, j = e.length; i < j; i++)
-                            g = e[i].name, g.indexOf("data-") === 0 && (g = f.camelCase(g.substring(5)), l(this[0], g, h[g]));
-                        f._data(this[0], "parsedAttrs", !0)
-                    }
-                }
-                return h
-            }
-            if (typeof a == "object")
-                return this.each(function () {
-                    f.data(this, a)
-                });
-            d = a.split("."), d[1] = d[1] ? "." + d[1] : "";
-            if (c === b) {
-                h = this.triggerHandler("getData" + d[1] + "!", [d[0]]), h === b && this.length && (h = f.data(this[0], a), h = l(this[0], a, h));
-                return h === b && d[1] ? this.data(d[0]) : h
-            }
-            return this.each(function () {
-                var b = f(this), e = [d[0], c];
-                b.triggerHandler("setData" + d[1] + "!", e), f.data(this, a, c), b.triggerHandler("changeData" + d[1] + "!", e)
-            })
-        }, removeData: function (a) {
-            return this.each(function () {
-                f.removeData(this, a)
-            })
-        }}), f.extend({_mark: function (a, b) {
-            a && (b = (b || "fx") + "mark", f._data(a, b, (f._data(a, b) || 0) + 1))
-        }, _unmark: function (a, b, c) {
-            a !== !0 && (c = b, b = a, a = !1);
-            if (b) {
-                c = c || "fx";
-                var d = c + "mark", e = a ? 0 : (f._data(b, d) || 1) - 1;
-                e ? f._data(b, d, e) : (f.removeData(b, d, !0), n(b, c, "mark"))
-            }
-        }, queue: function (a, b, c) {
-            var d;
-            if (a) {
-                b = (b || "fx") + "queue", d = f._data(a, b), c && (!d || f.isArray(c) ? d = f._data(a, b, f.makeArray(c)) : d.push(c));
-                return d || []
-            }
-        }, dequeue: function (a, b) {
-            b = b || "fx";
-            var c = f.queue(a, b), d = c.shift(), e = {};
-            d === "inprogress" && (d = c.shift()), d && (b === "fx" && c.unshift("inprogress"), f._data(a, b + ".run", e), d.call(a, function () {
-                f.dequeue(a, b)
-            }, e)), c.length || (f.removeData(a, b + "queue " + b + ".run", !0), n(a, b, "queue"))
-        }}), f.fn.extend({queue: function (a, c) {
-            typeof a != "string" && (c = a, a = "fx");
-            if (c === b)
-                return f.queue(this[0], a);
-            return this.each(function () {
-                var b = f.queue(this, a, c);
-                a === "fx" && b[0] !== "inprogress" && f.dequeue(this, a)
-            })
-        }, dequeue: function (a) {
-            return this.each(function () {
-                f.dequeue(this, a)
-            })
-        }, delay: function (a, b) {
-            a = f.fx ? f.fx.speeds[a] || a : a, b = b || "fx";
-            return this.queue(b, function (b, c) {
-                var d = setTimeout(b, a);
-                c.stop = function () {
-                    clearTimeout(d)
-                }
-            })
-        }, clearQueue: function (a) {
-            return this.queue(a || "fx", [])
-        }, promise: function (a, c) {
-            function m() {
-                --h || d.resolveWith(e, [e])
-            }
-            typeof a != "string" && (c = a, a = b), a = a || "fx";
-            var d = f.Deferred(), e = this, g = e.length, h = 1, i = a + "defer", j = a + "queue", k = a + "mark", l;
-            while (g--)
-                if (l = f.data(e[g], i, b, !0) || (f.data(e[g], j, b, !0) || f.data(e[g], k, b, !0)) && f.data(e[g], i, f.Callbacks("once memory"), !0))
-                    h++, l.add(m);
-            m();
-            return d.promise()
-        }});
-    var o = /[\n\t\r]/g, p = /\s+/, q = /\r/g, r = /^(?:button|input)$/i, s = /^(?:button|input|object|select|textarea)$/i, t = /^a(?:rea)?$/i, u = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i, v = f.support.getSetAttribute, w, x, y;
-    f.fn.extend({attr: function (a, b) {
-            return f.access(this, a, b, !0, f.attr)
-        }, removeAttr: function (a) {
-            return this.each(function () {
-                f.removeAttr(this, a)
-            })
-        }, prop: function (a, b) {
-            return f.access(this, a, b, !0, f.prop)
-        }, removeProp: function (a) {
-            a = f.propFix[a] || a;
-            return this.each(function () {
-                try {
-                    this[a] = b, delete this[a]
-                } catch (c) {
-                }
-            })
-        }, addClass: function (a) {
-            var b, c, d, e, g, h, i;
-            if (f.isFunction(a))
-                return this.each(function (b) {
-                    f(this).addClass(a.call(this, b, this.className))
-                });
-            if (a && typeof a == "string") {
-                b = a.split(p);
-                for (c = 0, d = this.length; c < d; c++) {
-                    e = this[c];
-                    if (e.nodeType === 1)
-                        if (!e.className && b.length === 1)
-                            e.className = a;
-                        else {
-                            g = " " + e.className + " ";
-                            for (h = 0, i = b.length; h < i; h++)
-                                ~g.indexOf(" " + b[h] + " ") || (g += b[h] + " ");
-                            e.className = f.trim(g)
-                        }
-                }
-            }
-            return this
-        }, removeClass: function (a) {
-            var c, d, e, g, h, i, j;
-            if (f.isFunction(a))
-                return this.each(function (b) {
-                    f(this).removeClass(a.call(this, b, this.className))
-                });
-            if (a && typeof a == "string" || a === b) {
-                c = (a || "").split(p);
-                for (d = 0, e = this.length; d < e; d++) {
-                    g = this[d];
-                    if (g.nodeType === 1 && g.className)
-                        if (a) {
-                            h = (" " + g.className + " ").replace(o, " ");
-                            for (i = 0, j = c.length; i < j; i++)
-                                h = h.replace(" " + c[i] + " ", " ");
-                            g.className = f.trim(h)
-                        } else
-                            g.className = ""
-                }
-            }
-            return this
-        }, toggleClass: function (a, b) {
-            var c = typeof a, d = typeof b == "boolean";
-            if (f.isFunction(a))
-                return this.each(function (c) {
-                    f(this).toggleClass(a.call(this, c, this.className, b), b)
-                });
-            return this.each(function () {
-                if (c === "string") {
-                    var e, g = 0, h = f(this), i = b, j = a.split(p);
-                    while (e = j[g++])
-                        i = d ? i : !h.hasClass(e), h[i ? "addClass" : "removeClass"](e)
-                } else if (c === "undefined" || c === "boolean")
-                    this.className && f._data(this, "__className__", this.className), this.className = this.className || a === !1 ? "" : f._data(this, "__className__") || ""
-            })
-        }, hasClass: function (a) {
-            var b = " " + a + " ", c = 0, d = this.length;
-            for (; c < d; c++)
-                if (this[c].nodeType === 1 && (" " + this[c].className + " ").replace(o, " ").indexOf(b) > -1)
-                    return!0;
-            return!1
-        }, val: function (a) {
-            var c, d, e, g = this[0];
-            if (!arguments.length) {
-                if (g) {
-                    c = f.valHooks[g.nodeName.toLowerCase()] || f.valHooks[g.type];
-                    if (c && "get"in c && (d = c.get(g, "value")) !== b)
-                        return d;
-                    d = g.value;
-                    return typeof d == "string" ? d.replace(q, "") : d == null ? "" : d
-                }
-                return b
-            }
-            e = f.isFunction(a);
-            return this.each(function (d) {
-                var g = f(this), h;
-                if (this.nodeType === 1) {
-                    e ? h = a.call(this, d, g.val()) : h = a, h == null ? h = "" : typeof h == "number" ? h += "" : f.isArray(h) && (h = f.map(h, function (a) {
-                        return a == null ? "" : a + ""
-                    })), c = f.valHooks[this.nodeName.toLowerCase()] || f.valHooks[this.type];
-                    if (!c || !("set"in c) || c.set(this, h, "value") === b)
-                        this.value = h
-                }
-            })
-        }}), f.extend({valHooks: {option: {get: function (a) {
-                    var b = a.attributes.value;
-                    return!b || b.specified ? a.value : a.text
-                }}, select: {get: function (a) {
-                    var b, c, d, e, g = a.selectedIndex, h = [], i = a.options, j = a.type === "select-one";
-                    if (g < 0)
-                        return null;
-                    c = j ? g : 0, d = j ? g + 1 : i.length;
-                    for (; c < d; c++) {
-                        e = i[c];
-                        if (e.selected && (f.support.optDisabled ? !e.disabled : e.getAttribute("disabled") === null) && (!e.parentNode.disabled || !f.nodeName(e.parentNode, "optgroup"))) {
-                            b = f(e).val();
-                            if (j)
-                                return b;
-                            h.push(b)
-                        }
-                    }
-                    if (j && !h.length && i.length)
-                        return f(i[g]).val();
-                    return h
-                }, set: function (a, b) {
-                    var c = f.makeArray(b);
-                    f(a).find("option").each(function () {
-                        this.selected = f.inArray(f(this).val(), c) >= 0
-                    }), c.length || (a.selectedIndex = -1);
-                    return c
-                }}}, attrFn: {val: !0, css: !0, html: !0, text: !0, data: !0, width: !0, height: !0, offset: !0}, attr: function (a, c, d, e) {
-            var g, h, i, j = a.nodeType;
-            if (!a || j === 3 || j === 8 || j === 2)
-                return b;
-            if (e && c in f.attrFn)
-                return f(a)[c](d);
-            if (!("getAttribute"in a))
-                return f.prop(a, c, d);
-            i = j !== 1 || !f.isXMLDoc(a), i && (c = c.toLowerCase(), h = f.attrHooks[c] || (u.test(c) ? x : w));
-            if (d !== b) {
-                if (d === null) {
-                    f.removeAttr(a, c);
-                    return b
-                }
-                if (h && "set"in h && i && (g = h.set(a, d, c)) !== b)
-                    return g;
-                a.setAttribute(c, "" + d);
-                return d
-            }
-            if (h && "get"in h && i && (g = h.get(a, c)) !== null)
-                return g;
-            g = a.getAttribute(c);
-            return g === null ? b : g
-        }, removeAttr: function (a, b) {
-            var c, d, e, g, h = 0;
-            if (a.nodeType === 1) {
-                d = (b || "").split(p), g = d.length;
-                for (; h < g; h++)
-                    e = d[h].toLowerCase(), c = f.propFix[e] || e, f.attr(a, e, ""), a.removeAttribute(v ? e : c), u.test(e) && c in a && (a[c] = !1)
-            }
-        }, attrHooks: {type: {set: function (a, b) {
-                    if (r.test(a.nodeName) && a.parentNode)
-                        f.error("type property can't be changed");
-                    else if (!f.support.radioValue && b === "radio" && f.nodeName(a, "input")) {
-                        var c = a.value;
-                        a.setAttribute("type", b), c && (a.value = c);
-                        return b
-                    }
-                }}, value: {get: function (a, b) {
-                    if (w && f.nodeName(a, "button"))
-                        return w.get(a, b);
-                    return b in a ? a.value : null
-                }, set: function (a, b, c) {
-                    if (w && f.nodeName(a, "button"))
-                        return w.set(a, b, c);
-                    a.value = b
-                }}}, propFix: {tabindex: "tabIndex", readonly: "readOnly", "for": "htmlFor", "class": "className", maxlength: "maxLength", cellspacing: "cellSpacing", cellpadding: "cellPadding", rowspan: "rowSpan", colspan: "colSpan", usemap: "useMap", frameborder: "frameBorder", contenteditable: "contentEditable"}, prop: function (a, c, d) {
-            var e, g, h, i = a.nodeType;
-            if (!a || i === 3 || i === 8 || i === 2)
-                return b;
-            h = i !== 1 || !f.isXMLDoc(a), h && (c = f.propFix[c] || c, g = f.propHooks[c]);
-            return d !== b ? g && "set"in g && (e = g.set(a, d, c)) !== b ? e : a[c] = d : g && "get"in g && (e = g.get(a, c)) !== null ? e : a[c]
-        }, propHooks: {tabIndex: {get: function (a) {
-                    var c = a.getAttributeNode("tabindex");
-                    return c && c.specified ? parseInt(c.value, 10) : s.test(a.nodeName) || t.test(a.nodeName) && a.href ? 0 : b
-                }}}}), f.attrHooks.tabindex = f.propHooks.tabIndex, x = {get: function (a, c) {
-            var d, e = f.prop(a, c);
-            return e === !0 || typeof e != "boolean" && (d = a.getAttributeNode(c)) && d.nodeValue !== !1 ? c.toLowerCase() : b
-        }, set: function (a, b, c) {
-            var d;
-            b === !1 ? f.removeAttr(a, c) : (d = f.propFix[c] || c, d in a && (a[d] = !0), a.setAttribute(c, c.toLowerCase()));
-            return c
-        }}, v || (y = {name: !0, id: !0}, w = f.valHooks.button = {get: function (a, c) {
-            var d;
-            d = a.getAttributeNode(c);
-            return d && (y[c] ? d.nodeValue !== "" : d.specified) ? d.nodeValue : b
-        }, set: function (a, b, d) {
-            var e = a.getAttributeNode(d);
-            e || (e = c.createAttribute(d), a.setAttributeNode(e));
-            return e.nodeValue = b + ""
-        }}, f.attrHooks.tabindex.set = w.set, f.each(["width", "height"], function (a, b) {
-        f.attrHooks[b] = f.extend(f.attrHooks[b], {set: function (a, c) {
-                if (c === "") {
-                    a.setAttribute(b, "auto");
-                    return c
-                }
-            }})
-    }), f.attrHooks.contenteditable = {get: w.get, set: function (a, b, c) {
-            b === "" && (b = "false"), w.set(a, b, c)
-        }}), f.support.hrefNormalized || f.each(["href", "src", "width", "height"], function (a, c) {
-        f.attrHooks[c] = f.extend(f.attrHooks[c], {get: function (a) {
-                var d = a.getAttribute(c, 2);
-                return d === null ? b : d
-            }})
-    }), f.support.style || (f.attrHooks.style = {get: function (a) {
-            return a.style.cssText.toLowerCase() || b
-        }, set: function (a, b) {
-            return a.style.cssText = "" + b
-        }}), f.support.optSelected || (f.propHooks.selected = f.extend(f.propHooks.selected, {get: function (a) {
-            var b = a.parentNode;
-            b && (b.selectedIndex, b.parentNode && b.parentNode.selectedIndex);
-            return null
-        }})), f.support.enctype || (f.propFix.enctype = "encoding"), f.support.checkOn || f.each(["radio", "checkbox"], function () {
-        f.valHooks[this] = {get: function (a) {
-                return a.getAttribute("value") === null ? "on" : a.value
-            }}
-    }), f.each(["radio", "checkbox"], function () {
-        f.valHooks[this] = f.extend(f.valHooks[this], {set: function (a, b) {
-                if (f.isArray(b))
-                    return a.checked = f.inArray(f(a).val(), b) >= 0
-            }})
-    });
-    var z = /\.(.*)$/, A = /^(?:textarea|input|select)$/i, B = /\./g, C = / /g, D = /[^\w\s.|`]/g, E = /^([^\.]*)?(?:\.(.+))?$/, F = /\bhover(\.\S+)?/, G = /^key/, H = /^(?:mouse|contextmenu)|click/, I = /^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/, J = function (a) {
-        var b = I.exec(a);
-        b &&
-                (b[1] = (b[1] || "").toLowerCase(), b[3] = b[3] && new RegExp("(?:^|\\s)" + b[3] + "(?:\\s|$)"));
-        return b
-    }, K = function (a, b) {
-        return(!b[1] || a.nodeName.toLowerCase() === b[1]) && (!b[2] || a.id === b[2]) && (!b[3] || b[3].test(a.className))
-    }, L = function (a) {
-        return f.event.special.hover ? a : a.replace(F, "mouseenter$1 mouseleave$1")
-    };
-    f.event = {add: function (a, c, d, e, g) {
-            var h, i, j, k, l, m, n, o, p, q, r, s;
-            if (!(a.nodeType === 3 || a.nodeType === 8 || !c || !d || !(h = f._data(a)))) {
-                d.handler && (p = d, d = p.handler), d.guid || (d.guid = f.guid++), j = h.events, j || (h.events = j = {}), i = h.handle, i || (h.handle = i = function (a) {
-                    return typeof f != "undefined" && (!a || f.event.triggered !== a.type) ? f.event.dispatch.apply(i.elem, arguments) : b
-                }, i.elem = a), c = L(c).split(" ");
-                for (k = 0; k < c.length; k++) {
-                    l = E.exec(c[k]) || [], m = l[1], n = (l[2] || "").split(".").sort(), s = f.event.special[m] || {}, m = (g ? s.delegateType : s.bindType) || m, s = f.event.special[m] || {}, o = f.extend({type: m, origType: l[1], data: e, handler: d, guid: d.guid, selector: g, namespace: n.join(".")}, p), g && (o.quick = J(g), !o.quick && f.expr.match.POS.test(g) && (o.isPositional = !0)), r = j[m];
-                    if (!r) {
-                        r = j[m] = [], r.delegateCount = 0;
-                        if (!s.setup || s.setup.call(a, e, n, i) === !1)
-                            a.addEventListener ? a.addEventListener(m, i, !1) : a.attachEvent && a.attachEvent("on" + m, i)
-                    }
-                    s.add && (s.add.call(a, o), o.handler.guid || (o.handler.guid = d.guid)), g ? r.splice(r.delegateCount++, 0, o) : r.push(o), f.event.global[m] = !0
-                }
-                a = null
-            }
-        }, global: {}, remove: function (a, b, c, d) {
-            var e = f.hasData(a) && f._data(a), g, h, i, j, k, l, m, n, o, p, q;
-            if (!!e && !!(m = e.events)) {
-                b = L(b || "").split(" ");
-                for (g = 0; g < b.length; g++) {
-                    h = E.exec(b[g]) || [], i = h[1], j = h[2];
-                    if (!i) {
-                        j = j ? "." + j : "";
-                        for (l in m)
-                            f.event.remove(a, l + j, c, d);
-                        return
-                    }
-                    n = f.event.special[i] || {}, i = (d ? n.delegateType : n.bindType) || i, p = m[i] || [], k = p.length, j = j ? new RegExp("(^|\\.)" + j.split(".").sort().join("\\.(?:.*\\.)?") + "(\\.|$)") : null;
-                    if (c || j || d || n.remove)
-                        for (l = 0; l < p.length; l++) {
-                            q = p[l];
-                            if (!c || c.guid === q.guid)
-                                if (!j || j.test(q.namespace))
-                                    if (!d || d === q.selector || d === "**" && q.selector)
-                                        p.splice(l--, 1), q.selector && p.delegateCount--, n.remove && n.remove.call(a, q)
-                        }
-                    else
-                        p.length = 0;
-                    p.length === 0 && k !== p.length && ((!n.teardown || n.teardown.call(a, j) === !1) && f.removeEvent(a, i, e.handle), delete m[i])
-                }
-                f.isEmptyObject(m) && (o = e.handle, o && (o.elem = null), f.removeData(a, ["events", "handle"], !0))
-            }
-        }, customEvent: {getData: !0, setData: !0, changeData: !0}, trigger: function (c, d, e, g) {
-            if (!e || e.nodeType !== 3 && e.nodeType !== 8) {
-                var h = c.type || c, i = [], j, k, l, m, n, o, p, q, r, s;
-                h.indexOf("!") >= 0 && (h = h.slice(0, -1), k = !0), h.indexOf(".") >= 0 && (i = h.split("."), h = i.shift(), i.sort());
-                if ((!e || f.event.customEvent[h]) && !f.event.global[h])
-                    return;
-                c = typeof c == "object" ? c[f.expando] ? c : new f.Event(h, c) : new f.Event(h), c.type = h, c.isTrigger = !0, c.exclusive = k, c.namespace = i.join("."), c.namespace_re = c.namespace ? new RegExp("(^|\\.)" + i.join("\\.(?:.*\\.)?") + "(\\.|$)") : null, o = h.indexOf(":") < 0 ? "on" + h : "", (g || !e) && c.preventDefault();
-                if (!e) {
-                    j = f.cache;
-                    for (l in j)
-                        j[l].events && j[l].events[h] && f.event.trigger(c, d, j[l].handle.elem, !0);
-                    return
-                }
-                c.result = b, c.target || (c.target = e), d = d != null ? f.makeArray(d) : [], d.unshift(c), p = f.event.special[h] || {};
-                if (p.trigger && p.trigger.apply(e, d) === !1)
-                    return;
-                r = [[e, p.bindType || h]];
-                if (!g && !p.noBubble && !f.isWindow(e)) {
-                    s = p.delegateType || h, n = null;
-                    for (m = e.parentNode; m; m = m.parentNode)
-                        r.push([m, s]), n = m;
-                    n && n === e.ownerDocument && r.push([n.defaultView || n.parentWindow || a, s])
-                }
-                for (l = 0; l < r.length; l++) {
-                    m = r[l][0], c.type = r[l][1], q = (f._data(m, "events") || {})[c.type] && f._data(m, "handle"), q && q.apply(m, d), q = o && m[o], q && f.acceptData(m) && q.apply(m, d);
-                    if (c.isPropagationStopped())
-                        break
-                }
-                c.type = h, c.isDefaultPrevented() || (!p._default || p._default.apply(e.ownerDocument, d) === !1) && (h !== "click" || !f.nodeName(e, "a")) && f.acceptData(e) && o && e[h] && (h !== "focus" && h !== "blur" || c.target.offsetWidth !== 0) && !f.isWindow(e) && (n = e[o], n && (e[o] = null), f.event.triggered = h, e[h](), f.event.triggered = b, n && (e[o] = n));
-                return c.result
-            }
-        }, dispatch: function (c) {
-            c = f.event.fix(c || a.event);
-            var d = (f._data(this, "events") || {})[c.type] || [], e = d.delegateCount, g = [].slice.call(arguments, 0), h = !c.exclusive && !c.namespace, i = (f.event.special[c.type] || {}).handle, j = [], k, l, m, n, o, p, q, r, s, t, u;
-            g[0] = c, c.delegateTarget = this;
-            if (e && !c.target.disabled && (!c.button || c.type !== "click"))
-                for (m = c.target; m != this; m = m.parentNode || this) {
-                    o = {}, q = [];
-                    for (k = 0; k < e; k++)
-                        r = d[k], s = r.selector, t = o[s], r.isPositional ? t = (t || (o[s] = f(s))).index(m) >= 0 : t === b && (t = o[s] = r.quick ? K(m, r.quick) : f(m).is(s)), t && q.push(r);
-                    q.length && j.push({elem: m, matches: q})
-                }
-            d.length > e && j.push({elem: this, matches: d.slice(e)});
-            for (k = 0; k < j.length && !c.isPropagationStopped(); k++) {
-                p = j[k], c.currentTarget = p.elem;
-                for (l = 0; l < p.matches.length && !c.isImmediatePropagationStopped(); l++) {
-                    r = p.matches[l];
-                    if (h || !c.namespace && !r.namespace || c.namespace_re && c.namespace_re.test(r.namespace))
-                        c.data = r.data, c.handleObj = r, n = (i || r.handler).apply(p.elem, g), n !== b && (c.result = n, n === !1 && (c.preventDefault(), c.stopPropagation()))
-                }
-            }
-            return c.result
-        }, props: "attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "), fixHooks: {}, keyHooks: {props: "char charCode key keyCode".split(" "), filter: function (a, b) {
-                a.which == null && (a.which = b.charCode != null ? b.charCode : b.keyCode);
-                return a
-            }}, mouseHooks: {props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement wheelDelta".split(" "), filter: function (a, d) {
-                var e, f, g, h = d.button, i = d.fromElement;
-                a.pageX == null && d.clientX != null && (e = a.target.ownerDocument || c, f = e.documentElement, g = e.body, a.pageX = d.clientX + (f && f.scrollLeft || g && g.scrollLeft || 0) - (f && f.clientLeft || g && g.clientLeft || 0), a.pageY = d.clientY + (f && f.scrollTop || g && g.scrollTop || 0) - (f && f.clientTop || g && g.clientTop || 0)), !a.relatedTarget && i && (a.relatedTarget = i === a.target ? d.toElement : i), !a.which && h !== b && (a.which = h & 1 ? 1 : h & 2 ? 3 : h & 4 ? 2 : 0);
-                return a
-            }}, fix: function (a) {
-            if (a[f.expando])
-                return a;
-            var d, e, g = a, h = f.event.fixHooks[a.type] || {}, i = h.props ? this.props.concat(h.props) : this.props;
-            a = f.Event(g);
-            for (d = i.length; d; )
-                e = i[--d], a[e] = g[e];
-            a.target || (a.target = g.srcElement || c), a.target.nodeType === 3 && (a.target = a.target.parentNode), a.metaKey === b && (a.metaKey = a.ctrlKey);
-            return h.filter ? h.filter(a, g) : a
-        }, special: {ready: {setup: f.bindReady}, focus: {delegateType: "focusin", noBubble: !0}, blur: {delegateType: "focusout", noBubble: !0}, beforeunload: {setup: function (a, b, c) {
-                    f.isWindow(this) && (this.onbeforeunload = c)
-                }, teardown: function (a, b) {
-                    this.onbeforeunload === b && (this.onbeforeunload = null)
-                }}}, simulate: function (a, b, c, d) {
-            var e = f.extend(new f.Event, c, {type: a, isSimulated: !0, originalEvent: {}});
-            d ? f.event.trigger(e, null, b) : f.event.dispatch.call(b, e), e.isDefaultPrevented() && c.preventDefault()
-        }}, f.event.handle = f.event.dispatch, f.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)
-    }, f.Event = function (a, b) {
-        if (!(this instanceof f.Event))
-            return new f.Event(a, b);
-        a && a.type ? (this.originalEvent = a, this.type = a.type, this.isDefaultPrevented = a.defaultPrevented || a.returnValue === !1 || a.getPreventDefault && a.getPreventDefault() ? N : M) : this.type = a, b && f.extend(this, b), this.timeStamp = a && a.timeStamp || f.now(), this[f.expando] = !0
-    }, f.Event.prototype = {preventDefault: function () {
-            this.isDefaultPrevented = N;
-            var a = this.originalEvent;
-            !a || (a.preventDefault ? a.preventDefault() : a.returnValue = !1)
-        }, stopPropagation: function () {
-            this.isPropagationStopped = N;
-            var a = this.originalEvent;
-            !a || (a.stopPropagation && a.stopPropagation(), a.cancelBubble = !0)
-        }, stopImmediatePropagation: function () {
-            this.isImmediatePropagationStopped = N, this.stopPropagation()
-        }, isDefaultPrevented: M, isPropagationStopped: M, isImmediatePropagationStopped: M}, f.each({mouseenter: "mouseover", mouseleave: "mouseout"}, function (a, b) {
-        f.event.special[a] = f.event.special[b] = {delegateType: b, bindType: b, handle: function (a) {
-                var b = this, c = a.relatedTarget, d = a.handleObj, e = d.selector, g, h;
-                if (!c || d.origType === a.type || c !== b && !f.contains(b, c))
-                    g = a.type, a.type = d.origType, h = d.handler.apply(this, arguments), a.type = g;
-                return h
-            }}
-    }), f.support.submitBubbles || (f.event.special.submit = {setup: function () {
-            if (f.nodeName(this, "form"))
-                return!1;
-            f.event.add(this, "click._submit keypress._submit", function (a) {
-                var c = a.target, d = f.nodeName(c, "input") || f.nodeName(c, "button") ? c.form : b;
-                d && !d._submit_attached && (f.event.add(d, "submit._submit", function (a) {
-                    this.parentNode && f.event.simulate("submit", this.parentNode, a, !0)
-                }), d._submit_attached = !0)
-            })
-        }, teardown: function () {
-            if (f.nodeName(this, "form"))
-                return!1;
-            f.event.remove(this, "._submit")
-        }}), f.support.changeBubbles || (f.event.special.change = {setup: function () {
-            if (A.test(this.nodeName)) {
-                if (this.type === "checkbox" || this.type === "radio")
-                    f.event.add(this, "propertychange._change", function (a) {
-                        a.originalEvent.propertyName === "checked" && (this._just_changed = !0)
-                    }), f.event.add(this, "click._change", function (a) {
-                        this._just_changed && (this._just_changed = !1, f.event.simulate("change", this, a, !0))
-                    });
-                return!1
-            }
-            f.event.add(this, "beforeactivate._change", function (a) {
-                var b = a.target;
-                A.test(b.nodeName) && !b._change_attached && (f.event.add(b, "change._change", function (a) {
-                    this.parentNode && !a.isSimulated && f.event.simulate("change", this.parentNode, a, !0)
-                }), b._change_attached = !0)
-            })
-        }, handle: function (a) {
-            var b = a.target;
-            if (this !== b || a.isSimulated || a.isTrigger || b.type !== "radio" && b.type !== "checkbox")
-                return a.handleObj.handler.apply(this, arguments)
-        }, teardown: function () {
-            f.event.remove(this, "._change");
-            return A.test(this.nodeName)
-        }}), f.support.focusinBubbles || f.each({focus: "focusin", blur: "focusout"}, function (a, b) {
-        var d = 0, e = function (a) {
-            f.event.simulate(b, a.target, f.event.fix(a), !0)
-        };
-        f.event.special[b] = {setup: function () {
-                d++ === 0 && c.addEventListener(a, e, !0)
-            }, teardown: function () {
-                --d === 0 && c.removeEventListener(a, e, !0)
-            }}
-    }), f.fn.extend({on: function (a, c, d, e, g) {
-            var h, i;
-            if (typeof a == "object") {
-                typeof c != "string" && (d = c, c = b);
-                for (i in a)
-                    this.on(i, c, d, a[i], g);
-                return this
-            }
-            d == null && e == null ? (e = c, d = c = b) : e == null && (typeof c == "string" ? (e = d, d = b) : (e = d, d = c, c = b));
-            if (e === !1)
-                e = M;
-            else if (!e)
-                return this;
-            g === 1 && (h = e, e = function (a) {
-                f().off(a);
-                return h.apply(this, arguments)
-            }, e.guid = h.guid || (h.guid = f.guid++));
-            return this.each(function () {
-                f.event.add(this, a, e, d, c)
-            })
-        }, one: function (a, b, c, d) {
-            return this.on.call(this, a, b, c, d, 1)
-        }, off: function (a, c, d) {
-            if (a && a.preventDefault && a.handleObj) {
-                var e = a.handleObj;
-                f(a.delegateTarget).off(e.namespace ? e.type + "." + e.namespace : e.type, e.selector, e.handler);
-                return this
-            }
-            if (typeof a == "object") {
-                for (var g in a)
-                    this.off(g, c, a[g]);
-                return this
-            }
-            if (c === !1 || typeof c == "function")
-                d = c, c = b;
-            d === !1 && (d = M);
-            return this.each(function () {
-                f.event.remove(this, a, d, c)
-            })
-        }, bind: function (a, b, c) {
-            return this.on(a, null, b, c)
-        }, unbind: function (a, b) {
-            return this.off(a, null, b)
-        }, live: function (a, b, c) {
-            f(this.context).on(a, this.selector, b, c);
-            return this
-        }, die: function (a, b) {
-            f(this.context).off(a, this.selector || "**", b);
-            return this
-        }, delegate: function (a, b, c, d) {
-            return this.on(b, a, c, d)
-        }, undelegate: function (a, b, c) {
-            return arguments.length == 1 ? this.off(a, "**") : this.off(b, a, c)
-        }, trigger: function (a, b) {
-            return this.each(function () {
-                f.event.trigger(a, b, this)
-            })
-        }, triggerHandler: function (a, b) {
-            if (this[0])
-                return f.event.trigger(a, b, this[0], !0)
-        }, toggle: function (a) {
-            var b = arguments, c = a.guid || f.guid++, d = 0, e = function (c) {
-                var e = (f._data(this, "lastToggle" + a.guid) || 0) % d;
-                f._data(this, "lastToggle" + a.guid, e + 1), c.preventDefault();
-                return b[e].apply(this, arguments) || !1
-            };
-            e.guid = c;
-            while (d < b.length)
-                b[d++].guid = c;
-            return this.click(e)
-        }, hover: function (a, b) {
-            return this.mouseenter(a).mouseleave(b || a)
-        }}), f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function (a, b) {
-        f.fn[b] = function (a, c) {
-            c == null && (c = a, a = null);
-            return arguments.length > 0 ? this.bind(b, a, c) : this.trigger(b)
-        }, f.attrFn && (f.attrFn[b] = !0), G.test(b) && (f.event.fixHooks[b] = f.event.keyHooks), H.test(b) && (f.event.fixHooks[b] = f.event.mouseHooks)
-    }), function () {
-        function x(a, b, c, e, f, g) {
-            for (var h = 0, i = e.length; h < i; h++) {
-                var j = e[h];
-                if (j) {
-                    var k = !1;
-                    j = j[a];
-                    while (j) {
-                        if (j[d] === c) {
-                            k = e[j.sizset];
-                            break
-                        }
-                        if (j.nodeType === 1) {
-                            g || (j[d] = c, j.sizset = h);
-                            if (typeof b != "string") {
-                                if (j === b) {
-                                    k = !0;
-                                    break
-                                }
-                            } else if (m.filter(b, [j]).length > 0) {
-                                k = j;
-                                break
-                            }
-                        }
-                        j = j[a]
-                    }
-                    e[h] = k
-                }
-            }
-        }
-        function w(a, b, c, e, f, g) {
-            for (var h = 0, i = e.length; h < i; h++) {
-                var j = e[h];
-                if (j) {
-                    var k = !1;
-                    j = j[a];
-                    while (j) {
-                        if (j[d] === c) {
-                            k = e[j.sizset];
-                            break
-                        }
-                        j.nodeType === 1 && !g && (j[d] = c, j.sizset = h);
-                        if (j.nodeName.toLowerCase() === b) {
-                            k = j;
-                            break
-                        }
-                        j = j[a]
-                    }
-                    e[h] = k
-                }
-            }
-        }
-        var a = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g, d = "sizcache" + (Math.random() + "").replace(".", ""), e = 0, g = Object.prototype.toString, h = !1, i = !0, j = /\\/g, k = /\r\n/g, l = /\W/;
-        [0, 0].sort(function () {
-            i = !1;
-            return 0
-        });
-        var m = function (b, d, e, f) {
-            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, k, l, n, q, r, t, u = !0, v = m.isXML(d), w = [], x = b;
-            do {
-                a.exec(""), i = a.exec(x);
-                if (i) {
-                    x = i[3], w.push(i[1]);
-                    if (i[2]) {
-                        l = i[3];
-                        break
-                    }
-                }
-            } while (i);
-            if (w.length > 1 && p.exec(b))
-                if (w.length === 2 && o.relative[w[0]])
-                    j = y(w[0] + w[1], d, f);
-                else {
-                    j = o.relative[w[0]] ? [d] : m(w.shift(), d);
-                    while (w.length)
-                        b = w.shift(), o.relative[b] && (b += w.shift()), j = y(b, j, f)
-                }
-            else {
-                !f && w.length > 1 && d.nodeType === 9 && !v && o.match.ID.test(w[0]) && !o.match.ID.test(w[w.length - 1]) && (n = m.find(w.shift(), d, v), d = n.expr ? m.filter(n.expr, n.set)[0] : n.set[0]);
-                if (d) {
-                    n = f ? {expr: w.pop(), set: s(f)} : m.find(w.pop(), w.length === 1 && (w[0] === "~" || w[0] === "+") && d.parentNode ? d.parentNode : d, v), j = n.expr ? m.filter(n.expr, n.set) : n.set, w.length > 0 ? k = s(j) : u = !1;
-                    while (w.length)
-                        q = w.pop(), r = q, o.relative[q] ? r = w.pop() : q = "", r == null && (r = d), o.relative[q](k, r, v)
-                } else
-                    k = w = []
-            }
-            k || (k = j), k || m.error(q || b);
-            if (g.call(k) === "[object Array]")
-                if (!u)
-                    e.push.apply(e, k);
-                else if (d && d.nodeType === 1)
-                    for (t = 0; k[t] != null; t++)
-                        k[t] && (k[t] === !0 || k[t].nodeType === 1 && m.contains(d, k[t])) && e.push(j[t]);
-                else
-                    for (t = 0; k[t] != null; t++)
-                        k[t] && k[t].nodeType === 1 && e.push(j[t]);
-            else
-                s(k, e);
-            l && (m(l, h, e, f), m.uniqueSort(e));
-            return e
-        };
-        m.uniqueSort = function (a) {
-            if (u) {
-                h = i, a.sort(u);
-                if (h)
-                    for (var b = 1; b < a.length; b++)
-                        a[b] === a[b - 1] && a.splice(b--, 1)
-            }
-            return a
-        }, m.matches = function (a, b) {
-            return m(a, null, null, b)
-        }, m.matchesSelector = function (a, b) {
-            return m(b, null, null, [a]).length > 0
-        }, m.find = function (a, b, c) {
-            var d, e, f, g, h, i;
-            if (!a)
-                return[];
-            for (e = 0, f = o.order.length; e < f; e++) {
-                h = o.order[e];
-                if (g = o.leftMatch[h].exec(a)) {
-                    i = g[1], g.splice(1, 1);
-                    if (i.substr(i.length - 1) !== "\\") {
-                        g[1] = (g[1] || "").replace(j, ""), d = o.find[h](g, b, c);
-                        if (d != null) {
-                            a = a.replace(o.match[h], "");
-                            break
-                        }
-                    }
-                }
-            }
-            d || (d = typeof b.getElementsByTagName != "undefined" ? b.getElementsByTagName("*") : []);
-            return{set: d, expr: a}
-        }, m.filter = function (a, c, d, e) {
-            var f, g, h, i, j, k, l, n, p, q = a, r = [], s = c, t = c && c[0] && m.isXML(c[0]);
-            while (a && c.length) {
-                for (h in o.filter)
-                    if ((f = o.leftMatch[h].exec(a)) != null && f[2]) {
-                        k = o.filter[h], l = f[1], g = !1, f.splice(1, 1);
-                        if (l.substr(l.length - 1) === "\\")
-                            continue;
-                        s === r && (r = []);
-                        if (o.preFilter[h]) {
-                            f = o.preFilter[h](f, s, d, r, e, t);
-                            if (!f)
-                                g = i = !0;
-                            else if (f === !0)
-                                continue
-                        }
-                        if (f)
-                            for (n = 0; (j = s[n]) != null; n++)
-                                j && (i = k(j, f, n, s), p = e ^ i, d && i != null ? p ? g = !0 : s[n] = !1 : p && (r.push(j), g = !0));
-                        if (i !== b) {
-                            d || (s = r), a = a.replace(o.match[h], "");
-                            if (!g)
-                                return[];
-                            break
-                        }
-                    }
-                if (a === q)
-                    if (g == null)
-                        m.error(a);
-                    else
-                        break;
-                q = a
-            }
-            return s
-        }, m.error = function (a) {
-            throw"Syntax error, unrecognized expression: " + a
-        };
-        var n = m.getText = function (a) {
-            var b, c, d = a.nodeType, e = "";
-            if (d) {
-                if (d === 1) {
-                    if (typeof a.textContent == "string")
-                        return a.textContent;
-                    if (typeof a.innerText == "string")
-                        return a.innerText.replace(k, "");
-                    for (a = a.firstChild; a; a = a.nextSibling)
-                        e += n(a)
-                } else if (d === 3 || d === 4)
-                    return a.nodeValue
-            } else
-                for (b = 0; c = a[b]; b++)
-                    c.nodeType !== 8 && (e += n(c));
-            return e
-        }, o = m.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 && !l.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 && m.filter(b, a, !0)
-                }, ">": function (a, b) {
-                    var c, d = typeof b == "string", e = 0, f = a.length;
-                    if (d && !l.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 && m.filter(b, a, !0)
-                    }
-                }, "": function (a, b, c) {
-                    var d, f = e++, g = x;
-                    typeof b == "string" && !l.test(b) && (b = b.toLowerCase(), d = b, g = w), g("parentNode", b, f, a, d, c)
-                }, "~": function (a, b, c) {
-                    var d, f = e++, g = x;
-                    typeof b == "string" && !l.test(b) && (b = b.toLowerCase(), d = b, g = w), 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(j, "") + " ";
-                    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(j, "")
-                }, TAG: function (a, b) {
-                    return a[1].replace(j, "").toLowerCase()
-                }, CHILD: function (a) {
-                    if (a[1] === "nth") {
-                        a[2] || m.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] && m.error(a[0]);
-                    a[0] = e++;
-                    return a
-                }, ATTR: function (a, b, c, d, e, f) {
-                    var g = a[1] = a[1].replace(j, "");
-                    !f && o.attrMap[g] && (a[1] = o.attrMap[g]), a[4] = (a[4] || a[5] || "").replace(j, ""), 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] = m(b[3], null, null, c);
-                        else {
-                            var g = m.filter(b[3], c, d, !0 ^ f);
-                            d || e.push.apply(e, g);
-                            return!1
-                        }
-                    else if (o.match.POS.test(b[0]) || o.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!!m(c[3], a).length
-                }, header: function (a) {
-                    return/h\d/i.test(a.nodeName)
-                }, text: function (a) {
-                    var b = a.getAttribu

<TRUNCATED>