PageSourceSearch

https://ilahiyat.gen.tr/wp-content/plugins/net-test/assets/js/sinavlayout.js?ver=1790903353

js ilahiyat.gen.tr collected 2026-10-02 01:09:34 UTC 197,482 bytes, 4,528 lines download raw bytes

1function disableSelection(n) {
2    typeof n.onselectstart != "undefined"
3        ? (n.onselectstart = function () {
4              return !1;
5          })
6        : typeof n.style.MozUserSelect != "undefined"
7        ? (n.style.MozUserSelect = "none")
8        : (n.onmousedown = function () {
9              return !1;
10          });
11    n.style.cursor = "default";
12}
13(function (n, t) {
14    function hf(n) {
15        var t = (yt[n] = {});
16        return (
17            i.each(n.split(h), function (n, i) {
18                t[i] = !0;
19            }),
20            t
21        );
22    }
23    function li(n, r, u) {
24        if (u === t && n.nodeType === 1) {
25            var f = "data-" + r.replace(ci, "-$1").toLowerCase();
26            if (((u = n.getAttribute(f)), typeof u == "string")) {
27                try {
28                    u = u === "true" ? !0 : u === "false" ? !1 : u === "null" ? null : +u + "" === u ? +u : hi.test(u) ? i.parseJSON(u) : u;
29                } catch (e) {}
30                i.data(n, r, u);
31            } else u = t;
32        }
33        return u;
34    }
35    function pt(n) {
36        var t;
37        for (t in n) if ((t !== "data" || !i.isEmptyObject(n[t])) && t !== "toJSON") return !1;
38        return !0;
39    }
40    function a() {
41        return !1;
42    }
43    function tt() {
44        return !0;
45    }
46    function b(n) {
47        return !n || !n.parentNode || n.parentNode.nodeType === 11;
48    }
49    function nr(n, t) {
50        do n = n[t];
51        while (n && n.nodeType !== 1);
52        return n;
53    }
54    function tr(n, t, r) {
55        if (((t = t || 0), i.isFunction(t)))
56            return i.grep(n, function (n, i) {
57                var u = !!t.call(n, i, n);
58                return u === r;
59            });
60        if (t.nodeType)
61            return i.grep(n, function (n) {
62                return (n === t) === r;
63            });
64        if (typeof t == "string") {
65            var u = i.grep(n, function (n) {
66                return n.nodeType === 1;
67            });
68            if (df.test(t)) return i.filter(t, u, !r);
69            t = i.filter(t, u);
70        }
71        return i.grep(n, function (n) {
72            return i.inArray(n, t) >= 0 === r;
73        });
74    }
75    function ir(n) {
76        var i = rr.split("|"),
77            t = n.createDocumentFragment();
78        if (t.createElement) while (i.length) t.createElement(i.pop());
79        return t;
80    }
81    function oe(n, t) {
82        return n.getElementsByTagName(t)[0] || n.appendChild(n.ownerDocument.createElement(t));
83    }
84    function hr(n, t) {
85        if (t.nodeType === 1 && i.hasData(n)) {
86            var u,
87                f,
88                o,
89                s = i._data(n),
90                r = i._data(t, s),
91                e = s.events;
92            if (e) {
93                delete r.handle;
94                r.events = {};
95                for (u in e) for (f = 0, o = e[u].length; f < o; f++) i.event.add(t, u, e[u][f]);
96            }
97            r.data && (r.data = i.extend({}, r.data));
98        }
99    }
100    function cr(n, t) {
101        var r;
102        t.nodeType === 1 &&
103            (t.clearAttributes && t.clearAttributes(),
104            t.mergeAttributes && t.mergeAttributes(n),
105            (r = t.nodeName.toLowerCase()),
106            r === "object"
107                ? (t.parentNode && (t.outerHTML = n.outerHTML), i.support.html5Clone && n.innerHTML && !i.trim(t.innerHTML) && (t.innerHTML = n.innerHTML))
108                : r === "input" && er.test(n.type)
109                ? ((t.defaultChecked = t.checked = n.checked), t.value !== n.value && (t.value = n.value))
110                : r === "option"
111                ? (t.selected = n.defaultSelected)
112                : r === "input" || r === "textarea"
113                ? (t.defaultValue = n.defaultValue)
114                : r === "script" && t.text !== n.text && (t.text = n.text),
115            t.removeAttribute(i.expando));
116    }
117    function it(n) {
118        return typeof n.getElementsByTagName != "undefined" ? n.getElementsByTagName("*") : typeof n.querySelectorAll != "undefined" ? n.querySelectorAll("*") : [];
119    }
120    function lr(n) {
121        er.test(n.type) && (n.defaultChecked = n.checked);
122    }
123    function pr(n, t) {
124        if (t in n) return t;
125        for (var r = t.charAt(0).toUpperCase() + t.slice(1), u = t, i = yr.length; i--; ) if (((t = yr[i] + r), t in n)) return t;
126        return u;
127    }
128    function ut(n, t) {
129        return (n = t || n), i.css(n, "display") === "none" || !i.contains(n.ownerDocument, n);
130    }
131    function wr(n, t) {
132        for (var r, o, e = [], f = 0, s = n.length; f < s; f++)
133            ((r = n[f]), r.style) &&
134                ((e[f] = i._data(r, "olddisplay")),
135                t
136                    ? (e[f] || r.style.display !== "none" || (r.style.display = ""), r.style.display === "" && ut(r) && (e[f] = i._data(r, "olddisplay", gr(r.nodeName))))
137                    : ((o = u(r, "display")), e[f] || o === "none" || i._data(r, "olddisplay", o)));
138        for (f = 0; f < s; f++) ((r = n[f]), r.style) && ((t && r.style.display !== "none" && r.style.display !== "") || (r.style.display = t ? e[f] || "" : "none"));
139        return n;
140    }
141    function br(n, t, i) {
142        var r = le.exec(t);
143        return r ? Math.max(0, r[1] - (i || 0)) + (r[2] || "px") : t;
144    }
145    function kr(n, t, r, f) {
146        for (var e = r === (f ? "border" : "content") ? 4 : t === "width" ? 1 : 0, o = 0; e < 4; e += 2)
147            r === "margin" && (o += i.css(n, r + c[e], !0)),
148                f
149                    ? (r === "content" && (o -= parseFloat(u(n, "padding" + c[e])) || 0), r !== "margin" && (o -= parseFloat(u(n, "border" + c[e] + "Width")) || 0))
150                    : ((o += parseFloat(u(n, "padding" + c[e])) || 0), r !== "padding" && (o += parseFloat(u(n, "border" + c[e] + "Width")) || 0));
151        return o;
152    }
153    function dr(n, t, r) {
154        var f = t === "width" ? n.offsetWidth : n.offsetHeight,
155            e = !0,
156            o = i.support.boxSizing && i.css(n, "boxSizing") === "border-box";
157        if (f <= 0 || f == null) {
158            if (((f = u(n, t)), (f < 0 || f == null) && (f = n.style[t]), rt.test(f))) return f;
159            e = o && (i.support.boxSizingReliable || f === n.style[t]);
160            f = parseFloat(f) || 0;
161        }
162        return f + kr(n, t, r || (o ? "border" : "content"), e) + "px";
163    }
164    function gr(n) {
165        if (ni[n]) return ni[n];
166        var f = i("<" + n + ">").appendTo(r.body),
167            t = f.css("display");
168        return (
169            f.remove(),
170            (t === "none" || t === "") &&
171                ((v = r.body.appendChild(v || i.extend(r.createElement("iframe"), { frameBorder: 0, width: 0, height: 0 }))),
172                (y && v.createElement) || ((y = (v.contentWindow || v.contentDocument).document), y.write("<!doctype html><html><body>"), y.close()),
173                (f = y.body.appendChild(y.createElement(n))),
174                (t = u(f, "display")),
175                r.body.removeChild(v)),
176            (ni[n] = t),
177            t
178        );
179    }
180    function ti(n, t, r, u) {
181        var f;
182        if (i.isArray(t))
183            i.each(t, function (t, i) {
184                r || we.test(n) ? u(n, i) : ti(n + "[" + (typeof i == "object" ? t : "") + "]", i, r, u);
185            });
186        else if (r || i.type(t) !== "object") u(n, t);
187        else for (f in t) ti(n + "[" + f + "]", t[f], r, u);
188    }
189    function eu(n) {
190        return function (t, r) {
191            typeof t != "string" && ((r = t), (t = "*"));
192            var u,
193                o,
194                f,
195                s = t.toLowerCase().split(h),
196                e = 0,
197                c = s.length;
198            if (i.isFunction(r)) for (; e < c; e++) (u = s[e]), (f = /^\+/.test(u)), f && (u = u.substr(1) || "*"), (o = n[u] = n[u] || []), o[f ? "unshift" : "push"](r);
199        };
200    }
201    function ft(n, i, r, u, f, e) {
202        f = f || i.dataTypes[0];
203        e = e || {};
204        e[f] = !0;
205        for (var o, s = n[f], h = 0, l = s ? s.length : 0, c = n === ii; h < l && (c || !o); h++) (o = s[h](i, r, u)), typeof o == "string" && (!c || e[o] ? (o = t) : (i.dataTypes.unshift(o), (o = ft(n, i, r, u, o, e))));
206        return (!c && o) || e["*"] || (o = ft(n, i, r, u, "*", e)), o;
207    }
208    function ou(n, r) {
209        var u,
210            f,
211            e = i.ajaxSettings.flatOptions || {};
212        for (u in r) r[u] !== t && ((e[u] ? n : f || (f = {}))[u] = r[u]);
213        f && i.extend(!0, n, f);
214    }
215    function uo(n, i, r) {
216        var o,
217            u,
218            e,
219            s,
220            h = n.contents,
221            f = n.dataTypes,
222            c = n.responseFields;
223        for (u in c) u in r && (i[c[u]] = r[u]);
224        while (f[0] === "*") f.shift(), o === t && (o = n.mimeType || i.getResponseHeader("content-type"));
225        if (o)
226            for (u in h)
227                if (h[u] && h[u].test(o)) {
228                    f.unshift(u);
229                    break;
230                }
231        if (f[0] in r) e = f[0];
232        else {
233            for (u in r) {
234                if (!f[0] || n.converters[u + " " + f[0]]) {
235                    e = u;
236                    break;
237                }
238                s || (s = u);
239            }
240            e = e || s;
241        }
242        if (e) return e !== f[0] && f.unshift(e), r[e];
243    }
244    function fo(n, t) {
245        var i,
246            o,
247            r,
248            e,
249            s = n.dataTypes.slice(),
250            f = s[0],
251            u = {},
252            h = 0;
253        if ((n.dataFilter && (t = n.dataFilter(t, n.dataType)), s[1])) for (i in n.converters) u[i.toLowerCase()] = n.converters[i];
254        for (; (r = s[++h]); )
255            if (r !== "*") {
256                if (f !== "*" && f !== r) {
257                    if (((i = u[f + " " + r] || u["* " + r]), !i))
258                        for (o in u)
259                            if (((e = o.split(" ")), e[1] === r && ((i = u[f + " " + e[0]] || u["* " + e[0]]), i))) {
260                                i === !0 ? (i = u[o]) : u[o] !== !0 && ((r = e[0]), s.splice(h--, 0, r));
261                                break;
262                            }
263                    if (i !== !0)
264                        if (i && n.throws) t = i(t);
265                        else
266                            try {
267                                t = i(t);
268                            } catch (c) {
269                                return { state: "parsererror", error: i ? c : "No conversion from " + f + " to " + r };
270                            }
271                }
272                f = r;
273            }
274        return { state: "success", data: t };
275    }
276    function cu() {
277        try {
278            return new n.XMLHttpRequest();
279        } catch (t) {}
280    }
281    function so() {
282        try {
283            return new n.ActiveXObject("Microsoft.XMLHTTP");
284        } catch (t) {}
285    }
286    function lu() {
287        return (
288            setTimeout(function () {
289                st = t;
290            }, 0),
291            (st = i.now())
292        );
293    }
294    function ao(n, t) {
295        i.each(t, function (t, i) {
296            for (var u = (k[t] || []).concat(k["*"]), r = 0, f = u.length; r < f; r++) if (u[r].call(n, t, i)) return;
297        });
298    }
299    function au(n, t, r) {
300        var e,
301            o = 0,
302            c = ct.length,
303            f = i.Deferred().always(function () {
304                delete h.elem;
305            }),
306            h = function () {
307                for (var o = st || lu(), t = Math.max(0, u.startTime + u.duration - o), i = 1 - (t / u.duration || 0), r = 0, e = u.tweens.length; r < e; r++) u.tweens[r].run(i);
308                return f.notifyWith(n, [u, i, t]), i < 1 && e ? t : (f.resolveWith(n, [u]), !1);
309            },
310            u = f.promise({
311                elem: n,
312                props: i.extend({}, t),
313                opts: i.extend(!0, { specialEasing: {} }, r),
314                originalProperties: t,
315                originalOptions: r,
316                startTime: st || lu(),
317                duration: r.duration,
318                tweens: [],
319                createTween: function (t, r) {
320                    var f = i.Tween(n, u.opts, t, r, u.opts.specialEasing[t] || u.opts.easing);
321                    return u.tweens.push(f), f;
322                },
323                stop: function (t) {
324                    for (var i = 0, r = t ? u.tweens.length : 0; i < r; i++) u.tweens[i].run(1);
325                    return t ? f.resolveWith(n, [u, t]) : f.rejectWith(n, [u, t]), this;
326                },
327            }),
328            s = u.props;
329        for (vo(s, u.opts.specialEasing); o < c; o++) if (((e = ct[o].call(u, n, s, u.opts)), e)) return e;
330        return (
331            ao(u, s),
332            i.isFunction(u.opts.start) && u.opts.start.call(n, u),
333            i.fx.timer(i.extend(h, { anim: u, queue: u.opts.queue, elem: n })),
334            u.progress(u.opts.progress).done(u.opts.done, u.opts.complete).fail(u.opts.fail).always(u.opts.always)
335        );
336    }
337    function vo(n, t) {
338        var r, f, e, u, o;
339        for (r in n)
340            if (((f = i.camelCase(r)), (e = t[f]), (u = n[r]), i.isArray(u) && ((e = u[1]), (u = n[r] = u[0])), r !== f && ((n[f] = u), delete n[r]), (o = i.cssHooks[f]), o && "expand" in o)) {
341                u = o.expand(u);
342                delete n[f];
343                for (r in u) r in n || ((n[r] = u[r]), (t[r] = e));
344            } else t[f] = e;
345    }
346    function yo(n, t, r) {
347        var o,
348            u,
349            a,
350            v,
351            h,
352            c,
353            f,
354            w,
355            s = this,
356            e = n.style,
357            y = {},
358            p = [],
359            l = n.nodeType && ut(n);
360        r.queue ||
361            ((f = i._queueHooks(n, "fx")),
362            f.unqueued == null &&
363                ((f.unqueued = 0),
364                (w = f.empty.fire),
365                (f.empty.fire = function () {
366                    f.unqueued || w();
367                })),
368            f.unqueued++,
369            s.always(function () {
370                s.always(function () {
371                    f.unqueued--;
372                    i.queue(n, "fx").length || f.empty.fire();
373                });
374            }));
375        n.nodeType === 1 &&
376            ("height" in t || "width" in t) &&
377            ((r.overflow = [e.overflow, e.overflowX, e.overflowY]),
378            i.css(n, "display") === "inline" && i.css(n, "float") === "none" && (i.support.inlineBlockNeedsLayout && gr(n.nodeName) !== "inline" ? (e.zoom = 1) : (e.display = "inline-block")));
379        r.overflow &&
380            ((e.overflow = "hidden"),
381            i.support.shrinkWrapBlocks ||
382                s.done(function () {
383                    e.overflow = r.overflow[0];
384                    e.overflowX = r.overflow[1];
385                    e.overflowY = r.overflow[2];
386                }));
387        for (o in t)
388            if (((a = t[o]), ho.exec(a))) {
389                if ((delete t[o], a === (l ? "hide" : "show"))) continue;
390                p.push(o);
391            }
392        if (((v = p.length), v))
393            for (
394                h = i._data(n, "fxshow") || i._data(n, "fxshow", {}),
395                    l
396                        ? i(n).show()
397                        : s.done(function () {
398                              i(n).hide();
399                          }),
400                    s.done(function () {
401                        var t;
402                        i.removeData(n, "fxshow", !0);
403                        for (t in y) i.style(n, t, y[t]);
404                    }),
405                    o = 0;
406                o < v;
407                o++
408            )
409                (u = p[o]), (c = s.createTween(u, l ? h[u] : 0)), (y[u] = h[u] || i.style(n, u)), u in h || ((h[u] = c.start), l && ((c.end = c.start), (c.start = u === "width" || u === "height" ? 1 : 0)));
410    }
411    function f(n, t, i, r, u) {
412        return new f.prototype.init(n, t, i, r, u);
413    }
414    function lt(n, t) {
415        var r,
416            i = { height: n },
417            u = 0;
418        for (t = t ? 1 : 0; u < 4; u += 2 - t) (r = c[u]), (i["margin" + r] = i["padding" + r] = n);
419        return t && (i.opacity = i.width = n), i;
420    }
421    function vu(n) {
422        return i.isWindow(n) ? n : n.nodeType === 9 ? n.defaultView || n.parentWindow : !1;
423    }
424    var ui,
425        d,
426        r = n.document,
427        yu = n.location,
428        pu = n.navigator,
429        wu = n.jQuery,
430        bu = n.$,
431        fi = Array.prototype.push,
432        o = Array.prototype.slice,
433        ei = Array.prototype.indexOf,
434        ku = Object.prototype.toString,
435        at = Object.prototype.hasOwnProperty,
436        vt = String.prototype.trim,
437        i = function (n, t) {
438            return new i.fn.init(n, t, ui);
439        },
440        g = /[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,
441        du = /\S/,
442        h = /\s+/,
443        gu = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
444        nf = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,
445        oi = /^<(\w+)\s*\/?>(?:<\/\1>|)$/,
446        tf = /^[\],:{}\s]*$/,
447        rf = /(?:^|:|,)(?:\s*\[)+/g,
448        uf = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,
449        ff = /"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,
450        ef = /^-ms-/,
451        of = /-([\da-z])/gi,
452        sf = function (n, t) {
453            return (t + "").toUpperCase();
454        },
455        nt = function () {
456            r.addEventListener ? (r.removeEventListener("DOMContentLoaded", nt, !1), i.ready()) : r.readyState === "complete" && (r.detachEvent("onreadystatechange", nt), i.ready());
457        },
458        si = {},
459        yt,
460        hi,
461        ci,
462        w,
463        ot,
464        hu,
465        ri;
466    i.fn = i.prototype = {
467        constructor: i,
468        init: function (n, u, f) {
469            var e, o, s;
470            if (!n) return this;
471            if (n.nodeType) return (this.context = this[0] = n), (this.length = 1), this;
472            if (typeof n == "string") {
473                if (((e = n.charAt(0) === "<" && n.charAt(n.length - 1) === ">" && n.length >= 3 ? [null, n, null] : nf.exec(n)), e && (e[1] || !u))) {
474                    if (e[1]) return (u = u instanceof i ? u[0] : u), (s = u && u.nodeType ? u.ownerDocument || u : r), (n = i.parseHTML(e[1], s, !0)), oi.test(e[1]) && i.isPlainObject(u) && this.attr.call(n, u, !0), i.merge(this, n);
475                    if (((o = r.getElementById(e[2])), o && o.parentNode)) {
476                        if (o.id !== e[2]) return f.find(n);
477                        this.length = 1;
478                        this[0] = o;
479                    }
480                    return (this.context = r), (this.selector = n), this;
481                }
482                return !u || u.jquery ? (u || f).find(n) : this.constructor(u).find(n);
483            }
484            return i.isFunction(n) ? f.ready(n) : (n.selector !== t && ((this.selector = n.selector), (this.context = n.context)), i.makeArray(n, this));
485        },
486        selector: "",
487        jquery: "1.8.2",
488        length: 0,
489        size: function () {
490            return this.length;
491        },
492        toArray: function () {
493            return o.call(this);
494        },
495        get: function (n) {
496            return n == null ? this.toArray() : n < 0 ? this[this.length + n] : this[n];
497        },
498        pushStack: function (n, t, r) {
499            var u = i.merge(this.constructor(), n);
500            return (u.prevObject = this), (u.context = this.context), t === "find" ? (u.selector = this.selector + (this.selector ? " " : "") + r) : t && (u.selector = this.selector + "." + t + "(" + r + ")"), u;
501        },
502        each: function (n, t) {
503            return i.each(this, n, t);
504        },
505        ready: function (n) {
506            return i.ready.promise().done(n), this;
507        },
508        eq: function (n) {
509            return (n = +n), n === -1 ? this.slice(n) : this.slice(n, n + 1);
510        },
511        first: function () {
512            return this.eq(0);
513        },
514        last: function () {
515            return this.eq(-1);
516        },
517        slice: function () {
518            return this.pushStack(o.apply(this, arguments), "slice", o.call(arguments).join(","));
519        },
520        map: function (n) {
521            return this.pushStack(
522                i.map(this, function (t, i) {
523                    return n.call(t, i, t);
524                })
525            );
526        },
527        end: function () {
528            return this.prevObject || this.constructor(null);
529        },
530        push: fi,
531        sort: [].sort,
532        splice: [].splice,
533    };
534    i.fn.init.prototype = i.fn;
535    i.extend = i.fn.extend = function () {
536        var o,
537            e,
538            u,
539            r,
540            s,
541            h,
542            n = arguments[0] || {},
543            f = 1,
544            l = arguments.length,
545            c = !1;
546        for (typeof n == "boolean" && ((c = n), (n = arguments[1] || {}), (f = 2)), typeof n == "object" || i.isFunction(n) || (n = {}), l === f && ((n = this), --f); f < l; f++)
547            if ((o = arguments[f]) != null)
548                for (e in o)
549                    ((u = n[e]), (r = o[e]), n !== r) &&
550                        (c && r && (i.isPlainObject(r) || (s = i.isArray(r))) ? (s ? ((s = !1), (h = u && i.isArray(u) ? u : [])) : (h = u && i.isPlainObject(u) ? u : {}), (n[e] = i.extend(c, h, r))) : r !== t && (n[e] = r));
551        return n;
552    };
553    i.extend({
554        noConflict: function (t) {
555            return n.$ === i && (n.$ = bu), t && n.jQuery === i && (n.jQuery = wu), i;
556        },
557        isReady: !1,
558        readyWait: 1,
559        holdReady: function (n) {
560            n ? i.readyWait++ : i.ready(!0);
561        },
562        ready: function (n) {
563            if (n === !0 ? !--i.readyWait : !i.isReady) {
564                if (!r.body) return setTimeout(i.ready, 1);
565                ((i.isReady = !0), n !== !0 && --i.readyWait > 0) || (d.resolveWith(r, [i]), i.fn.trigger && i(r).trigger("ready").off("ready"));
566            }
567        },
568        isFunction: function (n) {
569            return i.type(n) === "function";
570        },
571        isArray:
572            Array.isArray ||
573            function (n) {
574                return i.type(n) === "array";
575            },
576        isWindow: function (n) {
577            return n != null && n == n.window;
578        },
579        isNumeric: function (n) {
580            return !isNaN(parseFloat(n)) && isFinite(n);
581        },
582        type: function (n) {
583            return n == null ? String(n) : si[ku.call(n)] || "object";
584        },
585        isPlainObject: function (n) {
586            if (!n || i.type(n) !== "object" || n.nodeType || i.isWindow(n)) return !1;
587            try {
588                if (n.constructor && !at.call(n, "constructor") && !at.call(n.constructor.prototype, "isPrototypeOf")) return !1;
589            } catch (u) {
590                return !1;
591            }
592            var r;
593            for (r in n);
594            return r === t || at.call(n, r);
595        },
596        isEmptyObject: function (n) {
597            var t;
598            for (t in n) return !1;
599            return !0;
600        },
601        error: function (n) {
602            throw new Error(n);
603        },
604        parseHTML: function (n, t, u) {
605            var f;
606            return !n || typeof n != "string"
607                ? null
608                : (typeof t == "boolean" && ((u = t), (t = 0)), (t = t || r), (f = oi.exec(n)))
609                ? [t.createElement(f[1])]
610                : ((f = i.buildFragment([n], t, u ? null : [])), i.merge([], (f.cacheable ? i.clone(f.fragment) : f.fragment).childNodes));
611        },
612        parseJSON: function (t) {
613            if (!t || typeof t != "string") return null;
614            if (((t = i.trim(t)), n.JSON && n.JSON.parse)) return n.JSON.parse(t);
615            if (tf.test(t.replace(uf, "@").replace(ff, "]").replace(rf, ""))) return new Function("return " + t)();
616            i.error("Invalid JSON: " + t);
617        },
618        parseXML: function (r) {
619            var u, f;
620            if (!r || typeof r != "string") return null;
621            try {
622                n.DOMParser ? ((f = new DOMParser()), (u = f.parseFromString(r, "text/xml"))) : ((u = new ActiveXObject("Microsoft.XMLDOM")), (u.async = "false"), u.loadXML(r));
623            } catch (e) {
624                u = t;
625            }
626            return (u && u.documentElement && !u.getElementsByTagName("parsererror").length) || i.error("Invalid XML: " + r), u;
627        },
628        noop: function () {},
629        globalEval: function (t) {
630            t &&
631                du.test(t) &&
632                (
633                    n.execScript ||
634                    function (t) {
635                        n.eval.call(n, t);
636                    }
637                )(t);
638        },
639        camelCase: function (n) {
640            return n.replace(ef, "ms-").replace(of, sf);
641        },
642        nodeName: function (n, t) {
643            return n.nodeName && n.nodeName.toLowerCase() === t.toLowerCase();
644        },
645        each: function (n, r, u) {
646            var f,
647                e = 0,
648                o = n.length,
649                s = o === t || i.isFunction(n);
650            if (u) {
651                if (s) {
652                    for (f in n) if (r.apply(n[f], u) === !1) break;
653                } else for (; e < o; ) if (r.apply(n[e++], u) === !1) break;
654            } else if (s) {
655                for (f in n) if (r.call(n[f], f, n[f]) === !1) break;
656            } else for (; e < o; ) if (r.call(n[e], e, n[e++]) === !1) break;
657            return n;
658        },
659        trim:
660            vt && !vt.call(" ")
661                ? function (n) {
662                      return n == null ? "" : vt.call(n);
663                  }
664                : function (n) {
665                      return n == null ? "" : (n + "").replace(gu, "");
666                  },
667        makeArray: function (n, t) {
668            var r,
669                u = t || [];
670            return n != null && ((r = i.type(n)), n.length == null || r === "string" || r === "function" || r === "regexp" || i.isWindow(n) ? fi.call(u, n) : i.merge(u, n)), u;
671        },
672        inArray: function (n, t, i) {
673            var r;
674            if (t) {
675                if (ei) return ei.call(t, n, i);
676                for (r = t.length, i = i ? (i < 0 ? Math.max(0, r + i) : i) : 0; i < r; i++) if (i in t && t[i] === n) return i;
677            }
678            return -1;
679        },
680        merge: function (n, i) {
681            var f = i.length,
682                u = n.length,
683                r = 0;
684            if (typeof f == "number") for (; r < f; r++) n[u++] = i[r];
685            else while (i[r] !== t) n[u++] = i[r++];
686            return (n.length = u), n;
687        },
688        grep: function (n, t, i) {
689            var u,
690                f = [],
691                r = 0,
692                e = n.length;
693            for (i = !!i; r < e; r++) (u = !!t(n[r], r)), i !== u && f.push(n[r]);
694            return f;
695        },
696        map: function (n, r, u) {
697            var f,
698                h,
699                e = [],
700                s = 0,
701                o = n.length,
702                c = n instanceof i || (o !== t && typeof o == "number" && ((o > 0 && n[0] && n[o - 1]) || o === 0 || i.isArray(n)));
703            if (c) for (; s < o; s++) (f = r(n[s], s, u)), f != null && (e[e.length] = f);
704            else for (h in n) (f = r(n[h], h, u)), f != null && (e[e.length] = f);
705            return e.concat.apply([], e);
706        },
707        guid: 1,
708        proxy: function (n, r) {
709            var f, e, u;
710            return (typeof r == "string" && ((f = n[r]), (r = n), (n = f)), !i.isFunction(n))
711                ? t
712                : ((e = o.call(arguments, 2)),
713                  (u = function () {
714                      return n.apply(r, e.concat(o.call(arguments)));
715                  }),
716                  (u.guid = n.guid = n.guid || i.guid++),
717                  u);
718        },
719        access: function (n, r, u, f, e, o, s) {
720            var c,
721                l = u == null,
722                h = 0,
723                a = n.length;
724            if (u && typeof u == "object") {
725                for (h in u) i.access(n, r, h, u[h], 1, o, f);
726                e = 1;
727            } else if (f !== t) {
728                if (
729                    ((c = s === t && i.isFunction(f)),
730                    l &&
731                        (c
732                            ? ((c = r),
733                              (r = function (n, t, r) {
734                                  return c.call(i(n), r);
735                              }))
736                            : (r.call(n, f), (r = null))),
737                    r)
738                )
739                    for (; h < a; h++) r(n[h], u, c ? f.call(n[h], h, r(n[h], u)) : f, s);
740                e = 1;
741            }
742            return e ? n : l ? r.call(n) : a ? r(n[0], u) : o;
743        },
744        now: function () {
745            return new Date().getTime();
746        },
747    });
748    i.ready.promise = function (t) {
749        if (!d)
750            if (((d = i.Deferred()), r.readyState === "complete")) setTimeout(i.ready, 1);
751            else if (r.addEventListener) r.addEventListener("DOMContentLoaded", nt, !1), n.addEventListener("load", i.ready, !1);
752            else {
753                r.attachEvent("onreadystatechange", nt);
754                n.attachEvent("onload", i.ready);
755                var u = !1;
756                try {
757                    u = n.frameElement == null && r.documentElement;
758                } catch (e) {}
759                u &&
760                    u.doScroll &&
761                    (function f() {
762                        if (!i.isReady) {
763                            try {
764                                u.doScroll("left");
765                            } catch (n) {
766                                return setTimeout(f, 50);
767                            }
768                            i.ready();
769                        }
770                    })();
771            }
772        return d.promise(t);
773    };
774    i.each("Boolean Number String Function Array Date RegExp Object".split(" "), function (n, t) {
775        si["[object " + t + "]"] = t.toLowerCase();
776    });
777    ui = i(r);
778    yt = {};
779    i.Callbacks = function (n) {
780        n = typeof n == "string" ? yt[n] || hf(n) : i.extend({}, n);
781        var f,
782            c,
783            o,
784            l,
785            s,
786            e,
787            r = [],
788            u = !n.once && [],
789            a = function (t) {
790                for (f = n.memory && t, c = !0, e = l || 0, l = 0, s = r.length, o = !0; r && e < s; e++)
791                    if (r[e].apply(t[0], t[1]) === !1 && n.stopOnFalse) {
792                        f = !1;
793                        break;
794                    }
795                o = !1;
796                r && (u ? u.length && a(u.shift()) : f ? (r = []) : h.disable());
797            },
798            h = {
799                add: function () {
800                    if (r) {
801                        var t = r.length;
802                        (function u(t) {
803                            i.each(t, function (t, f) {
804                                var e = i.type(f);
805                                e !== "function" || (n.unique && h.has(f)) ? f && f.length && e !== "string" && u(f) : r.push(f);
806                            });
807                        })(arguments);
808                        o ? (s = r.length) : f && ((l = t), a(f));
809                    }
810                    return this;
811                },
812                remove: function () {
813                    return (
814                        r &&
815                            i.each(arguments, function (n, t) {
816                                for (var u; (u = i.inArray(t, r, u)) > -1; ) r.splice(u, 1), o && (u <= s && s--, u <= e && e--);
817                            }),
818                        this
819                    );
820                },
821                has: function (n) {
822                    return i.inArray(n, r) > -1;
823                },
824                empty: function () {
825                    return (r = []), this;
826                },
827                disable: function () {
828                    return (r = u = f = t), this;
829                },
830                disabled: function () {
831                    return !r;
832                },
833                lock: function () {
834                    return (u = t), f || h.disable(), this;
835                },
836                locked: function () {
837                    return !u;
838                },
839                fireWith: function (n, t) {
840                    return (t = t || []), (t = [n, t.slice ? t.slice() : t]), r && (!c || u) && (o ? u.push(t) : a(t)), this;
841                },
842                fire: function () {
843                    return h.fireWith(this, arguments), this;
844                },
845                fired: function () {
846                    return !!c;
847                },
848            };
849        return h;
850    };
851    i.extend({
852        Deferred: function (n) {
853            var u = [
854                    ["resolve", "done", i.Callbacks("once memory"), "resolved"],
855                    ["reject", "fail", i.Callbacks("once memory"), "rejected"],
856                    ["notify", "progress", i.Callbacks("memory")],
857                ],
858                f = "pending",
859                r = {
860                    state: function () {
861                        return f;
862                    },
863                    always: function () {
864                        return t.done(arguments).fail(arguments), this;
865                    },
866                    then: function () {
867                        var n = arguments;
868                        return i
869                            .Deferred(function (r) {
870                                i.each(u, function (u, f) {
871                                    var e = f[0],
872                                        o = n[u];
873                                    t[f[1]](
874                                        i.isFunction(o)
875                                            ? function () {
876                                                  var n = o.apply(this, arguments);
877                                                  n && i.isFunction(n.promise) ? n.promise().done(r.resolve).fail(r.reject).progress(r.notify) : r[e + "With"](this === t ? r : this, [n]);
878                                              }
879                                            : r[e]
880                                    );
881                                });
882                                n = null;
883                            })
884                            .promise();
885                    },
886                    promise: function (n) {
887                        return n != null ? i.extend(n, r) : r;
888                    },
889                },
890                t = {};
891            return (
892                (r.pipe = r.then),
893                i.each(u, function (n, i) {
894                    var e = i[2],
895                        o = i[3];
896                    r[i[1]] = e.add;
897                    o &&
898                        e.add(
899                            function () {
900                                f = o;
901                            },
902                            u[n ^ 1][2].disable,
903                            u[2][2].lock
904                        );
905                    t[i[0]] = e.fire;
906                    t[i[0] + "With"] = e.fireWith;
907                }),
908                r.promise(t),
909                n && n.call(t, t),
910                t
911            );
912        },
913        when: function (n) {
914            var t = 0,
915                u = o.call(arguments),
916                r = u.length,
917                e = r !== 1 || (n && i.isFunction(n.promise)) ? r : 0,
918                f = e === 1 ? n : i.Deferred(),
919                c = function (n, t, i) {
920                    return function (r) {
921                        t[n] = this;
922                 
922       i[n] = arguments.length > 1 ? o.call(arguments) : r;
923                        i === s ? f.notifyWith(t, i) : --e || f.resolveWith(t, i);
924                    };
925                },
926                s,
927                l,
928                h;
929            if (r > 1) for (s = new Array(r), l = new Array(r), h = new Array(r); t < r; t++) u[t] && i.isFunction(u[t].promise) ? u[t].promise().done(c(t, h, u)).fail(f.reject).progress(c(t, l, s)) : --e;
930            return e || f.resolveWith(h, u), f.promise();
931        },
932    });
933    i.support = (function () {
934        var u,
935            h,
936            e,
937            c,
938            l,
939            f,
940            o,
941            a,
942            v,
943            s,
944            y,
945            t = r.createElement("div");
946        if (
947            (t.setAttribute("className", "t"),
948            (t.innerHTML = "  <link/><table></table><a href='/a'>a</a><input type='checkbox'/>"),
949            (h = t.getElementsByTagName("*")),
950            (e = t.getElementsByTagName("a")[0]),
951            (e.style.cssText = "top:1px;float:left;opacity:.5"),
952            !h || !h.length)
953        )
954            return {};
955        c = r.createElement("select");
956        l = c.appendChild(r.createElement("option"));
957        f = t.getElementsByTagName("input")[0];
958        u = {
959            leadingWhitespace: t.firstChild.nodeType === 3,
960            tbody: !t.getElementsByTagName("tbody").length,
961            htmlSerialize: !!t.getElementsByTagName("link").length,
962            style: /top/.test(e.getAttribute("style")),
963            hrefNormalized: e.getAttribute("href") === "/a",
964            opacity: /^0.5/.test(e.style.opacity),
965            cssFloat: !!e.style.cssFloat,
966            checkOn: f.value === "on",
967            optSelected: l.selected,
968            getSetAttribute: t.className !== "t",
969            enctype: !!r.createElement("form").enctype,
970            html5Clone: r.createElement("nav").cloneNode(!0).outerHTML !== "<:nav></:nav>",
971            boxModel: r.compatMode === "CSS1Compat",
972            submitBubbles: !0,
973            changeBubbles: !0,
974            focusinBubbles: !1,
975            deleteExpando: !0,
976            noCloneEvent: !0,
977            inlineBlockNeedsLayout: !1,
978            shrinkWrapBlocks: !1,
979            reliableMarginRight: !0,
980            boxSizingReliable: !0,
981            pixelPosition: !1,
982        };
983        f.checked = !0;
984        u.noCloneChecked = f.cloneNode(!0).checked;
985        c.disabled = !0;
986        u.optDisabled = !l.disabled;
987        try {
988            delete t.test;
989        } catch (p) {
990            u.deleteExpando = !1;
991        }
992        if (
993            (!t.addEventListener &&
994                t.attachEvent &&
995                t.fireEvent &&
996                (t.attachEvent(
997                    "onclick",
998                    (y = function () {
999                        u.noCloneEvent = !1;
1000                    })
1001                ),
1002                t.cloneNode(!0).fireEvent("onclick"),
1003                t.detachEvent("onclick", y)),
1004            (f = r.createElement("input")),
1005            (f.value = "t"),
1006            f.setAttribute("type", "radio"),
1007            (u.radioValue = f.value === "t"),
1008            f.setAttribute("checked", "checked"),
1009            f.setAttribute("name", "t"),
1010            t.appendChild(f),
1011            (o = r.createDocumentFragment()),
1012            o.appendChild(t.lastChild),
1013            (u.checkClone = o.cloneNode(!0).cloneNode(!0).lastChild.checked),
1014            (u.appendChecked = f.checked),
1015            o.removeChild(f),
1016            o.appendChild(t),
1017            t.attachEvent)
1018        )
1019            for (v in { submit: !0, change: !0, focusin: !0 }) (a = "on" + v), (s = a in t), s || (t.setAttribute(a, "return;"), (s = typeof t[a] == "function")), (u[v + "Bubbles"] = s);
1020        return (
1021            i(function () {
1022                var i,
1023                    t,
1024                    f,
1025                    e,
1026                    h = "padding:0;margin:0;border:0;display:block;overflow:hidden;",
1027                    o = r.getElementsByTagName("body")[0];
1028                o &&
1029                    ((i = r.createElement("div")),
1030                    (i.style.cssText = "visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px"),
1031                    o.insertBefore(i, o.firstChild),
1032                    (t = r.createElement("div")),
1033                    i.appendChild(t),
1034                    (t.innerHTML = "<table><tr><td></td><td>t</td></tr></table>"),
1035                    (f = t.getElementsByTagName("td")),
1036                    (f[0].style.cssText = "padding:0;margin:0;border:0;display:none"),
1037                    (s = f[0].offsetHeight === 0),
1038                    (f[0].style.display = ""),
1039                    (f[1].style.display = "none"),
1040                    (u.reliableHiddenOffsets = s && f[0].offsetHeight === 0),
1041                    (t.innerHTML = ""),
1042                    (t.style.cssText = "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;"),
1043                    (u.boxSizing = t.offsetWidth === 4),
1044                    (u.doesNotIncludeMarginInBodyOffset = o.offsetTop !== 1),
1045                    n.getComputedStyle &&
1046                        ((u.pixelPosition = (n.getComputedStyle(t, null) || {}).top !== "1%"),
1047                        (u.boxSizingReliable = (n.getComputedStyle(t, null) || { width: "4px" }).width === "4px"),
1048                        (e = r.createElement("div")),
1049                        (e.style.cssText = t.style.cssText = h),
1050                        (e.style.marginRight = e.style.width = "0"),
1051                        (t.style.width = "1px"),
1052                        t.appendChild(e),
1053                        (u.reliableMarginRight = !parseFloat((n.getComputedStyle(e, null) || {}).marginRight))),
1054                    typeof t.style.zoom != "undefined" &&
1055                        ((t.innerHTML = ""),
1056                        (t.style.cssText = h + "width:1px;padding:1px;display:inline;zoom:1"),
1057                        (u.inlineBlockNeedsLayout = t.offsetWidth === 3),
1058                        (t.style.display = "block"),
1059                        (t.style.overflow = "visible"),
1060                        (t.innerHTML = "<div></div>"),
1061                        (t.firstChild.style.width = "5px"),
1062                        (u.shrinkWrapBlocks = t.offsetWidth !== 3),
1063                        (i.style.zoom = 1)),
1064                    o.removeChild(i),
1065                    (i = t = f = e = null));
1066            }),
1067            o.removeChild(t),
1068            (h = e = c = l = f = o = t = null),
1069            u
1070        );
1071    })();
1072    hi = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/;
1073    ci = /([A-Z])/g;
1074    i.extend({
1075        cache: {},
1076        deletedIds: [],
1077        uuid: 0,
1078        expando: "jQuery" + (i.fn.jquery + Math.random()).replace(/\D/g, ""),
1079        noData: { embed: !0, object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000", applet: !0 },
1080        hasData: function (n) {
1081            return (n = n.nodeType ? i.cache[n[i.expando]] : n[i.expando]), !!n && !pt(n);
1082        },
1083        data: function (n, r, u, f) {
1084            if (i.acceptData(n)) {
1085                var s,
1086                    h,
1087                    c = i.expando,
1088                    a = typeof r == "string",
1089                    l = n.nodeType,
1090                    o = l ? i.cache : n,
1091                    e = l ? n[c] : n[c] && c;
1092                if ((e && o[e] && (f || o[e].data)) || !a || u !== t)
1093                    return (
1094                        e || (l ? (n[c] = e = i.deletedIds.pop() || i.guid++) : (e = c)),
1095                        o[e] || ((o[e] = {}), l || (o[e].toJSON = i.noop)),
1096                        (typeof r == "object" || typeof r == "function") && (f ? (o[e] = i.extend(o[e], r)) : (o[e].data = i.extend(o[e].data, r))),
1097                        (s = o[e]),
1098                        f || (s.data || (s.data = {}), (s = s.data)),
1099                        u !== t && (s[i.camelCase(r)] = u),
1100                        a ? ((h = s[r]), h == null && (h = s[i.camelCase(r)])) : (h = s),
1101                        h
1102                    );
1103            }
1104        },
1105        removeData: function (n, t, r) {
1106            if (i.acceptData(n)) {
1107                var e,
1108                    o,
1109                    h,
1110                    s = n.nodeType,
1111                    u = s ? i.cache : n,
1112                    f = s ? n[i.expando] : i.expando;
1113                if (u[f]) {
1114                    if (t && ((e = r ? u[f] : u[f].data), e)) {
1115                        for (i.isArray(t) || ((t in e) ? (t = [t]) : ((t = i.camelCase(t)), (t = (t in e) ? [t] : t.split(" ")))), o = 0, h = t.length; o < h; o++) delete e[t[o]];
1116                        if (!(r ? pt : i.isEmptyObject)(e)) return;
1117                    }
1118                    (r || (delete u[f].data, pt(u[f]))) && (s ? i.cleanData([n], !0) : i.support.deleteExpando || u != u.window ? delete u[f] : (u[f] = null));
1119                }
1120            }
1121        },
1122        _data: function (n, t, r) {
1123            return i.data(n, t, r, !0);
1124        },
1125        acceptData: function (n) {
1126            var t = n.nodeName && i.noData[n.nodeName.toLowerCase()];
1127            return !t || (t !== !0 && n.getAttribute("classid") === t);
1128        },
1129    });
1130    i.fn.extend({
1131        data: function (n, r) {
1132            var u,
1133                s,
1134                h,
1135                o,
1136                l,
1137                e = this[0],
1138                c = 0,
1139                f = null;
1140            if (n === t) {
1141                if (this.length && ((f = i.data(e)), e.nodeType === 1 && !i._data(e, "parsedAttrs"))) {
1142                    for (h = e.attributes, l = h.length; c < l; c++) (o = h[c].name), o.indexOf("data-") || ((o = i.camelCase(o.substring(5))), li(e, o, f[o]));
1143                    i._data(e, "parsedAttrs", !0);
1144                }
1145                return f;
1146            }
1147            return typeof n == "object"
1148                ? this.each(function () {
1149                      i.data(this, n);
1150                  })
1151                : ((u = n.split(".", 2)),
1152                  (u[1] = u[1] ? "." + u[1] : ""),
1153                  (s = u[1] + "!"),
1154                  i.access(
1155                      this,
1156                      function (r) {
1157                          if (r === t) return (f = this.triggerHandler("getData" + s, [u[0]])), f === t && e && ((f = i.data(e, n)), (f = li(e, n, f))), f === t && u[1] ? this.data(u[0]) : f;
1158                          u[1] = r;
1159                          this.each(function () {
1160                              var t = i(this);
1161                              t.triggerHandler("setData" + s, u);
1162                              i.data(this, n, r);
1163                              t.triggerHandler("changeData" + s, u);
1164                          });
1165                      },
1166                      null,
1167                      r,
1168                      arguments.length > 1,
1169                      null,
1170                      !1
1171                  ));
1172        },
1173        removeData: function (n) {
1174            return this.each(function () {
1175                i.removeData(this, n);
1176            });
1177        },
1178    });
1179    i.extend({
1180        queue: function (n, t, r) {
1181            var u;
1182            if (n) return (t = (t || "fx") + "queue"), (u = i._data(n, t)), r && (!u || i.isArray(r) ? (u = i._data(n, t, i.makeArray(r))) : u.push(r)), u || [];
1183        },
1184        dequeue: function (n, t) {
1185            t = t || "fx";
1186            var r = i.queue(n, t),
1187                e = r.length,
1188                u = r.shift(),
1189                f = i._queueHooks(n, t),
1190                o = function () {
1191                    i.dequeue(n, t);
1192                };
1193            u === "inprogress" && ((u = r.shift()), e--);
1194            u && (t === "fx" && r.unshift("inprogress"), delete f.stop, u.call(n, o, f));
1195            !e && f && f.empty.fire();
1196        },
1197        _queueHooks: function (n, t) {
1198            var r = t + "queueHooks";
1199            return (
1200                i._data(n, r) ||
1201                i._data(n, r, {
1202                    empty: i.Callbacks("once memory").add(function () {
1203                        i.removeData(n, t + "queue", !0);
1204                        i.removeData(n, r, !0);
1205                    }),
1206                })
1207            );
1208        },
1209    });
1210    i.fn.extend({
1211        queue: function (n, r) {
1212            var u = 2;
1213            return (typeof n != "string" && ((r = n), (n = "fx"), u--), arguments.length < u)
1214                ? i.queue(this[0], n)
1215                : r === t
1216                ? this
1217                : this.each(function () {
1218                      var t = i.queue(this, n, r);
1219                      i._queueHooks(this, n);
1220                      n === "fx" && t[0] !== "inprogress" && i.dequeue(this, n);
1221                  });
1222        },
1223        dequeue: function (n) {
1224            return this.each(function () {
1225                i.dequeue(this, n);
1226            });
1227        },
1228        delay: function (n, t) {
1229            return (
1230                (n = i.fx ? i.fx.speeds[n] || n : n),
1231                (t = t || "fx"),
1232                this.queue(t, function (t, i) {
1233                    var r = setTimeout(t, n);
1234                    i.stop = function () {
1235                        clearTimeout(r);
1236                    };
1237                })
1238            );
1239        },
1240        clearQueue: function (n) {
1241            return this.queue(n || "fx", []);
1242        },
1243        promise: function (n, r) {
1244            var u,
1245                e = 1,
1246                o = i.Deferred(),
1247                f = this,
1248                s = this.length,
1249                h = function () {
1250                    --e || o.resolveWith(f, [f]);
1251                };
1252            for (typeof n != "string" && ((r = n), (n = t)), n = n || "fx"; s--; ) (u = i._data(f[s], n + "queueHooks")), u && u.empty && (e++, u.empty.add(h));
1253            return h(), o.promise(r);
1254        },
1255    });
1256    var s,
1257        ai,
1258        vi,
1259        yi = /[\t\r\n]/g,
1260        cf = /\r/g,
1261        lf = /^(?:button|input)$/i,
1262        af = /^(?:button|input|object|select|textarea)$/i,
1263        vf = /^a(?:rea|)$/i,
1264        pi = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,
1265        wi = i.support.getSetAttribute;
1266    i.fn.extend({
1267        attr: function (n, t) {
1268            return i.access(this, i.attr, n, t, arguments.length > 1);
1269        },
1270        removeAttr: function (n) {
1271            return this.each(function () {
1272                i.removeAttr(this, n);
1273            });
1274        },
1275        prop: function (n, t) {
1276            return i.access(this, i.prop, n, t, arguments.length > 1);
1277        },
1278        removeProp: function (n) {
1279            return (
1280                (n = i.propFix[n] || n),
1281                this.each(function () {
1282                    try {
1283                        this[n] = t;
1284                        delete this[n];
1285                    } catch (i) {}
1286                })
1287            );
1288        },
1289        addClass: function (n) {
1290            var r, f, o, t, e, u, s;
1291            if (i.isFunction(n))
1292                return this.each(function (t) {
1293                    i(this).addClass(n.call(this, t, this.className));
1294                });
1295            if (n && typeof n == "string")
1296                for (r = n.split(h), f = 0, o = this.length; f < o; f++)
1297                    if (((t = this[f]), t.nodeType === 1))
1298                        if (t.className || r.length !== 1) {
1299                            for (e = " " + t.className + " ", u = 0, s = r.length; u < s; u++) e.indexOf(" " + r[u] + " ") < 0 && (e += r[u] + " ");
1300                            t.className = i.trim(e);
1301                        } else t.className = n;
1302            return this;
1303        },
1304        removeClass: function (n) {
1305            var e, r, u, f, s, o, c;
1306            if (i.isFunction(n))
1307                return this.each(function (t) {
1308                    i(this).removeClass(n.call(this, t, this.className));
1309                });
1310            if ((n && typeof n == "string") || n === t)
1311                for (e = (n || "").split(h), o = 0, c = this.length; o < c; o++)
1312                    if (((u = this[o]), u.nodeType === 1 && u.className)) {
1313                        for (r = (" " + u.className + " ").replace(yi, " "), f = 0, s = e.length; f < s; f++) while (r.indexOf(" " + e[f] + " ") >= 0) r = r.replace(" " + e[f] + " ", " ");
1314                        u.className = n ? i.trim(r) : "";
1315                    }
1316            return this;
1317        },
1318        toggleClass: function (n, t) {
1319            var r = typeof n,
1320                u = typeof t == "boolean";
1321            return i.isFunction(n)
1322                ? this.each(function (r) {
1323                      i(this).toggleClass(n.call(this, r, this.className, t), t);
1324                  })
1325                : this.each(function () {
1326                      if (r === "string") for (var f, s = 0, o = i(this), e = t, c = n.split(h); (f = c[s++]); ) (e = u ? e : !o.hasClass(f)), o[e ? "addClass" : "removeClass"](f);
1327                      else (r === "undefined" || r === "boolean") && (this.className && i._data(this, "__className__", this.className), (this.className = this.className || n === !1 ? "" : i._data(this, "__className__") || ""));
1328                  });
1329        },
1330        hasClass: function (n) {
1331            for (var i = " " + n + " ", t = 0, r = this.length; t < r; t++) if (this[t].nodeType === 1 && (" " + this[t].className + " ").replace(yi, " ").indexOf(i) >= 0) return !0;
1332            return !1;
1333        },
1334        val: function (n) {
1335            var r,
1336                u,
1337                e,
1338                f = this[0];
1339            return arguments.length
1340                ? ((e = i.isFunction(n)),
1341                  this.each(function (u) {
1342                      var f,
1343                          o = i(this);
1344                      this.nodeType === 1 &&
1345                          ((f = e ? n.call(this, u, o.val()) : n),
1346                          f == null
1347                              ? (f = "")
1348                              : typeof f == "number"
1349                              ? (f += "")
1350                              : i.isArray(f) &&
1351                                (f = i.map(f, function (n) {
1352                                    return n == null ? "" : n + "";
1353                                })),
1354                          (r = i.valHooks[this.type] || i.valHooks[this.nodeName.toLowerCase()]),
1355                          (r && "set" in r && r.set(this, f, "value") !== t) || (this.value = f));
1356                  }))
1357                : f
1358                ? ((r = i.valHooks[f.type] || i.valHooks[f.nodeName.toLowerCase()]), r && "get" in r && (u = r.get(f, "value")) !== t)
1359                    ? u
1360                    : ((u = f.value), typeof u == "string" ? u.replace(cf, "") : u == null ? "" : u)
1361                : void 0;
1362        },
1363    });
1364    i.extend({
1365        valHooks: {
1366            option: {
1367                get: function (n) {
1368                    var t = n.attributes.value;
1369                    return !t || t.specified ? n.value : n.text;
1370                },
1371            },
1372            select: {
1373                get: function (n) {
1374                    var o,
1375                        r,
1376                        h,
1377                        t,
1378                        u = n.selectedIndex,
1379                        s = [],
1380                        f = n.options,
1381                        e = n.type === "select-one";
1382                    if (u < 0) return null;
1383                    for (r = e ? u : 0, h = e ? u + 1 : f.length; r < h; r++)
1384                        if (((t = f[r]), t.selected && (i.support.optDisabled ? !t.disabled : t.getAttribute("disabled") === null) && (!t.parentNode.disabled || !i.nodeName(t.parentNode, "optgroup")))) {
1385                            if (((o = i(t).val()), e)) return o;
1386                            s.push(o);
1387                        }
1388                    return e && !s.length && f.length ? i(f[u]).val() : s;
1389                },
1390                set: function (n, t) {
1391                    var r = i.makeArray(t);
1392                    return (
1393                        i(n)
1394                            .find("option")
1395                            .each(function () {
1396                                this.selected = i.inArray(i(this).val(), r) >= 0;
1397                            }),
1398                        r.length || (n.selectedIndex = -1),
1399                        r
1400                    );
1401                },
1402            },
1403        },
1404        attrFn: {},
1405        attr: function (n, r, u, f) {
1406            var e,
1407                o,
1408                h,
1409                c = n.nodeType;
1410            if (n && c !== 3 && c !== 8 && c !== 2) {
1411                if (f && i.isFunction(i.fn[r])) return i(n)[r](u);
1412                if (typeof n.getAttribute == "undefined") return i.prop(n, r, u);
1413                if (((h = c !== 1 || !i.isXMLDoc(n)), h && ((r = r.toLowerCase()), (o = i.attrHooks[r] || (pi.test(r) ? ai : s))), u !== t)) {
1414                    if (u === null) {
1415                        i.removeAttr(n, r);
1416                        return;
1417                    }
1418                    return o && "set" in o && h && (e = o.set(n, u, r)) !== t ? e : (n.setAttribute(r, u + ""), u);
1419                }
1420                return o && "get" in o && h && (e = o.get(n, r)) !== null ? e : ((e = n.getAttribute(r)), e === null ? t : e);
1421            }
1422        },
1423        removeAttr: function (n, t) {
1424            var u,
1425                f,
1426                r,
1427                e,
1428                o = 0;
1429            if (t && n.nodeType === 1) for (f = t.split(h); o < f.length; o++) (r = f[o]), r && ((u = i.propFix[r] || r), (e = pi.test(r)), e || i.attr(n, r, ""), n.removeAttribute(wi ? r : u), e && u in n && (n[u] = !1));
1430        },
1431        attrHooks: {
1432            type: {
1433                set: function (n, t) {
1434                    if (lf.test(n.nodeName) && n.parentNode) i.error("type property can't be changed");
1435                    else if (!i.support.radioValue && t === "radio" && i.nodeName(n, "input")) {
1436                        var r = n.value;
1437                        return n.setAttribute("type", t), r && (n.value = r), t;
1438                    }
1439                },
1440            },
1441            value: {
1442                get: function (n, t) {
1443                    return s && i.nodeName(n, "button") ? s.get(n, t) : t in n ? n.value : null;
1444                },
1445                set: function (n, t, r) {
1446                    if (s && i.nodeName(n, "button")) return s.set(n, t, r);
1447                    n.value = t;
1448                },
1449            },
1450        },
1451        propFix: {
1452            tabindex: "tabIndex",
1453            readonly: "readOnly",
1454            for: "htmlFor",
1455            class: "className",
1456            maxlength: "maxLength",
1457            cellspacing: "cellSpacing",
1458            cellpadding: "cellPadding",
1459            rowspan: "rowSpan",
1460            colspan: "co
1460lSpan",
1461            usemap: "useMap",
1462            frameborder: "frameBorder",
1463            contenteditable: "contentEditable",
1464        },
1465        prop: function (n, r, u) {
1466            var e,
1467                f,
1468                s,
1469                o = n.nodeType;
1470            if (n && o !== 3 && o !== 8 && o !== 2)
1471                return (
1472                    (s = o !== 1 || !i.isXMLDoc(n)), s && ((r = i.propFix[r] || r), (f = i.propHooks[r])), u !== t ? (f && "set" in f && (e = f.set(n, u, r)) !== t ? e : (n[r] = u)) : f && "get" in f && (e = f.get(n, r)) !== null ? e : n[r]
1473                );
1474        },
1475        propHooks: {
1476            tabIndex: {
1477                get: function (n) {
1478                    var i = n.getAttributeNode("tabindex");
1479                    return i && i.specified ? parseInt(i.value, 10) : af.test(n.nodeName) || (vf.test(n.nodeName) && n.href) ? 0 : t;
1480                },
1481            },
1482        },
1483    });
1484    ai = {
1485        get: function (n, r) {
1486            var u,
1487                f = i.prop(n, r);
1488            return f === !0 || (typeof f != "boolean" && (u = n.getAttributeNode(r)) && u.nodeValue !== !1) ? r.toLowerCase() : t;
1489        },
1490        set: function (n, t, r) {
1491            var u;
1492            return t === !1 ? i.removeAttr(n, r) : ((u = i.propFix[r] || r), u in n && (n[u] = !0), n.setAttribute(r, r.toLowerCase())), r;
1493        },
1494    };
1495    wi ||
1496        ((vi = { name: !0, id: !0, coords: !0 }),
1497        (s = i.valHooks.button = {
1498            get: function (n, i) {
1499                var r;
1500                return (r = n.getAttributeNode(i)), r && (vi[i] ? r.value !== "" : r.specified) ? r.value : t;
1501            },
1502            set: function (n, t, i) {
1503                var u = n.getAttributeNode(i);
1504                return u || ((u = r.createAttribute(i)), n.setAttributeNode(u)), (u.value = t + "");
1505            },
1506        }),
1507        i.each(["width", "height"], function (n, t) {
1508            i.attrHooks[t] = i.extend(i.attrHooks[t], {
1509                set: function (n, i) {
1510                    if (i === "") return n.setAttribute(t, "auto"), i;
1511                },
1512            });
1513        }),
1514        (i.attrHooks.contenteditable = {
1515            get: s.get,
1516            set: function (n, t, i) {
1517                t === "" && (t = "false");
1518                s.set(n, t, i);
1519            },
1520        }));
1521    i.support.hrefNormalized ||
1522        i.each(["href", "src", "width", "height"], function (n, r) {
1523            i.attrHooks[r] = i.extend(i.attrHooks[r], {
1524                get: function (n) {
1525                    var i = n.getAttribute(r, 2);
1526                    return i === null ? t : i;
1527                },
1528            });
1529        });
1530    i.support.style ||
1531        (i.attrHooks.style = {
1532            get: function (n) {
1533                return n.style.cssText.toLowerCase() || t;
1534            },
1535            set: function (n, t) {
1536                return (n.style.cssText = t + "");
1537            },
1538        });
1539    i.support.optSelected ||
1540        (i.propHooks.selected = i.extend(i.propHooks.selected, {
1541            get: function (n) {
1542                var t = n.parentNode;
1543                return t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex), null;
1544            },
1545        }));
1546    i.support.enctype || (i.propFix.enctype = "encoding");
1547    i.support.checkOn ||
1548        i.each(["radio", "checkbox"], function () {
1549            i.valHooks[this] = {
1550                get: function (n) {
1551                    return n.getAttribute("value") === null ? "on" : n.value;
1552                },
1553            };
1554        });
1555    i.each(["radio", "checkbox"], function () {
1556        i.valHooks[this] = i.extend(i.valHooks[this], {
1557            set: function (n, t) {
1558                if (i.isArray(t)) return (n.checked = i.inArray(i(n).val(), t) >= 0);
1559            },
1560        });
1561    });
1562    var wt = /^(?:textarea|input|select)$/i,
1563        bi = /^([^\.]*|)(?:\.(.+)|)$/,
1564        yf = /(?:^|\s)hover(\.\S+|)\b/,
1565        pf = /^key/,
1566        wf = /^(?:mouse|contextmenu)|click/,
1567        ki = /^(?:focusinfocus|focusoutblur)$/,
1568        di = function (n) {
1569            return i.event.special.hover ? n : n.replace(yf, "mouseenter$1 mouseleave$1");
1570        };
1571    i.event = {
1572        add: function (n, r, u, f, e) {
1573            var a, s, v, y, p, o, b, l, w, c, h;
1574            if (n.nodeType !== 3 && n.nodeType !== 8 && r && u && (a = i._data(n))) {
1575                for (
1576                    u.handler && ((w = u), (u = w.handler), (e = w.selector)),
1577                        u.guid || (u.guid = i.guid++),
1578                        v = a.events,
1579                        v || (a.events = v = {}),
1580                        s = a.handle,
1581                        s ||
1582                            ((a.handle = s = function (n) {
1583                                return typeof i != "undefined" && (!n || i.event.triggered !== n.type) ? i.event.dispatch.apply(s.elem, arguments) : t;
1584                            }),
1585                            (s.elem = n)),
1586                        r = i.trim(di(r)).split(" "),
1587                        y = 0;
1588                    y < r.length;
1589                    y++
1590                )
1591                    (p = bi.exec(r[y]) || []),
1592                        (o = p[1]),
1593                        (b = (p[2] || "").split(".").sort()),
1594                        (h = i.event.special[o] || {}),
1595                        (o = (e ? h.delegateType : h.bindType) || o),
1596                        (h = i.event.special[o] || {}),
1597                        (l = i.extend({ type: o, origType: p[1], data: f, handler: u, guid: u.guid, selector: e, needsContext: e && i.expr.match.needsContext.test(e), namespace: b.join(".") }, w)),
1598                        (c = v[o]),
1599                        c || ((c = v[o] = []), (c.delegateCount = 0), (h.setup && h.setup.call(n, f, b, s) !== !1) || (n.addEventListener ? n.addEventListener(o, s, !1) : n.attachEvent && n.attachEvent("on" + o, s))),
1600                        h.add && (h.add.call(n, l), l.handler.guid || (l.handler.guid = u.guid)),
1601                        e ? c.splice(c.delegateCount++, 0, l) : c.push(l),
1602                        (i.event.global[o] = !0);
1603                n = null;
1604            }
1605        },
1606        global: {},
1607        remove: function (n, t, r, u, f) {
1608            var l,
1609                p,
1610                e,
1611                w,
1612                h,
1613                b,
1614                a,
1615                v,
1616                c,
1617                o,
1618                s,
1619                y = i.hasData(n) && i._data(n);
1620            if (y && (v = y.events)) {
1621                for (t = i.trim(di(t || "")).split(" "), l = 0; l < t.length; l++) {
1622                    if (((p = bi.exec(t[l]) || []), (e = w = p[1]), (h = p[2]), !e)) {
1623                        for (e in v) i.event.remove(n, e + t[l], r, u, !0);
1624                        continue;
1625                    }
1626                    for (
1627                        c = i.event.special[e] || {}, e = (u ? c.delegateType : c.bindType) || e, o = v[e] || [], b = o.length, h = h ? new RegExp("(^|\\.)" + h.split(".").sort().join("\\.(?:.*\\.|)") + "(\\.|$)") : null, a = 0;
1628                        a < o.length;
1629                        a++
1630                    )
1631                        (s = o[a]),
1632                            (f || w === s.origType) &&
1633                                (!r || r.guid === s.guid) &&
1634                                (!h || h.test(s.namespace)) &&
1635                                (!u || u === s.selector || (u === "**" && s.selector)) &&
1636                                (o.splice(a--, 1), s.selector && o.delegateCount--, c.remove && c.remove.call(n, s));
1637                    o.length === 0 && b !== o.length && ((c.teardown && c.teardown.call(n, h, y.handle) !== !1) || i.removeEvent(n, e, y.handle), delete v[e]);
1638                }
1639                i.isEmptyObject(v) && (delete y.handle, i.removeData(n, "events", !0));
1640            }
1641        },
1642        customEvent: { getData: !0, setData: !0, changeData: !0 },
1643        trigger: function (u, f, e, o) {
1644            if (!e || (e.nodeType !== 3 && e.nodeType !== 8)) {
1645                var w,
1646                    d,
1647                    c,
1648                    h,
1649                    l,
1650                    v,
1651                    a,
1652                    y,
1653                    p,
1654                    k,
1655                    s = u.type || u,
1656                    b = [];
1657                if (!ki.test(s + i.event.triggered) && (s.indexOf("!") >= 0 && ((s = s.slice(0, -1)), (d = !0)), s.indexOf(".") >= 0 && ((b = s.split(".")), (s = b.shift()), b.sort()), (e && !i.event.customEvent[s]) || i.event.global[s])) {
1658                    if (
1659                        ((u = typeof u == "object" ? (u[i.expando] ? u : new i.Event(s, u)) : new i.Event(s)),
1660                        (u.type = s),
1661                        (u.isTrigger = !0),
1662                        (u.exclusive = d),
1663                        (u.namespace = b.join(".")),
1664                        (u.namespace_re = u.namespace ? new RegExp("(^|\\.)" + b.join("\\.(?:.*\\.|)") + "(\\.|$)") : null),
1665                        (v = s.indexOf(":") < 0 ? "on" + s : ""),
1666                        !e)
1667                    ) {
1668                        w = i.cache;
1669                        for (c in w) w[c].events && w[c].events[s] && i.event.trigger(u, f, w[c].handle.elem, !0);
1670                        return;
1671                    }
1672                    if (((u.result = t), u.target || (u.target = e), (f = f != null ? i.makeArray(f) : []), f.unshift(u), (a = i.event.special[s] || {}), !a.trigger || a.trigger.apply(e, f) !== !1)) {
1673                        if (((p = [[e, a.bindType || s]]), !o && !a.noBubble && !i.isWindow(e))) {
1674                            for (k = a.delegateType || s, h = ki.test(k + s) ? e : e.parentNode, l = e; h; h = h.parentNode) p.push([h, k]), (l = h);
1675                            l === (e.ownerDocument || r) && p.push([l.defaultView || l.parentWindow || n, k]);
1676                        }
1677                        for (c = 0; c < p.length && !u.isPropagationStopped(); c++)
1678                            (h = p[c][0]),
1679                                (u.type = p[c][1]),
1680                                (y = (i._data(h, "events") || {})[u.type] && i._data(h, "handle")),
1681                                y && y.apply(h, f),
1682                                (y = v && h[v]),
1683                                y && i.acceptData(h) && y.apply && y.apply(h, f) === !1 && u.preventDefault();
1684                        return (
1685                            (u.type = s),
1686                            o ||
1687                                u.isDefaultPrevented() ||
1688                                (a._default && a._default.apply(e.ownerDocument, f) !== !1) ||
1689                                (s === "click" && i.nodeName(e, "a")) ||
1690                                !i.acceptData(e) ||
1691                                (v && e[s] && ((s !== "focus" && s !== "blur") || u.target.offsetWidth !== 0) && !i.isWindow(e) && ((l = e[v]), l && (e[v] = null), (i.event.triggered = s), e[s](), (i.event.triggered = t), l && (e[v] = l))),
1692                            u.result
1693                        );
1694                    }
1695                }
1696            }
1697        },
1698        dispatch: function (r) {
1699            r = i.event.fix(r || n.event);
1700            var f,
1701                c,
1702                e,
1703                l,
1704                a,
1705                h,
1706                v,
1707                u,
1708                s,
1709                y = (i._data(this, "events") || {})[r.type] || [],
1710                p = y.delegateCount,
1711                k = o.call(arguments),
1712                d = !r.exclusive && !r.namespace,
1713                w = i.event.special[r.type] || {},
1714                b = [];
1715            if (((k[0] = r), (r.delegateTarget = this), !w.preDispatch || w.preDispatch.call(this, r) !== !1)) {
1716                if (p && !(r.button && r.type === "click"))
1717                    for (e = r.target; e != this; e = e.parentNode || this)
1718                        if (e.disabled !== !0 || r.type !== "click") {
1719                            for (a = {}, v = [], f = 0; f < p; f++) (u = y[f]), (s = u.selector), a[s] === t && (a[s] = u.needsContext ? i(s, this).index(e) >= 0 : i.find(s, this, null, [e]).length), a[s] && v.push(u);
1720                            v.length && b.push({ elem: e, matches: v });
1721                        }
1722                for (y.length > p && b.push({ elem: this, matches: y.slice(p) }), f = 0; f < b.length && !r.isPropagationStopped(); f++)
1723                    for (h = b[f], r.currentTarget = h.elem, c = 0; c < h.matches.length && !r.isImmediatePropagationStopped(); c++)
1724                        (u = h.matches[c]),
1725                            (d || (!r.namespace && !u.namespace) || (r.namespace_re && r.namespace_re.test(u.namespace))) &&
1726                                ((r.data = u.data), (r.handleObj = u), (l = ((i.event.special[u.origType] || {}).handle || u.handler).apply(h.elem, k)), l !== t && ((r.result = l), l === !1 && (r.preventDefault(), r.stopPropagation())));
1727                return w.postDispatch && w.postDispatch.call(this, r), r.result;
1728            }
1729        },
1730        props: "attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
1731        fixHooks: {},
1732        keyHooks: {
1733            props: "char charCode key keyCode".split(" "),
1734            filter: function (n, t) {
1735                return n.which == null && (n.which = t.charCode != null ? t.charCode : t.keyCode), n;
1736            },
1737        },
1738        mouseHooks: {
1739            props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
1740            filter: function (n, i) {
1741                var o,
1742                    u,
1743                    f,
1744                    e = i.button,
1745                    s = i.fromElement;
1746                return (
1747                    n.pageX == null &&
1748                        i.clientX != null &&
1749                        ((o = n.target.ownerDocument || r),
1750                        (u = o.documentElement),
1751                        (f = o.body),
1752                        (n.pageX = i.clientX + ((u && u.scrollLeft) || (f && f.scrollLeft) || 0) - ((u && u.clientLeft) || (f && f.clientLeft) || 0)),
1753                        (n.pageY = i.clientY + ((u && u.scrollTop) || (f && f.scrollTop) || 0) - ((u && u.clientTop) || (f && f.clientTop) || 0))),
1754                    !n.relatedTarget && s && (n.relatedTarget = s === n.target ? i.toElement : s),
1755                    n.which || e === t || (n.which = e & 1 ? 1 : e & 2 ? 3 : e & 4 ? 2 : 0),
1756                    n
1757                );
1758            },
1759        },
1760        fix: function (n) {
1761            if (n[i.expando]) return n;
1762            var f,
1763                e,
1764                t = n,
1765                u = i.event.fixHooks[n.type] || {},
1766                o = u.props ? this.props.concat(u.props) : this.props;
1767            for (n = i.Event(t), f = o.length; f; ) (e = o[--f]), (n[e] = t[e]);
1768            return n.target || (n.target = t.srcElement || r), n.target.nodeType === 3 && (n.target = n.target.parentNode), (n.metaKey = !!n.metaKey), u.filter ? u.filter(n, t) : n;
1769        },
1770        special: {
1771            load: { noBubble: !0 },
1772            focus: { delegateType: "focusin" },
1773            blur: { delegateType: "focusout" },
1774            beforeunload: {
1775                setup: function (n, t, r) {
1776                    i.isWindow(this) && (this.onbeforeunload = r);
1777                },
1778                teardown: function (n, t) {
1779                    this.onbeforeunload === t && (this.onbeforeunload = null);
1780                },
1781            },
1782        },
1783        simulate: function (n, t, r, u) {
1784            var f = i.extend(new i.Event(), r, { type: n, isSimulated: !0, originalEvent: {} });
1785            u ? i.event.trigger(f, null, t) : i.event.dispatch.call(t, f);
1786            f.isDefaultPrevented() && r.preventDefault();
1787        },
1788    };
1789    i.event.handle = i.event.dispatch;
1790    i.removeEvent = r.removeEventListener
1791        ? function (n, t, i) {
1792              n.removeEventListener && n.removeEventListener(t, i, !1);
1793          }
1794        : function (n, t, i) {
1795              var r = "on" + t;
1796              n.detachEvent && (typeof n[r] == "undefined" && (n[r] = null), n.detachEvent(r, i));
1797          };
1798    i.Event = function (n, t) {
1799        if (!(this instanceof i.Event)) return new i.Event(n, t);
1800        n && n.type ? ((this.originalEvent = n), (this.type = n.type), (this.isDefaultPrevented = n.defaultPrevented || n.returnValue === !1 || (n.getPreventDefault && n.getPreventDefault()) ? tt : a)) : (this.type = n);
1801        t && i.extend(this, t);
1802        this.timeStamp = (n && n.timeStamp) || i.now();
1803        this[i.expando] = !0;
1804    };
1805    i.Event.prototype = {
1806        preventDefault: function () {
1807            this.isDefaultPrevented = tt;
1808            var n = this.originalEvent;
1809            n && (n.preventDefault ? n.preventDefault() : (n.returnValue = !1));
1810        },
1811        stopPropagation: function () {
1812            this.isPropagationStopped = tt;
1813            var n = this.originalEvent;
1814            n && (n.stopPropagation && n.stopPropagation(), (n.cancelBubble = !0));
1815        },
1816        stopImmediatePropagation: function () {
1817            this.isImmediatePropagationStopped = tt;
1818            this.stopPropagation();
1819        },
1820        isDefaultPrevented: a,
1821        isPropagationStopped: a,
1822        isImmediatePropagationStopped: a,
1823    };
1824    i.each({ mouseenter: "mouseover", mouseleave: "mouseout" }, function (n, t) {
1825        i.event.special[n] = {
1826            delegateType: t,
1827            bindType: t,
1828            handle: function (n) {
1829                var f,
1830                    e = this,
1831                    r = n.relatedTarget,
1832                    u = n.handleObj,
1833                    o = u.selector;
1834                return (r && (r === e || i.contains(e, r))) || ((n.type = u.origType), (f = u.handler.apply(this, arguments)), (n.type = t)), f;
1835            },
1836        };
1837    });
1838    i.support.submitBubbles ||
1839        (i.event.special.submit = {
1840            setup: function () {
1841                if (i.nodeName(this, "form")) return !1;
1842                i.event.add(this, "click._submit keypress._submit", function (n) {
1843                    var u = n.target,
1844                        r = i.nodeName(u, "input") || i.nodeName(u, "button") ? u.form : t;
1845                    r &&
1846                        !i._data(r, "_submit_attached") &&
1847                        (i.event.add(r, "submit._submit", function (n) {
1848                            n._submit_bubble = !0;
1849                        }),
1850                        i._data(r, "_submit_attached", !0));
1851                });
1852            },
1853            postDispatch: function (n) {
1854                n._submit_bubble && (delete n._submit_bubble, this.parentNode && !n.isTrigger && i.event.simulate("submit", this.parentNode, n, !0));
1855            },
1856            teardown: function () {
1857                if (i.nodeName(this, "form")) return !1;
1858                i.event.remove(this, "._submit");
1859            },
1860        });
1861    i.support.changeBubbles ||
1862        (i.event.special.change = {
1863            setup: function () {
1864                if (wt.test(this.nodeName))
1865                    return (
1866                        (this.type === "checkbox" || this.type === "radio") &&
1867                            (i.event.add(this, "propertychange._change", function (n) {
1868                                n.originalEvent.propertyName === "checked" && (this._just_changed = !0);
1869                            }),
1870                            i.event.add(this, "click._change", function (n) {
1871                                this._just_changed && !n.isTrigger && (this._just_changed = !1);
1872                                i.event.simulate("change", this, n, !0);
1873                            })),
1874                        !1
1875                    );
1876                i.event.add(this, "beforeactivate._change", function (n) {
1877                    var t = n.target;
1878                    wt.test(t.nodeName) &&
1879                        !i._data(t, "_change_attached") &&
1880                        (i.event.add(t, "change._change", function (n) {
1881                            !this.parentNode || n.isSimulated || n.isTrigger || i.event.simulate("change", this.parentNode, n, !0);
1882                        }),
1883                        i._data(t, "_change_attached", !0));
1884                });
1885            },
1886            handle: function (n) {
1887                var t = n.target;
1888                if (this !== t || n.isSimulated || n.isTrigger || (t.type !== "radio" && t.type !== "checkbox")) return n.handleObj.handler.apply(this, arguments);
1889            },
1890            teardown: function () {
1891                return i.event.remove(this, "._change"), !wt.test(this.nodeName);
1892            },
1893        });
1894    i.support.focusinBubbles ||
1895        i.each({ focus: "focusin", blur: "focusout" }, function (n, t) {
1896            var u = 0,
1897                f = function (n) {
1898                    i.event.simulate(t, n.target, i.event.fix(n), !0);
1899                };
1900            i.event.special[t] = {
1901                setup: function () {
1902                    u++ == 0 && r.addEventListener(n, f, !0);
1903                },
1904                teardown: function () {
1905                    --u == 0 && r.removeEventListener(n, f, !0);
1906                },
1907            };
1908        });
1909    i.fn.extend({
1910        on: function (n, r, u, f, e) {
1911            var o, s;
1912            if (typeof n == "object") {
1913                typeof r != "string" && ((u = u || r), (r = t));
1914                for (s in n) this.on(s, r, u, n[s], e);
1915                return this;
1916            }
1917            if ((u == null && f == null ? ((f = r), (u = r = t)) : f == null && (typeof r == "string" ? ((f = u), (u = t)) : ((f = u), (u = r), (r = t))), f === !1)) f = a;
1918            else if (!f) return this;
1919            return (
1920                e === 1 &&
1921                    ((o = f),
1922                    (f = function (n) {
1923                        return i().off(n), o.apply(this, arguments);
1924                    }),
1925                    (f.guid = o.guid || (o.guid = i.guid++))),
1926                this.each(function () {
1927                    i.event.add(this, n, f, u, r);
1928                })
1929            );
1930        },
1931        one: function (n, t, i, r) {
1932            return this.on(n, t, i, r, 1);
1933        },
1934        off: function (n, r, u) {
1935            var f, e;
1936            if (n && n.preventDefault && n.handleObj) return (f = n.handleObj), i(n.delegateTarget).off(f.namespace ? f.origType + "." + f.namespace : f.origType, f.selector, f.handler), this;
1937            if (typeof n == "object") {
1938                for (e in n) this.off(e, r, n[e]);
1939                return this;
1940            }
1941            return (
1942                (r === !1 || typeof r == "function") && ((u = r), (r = t)),
1943                u === !1 && (u = a),
1944                this.each(function () {
1945                    i.event.remove(this, n, u, r);
1946                })
1947            );
1948        },
1949        bind: function (n, t, i) {
1950            return this.on(n, null, t, i);
1951        },
1952        unbind: function (n, t) {
1953            return this.off(n, null, t);
1954        },
1955        live: function (n, t, r) {
1956            i(this.context).on(n, this.selector, t, r);
1957            return this;
1958        },
1959        die: function (n, t) {
1960            return i(this.context).off(n, this.selector || "**", t), this;
1961        },
1962        delegate: function (n, t, i, r) {
1963            return this.on(t, n, i, r);
1964        },
1965        undelegate: function (n, t, i) {
1966            return arguments.length === 1 ? this.off(n, "**") : this.off(t, n || "**", i);
1967        },
1968        trigger: function (n, t) {
1969            return this.each(function () {
1970                i.event.trigger(n, t, this);
1971            });
1972        },
1973        triggerHandler: function (n, t) {
1974            if (this[0]) return i.event.trigger(n, t, this[0], !0);
1975        },
1976        toggle: function (n) {
1977            var t = arguments,
1978                u = n.guid || i.guid++,
1979                r = 0,
1980                f = function (u) {
1981                    var f = (i._data(this, "lastToggle" + n.guid) || 0) % r;
1982                    return i._data(this, "lastToggle" + n.guid, f + 1), u.preventDefault(), t[f].apply(this, arguments) || !1;
1983                };
1984            for (f.guid = u; r < t.length; ) t[r++].guid = u;
1985            return this.click(f);
1986        },
1987        hover: function (n, t) {
1988            return this.mouseenter(n).mouseleave(t || n);
1989        },
1990    });
1991    i.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 (
1992        n,
1993        t
1994    ) {
1995        i.fn[t] = function (n, i) {
1996            return i == null && ((i = n), (n = null)), arguments.length > 0 ? this.on(t, null, n, i) : this.trigger(t);
1997        };
1998        pf.test(t) && (i.event.fixHooks[t] = i.event.keyHooks);
1999        wf.test(t) && (i.event.fixHooks[t] = i.event.mouseHooks);
2000    }),
2001        (function (n, t) {
2002            function r(n, t, i, r) {
2003                i = i || [];
2004                t = t || s;
2005                var e,
2006                    u,
2007                    o,
2008                    f,
2009                    h = t.nodeType;
2010                if (!n || typeof n != "string") return i;
2011                if (h !== 1 && h !== 9) return [];
2012                if (((o = g(t)), !o && !r && (e = wi.exec(n))))
2013                    if ((f = e[1])) {
2014                        if (h === 9)
2015                            if (((u = t.getElementById(f)), u && u.parentNode)) {
2016                                if (u.id === f) return i.push(u), i;
2017                            } else return i;
2018                        else if (t.ownerDocument && (u = t.ownerDocument.getElementById(f)) && dt(t, u) && u.id === f) return i.push(u), i;
2019                    } else {
2020                        if (e[2]) return p.apply(i, w.call(t.getElementsByTagName(n), 0)), i;
2021                        if ((f = e[3]) && oi && t.getElementsByClassName) return p.apply(i, w.call(t.getElementsByClassName(f), 0)), i;
2022                    }
2023                return kt(n.replace(it, "$1"), t, i, r, o);
2024            }
2025            function k(n) {
2026                return function (t) {
2027                    var i = t.nodeName.toLowerCase();
2028                    return i === "input" && t.type === n;
2029                };
2030            }
2031            function si(n) {
2032                return function (t) {
2033                    var i = t.nodeName.toLowerCase();
2034                    return (i === "input" || i === "button") && t.type === n;
2035                };
2036            }
2037            function y(n) {
2038                return h(function (t) {
2039                    return (
2040                        (t = +t),
2041                        h(function (i, r) {
2042                            for (var u, f = n([], i.length, t), e = f.length; e--; ) i[(u = f[e])] && (i[u] = !(r[u] = i[u]));
2043                        })
2044                    );
2045                });
2046            }
2047            function ut(n, t, i) {
2048                if (n === t) return i;
2049                for (var r = n.nextSibling; r; ) {
2050                    if (r === t) return -1;
2051                    r = r.nextSibling;
2052                }
2053                return 1;
2054            }
2055            function ft(n, t) {
2056                var o,
2057                    f,
2058                    c,
2059                    h,
2060                    i,
2061                    l,
2062                    a,
2063                    v = ri[e][n];
2064                if (v) return t ? 0 : v.slice(0);
2065                for (i = n, l = [], a = u.preFilter; i; ) {
2066                    (!o || (f = vi.exec(i))) && (f && (i = i.slice(f[0].length)), l.push((c = [])));
2067                    o = !1;
2068                    (f = yi.exec(i)) && (c.push((o = new ni(f.shift()))), (i = i.slice(o.length)), (o.type = f[0].replace(it, " ")));
2069                    for (h in u.filter) (f = rt[h].exec(i)) && (!a[h] || (f = a[h](f, s, !0))) && (c.push((o = new ni(f.shift()))), (i = i.slice(o.length)), (o.type = h), (o.matches = f));
2070                    if (!o) break;
2071                }
2072                return t ? i.length : i ? r.error(n) : ri(n, l).slice(0);
2073            }
2074            function yt(n, t, i) {
2075                var r = t.dir,
2076                    u = i && t.dir === "parentNode",
2077                    f = ci++;
2078                return t.first
2079                    ? function (t, i, f) {
2080                          while ((t = t[r])) if (u || t.nodeType === 1) return n(t, i, f);
2081                      }
2082                    : function (t, i, o) {
2083                          if (o) {
2084                              while ((t = t[r])) if ((u || t.nodeType === 1) && n(t, i, o)) return t;
2085                          } else
2086                              for (var s, h = tt + " " + f + " ", c = h + ot; (t = t[r]); )
2087                                  if (u || t.nodeType === 1) {
2088                                      if ((s = t[e]) === c) return t.sizset;
2089                                      if (typeof s == "string" && s.indexOf(h) === 0) {
2090                                          if (t.sizset) return t;
2091                                      } else {
2092                                          if (((t[e] = c), n(t, i, o))) return (t.sizset = !0), t;
2093                                          t.sizset = !1;
2094                                      }
2095                                  }
2096                      };
2097            }
2098            function pt(n) {
2099                return n.length > 1
2100                    ? function (t, i, r) {
2101                          for (var u = n.length; u--; ) if (!n[u](t, i, r)) return !1;
2102                          return !0;
2103                      }
2104                    : n[0];
2105            }
2106            function et(n, t, i, r, u) {
2107                for (var e, o = [], f = 0, s = n.length, h = t != null; f < s; f++) (e = n[f]) && (!i || i(e, r, u)) && (o.push(e), h && t.push(f));
2108                return o;
2109            }
2110            function wt(n, t, i, r, u, f) {
2111                return (
2112                    r && !r[e] && (r = wt(r)),
2113                    u && !u[e] && (u = wt(u, f)),
2114                    h(function (f, e, o, s) {
2115                        if (!f || !u) {
2116                            var c,
2117                                l,
2118                                a,
2119                                v = [],
2120                                y = [],
2121                                b = e.length,
2122                                k = f || rr(t || "*", o.nodeType ? [o] : o, [], f),
2123                                w = n && (f || !t) ? et(k, v, n, o, s) : k,
2124                                h = i ? (u || (f ? n : b || r) ? [] : e) : w;
2125                            if ((i && i(w, h, o, s), r)) for (a = et(h, y), r(a, [], o, s), c = a.length; c--; ) (l = a[c]) && (h[y[c]] = !(w[y[c]] = l));
2126                            if (f) for (c = n && h.length; c--; ) (l = h[c]) && (f[v[c]] = !(e[v[c]] = l));
2127                            else (h = et(h === e ? h.splice(b, h.length) : h)), u ? u(null, e, h, s) : p.apply(e, h);
2128                        }
2129                    })
2130                );
2131            }
2132            function bt(n) {
2133                for (
2134                    var s,
2135                        r,
2136                        i,
2137                        o = n.length,
2138                        h = u.relative[n[0].type],
2139                        c = h || u.relative[" "],
2140                        t = h ? 1 : 0,
2141                        l = yt(
2142                            function (n) {
2143                                return n === s;
2144                            },
2145                            c,
2146                            !0
2147                        ),
2148                        a = yt(
2149                            function (n) {
2150                                return ti.call(s, n) > -1;
2151                            },
2152                            c,
2153                            !0
2154                        ),
2155                        f = [
2156                            function (n, t, i) {
2157                                return (!h && (i || t !== nt)) || ((s = t).nodeType ? l(n, t, i) : a(n, t, i));
2158                            },
2159                        ];
2160                    t < o;
2161                    t++
2162                )
2163                    if ((r = u.relative[n[t].type])) f = [yt(pt(f), r)];
2164                    else {
2165                        if (((r = u.filter[n[t].type].apply(null, n[t].matches)), r[e])) {
2166                            for (i = ++t; i < o; i++) if (u.relative[n[i].type]) break;
2167                            return wt(
2168                                t > 1 && pt(f),
2169                                t > 1 &&
2170                                    n
2171                                        .slice(0, t - 1)
2172                                        .join("")
2173                                        .replace(it, "$1"),
2174                                r,
2175                                t < i && bt(n.slice(t, i)),
2176                                i < o && bt((n = n.slice(i))),
2177                                i < o && n.join("")
2178                            );
2179                        }
2180                        f.push(r);
2181                    }
2182                return pt(f);
2183            }
2184            function ir(n, t) {
2185                var f = t.length > 0,
2186                    e = n.length > 0,
2187                    i = function (o, h, c, l, a) {
2188                        var y,
2189                            b,
2190                            k,
2191                            w = [],
2192                            d = 0,
2193                            v = "0",
2194                            g = o && [],
2195                            it = a != null,
2196                            rt = nt,
2197                            ft = o || (e && u.find.TAG("*", (a && h.parentNode) || h)),
2198                            ut = (tt += rt == null ? 1 : Math.E);
2199                        for (it && ((nt = h !== s && h), (ot = i.el)); (y = ft[v]) != null; v++) {
2200                            if (e && y) {
2201                                for (b = 0; (k = n[b]); b++)
2202                                    if (k(y, h, c)) {
2203                                        l.push(y);
2204                                        break;
2205                                    }
2206                                it && ((tt = ut), (ot = ++i.el));
2207                            }
2208                            f && ((y = !k && y) && d--, o && g.push(y));
2209                        }
2210                        if (((d += v), f && v !== d)) {
2211                            for (b = 0; (k = t[b]); b++) k(g, w, h, c);
2212                            if (o) {
2213                                if (d > 0) while (v--) g[v] || w[v] || (w[v] = li.call(l));
2214                                w = et(w);
2215                            }
2216                            p.apply(l, w);
2217                            it && !o && w.length > 0 && d + t.length > 1 && r.uniqueSort(l);
2218                        }
2219                        return it && ((tt = ut), (nt = rt)), g;
2220                    };
2221                return (i.el = 0), f ? h(i) : i;
2222            }
2223            function rr(n, t, i, u) {
2224                for (var f = 0, e = t.length; f < e; f++) r(n, t[f], i, u);
2225                return i;
2226            }
2227            function kt(n, t, i, r, f) {
2228                var o,
2229                    e,
2230                    s,
2231                    c,
2232                    l,
2233                    h = ft(n),
2234                    a = h.length;
2235                if (!r && h.length === 1) {
2236                    if (((e = h[0] = h[0].slice(0)), e.length > 2 && (s = e[0]).type === "ID" && t.nodeType === 9 && !f && u.relative[e[1].type])) {
2237                        if (((t = u.find.ID(s.matches[0].replace(v, ""), t, f)[0]), !t)) return i;
2238                        n = n.slice(e.shift().length);
2239                    }
2240                    for (o = rt.POS.test(n) ? -1 : e.length - 1; o >= 0; o--) {
2241                        if (((s = e[o]), u.relative[(c = s.type)])) break;
2242                        if ((l = u.find[c]) && (r = l(s.matches[0].replace(v, ""), (vt.test(e[0].type) && t.parentNode) || t, f))) {
2243                            if ((e.splice(o, 1), (n = r.length && e.join("")), !n)) return p.apply(i, w.call(r, 0)), i;
2244                            break;
2245                        }
2246                    }
2247                }
2248                return ht(n, h)(r, t, f, i, vt.test(n)), i;
2249            }
2250            function hi() {}
2251            var ot,
2252                st,
2253                u,
2254                d,
2255                g,
2256                dt,
2257                ht,
2258                ct,
2259                b,
2260                nt,
2261                gt = !0,
2262                c = "undefined",
2263                e = ("sizcache" + Math.random()).replace(".", ""),
2264                ni = String,
2265                s = n.document,
2266                o = s.documentElement,
2267                tt = 0,
2268                ci = 0,
2269                li = [].pop,
2270                p = [].push,
2271                w = [].slice,
2272                ti =
2273                    [].indexOf ||
2274                    function (n) {
2275                        for (var t = 0, i = this.length; t < i; t++) if (this[t] === n) return t;
2276                        return -1;
2277                    },
2278                h = function (n, t) {
2279                    return (n[e] = t == null || t), n;
2280                },
2281                lt = function () {
2282                    var n = {},
2283                        t = [];
2284                    return h(function (i, r) {
2285                        return t.push(i) > u.cacheLength && delete n[t.shift()], (n[i] = r);
2286                    }, n);
2287                },
2288                ii = lt(),
2289                ri = lt(),
2290                ui = lt(),
2291                f = "[\\x20\\t\\r\\n\\f]",
2292                a = "(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",
2293                ai = a.replace("w", "w#"),
2294                fi = "\\[" + f + "*(" + a + ")" + f + "*(?:([*^$|!~]?=)" + f + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + ai + ")|)|)" + f + "*\\]",
2295                at = ":(" + a + ")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:" + fi + ")|[^:]|\\\\.)*|.*))\\)|)",
2296                ei = ":(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + f + "*((?:-\\d)?\\d*)" + f + "*\\)|)(?=[^-]|$)",
2297                it = new RegExp("^" + f + "+|((?:^|[^\\\\])(?:\\\\.)*)" + f + "+$", "g"),
2298                vi = new RegExp("^" + f + "*," + f + "*"),
2299                yi = new RegExp("^" + f + "*([\\x20\\t\\r\\n\\f>+~])" + f + "*"),
2300                pi = new RegExp(at),
2301                wi = /^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,
2302                vt = /[\x20\t\r\n\f]*[+~]/,
2303                bi = /h\d/i,
2304                ki = /input|select|textarea|button/i,
2305                v = /\\(?!\\)/g,
2306                rt = {
2307                    ID: new RegExp("^#(" + a + ")"),
2308                    CLASS: new RegExp("^\\.(" + a + ")"),
2309                    NAME: new RegExp("^\\[name=['\"]?(" + a + ")['\"]?\\]"),
2310                    TAG: new RegExp("^(" + a.replace("w", "w*") + ")"),
2311                    ATTR: new RegExp("^" + fi),
2312                    PSEUDO: new RegExp("^" + at),
2313                    POS: new RegExp(ei, "i"),
2314                    CHILD: new RegExp("^:(only|nth|first|last)-child(?:\\(" + f + "*(even|odd|(([+-]|)(\\d*)n|)" + f + "*(?:([+-]|)" + f + "*(\\d+)|))" + f + "*\\)|)", "i"),
2315                    needsContext: new RegExp("^" + f + "*[>+~]|" + ei, "i"),
2316                },
2317                l = function (n) {
2318                    var t = s.createElement("div");
2319                    try {
2320                        return n(t);
2321                    } catch (i) {
2322                        return !1;
2323                    } finally {
2324                        t = null;
2325                    }
2326                },
2327                di = l(function (n) {
2328                    return n.appendChild(s.createComment("")), !n.getElementsByTagName("*").length;
2329                }),
2330                gi = l(function (n) {
2331                    return (n.innerHTML = "<a href='#'></a>"), n.firstChild && typeof n.firstChild.getAttribute !== c && n.firstChild.getAttribute("href") === "#";
2332                }),
2333                nr = l(function (n) {
2334                    n.innerHTML = "<select></select>";
2335                    var t = typeof n.lastChild.getAttribute("multiple");
2336                    return t !== "boolean" && t !== "string";
2337                }),
2338                oi = l(function (n) {
2339                    return ((n.innerHTML = "<div class='hidden e'></div><div class='hidden'></div>"), !n.getElementsByClassName || !n.getElementsByClassName("e").length)
2340                        ? !1
2341                        : ((n.lastChild.className = "e"), n.getElementsByClassName("e").length === 2);
2342                }),
2343                tr = l(function (n) {
2344                    n.id = e + 0;
2345                    n.innerHTML = "<a name='" + e + "'></a><div name='" + e + "'></div>";
2346                    o.insertBefore(n, o.firstChild);
2347                    var t = s.getElementsByName && s.getElementsByName(e).length === 2 + s.getElementsByName(e + 0).length;
2348                    return (st = !s.getElementById(e)), o.removeChild(n), t;
2349                });
2350            try {
2351                w.call(o.childNodes, 0)[0].nodeType;
2352            } catch (ur) {
2353                w = function (n) {
2354                    for (var t, i = []; (t = this[n]); n++) i.push(t);
2355                    return i;
2356                };
2357            }
2358            r.matches = function (n, t) {
2359                return r(n, null, null, t);
2360            };
2361            r.matchesSelector = function (n, t) {
2362                return r(t, null, null, [n]).length > 0;
2363            };
2364            d = r.getText = function (n) {
2365                var r,
2366                    i = "",
2367                    u = 0,
2368                    t = n.nodeType;
2369                if (t) {
2370                    if (t === 1 || t === 9 || t === 11) {
2371                        if (typeof n.textContent == "string") return n.textContent;
2372                        for (n = n.firstChild; n; n = n.nextSibling) i += d(n);
2373                    } else if (t === 3 || t === 4) return n.nodeValue;
2374                } else for (; (r = n[u]); u++) i += d(r);
2375                return i;
2376            };
2377            g = r.isXML = function (n) {
2378                var t = n && (n.ownerDocument || n).documentElement;
2379                return t ? t.nodeName !== "HTML" : !1;
2380            };
2381            dt = r.contains = o.contains
2382                ? function (n, t) {
2383                      var r = n.nodeType === 9 ? n.documentElement : n,
2384                          i = t && t.parentNode;
2385                      return n === i || !!(i && i.nodeType === 1 && r.contains && r.contains(i));
2386                  }
2387                : o.compareDocumentPosition
2388                ? function (n, t) {
2389                      return t && !!(n.compareDocumentPosition(t) & 16);
2390                  }
2391                : function (n, t) {
2392                      while ((t = t.parentNode)) if (t === n) return !0;
2393                      return !1;
2394                  };
2395            r.attr = function (n, t) {
2396                var i,
2397                    r = g(n);
2398                return (r || (t = t.toLowerCase()), (i = u.attrHandle[t])) ? i(n) : r || nr ? n.getAttribute(t) : ((i = n.getAttributeNode(t)), i ? (typeof n[t] == "boolean" ? (n[t] ? t : null) : i.specified ? i.value : null) : null);
2399            };
2400            u = r.selectors = {
2401                cacheLength: 50,
2402                createPseudo: h,
2403                match: rt,
2404                attrHandle: gi
2405                    ? {}
2406                    : {
2407                          href: function (n) {
2408                              return n.getAttribute("href", 2);
2409                          },
2410                          type: function (n) {
2411                              return n.getAttribute("type");
2412                          },
2413                      },
2414                find: {
2415                    ID: st
2416                        ? function (n, t, i) {
2417                              if (typeof t.getElementById !== c && !i) {
2418                                  var r = t.getElementById(n);
2419                                  return r && r.parentNode ? [r] : [];
2420                              }
2421                          }
2422                        : function (n, i, r) {
2423                              if (typeof i.getElementById !== c && !r) {
2424                                  var u = i.getElementById(n);
2425                                  return u ? (u.id === n || (typeof u.getAttributeNode !== c && u.getAttributeNode("id").value === n) ? [u] : t) : [];
2426                              }
2427                          },
2428                    TAG: di
2429                        ? function (n, t) {
2430                              if (typeof t.getElementsByTagName !== c) return t.getElementsByTagName(n);
2431                          }
2432                        : function (n, t) {
2433                              var f = t.getElementsByTagName(n),
2434                                  i,
2435                                  r,
2436                                  u;
2437                              if (n === "*") {
2438                                  for (r = [], u = 0; (i = f[u]);
2438 u++) i.nodeType === 1 && r.push(i);
2439                                  return r;
2440                              }
2441                              return f;
2442                          },
2443                    NAME:
2444                        tr &&
2445                        function (n, t) {
2446                            if (typeof t.getElementsByName !== c) return t.getElementsByName(name);
2447                        },
2448                    CLASS:
2449                        oi &&
2450                        function (n, t, i) {
2451                            if (typeof t.getElementsByClassName !== c && !i) return t.getElementsByClassName(n);
2452                        },
2453                },
2454                relative: { ">": { dir: "parentNode", first: !0 }, " ": { dir: "parentNode" }, "+": { dir: "previousSibling", first: !0 }, "~": { dir: "previousSibling" } },
2455                preFilter: {
2456                    ATTR: function (n) {
2457                        return (n[1] = n[1].replace(v, "")), (n[3] = (n[4] || n[5] || "").replace(v, "")), n[2] === "~=" && (n[3] = " " + n[3] + " "), n.slice(0, 4);
2458                    },
2459                    CHILD: function (n) {
2460                        return (
2461                            (n[1] = n[1].toLowerCase()),
2462                            n[1] === "nth" ? (n[2] || r.error(n[0]), (n[3] = +(n[3] ? n[4] + (n[5] || 1) : 2 * (n[2] === "even" || n[2] === "odd"))), (n[4] = +(n[6] + n[7] || n[2] === "odd"))) : n[2] && r.error(n[0]),
2463                            n
2464                        );
2465                    },
2466                    PSEUDO: function (n) {
2467                        var t, i;
2468                        return rt.CHILD.test(n[0])
2469                            ? null
2470                            : (n[3] ? (n[2] = n[3]) : (t = n[4]) && (pi.test(t) && (i = ft(t, !0)) && (i = t.indexOf(")", t.length - i) - t.length) && ((t = t.slice(0, i)), (n[0] = n[0].slice(0, i))), (n[2] = t)), n.slice(0, 3));
2471                    },
2472                },
2473                filter: {
2474                    ID: st
2475                        ? function (n) {
2476                              return (
2477                                  (n = n.replace(v, "")),
2478                                  function (t) {
2479                                      return t.getAttribute("id") === n;
2480                                  }
2481                              );
2482                          }
2483                        : function (n) {
2484                              return (
2485                                  (n = n.replace(v, "")),
2486                                  function (t) {
2487                                      var i = typeof t.getAttributeNode !== c && t.getAttributeNode("id");
2488                                      return i && i.value === n;
2489                                  }
2490                              );
2491                          },
2492                    TAG: function (n) {
2493                        return n === "*"
2494                            ? function () {
2495                                  return !0;
2496                              }
2497                            : ((n = n.replace(v, "").toLowerCase()),
2498                              function (t) {
2499                                  return t.nodeName && t.nodeName.toLowerCase() === n;
2500                              });
2501                    },
2502                    CLASS: function (n) {
2503                        var t = ii[e][n];
2504                        return (
2505                            t || (t = ii(n, new RegExp("(^|" + f + ")" + n + "(" + f + "|$)"))),
2506                            function (n) {
2507                                return t.test(n.className || (typeof n.getAttribute !== c && n.getAttribute("class")) || "");
2508                            }
2509                        );
2510                    },
2511                    ATTR: function (n, t, i) {
2512                        return function (u) {
2513                            var f = r.attr(u, n);
2514                            return f == null
2515                                ? t === "!="
2516                                : t
2517                                ? ((f += ""),
2518                                  t === "="
2519                                      ? f === i
2520                                      : t === "!="
2521                                      ? f !== i
2522                                      : t === "^="
2523                                      ? i && f.indexOf(i) === 0
2524                                      : t === "*="
2525                                      ? i && f.indexOf(i) > -1
2526                                      : t === "$="
2527                                      ? i && f.substr(f.length - i.length) === i
2528                                      : t === "~="
2529                                      ? (" " + f + " ").indexOf(i) > -1
2530                                      : t === "|="
2531                                      ? f === i || f.substr(0, i.length + 1) === i + "-"
2532                                      : !1)
2533                                : !0;
2534                        };
2535                    },
2536                    CHILD: function (n, t, i, r) {
2537                        return n === "nth"
2538                            ? function (n) {
2539                                  var t,
2540                                      u,
2541                                      f = n.parentNode;
2542                                  if (i === 1 && r === 0) return !0;
2543                                  if (f) for (u = 0, t = f.firstChild; t; t = t.nextSibling) if (t.nodeType === 1 && (u++, n === t)) break;
2544                                  return (u -= r), u === i || (u % i == 0 && u / i >= 0);
2545                              }
2546                            : function (t) {
2547                                  var i = t;
2548                                  switch (n) {
2549                                      case "only":
2550                                      case "first":
2551                                          while ((i = i.previousSibling)) if (i.nodeType === 1) return !1;
2552                                          if (n === "first") return !0;
2553                                          i = t;
2554                                      case "last":
2555                                          while ((i = i.nextSibling)) if (i.nodeType === 1) return !1;
2556                                          return !0;
2557                                  }
2558                              };
2559                    },
2560                    PSEUDO: function (n, t) {
2561                        var f,
2562                            i = u.pseudos[n] || u.setFilters[n.toLowerCase()] || r.error("unsupported pseudo: " + n);
2563                        return i[e]
2564                            ? i(t)
2565                            : i.length > 1
2566                            ? ((f = [n, n, "", t]),
2567                              u.setFilters.hasOwnProperty(n.toLowerCase())
2568                                  ? h(function (n, r) {
2569                                        for (var u, f = i(n, t), e = f.length; e--; ) (u = ti.call(n, f[e])), (n[u] = !(r[u] = f[e]));
2570                                    })
2571                                  : function (n) {
2572                                        return i(n, 0, f);
2573                                    })
2574                            : i;
2575                    },
2576                },
2577                pseudos: {
2578                    not: h(function (n) {
2579                        var i = [],
2580                            r = [],
2581                            t = ht(n.replace(it, "$1"));
2582                        return t[e]
2583                            ? h(function (n, i, r, u) {
2584                                  for (var e, o = t(n, null, u, []), f = n.length; f--; ) (e = o[f]) && (n[f] = !(i[f] = e));
2585                              })
2586                            : function (n, u, f) {
2587                                  return (i[0] = n), t(i, null, f, r), !r.pop();
2588                              };
2589                    }),
2590                    has: h(function (n) {
2591                        return function (t) {
2592                            return r(n, t).length > 0;
2593                        };
2594                    }),
2595                    contains: h(function (n) {
2596                        return function (t) {
2597                            return (t.textContent || t.innerText || d(t)).indexOf(n) > -1;
2598                        };
2599                    }),
2600                    enabled: function (n) {
2601                        return n.disabled === !1;
2602                    },
2603                    disabled: function (n) {
2604                        return n.disabled === !0;
2605                    },
2606                    checked: function (n) {
2607                        var t = n.nodeName.toLowerCase();
2608                        return (t === "input" && !!n.checked) || (t === "option" && !!n.selected);
2609                    },
2610                    selected: function (n) {
2611                        return n.parentNode && n.parentNode.selectedIndex, n.selected === !0;
2612                    },
2613                    parent: function (n) {
2614                        return !u.pseudos.empty(n);
2615                    },
2616                    empty: function (n) {
2617                        var t;
2618                        for (n = n.firstChild; n; ) {
2619                            if (n.nodeName > "@" || (t = n.nodeType) === 3 || t === 4) return !1;
2620                            n = n.nextSibling;
2621                        }
2622                        return !0;
2623                    },
2624                    header: function (n) {
2625                        return bi.test(n.nodeName);
2626                    },
2627                    text: function (n) {
2628                        var t, i;
2629                        return n.nodeName.toLowerCase() === "input" && (t = n.type) === "text" && ((i = n.getAttribute("type")) == null || i.toLowerCase() === t);
2630                    },
2631                    radio: k("radio"),
2632                    checkbox: k("checkbox"),
2633                    file: k("file"),
2634                    password: k("password"),
2635                    image: k("image"),
2636                    submit: si("submit"),
2637                    reset: si("reset"),
2638                    button: function (n) {
2639                        var t = n.nodeName.toLowerCase();
2640                        return (t === "input" && n.type === "button") || t === "button";
2641                    },
2642                    input: function (n) {
2643                        return ki.test(n.nodeName);
2644                    },
2645                    focus: function (n) {
2646                        var t = n.ownerDocument;
2647                        return n === t.activeElement && (!t.hasFocus || t.hasFocus()) && !!(n.type || n.href);
2648                    },
2649                    active: function (n) {
2650                        return n === n.ownerDocument.activeElement;
2651                    },
2652                    first: y(function () {
2653                        return [0];
2654                    }),
2655                    last: y(function (n, t) {
2656                        return [t - 1];
2657                    }),
2658                    eq: y(function (n, t, i) {
2659                        return [i < 0 ? i + t : i];
2660                    }),
2661                    even: y(function (n, t) {
2662                        for (var i = 0; i < t; i += 2) n.push(i);
2663                        return n;
2664                    }),
2665                    odd: y(function (n, t) {
2666                        for (var i = 1; i < t; i += 2) n.push(i);
2667                        return n;
2668                    }),
2669                    lt: y(function (n, t, i) {
2670                        for (var r = i < 0 ? i + t : i; --r >= 0; ) n.push(r);
2671                        return n;
2672                    }),
2673                    gt: y(function (n, t, i) {
2674                        for (var r = i < 0 ? i + t : i; ++r < t; ) n.push(r);
2675                        return n;
2676                    }),
2677                },
2678            };
2679            ct = o.compareDocumentPosition
2680                ? function (n, t) {
2681                      return n === t ? ((b = !0), 0) : (!n.compareDocumentPosition || !t.compareDocumentPosition ? n.compareDocumentPosition : n.compareDocumentPosition(t) & 4) ? -1 : 1;
2682                  }
2683                : function (n, t) {
2684                      var i;
2685                      if (n === t) return (b = !0), 0;
2686                      if (n.sourceIndex && t.sourceIndex) return n.sourceIndex - t.sourceIndex;
2687                      var e,
2688                          h,
2689                          u = [],
2690                          f = [],
2691                          o = n.parentNode,
2692                          s = t.parentNode,
2693                          r = o;
2694                      if (o === s) return ut(n, t);
2695                      if (o) {
2696                          if (!s) return 1;
2697                      } else return -1;
2698                      while (r) u.unshift(r), (r = r.parentNode);
2699                      for (r = s; r; ) f.unshift(r), (r = r.parentNode);
2700                      for (e = u.length, h = f.length, i = 0; i < e && i < h; i++) if (u[i] !== f[i]) return ut(u[i], f[i]);
2701                      return i === e ? ut(n, f[i], -1) : ut(u[i], t, 1);
2702                  };
2703            [0, 0].sort(ct);
2704            gt = !b;
2705            r.uniqueSort = function (n) {
2706                var i,
2707                    t = 1;
2708                if (((b = gt), n.sort(ct), b)) for (; (i = n[t]); t++) i === n[t - 1] && n.splice(t--, 1);
2709                return n;
2710            };
2711            r.error = function (n) {
2712                throw new Error("Syntax error, unrecognized expression: " + n);
2713            };
2714            ht = r.compile = function (n, t) {
2715                var r,
2716                    u = [],
2717                    f = [],
2718                    i = ui[e][n];
2719                if (!i) {
2720                    for (t || (t = ft(n)), r = t.length; r--; ) (i = bt(t[r])), i[e] ? u.push(i) : f.push(i);
2721                    i = ui(n, ir(f, u));
2722                }
2723                return i;
2724            };
2725            s.querySelectorAll &&
2726                (function () {
2727                    var u,
2728                        s = kt,
2729                        h = /'|\\/g,
2730                        c = /\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,
2731                        n = [":focus"],
2732                        t = [":active", ":focus"],
2733                        i = o.matchesSelector || o.mozMatchesSelector || o.webkitMatchesSelector || o.oMatchesSelector || o.msMatchesSelector;
2734                    l(function (t) {
2735                        t.innerHTML = "<select><option selected=''></option></select>";
2736                        t.querySelectorAll("[selected]").length || n.push("\\[" + f + "*(?:checked|disabled|ismap|multiple|readonly|selected|value)");
2737                        t.querySelectorAll(":checked").length || n.push(":checked");
2738                    });
2739                    l(function (t) {
2740                        t.innerHTML = "<p test=''></p>";
2741                        t.querySelectorAll("[test^='']").length && n.push("[*^$]=" + f + "*(?:\"\"|'')");
2742                        t.innerHTML = "<input type='hidden'/>";
2743                        t.querySelectorAll(":enabled").length || n.push(":enabled", ":disabled");
2744                    });
2745                    n = new RegExp(n.join("|"));
2746                    kt = function (t, i, r, u, f) {
2747                        if (!u && !f && (!n || !n.test(t))) {
2748                            var o,
2749                                l,
2750                                a = !0,
2751                                c = e,
2752                                y = i,
2753                                v = i.nodeType === 9 && t;
2754                            if (i.nodeType === 1 && i.nodeName.toLowerCase() !== "object") {
2755                                for (o = ft(t), (a = i.getAttribute("id")) ? (c = a.replace(h, "\\$&")) : i.setAttribute("id", c), c = "[id='" + c + "'] ", l = o.length; l--; ) o[l] = c + o[l].join("");
2756                                y = (vt.test(t) && i.parentNode) || i;
2757                                v = o.join(",");
2758                            }
2759                            if (v)
2760                                try {
2761                                    return p.apply(r, w.call(y.querySelectorAll(v), 0)), r;
2762                                } catch (b) {
2763                                } finally {
2764                                    a || i.removeAttribute("id");
2765                                }
2766                        }
2767                        return s(t, i, r, u, f);
2768                    };
2769                    i &&
2770                        (l(function (n) {
2771                            u = i.call(n, "div");
2772                            try {
2773                                i.call(n, "[test!='']:sizzle");
2774                                t.push("!=", at);
2775                            } catch (r) {}
2776                        }),
2777                        (t = new RegExp(t.join("|"))),
2778                        (r.matchesSelector = function (f, e) {
2779                            if (((e = e.replace(c, "='$1']")), !g(f) && !t.test(e) && (!n || !n.test(e))))
2780                                try {
2781                                    var o = i.call(f, e);
2782                                    if (o || u || (f.document && f.document.nodeType !== 11)) return o;
2783                                } catch (s) {}
2784                            return r(e, null, null, [f]).length > 0;
2785                        }));
2786                })();
2787            u.pseudos.nth = u.pseudos.eq;
2788            u.filters = hi.prototype = u.pseudos;
2789            u.setFilters = new hi();
2790            r.attr = i.attr;
2791            i.find = r;
2792            i.expr = r.selectors;
2793            i.expr[":"] = i.expr.pseudos;
2794            i.unique = r.uniqueSort;
2795            i.text = r.getText;
2796            i.isXMLDoc = r.isXML;
2797            i.contains = r.contains;
2798        })(n);
2799    var bf = /Until$/,
2800        kf = /^(?:parents|prev(?:Until|All))/,
2801        df = /^.[^:#\[\.,]*$/,
2802        gi = i.expr.match.needsContext,
2803        gf = { children: !0, contents: !0, next: !0, prev: !0 };
2804    i.fn.extend({
2805        find: function (n) {
2806            var t,
2807                f,
2808                o,
2809                u,
2810                e,
2811                r,
2812                s = this;
2813            if (typeof n != "string")
2814                return i(n).filter(function () {
2815                    for (t = 0, f = s.length; t < f; t++) if (i.contains(s[t], this)) return !0;
2816                });
2817            for (r = this.pushStack("", "find", n), t = 0, f = this.length; t < f; t++)
2818                if (((o = r.length), i.find(n, this[t], r), t > 0))
2819                    for (u = o; u < r.length; u++)
2820                        for (e = 0; e < o; e++)
2821                            if (r[e] === r[u]) {
2822                                r.splice(u--, 1);
2823                                break;
2824                            }
2825            return r;
2826        },
2827        has: function (n) {
2828            var t,
2829                r = i(n, this),
2830                u = r.length;
2831            return this.filter(function () {
2832                for (t = 0; t < u; t++) if (i.contains(this, r[t])) return !0;
2833            });
2834        },
2835        not: function (n) {
2836            return this.pushStack(tr(this, n, !1), "not", n);
2837        },
2838        filter: function (n) {
2839            return this.pushStack(tr(this, n, !0), "filter", n);
2840        },
2841        is: function (n) {
2842            return !!n && (typeof n == "string" ? (gi.test(n) ? i(n, this.context).index(this[0]) >= 0 : i.filter(n, this).length > 0) : this.filter(n).length > 0);
2843        },
2844        closest: function (n, t) {
2845            for (var r, f = 0, o = this.length, u = [], e = gi.test(n) || typeof n != "string" ? i(n, t || this.context) : 0; f < o; f++)
2846                for (r = this[f]; r && r.ownerDocument && r !== t && r.nodeType !== 11; ) {
2847                    if (e ? e.index(r) > -1 : i.find.matchesSelector(r, n)) {
2848                        u.push(r);
2849                        break;
2850                    }
2851                    r = r.parentNode;
2852                }
2853            return (u = u.length > 1 ? i.unique(u) : u), this.pushStack(u, "closest", n);
2854        },
2855        index: function (n) {
2856            return n ? (typeof n == "string" ? i.inArray(this[0], i(n)) : i.inArray(n.jquery ? n[0] : n, this)) : this[0] && this[0].parentNode ? this.prevAll().length : -1;
2857        },
2858        add: function (n, t) {
2859            var u = typeof n == "string" ? i(n, t) : i.makeArray(n && n.nodeType ? [n] : n),
2860                r = i.merge(this.get(), u);
2861            return this.pushStack(b(u[0]) || b(r[0]) ? r : i.unique(r));
2862        },
2863        addBack: function (n) {
2864            return this.add(n == null ? this.prevObject : this.prevObject.filter(n));
2865        },
2866    });
2867    i.fn.andSelf = i.fn.addBack;
2868    i.each(
2869        {
2870            parent: function (n) {
2871                var t = n.parentNode;
2872                return t && t.nodeType !== 11 ? t : null;
2873            },
2874            parents: function (n) {
2875                return i.dir(n, "parentNode");
2876            },
2877            parentsUntil: function (n, t, r) {
2878                return i.dir(n, "parentNode", r);
2879            },
2880            next: function (n) {
2881                return nr(n, "nextSibling");
2882            },
2883            prev: function (n) {
2884                return nr(n, "previousSibling");
2885            },
2886            nextAll: function (n) {
2887                return i.dir(n, "nextSibling");
2888            },
2889            prevAll: function (n) {
2890                return i.dir(n, "previousSibling");
2891            },
2892            nextUntil: function (n, t, r) {
2893                return i.dir(n, "nextSibling", r);
2894            },
2895            prevUntil: function (n, t, r) {
2896                return i.dir(n, "previousSibling", r);
2897            },
2898            siblings: function (n) {
2899                return i.sibling((n.parentNode || {}).firstChild, n);
2900            },
2901            children: function (n) {
2902                return i.sibling(n.firstChild);
2903            },
2904            contents: function (n) {
2905                return i.nodeName(n, "iframe") ? n.contentDocument || n.contentWindow.document : i.merge([], n.childNodes);
2906            },
2907        },
2908        function (n, t) {
2909            i.fn[n] = function (r, u) {
2910                var f = i.map(this, t, r);
2911                return (
2912                    bf.test(n) || (u = r),
2913                    u && typeof u == "string" && (f = i.filter(u, f)),
2914                    (f = this.length > 1 && !gf[n] ? i.unique(f) : f),
2915                    this.length > 1 && kf.test(n) && (f = f.reverse()),
2916                    this.pushStack(f, n, o.call(arguments).join(","))
2917                );
2918            };
2919        }
2920    );
2921    i.extend({
2922        filter: function (n, t, r) {
2923            return r && (n = ":not(" + n + ")"), t.length === 1 ? (i.find.matchesSelector(t[0], n) ? [t[0]] : []) : i.find.matches(n, t);
2924        },
2925        dir: function (n, r, u) {
2926            for (var e = [], f = n[r]; f && f.nodeType !== 9 && (u === t || f.nodeType !== 1 || !i(f).is(u)); ) f.nodeType === 1 && e.push(f), (f = f[r]);
2927            return e;
2928        },
2929        sibling: function (n, t) {
2930            for (var i = []; n; n = n.nextSibling) n.nodeType === 1 && n !== t && i.push(n);
2931            return i;
2932        },
2933    });
2934    var rr = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",
2935        ne = / jQuery\d+="(?:null|\d+)"/g,
2936        bt = /^\s+/,
2937        ur = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,
2938        fr = /<([\w:]+)/,
2939        te = /<tbody/i,
2940        ie = /<|&#?\w+;/,
2941        re = /<(?:script|style|link)/i,
2942        ue = /<(?:script|object|embed|option|style)/i,
2943        kt = new RegExp("<(?:" + rr + ")[\\s/>]", "i"),
2944        er = /^(?:checkbox|radio)$/,
2945        or = /checked\s*(?:[^=]|=\s*.checked.)/i,
2946        fe = /\/(java|ecma)script/i,
2947        ee = /^\s*<!(?:\[CDATA\[|\-\-)|[\]\-]{2}>\s*$/g,
2948        e = {
2949            option: [1, "<select multiple='multiple'>", "</select>"],
2950            legend: [1, "<fieldset>", "</fieldset>"],
2951            thead: [1, "<table>", "</table>"],
2952            tr: [2, "<table><tbody>", "</tbody></table>"],
2953            td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
2954            col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"],
2955            area: [1, "<map>", "</map>"],
2956            _default: [0, "", ""],
2957        },
2958        sr = ir(r),
2959        dt = sr.appendChild(r.createElement("div"));
2960    e.optgroup = e.option;
2961    e.tbody = e.tfoot = e.colgroup = e.caption = e.thead;
2962    e.th = e.td;
2963    i.support.htmlSerialize || (e._default = [1, "X<div>", "</div>"]);
2964    i.fn.extend({
2965        text: function (n) {
2966            return i.access(
2967                this,
2968                function (n) {
2969                    return n === t ? i.text(this) : this.empty().append(((this[0] && this[0].ownerDocument) || r).createTextNode(n));
2970                },
2971                null,
2972                n,
2973                arguments.length
2974            );
2975        },
2976        wrapAll: function (n) {
2977            if (i.isFunction(n))
2978                return this.each(function (t) {
2979                    i(this).wrapAll(n.call(this, t));
2980                });
2981            if (this[0]) {
2982                var t = i(n, this[0].ownerDocument).eq(0).clone(!0);
2983                this[0].parentNode && t.insertBefore(this[0]);
2984                t.map(function () {
2985                    for (var n = this; n.firstChild && n.firstChild.nodeType === 1; ) n = n.firstChild;
2986                    return n;
2987                }).append(this);
2988            }
2989            return this;
2990        },
2991        wrapInner: function (n) {
2992            return i.isFunction(n)
2993                ? this.each(function (t) {
2994                      i(this).wrapInner(n.call(this, t));
2995                  })
2996                : this.each(function () {
2997                      var t = i(this),
2998                          r = t.contents();
2999                      r.length ? r.wrapAll(n) : t.append(n);
3000                  });
3001        },
3002        wrap: function (n) {
3003            var t = i.isFunction(n);
3004            return this.each(function (r) {
3005                i(this).wrapAll(t ? n.call(this, r) : n);
3006            });
3007        },
3008        unwrap: function () {
3009            return this.parent()
3010                .each(function () {
3011                    i.nodeName(this, "body") || i(this).replaceWith(this.childNodes);
3012                })
3013                .end();
3014        },
3015        append: function () {
3016            return this.domManip(arguments, !0, function (n) {
3017                (this.nodeType === 1 || this.nodeType === 11) && this.appendChild(n);
3018            });
3019        },
3020        prepend: function () {
3021            return this.domManip(arguments, !0, function (n) {
3022                (this.nodeType === 1 || this.nodeType === 11) && this.insertBefore(n, this.firstChild);
3023            });
3024        },
3025        before: function () {
3026            if (!b(this[0]))
3027                return this.domManip(arguments, !1, function (n) {
3028                    this.parentNode.insertBefore(n, this);
3029                });
3030            if (arguments.length) {
3031                var n = i.clean(arguments);
3032                return this.pushStack(i.merge(n, this), "before", this.selector);
3033            }
3034        },
3035        after: function () {
3036            if (!b(this[0]))
3037                return this.domManip(arguments, !1, function (n) {
3038                    this.parentNode.insertBefore(n, this.nextSibling);
3039                });
3040            if (arguments.length) {
3041                var n = i.clean(arguments);
3042                return this.pushStack(i.merge(this, n), "after", this.selector);
3043            }
3044        },
3045        remove: function (n, t) {
3046            for (var r, u = 0; (r = this[u]) != null; u++) (!n || i.filter(n, [r]).length) && (t || r.nodeType !== 1 || (i.cleanData(r.getElementsByTagName("*")), i.cleanData([r])), r.parentNode && r.parentNode.removeChild(r));
3047            return this;
3048        },
3049        empty: function () {
3050            for (var n, t = 0; (n = this[t]) != null; t++) for (n.nodeType === 1 && i.cleanData(n.getElementsByTagName("*")); n.firstChild; ) n.removeChild(n.firstChild);
3051            return this;
3052        },
3053        clone: function (n, t) {
3054            return (
3055                (n = n == null ? !1 : n),
3056                (t = t == null ? n : t),
3057                this.map(function () {
3058                    return i.clone(this, n, t);
3059                })
3060            );
3061        },
3062        html: function (n) {
3063            return i.access(
3064                this,
3065                function (n) {
3066                    var r = this[0] || {},
3067                        u = 0,
3068                        f = this.length;
3069                    if (n === t) return r.nodeType === 1 ? r.innerHTML.replace(ne, "") : t;
3070                    if (typeof n == "string" && !re.test(n) && (i.support.htmlSerialize || !kt.test(n)) && (i.support.leadingWhitespace || !bt.test(n)) && !e[(fr.exec(n) || ["", ""])[1].toLowerCase()]) {
3071                        n = n.replace(ur, "<$1></$2>");
3072                        try {
3073                            for (; u < f; u++) (r = this[u] || {}), r.nodeType === 1 && (i.cleanData(r.getElementsByTagName("*")), (r.innerHTML = n));
3074                            r = 0;
3075                        } catch (o) {}
3076                    }
3077                    r && this.empty().append(n);
3078                },
3079                null,
3080                n,
3081                arguments.length
3082            );
3083        },
3084        replaceWith: function (n) {
3085            return b(this[0])
3086                ? this.length
3087                    ? this.pushStack(i(i.isFunction(n) ? n() : n), "replaceWith", n)
3088                    : this
3089                : i.isFunction(n)
3090                ? this.each(function (t) {
3091                      var r = i(this),
3092                          u = r.html();
3093                      r.replaceWith(n.call(this, t, u));
3094                  })
3095                : (typeof n != "string" && (n = i(n).detach()),
3096                  this.each(function () {
3097                      var t = this.nextSibling,
3098                          r = this.parentNode;
3099                      i(this).remove();
3100                      t ? i(t).before(n) : i(r).append(n);
3101                  }));
3102        },
3103        detach: function (n) {
3104            return this.remove(n, !0);
3105        },
3106        domManip: function (n, r, u) {
3107            n = [].concat.apply([], n);
3108            var h,
3109                o,
3110                f,
3111                a,
3112                e = 0,
3113                s = n[0],
3114                c = [],
3115                l = this.length;
3116            if (!i.support.checkClone && l > 1 && typeof s == "string" && or.test(s))
3117                return this.each(function () {
3118                    i(this).domManip(n, r, u);
3119                });
3120            if (i.isFunction(s))
3121                return this.each(function (f) {
3122                    var e = i(this);
3123                    n[0] = s.call(this, f, r ? e.html() : t);
3124                    e.domManip(n, r, u);
3125                });
3126            if (this[0]) {
3127                if (((h = i.buildFragment(n, this, c)), (f = h.fragment), (o = f.firstChild), f.childNodes.length === 1 && (f = o), o))
3128                    for (r = r && i.nodeName(o, "tr"), a = h.cacheable || l - 1; e < l; e++) u.call(r && i.nodeName(this[e], "table") ? oe(this[e], "tbody") : this[e], e === a ? f : i.clone(f, !0, !0));
3129                f = o = null;
3130                c.length &&
3131                    i.each(c, function (n, t) {
3132                        t.src ? (i.ajax ? i.ajax({ url: t.src, type: "GET", dataType: "script", async: !1, global: !1, throws: !0 }) : i.error("no ajax")) : i.globalEval((t.text || t.textContent || t.innerHTML || "").replace(ee, ""));
3133                        t.parentNode && t.parentNode.removeChild(t);
3134                    });
3135            }
3136            return this;
3137        },
3138    });
3139    i.buildFragment = function (n, u, f) {
3140        var o,
3141            s,
3142            h,
3143            e = n[0];
3144        return (
3145            (u = u || r),
3146            (u = (!u.nodeType && u[0]) || u),
3147            (u = u.ownerDocument || u),
3148            n.length === 1 &&
3149                typeof e == "string" &&
3150                e.length < 512 &&
3151                u === r &&
3152                e.charAt(0) === "<" &&
3153                !ue.test(e) &&
3154                (i.support.checkClone || !or.test(e)) &&
3155                (i.support.html5Clone || !kt.test(e)) &&
3156                ((s = !0), (o = i.fragments[e]), (h = o !== t)),
3157            o || ((o = u.createDocumentFragment()), i.clean(n, u, o, f), s && (i.fragments[e] = h && o)),
3158            { fragment: o, cacheable: s }
3159        );
3160    };
3161    i.fragments = {};
3162    i.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function (n, t) {
3163        i.fn[n] = function (r) {
3164            var o,
3165                u = 0,
3166                s = [],
3167                f = i(r),
3168                h = f.length,
3169                e = this.length === 1 && this[0].parentNode;
3170            if ((e == null || (e && e.nodeType === 11 && e.childNodes.length === 1)) && h === 1) return f[t](this[0]), this;
3171            for (; u < h; u++) (o = (u > 0 ? this.clone(!0) : this).get()), i(f[u])[t](o), (s = s.concat(o));
3172            return this.pushStack(s, n, f.selector);
3173        };
3174    });
3175    i.extend({
3176        clone: function (n, t, r) {
3177            var f, o, u, e;
3178            if (
3179                (i.support.html5Clone || i.isXMLDoc(n) || !kt.test("<" + n.nodeName + ">") ? (e = n.cloneNode(!0)) : ((dt.innerHTML = n.outerHTML), dt.removeChild((e = dt.firstChild))),
3180                (!i.support.noCloneEvent || !i.support.noCloneChecked) && (n.nodeType === 1 || n.nodeType === 11) && !i.isXMLDoc(n))
3181            )
3182                for (cr(n, e), f = it(n), o = it(e), u = 0; f[u]; ++u) o[u] && cr(f[u], o[u]);
3183            if (t && (hr(n, e), r)) for (f = it(n), o = it(e), u = 0; f[u]; ++u) hr(f[u], o[u]);
3184            return (f = o = null), e;
3185        },
3186        clean: function (n, t, u, f) {
3187            var h,
3188                c,
3189                o,
3190                p,
3191                v,
3192                d,
3193                s,
3194                w,
3195                a,
3196                b,
3197                k,
3198                y = t === r && sr,
3199                l = [];
3200            for ((t && typeof t.createDocumentFragment != "undefined") || (t = r), h = 0; (o = n[h]) != null; h++)
3201                if ((typeof o == "number" && (o += ""), o)) {
3202                    if (typeof o == "string")
3203                        if (ie.test(o)) {
3204                            for (
3205                                y = y || ir(t), s = t.createElement("div"), y.appendChild(s), o = o.replace(ur, "<$1></$2>"), p = (fr.exec(o) || ["", ""])[1].toLowerCase(), v = e[p] || e._default, d = v[0], s.innerHTML = v[1] + o + v[2];
3206                                d--;
3207
3208                            )
3209                                s = s.lastChild;
3210                            if (!i.support.tbody)
3211                                for (w = te.test(o), a = p === "table" && !w ? s.firstChild && s.firstChild.childNodes : v[1] === "<table>" && !w ? s.childNodes : [], c = a.length - 1; c >= 0; --c)
3212                                    i.nodeName(a[c], "tbody") && !a[c].childNodes.length && a[c].parentNode.removeChild(a[c]);
3213                            !i.support.leadingWhitespace && bt.test(o) && s.insertBefore(t.createTextNode(bt.exec(o)[0]), s.firstChild);
3214                            o = s.childNodes;
3215                            s.parentNode.removeChild(s);
3216                        } else o = t.createTextNode(o);
3217                    o.nodeType ? l.push(o) : i.merge(l, o);
3218                }
3219            if ((s && (o = s = y = null), !i.support.appendChecked)) for (h = 0; (o = l[h]) != null; h++) i.nodeName(o, "input") ? lr(o) : typeof o.getElementsByTagName != "undefined" && i.grep(o.getElementsByTagName("input"), lr);
3220            if (u)
3221                for (
3222                    b = function (n) {
3223                        if (!n.type || fe.test(n.type)) return f ? f.push(n.parentNode ? n.parentNode.removeChild(n) : n) : u.appendChild(n);
3224                    },
3225                        h = 0;
3226                    (o = l[h]) != null;
3227                    h++
3228                )
3229                    (i.nodeName(o, "script") && b(o)) ||
3230                        (u.appendChild(o), typeof o.getElementsByTagName != "undefined" && ((k = i.grep(i.merge([], o.getElementsByTagName("script")), b)), l.splice.apply(l, [h + 1, 0].concat(k)), (h += k.length)));
3231            return l;
3232        },
3233        cleanData: function (n, t) {
3234            for (var f, u, r, e, h = 0, o = i.expando, s = i.cache, c = i.support.deleteExpando, l = i.event.special; (r = n[h]) != null; h++)
3235                if ((t || i.acceptData(r)) && ((u = r[o]), (f = u && s[u]), f)) {
3236                    if (f.events) for (e in f.events) l[e] ? i.event.remove(r, e) : i.removeEvent(r, e, f.handle);
3237                    s[u] && (delete s[u], c ? delete r[o] : r.removeAttribute ? r.removeAttribute(o) : (r[o] = null), i.deletedIds.push(u));
3238                }
3239        },
3240    }),
3241        (function () {
3242            var t, n;
3243            i.uaMatch = function (n) {
3244                n = n.toLowerCase();
3245                var t =
3246                    /(chrome)[ \/]([\w.]+)/.exec(n) ||
3247                    /(webkit)[ \/]([\w.]+)/.exec(n) ||
3248                    /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(n) ||
3249                    /(msie) ([\w.]+)/.exec(n) ||
3250                    (n.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(n)) ||
3251                    [];
3252                return { browser: t[1] || "", version: t[2] || "0" };
3253            };
3254            t = i.uaMatch(pu.userAgent);
3255            n = {};
3256            t.browser && ((n[t.browser] = !0), (n.version = t.version));
3257            n.chrome ? (n.webkit = !0) : n.webkit && (n.safari = !0);
3258            i.browser = n;
3259            i.sub = function () {
3260                function n(t, i) {
3261                    return new n.fn.init(t, i);
3262                }
3263                i.extend(!0, n, this);
3264                n.superclass = this;
3265                n.fn = n.prototype = this();
3266                n.fn.constructor = n;
3267                n.sub = this.sub;
3268                n.fn.init = function (r, u) {
3269                    return u && u instanceof i && !(u instanceof n) && (u = n(u)), i.fn.init.call(this, r, u, t);
3270                };
3271                n.fn.init.prototype = n.fn;
3272                var t = n(r);
3273                return n;
3274            };
3275        })();
3276    var u,
3277        v,
3278        y,
3279        gt = /alpha\([^)]*\)/i,
3280        se = /opacity=([^)]*)/,
3281        he = /^(top|right|bottom|left)$/,
3282        ce = /^(none|table(?!-c[ea]).+)/,
3283        ar = /^margin/,
3284        le = new RegExp("^(" + g + ")(.*)$", "i"),
3285        rt = new RegExp("^(" + g + ")(?!px)[a-z%]+$", "i"),
3286        ae = new RegExp("^([-+])=(" + g + ")", "i"),
3287        ni = {},
3288        ve = { position: "absolute", visibility: "hidden", display: "block" },
3289        vr = { letterSpacing: 0, fontWeight: 400 },
3290        c = ["Top", "Right", "Bottom", "Left"],
3291        yr = ["Webkit", "O", "Moz", "ms"],
3292        ye = i.fn.toggle;
3293    i.fn.extend({
3294        css: function (n, r) {
3295            return i.access(
3296                this,
3297                function (n, r, u) {
3298                    return u !== t ? i.style(n, r, u) : i.css(n, r);
3299                },
3300                n,
3301                r,
3302                arguments.length > 1
3303            );
3304        },
3305        show: function () {
3306            return wr(this, !0);
3307        },
3308        hide: function () {
3309            return wr(this);
3310        },
3311        toggle: function (n, t) {
3312            var r = typeof n == "boolean";
3313            return i.isFunction(n) && i.isFunction(t)
3314                ? ye.apply(this, arguments)
3315                : this.each(function () {
3316                      (r ? n : ut(this)) ? i(this).show() : i(this).hide();
3317                  });
3318        },
3319    });
3320    i.extend({
3321        cssHooks: {
3322            opacity: {
3323                get: function (n, t) {
3324                    if (t) {
3325                        var i = u(n, "opacity");
3326                        return i === "" ? "1" : i;
3327                    }
3328                },
3329            },
3330        },
3331        cssNumber: { fillOpacity: !0, fontWeight: !0, lineHeight: !0, opacity: !0, orphans: !0, widows: !0, zIndex: !0, zoom: !0 },
3332        cssProps: { float: i.support.cssFloat ? "cssFloat" : "styleFloat" },
3333        style: function (n, r, u, f) {
3334            if (n && n.nodeType !== 3 && n.nodeType !== 8 && n.style) {
3335                var o,
3336                    s,
3337                    e,
3338                    h = i.camelCase(r),
3339                    c = n.style;
3340                if (((r = i.cssProps[h] || (i.cssProps[h] = pr(c, h))), (e = i.cssHooks[r] || i.cssHooks[h]), u !== t)) {
3341                    if (((s = typeof u), s === "string" && (o = ae.exec(u)) && ((u = (o[1] + 1) * o[2] + parseFloat(i.css(n, r))), (s = "number")), u == null || (s === "number" && isNaN(u)))) return;
3342                    if ((s !== "number" || i.cssNumber[h] || (u += "px"), !e || !("set" in e) || (u = e.set(n, u, f)) !== t))
3343                        try {
3344                            c[r] = u;
3345                        } catch (l) {}
3346                } else return e && "get" in e && (o = e.get(n, !1, f)) !== t ? o : c[r];
3347            }
3348        },
3349        css: function (n, r, f, e) {
3350            var o,
3351                c,
3352                s,
3353                h = i.camelCase(r);
3354            return ((r = i.cssProps[h] || (i.cssProps[h] = pr(n.style, h))), (s = i.cssHooks[r] || i.cssHooks[h]), s && "get" in s && (o = s.get(n, !0, e)), o === t && (o = u(n, r)), o === "normal" && r in vr && (o = vr[r]), f || e !== t)
3355                ? ((c = parseFloat(o)), f || i.isNumeric(c) ? c || 0 : o)
3356                : o;
3357        },
3358        swap: function (n, t, i) {
3359            var u,
3360                r,
3361                f = {};
3362            for (r in t) (f[r] = n.style[r]), (n.style[r] = t[r]);
3363            u = i.call(n);
3364            for (r in t) n.style[r] = f[r];
3365            return u;
3366        },
3367    });
3368    n.getComputedStyle
3369        ? (u = function (t, r) {
3370              var f,
3371                  o,
3372                  s,
3373                  h,
3374                  e = n.getComputedStyle(t, null),
3375                  u = t.style;
3376              return (
3377                  e &&
3378                      ((f = e[r]),
3379                      f !== "" || i.contains(t.ownerDocument, t) || (f = i.style(t, r)),
3380                      rt.test(f) && ar.test(r) && ((o = u.width), (s = u.minWidth), (h = u.maxWidth), (u.minWidth = u.maxWidth = u.width = f), (f = e.width), (u.width = o), (u.minWidth = s), (u.maxWidth = h))),
3381                  f
3382              );
3383          })
3384        : r.documentElement.currentStyle &&
3385          (u = function (n, t) {
3386              var f,
3387                  u,
3388                  i = n.currentStyle && n.currentStyle[t],
3389                  r = n.style;
3390              return (
3391                  i == null && r && r[t] && (i = r[t]),
3392                  rt.test(i) &&
3393                      !he.test(t) &&
3394                      ((f = r.left),
3395                      (u = n.runtimeStyle && n.runtimeStyle.left),
3396                      u && (n.runtimeStyle.left = n.currentStyle.left),
3397                      (r.left = t === "fontSize" ? "1em" : i),
3398                      (i = r.pixelLeft + "px"),
3399                      (r.left = f),
3400                      u && (n.runtimeStyle.left = u)),
3401                  i === "" ? "auto" : i
3402              );
3403          });
3404    i.each(["height", "width"], function (n, t) {
3405        i.cssHooks[t] = {
3406            get: function (n, r, f) {
3407                if (r)
3408                    return n.offsetWidth === 0 && ce.test(u(n, "display"))
3409                        ? i.swap(n, ve, function () {
3410                              return dr(n, t, f);
3411                          })
3412                        : dr(n, t, f);
3413            },
3414            set: function (n, r, u) {
3415                return br(n, r, u ? kr(n, t, u, i.support.boxSizing && i.css(n, "boxSizing") === "border-box") : 0);
3416            },
3417        };
3418    });
3419    i.support.opacity ||
3420        (i.cssHooks.opacity = {
3421            get: function (n, t) {
3422                return se.test((t && n.currentStyle ? n.currentStyle.filter : n.style.filter) || "") ? 0.01 * parseFloat(RegExp.$1) + "" : t ? "1" : "";
3423            },
3424            set: function (n, t) {
3425                var r = n.style,
3426                    u = n.currentStyle,
3427                    e = i.isNumeric(t) ? "alpha(opacity=" + t * 100 + ")" : "",
3428                    f = (u && u.filter) || r.filter || "";
3429                ((r.zoom = 1), t >= 1 && i.trim(f.replace(gt, "")) === "" && r.removeAttribute && (r.removeAttribute("filter"), u && !u.filter)) || (r.filter = gt.test(f) ? f.replace(gt, e) : f + " " + e);
3430            },
3431        });
3432    i(function () {
3433        i.support.reliableMarginRight ||
3434            (i.cssHooks.marginRight = {
3435                get: function (n, t) {
3436                    return i.swap(n, { display: "inline-block" }, function () {
3437                        if (t) return u(n, "marginRight");
3438                    });
3439                },
3440            });
3441        !i.support.pixelPosition &&
3442            i.fn.position &&
3443            i.each(["top", "left"], function (n, t) {
3444                i.cssHooks[t] = {
3445                    get: function (n, r) {
3446                        if (r) {
3447                            var f = u(n, t);
3448                            return rt.test(f) ? i(n).position()[t] + "px" : f;
3449                        }
3450                    },
3451                };
3452            });
3453    });
3454    i.expr &&
3455        i.expr.filters &&
3456        ((i.expr.filters.hidden = function (n) {
3457            return (n.offsetWidth === 0 && n.offsetHeight === 0) || (!i.support.reliableHiddenOffsets && ((n.style && n.style.display) || u(n, "display")) === "none");
3458        }),
3459        (i.expr.filters.visible = function (n) {
3460            return !i.expr.filters.hidden(n);
3461        }));
3462    i.each({ margin: "", padding: "", border: "Width" }, function (n, t) {
3463        i.cssHooks[n + t] = {
3464            expand: function (i) {
3465                for (var u = typeof i == "string" ? i.split(" ") : [i], f = {}, r = 0; r < 4; r++) f[n + c[r] + t] = u[r] || u[r - 2] || u[0];
3466                return f;
3467            },
3468        };
3469        ar.test(n) || (i.cssHooks[n + t].set = br);
3470    });
3471    var pe = /%20/g,
3472        we = /\[\]$/,
3473        nu = /\r?\n/g,
3474        be = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,
3475        ke = /^(?:select|textarea)/i;
3476    i.fn.extend({
3477        serialize: function () {
3478            return i.param(this.serializeArray());
3479        },
3480        serializeArray: function () {
3481            return this.map(function () {
3482                return this.elements ? i.makeArray(this.elements) : this;
3483            })
3484                .filter(function () {
3485                    return this.name && !this.disabled && (this.checked || ke.test(this.nodeName) || be.test(this.type));
3486                })
3487                .map(function (n, t) {
3488                    var r = i(this).val();
3489                    return r == null
3490                        ? null
3491                        : i.isArray(r)
3492                        ? i.map(r, function (n) {
3493                              return { name: t.name, value: n.replace(nu, "\r\n") };
3494                          })
3495                        : { name: t.name, value: r.replace(nu, "\r\n") };
3496                })
3497                .get();
3498        },
3499    });
3500    i.param = function (n, r) {
3501        var u,
3502            f = [],
3503            e = function (n, t) {
3504                t = i.isFunction(t) ? t() : t == null ? "" : t;
3505                f[f.length] = encodeURIComponent(n) + "=" + encodeURIComponent(t);
3506            };
3507        if ((r === t && (r = i.ajaxSettings && i.ajaxSettings.traditional), i.isArray(n) || (n.jquery && !i.isPlainObject(n))))
3508            i.each(n, function () {
3509                e(this.name, this.value);
3510            });
3511        else for (u in n) ti(u, n[u], r, e);
3512        return f.join("&").replace(pe, "+");
3513    };
3514    var p,
3515        l,
3516        de = /#.*$/,
3517        ge = /^(.*?):[ \t]*([^\r\n]*)\r?$/gm,
3518        no = /^(?:GET|HEAD)$/,
3519        to = /^\/\//,
3520        tu = /\?/,
3521        io = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
3522        ro = /([?&])_=[^&]*/,
3523        iu = /^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,
3524        ru = i.fn.load,
3525        ii = {},
3526        uu = {},
3527        fu = ["*/"] + ["*"];
3528    try {
3529        l = yu.href;
3530    } catch (po) {
3531        l = r.createElement("a");
3532        l.href = "";
3533        l = l.href;
3534    }
3535    p = iu.exec(l.toLowerCase()) || [];
3536    i.fn.load = function (n, r, u) {
3537        if (typeof n != "string" && ru) return ru.apply(this, arguments);
3538        if (!this.length) return this;
3539        var f,
3540            o,
3541            s,
3542            h = this,
3543            e = n.indexOf(" ");
3544        return (
3545            e >= 0 && ((f = n.slice(e, n.length)), (n = n.slice(0, e))),
3546            i.isFunction(r) ? ((u = r), (r = t)) : r && typeof r == "object" && (o = "POST"),
3547            i
3548                .ajax({
3549                    url: n,
3550                    type: o,
3551                    dataType: "html",
3552                    data: r,
3553                    complete: function (n, t) {
3554                        u && h.each(u, s || [n.responseText, t, n]);
3555                    },
3556                })
3557                .done(function (n) {
3558                    s = arguments;
3559                    h.html(f ? i("<div>").append(n.replace(io, "")).find(f) : n);
3560                }),
3561            this
3562        );
3563    };
3564    i.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), function (n, t) {
3565        i.fn[t] = function (n) {
3566            return this.on(t, n);
3567        };
3568    });
3569    i.each(["get", "post"], function (n, r) {
3570        i[r] = function (n, u, f, e) {
3571            return i.isFunction(u) && ((e = e || f), (f = u), (u = t)), i.ajax({ type: r, url: n, data: u, success: f, dataType: e });
3572        };
3573    });
3574    i.extend({
3575        getScript: function (n, r) {
3576            return i.get(n, t, r, "script");
3577        },
3578        getJSON: function (n, t, r) {
3579            return i.get(n, t, r, "json");
3580        },
3581        ajaxSetup: function (n, t) {
3582            return t ? ou(n, i.ajaxSettings) : ((t = n), (n = i.ajaxSettings)), ou(n, t), n;
3583        },
3584        ajaxSettings: {
3585            url: l,
3586            isLocal: /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/.test(p[1]),
3587            global: !0,
3588            type: "GET",
3589            contentType: "application/x-www-form-urlencoded; charset=UTF-8",
3590            processData: !0,
3591            async: !0,
3592            accepts: { xml: "application/xml, text/xml", html: "text/html", text: "text/plain", json: "application/json, text/javascript", "*": fu },
3593            contents: { xml: /xml/, html: /html/, json: /json/ },
3594            responseFields: { xml: "responseXML", text: "responseText" },
3595            converters: { "* text": n.String, "text html": !0, "text json": i.parseJSON, "text xml": i.parseXML },
3596            flatOptions: { context: !0, url: !0 },
3597        },
3598        ajaxPrefilter: eu(ii),
3599        ajaxTransport: eu(uu),
3600        ajax: function (n, r) {
3601            function b(n, r, h, l) {
3602                var a,
3603                    tt,
3604                    b,
3605                    it,
3606                    p,
3607                    y = r;
3608                e !== 2 &&
3609                    ((e = 2),
3610                    d && clearTimeout(d),
3611                    (c = t),
3612                    (k = l || ""),
3613                    (f.readyState = n > 0 ? 4 : 0),
3614                    h && (it = uo(u, f, h)),
3615                    (n >= 200 && n < 300) || n === 304
3616                        ? (u.ifModified && ((p = f.getResponseHeader("Last-Modified")), p && (i.lastModified[o] = p), (p = f.getResponseHeader("Etag")), p && (i.etag[o] = p)),
3617                          n === 304 ? ((y = "notmodified"), (a = !0)) : ((a = fo(u, it)), (y = a.state), (tt = a.data), (b = a.error), (a = !b)))
3618                        : ((b = y), (!y || n) && ((y = "error"), n < 0 && (n = 0))),
3619                    (f.status = n),
3620                    (f.statusText = (r || y) + ""),
3621                    a ? nt.resolveWith(s, [tt, y, f]) : nt.rejectWith(s, [f, y, b]),
3622                    f.statusCode(w),
3623                    (w = t),
3624                    v && g.trigger("ajax" + (a ? "Success" : "Error"), [f, u, a ? tt : b]),
3625                    rt.fireWith(s, [f, y]),
3626                    v && (g.trigger("ajaxComplete", [f, u]), --i.active || i.event.trigger("ajaxStop")));
3627            }
3628            var tt, it;
3629            typeof n == "object" && ((r = n), (n = t));
3630            r = r || {};
3631            var o,
3632                k,
3633                y,
3634                c,
3635                d,
3636                a,
3637                v,
3638                l,
3639                u = i.ajaxSetup({}, r),
3640                s = u.context || u,
3641                g = s !== u && (s.nodeType || s instanceof i) ? i(s) : i.event,
3642                nt = i.Deferred(),
3643                rt = i.Callbacks("once memory"),
3644                w = u.statusCode || {},
3645                ut = {},
3646                et = {},
3647                e = 0,
3648                ot = "canceled",
3649                f = {
3650                    readyState: 0,
3651                    setRequestHeader: function (n, t) {
3652                        if (!e) {
3653                            var i = n.toLowerCase();
3654                            n = et[i] = et[i] || n;
3655                            ut[n] = t;
3656                        }
3657                        return this;
3658                    },
3659                    getAllResponseHeaders: function () {
3660                        return e === 2 ? k : null;
3661                    },
3662                    getResponseHeader: function (n) {
3663                        var i;
3664                        if (e === 2) {
3665                            if (!y) for (y = {}; (i = ge.exec(k)); ) y[i[1].toLowerCase()] = i[2];
3666                            i = y[n.toLowerCase()];
3667                        }
3668                        return i === t ? null : i;
3669                    },
3670                    overrideMimeType: function (n) {
3671                        return e || (u.mimeType = n), this;
3672                    },
3673                    abort: function (n) {
3674                        return (n = n || ot), c && c.abort(n), b(0, n), this;
3675                    },
3676                };
3677            if (
3678                (nt.promise(f),
3679                (f.success = f.done),
3680                (f.error = f.fail),
3681                (f.complete = rt.add),
3682                (f.statusCode = function (n) {
3683                    if (n) {
3684                        var t;
3685                        if (e < 2) for (t in n) w[t] = [w[t], n[t]];
3686                        else (t = n[f.status]), f.always(t);
3687                    }
3688                    return this;
3689                }),
3690                (u.url = ((n || u.url) + "").replace(de, "").replace(to, p[1] + "//")),
3691                (u.dataTypes = i
3692                    .trim(u.dataType || "*")
3693                    .toLowerCase()
3694                    .split(h)),
3695                u.crossDomain == null && ((a = iu.exec(u.url.toLowerCase()) || !1), (u.crossDomain = a && a.join(":") + (a[3] ? "" : a[1] === "http:" ? 80 : 443) !== p.join(":") + (p[3] ? "" : p[1] === "http:" ? 80 : 443))),
3696                u.data && u.processData && typeof u.data != "string" && (u.data = i.param(u.data, u.traditional)),
3697                ft(ii, u, r, f),
3698                e === 2)
3699            )
3700                return f;
3701            v = u.global;
3702            u.type = u.type.toUpperCase();
3703            u.hasContent = !no.test(u.type);
3704            v && i.active++ == 0 && i.event.trigger("ajaxStart");
3705            u.hasContent ||
3706                (u.data && ((u.url += (tu.test(u.url) ? "&" : "?") + u.data), delete u.data),
3707                (o = u.url),
3708                u.cache === !1 && ((tt = i.now()), (it = u.url.replace(ro, "$1_=" + tt)), (u.url = it + (it === u.url ? (tu.test(u.url) ? "&" : "?") + "_=" + tt : ""))));
3709            ((u.data && u.hasContent && u.contentType !== !1) || r.contentType) && f.setRequestHeader("Content-Type", u.contentType);
3710            u.ifModified && ((o = o || u.url), i.lastModified[o] && f.setRequestHeader("If-Modified-Since", i.lastModified[o]), i.etag[o
3710] && f.setRequestHeader("If-None-Match", i.etag[o]));
3711            f.setRequestHeader("Accept", u.dataTypes[0] && u.accepts[u.dataTypes[0]] ? u.accepts[u.dataTypes[0]] + (u.dataTypes[0] !== "*" ? ", " + fu + "; q=0.01" : "") : u.accepts["*"]);
3712            for (l in u.headers) f.setRequestHeader(l, u.headers[l]);
3713            if (u.beforeSend && (u.beforeSend.call(s, f, u) === !1 || e === 2)) return f.abort();
3714            ot = "abort";
3715            for (l in { success: 1, error: 1, complete: 1 }) f[l](u[l]);
3716            if (((c = ft(uu, u, r, f)), c)) {
3717                f.readyState = 1;
3718                v && g.trigger("ajaxSend", [f, u]);
3719                u.async &&
3720                    u.timeout > 0 &&
3721                    (d = setTimeout(function () {
3722                        f.abort("timeout");
3723                    }, u.timeout));
3724                try {
3725                    e = 1;
3726                    c.send(ut, b);
3727                } catch (st) {
3728                    if (e < 2) b(-1, st);
3729                    else throw st;
3730                }
3731            } else b(-1, "No Transport");
3732            return f;
3733        },
3734        active: 0,
3735        lastModified: {},
3736        etag: {},
3737    });
3738    var su = [],
3739        eo = /\?/,
3740        et = /(=)\?(?=&|$)|\?\?/,
3741        oo = i.now();
3742    i.ajaxSetup({
3743        jsonp: "callback",
3744        jsonpCallback: function () {
3745            var n = su.pop() || i.expando + "_" + oo++;
3746            return (this[n] = !0), n;
3747        },
3748    });
3749    i.ajaxPrefilter("json jsonp", function (r, u, f) {
3750        var e,
3751            s,
3752            o,
3753            h = r.data,
3754            c = r.url,
3755            l = r.jsonp !== !1,
3756            a = l && et.test(c),
3757            v = l && !a && typeof h == "string" && !(r.contentType || "").indexOf("application/x-www-form-urlencoded") && et.test(h);
3758        if (r.dataTypes[0] === "jsonp" || a || v)
3759            return (
3760                (e = r.jsonpCallback = i.isFunction(r.jsonpCallback) ? r.jsonpCallback() : r.jsonpCallback),
3761                (s = n[e]),
3762                a ? (r.url = c.replace(et, "$1" + e)) : v ? (r.data = h.replace(et, "$1" + e)) : l && (r.url += (eo.test(c) ? "&" : "?") + r.jsonp + "=" + e),
3763                (r.converters["script json"] = function () {
3764                    return o || i.error(e + " was not called"), o[0];
3765                }),
3766                (r.dataTypes[0] = "json"),
3767                (n[e] = function () {
3768                    o = arguments;
3769                }),
3770                f.always(function () {
3771                    n[e] = s;
3772                    r[e] && ((r.jsonpCallback = u.jsonpCallback), su.push(e));
3773                    o && i.isFunction(s) && s(o[0]);
3774                    o = s = t;
3775                }),
3776                "script"
3777            );
3778    });
3779    i.ajaxSetup({
3780        accepts: { script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" },
3781        contents: { script: /javascript|ecmascript/ },
3782        converters: {
3783            "text script": function (n) {
3784                return i.globalEval(n), n;
3785            },
3786        },
3787    });
3788    i.ajaxPrefilter("script", function (n) {
3789        n.cache === t && (n.cache = !1);
3790        n.crossDomain && ((n.type = "GET"), (n.global = !1));
3791    });
3792    i.ajaxTransport("script", function (n) {
3793        if (n.crossDomain) {
3794            var i,
3795                u = r.head || r.getElementsByTagName("head")[0] || r.documentElement;
3796            return {
3797                send: function (f, e) {
3798                    i = r.createElement("script");
3799                    i.async = "async";
3800                    n.scriptCharset && (i.charset = n.scriptCharset);
3801                    i.src = n.url;
3802                    i.onload = i.onreadystatechange = function (n, r) {
3803                        (r || !i.readyState || /loaded|complete/.test(i.readyState)) && ((i.onload = i.onreadystatechange = null), u && i.parentNode && u.removeChild(i), (i = t), r || e(200, "success"));
3804                    };
3805                    u.insertBefore(i, u.firstChild);
3806                },
3807                abort: function () {
3808                    if (i) i.onload(0, 1);
3809                },
3810            };
3811        }
3812    });
3813    ot = n.ActiveXObject
3814        ? function () {
3815              for (var n in w) w[n](0, 1);
3816          }
3817        : !1;
3818    hu = 0;
3819    (i.ajaxSettings.xhr = n.ActiveXObject
3820        ? function () {
3821              return (!this.isLocal && cu()) || so();
3822          }
3823        : cu),
3824        (function (n) {
3825            i.extend(i.support, { ajax: !!n, cors: !!n && "withCredentials" in n });
3826        })(i.ajaxSettings.xhr());
3827    i.support.ajax &&
3828        i.ajaxTransport(function (r) {
3829            if (!r.crossDomain || i.support.cors) {
3830                var u;
3831                return {
3832                    send: function (f, e) {
3833                        var h,
3834                            s,
3835                            o = r.xhr();
3836                        if ((r.username ? o.open(r.type, r.url, r.async, r.username, r.password) : o.open(r.type, r.url, r.async), r.xhrFields)) for (s in r.xhrFields) o[s] = r.xhrFields[s];
3837                        r.mimeType && o.overrideMimeType && o.overrideMimeType(r.mimeType);
3838                        r.crossDomain || f["X-Requested-With"] || (f["X-Requested-With"] = "XMLHttpRequest");
3839                        try {
3840                            for (s in f) o.setRequestHeader(s, f[s]);
3841                        } catch (c) {}
3842                        o.send((r.hasContent && r.data) || null);
3843                        u = function (n, f) {
3844                            var s, a, v, c, l;
3845                            try {
3846                                if (u && (f || o.readyState === 4))
3847                                    if (((u = t), h && ((o.onreadystatechange = i.noop), ot && delete w[h]), f)) o.readyState !== 4 && o.abort();
3848                                    else {
3849                                        s = o.status;
3850                                        v = o.getAllResponseHeaders();
3851                                        c = {};
3852                                        l = o.responseXML;
3853                                        l && l.documentElement && (c.xml = l);
3854                                        try {
3855                                            c.text = o.responseText;
3856                                        } catch (n) {}
3857                                        try {
3858                                            a = o.statusText;
3859                                        } catch (p) {
3860                                            a = "";
3861                                        }
3862                                        s || !r.isLocal || r.crossDomain ? s === 1223 && (s = 204) : (s = c.text ? 200 : 404);
3863                                    }
3864                            } catch (y) {
3865                                f || e(-1, y);
3866                            }
3867                            c && e(s, a, c, v);
3868                        };
3869                        r.async ? (o.readyState === 4 ? setTimeout(u, 0) : ((h = ++hu), ot && (w || ((w = {}), i(n).unload(ot)), (w[h] = u)), (o.onreadystatechange = u))) : u();
3870                    },
3871                    abort: function () {
3872                        u && u(0, 1);
3873                    },
3874                };
3875            }
3876        });
3877    var st,
3878        ht,
3879        ho = /^(?:toggle|show|hide)$/,
3880        co = new RegExp("^(?:([-+])=|)(" + g + ")([a-z%]*)$", "i"),
3881        lo = /queueHooks$/,
3882        ct = [yo],
3883        k = {
3884            "*": [
3885                function (n, t) {
3886                    var o,
3887                        s,
3888                        r = this.createTween(n, t),
3889                        e = co.exec(t),
3890                        h = r.cur(),
3891                        u = +h || 0,
3892                        f = 1,
3893                        c = 20;
3894                    if (e) {
3895                        if (((o = +e[2]), (s = e[3] || (i.cssNumber[n] ? "" : "px")), s !== "px" && u)) {
3896                            u = i.css(r.elem, n, !0) || o || 1;
3897                            do (f = f || ".5"), (u = u / f), i.style(r.elem, n, u + s);
3898                            while (f !== (f = r.cur() / h) && f !== 1 && --c);
3899                        }
3900                        r.unit = s;
3901                        r.start = u;
3902                        r.end = e[1] ? u + (e[1] + 1) * o : o;
3903                    }
3904                    return r;
3905                },
3906            ],
3907        };
3908    i.Animation = i.extend(au, {
3909        tweener: function (n, t) {
3910            i.isFunction(n) ? ((t = n), (n = ["*"])) : (n = n.split(" "));
3911            for (var r, u = 0, f = n.length; u < f; u++) (r = n[u]), (k[r] = k[r] || []), k[r].unshift(t);
3912        },
3913        prefilter: function (n, t) {
3914            t ? ct.unshift(n) : ct.push(n);
3915        },
3916    });
3917    i.Tween = f;
3918    f.prototype = {
3919        constructor: f,
3920        init: function (n, t, r, u, f, e) {
3921            this.elem = n;
3922            this.prop = r;
3923            this.easing = f || "swing";
3924            this.options = t;
3925            this.start = this.now = this.cur();
3926            this.end = u;
3927            this.unit = e || (i.cssNumber[r] ? "" : "px");
3928        },
3929        cur: function () {
3930            var n = f.propHooks[this.prop];
3931            return n && n.get ? n.get(this) : f.propHooks._default.get(this);
3932        },
3933        run: function (n) {
3934            var t,
3935                r = f.propHooks[this.prop];
3936            return (
3937                (this.pos = this.options.duration ? (t = i.easing[this.easing](n, this.options.duration * n, 0, 1, this.options.duration)) : (t = n)),
3938                (this.now = (this.end - this.start) * t + this.start),
3939                this.options.step && this.options.step.call(this.elem, this.now, this),
3940                r && r.set ? r.set(this) : f.propHooks._default.set(this),
3941                this
3942            );
3943        },
3944    };
3945    f.prototype.init.prototype = f.prototype;
3946    f.propHooks = {
3947        _default: {
3948            get: function (n) {
3949                var t;
3950                return n.elem[n.prop] != null && (!n.elem.style || n.elem.style[n.prop] == null) ? n.elem[n.prop] : ((t = i.css(n.elem, n.prop, !1, "")), !t || t === "auto" ? 0 : t);
3951            },
3952            set: function (n) {
3953                i.fx.step[n.prop] ? i.fx.step[n.prop](n) : n.elem.style && (n.elem.style[i.cssProps[n.prop]] != null || i.cssHooks[n.prop]) ? i.style(n.elem, n.prop, n.now + n.unit) : (n.elem[n.prop] = n.now);
3954            },
3955        },
3956    };
3957    f.propHooks.scrollTop = f.propHooks.scrollLeft = {
3958        set: function (n) {
3959            n.elem.nodeType && n.elem.parentNode && (n.elem[n.prop] = n.now);
3960        },
3961    };
3962    i.each(["toggle", "show", "hide"], function (n, t) {
3963        var r = i.fn[t];
3964        i.fn[t] = function (u, f, e) {
3965            return u == null || typeof u == "boolean" || (!n && i.isFunction(u) && i.isFunction(f)) ? r.apply(this, arguments) : this.animate(lt(t, !0), u, f, e);
3966        };
3967    });
3968    i.fn.extend({
3969        fadeTo: function (n, t, i, r) {
3970            return this.filter(ut).css("opacity", 0).show().end().animate({ opacity: t }, n, i, r);
3971        },
3972        animate: function (n, t, r, u) {
3973            var e = i.isEmptyObject(n),
3974                f = i.speed(t, r, u),
3975                o = function () {
3976                    var t = au(this, i.extend({}, n), f);
3977                    e && t.stop(!0);
3978                };
3979            return e || f.queue === !1 ? this.each(o) : this.queue(f.queue, o);
3980        },
3981        stop: function (n, r, u) {
3982            var f = function (n) {
3983                var t = n.stop;
3984                delete n.stop;
3985                t(u);
3986            };
3987            return (
3988                typeof n != "string" && ((u = r), (r = n), (n = t)),
3989                r && n !== !1 && this.queue(n || "fx", []),
3990                this.each(function () {
3991                    var o = !0,
3992                        t = n != null && n + "queueHooks",
3993                        e = i.timers,
3994                        r = i._data(this);
3995                    if (t) r[t] && r[t].stop && f(r[t]);
3996                    else for (t in r) r[t] && r[t].stop && lo.test(t) && f(r[t]);
3997                    for (t = e.length; t--; ) e[t].elem === this && (n == null || e[t].queue === n) && (e[t].anim.stop(u), (o = !1), e.splice(t, 1));
3998                    (o || !u) && i.dequeue(this, n);
3999                })
4000            );
4001        },
4002    });
4003    i.each({ slideDown: lt("show"), slideUp: lt("hide"), slideToggle: lt("toggle"), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide" }, fadeToggle: { opacity: "toggle" } }, function (n, t) {
4004        i.fn[n] = function (n, i, r) {
4005            return this.animate(t, n, i, r);
4006        };
4007    });
4008    i.speed = function (n, t, r) {
4009        var u = n && typeof n == "object" ? i.extend({}, n) : { complete: r || (!r && t) || (i.isFunction(n) && n), duration: n, easing: (r && t) || (t && !i.isFunction(t) && t) };
4010        return (
4011            (u.duration = i.fx.off ? 0 : typeof u.duration == "number" ? u.duration : u.duration in i.fx.speeds ? i.fx.speeds[u.duration] : i.fx.speeds._default),
4012            (u.queue == null || u.queue === !0) && (u.queue = "fx"),
4013            (u.old = u.complete),
4014            (u.complete = function () {
4015                i.isFunction(u.old) && u.old.call(this);
4016                u.queue && i.dequeue(this, u.queue);
4017            }),
4018            u
4019        );
4020    };
4021    i.easing = {
4022        linear: function (n) {
4023            return n;
4024        },
4025        swing: function (n) {
4026            return 0.5 - Math.cos(n * Math.PI) / 2;
4027        },
4028    };
4029    i.timers = [];
4030    i.fx = f.prototype.init;
4031    i.fx.tick = function () {
4032        for (var r, n = i.timers, t = 0; t < n.length; t++) (r = n[t]), r() || n[t] !== r || n.splice(t--, 1);
4033        n.length || i.fx.stop();
4034    };
4035    i.fx.timer = function (n) {
4036        n() && i.timers.push(n) && !ht && (ht = setInterval(i.fx.tick, i.fx.interval));
4037    };
4038    i.fx.interval = 13;
4039    i.fx.stop = function () {
4040        clearInterval(ht);
4041        ht = null;
4042    };
4043    i.fx.speeds = { slow: 600, fast: 200, _default: 400 };
4044    i.fx.step = {};
4045    i.expr &&
4046        i.expr.filters &&
4047        (i.expr.filters.animated = function (n) {
4048            return i.grep(i.timers, function (t) {
4049                return n === t.elem;
4050            }).length;
4051        });
4052    ri = /^(?:body|html)$/i;
4053    i.fn.offset = function (n) {
4054        if (arguments.length)
4055            return n === t
4056                ? this
4057                : this.each(function (t) {
4058                      i.offset.setOffset(this, n, t);
4059                  });
4060        var u,
4061            o,
4062            s,
4063            h,
4064            c,
4065            l,
4066            a,
4067            f = { top: 0, left: 0 },
4068            r = this[0],
4069            e = r && r.ownerDocument;
4070        if (e)
4071            return (o = e.body) === r
4072                ? i.offset.bodyOffset(r)
4073                : ((u = e.documentElement), !i.contains(u, r))
4074                ? f
4075                : (typeof r.getBoundingClientRect != "undefined" && (f = r.getBoundingClientRect()),
4076                  (s = vu(e)),
4077                  (h = u.clientTop || o.clientTop || 0),
4078                  (c = u.clientLeft || o.clientLeft || 0),
4079                  (l = s.pageYOffset || u.scrollTop),
4080                  (a = s.pageXOffset || u.scrollLeft),
4081                  { top: f.top + l - h, left: f.left + a - c });
4082    };
4083    i.offset = {
4084        bodyOffset: function (n) {
4085            var t = n.offsetTop,
4086                r = n.offsetLeft;
4087            return i.support.doesNotIncludeMarginInBodyOffset && ((t += parseFloat(i.css(n, "marginTop")) || 0), (r += parseFloat(i.css(n, "marginLeft")) || 0)), { top: t, left: r };
4088        },
4089        setOffset: function (n, t, r) {
4090            var f = i.css(n, "position");
4091            f === "static" && (n.style.position = "relative");
4092            var e = i(n),
4093                o = e.offset(),
4094                l = i.css(n, "top"),
4095                a = i.css(n, "left"),
4096                v = (f === "absolute" || f === "fixed") && i.inArray("auto", [l, a]) > -1,
4097                u = {},
4098                s = {},
4099                h,
4100                c;
4101            v ? ((s = e.position()), (h = s.top), (c = s.left)) : ((h = parseFloat(l) || 0), (c = parseFloat(a) || 0));
4102            i.isFunction(t) && (t = t.call(n, r, o));
4103            t.top != null && (u.top = t.top - o.top + h);
4104            t.left != null && (u.left = t.left - o.left + c);
4105            "using" in t ? t.using.call(n, u) : e.css(u);
4106        },
4107    };
4108    i.fn.extend({
4109        position: function () {
4110            if (this[0]) {
4111                var u = this[0],
4112                    n = this.offsetParent(),
4113                    t = this.offset(),
4114                    r = ri.test(n[0].nodeName) ? { top: 0, left: 0 } : n.offset();
4115                return (
4116                    (t.top -= parseFloat(i.css(u, "marginTop")) || 0),
4117                    (t.left -= parseFloat(i.css(u, "marginLeft")) || 0),
4118                    (r.top += parseFloat(i.css(n[0], "borderTopWidth")) || 0),
4119                    (r.left += parseFloat(i.css(n[0], "borderLeftWidth")) || 0),
4120                    { top: t.top - r.top, left: t.left - r.left }
4121                );
4122            }
4123        },
4124        offsetParent: function () {
4125            return this.map(function () {
4126                for (var n = this.offsetParent || r.body; n && !ri.test(n.nodeName) && i.css(n, "position") === "static"; ) n = n.offsetParent;
4127                return n || r.body;
4128            });
4129        },
4130    });
4131    i.each({ scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function (n, r) {
4132        var u = /Y/.test(r);
4133        i.fn[n] = function (f) {
4134            return i.access(
4135                this,
4136                function (n, f, e) {
4137                    var o = vu(n);
4138                    if (e === t) return o ? (r in o ? o[r] : o.document.documentElement[f]) : n[f];
4139                    o ? o.scrollTo(u ? i(o).scrollLeft() : e, u ? e : i(o).scrollTop()) : (n[f] = e);
4140                },
4141                n,
4142                f,
4143                arguments.length,
4144                null
4145            );
4146        };
4147    });
4148    i.each({ Height: "height", Width: "width" }, function (n, r) {
4149        i.each({ padding: "inner" + n, content: r, "": "outer" + n }, function (u, f) {
4150            i.fn[f] = function (f, e) {
4151                var o = arguments.length && (u || typeof f != "boolean"),
4152                    s = u || (f === !0 || e === !0 ? "margin" : "border");
4153                return i.access(
4154                    this,
4155                    function (r, u, f) {
4156                        var e;
4157                        return i.isWindow(r)
4158                            ? r.document.documentElement["client" + n]
4159                            : r.nodeType === 9
4160                            ? ((e = r.documentElement), Math.max(r.body["scroll" + n], e["scroll" + n], r.body["offset" + n], e["offset" + n], e["client" + n]))
4161                            : f === t
4162                            ? i.css(r, u, f, s)
4163                            : i.style(r, u, f, s);
4164                    },
4165                    r,
4166                    o ? f : t,
4167                    o,
4168                    null
4169                );
4170            };
4171        });
4172    });
4173    n.jQuery = n.$ = i;
4174    typeof define == "function" &&
4175        define.amd &&
4176        define.amd.jQuery &&
4177        define("jquery", [], function () {
4178            return i;
4179        });
4180})(window),
4181    (function (n) {
4182        function o(i, r, f, o) {
4183            var s = { data: o || (r ? r.data : {}), _wrap: r ? r._wrap : null, tmpl: null, parent: r || null, nodes: [], calls: d, nest: g, wrap: nt, html: tt, update: it };
4184            return i && n.extend(s, i, { nodes: [], parent: r }), f && ((s.tmpl = f), (s._ctnt = s._ctnt || s.tmpl(n, s)), (s.key = ++e), ((h.length ? u : t)[e] = s)), s;
4185        }
4186        function s(t, i, u) {
4187            var f,
4188                e = u
4189                    ? n.map(u, function (n) {
4190                          return typeof n == "string" ? (t.key ? n.replace(/(<\w+)(?=[\s>])(?![^>]*_tmplitem)([^>]*)/g, "$1 " + r + '="' + t.key + '" $2') : n) : s(n, t, n._ctnt);
4191                      })
4192                    : t;
4193            return i
4194                ? e
4195                : ((e = e.join("")),
4196                  e.replace(/^\s*([^<\s][^<]*)?(<[\w\W]+>)([^>]*[^>\s])?\s*$/, function (t, i, r, u) {
4197                      f = n(r).get();
4198                      b(f);
4199                      i && (f = c(i).concat(f));
4200                      u && (f = f.concat(c(u)));
4201                  }),
4202                  f ? f : c(e));
4203        }
4204        function c(t) {
4205            var i = document.createElement("div");
4206            return (i.innerHTML = t), n.makeArray(i.childNodes);
4207        }
4208        function p(t) {
4209            return new Function(
4210                "jQuery",
4211                "$item",
4212                "var $=jQuery,call,_=[],$data=$item.data;with($data){_.push('" +
4213                    n
4214                        .trim(t)
4215                        .replace(/([\\'])/g, "\\$1")
4216                        .replace(/[\r\t\n]/g, " ")
4217                        .replace(/\$\{([^\}]*)\}/g, "{{= $1}}")
4218                        .replace(/\{\{(\/?)(\w+|.)(?:\(((?:[^\}]|\}(?!\}))*?)?\))?(?:\s+(.*?)?)?(\(((?:[^\}]|\}(?!\}))*?)\))?\s*\}\}/g, function (t, i, r, u, f, e, o) {
4219                            var h = n.tmpl.tag[r],
4220                                c,
4221                                s,
4222                                a;
4223                            if (!h) throw "Template command not found: " + r;
4224                            return (
4225                                (c = h._default || []),
4226                                e && !/\w$/.test(f) && ((f += e), (e = "")),
4227                                f
4228                                    ? ((f = l(f)),
4229                                      (o = o ? "," + l(o) + ")" : e ? ")" : ""),
4230                                      (s = e ? (f.indexOf(".") > -1 ? f + e : "(" + f + ").call($item" + o) : f),
4231                                      (a = e ? s : "(typeof(" + f + ")==='function'?(" + f + ").call($item):(" + f + "))"))
4232                                    : (a = s = c.$1 || "null"),
4233                                (u = l(u)),
4234                                "');" +
4235                                    h[i ? "close" : "open"]
4236                                        .split("$notnull_1")
4237                                        .join(f ? "typeof(" + f + ")!=='undefined' && (" + f + ")!=null" : "true")
4238                                        .split("$1a")
4239                                        .join(a)
4240                                        .split("$1")
4241                                        .join(s)
4242                                        .split("$2")
4243                                        .join(
4244                                            u
4245                                                ? u.replace(/\s*([^\(]+)\s*(\((.*?)\))?/g, function (n, t, i, r) {
4246                                                      return (r = r ? "," + r + ")" : i ? ")" : ""), r ? "(" + t + ").call($item" + r : n;
4247                                                  })
4248                                                : c.$2 || ""
4249                                        ) +
4250                                    "_.push('"
4251                            );
4252                        }) +
4253                    "');}return _;"
4254            );
4255        }
4256        function w(t, i) {
4257            t._wrap = s(t, !0, n.isArray(i) ? i : [v.test(i) ? i : n(i).html()]).join("");
4258        }
4259        function l(n) {
4260            return n ? n.replace(/\\'/g, "'").replace(/\\\\/g, "\\") : null;
4261        }
4262        function k(n) {
4263            var t = document.createElement("div");
4264            return t.appendChild(n.cloneNode(!0)), t.innerHTML;
4265        }
4266        function b(f) {
4267            function p(f) {
4268                function p(n) {
4269                    n = n + a;
4270                    s = v[n] = v[n] || o(s, t[s.parent.key + a] || s.parent, null, !0);
4271                }
4272                var y,
4273                    h = f,
4274                    c,
4275                    s,
4276                    l;
4277                if ((l = f.getAttribute(r))) {
4278                    while (h.parentNode && (h = h.parentNode).nodeType === 1 && !(y = h.getAttribute(r)));
4279                    y !== l && ((h = h.parentNode ? (h.nodeType === 11 ? 0 : h.getAttribute(r) || 0) : 0), (s = t[l]) || ((s = u[l]), (s = o(s, t[h] || u[h], null, !0)), (s.key = ++e), (t[e] = s)), i && p(l));
4280                    f.removeAttribute(r);
4281                } else i && (s = n.data(f, "tmplItem")) && (p(s.key), (t[s.key] = s), (h = n.data(f.parentNode, "tmplItem")), (h = h ? h.key : 0));
4282                if (s) {
4283                    for (c = s; c && c.key != h; ) c.nodes.push(f), (c = c.parent);
4284                    delete s._ctnt;
4285                    delete s._wrap;
4286                    n.data(f, "tmplItem", s);
4287                }
4288            }
4289            for (var a = "_" + i, c, l, v = {}, h, s = 0, y = f.length; s < y; s++)
4290                if ((c = f[s]).nodeType === 1) {
4291                    for (l = c.getElementsByTagName("*"), h = l.length - 1; h >= 0; h--) p(l[h]);
4292                    p(c);
4293                }
4294        }
4295        function d(n, t, i, r) {
4296            if (!n) return h.pop();
4297            h.push({ _: n, tmpl: t, item: this, data: i, options: r });
4298        }
4299        function g(t, i, r) {
4300            return n.tmpl(n.template(t), i, r, this);
4301        }
4302        function nt(t, i) {
4303            var r = t.options || {};
4304            return (r.wrapped = i), n.tmpl(n.template(t.tmpl), t.data, r, t.item);
4305        }
4306        function tt(t, i) {
4307            var r = this._wrap;
4308            return n.map(n(n.isArray(r) ? r.join("") : r).filter(t || "*"), function (n) {
4309                return i ? n.innerText || n.textContent : n.outerHTML || k(n);
4310            });
4311        }
4312        function it() {
4313            var t = this.nodes;
4314            n.tmpl(null, null, null, this).insertBefore(t[0]);
4315            n(t).remove();
4316        }
4317        var a = n.fn.domManip,
4318            r = "_tmplitem",
4319            v = /^[^<]*(<[\w\W]+>)[^>]*$|\{\{\! /,
4320            t = {},
4321            u = {},
4322            f,
4323            y = { key: 0, data: {} },
4324            e = 0,
4325            i = 0,
4326            h = [];
4327        n.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function (r, u) {
4328            n.fn[r] = function (e) {
4329                var o = [],
4330                    h = n(e),
4331                    c,
4332                    s,
4333                    a,
4334                    v,
4335                    l = this.length === 1 && this[0].parentNode;
4336                if (((f = t || {}), l && l.nodeType === 11 && l.childNodes.length === 1 && h.length === 1)) h[u](this[0]), (o = this);
4337                else {
4338                    for (s = 0, a = h.length; s < a; s++) (i = s), (c = (s > 0 ? this.clone(!0) : this).get()), n.fn[u].apply(n(h[s]), c), (o = o.concat(c));
4339                    i = 0;
4340                    o = this.pushStack(o, r, h.selector);
4341                }
4342                return (v = f), (f = null), n.tmpl.complete(v), o;
4343            };
4344        });
4345        n.fn.extend({
4346            tmpl: function (t, i, r) {
4347                return n.tmpl(this[0], t, i, r);
4348            },
4349            tmplItem: function () {
4350                return n.tmplItem(this[0]);
4351            },
4352            template: function (t) {
4353                return n.template(t, this[0]);
4354            },
4355            domManip: function (r, u, e) {
4356                if (r[0] && r[0].nodeType) {
4357                    for (var o = n.makeArray(arguments), s = r.length, h 
4357= 0, c; h < s && !(c = n.data(r[h++], "tmplItem")); );
4358                    s > 1 && (o[0] = [n.makeArray(r)]);
4359                    c &&
4360                        i &&
4361                        (o[2] = function (t) {
4362                            n.tmpl.afterManip(this, t, e);
4363                        });
4364                    a.apply(this, o);
4365                } else a.apply(this, arguments);
4366                return (i = 0), f || n.tmpl.complete(t), this;
4367            },
4368        });
4369        n.extend({
4370            tmpl: function (i, r, f, e) {
4371                var h,
4372                    c = !e;
4373                if (c) (e = y), (i = n.template[i] || n.template(null, i)), (u = {});
4374                else if (!i) return (i = e.tmpl), (t[e.key] = e), (e.nodes = []), e.wrapped && w(e, e.wrapped), n(s(e, null, e.tmpl(n, e)));
4375                return i
4376                    ? (typeof r == "function" && (r = r.call(e || {})),
4377                      f && f.wrapped && w(f, f.wrapped),
4378                      (h = n.isArray(r)
4379                          ? n.map(r, function (n) {
4380                                return n ? o(f, e, i, n) : null;
4381                            })
4382                          : [o(f, e, i, r)]),
4383                      c ? n(s(e, null, h)) : h)
4384                    : [];
4385            },
4386            tmplItem: function (t) {
4387                var i;
4388                for (t instanceof n && (t = t[0]); t && t.nodeType === 1 && !(i = n.data(t, "tmplItem")) && (t = t.parentNode); );
4389                return i || y;
4390            },
4391            template: function (t, i) {
4392                return i
4393                    ? (typeof i == "string" ? (i = p(i)) : i instanceof n && (i = i[0] || {}), i.nodeType && (i = n.data(i, "tmpl") || n.data(i, "tmpl", p(i.innerHTML))), typeof t == "string" ? (n.template[t] = i) : i)
4394                    : t
4395                    ? typeof t != "string"
4396                        ? n.template(null, t)
4397                        : n.template[t] || n.template(null, v.test(t) ? t : n(t))
4398                    : null;
4399            },
4400            encode: function (n) {
4401                return ("" + n).split("<").join("&lt;").split(">").join("&gt;").split('"').join("&#34;").split("'").join("&#39;");
4402            },
4403        });
4404        n.extend(n.tmpl, {
4405            tag: {
4406                tmpl: { _default: { $2: "null" }, open: "if($notnull_1){_=_.concat($item.nest($1,$2));}" },
4407                wrap: { _default: { $2: "null" }, open: "$item.calls(_,$1,$2);_=[];", close: "call=$item.calls();_=call._.concat($item.wrap(call,_));" },
4408                each: { _default: { $2: "$index, $value" }, open: "if($notnull_1){$.each($1a,function($2){with(this){", close: "}});}" },
4409                if: { open: "if(($notnull_1) && $1a){", close: "}" },
4410                else: { _default: { $1: "true" }, open: "}else if(($notnull_1) && $1a){" },
4411                html: { open: "if($notnull_1){_.push($1a);}" },
4412                "=": { _default: { $1: "$data" }, open: "if($notnull_1){_.push($.encode($1a));}" },
4413                "!": { open: "" },
4414            },
4415            complete: function () {
4416                t = {};
4417            },
4418            afterManip: function (t, r, u) {
4419                var f = r.nodeType === 11 ? n.makeArray(r.childNodes) : r.nodeType === 1 ? [r] : [];
4420                u.call(t, r);
4421                b(f);
4422                i++;
4423            },
4424        });
4425    })(jQuery),
4426    (function (n) {
4427        n.fn.stopwatch = function (t) {
4428            var i = n(this);
4429            i.addClass("stopwatch").addClass(t);
4430            i.each(function () {
4431                function h() {
4432                    var f = parseFloat(i.text()),
4433                        n = parseFloat(r.text()),
4434                        t = parseFloat(u.text());
4435                    t++;
4436                    t > 59 && ((t = 0), (n = n + 1));
4437                    n > 59 && ((n = 0), (f = f + 1));
4438                    i.html("0".substring(f >= 10) + f);
4439                    r.html("0".substring(n >= 10) + n);
4440                    u.html("0".substring(t >= 10) + t);
4441                }
4442                var s = n(this),
4443                    t = 0,
4444                    f = n("<div>").addClass("the-time"),
4445                    i = n("<span>").addClass("hr").text("00"),
4446                    r = n("<span>").addClass("min").text("00"),
4447                    u = n("<span>").addClass("sec").text("00"),
4448                    e = n("<a>").attr("href", "").addClass("start-stop").text("Başla"),
4449                    o = n("<a>").attr("href", "").addClass("reset").text("Sıfırla");
4450                f = f.append(i).append(r).append(u);
4451                s.html("").append(f).append(e).append(o);
4452                e.bind("click", function (i) {
4453                    i.preventDefault();
4454                    var r = n(this);
4455                    r.text() === "Başla" ? ((t = setInterval(h, 1e3)), r.text("Durdur")) : (clearInterval(t), r.text("Başla"));
4456                });
4457                o.bind("click", function (n) {
4458                    n.preventDefault();
4459                    clearInterval(t);
4460                    e.text("Durdur");
4461                    t = 0;
4462                    i.text("00");
4463                    r.text("00");
4464                    u.text("00");
4465                });
4466            });
4467        };
4468
4469        $("#stopwatch-2").stopwatch("theme-2");
4470        $("#stop-watch-setter").click(function () {
4471            $("#stopwatch").toggle("slow");
4472        });
4473        $(".question_number").click(function () {
4474            this.style.backgroundColor = this.style.backgroundColor == "orange" ? "white" : "orange";
4475        });
4476        $("#check-answers").click(function () {
4477            $("#test-results").html("");
4478            $("span.hidden").show();
4479            var n = { examSections: [] };
4480            $("div.exam-section").each(function (t) {
4481                n.examSections[t] = { id: $(this).attr("id"), name: $(this).data("userFriendlyName"), questions: [] };
4482                $(this)
4483                    .find("div.question")
4484                    .each(function (i) {
4485                        n.examSections[t].questions[i] = { id: $(this).data("question-id"), target: n.examSections[t].id + $(this).data("question-id") };
4486                        var u = !1,
4487                            r = $(this).find("div.answer:first");
4488                        r.find("input.input-answer").each(function () {
4489                            $(this).data("correct") == "True" && (n.examSections[t].questions[i].rightOption = $(this).data("option-text"));
4490                            $(this).is(":checked") && ((u = !0), (n.examSections[t].questions[i].selectedOption = $(this).data("option-text")), (n.examSections[t].questions[i].score = $(this).data("correct") == "True" ? 1 : -1));
4491                        });
4492                        u || ((n.examSections[t].questions[i].score = 0), (n.examSections[t].questions[i].selectedOption = "&nbsp;&nbsp;"));
4493                        switch (n.examSections[t].questions[i].score) {
4494                            case 1:
4495                                r.next("div.result").addClass("right-answer");
4496                                break;
4497                            case -1:
4498                                r.next("div.result").addClass("wrong-answer");
4499                                break;
4500                            default:
4501                                r.next("div.result").addClass("empty-answer");
4502                        }
4503                    });
4504                var i = 0,
4505                    r = 0,
4506                    u = 0;
4507                n.examSections[t].questions.forEach(function (n) {
4508                    switch (n.score) {
4509                        case 1:
4510                            i++;
4511                            break;
4512                        case -1:
4513                            r++;
4514                            break;
4515                        default:
4516                            u++;
4517                    }
4518                });
4519                n.examSections[t].rightAnswerCount = i;
4520                n.examSections[t].wrongAnswerCount = r;
4521                n.examSections[t].emptyAnswerCount = u;
4522                n.examSections[t].successRate = ((i / (i + r + u)) * 100).toFixed(2);
4523            });
4524            $("#examSectionList").tmpl(n).appendTo("#test-results");
4525        });
4526    })(jQuery);
4527
4528disableSelection(document.body);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.