Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var ellipsis;
- ! function () {
- if (!ellipsis || !ellipsis.requirejs) {
- ellipsis ? require = ellipsis : ellipsis = {};
- var requirejs, require, define;
- ! function (global) {
- function isFunction(e) {
- return "[object Function]" === ostring.call(e)
- }
- function isArray(e) {
- return "[object Array]" === ostring.call(e)
- }
- function each(e, t) {
- if (e) {
- var n;
- for (n = 0; n < e.length && (!e[n] || !t(e[n], n, e)); n += 1);
- }
- }
- function eachReverse(e, t) {
- if (e) {
- var n;
- for (n = e.length - 1; n > -1 && (!e[n] || !t(e[n], n, e)); n -= 1);
- }
- }
- function hasProp(e, t) {
- return hasOwn.call(e, t)
- }
- function getOwn(e, t) {
- return hasProp(e, t) && e[t]
- }
- function eachProp(e, t) {
- var n;
- for (n in e)
- if (hasProp(e, n) && t(e[n], n)) break
- }
- function mixin(e, t, n, r) {
- return t && eachProp(t, function (t, i) {
- (n || !hasProp(e, i)) && (r && "string" != typeof t ? (e[i] || (e[i] = {}), mixin(e[i], t, n, r)) : e[i] = t)
- }), e
- }
- function bind(e, t) {
- return function () {
- return t.apply(e, arguments)
- }
- }
- function scripts() {
- return document.getElementsByTagName("script")
- }
- function getGlobal(e) {
- if (!e) return e;
- var t = global;
- return each(e.split("."), function (e) {
- t = t[e]
- }), t
- }
- function makeError(e, t, n, r) {
- var i = new Error(t + "\nhttp://requirejs.org/docs/errors.html#" + e);
- return i.requireType = e, i.requireModules = r, n && (i.originalError = n), i
- }
- function newContext(e) {
- function t(e) {
- var t, n;
- for (t = 0; e[t]; t += 1)
- if (n = e[t], "." === n) e.splice(t, 1), t -= 1;
- else if (".." === n) {
- if (1 === t && (".." === e[2] || ".." === e[0])) break;
- t > 0 && (e.splice(t - 1, 2), t -= 2)
- }
- }
- function n(e, n, r) {
- var i, o, a, s, u, c, l, p, d, f, h, m = n && n.split("/"),
- g = m,
- v = C.map,
- y = v && v["*"];
- if (e && "." === e.charAt(0) && (n ? (g = getOwn(C.pkgs, n) ? m = [n] : m.slice(0, m.length - 1), e = g.concat(e.split("/")), t(e), o = getOwn(C.pkgs, i = e[0]), e = e.join("/"), o && e === i + "/" + o.main && (e = i)) : 0 === e.indexOf("./") && (e = e.substring(2))), r && v && (m || y)) {
- for (s = e.split("/"), u = s.length; u > 0; u -= 1) {
- if (l = s.slice(0, u).join("/"), m)
- for (c = m.length; c > 0; c -= 1)
- if (a = getOwn(v, m.slice(0, c).join("/")), a && (a = getOwn(a, l))) {
- p = a, d = u;
- break
- } if (p) break;
- !f && y && getOwn(y, l) && (f = getOwn(y, l), h = u)
- }!p && f && (p = f, d = h), p && (s.splice(0, d, p), e = s.join("/"))
- }
- return e
- }
- function r(e) {
- isBrowser && each(scripts(), function (t) {
- return t.getAttribute("data-requiremodule") === e && t.getAttribute("data-requirecontext") === x.contextName ? (t.parentNode.removeChild(t), !0) : void 0
- })
- }
- function i(e) {
- var t = getOwn(C.paths, e);
- return t && isArray(t) && t.length > 1 ? (r(e), t.shift(), x.require.undef(e), x.require([e]), !0) : void 0
- }
- function o(e) {
- var t, n = e ? e.indexOf("!") : -1;
- return n > -1 && (t = e.substring(0, n), e = e.substring(n + 1, e.length)), [t, e]
- }
- function a(e, t, r, i) {
- var a, s, u, c, l = null,
- p = t ? t.name : null,
- d = e,
- f = !0,
- h = "";
- return e || (f = !1, e = "_@r" + (D += 1)), c = o(e), l = c[0], e = c[1], l && (l = n(l, p, i), s = getOwn(M, l)), e && (l ? h = s && s.normalize ? s.normalize(e, function (e) {
- return n(e, p, i)
- }) : n(e, p, i) : (h = n(e, p, i), c = o(h), l = c[0], h = c[1], r = !0, a = x.nameToUrl(h))), u = !l || s || r ? "" : "_unnormalized" + (A += 1), {
- prefix: l,
- name: h,
- parentMap: t,
- unnormalized: !!u,
- url: a,
- originalName: d,
- isDefine: f,
- id: (l ? l + "!" + h : h) + u
- }
- }
- function s(e) {
- var t = e.id,
- n = getOwn(T, t);
- return n || (n = T[t] = new x.Module(e)), n
- }
- function u(e, t, n) {
- var r = e.id,
- i = getOwn(T, r);
- !hasProp(M, r) || i && !i.defineEmitComplete ? s(e).on(t, n) : "defined" === t && n(M[r])
- }
- function c(e, t) {
- var n = e.requireModules,
- r = !1;
- t ? t(e) : (each(n, function (t) {
- var n = getOwn(T, t);
- n && (n.error = e, n.events.error && (r = !0, n.emit("error", e)))
- }), r || req.onError(e))
- }
- function l() {
- globalDefQueue.length && (apsp.apply(N, [N.length - 1, 0].concat(globalDefQueue)), globalDefQueue = [])
- }
- function p(e) {
- delete T[e], delete k[e]
- }
- function d(e, t, n) {
- var r = e.map.id;
- e.error ? e.emit("error", e.error) : (t[r] = !0, each(e.depMaps, function (r, i) {
- var o = r.id,
- a = getOwn(T, o);
- !a || e.depMatched[i] || n[o] || (getOwn(t, o) ? (e.defineDep(i, M[o]), e.check()) : d(a, t, n))
- }), n[r] = !0)
- }
- function f() {
- var e, t, n, o, a = 1e3 * C.waitSeconds,
- s = a && x.startTime + a < (new Date).getTime(),
- u = [],
- l = [],
- p = !1,
- h = !0;
- if (!y) {
- if (y = !0, eachProp(k, function (n) {
- if (e = n.map, t = e.id, n.enabled && (e.isDefine || l.push(n), !n.error))
- if (!n.inited && s) i(t) ? (o = !0, p = !0) : (u.push(t), r(t));
- else if (!n.inited && n.fetched && e.isDefine && (p = !0, !e.prefix)) return h = !1
- }), s && u.length) return n = makeError("timeout", "Load timeout for modules: " + u, null, u), n.contextName = x.contextName, c(n);
- h && each(l, function (e) {
- d(e, {}, {})
- }), s && !o || !p || !isBrowser && !isWebWorker || w || (w = setTimeout(function () {
- w = 0, f()
- }, 50)), y = !1
- }
- }
- function h(e) {
- hasProp(M, e[0]) || s(a(e[0], null, !0)).init(e[1], e[2])
- }
- function m(e, t, n, r) {
- e.detachEvent && !isOpera ? r && e.detachEvent(r, t) : e.removeEventListener(n, t, !1)
- }
- function g(e) {
- var t = e.currentTarget || e.srcElement;
- return m(t, x.onScriptLoad, "load", "onreadystatechange"), m(t, x.onScriptError, "error"), {
- node: t,
- id: t && t.getAttribute("data-requiremodule")
- }
- }
- function v() {
- var e;
- for (l(); N.length;) {
- if (e = N.shift(), null === e[0]) return c(makeError("mismatch", "Mismatched anonymous define() module: " + e[e.length - 1]));
- h(e)
- }
- }
- var y, b, x, E, w, C = {
- waitSeconds: 7,
- baseUrl: "./",
- paths: {},
- pkgs: {},
- shim: {},
- config: {}
- },
- T = {},
- k = {},
- S = {},
- N = [],
- M = {},
- L = {},
- D = 1,
- A = 1;
- return E = {
- require: function (e) {
- return e.require ? e.require : e.require = x.makeRequire(e.map)
- },
- exports: function (e) {
- return e.usingExports = !0, e.map.isDefine ? e.exports ? e.exports : e.exports = M[e.map.id] = {} : void 0
- },
- module: function (e) {
- return e.module ? e.module : e.module = {
- id: e.map.id,
- uri: e.map.url,
- config: function () {
- return C.config && getOwn(C.config, e.map.id) || {}
- },
- exports: M[e.map.id]
- }
- }
- }, b = function (e) {
- this.events = getOwn(S, e.id) || {}, this.map = e, this.shim = getOwn(C.shim, e.id), this.depExports = [], this.depMaps = [], this.depMatched = [], this.pluginMaps = {}, this.depCount = 0
- }, b.prototype = {
- init: function (e, t, n, r) {
- r = r || {}, this.inited || (this.factory = t, n ? this.on("error", n) : this.events.error && (n = bind(this, function (e) {
- this.emit("error", e)
- })), this.depMaps = e && e.slice(0), this.errback = n, this.inited = !0, this.ignore = r.ignore, r.enabled || this.enabled ? this.enable() : this.check())
- },
- defineDep: function (e, t) {
- this.depMatched[e] || (this.depMatched[e] = !0, this.depCount -= 1, this.depExports[e] = t)
- },
- fetch: function () {
- if (!this.fetched) {
- this.fetched = !0, x.startTime = (new Date).getTime();
- var e = this.map;
- return this.shim ? void x.makeRequire(this.map, {
- enableBuildCallback: !0
- })(this.shim.deps || [], bind(this, function () {
- return e.prefix ? this.callPlugin() : this.load()
- })) : e.prefix ? this.callPlugin() : this.load()
- }
- },
- load: function () {
- var e = this.map.url;
- L[e] || (L[e] = !0, x.load(this.map.id, e))
- },
- check: function () {
- if (this.enabled && !this.enabling) {
- var e, t, n = this.map.id,
- r = this.depExports,
- i = this.exports,
- o = this.factory;
- if (this.inited) {
- if (this.error) this.emit("error", this.error);
- else if (!this.defining) {
- if (this.defining = !0, this.depCount < 1 && !this.defined) {
- if (isFunction(o)) {
- if (this.events.error) try {
- i = x.execCb(n, o, r, i)
- } catch (a) {
- e = a
- } else i = x.execCb(n, o, r, i);
- if (this.map.isDefine && (t = this.module, t && void 0 !== t.exports && t.exports !== this.exports ? i = t.exports : void 0 === i && this.usingExports && (i = this.exports)), e) return e.requireMap = this.map, e.requireModules = [this.map.id], e.requireType = "define", c(this.error = e)
- } else i = o;
- this.exports = i, this.map.isDefine && !this.ignore && (M[n] = i, req.onResourceLoad && req.onResourceLoad(x, this.map, this.depMaps)), p(n), this.defined = !0
- }
- this.defining = !1, this.defined && !this.defineEmitted && (this.defineEmitted = !0, this.emit("defined", this.exports), this.defineEmitComplete = !0)
- }
- } else this.fetch()
- }
- },
- callPlugin: function () {
- var e = this.map,
- t = e.id,
- r = a(e.prefix);
- this.depMaps.push(r), u(r, "defined", bind(this, function (r) {
- var i, o, l, d = this.map.name,
- f = this.map.parentMap ? this.map.parentMap.name : null,
- h = x.makeRequire(e.parentMap, {
- enableBuildCallback: !0
- });
- return this.map.unnormalized ? (r.normalize && (d = r.normalize(d, function (e) {
- return n(e, f, !0)
- }) || ""), o = a(e.prefix + "!" + d, this.map.parentMap), u(o, "defined", bind(this, function (e) {
- this.init([], function () {
- return e
- }, null, {
- enabled: !0,
- ignore: !0
- })
- })), l = getOwn(T, o.id), void(l && (this.depMaps.push(o), this.events.error && l.on("error", bind(this, function (e) {
- this.emit("error", e)
- })), l.enable()))) : (i = bind(this, function (e) {
- this.init([], function () {
- return e
- }, null, {
- enabled: !0
- })
- }), i.error = bind(this, function (e) {
- this.inited = !0, this.error = e, e.requireModules = [t], eachProp(T, function (e) {
- 0 === e.map.id.indexOf(t + "_unnormalized") && p(e.map.id)
- }), c(e)
- }), i.fromText = bind(this, function (n, r) {
- var o = e.name,
- u = a(o),
- l = useInteractive;
- r && (n = r), l && (useInteractive = !1), s(u), hasProp(C.config, t) && (C.config[o] = C.config[t]);
- try {
- req.exec(n)
- } catch (p) {
- return c(makeError("fromtexteval", "fromText eval for " + t + " failed: " + p, p, [t]))
- }
- l && (useInteractive = !0), this.depMaps.push(u), x.completeLoad(o), h([o], i)
- }), void r.load(e.name, h, i, C))
- })), x.enable(r, this), this.pluginMaps[r.id] = r
- },
- enable: function () {
- k[this.map.id] = this, this.enabled = !0, this.enabling = !0, each(this.depMaps, bind(this, function (e, t) {
- var n, r, i;
- if ("string" == typeof e) {
- if (e = a(e, this.map.isDefine ? this.map : this.map.parentMap, !1, !this.skipMap), this.depMaps[t] = e, i = getOwn(E, e.id)) return void(this.depExports[t] = i(this));
- this.depCount += 1, u(e, "defined", bind(this, function (e) {
- this.defineDep(t, e), this.check()
- })), this.errback && u(e, "error", this.errback)
- }
- n = e.id, r = T[n], hasProp(E, n) || !r || r.enabled || x.enable(e, this)
- })), eachProp(this.pluginMaps, bind(this, function (e) {
- var t = getOwn(T, e.id);
- t && !t.enabled && x.enable(e, this)
- })), this.enabling = !1, this.check()
- },
- on: function (e, t) {
- var n = this.events[e];
- n || (n = this.events[e] = []), n.push(t)
- },
- emit: function (e, t) {
- each(this.events[e], function (e) {
- e(t)
- }), "error" === e && delete this.events[e]
- }
- }, x = {
- config: C,
- contextName: e,
- registry: T,
- defined: M,
- urlFetched: L,
- defQueue: N,
- Module: b,
- makeModuleMap: a,
- nextTick: req.nextTick,
- onError: c,
- configure: function (e) {
- e.baseUrl && "/" !== e.baseUrl.charAt(e.baseUrl.length - 1) && (e.baseUrl += "/");
- var t = C.pkgs,
- n = C.shim,
- r = {
- paths: !0,
- config: !0,
- map: !0
- };
- eachProp(e, function (e, t) {
- r[t] ? "map" === t ? (C.map || (C.map = {}), mixin(C[t], e, !0, !0)) : mixin(C[t], e, !0) : C[t] = e
- }), e.shim && (eachProp(e.shim, function (e, t) {
- isArray(e) && (e = {
- deps: e
- }), !e.exports && !e.init || e.exportsFn || (e.exportsFn = x.makeShimExports(e)), n[t] = e
- }), C.shim = n), e.packages && (each(e.packages, function (e) {
- var n;
- e = "string" == typeof e ? {
- name: e
- } : e, n = e.location, t[e.name] = {
- name: e.name,
- location: n || e.name,
- main: (e.main || "main").replace(currDirRegExp, "").replace(jsSuffixRegExp, "")
- }
- }), C.pkgs = t), eachProp(T, function (e, t) {
- e.inited || e.map.unnormalized || (e.map = a(t))
- }), (e.deps || e.callback) && x.require(e.deps || [], e.callback)
- },
- makeShimExports: function (e) {
- function t() {
- var t;
- return e.init && (t = e.init.apply(global, arguments)), t || e.exports && getGlobal(e.exports)
- }
- return t
- },
- makeRequire: function (t, r) {
- function i(n, o, u) {
- var l, p, d;
- return r.enableBuildCallback && o && isFunction(o) && (o.__requireJsBuild = !0), "string" == typeof n ? isFunction(o) ? c(makeError("requireargs", "Invalid require call"), u) : t && hasProp(E, n) ? E[n](T[t.id]) : req.get ? req.get(x, n, t, i) : (p = a(n, t, !1, !0), l = p.id, hasProp(M, l) ? M[l] : c(makeError("notloaded", 'Module name "' + l + '" has not been loaded yet for context: ' + e + (t ? "" : ". Use require([])")))) : (v(), x.nextTick(function () {
- v(), d = s(a(null, t)), d.skipMap = r.skipMap, d.init(n, o, u, {
- enabled: !0
- }), f()
- }), i)
- }
- return r = r || {}, mixin(i, {
- isBrowser: isBrowser,
- toUrl: function (e) {
- var r, i = e.lastIndexOf("."),
- o = e.split("/")[0],
- a = "." === o || ".." === o;
- return -1 !== i && (!a || i > 1) && (r = e.substring(i, e.length), e = e.substring(0, i)), x.nameToUrl(n(e, t && t.id, !0), r, !0)
- },
- defined: function (e) {
- return hasProp(M, a(e, t, !1, !0).id)
- },
- specified: function (e) {
- return e = a(e, t, !1, !0).id, hasProp(M, e) || hasProp(T, e)
- }
- }), t || (i.undef = function (e) {
- l();
- var n = a(e, t, !0),
- r = getOwn(T, e);
- delete M[e], delete L[n.url], delete S[e], r && (r.events.defined && (S[e] = r.events), p(e))
- }), i
- },
- enable: function (e) {
- var t = getOwn(T, e.id);
- t && s(e).enable()
- },
- completeLoad: function (e) {
- var t, n, r, o = getOwn(C.shim, e) || {},
- a = o.exports;
- for (l(); N.length;) {
- if (n = N.shift(), null === n[0]) {
- if (n[0] = e, t) break;
- t = !0
- } else n[0] === e && (t = !0);
- h(n)
- }
- if (r = getOwn(T, e), !t && !hasProp(M, e) && r && !r.inited) {
- if (!(!C.enforceDefine || a && getGlobal(a))) return i(e) ? void 0 : c(makeError("nodefine", "No define call for " + e, null, [e]));
- h([e, o.deps || [], o.exportsFn])
- }
- f()
- },
- nameToUrl: function (e, t, n) {
- var r, i, o, a, s, u, c, l, p;
- if (req.jsExtRegExp.test(e)) l = e + (t || "");
- else {
- for (r = C.paths, i = C.pkgs, s = e.split("/"), u = s.length; u > 0; u -= 1) {
- if (c = s.slice(0, u).join("/"), o = getOwn(i, c), p = getOwn(r, c)) {
- isArray(p) && (p = p[0]), s.splice(0, u, p);
- break
- }
- if (o) {
- a = e === o.name ? o.location + "/" + o.main : o.location, s.splice(0, u, a);
- break
- }
- }
- l = s.join("/"), l += t || (/\?/.test(l) || n ? "" : ".js"), l = ("/" === l.charAt(0) || l.match(/^[\w\+\.\-]+:/) ? "" : C.baseUrl) + l
- }
- return C.urlArgs ? l + ((-1 === l.indexOf("?") ? "?" : "&") + C.urlArgs) : l
- },
- load: function (e, t) {
- req.load(x, e, t)
- },
- execCb: function (e, t, n, r) {
- return t.apply(r, n)
- },
- onScriptLoad: function (e) {
- if ("load" === e.type || readyRegExp.test((e.currentTarget || e.srcElement).readyState)) {
- interactiveScript = null;
- var t = g(e);
- x.completeLoad(t.id)
- }
- },
- onScriptError: function (e) {
- var t = g(e);
- return i(t.id) ? void 0 : c(makeError("scripterror", "Script error", e, [t.id]))
- }
- }, x.require = x.makeRequire(), x
- }
- function getInteractiveScript() {
- return interactiveScript && "interactive" === interactiveScript.readyState ? interactiveScript : (eachReverse(scripts(), function (e) {
- return "interactive" === e.readyState ? interactiveScript = e : void 0
- }), interactiveScript)
- }
- var req, s, head, baseElement, dataMain, src, interactiveScript, currentlyAddingScript, mainScript, subPath, version = "2.1.5",
- commentRegExp = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm,
- cjsRequireRegExp = /[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,
- jsSuffixRegExp = /\.js$/,
- currDirRegExp = /^\.\//,
- op = Object.prototype,
- ostring = op.toString,
- hasOwn = op.hasOwnProperty,
- ap = Array.prototype,
- apsp = ap.splice,
- isBrowser = !("undefined" == typeof window || !navigator || !document),
- isWebWorker = !isBrowser && "undefined" != typeof importScripts,
- readyRegExp = isBrowser && "PLAYSTATION 3" === navigator.platform ? /^complete$/ : /^(complete|loaded)$/,
- defContextName = "_",
- isOpera = "undefined" != typeof opera && "[object Opera]" === opera.toString(),
- contexts = {},
- cfg = {},
- globalDefQueue = [],
- useInteractive = !1;
- if ("undefined" == typeof define) {
- if ("undefined" != typeof requirejs) {
- if (isFunction(requirejs)) return;
- cfg = requirejs, requirejs = void 0
- }
- "undefined" == typeof require || isFunction(require) || (cfg = require, require = void 0), req = requirejs = function (e, t, n, r) {
- var i, o, a = defContextName;
- return isArray(e) || "string" == typeof e || (o = e, isArray(t) ? (e = t, t = n, n = r) : e = []), o && o.context && (a = o.context), i = getOwn(contexts, a), i || (i = contexts[a] = req.s.newContext(a)), o && i.configure(o), i.require(e, t, n)
- }, req.config = function (e) {
- return req(e)
- }, req.nextTick = "undefined" != typeof setTimeout ? function (e) {
- setTimeout(e, 4)
- } : function (e) {
- e()
- }, require || (require = req), req.version = version, req.jsExtRegExp = /^\/|:|\?|\.js$/, req.isBrowser = isBrowser, s = req.s = {
- contexts: contexts,
- newContext: newContext
- }, req({}), each(["toUrl", "undef", "defined", "specified"], function (e) {
- req[e] = function () {
- var t = contexts[defContextName];
- return t.require[e].apply(t, arguments)
- }
- }), isBrowser && (head = s.head = document.getElementsByTagName("head")[0], baseElement = document.getElementsByTagName("base")[0], baseElement && (head = s.head = baseElement.parentNode)), req.onError = function (e) {
- throw e
- }, req.load = function (e, t, n) {
- var r, i = e && e.config || {};
- if (isBrowser) return r = i.xhtml ? document.createElementNS("http://www.w3.org/1999/xhtml", "html:script") : document.createElement("script"), r.type = i.scriptType || "text/javascript", r.charset = "utf-8", r.async = !0, r.setAttribute("data-requirecontext", e.contextName), r.setAttribute("data-requiremodule", t), !r.attachEvent || r.attachEvent.toString && r.attachEvent.toString().indexOf("[native code") < 0 || isOpera ? (r.addEventListener("load", e.onScriptLoad, !1), r.addEventListener("error", e.onScriptError, !1)) : (useInteractive = !0, r.attachEvent("onreadystatechange", e.onScriptLoad)), r.src = n, currentlyAddingScript = r, baseElement ? head.insertBefore(r, baseElement) : head.appendChild(r), currentlyAddingScript = null, r;
- if (isWebWorker) try {
- importScripts(n), e.completeLoad(t)
- } catch (o) {
- e.onError(makeError("importscripts", "importScripts failed for " + t + " at " + n, o, [t]))
- }
- }, isBrowser && eachReverse(scripts(), function (e) {
- return head || (head = e.parentNode), dataMain = e.getAttribute("data-main"), dataMain ? (cfg.baseUrl || (src = dataMain.split("/"), mainScript = src.pop(), subPath = src.length ? src.join("/") + "/" : "./", cfg.baseUrl = subPath, dataMain = mainScript), dataMain = dataMain.replace(jsSuffixRegExp, ""), cfg.deps = cfg.deps ? cfg.deps.concat(dataMain) : [dataMain], !0) : void 0
- }), define = function (e, t, n) {
- var r, i;
- "string" != typeof e && (n = t, t = e, e = null), isArray(t) || (n = t, t = []), !t.length && isFunction(n) && n.length && (n.toString().replace(commentRegExp, "").replace(cjsRequireRegExp, function (e, n) {
- t.push(n)
- }), t = (1 === n.length ? ["require"] : ["require", "exports", "module"]).concat(t)), useInteractive && (r = currentlyAddingScript || getInteractiveScript(), r && (e || (e = r.getAttribute("data-requiremodule")), i = contexts[r.getAttribute("data-requirecontext")])), (i ? i.defQueue : globalDefQueue).push([e, t, n])
- }, define.amd = {
- jQuery: !0
- }, req.exec = function (text) {
- return eval(text)
- }, req(cfg)
- }
- }(this), ellipsis.requirejs = requirejs, ellipsis.require = require, ellipsis.define = define
- }
- }(), ellipsis.define("requireLib", function () {}),
- function (e, t) {
- function n(e) {
- var t = e.length,
- n = X.type(e);
- return X.isWindow(e) ? !1 : 1 === e.nodeType && t ? !0 : "array" === n || "function" !== n && (0 === t || "number" == typeof t && t > 0 && t - 1 in e)
- }
- function r(e) {
- var t = ie[e] = {};
- return X.each(e.match(K) || [], function (e, n) {
- t[n] = !0
- }), t
- }
- function i(e, n, r, i) {
- if (X.acceptData(e)) {
- var o, a, s = X.expando,
- u = "string" == typeof n,
- c = e.nodeType,
- l = c ? X.cache : e,
- p = c ? e[s] : e[s] && s;
- if (p && l[p] && (i || l[p].data) || !u || r !== t) return p || (c ? e[s] = p = O.pop() || X.guid++ : p = s), l[p] || (l[p] = {}, c || (l[p].toJSON = X.noop)), ("object" == typeof n || "function" == typeof n) && (i ? l[p] = X.extend(l[p], n) : l[p].data = X.extend(l[p].data, n)), o = l[p], i || (o.data || (o.data = {}), o = o.data), r !== t && (o[X.camelCase(n)] = r), u ? (a = o[n], null == a && (a = o[X.camelCase(n)])) : a = o, a
- }
- }
- function o(e, t, n) {
- if (X.acceptData(e)) {
- var r, i, o, a = e.nodeType,
- u = a ? X.cache : e,
- c = a ? e[X.expando] : X.expando;
- if (u[c]) {
- if (t && (o = n ? u[c] : u[c].data)) {
- X.isArray(t) ? t = t.concat(X.map(t, X.camelCase)) : t in o ? t = [t] : (t = X.camelCase(t), t = t in o ? [t] : t.split(" "));
- for (r = 0, i = t.length; i > r; r++) delete o[t[r]];
- if (!(n ? s : X.isEmptyObject)(o)) return
- }(n || (delete u[c].data, s(u[c]))) && (a ? X.cleanData([e], !0) : X.support.deleteExpando || u != u.window ? delete u[c] : u[c] = null)
- }
- }
- }
- function a(e, n, r) {
- if (r === t && 1 === e.nodeType) {
- var i = "data-" + n.replace(ae, "-$1").toLowerCase();
- if (r = e.getAttribute(i), "string" == typeof r) {
- try {
- r = "true" === r ? !0 : "false" === r ? !1 : "null" === r ? null : +r + "" === r ? +r : oe.test(r) ? X.parseJSON(r) : r
- } catch (o) {}
- X.data(e, n, r)
- } else r = t
- }
- return r
- }
- function s(e) {
- var t;
- for (t in e)
- if (("data" !== t || !X.isEmptyObject(e[t])) && "toJSON" !== t) return !1;
- return !0
- }
- function u() {
- return !0
- }
- function c() {
- return !1
- }
- function l(e, t) {
- do e = e[t]; while (e && 1 !== e.nodeType);
- return e
- }
- function p(e, t, n) {
- if (t = t || 0, X.isFunction(t)) return X.grep(e, function (e, r) {
- var i = !!t.call(e, r, e);
- return i === n
- });
- if (t.nodeType) return X.grep(e, function (e) {
- return e === t === n
- });
- if ("string" == typeof t) {
- var r = X.grep(e, function (e) {
- return 1 === e.nodeType
- });
- if (Te.test(t)) return X.filter(t, r, !n);
- t = X.filter(t, r)
- }
- return X.grep(e, function (e) {
- return X.inArray(e, t) >= 0 === n
- })
- }
- function d(e) {
- var t = Ne.split("|"),
- n = e.createDocumentFragment();
- if (n.createElement)
- for (; t.length;) n.createElement(t.pop());
- return n
- }
- function f(e, t) {
- return e.getElementsByTagName(t)[0] || e.appendChild(e.ownerDocument.createElement(t))
- }
- function h(e) {
- var t = e.getAttributeNode("type");
- return e.type = (t && t.specified) + "/" + e.type, e
- }
- function m(e) {
- var t = He.exec(e.type);
- return t ? e.type = t[1] : e.removeAttribute("type"), e
- }
- function g(e, t) {
- for (var n, r = 0; null != (n = e[r]); r++) X._data(n, "globalEval", !t || X._data(t[r], "globalEval"))
- }
- function v(e, t) {
- if (1 === t.nodeType && X.hasData(e)) {
- var n, r, i, o = X._data(e),
- a = X._data(t, o),
- s = o.events;
- if (s) {
- delete a.handle, a.events = {};
- for (n in s)
- for (r = 0, i = s[n].length; i > r; r++) X.event.add(t, n, s[n][r])
- }
- a.data && (a.data = X.extend({}, a.data))
- }
- }
- function y(e, t) {
- var n, r, i;
- if (1 === t.nodeType) {
- if (n = t.nodeName.toLowerCase(), !X.support.noCloneEvent && t[X.expando]) {
- i = X._data(t);
- for (r in i.events) X.removeEvent(t, r, i.handle);
- t.removeAttribute(X.expando)
- }
- "script" === n && t.text !== e.text ? (h(t).text = e.text, m(t)) : "object" === n ? (t.parentNode && (t.outerHTML = e.outerHTML), X.support.html5Clone && e.innerHTML && !X.trim(t.innerHTML) && (t.innerHTML = e.innerHTML)) : "input" === n && Pe.test(e.type) ? (t.defaultChecked = t.checked = e.checked, t.value !== e.value && (t.value = e.value)) : "option" === n ? t.defaultSelected = t.selected = e.defaultSelected : ("input" === n || "textarea" === n) && (t.defaultValue = e.defaultValue)
- }
- }
- function b(e, n) {
- var r, i, o = 0,
- a = typeof e.getElementsByTagName !== A ? e.getElementsByTagName(n || "*") : typeof e.querySelectorAll !== A ? e.querySelectorAll(n || "*") : t;
- if (!a)
- for (a = [], r = e.childNodes || e; null != (i = r[o]); o++) !n || X.nodeName(i, n) ? a.push(i) : X.merge(a, b(i, n));
- return n === t || n && X.nodeName(e, n) ? X.merge([e], a) : a
- }
- function x(e) {
- Pe.test(e.type) && (e.defaultChecked = e.checked)
- }
- function E(e, t, n, r) {
- var i;
- if (X.isArray(t)) X.each(t, function (t, i) {
- n || Ke.test(e) ? r(e, i) : E(e + "[" + ("object" == typeof i ? t : "") + "]", i, n, r)
- });
- else if (n || "object" !== X.type(t)) r(e, t);
- else
- for (i in t) E(e + "[" + i + "]", t[i], n, r)
- }
- function w(e) {
- return function (t, n) {
- "string" != typeof t && (n = t, t = "*");
- var r, i = 0,
- o = t.toLowerCase().match(K) || [];
- if (X.isFunction(n))
- for (; r = o[i++];) "+" === r[0] ? (r = r.slice(1) || "*", (e[r] = e[r] || []).unshift(n)) : (e[r] = e[r] || []).push(n)
- }
- }
- function C(e, t, n, r) {
- function i(s) {
- var u;
- return o[s] = !0, X.each(e[s] || [], function (e, s) {
- var c = s(t, n, r);
- return "string" != typeof c || a || o[c] ? a ? !(u = c) : void 0 : (t.dataTypes.unshift(c), i(c), !1)
- }), u
- }
- var o = {},
- a = e === ut;
- return i(t.dataTypes[0]) || !o["*"] && i("*")
- }
- function T(e, n) {
- var r, i, o = X.ajaxSettings.flatOptions || {};
- for (i in n) n[i] !== t && ((o[i] ? e : r || (r = {}))[i] = n[i]);
- return r && X.extend(!0, e, r), e
- }
- function k(e, n, r) {
- var i, o, a, s, u = e.contents,
- c = e.dataTypes,
- l = e.responseFields;
- for (s in l) s in r && (n[l[s]] = r[s]);
- for (;
- "*" === c[0];) c.shift(), o === t && (o = e.mimeType || n.getResponseHeader("Content-Type"));
- if (o)
- for (s in u)
- if (u[s] && u[s].test(o)) {
- c.unshift(s);
- break
- } if (c[0] in r) a = c[0];
- else {
- for (s in r) {
- if (!c[0] || e.converters[s + " " + c[0]]) {
- a = s;
- break
- }
- i || (i = s)
- }
- a = a || i
- }
- return a ? (a !== c[0] && c.unshift(a), r[a]) : void 0
- }
- function S(e, t) {
- var n, r, i, o, a = {},
- s = 0,
- u = e.dataTypes.slice(),
- c = u[0];
- if (e.dataFilter && (t = e.dataFilter(t, e.dataType)), u[1])
- for (i in e.converters) a[i.toLowerCase()] = e.converters[i];
- for (; r = u[++s];)
- if ("*" !== r) {
- if ("*" !== c && c !== r) {
- if (i = a[c + " " + r] || a["* " + r], !i)
- for (n in a)
- if (o = n.split(" "), o[1] === r && (i = a[c + " " + o[0]] || a["* " + o[0]])) {
- i === !0 ? i = a[n] : a[n] !== !0 && (r = o[0], u.splice(s--, 0, r));
- break
- } if (i !== !0)
- if (i && e["throws"]) t = i(t);
- else try {
- t = i(t)
- } catch (l) {
- return {
- state: "parsererror",
- error: i ? l : "No conversion from " + c + " to " + r
- }
- }
- }
- c = r
- } return {
- state: "success",
- data: t
- }
- }
- function N() {
- try {
- return new e.XMLHttpRequest
- } catch (t) {}
- }
- function M() {
- try {
- return new e.ActiveXObject("Microsoft.XMLHTTP")
- } catch (t) {}
- }
- var L, D, A = typeof t,
- j = e.document,
- q = e.location,
- _ = {},
- O = [],
- P = "1.9.1 -css,-effects,-offset,-dimensions,-deprecated",
- R = O.concat,
- B = O.push,
- H = O.slice,
- F = O.indexOf,
- I = _.toString,
- $ = _.hasOwnProperty,
- W = P.trim,
- X = function (e, t) {
- return new X.fn.init(e, t, D)
- },
- K = (/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, /\S+/g),
- z = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
- U = /^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/,
- Y = /^<(\w+)\s*\/?>(?:<\/\1>|)$/,
- J = /^[\],:{}\s]*$/,
- V = /(?:^|:|,)(?:\s*\[)+/g,
- G = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,
- Q = /"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,
- Z = /^-ms-/,
- ee = /-([\da-z])/gi,
- te = function (e, t) {
- return t.toUpperCase()
- },
- ne = function (e) {
- (j.addEventListener || "load" === e.type || "complete" === j.readyState) && (re(), X.ready())
- },
- re = function () {
- j.addEventListener ? (j.removeEventListener("DOMContentLoaded", ne, !1), e.removeEventListener("load", ne, !1)) : (j.detachEvent("onreadystatechange", ne), e.detachEvent("onload", ne))
- };
- X.fn = X.prototype = {
- jquery: P,
- constructor: X,
- init: function (e, n, r) {
- var i, o;
- if (!e) return this;
- if ("string" == typeof e) {
- if (i = "<" === e.charAt(0) && ">" === e.charAt(e.length - 1) && e.length >= 3 ? [null, e, null] : U.exec(e), !i || !i[1] && n) return !n || n.jquery ? (n || r).find(e) : this.constructor(n).find(e);
- if (i[1]) {
- if (n = n instanceof X ? n[0] : n, X.merge(this, X.parseHTML(i[1], n && n.nodeType ? n.ownerDocument || n : j, !0)), Y.test(i[1]) && X.isPlainObject(n))
- for (i in n) X.isFunction(this[i]) ? this[i](n[i]) : this.attr(i, n[i]);
- return this
- }
- if (o = j.getElementById(i[2]), o && o.parentNode) {
- if (o.id !== i[2]) return r.find(e);
- this.length = 1, this[0] = o
- }
- return this.context = j, this.selector = e, this
- }
- return e.nodeType ? (this.context = this[0] = e, this.length = 1, this) : X.isFunction(e) ? r.ready(e) : (e.selector !== t && (this.selector = e.selector, this.context = e.context), X.makeArray(e, this))
- },
- selector: "",
- length: 0,
- size: function () {
- return this.length
- },
- toArray: function () {
- return H.call(this)
- },
- get: function (e) {
- return null == e ? this.toArray() : 0 > e ? this[this.length + e] : this[e]
- },
- pushStack: function (e) {
- var t = X.merge(this.constructor(), e);
- return t.prevObject = this, t.context = this.context, t
- },
- each: function (e, t) {
- return X.each(this, e, t)
- },
- ready: function (e) {
- return X.ready.promise().done(e), this
- },
- slice: function () {
- return this.pushStack(H.apply(this, arguments))
- },
- first: function () {
- return this.eq(0)
- },
- last: function () {
- return this.eq(-1)
- },
- eq: function (e) {
- var t = this.length,
- n = +e + (0 > e ? t : 0);
- return this.pushStack(n >= 0 && t > n ? [this[n]] : [])
- },
- map: function (e) {
- return this.pushStack(X.map(this, function (t, n) {
- return e.call(t, n, t)
- }))
- },
- end: function () {
- return this.prevObject || this.constructor(null)
- },
- push: B,
- sort: [].sort,
- splice: [].splice
- }, X.fn.init.prototype = X.fn, X.extend = X.fn.extend = function () {
- var e, n, r, i, o, a, s = arguments[0] || {},
- u = 1,
- c = arguments.length,
- l = !1;
- for ("boolean" == typeof s && (l = s, s = arguments[1] || {}, u = 2), "object" == typeof s || X.isFunction(s) || (s = {}), c === u && (s = this, --u); c > u; u++)
- if (null != (o = arguments[u]))
- for (i in o) e = s[i], r = o[i], s !== r && (l && r && (X.isPlainObject(r) || (n = X.isArray(r))) ? (n ? (n = !1, a = e && X.isArray(e) ? e : []) : a = e && X.isPlainObject(e) ? e : {}, s[i] = X.extend(l, a, r)) : r !== t && (s[i] = r));
- return s
- }, X.extend({
- isReady: !1,
- readyWait: 1,
- holdReady: function (e) {
- e ? X.readyWait++ : X.ready(!0)
- },
- ready: function (e) {
- if (e === !0 ? !--X.readyWait : !X.isReady) {
- if (!j.body) return setTimeout(X.ready);
- X.isReady = !0, e !== !0 && --X.readyWait > 0 || (L.resolveWith(j, [X]), X.fn.trigger && X(j).trigger("ready").off("ready"))
- }
- },
- isFunction: function (e) {
- return "function" === X.type(e)
- },
- isArray: Array.isArray || function (e) {
- return "array" === X.type(e)
- },
- isWindow: function (e) {
- return null != e && e == e.window
- },
- isNumeric: function (e) {
- return !isNaN(parseFloat(e)) && isFinite(e)
- },
- type: function (e) {
- return null == e ? String(e) : "object" == typeof e || "function" == typeof e ? _[I.call(e)] || "object" : typeof e
- },
- isPlainObject: function (e) {
- if (!e || "object" !== X.type(e) || e.nodeType || X.isWindow(e)) return !1;
- try {
- if (e.constructor && !$.call(e, "constructor") && !$.call(e.constructor.prototype, "isPrototypeOf")) return !1
- } catch (n) {
- return !1
- }
- var r;
- for (r in e);
- return r === t || $.call(e, r)
- },
- isEmptyObject: function (e) {
- var t;
- for (t in e) return !1;
- return !0
- },
- error: function (e) {
- throw new Error(e)
- },
- parseHTML: function (e, t, n) {
- if (!e || "string" != typeof e) return null;
- "boolean" == typeof t && (n = t, t = !1), t = t || j;
- var r = Y.exec(e),
- i = !n && [];
- return r ? [t.createElement(r[1])] : (r = X.buildFragment([e], t, i), i && X(i).remove(), X.merge([], r.childNodes))
- },
- parseJSON: function (t) {
- return e.JSON && e.JSON.parse ? e.JSON.parse(t) : null === t ? t : "string" == typeof t && (t = X.trim(t), t && J.test(t.replace(G, "@").replace(Q, "]").replace(V, ""))) ? new Function("return " + t)() : void X.error("Invalid JSON: " + t)
- },
- parseXML: function (n) {
- var r, i;
- if (!n || "string" != typeof n) return null;
- try {
- e.DOMParser ? (i = new DOMParser, r = i.parseFromString(n, "text/xml")) : (r = new ActiveXObject("Microsoft.XMLDOM"), r.async = "false", r.loadXML(n))
- } catch (o) {
- r = t
- }
- return r && r.documentElement && !r.getElementsByTagName("parsererror").length || X.error("Invalid XML: " + n), r
- },
- noop: function () {},
- globalEval: function (t) {
- t && X.trim(t) && (e.execScript || function (t) {
- e.eval.call(e, t)
- })(t)
- },
- camelCase: function (e) {
- return e.replace(Z, "ms-").replace(ee, te)
- },
- nodeName: function (e, t) {
- return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase()
- },
- each: function (e, t, r) {
- var i, o = 0,
- a = e.length,
- s = n(e);
- if (r) {
- if (s)
- for (; a > o && (i = t.apply(e[o], r), i !== !1); o++);
- else
- for (o in e)
- if (i = t.apply(e[o], r), i === !1) break
- } else if (s)
- for (; a > o && (i = t.call(e[o], o, e[o]), i !== !1); o++);
- else
- for (o in e)
- if (i = t.call(e[o], o, e[o]), i === !1) break;
- return e
- },
- trim: W && !W.call("\ufeff ") ? function (e) {
- return null == e ? "" : W.call(e)
- } : function (e) {
- return null == e ? "" : (e + "").replace(z, "")
- },
- makeArray: function (e, t) {
- var r = t || [];
- return null != e && (n(Object(e)) ? X.merge(r, "string" == typeof e ? [e] : e) : B.call(r, e)), r
- },
- inArray: function (e, t, n) {
- var r;
- if (t) {
- if (F) return F.call(t, e, n);
- for (r = t.length, n = n ? 0 > n ? Math.max(0, r + n) : n : 0; r > n; n++)
- if (n in t && t[n] === e) return n
- }
- return -1
- },
- merge: function (e, n) {
- var r = n.length,
- i = e.length,
- o = 0;
- if ("number" == typeof r)
- for (; r > o; o++) e[i++] = n[o];
- else
- for (; n[o] !== t;) e[i++] = n[o++];
- return e.length = i, e
- },
- grep: function (e, t, n) {
- var r, i = [],
- o = 0,
- a = e.length;
- for (n = !!n; a > o; o++) r = !!t(e[o], o), n !== r && i.push(e[o]);
- return i
- },
- map: function (e, t, r) {
- var i, o = 0,
- a = e.length,
- s = n(e),
- u = [];
- if (s)
- for (; a > o; o++) i = t(e[o], o, r), null != i && (u[u.length] = i);
- else
- for (o in e) i = t(e[o], o, r), null != i && (u[u.length] = i);
- return R.apply([], u)
- },
- guid: 1,
- proxy: function (e, n) {
- var r, i, o;
- return "string" == typeof n && (o = e[n], n = e, e = o), X.isFunction(e) ? (r = H.call(arguments, 2), i = function () {
- return e.apply(n || this, r.concat(H.call(arguments)))
- }, i.guid = e.guid = e.guid || X.guid++, i) : t
- },
- access: function (e, n, r, i, o, a, s) {
- var u = 0,
- c = e.length,
- l = null == r;
- if ("object" === X.type(r)) {
- o = !0;
- for (u in r) X.access(e, n, u, r[u], !0, a, s)
- } else if (i !== t && (o = !0, X.isFunction(i) || (s = !0), l && (s ? (n.call(e, i), n = null) : (l = n, n = function (e, t, n) {
- return l.call(X(e), n)
- })), n))
- for (; c > u; u++) n(e[u], r, s ? i : i.call(e[u], u, n(e[u], r)));
- return o ? e : l ? n.call(e) : c ? n(e[0], r) : a
- },
- now: function () {
- return (new Date).getTime()
- }
- }), X.ready.promise = function (t) {
- if (!L)
- if (L = X.Deferred(), "complete" === j.readyState) setTimeout(X.ready);
- else if (j.addEventListener) j.addEventListener("DOMContentLoaded", ne, !1), e.addEventListener("load", ne, !1);
- else {
- j.attachEvent("onreadystatechange", ne), e.attachEvent("onload", ne);
- var n = !1;
- try {
- n = null == e.frameElement && j.documentElement
- } catch (r) {}
- n && n.doScroll && ! function i() {
- if (!X.isReady) {
- try {
- n.doScroll("left")
- } catch (e) {
- return setTimeout(i, 50)
- }
- re(), X.ready()
- }
- }()
- }
- return L.promise(t)
- }, X.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function (e, t) {
- _["[object " + t + "]"] = t.toLowerCase()
- }), D = X(j);
- var ie = {};
- X.Callbacks = function (e) {
- e = "string" == typeof e ? ie[e] || r(e) : X.extend({}, e);
- var n, i, o, a, s, u, c = [],
- l = !e.once && [],
- p = function (t) {
- for (i = e.memory && t, o = !0, s = u || 0, u = 0, a = c.length, n = !0; c && a > s; s++)
- if (c[s].apply(t[0], t[1]) === !1 && e.stopOnFalse) {
- i = !1;
- break
- } n = !1, c && (l ? l.length && p(l.shift()) : i ? c = [] : d.disable())
- },
- d = {
- add: function () {
- if (c) {
- var t = c.length;
- ! function r(t) {
- X.each(t, function (t, n) {
- var i = X.type(n);
- "function" === i ? e.unique && d.has(n) || c.push(n) : n && n.length && "string" !== i && r(n)
- })
- }(arguments), n ? a = c.length : i && (u = t, p(i))
- }
- return this
- },
- remove: function () {
- return c && X.each(arguments, function (e, t) {
- for (var r;
- (r = X.inArray(t, c, r)) > -1;) c.splice(r, 1), n && (a >= r && a--, s >= r && s--)
- }), this
- },
- has: function (e) {
- return e ? X.inArray(e, c) > -1 : !(!c || !c.length)
- },
- empty: function () {
- return c = [], this
- },
- disable: function () {
- return c = l = i = t, this
- },
- disabled: function () {
- return !c
- },
- lock: function () {
- return l = t, i || d.disable(), this
- },
- locked: function () {
- return !l
- },
- fireWith: function (e, t) {
- return t = t || [], t = [e, t.slice ? t.slice() : t], !c || o && !l || (n ? l.push(t) : p(t)), this
- },
- fire: function () {
- return d.fireWith(this, arguments), this
- },
- fired: function () {
- return !!o
- }
- };
- return d
- }, X.extend({
- Deferred: function (e) {
- var t = [
- ["resolve", "done", X.Callbacks("once memory"), "resolved"],
- ["reject", "fail", X.Callbacks("once memory"), "rejected"],
- ["notify", "progress", X.Callbacks("memory")]
- ],
- n = "pending",
- r = {
- state: function () {
- return n
- },
- always: function () {
- return i.done(arguments).fail(arguments), this
- },
- then: function () {
- var e = arguments;
- return X.Deferred(function (n) {
- X.each(t, function (t, o) {
- var a = o[0],
- s = X.isFunction(e[t]) && e[t];
- i[o[1]](function () {
- var e = s && s.apply(this, arguments);
- e && X.isFunction(e.promise) ? e.promise().done(n.resolve).fail(n.reject).progress(n.notify) : n[a + "With"](this === r ? n.promise() : this, s ? [e] : arguments)
- })
- }), e = null
- }).promise()
- },
- promise: function (e) {
- return null != e ? X.extend(e, r) : r
- }
- },
- i = {};
- return r.pipe = r.then, X.each(t, function (e, o) {
- var a = o[2],
- s = o[3];
- r[o[1]] = a.add, s && a.add(function () {
- n = s
- }, t[1 ^ e][2].disable, t[2][2].lock), i[o[0]] = function () {
- return i[o[0] + "With"](this === i ? r : this, arguments), this
- }, i[o[0] + "With"] = a.fireWith
- }), r.promise(i), e && e.call(i, i), i
- },
- when: function (e) {
- var t, n, r, i = 0,
- o = H.call(arguments),
- a = o.length,
- s = 1 !== a || e && X.isFunction(e.promise) ? a : 0,
- u = 1 === s ? e : X.Deferred(),
- c = function (e, n, r) {
- return function (i) {
- n[e] = this, r[e] = arguments.length > 1 ? H.call(arguments) : i, r === t ? u.notifyWith(n, r) : --s || u.resolveWith(n, r)
- }
- };
- if (a > 1)
- for (t = new Array(a), n = new Array(a), r = new Array(a); a > i; i++) o[i] && X.isFunction(o[i].promise) ? o[i].promise().done(c(i, r, o)).fail(u.reject).progress(c(i, n, t)) : --s;
- return s || u.resolveWith(r, o), u.promise()
- }
- }), X.support = function () {
- var t, n, r, i, o, a, s, u, c, l, p = j.createElement("div");
- if (p.setAttribute("className", "t"), p.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", n = p.getElementsByTagName("*"), r = p.getElementsByTagName("a")[0], !n || !r || !n.length) return {};
- o = j.createElement("select"), s = o.appendChild(j.createElement("option")), i = p.getElementsByTagName("input")[0], r.style.cssText = "top:1px;float:left;opacity:.5", t = {
- getSetAttribute: "t" !== p.className,
- leadingWhitespace: 3 === p.firstChild.nodeType,
- tbody: !p.getElementsByTagName("tbody").length,
- htmlSerialize: !!p.getElementsByTagName("link").length,
- style: /top/.test(r.getAttribute("style")),
- hrefNormalized: "/a" === r.getAttribute("href"),
- opacity: /^0.5/.test(r.style.opacity),
- cssFloat: !!r.style.cssFloat,
- checkOn: !!i.value,
- optSelected: s.selected,
- enctype: !!j.createElement("form").enctype,
- html5Clone: "<:nav></:nav>" !== j.createElement("nav").cloneNode(!0).outerHTML,
- boxModel: "CSS1Compat" === j.compatMode,
- deleteExpando: !0,
- noCloneEvent: !0,
- inlineBlockNeedsLayout: !1,
- shrinkWrapBlocks: !1,
- reliableMarginRight: !0,
- boxSizingReliable: !0,
- pixelPosition: !1
- }, i.checked = !0, t.noCloneChecked = i.cloneNode(!0).checked, o.disabled = !0, t.optDisabled = !s.disabled;
- try {
- delete p.test
- } catch (d) {
- t.deleteExpando = !1
- }
- i = j.createElement("input"), i.setAttribute("value", ""), t.input = "" === i.getAttribute("value"), i.value = "t", i.setAttribute("type", "radio"), t.radioValue = "t" === i.value, i.setAttribute("checked", "t"), i.setAttribute("name", "t"), a = j.createDocumentFragment(), a.appendChild(i), t.appendChecked = i.checked, t.checkClone = a.cloneNode(!0).cloneNode(!0).lastChild.checked, p.attachEvent && (p.attachEvent("onclick", function () {
- t.noCloneEvent = !1
- }), p.cloneNode(!0).click());
- for (l in {
- submit: !0,
- change: !0,
- focusin: !0
- }) p.setAttribute(u = "on" + l, "t"), t[l + "Bubbles"] = u in e || p.attributes[u].expando === !1;
- return p.style.backgroundClip = "content-box", p.cloneNode(!0).style.backgroundClip = "", t.clearCloneStyle = "content-box" === p.style.backgroundClip, X(function () {
- var n, r, i, o = "padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",
- a = j.getElementsByTagName("body")[0];
- a && (n = j.createElement("div"), n.style.cssText = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px", a.appendChild(n).appendChild(p), p.innerHTML = "<table><tr><td></td><td>t</td></tr></table>", i = p.getElementsByTagName("td"), i[0].style.cssText = "padding:0;margin:0;border:0;display:none", c = 0 === i[0].offsetHeight, i[0].style.display = "", i[1].style.display = "none", t.reliableHiddenOffsets = c && 0 === i[0].offsetHeight, p.innerHTML = "", p.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%;", t.boxSizing = 4 === p.offsetWidth, t.doesNotIncludeMarginInBodyOffset = 1 !== a.offsetTop, e.getComputedStyle && (t.pixelPosition = "1%" !== (e.getComputedStyle(p, null) || {}).top, t.boxSizingReliable = "4px" === (e.getComputedStyle(p, null) || {
- width: "4px"
- }).width, r = p.appendChild(j.createElement("div")), r.style.cssText = p.style.cssText = o, r.style.marginRight = r.style.width = "0", p.style.width = "1px", t.reliableMarginRight = !parseFloat((e.getComputedStyle(r, null) || {}).marginRight)), typeof p.style.zoom !== A && (p.innerHTML = "", p.style.cssText = o + "width:1px;padding:1px;display:inline;zoom:1", t.inlineBlockNeedsLayout = 3 === p.offsetWidth, p.style.display = "block", p.innerHTML = "<div></div>", p.firstChild.style.width = "5px", t.shrinkWrapBlocks = 3 !== p.offsetWidth, t.inlineBlockNeedsLayout && (a.style.zoom = 1)), a.removeChild(n), n = p = i = r = null)
- }), n = o = a = s = r = i = null, t
- }();
- var oe = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/,
- ae = /([A-Z])/g;
- X.extend({
- cache: {},
- expando: "jQuery" + (P + Math.random()).replace(/\D/g, ""),
- noData: {
- embed: !0,
- object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
- applet: !0
- },
- hasData: function (e) {
- return e = e.nodeType ? X.cache[e[X.expando]] : e[X.expando], !!e && !s(e)
- },
- data: function (e, t, n) {
- return i(e, t, n)
- },
- removeData: function (e, t) {
- return o(e, t)
- },
- _data: function (e, t, n) {
- return i(e, t, n, !0)
- },
- _removeData: function (e, t) {
- return o(e, t, !0)
- },
- acceptData: function (e) {
- if (e.nodeType && 1 !== e.nodeType && 9 !== e.nodeType) return !1;
- var t = e.nodeName && X.noData[e.nodeName.toLowerCase()];
- return !t || t !== !0 && e.getAttribute("classid") === t
- }
- }), X.fn.extend({
- data: function (e, n) {
- var r, i, o = this[0],
- s = 0,
- u = null;
- if (e === t) {
- if (this.length && (u = X.data(o), 1 === o.nodeType && !X._data(o, "parsedAttrs"))) {
- for (r = o.attributes; s < r.length; s++) i = r[s].name, i.indexOf("data-") || (i = X.camelCase(i.slice(5)), a(o, i, u[i]));
- X._data(o, "parsedAttrs", !0)
- }
- return u
- }
- return "object" == typeof e ? this.each(function () {
- X.data(this, e)
- }) : X.access(this, function (n) {
- return n === t ? o ? a(o, e, X.data(o, e)) : null : void this.each(function () {
- X.data(this, e, n)
- })
- }, null, n, arguments.length > 1, null, !0)
- },
- removeData: function (e) {
- return this.each(function () {
- X.removeData(this, e)
- })
- }
- }), X.extend({
- queue: function (e, t, n) {
- var r;
- return e ? (t = (t || "fx") + "queue", r = X._data(e, t), n && (!r || X.isArray(n) ? r = X._data(e, t, X.makeArray(n)) : r.push(n)), r || []) : void 0
- },
- dequeue: function (e, t) {
- t = t || "fx";
- var n = X.queue(e, t),
- r = n.length,
- i = n.shift(),
- o = X._queueHooks(e, t),
- a = function () {
- X.dequeue(e, t)
- };
- "inprogress" === i && (i = n.shift(), r--), o.cur = i, i && ("fx" === t && n.unshift("inprogress"), delete o.stop, i.call(e, a, o)), !r && o && o.empty.fire()
- },
- _queueHooks: function (e, t) {
- var n = t + "queueHooks";
- return X._data(e, n) || X._data(e, n, {
- empty: X.Callbacks("once memory").add(function () {
- X._removeData(e, t + "queue"), X._removeData(e, n)
- })
- })
- }
- }), X.fn.extend({
- queue: function (e, n) {
- var r = 2;
- return "string" != typeof e && (n = e, e = "fx", r--), arguments.length < r ? X.queue(this[0], e) : n === t ? this : this.each(function () {
- var t = X.queue(this, e, n);
- X._queueHooks(this, e), "fx" === e && "inprogress" !== t[0] && X.dequeue(this, e)
- })
- },
- dequeue: function (e) {
- return this.each(function () {
- X.dequeue(this, e)
- })
- },
- delay: function (e, t) {
- return e = X.fx ? X.fx.speeds[e] || e : e, t = t || "fx", this.queue(t, function (t, n) {
- var r = setTimeout(t, e);
- n.stop = function () {
- clearTimeout(r)
- }
- })
- },
- clearQueue: function (e) {
- return this.queue(e || "fx", [])
- },
- promise: function (e, n) {
- var r, i = 1,
- o = X.Deferred(),
- a = this,
- s = this.length,
- u = function () {
- --i || o.resolveWith(a, [a])
- };
- for ("string" != typeof e && (n = e, e = t), e = e || "fx"; s--;) r = X._data(a[s], e + "queueHooks"), r && r.empty && (i++, r.empty.add(u));
- return u(), o.promise(n)
- }
- });
- var se, ue, ce = /[\t\r\n]/g,
- le = /\r/g,
- pe = /^(?:input|select|textarea|button|object)$/i,
- de = /^(?:a|area)$/i,
- fe = /^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped)$/i,
- he = /^(?:checked|selected)$/i,
- me = X.support.getSetAttribute,
- ge = X.support.input;
- X.fn.extend({
- attr: function (e, t) {
- return X.access(this, X.attr, e, t, arguments.length > 1)
- },
- removeAttr: function (e) {
- return this.each(function () {
- X.removeAttr(this, e)
- })
- },
- prop: function (e, t) {
- return X.access(this, X.prop, e, t, arguments.length > 1)
- },
- removeProp: function (e) {
- return e = X.propFix[e] || e, this.each(function () {
- try {
- this[e] = t, delete this[e]
- } catch (n) {}
- })
- },
- addClass: function (e) {
- var t, n, r, i, o, a = 0,
- s = this.length,
- u = "string" == typeof e && e;
- if (X.isFunction(e)) return this.each(function (t) {
- X(this).addClass(e.call(this, t, this.className))
- });
- if (u)
- for (t = (e || "").match(K) || []; s > a; a++)
- if (n = this[a], r = 1 === n.nodeType && (n.className ? (" " + n.className + " ").replace(ce, " ") : " ")) {
- for (o = 0; i = t[o++];) r.indexOf(" " + i + " ") < 0 && (r += i + " ");
- n.className = X.trim(r)
- } return this
- },
- removeClass: function (e) {
- var t, n, r, i, o, a = 0,
- s = this.length,
- u = 0 === arguments.length || "string" == typeof e && e;
- if (X.isFunction(e)) return this.each(function (t) {
- X(this).removeClass(e.call(this, t, this.className))
- });
- if (u)
- for (t = (e || "").match(K) || []; s > a; a++)
- if (n = this[a], r = 1 === n.nodeType && (n.className ? (" " + n.className + " ").replace(ce, " ") : "")) {
- for (o = 0; i = t[o++];)
- for (; r.indexOf(" " + i + " ") >= 0;) r = r.replace(" " + i + " ", " ");
- n.className = e ? X.trim(r) : ""
- } return this
- },
- toggleClass: function (e, t) {
- var n = typeof e,
- r = "boolean" == typeof t;
- return X.isFunction(e) ? this.each(function (n) {
- X(this).toggleClass(e.call(this, n, this.className, t), t)
- }) : this.each(function () {
- if ("string" === n)
- for (var i, o = 0, a = X(this), s = t, u = e.match(K) || []; i = u[o++];) s = r ? s : !a.hasClass(i), a[s ? "addClass" : "removeClass"](i);
- else(n === A || "boolean" === n) && (this.className && X._data(this, "__className__", this.className), this.className = this.className || e === !1 ? "" : X._data(this, "__className__") || "")
- })
- },
- hasClass: function (e) {
- for (var t = " " + e + " ", n = 0, r = this.length; r > n; n++)
- if (1 === this[n].nodeType && (" " + this[n].className + " ").replace(ce, " ").indexOf(t) >= 0) return !0;
- return !1
- },
- val: function (e) {
- var n, r, i, o = this[0]; {
- if (arguments.length) return i = X.isFunction(e), this.each(function (n) {
- var o, a = X(this);
- 1 === this.nodeType && (o = i ? e.call(this, n, a.val()) : e, null == o ? o = "" : "number" == typeof o ? o += "" : X.isArray(o) && (o = X.map(o, function (e) {
- return null == e ? "" : e + ""
- })), r = X.valHooks[this.type] || X.valHooks[this.nodeName.toLowerCase()], r && "set" in r && r.set(this, o, "value") !== t || (this.value = o))
- });
- if (o) return r = X.valHooks[o.type] || X.valHooks[o.nodeName.toLowerCase()], r && "get" in r && (n = r.get(o, "value")) !== t ? n : (n = o.value, "string" == typeof n ? n.replace(le, "") : null == n ? "" : n)
- }
- }
- }), X.extend({
- valHooks: {
- option: {
- get: function (e) {
- var t = e.attributes.value;
- return !t || t.specified ? e.value : e.text
- }
- },
- select: {
- get: function (e) {
- for (var t, n, r = e.options, i = e.selectedIndex, o = "select-one" === e.type || 0 > i, a = o ? null : [], s = o ? i + 1 : r.length, u = 0 > i ? s : o ? i : 0; s > u; u++)
- if (n = r[u], (n.selected || u === i) && (X.support.optDisabled ? !n.disabled : null === n.getAttribute("disabled")) && (!n.parentNode.disabled || !X.nodeName(n.parentNode, "optgroup"))) {
- if (t = X(n).val(), o) return t;
- a.push(t)
- } return a
- },
- set: function (e, t) {
- var n = X.makeArray(t);
- return X(e).find("option").each(function () {
- this.selected = X.inArray(X(this).val(), n) >= 0
- }), n.length || (e.selectedIndex = -1), n
- }
- }
- },
- attr: function (e, n, r) {
- var i, o, a, s = e.nodeType;
- if (e && 3 !== s && 8 !== s && 2 !== s) return typeof e.getAttribute === A ? X.prop(e, n, r) : (o = 1 !== s || !X.isXMLDoc(e), o && (n = n.toLowerCase(), i = X.attrHooks[n] || (fe.test(n) ? ue : se)), r === t ? i && o && "get" in i && null !== (a = i.get(e, n)) ? a : (typeof e.getAttribute !== A && (a = e.getAttribute(n)), null == a ? t : a) : null !== r ? i && o && "set" in i && (a = i.set(e, r, n)) !== t ? a : (e.setAttribute(n, r + ""), r) : void X.removeAttr(e, n))
- },
- removeAttr: function (e, t) {
- var n, r, i = 0,
- o = t && t.match(K);
- if (o && 1 === e.nodeType)
- for (; n = o[i++];) r = X.propFix[n] || n, fe.test(n) ? !me && he.test(n) ? e[X.camelCase("default-" + n)] = e[r] = !1 : e[r] = !1 : X.attr(e, n, ""), e.removeAttribute(me ? n : r)
- },
- attrHooks: {
- type: {
- set: function (e, t) {
- if (!X.support.radioValue && "radio" === t && X.nodeName(e, "input")) {
- var n = e.value;
- return e.setAttribute("type", t), n && (e.value = n), t
- }
- }
- }
- },
- propFix: {
- tabindex: "tabIndex",
- readonly: "readOnly",
- "for": "htmlFor",
- "class": "className",
- maxlength: "maxLength",
- cellspacing: "cellSpacing",
- cellpadding: "cellPadding",
- rowspan: "rowSpan",
- colspan: "colSpan",
- usemap: "useMap",
- frameborder: "frameBorder",
- contenteditable: "contentEditable"
- },
- prop: function (e, n, r) {
- var i, o, a, s = e.nodeType;
- if (e && 3 !== s && 8 !== s && 2 !== s) return a = 1 !== s || !X.isXMLDoc(e), a && (n = X.propFix[n] || n, o = X.propHooks[n]), r !== t ? o && "set" in o && (i = o.set(e, r, n)) !== t ? i : e[n] = r : o && "get" in o && null !== (i = o.get(e, n)) ? i : e[n]
- },
- propHooks: {
- tabIndex: {
- get: function (e) {
- var n = e.getAttributeNode("tabindex");
- return n && n.specified ? parseInt(n.value, 10) : pe.test(e.nodeName) || de.test(e.nodeName) && e.href ? 0 : t
- }
- }
- }
- }), ue = {
- get: function (e, n) {
- var r = X.prop(e, n),
- i = "boolean" == typeof r && e.getAttribute(n),
- o = "boolean" == typeof r ? ge && me ? null != i : he.test(n) ? e[X.camelCase("default-" + n)] : !!i : e.getAttributeNode(n);
- return o && o.value !== !1 ? n.toLowerCase() : t
- },
- set: function (e, t, n) {
- return t === !1 ? X.removeAttr(e, n) : ge && me || !he.test(n) ? e.setAttribute(!me && X.propFix[n] || n, n) : e[X.camelCase("default-" + n)] = e[n] = !0, n
- }
- }, ge && me || (X.attrHooks.value = {
- get: function (e, n) {
- var r = e.getAttributeNode(n);
- return X.nodeName(e, "input") ? e.defaultValue : r && r.specified ? r.value : t
- },
- set: function (e, t, n) {
- return X.nodeName(e, "input") ? void(e.defaultValue = t) : se && se.set(e, t, n)
- }
- }), me || (se = X.valHooks.button = {
- get: function (e, n) {
- var r = e.getAttributeNode(n);
- return r && ("id" === n || "name" === n || "coords" === n ? "" !== r.value : r.specified) ? r.value : t
- },
- set: function (e, n, r) {
- var i = e.getAttributeNode(r);
- return i || e.setAttributeNode(i = e.ownerDocument.createAttribute(r)), i.value = n += "", "value" === r || n === e.getAttribute(r) ? n : t
- }
- }, X.attrHooks.contenteditable = {
- get: se.get,
- set: function (e, t, n) {
- se.set(e, "" === t ? !1 : t, n)
- }
- }, X.each(["width", "height"], function (e, t) {
- X.attrHooks[t] = X.extend(X.attrHooks[t], {
- set: function (e, n) {
- return "" === n ? (e.setAttribute(t, "auto"), n) : void 0
- }
- })
- })), X.support.hrefNormalized || (X.each(["href", "src", "width", "height"], function (e, n) {
- X.attrHooks[n] = X.extend(X.attrHooks[n], {
- get: function (e) {
- var r = e.getAttribute(n, 2);
- return null == r ? t : r
- }
- })
- }), X.each(["href", "src"], function (e, t) {
- X.propHooks[t] = {
- get: function (e) {
- return e.getAttribute(t, 4)
- }
- }
- })), X.support.style || (X.attrHooks.style = {
- get: function (e) {
- return e.style.cssText || t
- },
- set: function (e, t) {
- return e.style.cssText = t + ""
- }
- }), X.support.optSelected || (X.propHooks.selected = X.extend(X.propHooks.selected, {
- get: function (e) {
- var t = e.parentNode;
- return t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex), null
- }
- })), X.support.enctype || (X.propFix.enctype = "encoding"), X.support.checkOn || X.each(["radio", "checkbox"], function () {
- X.valHooks[this] = {
- get: function (e) {
- return null === e.getAttribute("value") ? "on" : e.value
- }
- }
- }), X.each(["radio", "checkbox"], function () {
- X.valHooks[this] = X.extend(X.valHooks[this], {
- set: function (e, t) {
- return X.isArray(t) ? e.checked = X.inArray(X(e).val(), t) >= 0 : void 0
- }
- })
- });
- var ve = /^(?:input|select|textarea)$/i,
- ye = /^key/,
- be = /^(?:mouse|contextmenu)|click/,
- xe = /^(?:focusinfocus|focusoutblur)$/,
- Ee = /^([^.]*)(?:\.(.+)|)$/;
- X.event = {
- global: {},
- add: function (e, n, r, i, o) {
- var a, s, u, c, l, p, d, f, h, m, g, v = X._data(e);
- if (v) {
- for (r.handler && (c = r, r = c.handler, o = c.selector), r.guid || (r.guid = X.guid++), (s = v.events) || (s = v.events = {}), (p = v.handle) || (p = v.handle = function (e) {
- return typeof X === A || e && X.event.triggered === e.type ? t : X.event.dispatch.apply(p.elem, arguments)
- }, p.elem = e), n = (n || "").match(K) || [""], u = n.length; u--;) a = Ee.exec(n[u]) || [], h = g = a[1], m = (a[2] || "").split(".").sort(), l = X.event.special[h] || {}, h = (o ? l.delegateType : l.bindType) || h, l = X.event.special[h] || {}, d = X.extend({
- type: h,
- origType: g,
- data: i,
- handler: r,
- guid: r.guid,
- selector: o,
- needsContext: o && X.expr.match.needsContext.test(o),
- namespace: m.join(".")
- }, c), (f = s[h]) || (f = s[h] = [], f.delegateCount = 0, l.setup && l.setup.call(e, i, m, p) !== !1 || (e.addEventListener ? e.addEventListener(h, p, !1) : e.attachEvent && e.attachEvent("on" + h, p))), l.add && (l.add.call(e, d), d.handler.guid || (d.handler.guid = r.guid)), o ? f.splice(f.delegateCount++, 0, d) : f.push(d), X.event.global[h] = !0;
- e = null
- }
- },
- remove: function (e, t, n, r, i) {
- var o, a, s, u, c, l, p, d, f, h, m, g = X.hasData(e) && X._data(e);
- if (g && (l = g.events)) {
- for (t = (t || "").match(K) || [""], c = t.length; c--;)
- if (s = Ee.exec(t[c]) || [], f = m = s[1], h = (s[2] || "").split(".").sort(), f) {
- for (p = X.event.special[f] || {}, f = (r ? p.delegateType : p.bindType) || f, d = l[f] || [], s = s[2] && new RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)"), u = o = d.length; o--;) a = d[o], !i && m !== a.origType || n && n.guid !== a.guid || s && !s.test(a.namespace) || r && r !== a.selector && ("**" !== r || !a.selector) || (d.splice(o, 1), a.selector && d.delegateCount--, p.remove && p.remove.call(e, a));
- u && !d.length && (p.teardown && p.teardown.call(e, h, g.handle) !== !1 || X.removeEvent(e, f, g.handle), delete l[f])
- } else
- for (f in l) X.event.remove(e, f + t[c], n, r, !0);
- X.isEmptyObject(l) && (delete g.handle, X._removeData(e, "events"))
- }
- },
- trigger: function (n, r, i, o) {
- var a, s, u, c, l, p, d, f = [i || j],
- h = $.call(n, "type") ? n.type : n,
- m = $.call(n, "namespace") ? n.namespace.split(".") : [];
- if (u = p = i = i || j, 3 !== i.nodeType && 8 !== i.nodeType && !xe.test(h + X.event.triggered) && (h.indexOf(".") >= 0 && (m = h.split("."), h = m.shift(), m.sort()), s = h.indexOf(":") < 0 && "on" + h, n = n[X.expando] ? n : new X.Event(h, "object" == typeof n && n), n.isTrigger = !0, n.namespace = m.join("."), n.namespace_re = n.namespace ? new RegExp("(^|\\.)" + m.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, n.result = t, n.target || (n.target = i), r = null == r ? [n] : X.makeArray(r, [n]), l = X.event.special[h] || {}, o || !l.trigger || l.trigger.apply(i, r) !== !1)) {
- if (!o && !l.noBubble && !X.isWindow(i)) {
- for (c = l.delegateType || h, xe.test(c + h) || (u = u.parentNode); u; u = u.parentNode) f.push(u), p = u;
- p === (i.ownerDocument || j) && f.push(p.defaultView || p.parentWindow || e)
- }
- for (d = 0;
- (u = f[d++]) && !n.isPropagationStopped();) n.type = d > 1 ? c : l.bindType || h, a = (X._data(u, "events") || {})[n.type] && X._data(u, "handle"), a && a.apply(u, r), a = s && u[s], a && X.acceptData(u) && a.apply && a.apply(u, r) === !1 && n.preventDefault();
- if (n.type = h, !o && !n.isDefaultPrevented() && (!l._default || l._default.apply(i.ownerDocument, r) === !1) && ("click" !== h || !X.nodeName(i, "a")) && X.acceptData(i) && s && i[h] && !X.isWindow(i)) {
- p = i[s], p && (i[s] = null), X.event.triggered = h;
- try {
- i[h]()
- } catch (g) {}
- X.event.triggered = t, p && (i[s] = p)
- }
- return n.result
- }
- },
- dispatch: function (e) {
- e = X.event.fix(e);
- var n, r, i, o, a, s = [],
- u = H.call(arguments),
- c = (X._data(this, "events") || {})[e.type] || [],
- l = X.event.special[e.type] || {};
- if (u[0] = e, e.delegateTarget = this, !l.preDispatch || l.preDispatch.call(this, e) !== !1) {
- for (s = X.event.handlers.call(this, e, c), n = 0;
- (o = s[n++]) && !e.isPropagationStopped();)
- for (e.currentTarget = o.elem, a = 0;
- (i = o.handlers[a++]) && !e.isImmediatePropagationStopped();)(!e.namespace_re || e.namespace_re.test(i.namespace)) && (e.handleObj = i, e.data = i.data, r = ((X.event.special[i.origType] || {}).handle || i.handler).apply(o.elem, u), r !== t && (e.result = r) === !1 && (e.preventDefault(), e.stopPropagation()));
- return l.postDispatch && l.postDispatch.call(this, e), e.result
- }
- },
- handlers: function (e, n) {
- var r, i, o, a, s = [],
- u = n.delegateCount,
- c = e.target;
- if (u && c.nodeType && (!e.button || "click" !== e.type))
- for (; c != this; c = c.parentNode || this)
- if (1 === c.nodeType && (c.disabled !== !0 || "click" !== e.type)) {
- for (o = [], a = 0; u > a; a++) i = n[a], r = i.selector + " ", o[r] === t && (o[r] = i.needsContext ? X(r, this).index(c) >= 0 : X.find(r, this, null, [c]).length), o[r] && o.push(i);
- o.length && s.push({
- elem: c,
- handlers: o
- })
- } return u < n.length && s.push({
- elem: this,
- handlers: n.slice(u)
- }), s
- },
- fix: function (e) {
- if (e[X.expando]) return e;
- var t, n, r, i = e.type,
- o = e,
- a = this.fixHooks[i];
- for (a || (this.fixHooks[i] = a = be.test(i) ? this.mouseHooks : ye.test(i) ? this.keyHooks : {}), r = a.props ? this.props.concat(a.props) : this.props, e = new X.Event(o), t = r.length; t--;) n = r[t], e[n] = o[n];
- return e.target || (e.target = o.srcElement || j), 3 === e.target.nodeType && (e.target = e.target.parentNode), e.metaKey = !!e.metaKey, a.filter ? a.filter(e, o) : e
- },
- props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
- fixHooks: {},
- keyHooks: {
- props: "char charCode key keyCode".split(" "),
- filter: function (e, t) {
- return null == e.which && (e.which = null != t.charCode ? t.charCode : t.keyCode), e
- }
- },
- mouseHooks: {
- props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
- filter: function (e, n) {
- var r, i, o, a = n.button,
- s = n.fromElement;
- return null == e.pageX && null != n.clientX && (i = e.target.ownerDocument || j, o = i.documentElement, r = i.body, e.pageX = n.clientX + (o && o.scrollLeft || r && r.scrollLeft || 0) - (o && o.clientLeft || r && r.clientLeft || 0), e.pageY = n.clientY + (o && o.scrollTop || r && r.scrollTop || 0) - (o && o.clientTop || r && r.clientTop || 0)), !e.relatedTarget && s && (e.relatedTarget = s === e.target ? n.toElement : s), e.which || a === t || (e.which = 1 & a ? 1 : 2 & a ? 3 : 4 & a ? 2 : 0), e
- }
- },
- special: {
- load: {
- noBubble: !0
- },
- click: {
- trigger: function () {
- return X.nodeName(this, "input") && "checkbox" === this.type && this.click ? (this.click(), !1) : void 0
- }
- },
- focus: {
- trigger: function () {
- if (this !== j.activeElement && this.focus) try {
- return this.focus(), !1
- } catch (e) {}
- },
- delegateType: "focusin"
- },
- blur: {
- trigger: function () {
- return this === j.activeElement && this.blur ? (this.blur(), !1) : void 0
- },
- delegateType: "focusout"
- },
- beforeunload: {
- postDispatch: function (e) {
- e.result !== t && (e.originalEvent.returnValue = e.result)
- }
- }
- },
- simulate: function (e, t, n, r) {
- var i = X.extend(new X.Event, n, {
- type: e,
- isSimulated: !0,
- originalEvent: {}
- });
- r ? X.event.trigger(i, null, t) : X.event.dispatch.call(t, i), i.isDefaultPrevented() && n.preventDefault()
- }
- }, X.removeEvent = j.removeEventListener ? function (e, t, n) {
- e.removeEventListener && e.removeEventListener(t, n, !1)
- } : function (e, t, n) {
- var r = "on" + t;
- e.detachEvent && (typeof e[r] === A && (e[r] = null), e.detachEvent(r, n))
- }, X.Event = function (e, t) {
- return this instanceof X.Event ? (e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || e.returnValue === !1 || e.getPreventDefault && e.getPreventDefault() ? u : c) : this.type = e, t && X.extend(this, t), this.timeStamp = e && e.timeStamp || X.now(), void(this[X.expando] = !0)) : new X.Event(e, t)
- }, X.Event.prototype = {
- isDefaultPrevented: c,
- isPropagationStopped: c,
- isImmediatePropagationStopped: c,
- preventDefault: function () {
- var e = this.originalEvent;
- this.isDefaultPrevented = u, e && (e.preventDefault ? e.preventDefault() : e.returnValue = !1)
- },
- stopPropagation: function () {
- var e = this.originalEvent;
- this.isPropagationStopped = u, e && (e.stopPropagation && e.stopPropagation(), e.cancelBubble = !0)
- },
- stopImmediatePropagation: function () {
- this.isImmediatePropagationStopped = u, this.stopPropagation()
- }
- }, X.each({
- mouseenter: "mouseover",
- mouseleave: "mouseout"
- }, function (e, t) {
- X.event.special[e] = {
- delegateType: t,
- bindType: t,
- handle: function (e) {
- var n, r = this,
- i = e.relatedTarget,
- o = e.handleObj;
- return (!i || i !== r && !X.contains(r, i)) && (e.type = o.origType, n = o.handler.apply(this, arguments), e.type = t), n
- }
- }
- }), X.support.submitBubbles || (X.event.special.submit = {
- setup: function () {
- return X.nodeName(this, "form") ? !1 : void X.event.add(this, "click._submit keypress._submit", function (e) {
- var n = e.target,
- r = X.nodeName(n, "input") || X.nodeName(n, "button") ? n.form : t;
- r && !X._data(r, "submitBubbles") && (X.event.add(r, "submit._submit", function (e) {
- e._submit_bubble = !0
- }), X._data(r, "submitBubbles", !0))
- })
- },
- postDispatch: function (e) {
- e._submit_bubble && (delete e._submit_bubble, this.parentNode && !e.isTrigger && X.event.simulate("submit", this.parentNode, e, !0))
- },
- teardown: function () {
- return X.nodeName(this, "form") ? !1 : void X.event.remove(this, "._submit")
- }
- }), X.support.changeBubbles || (X.event.special.change = {
- setup: function () {
- return ve.test(this.nodeName) ? (("checkbox" === this.type || "radio" === this.type) && (X.event.add(this, "propertychange._change", function (e) {
- "checked" === e.originalEvent.propertyName && (this._just_changed = !0)
- }), X.event.add(this, "click._change", function (e) {
- this._just_changed && !e.isTrigger && (this._just_changed = !1), X.event.simulate("change", this, e, !0)
- })), !1) : void X.event.add(this, "beforeactivate._change", function (e) {
- var t = e.target;
- ve.test(t.nodeName) && !X._data(t, "changeBubbles") && (X.event.add(t, "change._change", function (e) {
- !this.parentNode || e.isSimulated || e.isTrigger || X.event.simulate("change", this.parentNode, e, !0)
- }), X._data(t, "changeBubbles", !0))
- })
- },
- handle: function (e) {
- var t = e.target;
- return this !== t || e.isSimulated || e.isTrigger || "radio" !== t.type && "checkbox" !== t.type ? e.handleObj.handler.apply(this, arguments) : void 0
- },
- teardown: function () {
- return X.event.remove(this, "._change"), !ve.test(this.nodeName)
- }
- }), X.support.focusinBubbles || X.each({
- focus: "focusin",
- blur: "focusout"
- }, function (e, t) {
- var n = 0,
- r = function (e) {
- X.event.simulate(t, e.target, X.event.fix(e), !0)
- };
- X.event.special[t] = {
- setup: function () {
- 0 === n++ && j.addEventListener(e, r, !0)
- },
- teardown: function () {
- 0 === --n && j.removeEventListener(e, r, !0)
- }
- }
- }), X.fn.extend({
- on: function (e, n, r, i, o) {
- var a, s;
- if ("object" == typeof e) {
- "string" != typeof n && (r = r || n, n = t);
- for (a in e) this.on(a, n, r, e[a], o);
- return this
- }
- if (null == r && null == i ? (i = n, r = n = t) : null == i && ("string" == typeof n ? (i = r, r = t) : (i = r, r = n, n = t)), i === !1) i = c;
- else if (!i) return this;
- return 1 === o && (s = i, i = function (e) {
- return X().off(e), s.apply(this, arguments)
- }, i.guid = s.guid || (s.guid = X.guid++)), this.each(function () {
- X.event.add(this, e, i, r, n)
- })
- },
- one: function (e, t, n, r) {
- return this.on(e, t, n, r, 1)
- },
- off: function (e, n, r) {
- var i, o;
- if (e && e.preventDefault && e.handleObj) return i = e.handleObj, X(e.delegateTarget).off(i.namespace ? i.origType + "." + i.namespace : i.origType, i.selector, i.handler), this;
- if ("object" == typeof e) {
- for (o in e) this.off(o, n, e[o]);
- return this
- }
- return (n === !1 || "function" == typeof n) && (r = n, n = t), r === !1 && (r = c), this.each(function () {
- X.event.remove(this, e, r, n)
- })
- },
- bind: function (e, t, n) {
- return this.on(e, null, t, n)
- },
- unbind: function (e, t) {
- return this.off(e, null, t)
- },
- delegate: function (e, t, n, r) {
- return this.on(t, e, n, r)
- },
- undelegate: function (e, t, n) {
- return 1 === arguments.length ? this.off(e, "**") : this.off(t, e || "**", n)
- },
- trigger: function (e, t) {
- return this.each(function () {
- X.event.trigger(e, t, this)
- })
- },
- triggerHandler: function (e, t) {
- var n = this[0];
- return n ? X.event.trigger(e, t, n, !0) : void 0
- }
- }),
- function (e, t) {
- function n(e, t, n, r) {
- var i, o, a, s, u, c, l, p, d, f;
- if ((t ? t.ownerDocument || t : K) !== P && O(t), t = t || P, n = n || [], !e || "string" != typeof e) return n;
- if (1 !== (s = t.nodeType) && 9 !== s) return [];
- if (B && !r) {
- if (i = Ce.exec(e))
- if (a = i[1]) {
- if (9 === s) {
- if (o = t.getElementById(a), !o || !o.parentNode) return n;
- if (o.id === a) return n.push(o), n
- } else if (t.ownerDocument && (o = t.ownerDocument.getElementById(a)) && $(t, o) && o.id === a) return n.push(o), n
- } else {
- if (i[2]) return oe.apply(n, t.getElementsByTagName(e)), n;
- if ((a = i[3]) && N.getElementsByClassName && t.getElementsByClassName) return oe.apply(n, t.getElementsByClassName(a)), n
- } if (N.qsa && (!H || !H.test(e))) {
- if (p = l = W, d = t, f = 9 === s && e, 1 === s && "object" !== t.nodeName.toLowerCase()) {
- for (c = m(e), (l = t.getAttribute("id")) ? p = l.replace(Se, "\\$&") : t.setAttribute("id", p), p = "[id='" + p + "'] ", u = c.length; u--;) c[u] = p + g(c[u]);
- d = ve.test(e) && t.parentNode || t, f = c.join(",")
- }
- if (f) try {
- return oe.apply(n, d.querySelectorAll(f)), n
- } catch (h) {} finally {
- l || t.removeAttribute("id")
- }
- }
- }
- return T(e.replace(he, "$1"), t, n, r)
- }
- function r(e) {
- return we.test(e + "")
- }
- function i() {
- function e(n, r) {
- return t.push(n += " ") > L.cacheLength && delete e[t.shift()], e[n] = r
- }
- var t = [];
- return e
- }
- function o(e) {
- return e[W] = !0, e
- }
- function a(e) {
- var t = P.createElement("div");
- try {
- return !!e(t)
- } catch (n) {
- return !1
- } finally {
- t.parentNode && t.parentNode.removeChild(t), t = null
- }
- }
- function s(e, t, n) {
- e = e.split("|");
- for (var r, i = e.length, o = n ? null : t; i--;)(r = L.attrHandle[e[i]]) && r !== t || (L.attrHandle[e[i]] = o)
- }
- function u(e, t) {
- var n = e.getAttributeNode(t);
- return n && n.specified ? n.value : e[t] === !0 ? t.toLowerCase() : null
- }
- function c(e, t) {
- return e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2)
- }
- function l(e) {
- return "input" === e.nodeName.toLowerCase() ? e.defaultValue : void 0
- }
- function p(e, t) {
- var n = t && e,
- r = n && 1 === e.nodeType && 1 === t.nodeType && (~t.sourceIndex || ee) - (~e.sourceIndex || ee);
- if (r) return r;
- if (n)
- for (; n = n.nextSibling;)
- if (n === t) return -1;
- return e ? 1 : -1
- }
- function d(e) {
- return function (t) {
- var n = t.nodeName.toLowerCase();
- return "input" === n && t.type === e
- }
- }
- function f(e) {
- return function (t) {
- var n = t.nodeName.toLowerCase();
- return ("input" === n || "button" === n) && t.type === e
- }
- }
- function h(e) {
- return o(function (t) {
- return t = +t, o(function (n, r) {
- for (var i, o = e([], n.length, t), a = o.length; a--;) n[i = o[a]] && (n[i] = !(r[i] = n[i]))
- })
- })
- }
- function m(e, t) {
- var r, i, o, a, s, u, c, l = J[e + " "];
- if (l) return t ? 0 : l.slice(0);
- for (s = e, u = [], c = L.preFilter; s;) {
- (!r || (i = me.exec(s))) && (i && (s = s.slice(i[0].length) || s), u.push(o = [])), r = !1, (i = ge.exec(s)) && (r = i.shift(), o.push({
- value: r,
- type: i[0].replace(he, " ")
- }), s = s.slice(r.length));
- for (a in L.filter) !(i = Ee[a].exec(s)) || c[a] && !(i = c[a](i)) || (r = i.shift(), o.push({
- value: r,
- type: a,
- matches: i
- }), s = s.slice(r.length));
- if (!r) break
- }
- return t ? s.length : s ? n.error(e) : J(e, u).slice(0)
- }
- function g(e) {
- for (var t = 0, n = e.length, r = ""; n > t; t++) r += e[t].value;
- return r
- }
- function v(e, t, n) {
- var r = t.dir,
- i = n && "parentNode" === r,
- o = U++;
- return t.first ? function (t, n, o) {
- for (; t = t[r];)
- if (1 === t.nodeType || i) return e(t, n, o)
- } : function (t, n, a) {
- var s, u, c, l = z + " " + o;
- if (a) {
- for (; t = t[r];)
- if ((1 === t.nodeType || i) && e(t, n, a)) return !0
- } else
- for (; t = t[r];)
- if (1 === t.nodeType || i)
- if (c = t[W] || (t[W] = {}), (u = c[r]) && u[0] === l) {
- if ((s = u[1]) === !0 || s === M) return s === !0
- } else if (u = c[r] = [l], u[1] = e(t, n, a) || M, u[1] === !0) return !0
- }
- }
- function y(e) {
- return e.length > 1 ? function (t, n, r) {
- for (var i = e.length; i--;)
- if (!e[i](t, n, r)) return !1;
- return !0
- } : e[0]
- }
- function b(e, t, n, r, i) {
- for (var o, a = [], s = 0, u = e.length, c = null != t; u > s; s++)(o = e[s]) && (!n || n(o, r, i)) && (a.push(o), c && t.push(s));
- return a
- }
- function x(e, t, n, r, i, a) {
- return r && !r[W] && (r = x(r)), i && !i[W] && (i = x(i, a)), o(function (o, a, s, u) {
- var c, l, p, d = [],
- f = [],
- h = a.length,
- m = o || C(t || "*", s.nodeType ? [s] : s, []),
- g = !e || !o && t ? m : b(m, d, e, s, u),
- v = n ? i || (o ? e : h || r) ? [] : a : g;
- if (n && n(g, v, s, u), r)
- for (c = b(v, f), r(c, [], s, u), l = c.length; l--;)(p = c[l]) && (v[f[l]] = !(g[f[l]] = p));
- if (o) {
- if (i || e) {
- if (i) {
- for (c = [], l = v.length; l--;)(p = v[l]) && c.push(g[l] = p);
- i(null, v = [], c, u)
- }
- for (l = v.length; l--;)(p = v[l]) && (c = i ? se.call(o, p) : d[l]) > -1 && (o[c] = !(a[c] = p))
- }
- } else v = b(v === a ? v.splice(h, v.length) : v), i ? i(null, a, v, u) : oe.apply(a, v)
- })
- }
- function E(e) {
- for (var t, n, r, i = e.length, o = L.relative[e[0].type], a = o || L.relative[" "], s = o ? 1 : 0, u = v(function (e) {
- return e === t
- }, a, !0), c = v(function (e) {
- return se.call(t, e) > -1
- }, a, !0), l = [function (e, n, r) {
- return !o && (r || n !== q) || ((t = n).nodeType ? u(e, n, r) : c(e, n, r))
- }]; i > s; s++)
- if (n = L.relative[e[s].type]) l = [v(y(l), n)];
- else {
- if (n = L.filter[e[s].type].apply(null, e[s].matches), n[W]) {
- for (r = ++s; i > r && !L.relative[e[r].type]; r++);
- return x(s > 1 && y(l), s > 1 && g(e.slice(0, s - 1).concat({
- value: " " === e[s - 2].type ? "*" : ""
- })).replace(he, "$1"), n, r > s && E(e.slice(s, r)), i > r && E(e = e.slice(r)), i > r && g(e))
- }
- l.push(n)
- } return y(l)
- }
- function w(e, t) {
- var r = 0,
- i = t.length > 0,
- a = e.length > 0,
- s = function (o, s, u, c, l) {
- var p, d, f, h = [],
- m = 0,
- g = "0",
- v = o && [],
- y = null != l,
- x = q,
- E = o || a && L.find.TAG("*", l && s.parentNode || s),
- w = z += null == x ? 1 : Math.random() || .1;
- for (y && (q = s !== P && s, M = r); null != (p = E[g]); g++) {
- if (a && p) {
- for (d = 0; f = e[d++];)
- if (f(p, s, u)) {
- c.push(p);
- break
- } y && (z = w, M = ++r)
- }
- i && ((p = !f && p) && m--, o && v.push(p))
- }
- if (m += g, i && g !== m) {
- for (d = 0; f = t[d++];) f(v, h, s, u);
- if (o) {
- if (m > 0)
- for (; g--;) v[g] || h[g] || (h[g] = re.call(c));
- h = b(h)
- }
- oe.apply(c, h), y && !o && h.length > 0 && m + t.length > 1 && n.uniqueSort(c)
- }
- return y && (z = w, q = x), v
- };
- return i ? o(s) : s
- }
- function C(e, t, r) {
- for (var i = 0, o = t.length; o > i; i++) n(e, t[i], r);
- return r
- }
- function T(e, t, n, r) {
- var i, o, a, s, u, c = m(e);
- if (!r && 1 === c.length) {
- if (o = c[0] = c[0].slice(0), o.length > 2 && "ID" === (a = o[0]).type && N.getById && 9 === t.nodeType && B && L.relative[o[1].type]) {
- if (t = (L.find.ID(a.matches[0].replace(Ne, Me), t) || [])[0], !t) return n;
- e = e.slice(o.shift().value.length)
- }
- for (i = Ee.needsContext.test(e) ? 0 : o.length; i-- && (a = o[i], !L.relative[s = a.type]);)
- if ((u = L.find[s]) && (r = u(a.matches[0].replace(Ne, Me), ve.test(o[0].type) && t.parentNode || t))) {
- if (o.splice(i, 1), e = r.length && g(o), !e) return oe.apply(n, r), n;
- break
- }
- }
- return j(e, c)(r, t, !B, n, ve.test(e)), n
- }
- function k() {}
- var S, N, M, L, D, A, j, q, _, O, P, R, B, H, F, I, $, W = "sizzle" + -new Date,
- K = e.document,
- z = 0,
- U = 0,
- Y = i(),
- J = i(),
- V = i(),
- G = !1,
- Q = function () {
- return 0
- },
- Z = typeof t,
- ee = 1 << 31,
- te = {}.hasOwnProperty,
- ne = [],
- re = ne.pop,
- ie = ne.push,
- oe = ne.push,
- ae = ne.slice,
- se = ne.indexOf || function (e) {
- for (var t = 0, n = this.length; n > t; t++)
- if (this[t] === e) return t;
- return -1
- },
- ue = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
- ce = "[\\x20\\t\\r\\n\\f]",
- le = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",
- pe = le.replace("w", "w#"),
- de = "\\[" + ce + "*(" + le + ")" + ce + "*(?:([*^$|!~]?=)" + ce + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + pe + ")|)|)" + ce + "*\\]",
- fe = ":(" + le + ")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|" + de.replace(3, 8) + ")*)|.*)\\)|)",
- he = new RegExp("^" + ce + "+|((?:^|[^\\\\])(?:\\\\.)*)" + ce + "+$", "g"),
- me = new RegExp("^" + ce + "*," + ce + "*"),
- ge = new RegExp("^" + ce + "*([>+~]|" + ce + ")" + ce + "*"),
- ve = new RegExp(ce + "*[+~]"),
- ye = new RegExp("=" + ce + "*([^\\]'\"]*)" + ce + "*\\]", "g"),
- be = new RegExp(fe),
- xe = new RegExp("^" + pe + "$"),
- Ee = {
- ID: new RegExp("^#(" + le + ")"),
- CLASS: new RegExp("^\\.(" + le + ")"),
- TAG: new RegExp("^(" + le.replace("w", "w*") + ")"),
- ATTR: new RegExp("^" + de),
- PSEUDO: new RegExp("^" + fe),
- CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + ce + "*(even|odd|(([+-]|)(\\d*)n|)" + ce + "*(?:([+-]|)" + ce + "*(\\d+)|))" + ce + "*\\)|)", "i"),
- bool: new RegExp("^(?:" + ue + ")$", "i"),
- needsContext: new RegExp("^" + ce + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + ce + "*((?:-\\d)?\\d*)" + ce + "*\\)|)(?=[^-]|$)", "i")
- },
- we = /^[^{]+\{\s*\[native \w/,
- Ce = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
- Te = /^(?:input|select|textarea|button)$/i,
- ke = /^h\d$/i,
- Se = /'|\\/g,
- Ne = new RegExp("\\\\([\\da-f]{1,6}" + ce + "?|(" + ce + ")|.)", "ig"),
- Me = function (e, t, n) {
- var r = "0x" + t - 65536;
- return r !== r || n ? t : 0 > r ? String.fromCharCode(r + 65536) : String.fromCharCode(r >> 10 | 55296, 1023 & r | 56320)
- };
- try {
- oe.apply(ne = ae.call(K.childNodes), K.childNodes), ne[K.childNodes.length].nodeType
- } catch (Le) {
- oe = {
- apply: ne.length ? function (e, t) {
- ie.apply(e, ae.call(t))
- } : function (e, t) {
- for (var n = e.length, r = 0; e[n++] = t[r++];);
- e.length = n - 1
- }
- }
- }
- A = n.isXML = function (e) {
- var t = e && (e.ownerDocument || e).documentElement;
- return t ? "HTML" !== t.nodeName : !1
- }, N = n.support = {}, O = n.setDocument = function (e) {
- var t = e ? e.ownerDocument || e : K;
- return t !== P && 9 === t.nodeType && t.documentElement ? (P = t, R = t.documentElement, B = !A(t), N.attributes = a(function (e) {
- return e.innerHTML = "<a href='#'></a>", s("type|href|height|width", c, "#" === e.firstChild.getAttribute("href")), s(ue, u, null == e.getAttribute("disabled")), e.className = "i", !e.getAttribute("className")
- }),
- N.input = a(function (e) {
- return e.innerHTML = "<input>", e.firstChild.setAttribute("value", ""), "" === e.firstChild.getAttribute("value")
- }), s("value", l, N.attributes && N.input), N.getElementsByTagName = a(function (e) {
- return e.appendChild(t.createComment("")), !e.getElementsByTagName("*").length
- }), N.getElementsByClassName = a(function (e) {
- return e.innerHTML = "<div class='a'></div><div class='a i'></div>", e.firstChild.className = "i", 2 === e.getElementsByClassName("i").length
- }), N.getById = a(function (e) {
- return R.appendChild(e).id = W, !t.getElementsByName || !t.getElementsByName(W).length
- }), N.getById ? (L.find.ID = function (e, t) {
- if (typeof t.getElementById !== Z && B) {
- var n = t.getElementById(e);
- return n && n.parentNode ? [n] : []
- }
- }, L.filter.ID = function (e) {
- var t = e.replace(Ne, Me);
- return function (e) {
- return e.getAttribute("id") === t
- }
- }) : (delete L.find.ID, L.filter.ID = function (e) {
- var t = e.replace(Ne, Me);
- return function (e) {
- var n = typeof e.getAttributeNode !== Z && e.getAttributeNode("id");
- return n && n.value === t
- }
- }), L.find.TAG = N.getElementsByTagName ? function (e, t) {
- return typeof t.getElementsByTagName !== Z ? t.getElementsByTagName(e) : void 0
- } : function (e, t) {
- var n, r = [],
- i = 0,
- o = t.getElementsByTagName(e);
- if ("*" === e) {
- for (; n = o[i++];) 1 === n.nodeType && r.push(n);
- return r
- }
- return o
- }, L.find.CLASS = N.getElementsByClassName && function (e, t) {
- return typeof t.getElementsByClassName !== Z && B ? t.getElementsByClassName(e) : void 0
- }, F = [], H = [], (N.qsa = r(t.querySelectorAll)) && (a(function (e) {
- e.innerHTML = "<select><option selected=''></option></select>", e.querySelectorAll("[selected]").length || H.push("\\[" + ce + "*(?:value|" + ue + ")"), e.querySelectorAll(":checked").length || H.push(":checked")
- }), a(function (e) {
- var n = t.createElement("input");
- n.setAttribute("type", "hidden"), e.appendChild(n).setAttribute("t", ""), e.querySelectorAll("[t^='']").length && H.push("[*^$]=" + ce + "*(?:''|\"\")"), e.querySelectorAll(":enabled").length || H.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), H.push(",.*:")
- })), (N.matchesSelector = r(I = R.webkitMatchesSelector || R.mozMatchesSelector || R.oMatchesSelector || R.msMatchesSelector)) && a(function (e) {
- N.disconnectedMatch = I.call(e, "div"), I.call(e, "[s!='']:x"), F.push("!=", fe)
- }), H = H.length && new RegExp(H.join("|")), F = F.length && new RegExp(F.join("|")), $ = r(R.contains) || R.compareDocumentPosition ? function (e, t) {
- var n = 9 === e.nodeType ? e.documentElement : e,
- r = t && t.parentNode;
- return e === r || !(!r || 1 !== r.nodeType || !(n.contains ? n.contains(r) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(r)))
- } : function (e, t) {
- if (t)
- for (; t = t.parentNode;)
- if (t === e) return !0;
- return !1
- }, N.sortDetached = a(function (e) {
- return 1 & e.compareDocumentPosition(t.createElement("div"))
- }), Q = R.compareDocumentPosition ? function (e, n) {
- if (e === n) return G = !0, 0;
- var r = n.compareDocumentPosition && e.compareDocumentPosition && e.compareDocumentPosition(n);
- return r ? 1 & r || !N.sortDetached && n.compareDocumentPosition(e) === r ? e === t || $(K, e) ? -1 : n === t || $(K, n) ? 1 : _ ? se.call(_, e) - se.call(_, n) : 0 : 4 & r ? -1 : 1 : e.compareDocumentPosition ? -1 : 1
- } : function (e, n) {
- var r, i = 0,
- o = e.parentNode,
- a = n.parentNode,
- s = [e],
- u = [n];
- if (e === n) return G = !0, 0;
- if (!o || !a) return e === t ? -1 : n === t ? 1 : o ? -1 : a ? 1 : _ ? se.call(_, e) - se.call(_, n) : 0;
- if (o === a) return p(e, n);
- for (r = e; r = r.parentNode;) s.unshift(r);
- for (r = n; r = r.parentNode;) u.unshift(r);
- for (; s[i] === u[i];) i++;
- return i ? p(s[i], u[i]) : s[i] === K ? -1 : u[i] === K ? 1 : 0
- }, t) : P
- }, n.matches = function (e, t) {
- return n(e, null, null, t)
- }, n.matchesSelector = function (e, t) {
- if ((e.ownerDocument || e) !== P && O(e), t = t.replace(ye, "='$1']"), N.matchesSelector && B && (!F || !F.test(t)) && (!H || !H.test(t))) try {
- var r = I.call(e, t);
- if (r || N.disconnectedMatch || e.document && 11 !== e.document.nodeType) return r
- } catch (i) {}
- return n(t, P, null, [e]).length > 0
- }, n.contains = function (e, t) {
- return (e.ownerDocument || e) !== P && O(e), $(e, t)
- }, n.attr = function (e, n) {
- (e.ownerDocument || e) !== P && O(e);
- var r = L.attrHandle[n.toLowerCase()],
- i = r && te.call(L.attrHandle, n.toLowerCase()) ? r(e, n, !B) : t;
- return i === t ? N.attributes || !B ? e.getAttribute(n) : (i = e.getAttributeNode(n)) && i.specified ? i.value : null : i
- }, n.error = function (e) {
- throw new Error("Syntax error, unrecognized expression: " + e)
- }, n.uniqueSort = function (e) {
- var t, n = [],
- r = 0,
- i = 0;
- if (G = !N.detectDuplicates, _ = !N.sortStable && e.slice(0), e.sort(Q), G) {
- for (; t = e[i++];) t === e[i] && (r = n.push(i));
- for (; r--;) e.splice(n[r], 1)
- }
- return e
- }, D = n.getText = function (e) {
- var t, n = "",
- r = 0,
- i = e.nodeType;
- if (i) {
- if (1 === i || 9 === i || 11 === i) {
- if ("string" == typeof e.textContent) return e.textContent;
- for (e = e.firstChild; e; e = e.nextSibling) n += D(e)
- } else if (3 === i || 4 === i) return e.nodeValue
- } else
- for (; t = e[r]; r++) n += D(t);
- return n
- }, L = n.selectors = {
- cacheLength: 50,
- createPseudo: o,
- match: Ee,
- attrHandle: {},
- find: {},
- relative: {
- ">": {
- dir: "parentNode",
- first: !0
- },
- " ": {
- dir: "parentNode"
- },
- "+": {
- dir: "previousSibling",
- first: !0
- },
- "~": {
- dir: "previousSibling"
- }
- },
- preFilter: {
- ATTR: function (e) {
- return e[1] = e[1].replace(Ne, Me), e[3] = (e[4] || e[5] || "").replace(Ne, Me), "~=" === e[2] && (e[3] = " " + e[3] + " "), e.slice(0, 4)
- },
- CHILD: function (e) {
- return e[1] = e[1].toLowerCase(), "nth" === e[1].slice(0, 3) ? (e[3] || n.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ("even" === e[3] || "odd" === e[3])), e[5] = +(e[7] + e[8] || "odd" === e[3])) : e[3] && n.error(e[0]), e
- },
- PSEUDO: function (e) {
- var n, r = !e[5] && e[2];
- return Ee.CHILD.test(e[0]) ? null : (e[3] && e[4] !== t ? e[2] = e[4] : r && be.test(r) && (n = m(r, !0)) && (n = r.indexOf(")", r.length - n) - r.length) && (e[0] = e[0].slice(0, n), e[2] = r.slice(0, n)), e.slice(0, 3))
- }
- },
- filter: {
- TAG: function (e) {
- var t = e.replace(Ne, Me).toLowerCase();
- return "*" === e ? function () {
- return !0
- } : function (e) {
- return e.nodeName && e.nodeName.toLowerCase() === t
- }
- },
- CLASS: function (e) {
- var t = Y[e + " "];
- return t || (t = new RegExp("(^|" + ce + ")" + e + "(" + ce + "|$)")) && Y(e, function (e) {
- return t.test("string" == typeof e.className && e.className || typeof e.getAttribute !== Z && e.getAttribute("class") || "")
- })
- },
- ATTR: function (e, t, r) {
- return function (i) {
- var o = n.attr(i, e);
- return null == o ? "!=" === t : t ? (o += "", "=" === t ? o === r : "!=" === t ? o !== r : "^=" === t ? r && 0 === o.indexOf(r) : "*=" === t ? r && o.indexOf(r) > -1 : "$=" === t ? r && o.slice(-r.length) === r : "~=" === t ? (" " + o + " ").indexOf(r) > -1 : "|=" === t ? o === r || o.slice(0, r.length + 1) === r + "-" : !1) : !0
- }
- },
- CHILD: function (e, t, n, r, i) {
- var o = "nth" !== e.slice(0, 3),
- a = "last" !== e.slice(-4),
- s = "of-type" === t;
- return 1 === r && 0 === i ? function (e) {
- return !!e.parentNode
- } : function (t, n, u) {
- var c, l, p, d, f, h, m = o !== a ? "nextSibling" : "previousSibling",
- g = t.parentNode,
- v = s && t.nodeName.toLowerCase(),
- y = !u && !s;
- if (g) {
- if (o) {
- for (; m;) {
- for (p = t; p = p[m];)
- if (s ? p.nodeName.toLowerCase() === v : 1 === p.nodeType) return !1;
- h = m = "only" === e && !h && "nextSibling"
- }
- return !0
- }
- if (h = [a ? g.firstChild : g.lastChild], a && y) {
- for (l = g[W] || (g[W] = {}), c = l[e] || [], f = c[0] === z && c[1], d = c[0] === z && c[2], p = f && g.childNodes[f]; p = ++f && p && p[m] || (d = f = 0) || h.pop();)
- if (1 === p.nodeType && ++d && p === t) {
- l[e] = [z, f, d];
- break
- }
- } else if (y && (c = (t[W] || (t[W] = {}))[e]) && c[0] === z) d = c[1];
- else
- for (;
- (p = ++f && p && p[m] || (d = f = 0) || h.pop()) && ((s ? p.nodeName.toLowerCase() !== v : 1 !== p.nodeType) || !++d || (y && ((p[W] || (p[W] = {}))[e] = [z, d]), p !== t)););
- return d -= i, d === r || d % r === 0 && d / r >= 0
- }
- }
- },
- PSEUDO: function (e, t) {
- var r, i = L.pseudos[e] || L.setFilters[e.toLowerCase()] || n.error("unsupported pseudo: " + e);
- return i[W] ? i(t) : i.length > 1 ? (r = [e, e, "", t], L.setFilters.hasOwnProperty(e.toLowerCase()) ? o(function (e, n) {
- for (var r, o = i(e, t), a = o.length; a--;) r = se.call(e, o[a]), e[r] = !(n[r] = o[a])
- }) : function (e) {
- return i(e, 0, r)
- }) : i
- }
- },
- pseudos: {
- not: o(function (e) {
- var t = [],
- n = [],
- r = j(e.replace(he, "$1"));
- return r[W] ? o(function (e, t, n, i) {
- for (var o, a = r(e, null, i, []), s = e.length; s--;)(o = a[s]) && (e[s] = !(t[s] = o))
- }) : function (e, i, o) {
- return t[0] = e, r(t, null, o, n), !n.pop()
- }
- }),
- has: o(function (e) {
- return function (t) {
- return n(e, t).length > 0
- }
- }),
- contains: o(function (e) {
- return function (t) {
- return (t.textContent || t.innerText || D(t)).indexOf(e) > -1
- }
- }),
- lang: o(function (e) {
- return xe.test(e || "") || n.error("unsupported lang: " + e), e = e.replace(Ne, Me).toLowerCase(),
- function (t) {
- var n;
- do
- if (n = B ? t.lang : t.getAttribute("xml:lang") || t.getAttribute("lang")) return n = n.toLowerCase(), n === e || 0 === n.indexOf(e + "-"); while ((t = t.parentNode) && 1 === t.nodeType);
- return !1
- }
- }),
- target: function (t) {
- var n = e.location && e.location.hash;
- return n && n.slice(1) === t.id
- },
- root: function (e) {
- return e === R
- },
- focus: function (e) {
- return e === P.activeElement && (!P.hasFocus || P.hasFocus()) && !!(e.type || e.href || ~e.tabIndex)
- },
- enabled: function (e) {
- return e.disabled === !1
- },
- disabled: function (e) {
- return e.disabled === !0
- },
- checked: function (e) {
- var t = e.nodeName.toLowerCase();
- return "input" === t && !!e.checked || "option" === t && !!e.selected
- },
- selected: function (e) {
- return e.parentNode && e.parentNode.selectedIndex, e.selected === !0
- },
- empty: function (e) {
- for (e = e.firstChild; e; e = e.nextSibling)
- if (e.nodeName > "@" || 3 === e.nodeType || 4 === e.nodeType) return !1;
- return !0
- },
- parent: function (e) {
- return !L.pseudos.empty(e)
- },
- header: function (e) {
- return ke.test(e.nodeName)
- },
- input: function (e) {
- return Te.test(e.nodeName)
- },
- button: function (e) {
- var t = e.nodeName.toLowerCase();
- return "input" === t && "button" === e.type || "button" === t
- },
- text: function (e) {
- var t;
- return "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (t = e.getAttribute("type")) || t.toLowerCase() === e.type)
- },
- first: h(function () {
- return [0]
- }),
- last: h(function (e, t) {
- return [t - 1]
- }),
- eq: h(function (e, t, n) {
- return [0 > n ? n + t : n]
- }),
- even: h(function (e, t) {
- for (var n = 0; t > n; n += 2) e.push(n);
- return e
- }),
- odd: h(function (e, t) {
- for (var n = 1; t > n; n += 2) e.push(n);
- return e
- }),
- lt: h(function (e, t, n) {
- for (var r = 0 > n ? n + t : n; --r >= 0;) e.push(r);
- return e
- }),
- gt: h(function (e, t, n) {
- for (var r = 0 > n ? n + t : n; ++r < t;) e.push(r);
- return e
- })
- }
- };
- for (S in {
- radio: !0,
- checkbox: !0,
- file: !0,
- password: !0,
- image: !0
- }) L.pseudos[S] = d(S);
- for (S in {
- submit: !0,
- reset: !0
- }) L.pseudos[S] = f(S);
- j = n.compile = function (e, t) {
- var n, r = [],
- i = [],
- o = V[e + " "];
- if (!o) {
- for (t || (t = m(e)), n = t.length; n--;) o = E(t[n]), o[W] ? r.push(o) : i.push(o);
- o = V(e, w(i, r))
- }
- return o
- }, L.pseudos.nth = L.pseudos.eq, k.prototype = L.filters = L.pseudos, L.setFilters = new k, N.sortStable = W.split("").sort(Q).join("") === W, O(), [0, 0].sort(Q), N.detectDuplicates = G, n.attr = X.attr, X.find = n, X.expr = n.selectors, X.expr[":"] = X.expr.pseudos, X.unique = n.uniqueSort, X.text = n.getText, X.isXMLDoc = n.isXML, X.contains = n.contains
- }(e);
- var we = /Until$/,
- Ce = /^(?:parents|prev(?:Until|All))/,
- Te = /^.[^:#\[\.,]*$/,
- ke = X.expr.match.needsContext,
- Se = {
- children: !0,
- contents: !0,
- next: !0,
- prev: !0
- };
- X.fn.extend({
- find: function (e) {
- var t, n, r, i = this.length;
- if ("string" != typeof e) return r = this, this.pushStack(X(e).filter(function () {
- for (t = 0; i > t; t++)
- if (X.contains(r[t], this)) return !0
- }));
- for (n = [], t = 0; i > t; t++) X.find(e, this[t], n);
- return n = this.pushStack(i > 1 ? X.unique(n) : n), n.selector = (this.selector ? this.selector + " " : "") + e, n
- },
- has: function (e) {
- var t, n = X(e, this),
- r = n.length;
- return this.filter(function () {
- for (t = 0; r > t; t++)
- if (X.contains(this, n[t])) return !0
- })
- },
- not: function (e) {
- return this.pushStack(p(this, e, !1))
- },
- filter: function (e) {
- return this.pushStack(p(this, e, !0))
- },
- is: function (e) {
- return !!e && ("string" == typeof e ? ke.test(e) ? X(e, this.context).index(this[0]) >= 0 : X.filter(e, this).length > 0 : this.filter(e).length > 0)
- },
- closest: function (e, t) {
- for (var n, r = 0, i = this.length, o = [], a = ke.test(e) || "string" != typeof e ? X(e, t || this.context) : 0; i > r; r++)
- for (n = this[r]; n && n.ownerDocument && n !== t && 11 !== n.nodeType;) {
- if (a ? a.index(n) > -1 : X.find.matchesSelector(n, e)) {
- o.push(n);
- break
- }
- n = n.parentNode
- }
- return this.pushStack(o.length > 1 ? X.unique(o) : o)
- },
- index: function (e) {
- return e ? "string" == typeof e ? X.inArray(this[0], X(e)) : X.inArray(e.jquery ? e[0] : e, this) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1
- },
- add: function (e, t) {
- var n = "string" == typeof e ? X(e, t) : X.makeArray(e && e.nodeType ? [e] : e),
- r = X.merge(this.get(), n);
- return this.pushStack(X.unique(r))
- },
- addBack: function (e) {
- return this.add(null == e ? this.prevObject : this.prevObject.filter(e))
- }
- }), X.fn.andSelf = X.fn.addBack, X.each({
- parent: function (e) {
- var t = e.parentNode;
- return t && 11 !== t.nodeType ? t : null
- },
- parents: function (e) {
- return X.dir(e, "parentNode")
- },
- parentsUntil: function (e, t, n) {
- return X.dir(e, "parentNode", n)
- },
- next: function (e) {
- return l(e, "nextSibling")
- },
- prev: function (e) {
- return l(e, "previousSibling")
- },
- nextAll: function (e) {
- return X.dir(e, "nextSibling")
- },
- prevAll: function (e) {
- return X.dir(e, "previousSibling")
- },
- nextUntil: function (e, t, n) {
- return X.dir(e, "nextSibling", n)
- },
- prevUntil: function (e, t, n) {
- return X.dir(e, "previousSibling", n)
- },
- siblings: function (e) {
- return X.sibling((e.parentNode || {}).firstChild, e)
- },
- children: function (e) {
- return X.sibling(e.firstChild)
- },
- contents: function (e) {
- return X.nodeName(e, "iframe") ? e.contentDocument || e.contentWindow.document : X.merge([], e.childNodes)
- }
- }, function (e, t) {
- X.fn[e] = function (n, r) {
- var i = X.map(this, t, n);
- return we.test(e) || (r = n), r && "string" == typeof r && (i = X.filter(r, i)), i = this.length > 1 && !Se[e] ? X.unique(i) : i, this.length > 1 && Ce.test(e) && (i = i.reverse()), this.pushStack(i)
- }
- }), X.extend({
- filter: function (e, t, n) {
- return n && (e = ":not(" + e + ")"), 1 === t.length ? X.find.matchesSelector(t[0], e) ? [t[0]] : [] : X.find.matches(e, t)
- },
- dir: function (e, n, r) {
- for (var i = [], o = e[n]; o && 9 !== o.nodeType && (r === t || 1 !== o.nodeType || !X(o).is(r));) 1 === o.nodeType && i.push(o), o = o[n];
- return i
- },
- sibling: function (e, t) {
- for (var n = []; e; e = e.nextSibling) 1 === e.nodeType && e !== t && n.push(e);
- return n
- }
- });
- var Ne = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",
- Me = / jQuery\d+="(?:null|\d+)"/g,
- Le = new RegExp("<(?:" + Ne + ")[\\s/>]", "i"),
- De = /^\s+/,
- Ae = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,
- je = /<([\w:]+)/,
- qe = /<tbody/i,
- _e = /<|&#?\w+;/,
- Oe = /<(?:script|style|link)/i,
- Pe = /^(?:checkbox|radio)$/i,
- Re = /checked\s*(?:[^=]|=\s*.checked.)/i,
- Be = /^$|\/(?:java|ecma)script/i,
- He = /^true\/(.*)/,
- Fe = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,
- Ie = {
- option: [1, "<select multiple='multiple'>", "</select>"],
- legend: [1, "<fieldset>", "</fieldset>"],
- area: [1, "<map>", "</map>"],
- param: [1, "<object>", "</object>"],
- thead: [1, "<table>", "</table>"],
- tr: [2, "<table><tbody>", "</tbody></table>"],
- col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"],
- td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
- _default: X.support.htmlSerialize ? [0, "", ""] : [1, "X<div>", "</div>"]
- },
- $e = d(j),
- We = $e.appendChild(j.createElement("div"));
- Ie.optgroup = Ie.option, Ie.tbody = Ie.tfoot = Ie.colgroup = Ie.caption = Ie.thead, Ie.th = Ie.td, X.fn.extend({
- text: function (e) {
- return X.access(this, function (e) {
- return e === t ? X.text(this) : this.empty().append((this[0] && this[0].ownerDocument || j).createTextNode(e))
- }, null, e, arguments.length)
- },
- wrapAll: function (e) {
- if (X.isFunction(e)) return this.each(function (t) {
- X(this).wrapAll(e.call(this, t))
- });
- if (this[0]) {
- var t = X(e, this[0].ownerDocument).eq(0).clone(!0);
- this[0].parentNode && t.insertBefore(this[0]), t.map(function () {
- for (var e = this; e.firstChild && 1 === e.firstChild.nodeType;) e = e.firstChild;
- return e
- }).append(this)
- }
- return this
- },
- wrapInner: function (e) {
- return X.isFunction(e) ? this.each(function (t) {
- X(this).wrapInner(e.call(this, t))
- }) : this.each(function () {
- var t = X(this),
- n = t.contents();
- n.length ? n.wrapAll(e) : t.append(e)
- })
- },
- wrap: function (e) {
- var t = X.isFunction(e);
- return this.each(function (n) {
- X(this).wrapAll(t ? e.call(this, n) : e)
- })
- },
- unwrap: function () {
- return this.parent().each(function () {
- X.nodeName(this, "body") || X(this).replaceWith(this.childNodes)
- }).end()
- },
- append: function () {
- return this.domManip(arguments, !0, function (e) {
- (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) && this.appendChild(e)
- })
- },
- prepend: function () {
- return this.domManip(arguments, !0, function (e) {
- (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) && this.insertBefore(e, this.firstChild)
- })
- },
- before: function () {
- return this.domManip(arguments, !1, function (e) {
- this.parentNode && this.parentNode.insertBefore(e, this)
- })
- },
- after: function () {
- return this.domManip(arguments, !1, function (e) {
- this.parentNode && this.parentNode.insertBefore(e, this.nextSibling)
- })
- },
- remove: function (e, t) {
- for (var n, r = 0; null != (n = this[r]); r++)(!e || X.filter(e, [n]).length > 0) && (t || 1 !== n.nodeType || X.cleanData(b(n)), n.parentNode && (t && X.contains(n.ownerDocument, n) && g(b(n, "script")), n.parentNode.removeChild(n)));
- return this
- },
- empty: function () {
- for (var e, t = 0; null != (e = this[t]); t++) {
- for (1 === e.nodeType && X.cleanData(b(e, !1)); e.firstChild;) e.removeChild(e.firstChild);
- e.options && X.nodeName(e, "select") && (e.options.length = 0)
- }
- return this
- },
- clone: function (e, t) {
- return e = null == e ? !1 : e, t = null == t ? e : t, this.map(function () {
- return X.clone(this, e, t)
- })
- },
- html: function (e) {
- return X.access(this, function (e) {
- var n = this[0] || {},
- r = 0,
- i = this.length;
- if (e === t) return 1 === n.nodeType ? n.innerHTML.replace(Me, "") : t;
- if ("string" == typeof e && !Oe.test(e) && (X.support.htmlSerialize || !Le.test(e)) && (X.support.leadingWhitespace || !De.test(e)) && !Ie[(je.exec(e) || ["", ""])[1].toLowerCase()]) {
- e = e.replace(Ae, "<$1></$2>");
- try {
- for (; i > r; r++) n = this[r] || {}, 1 === n.nodeType && (X.cleanData(b(n, !1)), n.innerHTML = e);
- n = 0
- } catch (o) {}
- }
- n && this.empty().append(e)
- }, null, e, arguments.length)
- },
- replaceWith: function (e) {
- var t = X.isFunction(e);
- return t || "string" == typeof e || (e = X(e).not(this).detach()), this.domManip([e], !0, function (e) {
- var t = this.nextSibling,
- n = this.parentNode;
- n && (X(this).remove(), n.insertBefore(e, t))
- })
- },
- detach: function (e) {
- return this.remove(e, !0)
- },
- domManip: function (e, n, r) {
- e = R.apply([], e);
- var i, o, a, s, u, c, l = 0,
- p = this.length,
- d = this,
- g = p - 1,
- v = e[0],
- y = X.isFunction(v);
- if (y || !(1 >= p || "string" != typeof v || X.support.checkClone) && Re.test(v)) return this.each(function (i) {
- var o = d.eq(i);
- y && (e[0] = v.call(this, i, n ? o.html() : t)), o.domManip(e, n, r)
- });
- if (p && (c = X.buildFragment(e, this[0].ownerDocument, !1, this), i = c.firstChild, 1 === c.childNodes.length && (c = i), i)) {
- for (n = n && X.nodeName(i, "tr"), s = X.map(b(c, "script"), h), a = s.length; p > l; l++) o = c, l !== g && (o = X.clone(o, !0, !0), a && X.merge(s, b(o, "script"))), r.call(n && X.nodeName(this[l], "table") ? f(this[l], "tbody") : this[l], o, l);
- if (a)
- for (u = s[s.length - 1].ownerDocument, X.map(s, m), l = 0; a > l; l++) o = s[l], Be.test(o.type || "") && !X._data(o, "globalEval") && X.contains(u, o) && (o.src ? X.ajax({
- url: o.src,
- type: "GET",
- dataType: "script",
- async: !1,
- global: !1,
- "throws": !0
- }) : X.globalEval((o.text || o.textContent || o.innerHTML || "").replace(Fe, "")));
- c = i = null
- }
- return this
- }
- }), X.each({
- appendTo: "append",
- prependTo: "prepend",
- insertBefore: "before",
- insertAfter: "after",
- replaceAll: "replaceWith"
- }, function (e, t) {
- X.fn[e] = function (e) {
- for (var n, r = 0, i = [], o = X(e), a = o.length - 1; a >= r; r++) n = r === a ? this : this.clone(!0), X(o[r])[t](n), B.apply(i, n.get());
- return this.pushStack(i)
- }
- }), X.extend({
- clone: function (e, t, n) {
- var r, i, o, a, s, u = X.contains(e.ownerDocument, e);
- if (X.support.html5Clone || X.isXMLDoc(e) || !Le.test("<" + e.nodeName + ">") ? o = e.cloneNode(!0) : (We.innerHTML = e.outerHTML, We.removeChild(o = We.firstChild)), !(X.support.noCloneEvent && X.support.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || X.isXMLDoc(e)))
- for (r = b(o), s = b(e), a = 0; null != (i = s[a]); ++a) r[a] && y(i, r[a]);
- if (t)
- if (n)
- for (s = s || b(e), r = r || b(o), a = 0; null != (i = s[a]); a++) v(i, r[a]);
- else v(e, o);
- return r = b(o, "script"), r.length > 0 && g(r, !u && b(e, "script")), r = s = i = null, o
- },
- buildFragment: function (e, t, n, r) {
- for (var i, o, a, s, u, c, l, p = e.length, f = d(t), h = [], m = 0; p > m; m++)
- if (o = e[m], o || 0 === o)
- if ("object" === X.type(o)) X.merge(h, o.nodeType ? [o] : o);
- else if (_e.test(o)) {
- for (s = s || f.appendChild(t.createElement("div")), u = (je.exec(o) || ["", ""])[1].toLowerCase(), l = Ie[u] || Ie._default, s.innerHTML = l[1] + o.replace(Ae, "<$1></$2>") + l[2], i = l[0]; i--;) s = s.lastChild;
- if (!X.support.leadingWhitespace && De.test(o) && h.push(t.createTextNode(De.exec(o)[0])), !X.support.tbody)
- for (o = "table" !== u || qe.test(o) ? "<table>" !== l[1] || qe.test(o) ? 0 : s : s.firstChild, i = o && o.childNodes.length; i--;) X.nodeName(c = o.childNodes[i], "tbody") && !c.childNodes.length && o.removeChild(c);
- for (X.merge(h, s.childNodes), s.textContent = ""; s.firstChild;) s.removeChild(s.firstChild);
- s = f.lastChild
- } else h.push(t.createTextNode(o));
- for (s && f.removeChild(s), X.support.appendChecked || X.grep(b(h, "input"), x), m = 0; o = h[m++];)
- if ((!r || -1 === X.inArray(o, r)) && (a = X.contains(o.ownerDocument, o), s = b(f.appendChild(o), "script"), a && g(s), n))
- for (i = 0; o = s[i++];) Be.test(o.type || "") && n.push(o);
- return s = null, f
- },
- cleanData: function (e, t) {
- for (var n, r, i, o, a = 0, s = X.expando, u = X.cache, c = X.support.deleteExpando, l = X.event.special; null != (n = e[a]); a++)
- if ((t || X.acceptData(n)) && (i = n[s], o = i && u[i])) {
- if (o.events)
- for (r in o.events) l[r] ? X.event.remove(n, r) : X.removeEvent(n, r, o.handle);
- u[i] && (delete u[i], c ? delete n[s] : typeof n.removeAttribute !== A ? n.removeAttribute(s) : n[s] = null, O.push(i))
- }
- }
- });
- var Xe = /%20/g,
- Ke = /\[\]$/,
- ze = /\r?\n/g,
- Ue = /^(?:submit|button|image|reset|file)$/i,
- Ye = /^(?:input|select|textarea|keygen)/i;
- X.fn.extend({
- serialize: function () {
- return X.param(this.serializeArray())
- },
- serializeArray: function () {
- return this.map(function () {
- var e = X.prop(this, "elements");
- return e ? X.makeArray(e) : this
- }).filter(function () {
- var e = this.type;
- return this.name && !X(this).is(":disabled") && Ye.test(this.nodeName) && !Ue.test(e) && (this.checked || !Pe.test(e))
- }).map(function (e, t) {
- var n = X(this).val();
- return null == n ? null : X.isArray(n) ? X.map(n, function (e) {
- return {
- name: t.name,
- value: e.replace(ze, "\r\n")
- }
- }) : {
- name: t.name,
- value: n.replace(ze, "\r\n")
- }
- }).get()
- }
- }), X.param = function (e, n) {
- var r, i = [],
- o = function (e, t) {
- t = X.isFunction(t) ? t() : null == t ? "" : t, i[i.length] = encodeURIComponent(e) + "=" + encodeURIComponent(t)
- };
- if (n === t && (n = X.ajaxSettings && X.ajaxSettings.traditional), X.isArray(e) || e.jquery && !X.isPlainObject(e)) X.each(e, function () {
- o(this.name, this.value)
- });
- else
- for (r in e) E(r, e[r], n, o);
- return i.join("&").replace(Xe, "+")
- }, X.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 (e, t) {
- X.fn[t] = function (e, n) {
- return arguments.length > 0 ? this.on(t, null, e, n) : this.trigger(t)
- }
- }), X.fn.hover = function (e, t) {
- return this.mouseenter(e).mouseleave(t || e)
- };
- var Je, Ve, Ge = X.now(),
- Qe = /\?/,
- Ze = /#.*$/,
- et = /([?&])_=[^&]*/,
- tt = /^(.*?):[ \t]*([^\r\n]*)\r?$/gm,
- nt = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
- rt = /^(?:GET|HEAD)$/,
- it = /^\/\//,
- ot = /^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,
- at = X.fn.load,
- st = {},
- ut = {},
- ct = "*/".concat("*");
- try {
- Ve = q.href
- } catch (lt) {
- Ve = j.createElement("a"), Ve.href = "", Ve = Ve.href
- }
- Je = ot.exec(Ve.toLowerCase()) || [], X.fn.load = function (e, n, r) {
- if ("string" != typeof e && at) return at.apply(this, arguments);
- var i, o, a, s = this,
- u = e.indexOf(" ");
- return u >= 0 && (i = e.slice(u, e.length), e = e.slice(0, u)), X.isFunction(n) ? (r = n, n = t) : n && "object" == typeof n && (a = "POST"), s.length > 0 && X.ajax({
- url: e,
- type: a,
- dataType: "html",
- data: n
- }).done(function (e) {
- o = arguments, s.html(i ? X("<div>").append(X.parseHTML(e)).find(i) : e)
- }).complete(r && function (e, t) {
- s.each(r, o || [e.responseText, t, e])
- }), this
- }, X.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function (e, t) {
- X.fn[t] = function (e) {
- return this.on(t, e)
- }
- }), X.each(["get", "post"], function (e, n) {
- X[n] = function (e, r, i, o) {
- return X.isFunction(r) && (o = o || i, i = r, r = t), X.ajax({
- url: e,
- type: n,
- dataType: o,
- data: r,
- success: i
- })
- }
- }), X.extend({
- active: 0,
- lastModified: {},
- etag: {},
- ajaxSettings: {
- url: Ve,
- type: "GET",
- isLocal: nt.test(Je[1]),
- global: !0,
- processData: !0,
- async: !0,
- contentType: "application/x-www-form-urlencoded; charset=UTF-8",
- accepts: {
- "*": ct,
- text: "text/plain",
- html: "text/html",
- xml: "application/xml, text/xml",
- json: "application/json, text/javascript"
- },
- contents: {
- xml: /xml/,
- html: /html/,
- json: /json/
- },
- responseFields: {
- xml: "responseXML",
- text: "responseText"
- },
- converters: {
- "* text": e.String,
- "text html": !0,
- "text json": X.parseJSON,
- "text xml": X.parseXML
- },
- flatOptions: {
- url: !0,
- context: !0
- }
- },
- ajaxSetup: function (e, t) {
- return t ? T(T(e, X.ajaxSettings), t) : T(X.ajaxSettings, e)
- },
- ajaxPrefilter: w(st),
- ajaxTransport: w(ut),
- ajax: function (e, n) {
- function r(e, n, r, i) {
- var o, p, y, b, E, C = n;
- 2 !== x && (x = 2, u && clearTimeout(u), l = t, s = i || "", w.readyState = e > 0 ? 4 : 0, r && (b = k(d, w, r)), e >= 200 && 300 > e || 304 === e ? (d.ifModified && (E = w.getResponseHeader("Last-Modified"), E && (X.lastModified[a] = E), E = w.getResponseHeader("etag"), E && (X.etag[a] = E)), 204 === e ? (o = !0, C = "nocontent") : 304 === e ? (o = !0, C = "notmodified") : (o = S(d, b), C = o.state, p = o.data, y = o.error, o = !y)) : (y = C, (e || !C) && (C = "error", 0 > e && (e = 0))), w.status = e, w.statusText = (n || C) + "", o ? m.resolveWith(f, [p, C, w]) : m.rejectWith(f, [w, C, y]), w.statusCode(v), v = t, c && h.trigger(o ? "ajaxSuccess" : "ajaxError", [w, d, o ? p : y]), g.fireWith(f, [w, C]), c && (h.trigger("ajaxComplete", [w, d]), --X.active || X.event.trigger("ajaxStop")))
- }
- "object" == typeof e && (n = e, e = t), n = n || {};
- var i, o, a, s, u, c, l, p, d = X.ajaxSetup({}, n),
- f = d.context || d,
- h = d.context && (f.nodeType || f.jquery) ? X(f) : X.event,
- m = X.Deferred(),
- g = X.Callbacks("once memory"),
- v = d.statusCode || {},
- y = {},
- b = {},
- x = 0,
- E = "canceled",
- w = {
- readyState: 0,
- getResponseHeader: function (e) {
- var t;
- if (2 === x) {
- if (!p)
- for (p = {}; t = tt.exec(s);) p[t[1].toLowerCase()] = t[2];
- t = p[e.toLowerCase()]
- }
- return null == t ? null : t
- },
- getAllResponseHeaders: function () {
- return 2 === x ? s : null
- },
- setRequestHeader: function (e, t) {
- var n = e.toLowerCase();
- return x || (e = b[n] = b[n] || e, y[e] = t), this
- },
- overrideMimeType: function (e) {
- return x || (d.mimeType = e), this
- },
- statusCode: function (e) {
- var t;
- if (e)
- if (2 > x)
- for (t in e) v[t] = [v[t], e[t]];
- else w.always(e[w.status]);
- return this
- },
- abort: function (e) {
- var t = e || E;
- return l && l.abort(t), r(0, t), this
- }
- };
- if (m.promise(w).complete = g.add, w.success = w.done, w.error = w.fail, d.url = ((e || d.url || Ve) + "").replace(Ze, "").replace(it, Je[1] + "//"), d.type = n.method || n.type || d.method || d.type, d.dataTypes = X.trim(d.dataType || "*").toLowerCase().match(K) || [""], null == d.crossDomain && (i = ot.exec(d.url.toLowerCase()), d.crossDomain = !(!i || i[1] === Je[1] && i[2] === Je[2] && (i[3] || ("http:" === i[1] ? 80 : 443)) == (Je[3] || ("http:" === Je[1] ? 80 : 443)))), d.data && d.processData && "string" != typeof d.data && (d.data = X.param(d.data, d.traditional)), C(st, d, n, w), 2 === x) return w;
- c = d.global, c && 0 === X.active++ && X.event.trigger("ajaxStart"), d.type = d.type.toUpperCase(), d.hasContent = !rt.test(d.type), a = d.url, d.hasContent || (d.data && (a = d.url += (Qe.test(a) ? "&" : "?") + d.data, delete d.data), d.cache === !1 && (d.url = et.test(a) ? a.replace(et, "$1_=" + Ge++) : a + (Qe.test(a) ? "&" : "?") + "_=" + Ge++)), d.ifModified && (X.lastModified[a] && w.setRequestHeader("If-Modified-Since", X.lastModified[a]), X.etag[a] && w.setRequestHeader("If-None-Match", X.etag[a])), (d.data && d.hasContent && d.contentType !== !1 || n.contentType) && w.setRequestHeader("Content-Type", d.contentType), w.setRequestHeader("Accept", d.dataTypes[0] && d.accepts[d.dataTypes[0]] ? d.accepts[d.dataTypes[0]] + ("*" !== d.dataTypes[0] ? ", " + ct + "; q=0.01" : "") : d.accepts["*"]);
- for (o in d.headers) w.setRequestHeader(o, d.headers[o]);
- if (d.beforeSend && (d.beforeSend.call(f, w, d) === !1 || 2 === x)) return w.abort();
- E = "abort";
- for (o in {
- success: 1,
- error: 1,
- complete: 1
- }) w[o](d[o]);
- if (l = C(ut, d, n, w)) {
- w.readyState = 1, c && h.trigger("ajaxSend", [w, d]), d.async && d.timeout > 0 && (u = setTimeout(function () {
- w.abort("timeout")
- }, d.timeout));
- try {
- x = 1, l.send(y, r)
- } catch (T) {
- if (!(2 > x)) throw T;
- r(-1, T)
- }
- } else r(-1, "No Transport");
- return w
- },
- getScript: function (e, n) {
- return X.get(e, t, n, "script")
- },
- getJSON: function (e, t, n) {
- return X.get(e, t, n, "json")
- }
- }), X.ajaxSetup({
- accepts: {
- script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
- },
- contents: {
- script: /(?:java|ecma)script/
- },
- converters: {
- "text script": function (e) {
- return X.globalEval(e), e
- }
- }
- }), X.ajaxPrefilter("script", function (e) {
- e.cache === t && (e.cache = !1), e.crossDomain && (e.type = "GET", e.global = !1)
- }), X.ajaxTransport("script", function (e) {
- if (e.crossDomain) {
- var n, r = j.head || X("head")[0] || j.documentElement;
- return {
- send: function (t, i) {
- n = j.createElement("script"), n.async = !0, e.scriptCharset && (n.charset = e.scriptCharset), n.src = e.url, n.onload = n.onreadystatechange = function (e, t) {
- (t || !n.readyState || /loaded|complete/.test(n.readyState)) && (n.onload = n.onreadystatechange = null, n.parentNode && n.parentNode.removeChild(n), n = null, t || i(200, "success"))
- }, r.insertBefore(n, r.firstChild)
- },
- abort: function () {
- n && n.onload(t, !0)
- }
- }
- }
- });
- var pt = [],
- dt = /(=)\?(?=&|$)|\?\?/;
- X.ajaxSetup({
- jsonp: "callback",
- jsonpCallback: function () {
- var e = pt.pop() || X.expando + "_" + Ge++;
- return this[e] = !0, e
- }
- }), X.ajaxPrefilter("json jsonp", function (n, r, i) {
- var o, a, s, u = n.jsonp !== !1 && (dt.test(n.url) ? "url" : "string" == typeof n.data && !(n.contentType || "").indexOf("application/x-www-form-urlencoded") && dt.test(n.data) && "data");
- return u || "jsonp" === n.dataTypes[0] ? (o = n.jsonpCallback = X.isFunction(n.jsonpCallback) ? n.jsonpCallback() : n.jsonpCallback, u ? n[u] = n[u].replace(dt, "$1" + o) : n.jsonp !== !1 && (n.url += (Qe.test(n.url) ? "&" : "?") + n.jsonp + "=" + o), n.converters["script json"] = function () {
- return s || X.error(o + " was not called"), s[0]
- }, n.dataTypes[0] = "json", a = e[o], e[o] = function () {
- s = arguments
- }, i.always(function () {
- e[o] = a, n[o] && (n.jsonpCallback = r.jsonpCallback, pt.push(o)), s && X.isFunction(a) && a(s[0]), s = a = t
- }), "script") : void 0
- });
- var ft, ht, mt = 0,
- gt = e.ActiveXObject && function () {
- var e;
- for (e in ft) ft[e](t, !0)
- };
- X.ajaxSettings.xhr = e.ActiveXObject ? function () {
- return !this.isLocal && N() || M()
- } : N, ht = X.ajaxSettings.xhr(), X.support.cors = !!ht && "withCredentials" in ht, ht = X.support.ajax = !!ht, ht && X.ajaxTransport(function (n) {
- if (!n.crossDomain || X.support.cors) {
- var r;
- return {
- send: function (i, o) {
- var a, s, u = n.xhr();
- if (n.username ? u.open(n.type, n.url, n.async, n.username, n.password) : u.open(n.type, n.url, n.async), n.xhrFields)
- for (s in n.xhrFields) u[s] = n.xhrFields[s];
- n.mimeType && u.overrideMimeType && u.overrideMimeType(n.mimeType), n.crossDomain || i["X-Requested-With"] || (i["X-Requested-With"] = "XMLHttpRequest");
- try {
- for (s in i) u.setRequestHeader(s, i[s])
- } catch (c) {}
- u.send(n.hasContent && n.data || null), r = function (e, i) {
- var s, c, l, p;
- try {
- if (r && (i || 4 === u.readyState))
- if (r = t, a && (u.onreadystatechange = X.noop, gt && delete ft[a]), i) 4 !== u.readyState && u.abort();
- else {
- p = {}, s = u.status, c = u.getAllResponseHeaders(), "string" == typeof u.responseText && (p.text = u.responseText);
- try {
- l = u.statusText
- } catch (d) {
- l = ""
- }
- s || !n.isLocal || n.crossDomain ? 1223 === s && (s = 204) : s = p.text ? 200 : 404
- }
- } catch (f) {
- i || o(-1, f)
- }
- p && o(s, l, p, c)
- }, n.async ? 4 === u.readyState ? setTimeout(r) : (a = ++mt, gt && (ft || (ft = {}, X(e).unload(gt)), ft[a] = r), u.onreadystatechange = r) : r()
- },
- abort: function () {
- r && r(t, !0)
- }
- }
- }
- }), "function" == typeof ellipsis.define && ellipsis.define.amd && ellipsis.define.amd.jQuery && ellipsis.define("ell-jquery", [], function () {
- return X
- })
- }(window), ellipsis.define("jsonh", ["require", "exports", "module"], function (e, t, n) {
- var r, i = r = function (e, t) {
- "use strict";
- function n(t) {
- for (var n, r, i = t.length, o = d(i ? t[0] : {}), a = o.length, s = e(i * a), u = 0, c = 0; i > u; ++u)
- for (r = t[u], n = 0; a > n; s[c++] = r[o[n++]]);
- return p.call([a], o, s)
- }
- function r(t) {
- for (var n, r, i = t.length, o = t[0], a = e((i - o - 1) / o || 0), s = 1 + o, u = 0; i > s;)
- for (a[u++] = r = {}, n = 0; o > n; r[t[++n]] = t[s++]);
- return a
- }
- function i(e) {
- return function (t) {
- for (var n, r, i, o = this, a = t, s = 0, u = o.length; u > s; ++s) f(i = a[r = o[s]]) && (n = s + 1, a[r] = u > n ? h.call(i, e, o.slice(n)) : e(i)), a = a[r];
- return t
- }
- }
- function o(e) {
- return function (t, n) {
- for (var r = f(t), i = p.call(l, t), o = p.call(l, n), a = 0, s = o.length; s > a; ++a) i = h.call(i, e, o[a].split("."));
- return r ? i : i[0]
- }
- }
- function a(e, t) {
- return t ? m(e, t) : n(e)
- }
- function s(e, t) {
- return t ? g(e, t) : r(e)
- }
- function u(e, t, n, r) {
- return v(a(e, r), t, n)
- }
- function c(e, t, n) {
- return s(y(e, t), n)
- }
- var l = [],
- p = l.concat,
- d = Object.keys || function (e) {
- var t, n = [];
- for (t in e) e.hasOwnProperty(t) && n.push(t);
- return n
- },
- f = e.isArray || function (e, t) {
- return t = e.call(l),
- function (n) {
- return e.call(n) == t
- }
- }({}.toString),
- h = l.map || function (t, n) {
- for (var r = this, i = r.length, o = e(i); i--; o[i] = t.call(n, r[i], i, r));
- return o
- },
- m = o(i(n)),
- g = o(i(r)),
- v = t.stringify,
- y = t.parse;
- return {
- pack: a,
- parse: c,
- stringify: u,
- unpack: s
- }
- }(Array, JSON);
- "undefined" != typeof n && n.exports && (n.exports = i)
- }), ellipsis.define("Core/EllipsisCore", ["require", "exports"], function (e, t) {
- "use strict";
- var n = function () {
- function e() {}
- return e.prototype.init = function () {}, e.prototype.uninit = function () {}, e.prototype.harvest = function () {}, e
- }();
- t.CollectionStrategy = n
- });
- var __extends = this && this.__extends || function (e, t) {
- function n() {
- this.constructor = e
- }
- for (var r in t) t.hasOwnProperty(r) && (e[r] = t[r]);
- e.prototype = null === t ? Object.create(t) : (n.prototype = t.prototype, new n)
- };
- ellipsis.define("BrowserTouchEvents", ["require", "exports", "./Core/EllipsisCore", "ell-jquery"], function (e, t, n, r) {
- "use strict";
- var i = n.CollectionStrategy,
- o = r,
- a = function (e) {
- function t() {
- var t = this;
- e.apply(this, arguments), this.strokeEndDuration = 300, this.supportsTouchEvents = "ontouchstart" in document, this._touchMoveCount = 0, this.touchMoveCount = function () {
- return t._touchMoveCount
- }, this.currentTouchData = {}, this.onTouchMove = function (e) {
- try {
- var n = new Date;
- if (t._touchMoveCount += 1, !t.lastTouchEvent) return void(t.lastTouchEvent = t.copyTouch(e));
- var r = t.copyTouch(e);
- t.updateTouchData(r, n)
- } catch (i) {
- console && console.warn("Error in Ellipsis.TouchMoveCollection.onTouchMove():" + i)
- }
- }, this.onTouchEnd = function (e) {
- try {
- new Date;
- t._touchMoveCount += 1;
- var n = t.copyTouch(e);
- t.endTouchStroke(n)
- } catch (r) {
- console && console.warn("Error in Ellipsis.TouchMoveCollection.onTouchEnd():" + r)
- }
- }, this.strokeData = []
- }
- return __extends(t, e), t.prototype.harvest = function () {
- var e = {
- touchData: (this.strokeData || []).map(function (e) {
- return e.getData()
- })
- };
- return e
- }, t.prototype.init = function () {
- this.subscribeTouchEvents()
- }, t.prototype.uninit = function () {
- this.unsubscribeTouchEvents()
- }, t.prototype.subscribeTouchEvents = function () {
- o(document).addEventListener("touchstart", this.onTouchMove, !0), o(document).addEventListener("touchmove", this.onTouchMove, !0), o(document).addEventListener("touchend", this.onTouchEnd, !0), o(document).addEventListener("touchcancel", this.onTouchEnd, !0)
- }, t.prototype.unsubscribeTouchEvents = function () {
- o(document).removeEventListener("touchstart", this.onTouchMove, !0), o(document).removeEventListener("touchmove", this.onTouchMove, !0), o(document).removeEventListener("touchend", this.onTouchEnd, !0), o(document).removeEventListener("touchcancel", this.onTouchEnd, !0)
- }, t.prototype.updateTouchData = function (e, t) {
- var n = this;
- o.each(e.touches, function (e, r) {
- var i = n.currentTouchData[r.identifier];
- i ? i.addTouch(r, t) : n.currentTouchData[r.identifier] = new s(r, t)
- })
- }, t.prototype.endTouchStroke = function (e) {
- var t = this;
- o.each(e.changedTouches, function (e, n) {
- var r = t.currentTouchData[n.identifier];
- r && t.strokeData.push(r), t.currentTouchData[n.identifier] = null
- })
- }, t.prototype.copyTouch = function (e) {
- return o.extend(!0, {}, e)
- }, t
- }(i);
- t.TouchMoveCollection = a;
- var s = function () {
- function e(e, t) {
- this.distance = 0, this.x_distance = 0, this.y_distance = 0, this.displacement = 0, this.x_displacement = 0, this.y_displacement = 0, this.elapsedTime = 0, this.eventCount = 0, this.prevTouch = e, this.firstTouch || (this.firstTouch = e), this.eventCount += 1, this.prevEventTime = t
- }
- return e.prototype.addTouch = function (e, t) {
- this.assignDistance(this.prevTouch, e), this.assignDisplacement(e), this.eventCount += 1, this.elapsedTime += t.getTime() - this.prevEventTime.getTime(), this.prevTouch = e, this.firstTouch || (this.firstTouch = e)
- }, e.prototype.getData = function () {
- return {
- distance: this.distance,
- x_distance: this.x_distance,
- y_distance: this.y_distance,
- displacement: this.displacement,
- x_displacement: this.x_displacement,
- y_displacement: this.y_displacement,
- elapsedTime: this.elapsedTime,
- eventCount: this.eventCount
- }
- }, e.prototype.assignDistance = function (e, t) {
- var n = Math.abs(t.clientX - e.clientX);
- this.x_distance = (this.x_distance || 0) + n, n *= n;
- var r = this.y_distance = Math.abs(t.clientY - e.clientY);
- this.y_distance = (this.y_distance || 0) + r, r *= r, this.distance = (this.distance || 0) + Math.sqrt(n + r)
- }, e.prototype.assignDisplacement = function (e) {
- var t = this.x_displacement = Math.abs(e.clientX - this.firstTouch.clientX);
- t *= t;
- var n = this.y_displacement = Math.abs(e.clientY - this.firstTouch.clientY);
- n *= n, this.displacement = Math.sqrt(t + n)
- }, e
- }()
- });
- var __extends = this && this.__extends || function (e, t) {
- function n() {
- this.constructor = e
- }
- for (var r in t) t.hasOwnProperty(r) && (e[r] = t[r]);
- e.prototype = null === t ? Object.create(t) : (n.prototype = t.prototype, new n)
- };
- ellipsis.define("ellipsis", ["require", "exports", "ell-jquery", "jsonh", "Core/EllipsisCore", "BrowserTouchEvents"], function (e, t, n, r, i, o) {
- "use strict";
- function a() {
- return document.getElementsByTagName("script")
- }
- var s = i.CollectionStrategy,
- u = o.TouchMoveCollection,
- c = n,
- l = c,
- p = r,
- d = function () {
- function e(n, r) {
- var i = e.normalizeEvent(n);
- if (e.isElement(i.target)) {
- var o = i.target,
- a = e.getTargetProperties(o);
- this.targetid = a.id, this.targethash = a.hashCode, this.targettag = a.tagName
- }
- this.timeStamp = i.timeStamp ? i.timeStamp : n.timeStamp, this.timeHandled = r, this.type = e.eventAbbreviation(i.type), t.currentSession.update()
- }
- return e.normalizeEvent = function (e) {
- return e[l.expando] ? e : l.event.fix(e)
- }, e.eventAbbreviation = function (e) {
- switch (e) {
- case "blur":
- return "bl";
- case "focus":
- return "fo";
- case "change":
- return "ch";
- case "click":
- return "cl";
- case "dblclick":
- return "dc";
- case "keydown":
- return "kd";
- case "keyup":
- return "ku";
- case "keypress":
- return "kp";
- case "mousedown":
- return "md";
- case "mousemove":
- return "mm";
- case "mouseout":
- return "mo";
- case "mouseover":
- return "mv";
- case "mouseup":
- return "mu";
- case "select":
- return "se";
- default:
- return e
- }
- }, e.isElement = function (e) {
- return "id" in e || "tagName" in e
- }, e.getTargetProperties = function (t) {
- var n = {};
- return n.id = t.id, n.tagName = t.tagName, n.hashCode = e.hashCode(c(t).getPath()), n
- }, e.hashCode = function (e) {
- var t = 0;
- if (0 == e.length) return t;
- for (var n = 0; n < e.length; n++) {
- var r = e.charCodeAt(n);
- t = (t << 5) - t + r, t &= t
- }
- return t
- }, e.Ctor = function () {
- var e = new Date;
- return e.setMilliseconds(0), null
- }(), e
- }(),
- f = function (e) {
- function t(t, n) {
- var r = d.normalizeEvent(t);
- e.call(this, r, n), this.button = r.which, this.screenX = r.screenX, this.screenY = r.screenY, this.clientX = r.clientX, this.clientY = r.clientY, this.pageX = r.pageX, this.pageY = r.pageY, this.ctrlKey = r.ctrlKey, this.shiftKey = r.shiftKey, this.altKey = r.altKey, this.metaKey = r.metaKey
- }
- return __extends(t, e), t.isMouseEvent = function (e) {
- return "button" in e
- }, t
- }(d),
- h = function (e) {
- function t(t, n, r, i) {
- void 0 === i && (i = 0);
- var o = d.normalizeEvent(t);
- e.call(this, o, r), this.altKey = o.altKey, this.ctrlKey = o.ctrlKey, this.metaKey = o.metaKey, this.shiftKey = o.shiftKey, this.keyIndex = n, this.keyOver = -1 == n ? !0 : !1, this.locale = "locale" in t ? t.locale : "", this.location = "location" in t ? t.location : 0, this.nikc = "INPUT" != this.targettag ? o.keyCode || o.which : 0
- }
- return __extends(t, e), t
- }(d),
- m = function (e) {
- function t(t, n, r) {
- e.call(this, t, r), this.textLength = n
- }
- return __extends(t, e), t
- }(d),
- g = function () {
- function e() {}
- return e
- }();
- t.Session = g;
- var v = function (e) {
- function t() {
- var n = this;
- e.call(this), this.records = [], this.sampleRate = 100, this.mouseMoveCount = 0, this.mouseMoveCount = 0, this.onMouseMove = function (e) {
- try {
- var r = new Date;
- n.mouseMoveCount += 1;
- var i = new f(e, r.getTime()),
- o = n.records.length - 1,
- a = n.records[o];
- if (0 > o) return void(o = n.records.push(i));
- var s = a.timeStamp ? a.timeStamp : void 0;
- s && i.timeStamp && i.timeStamp - s > n.sampleRate && (o = n.records.push(i)), n.records.length === t.maxEvents && n.unsubscribeMouseEvents()
- } catch (u) {
- console && console.warn("Error in Ellipsis.MouseMoveCollection():" + u)
- }
- }
- }
- return __extends(t, e), t.prototype.onMouseMove = function (e) {}, t.prototype.subscribeMouseEvents = function () {
- c(document).addEventListener("mousemove", this.onMouseMove, !0)
- }, t.prototype.unsubscribeMouseEvents = function () {
- c(document).removeEventListener("mousemove", this.onMouseMove, !0)
- }, t.prototype.harvest = function () {
- var e = {
- mouseMoveEvents: {
- mouseMoveCount: this.mouseMoveCount,
- sampleRate: this.sampleRate,
- events: p.pack(this.records)
- }
- };
- return this.records = [], this.mouseMoveCount = 0, e
- }, t.prototype.init = function () {
- this.subscribeMouseEvents()
- }, t.prototype.uninit = function () {
- this.unsubscribeMouseEvents()
- }, t.maxEvents = 50, t
- }(s),
- y = function (e) {
- function t() {
- e.apply(this, arguments), this.startTime = (new Date).getTime()
- }
- return __extends(t, e), t.prototype.harvest = function () {
- var e = (new Date).getTime(),
- t = {};
- return t.timeBalance = {
- startTime: this.startTime,
- collectTime: e,
- diff: e - this.startTime
- }, this.startTime = e, t
- }, t
- }(s),
- b = function (e) {
- function t() {
- var t = this;
- e.call(this), this.startRecords = [], this.endRecords = [], this.events = [], this.onEvent = function (e) {
- try {
- if (d.isElement(e.target)) {
- var n = e.target;
- if (void 0 === n) return;
- var r = n.tagName.toLowerCase();
- if ("input" === r && (r = n.type.toLowerCase()), "text" === r || "password" === r || "textarea" == r) {
- var i = new m(e, c(n).val().length, (new Date).getTime());
- t.events.push(i)
- }
- }
- } catch (o) {
- console && console.warn("Error in Ellipsis.TextInputLengthCollection():" + o)
- }
- }
- }
- return __extends(t, e), t.prototype.onEvent = function (e) {}, t.prototype.getCtrlLengths = function () {
- return c("TEXTAREA,INPUT[type='text'],INPUT[type='password']").map(function (e, t) {
- return {
- control: t,
- length: c(t).val().length
- }
- }).get()
- }, t.prototype.start = function () {
- this.startRecords = this.getCtrlLengths()
- }, t.CreateCustomEvent = function (e) {
- if (document.createEvent) {
- var t = document.createEvent("CustomEvent");
- t.initEvent("CustomEvent", !0, !0);
- var n = Object.assign(e, t);
- return n
- }
- if (document.createEventObject) {
- var r = document.createEventObject(),
- i = Object.assign(e, r);
- return i
- }
- }, t.toEventRecords = function (e, n) {
- for (var r = [], i = 0; i < e.length; i++) {
- var o = e[i],
- a = {
- type: "ellipsis_harvest",
- target: o.control,
- currentTarget: o.control
- },
- s = t.CreateCustomEvent(a),
- u = new m(s, o.length, void 0);
- r.push(u)
- }
- return r
- }, t.prototype.harvest = function () {
- this.stop();
- var e = {};
- return e.textInput = {
- startLength: p.pack(t.toEventRecords(this.startRecords, "ellipsis.init")),
- endLength: p.pack(t.toEventRecords(this.endRecords, "ellipsis.harvest")),
- events: p.pack(this.events)
- }, this.reset(), e
- }, t.prototype.init = function () {
- this.reset(), this.subscribe()
- }, t.prototype.subscribe = function () {
- c(document).addEventListener("blur", this.onEvent, !0), c(document).addEventListener("focus", this.onEvent, !0), c(document).addEventListener("change", this.onEvent, !0), c(document).addEventListener("select", this.onEvent, !0)
- }, t.prototype.uninit = function () {
- this.unsubscribe()
- }, t.prototype.unsubscribe = function () {
- c(document).removeEventListener("blur", this.onEvent, !0), c(document).removeEventListener("focus", this.onEvent, !0), c(document).removeEventListener("change", this.onEvent, !0), c(document).removeEventListener("select", this.onEvent, !0)
- }, t.prototype.stop = function () {
- this.endRecords = this.getCtrlLengths()
- }, t.prototype.reset = function () {
- this.start(), this.endRecords = []
- }, t
- }(s),
- x = function (e) {
- function t() {
- e.apply(this, arguments)
- }
- return __extends(t, e), t.prototype.harvest = function () {
- var e = {
- timeZone: (new Date).getTimezoneOffset(),
- historyLength: 0,
- pluginsLength: 0,
- navigator: {},
- window: {
- screenTop: 0,
- screenY: 0,
- screenX: 0,
- width: 0,
- height: 0
- },
- devicePixelRatio: 0,
- screen: {
- width: 0,
- height: 0,
- colorDepth: 0
- },
- javaEnabled: !1,
- localStorage: !1,
- sessionStorage: !1
- },
- t = window.history;
- t && t.go && (e.historyLength = t.length);
- var n = navigator.plugins;
- n && (e.pluginsLength = n.length), navigator && (e.navigator.appCodeName = navigator.appCodeName, e.navigator.appMinorVersion = navigator.appMinorVersion, e.navigator.appName = navigator.appName, e.navigator.appVersion = navigator.appVersion, e.navigator.cookieEnabled = navigator.cookieEnabled, e.navigator.onLine = navigator.onLine, e.navigator.platform = navigator.platform, e.navigator.userAgent = navigator.userAgent), void 0 !== window.screenTop && (e.window.screenTop = window.screenTop), void 0 !== window.screenY && (e.window.screenY = window.screenY), void 0 !== window.screenX && (e.window.screenX = window.screenX), void 0 !== window.devicePixelRatio && (e.devicePixelRatio = window.devicePixelRatio);
- var r = window.screen;
- r && void 0 !== r.width && void 0 !== r.height && (e.screen.width = r.width, e.screen.height = r.height), void 0 !== r.colorDepth && (e.screen.colorDepth = r.colorDepth), e.window.width = window.document.documentElement.clientwidth, e.window.height = window.document.documentElement.clientheight, navigator.javaEnabled && (e.javaEnabled = navigator.javaEnabled()), e.localStorage = this.testLocalStorage(), e.sessionStorage = this.testSessionStorage();
- var i = {};
- return i.browserFootprint = e, i
- }, t.prototype.testLocalStorage = function () {
- var e = "ellipsis";
- try {
- return localStorage.setItem(e, e), localStorage.removeItem(e), !0
- } catch (t) {
- return !1
- }
- }, t.prototype.testSessionStorage = function () {
- var e = "ellipsis";
- try {
- return sessionStorage.setItem(e, e), sessionStorage.removeItem(e), !0
- } catch (t) {
- return !1
- }
- }, t
- }(s);
- t.BrowserFootprintCollection = x;
- var E = function (e) {
- function t() {
- e.apply(this, arguments), this.pageCounts = {
- formCount: 0,
- inputCount: 0,
- pwdCount: 0,
- textareaCount: 0,
- scriptCount: 0,
- styleCount: 0,
- iframeCount: 0
- }
- }
- return __extends(t, e), t.prototype.init = function () {
- this.pageCounts.formCount = c("form").length, this.pageCounts.textareaCount = c("textarea").length, this.pageCounts.scriptCount = c("script").length, this.pageCounts.styleCount = c("link").length, this.pageCounts.iframeCount = c("iframe").length, this.pageCounts.inputCount = c('input[type="text"]').length, this.pageCounts.pwdCount = c('input[type="password"]').length
- }, t.prototype.harvest = function () {
- var e = {};
- return e.pageSnapshot = this.pageCounts, e
- }, t
- }(s),
- w = function () {
- function e() {
- var e = this;
- this.events = [], this.onKey = function (t) {
- try {
- var n = (new Date).getTime();
- if (!t) return;
- var r = t.keyCode ? t.keyCode : 0;
- if ("keydown" == t.type) {
- var i = e.kCodeMap[t.keyCode];
- if (void 0 !== i && !isNaN(i) && i) return;
- e.kCodeMap[t.keyCode] = n;
- var r = e.getAvailableIndex();
- r > -1 && (e.indexMap[r] = 0, e.kDownMap[t.keyCode] = r, e.kDownCount++, e.lastKDData = r)
- } else if ("keyup" == t.type) {
- if (delete e.kCodeMap[t.keyCode], r = e.kDownMap[t.keyCode], delete e.kDownMap[t.keyCode], void 0 === r) return;
- e.indexMap[r] = 1, e.kDownCount--
- } else "keypress" == t.type && (r = e.lastKDData);
- var o = new h(t, r, n);
- e.events.push(o)
- } catch (a) {
- console && console.warn("Error in Ellipsis.KeyboarEventsCollection():" + a)
- }
- }, this.reset()
- }
- return e.prototype.getAvailableIndex = function () {
- for (var e = -1, t = 0; 10 > t && (e = t, !this.indexMap[t]); t++);
- return e
- }, e.prototype.onKey = function (e) {}, e.prototype.harvest = function () {
- var e = {
- keyboardEvents: p.pack(this.events)
- };
- return this.reset(), e
- }, e.prototype.init = function () {
- this.subscribe()
- }, e.prototype.uninit = function () {
- this.unsubscribe()
- }, e.prototype.unsubscribe = function () {
- c(document).removeEventListener("keydown", this.onKey, !0), c(document).removeEventListener("keyup", this.onKey, !0), c(document).removeEventListener("keypress", this.onKey, !0), this.reset()
- }, e.prototype.subscribe = function () {
- c(document).addEventListener("keydown", this.onKey, !0), c(document).addEventListener("keyup", this.onKey, !0), c(document).addEventListener("keypress", this.onKey, !0)
- }, e.prototype.reset = function () {
- this.events = [], this.kCodeMap = {}, this.kDownCount = 0, this.kDownMap = {}, this.lastKDData = 0, this.indexMap = {
- 0: 1,
- 1: 1,
- 2: 1,
- 3: 1,
- 4: 1,
- 5: 1,
- 6: 1,
- 7: 1,
- 8: 1,
- 9: 1
- }
- }, e
- }();
- t.KeyboardEventsCollector = w;
- var C = function () {
- function e() {
- var e = this;
- this.events = [], this.onMouse = function (t) {
- try {
- var n = (new Date).getTime();
- if (!t) return;
- var r = new f(t, n);
- e.events.push(r)
- } catch (i) {
- console && console.warn("Error in Ellipsis.MouseEventsCollection():" + i)
- }
- }
- }
- return e.prototype.onMouse = function (e) {}, e.prototype.harvest = function () {
- var e = {
- mouseEvents: p.pack(this.events)
- };
- return this.reset(), e
- }, e.prototype.init = function () {
- this.subscribe()
- }, e.prototype.uninit = function () {
- this.unsubscribe()
- }, e.prototype.subscribe = function () {
- c(document).addEventListener("mousedown", this.onMouse, !0), c(document).addEventListener("mouseup", this.onMouse, !0), c(document).addEventListener("click", this.onMouse, !0), c(document).addEventListener("dblclick", this.onMouse, !0)
- }, e.prototype.unsubscribe = function () {
- c(document).removeEventListener("mousedown", this.onMouse, !0), c(document).removeEventListener("mouseup", this.onMouse, !0), c(document).removeEventListener("click", this.onMouse, !0), c(document).removeEventListener("dblclick", this.onMouse, !0), this.reset()
- }, e.prototype.reset = function () {
- this.events = []
- }, e
- }();
- t.MouseEventsCollector = C;
- var T = function () {
- function e() {}
- return e.compress = function (e) {
- var t, n, r, i = {},
- o = "",
- a = [],
- s = 256;
- for (t = 0; 256 > t; t += 1) i[String.fromCharCode(t)] = t;
- for (t = 0; t < e.length; t += 1) n = e.charAt(t), r = o + n, i.hasOwnProperty(r) ? o = r : (a.push(i[o]), i[r] = s++, o = String(n));
- return "" !== o && a.push(i[o]), a
- }, e
- }();
- t.LZW = T;
- var k = function () {
- function e() {}
- return e.create = function (e, t, n) {
- var r = 24 * (n.days || 0) * 60 + 60 * (n.hours || 0) + (n.minutes || 0),
- i = "";
- if (r > 0) {
- var o = new Date;
- o.setTime(o.getTime() + 60 * r * 1e3), i = "; expires=" + o.toUTCString()
- }
- var a = e + "=" + t + i + "; path=/";
- document.cookie = a
- }, e.read = function (e) {
- for (var t = e + "=", n = document.cookie.split(";"), r = 0; r < n.length; r++) {
- for (var i = n[r];
- " " == i.charAt(0);) i = i.substring(1, i.length);
- if (0 == i.indexOf(t)) return i.substring(t.length, i.length)
- }
- return null
- }, e.prototype.erase = function (t) {
- e.create(t, "", -1)
- }, e
- }(),
- S = function () {
- function e() {}
- return e.generate = function () {
- var t = e._gri,
- n = e._ha;
- return n(t(32), 8) + "-" + n(t(16), 4) + "-" + n(16384 | t(12), 4) + "-" + n(32768 | t(14), 4) + "-" + n(t(48), 12)
- }, e._gri = function (e) {
- return 0 > e ? NaN : 30 >= e ? 0 | Math.random() * (1 << e) : 53 >= e ? (0 | 1073741824 * Math.random()) + 1073741824 * (0 | Math.random() * (1 << e - 30)) : NaN
- }, e._ha = function (e, t) {
- for (var n = e.toString(16), r = t - n.length, i = "0"; r > 0; r >>>= 1, i += i) 1 & r && (n = i + n);
- return n
- }, e
- }();
- t.UUID = S,
- function () {
- for (var e, t = function () {}, n = ["assert", "clear", "count", "debug", "dir", "dirxml", "error", "exception", "group", "groupCollapsed", "groupEnd", "info", "log", "markTimeline", "profile", "profileEnd", "table", "time", "timeEnd", "timeStamp", "trace", "warn"], r = n.length, i = window.console || {}; r--;) e = n[r], i[e] || (i[e] = t)
- }();
- var N = function () {
- function e() {
- this.api_key = this.ExtractAPIKey()
- }
- return e.prototype.ExtractAPIKey = function () {
- function e(e) {
- e = e.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
- var t = new RegExp("[\\?&]" + e + "=([^&#]*)"),
- n = t.exec(r);
- return null === n ? "" : decodeURIComponent(n[1].replace(/\+/g, " "))
- }
- for (var t = document.getElementsByTagName("script"), n = 0; n < t.length; n++) {
- var r = t[n].src.toLowerCase();
- if (r.indexOf("ellipsis.js") > -1) return e("api_key")
- }
- return ""
- }, e
- }();
- t.API_Key = N;
- var M = function () {
- function e() {
- this.pageId = S.generate(), this.update()
- }
- return e.prototype.update = function () {
- var t = k.read(e.sessionKey);
- this.sessionId = t ? t : S.generate(), k.create(e.sessionKey, this.sessionId, {
- minutes: 30
- });
- var n = k.read(e.customSessionKey);
- n && this.setCustomerSession(n)
- }, e.prototype.setCustomerSession = function (t) {
- k.create(e.customSessionKey, t, {
- minutes: 30
- })
- }, e.sessionKey = "ellipsis.sessionid", e.customSessionKey = "ellipsis.customsessionid", e
- }();
- t.CurrentSession = M, t.currentSession = new M, t.api_key = new N, t.browserFootprintCollector = new x, t.mouseMoveCollector = new v, t.mouseEventsCollector = new C, t.keyboardEventsCollector = new w, t.timeBalanceCollector = new y, t.textLengthCollector = new b, t.pageSnapshotCollector = new E, t.touchMoveCollector = new u, t.start = function () {
- t.browserFootprintCollector.init(), t.mouseMoveCollector.init(), t.mouseEventsCollector.init(), t.keyboardEventsCollector.init(), t.timeBalanceCollector.init(), t.textLengthCollector.init(), t.pageSnapshotCollector.init(), t.touchMoveCollector.init()
- };
- var L = function () {
- var e = window.ellipsis;
- if (e && e.signal) {
- var t = typeof e.signal,
- n = e.signal;
- if ("string" == t) switch (n) {
- case "human":
- return 1;
- case "bot":
- return 2
- } else if ("number" == t && n >= 0 && 2 >= n) return n
- }
- return n = 0, c.each(a(), function (e, t) {
- var r = t.getAttribute("data-signal");
- if (r) switch (r) {
- case "human":
- return n = 1, !1;
- case "bot":
- return n = 2, !1
- }
- }), n
- };
- t.harvest = function () {
- var e = {
- signal: 0,
- api_key: "",
- version: "2.0"
- };
- return e.signal = L(), c.extend(e, t.currentSession), c.extend(e, t.browserFootprintCollector.harvest()), c.extend(e, t.mouseMoveCollector.harvest()), c.extend(e, t.mouseEventsCollector.harvest()), c.extend(e, t.keyboardEventsCollector.harvest()), c.extend(e, t.timeBalanceCollector.harvest()), c.extend(e, t.textLengthCollector.harvest()), c.extend(e, t.pageSnapshotCollector.harvest()), c.extend(e, t.touchMoveCollector.harvest()), c.extend(e, t.api_key), e
- }, t.end = function () {
- t.browserFootprintCollector.uninit(), t.mouseMoveCollector.uninit(), t.mouseEventsCollector.uninit(), t.keyboardEventsCollector.uninit(), t.timeBalanceCollector.uninit(), t.textLengthCollector.uninit(), t.pageSnapshotCollector.uninit(), t.touchMoveCollector.uninit()
- }, t.collectionTriggered = function (e) {
- try {
- c(window).removeEventListener("unload", t.collectionTriggered, !0);
- var noHref = "" === e.target.href,
- n = t.harvest(),
- r = T.compress(JSON.stringify(n));
- c.ajax({
- type: "POST",
- contentType: "application/json; charset=utf-8",
- url: "https://api.humanpresence.io/v2",
- data: JSON.stringify(r),
- async: !!noHref,
- complete: function () {
- console.info("Ellipsis server called sucessfully.")
- },
- error: function (e, t, n) {
- throw new Error("Error calling ellipsis server. " + t)
- }
- })
- } catch (i) {
- console.warn(i.message)
- }
- }, t.registerSiteSession = function (e, n) {
- var r = {
- sessid: t.currentSession.sessionId,
- site_sessid: e,
- api_key: n
- };
- c.ajax({
- type: "POST",
- contentType: "application/json; charset=utf-8",
- url: "https://api.humanpresence.io/v2/registersession",
- data: JSON.stringify(r),
- async: !1,
- complete: function () {
- console.info("Ellipsis server called sucessfully.")
- },
- error: function (e, t, n) {
- throw new Error("Error calling ellipsis server. " + t)
- }
- }), t.currentSession.setCustomerSession(e)
- }, t.checkHumanPresence = function (e, n) {
- void 0 === n && (n = null), n || (n = t.currentSession.sessionId);
- var r, i;
- return c.ajax({
- type: "GET",
- url: "https://api.humanpresence.io/v2/checkhumanpresence/" + n + "?apikey=" + e,
- async: !1,
- success: function (e) {
- r = e.signal, i = e.confidence
- },
- error: function (e, t, n) {
- throw new Error("Error calling ellipsis server. " + t)
- }
- }), {
- signal: r,
- confidence: i
- }
- }, t.reportSignal = function (e, n, r) {
- void 0 === r && (r = null), r || (r = t.currentSession.sessionId);
- var i = {
- sessid: r,
- pageid: t.currentSession.pageId,
- signal: e,
- apikey: n
- };
- c.ajax({
- type: "POST",
- data: JSON.stringify(i),
- contentType: "application/json; charset=utf-8",
- url: "https://api.humanpresence.io/v2/reportsignal",
- async: !1,
- error: function (e, t, n) {
- throw new Error("Error calling ellipsis server. " + t)
- }
- })
- }, c.fn.getPath = function (e) {
- if ("undefined" == typeof e && (e = ""), this.is("html") || void 0 == this.get(0)) return "html" + e;
- var t = this.get(0).nodeName.toLowerCase(),
- n = this.attr("id"),
- r = this.attr("class");
- return "undefined" != typeof n && (t += "#" + n), "undefined" != typeof r && (t += "." + r.split(/[\s\n]+/).join(".")), this.parent().getPath(" > " + t + e)
- }, c.fn.addEventListener = function (e, t, n) {
- return this.each(function () {
- this.addEventListener ? this.addEventListener(e, t, n) : this.attachEvent ? this.attachEvent("on" + e, t) : this["on" + e] = t
- })
- }, c.fn.removeEventListener = function (e, t, n) {
- return this.each(function () {
- this.removeEventListener ? this.removeEventListener(e, t, n) : this.detachEvent ? this.detachEvent("on" + e, t) : this["on" + e] = null
- })
- }
- }),
- function () {
- ellipsis.require(["ell-jquery", "ellipsis"], function (e, t) {
- t.start(), e(document).ready(function () {
- e.support.cors || console.warn("Ellipsis: Browser (or IE compatability mode) does not support CORS."), e("a").addEventListener("click", t.collectionTriggered, !0), e("form").addEventListener("submit", t.collectionTriggered, !0), e(window).addEventListener("unload", t.collectionTriggered, !0), e(window).addEventListener("popstate", t.collectionTriggered, !0)
- })
- })
- }(), ellipsis.define("src/ellipsis_init.js", function () {});var ellipsis;
- ! function () {
- if (!ellipsis || !ellipsis.requirejs) {
- ellipsis ? require = ellipsis : ellipsis = {};
- var requirejs, require, define;
- ! function (global) {
- function isFunction(e) {
- return "[object Function]" === ostring.call(e)
- }
- function isArray(e) {
- return "[object Array]" === ostring.call(e)
- }
- function each(e, t) {
- if (e) {
- var n;
- for (n = 0; n < e.length && (!e[n] || !t(e[n], n, e)); n += 1);
- }
- }
- function eachReverse(e, t) {
- if (e) {
- var n;
- for (n = e.length - 1; n > -1 && (!e[n] || !t(e[n], n, e)); n -= 1);
- }
- }
- function hasProp(e, t) {
- return hasOwn.call(e, t)
- }
- function getOwn(e, t) {
- return hasProp(e, t) && e[t]
- }
- function eachProp(e, t) {
- var n;
- for (n in e)
- if (hasProp(e, n) && t(e[n], n)) break
- }
- function mixin(e, t, n, r) {
- return t && eachProp(t, function (t, i) {
- (n || !hasProp(e, i)) && (r && "string" != typeof t ? (e[i] || (e[i] = {}), mixin(e[i], t, n, r)) : e[i] = t)
- }), e
- }
- function bind(e, t) {
- return function () {
- return t.apply(e, arguments)
- }
- }
- function scripts() {
- return document.getElementsByTagName("script")
- }
- function getGlobal(e) {
- if (!e) return e;
- var t = global;
- return each(e.split("."), function (e) {
- t = t[e]
- }), t
- }
- function makeError(e, t, n, r) {
- var i = new Error(t + "\nhttp://requirejs.org/docs/errors.html#" + e);
- return i.requireType = e, i.requireModules = r, n && (i.originalError = n), i
- }
- function newContext(e) {
- function t(e) {
- var t, n;
- for (t = 0; e[t]; t += 1)
- if (n = e[t], "." === n) e.splice(t, 1), t -= 1;
- else if (".." === n) {
- if (1 === t && (".." === e[2] || ".." === e[0])) break;
- t > 0 && (e.splice(t - 1, 2), t -= 2)
- }
- }
- function n(e, n, r) {
- var i, o, a, s, u, c, l, p, d, f, h, m = n && n.split("/"),
- g = m,
- v = C.map,
- y = v && v["*"];
- if (e && "." === e.charAt(0) && (n ? (g = getOwn(C.pkgs, n) ? m = [n] : m.slice(0, m.length - 1), e = g.concat(e.split("/")), t(e), o = getOwn(C.pkgs, i = e[0]), e = e.join("/"), o && e === i + "/" + o.main && (e = i)) : 0 === e.indexOf("./") && (e = e.substring(2))), r && v && (m || y)) {
- for (s = e.split("/"), u = s.length; u > 0; u -= 1) {
- if (l = s.slice(0, u).join("/"), m)
- for (c = m.length; c > 0; c -= 1)
- if (a = getOwn(v, m.slice(0, c).join("/")), a && (a = getOwn(a, l))) {
- p = a, d = u;
- break
- } if (p) break;
- !f && y && getOwn(y, l) && (f = getOwn(y, l), h = u)
- }!p && f && (p = f, d = h), p && (s.splice(0, d, p), e = s.join("/"))
- }
- return e
- }
- function r(e) {
- isBrowser && each(scripts(), function (t) {
- return t.getAttribute("data-requiremodule") === e && t.getAttribute("data-requirecontext") === x.contextName ? (t.parentNode.removeChild(t), !0) : void 0
- })
- }
- function i(e) {
- var t = getOwn(C.paths, e);
- return t && isArray(t) && t.length > 1 ? (r(e), t.shift(), x.require.undef(e), x.require([e]), !0) : void 0
- }
- function o(e) {
- var t, n = e ? e.indexOf("!") : -1;
- return n > -1 && (t = e.substring(0, n), e = e.substring(n + 1, e.length)), [t, e]
- }
- function a(e, t, r, i) {
- var a, s, u, c, l = null,
- p = t ? t.name : null,
- d = e,
- f = !0,
- h = "";
- return e || (f = !1, e = "_@r" + (D += 1)), c = o(e), l = c[0], e = c[1], l && (l = n(l, p, i), s = getOwn(M, l)), e && (l ? h = s && s.normalize ? s.normalize(e, function (e) {
- return n(e, p, i)
- }) : n(e, p, i) : (h = n(e, p, i), c = o(h), l = c[0], h = c[1], r = !0, a = x.nameToUrl(h))), u = !l || s || r ? "" : "_unnormalized" + (A += 1), {
- prefix: l,
- name: h,
- parentMap: t,
- unnormalized: !!u,
- url: a,
- originalName: d,
- isDefine: f,
- id: (l ? l + "!" + h : h) + u
- }
- }
- function s(e) {
- var t = e.id,
- n = getOwn(T, t);
- return n || (n = T[t] = new x.Module(e)), n
- }
- function u(e, t, n) {
- var r = e.id,
- i = getOwn(T, r);
- !hasProp(M, r) || i && !i.defineEmitComplete ? s(e).on(t, n) : "defined" === t && n(M[r])
- }
- function c(e, t) {
- var n = e.requireModules,
- r = !1;
- t ? t(e) : (each(n, function (t) {
- var n = getOwn(T, t);
- n && (n.error = e, n.events.error && (r = !0, n.emit("error", e)))
- }), r || req.onError(e))
- }
- function l() {
- globalDefQueue.length && (apsp.apply(N, [N.length - 1, 0].concat(globalDefQueue)), globalDefQueue = [])
- }
- function p(e) {
- delete T[e], delete k[e]
- }
- function d(e, t, n) {
- var r = e.map.id;
- e.error ? e.emit("error", e.error) : (t[r] = !0, each(e.depMaps, function (r, i) {
- var o = r.id,
- a = getOwn(T, o);
- !a || e.depMatched[i] || n[o] || (getOwn(t, o) ? (e.defineDep(i, M[o]), e.check()) : d(a, t, n))
- }), n[r] = !0)
- }
- function f() {
- var e, t, n, o, a = 1e3 * C.waitSeconds,
- s = a && x.startTime + a < (new Date).getTime(),
- u = [],
- l = [],
- p = !1,
- h = !0;
- if (!y) {
- if (y = !0, eachProp(k, function (n) {
- if (e = n.map, t = e.id, n.enabled && (e.isDefine || l.push(n), !n.error))
- if (!n.inited && s) i(t) ? (o = !0, p = !0) : (u.push(t), r(t));
- else if (!n.inited && n.fetched && e.isDefine && (p = !0, !e.prefix)) return h = !1
- }), s && u.length) return n = makeError("timeout", "Load timeout for modules: " + u, null, u), n.contextName = x.contextName, c(n);
- h && each(l, function (e) {
- d(e, {}, {})
- }), s && !o || !p || !isBrowser && !isWebWorker || w || (w = setTimeout(function () {
- w = 0, f()
- }, 50)), y = !1
- }
- }
- function h(e) {
- hasProp(M, e[0]) || s(a(e[0], null, !0)).init(e[1], e[2])
- }
- function m(e, t, n, r) {
- e.detachEvent && !isOpera ? r && e.detachEvent(r, t) : e.removeEventListener(n, t, !1)
- }
- function g(e) {
- var t = e.currentTarget || e.srcElement;
- return m(t, x.onScriptLoad, "load", "onreadystatechange"), m(t, x.onScriptError, "error"), {
- node: t,
- id: t && t.getAttribute("data-requiremodule")
- }
- }
- function v() {
- var e;
- for (l(); N.length;) {
- if (e = N.shift(), null === e[0]) return c(makeError("mismatch", "Mismatched anonymous define() module: " + e[e.length - 1]));
- h(e)
- }
- }
- var y, b, x, E, w, C = {
- waitSeconds: 7,
- baseUrl: "./",
- paths: {},
- pkgs: {},
- shim: {},
- config: {}
- },
- T = {},
- k = {},
- S = {},
- N = [],
- M = {},
- L = {},
- D = 1,
- A = 1;
- return E = {
- require: function (e) {
- return e.require ? e.require : e.require = x.makeRequire(e.map)
- },
- exports: function (e) {
- return e.usingExports = !0, e.map.isDefine ? e.exports ? e.exports : e.exports = M[e.map.id] = {} : void 0
- },
- module: function (e) {
- return e.module ? e.module : e.module = {
- id: e.map.id,
- uri: e.map.url,
- config: function () {
- return C.config && getOwn(C.config, e.map.id) || {}
- },
- exports: M[e.map.id]
- }
- }
- }, b = function (e) {
- this.events = getOwn(S, e.id) || {}, this.map = e, this.shim = getOwn(C.shim, e.id), this.depExports = [], this.depMaps = [], this.depMatched = [], this.pluginMaps = {}, this.depCount = 0
- }, b.prototype = {
- init: function (e, t, n, r) {
- r = r || {}, this.inited || (this.factory = t, n ? this.on("error", n) : this.events.error && (n = bind(this, function (e) {
- this.emit("error", e)
- })), this.depMaps = e && e.slice(0), this.errback = n, this.inited = !0, this.ignore = r.ignore, r.enabled || this.enabled ? this.enable() : this.check())
- },
- defineDep: function (e, t) {
- this.depMatched[e] || (this.depMatched[e] = !0, this.depCount -= 1, this.depExports[e] = t)
- },
- fetch: function () {
- if (!this.fetched) {
- this.fetched = !0, x.startTime = (new Date).getTime();
- var e = this.map;
- return this.shim ? void x.makeRequire(this.map, {
- enableBuildCallback: !0
- })(this.shim.deps || [], bind(this, function () {
- return e.prefix ? this.callPlugin() : this.load()
- })) : e.prefix ? this.callPlugin() : this.load()
- }
- },
- load: function () {
- var e = this.map.url;
- L[e] || (L[e] = !0, x.load(this.map.id, e))
- },
- check: function () {
- if (this.enabled && !this.enabling) {
- var e, t, n = this.map.id,
- r = this.depExports,
- i = this.exports,
- o = this.factory;
- if (this.inited) {
- if (this.error) this.emit("error", this.error);
- else if (!this.defining) {
- if (this.defining = !0, this.depCount < 1 && !this.defined) {
- if (isFunction(o)) {
- if (this.events.error) try {
- i = x.execCb(n, o, r, i)
- } catch (a) {
- e = a
- } else i = x.execCb(n, o, r, i);
- if (this.map.isDefine && (t = this.module, t && void 0 !== t.exports && t.exports !== this.exports ? i = t.exports : void 0 === i && this.usingExports && (i = this.exports)), e) return e.requireMap = this.map, e.requireModules = [this.map.id], e.requireType = "define", c(this.error = e)
- } else i = o;
- this.exports = i, this.map.isDefine && !this.ignore && (M[n] = i, req.onResourceLoad && req.onResourceLoad(x, this.map, this.depMaps)), p(n), this.defined = !0
- }
- this.defining = !1, this.defined && !this.defineEmitted && (this.defineEmitted = !0, this.emit("defined", this.exports), this.defineEmitComplete = !0)
- }
- } else this.fetch()
- }
- },
- callPlugin: function () {
- var e = this.map,
- t = e.id,
- r = a(e.prefix);
- this.depMaps.push(r), u(r, "defined", bind(this, function (r) {
- var i, o, l, d = this.map.name,
- f = this.map.parentMap ? this.map.parentMap.name : null,
- h = x.makeRequire(e.parentMap, {
- enableBuildCallback: !0
- });
- return this.map.unnormalized ? (r.normalize && (d = r.normalize(d, function (e) {
- return n(e, f, !0)
- }) || ""), o = a(e.prefix + "!" + d, this.map.parentMap), u(o, "defined", bind(this, function (e) {
- this.init([], function () {
- return e
- }, null, {
- enabled: !0,
- ignore: !0
- })
- })), l = getOwn(T, o.id), void(l && (this.depMaps.push(o), this.events.error && l.on("error", bind(this, function (e) {
- this.emit("error", e)
- })), l.enable()))) : (i = bind(this, function (e) {
- this.init([], function () {
- return e
- }, null, {
- enabled: !0
- })
- }), i.error = bind(this, function (e) {
- this.inited = !0, this.error = e, e.requireModules = [t], eachProp(T, function (e) {
- 0 === e.map.id.indexOf(t + "_unnormalized") && p(e.map.id)
- }), c(e)
- }), i.fromText = bind(this, function (n, r) {
- var o = e.name,
- u = a(o),
- l = useInteractive;
- r && (n = r), l && (useInteractive = !1), s(u), hasProp(C.config, t) && (C.config[o] = C.config[t]);
- try {
- req.exec(n)
- } catch (p) {
- return c(makeError("fromtexteval", "fromText eval for " + t + " failed: " + p, p, [t]))
- }
- l && (useInteractive = !0), this.depMaps.push(u), x.completeLoad(o), h([o], i)
- }), void r.load(e.name, h, i, C))
- })), x.enable(r, this), this.pluginMaps[r.id] = r
- },
- enable: function () {
- k[this.map.id] = this, this.enabled = !0, this.enabling = !0, each(this.depMaps, bind(this, function (e, t) {
- var n, r, i;
- if ("string" == typeof e) {
- if (e = a(e, this.map.isDefine ? this.map : this.map.parentMap, !1, !this.skipMap), this.depMaps[t] = e, i = getOwn(E, e.id)) return void(this.depExports[t] = i(this));
- this.depCount += 1, u(e, "defined", bind(this, function (e) {
- this.defineDep(t, e), this.check()
- })), this.errback && u(e, "error", this.errback)
- }
- n = e.id, r = T[n], hasProp(E, n) || !r || r.enabled || x.enable(e, this)
- })), eachProp(this.pluginMaps, bind(this, function (e) {
- var t = getOwn(T, e.id);
- t && !t.enabled && x.enable(e, this)
- })), this.enabling = !1, this.check()
- },
- on: function (e, t) {
- var n = this.events[e];
- n || (n = this.events[e] = []), n.push(t)
- },
- emit: function (e, t) {
- each(this.events[e], function (e) {
- e(t)
- }), "error" === e && delete this.events[e]
- }
- }, x = {
- config: C,
- contextName: e,
- registry: T,
- defined: M,
- urlFetched: L,
- defQueue: N,
- Module: b,
- makeModuleMap: a,
- nextTick: req.nextTick,
- onError: c,
- configure: function (e) {
- e.baseUrl && "/" !== e.baseUrl.charAt(e.baseUrl.length - 1) && (e.baseUrl += "/");
- var t = C.pkgs,
- n = C.shim,
- r = {
- paths: !0,
- config: !0,
- map: !0
- };
- eachProp(e, function (e, t) {
- r[t] ? "map" === t ? (C.map || (C.map = {}), mixin(C[t], e, !0, !0)) : mixin(C[t], e, !0) : C[t] = e
- }), e.shim && (eachProp(e.shim, function (e, t) {
- isArray(e) && (e = {
- deps: e
- }), !e.exports && !e.init || e.exportsFn || (e.exportsFn = x.makeShimExports(e)), n[t] = e
- }), C.shim = n), e.packages && (each(e.packages, function (e) {
- var n;
- e = "string" == typeof e ? {
- name: e
- } : e, n = e.location, t[e.name] = {
- name: e.name,
- location: n || e.name,
- main: (e.main || "main").replace(currDirRegExp, "").replace(jsSuffixRegExp, "")
- }
- }), C.pkgs = t), eachProp(T, function (e, t) {
- e.inited || e.map.unnormalized || (e.map = a(t))
- }), (e.deps || e.callback) && x.require(e.deps || [], e.callback)
- },
- makeShimExports: function (e) {
- function t() {
- var t;
- return e.init && (t = e.init.apply(global, arguments)), t || e.exports && getGlobal(e.exports)
- }
- return t
- },
- makeRequire: function (t, r) {
- function i(n, o, u) {
- var l, p, d;
- return r.enableBuildCallback && o && isFunction(o) && (o.__requireJsBuild = !0), "string" == typeof n ? isFunction(o) ? c(makeError("requireargs", "Invalid require call"), u) : t && hasProp(E, n) ? E[n](T[t.id]) : req.get ? req.get(x, n, t, i) : (p = a(n, t, !1, !0), l = p.id, hasProp(M, l) ? M[l] : c(makeError("notloaded", 'Module name "' + l + '" has not been loaded yet for context: ' + e + (t ? "" : ". Use require([])")))) : (v(), x.nextTick(function () {
- v(), d = s(a(null, t)), d.skipMap = r.skipMap, d.init(n, o, u, {
- enabled: !0
- }), f()
- }), i)
- }
- return r = r || {}, mixin(i, {
- isBrowser: isBrowser,
- toUrl: function (e) {
- var r, i = e.lastIndexOf("."),
- o = e.split("/")[0],
- a = "." === o || ".." === o;
- return -1 !== i && (!a || i > 1) && (r = e.substring(i, e.length), e = e.substring(0, i)), x.nameToUrl(n(e, t && t.id, !0), r, !0)
- },
- defined: function (e) {
- return hasProp(M, a(e, t, !1, !0).id)
- },
- specified: function (e) {
- return e = a(e, t, !1, !0).id, hasProp(M, e) || hasProp(T, e)
- }
- }), t || (i.undef = function (e) {
- l();
- var n = a(e, t, !0),
- r = getOwn(T, e);
- delete M[e], delete L[n.url], delete S[e], r && (r.events.defined && (S[e] = r.events), p(e))
- }), i
- },
- enable: function (e) {
- var t = getOwn(T, e.id);
- t && s(e).enable()
- },
- completeLoad: function (e) {
- var t, n, r, o = getOwn(C.shim, e) || {},
- a = o.exports;
- for (l(); N.length;) {
- if (n = N.shift(), null === n[0]) {
- if (n[0] = e, t) break;
- t = !0
- } else n[0] === e && (t = !0);
- h(n)
- }
- if (r = getOwn(T, e), !t && !hasProp(M, e) && r && !r.inited) {
- if (!(!C.enforceDefine || a && getGlobal(a))) return i(e) ? void 0 : c(makeError("nodefine", "No define call for " + e, null, [e]));
- h([e, o.deps || [], o.exportsFn])
- }
- f()
- },
- nameToUrl: function (e, t, n) {
- var r, i, o, a, s, u, c, l, p;
- if (req.jsExtRegExp.test(e)) l = e + (t || "");
- else {
- for (r = C.paths, i = C.pkgs, s = e.split("/"), u = s.length; u > 0; u -= 1) {
- if (c = s.slice(0, u).join("/"), o = getOwn(i, c), p = getOwn(r, c)) {
- isArray(p) && (p = p[0]), s.splice(0, u, p);
- break
- }
- if (o) {
- a = e === o.name ? o.location + "/" + o.main : o.location, s.splice(0, u, a);
- break
- }
- }
- l = s.join("/"), l += t || (/\?/.test(l) || n ? "" : ".js"), l = ("/" === l.charAt(0) || l.match(/^[\w\+\.\-]+:/) ? "" : C.baseUrl) + l
- }
- return C.urlArgs ? l + ((-1 === l.indexOf("?") ? "?" : "&") + C.urlArgs) : l
- },
- load: function (e, t) {
- req.load(x, e, t)
- },
- execCb: function (e, t, n, r) {
- return t.apply(r, n)
- },
- onScriptLoad: function (e) {
- if ("load" === e.type || readyRegExp.test((e.currentTarget || e.srcElement).readyState)) {
- interactiveScript = null;
- var t = g(e);
- x.completeLoad(t.id)
- }
- },
- onScriptError: function (e) {
- var t = g(e);
- return i(t.id) ? void 0 : c(makeError("scripterror", "Script error", e, [t.id]))
- }
- }, x.require = x.makeRequire(), x
- }
- function getInteractiveScript() {
- return interactiveScript && "interactive" === interactiveScript.readyState ? interactiveScript : (eachReverse(scripts(), function (e) {
- return "interactive" === e.readyState ? interactiveScript = e : void 0
- }), interactiveScript)
- }
- var req, s, head, baseElement, dataMain, src, interactiveScript, currentlyAddingScript, mainScript, subPath, version = "2.1.5",
- commentRegExp = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm,
- cjsRequireRegExp = /[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,
- jsSuffixRegExp = /\.js$/,
- currDirRegExp = /^\.\//,
- op = Object.prototype,
- ostring = op.toString,
- hasOwn = op.hasOwnProperty,
- ap = Array.prototype,
- apsp = ap.splice,
- isBrowser = !("undefined" == typeof window || !navigator || !document),
- isWebWorker = !isBrowser && "undefined" != typeof importScripts,
- readyRegExp = isBrowser && "PLAYSTATION 3" === navigator.platform ? /^complete$/ : /^(complete|loaded)$/,
- defContextName = "_",
- isOpera = "undefined" != typeof opera && "[object Opera]" === opera.toString(),
- contexts = {},
- cfg = {},
- globalDefQueue = [],
- useInteractive = !1;
- if ("undefined" == typeof define) {
- if ("undefined" != typeof requirejs) {
- if (isFunction(requirejs)) return;
- cfg = requirejs, requirejs = void 0
- }
- "undefined" == typeof require || isFunction(require) || (cfg = require, require = void 0), req = requirejs = function (e, t, n, r) {
- var i, o, a = defContextName;
- return isArray(e) || "string" == typeof e || (o = e, isArray(t) ? (e = t, t = n, n = r) : e = []), o && o.context && (a = o.context), i = getOwn(contexts, a), i || (i = contexts[a] = req.s.newContext(a)), o && i.configure(o), i.require(e, t, n)
- }, req.config = function (e) {
- return req(e)
- }, req.nextTick = "undefined" != typeof setTimeout ? function (e) {
- setTimeout(e, 4)
- } : function (e) {
- e()
- }, require || (require = req), req.version = version, req.jsExtRegExp = /^\/|:|\?|\.js$/, req.isBrowser = isBrowser, s = req.s = {
- contexts: contexts,
- newContext: newContext
- }, req({}), each(["toUrl", "undef", "defined", "specified"], function (e) {
- req[e] = function () {
- var t = contexts[defContextName];
- return t.require[e].apply(t, arguments)
- }
- }), isBrowser && (head = s.head = document.getElementsByTagName("head")[0], baseElement = document.getElementsByTagName("base")[0], baseElement && (head = s.head = baseElement.parentNode)), req.onError = function (e) {
- throw e
- }, req.load = function (e, t, n) {
- var r, i = e && e.config || {};
- if (isBrowser) return r = i.xhtml ? document.createElementNS("http://www.w3.org/1999/xhtml", "html:script") : document.createElement("script"), r.type = i.scriptType || "text/javascript", r.charset = "utf-8", r.async = !0, r.setAttribute("data-requirecontext", e.contextName), r.setAttribute("data-requiremodule", t), !r.attachEvent || r.attachEvent.toString && r.attachEvent.toString().indexOf("[native code") < 0 || isOpera ? (r.addEventListener("load", e.onScriptLoad, !1), r.addEventListener("error", e.onScriptError, !1)) : (useInteractive = !0, r.attachEvent("onreadystatechange", e.onScriptLoad)), r.src = n, currentlyAddingScript = r, baseElement ? head.insertBefore(r, baseElement) : head.appendChild(r), currentlyAddingScript = null, r;
- if (isWebWorker) try {
- importScripts(n), e.completeLoad(t)
- } catch (o) {
- e.onError(makeError("importscripts", "importScripts failed for " + t + " at " + n, o, [t]))
- }
- }, isBrowser && eachReverse(scripts(), function (e) {
- return head || (head = e.parentNode), dataMain = e.getAttribute("data-main"), dataMain ? (cfg.baseUrl || (src = dataMain.split("/"), mainScript = src.pop(), subPath = src.length ? src.join("/") + "/" : "./", cfg.baseUrl = subPath, dataMain = mainScript), dataMain = dataMain.replace(jsSuffixRegExp, ""), cfg.deps = cfg.deps ? cfg.deps.concat(dataMain) : [dataMain], !0) : void 0
- }), define = function (e, t, n) {
- var r, i;
- "string" != typeof e && (n = t, t = e, e = null), isArray(t) || (n = t, t = []), !t.length && isFunction(n) && n.length && (n.toString().replace(commentRegExp, "").replace(cjsRequireRegExp, function (e, n) {
- t.push(n)
- }), t = (1 === n.length ? ["require"] : ["require", "exports", "module"]).concat(t)), useInteractive && (r = currentlyAddingScript || getInteractiveScript(), r && (e || (e = r.getAttribute("data-requiremodule")), i = contexts[r.getAttribute("data-requirecontext")])), (i ? i.defQueue : globalDefQueue).push([e, t, n])
- }, define.amd = {
- jQuery: !0
- }, req.exec = function (text) {
- return eval(text)
- }, req(cfg)
- }
- }(this), ellipsis.requirejs = requirejs, ellipsis.require = require, ellipsis.define = define
- }
- }(), ellipsis.define("requireLib", function () {}),
- function (e, t) {
- function n(e) {
- var t = e.length,
- n = X.type(e);
- return X.isWindow(e) ? !1 : 1 === e.nodeType && t ? !0 : "array" === n || "function" !== n && (0 === t || "number" == typeof t && t > 0 && t - 1 in e)
- }
- function r(e) {
- var t = ie[e] = {};
- return X.each(e.match(K) || [], function (e, n) {
- t[n] = !0
- }), t
- }
- function i(e, n, r, i) {
- if (X.acceptData(e)) {
- var o, a, s = X.expando,
- u = "string" == typeof n,
- c = e.nodeType,
- l = c ? X.cache : e,
- p = c ? e[s] : e[s] && s;
- if (p && l[p] && (i || l[p].data) || !u || r !== t) return p || (c ? e[s] = p = O.pop() || X.guid++ : p = s), l[p] || (l[p] = {}, c || (l[p].toJSON = X.noop)), ("object" == typeof n || "function" == typeof n) && (i ? l[p] = X.extend(l[p], n) : l[p].data = X.extend(l[p].data, n)), o = l[p], i || (o.data || (o.data = {}), o = o.data), r !== t && (o[X.camelCase(n)] = r), u ? (a = o[n], null == a && (a = o[X.camelCase(n)])) : a = o, a
- }
- }
- function o(e, t, n) {
- if (X.acceptData(e)) {
- var r, i, o, a = e.nodeType,
- u = a ? X.cache : e,
- c = a ? e[X.expando] : X.expando;
- if (u[c]) {
- if (t && (o = n ? u[c] : u[c].data)) {
- X.isArray(t) ? t = t.concat(X.map(t, X.camelCase)) : t in o ? t = [t] : (t = X.camelCase(t), t = t in o ? [t] : t.split(" "));
- for (r = 0, i = t.length; i > r; r++) delete o[t[r]];
- if (!(n ? s : X.isEmptyObject)(o)) return
- }(n || (delete u[c].data, s(u[c]))) && (a ? X.cleanData([e], !0) : X.support.deleteExpando || u != u.window ? delete u[c] : u[c] = null)
- }
- }
- }
- function a(e, n, r) {
- if (r === t && 1 === e.nodeType) {
- var i = "data-" + n.replace(ae, "-$1").toLowerCase();
- if (r = e.getAttribute(i), "string" == typeof r) {
- try {
- r = "true" === r ? !0 : "false" === r ? !1 : "null" === r ? null : +r + "" === r ? +r : oe.test(r) ? X.parseJSON(r) : r
- } catch (o) {}
- X.data(e, n, r)
- } else r = t
- }
- return r
- }
- function s(e) {
- var t;
- for (t in e)
- if (("data" !== t || !X.isEmptyObject(e[t])) && "toJSON" !== t) return !1;
- return !0
- }
- function u() {
- return !0
- }
- function c() {
- return !1
- }
- function l(e, t) {
- do e = e[t]; while (e && 1 !== e.nodeType);
- return e
- }
- function p(e, t, n) {
- if (t = t || 0, X.isFunction(t)) return X.grep(e, function (e, r) {
- var i = !!t.call(e, r, e);
- return i === n
- });
- if (t.nodeType) return X.grep(e, function (e) {
- return e === t === n
- });
- if ("string" == typeof t) {
- var r = X.grep(e, function (e) {
- return 1 === e.nodeType
- });
- if (Te.test(t)) return X.filter(t, r, !n);
- t = X.filter(t, r)
- }
- return X.grep(e, function (e) {
- return X.inArray(e, t) >= 0 === n
- })
- }
- function d(e) {
- var t = Ne.split("|"),
- n = e.createDocumentFragment();
- if (n.createElement)
- for (; t.length;) n.createElement(t.pop());
- return n
- }
- function f(e, t) {
- return e.getElementsByTagName(t)[0] || e.appendChild(e.ownerDocument.createElement(t))
- }
- function h(e) {
- var t = e.getAttributeNode("type");
- return e.type = (t && t.specified) + "/" + e.type, e
- }
- function m(e) {
- var t = He.exec(e.type);
- return t ? e.type = t[1] : e.removeAttribute("type"), e
- }
- function g(e, t) {
- for (var n, r = 0; null != (n = e[r]); r++) X._data(n, "globalEval", !t || X._data(t[r], "globalEval"))
- }
- function v(e, t) {
- if (1 === t.nodeType && X.hasData(e)) {
- var n, r, i, o = X._data(e),
- a = X._data(t, o),
- s = o.events;
- if (s) {
- delete a.handle, a.events = {};
- for (n in s)
- for (r = 0, i = s[n].length; i > r; r++) X.event.add(t, n, s[n][r])
- }
- a.data && (a.data = X.extend({}, a.data))
- }
- }
- function y(e, t) {
- var n, r, i;
- if (1 === t.nodeType) {
- if (n = t.nodeName.toLowerCase(), !X.support.noCloneEvent && t[X.expando]) {
- i = X._data(t);
- for (r in i.events) X.removeEvent(t, r, i.handle);
- t.removeAttribute(X.expando)
- }
- "script" === n && t.text !== e.text ? (h(t).text = e.text, m(t)) : "object" === n ? (t.parentNode && (t.outerHTML = e.outerHTML), X.support.html5Clone && e.innerHTML && !X.trim(t.innerHTML) && (t.innerHTML = e.innerHTML)) : "input" === n && Pe.test(e.type) ? (t.defaultChecked = t.checked = e.checked, t.value !== e.value && (t.value = e.value)) : "option" === n ? t.defaultSelected = t.selected = e.defaultSelected : ("input" === n || "textarea" === n) && (t.defaultValue = e.defaultValue)
- }
- }
- function b(e, n) {
- var r, i, o = 0,
- a = typeof e.getElementsByTagName !== A ? e.getElementsByTagName(n || "*") : typeof e.querySelectorAll !== A ? e.querySelectorAll(n || "*") : t;
- if (!a)
- for (a = [], r = e.childNodes || e; null != (i = r[o]); o++) !n || X.nodeName(i, n) ? a.push(i) : X.merge(a, b(i, n));
- return n === t || n && X.nodeName(e, n) ? X.merge([e], a) : a
- }
- function x(e) {
- Pe.test(e.type) && (e.defaultChecked = e.checked)
- }
- function E(e, t, n, r) {
- var i;
- if (X.isArray(t)) X.each(t, function (t, i) {
- n || Ke.test(e) ? r(e, i) : E(e + "[" + ("object" == typeof i ? t : "") + "]", i, n, r)
- });
- else if (n || "object" !== X.type(t)) r(e, t);
- else
- for (i in t) E(e + "[" + i + "]", t[i], n, r)
- }
- function w(e) {
- return function (t, n) {
- "string" != typeof t && (n = t, t = "*");
- var r, i = 0,
- o = t.toLowerCase().match(K) || [];
- if (X.isFunction(n))
- for (; r = o[i++];) "+" === r[0] ? (r = r.slice(1) || "*", (e[r] = e[r] || []).unshift(n)) : (e[r] = e[r] || []).push(n)
- }
- }
- function C(e, t, n, r) {
- function i(s) {
- var u;
- return o[s] = !0, X.each(e[s] || [], function (e, s) {
- var c = s(t, n, r);
- return "string" != typeof c || a || o[c] ? a ? !(u = c) : void 0 : (t.dataTypes.unshift(c), i(c), !1)
- }), u
- }
- var o = {},
- a = e === ut;
- return i(t.dataTypes[0]) || !o["*"] && i("*")
- }
- function T(e, n) {
- var r, i, o = X.ajaxSettings.flatOptions || {};
- for (i in n) n[i] !== t && ((o[i] ? e : r || (r = {}))[i] = n[i]);
- return r && X.extend(!0, e, r), e
- }
- function k(e, n, r) {
- var i, o, a, s, u = e.contents,
- c = e.dataTypes,
- l = e.responseFields;
- for (s in l) s in r && (n[l[s]] = r[s]);
- for (;
- "*" === c[0];) c.shift(), o === t && (o = e.mimeType || n.getResponseHeader("Content-Type"));
- if (o)
- for (s in u)
- if (u[s] && u[s].test(o)) {
- c.unshift(s);
- break
- } if (c[0] in r) a = c[0];
- else {
- for (s in r) {
- if (!c[0] || e.converters[s + " " + c[0]]) {
- a = s;
- break
- }
- i || (i = s)
- }
- a = a || i
- }
- return a ? (a !== c[0] && c.unshift(a), r[a]) : void 0
- }
- function S(e, t) {
- var n, r, i, o, a = {},
- s = 0,
- u = e.dataTypes.slice(),
- c = u[0];
- if (e.dataFilter && (t = e.dataFilter(t, e.dataType)), u[1])
- for (i in e.converters) a[i.toLowerCase()] = e.converters[i];
- for (; r = u[++s];)
- if ("*" !== r) {
- if ("*" !== c && c !== r) {
- if (i = a[c + " " + r] || a["* " + r], !i)
- for (n in a)
- if (o = n.split(" "), o[1] === r && (i = a[c + " " + o[0]] || a["* " + o[0]])) {
- i === !0 ? i = a[n] : a[n] !== !0 && (r = o[0], u.splice(s--, 0, r));
- break
- } if (i !== !0)
- if (i && e["throws"]) t = i(t);
- else try {
- t = i(t)
- } catch (l) {
- return {
- state: "parsererror",
- error: i ? l : "No conversion from " + c + " to " + r
- }
- }
- }
- c = r
- } return {
- state: "success",
- data: t
- }
- }
- function N() {
- try {
- return new e.XMLHttpRequest
- } catch (t) {}
- }
- function M() {
- try {
- return new e.ActiveXObject("Microsoft.XMLHTTP")
- } catch (t) {}
- }
- var L, D, A = typeof t,
- j = e.document,
- q = e.location,
- _ = {},
- O = [],
- P = "1.9.1 -css,-effects,-offset,-dimensions,-deprecated",
- R = O.concat,
- B = O.push,
- H = O.slice,
- F = O.indexOf,
- I = _.toString,
- $ = _.hasOwnProperty,
- W = P.trim,
- X = function (e, t) {
- return new X.fn.init(e, t, D)
- },
- K = (/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, /\S+/g),
- z = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
- U = /^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/,
- Y = /^<(\w+)\s*\/?>(?:<\/\1>|)$/,
- J = /^[\],:{}\s]*$/,
- V = /(?:^|:|,)(?:\s*\[)+/g,
- G = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,
- Q = /"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,
- Z = /^-ms-/,
- ee = /-([\da-z])/gi,
- te = function (e, t) {
- return t.toUpperCase()
- },
- ne = function (e) {
- (j.addEventListener || "load" === e.type || "complete" === j.readyState) && (re(), X.ready())
- },
- re = function () {
- j.addEventListener ? (j.removeEventListener("DOMContentLoaded", ne, !1), e.removeEventListener("load", ne, !1)) : (j.detachEvent("onreadystatechange", ne), e.detachEvent("onload", ne))
- };
- X.fn = X.prototype = {
- jquery: P,
- constructor: X,
- init: function (e, n, r) {
- var i, o;
- if (!e) return this;
- if ("string" == typeof e) {
- if (i = "<" === e.charAt(0) && ">" === e.charAt(e.length - 1) && e.length >= 3 ? [null, e, null] : U.exec(e), !i || !i[1] && n) return !n || n.jquery ? (n || r).find(e) : this.constructor(n).find(e);
- if (i[1]) {
- if (n = n instanceof X ? n[0] : n, X.merge(this, X.parseHTML(i[1], n && n.nodeType ? n.ownerDocument || n : j, !0)), Y.test(i[1]) && X.isPlainObject(n))
- for (i in n) X.isFunction(this[i]) ? this[i](n[i]) : this.attr(i, n[i]);
- return this
- }
- if (o = j.getElementById(i[2]), o && o.parentNode) {
- if (o.id !== i[2]) return r.find(e);
- this.length = 1, this[0] = o
- }
- return this.context = j, this.selector = e, this
- }
- return e.nodeType ? (this.context = this[0] = e, this.length = 1, this) : X.isFunction(e) ? r.ready(e) : (e.selector !== t && (this.selector = e.selector, this.context = e.context), X.makeArray(e, this))
- },
- selector: "",
- length: 0,
- size: function () {
- return this.length
- },
- toArray: function () {
- return H.call(this)
- },
- get: function (e) {
- return null == e ? this.toArray() : 0 > e ? this[this.length + e] : this[e]
- },
- pushStack: function (e) {
- var t = X.merge(this.constructor(), e);
- return t.prevObject = this, t.context = this.context, t
- },
- each: function (e, t) {
- return X.each(this, e, t)
- },
- ready: function (e) {
- return X.ready.promise().done(e), this
- },
- slice: function () {
- return this.pushStack(H.apply(this, arguments))
- },
- first: function () {
- return this.eq(0)
- },
- last: function () {
- return this.eq(-1)
- },
- eq: function (e) {
- var t = this.length,
- n = +e + (0 > e ? t : 0);
- return this.pushStack(n >= 0 && t > n ? [this[n]] : [])
- },
- map: function (e) {
- return this.pushStack(X.map(this, function (t, n) {
- return e.call(t, n, t)
- }))
- },
- end: function () {
- return this.prevObject || this.constructor(null)
- },
- push: B,
- sort: [].sort,
- splice: [].splice
- }, X.fn.init.prototype = X.fn, X.extend = X.fn.extend = function () {
- var e, n, r, i, o, a, s = arguments[0] || {},
- u = 1,
- c = arguments.length,
- l = !1;
- for ("boolean" == typeof s && (l = s, s = arguments[1] || {}, u = 2), "object" == typeof s || X.isFunction(s) || (s = {}), c === u && (s = this, --u); c > u; u++)
- if (null != (o = arguments[u]))
- for (i in o) e = s[i], r = o[i], s !== r && (l && r && (X.isPlainObject(r) || (n = X.isArray(r))) ? (n ? (n = !1, a = e && X.isArray(e) ? e : []) : a = e && X.isPlainObject(e) ? e : {}, s[i] = X.extend(l, a, r)) : r !== t && (s[i] = r));
- return s
- }, X.extend({
- isReady: !1,
- readyWait: 1,
- holdReady: function (e) {
- e ? X.readyWait++ : X.ready(!0)
- },
- ready: function (e) {
- if (e === !0 ? !--X.readyWait : !X.isReady) {
- if (!j.body) return setTimeout(X.ready);
- X.isReady = !0, e !== !0 && --X.readyWait > 0 || (L.resolveWith(j, [X]), X.fn.trigger && X(j).trigger("ready").off("ready"))
- }
- },
- isFunction: function (e) {
- return "function" === X.type(e)
- },
- isArray: Array.isArray || function (e) {
- return "array" === X.type(e)
- },
- isWindow: function (e) {
- return null != e && e == e.window
- },
- isNumeric: function (e) {
- return !isNaN(parseFloat(e)) && isFinite(e)
- },
- type: function (e) {
- return null == e ? String(e) : "object" == typeof e || "function" == typeof e ? _[I.call(e)] || "object" : typeof e
- },
- isPlainObject: function (e) {
- if (!e || "object" !== X.type(e) || e.nodeType || X.isWindow(e)) return !1;
- try {
- if (e.constructor && !$.call(e, "constructor") && !$.call(e.constructor.prototype, "isPrototypeOf")) return !1
- } catch (n) {
- return !1
- }
- var r;
- for (r in e);
- return r === t || $.call(e, r)
- },
- isEmptyObject: function (e) {
- var t;
- for (t in e) return !1;
- return !0
- },
- error: function (e) {
- throw new Error(e)
- },
- parseHTML: function (e, t, n) {
- if (!e || "string" != typeof e) return null;
- "boolean" == typeof t && (n = t, t = !1), t = t || j;
- var r = Y.exec(e),
- i = !n && [];
- return r ? [t.createElement(r[1])] : (r = X.buildFragment([e], t, i), i && X(i).remove(), X.merge([], r.childNodes))
- },
- parseJSON: function (t) {
- return e.JSON && e.JSON.parse ? e.JSON.parse(t) : null === t ? t : "string" == typeof t && (t = X.trim(t), t && J.test(t.replace(G, "@").replace(Q, "]").replace(V, ""))) ? new Function("return " + t)() : void X.error("Invalid JSON: " + t)
- },
- parseXML: function (n) {
- var r, i;
- if (!n || "string" != typeof n) return null;
- try {
- e.DOMParser ? (i = new DOMParser, r = i.parseFromString(n, "text/xml")) : (r = new ActiveXObject("Microsoft.XMLDOM"), r.async = "false", r.loadXML(n))
- } catch (o) {
- r = t
- }
- return r && r.documentElement && !r.getElementsByTagName("parsererror").length || X.error("Invalid XML: " + n), r
- },
- noop: function () {},
- globalEval: function (t) {
- t && X.trim(t) && (e.execScript || function (t) {
- e.eval.call(e, t)
- })(t)
- },
- camelCase: function (e) {
- return e.replace(Z, "ms-").replace(ee, te)
- },
- nodeName: function (e, t) {
- return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase()
- },
- each: function (e, t, r) {
- var i, o = 0,
- a = e.length,
- s = n(e);
- if (r) {
- if (s)
- for (; a > o && (i = t.apply(e[o], r), i !== !1); o++);
- else
- for (o in e)
- if (i = t.apply(e[o], r), i === !1) break
- } else if (s)
- for (; a > o && (i = t.call(e[o], o, e[o]), i !== !1); o++);
- else
- for (o in e)
- if (i = t.call(e[o], o, e[o]), i === !1) break;
- return e
- },
- trim: W && !W.call("\ufeff ") ? function (e) {
- return null == e ? "" : W.call(e)
- } : function (e) {
- return null == e ? "" : (e + "").replace(z, "")
- },
- makeArray: function (e, t) {
- var r = t || [];
- return null != e && (n(Object(e)) ? X.merge(r, "string" == typeof e ? [e] : e) : B.call(r, e)), r
- },
- inArray: function (e, t, n) {
- var r;
- if (t) {
- if (F) return F.call(t, e, n);
- for (r = t.length, n = n ? 0 > n ? Math.max(0, r + n) : n : 0; r > n; n++)
- if (n in t && t[n] === e) return n
- }
- return -1
- },
- merge: function (e, n) {
- var r = n.length,
- i = e.length,
- o = 0;
- if ("number" == typeof r)
- for (; r > o; o++) e[i++] = n[o];
- else
- for (; n[o] !== t;) e[i++] = n[o++];
- return e.length = i, e
- },
- grep: function (e, t, n) {
- var r, i = [],
- o = 0,
- a = e.length;
- for (n = !!n; a > o; o++) r = !!t(e[o], o), n !== r && i.push(e[o]);
- return i
- },
- map: function (e, t, r) {
- var i, o = 0,
- a = e.length,
- s = n(e),
- u = [];
- if (s)
- for (; a > o; o++) i = t(e[o], o, r), null != i && (u[u.length] = i);
- else
- for (o in e) i = t(e[o], o, r), null != i && (u[u.length] = i);
- return R.apply([], u)
- },
- guid: 1,
- proxy: function (e, n) {
- var r, i, o;
- return "string" == typeof n && (o = e[n], n = e, e = o), X.isFunction(e) ? (r = H.call(arguments, 2), i = function () {
- return e.apply(n || this, r.concat(H.call(arguments)))
- }, i.guid = e.guid = e.guid || X.guid++, i) : t
- },
- access: function (e, n, r, i, o, a, s) {
- var u = 0,
- c = e.length,
- l = null == r;
- if ("object" === X.type(r)) {
- o = !0;
- for (u in r) X.access(e, n, u, r[u], !0, a, s)
- } else if (i !== t && (o = !0, X.isFunction(i) || (s = !0), l && (s ? (n.call(e, i), n = null) : (l = n, n = function (e, t, n) {
- return l.call(X(e), n)
- })), n))
- for (; c > u; u++) n(e[u], r, s ? i : i.call(e[u], u, n(e[u], r)));
- return o ? e : l ? n.call(e) : c ? n(e[0], r) : a
- },
- now: function () {
- return (new Date).getTime()
- }
- }), X.ready.promise = function (t) {
- if (!L)
- if (L = X.Deferred(), "complete" === j.readyState) setTimeout(X.ready);
- else if (j.addEventListener) j.addEventListener("DOMContentLoaded", ne, !1), e.addEventListener("load", ne, !1);
- else {
- j.attachEvent("onreadystatechange", ne), e.attachEvent("onload", ne);
- var n = !1;
- try {
- n = null == e.frameElement && j.documentElement
- } catch (r) {}
- n && n.doScroll && ! function i() {
- if (!X.isReady) {
- try {
- n.doScroll("left")
- } catch (e) {
- return setTimeout(i, 50)
- }
- re(), X.ready()
- }
- }()
- }
- return L.promise(t)
- }, X.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function (e, t) {
- _["[object " + t + "]"] = t.toLowerCase()
- }), D = X(j);
- var ie = {};
- X.Callbacks = function (e) {
- e = "string" == typeof e ? ie[e] || r(e) : X.extend({}, e);
- var n, i, o, a, s, u, c = [],
- l = !e.once && [],
- p = function (t) {
- for (i = e.memory && t, o = !0, s = u || 0, u = 0, a = c.length, n = !0; c && a > s; s++)
- if (c[s].apply(t[0], t[1]) === !1 && e.stopOnFalse) {
- i = !1;
- break
- } n = !1, c && (l ? l.length && p(l.shift()) : i ? c = [] : d.disable())
- },
- d = {
- add: function () {
- if (c) {
- var t = c.length;
- ! function r(t) {
- X.each(t, function (t, n) {
- var i = X.type(n);
- "function" === i ? e.unique && d.has(n) || c.push(n) : n && n.length && "string" !== i && r(n)
- })
- }(arguments), n ? a = c.length : i && (u = t, p(i))
- }
- return this
- },
- remove: function () {
- return c && X.each(arguments, function (e, t) {
- for (var r;
- (r = X.inArray(t, c, r)) > -1;) c.splice(r, 1), n && (a >= r && a--, s >= r && s--)
- }), this
- },
- has: function (e) {
- return e ? X.inArray(e, c) > -1 : !(!c || !c.length)
- },
- empty: function () {
- return c = [], this
- },
- disable: function () {
- return c = l = i = t, this
- },
- disabled: function () {
- return !c
- },
- lock: function () {
- return l = t, i || d.disable(), this
- },
- locked: function () {
- return !l
- },
- fireWith: function (e, t) {
- return t = t || [], t = [e, t.slice ? t.slice() : t], !c || o && !l || (n ? l.push(t) : p(t)), this
- },
- fire: function () {
- return d.fireWith(this, arguments), this
- },
- fired: function () {
- return !!o
- }
- };
- return d
- }, X.extend({
- Deferred: function (e) {
- var t = [
- ["resolve", "done", X.Callbacks("once memory"), "resolved"],
- ["reject", "fail", X.Callbacks("once memory"), "rejected"],
- ["notify", "progress", X.Callbacks("memory")]
- ],
- n = "pending",
- r = {
- state: function () {
- return n
- },
- always: function () {
- return i.done(arguments).fail(arguments), this
- },
- then: function () {
- var e = arguments;
- return X.Deferred(function (n) {
- X.each(t, function (t, o) {
- var a = o[0],
- s = X.isFunction(e[t]) && e[t];
- i[o[1]](function () {
- var e = s && s.apply(this, arguments);
- e && X.isFunction(e.promise) ? e.promise().done(n.resolve).fail(n.reject).progress(n.notify) : n[a + "With"](this === r ? n.promise() : this, s ? [e] : arguments)
- })
- }), e = null
- }).promise()
- },
- promise: function (e) {
- return null != e ? X.extend(e, r) : r
- }
- },
- i = {};
- return r.pipe = r.then, X.each(t, function (e, o) {
- var a = o[2],
- s = o[3];
- r[o[1]] = a.add, s && a.add(function () {
- n = s
- }, t[1 ^ e][2].disable, t[2][2].lock), i[o[0]] = function () {
- return i[o[0] + "With"](this === i ? r : this, arguments), this
- }, i[o[0] + "With"] = a.fireWith
- }), r.promise(i), e && e.call(i, i), i
- },
- when: function (e) {
- var t, n, r, i = 0,
- o = H.call(arguments),
- a = o.length,
- s = 1 !== a || e && X.isFunction(e.promise) ? a : 0,
- u = 1 === s ? e : X.Deferred(),
- c = function (e, n, r) {
- return function (i) {
- n[e] = this, r[e] = arguments.length > 1 ? H.call(arguments) : i, r === t ? u.notifyWith(n, r) : --s || u.resolveWith(n, r)
- }
- };
- if (a > 1)
- for (t = new Array(a), n = new Array(a), r = new Array(a); a > i; i++) o[i] && X.isFunction(o[i].promise) ? o[i].promise().done(c(i, r, o)).fail(u.reject).progress(c(i, n, t)) : --s;
- return s || u.resolveWith(r, o), u.promise()
- }
- }), X.support = function () {
- var t, n, r, i, o, a, s, u, c, l, p = j.createElement("div");
- if (p.setAttribute("className", "t"), p.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>", n = p.getElementsByTagName("*"), r = p.getElementsByTagName("a")[0], !n || !r || !n.length) return {};
- o = j.createElement("select"), s = o.appendChild(j.createElement("option")), i = p.getElementsByTagName("input")[0], r.style.cssText = "top:1px;float:left;opacity:.5", t = {
- getSetAttribute: "t" !== p.className,
- leadingWhitespace: 3 === p.firstChild.nodeType,
- tbody: !p.getElementsByTagName("tbody").length,
- htmlSerialize: !!p.getElementsByTagName("link").length,
- style: /top/.test(r.getAttribute("style")),
- hrefNormalized: "/a" === r.getAttribute("href"),
- opacity: /^0.5/.test(r.style.opacity),
- cssFloat: !!r.style.cssFloat,
- checkOn: !!i.value,
- optSelected: s.selected,
- enctype: !!j.createElement("form").enctype,
- html5Clone: "<:nav></:nav>" !== j.createElement("nav").cloneNode(!0).outerHTML,
- boxModel: "CSS1Compat" === j.compatMode,
- deleteExpando: !0,
- noCloneEvent: !0,
- inlineBlockNeedsLayout: !1,
- shrinkWrapBlocks: !1,
- reliableMarginRight: !0,
- boxSizingReliable: !0,
- pixelPosition: !1
- }, i.checked = !0, t.noCloneChecked = i.cloneNode(!0).checked, o.disabled = !0, t.optDisabled = !s.disabled;
- try {
- delete p.test
- } catch (d) {
- t.deleteExpando = !1
- }
- i = j.createElement("input"), i.setAttribute("value", ""), t.input = "" === i.getAttribute("value"), i.value = "t", i.setAttribute("type", "radio"), t.radioValue = "t" === i.value, i.setAttribute("checked", "t"), i.setAttribute("name", "t"), a = j.createDocumentFragment(), a.appendChild(i), t.appendChecked = i.checked, t.checkClone = a.cloneNode(!0).cloneNode(!0).lastChild.checked, p.attachEvent && (p.attachEvent("onclick", function () {
- t.noCloneEvent = !1
- }), p.cloneNode(!0).click());
- for (l in {
- submit: !0,
- change: !0,
- focusin: !0
- }) p.setAttribute(u = "on" + l, "t"), t[l + "Bubbles"] = u in e || p.attributes[u].expando === !1;
- return p.style.backgroundClip = "content-box", p.cloneNode(!0).style.backgroundClip = "", t.clearCloneStyle = "content-box" === p.style.backgroundClip, X(function () {
- var n, r, i, o = "padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",
- a = j.getElementsByTagName("body")[0];
- a && (n = j.createElement("div"), n.style.cssText = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px", a.appendChild(n).appendChild(p), p.innerHTML = "<table><tr><td></td><td>t</td></tr></table>", i = p.getElementsByTagName("td"), i[0].style.cssText = "padding:0;margin:0;border:0;display:none", c = 0 === i[0].offsetHeight, i[0].style.display = "", i[1].style.display = "none", t.reliableHiddenOffsets = c && 0 === i[0].offsetHeight, p.innerHTML = "", p.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%;", t.boxSizing = 4 === p.offsetWidth, t.doesNotIncludeMarginInBodyOffset = 1 !== a.offsetTop, e.getComputedStyle && (t.pixelPosition = "1%" !== (e.getComputedStyle(p, null) || {}).top, t.boxSizingReliable = "4px" === (e.getComputedStyle(p, null) || {
- width: "4px"
- }).width, r = p.appendChild(j.createElement("div")), r.style.cssText = p.style.cssText = o, r.style.marginRight = r.style.width = "0", p.style.width = "1px", t.reliableMarginRight = !parseFloat((e.getComputedStyle(r, null) || {}).marginRight)), typeof p.style.zoom !== A && (p.innerHTML = "", p.style.cssText = o + "width:1px;padding:1px;display:inline;zoom:1", t.inlineBlockNeedsLayout = 3 === p.offsetWidth, p.style.display = "block", p.innerHTML = "<div></div>", p.firstChild.style.width = "5px", t.shrinkWrapBlocks = 3 !== p.offsetWidth, t.inlineBlockNeedsLayout && (a.style.zoom = 1)), a.removeChild(n), n = p = i = r = null)
- }), n = o = a = s = r = i = null, t
- }();
- var oe = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/,
- ae = /([A-Z])/g;
- X.extend({
- cache: {},
- expando: "jQuery" + (P + Math.random()).replace(/\D/g, ""),
- noData: {
- embed: !0,
- object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
- applet: !0
- },
- hasData: function (e) {
- return e = e.nodeType ? X.cache[e[X.expando]] : e[X.expando], !!e && !s(e)
- },
- data: function (e, t, n) {
- return i(e, t, n)
- },
- removeData: function (e, t) {
- return o(e, t)
- },
- _data: function (e, t, n) {
- return i(e, t, n, !0)
- },
- _removeData: function (e, t) {
- return o(e, t, !0)
- },
- acceptData: function (e) {
- if (e.nodeType && 1 !== e.nodeType && 9 !== e.nodeType) return !1;
- var t = e.nodeName && X.noData[e.nodeName.toLowerCase()];
- return !t || t !== !0 && e.getAttribute("classid") === t
- }
- }), X.fn.extend({
- data: function (e, n) {
- var r, i, o = this[0],
- s = 0,
- u = null;
- if (e === t) {
- if (this.length && (u = X.data(o), 1 === o.nodeType && !X._data(o, "parsedAttrs"))) {
- for (r = o.attributes; s < r.length; s++) i = r[s].name, i.indexOf("data-") || (i = X.camelCase(i.slice(5)), a(o, i, u[i]));
- X._data(o, "parsedAttrs", !0)
- }
- return u
- }
- return "object" == typeof e ? this.each(function () {
- X.data(this, e)
- }) : X.access(this, function (n) {
- return n === t ? o ? a(o, e, X.data(o, e)) : null : void this.each(function () {
- X.data(this, e, n)
- })
- }, null, n, arguments.length > 1, null, !0)
- },
- removeData: function (e) {
- return this.each(function () {
- X.removeData(this, e)
- })
- }
- }), X.extend({
- queue: function (e, t, n) {
- var r;
- return e ? (t = (t || "fx") + "queue", r = X._data(e, t), n && (!r || X.isArray(n) ? r = X._data(e, t, X.makeArray(n)) : r.push(n)), r || []) : void 0
- },
- dequeue: function (e, t) {
- t = t || "fx";
- var n = X.queue(e, t),
- r = n.length,
- i = n.shift(),
- o = X._queueHooks(e, t),
- a = function () {
- X.dequeue(e, t)
- };
- "inprogress" === i && (i = n.shift(), r--), o.cur = i, i && ("fx" === t && n.unshift("inprogress"), delete o.stop, i.call(e, a, o)), !r && o && o.empty.fire()
- },
- _queueHooks: function (e, t) {
- var n = t + "queueHooks";
- return X._data(e, n) || X._data(e, n, {
- empty: X.Callbacks("once memory").add(function () {
- X._removeData(e, t + "queue"), X._removeData(e, n)
- })
- })
- }
- }), X.fn.extend({
- queue: function (e, n) {
- var r = 2;
- return "string" != typeof e && (n = e, e = "fx", r--), arguments.length < r ? X.queue(this[0], e) : n === t ? this : this.each(function () {
- var t = X.queue(this, e, n);
- X._queueHooks(this, e), "fx" === e && "inprogress" !== t[0] && X.dequeue(this, e)
- })
- },
- dequeue: function (e) {
- return this.each(function () {
- X.dequeue(this, e)
- })
- },
- delay: function (e, t) {
- return e = X.fx ? X.fx.speeds[e] || e : e, t = t || "fx", this.queue(t, function (t, n) {
- var r = setTimeout(t, e);
- n.stop = function () {
- clearTimeout(r)
- }
- })
- },
- clearQueue: function (e) {
- return this.queue(e || "fx", [])
- },
- promise: function (e, n) {
- var r, i = 1,
- o = X.Deferred(),
- a = this,
- s = this.length,
- u = function () {
- --i || o.resolveWith(a, [a])
- };
- for ("string" != typeof e && (n = e, e = t), e = e || "fx"; s--;) r = X._data(a[s], e + "queueHooks"), r && r.empty && (i++, r.empty.add(u));
- return u(), o.promise(n)
- }
- });
- var se, ue, ce = /[\t\r\n]/g,
- le = /\r/g,
- pe = /^(?:input|select|textarea|button|object)$/i,
- de = /^(?:a|area)$/i,
- fe = /^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped)$/i,
- he = /^(?:checked|selected)$/i,
- me = X.support.getSetAttribute,
- ge = X.support.input;
- X.fn.extend({
- attr: function (e, t) {
- return X.access(this, X.attr, e, t, arguments.length > 1)
- },
- removeAttr: function (e) {
- return this.each(function () {
- X.removeAttr(this, e)
- })
- },
- prop: function (e, t) {
- return X.access(this, X.prop, e, t, arguments.length > 1)
- },
- removeProp: function (e) {
- return e = X.propFix[e] || e, this.each(function () {
- try {
- this[e] = t, delete this[e]
- } catch (n) {}
- })
- },
- addClass: function (e) {
- var t, n, r, i, o, a = 0,
- s = this.length,
- u = "string" == typeof e && e;
- if (X.isFunction(e)) return this.each(function (t) {
- X(this).addClass(e.call(this, t, this.className))
- });
- if (u)
- for (t = (e || "").match(K) || []; s > a; a++)
- if (n = this[a], r = 1 === n.nodeType && (n.className ? (" " + n.className + " ").replace(ce, " ") : " ")) {
- for (o = 0; i = t[o++];) r.indexOf(" " + i + " ") < 0 && (r += i + " ");
- n.className = X.trim(r)
- } return this
- },
- removeClass: function (e) {
- var t, n, r, i, o, a = 0,
- s = this.length,
- u = 0 === arguments.length || "string" == typeof e && e;
- if (X.isFunction(e)) return this.each(function (t) {
- X(this).removeClass(e.call(this, t, this.className))
- });
- if (u)
- for (t = (e || "").match(K) || []; s > a; a++)
- if (n = this[a], r = 1 === n.nodeType && (n.className ? (" " + n.className + " ").replace(ce, " ") : "")) {
- for (o = 0; i = t[o++];)
- for (; r.indexOf(" " + i + " ") >= 0;) r = r.replace(" " + i + " ", " ");
- n.className = e ? X.trim(r) : ""
- } return this
- },
- toggleClass: function (e, t) {
- var n = typeof e,
- r = "boolean" == typeof t;
- return X.isFunction(e) ? this.each(function (n) {
- X(this).toggleClass(e.call(this, n, this.className, t), t)
- }) : this.each(function () {
- if ("string" === n)
- for (var i, o = 0, a = X(this), s = t, u = e.match(K) || []; i = u[o++];) s = r ? s : !a.hasClass(i), a[s ? "addClass" : "removeClass"](i);
- else(n === A || "boolean" === n) && (this.className && X._data(this, "__className__", this.className), this.className = this.className || e === !1 ? "" : X._data(this, "__className__") || "")
- })
- },
- hasClass: function (e) {
- for (var t = " " + e + " ", n = 0, r = this.length; r > n; n++)
- if (1 === this[n].nodeType && (" " + this[n].className + " ").replace(ce, " ").indexOf(t) >= 0) return !0;
- return !1
- },
- val: function (e) {
- var n, r, i, o = this[0]; {
- if (arguments.length) return i = X.isFunction(e), this.each(function (n) {
- var o, a = X(this);
- 1 === this.nodeType && (o = i ? e.call(this, n, a.val()) : e, null == o ? o = "" : "number" == typeof o ? o += "" : X.isArray(o) && (o = X.map(o, function (e) {
- return null == e ? "" : e + ""
- })), r = X.valHooks[this.type] || X.valHooks[this.nodeName.toLowerCase()], r && "set" in r && r.set(this, o, "value") !== t || (this.value = o))
- });
- if (o) return r = X.valHooks[o.type] || X.valHooks[o.nodeName.toLowerCase()], r && "get" in r && (n = r.get(o, "value")) !== t ? n : (n = o.value, "string" == typeof n ? n.replace(le, "") : null == n ? "" : n)
- }
- }
- }), X.extend({
- valHooks: {
- option: {
- get: function (e) {
- var t = e.attributes.value;
- return !t || t.specified ? e.value : e.text
- }
- },
- select: {
- get: function (e) {
- for (var t, n, r = e.options, i = e.selectedIndex, o = "select-one" === e.type || 0 > i, a = o ? null : [], s = o ? i + 1 : r.length, u = 0 > i ? s : o ? i : 0; s > u; u++)
- if (n = r[u], (n.selected || u === i) && (X.support.optDisabled ? !n.disabled : null === n.getAttribute("disabled")) && (!n.parentNode.disabled || !X.nodeName(n.parentNode, "optgroup"))) {
- if (t = X(n).val(), o) return t;
- a.push(t)
- } return a
- },
- set: function (e, t) {
- var n = X.makeArray(t);
- return X(e).find("option").each(function () {
- this.selected = X.inArray(X(this).val(), n) >= 0
- }), n.length || (e.selectedIndex = -1), n
- }
- }
- },
- attr: function (e, n, r) {
- var i, o, a, s = e.nodeType;
- if (e && 3 !== s && 8 !== s && 2 !== s) return typeof e.getAttribute === A ? X.prop(e, n, r) : (o = 1 !== s || !X.isXMLDoc(e), o && (n = n.toLowerCase(), i = X.attrHooks[n] || (fe.test(n) ? ue : se)), r === t ? i && o && "get" in i && null !== (a = i.get(e, n)) ? a : (typeof e.getAttribute !== A && (a = e.getAttribute(n)), null == a ? t : a) : null !== r ? i && o && "set" in i && (a = i.set(e, r, n)) !== t ? a : (e.setAttribute(n, r + ""), r) : void X.removeAttr(e, n))
- },
- removeAttr: function (e, t) {
- var n, r, i = 0,
- o = t && t.match(K);
- if (o && 1 === e.nodeType)
- for (; n = o[i++];) r = X.propFix[n] || n, fe.test(n) ? !me && he.test(n) ? e[X.camelCase("default-" + n)] = e[r] = !1 : e[r] = !1 : X.attr(e, n, ""), e.removeAttribute(me ? n : r)
- },
- attrHooks: {
- type: {
- set: function (e, t) {
- if (!X.support.radioValue && "radio" === t && X.nodeName(e, "input")) {
- var n = e.value;
- return e.setAttribute("type", t), n && (e.value = n), t
- }
- }
- }
- },
- propFix: {
- tabindex: "tabIndex",
- readonly: "readOnly",
- "for": "htmlFor",
- "class": "className",
- maxlength: "maxLength",
- cellspacing: "cellSpacing",
- cellpadding: "cellPadding",
- rowspan: "rowSpan",
- colspan: "colSpan",
- usemap: "useMap",
- frameborder: "frameBorder",
- contenteditable: "contentEditable"
- },
- prop: function (e, n, r) {
- var i, o, a, s = e.nodeType;
- if (e && 3 !== s && 8 !== s && 2 !== s) return a = 1 !== s || !X.isXMLDoc(e), a && (n = X.propFix[n] || n, o = X.propHooks[n]), r !== t ? o && "set" in o && (i = o.set(e, r, n)) !== t ? i : e[n] = r : o && "get" in o && null !== (i = o.get(e, n)) ? i : e[n]
- },
- propHooks: {
- tabIndex: {
- get: function (e) {
- var n = e.getAttributeNode("tabindex");
- return n && n.specified ? parseInt(n.value, 10) : pe.test(e.nodeName) || de.test(e.nodeName) && e.href ? 0 : t
- }
- }
- }
- }), ue = {
- get: function (e, n) {
- var r = X.prop(e, n),
- i = "boolean" == typeof r && e.getAttribute(n),
- o = "boolean" == typeof r ? ge && me ? null != i : he.test(n) ? e[X.camelCase("default-" + n)] : !!i : e.getAttributeNode(n);
- return o && o.value !== !1 ? n.toLowerCase() : t
- },
- set: function (e, t, n) {
- return t === !1 ? X.removeAttr(e, n) : ge && me || !he.test(n) ? e.setAttribute(!me && X.propFix[n] || n, n) : e[X.camelCase("default-" + n)] = e[n] = !0, n
- }
- }, ge && me || (X.attrHooks.value = {
- get: function (e, n) {
- var r = e.getAttributeNode(n);
- return X.nodeName(e, "input") ? e.defaultValue : r && r.specified ? r.value : t
- },
- set: function (e, t, n) {
- return X.nodeName(e, "input") ? void(e.defaultValue = t) : se && se.set(e, t, n)
- }
- }), me || (se = X.valHooks.button = {
- get: function (e, n) {
- var r = e.getAttributeNode(n);
- return r && ("id" === n || "name" === n || "coords" === n ? "" !== r.value : r.specified) ? r.value : t
- },
- set: function (e, n, r) {
- var i = e.getAttributeNode(r);
- return i || e.setAttributeNode(i = e.ownerDocument.createAttribute(r)), i.value = n += "", "value" === r || n === e.getAttribute(r) ? n : t
- }
- }, X.attrHooks.contenteditable = {
- get: se.get,
- set: function (e, t, n) {
- se.set(e, "" === t ? !1 : t, n)
- }
- }, X.each(["width", "height"], function (e, t) {
- X.attrHooks[t] = X.extend(X.attrHooks[t], {
- set: function (e, n) {
- return "" === n ? (e.setAttribute(t, "auto"), n) : void 0
- }
- })
- })), X.support.hrefNormalized || (X.each(["href", "src", "width", "height"], function (e, n) {
- X.attrHooks[n] = X.extend(X.attrHooks[n], {
- get: function (e) {
- var r = e.getAttribute(n, 2);
- return null == r ? t : r
- }
- })
- }), X.each(["href", "src"], function (e, t) {
- X.propHooks[t] = {
- get: function (e) {
- return e.getAttribute(t, 4)
- }
- }
- })), X.support.style || (X.attrHooks.style = {
- get: function (e) {
- return e.style.cssText || t
- },
- set: function (e, t) {
- return e.style.cssText = t + ""
- }
- }), X.support.optSelected || (X.propHooks.selected = X.extend(X.propHooks.selected, {
- get: function (e) {
- var t = e.parentNode;
- return t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex), null
- }
- })), X.support.enctype || (X.propFix.enctype = "encoding"), X.support.checkOn || X.each(["radio", "checkbox"], function () {
- X.valHooks[this] = {
- get: function (e) {
- return null === e.getAttribute("value") ? "on" : e.value
- }
- }
- }), X.each(["radio", "checkbox"], function () {
- X.valHooks[this] = X.extend(X.valHooks[this], {
- set: function (e, t) {
- return X.isArray(t) ? e.checked = X.inArray(X(e).val(), t) >= 0 : void 0
- }
- })
- });
- var ve = /^(?:input|select|textarea)$/i,
- ye = /^key/,
- be = /^(?:mouse|contextmenu)|click/,
- xe = /^(?:focusinfocus|focusoutblur)$/,
- Ee = /^([^.]*)(?:\.(.+)|)$/;
- X.event = {
- global: {},
- add: function (e, n, r, i, o) {
- var a, s, u, c, l, p, d, f, h, m, g, v = X._data(e);
- if (v) {
- for (r.handler && (c = r, r = c.handler, o = c.selector), r.guid || (r.guid = X.guid++), (s = v.events) || (s = v.events = {}), (p = v.handle) || (p = v.handle = function (e) {
- return typeof X === A || e && X.event.triggered === e.type ? t : X.event.dispatch.apply(p.elem, arguments)
- }, p.elem = e), n = (n || "").match(K) || [""], u = n.length; u--;) a = Ee.exec(n[u]) || [], h = g = a[1], m = (a[2] || "").split(".").sort(), l = X.event.special[h] || {}, h = (o ? l.delegateType : l.bindType) || h, l = X.event.special[h] || {}, d = X.extend({
- type: h,
- origType: g,
- data: i,
- handler: r,
- guid: r.guid,
- selector: o,
- needsContext: o && X.expr.match.needsContext.test(o),
- namespace: m.join(".")
- }, c), (f = s[h]) || (f = s[h] = [], f.delegateCount = 0, l.setup && l.setup.call(e, i, m, p) !== !1 || (e.addEventListener ? e.addEventListener(h, p, !1) : e.attachEvent && e.attachEvent("on" + h, p))), l.add && (l.add.call(e, d), d.handler.guid || (d.handler.guid = r.guid)), o ? f.splice(f.delegateCount++, 0, d) : f.push(d), X.event.global[h] = !0;
- e = null
- }
- },
- remove: function (e, t, n, r, i) {
- var o, a, s, u, c, l, p, d, f, h, m, g = X.hasData(e) && X._data(e);
- if (g && (l = g.events)) {
- for (t = (t || "").match(K) || [""], c = t.length; c--;)
- if (s = Ee.exec(t[c]) || [], f = m = s[1], h = (s[2] || "").split(".").sort(), f) {
- for (p = X.event.special[f] || {}, f = (r ? p.delegateType : p.bindType) || f, d = l[f] || [], s = s[2] && new RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)"), u = o = d.length; o--;) a = d[o], !i && m !== a.origType || n && n.guid !== a.guid || s && !s.test(a.namespace) || r && r !== a.selector && ("**" !== r || !a.selector) || (d.splice(o, 1), a.selector && d.delegateCount--, p.remove && p.remove.call(e, a));
- u && !d.length && (p.teardown && p.teardown.call(e, h, g.handle) !== !1 || X.removeEvent(e, f, g.handle), delete l[f])
- } else
- for (f in l) X.event.remove(e, f + t[c], n, r, !0);
- X.isEmptyObject(l) && (delete g.handle, X._removeData(e, "events"))
- }
- },
- trigger: function (n, r, i, o) {
- var a, s, u, c, l, p, d, f = [i || j],
- h = $.call(n, "type") ? n.type : n,
- m = $.call(n, "namespace") ? n.namespace.split(".") : [];
- if (u = p = i = i || j, 3 !== i.nodeType && 8 !== i.nodeType && !xe.test(h + X.event.triggered) && (h.indexOf(".") >= 0 && (m = h.split("."), h = m.shift(), m.sort()), s = h.indexOf(":") < 0 && "on" + h, n = n[X.expando] ? n : new X.Event(h, "object" == typeof n && n), n.isTrigger = !0, n.namespace = m.join("."), n.namespace_re = n.namespace ? new RegExp("(^|\\.)" + m.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, n.result = t, n.target || (n.target = i), r = null == r ? [n] : X.makeArray(r, [n]), l = X.event.special[h] || {}, o || !l.trigger || l.trigger.apply(i, r) !== !1)) {
- if (!o && !l.noBubble && !X.isWindow(i)) {
- for (c = l.delegateType || h, xe.test(c + h) || (u = u.parentNode); u; u = u.parentNode) f.push(u), p = u;
- p === (i.ownerDocument || j) && f.push(p.defaultView || p.parentWindow || e)
- }
- for (d = 0;
- (u = f[d++]) && !n.isPropagationStopped();) n.type = d > 1 ? c : l.bindType || h, a = (X._data(u, "events") || {})[n.type] && X._data(u, "handle"), a && a.apply(u, r), a = s && u[s], a && X.acceptData(u) && a.apply && a.apply(u, r) === !1 && n.preventDefault();
- if (n.type = h, !o && !n.isDefaultPrevented() && (!l._default || l._default.apply(i.ownerDocument, r) === !1) && ("click" !== h || !X.nodeName(i, "a")) && X.acceptData(i) && s && i[h] && !X.isWindow(i)) {
- p = i[s], p && (i[s] = null), X.event.triggered = h;
- try {
- i[h]()
- } catch (g) {}
- X.event.triggered = t, p && (i[s] = p)
- }
- return n.result
- }
- },
- dispatch: function (e) {
- e = X.event.fix(e);
- var n, r, i, o, a, s = [],
- u = H.call(arguments),
- c = (X._data(this, "events") || {})[e.type] || [],
- l = X.event.special[e.type] || {};
- if (u[0] = e, e.delegateTarget = this, !l.preDispatch || l.preDispatch.call(this, e) !== !1) {
- for (s = X.event.handlers.call(this, e, c), n = 0;
- (o = s[n++]) && !e.isPropagationStopped();)
- for (e.currentTarget = o.elem, a = 0;
- (i = o.handlers[a++]) && !e.isImmediatePropagationStopped();)(!e.namespace_re || e.namespace_re.test(i.namespace)) && (e.handleObj = i, e.data = i.data, r = ((X.event.special[i.origType] || {}).handle || i.handler).apply(o.elem, u), r !== t && (e.result = r) === !1 && (e.preventDefault(), e.stopPropagation()));
- return l.postDispatch && l.postDispatch.call(this, e), e.result
- }
- },
- handlers: function (e, n) {
- var r, i, o, a, s = [],
- u = n.delegateCount,
- c = e.target;
- if (u && c.nodeType && (!e.button || "click" !== e.type))
- for (; c != this; c = c.parentNode || this)
- if (1 === c.nodeType && (c.disabled !== !0 || "click" !== e.type)) {
- for (o = [], a = 0; u > a; a++) i = n[a], r = i.selector + " ", o[r] === t && (o[r] = i.needsContext ? X(r, this).index(c) >= 0 : X.find(r, this, null, [c]).length), o[r] && o.push(i);
- o.length && s.push({
- elem: c,
- handlers: o
- })
- } return u < n.length && s.push({
- elem: this,
- handlers: n.slice(u)
- }), s
- },
- fix: function (e) {
- if (e[X.expando]) return e;
- var t, n, r, i = e.type,
- o = e,
- a = this.fixHooks[i];
- for (a || (this.fixHooks[i] = a = be.test(i) ? this.mouseHooks : ye.test(i) ? this.keyHooks : {}), r = a.props ? this.props.concat(a.props) : this.props, e = new X.Event(o), t = r.length; t--;) n = r[t], e[n] = o[n];
- return e.target || (e.target = o.srcElement || j), 3 === e.target.nodeType && (e.target = e.target.parentNode), e.metaKey = !!e.metaKey, a.filter ? a.filter(e, o) : e
- },
- props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
- fixHooks: {},
- keyHooks: {
- props: "char charCode key keyCode".split(" "),
- filter: function (e, t) {
- return null == e.which && (e.which = null != t.charCode ? t.charCode : t.keyCode), e
- }
- },
- mouseHooks: {
- props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
- filter: function (e, n) {
- var r, i, o, a = n.button,
- s = n.fromElement;
- return null == e.pageX && null != n.clientX && (i = e.target.ownerDocument || j, o = i.documentElement, r = i.body, e.pageX = n.clientX + (o && o.scrollLeft || r && r.scrollLeft || 0) - (o && o.clientLeft || r && r.clientLeft || 0), e.pageY = n.clientY + (o && o.scrollTop || r && r.scrollTop || 0) - (o && o.clientTop || r && r.clientTop || 0)), !e.relatedTarget && s && (e.relatedTarget = s === e.target ? n.toElement : s), e.which || a === t || (e.which = 1 & a ? 1 : 2 & a ? 3 : 4 & a ? 2 : 0), e
- }
- },
- special: {
- load: {
- noBubble: !0
- },
- click: {
- trigger: function () {
- return X.nodeName(this, "input") && "checkbox" === this.type && this.click ? (this.click(), !1) : void 0
- }
- },
- focus: {
- trigger: function () {
- if (this !== j.activeElement && this.focus) try {
- return this.focus(), !1
- } catch (e) {}
- },
- delegateType: "focusin"
- },
- blur: {
- trigger: function () {
- return this === j.activeElement && this.blur ? (this.blur(), !1) : void 0
- },
- delegateType: "focusout"
- },
- beforeunload: {
- postDispatch: function (e) {
- e.result !== t && (e.originalEvent.returnValue = e.result)
- }
- }
- },
- simulate: function (e, t, n, r) {
- var i = X.extend(new X.Event, n, {
- type: e,
- isSimulated: !0,
- originalEvent: {}
- });
- r ? X.event.trigger(i, null, t) : X.event.dispatch.call(t, i), i.isDefaultPrevented() && n.preventDefault()
- }
- }, X.removeEvent = j.removeEventListener ? function (e, t, n) {
- e.removeEventListener && e.removeEventListener(t, n, !1)
- } : function (e, t, n) {
- var r = "on" + t;
- e.detachEvent && (typeof e[r] === A && (e[r] = null), e.detachEvent(r, n))
- }, X.Event = function (e, t) {
- return this instanceof X.Event ? (e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || e.returnValue === !1 || e.getPreventDefault && e.getPreventDefault() ? u : c) : this.type = e, t && X.extend(this, t), this.timeStamp = e && e.timeStamp || X.now(), void(this[X.expando] = !0)) : new X.Event(e, t)
- }, X.Event.prototype = {
- isDefaultPrevented: c,
- isPropagationStopped: c,
- isImmediatePropagationStopped: c,
- preventDefault: function () {
- var e = this.originalEvent;
- this.isDefaultPrevented = u, e && (e.preventDefault ? e.preventDefault() : e.returnValue = !1)
- },
- stopPropagation: function () {
- var e = this.originalEvent;
- this.isPropagationStopped = u, e && (e.stopPropagation && e.stopPropagation(), e.cancelBubble = !0)
- },
- stopImmediatePropagation: function () {
- this.isImmediatePropagationStopped = u, this.stopPropagation()
- }
- }, X.each({
- mouseenter: "mouseover",
- mouseleave: "mouseout"
- }, function (e, t) {
- X.event.special[e] = {
- delegateType: t,
- bindType: t,
- handle: function (e) {
- var n, r = this,
- i = e.relatedTarget,
- o = e.handleObj;
- return (!i || i !== r && !X.contains(r, i)) && (e.type = o.origType, n = o.handler.apply(this, arguments), e.type = t), n
- }
- }
- }), X.support.submitBubbles || (X.event.special.submit = {
- setup: function () {
- return X.nodeName(this, "form") ? !1 : void X.event.add(this, "click._submit keypress._submit", function (e) {
- var n = e.target,
- r = X.nodeName(n, "input") || X.nodeName(n, "button") ? n.form : t;
- r && !X._data(r, "submitBubbles") && (X.event.add(r, "submit._submit", function (e) {
- e._submit_bubble = !0
- }), X._data(r, "submitBubbles", !0))
- })
- },
- postDispatch: function (e) {
- e._submit_bubble && (delete e._submit_bubble, this.parentNode && !e.isTrigger && X.event.simulate("submit", this.parentNode, e, !0))
- },
- teardown: function () {
- return X.nodeName(this, "form") ? !1 : void X.event.remove(this, "._submit")
- }
- }), X.support.changeBubbles || (X.event.special.change = {
- setup: function () {
- return ve.test(this.nodeName) ? (("checkbox" === this.type || "radio" === this.type) && (X.event.add(this, "propertychange._change", function (e) {
- "checked" === e.originalEvent.propertyName && (this._just_changed = !0)
- }), X.event.add(this, "click._change", function (e) {
- this._just_changed && !e.isTrigger && (this._just_changed = !1), X.event.simulate("change", this, e, !0)
- })), !1) : void X.event.add(this, "beforeactivate._change", function (e) {
- var t = e.target;
- ve.test(t.nodeName) && !X._data(t, "changeBubbles") && (X.event.add(t, "change._change", function (e) {
- !this.parentNode || e.isSimulated || e.isTrigger || X.event.simulate("change", this.parentNode, e, !0)
- }), X._data(t, "changeBubbles", !0))
- })
- },
- handle: function (e) {
- var t = e.target;
- return this !== t || e.isSimulated || e.isTrigger || "radio" !== t.type && "checkbox" !== t.type ? e.handleObj.handler.apply(this, arguments) : void 0
- },
- teardown: function () {
- return X.event.remove(this, "._change"), !ve.test(this.nodeName)
- }
- }), X.support.focusinBubbles || X.each({
- focus: "focusin",
- blur: "focusout"
- }, function (e, t) {
- var n = 0,
- r = function (e) {
- X.event.simulate(t, e.target, X.event.fix(e), !0)
- };
- X.event.special[t] = {
- setup: function () {
- 0 === n++ && j.addEventListener(e, r, !0)
- },
- teardown: function () {
- 0 === --n && j.removeEventListener(e, r, !0)
- }
- }
- }), X.fn.extend({
- on: function (e, n, r, i, o) {
- var a, s;
- if ("object" == typeof e) {
- "string" != typeof n && (r = r || n, n = t);
- for (a in e) this.on(a, n, r, e[a], o);
- return this
- }
- if (null == r && null == i ? (i = n, r = n = t) : null == i && ("string" == typeof n ? (i = r, r = t) : (i = r, r = n, n = t)), i === !1) i = c;
- else if (!i) return this;
- return 1 === o && (s = i, i = function (e) {
- return X().off(e), s.apply(this, arguments)
- }, i.guid = s.guid || (s.guid = X.guid++)), this.each(function () {
- X.event.add(this, e, i, r, n)
- })
- },
- one: function (e, t, n, r) {
- return this.on(e, t, n, r, 1)
- },
- off: function (e, n, r) {
- var i, o;
- if (e && e.preventDefault && e.handleObj) return i = e.handleObj, X(e.delegateTarget).off(i.namespace ? i.origType + "." + i.namespace : i.origType, i.selector, i.handler), this;
- if ("object" == typeof e) {
- for (o in e) this.off(o, n, e[o]);
- return this
- }
- return (n === !1 || "function" == typeof n) && (r = n, n = t), r === !1 && (r = c), this.each(function () {
- X.event.remove(this, e, r, n)
- })
- },
- bind: function (e, t, n) {
- return this.on(e, null, t, n)
- },
- unbind: function (e, t) {
- return this.off(e, null, t)
- },
- delegate: function (e, t, n, r) {
- return this.on(t, e, n, r)
- },
- undelegate: function (e, t, n) {
- return 1 === arguments.length ? this.off(e, "**") : this.off(t, e || "**", n)
- },
- trigger: function (e, t) {
- return this.each(function () {
- X.event.trigger(e, t, this)
- })
- },
- triggerHandler: function (e, t) {
- var n = this[0];
- return n ? X.event.trigger(e, t, n, !0) : void 0
- }
- }),
- function (e, t) {
- function n(e, t, n, r) {
- var i, o, a, s, u, c, l, p, d, f;
- if ((t ? t.ownerDocument || t : K) !== P && O(t), t = t || P, n = n || [], !e || "string" != typeof e) return n;
- if (1 !== (s = t.nodeType) && 9 !== s) return [];
- if (B && !r) {
- if (i = Ce.exec(e))
- if (a = i[1]) {
- if (9 === s) {
- if (o = t.getElementById(a), !o || !o.parentNode) return n;
- if (o.id === a) return n.push(o), n
- } else if (t.ownerDocument && (o = t.ownerDocument.getElementById(a)) && $(t, o) && o.id === a) return n.push(o), n
- } else {
- if (i[2]) return oe.apply(n, t.getElementsByTagName(e)), n;
- if ((a = i[3]) && N.getElementsByClassName && t.getElementsByClassName) return oe.apply(n, t.getElementsByClassName(a)), n
- } if (N.qsa && (!H || !H.test(e))) {
- if (p = l = W, d = t, f = 9 === s && e, 1 === s && "object" !== t.nodeName.toLowerCase()) {
- for (c = m(e), (l = t.getAttribute("id")) ? p = l.replace(Se, "\\$&") : t.setAttribute("id", p), p = "[id='" + p + "'] ", u = c.length; u--;) c[u] = p + g(c[u]);
- d = ve.test(e) && t.parentNode || t, f = c.join(",")
- }
- if (f) try {
- return oe.apply(n, d.querySelectorAll(f)), n
- } catch (h) {} finally {
- l || t.removeAttribute("id")
- }
- }
- }
- return T(e.replace(he, "$1"), t, n, r)
- }
- function r(e) {
- return we.test(e + "")
- }
- function i() {
- function e(n, r) {
- return t.push(n += " ") > L.cacheLength && delete e[t.shift()], e[n] = r
- }
- var t = [];
- return e
- }
- function o(e) {
- return e[W] = !0, e
- }
- function a(e) {
- var t = P.createElement("div");
- try {
- return !!e(t)
- } catch (n) {
- return !1
- } finally {
- t.parentNode && t.parentNode.removeChild(t), t = null
- }
- }
- function s(e, t, n) {
- e = e.split("|");
- for (var r, i = e.length, o = n ? null : t; i--;)(r = L.attrHandle[e[i]]) && r !== t || (L.attrHandle[e[i]] = o)
- }
- function u(e, t) {
- var n = e.getAttributeNode(t);
- return n && n.specified ? n.value : e[t] === !0 ? t.toLowerCase() : null
- }
- function c(e, t) {
- return e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2)
- }
- function l(e) {
- return "input" === e.nodeName.toLowerCase() ? e.defaultValue : void 0
- }
- function p(e, t) {
- var n = t && e,
- r = n && 1 === e.nodeType && 1 === t.nodeType && (~t.sourceIndex || ee) - (~e.sourceIndex || ee);
- if (r) return r;
- if (n)
- for (; n = n.nextSibling;)
- if (n === t) return -1;
- return e ? 1 : -1
- }
- function d(e) {
- return function (t) {
- var n = t.nodeName.toLowerCase();
- return "input" === n && t.type === e
- }
- }
- function f(e) {
- return function (t) {
- var n = t.nodeName.toLowerCase();
- return ("input" === n || "button" === n) && t.type === e
- }
- }
- function h(e) {
- return o(function (t) {
- return t = +t, o(function (n, r) {
- for (var i, o = e([], n.length, t), a = o.length; a--;) n[i = o[a]] && (n[i] = !(r[i] = n[i]))
- })
- })
- }
- function m(e, t) {
- var r, i, o, a, s, u, c, l = J[e + " "];
- if (l) return t ? 0 : l.slice(0);
- for (s = e, u = [], c = L.preFilter; s;) {
- (!r || (i = me.exec(s))) && (i && (s = s.slice(i[0].length) || s), u.push(o = [])), r = !1, (i = ge.exec(s)) && (r = i.shift(), o.push({
- value: r,
- type: i[0].replace(he, " ")
- }), s = s.slice(r.length));
- for (a in L.filter) !(i = Ee[a].exec(s)) || c[a] && !(i = c[a](i)) || (r = i.shift(), o.push({
- value: r,
- type: a,
- matches: i
- }), s = s.slice(r.length));
- if (!r) break
- }
- return t ? s.length : s ? n.error(e) : J(e, u).slice(0)
- }
- function g(e) {
- for (var t = 0, n = e.length, r = ""; n > t; t++) r += e[t].value;
- return r
- }
- function v(e, t, n) {
- var r = t.dir,
- i = n && "parentNode" === r,
- o = U++;
- return t.first ? function (t, n, o) {
- for (; t = t[r];)
- if (1 === t.nodeType || i) return e(t, n, o)
- } : function (t, n, a) {
- var s, u, c, l = z + " " + o;
- if (a) {
- for (; t = t[r];)
- if ((1 === t.nodeType || i) && e(t, n, a)) return !0
- } else
- for (; t = t[r];)
- if (1 === t.nodeType || i)
- if (c = t[W] || (t[W] = {}), (u = c[r]) && u[0] === l) {
- if ((s = u[1]) === !0 || s === M) return s === !0
- } else if (u = c[r] = [l], u[1] = e(t, n, a) || M, u[1] === !0) return !0
- }
- }
- function y(e) {
- return e.length > 1 ? function (t, n, r) {
- for (var i = e.length; i--;)
- if (!e[i](t, n, r)) return !1;
- return !0
- } : e[0]
- }
- function b(e, t, n, r, i) {
- for (var o, a = [], s = 0, u = e.length, c = null != t; u > s; s++)(o = e[s]) && (!n || n(o, r, i)) && (a.push(o), c && t.push(s));
- return a
- }
- function x(e, t, n, r, i, a) {
- return r && !r[W] && (r = x(r)), i && !i[W] && (i = x(i, a)), o(function (o, a, s, u) {
- var c, l, p, d = [],
- f = [],
- h = a.length,
- m = o || C(t || "*", s.nodeType ? [s] : s, []),
- g = !e || !o && t ? m : b(m, d, e, s, u),
- v = n ? i || (o ? e : h || r) ? [] : a : g;
- if (n && n(g, v, s, u), r)
- for (c = b(v, f), r(c, [], s, u), l = c.length; l--;)(p = c[l]) && (v[f[l]] = !(g[f[l]] = p));
- if (o) {
- if (i || e) {
- if (i) {
- for (c = [], l = v.length; l--;)(p = v[l]) && c.push(g[l] = p);
- i(null, v = [], c, u)
- }
- for (l = v.length; l--;)(p = v[l]) && (c = i ? se.call(o, p) : d[l]) > -1 && (o[c] = !(a[c] = p))
- }
- } else v = b(v === a ? v.splice(h, v.length) : v), i ? i(null, a, v, u) : oe.apply(a, v)
- })
- }
- function E(e) {
- for (var t, n, r, i = e.length, o = L.relative[e[0].type], a = o || L.relative[" "], s = o ? 1 : 0, u = v(function (e) {
- return e === t
- }, a, !0), c = v(function (e) {
- return se.call(t, e) > -1
- }, a, !0), l = [function (e, n, r) {
- return !o && (r || n !== q) || ((t = n).nodeType ? u(e, n, r) : c(e, n, r))
- }]; i > s; s++)
- if (n = L.relative[e[s].type]) l = [v(y(l), n)];
- else {
- if (n = L.filter[e[s].type].apply(null, e[s].matches), n[W]) {
- for (r = ++s; i > r && !L.relative[e[r].type]; r++);
- return x(s > 1 && y(l), s > 1 && g(e.slice(0, s - 1).concat({
- value: " " === e[s - 2].type ? "*" : ""
- })).replace(he, "$1"), n, r > s && E(e.slice(s, r)), i > r && E(e = e.slice(r)), i > r && g(e))
- }
- l.push(n)
- } return y(l)
- }
- function w(e, t) {
- var r = 0,
- i = t.length > 0,
- a = e.length > 0,
- s = function (o, s, u, c, l) {
- var p, d, f, h = [],
- m = 0,
- g = "0",
- v = o && [],
- y = null != l,
- x = q,
- E = o || a && L.find.TAG("*", l && s.parentNode || s),
- w = z += null == x ? 1 : Math.random() || .1;
- for (y && (q = s !== P && s, M = r); null != (p = E[g]); g++) {
- if (a && p) {
- for (d = 0; f = e[d++];)
- if (f(p, s, u)) {
- c.push(p);
- break
- } y && (z = w, M = ++r)
- }
- i && ((p = !f && p) && m--, o && v.push(p))
- }
- if (m += g, i && g !== m) {
- for (d = 0; f = t[d++];) f(v, h, s, u);
- if (o) {
- if (m > 0)
- for (; g--;) v[g] || h[g] || (h[g] = re.call(c));
- h = b(h)
- }
- oe.apply(c, h), y && !o && h.length > 0 && m + t.length > 1 && n.uniqueSort(c)
- }
- return y && (z = w, q = x), v
- };
- return i ? o(s) : s
- }
- function C(e, t, r) {
- for (var i = 0, o = t.length; o > i; i++) n(e, t[i], r);
- return r
- }
- function T(e, t, n, r) {
- var i, o, a, s, u, c = m(e);
- if (!r && 1 === c.length) {
- if (o = c[0] = c[0].slice(0), o.length > 2 && "ID" === (a = o[0]).type && N.getById && 9 === t.nodeType && B && L.relative[o[1].type]) {
- if (t = (L.find.ID(a.matches[0].replace(Ne, Me), t) || [])[0], !t) return n;
- e = e.slice(o.shift().value.length)
- }
- for (i = Ee.needsContext.test(e) ? 0 : o.length; i-- && (a = o[i], !L.relative[s = a.type]);)
- if ((u = L.find[s]) && (r = u(a.matches[0].replace(Ne, Me), ve.test(o[0].type) && t.parentNode || t))) {
- if (o.splice(i, 1), e = r.length && g(o), !e) return oe.apply(n, r), n;
- break
- }
- }
- return j(e, c)(r, t, !B, n, ve.test(e)), n
- }
- function k() {}
- var S, N, M, L, D, A, j, q, _, O, P, R, B, H, F, I, $, W = "sizzle" + -new Date,
- K = e.document,
- z = 0,
- U = 0,
- Y = i(),
- J = i(),
- V = i(),
- G = !1,
- Q = function () {
- return 0
- },
- Z = typeof t,
- ee = 1 << 31,
- te = {}.hasOwnProperty,
- ne = [],
- re = ne.pop,
- ie = ne.push,
- oe = ne.push,
- ae = ne.slice,
- se = ne.indexOf || function (e) {
- for (var t = 0, n = this.length; n > t; t++)
- if (this[t] === e) return t;
- return -1
- },
- ue = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
- ce = "[\\x20\\t\\r\\n\\f]",
- le = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",
- pe = le.replace("w", "w#"),
- de = "\\[" + ce + "*(" + le + ")" + ce + "*(?:([*^$|!~]?=)" + ce + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + pe + ")|)|)" + ce + "*\\]",
- fe = ":(" + le + ")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|" + de.replace(3, 8) + ")*)|.*)\\)|)",
- he = new RegExp("^" + ce + "+|((?:^|[^\\\\])(?:\\\\.)*)" + ce + "+$", "g"),
- me = new RegExp("^" + ce + "*," + ce + "*"),
- ge = new RegExp("^" + ce + "*([>+~]|" + ce + ")" + ce + "*"),
- ve = new RegExp(ce + "*[+~]"),
- ye = new RegExp("=" + ce + "*([^\\]'\"]*)" + ce + "*\\]", "g"),
- be = new RegExp(fe),
- xe = new RegExp("^" + pe + "$"),
- Ee = {
- ID: new RegExp("^#(" + le + ")"),
- CLASS: new RegExp("^\\.(" + le + ")"),
- TAG: new RegExp("^(" + le.replace("w", "w*") + ")"),
- ATTR: new RegExp("^" + de),
- PSEUDO: new RegExp("^" + fe),
- CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + ce + "*(even|odd|(([+-]|)(\\d*)n|)" + ce + "*(?:([+-]|)" + ce + "*(\\d+)|))" + ce + "*\\)|)", "i"),
- bool: new RegExp("^(?:" + ue + ")$", "i"),
- needsContext: new RegExp("^" + ce + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + ce + "*((?:-\\d)?\\d*)" + ce + "*\\)|)(?=[^-]|$)", "i")
- },
- we = /^[^{]+\{\s*\[native \w/,
- Ce = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
- Te = /^(?:input|select|textarea|button)$/i,
- ke = /^h\d$/i,
- Se = /'|\\/g,
- Ne = new RegExp("\\\\([\\da-f]{1,6}" + ce + "?|(" + ce + ")|.)", "ig"),
- Me = function (e, t, n) {
- var r = "0x" + t - 65536;
- return r !== r || n ? t : 0 > r ? String.fromCharCode(r + 65536) : String.fromCharCode(r >> 10 | 55296, 1023 & r | 56320)
- };
- try {
- oe.apply(ne = ae.call(K.childNodes), K.childNodes), ne[K.childNodes.length].nodeType
- } catch (Le) {
- oe = {
- apply: ne.length ? function (e, t) {
- ie.apply(e, ae.call(t))
- } : function (e, t) {
- for (var n = e.length, r = 0; e[n++] = t[r++];);
- e.length = n - 1
- }
- }
- }
- A = n.isXML = function (e) {
- var t = e && (e.ownerDocument || e).documentElement;
- return t ? "HTML" !== t.nodeName : !1
- }, N = n.support = {}, O = n.setDocument = function (e) {
- var t = e ? e.ownerDocument || e : K;
- return t !== P && 9 === t.nodeType && t.documentElement ? (P = t, R = t.documentElement, B = !A(t), N.attributes = a(function (e) {
- return e.innerHTML = "<a href='#'></a>", s("type|href|height|width", c, "#" === e.firstChild.getAttribute("href")), s(ue, u, null == e.getAttribute("disabled")), e.className = "i", !e.getAttribute("className")
- }),
- N.input = a(function (e) {
- return e.innerHTML = "<input>", e.firstChild.setAttribute("value", ""), "" === e.firstChild.getAttribute("value")
- }), s("value", l, N.attributes && N.input), N.getElementsByTagName = a(function (e) {
- return e.appendChild(t.createComment("")), !e.getElementsByTagName("*").length
- }), N.getElementsByClassName = a(function (e) {
- return e.innerHTML = "<div class='a'></div><div class='a i'></div>", e.firstChild.className = "i", 2 === e.getElementsByClassName("i").length
- }), N.getById = a(function (e) {
- return R.appendChild(e).id = W, !t.getElementsByName || !t.getElementsByName(W).length
- }), N.getById ? (L.find.ID = function (e, t) {
- if (typeof t.getElementById !== Z && B) {
- var n = t.getElementById(e);
- return n && n.parentNode ? [n] : []
- }
- }, L.filter.ID = function (e) {
- var t = e.replace(Ne, Me);
- return function (e) {
- return e.getAttribute("id") === t
- }
- }) : (delete L.find.ID, L.filter.ID = function (e) {
- var t = e.replace(Ne, Me);
- return function (e) {
- var n = typeof e.getAttributeNode !== Z && e.getAttributeNode("id");
- return n && n.value === t
- }
- }), L.find.TAG = N.getElementsByTagName ? function (e, t) {
- return typeof t.getElementsByTagName !== Z ? t.getElementsByTagName(e) : void 0
- } : function (e, t) {
- var n, r = [],
- i = 0,
- o = t.getElementsByTagName(e);
- if ("*" === e) {
- for (; n = o[i++];) 1 === n.nodeType && r.push(n);
- return r
- }
- return o
- }, L.find.CLASS = N.getElementsByClassName && function (e, t) {
- return typeof t.getElementsByClassName !== Z && B ? t.getElementsByClassName(e) : void 0
- }, F = [], H = [], (N.qsa = r(t.querySelectorAll)) && (a(function (e) {
- e.innerHTML = "<select><option selected=''></option></select>", e.querySelectorAll("[selected]").length || H.push("\\[" + ce + "*(?:value|" + ue + ")"), e.querySelectorAll(":checked").length || H.push(":checked")
- }), a(function (e) {
- var n = t.createElement("input");
- n.setAttribute("type", "hidden"), e.appendChild(n).setAttribute("t", ""), e.querySelectorAll("[t^='']").length && H.push("[*^$]=" + ce + "*(?:''|\"\")"), e.querySelectorAll(":enabled").length || H.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), H.push(",.*:")
- })), (N.matchesSelector = r(I = R.webkitMatchesSelector || R.mozMatchesSelector || R.oMatchesSelector || R.msMatchesSelector)) && a(function (e) {
- N.disconnectedMatch = I.call(e, "div"), I.call(e, "[s!='']:x"), F.push("!=", fe)
- }), H = H.length && new RegExp(H.join("|")), F = F.length && new RegExp(F.join("|")), $ = r(R.contains) || R.compareDocumentPosition ? function (e, t) {
- var n = 9 === e.nodeType ? e.documentElement : e,
- r = t && t.parentNode;
- return e === r || !(!r || 1 !== r.nodeType || !(n.contains ? n.contains(r) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(r)))
- } : function (e, t) {
- if (t)
- for (; t = t.parentNode;)
- if (t === e) return !0;
- return !1
- }, N.sortDetached = a(function (e) {
- return 1 & e.compareDocumentPosition(t.createElement("div"))
- }), Q = R.compareDocumentPosition ? function (e, n) {
- if (e === n) return G = !0, 0;
- var r = n.compareDocumentPosition && e.compareDocumentPosition && e.compareDocumentPosition(n);
- return r ? 1 & r || !N.sortDetached && n.compareDocumentPosition(e) === r ? e === t || $(K, e) ? -1 : n === t || $(K, n) ? 1 : _ ? se.call(_, e) - se.call(_, n) : 0 : 4 & r ? -1 : 1 : e.compareDocumentPosition ? -1 : 1
- } : function (e, n) {
- var r, i = 0,
- o = e.parentNode,
- a = n.parentNode,
- s = [e],
- u = [n];
- if (e === n) return G = !0, 0;
- if (!o || !a) return e === t ? -1 : n === t ? 1 : o ? -1 : a ? 1 : _ ? se.call(_, e) - se.call(_, n) : 0;
- if (o === a) return p(e, n);
- for (r = e; r = r.parentNode;) s.unshift(r);
- for (r = n; r = r.parentNode;) u.unshift(r);
- for (; s[i] === u[i];) i++;
- return i ? p(s[i], u[i]) : s[i] === K ? -1 : u[i] === K ? 1 : 0
- }, t) : P
- }, n.matches = function (e, t) {
- return n(e, null, null, t)
- }, n.matchesSelector = function (e, t) {
- if ((e.ownerDocument || e) !== P && O(e), t = t.replace(ye, "='$1']"), N.matchesSelector && B && (!F || !F.test(t)) && (!H || !H.test(t))) try {
- var r = I.call(e, t);
- if (r || N.disconnectedMatch || e.document && 11 !== e.document.nodeType) return r
- } catch (i) {}
- return n(t, P, null, [e]).length > 0
- }, n.contains = function (e, t) {
- return (e.ownerDocument || e) !== P && O(e), $(e, t)
- }, n.attr = function (e, n) {
- (e.ownerDocument || e) !== P && O(e);
- var r = L.attrHandle[n.toLowerCase()],
- i = r && te.call(L.attrHandle, n.toLowerCase()) ? r(e, n, !B) : t;
- return i === t ? N.attributes || !B ? e.getAttribute(n) : (i = e.getAttributeNode(n)) && i.specified ? i.value : null : i
- }, n.error = function (e) {
- throw new Error("Syntax error, unrecognized expression: " + e)
- }, n.uniqueSort = function (e) {
- var t, n = [],
- r = 0,
- i = 0;
- if (G = !N.detectDuplicates, _ = !N.sortStable && e.slice(0), e.sort(Q), G) {
- for (; t = e[i++];) t === e[i] && (r = n.push(i));
- for (; r--;) e.splice(n[r], 1)
- }
- return e
- }, D = n.getText = function (e) {
- var t, n = "",
- r = 0,
- i = e.nodeType;
- if (i) {
- if (1 === i || 9 === i || 11 === i) {
- if ("string" == typeof e.textContent) return e.textContent;
- for (e = e.firstChild; e; e = e.nextSibling) n += D(e)
- } else if (3 === i || 4 === i) return e.nodeValue
- } else
- for (; t = e[r]; r++) n += D(t);
- return n
- }, L = n.selectors = {
- cacheLength: 50,
- createPseudo: o,
- match: Ee,
- attrHandle: {},
- find: {},
- relative: {
- ">": {
- dir: "parentNode",
- first: !0
- },
- " ": {
- dir: "parentNode"
- },
- "+": {
- dir: "previousSibling",
- first: !0
- },
- "~": {
- dir: "previousSibling"
- }
- },
- preFilter: {
- ATTR: function (e) {
- return e[1] = e[1].replace(Ne, Me), e[3] = (e[4] || e[5] || "").replace(Ne, Me), "~=" === e[2] && (e[3] = " " + e[3] + " "), e.slice(0, 4)
- },
- CHILD: function (e) {
- return e[1] = e[1].toLowerCase(), "nth" === e[1].slice(0, 3) ? (e[3] || n.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ("even" === e[3] || "odd" === e[3])), e[5] = +(e[7] + e[8] || "odd" === e[3])) : e[3] && n.error(e[0]), e
- },
- PSEUDO: function (e) {
- var n, r = !e[5] && e[2];
- return Ee.CHILD.test(e[0]) ? null : (e[3] && e[4] !== t ? e[2] = e[4] : r && be.test(r) && (n = m(r, !0)) && (n = r.indexOf(")", r.length - n) - r.length) && (e[0] = e[0].slice(0, n), e[2] = r.slice(0, n)), e.slice(0, 3))
- }
- },
- filter: {
- TAG: function (e) {
- var t = e.replace(Ne, Me).toLowerCase();
- return "*" === e ? function () {
- return !0
- } : function (e) {
- return e.nodeName && e.nodeName.toLowerCase() === t
- }
- },
- CLASS: function (e) {
- var t = Y[e + " "];
- return t || (t = new RegExp("(^|" + ce + ")" + e + "(" + ce + "|$)")) && Y(e, function (e) {
- return t.test("string" == typeof e.className && e.className || typeof e.getAttribute !== Z && e.getAttribute("class") || "")
- })
- },
- ATTR: function (e, t, r) {
- return function (i) {
- var o = n.attr(i, e);
- return null == o ? "!=" === t : t ? (o += "", "=" === t ? o === r : "!=" === t ? o !== r : "^=" === t ? r && 0 === o.indexOf(r) : "*=" === t ? r && o.indexOf(r) > -1 : "$=" === t ? r && o.slice(-r.length) === r : "~=" === t ? (" " + o + " ").indexOf(r) > -1 : "|=" === t ? o === r || o.slice(0, r.length + 1) === r + "-" : !1) : !0
- }
- },
- CHILD: function (e, t, n, r, i) {
- var o = "nth" !== e.slice(0, 3),
- a = "last" !== e.slice(-4),
- s = "of-type" === t;
- return 1 === r && 0 === i ? function (e) {
- return !!e.parentNode
- } : function (t, n, u) {
- var c, l, p, d, f, h, m = o !== a ? "nextSibling" : "previousSibling",
- g = t.parentNode,
- v = s && t.nodeName.toLowerCase(),
- y = !u && !s;
- if (g) {
- if (o) {
- for (; m;) {
- for (p = t; p = p[m];)
- if (s ? p.nodeName.toLowerCase() === v : 1 === p.nodeType) return !1;
- h = m = "only" === e && !h && "nextSibling"
- }
- return !0
- }
- if (h = [a ? g.firstChild : g.lastChild], a && y) {
- for (l = g[W] || (g[W] = {}), c = l[e] || [], f = c[0] === z && c[1], d = c[0] === z && c[2], p = f && g.childNodes[f]; p = ++f && p && p[m] || (d = f = 0) || h.pop();)
- if (1 === p.nodeType && ++d && p === t) {
- l[e] = [z, f, d];
- break
- }
- } else if (y && (c = (t[W] || (t[W] = {}))[e]) && c[0] === z) d = c[1];
- else
- for (;
- (p = ++f && p && p[m] || (d = f = 0) || h.pop()) && ((s ? p.nodeName.toLowerCase() !== v : 1 !== p.nodeType) || !++d || (y && ((p[W] || (p[W] = {}))[e] = [z, d]), p !== t)););
- return d -= i, d === r || d % r === 0 && d / r >= 0
- }
- }
- },
- PSEUDO: function (e, t) {
- var r, i = L.pseudos[e] || L.setFilters[e.toLowerCase()] || n.error("unsupported pseudo: " + e);
- return i[W] ? i(t) : i.length > 1 ? (r = [e, e, "", t], L.setFilters.hasOwnProperty(e.toLowerCase()) ? o(function (e, n) {
- for (var r, o = i(e, t), a = o.length; a--;) r = se.call(e, o[a]), e[r] = !(n[r] = o[a])
- }) : function (e) {
- return i(e, 0, r)
- }) : i
- }
- },
- pseudos: {
- not: o(function (e) {
- var t = [],
- n = [],
- r = j(e.replace(he, "$1"));
- return r[W] ? o(function (e, t, n, i) {
- for (var o, a = r(e, null, i, []), s = e.length; s--;)(o = a[s]) && (e[s] = !(t[s] = o))
- }) : function (e, i, o) {
- return t[0] = e, r(t, null, o, n), !n.pop()
- }
- }),
- has: o(function (e) {
- return function (t) {
- return n(e, t).length > 0
- }
- }),
- contains: o(function (e) {
- return function (t) {
- return (t.textContent || t.innerText || D(t)).indexOf(e) > -1
- }
- }),
- lang: o(function (e) {
- return xe.test(e || "") || n.error("unsupported lang: " + e), e = e.replace(Ne, Me).toLowerCase(),
- function (t) {
- var n;
- do
- if (n = B ? t.lang : t.getAttribute("xml:lang") || t.getAttribute("lang")) return n = n.toLowerCase(), n === e || 0 === n.indexOf(e + "-"); while ((t = t.parentNode) && 1 === t.nodeType);
- return !1
- }
- }),
- target: function (t) {
- var n = e.location && e.location.hash;
- return n && n.slice(1) === t.id
- },
- root: function (e) {
- return e === R
- },
- focus: function (e) {
- return e === P.activeElement && (!P.hasFocus || P.hasFocus()) && !!(e.type || e.href || ~e.tabIndex)
- },
- enabled: function (e) {
- return e.disabled === !1
- },
- disabled: function (e) {
- return e.disabled === !0
- },
- checked: function (e) {
- var t = e.nodeName.toLowerCase();
- return "input" === t && !!e.checked || "option" === t && !!e.selected
- },
- selected: function (e) {
- return e.parentNode && e.parentNode.selectedIndex, e.selected === !0
- },
- empty: function (e) {
- for (e = e.firstChild; e; e = e.nextSibling)
- if (e.nodeName > "@" || 3 === e.nodeType || 4 === e.nodeType) return !1;
- return !0
- },
- parent: function (e) {
- return !L.pseudos.empty(e)
- },
- header: function (e) {
- return ke.test(e.nodeName)
- },
- input: function (e) {
- return Te.test(e.nodeName)
- },
- button: function (e) {
- var t = e.nodeName.toLowerCase();
- return "input" === t && "button" === e.type || "button" === t
- },
- text: function (e) {
- var t;
- return "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (t = e.getAttribute("type")) || t.toLowerCase() === e.type)
- },
- first: h(function () {
- return [0]
- }),
- last: h(function (e, t) {
- return [t - 1]
- }),
- eq: h(function (e, t, n) {
- return [0 > n ? n + t : n]
- }),
- even: h(function (e, t) {
- for (var n = 0; t > n; n += 2) e.push(n);
- return e
- }),
- odd: h(function (e, t) {
- for (var n = 1; t > n; n += 2) e.push(n);
- return e
- }),
- lt: h(function (e, t, n) {
- for (var r = 0 > n ? n + t : n; --r >= 0;) e.push(r);
- return e
- }),
- gt: h(function (e, t, n) {
- for (var r = 0 > n ? n + t : n; ++r < t;) e.push(r);
- return e
- })
- }
- };
- for (S in {
- radio: !0,
- checkbox: !0,
- file: !0,
- password: !0,
- image: !0
- }) L.pseudos[S] = d(S);
- for (S in {
- submit: !0,
- reset: !0
- }) L.pseudos[S] = f(S);
- j = n.compile = function (e, t) {
- var n, r = [],
- i = [],
- o = V[e + " "];
- if (!o) {
- for (t || (t = m(e)), n = t.length; n--;) o = E(t[n]), o[W] ? r.push(o) : i.push(o);
- o = V(e, w(i, r))
- }
- return o
- }, L.pseudos.nth = L.pseudos.eq, k.prototype = L.filters = L.pseudos, L.setFilters = new k, N.sortStable = W.split("").sort(Q).join("") === W, O(), [0, 0].sort(Q), N.detectDuplicates = G, n.attr = X.attr, X.find = n, X.expr = n.selectors, X.expr[":"] = X.expr.pseudos, X.unique = n.uniqueSort, X.text = n.getText, X.isXMLDoc = n.isXML, X.contains = n.contains
- }(e);
- var we = /Until$/,
- Ce = /^(?:parents|prev(?:Until|All))/,
- Te = /^.[^:#\[\.,]*$/,
- ke = X.expr.match.needsContext,
- Se = {
- children: !0,
- contents: !0,
- next: !0,
- prev: !0
- };
- X.fn.extend({
- find: function (e) {
- var t, n, r, i = this.length;
- if ("string" != typeof e) return r = this, this.pushStack(X(e).filter(function () {
- for (t = 0; i > t; t++)
- if (X.contains(r[t], this)) return !0
- }));
- for (n = [], t = 0; i > t; t++) X.find(e, this[t], n);
- return n = this.pushStack(i > 1 ? X.unique(n) : n), n.selector = (this.selector ? this.selector + " " : "") + e, n
- },
- has: function (e) {
- var t, n = X(e, this),
- r = n.length;
- return this.filter(function () {
- for (t = 0; r > t; t++)
- if (X.contains(this, n[t])) return !0
- })
- },
- not: function (e) {
- return this.pushStack(p(this, e, !1))
- },
- filter: function (e) {
- return this.pushStack(p(this, e, !0))
- },
- is: function (e) {
- return !!e && ("string" == typeof e ? ke.test(e) ? X(e, this.context).index(this[0]) >= 0 : X.filter(e, this).length > 0 : this.filter(e).length > 0)
- },
- closest: function (e, t) {
- for (var n, r = 0, i = this.length, o = [], a = ke.test(e) || "string" != typeof e ? X(e, t || this.context) : 0; i > r; r++)
- for (n = this[r]; n && n.ownerDocument && n !== t && 11 !== n.nodeType;) {
- if (a ? a.index(n) > -1 : X.find.matchesSelector(n, e)) {
- o.push(n);
- break
- }
- n = n.parentNode
- }
- return this.pushStack(o.length > 1 ? X.unique(o) : o)
- },
- index: function (e) {
- return e ? "string" == typeof e ? X.inArray(this[0], X(e)) : X.inArray(e.jquery ? e[0] : e, this) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1
- },
- add: function (e, t) {
- var n = "string" == typeof e ? X(e, t) : X.makeArray(e && e.nodeType ? [e] : e),
- r = X.merge(this.get(), n);
- return this.pushStack(X.unique(r))
- },
- addBack: function (e) {
- return this.add(null == e ? this.prevObject : this.prevObject.filter(e))
- }
- }), X.fn.andSelf = X.fn.addBack, X.each({
- parent: function (e) {
- var t = e.parentNode;
- return t && 11 !== t.nodeType ? t : null
- },
- parents: function (e) {
- return X.dir(e, "parentNode")
- },
- parentsUntil: function (e, t, n) {
- return X.dir(e, "parentNode", n)
- },
- next: function (e) {
- return l(e, "nextSibling")
- },
- prev: function (e) {
- return l(e, "previousSibling")
- },
- nextAll: function (e) {
- return X.dir(e, "nextSibling")
- },
- prevAll: function (e) {
- return X.dir(e, "previousSibling")
- },
- nextUntil: function (e, t, n) {
- return X.dir(e, "nextSibling", n)
- },
- prevUntil: function (e, t, n) {
- return X.dir(e, "previousSibling", n)
- },
- siblings: function (e) {
- return X.sibling((e.parentNode || {}).firstChild, e)
- },
- children: function (e) {
- return X.sibling(e.firstChild)
- },
- contents: function (e) {
- return X.nodeName(e, "iframe") ? e.contentDocument || e.contentWindow.document : X.merge([], e.childNodes)
- }
- }, function (e, t) {
- X.fn[e] = function (n, r) {
- var i = X.map(this, t, n);
- return we.test(e) || (r = n), r && "string" == typeof r && (i = X.filter(r, i)), i = this.length > 1 && !Se[e] ? X.unique(i) : i, this.length > 1 && Ce.test(e) && (i = i.reverse()), this.pushStack(i)
- }
- }), X.extend({
- filter: function (e, t, n) {
- return n && (e = ":not(" + e + ")"), 1 === t.length ? X.find.matchesSelector(t[0], e) ? [t[0]] : [] : X.find.matches(e, t)
- },
- dir: function (e, n, r) {
- for (var i = [], o = e[n]; o && 9 !== o.nodeType && (r === t || 1 !== o.nodeType || !X(o).is(r));) 1 === o.nodeType && i.push(o), o = o[n];
- return i
- },
- sibling: function (e, t) {
- for (var n = []; e; e = e.nextSibling) 1 === e.nodeType && e !== t && n.push(e);
- return n
- }
- });
- var Ne = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",
- Me = / jQuery\d+="(?:null|\d+)"/g,
- Le = new RegExp("<(?:" + Ne + ")[\\s/>]", "i"),
- De = /^\s+/,
- Ae = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,
- je = /<([\w:]+)/,
- qe = /<tbody/i,
- _e = /<|&#?\w+;/,
- Oe = /<(?:script|style|link)/i,
- Pe = /^(?:checkbox|radio)$/i,
- Re = /checked\s*(?:[^=]|=\s*.checked.)/i,
- Be = /^$|\/(?:java|ecma)script/i,
- He = /^true\/(.*)/,
- Fe = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,
- Ie = {
- option: [1, "<select multiple='multiple'>", "</select>"],
- legend: [1, "<fieldset>", "</fieldset>"],
- area: [1, "<map>", "</map>"],
- param: [1, "<object>", "</object>"],
- thead: [1, "<table>", "</table>"],
- tr: [2, "<table><tbody>", "</tbody></table>"],
- col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"],
- td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
- _default: X.support.htmlSerialize ? [0, "", ""] : [1, "X<div>", "</div>"]
- },
- $e = d(j),
- We = $e.appendChild(j.createElement("div"));
- Ie.optgroup = Ie.option, Ie.tbody = Ie.tfoot = Ie.colgroup = Ie.caption = Ie.thead, Ie.th = Ie.td, X.fn.extend({
- text: function (e) {
- return X.access(this, function (e) {
- return e === t ? X.text(this) : this.empty().append((this[0] && this[0].ownerDocument || j).createTextNode(e))
- }, null, e, arguments.length)
- },
- wrapAll: function (e) {
- if (X.isFunction(e)) return this.each(function (t) {
- X(this).wrapAll(e.call(this, t))
- });
- if (this[0]) {
- var t = X(e, this[0].ownerDocument).eq(0).clone(!0);
- this[0].parentNode && t.insertBefore(this[0]), t.map(function () {
- for (var e = this; e.firstChild && 1 === e.firstChild.nodeType;) e = e.firstChild;
- return e
- }).append(this)
- }
- return this
- },
- wrapInner: function (e) {
- return X.isFunction(e) ? this.each(function (t) {
- X(this).wrapInner(e.call(this, t))
- }) : this.each(function () {
- var t = X(this),
- n = t.contents();
- n.length ? n.wrapAll(e) : t.append(e)
- })
- },
- wrap: function (e) {
- var t = X.isFunction(e);
- return this.each(function (n) {
- X(this).wrapAll(t ? e.call(this, n) : e)
- })
- },
- unwrap: function () {
- return this.parent().each(function () {
- X.nodeName(this, "body") || X(this).replaceWith(this.childNodes)
- }).end()
- },
- append: function () {
- return this.domManip(arguments, !0, function (e) {
- (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) && this.appendChild(e)
- })
- },
- prepend: function () {
- return this.domManip(arguments, !0, function (e) {
- (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) && this.insertBefore(e, this.firstChild)
- })
- },
- before: function () {
- return this.domManip(arguments, !1, function (e) {
- this.parentNode && this.parentNode.insertBefore(e, this)
- })
- },
- after: function () {
- return this.domManip(arguments, !1, function (e) {
- this.parentNode && this.parentNode.insertBefore(e, this.nextSibling)
- })
- },
- remove: function (e, t) {
- for (var n, r = 0; null != (n = this[r]); r++)(!e || X.filter(e, [n]).length > 0) && (t || 1 !== n.nodeType || X.cleanData(b(n)), n.parentNode && (t && X.contains(n.ownerDocument, n) && g(b(n, "script")), n.parentNode.removeChild(n)));
- return this
- },
- empty: function () {
- for (var e, t = 0; null != (e = this[t]); t++) {
- for (1 === e.nodeType && X.cleanData(b(e, !1)); e.firstChild;) e.removeChild(e.firstChild);
- e.options && X.nodeName(e, "select") && (e.options.length = 0)
- }
- return this
- },
- clone: function (e, t) {
- return e = null == e ? !1 : e, t = null == t ? e : t, this.map(function () {
- return X.clone(this, e, t)
- })
- },
- html: function (e) {
- return X.access(this, function (e) {
- var n = this[0] || {},
- r = 0,
- i = this.length;
- if (e === t) return 1 === n.nodeType ? n.innerHTML.replace(Me, "") : t;
- if ("string" == typeof e && !Oe.test(e) && (X.support.htmlSerialize || !Le.test(e)) && (X.support.leadingWhitespace || !De.test(e)) && !Ie[(je.exec(e) || ["", ""])[1].toLowerCase()]) {
- e = e.replace(Ae, "<$1></$2>");
- try {
- for (; i > r; r++) n = this[r] || {}, 1 === n.nodeType && (X.cleanData(b(n, !1)), n.innerHTML = e);
- n = 0
- } catch (o) {}
- }
- n && this.empty().append(e)
- }, null, e, arguments.length)
- },
- replaceWith: function (e) {
- var t = X.isFunction(e);
- return t || "string" == typeof e || (e = X(e).not(this).detach()), this.domManip([e], !0, function (e) {
- var t = this.nextSibling,
- n = this.parentNode;
- n && (X(this).remove(), n.insertBefore(e, t))
- })
- },
- detach: function (e) {
- return this.remove(e, !0)
- },
- domManip: function (e, n, r) {
- e = R.apply([], e);
- var i, o, a, s, u, c, l = 0,
- p = this.length,
- d = this,
- g = p - 1,
- v = e[0],
- y = X.isFunction(v);
- if (y || !(1 >= p || "string" != typeof v || X.support.checkClone) && Re.test(v)) return this.each(function (i) {
- var o = d.eq(i);
- y && (e[0] = v.call(this, i, n ? o.html() : t)), o.domManip(e, n, r)
- });
- if (p && (c = X.buildFragment(e, this[0].ownerDocument, !1, this), i = c.firstChild, 1 === c.childNodes.length && (c = i), i)) {
- for (n = n && X.nodeName(i, "tr"), s = X.map(b(c, "script"), h), a = s.length; p > l; l++) o = c, l !== g && (o = X.clone(o, !0, !0), a && X.merge(s, b(o, "script"))), r.call(n && X.nodeName(this[l], "table") ? f(this[l], "tbody") : this[l], o, l);
- if (a)
- for (u = s[s.length - 1].ownerDocument, X.map(s, m), l = 0; a > l; l++) o = s[l], Be.test(o.type || "") && !X._data(o, "globalEval") && X.contains(u, o) && (o.src ? X.ajax({
- url: o.src,
- type: "GET",
- dataType: "script",
- async: !1,
- global: !1,
- "throws": !0
- }) : X.globalEval((o.text || o.textContent || o.innerHTML || "").replace(Fe, "")));
- c = i = null
- }
- return this
- }
- }), X.each({
- appendTo: "append",
- prependTo: "prepend",
- insertBefore: "before",
- insertAfter: "after",
- replaceAll: "replaceWith"
- }, function (e, t) {
- X.fn[e] = function (e) {
- for (var n, r = 0, i = [], o = X(e), a = o.length - 1; a >= r; r++) n = r === a ? this : this.clone(!0), X(o[r])[t](n), B.apply(i, n.get());
- return this.pushStack(i)
- }
- }), X.extend({
- clone: function (e, t, n) {
- var r, i, o, a, s, u = X.contains(e.ownerDocument, e);
- if (X.support.html5Clone || X.isXMLDoc(e) || !Le.test("<" + e.nodeName + ">") ? o = e.cloneNode(!0) : (We.innerHTML = e.outerHTML, We.removeChild(o = We.firstChild)), !(X.support.noCloneEvent && X.support.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || X.isXMLDoc(e)))
- for (r = b(o), s = b(e), a = 0; null != (i = s[a]); ++a) r[a] && y(i, r[a]);
- if (t)
- if (n)
- for (s = s || b(e), r = r || b(o), a = 0; null != (i = s[a]); a++) v(i, r[a]);
- else v(e, o);
- return r = b(o, "script"), r.length > 0 && g(r, !u && b(e, "script")), r = s = i = null, o
- },
- buildFragment: function (e, t, n, r) {
- for (var i, o, a, s, u, c, l, p = e.length, f = d(t), h = [], m = 0; p > m; m++)
- if (o = e[m], o || 0 === o)
- if ("object" === X.type(o)) X.merge(h, o.nodeType ? [o] : o);
- else if (_e.test(o)) {
- for (s = s || f.appendChild(t.createElement("div")), u = (je.exec(o) || ["", ""])[1].toLowerCase(), l = Ie[u] || Ie._default, s.innerHTML = l[1] + o.replace(Ae, "<$1></$2>") + l[2], i = l[0]; i--;) s = s.lastChild;
- if (!X.support.leadingWhitespace && De.test(o) && h.push(t.createTextNode(De.exec(o)[0])), !X.support.tbody)
- for (o = "table" !== u || qe.test(o) ? "<table>" !== l[1] || qe.test(o) ? 0 : s : s.firstChild, i = o && o.childNodes.length; i--;) X.nodeName(c = o.childNodes[i], "tbody") && !c.childNodes.length && o.removeChild(c);
- for (X.merge(h, s.childNodes), s.textContent = ""; s.firstChild;) s.removeChild(s.firstChild);
- s = f.lastChild
- } else h.push(t.createTextNode(o));
- for (s && f.removeChild(s), X.support.appendChecked || X.grep(b(h, "input"), x), m = 0; o = h[m++];)
- if ((!r || -1 === X.inArray(o, r)) && (a = X.contains(o.ownerDocument, o), s = b(f.appendChild(o), "script"), a && g(s), n))
- for (i = 0; o = s[i++];) Be.test(o.type || "") && n.push(o);
- return s = null, f
- },
- cleanData: function (e, t) {
- for (var n, r, i, o, a = 0, s = X.expando, u = X.cache, c = X.support.deleteExpando, l = X.event.special; null != (n = e[a]); a++)
- if ((t || X.acceptData(n)) && (i = n[s], o = i && u[i])) {
- if (o.events)
- for (r in o.events) l[r] ? X.event.remove(n, r) : X.removeEvent(n, r, o.handle);
- u[i] && (delete u[i], c ? delete n[s] : typeof n.removeAttribute !== A ? n.removeAttribute(s) : n[s] = null, O.push(i))
- }
- }
- });
- var Xe = /%20/g,
- Ke = /\[\]$/,
- ze = /\r?\n/g,
- Ue = /^(?:submit|button|image|reset|file)$/i,
- Ye = /^(?:input|select|textarea|keygen)/i;
- X.fn.extend({
- serialize: function () {
- return X.param(this.serializeArray())
- },
- serializeArray: function () {
- return this.map(function () {
- var e = X.prop(this, "elements");
- return e ? X.makeArray(e) : this
- }).filter(function () {
- var e = this.type;
- return this.name && !X(this).is(":disabled") && Ye.test(this.nodeName) && !Ue.test(e) && (this.checked || !Pe.test(e))
- }).map(function (e, t) {
- var n = X(this).val();
- return null == n ? null : X.isArray(n) ? X.map(n, function (e) {
- return {
- name: t.name,
- value: e.replace(ze, "\r\n")
- }
- }) : {
- name: t.name,
- value: n.replace(ze, "\r\n")
- }
- }).get()
- }
- }), X.param = function (e, n) {
- var r, i = [],
- o = function (e, t) {
- t = X.isFunction(t) ? t() : null == t ? "" : t, i[i.length] = encodeURIComponent(e) + "=" + encodeURIComponent(t)
- };
- if (n === t && (n = X.ajaxSettings && X.ajaxSettings.traditional), X.isArray(e) || e.jquery && !X.isPlainObject(e)) X.each(e, function () {
- o(this.name, this.value)
- });
- else
- for (r in e) E(r, e[r], n, o);
- return i.join("&").replace(Xe, "+")
- }, X.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 (e, t) {
- X.fn[t] = function (e, n) {
- return arguments.length > 0 ? this.on(t, null, e, n) : this.trigger(t)
- }
- }), X.fn.hover = function (e, t) {
- return this.mouseenter(e).mouseleave(t || e)
- };
- var Je, Ve, Ge = X.now(),
- Qe = /\?/,
- Ze = /#.*$/,
- et = /([?&])_=[^&]*/,
- tt = /^(.*?):[ \t]*([^\r\n]*)\r?$/gm,
- nt = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
- rt = /^(?:GET|HEAD)$/,
- it = /^\/\//,
- ot = /^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,
- at = X.fn.load,
- st = {},
- ut = {},
- ct = "*/".concat("*");
- try {
- Ve = q.href
- } catch (lt) {
- Ve = j.createElement("a"), Ve.href = "", Ve = Ve.href
- }
- Je = ot.exec(Ve.toLowerCase()) || [], X.fn.load = function (e, n, r) {
- if ("string" != typeof e && at) return at.apply(this, arguments);
- var i, o, a, s = this,
- u = e.indexOf(" ");
- return u >= 0 && (i = e.slice(u, e.length), e = e.slice(0, u)), X.isFunction(n) ? (r = n, n = t) : n && "object" == typeof n && (a = "POST"), s.length > 0 && X.ajax({
- url: e,
- type: a,
- dataType: "html",
- data: n
- }).done(function (e) {
- o = arguments, s.html(i ? X("<div>").append(X.parseHTML(e)).find(i) : e)
- }).complete(r && function (e, t) {
- s.each(r, o || [e.responseText, t, e])
- }), this
- }, X.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function (e, t) {
- X.fn[t] = function (e) {
- return this.on(t, e)
- }
- }), X.each(["get", "post"], function (e, n) {
- X[n] = function (e, r, i, o) {
- return X.isFunction(r) && (o = o || i, i = r, r = t), X.ajax({
- url: e,
- type: n,
- dataType: o,
- data: r,
- success: i
- })
- }
- }), X.extend({
- active: 0,
- lastModified: {},
- etag: {},
- ajaxSettings: {
- url: Ve,
- type: "GET",
- isLocal: nt.test(Je[1]),
- global: !0,
- processData: !0,
- async: !0,
- contentType: "application/x-www-form-urlencoded; charset=UTF-8",
- accepts: {
- "*": ct,
- text: "text/plain",
- html: "text/html",
- xml: "application/xml, text/xml",
- json: "application/json, text/javascript"
- },
- contents: {
- xml: /xml/,
- html: /html/,
- json: /json/
- },
- responseFields: {
- xml: "responseXML",
- text: "responseText"
- },
- converters: {
- "* text": e.String,
- "text html": !0,
- "text json": X.parseJSON,
- "text xml": X.parseXML
- },
- flatOptions: {
- url: !0,
- context: !0
- }
- },
- ajaxSetup: function (e, t) {
- return t ? T(T(e, X.ajaxSettings), t) : T(X.ajaxSettings, e)
- },
- ajaxPrefilter: w(st),
- ajaxTransport: w(ut),
- ajax: function (e, n) {
- function r(e, n, r, i) {
- var o, p, y, b, E, C = n;
- 2 !== x && (x = 2, u && clearTimeout(u), l = t, s = i || "", w.readyState = e > 0 ? 4 : 0, r && (b = k(d, w, r)), e >= 200 && 300 > e || 304 === e ? (d.ifModified && (E = w.getResponseHeader("Last-Modified"), E && (X.lastModified[a] = E), E = w.getResponseHeader("etag"), E && (X.etag[a] = E)), 204 === e ? (o = !0, C = "nocontent") : 304 === e ? (o = !0, C = "notmodified") : (o = S(d, b), C = o.state, p = o.data, y = o.error, o = !y)) : (y = C, (e || !C) && (C = "error", 0 > e && (e = 0))), w.status = e, w.statusText = (n || C) + "", o ? m.resolveWith(f, [p, C, w]) : m.rejectWith(f, [w, C, y]), w.statusCode(v), v = t, c && h.trigger(o ? "ajaxSuccess" : "ajaxError", [w, d, o ? p : y]), g.fireWith(f, [w, C]), c && (h.trigger("ajaxComplete", [w, d]), --X.active || X.event.trigger("ajaxStop")))
- }
- "object" == typeof e && (n = e, e = t), n = n || {};
- var i, o, a, s, u, c, l, p, d = X.ajaxSetup({}, n),
- f = d.context || d,
- h = d.context && (f.nodeType || f.jquery) ? X(f) : X.event,
- m = X.Deferred(),
- g = X.Callbacks("once memory"),
- v = d.statusCode || {},
- y = {},
- b = {},
- x = 0,
- E = "canceled",
- w = {
- readyState: 0,
- getResponseHeader: function (e) {
- var t;
- if (2 === x) {
- if (!p)
- for (p = {}; t = tt.exec(s);) p[t[1].toLowerCase()] = t[2];
- t = p[e.toLowerCase()]
- }
- return null == t ? null : t
- },
- getAllResponseHeaders: function () {
- return 2 === x ? s : null
- },
- setRequestHeader: function (e, t) {
- var n = e.toLowerCase();
- return x || (e = b[n] = b[n] || e, y[e] = t), this
- },
- overrideMimeType: function (e) {
- return x || (d.mimeType = e), this
- },
- statusCode: function (e) {
- var t;
- if (e)
- if (2 > x)
- for (t in e) v[t] = [v[t], e[t]];
- else w.always(e[w.status]);
- return this
- },
- abort: function (e) {
- var t = e || E;
- return l && l.abort(t), r(0, t), this
- }
- };
- if (m.promise(w).complete = g.add, w.success = w.done, w.error = w.fail, d.url = ((e || d.url || Ve) + "").replace(Ze, "").replace(it, Je[1] + "//"), d.type = n.method || n.type || d.method || d.type, d.dataTypes = X.trim(d.dataType || "*").toLowerCase().match(K) || [""], null == d.crossDomain && (i = ot.exec(d.url.toLowerCase()), d.crossDomain = !(!i || i[1] === Je[1] && i[2] === Je[2] && (i[3] || ("http:" === i[1] ? 80 : 443)) == (Je[3] || ("http:" === Je[1] ? 80 : 443)))), d.data && d.processData && "string" != typeof d.data && (d.data = X.param(d.data, d.traditional)), C(st, d, n, w), 2 === x) return w;
- c = d.global, c && 0 === X.active++ && X.event.trigger("ajaxStart"), d.type = d.type.toUpperCase(), d.hasContent = !rt.test(d.type), a = d.url, d.hasContent || (d.data && (a = d.url += (Qe.test(a) ? "&" : "?") + d.data, delete d.data), d.cache === !1 && (d.url = et.test(a) ? a.replace(et, "$1_=" + Ge++) : a + (Qe.test(a) ? "&" : "?") + "_=" + Ge++)), d.ifModified && (X.lastModified[a] && w.setRequestHeader("If-Modified-Since", X.lastModified[a]), X.etag[a] && w.setRequestHeader("If-None-Match", X.etag[a])), (d.data && d.hasContent && d.contentType !== !1 || n.contentType) && w.setRequestHeader("Content-Type", d.contentType), w.setRequestHeader("Accept", d.dataTypes[0] && d.accepts[d.dataTypes[0]] ? d.accepts[d.dataTypes[0]] + ("*" !== d.dataTypes[0] ? ", " + ct + "; q=0.01" : "") : d.accepts["*"]);
- for (o in d.headers) w.setRequestHeader(o, d.headers[o]);
- if (d.beforeSend && (d.beforeSend.call(f, w, d) === !1 || 2 === x)) return w.abort();
- E = "abort";
- for (o in {
- success: 1,
- error: 1,
- complete: 1
- }) w[o](d[o]);
- if (l = C(ut, d, n, w)) {
- w.readyState = 1, c && h.trigger("ajaxSend", [w, d]), d.async && d.timeout > 0 && (u = setTimeout(function () {
- w.abort("timeout")
- }, d.timeout));
- try {
- x = 1, l.send(y, r)
- } catch (T) {
- if (!(2 > x)) throw T;
- r(-1, T)
- }
- } else r(-1, "No Transport");
- return w
- },
- getScript: function (e, n) {
- return X.get(e, t, n, "script")
- },
- getJSON: function (e, t, n) {
- return X.get(e, t, n, "json")
- }
- }), X.ajaxSetup({
- accepts: {
- script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
- },
- contents: {
- script: /(?:java|ecma)script/
- },
- converters: {
- "text script": function (e) {
- return X.globalEval(e), e
- }
- }
- }), X.ajaxPrefilter("script", function (e) {
- e.cache === t && (e.cache = !1), e.crossDomain && (e.type = "GET", e.global = !1)
- }), X.ajaxTransport("script", function (e) {
- if (e.crossDomain) {
- var n, r = j.head || X("head")[0] || j.documentElement;
- return {
- send: function (t, i) {
- n = j.createElement("script"), n.async = !0, e.scriptCharset && (n.charset = e.scriptCharset), n.src = e.url, n.onload = n.onreadystatechange = function (e, t) {
- (t || !n.readyState || /loaded|complete/.test(n.readyState)) && (n.onload = n.onreadystatechange = null, n.parentNode && n.parentNode.removeChild(n), n = null, t || i(200, "success"))
- }, r.insertBefore(n, r.firstChild)
- },
- abort: function () {
- n && n.onload(t, !0)
- }
- }
- }
- });
- var pt = [],
- dt = /(=)\?(?=&|$)|\?\?/;
- X.ajaxSetup({
- jsonp: "callback",
- jsonpCallback: function () {
- var e = pt.pop() || X.expando + "_" + Ge++;
- return this[e] = !0, e
- }
- }), X.ajaxPrefilter("json jsonp", function (n, r, i) {
- var o, a, s, u = n.jsonp !== !1 && (dt.test(n.url) ? "url" : "string" == typeof n.data && !(n.contentType || "").indexOf("application/x-www-form-urlencoded") && dt.test(n.data) && "data");
- return u || "jsonp" === n.dataTypes[0] ? (o = n.jsonpCallback = X.isFunction(n.jsonpCallback) ? n.jsonpCallback() : n.jsonpCallback, u ? n[u] = n[u].replace(dt, "$1" + o) : n.jsonp !== !1 && (n.url += (Qe.test(n.url) ? "&" : "?") + n.jsonp + "=" + o), n.converters["script json"] = function () {
- return s || X.error(o + " was not called"), s[0]
- }, n.dataTypes[0] = "json", a = e[o], e[o] = function () {
- s = arguments
- }, i.always(function () {
- e[o] = a, n[o] && (n.jsonpCallback = r.jsonpCallback, pt.push(o)), s && X.isFunction(a) && a(s[0]), s = a = t
- }), "script") : void 0
- });
- var ft, ht, mt = 0,
- gt = e.ActiveXObject && function () {
- var e;
- for (e in ft) ft[e](t, !0)
- };
- X.ajaxSettings.xhr = e.ActiveXObject ? function () {
- return !this.isLocal && N() || M()
- } : N, ht = X.ajaxSettings.xhr(), X.support.cors = !!ht && "withCredentials" in ht, ht = X.support.ajax = !!ht, ht && X.ajaxTransport(function (n) {
- if (!n.crossDomain || X.support.cors) {
- var r;
- return {
- send: function (i, o) {
- var a, s, u = n.xhr();
- if (n.username ? u.open(n.type, n.url, n.async, n.username, n.password) : u.open(n.type, n.url, n.async), n.xhrFields)
- for (s in n.xhrFields) u[s] = n.xhrFields[s];
- n.mimeType && u.overrideMimeType && u.overrideMimeType(n.mimeType), n.crossDomain || i["X-Requested-With"] || (i["X-Requested-With"] = "XMLHttpRequest");
- try {
- for (s in i) u.setRequestHeader(s, i[s])
- } catch (c) {}
- u.send(n.hasContent && n.data || null), r = function (e, i) {
- var s, c, l, p;
- try {
- if (r && (i || 4 === u.readyState))
- if (r = t, a && (u.onreadystatechange = X.noop, gt && delete ft[a]), i) 4 !== u.readyState && u.abort();
- else {
- p = {}, s = u.status, c = u.getAllResponseHeaders(), "string" == typeof u.responseText && (p.text = u.responseText);
- try {
- l = u.statusText
- } catch (d) {
- l = ""
- }
- s || !n.isLocal || n.crossDomain ? 1223 === s && (s = 204) : s = p.text ? 200 : 404
- }
- } catch (f) {
- i || o(-1, f)
- }
- p && o(s, l, p, c)
- }, n.async ? 4 === u.readyState ? setTimeout(r) : (a = ++mt, gt && (ft || (ft = {}, X(e).unload(gt)), ft[a] = r), u.onreadystatechange = r) : r()
- },
- abort: function () {
- r && r(t, !0)
- }
- }
- }
- }), "function" == typeof ellipsis.define && ellipsis.define.amd && ellipsis.define.amd.jQuery && ellipsis.define("ell-jquery", [], function () {
- return X
- })
- }(window), ellipsis.define("jsonh", ["require", "exports", "module"], function (e, t, n) {
- var r, i = r = function (e, t) {
- "use strict";
- function n(t) {
- for (var n, r, i = t.length, o = d(i ? t[0] : {}), a = o.length, s = e(i * a), u = 0, c = 0; i > u; ++u)
- for (r = t[u], n = 0; a > n; s[c++] = r[o[n++]]);
- return p.call([a], o, s)
- }
- function r(t) {
- for (var n, r, i = t.length, o = t[0], a = e((i - o - 1) / o || 0), s = 1 + o, u = 0; i > s;)
- for (a[u++] = r = {}, n = 0; o > n; r[t[++n]] = t[s++]);
- return a
- }
- function i(e) {
- return function (t) {
- for (var n, r, i, o = this, a = t, s = 0, u = o.length; u > s; ++s) f(i = a[r = o[s]]) && (n = s + 1, a[r] = u > n ? h.call(i, e, o.slice(n)) : e(i)), a = a[r];
- return t
- }
- }
- function o(e) {
- return function (t, n) {
- for (var r = f(t), i = p.call(l, t), o = p.call(l, n), a = 0, s = o.length; s > a; ++a) i = h.call(i, e, o[a].split("."));
- return r ? i : i[0]
- }
- }
- function a(e, t) {
- return t ? m(e, t) : n(e)
- }
- function s(e, t) {
- return t ? g(e, t) : r(e)
- }
- function u(e, t, n, r) {
- return v(a(e, r), t, n)
- }
- function c(e, t, n) {
- return s(y(e, t), n)
- }
- var l = [],
- p = l.concat,
- d = Object.keys || function (e) {
- var t, n = [];
- for (t in e) e.hasOwnProperty(t) && n.push(t);
- return n
- },
- f = e.isArray || function (e, t) {
- return t = e.call(l),
- function (n) {
- return e.call(n) == t
- }
- }({}.toString),
- h = l.map || function (t, n) {
- for (var r = this, i = r.length, o = e(i); i--; o[i] = t.call(n, r[i], i, r));
- return o
- },
- m = o(i(n)),
- g = o(i(r)),
- v = t.stringify,
- y = t.parse;
- return {
- pack: a,
- parse: c,
- stringify: u,
- unpack: s
- }
- }(Array, JSON);
- "undefined" != typeof n && n.exports && (n.exports = i)
- }), ellipsis.define("Core/EllipsisCore", ["require", "exports"], function (e, t) {
- "use strict";
- var n = function () {
- function e() {}
- return e.prototype.init = function () {}, e.prototype.uninit = function () {}, e.prototype.harvest = function () {}, e
- }();
- t.CollectionStrategy = n
- });
- var __extends = this && this.__extends || function (e, t) {
- function n() {
- this.constructor = e
- }
- for (var r in t) t.hasOwnProperty(r) && (e[r] = t[r]);
- e.prototype = null === t ? Object.create(t) : (n.prototype = t.prototype, new n)
- };
- ellipsis.define("BrowserTouchEvents", ["require", "exports", "./Core/EllipsisCore", "ell-jquery"], function (e, t, n, r) {
- "use strict";
- var i = n.CollectionStrategy,
- o = r,
- a = function (e) {
- function t() {
- var t = this;
- e.apply(this, arguments), this.strokeEndDuration = 300, this.supportsTouchEvents = "ontouchstart" in document, this._touchMoveCount = 0, this.touchMoveCount = function () {
- return t._touchMoveCount
- }, this.currentTouchData = {}, this.onTouchMove = function (e) {
- try {
- var n = new Date;
- if (t._touchMoveCount += 1, !t.lastTouchEvent) return void(t.lastTouchEvent = t.copyTouch(e));
- var r = t.copyTouch(e);
- t.updateTouchData(r, n)
- } catch (i) {
- console && console.warn("Error in Ellipsis.TouchMoveCollection.onTouchMove():" + i)
- }
- }, this.onTouchEnd = function (e) {
- try {
- new Date;
- t._touchMoveCount += 1;
- var n = t.copyTouch(e);
- t.endTouchStroke(n)
- } catch (r) {
- console && console.warn("Error in Ellipsis.TouchMoveCollection.onTouchEnd():" + r)
- }
- }, this.strokeData = []
- }
- return __extends(t, e), t.prototype.harvest = function () {
- var e = {
- touchData: (this.strokeData || []).map(function (e) {
- return e.getData()
- })
- };
- return e
- }, t.prototype.init = function () {
- this.subscribeTouchEvents()
- }, t.prototype.uninit = function () {
- this.unsubscribeTouchEvents()
- }, t.prototype.subscribeTouchEvents = function () {
- o(document).addEventListener("touchstart", this.onTouchMove, !0), o(document).addEventListener("touchmove", this.onTouchMove, !0), o(document).addEventListener("touchend", this.onTouchEnd, !0), o(document).addEventListener("touchcancel", this.onTouchEnd, !0)
- }, t.prototype.unsubscribeTouchEvents = function () {
- o(document).removeEventListener("touchstart", this.onTouchMove, !0), o(document).removeEventListener("touchmove", this.onTouchMove, !0), o(document).removeEventListener("touchend", this.onTouchEnd, !0), o(document).removeEventListener("touchcancel", this.onTouchEnd, !0)
- }, t.prototype.updateTouchData = function (e, t) {
- var n = this;
- o.each(e.touches, function (e, r) {
- var i = n.currentTouchData[r.identifier];
- i ? i.addTouch(r, t) : n.currentTouchData[r.identifier] = new s(r, t)
- })
- }, t.prototype.endTouchStroke = function (e) {
- var t = this;
- o.each(e.changedTouches, function (e, n) {
- var r = t.currentTouchData[n.identifier];
- r && t.strokeData.push(r), t.currentTouchData[n.identifier] = null
- })
- }, t.prototype.copyTouch = function (e) {
- return o.extend(!0, {}, e)
- }, t
- }(i);
- t.TouchMoveCollection = a;
- var s = function () {
- function e(e, t) {
- this.distance = 0, this.x_distance = 0, this.y_distance = 0, this.displacement = 0, this.x_displacement = 0, this.y_displacement = 0, this.elapsedTime = 0, this.eventCount = 0, this.prevTouch = e, this.firstTouch || (this.firstTouch = e), this.eventCount += 1, this.prevEventTime = t
- }
- return e.prototype.addTouch = function (e, t) {
- this.assignDistance(this.prevTouch, e), this.assignDisplacement(e), this.eventCount += 1, this.elapsedTime += t.getTime() - this.prevEventTime.getTime(), this.prevTouch = e, this.firstTouch || (this.firstTouch = e)
- }, e.prototype.getData = function () {
- return {
- distance: this.distance,
- x_distance: this.x_distance,
- y_distance: this.y_distance,
- displacement: this.displacement,
- x_displacement: this.x_displacement,
- y_displacement: this.y_displacement,
- elapsedTime: this.elapsedTime,
- eventCount: this.eventCount
- }
- }, e.prototype.assignDistance = function (e, t) {
- var n = Math.abs(t.clientX - e.clientX);
- this.x_distance = (this.x_distance || 0) + n, n *= n;
- var r = this.y_distance = Math.abs(t.clientY - e.clientY);
- this.y_distance = (this.y_distance || 0) + r, r *= r, this.distance = (this.distance || 0) + Math.sqrt(n + r)
- }, e.prototype.assignDisplacement = function (e) {
- var t = this.x_displacement = Math.abs(e.clientX - this.firstTouch.clientX);
- t *= t;
- var n = this.y_displacement = Math.abs(e.clientY - this.firstTouch.clientY);
- n *= n, this.displacement = Math.sqrt(t + n)
- }, e
- }()
- });
- var __extends = this && this.__extends || function (e, t) {
- function n() {
- this.constructor = e
- }
- for (var r in t) t.hasOwnProperty(r) && (e[r] = t[r]);
- e.prototype = null === t ? Object.create(t) : (n.prototype = t.prototype, new n)
- };
- ellipsis.define("ellipsis", ["require", "exports", "ell-jquery", "jsonh", "Core/EllipsisCore", "BrowserTouchEvents"], function (e, t, n, r, i, o) {
- "use strict";
- function a() {
- return document.getElementsByTagName("script")
- }
- var s = i.CollectionStrategy,
- u = o.TouchMoveCollection,
- c = n,
- l = c,
- p = r,
- d = function () {
- function e(n, r) {
- var i = e.normalizeEvent(n);
- if (e.isElement(i.target)) {
- var o = i.target,
- a = e.getTargetProperties(o);
- this.targetid = a.id, this.targethash = a.hashCode, this.targettag = a.tagName
- }
- this.timeStamp = i.timeStamp ? i.timeStamp : n.timeStamp, this.timeHandled = r, this.type = e.eventAbbreviation(i.type), t.currentSession.update()
- }
- return e.normalizeEvent = function (e) {
- return e[l.expando] ? e : l.event.fix(e)
- }, e.eventAbbreviation = function (e) {
- switch (e) {
- case "blur":
- return "bl";
- case "focus":
- return "fo";
- case "change":
- return "ch";
- case "click":
- return "cl";
- case "dblclick":
- return "dc";
- case "keydown":
- return "kd";
- case "keyup":
- return "ku";
- case "keypress":
- return "kp";
- case "mousedown":
- return "md";
- case "mousemove":
- return "mm";
- case "mouseout":
- return "mo";
- case "mouseover":
- return "mv";
- case "mouseup":
- return "mu";
- case "select":
- return "se";
- default:
- return e
- }
- }, e.isElement = function (e) {
- return "id" in e || "tagName" in e
- }, e.getTargetProperties = function (t) {
- var n = {};
- return n.id = t.id, n.tagName = t.tagName, n.hashCode = e.hashCode(c(t).getPath()), n
- }, e.hashCode = function (e) {
- var t = 0;
- if (0 == e.length) return t;
- for (var n = 0; n < e.length; n++) {
- var r = e.charCodeAt(n);
- t = (t << 5) - t + r, t &= t
- }
- return t
- }, e.Ctor = function () {
- var e = new Date;
- return e.setMilliseconds(0), null
- }(), e
- }(),
- f = function (e) {
- function t(t, n) {
- var r = d.normalizeEvent(t);
- e.call(this, r, n), this.button = r.which, this.screenX = r.screenX, this.screenY = r.screenY, this.clientX = r.clientX, this.clientY = r.clientY, this.pageX = r.pageX, this.pageY = r.pageY, this.ctrlKey = r.ctrlKey, this.shiftKey = r.shiftKey, this.altKey = r.altKey, this.metaKey = r.metaKey
- }
- return __extends(t, e), t.isMouseEvent = function (e) {
- return "button" in e
- }, t
- }(d),
- h = function (e) {
- function t(t, n, r, i) {
- void 0 === i && (i = 0);
- var o = d.normalizeEvent(t);
- e.call(this, o, r), this.altKey = o.altKey, this.ctrlKey = o.ctrlKey, this.metaKey = o.metaKey, this.shiftKey = o.shiftKey, this.keyIndex = n, this.keyOver = -1 == n ? !0 : !1, this.locale = "locale" in t ? t.locale : "", this.location = "location" in t ? t.location : 0, this.nikc = "INPUT" != this.targettag ? o.keyCode || o.which : 0
- }
- return __extends(t, e), t
- }(d),
- m = function (e) {
- function t(t, n, r) {
- e.call(this, t, r), this.textLength = n
- }
- return __extends(t, e), t
- }(d),
- g = function () {
- function e() {}
- return e
- }();
- t.Session = g;
- var v = function (e) {
- function t() {
- var n = this;
- e.call(this), this.records = [], this.sampleRate = 100, this.mouseMoveCount = 0, this.mouseMoveCount = 0, this.onMouseMove = function (e) {
- try {
- var r = new Date;
- n.mouseMoveCount += 1;
- var i = new f(e, r.getTime()),
- o = n.records.length - 1,
- a = n.records[o];
- if (0 > o) return void(o = n.records.push(i));
- var s = a.timeStamp ? a.timeStamp : void 0;
- s && i.timeStamp && i.timeStamp - s > n.sampleRate && (o = n.records.push(i)), n.records.length === t.maxEvents && n.unsubscribeMouseEvents()
- } catch (u) {
- console && console.warn("Error in Ellipsis.MouseMoveCollection():" + u)
- }
- }
- }
- return __extends(t, e), t.prototype.onMouseMove = function (e) {}, t.prototype.subscribeMouseEvents = function () {
- c(document).addEventListener("mousemove", this.onMouseMove, !0)
- }, t.prototype.unsubscribeMouseEvents = function () {
- c(document).removeEventListener("mousemove", this.onMouseMove, !0)
- }, t.prototype.harvest = function () {
- var e = {
- mouseMoveEvents: {
- mouseMoveCount: this.mouseMoveCount,
- sampleRate: this.sampleRate,
- events: p.pack(this.records)
- }
- };
- return this.records = [], this.mouseMoveCount = 0, e
- }, t.prototype.init = function () {
- this.subscribeMouseEvents()
- }, t.prototype.uninit = function () {
- this.unsubscribeMouseEvents()
- }, t.maxEvents = 50, t
- }(s),
- y = function (e) {
- function t() {
- e.apply(this, arguments), this.startTime = (new Date).getTime()
- }
- return __extends(t, e), t.prototype.harvest = function () {
- var e = (new Date).getTime(),
- t = {};
- return t.timeBalance = {
- startTime: this.startTime,
- collectTime: e,
- diff: e - this.startTime
- }, this.startTime = e, t
- }, t
- }(s),
- b = function (e) {
- function t() {
- var t = this;
- e.call(this), this.startRecords = [], this.endRecords = [], this.events = [], this.onEvent = function (e) {
- try {
- if (d.isElement(e.target)) {
- var n = e.target;
- if (void 0 === n) return;
- var r = n.tagName.toLowerCase();
- if ("input" === r && (r = n.type.toLowerCase()), "text" === r || "password" === r || "textarea" == r) {
- var i = new m(e, c(n).val().length, (new Date).getTime());
- t.events.push(i)
- }
- }
- } catch (o) {
- console && console.warn("Error in Ellipsis.TextInputLengthCollection():" + o)
- }
- }
- }
- return __extends(t, e), t.prototype.onEvent = function (e) {}, t.prototype.getCtrlLengths = function () {
- return c("TEXTAREA,INPUT[type='text'],INPUT[type='password']").map(function (e, t) {
- return {
- control: t,
- length: c(t).val().length
- }
- }).get()
- }, t.prototype.start = function () {
- this.startRecords = this.getCtrlLengths()
- }, t.CreateCustomEvent = function (e) {
- if (document.createEvent) {
- var t = document.createEvent("CustomEvent");
- t.initEvent("CustomEvent", !0, !0);
- var n = Object.assign(e, t);
- return n
- }
- if (document.createEventObject) {
- var r = document.createEventObject(),
- i = Object.assign(e, r);
- return i
- }
- }, t.toEventRecords = function (e, n) {
- for (var r = [], i = 0; i < e.length; i++) {
- var o = e[i],
- a = {
- type: "ellipsis_harvest",
- target: o.control,
- currentTarget: o.control
- },
- s = t.CreateCustomEvent(a),
- u = new m(s, o.length, void 0);
- r.push(u)
- }
- return r
- }, t.prototype.harvest = function () {
- this.stop();
- var e = {};
- return e.textInput = {
- startLength: p.pack(t.toEventRecords(this.startRecords, "ellipsis.init")),
- endLength: p.pack(t.toEventRecords(this.endRecords, "ellipsis.harvest")),
- events: p.pack(this.events)
- }, this.reset(), e
- }, t.prototype.init = function () {
- this.reset(), this.subscribe()
- }, t.prototype.subscribe = function () {
- c(document).addEventListener("blur", this.onEvent, !0), c(document).addEventListener("focus", this.onEvent, !0), c(document).addEventListener("change", this.onEvent, !0), c(document).addEventListener("select", this.onEvent, !0)
- }, t.prototype.uninit = function () {
- this.unsubscribe()
- }, t.prototype.unsubscribe = function () {
- c(document).removeEventListener("blur", this.onEvent, !0), c(document).removeEventListener("focus", this.onEvent, !0), c(document).removeEventListener("change", this.onEvent, !0), c(document).removeEventListener("select", this.onEvent, !0)
- }, t.prototype.stop = function () {
- this.endRecords = this.getCtrlLengths()
- }, t.prototype.reset = function () {
- this.start(), this.endRecords = []
- }, t
- }(s),
- x = function (e) {
- function t() {
- e.apply(this, arguments)
- }
- return __extends(t, e), t.prototype.harvest = function () {
- var e = {
- timeZone: (new Date).getTimezoneOffset(),
- historyLength: 0,
- pluginsLength: 0,
- navigator: {},
- window: {
- screenTop: 0,
- screenY: 0,
- screenX: 0,
- width: 0,
- height: 0
- },
- devicePixelRatio: 0,
- screen: {
- width: 0,
- height: 0,
- colorDepth: 0
- },
- javaEnabled: !1,
- localStorage: !1,
- sessionStorage: !1
- },
- t = window.history;
- t && t.go && (e.historyLength = t.length);
- var n = navigator.plugins;
- n && (e.pluginsLength = n.length), navigator && (e.navigator.appCodeName = navigator.appCodeName, e.navigator.appMinorVersion = navigator.appMinorVersion, e.navigator.appName = navigator.appName, e.navigator.appVersion = navigator.appVersion, e.navigator.cookieEnabled = navigator.cookieEnabled, e.navigator.onLine = navigator.onLine, e.navigator.platform = navigator.platform, e.navigator.userAgent = navigator.userAgent), void 0 !== window.screenTop && (e.window.screenTop = window.screenTop), void 0 !== window.screenY && (e.window.screenY = window.screenY), void 0 !== window.screenX && (e.window.screenX = window.screenX), void 0 !== window.devicePixelRatio && (e.devicePixelRatio = window.devicePixelRatio);
- var r = window.screen;
- r && void 0 !== r.width && void 0 !== r.height && (e.screen.width = r.width, e.screen.height = r.height), void 0 !== r.colorDepth && (e.screen.colorDepth = r.colorDepth), e.window.width = window.document.documentElement.clientwidth, e.window.height = window.document.documentElement.clientheight, navigator.javaEnabled && (e.javaEnabled = navigator.javaEnabled()), e.localStorage = this.testLocalStorage(), e.sessionStorage = this.testSessionStorage();
- var i = {};
- return i.browserFootprint = e, i
- }, t.prototype.testLocalStorage = function () {
- var e = "ellipsis";
- try {
- return localStorage.setItem(e, e), localStorage.removeItem(e), !0
- } catch (t) {
- return !1
- }
- }, t.prototype.testSessionStorage = function () {
- var e = "ellipsis";
- try {
- return sessionStorage.setItem(e, e), sessionStorage.removeItem(e), !0
- } catch (t) {
- return !1
- }
- }, t
- }(s);
- t.BrowserFootprintCollection = x;
- var E = function (e) {
- function t() {
- e.apply(this, arguments), this.pageCounts = {
- formCount: 0,
- inputCount: 0,
- pwdCount: 0,
- textareaCount: 0,
- scriptCount: 0,
- styleCount: 0,
- iframeCount: 0
- }
- }
- return __extends(t, e), t.prototype.init = function () {
- this.pageCounts.formCount = c("form").length, this.pageCounts.textareaCount = c("textarea").length, this.pageCounts.scriptCount = c("script").length, this.pageCounts.styleCount = c("link").length, this.pageCounts.iframeCount = c("iframe").length, this.pageCounts.inputCount = c('input[type="text"]').length, this.pageCounts.pwdCount = c('input[type="password"]').length
- }, t.prototype.harvest = function () {
- var e = {};
- return e.pageSnapshot = this.pageCounts, e
- }, t
- }(s),
- w = function () {
- function e() {
- var e = this;
- this.events = [], this.onKey = function (t) {
- try {
- var n = (new Date).getTime();
- if (!t) return;
- var r = t.keyCode ? t.keyCode : 0;
- if ("keydown" == t.type) {
- var i = e.kCodeMap[t.keyCode];
- if (void 0 !== i && !isNaN(i) && i) return;
- e.kCodeMap[t.keyCode] = n;
- var r = e.getAvailableIndex();
- r > -1 && (e.indexMap[r] = 0, e.kDownMap[t.keyCode] = r, e.kDownCount++, e.lastKDData = r)
- } else if ("keyup" == t.type) {
- if (delete e.kCodeMap[t.keyCode], r = e.kDownMap[t.keyCode], delete e.kDownMap[t.keyCode], void 0 === r) return;
- e.indexMap[r] = 1, e.kDownCount--
- } else "keypress" == t.type && (r = e.lastKDData);
- var o = new h(t, r, n);
- e.events.push(o)
- } catch (a) {
- console && console.warn("Error in Ellipsis.KeyboarEventsCollection():" + a)
- }
- }, this.reset()
- }
- return e.prototype.getAvailableIndex = function () {
- for (var e = -1, t = 0; 10 > t && (e = t, !this.indexMap[t]); t++);
- return e
- }, e.prototype.onKey = function (e) {}, e.prototype.harvest = function () {
- var e = {
- keyboardEvents: p.pack(this.events)
- };
- return this.reset(), e
- }, e.prototype.init = function () {
- this.subscribe()
- }, e.prototype.uninit = function () {
- this.unsubscribe()
- }, e.prototype.unsubscribe = function () {
- c(document).removeEventListener("keydown", this.onKey, !0), c(document).removeEventListener("keyup", this.onKey, !0), c(document).removeEventListener("keypress", this.onKey, !0), this.reset()
- }, e.prototype.subscribe = function () {
- c(document).addEventListener("keydown", this.onKey, !0), c(document).addEventListener("keyup", this.onKey, !0), c(document).addEventListener("keypress", this.onKey, !0)
- }, e.prototype.reset = function () {
- this.events = [], this.kCodeMap = {}, this.kDownCount = 0, this.kDownMap = {}, this.lastKDData = 0, this.indexMap = {
- 0: 1,
- 1: 1,
- 2: 1,
- 3: 1,
- 4: 1,
- 5: 1,
- 6: 1,
- 7: 1,
- 8: 1,
- 9: 1
- }
- }, e
- }();
- t.KeyboardEventsCollector = w;
- var C = function () {
- function e() {
- var e = this;
- this.events = [], this.onMouse = function (t) {
- try {
- var n = (new Date).getTime();
- if (!t) return;
- var r = new f(t, n);
- e.events.push(r)
- } catch (i) {
- console && console.warn("Error in Ellipsis.MouseEventsCollection():" + i)
- }
- }
- }
- return e.prototype.onMouse = function (e) {}, e.prototype.harvest = function () {
- var e = {
- mouseEvents: p.pack(this.events)
- };
- return this.reset(), e
- }, e.prototype.init = function () {
- this.subscribe()
- }, e.prototype.uninit = function () {
- this.unsubscribe()
- }, e.prototype.subscribe = function () {
- c(document).addEventListener("mousedown", this.onMouse, !0), c(document).addEventListener("mouseup", this.onMouse, !0), c(document).addEventListener("click", this.onMouse, !0), c(document).addEventListener("dblclick", this.onMouse, !0)
- }, e.prototype.unsubscribe = function () {
- c(document).removeEventListener("mousedown", this.onMouse, !0), c(document).removeEventListener("mouseup", this.onMouse, !0), c(document).removeEventListener("click", this.onMouse, !0), c(document).removeEventListener("dblclick", this.onMouse, !0), this.reset()
- }, e.prototype.reset = function () {
- this.events = []
- }, e
- }();
- t.MouseEventsCollector = C;
- var T = function () {
- function e() {}
- return e.compress = function (e) {
- var t, n, r, i = {},
- o = "",
- a = [],
- s = 256;
- for (t = 0; 256 > t; t += 1) i[String.fromCharCode(t)] = t;
- for (t = 0; t < e.length; t += 1) n = e.charAt(t), r = o + n, i.hasOwnProperty(r) ? o = r : (a.push(i[o]), i[r] = s++, o = String(n));
- return "" !== o && a.push(i[o]), a
- }, e
- }();
- t.LZW = T;
- var k = function () {
- function e() {}
- return e.create = function (e, t, n) {
- var r = 24 * (n.days || 0) * 60 + 60 * (n.hours || 0) + (n.minutes || 0),
- i = "";
- if (r > 0) {
- var o = new Date;
- o.setTime(o.getTime() + 60 * r * 1e3), i = "; expires=" + o.toUTCString()
- }
- var a = e + "=" + t + i + "; path=/";
- document.cookie = a
- }, e.read = function (e) {
- for (var t = e + "=", n = document.cookie.split(";"), r = 0; r < n.length; r++) {
- for (var i = n[r];
- " " == i.charAt(0);) i = i.substring(1, i.length);
- if (0 == i.indexOf(t)) return i.substring(t.length, i.length)
- }
- return null
- }, e.prototype.erase = function (t) {
- e.create(t, "", -1)
- }, e
- }(),
- S = function () {
- function e() {}
- return e.generate = function () {
- var t = e._gri,
- n = e._ha;
- return n(t(32), 8) + "-" + n(t(16), 4) + "-" + n(16384 | t(12), 4) + "-" + n(32768 | t(14), 4) + "-" + n(t(48), 12)
- }, e._gri = function (e) {
- return 0 > e ? NaN : 30 >= e ? 0 | Math.random() * (1 << e) : 53 >= e ? (0 | 1073741824 * Math.random()) + 1073741824 * (0 | Math.random() * (1 << e - 30)) : NaN
- }, e._ha = function (e, t) {
- for (var n = e.toString(16), r = t - n.length, i = "0"; r > 0; r >>>= 1, i += i) 1 & r && (n = i + n);
- return n
- }, e
- }();
- t.UUID = S,
- function () {
- for (var e, t = function () {}, n = ["assert", "clear", "count", "debug", "dir", "dirxml", "error", "exception", "group", "groupCollapsed", "groupEnd", "info", "log", "markTimeline", "profile", "profileEnd", "table", "time", "timeEnd", "timeStamp", "trace", "warn"], r = n.length, i = window.console || {}; r--;) e = n[r], i[e] || (i[e] = t)
- }();
- var N = function () {
- function e() {
- this.api_key = this.ExtractAPIKey()
- }
- return e.prototype.ExtractAPIKey = function () {
- function e(e) {
- e = e.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
- var t = new RegExp("[\\?&]" + e + "=([^&#]*)"),
- n = t.exec(r);
- return null === n ? "" : decodeURIComponent(n[1].replace(/\+/g, " "))
- }
- for (var t = document.getElementsByTagName("script"), n = 0; n < t.length; n++) {
- var r = t[n].src.toLowerCase();
- if (r.indexOf("ellipsis.js") > -1) return e("api_key")
- }
- return ""
- }, e
- }();
- t.API_Key = N;
- var M = function () {
- function e() {
- this.pageId = S.generate(), this.update()
- }
- return e.prototype.update = function () {
- var t = k.read(e.sessionKey);
- this.sessionId = t ? t : S.generate(), k.create(e.sessionKey, this.sessionId, {
- minutes: 30
- });
- var n = k.read(e.customSessionKey);
- n && this.setCustomerSession(n)
- }, e.prototype.setCustomerSession = function (t) {
- k.create(e.customSessionKey, t, {
- minutes: 30
- })
- }, e.sessionKey = "ellipsis.sessionid", e.customSessionKey = "ellipsis.customsessionid", e
- }();
- t.CurrentSession = M, t.currentSession = new M, t.api_key = new N, t.browserFootprintCollector = new x, t.mouseMoveCollector = new v, t.mouseEventsCollector = new C, t.keyboardEventsCollector = new w, t.timeBalanceCollector = new y, t.textLengthCollector = new b, t.pageSnapshotCollector = new E, t.touchMoveCollector = new u, t.start = function () {
- t.browserFootprintCollector.init(), t.mouseMoveCollector.init(), t.mouseEventsCollector.init(), t.keyboardEventsCollector.init(), t.timeBalanceCollector.init(), t.textLengthCollector.init(), t.pageSnapshotCollector.init(), t.touchMoveCollector.init()
- };
- var L = function () {
- var e = window.ellipsis;
- if (e && e.signal) {
- var t = typeof e.signal,
- n = e.signal;
- if ("string" == t) switch (n) {
- case "human":
- return 1;
- case "bot":
- return 2
- } else if ("number" == t && n >= 0 && 2 >= n) return n
- }
- return n = 0, c.each(a(), function (e, t) {
- var r = t.getAttribute("data-signal");
- if (r) switch (r) {
- case "human":
- return n = 1, !1;
- case "bot":
- return n = 2, !1
- }
- }), n
- };
- t.harvest = function () {
- var e = {
- signal: 0,
- api_key: "",
- version: "2.0"
- };
- return e.signal = L(), c.extend(e, t.currentSession), c.extend(e, t.browserFootprintCollector.harvest()), c.extend(e, t.mouseMoveCollector.harvest()), c.extend(e, t.mouseEventsCollector.harvest()), c.extend(e, t.keyboardEventsCollector.harvest()), c.extend(e, t.timeBalanceCollector.harvest()), c.extend(e, t.textLengthCollector.harvest()), c.extend(e, t.pageSnapshotCollector.harvest()), c.extend(e, t.touchMoveCollector.harvest()), c.extend(e, t.api_key), e
- }, t.end = function () {
- t.browserFootprintCollector.uninit(), t.mouseMoveCollector.uninit(), t.mouseEventsCollector.uninit(), t.keyboardEventsCollector.uninit(), t.timeBalanceCollector.uninit(), t.textLengthCollector.uninit(), t.pageSnapshotCollector.uninit(), t.touchMoveCollector.uninit()
- }, t.collectionTriggered = function (e) {
- try {
- c(window).removeEventListener("unload", t.collectionTriggered, !0);
- var noHref = "" === e.target.href,
- n = t.harvest(),
- r = T.compress(JSON.stringify(n));
- c.ajax({
- type: "POST",
- contentType: "application/json; charset=utf-8",
- url: "https://api.humanpresence.io/v2",
- data: JSON.stringify(r),
- async: !!noHref,
- complete: function () {
- console.info("Ellipsis server called sucessfully.")
- },
- error: function (e, t, n) {
- throw new Error("Error calling ellipsis server. " + t)
- }
- })
- } catch (i) {
- console.warn(i.message)
- }
- }, t.registerSiteSession = function (e, n) {
- var r = {
- sessid: t.currentSession.sessionId,
- site_sessid: e,
- api_key: n
- };
- c.ajax({
- type: "POST",
- contentType: "application/json; charset=utf-8",
- url: "https://api.humanpresence.io/v2/registersession",
- data: JSON.stringify(r),
- async: !1,
- complete: function () {
- console.info("Ellipsis server called sucessfully.")
- },
- error: function (e, t, n) {
- throw new Error("Error calling ellipsis server. " + t)
- }
- }), t.currentSession.setCustomerSession(e)
- }, t.checkHumanPresence = function (e, n) {
- void 0 === n && (n = null), n || (n = t.currentSession.sessionId);
- var r, i;
- return c.ajax({
- type: "GET",
- url: "https://api.humanpresence.io/v2/checkhumanpresence/" + n + "?apikey=" + e,
- async: !1,
- success: function (e) {
- r = e.signal, i = e.confidence
- },
- error: function (e, t, n) {
- throw new Error("Error calling ellipsis server. " + t)
- }
- }), {
- signal: r,
- confidence: i
- }
- }, t.reportSignal = function (e, n, r) {
- void 0 === r && (r = null), r || (r = t.currentSession.sessionId);
- var i = {
- sessid: r,
- pageid: t.currentSession.pageId,
- signal: e,
- apikey: n
- };
- c.ajax({
- type: "POST",
- data: JSON.stringify(i),
- contentType: "application/json; charset=utf-8",
- url: "https://api.humanpresence.io/v2/reportsignal",
- async: !1,
- error: function (e, t, n) {
- throw new Error("Error calling ellipsis server. " + t)
- }
- })
- }, c.fn.getPath = function (e) {
- if ("undefined" == typeof e && (e = ""), this.is("html") || void 0 == this.get(0)) return "html" + e;
- var t = this.get(0).nodeName.toLowerCase(),
- n = this.attr("id"),
- r = this.attr("class");
- return "undefined" != typeof n && (t += "#" + n), "undefined" != typeof r && (t += "." + r.split(/[\s\n]+/).join(".")), this.parent().getPath(" > " + t + e)
- }, c.fn.addEventListener = function (e, t, n) {
- return this.each(function () {
- this.addEventListener ? this.addEventListener(e, t, n) : this.attachEvent ? this.attachEvent("on" + e, t) : this["on" + e] = t
- })
- }, c.fn.removeEventListener = function (e, t, n) {
- return this.each(function () {
- this.removeEventListener ? this.removeEventListener(e, t, n) : this.detachEvent ? this.detachEvent("on" + e, t) : this["on" + e] = null
- })
- }
- }),
- function () {
- ellipsis.require(["ell-jquery", "ellipsis"], function (e, t) {
- t.start(), e(document).ready(function () {
- e.support.cors || console.warn("Ellipsis: Browser (or IE compatability mode) does not support CORS."), e("a").addEventListener("click", t.collectionTriggered, !0), e("form").addEventListener("submit", t.collectionTriggered, !0), e(window).addEventListener("unload", t.collectionTriggered, !0), e(window).addEventListener("popstate", t.collectionTriggered, !0)
- })
- })
- }(), ellipsis.define("src/ellipsis_init.js", function () {});
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement