(function(a, f) {
function h(b) {
return m.isWindow(b) ? b: 9 === b.nodeType ? b.defaultView || b.parentWindow: !1
}
function n(b) {
if (!ea[b]) {
var a = w.body,
d = m("<" + b + ">").appendTo(a),
c = d.css("display");
d.remove();
if ("none" === c || "" === c) N || (N = w.createElement("iframe"), N.frameBorder = N.width = N.height = 0),
a.appendChild(N),
Q && N.createElement || (Q = (N.contentWindow || N.contentDocument).document, Q.write(("CSS1Compat" === w.compatMode ? "": "") + "
"), Q.close()),
d = Q.createElement(b),
Q.body.appendChild(d),
c = m.css(d, "display"),
a.removeChild(N);
ea[b] = c
}
return ea[b]
}
function p(b, a) {
var d = {};
m.each(pa.concat.apply([], pa.slice(0, a)),
function() {
d[this] = b
});
return d
}
function b() {
Y = f
}
function d() {
setTimeout(b, 0);
return Y = m.now()
}
function c() {
try {
return new a.XMLHttpRequest
} catch(b) {}
}
function e(b, a, d, c) {
if (m.isArray(a)) m.each(a,
function(a, H) {
d || Ta.test(b) ? c(b, H) : e(b + "[" + ("object" == typeof H || m.isArray(H) ? a: "") + "]", H, d, c)
});
else if (d || null == a || "object" != typeof a) c(b, a);
else for (var g in a) e(b + "[" + g + "]", a[g], d, c)
}
function g(b, a) {
var d, c, e = m.ajaxSettings.flatOptions || {};
for (d in a) a[d] !== f && ((e[d] ? b: c || (c = {}))[d] = a[d]);
c && m.extend(!0, b, c)
}
function r(b, a, d, c, e, g) {
e = e || a.dataTypes[0];
g = g || {};
g[e] = !0;
e = b[e];
for (var l = 0,
m = e ? e.length: 0, k = b === ga, q; l < m && (k || !q); l++) q = e[l](a, d, c),
"string" == typeof q && (!k || g[q] ? q = f: (a.dataTypes.unshift(q), q = r(b, a, d, c, q, g))); ! k && q || g["*"] || (q = r(b, a, d, c, "*", g));
return q
}
function k(b) {
return function(a, d) {
"string" != typeof a && (d = a, a = "*");
if (m.isFunction(d)) for (var c = a.toLowerCase().split(qa), e = 0, g = c.length, f, l; e < g; e++) f = c[e],
(l = /^\+/.test(f)) && (f = f.substr(1) || "*"),
f = b[f] = b[f] || [],
f[l ? "unshift": "push"](d)
}
}
function l(b, a, d) {
var c = "width" === a ? b.offsetWidth: b.offsetHeight,
e = "width" === a ? Ua: Va,
g = 0,
f = e.length;
if (0 < c) {
if ("border" !== d) for (; g < f; g++) d || (c -= parseFloat(m.css(b, "padding" + e[g])) || 0),
"margin" === d ? c += parseFloat(m.css(b, d + e[g])) || 0 : c -= parseFloat(m.css(b, "border" + e[g] + "Width")) || 0;
return c + "px"
}
c = S(b, a, a);
if (0 > c || null == c) c = b.style[a] || 0;
c = parseFloat(c) || 0;
if (d) for (; g < f; g++) c += parseFloat(m.css(b, "padding" + e[g])) || 0,
"padding" !== d && (c += parseFloat(m.css(b, "border" + e[g] + "Width")) || 0),
"margin" === d && (c += parseFloat(m.css(b, d + e[g])) || 0);
return c + "px"
}
function t(b, a) {
a.src ? m.ajax({
url: a.src,
async: !1,
dataType: "script"
}) : m.globalEval((a.text || a.textContent || a.innerHTML || "").replace(Wa, "/*$0*/"));
a.parentNode && a.parentNode.removeChild(a)
}
function v(b) {
var a = (b.nodeName || "").toLowerCase();
"input" === a ? q(b) : "script" !== a && "undefined" != typeof b.getElementsByTagName && m.grep(b.getElementsByTagName("input"), q)
}
function q(b) {
if ("checkbox" === b.type || "radio" === b.type) b.defaultChecked = b.checked
}
function y(b) {
return "undefined" != typeof b.getElementsByTagName ? b.getElementsByTagName("*") : "undefined" != typeof b.querySelectorAll ? b.querySelectorAll("*") : []
}
function s(b, a) {
var d;
if (1 === a.nodeType) {
a.clearAttributes && a.clearAttributes();
a.mergeAttributes && a.mergeAttributes(b);
d = a.nodeName.toLowerCase();
if ("object" === d) a.outerHTML = b.outerHTML;
else if ("input" !== d || "checkbox" !== b.type && "radio" !== b.type) if ("option" === d) a.selected = b.defaultSelected;
else {
if ("input" === d || "textarea" === d) a.defaultValue = b.defaultValue
} else b.checked && (a.defaultChecked = a.checked = b.checked),
a.value !== b.value && (a.value = b.value);
a.removeAttribute(m.expando)
}
}
function u(b, a) {
if (1 === a.nodeType && m.hasData(b)) {
var d, c, e;
c = m._data(b);
var g = m._data(a, c),
f = c.events;
if (f) for (d in delete g.handle, g.events = {},
f) for (c = 0, e = f[d].length; c < e; c++) m.event.add(a, d + (f[d][c].namespace ? ".": "") + f[d][c].namespace, f[d][c], f[d][c].data);
g.data && (g.data = m.extend({},
g.data))
}
}
function z(b, a) {
return m.nodeName(b, "table") ? b.getElementsByTagName("tbody")[0] || b.appendChild(b.ownerDocument.createElement("tbody")) : b
}
function A(b) {
var a = ra.split("|");
b = b.createDocumentFragment();
if (b.createElement) for (; a.length;) b.createElement(a.pop());
return b
}
function x(b, a, d) {
a = a || 0;
if (m.isFunction(a)) return m.grep(b,
function(b, c) {
return !! a.call(b, c, b) === d
});
if (a.nodeType) return m.grep(b,
function(b, c) {
return b === a === d
});
if ("string" == typeof a) {
var c = m.grep(b,
function(b) {
return 1 === b.nodeType
});
if (Xa.test(a)) return m.filter(a, c, !d);
a = m.filter(a, c)
}
return m.grep(b,
function(b, c) {
return 0 <= m.inArray(b, a) === d
})
}
function D(b) {
return ! b || !b.parentNode || 11 === b.parentNode.nodeType
}
function B() {
return ! 0
}
function F() {
return ! 1
}
function L(b, a, d) {
var c = a + "defer",
e = a + "queue",
g = a + "mark",
f = m._data(b, c); ! f || "queue" !== d && m._data(b, e) || "mark" !== d && m._data(b, g) || setTimeout(function() {
m._data(b, e) || m._data(b, g) || (m.removeData(b, c, !0), f.fire())
},
0)
}
function O(b) {
for (var a in b) if (("data" !== a || !m.isEmptyObject(b[a])) && "toJSON" !== a) return ! 1;
return ! 0
}
function C(b, a, d) {
if (d === f && 1 === b.nodeType) if (d = "data-" + a.replace(Ya, "-$1").toLowerCase(), d = b.getAttribute(d), "string" == typeof d) {
try {
d = "true" === d ? !0 : "false" === d ? !1 : "null" === d ? null: m.isNumeric(d) ? parseFloat(d) : Za.test(d) ? m.parseJSON(d) : d
} catch(c) {}
m.data(b, a, d)
} else d = f;
return d
}
function G(b) {
var a = sa[b] = {},
d,
c;
b = b.split(/\s+/);
d = 0;
for (c = b.length; d < c; d++) a[b[d]] = !0;
return a
}
var w = a.document,
J = a.navigator,
V = a.location,
m = function() {
function b() {
if (!d.isReady) {
try {
w.documentElement.doScroll("left")
} catch(a) {
setTimeout(b, 1);
return
}
d.ready()
}
}
var d = function(b, a) {
return new d.fn.init(b, a, g)
},
c = a.jQuery,
e = a.$,
g,
l = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,
r = /\S/,
m = /^\s+/,
k = /\s+$/,
q = /^<(\w+)\s*\/?>(?:<\/\1>)?$/,
h = /^[\],:{}\s]*$/,
t = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,
v = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,
n = /(?:^|:|,)(?:\s*\[)+/g,
y = /(webkit)[ \/]([\w.]+)/,
s = /(opera)(?:.*version)?[ \/]([\w.]+)/,
p = /(msie) ([\w.]+)/,
u = /(mozilla)(?:.*? rv:([\w.]+))?/,
z = /-([a-z]|[0-9])/ig,
A = /^-ms-/,
x = function(b, a) {
return (a + "").toUpperCase()
},
D = J.userAgent,
aa,
T,
$a = Object.prototype.toString,
ha = Object.prototype.hasOwnProperty,
ia = Array.prototype.push,
X = Array.prototype.slice,
ta = String.prototype.trim,
ua = Array.prototype.indexOf,
B = {};
d.fn = d.prototype = {
constructor: d,
init: function(b, a, c) {
var e, E;
if (!b) return this;
if (b.nodeType) return this.context = this[0] = b,
this.length = 1,
this;
if ("body" === b && !a && w.body) return this.context = w,
this[0] = w.body,
this.selector = b,
this.length = 1,
this;
if ("string" == typeof b) {
"<" !== b.charAt(0) || ">" !== b.charAt(b.length - 1) || 3 > b.length ? e = l.exec(b) : e = [null, b, null];
if (e && (e[1] || !a)) {
if (e[1]) return E = (a = a instanceof d ? a[0] : a) ? a.ownerDocument || a: w,
(c = q.exec(b)) ? d.isPlainObject(a) ? (b = [w.createElement(c[1])], d.fn.attr.call(b, a, !0)) : b = [E.createElement(c[1])] : (c = d.buildFragment([e[1]], [E]), b = (c.cacheable ? d.clone(c.fragment) : c.fragment).childNodes),
d.merge(this, b);
if ((a = w.getElementById(e[2])) && a.parentNode) {
if (a.id !== e[2]) return c.find(b);
this.length = 1;
this[0] = a
}
this.context = w;
this.selector = b;
return this
}
return ! a || a.jquery ? (a || c).find(b) : this.constructor(a).find(b)
}
if (d.isFunction(b)) return c.ready(b);
b.selector !== f && (this.selector = b.selector, this.context = b.context);
return d.makeArray(b, this)
},
selector: "",
jquery: "1.7.1",
length: 0,
size: function() {
return this.length
},
toArray: function() {
return X.call(this, 0)
},
get: function(b) {
return null == b ? this.toArray() : 0 > b ? this[this.length + b] : this[b]
},
pushStack: function(b, a, c) {
var e = this.constructor();
d.isArray(b) ? ia.apply(e, b) : d.merge(e, b);
e.prevObject = this;
e.context = this.context;
"find" === a ? e.selector = this.selector + (this.selector ? " ": "") + c: a && (e.selector = this.selector + "." + a + "(" + c + ")");
return e
},
each: function(b, a) {
return d.each(this, b, a)
},
ready: function(b) {
d.bindReady();
aa.add(b);
return this
},
eq: function(b) {
b = +b;
return - 1 === b ? this.slice(b) : this.slice(b, b + 1)
},
first: function() {
return this.eq(0)
},
last: function() {
return this.eq( - 1)
},
slice: function() {
return this.pushStack(X.apply(this, arguments), "slice", X.call(arguments).join(","))
},
map: function(b) {
return this.pushStack(d.map(this,
function(a, d) {
return b.call(a, d, a)
}))
},
end: function() {
return this.prevObject || this.constructor(null)
},
push: ia,
sort: [].sort,
splice: [].splice
};
d.fn.init.prototype = d.fn;
d.extend = d.fn.extend = function() {
var b, a, c, e, E, g, l = arguments[0] || {},
r = 1,
m = arguments.length,
k = !1;
"boolean" == typeof l && (k = l, l = arguments[1] || {},
r = 2);
"object" != typeof l && !d.isFunction(l) && (l = {});
for (m === r && (l = this, --r); r < m; r++) if (null != (b = arguments[r])) for (a in b) c = l[a],
e = b[a],
l !== e && (k && e && (d.isPlainObject(e) || (E = d.isArray(e))) ? (E ? (E = !1, g = c && d.isArray(c) ? c: []) : g = c && d.isPlainObject(c) ? c: {},
l[a] = d.extend(k, g, e)) : e !== f && (l[a] = e));
return l
};
d.extend({
noConflict: function(b) {
a.$ === d && (a.$ = e);
b && a.jQuery === d && (a.jQuery = c);
return d
},
isReady: !1,
readyWait: 1,
holdReady: function(b) {
b ? d.readyWait++:d.ready(!0)
},
ready: function(b) {
if (!0 === b && !--d.readyWait || !0 !== b && !d.isReady) {
if (!w.body) return setTimeout(d.ready, 1);
d.isReady = !0; ! 0 !== b && 0 < --d.readyWait || (aa.fireWith(w, [d]), d.fn.trigger && d(w).trigger("ready").off("ready"))
}
},
bindReady: function() {
if (!aa) {
aa = d.Callbacks("once memory");
if ("complete" === w.readyState) return setTimeout(d.ready, 1);
if (w.addEventListener) w.addEventListener("DOMContentLoaded", T, !1),
a.addEventListener("load", d.ready, !1);
else if (w.attachEvent) {
w.attachEvent("onreadystatechange", T);
a.attachEvent("onload", d.ready);
var c = !1;
try {
c = null == a.frameElement
} catch(e) {}
w.documentElement.doScroll && c && b()
}
}
},
isFunction: function(b) {
return "function" === d.type(b)
},
isArray: Array.isArray ||
function(b) {
return "array" === d.type(b)
},
isWindow: function(b) {
return b && "object" == typeof b && "setInterval" in b
},
isNumeric: function(b) {
return ! isNaN(parseFloat(b)) && isFinite(b)
},
type: function(b) {
return null == b ? String(b) : B[$a.call(b)] || "object"
},
isPlainObject: function(b) {
if (!b || "object" !== d.type(b) || b.nodeType || d.isWindow(b)) return ! 1;
try {
if (b.constructor && !ha.call(b, "constructor") && !ha.call(b.constructor.prototype, "isPrototypeOf")) return ! 1
} catch(a) {
return ! 1
}
for (var c in b);
return c === f || ha.call(b, c)
},
isEmptyObject: function(b) {
for (var a in b) return ! 1;
return ! 0
},
error: function(b) {
throw Error(b);
},
parseJSON: function(b) {
if ("string" != typeof b || !b) return null;
b = d.trim(b);
if (a.JSON && a.JSON.parse) return a.JSON.parse(b);
if (h.test(b.replace(t, "@").replace(v, "]").replace(n, ""))) return (new Function("return " + b))();
d.error("Invalid JSON: " + b)
},
parseXML: function(b) {
var c, e;
try {
a.DOMParser ? (e = new DOMParser, c = e.parseFromString(b, "text/xml")) : (c = new ActiveXObject("Microsoft.XMLDOM"), c.async = "false", c.loadXML(b))
} catch(E) {
c = f
}
c && c.documentElement && !c.getElementsByTagName("parsererror").length || d.error("Invalid XML: " + b);
return c
},
noop: function() {},
globalEval: function(b) {
b && r.test(b) && (a.execScript ||
function(b) {
a.eval.call(a, b)
})(b)
},
camelCase: function(b) {
return b.replace(A, "ms-").replace(z, x)
},
nodeName: function(b, a) {
return b.nodeName && b.nodeName.toUpperCase() === a.toUpperCase()
},
each: function(b, a, c) {
var e, E = 0,
g = b.length,
l = g === f || d.isFunction(b);
if (c) if (l) for (e in b) {
if (!1 === a.apply(b[e], c)) break
} else for (; E < g && !1 !== a.apply(b[E++], c););
else if (l) for (e in b) {
if (!1 === a.call(b[e], e, b[e])) break
} else for (; E < g && !1 !== a.call(b[E], E, b[E++]););
return b
},
trim: ta ?
function(b) {
return null == b ? "": ta.call(b)
}: function(b) {
return null == b ? "": (b + "").replace(m, "").replace(k, "")
},
makeArray: function(b, a) {
var c = a || [];
if (null != b) {
var e = d.type(b);
null == b.length || "string" === e || "function" === e || "regexp" === e || d.isWindow(b) ? ia.call(c, b) : d.merge(c, b)
}
return c
},
inArray: function(b, a, d) {
var c;
if (a) {
if (ua) return ua.call(a, b, d);
c = a.length;
for (d = d ? 0 > d ? Math.max(0, c + d) : d: 0; d < c; d++) if (d in a && a[d] === b) return d
}
return - 1
},
merge: function(b, a) {
var d = b.length,
c = 0;
if ("number" == typeof a.length) for (var e = a.length; c < e; c++) b[d++] = a[c];
else for (; a[c] !== f;) b[d++] = a[c++];
b.length = d;
return b
},
grep: function(b, a, d) {
var c = [],
e;
d = !!d;
for (var E = 0,
g = b.length; E < g; E++) e = !!a(b[E], E),
d !== e && c.push(b[E]);
return c
},
map: function(b, a, c) {
var e, E, g = [],
l = 0,
r = b.length;
if (b instanceof d || r !== f && "number" == typeof r && (0 < r && b[0] && b[r - 1] || 0 === r || d.isArray(b))) for (; l < r; l++) e = a(b[l], l, c),
null != e && (g[g.length] = e);
else for (E in b) e = a(b[E], E, c),
null != e && (g[g.length] = e);
return g.concat.apply([], g)
},
guid: 1,
proxy: function(b, a) {
if ("string" == typeof a) {
var c = b[a];
a = b;
b = c
}
if (!d.isFunction(b)) return f;
var e = X.call(arguments, 2),
c = function() {
return b.apply(a, e.concat(X.call(arguments)))
};
c.guid = b.guid = b.guid || c.guid || d.guid++;
return c
},
access: function(b, a, c, e, E, g) {
var l = b.length;
if ("object" == typeof a) {
for (var r in a) d.access(b, r, a[r], e, E, c);
return b
}
if (c !== f) {
e = !g && e && d.isFunction(c);
for (r = 0; r < l; r++) E(b[r], a, e ? c.call(b[r], r, E(b[r], a)) : c, g);
return b
}
return l ? E(b[0], a) : f
},
now: function() {
return (new Date).getTime()
},
uaMatch: function(b) {
b = b.toLowerCase();
b = y.exec(b) || s.exec(b) || p.exec(b) || 0 > b.indexOf("compatible") && u.exec(b) || [];
return {
browser: b[1] || "",
version: b[2] || "0"
}
},
sub: function() {
function b(a, d) {
return new b.fn.init(a, d)
}
d.extend(!0, b, this);
b.superclass = this;
b.fn = b.prototype = this();
b.fn.constructor = b;
b.sub = this.sub;
b.fn.init = function(c, e) {
e && e instanceof d && !(e instanceof b) && (e = b(e));
return d.fn.init.call(this, c, e, a)
};
b.fn.init.prototype = b.fn;
var a = b(w);
return b
},
browser: {}
});
d.each("Boolean Number String Function Array Date RegExp Object".split(" "),
function(b, a) {
B["[object " + a + "]"] = a.toLowerCase()
});
D = d.uaMatch(D);
D.browser && (d.browser[D.browser] = !0, d.browser.version = D.version);
d.browser.webkit && (d.browser.safari = !0);
r.test("\u00a0") && (m = /^[\s\xA0]+/, k = /[\s\xA0]+$/);
g = d(w);
w.addEventListener ? T = function() {
w.removeEventListener("DOMContentLoaded", T, !1);
d.ready()
}: w.attachEvent && (T = function() {
"complete" === w.readyState && (w.detachEvent("onreadystatechange", T), d.ready())
});
return d
} (),
sa = {};
m.Callbacks = function(b) {
b = b ? sa[b] || G(b) : {};
var a = [],
d = [],
c,
e,
g,
l,
r,
k = function(d) {
var c, e, g, f;
c = 0;
for (e = d.length; c < e; c++) g = d[c],
f = m.type(g),
"array" === f ? k(g) : "function" !== f || b.unique && h.has(g) || a.push(g)
},
q = function(f, m) {
m = m || [];
c = !b.memory || [f, m];
e = !0;
r = g || 0;
g = 0;
for (l = a.length; a && r < l; r++) if (!1 === a[r].apply(f, m) && b.stopOnFalse) {
c = !0;
break
}
e = !1;
a && (b.once ? !0 === c ? h.disable() : a = [] : d && d.length && (c = d.shift(), h.fireWith(c[0], c[1])))
},
h = {
add: function() {
if (a) {
var b = a.length;
k(arguments);
e ? l = a.length: c && !0 !== c && (g = b, q(c[0], c[1]))
}
return this
},
remove: function() {
if (a) for (var d = arguments,
c = 0,
g = d.length; c < g; c++) for (var f = 0; f < a.length && (d[c] !== a[f] || (e && f <= l && (l--, f <= r && r--), a.splice(f--, 1), !b.unique)); f++);
return this
},
has: function(b) {
if (a) for (var d = 0,
c = a.length; d < c; d++) if (b === a[d]) return ! 0;
return ! 1
},
empty: function() {
a = [];
return this
},
disable: function() {
a = d = c = f;
return this
},
disabled: function() {
return ! a
},
lock: function() {
d = f;
c && !0 !== c || h.disable();
return this
},
locked: function() {
return ! d
},
fireWith: function(a, g) {
d && (e ? b.once || d.push([a, g]) : (!b.once || !c) && q(a, g));
return this
},
fire: function() {
h.fireWith(this, arguments);
return this
},
fired: function() {
return !! c
}
};
return h
};
var ja = [].slice;
m.extend({
Deferred: function(b) {
var a = m.Callbacks("once memory"),
d = m.Callbacks("once memory"),
c = m.Callbacks("memory"),
e = "pending",
g = {
resolve: a,
reject: d,
notify: c
},
f = {
done: a.add,
fail: d.add,
progress: c.add,
state: function() {
return e
},
isResolved: a.fired,
isRejected: d.fired,
then: function(b, a, d) {
l.done(b).fail(a).progress(d);
return this
},
always: function() {
l.done.apply(l, arguments).fail.apply(l, arguments);
return this
},
pipe: function(b, a, d) {
return m.Deferred(function(c) {
m.each({
done: [b, "resolve"],
fail: [a, "reject"],
progress: [d, "notify"]
},
function(b, a) {
var d = a[0],
e = a[1],
E;
m.isFunction(d) ? l[b](function() { (E = d.apply(this, arguments)) && m.isFunction(E.promise) ? E.promise().then(c.resolve, c.reject, c.notify) : c[e + "With"](this === l ? c: this, [E])
}) : l[b](c[e])
})
}).promise()
},
promise: function(b) {
if (null == b) b = f;
else for (var a in f) b[a] = f[a];
return b
}
},
l = f.promise({}),
r;
for (r in g) l[r] = g[r].fire,
l[r + "With"] = g[r].fireWith;
l.done(function() {
e = "resolved"
},
d.disable, c.lock).fail(function() {
e = "rejected"
},
a.disable, c.lock);
b && b.call(l, l);
return l
},
when: function(b) {
function a(b) {
return function(a) {
f[b] = 1 < arguments.length ? ja.call(arguments, 0) : a;
r.notifyWith(k, f)
}
}
function d(b) {
return function(a) {
c[b] = 1 < arguments.length ? ja.call(arguments, 0) : a; --l || r.resolveWith(r, c)
}
}
var c = ja.call(arguments, 0),
e = 0,
g = c.length,
f = Array(g),
l = g,
r = 1 >= g && b && m.isFunction(b.promise) ? b: m.Deferred(),
k = r.promise();
if (1 < g) {
for (; e < g; e++) c[e] && c[e].promise && m.isFunction(c[e].promise) ? c[e].promise().then(d(e), r.reject, a(e)) : --l;
l || r.resolveWith(r, c)
} else r !== b && r.resolveWith(r, g ? [b] : []);
return k
}
});
m.support = function() {
var b, d, c, e, g, f, l, r, k, q = w.createElement("div");
q.setAttribute("className", "t");
q.innerHTML = "
a";
d = q.getElementsByTagName("*");
c = q.getElementsByTagName("a")[0];
if (!d || !d.length || !c) return {};
e = w.createElement("select");
g = e.appendChild(w.createElement("option"));
d = q.getElementsByTagName("input")[0];
b = {
leadingWhitespace: 3 === q.firstChild.nodeType,
tbody: !q.getElementsByTagName("tbody").length,
htmlSerialize: !!q.getElementsByTagName("link").length,
style: /top/.test(c.getAttribute("style")),
hrefNormalized: "/a" === c.getAttribute("href"),
opacity: /^0.55/.test(c.style.opacity),
cssFloat: !!c.style.cssFloat,
checkOn: "on" === d.value,
optSelected: g.selected,
getSetAttribute: "t" !== q.className,
enctype: !!w.createElement("form").enctype,
html5Clone: "<:nav>" !== w.createElement("nav").cloneNode(!0).outerHTML,
submitBubbles: !0,
changeBubbles: !0,
focusinBubbles: !1,
deleteExpando: !0,
noCloneEvent: !0,
inlineBlockNeedsLayout: !1,
shrinkWrapBlocks: !1,
reliableMarginRight: !0
};
d.checked = !0;
b.noCloneChecked = d.cloneNode(!0).checked;
e.disabled = !0;
b.optDisabled = !g.disabled;
try {
delete q.test
} catch(h) {
b.deleteExpando = !1
} ! q.addEventListener && q.attachEvent && q.fireEvent && (q.attachEvent("onclick",
function() {
b.noCloneEvent = !1
}), q.cloneNode(!0).fireEvent("onclick"));
d = w.createElement("input");
d.value = "t";
d.setAttribute("type", "radio");
b.radioValue = "t" === d.value;
d.setAttribute("checked", "checked");
q.appendChild(d);
c = w.createDocumentFragment();
c.appendChild(q.lastChild);
b.checkClone = c.cloneNode(!0).cloneNode(!0).lastChild.checked;
b.appendChecked = d.checked;
c.removeChild(d);
c.appendChild(q);
q.innerHTML = "";
a.getComputedStyle && (f = w.createElement("div"), f.style.width = "0", f.style.marginRight = "0", q.style.width = "2px", q.appendChild(f), b.reliableMarginRight = 0 === (parseInt((a.getComputedStyle(f, null) || {
marginRight: 0
}).marginRight, 10) || 0));
if (q.attachEvent) for (r in {
submit: 1,
change: 1,
focusin: 1
}) f = "on" + r,
(k = f in q) || (q.setAttribute(f, "return;"), k = "function" == typeof q[f]),
b[r + "Bubbles"] = k;
c.removeChild(q);
c = e = g = f = q = d = null;
m(function() {
var a, d, c, e, g, f = w.getElementsByTagName("body")[0]; ! f || (a = w.createElement("div"), a.style.cssText = "visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px", f.insertBefore(a, f.firstChild), q = w.createElement("div"), a.appendChild(q), q.innerHTML = "