(function (window, undefined){ var rootjQuery, readyList, core_strundefined = typeof undefined, location = _AN_Read_location('location', window), document = window.document, docElem = document.documentElement, _jQuery = window.jQuery, _$ = window.$, class2type = { } , core_deletedIds = [] , core_version = "2.0.1", core_concat = core_deletedIds.concat, core_push = core_deletedIds.push, core_slice = core_deletedIds.slice, core_indexOf = core_deletedIds.indexOf, core_toString = class2type.toString, core_hasOwn = class2type.hasOwnProperty, core_trim = core_version.trim, jQuery = function (selector, context){ return new jQuery.fn.init(selector, context, rootjQuery); } , core_pnum = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, core_rnotwhite = /\S+/g, rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>|)$/, rmsPrefix = /^-ms-/, rdashAlpha = /-([\da-z])/gi, fcamelCase = function (all, letter){ return letter.toUpperCase(); } , completed = function (){ document.removeEventListener("DOMContentLoaded", completed, false ); window.removeEventListener("load", completed, false ); jQuery.ready(); } ; jQuery.fn = jQuery.prototype = { jquery: core_version, constructor: jQuery, init: function (selector, context, rootjQuery){ var match, elem; if (!selector) { return this; } if (typeof selector === "string") { if (selector.charAt(0) === "<" && selector.charAt(_AN_Read_length("length", selector) - 1) === ">" && _AN_Read_length("length", selector) >= 3) { match = [null , selector, null ] ; } else { match = rquickExpr.exec(selector); } if (match && (match[1] || !context)) { if (match[1]) { context = context instanceof jQuery? context[0]: context; jQuery.merge(this, jQuery.parseHTML(match[1], context && context.nodeType? context.ownerDocument || context: document, true )); if (rsingleTag.test(match[1]) && jQuery.isPlainObject(context)) { for (match in context){ if (jQuery.isFunction(this[match])) { this[match](context[match]); } else { this.attr(match, context[match]); } } } return this; } else { elem = document.getElementById(match[2]); if (elem && elem.parentNode) { this.length = 1; this[0] = elem; } this.context = document; this.selector = selector; return this; } } else if (!context || context.jquery) { return (context || rootjQuery).find(selector); } else { return this.constructor(context).find(selector); } } else if (selector.nodeType) { this.context = this[0] = selector; this.length = 1; return this; } else if (jQuery.isFunction(selector)) { return rootjQuery.ready(selector); } if (selector.selector !== undefined) { this.selector = selector.selector; this.context = selector.context; } return jQuery.makeArray(selector, this); } , selector: "", length: 0, toArray: function (){ return core_slice.call(this); } , get: function (num){ return num == null ? this.toArray(): (num < 0? this[_AN_Read_length("length", this) + num]: this[num]); } , pushStack: function (elems){ var ret = jQuery.merge(this.constructor(), elems); ret.prevObject = this; ret.context = this.context; return ret; } , each: function (callback, args){ return jQuery.each(this, callback, args); } , ready: function (fn){ jQuery.ready.promise().done(fn); return this; } , slice: function (){ return this.pushStack(core_slice.apply(this, arguments)); } , first: function (){ return this.eq(0); } , last: function (){ return this.eq(-1); } , eq: function (i){ var len = _AN_Read_length("length", this), j = + i + (i < 0? len: 0); return this.pushStack(j >= 0 && j < len? [this[j]] : [] ); } , map: function (callback){ return this.pushStack(jQuery.map(this, function (elem, i){ return callback.call(elem, i, elem); } )); } , end: function (){ return this.prevObject || this.constructor(null ); } , push: core_push, sort: [] .sort, splice: [] .splice} ; jQuery.fn.init.prototype = jQuery.fn; jQuery.extend = jQuery.fn.extend = function (){ var options, name, src, copy, copyIsArray, clone, target = arguments[0] || { } , i = 1, length = _AN_Read_length("length", arguments), deep = false ; if (typeof target === "boolean") { deep = target; target = arguments[1] || { } ; i = 2; } if (typeof target !== "object" && !jQuery.isFunction(target)) { target = { } ; } if (length === i) { target = this; --i; } for (; i < length; i++ ){ if ((options = arguments[i]) != null ) { for (name in options){ src = target[name]; copy = options[name]; if (target === copy) { continue ; } if (deep && copy && (jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)))) { if (copyIsArray) { copyIsArray = false ; clone = src && jQuery.isArray(src)? src: [] ; } else { clone = src && jQuery.isPlainObject(src)? src: { } ; } target[name] = jQuery.extend(deep, clone, copy); } else if (copy !== undefined) { target[name] = copy; } } } } return target; } ; jQuery.extend({ expando: "jQuery" + _AN_Call_replace("replace", (core_version + Math.random()), /\D/g, ""), noConflict: function (deep){ if (window.$ === jQuery) { window.$ = _$; } if (deep && window.jQuery === jQuery) { window.jQuery = _jQuery; } return jQuery; } , isReady: false , readyWait: 1, holdReady: function (hold){ if (hold) { jQuery.readyWait++ ; } else { jQuery.ready(true ); } } , ready: function (wait){ if (wait === true ? --jQuery.readyWait: jQuery.isReady) { return ; } jQuery.isReady = true ; if (wait !== true && --jQuery.readyWait > 0) { return ; } readyList.resolveWith(document, [jQuery] ); if (jQuery.fn.trigger) { jQuery(document).trigger("ready").off("ready"); } } , isFunction: function (obj){ return jQuery.type(obj) === "function"; } , isArray: Array.isArray, isWindow: function (obj){ return obj != null && obj === obj.window; } , isNumeric: function (obj){ return !isNaN(parseFloat(obj)) && isFinite(obj); } , type: function (obj){ if (obj == null ) { return String(obj); } return typeof obj === "object" || typeof obj === "function"? class2type[core_toString.call(obj)] || "object": typeof obj; } , isPlainObject: function (obj){ if (jQuery.type(obj) !== "object" || obj.nodeType || jQuery.isWindow(obj)) { return false ; } try { if (obj.constructor && !core_hasOwn.call(obj.constructor.prototype, "isPrototypeOf")) { return false ; } } catch (e) { return false ; } return true ; } , isEmptyObject: function (obj){ var name; for (name in obj){ return false ; } return true ; } , error: function (msg){ throw new Error(msg) } , parseHTML: function (data, context, keepScripts){ if (!data || typeof data !== "string") { return null ; } if (typeof context === "boolean") { keepScripts = context; context = false ; } context = context || document; var parsed = rsingleTag.exec(data), scripts = !keepScripts && [] ; if (parsed) { return [_AN_Call_createelement("createElement", context, parsed[1])] ; } parsed = jQuery.buildFragment([data] , context, scripts); if (scripts) { jQuery(scripts).remove(); } return jQuery.merge([] , parsed.childNodes); } , parseJSON: JSON.parse, parseXML: function (data){ var xml, tmp; if (!data || typeof data !== "string") { return null ; } try { tmp = new DOMParser(); xml = tmp.parseFromString(data, "text/xml"); } catch (e) { xml = undefined; } if (!xml || _AN_Read_length("length", _AN_Call_getelementsbytagname("getElementsByTagName", xml, "parsererror"))) { jQuery.error("Invalid XML: " + data); } return xml; } , noop: function (){ } , globalEval: function (code){ var script, indirect = eval; code = jQuery.trim(code); if (code) { if (code.indexOf("use strict") === 1) { script = _AN_Call_createelement("createElement", document, "script"); _AN_Write_text("text", script, false , code); _AN_Call_appendchild("appendChild", document.head, script).parentNode.removeChild(script); } else { indirect(code); } } } , camelCase: function (string){ return _AN_Call_replace("replace", _AN_Call_replace("replace", string, rmsPrefix, "ms-"), rdashAlpha, fcamelCase); } , nodeName: function (elem, name){ return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); } , each: function (obj, callback, args){ var value, i = 0, length = _AN_Read_length("length", obj), isArray = isArraylike(obj); if (args) { if (isArray) { for (; i < length; i++ ){ value = callback.apply(obj[i], args); if (value === false ) { break ; } } } else { for (i in obj){ value = callback.apply(obj[i], args); if (value === false ) { break ; } } } } else { if (isArray) { for (; i < length; i++ ){ value = callback.call(obj[i], i, obj[i]); if (value === false ) { break ; } } } else { for (i in obj){ value = callback.call(obj[i], i, obj[i]); if (value === false ) { break ; } } } } return obj; } , trim: function (text){ return text == null ? "": core_trim.call(text); } , makeArray: function (arr, results){ var ret = results || [] ; if (arr != null ) { if (isArraylike(Object(arr))) { jQuery.merge(ret, typeof arr === "string"? [arr] : arr); } else { core_push.call(ret, arr); } } return ret; } , inArray: function (elem, arr, i){ return arr == null ? -1: core_indexOf.call(arr, elem, i); } , merge: function (first, second){ var l = _AN_Read_length("length", second), i = _AN_Read_length("length", first), j = 0; if (typeof l === "number") { for (; j < l; j++ ){ first[i++ ] = second[j]; } } else { while (second[j] !== undefined){ first[i++ ] = second[j++ ]; } } first.length = i; return first; } , grep: function (elems, callback, inv){ var retVal, ret = [] , i = 0, length = _AN_Read_length("length", elems); inv = !!inv; for (; i < length; i++ ){ retVal = !!callback(elems[i], i); if (inv !== retVal) { ret.push(elems[i]); } } return ret; } , map: function (elems, callback, arg){ var value, i = 0, length = _AN_Read_length("length", elems), isArray = isArraylike(elems), ret = [] ; if (isArray) { for (; i < length; i++ ){ value = callback(elems[i], i, arg); if (value != null ) { ret[_AN_Read_length("length", ret)] = value; } } } else { for (i in elems){ value = callback(elems[i], i, arg); if (value != null ) { ret[_AN_Read_length("length", ret)] = value; } } } return core_concat.apply([] , ret); } , guid: 1, proxy: function (fn, context){ var tmp, args, proxy; if (typeof context === "string") { tmp = fn[context]; context = fn; fn = tmp; } if (!jQuery.isFunction(fn)) { return undefined; } args = core_slice.call(arguments, 2); proxy = function (){ return fn.apply(context || this, args.concat(core_slice.call(arguments))); } ; proxy.guid = fn.guid = fn.guid || jQuery.guid++ ; return proxy; } , access: function (elems, fn, key, value, chainable, emptyGet, raw){ var i = 0, length = _AN_Read_length("length", elems), bulk = key == null ; if (jQuery.type(key) === "object") { chainable = true ; for (i in key){ jQuery.access(elems, fn, i, key[i], true , emptyGet, raw); } } else if (value !== undefined) { chainable = true ; if (!jQuery.isFunction(value)) { raw = true ; } if (bulk) { if (raw) { fn.call(elems, value); fn = null ; } else { bulk = fn; fn = function (elem, key, value){ return bulk.call(jQuery(elem), value); } ; } } if (fn) { for (; i < length; i++ ){ fn(elems[i], key, raw? value: value.call(elems[i], i, fn(elems[i], key))); } } } return chainable? elems: bulk? fn.call(elems): length? fn(elems[0], key): emptyGet; } , now: Date.now, swap: function (elem, options, callback, args){ var ret, name, old = { } ; for (name in options){ old[name] = elem.style[name]; elem.style[name] = options[name]; } ret = callback.apply(elem, args || [] ); for (name in options){ elem.style[name] = old[name]; } return ret; } } ); jQuery.ready.promise = function (obj){ if (!readyList) { readyList = jQuery.Deferred(); if (document.readyState === "complete") { _AN_Call_settimeout("setTimeout", window, jQuery.ready); } else { document.addEventListener("DOMContentLoaded", completed, false ); window.addEventListener("load", completed, false ); } } return readyList.promise(obj); } ; jQuery.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function (i, name){ class2type["[object " + name + "]"] = name.toLowerCase(); } ); function isArraylike(obj){ var length = _AN_Read_length("length", obj), type = jQuery.type(obj); if (jQuery.isWindow(obj)) { return false ; } if (obj.nodeType === 1 && length) { return true ; } return type === "array" || type !== "function" && (length === 0 || typeof length === "number" && length > 0 && (length - 1) in obj); } rootjQuery = jQuery(document); (function (window, undefined){ var i, support, cachedruns, Expr, getText, isXML, compile, outermostContext, sortInput, setDocument, document, docElem, documentIsHTML, rbuggyQSA, rbuggyMatches, matches, contains, expando = "sizzle" + - (new Date()), preferredDoc = window.document, dirruns = 0, done = 0, classCache = createCache(), tokenCache = createCache(), compilerCache = createCache(), hasDuplicate = false , sortOrder = function (){ return 0; } , strundefined = typeof undefined, MAX_NEGATIVE = 1 << 31, hasOwn = ({ } ).hasOwnProperty, arr = [] , pop = arr.pop, push_native = arr.push, push = arr.push, slice = arr.slice, indexOf = arr.indexOf || function (elem){ var i = 0, len = _AN_Read_length("length", this); for (; i < len; i++ ){ if (this[i] === elem) { return i; } } return -1; } , booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", whitespace = "[\\x20\\t\\r\\n\\f]", characterEncoding = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", identifier = _AN_Call_replace("replace", characterEncoding, "w", "w#"), attributes = "\\[" + whitespace + "*(" + characterEncoding + ")" + whitespace + "*(?:([*^$|!~]?=)" + whitespace + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + identifier + ")|)|)" + whitespace + "*\\]", pseudos = ":(" + characterEncoding + ")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|" + _AN_Call_replace("replace", attributes, 3, 8) + ")*)|.*)\\)|)", rtrim = new RegExp("^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g"), rcomma = new RegExp("^" + whitespace + "*," + whitespace + "*"), rcombinators = new RegExp("^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*"), rsibling = new RegExp(whitespace + "*[+~]"), rattributeQuotes = new RegExp("=" + whitespace + "*([^\\]'\"]*)" + whitespace + "*\\]", "g"), rpseudo = new RegExp(pseudos), ridentifier = new RegExp("^" + identifier + "$"), matchExpr = { "ID": new RegExp("^#(" + characterEncoding + ")"), "CLASS": new RegExp("^\\.(" + characterEncoding + ")"), "TAG": new RegExp("^(" + (_AN_Call_replace("replace", characterEncoding, "w", "w*")) + ")"), "ATTR": new RegExp("^" + attributes), "PSEUDO": new RegExp("^" + pseudos), "CHILD": new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + "*(\\d+)|))" + whitespace + "*\\)|)", "i"), "bool": new RegExp("^(?:" + booleans + ")$", "i"), "needsContext": new RegExp("^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i")} , rnative = /^[^{]+\{\s*\[native \w/, rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, rinputs = /^(?:input|select|textarea|button)$/i, rheader = /^h\d$/i, rescape = /'|\\/g, runescape = new RegExp("\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig"), funescape = function (_, escaped, escapedWhitespace){ var high = "0x" + escaped - 65536; return high !== high || escapedWhitespace? escaped: high < 0? String.fromCharCode(high + 65536): String.fromCharCode(high >> 10 | 55296, high & 1023 | 56320); } ; try { push.apply((arr = slice.call(preferredDoc.childNodes)), preferredDoc.childNodes); arr[_AN_Read_length("length", preferredDoc.childNodes)].nodeType; } catch (e) { push = { apply: _AN_Read_length("length", arr)? function (target, els){ push_native.apply(target, slice.call(els)); } : function (target, els){ var j = _AN_Read_length("length", target), i = 0; while ((target[j++ ] = els[i++ ])){ } target.length = j - 1; } } ; } function Sizzle(selector, context, results, seed){ var match, elem, m, nodeType, i, groups, old, nid, newContext, newSelector; if ((context? context.ownerDocument || context: preferredDoc) !== document) { setDocument(context); } context = context || document; results = results || [] ; if (!selector || typeof selector !== "string") { return results; } if ((nodeType = context.nodeType) !== 1 && nodeType !== 9) { return [] ; } if (documentIsHTML && !seed) { if ((match = rquickExpr.exec(selector))) { if ((m = match[1])) { if (nodeType === 9) { elem = context.getElementById(m); if (elem && elem.parentNode) { if (elem.id === m) { results.push(elem); return results; } } else { return results; } } else { if (context.ownerDocument && (elem = context.ownerDocument.getElementById(m)) && contains(context, elem) && elem.id === m) { results.push(elem); return results; } } } else if (match[2]) { push.apply(results, _AN_Call_getelementsbytagname("getElementsByTagName", context, selector)); return results; } else if ((m = match[3]) && support.getElementsByClassName && context.getElementsByClassName) { push.apply(results, context.getElementsByClassName(m)); return results; } } if (support.qsa && (!rbuggyQSA || !rbuggyQSA.test(selector))) { nid = old = expando; newContext = context; newSelector = nodeType === 9 && selector; if (nodeType === 1 && context.nodeName.toLowerCase() !== "object") { groups = tokenize(selector); if ((old = _AN_Call_getattribute("getAttribute", context, "id"))) { nid = _AN_Call_replace("replace", old, rescape, "\\$&"); } else { _AN_Call_setattribute("setAttribute", context, "id", nid); } nid = "[id='" + nid + "'] "; i = _AN_Read_length("length", groups); while (i-- ){ groups[i] = nid + toSelector(groups[i]); } newContext = rsibling.test(selector) && context.parentNode || context; newSelector = groups.join(","); } if (newSelector) { try { push.apply(results, newContext.querySelectorAll(newSelector)); return results; } catch (qsaError) { } finally{ if (!old) { context.removeAttribute("id"); } } } } } return select(_AN_Call_replace("replace", selector, rtrim, "$1"), context, results, seed); } function isNative(fn){ return rnative.test(fn + ""); } function createCache(){ var keys = [] ; function cache(key, value){ if (keys.push(key += " ") > Expr.cacheLength) { delete cache[keys.shift()]; } return (cache[key] = value); } return cache; } function markFunction(fn){ fn[expando] = true ; return fn; } function assert(fn){ var div = _AN_Call_createelement("createElement", document, "div"); try { return !!fn(div); } catch (e) { return false ; } finally{ if (div.parentNode) { div.parentNode.removeChild(div); } div = null ; } } function addHandle(attrs, handler, test){ attrs = attrs.split("|"); var current, i = _AN_Read_length("length", attrs), setHandle = test? null : handler; while (i-- ){ if (!(current = Expr.attrHandle[attrs[i]]) || current === handler) { Expr.attrHandle[attrs[i]] = setHandle; } } } function boolHandler(elem, name){ var val = elem.getAttributeNode(name); return val && val.specified? val.value: elem[name] === true ? name.toLowerCase(): null ; } function interpolationHandler(elem, name){ return _AN_Call_getattribute("getAttribute", elem, name, name.toLowerCase() === "type"? 1: 2); } function valueHandler(elem){ if (elem.nodeName.toLowerCase() === "input") { return elem.defaultValue; } } function siblingCheck(a, b){ var cur = b && a, diff = cur && a.nodeType === 1 && b.nodeType === 1 && (~b.sourceIndex || MAX_NEGATIVE) - (~a.sourceIndex || MAX_NEGATIVE); if (diff) { return diff; } if (cur) { while ((cur = cur.nextSibling)){ if (cur === b) { return -1; } } } return a? 1: -1; } function createInputPseudo(type){ return function (elem){ var name = elem.nodeName.toLowerCase(); return name === "input" && elem.type === type; } ; } function createButtonPseudo(type){ return function (elem){ var name = elem.nodeName.toLowerCase(); return (name === "input" || name === "button") && elem.type === type; } ; } function createPositionalPseudo(fn){ return markFunction(function (argument){ argument = + argument; return markFunction(function (seed, matches){ var j, matchIndexes = fn([] , _AN_Read_length("length", seed), argument), i = _AN_Read_length("length", matchIndexes); while (i-- ){ if (seed[(j = matchIndexes[i])]) { seed[j] = !(matches[j] = seed[j]); } } } ); } ); } isXML = Sizzle.isXML = function (elem){ var documentElement = elem && (elem.ownerDocument || elem).documentElement; return documentElement? documentElement.nodeName !== "HTML": false ; } ; support = Sizzle.support = { } ; setDocument = Sizzle.setDocument = function (node){ var doc = node? node.ownerDocument || node: preferredDoc; if (doc === document || doc.nodeType !== 9 || !doc.documentElement) { return document; } document = doc; docElem = doc.documentElement; documentIsHTML = !isXML(doc); support.attributes = assert(function (div){ _AN_Write_innerhtml("innerHTML", div, false , ""); addHandle("type|href|height|width", interpolationHandler, _AN_Call_getattribute("getAttribute", div.firstChild, "href") === "#"); addHandle(booleans, boolHandler, _AN_Call_getattribute("getAttribute", div, "disabled") == null ); div.className = "i"; return !_AN_Call_getattribute("getAttribute", div, "className"); } ); support.input = assert(function (div){ _AN_Write_innerhtml("innerHTML", div, false , ""); _AN_Call_setattribute("setAttribute", div.firstChild, "value", ""); return _AN_Call_getattribute("getAttribute", div.firstChild, "value") === ""; } ); addHandle("value", valueHandler, support.attributes && support.input); support.getElementsByTagName = assert(function (div){ _AN_Call_appendchild("appendChild", div, doc.createComment("")); return !_AN_Read_length("length", _AN_Call_getelementsbytagname("getElementsByTagName", div, "*")); } ); support.getElementsByClassName = assert(function (div){ _AN_Write_innerhtml("innerHTML", div, false , "
"); div.firstChild.className = "i"; return _AN_Read_length("length", div.getElementsByClassName("i")) === 2; } ); support.getById = assert(function (div){ _AN_Call_appendchild("appendChild", docElem, div).id = expando; return !doc.getElementsByName || !_AN_Read_length("length", doc.getElementsByName(expando)); } ); if (support.getById) { Expr.find.ID = function (id, context){ if (typeof context.getElementById !== strundefined && documentIsHTML) { var m = context.getElementById(id); return m && m.parentNode? [m] : [] ; } } ; Expr.filter.ID = function (id){ var attrId = _AN_Call_replace("replace", id, runescape, funescape); return function (elem){ return _AN_Call_getattribute("getAttribute", elem, "id") === attrId; } ; } ; } else { delete Expr.find.ID; Expr.filter.ID = function (id){ var attrId = _AN_Call_replace("replace", id, runescape, funescape); return function (elem){ var node = typeof elem.getAttributeNode !== strundefined && elem.getAttributeNode("id"); return node && node.value === attrId; } ; } ; } Expr.find.TAG = support.getElementsByTagName? function (tag, context){ if (typeof context.getElementsByTagName !== strundefined) { return _AN_Call_getelementsbytagname("getElementsByTagName", context, tag); } } : function (tag, context){ var elem, tmp = [] , i = 0, results = _AN_Call_getelementsbytagname("getElementsByTagName", context, tag); if (tag === "*") { while ((elem = results[i++ ])){ if (elem.nodeType === 1) { tmp.push(elem); } } return tmp; } return results; } ; Expr.find.CLASS = support.getElementsByClassName && function (className, context){ if (typeof context.getElementsByClassName !== strundefined && documentIsHTML) { return context.getElementsByClassName(className); } } ; rbuggyMatches = [] ; rbuggyQSA = [] ; if ((support.qsa = isNative(doc.querySelectorAll))) { assert(function (div){ _AN_Write_innerhtml("innerHTML", div, false , ""); if (!_AN_Read_length("length", div.querySelectorAll("[selected]"))) { rbuggyQSA.push("\\[" + whitespace + "*(?:value|" + booleans + ")"); } if (!_AN_Read_length("length", div.querySelectorAll(":checked"))) { rbuggyQSA.push(":checked"); } } ); assert(function (div){ var input = _AN_Call_createelement("createElement", doc, "input"); _AN_Call_setattribute("setAttribute", input, "type", "hidden"); _AN_Call_setattribute("setAttribute", _AN_Call_appendchild("appendChild", div, input), "t", ""); if (div.querySelectorAll("[t^='']").length) { rbuggyQSA.push("[*^$]=" + whitespace + "*(?:''|\"\")"); } if (!_AN_Read_length("length", div.querySelectorAll(":enabled"))) { rbuggyQSA.push(":enabled", ":disabled"); } div.querySelectorAll("*,:x"); rbuggyQSA.push(",.*:"); } ); } if ((support.matchesSelector = isNative((matches = docElem.webkitMatchesSelector || docElem.mozMatchesSelector || docElem.oMatchesSelector || docElem.msMatchesSelector)))) { assert(function (div){ support.disconnectedMatch = matches.call(div, "div"); matches.call(div, "[s!='']:x"); rbuggyMatches.push("!=", pseudos); } ); } rbuggyQSA = _AN_Read_length("length", rbuggyQSA) && new RegExp(rbuggyQSA.join("|")); rbuggyMatches = _AN_Read_length("length", rbuggyMatches) && new RegExp(rbuggyMatches.join("|")); contains = isNative(docElem.contains) || docElem.compareDocumentPosition? function (a, b){ var adown = a.nodeType === 9? a.documentElement: a, bup = b && b.parentNode; return a === bup || !!(bup && bup.nodeType === 1 && (adown.contains? adown.contains(bup): a.compareDocumentPosition && a.compareDocumentPosition(bup) & 16)); } : function (a, b){ if (b) { while ((b = b.parentNode)){ if (b === a) { return true ; } } } return false ; } ; support.sortDetached = assert(function (div1){ return div1.compareDocumentPosition(_AN_Call_createelement("createElement", doc, "div")) & 1; } ); sortOrder = docElem.compareDocumentPosition? function (a, b){ if (a === b) { hasDuplicate = true ; return 0; } var compare = b.compareDocumentPosition && a.compareDocumentPosition && a.compareDocumentPosition(b); if (compare) { if (compare & 1 || (!support.sortDetached && b.compareDocumentPosition(a) === compare)) { if (a === doc || contains(preferredDoc, a)) { return -1; } if (b === doc || contains(preferredDoc, b)) { return 1; } return sortInput? (indexOf.call(sortInput, a) - indexOf.call(sortInput, b)): 0; } return compare & 4? -1: 1; } return a.compareDocumentPosition? -1: 1; } : function (a, b){ var cur, i = 0, aup = a.parentNode, bup = b.parentNode, ap = [a] , bp = [b] ; if (a === b) { hasDuplicate = true ; return 0; } else if (!aup || !bup) { return a === doc? -1: b === doc? 1: aup? -1: bup? 1: sortInput? (indexOf.call(sortInput, a) - indexOf.call(sortInput, b)): 0; } else if (aup === bup) { return siblingCheck(a, b); } cur = a; while ((cur = cur.parentNode)){ ap.unshift(cur); } cur = b; while ((cur = cur.parentNode)){ bp.unshift(cur); } while (ap[i] === bp[i]){ i++ ; } return i? siblingCheck(ap[i], bp[i]): ap[i] === preferredDoc? -1: bp[i] === preferredDoc? 1: 0; } ; return doc; } ; Sizzle.matches = function (expr, elements){ return Sizzle(expr, null , null , elements); } ; Sizzle.matchesSelector = function (elem, expr){ if ((elem.ownerDocument || elem) !== document) { setDocument(elem); } expr = _AN_Call_replace("replace", expr, rattributeQuotes, "='$1']"); if (support.matchesSelector && documentIsHTML && (!rbuggyMatches || !rbuggyMatches.test(expr)) && (!rbuggyQSA || !rbuggyQSA.test(expr))) { try { var ret = matches.call(elem, expr); if (ret || support.disconnectedMatch || elem.document && elem.document.nodeType !== 11) { return ret; } } catch (e) { } } return _AN_Read_length("length", Sizzle(expr, document, null , [elem] )) > 0; } ; Sizzle.contains = function (context, elem){ if ((context.ownerDocument || context) !== document) { setDocument(context); } return contains(context, elem); } ; Sizzle.attr = function (elem, name){ if ((elem.ownerDocument || elem) !== document) { setDocument(elem); } var fn = Expr.attrHandle[name.toLowerCase()], val = (fn && hasOwn.call(Expr.attrHandle, name.toLowerCase())? fn(elem, name, !documentIsHTML): undefined); return val === undefined? support.attributes || !documentIsHTML? _AN_Call_getattribute("getAttribute", elem, name): (val = elem.getAttributeNode(name)) && val.specified? val.value: null : val; } ; Sizzle.error = function (msg){ throw new Error("Syntax error, unrecognized expression: " + msg) } ; Sizzle.uniqueSort = function (results){ var elem, duplicates = [] , j = 0, i = 0; hasDuplicate = !support.detectDuplicates; sortInput = !support.sortStable && results.slice(0); results.sort(sortOrder); if (hasDuplicate) { while ((elem = results[i++ ])){ if (elem === results[i]) { j = duplicates.push(i); } } while (j-- ){ results.splice(duplicates[j], 1); } } return results; } ; getText = Sizzle.getText = function (elem){ var node, ret = "", i = 0, nodeType = elem.nodeType; if (!nodeType) { for (; (node = elem[i]); i++ ){ ret += getText(node); } } else if (nodeType === 1 || nodeType === 9 || nodeType === 11) { if (typeof elem.textContent === "string") { return elem.textContent; } else { for (elem = elem.firstChild; elem; elem = elem.nextSibling){ ret += getText(elem); } } } else if (nodeType === 3 || nodeType === 4) { return _AN_Read_nodevalue("nodeValue", elem); } return ret; } ; Expr = Sizzle.selectors = { cacheLength: 50, createPseudo: markFunction, match: matchExpr, attrHandle: { } , find: { } , relative: { ">": { dir: "parentNode", first: true } , " ": { dir: "parentNode"} , "+": { dir: "previousSibling", first: true } , "~": { dir: "previousSibling"} } , preFilter: { "ATTR": function (match){ match[1] = _AN_Call_replace("replace", match[1], runescape, funescape); match[3] = _AN_Call_replace("replace", (match[4] || match[5] || ""), runescape, funescape); if (match[2] === "~=") { match[3] = " " + match[3] + " "; } return match.slice(0, 4); } , "CHILD": function (match){ match[1] = match[1].toLowerCase(); if (match[1].slice(0, 3) === "nth") { if (!match[3]) { Sizzle.error(match[0]); } match[4] = + (match[4]? match[5] + (match[6] || 1): 2 * (match[3] === "even" || match[3] === "odd")); match[5] = + ((match[7] + match[8]) || match[3] === "odd"); } else if (match[3]) { Sizzle.error(match[0]); } return match; } , "PSEUDO": function (match){ var excess, unquoted = !match[5] && match[2]; if (matchExpr.CHILD.test(match[0])) { return null ; } if (match[3] && match[4] !== undefined) { match[2] = match[4]; } else if (unquoted && rpseudo.test(unquoted) && (excess = tokenize(unquoted, true )) && (excess = unquoted.indexOf(")", _AN_Read_length("length", unquoted) - excess) - _AN_Read_length("length", unquoted))) { match[0] = match[0].slice(0, excess); match[2] = unquoted.slice(0, excess); } return match.slice(0, 3); } } , filter: { "TAG": function (nodeNameSelector){ var nodeName = _AN_Call_replace("replace", nodeNameSelector, runescape, funescape).toLowerCase(); return nodeNameSelector === "*"? function (){ return true ; } : function (elem){ return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; } ; } , "CLASS": function (className){ var pattern = classCache[className + " "]; return pattern || (pattern = new RegExp("(^|" + whitespace + ")" + className + "(" + whitespace + "|$)")) && classCache(className, function (elem){ return pattern.test(typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== strundefined && _AN_Call_getattribute("getAttribute", elem, "class") || ""); } ); } , "ATTR": function (name, operator, check){ return function (elem){ var result = Sizzle.attr(elem, name); if (result == null ) { return operator === "!="; } if (!operator) { return true ; } result += ""; return operator === "="? result === check: operator === "!="? result !== check: operator === "^="? check && result.indexOf(check) === 0: operator === "*="? check && result.indexOf(check) > -1: operator === "$="? check && result.slice(- _AN_Read_length("length", check)) === check: operator === "~="? (" " + result + " ").indexOf(check) > -1: operator === "|="? result === check || result.slice(0, _AN_Read_length("length", check) + 1) === check + "-": false ; } ; } , "CHILD": function (type, what, argument, first, last){ var simple = type.slice(0, 3) !== "nth", forward = type.slice(-4) !== "last", ofType = what === "of-type"; return first === 1 && last === 0? function (elem){ return !!elem.parentNode; } : function (elem, context, xml){ var cache, outerCache, node, diff, nodeIndex, start, dir = simple !== forward? "nextSibling": "previousSibling", parent = elem.parentNode, name = ofType && elem.nodeName.toLowerCase(), useCache = !xml && !ofType; if (parent) { if (simple) { while (dir){ node = elem; while ((node = node[dir])){ if (ofType? node.nodeName.toLowerCase() === name: node.nodeType === 1) { return false ; } } start = dir = type === "only" && !start && "nextSibling"; } return true ; } start = [forward? parent.firstChild: parent.lastChild] ; if (forward && useCache) { outerCache = parent[expando] || (parent[expando] = { } ); cache = outerCache[type] || [] ; nodeIndex = cache[0] === dirruns && cache[1]; diff = cache[0] === dirruns && cache[2]; node = nodeIndex && parent.childNodes[nodeIndex]; while ((node = ++nodeIndex && node && node[dir] || (diff = nodeIndex = 0) || start.pop())){ if (node.nodeType === 1 && ++diff && node === elem) { outerCache[type] = [dirruns, nodeIndex, diff] ; break ; } } } else if (useCache && (cache = (elem[expando] || (elem[expando] = { } ))[type]) && cache[0] === dirruns) { diff = cache[1]; } else { while ((node = ++nodeIndex && node && node[dir] || (diff = nodeIndex = 0) || start.pop())){ if ((ofType? node.nodeName.toLowerCase() === name: node.nodeType === 1) && ++diff) { if (useCache) { (node[expando] || (node[expando] = { } ))[type] = [dirruns, diff] ; } if (node === elem) { break ; } } } } diff -= last; return diff === first || (diff % first === 0 && diff / first >= 0); } } ; } , "PSEUDO": function (pseudo, argument){ var args, fn = Expr.pseudos[pseudo] || Expr.setFilters[pseudo.toLowerCase()] || Sizzle.error("unsupported pseudo: " + pseudo); if (fn[expando]) { return fn(argument); } if (_AN_Read_length("length", fn) > 1) { args = [pseudo, pseudo, "", argument] ; return Expr.setFilters.hasOwnProperty(pseudo.toLowerCase())? markFunction(function (seed, matches){ var idx, matched = fn(seed, argument), i = _AN_Read_length("length", matched); while (i-- ){ idx = indexOf.call(seed, matched[i]); seed[idx] = !(matches[idx] = matched[i]); } } ): function (elem){ return fn(elem, 0, args); } ; } return fn; } } , pseudos: { "not": markFunction(function (selector){ var input = [] , results = [] , matcher = compile(_AN_Call_replace("replace", selector, rtrim, "$1")); return matcher[expando]? markFunction(function (seed, matches, context, xml){ var elem, unmatched = matcher(seed, null , xml, [] ), i = _AN_Read_length("length", seed); while (i-- ){ if ((elem = unmatched[i])) { seed[i] = !(matches[i] = elem); } } } ): function (elem, context, xml){ input[0] = elem; matcher(input, null , xml, results); return !results.pop(); } ; } ), "has": markFunction(function (selector){ return function (elem){ return _AN_Read_length("length", Sizzle(selector, elem)) > 0; } ; } ), "contains": markFunction(function (text){ return function (elem){ return (elem.textContent || elem.innerText || getText(elem)).indexOf(text) > -1; } ; } ), "lang": markFunction(function (lang){ if (!ridentifier.test(lang || "")) { Sizzle.error("unsupported lang: " + lang); } lang = _AN_Call_replace("replace", lang, runescape, funescape).toLowerCase(); return function (elem){ var elemLang; do { if ((elemLang = documentIsHTML? elem.lang: _AN_Call_getattribute("getAttribute", elem, "xml:lang") || _AN_Call_getattribute("getAttribute", elem, "lang"))) { elemLang = elemLang.toLowerCase(); return elemLang === lang || elemLang.indexOf(lang + "-") === 0; } } while((elem = elem.parentNode) && elem.nodeType === 1)return false ; } ; } ), "target": function (elem){ var hash = _AN_Read_location("location", window) && _AN_Read_hash("hash", _AN_Read_location("location", window)); return hash && hash.slice(1) === elem.id; } , "root": function (elem){ return elem === docElem; } , "focus": function (elem){ return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || _AN_Read_href("href", elem) || ~elem.tabIndex); } , "enabled": function (elem){ return elem.disabled === false ; } , "disabled": function (elem){ return elem.disabled === true ; } , "checked": function (elem){ var nodeName = elem.nodeName.toLowerCase(); return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected); } , "selected": function (elem){ if (elem.parentNode) { elem.parentNode.selectedIndex; } return elem.selected === true ; } , "empty": function (elem){ for (elem = elem.firstChild; elem; elem = elem.nextSibling){ if (elem.nodeName > "@" || elem.nodeType === 3 || elem.nodeType === 4) { return false ; } } return true ; } , "parent": function (elem){ return !Expr.pseudos.empty(elem); } , "header": function (elem){ return rheader.test(elem.nodeName); } , "input": function (elem){ return rinputs.test(elem.nodeName); } , "button": function (elem){ var name = elem.nodeName.toLowerCase(); return name === "input" && elem.type === "button" || name === "button"; } , "text": function (elem){ var attr; return elem.nodeName.toLowerCase() === "input" && elem.type === "text" && ((attr = _AN_Call_getattribute("getAttribute", elem, "type")) == null || attr.toLowerCase() === elem.type); } , "first": createPositionalPseudo(function (){ return [0] ; } ), "last": createPositionalPseudo(function (matchIndexes, length){ return [length - 1] ; } ), "eq": createPositionalPseudo(function (matchIndexes, length, argument){ return [argument < 0? argument + length: argument] ; } ), "even": createPositionalPseudo(function (matchIndexes, length){ var i = 0; for (; i < length; i += 2){ matchIndexes.push(i); } return matchIndexes; } ), "odd": createPositionalPseudo(function (matchIndexes, length){ var i = 1; for (; i < length; i += 2){ matchIndexes.push(i); } return matchIndexes; } ), "lt": createPositionalPseudo(function (matchIndexes, length, argument){ var i = argument < 0? argument + length: argument; for (; --i >= 0; ){ matchIndexes.push(i); } return matchIndexes; } ), "gt": createPositionalPseudo(function (matchIndexes, length, argument){ var i = argument < 0? argument + length: argument; for (; ++i < length; ){ matchIndexes.push(i); } return matchIndexes; } )} } ; for (i in { radio: true , checkbox: true , file: true , password: true , image: true } ){ Expr.pseudos[i] = createInputPseudo(i); } for (i in { submit: true , reset: true } ){ Expr.pseudos[i] = createButtonPseudo(i); } function tokenize(selector, parseOnly){ var matched, match, tokens, type, soFar, groups, preFilters, cached = tokenCache[selector + " "]; if (cached) { return parseOnly? 0: cached.slice(0); } soFar = selector; groups = [] ; preFilters = Expr.preFilter; while (soFar){ if (!matched || (match = rcomma.exec(soFar))) { if (match) { soFar = soFar.slice(_AN_Read_length("length", match[0])) || soFar; } groups.push(tokens = [] ); } matched = false ; if ((match = rcombinators.exec(soFar))) { matched = match.shift(); tokens.push({ value: matched, type: _AN_Call_replace("replace", match[0], rtrim, " ")} ); soFar = soFar.slice(_AN_Read_length("length", matched)); } for (type in Expr.filter){ if ((match = matchExpr[type].exec(soFar)) && (!preFilters[type] || (match = preFilters[type](match)))) { matched = match.shift(); tokens.push({ value: matched, type: type, matches: match} ); soFar = soFar.slice(_AN_Read_length("length", matched)); } } if (!matched) { break ; } } return parseOnly? _AN_Read_length("length", soFar): soFar? Sizzle.error(selector): tokenCache(selector, groups).slice(0); } function toSelector(tokens){ var i = 0, len = _AN_Read_length("length", tokens), selector = ""; for (; i < len; i++ ){ selector += tokens[i].value; } return selector; } function addCombinator(matcher, combinator, base){ var dir = combinator.dir, checkNonElements = base && dir === "parentNode", doneName = done++ ; return combinator.first? function (elem, context, xml){ while ((elem = elem[dir])){ if (elem.nodeType === 1 || checkNonElements) { return matcher(elem, context, xml); } } } : function (elem, context, xml){ var data, cache, outerCache, dirkey = dirruns + " " + doneName; if (xml) { while ((elem = elem[dir])){ if (elem.nodeType === 1 || checkNonElements) { if (matcher(elem, context, xml)) { return true ; } } } } else { while ((elem = elem[dir])){ if (elem.nodeType === 1 || checkNonElements) { outerCache = elem[expando] || (elem[expando] = { } ); if ((cache = outerCache[dir]) && cache[0] === dirkey) { if ((data = cache[1]) === true || data === cachedruns) { return data === true ; } } else { cache = outerCache[dir] = [dirkey] ; cache[1] = matcher(elem, context, xml) || cachedruns; if (cache[1] === true ) { return true ; } } } } } } ; } function elementMatcher(matchers){ return _AN_Read_length("length", matchers) > 1? function (elem, context, xml){ var i = _AN_Read_length("length", matchers); while (i-- ){ if (!matchers[i](elem, context, xml)) { return false ; } } return true ; } : matchers[0]; } function condense(unmatched, map, filter, context, xml){ var elem, newUnmatched = [] , i = 0, len = _AN_Read_length("length", unmatched), mapped = map != null ; for (; i < len; i++ ){ if ((elem = unmatched[i])) { if (!filter || filter(elem, context, xml)) { newUnmatched.push(elem); if (mapped) { map.push(i); } } } } return newUnmatched; } function setMatcher(preFilter, selector, matcher, postFilter, postFinder, postSelector){ if (postFilter && !postFilter[expando]) { postFilter = setMatcher(postFilter); } if (postFinder && !postFinder[expando]) { postFinder = setMatcher(postFinder, postSelector); } return markFunction(function (seed, results, context, xml){ var temp, i, elem, preMap = [] , postMap = [] , preexisting = _AN_Read_length("length", results), elems = seed || multipleContexts(selector || "*", context.nodeType? [context] : context, [] ), matcherIn = preFilter && (seed || !selector)? condense(elems, preMap, preFilter, context, xml): elems, matcherOut = matcher? postFinder || (seed? preFilter: preexisting || postFilter)? [] : results: matcherIn; if (matcher) { matcher(matcherIn, matcherOut, context, xml); } if (postFilter) { temp = condense(matcherOut, postMap); postFilter(temp, [] , context, xml); i = _AN_Read_length("length", temp); while (i-- ){ if ((elem = temp[i])) { matcherOut[postMap[i]] = !(matcherIn[postMap[i]] = elem); } } } if (seed) { if (postFinder || preFilter) { if (postFinder) { temp = [] ; i = _AN_Read_length("length", matcherOut); while (i-- ){ if ((elem = matcherOut[i])) { temp.push((matcherIn[i] = elem)); } } postFinder(null , (matcherOut = [] ), temp, xml); } i = _AN_Read_length("length", matcherOut); while (i-- ){ if ((elem = matcherOut[i]) && (temp = postFinder? indexOf.call(seed, elem): preMap[i]) > -1) { seed[temp] = !(results[temp] = elem); } } } } else { matcherOut = condense(matcherOut === results? matcherOut.splice(preexisting, _AN_Read_length("length", matcherOut)): matcherOut); if (postFinder) { postFinder(null , results, matcherOut, xml); } else { push.apply(results, matcherOut); } } } ); } function matcherFromTokens(tokens){ var checkContext, matcher, j, len = _AN_Read_length("length", tokens), leadingRelative = Expr.relative[tokens[0].type], implicitRelative = leadingRelative || Expr.relative[" "] , i = leadingRelative? 1: 0, matchContext = addCombinator(function (elem){ return elem === checkContext; } , implicitRelative, true ), matchAnyContext = addCombinator(function (elem){ return indexOf.call(checkContext, elem) > -1; } , implicitRelative, true ), matchers = [function (elem, context, xml){ return (!leadingRelative && (xml || context !== outermostContext)) || ((checkContext = context).nodeType? matchContext(elem, context, xml): matchAnyContext(elem, context, xml)); } ] ; for (; i < len; i++ ){ if ((matcher = Expr.relative[tokens[i].type])) { matchers = [addCombinator(elementMatcher(matchers), matcher)] ; } else { matcher = Expr.filter[tokens[i].type].apply(null , tokens[i].matches); if (matcher[expando]) { j = ++i; for (; j < len; j++ ){ if (Expr.relative[tokens[j].type]) { break ; } } return setMatcher(i > 1 && elementMatcher(matchers), i > 1 && _AN_Call_replace("replace", toSelector(tokens.slice(0, i - 1).concat({ value: tokens[i - 2].type === " "? "*": ""} )), rtrim, "$1"), matcher, i < j && matcherFromTokens(tokens.slice(i, j)), j < len && matcherFromTokens((tokens = tokens.slice(j))), j < len && toSelector(tokens)); } matchers.push(matcher); } } return elementMatcher(matchers); } function matcherFromGroupMatchers(elementMatchers, setMatchers){ var matcherCachedRuns = 0, bySet = _AN_Read_length("length", setMatchers) > 0, byElement = _AN_Read_length("length", elementMatchers) > 0, superMatcher = function (seed, context, xml, results, expandContext){ var elem, j, matcher, setMatched = [] , matchedCount = 0, i = "0", unmatched = seed && [] , outermost = expandContext != null , contextBackup = outermostContext, elems = seed || byElement && Expr.find.TAG("*", expandContext && context.parentNode || context), dirrunsUnique = (dirruns += contextBackup == null ? 1: Math.random() || 0.1); if (outermost) { outermostContext = context !== document && context; cachedruns = matcherCachedRuns; } for (; (elem = elems[i]) != null ; i++ ){ if (byElement && elem) { j = 0; while ((matcher = elementMatchers[j++ ])){ if (matcher(elem, context, xml)) { results.push(elem); break ; } } if (outermost) { dirruns = dirrunsUnique; cachedruns = ++matcherCachedRuns; } } if (bySet) { if ((elem = !matcher && elem)) { matchedCount-- ; } if (seed) { unmatched.push(elem); } } } matchedCount += i; if (bySet && i !== matchedCount) { j = 0; while ((matcher = setMatchers[j++ ])){ matcher(unmatched, setMatched, context, xml); } if (seed) { if (matchedCount > 0) { while (i-- ){ if (!(unmatched[i] || setMatched[i])) { setMatched[i] = pop.call(results); } } } setMatched = condense(setMatched); } push.apply(results, setMatched); if (outermost && !seed && _AN_Read_length("length", setMatched) > 0 && (matchedCount + _AN_Read_length("length", setMatchers)) > 1) { Sizzle.uniqueSort(results); } } if (outermost) { dirruns = dirrunsUnique; outermostContext = contextBackup; } return unmatched; } ; return bySet? markFunction(superMatcher): superMatcher; } compile = Sizzle.compile = function (selector, group){ var i, setMatchers = [] , elementMatchers = [] , cached = compilerCache[selector + " "]; if (!cached) { if (!group) { group = tokenize(selector); } i = _AN_Read_length("length", group); while (i-- ){ cached = matcherFromTokens(group[i]); if (cached[expando]) { setMatchers.push(cached); } else { elementMatchers.push(cached); } } cached = compilerCache(selector, matcherFromGroupMatchers(elementMatchers, setMatchers)); } return cached; } ; function multipleContexts(selector, contexts, results){ var i = 0, len = _AN_Read_length("length", contexts); for (; i < len; i++ ){ Sizzle(selector, contexts[i], results); } return results; } function select(selector, context, results, seed){ var i, tokens, token, type, find, match = tokenize(selector); if (!seed) { if (_AN_Read_length("length", match) === 1) { tokens = match[0] = match[0].slice(0); if (_AN_Read_length("length", tokens) > 2 && (token = tokens[0]).type === "ID" && support.getById && context.nodeType === 9 && documentIsHTML && Expr.relative[tokens[1].type]) { context = (Expr.find.ID(_AN_Call_replace("replace", token.matches[0], runescape, funescape), context) || [] )[0]; if (!context) { return results; } selector = selector.slice(_AN_Read_length("length", tokens.shift().value)); } i = matchExpr.needsContext.test(selector)? 0: _AN_Read_length("length", tokens); while (i-- ){ token = tokens[i]; if (Expr.relative[(type = token.type)]) { break ; } if ((find = Expr.find[type])) { if ((seed = find(_AN_Call_replace("replace", token.matches[0], runescape, funescape), rsibling.test(tokens[0].type) && context.parentNode || context))) { tokens.splice(i, 1); selector = _AN_Read_length("length", seed) && toSelector(tokens); if (!selector) { push.apply(results, seed); return results; } break ; } } } } } compile(selector, match)(seed, context, !documentIsHTML, results, rsibling.test(selector)); return results; } Expr.pseudos.nth = Expr.pseudos.eq; function setFilters(){ } setFilters.prototype = Expr.filters = Expr.pseudos; Expr.setFilters = new setFilters(); support.sortStable = expando.split("").sort(sortOrder).join("") === expando; setDocument(); [0, 0] .sort(sortOrder); support.detectDuplicates = hasDuplicate; jQuery.find = Sizzle; jQuery.expr = Sizzle.selectors; jQuery.expr[":"] = jQuery.expr.pseudos; jQuery.unique = Sizzle.uniqueSort; _AN_Write_text("text", jQuery, false , Sizzle.getText); jQuery.isXMLDoc = Sizzle.isXML; jQuery.contains = Sizzle.contains; } )(window); var optionsCache = { } ; function createOptions(options){ var object = optionsCache[options] = { } ; jQuery.each(options.match(core_rnotwhite) || [] , function (_, flag){ object[flag] = true ; } ); return object; } jQuery.Callbacks = function (options){ options = typeof options === "string"? (optionsCache[options] || createOptions(options)): jQuery.extend({ } , options); var memory, fired, firing, firingStart, firingLength, firingIndex, list = [] , stack = !options.once && [] , fire = function (data){ memory = options.memory && data; fired = true ; firingIndex = firingStart || 0; firingStart = 0; firingLength = _AN_Read_length("length", list); firing = true ; for (; list && firingIndex < firingLength; firingIndex++ ){ if (list[firingIndex].apply(data[0], data[1]) === false && options.stopOnFalse) { memory = false ; break ; } } firing = false ; if (list) { if (stack) { if (stack.length) { fire(stack.shift()); } } else if (memory) { list = [] ; } else { self.disable(); } } } , self = { add: function (){ if (list) { var start = _AN_Read_length("length", list); (function add(args){ jQuery.each(args, function (_, arg){ var type = jQuery.type(arg); if (type === "function") { if (!options.unique || !self.has(arg)) { list.push(arg); } } else if (arg && _AN_Read_length("length", arg) && type !== "string") { add(arg); } } ); } )(arguments); if (firing) { firingLength = _AN_Read_length("length", list); } else if (memory) { firingStart = start; fire(memory); } } return this; } , remove: function (){ if (list) { jQuery.each(arguments, function (_, arg){ var index; while ((index = jQuery.inArray(arg, list, index)) > -1){ list.splice(index, 1); if (firing) { if (index <= firingLength) { firingLength-- ; } if (index <= firingIndex) { firingIndex-- ; } } } } ); } return this; } , has: function (fn){ return fn? jQuery.inArray(fn, list) > -1: !!(list && _AN_Read_length("length", list)); } , empty: function (){ list = [] ; firingLength = 0; return this; } , disable: function (){ list = stack = memory = undefined; return this; } , disabled: function (){ return !list; } , lock: function (){ stack = undefined; if (!memory) { self.disable(); } return this; } , locked: function (){ return !stack; } , fireWith: function (context, args){ args = args || [] ; args = [context, args.slice? args.slice(): args] ; if (list && (!fired || stack)) { if (firing) { stack.push(args); } else { fire(args); } } return this; } , fire: function (){ self.fireWith(this, arguments); return this; } , fired: function (){ return !!fired; } } ; return self; } ; jQuery.extend({ Deferred: function (func){ var tuples = [["resolve", "done", jQuery.Callbacks("once memory"), "resolved"] , ["reject", "fail", jQuery.Callbacks("once memory"), "rejected"] , ["notify", "progress", jQuery.Callbacks("memory")] ] , state = "pending", promise = { state: function (){ return state; } , always: function (){ deferred.done(arguments).fail(arguments); return this; } , then: function (){ var fns = arguments; return jQuery.Deferred(function (newDefer){ jQuery.each(tuples, function (i, tuple){ var action = tuple[0], fn = jQuery.isFunction(fns[i]) && fns[i]; deferred[tuple[1]](function (){ var returned = fn && fn.apply(this, arguments); if (returned && jQuery.isFunction(returned.promise)) { returned.promise().done(newDefer.resolve).fail(newDefer.reject).progress(newDefer.notify); } else { newDefer[action + "With"](this === promise? newDefer.promise(): this, fn? [returned] : arguments); } } ); } ); fns = null ; } ).promise(); } , promise: function (obj){ return obj != null ? jQuery.extend(obj, promise): promise; } } , deferred = { } ; promise.pipe = promise.then; jQuery.each(tuples, function (i, tuple){ var list = tuple[2], stateString = tuple[3]; promise[tuple[1]] = list.add; if (stateString) { list.add(function (){ state = stateString; } , tuples[i ^ 1][2].disable, tuples[2][2].lock); } deferred[tuple[0]] = function (){ deferred[tuple[0] + "With"](this === deferred? promise: this, arguments); return this; } ; deferred[tuple[0] + "With"] = list.fireWith; } ); promise.promise(deferred); if (func) { func.call(deferred, deferred); } return deferred; } , when: function (subordinate){ var i = 0, resolveValues = core_slice.call(arguments), length = _AN_Read_length("length", resolveValues), remaining = length !== 1 || (subordinate && jQuery.isFunction(subordinate.promise))? length: 0, deferred = remaining === 1? subordinate: jQuery.Deferred(), updateFunc = function (i, contexts, values){ return function (value){ contexts[i] = this; values[i] = _AN_Read_length("length", arguments) > 1? core_slice.call(arguments): value; if (values === progressValues) { deferred.notifyWith(contexts, values); } else if (!(--remaining)) { deferred.resolveWith(contexts, values); } } ; } , progressValues, progressContexts, resolveContexts; if (length > 1) { progressValues = new Array(length); progressContexts = new Array(length); resolveContexts = new Array(length); for (; i < length; i++ ){ if (resolveValues[i] && jQuery.isFunction(resolveValues[i].promise)) { resolveValues[i].promise().done(updateFunc(i, resolveContexts, resolveValues)).fail(deferred.reject).progress(updateFunc(i, progressContexts, progressValues)); } else { --remaining; } } } if (!remaining) { deferred.resolveWith(resolveContexts, resolveValues); } return deferred.promise(); } } ); jQuery.support = (function (support){ var input = _AN_Call_createelement("createElement", document, "input"), fragment = document.createDocumentFragment(), div = _AN_Call_createelement("createElement", document, "div"), select = _AN_Call_createelement("createElement", document, "select"), opt = _AN_Call_appendchild("appendChild", select, _AN_Call_createelement("createElement", document, "option")); if (!input.type) { return support; } input.type = "checkbox"; support.checkOn = input.value !== ""; support.optSelected = opt.selected; support.reliableMarginRight = true ; support.boxSizingReliable = true ; support.pixelPosition = false ; input.checked = true ; support.noCloneChecked = input.cloneNode(true ).checked; select.disabled = true ; support.optDisabled = !opt.disabled; input = _AN_Call_createelement("createElement", document, "input"); input.value = "t"; input.type = "radio"; support.radioValue = input.value === "t"; _AN_Call_setattribute("setAttribute", input, "checked", "t"); _AN_Call_setattribute("setAttribute", input, "name", "t"); _AN_Call_appendchild("appendChild", fragment, input); support.checkClone = fragment.cloneNode(true ).cloneNode(true ).lastChild.checked; support.focusinBubbles = "onfocusin" in window; div.style.backgroundClip = "content-box"; div.cloneNode(true ).style.backgroundClip = ""; support.clearCloneStyle = div.style.backgroundClip === "content-box"; jQuery(function (){ var container, marginDiv, divReset = "padding:0;margin:0;border:0;display:block;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box", body = _AN_Call_getelementsbytagname("getElementsByTagName", document, "body")[0]; if (!body) { return ; } container = _AN_Call_createelement("createElement", document, "div"); _AN_Write_csstext("cssText", container.style, false , "border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px"); _AN_Call_appendchild("appendChild", _AN_Call_appendchild("appendChild", body, container), div); _AN_Write_innerhtml("innerHTML", div, false , ""); _AN_Write_csstext("cssText", div.style, false , "-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%"); jQuery.swap(body, body.style.zoom != null ? { zoom: 1} : { } , function (){ support.boxSizing = div.offsetWidth === 4; } ); if (window.getComputedStyle) { support.pixelPosition = (window.getComputedStyle(div, null ) || { } ).top !== "1%"; support.boxSizingReliable = (window.getComputedStyle(div, null ) || { width: "4px"} ).width === "4px"; marginDiv = _AN_Call_appendchild("appendChild", div, _AN_Call_createelement("createElement", document, "div")); _AN_Write_csstext("cssText", marginDiv.style, false , _AN_Write_csstext("cssText", div.style, false , divReset)); marginDiv.style.marginRight = marginDiv.style.width = "0"; div.style.width = "1px"; support.reliableMarginRight = !parseFloat((window.getComputedStyle(marginDiv, null ) || { } ).marginRight); } body.removeChild(container); } ); return support; } )({ } ); var data_user, data_priv, rbrace = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/, rmultiDash = /([A-Z])/g; function Data(){ Object.defineProperty(this.cache = { } , 0, { get: function (){ return { } ; } } ); this.expando = jQuery.expando + Math.random(); } Data.uid = 1; Data.accepts = function (owner){ return owner.nodeType? owner.nodeType === 1 || owner.nodeType === 9: true ; } ; Data.prototype = { key: function (owner){ if (!Data.accepts(owner)) { return 0; } var descriptor = { } , unlock = owner[this.expando]; if (!unlock) { unlock = Data.uid++ ; try { descriptor[this.expando] = { value: unlock} ; Object.defineProperties(owner, descriptor); } catch (e) { descriptor[this.expando] = unlock; jQuery.extend(owner, descriptor); } } if (!this.cache[unlock]) { this.cache[unlock] = { } ; } return unlock; } , set: function (owner, data, value){ var prop, unlock = _AN_Call_key("key", this, owner), cache = this.cache[unlock]; if (typeof data === "string") { cache[data] = value; } else { if (jQuery.isEmptyObject(cache)) { jQuery.extend(this.cache[unlock], data); } else { for (prop in data){ cache[prop] = data[prop]; } } } return cache; } , get: function (owner, key){ var cache = this.cache[_AN_Call_key("key", this, owner)]; return key === undefined? cache: cache[key]; } , access: function (owner, key, value){ if (key === undefined || ((key && typeof key === "string") && value === undefined)) { return this.get(owner, key); } this.set(owner, key, value); return value !== undefined? value: key; } , remove: function (owner, key){ var i, name, camel, unlock = _AN_Call_key("key", this, owner), cache = this.cache[unlock]; if (key === undefined) { this.cache[unlock] = { } ; } else { if (jQuery.isArray(key)) { name = key.concat(key.map(jQuery.camelCase)); } else { camel = jQuery.camelCase(key); if (key in cache) { name = [key, camel] ; } else { name = camel; name = name in cache? [name] : (name.match(core_rnotwhite) || [] ); } } i = _AN_Read_length("length", name); while (i-- ){ delete cache[name[i]]; } } } , hasData: function (owner){ return !jQuery.isEmptyObject(this.cache[owner[this.expando]] || { } ); } , discard: function (owner){ if (owner[this.expando]) { delete this.cache[owner[this.expando]]; } } } ; data_user = new Data(); data_priv = new Data(); jQuery.extend({ acceptData: Data.accepts, hasData: function (elem){ return data_user.hasData(elem) || data_priv.hasData(elem); } , data: function (elem, name, data){ return data_user.access(elem, name, data); } , removeData: function (elem, name){ data_user.remove(elem, name); } , _data: function (elem, name, data){ return data_priv.access(elem, name, data); } , _removeData: function (elem, name){ data_priv.remove(elem, name); } } ); jQuery.fn.extend({ data: function (key, value){ var attrs, name, elem = this[0], i = 0, data = null ; if (key === undefined) { if (this.length) { data = data_user.get(elem); if (elem.nodeType === 1 && !data_priv.get(elem, "hasDataAttrs")) { attrs = elem.attributes; for (; i < _AN_Read_length("length", attrs); i++ ){ name = attrs[i].name; if (name.indexOf("data-") === 0) { name = jQuery.camelCase(name.slice(5)); dataAttr(elem, name, data[name]); } } data_priv.set(elem, "hasDataAttrs", true ); } } return data; } if (typeof key === "object") { return this.each(function (){ data_user.set(this, key); } ); } return jQuery.access(this, function (value){ var data, camelKey = jQuery.camelCase(key); if (elem && value === undefined) { data = data_user.get(elem, key); if (data !== undefined) { return data; } data = data_user.get(elem, camelKey); if (data !== undefined) { return data; } data = dataAttr(elem, camelKey, undefined); if (data !== undefined) { return data; } return ; } this.each(function (){ var data = data_user.get(this, camelKey); data_user.set(this, camelKey, value); if (key.indexOf("-") !== -1 && data !== undefined) { data_user.set(this, key, value); } } ); } , null , value, _AN_Read_length("length", arguments) > 1, null , true ); } , removeData: function (key){ return this.each(function (){ data_user.remove(this, key); } ); } } ); function dataAttr(elem, key, data){ var name; if (data === undefined && elem.nodeType === 1) { name = "data-" + _AN_Call_replace("replace", key, rmultiDash, "-$1").toLowerCase(); data = _AN_Call_getattribute("getAttribute", elem, name); if (typeof data === "string") { try { data = data === "true"? true : data === "false"? false : data === "null"? null : + data + "" === data? + data: rbrace.test(data)? JSON.parse(data): data; } catch (e) { } data_user.set(elem, key, data); } else { data = undefined; } } return data; } jQuery.extend({ queue: function (elem, type, data){ var queue; if (elem) { type = (type || "fx") + "queue"; queue = data_priv.get(elem, type); if (data) { if (!queue || jQuery.isArray(data)) { queue = data_priv.access(elem, type, jQuery.makeArray(data)); } else { queue.push(data); } } return queue || [] ; } } , dequeue: function (elem, type){ type = type || "fx"; var queue = jQuery.queue(elem, type), startLength = _AN_Read_length("length", queue), fn = queue.shift(), hooks = jQuery._queueHooks(elem, type), next = function (){ jQuery.dequeue(elem, type); } ; if (fn === "inprogress") { fn = queue.shift(); startLength-- ; } hooks.cur = fn; if (fn) { if (type === "fx") { queue.unshift("inprogress"); } delete hooks.stop; fn.call(elem, next, hooks); } if (!startLength && hooks) { hooks.empty.fire(); } } , _queueHooks: function (elem, type){ var key = type + "queueHooks"; return data_priv.get(elem, key) || data_priv.access(elem, key, { empty: jQuery.Callbacks("once memory").add(function (){ data_priv.remove(elem, [type + "queue", key] ); } )} ); } } ); jQuery.fn.extend({ queue: function (type, data){ var setter = 2; if (typeof type !== "string") { data = type; type = "fx"; setter-- ; } if (_AN_Read_length("length", arguments) < setter) { return jQuery.queue(this[0], type); } return data === undefined? this: this.each(function (){ var queue = jQuery.queue(this, type, data); jQuery._queueHooks(this, type); if (type === "fx" && queue[0] !== "inprogress") { jQuery.dequeue(this, type); } } ); } , dequeue: function (type){ return this.each(function (){ jQuery.dequeue(this, type); } ); } , delay: function (time, type){ time = jQuery.fx? jQuery.fx.speeds[time] || time: time; type = type || "fx"; return this.queue(type, function (next, hooks){ var timeout = _AN_Call_settimeout("setTimeout", window, next, time); hooks.stop = function (){ clearTimeout(timeout); } ; } ); } , clearQueue: function (type){ return this.queue(type || "fx", [] ); } , promise: function (type, obj){ var tmp, count = 1, defer = jQuery.Deferred(), elements = this, i = _AN_Read_length("length", this), resolve = function (){ if (!(--count)) { defer.resolveWith(elements, [elements] ); } } ; if (typeof type !== "string") { obj = type; type = undefined; } type = type || "fx"; while (i-- ){ tmp = data_priv.get(elements[i], type + "queueHooks"); if (tmp && tmp.empty) { count++ ; tmp.empty.add(resolve); } } resolve(); return defer.promise(obj); } } ); var nodeHook, boolHook, rclass = /[\t\r\n\f]/g, rreturn = /\r/g, rfocusable = /^(?:input|select|textarea|button)$/i; jQuery.fn.extend({ attr: function (name, value){ return jQuery.access(this, jQuery.attr, name, value, _AN_Read_length("length", arguments) > 1); } , removeAttr: function (name){ return this.each(function (){ jQuery.removeAttr(this, name); } ); } , prop: function (name, value){ return jQuery.access(this, jQuery.prop, name, value, _AN_Read_length("length", arguments) > 1); } , removeProp: function (name){ return this.each(function (){ delete this[jQuery.propFix[name] || name]; } ); } , addClass: function (value){ var classes, elem, cur, clazz, j, i = 0, len = _AN_Read_length("length", this), proceed = typeof value === "string" && value; if (jQuery.isFunction(value)) { return this.each(function (j){ jQuery(this).addClass(value.call(this, j, this.className)); } ); } if (proceed) { classes = (value || "").match(core_rnotwhite) || [] ; for (; i < len; i++ ){ elem = this[i]; cur = elem.nodeType === 1 && (elem.className? _AN_Call_replace("replace", (" " + elem.className + " "), rclass, " "): " "); if (cur) { j = 0; while ((clazz = classes[j++ ])){ if (cur.indexOf(" " + clazz + " ") < 0) { cur += clazz + " "; } } elem.className = jQuery.trim(cur); } } } return this; } , removeClass: function (value){ var classes, elem, cur, clazz, j, i = 0, len = _AN_Read_length("length", this), proceed = _AN_Read_length("length", arguments) === 0 || typeof value === "string" && value; if (jQuery.isFunction(value)) { return this.each(function (j){ jQuery(this).removeClass(value.call(this, j, this.className)); } ); } if (proceed) { classes = (value || "").match(core_rnotwhite) || [] ; for (; i < len; i++ ){ elem = this[i]; cur = elem.nodeType === 1 && (elem.className? _AN_Call_replace("replace", (" " + elem.className + " "), rclass, " "): ""); if (cur) { j = 0; while ((clazz = classes[j++ ])){ while (cur.indexOf(" " + clazz + " ") >= 0){ cur = _AN_Call_replace("replace", cur, " " + clazz + " ", " "); } } elem.className = value? jQuery.trim(cur): ""; } } } return this; } , toggleClass: function (value, stateVal){ var type = typeof value, isBool = typeof stateVal === "boolean"; if (jQuery.isFunction(value)) { return this.each(function (i){ jQuery(this).toggleClass(value.call(this, i, this.className, stateVal), stateVal); } ); } return this.each(function (){ if (type === "string") { var className, i = 0, self = jQuery(this), state = stateVal, classNames = value.match(core_rnotwhite) || [] ; while ((className = classNames[i++ ])){ state = isBool? state: !self.hasClass(className); self[state? "addClass": "removeClass"](className); } } else if (type === core_strundefined || type === "boolean") { if (this.className) { data_priv.set(this, "__className__", this.className); } this.className = this.className || value === false ? "": data_priv.get(this, "__className__") || ""; } } ); } , hasClass: function (selector){ var className = " " + selector + " ", i = 0, l = _AN_Read_length("length", this); for (; i < l; i++ ){ if (this[i].nodeType === 1 && _AN_Call_replace("replace", (" " + this[i].className + " "), rclass, " ").indexOf(className) >= 0) { return true ; } } return false ; } , val: function (value){ var hooks, ret, isFunction, elem = this[0]; if (!_AN_Read_length("length", arguments)) { if (elem) { hooks = jQuery.valHooks[elem.type] || jQuery.valHooks[elem.nodeName.toLowerCase()]; if (hooks && "get" in hooks && (ret = hooks.get(elem, "value")) !== undefined) { return ret; } ret = elem.value; return typeof ret === "string"? _AN_Call_replace("replace", ret, rreturn, ""): ret == null ? "": ret; } return ; } isFunction = jQuery.isFunction(value); return this.each(function (i){ var val; if (this.nodeType !== 1) { return ; } if (isFunction) { val = value.call(this, i, jQuery(this).val()); } else { val = value; } if (val == null ) { val = ""; } else if (typeof val === "number") { val += ""; } else if (jQuery.isArray(val)) { val = jQuery.map(val, function (value){ return value == null ? "": value + ""; } ); } hooks = jQuery.valHooks[this.type] || jQuery.valHooks[this.nodeName.toLowerCase()]; if (!hooks || !("set" in hooks) || hooks.set(this, val, "value") === undefined) { this.value = val; } } ); } } ); jQuery.extend({ valHooks: { option: { get: function (elem){ var val = elem.attributes.value; return !val || val.specified? elem.value: elem.text; } } , select: { get: function (elem){ var value, option, options = elem.options, index = elem.selectedIndex, one = elem.type === "select-one" || index < 0, values = one? null : [] , max = one? index + 1: _AN_Read_length("length", options), i = index < 0? max: one? index: 0; for (; i < max; i++ ){ option = options[i]; if ((option.selected || i === index) && (jQuery.support.optDisabled? !option.disabled: _AN_Call_getattribute("getAttribute", option, "disabled") === null ) && (!option.parentNode.disabled || !jQuery.nodeName(option.parentNode, "optgroup"))) { value = jQuery(option).val(); if (one) { return value; } values.push(value); } } return values; } , set: function (elem, value){ var optionSet, option, options = elem.options, values = jQuery.makeArray(value), i = _AN_Read_length("length", options); while (i-- ){ option = options[i]; if ((option.selected = jQuery.inArray(jQuery(option).val(), values) >= 0)) { optionSet = true ; } } if (!optionSet) { elem.selectedIndex = -1; } return values; } } } , attr: function (elem, name, value){ var hooks, ret, nType = elem.nodeType; if (!elem || nType === 3 || nType === 8 || nType === 2) { return ; } if (typeof elem.getAttribute === core_strundefined) { return jQuery.prop(elem, name, value); } if (nType !== 1 || !jQuery.isXMLDoc(elem)) { name = name.toLowerCase(); hooks = jQuery.attrHooks[name] || (jQuery.expr.match.bool.test(name)? boolHook: nodeHook); } if (value !== undefined) { if (value === null ) { jQuery.removeAttr(elem, name); } else if (hooks && "set" in hooks && (ret = hooks.set(elem, value, name)) !== undefined) { return ret; } else { _AN_Call_setattribute("setAttribute", elem, name, value + ""); return value; } } else if (hooks && "get" in hooks && (ret = hooks.get(elem, name)) !== null ) { return ret; } else { ret = jQuery.find.attr(elem, name); return ret == null ? undefined: ret; } } , removeAttr: function (elem, value){ var name, propName, i = 0, attrNames = value && value.match(core_rnotwhite); if (attrNames && elem.nodeType === 1) { while ((name = attrNames[i++ ])){ propName = jQuery.propFix[name] || name; if (jQuery.expr.match.bool.test(name)) { elem[propName] = false ; } elem.removeAttribute(name); } } } , attrHooks: { type: { set: function (elem, value){ if (!jQuery.support.radioValue && value === "radio" && jQuery.nodeName(elem, "input")) { var val = elem.value; _AN_Call_setattribute("setAttribute", elem, "type", value); if (val) { elem.value = val; } return value; } } } } , propFix: { "for": "htmlFor", "class": "className"} , prop: function (elem, name, value){ var ret, hooks, notxml, nType = elem.nodeType; if (!elem || nType === 3 || nType === 8 || nType === 2) { return ; } notxml = nType !== 1 || !jQuery.isXMLDoc(elem); if (notxml) { name = jQuery.propFix[name] || name; hooks = jQuery.propHooks[name]; } if (value !== undefined) { return hooks && "set" in hooks && (ret = hooks.set(elem, value, name)) !== undefined? ret: (elem[name] = value); } else { return hooks && "get" in hooks && (ret = hooks.get(elem, name)) !== null ? ret: elem[name]; } } , propHooks: { tabIndex: { get: function (elem){ return elem.hasAttribute("tabindex") || rfocusable.test(elem.nodeName) || _AN_Read_href("href", elem)? elem.tabIndex: -1; } } } } ); boolHook = { set: function (elem, value, name){ if (value === false ) { jQuery.removeAttr(elem, name); } else { _AN_Call_setattribute("setAttribute", elem, name, name); } return name; } } ; jQuery.each(jQuery.expr.match.bool.source.match(/\w+/g), function (i, name){ var getter = jQuery.expr.attrHandle[name] || jQuery.find.attr; jQuery.expr.attrHandle[name] = function (elem, name, isXML){ var fn = jQuery.expr.attrHandle[name], ret = isXML? undefined: (jQuery.expr.attrHandle[name] = undefined) != getter(elem, name, isXML)? name.toLowerCase(): null ; jQuery.expr.attrHandle[name] = fn; return ret; } ; } ); if (!jQuery.support.optSelected) { jQuery.propHooks.selected = { get: function (elem){ var parent = elem.parentNode; if (parent && parent.parentNode) { parent.parentNode.selectedIndex; } return null ; } } ; } jQuery.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"] , function (){ jQuery.propFix[this.toLowerCase()] = this; } ); jQuery.each(["radio", "checkbox"] , function (){ jQuery.valHooks[this] = { set: function (elem, value){ if (jQuery.isArray(value)) { return (elem.checked = jQuery.inArray(jQuery(elem).val(), value) >= 0); } } } ; if (!jQuery.support.checkOn) { jQuery.valHooks[this].get = function (elem){ return _AN_Call_getattribute("getAttribute", elem, "value") === null ? "on": elem.value; } ; } } ); var rkeyEvent = /^key/, rmouseEvent = /^(?:mouse|contextmenu)|click/, rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, rtypenamespace = /^([^.]*)(?:\.(.+)|)$/; function returnTrue(){ return true ; } function returnFalse(){ return false ; } function safeActiveElement(){ try { return document.activeElement; } catch (err) { } } jQuery.event = { global: { } , add: function (elem, types, handler, data, selector){ var handleObjIn, eventHandle, tmp, events, t, handleObj, special, handlers, type, namespaces, origType, elemData = data_priv.get(elem); if (!elemData) { return ; } if (handler.handler) { handleObjIn = handler; handler = handleObjIn.handler; selector = handleObjIn.selector; } if (!handler.guid) { handler.guid = jQuery.guid++ ; } if (!(events = elemData.events)) { events = elemData.events = { } ; } if (!(eventHandle = elemData.handle)) { eventHandle = elemData.handle = function (e){ return typeof jQuery !== core_strundefined && (!e || jQuery.event.triggered !== e.type)? jQuery.event.dispatch.apply(eventHandle.elem, arguments): undefined; } ; eventHandle.elem = elem; } types = (types || "").match(core_rnotwhite) || [""] ; t = _AN_Read_length("length", types); while (t-- ){ tmp = rtypenamespace.exec(types[t]) || [] ; type = origType = tmp[1]; namespaces = (tmp[2] || "").split(".").sort(); if (!type) { continue ; } special = jQuery.event.special[type] || { } ; type = (selector? special.delegateType: special.bindType) || type; special = jQuery.event.special[type] || { } ; handleObj = jQuery.extend({ type: type, origType: origType, data: data, handler: handler, guid: handler.guid, selector: selector, needsContext: selector && jQuery.expr.match.needsContext.test(selector), namespace: namespaces.join(".")} , handleObjIn); if (!(handlers = events[type])) { handlers = events[type] = [] ; handlers.delegateCount = 0; if (!special.setup || special.setup.call(elem, data, namespaces, eventHandle) === false ) { if (elem.addEventListener) { elem.addEventListener(type, eventHandle, false ); } } } if (special.add) { special.add.call(elem, handleObj); if (!handleObj.handler.guid) { handleObj.handler.guid = handler.guid; } } if (selector) { handlers.splice(handlers.delegateCount++ , 0, handleObj); } else { handlers.push(handleObj); } jQuery.event.global[type] = true ; } elem = null ; } , remove: function (elem, types, handler, selector, mappedTypes){ var j, origCount, tmp, events, t, handleObj, special, handlers, type, namespaces, origType, elemData = data_priv.hasData(elem) && data_priv.get(elem); if (!elemData || !(events = elemData.events)) { return ; } types = (types || "").match(core_rnotwhite) || [""] ; t = _AN_Read_length("length", types); while (t-- ){ tmp = rtypenamespace.exec(types[t]) || [] ; type = origType = tmp[1]; namespaces = (tmp[2] || "").split(".").sort(); if (!type) { for (type in events){ jQuery.event.remove(elem, type + types[t], handler, selector, true ); } continue ; } special = jQuery.event.special[type] || { } ; type = (selector? special.delegateType: special.bindType) || type; handlers = events[type] || [] ; tmp = tmp[2] && new RegExp("(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)"); origCount = j = _AN_Read_length("length", handlers); while (j-- ){ handleObj = handlers[j]; if ((mappedTypes || origType === handleObj.origType) && (!handler || handler.guid === handleObj.guid) && (!tmp || tmp.test(handleObj.namespace)) && (!selector || selector === handleObj.selector || selector === "**" && handleObj.selector)) { handlers.splice(j, 1); if (handleObj.selector) { handlers.delegateCount-- ; } if (special.remove) { special.remove.call(elem, handleObj); } } } if (origCount && !_AN_Read_length("length", handlers)) { if (!special.teardown || special.teardown.call(elem, namespaces, elemData.handle) === false ) { jQuery.removeEvent(elem, type, elemData.handle); } delete events[type]; } } if (jQuery.isEmptyObject(events)) { delete elemData.handle; data_priv.remove(elem, "events"); } } , trigger: function (event, data, elem, onlyHandlers){ var i, cur, tmp, bubbleType, ontype, handle, special, eventPath = [elem || document] , type = core_hasOwn.call(event, "type")? event.type: event, namespaces = core_hasOwn.call(event, "namespace")? event.namespace.split("."): [] ; cur = tmp = elem = elem || document; if (elem.nodeType === 3 || elem.nodeType === 8) { return ; } if (rfocusMorph.test(type + jQuery.event.triggered)) { return ; } if (type.indexOf(".") >= 0) { namespaces = type.split("."); type = namespaces.shift(); namespaces.sort(); } ontype = type.indexOf(":") < 0 && "on" + type; event = event[jQuery.expando]? event: new jQuery.Event(type, typeof event === "object" && event); event.isTrigger = onlyHandlers? 2: 3; event.namespace = namespaces.join("."); event.namespace_re = event.namespace? new RegExp("(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)"): null ; event.result = undefined; if (!_AN_Read_target("target", event)) { _AN_Write_target("target", event, false , elem); } data = data == null ? [event] : jQuery.makeArray(data, [event] ); special = jQuery.event.special[type] || { } ; if (!onlyHandlers && special.trigger && special.trigger.apply(elem, data) === false ) { return ; } if (!onlyHandlers && !special.noBubble && !jQuery.isWindow(elem)) { bubbleType = special.delegateType || type; if (!rfocusMorph.test(bubbleType + type)) { cur = cur.parentNode; } for (; cur; cur = cur.parentNode){ eventPath.push(cur); tmp = cur; } if (tmp === (elem.ownerDocument || document)) { eventPath.push(tmp.defaultView || tmp.parentWindow || window); } } i = 0; while ((cur = eventPath[i++ ]) && !event.isPropagationStopped()){ event.type = i > 1? bubbleType: special.bindType || type; handle = (data_priv.get(cur, "events") || { } )[event.type] && data_priv.get(cur, "handle"); if (handle) { handle.apply(cur, data); } handle = ontype && cur[ontype]; if (handle && jQuery.acceptData(cur) && handle.apply && handle.apply(cur, data) === false ) { event.preventDefault(); } } event.type = type; if (!onlyHandlers && !event.isDefaultPrevented()) { if ((!special._default || special._default.apply(eventPath.pop(), data) === false ) && jQuery.acceptData(elem)) { if (ontype && jQuery.isFunction(elem[type]) && !jQuery.isWindow(elem)) { tmp = elem[ontype]; if (tmp) { elem[ontype] = null ; } jQuery.event.triggered = type; elem[type](); jQuery.event.triggered = undefined; if (tmp) { elem[ontype] = tmp; } } } } return event.result; } , dispatch: function (event){ event = jQuery.event.fix(event); var i, j, ret, matched, handleObj, handlerQueue = [] , args = core_slice.call(arguments), handlers = (data_priv.get(this, "events") || { } )[event.type] || [] , special = jQuery.event.special[event.type] || { } ; args[0] = event; event.delegateTarget = this; if (special.preDispatch && special.preDispatch.call(this, event) === false ) { return ; } handlerQueue = jQuery.event.handlers.call(this, event, handlers); i = 0; while ((matched = handlerQueue[i++ ]) && !event.isPropagationStopped()){ event.currentTarget = matched.elem; j = 0; while ((handleObj = matched.handlers[j++ ]) && !event.isImmediatePropagationStopped()){ if (!event.namespace_re || event.namespace_re.test(handleObj.namespace)) { event.handleObj = handleObj; event.data = handleObj.data; ret = ((jQuery.event.special[handleObj.origType] || { } ).handle || handleObj.handler).apply(matched.elem, args); if (ret !== undefined) { if ((event.result = ret) === false ) { event.preventDefault(); event.stopPropagation(); } } } } } if (special.postDispatch) { special.postDispatch.call(this, event); } return event.result; } , handlers: function (event, handlers){ var i, matches, sel, handleObj, handlerQueue = [] , delegateCount = handlers.delegateCount, cur = _AN_Read_target("target", event); if (delegateCount && cur.nodeType && (!event.button || event.type !== "click")) { for (; cur !== this; cur = cur.parentNode || this){ if (cur.disabled !== true || event.type !== "click") { matches = [] ; for (i = 0; i < delegateCount; i++ ){ handleObj = handlers[i]; sel = handleObj.selector + " "; if (matches[sel] === undefined) { matches[sel] = handleObj.needsContext? jQuery(sel, this).index(cur) >= 0: _AN_Read_length("length", jQuery.find(sel, this, null , [cur] )); } if (matches[sel]) { matches.push(handleObj); } } if (matches.length) { handlerQueue.push({ elem: cur, handlers: matches} ); } } } } if (delegateCount < _AN_Read_length("length", handlers)) { handlerQueue.push({ elem: this, handlers: handlers.slice(delegateCount)} ); } return handlerQueue; } , 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 (event, original){ if (event.which == null ) { event.which = original.charCode != null ? original.charCode: original.keyCode; } return event; } } , mouseHooks: { props: "button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "), filter: function (event, original){ var eventDoc, doc, body, button = original.button; if (event.pageX == null && original.clientX != null ) { eventDoc = _AN_Read_target("target", event).ownerDocument || document; doc = eventDoc.documentElement; body = eventDoc.body; event.pageX = original.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0); event.pageY = original.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc && doc.clientTop || body && body.clientTop || 0); } if (!event.which && button !== undefined) { event.which = (button & 1? 1: (button & 2? 3: (button & 4? 2: 0))); } return event; } } , fix: function (event){ if (event[jQuery.expando]) { return event; } var i, prop, copy, type = event.type, originalEvent = event, fixHook = this.fixHooks[type]; if (!fixHook) { this.fixHooks[type] = fixHook = rmouseEvent.test(type)? this.mouseHooks: rkeyEvent.test(type)? this.keyHooks: { } ; } copy = fixHook.props? this.props.concat(fixHook.props): this.props; event = new jQuery.Event(originalEvent); i = _AN_Read_length("length", copy); while (i-- ){ prop = copy[i]; event[prop] = originalEvent[prop]; } if (!_AN_Read_target("target", event)) { _AN_Write_target("target", event, false , document); } if (_AN_Read_target("target", event).nodeType === 3) { _AN_Write_target("target", event, false , _AN_Read_target("target", event).parentNode); } return fixHook.filter? fixHook.filter(event, originalEvent): event; } , special: { load: { noBubble: true } , focus: { trigger: function (){ if (this !== safeActiveElement() && this.focus) { this.focus(); return false ; } } , delegateType: "focusin"} , blur: { trigger: function (){ if (this === safeActiveElement() && this.blur) { this.blur(); return false ; } } , delegateType: "focusout"} , click: { trigger: function (){ if (this.type === "checkbox" && this.click && jQuery.nodeName(this, "input")) { this.click(); return false ; } } , _default: function (event){ return jQuery.nodeName(_AN_Read_target("target", event), "a"); } } , beforeunload: { postDispatch: function (event){ if (event.result !== undefined) { event.originalEvent.returnValue = event.result; } } } } , simulate: function (type, elem, event, bubble){ var e = jQuery.extend(new jQuery.Event(), event, { type: type, isSimulated: true , originalEvent: { } } ); if (bubble) { jQuery.event.trigger(e, null , elem); } else { jQuery.event.dispatch.call(elem, e); } if (e.isDefaultPrevented()) { event.preventDefault(); } } } ; jQuery.removeEvent = function (elem, type, handle){ if (elem.removeEventListener) { elem.removeEventListener(type, handle, false ); } } ; jQuery.Event = function (src, props){ if (!(this instanceof jQuery.Event)) { return new jQuery.Event(src, props); } if (src && src.type) { this.originalEvent = src; this.type = src.type; this.isDefaultPrevented = (src.defaultPrevented || src.getPreventDefault && src.getPreventDefault())? returnTrue: returnFalse; } else { this.type = src; } if (props) { jQuery.extend(this, props); } this.timeStamp = src && src.timeStamp || jQuery.now(); this[jQuery.expando] = true ; } ; jQuery.Event.prototype = { isDefaultPrevented: returnFalse, isPropagationStopped: returnFalse, isImmediatePropagationStopped: returnFalse, preventDefault: function (){ var e = this.originalEvent; this.isDefaultPrevented = returnTrue; if (e && e.preventDefault) { e.preventDefault(); } } , stopPropagation: function (){ var e = this.originalEvent; this.isPropagationStopped = returnTrue; if (e && e.stopPropagation) { e.stopPropagation(); } } , stopImmediatePropagation: function (){ this.isImmediatePropagationStopped = returnTrue; this.stopPropagation(); } } ; jQuery.each({ mouseenter: "mouseover", mouseleave: "mouseout"} , function (orig, fix){ jQuery.event.special[orig] = { delegateType: fix, bindType: fix, handle: function (event){ var ret, target = this, related = event.relatedTarget, handleObj = event.handleObj; if (!related || (related !== target && !jQuery.contains(target, related))) { event.type = handleObj.origType; ret = handleObj.handler.apply(this, arguments); event.type = fix; } return ret; } } ; } ); if (!jQuery.support.focusinBubbles) { jQuery.each({ focus: "focusin", blur: "focusout"} , function (orig, fix){ var attaches = 0, handler = function (event){ jQuery.event.simulate(fix, _AN_Read_target("target", event), jQuery.event.fix(event), true ); } ; jQuery.event.special[fix] = { setup: function (){ if (attaches++ === 0) { document.addEventListener(orig, handler, true ); } } , teardown: function (){ if (--attaches === 0) { document.removeEventListener(orig, handler, true ); } } } ; } ); } jQuery.fn.extend({ on: function (types, selector, data, fn, one){ var origFn, type; if (typeof types === "object") { if (typeof selector !== "string") { data = data || selector; selector = undefined; } for (type in types){ this.on(type, selector, data, types[type], one); } return this; } if (data == null && fn == null ) { fn = selector; data = selector = undefined; } else if (fn == null ) { if (typeof selector === "string") { fn = data; data = undefined; } else { fn = data; data = selector; selector = undefined; } } if (fn === false ) { fn = returnFalse; } else if (!fn) { return this; } if (one === 1) { origFn = fn; fn = function (event){ jQuery().off(event); return origFn.apply(this, arguments); } ; fn.guid = origFn.guid || (origFn.guid = jQuery.guid++ ); } return this.each(function (){ jQuery.event.add(this, types, fn, data, selector); } ); } , one: function (types, selector, data, fn){ return this.on(types, selector, data, fn, 1); } , off: function (types, selector, fn){ var handleObj, type; if (types && types.preventDefault && types.handleObj) { handleObj = types.handleObj; jQuery(types.delegateTarget).off(handleObj.namespace? handleObj.origType + "." + handleObj.namespace: handleObj.origType, handleObj.selector, handleObj.handler); return this; } if (typeof types === "object") { for (type in types){ this.off(type, selector, types[type]); } return this; } if (selector === false || typeof selector === "function") { fn = selector; selector = undefined; } if (fn === false ) { fn = returnFalse; } return this.each(function (){ jQuery.event.remove(this, types, fn, selector); } ); } , trigger: function (type, data){ return this.each(function (){ jQuery.event.trigger(type, data, this); } ); } , triggerHandler: function (type, data){ var elem = this[0]; if (elem) { return jQuery.event.trigger(type, data, elem, true ); } } } ); var isSimple = /^.[^:#\[\.,]*$/, rparentsprev = /^(?:parents|prev(?:Until|All))/, rneedsContext = jQuery.expr.match.needsContext, guaranteedUnique = { children: true , contents: true , next: true , prev: true } ; jQuery.fn.extend({ find: function (selector){ var i, ret = [] , self = this, len = _AN_Read_length("length", self); if (typeof selector !== "string") { return this.pushStack(jQuery(selector).filter(function (){ for (i = 0; i < len; i++ ){ if (jQuery.contains(self[i], this)) { return true ; } } } )); } for (i = 0; i < len; i++ ){ jQuery.find(selector, self[i], ret); } ret = this.pushStack(len > 1? jQuery.unique(ret): ret); ret.selector = this.selector? this.selector + " " + selector: selector; return ret; } , has: function (target){ var targets = jQuery(target, this), l = _AN_Read_length("length", targets); return this.filter(function (){ var i = 0; for (; i < l; i++ ){ if (jQuery.contains(this, targets[i])) { return true ; } } } ); } , not: function (selector){ return this.pushStack(winnow(this, selector || [] , true )); } , filter: function (selector){ return this.pushStack(winnow(this, selector || [] , false )); } , is: function (selector){ return !!_AN_Read_length("length", winnow(this, typeof selector === "string" && rneedsContext.test(selector)? jQuery(selector): selector || [] , false )); } , closest: function (selectors, context){ var cur, i = 0, l = _AN_Read_length("length", this), matched = [] , pos = (rneedsContext.test(selectors) || typeof selectors !== "string")? jQuery(selectors, context || this.context): 0; for (; i < l; i++ ){ for (cur = this[i]; cur && cur !== context; cur = cur.parentNode){ if (cur.nodeType < 11 && (pos? pos.index(cur) > -1: cur.nodeType === 1 && jQuery.find.matchesSelector(cur, selectors))) { cur = matched.push(cur); break ; } } } return this.pushStack(_AN_Read_length("length", matched) > 1? jQuery.unique(matched): matched); } , index: function (elem){ if (!elem) { return (this[0] && this[0].parentNode)? _AN_Read_length("length", this.first().prevAll()): -1; } if (typeof elem === "string") { return core_indexOf.call(jQuery(elem), this[0]); } return core_indexOf.call(this, elem.jquery? elem[0]: elem); } , add: function (selector, context){ var set = typeof selector === "string"? jQuery(selector, context): jQuery.makeArray(selector && selector.nodeType? [selector] : selector), all = jQuery.merge(this.get(), set); return this.pushStack(jQuery.unique(all)); } , addBack: function (selector){ return this.add(selector == null ? this.prevObject: this.prevObject.filter(selector)); } } ); function sibling(cur, dir){ while ((cur = cur[dir]) && cur.nodeType !== 1){ } return cur; } jQuery.each({ parent: function (elem){ var parent = elem.parentNode; return parent && parent.nodeType !== 11? parent: null ; } , parents: function (elem){ return jQuery.dir(elem, "parentNode"); } , parentsUntil: function (elem, i, until){ return jQuery.dir(elem, "parentNode", until); } , next: function (elem){ return sibling(elem, "nextSibling"); } , prev: function (elem){ return sibling(elem, "previousSibling"); } , nextAll: function (elem){ return jQuery.dir(elem, "nextSibling"); } , prevAll: function (elem){ return jQuery.dir(elem, "previousSibling"); } , nextUntil: function (elem, i, until){ return jQuery.dir(elem, "nextSibling", until); } , prevUntil: function (elem, i, until){ return jQuery.dir(elem, "previousSibling", until); } , siblings: function (elem){ return jQuery.sibling((elem.parentNode || { } ).firstChild, elem); } , children: function (elem){ return jQuery.sibling(elem.firstChild); } , contents: function (elem){ return jQuery.nodeName(elem, "iframe")? elem.contentDocument || elem.contentWindow.document: jQuery.merge([] , elem.childNodes); } } , function (name, fn){ jQuery.fn[name] = function (until, selector){ var matched = jQuery.map(this, fn, until); if (name.slice(-5) !== "Until") { selector = until; } if (selector && typeof selector === "string") { matched = jQuery.filter(selector, matched); } if (_AN_Read_length("length", this) > 1) { if (!guaranteedUnique[name]) { jQuery.unique(matched); } if (rparentsprev.test(name)) { matched.reverse(); } } return this.pushStack(matched); } ; } ); jQuery.extend({ filter: function (expr, elems, not){ var elem = elems[0]; if (not) { expr = ":not(" + expr + ")"; } return _AN_Read_length("length", elems) === 1 && elem.nodeType === 1? jQuery.find.matchesSelector(elem, expr)? [elem] : [] : jQuery.find.matches(expr, jQuery.grep(elems, function (elem){ return elem.nodeType === 1; } )); } , dir: function (elem, dir, until){ var matched = [] , truncate = until !== undefined; while ((elem = elem[dir]) && elem.nodeType !== 9){ if (elem.nodeType === 1) { if (truncate && jQuery(elem).is(until)) { break ; } matched.push(elem); } } return matched; } , sibling: function (n, elem){ var matched = [] ; for (; n; n = n.nextSibling){ if (n.nodeType === 1 && n !== elem) { matched.push(n); } } return matched; } } ); function winnow(elements, qualifier, not){ if (jQuery.isFunction(qualifier)) { return jQuery.grep(elements, function (elem, i){ return !!qualifier.call(elem, i, elem) !== not; } ); } if (qualifier.nodeType) { return jQuery.grep(elements, function (elem){ return (elem === qualifier) !== not; } ); } if (typeof qualifier === "string") { if (isSimple.test(qualifier)) { return jQuery.filter(qualifier, elements, not); } qualifier = jQuery.filter(qualifier, elements); } return jQuery.grep(elements, function (elem){ return (core_indexOf.call(qualifier, elem) >= 0) !== not; } ); } var rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, rtagName = /<([\w:]+)/, rhtml = /<|&#?\w+;/, rnoInnerhtml = /<(?:script|style|link)/i, manipulation_rcheckableType = /^(?:checkbox|radio)$/i, rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i, rscriptType = /^$|\/(?:java|ecma)script/i, rscriptTypeMasked = /^true\/(.*)/, rcleanScript = /^\s*\s*$/g, wrapMap = { option: [1, ""] , thead: [1, "", "
"] , col: [2, "", "
"] , tr: [2, "", "
"] , td: [3, "", "
"] , _default: [0, "", ""] } ; wrapMap.optgroup = wrapMap.option; wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; wrapMap.th = wrapMap.td; jQuery.fn.extend({ text: function (value){ return jQuery.access(this, function (value){ return value === undefined? jQuery.text(this): this.empty().append((this[0] && this[0].ownerDocument || document).createTextNode(value)); } , null , value, _AN_Read_length("length", arguments)); } , append: function (){ return this.domManip(arguments, function (elem){ if (this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9) { var target = manipulationTarget(this, elem); _AN_Call_appendchild("appendChild", target, elem); } } ); } , prepend: function (){ return this.domManip(arguments, function (elem){ if (this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9) { var target = manipulationTarget(this, elem); target.insertBefore(elem, target.firstChild); } } ); } , before: function (){ return this.domManip(arguments, function (elem){ if (this.parentNode) { this.parentNode.insertBefore(elem, this); } } ); } , after: function (){ return this.domManip(arguments, function (elem){ if (this.parentNode) { this.parentNode.insertBefore(elem, this.nextSibling); } } ); } , remove: function (selector, keepData){ var elem, elems = selector? jQuery.filter(selector, this): this, i = 0; for (; (elem = elems[i]) != null ; i++ ){ if (!keepData && elem.nodeType === 1) { jQuery.cleanData(getAll(elem)); } if (elem.parentNode) { if (keepData && jQuery.contains(elem.ownerDocument, elem)) { setGlobalEval(getAll(elem, "script")); } elem.parentNode.removeChild(elem); } } return this; } , empty: function (){ var elem, i = 0; for (; (elem = this[i]) != null ; i++ ){ if (elem.nodeType === 1) { jQuery.cleanData(getAll(elem, false )); elem.textContent = ""; } } return this; } , clone: function (dataAndEvents, deepDataAndEvents){ dataAndEvents = dataAndEvents == null ? false : dataAndEvents; deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents: deepDataAndEvents; return this.map(function (){ return jQuery.clone(this, dataAndEvents, deepDataAndEvents); } ); } , html: function (value){ return jQuery.access(this, function (value){ var elem = this[0] || { } , i = 0, l = _AN_Read_length("length", this); if (value === undefined && elem.nodeType === 1) { return elem.innerHTML; } if (typeof value === "string" && !rnoInnerhtml.test(value) && !wrapMap[(rtagName.exec(value) || ["", ""] )[1].toLowerCase()]) { value = _AN_Call_replace("replace", value, rxhtmlTag, "<$1>"); try { for (; i < l; i++ ){ elem = this[i] || { } ; if (elem.nodeType === 1) { jQuery.cleanData(getAll(elem, false )); _AN_Write_innerhtml("innerHTML", elem, false , value); } } elem = 0; } catch (e) { } } if (elem) { this.empty().append(value); } } , null , value, _AN_Read_length("length", arguments)); } , replaceWith: function (){ var args = jQuery.map(this, function (elem){ return [elem.nextSibling, elem.parentNode] ; } ), i = 0; this.domManip(arguments, function (elem){ var next = args[i++ ], parent = args[i++ ]; if (parent) { if (next && next.parentNode !== parent) { next = this.nextSibling; } jQuery(this).remove(); parent.insertBefore(elem, next); } } , true ); return i? this: this.remove(); } , detach: function (selector){ return this.remove(selector, true ); } , domManip: function (args, callback, allowIntersection){ args = core_concat.apply([] , args); var fragment, first, scripts, hasScripts, node, doc, i = 0, l = _AN_Read_length("length", this), set = this, iNoClone = l - 1, value = args[0], isFunction = jQuery.isFunction(value); if (isFunction || !(l <= 1 || typeof value !== "string" || jQuery.support.checkClone || !rchecked.test(value))) { return this.each(function (index){ var self = set.eq(index); if (isFunction) { args[0] = value.call(this, index, self.html()); } self.domManip(args, callback, allowIntersection); } ); } if (l) { fragment = jQuery.buildFragment(args, this[0].ownerDocument, false , !allowIntersection && this); first = fragment.firstChild; if (_AN_Read_length("length", fragment.childNodes) === 1) { fragment = first; } if (first) { scripts = jQuery.map(getAll(fragment, "script"), disableScript); hasScripts = _AN_Read_length("length", scripts); for (; i < l; i++ ){ node = fragment; if (i !== iNoClone) { node = jQuery.clone(node, true , true ); if (hasScripts) { jQuery.merge(scripts, getAll(node, "script")); } } callback.call(this[i], node, i); } if (hasScripts) { doc = scripts[_AN_Read_length("length", scripts) - 1].ownerDocument; jQuery.map(scripts, restoreScript); for (i = 0; i < hasScripts; i++ ){ node = scripts[i]; if (rscriptType.test(node.type || "") && !data_priv.access(node, "globalEval") && jQuery.contains(doc, node)) { if (node.src) { jQuery._evalUrl(_AN_Read_src("src", node)); } else { jQuery.globalEval(_AN_Call_replace("replace", node.textContent, rcleanScript, "")); } } } } } } return this; } } ); jQuery.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith"} , function (name, original){ jQuery.fn[name] = function (selector){ var elems, ret = [] , insert = jQuery(selector), last = _AN_Read_length("length", insert) - 1, i = 0; for (; i <= last; i++ ){ elems = i === last? this: this.clone(true ); jQuery(insert[i])[original](elems); core_push.apply(ret, elems.get()); } return this.pushStack(ret); } ; } ); jQuery.extend({ clone: function (elem, dataAndEvents, deepDataAndEvents){ var i, l, srcElements, destElements, clone = elem.cloneNode(true ), inPage = jQuery.contains(elem.ownerDocument, elem); if (!jQuery.support.noCloneChecked && (elem.nodeType === 1 || elem.nodeType === 11) && !jQuery.isXMLDoc(elem)) { destElements = getAll(clone); srcElements = getAll(elem); for (i = 0, l = _AN_Read_length("length", srcElements); i < l; i++ ){ fixInput(srcElements[i], destElements[i]); } } if (dataAndEvents) { if (deepDataAndEvents) { srcElements = srcElements || getAll(elem); destElements = destElements || getAll(clone); for (i = 0, l = _AN_Read_length("length", srcElements); i < l; i++ ){ cloneCopyEvent(srcElements[i], destElements[i]); } } else { cloneCopyEvent(elem, clone); } } destElements = getAll(clone, "script"); if (_AN_Read_length("length", destElements) > 0) { setGlobalEval(destElements, !inPage && getAll(elem, "script")); } return clone; } , buildFragment: function (elems, context, scripts, selection){ var elem, tmp, tag, wrap, contains, j, i = 0, l = _AN_Read_length("length", elems), fragment = context.createDocumentFragment(), nodes = [] ; for (; i < l; i++ ){ elem = elems[i]; if (elem || elem === 0) { if (jQuery.type(elem) === "object") { jQuery.merge(nodes, elem.nodeType? [elem] : elem); } else if (!rhtml.test(elem)) { nodes.push(context.createTextNode(elem)); } else { tmp = tmp || _AN_Call_appendchild("appendChild", fragment, _AN_Call_createelement("createElement", context, "div")); tag = (rtagName.exec(elem) || ["", ""] )[1].toLowerCase(); wrap = wrapMap[tag] || wrapMap._default; _AN_Write_innerhtml("innerHTML", tmp, false , wrap[1] + _AN_Call_replace("replace", elem, rxhtmlTag, "<$1>") + wrap[2]); j = wrap[0]; while (j-- ){ tmp = tmp.firstChild; } jQuery.merge(nodes, tmp.childNodes); tmp = fragment.firstChild; tmp.textContent = ""; } } } fragment.textContent = ""; i = 0; while ((elem = nodes[i++ ])){ if (selection && jQuery.inArray(elem, selection) !== -1) { continue ; } contains = jQuery.contains(elem.ownerDocument, elem); tmp = getAll(_AN_Call_appendchild("appendChild", fragment, elem), "script"); if (contains) { setGlobalEval(tmp); } if (scripts) { j = 0; while ((elem = tmp[j++ ])){ if (rscriptType.test(elem.type || "")) { scripts.push(elem); } } } } return fragment; } , cleanData: function (elems){ var data, elem, events, type, key, j, special = jQuery.event.special, i = 0; for (; (elem = elems[i]) !== undefined; i++ ){ if (Data.accepts(elem)) { key = elem[data_priv.expando]; if (key && (data = data_priv.cache[key])) { events = Object.keys(data.events || { } ); if (events.length) { for (j = 0; (type = events[j]) !== undefined; j++ ){ if (special[type]) { jQuery.event.remove(elem, type); } else { jQuery.removeEvent(elem, type, data.handle); } } } if (data_priv.cache[key]) { delete data_priv.cache[key]; } } } delete data_user.cache[elem[data_user.expando]]; } } , _evalUrl: function (url){ return jQuery.ajax({ url: url, type: "GET", dataType: "script", async: false , global: false , "throws": true } ); } } ); function manipulationTarget(elem, content){ return jQuery.nodeName(elem, "table") && jQuery.nodeName(content.nodeType === 1? content: content.firstChild, "tr")? _AN_Call_getelementsbytagname("getElementsByTagName", elem, "tbody")[0] || _AN_Call_appendchild("appendChild", elem, _AN_Call_createelement("createElement", elem.ownerDocument, "tbody")): elem; } function disableScript(elem){ elem.type = (_AN_Call_getattribute("getAttribute", elem, "type") !== null ) + "/" + elem.type; return elem; } function restoreScript(elem){ var match = rscriptTypeMasked.exec(elem.type); if (match) { elem.type = match[1]; } else { elem.removeAttribute("type"); } return elem; } function setGlobalEval(elems, refElements){ var l = _AN_Read_length("length", elems), i = 0; for (; i < l; i++ ){ data_priv.set(elems[i], "globalEval", !refElements || data_priv.get(refElements[i], "globalEval")); } } function cloneCopyEvent(src, dest){ var i, l, type, pdataOld, pdataCur, udataOld, udataCur, events; if (dest.nodeType !== 1) { return ; } if (data_priv.hasData(src)) { pdataOld = data_priv.access(src); pdataCur = data_priv.set(dest, pdataOld); events = pdataOld.events; if (events) { delete pdataCur.handle; pdataCur.events = { } ; for (type in events){ for (i = 0, l = _AN_Read_length("length", events[type]); i < l; i++ ){ jQuery.event.add(dest, type, events[type][i]); } } } } if (data_user.hasData(src)) { udataOld = data_user.access(src); udataCur = jQuery.extend({ } , udataOld); data_user.set(dest, udataCur); } } function getAll(context, tag){ var ret = context.getElementsByTagName? _AN_Call_getelementsbytagname("getElementsByTagName", context, tag || "*"): context.querySelectorAll? context.querySelectorAll(tag || "*"): [] ; return tag === undefined || tag && jQuery.nodeName(context, tag)? jQuery.merge([context] , ret): ret; } function fixInput(src, dest){ var nodeName = dest.nodeName.toLowerCase(); if (nodeName === "input" && manipulation_rcheckableType.test(src.type)) { dest.checked = src.checked; } else if (nodeName === "input" || nodeName === "textarea") { dest.defaultValue = src.defaultValue; } } jQuery.fn.extend({ wrapAll: function (html){ var wrap; if (jQuery.isFunction(html)) { return this.each(function (i){ jQuery(this).wrapAll(html.call(this, i)); } ); } if (this[0]) { wrap = jQuery(html, this[0].ownerDocument).eq(0).clone(true ); if (this[0].parentNode) { wrap.insertBefore(this[0]); } wrap.map(function (){ var elem = this; while (elem.firstElementChild){ elem = elem.firstElementChild; } return elem; } ).append(this); } return this; } , wrapInner: function (html){ if (jQuery.isFunction(html)) { return this.each(function (i){ jQuery(this).wrapInner(html.call(this, i)); } ); } return this.each(function (){ var self = jQuery(this), contents = self.contents(); if (contents.length) { contents.wrapAll(html); } else { self.append(html); } } ); } , wrap: function (html){ var isFunction = jQuery.isFunction(html); return this.each(function (i){ jQuery(this).wrapAll(isFunction? html.call(this, i): html); } ); } , unwrap: function (){ return this.parent().each(function (){ if (!jQuery.nodeName(this, "body")) { jQuery(this).replaceWith(this.childNodes); } } ).end(); } } ); var curCSS, iframe, rdisplayswap = /^(none|table(?!-c[ea]).+)/, rmargin = /^margin/, rnumsplit = new RegExp("^(" + core_pnum + ")(.*)$", "i"), rnumnonpx = new RegExp("^(" + core_pnum + ")(?!px)[a-z%]+$", "i"), rrelNum = new RegExp("^([+-])=(" + core_pnum + ")", "i"), elemdisplay = { BODY: "block"} , cssShow = { position: "absolute", visibility: "hidden", display: "block"} , cssNormalTransform = { letterSpacing: 0, fontWeight: 400} , cssExpand = ["Top", "Right", "Bottom", "Left"] , cssPrefixes = ["Webkit", "O", "Moz", "ms"] ; function vendorPropName(style, name){ if (name in style) { return name; } var capName = name.charAt(0).toUpperCase() + name.slice(1), origName = name, i = _AN_Read_length("length", cssPrefixes); while (i-- ){ name = cssPrefixes[i] + capName; if (name in style) { return name; } } return origName; } function isHidden(elem, el){ elem = el || elem; return jQuery.css(elem, "display") === "none" || !jQuery.contains(elem.ownerDocument, elem); } function getStyles(elem){ return window.getComputedStyle(elem, null ); } function showHide(elements, show){ var display, elem, hidden, values = [] , index = 0, length = _AN_Read_length("length", elements); for (; index < length; index++ ){ elem = elements[index]; if (!elem.style) { continue ; } values[index] = data_priv.get(elem, "olddisplay"); display = elem.style.display; if (show) { if (!values[index] && display === "none") { elem.style.display = ""; } if (elem.style.display === "" && isHidden(elem)) { values[index] = data_priv.access(elem, "olddisplay", css_defaultDisplay(elem.nodeName)); } } else { if (!values[index]) { hidden = isHidden(elem); if (display && display !== "none" || !hidden) { data_priv.set(elem, "olddisplay", hidden? display: jQuery.css(elem, "display")); } } } } for (index = 0; index < length; index++ ){ elem = elements[index]; if (!elem.style) { continue ; } if (!show || elem.style.display === "none" || elem.style.display === "") { elem.style.display = show? values[index] || "": "none"; } } return elements; } jQuery.fn.extend({ css: function (name, value){ return jQuery.access(this, function (elem, name, value){ var styles, len, map = { } , i = 0; if (jQuery.isArray(name)) { styles = getStyles(elem); len = _AN_Read_length("length", name); for (; i < len; i++ ){ map[name[i]] = jQuery.css(elem, name[i], false , styles); } return map; } return value !== undefined? jQuery.style(elem, name, value): jQuery.css(elem, name); } , name, value, _AN_Read_length("length", arguments) > 1); } , show: function (){ return showHide(this, true ); } , hide: function (){ return showHide(this); } , toggle: function (state){ var bool = typeof state === "boolean"; return this.each(function (){ if (bool? state: isHidden(this)) { _AN_Call_show("show", jQuery(this)); } else { jQuery(this).hide(); } } ); } } ); jQuery.extend({ cssHooks: { opacity: { get: function (elem, computed){ if (computed) { var ret = curCSS(elem, "opacity"); return ret === ""? "1": ret; } } } } , cssNumber: { "columnCount": true , "fillOpacity": true , "fontWeight": true , "lineHeight": true , "opacity": true , "orphans": true , "widows": true , "zIndex": true , "zoom": true } , cssProps: { "float": "cssFloat"} , style: function (elem, name, value, extra){ if (!elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style) { return ; } var ret, type, hooks, origName = jQuery.camelCase(name), style = elem.style; name = jQuery.cssProps[origName] || (jQuery.cssProps[origName] = vendorPropName(style, origName)); hooks = jQuery.cssHooks[name] || jQuery.cssHooks[origName]; if (value !== undefined) { type = typeof value; if (type === "string" && (ret = rrelNum.exec(value))) { value = (ret[1] + 1) * ret[2] + parseFloat(jQuery.css(elem, name)); type = "number"; } if (value == null || type === "number" && isNaN(value)) { return ; } if (type === "number" && !jQuery.cssNumber[origName]) { value += "px"; } if (!jQuery.support.clearCloneStyle && value === "" && name.indexOf("background") === 0) { style[name] = "inherit"; } if (!hooks || !("set" in hooks) || (value = hooks.set(elem, value, extra)) !== undefined) { style[name] = value; } } else { if (hooks && "get" in hooks && (ret = hooks.get(elem, false , extra)) !== undefined) { return ret; } return style[name]; } } , css: function (elem, name, extra, styles){ var val, num, hooks, origName = jQuery.camelCase(name); name = jQuery.cssProps[origName] || (jQuery.cssProps[origName] = vendorPropName(elem.style, origName)); hooks = jQuery.cssHooks[name] || jQuery.cssHooks[origName]; if (hooks && "get" in hooks) { val = hooks.get(elem, true , extra); } if (val === undefined) { val = curCSS(elem, name, styles); } if (val === "normal" && name in cssNormalTransform) { val = cssNormalTransform[name]; } if (extra === "" || extra) { num = parseFloat(val); return extra === true || jQuery.isNumeric(num)? num || 0: val; } return val; } } ); curCSS = function (elem, name, _computed){ var width, minWidth, maxWidth, computed = _computed || getStyles(elem), ret = computed? computed.getPropertyValue(name) || computed[name]: undefined, style = elem.style; if (computed) { if (ret === "" && !jQuery.contains(elem.ownerDocument, elem)) { ret = jQuery.style(elem, name); } if (rnumnonpx.test(ret) && rmargin.test(name)) { width = style.width; minWidth = style.minWidth; maxWidth = style.maxWidth; style.minWidth = style.maxWidth = style.width = ret; ret = computed.width; style.width = width; style.minWidth = minWidth; style.maxWidth = maxWidth; } } return ret; } ; function setPositiveNumber(elem, value, subtract){ var matches = rnumsplit.exec(value); return matches? Math.max(0, matches[1] - (subtract || 0)) + (matches[2] || "px"): value; } function augmentWidthOrHeight(elem, name, extra, isBorderBox, styles){ var i = extra === (isBorderBox? "border": "content")? 4: name === "width"? 1: 0, val = 0; for (; i < 4; i += 2){ if (extra === "margin") { val += jQuery.css(elem, extra + cssExpand[i], true , styles); } if (isBorderBox) { if (extra === "content") { val -= jQuery.css(elem, "padding" + cssExpand[i], true , styles); } if (extra !== "margin") { val -= jQuery.css(elem, "border" + cssExpand[i] + "Width", true , styles); } } else { val += jQuery.css(elem, "padding" + cssExpand[i], true , styles); if (extra !== "padding") { val += jQuery.css(elem, "border" + cssExpand[i] + "Width", true , styles); } } } return val; } function getWidthOrHeight(elem, name, extra){ var valueIsBorderBox = true , val = name === "width"? elem.offsetWidth: elem.offsetHeight, styles = getStyles(elem), isBorderBox = jQuery.support.boxSizing && jQuery.css(elem, "boxSizing", false , styles) === "border-box"; if (val <= 0 || val == null ) { val = curCSS(elem, name, styles); if (val < 0 || val == null ) { val = elem.style[name]; } if (rnumnonpx.test(val)) { return val; } valueIsBorderBox = isBorderBox && (jQuery.support.boxSizingReliable || val === elem.style[name]); val = parseFloat(val) || 0; } return (val + augmentWidthOrHeight(elem, name, extra || (isBorderBox? "border": "content"), valueIsBorderBox, styles)) + "px"; } function css_defaultDisplay(nodeName){ var doc = document, display = elemdisplay[nodeName]; if (!display) { display = actualDisplay(nodeName, doc); if (display === "none" || !display) { iframe = (iframe || jQuery("