(function (window, undefined){
var jQuery = function (selector, context){
return new jQuery.fn.init(selector, context);
}
, _jQuery = window.jQuery, _$ = window.$, document = window.document, rootjQuery, quickExpr = /^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/, isSimple = /^.[^:#\[\.,]*$/, rnotwhite = /\S/, rtrim = /^(\s|\u00A0)+|(\s|\u00A0)+$/g, rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>)?$/, userAgent = navigator.userAgent, browserMatch, readyBound = false , readyList = [] , DOMContentLoaded, toString = Object.prototype.toString, hasOwnProperty = Object.prototype.hasOwnProperty, push = Array.prototype.push, slice = Array.prototype.slice, indexOf = Array.prototype.indexOf;
jQuery.fn = jQuery.prototype = {
init: function (selector, context){
var match, elem, ret, doc;
if (!selector) {
return this;
}
if (selector.nodeType) {
this.context = this[0] = selector;
this.length = 1;
return this;
}
if (typeof selector === "string") {
match = quickExpr.exec(selector);
if (match && (match[1] || !context)) {
if (match[1]) {
doc = (context? context.ownerDocument || context: document);
ret = rsingleTag.exec(selector);
if (ret) {
if (jQuery.isPlainObject(context)) {
selector = [_AN_Call_createelement("createElement", document, ret[1])] ;
jQuery.fn.attr.call(selector, context, true );
}
else {
selector = [_AN_Call_createelement("createElement", doc, ret[1])] ;
}
}
else {
ret = buildFragment([match[1]] , [doc] );
selector = (ret.cacheable? ret.fragment.cloneNode(true ): ret.fragment).childNodes;
}
}
else {
elem = document.getElementById(match[2]);
if (elem) {
if (elem.id !== match[2]) {
return rootjQuery.find(selector);
}
this.length = 1;
this[0] = elem;
}
this.context = document;
this.selector = selector;
return this;
}
}
else if (!context && /^\w+$/.test(selector)) {
this.selector = selector;
this.context = document;
selector = _AN_Call_getelementsbytagname("getElementsByTagName", document, selector);
}
else if (!context || context.jquery) {
return (context || rootjQuery).find(selector);
}
else {
return jQuery(context).find(selector);
}
}
else if (jQuery.isFunction(selector)) {
return rootjQuery.ready(selector);
}
if (selector.selector !== undefined) {
this.selector = selector.selector;
this.context = selector.context;
}
return jQuery.isArray(selector)? this.setArray(selector): jQuery.makeArray(selector, this);
}
,
selector: "",
jquery: "1.4",
length: 0,
size: function (){
return _AN_Read_length("length", this);
}
,
toArray: function (){
return slice.call(this, 0);
}
,
get: function (num){
return num == null ? this.toArray(): (num < 0? this.slice(num)[0]: this[num]);
}
,
pushStack: function (elems, name, selector){
var ret = jQuery(elems || null );
ret.prevObject = this;
ret.context = this.context;
if (name === "find") {
ret.selector = this.selector + (this.selector? " ": "") + selector;
}
else if (name) {
ret.selector = this.selector + "." + name + "(" + selector + ")";
}
return ret;
}
,
setArray: function (elems){
this.length = 0;
push.apply(this, elems);
return this;
}
,
each: function (callback, args){
return jQuery.each(this, callback, args);
}
,
ready: function (fn){
jQuery.bindReady();
if (jQuery.isReady) {
fn.call(document, jQuery);
}
else if (readyList) {
readyList.push(fn);
}
return this;
}
,
eq: function (i){
return i === -1? this.slice(i): this.slice(i, + i + 1);
}
,
first: function (){
return this.eq(0);
}
,
last: function (){
return this.eq(-1);
}
,
slice: function (){
return this.pushStack(slice.apply(this, arguments), "slice", slice.call(arguments).join(","));
}
,
map: function (callback){
return this.pushStack(jQuery.map(this, function (elem, i){
return callback.call(elem, i, elem);
}
));
}
,
end: function (){
return this.prevObject || jQuery(null );
}
,
push: push,
sort: [] .sort,
splice: [] .splice}
;
jQuery.fn.init.prototype = jQuery.fn;
jQuery.extend = jQuery.fn.extend = function (){
var target = arguments[0] || {
}
, i = 1, length = _AN_Read_length("length", arguments), deep = false , options, name, src, copy;
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) || jQuery.isArray(copy))) {
var clone = src && (jQuery.isPlainObject(src) || jQuery.isArray(src))? src: jQuery.isArray(copy)? [] : {
}
;
target[name] = jQuery.extend(deep, clone, copy);
}
else if (copy !== undefined) {
target[name] = copy;
}
}
}
}
return target;
}
;
jQuery.extend({
noConflict: function (deep){
window.$ = _$;
if (deep) {
window.jQuery = _jQuery;
}
return jQuery;
}
,
isReady: false ,
ready: function (){
if (!jQuery.isReady) {
if (!document.body) {
return _AN_Call_settimeout("setTimeout", window, jQuery.ready, 13);
}
jQuery.isReady = true ;
if (readyList) {
var fn, i = 0;
while ((fn = readyList[i++ ])){
fn.call(document, jQuery);
}
readyList = null ;
}
if (jQuery.fn.triggerHandler) {
jQuery(document).triggerHandler("ready");
}
}
}
,
bindReady: function (){
if (readyBound) {
return ;
}
readyBound = true ;
if (document.readyState === "complete") {
return jQuery.ready();
}
if (document.addEventListener) {
document.addEventListener("DOMContentLoaded", DOMContentLoaded, false );
window.addEventListener("load", jQuery.ready, false );
}
else if (document.attachEvent) {
document.attachEvent("onreadystatechange", DOMContentLoaded);
window.attachEvent("onload", jQuery.ready);
var toplevel = false ;
try {
toplevel = window.frameElement == null ;
}
catch (e) {
}
if (document.documentElement.doScroll && toplevel) {
doScrollCheck();
}
}
}
,
isFunction: function (obj){
return toString.call(obj) === "[object Function]";
}
,
isArray: function (obj){
return toString.call(obj) === "[object Array]";
}
,
isPlainObject: function (obj){
if (!obj || toString.call(obj) !== "[object Object]" || obj.nodeType || obj.setInterval) {
return false ;
}
if (obj.constructor && !hasOwnProperty.call(obj, "constructor") && !hasOwnProperty.call(obj.constructor.prototype, "isPrototypeOf")) {
return false ;
}
var key;
for (key in obj){
}
return key === undefined || hasOwnProperty.call(obj, key);
}
,
isEmptyObject: function (obj){
for (var name in obj){
return false ;
}
return true ;
}
,
noop: function (){
}
,
globalEval: function (data){
if (data && rnotwhite.test(data)) {
var head = _AN_Call_getelementsbytagname("getElementsByTagName", document, "head")[0] || document.documentElement, script = _AN_Call_createelement("createElement", document, "script");
script.type = "text/javascript";
if (jQuery.support.scriptEval) {
_AN_Call_appendchild("appendChild", script, document.createTextNode(data));
}
else {
_AN_Write_text("text", script, false , data);
}
head.insertBefore(script, head.firstChild);
head.removeChild(script);
}
}
,
nodeName: function (elem, name){
return elem.nodeName && elem.nodeName.toUpperCase() === name.toUpperCase();
}
,
each: function (object, callback, args){
var name, i = 0, length = _AN_Read_length("length", object), isObj = length === undefined || jQuery.isFunction(object);
if (args) {
if (isObj) {
for (name in object){
if (callback.apply(object[name], args) === false ) {
break ;
}
}
}
else {
for (; i < length; ){
if (callback.apply(object[i++ ], args) === false ) {
break ;
}
}
}
}
else {
if (isObj) {
for (name in object){
if (callback.call(object[name], name, object[name]) === false ) {
break ;
}
}
}
else {
for (var value = object[0];
i < length && callback.call(value, i, value) !== false ; value = object[++i]){
}
}
}
return object;
}
,
trim: function (text){
return _AN_Call_replace("replace", (text || ""), rtrim, "");
}
,
makeArray: function (array, results){
var ret = results || [] ;
if (array != null ) {
if (_AN_Read_length("length", array) == null || typeof array === "string" || jQuery.isFunction(array) || (typeof array !== "function" && array.setInterval)) {
push.call(ret, array);
}
else {
jQuery.merge(ret, array);
}
}
return ret;
}
,
inArray: function (elem, array){
if (array.indexOf) {
return array.indexOf(elem);
}
for (var i = 0, length = _AN_Read_length("length", array);
i < length; i++ ){
if (array[i] === elem) {
return i;
}
}
return -1;
}
,
merge: function (first, second){
var i = _AN_Read_length("length", first), j = 0;
if (typeof _AN_Read_length("length", second) === "number") {
for (var l = _AN_Read_length("length", second);
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 ret = [] ;
for (var i = 0, length = _AN_Read_length("length", elems);
i < length; i++ ){
if (!inv !== !callback(elems[i], i)) {
ret.push(elems[i]);
}
}
return ret;
}
,
map: function (elems, callback, arg){
var ret = [] , value;
for (var i = 0, length = _AN_Read_length("length", elems);
i < length; i++ ){
value = callback(elems[i], i, arg);
if (value != null ) {
ret[_AN_Read_length("length", ret)] = value;
}
}
return ret.concat.apply([] , ret);
}
,
guid: 1,
proxy: function (fn, proxy, thisObject){
if (_AN_Read_length("length", arguments) === 2) {
if (typeof proxy === "string") {
thisObject = fn;
fn = thisObject[proxy];
proxy = undefined;
}
else if (proxy && !jQuery.isFunction(proxy)) {
thisObject = proxy;
proxy = undefined;
}
}
if (!proxy && fn) {
proxy = function (){
return fn.apply(thisObject || this, arguments);
}
;
}
if (fn) {
proxy.guid = fn.guid = fn.guid || proxy.guid || jQuery.guid++ ;
}
return proxy;
}
,
uaMatch: function (ua){
var ret = {
browser: ""}
;
ua = ua.toLowerCase();
if (/webkit/.test(ua)) {
ret = {
browser: "webkit",
version: /webkit[\/ ]([\w.]+)/}
;
}
else if (/opera/.test(ua)) {
ret = {
browser: "opera",
version: /version/.test(ua)? /version[\/ ]([\w.]+)/: /opera[\/ ]([\w.]+)/}
;
}
else if (/msie/.test(ua)) {
ret = {
browser: "msie",
version: /msie ([\w.]+)/}
;
}
else if (/mozilla/.test(ua) && !/compatible/.test(ua)) {
ret = {
browser: "mozilla",
version: /rv:([\w.]+)/}
;
}
ret.version = (ret.version && ret.version.exec(ua) || [0, "0"] )[1];
return ret;
}
,
browser: {
}
}
);
browserMatch = jQuery.uaMatch(userAgent);
if (browserMatch.browser) {
jQuery.browser[browserMatch.browser] = true ;
jQuery.browser.version = browserMatch.version;
}
if (jQuery.browser.webkit) {
jQuery.browser.safari = true ;
}
if (indexOf) {
jQuery.inArray = function (elem, array){
return indexOf.call(array, elem);
}
;
}
rootjQuery = jQuery(document);
if (document.addEventListener) {
DOMContentLoaded = function (){
document.removeEventListener("DOMContentLoaded", DOMContentLoaded, false );
jQuery.ready();
}
;
}
else if (document.attachEvent) {
DOMContentLoaded = function (){
if (document.readyState === "complete") {
document.detachEvent("onreadystatechange", DOMContentLoaded);
jQuery.ready();
}
}
;
}
function doScrollCheck(){
if (jQuery.isReady) {
return ;
}
try {
document.documentElement.doScroll("left");
}
catch (error) {
_AN_Call_settimeout("setTimeout", window, doScrollCheck, 1);
return ;
}
jQuery.ready();
}
if (indexOf) {
jQuery.inArray = function (elem, array){
return indexOf.call(array, elem);
}
;
}
function evalScript(i, elem){
if (elem.src) {
jQuery.ajax({
url: _AN_Read_src("src", elem),
async: false ,
dataType: "script"}
);
}
else {
jQuery.globalEval(elem.text || elem.textContent || elem.innerHTML || "");
}
if (elem.parentNode) {
elem.parentNode.removeChild(elem);
}
}
function access(elems, key, value, exec, fn, pass){
var length = _AN_Read_length("length", elems);
if (typeof key === "object") {
for (var k in key){
access(elems, k, key[k], exec, fn, value);
}
return elems;
}
if (value !== undefined) {
exec = !pass && exec && jQuery.isFunction(value);
for (var i = 0;
i < length; i++ ){
fn(elems[i], key, exec? value.call(elems[i], i, fn(elems[i], key)): value, pass);
}
return elems;
}
return length? fn(elems[0], key): null ;
}
function now(){
return (new Date()).getTime();
}
(function (){
jQuery.support = {
}
;
var root = document.documentElement, script = _AN_Call_createelement("createElement", document, "script"), div = _AN_Call_createelement("createElement", document, "div"), id = "script" + now();
div.style.display = "none";
_AN_Write_innerhtml("innerHTML", div, false , "
a");
var all = _AN_Call_getelementsbytagname("getElementsByTagName", div, "*"), a = _AN_Call_getelementsbytagname("getElementsByTagName", div, "a")[0];
if (!all || !_AN_Read_length("length", all) || !a) {
return ;
}
jQuery.support = {
leadingWhitespace: div.firstChild.nodeType === 3,
tbody: !_AN_Read_length("length", _AN_Call_getelementsbytagname("getElementsByTagName", div, "tbody")),
htmlSerialize: !!_AN_Read_length("length", _AN_Call_getelementsbytagname("getElementsByTagName", div, "link")),
style: /red/.test(_AN_Call_getattribute("getAttribute", a, "style")),
hrefNormalized: _AN_Call_getattribute("getAttribute", a, "href") === "/a",
opacity: /^0.55$/.test(a.style.opacity),
cssFloat: !!a.style.cssFloat,
checkOn: _AN_Call_getelementsbytagname("getElementsByTagName", div, "input")[0].value === "on",
optSelected: _AN_Call_appendchild("appendChild", _AN_Call_createelement("createElement", document, "select"), _AN_Call_createelement("createElement", document, "option")).selected,
scriptEval: false ,
noCloneEvent: true ,
boxModel: null }
;
script.type = "text/javascript";
try {
_AN_Call_appendchild("appendChild", script, document.createTextNode("window." + id + "=1;"));
}
catch (e) {
}
root.insertBefore(script, root.firstChild);
if (window[id]) {
jQuery.support.scriptEval = true ;
delete window[id];
}
root.removeChild(script);
if (div.attachEvent && div.fireEvent) {
div.attachEvent("onclick", function click(){
jQuery.support.noCloneEvent = false ;
div.detachEvent("onclick", click);
}
);
div.cloneNode(true ).fireEvent("onclick");
}
jQuery(function (){
var div = _AN_Call_createelement("createElement", document, "div");
div.style.width = div.style.paddingLeft = "1px";
_AN_Call_appendchild("appendChild", document.body, div);
jQuery.boxModel = jQuery.support.boxModel = div.offsetWidth === 2;
document.body.removeChild(div).style.display = 'none';
div = null ;
}
);
var eventSupported = function (eventName){
var el = _AN_Call_createelement('createElement', document, "div");
eventName = "on" + eventName;
var isSupported = (eventName in el);
if (!isSupported) {
_AN_Call_setattribute("setAttribute", el, eventName, "return;");
isSupported = typeof el[eventName] === "function";
}
el = null ;
return isSupported;
}
;
jQuery.support.submitBubbles = eventSupported("submit");
jQuery.support.changeBubbles = eventSupported("change");
root = script = div = all = a = null ;
}
)();
jQuery.props = {
"for": "htmlFor",
"class": "className",
readonly: "readOnly",
maxlength: "maxLength",
cellspacing: "cellSpacing",
rowspan: "rowSpan",
colspan: "colSpan",
tabindex: "tabIndex",
usemap: "useMap",
frameborder: "frameBorder"}
;
var expando = "jQuery" + now(), uuid = 0, windowData = {
}
;
var emptyObject = {
}
;
jQuery.extend({
cache: {
}
,
expando: expando,
noData: {
"embed": true ,
"object": true ,
"applet": true }
,
data: function (elem, name, data){
if (elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()]) {
return ;
}
elem = elem == window? windowData: elem;
var id = elem[expando], cache = jQuery.cache, thisCache;
if (!name && !id) {
return null ;
}
if (!id) {
id = ++uuid;
}
if (typeof name === "object") {
elem[expando] = id;
thisCache = cache[id] = jQuery.extend(true , {
}
, name);
}
else if (cache[id]) {
thisCache = cache[id];
}
else if (typeof data === "undefined") {
thisCache = emptyObject;
}
else {
thisCache = cache[id] = {
}
;
}
if (data !== undefined) {
elem[expando] = id;
thisCache[name] = data;
}
return typeof name === "string"? thisCache[name]: thisCache;
}
,
removeData: function (elem, name){
if (elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()]) {
return ;
}
elem = elem == window? windowData: elem;
var id = elem[expando], cache = jQuery.cache, thisCache = cache[id];
if (name) {
if (thisCache) {
delete thisCache[name];
if (jQuery.isEmptyObject(thisCache)) {
jQuery.removeData(elem);
}
}
}
else {
try {
delete elem[expando];
}
catch (e) {
if (elem.removeAttribute) {
elem.removeAttribute(expando);
}
}
delete cache[id];
}
}
}
);
jQuery.fn.extend({
data: function (key, value){
if (typeof key === "undefined" && _AN_Read_length("length", this)) {
return jQuery.data(this[0]);
}
else if (typeof key === "object") {
return this.each(function (){
jQuery.data(this, key);
}
);
}
var parts = key.split(".");
parts[1] = parts[1]? "." + parts[1]: "";
if (value === undefined) {
var data = this.triggerHandler("getData" + parts[1] + "!", [parts[0]] );
if (data === undefined && _AN_Read_length("length", this)) {
data = jQuery.data(this[0], key);
}
return data === undefined && parts[1]? this.data(parts[0]): data;
}
else {
return this.trigger("setData" + parts[1] + "!", [parts[0], value] ).each(function (){
jQuery.data(this, key, value);
}
);
}
}
,
removeData: function (key){
return this.each(function (){
jQuery.removeData(this, key);
}
);
}
}
);
jQuery.extend({
queue: function (elem, type, data){
if (!elem) {
return ;
}
type = (type || "fx") + "queue";
var q = jQuery.data(elem, type);
if (!data) {
return q || [] ;
}
if (!q || jQuery.isArray(data)) {
q = jQuery.data(elem, type, jQuery.makeArray(data));
}
else {
q.push(data);
}
return q;
}
,
dequeue: function (elem, type){
type = type || "fx";
var queue = jQuery.queue(elem, type), fn = queue.shift();
if (fn === "inprogress") {
fn = queue.shift();
}
if (fn) {
if (type === "fx") {
queue.unshift("inprogress");
}
fn.call(elem, function (){
jQuery.dequeue(elem, type);
}
);
}
}
}
);
jQuery.fn.extend({
queue: function (type, data){
if (typeof type !== "string") {
data = type;
type = "fx";
}
if (data === undefined) {
return jQuery.queue(this[0], type);
}
return this.each(function (i, elem){
var queue = jQuery.queue(this, type, data);
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 (){
var elem = this;
_AN_Call_settimeout("setTimeout", window, function (){
jQuery.dequeue(elem, type);
}
, time);
}
);
}
,
clearQueue: function (type){
return this.queue(type || "fx", [] );
}
}
);
var rclass = /[\n\t]/g, rspace = /\s+/, rreturn = /\r/g, rspecialurl = /href|src|style/, rtype = /(button|input)/i, rfocusable = /(button|input|object|select|textarea)/i, rclickable = /^(a|area)$/i, rradiocheck = /radio|checkbox/;
jQuery.fn.extend({
attr: function (name, value){
return access(this, name, value, true , jQuery.attr);
}
,
removeAttr: function (name, fn){
return this.each(function (){
jQuery.attr(this, name, "");
if (this.nodeType === 1) {
this.removeAttribute(name);
}
}
);
}
,
addClass: function (value){
if (jQuery.isFunction(value)) {
return this.each(function (i){
var self = jQuery(this);
self.addClass(value.call(this, i, self.attr("class")));
}
);
}
if (value && typeof value === "string") {
var classNames = (value || "").split(rspace);
for (var i = 0, l = _AN_Read_length("length", this);
i < l; i++ ){
var elem = this[i];
if (elem.nodeType === 1) {
if (!elem.className) {
elem.className = value;
}
else {
var className = " " + elem.className + " ";
for (var c = 0, cl = _AN_Read_length("length", classNames);
c < cl; c++ ){
if (className.indexOf(" " + classNames[c] + " ") < 0) {
elem.className += " " + classNames[c];
}
}
}
}
}
}
return this;
}
,
removeClass: function (value){
if (jQuery.isFunction(value)) {
return this.each(function (i){
var self = jQuery(this);
self.removeClass(value.call(this, i, self.attr("class")));
}
);
}
if ((value && typeof value === "string") || value === undefined) {
var classNames = (value || "").split(rspace);
for (var i = 0, l = _AN_Read_length("length", this);
i < l; i++ ){
var elem = this[i];
if (elem.nodeType === 1 && elem.className) {
if (value) {
var className = _AN_Call_replace("replace", (" " + elem.className + " "), rclass, " ");
for (var c = 0, cl = _AN_Read_length("length", classNames);
c < cl; c++ ){
className = _AN_Call_replace("replace", className, " " + classNames[c] + " ", " ");
}
elem.className = className.substring(1, _AN_Read_length("length", className) - 1);
}
else {
elem.className = "";
}
}
}
}
return this;
}
,
toggleClass: function (value, stateVal){
var type = typeof value, isBool = typeof stateVal === "boolean";
if (jQuery.isFunction(value)) {
return this.each(function (i){
var self = jQuery(this);
self.toggleClass(value.call(this, i, self.attr("class"), stateVal), stateVal);
}
);
}
return this.each(function (){
if (type === "string") {
var className, i = 0, self = jQuery(this), state = stateVal, classNames = value.split(rspace);
while ((className = classNames[i++ ])){
state = isBool? state: !self.hasClass(className);
self[state? "addClass": "removeClass"](className);
}
}
else if (type === "undefined" || type === "boolean") {
if (this.className) {
jQuery.data(this, "__className__", this.className);
}
this.className = this.className || value === false ? "": jQuery.data(this, "__className__") || "";
}
}
);
}
,
hasClass: function (selector){
var className = " " + selector + " ";
for (var i = 0, l = _AN_Read_length("length", this);
i < l; i++ ){
if (_AN_Call_replace("replace", (" " + this[i].className + " "), rclass, " ").indexOf(className) > -1) {
return true ;
}
}
return false ;
}
,
val: function (value){
if (value === undefined) {
var elem = this[0];
if (elem) {
if (jQuery.nodeName(elem, "option")) {
return (elem.attributes.value || {
}
).specified? elem.value: elem.text;
}
if (jQuery.nodeName(elem, "select")) {
var index = elem.selectedIndex, values = [] , options = elem.options, one = elem.type === "select-one";
if (index < 0) {
return null ;
}
for (var i = one? index: 0, max = one? index + 1: _AN_Read_length("length", options);
i < max; i++ ){
var option = options[i];
if (option.selected) {
value = jQuery(option).val();
if (one) {
return value;
}
values.push(value);
}
}
return values;
}
if (rradiocheck.test(elem.type) && !jQuery.support.checkOn) {
return _AN_Call_getattribute("getAttribute", elem, "value") === null ? "on": elem.value;
}
return _AN_Call_replace("replace", (elem.value || ""), rreturn, "");
}
return undefined;
}
var isFunction = jQuery.isFunction(value);
return this.each(function (i){
var self = jQuery(this), val = value;
if (this.nodeType !== 1) {
return ;
}
if (isFunction) {
val = value.call(this, i, self.val());
}
if (typeof val === "number") {
val += "";
}
if (jQuery.isArray(val) && rradiocheck.test(this.type)) {
this.checked = jQuery.inArray(self.val(), val) >= 0;
}
else if (jQuery.nodeName(this, "select")) {
var values = jQuery.makeArray(val);
jQuery("option", this).each(function (){
this.selected = jQuery.inArray(jQuery(this).val(), values) >= 0;
}
);
if (!_AN_Read_length("length", values)) {
this.selectedIndex = -1;
}
}
else {
this.value = val;
}
}
);
}
}
);
jQuery.extend({
attrFn: {
val: true ,
css: true ,
html: true ,
text: true ,
data: true ,
width: true ,
height: true ,
offset: true }
,
attr: function (elem, name, value, pass){
if (!elem || elem.nodeType === 3 || elem.nodeType === 8) {
return undefined;
}
if (pass && name in jQuery.attrFn) {
return jQuery(elem)[name](value);
}
var notxml = elem.nodeType !== 1 || !jQuery.isXMLDoc(elem), set = value !== undefined;
name = notxml && jQuery.props[name] || name;
if (elem.nodeType === 1) {
var special = rspecialurl.test(name);
if (name === "selected" && !jQuery.support.optSelected) {
var parent = elem.parentNode;
if (parent) {
parent.selectedIndex;
if (parent.parentNode) {
parent.parentNode.selectedIndex;
}
}
}
if (name in elem && notxml && !special) {
if (set) {
if (name === "type" && rtype.test(elem.nodeName) && elem.parentNode) {
throw "type property can't be changed"
}
elem[name] = value;
}
if (jQuery.nodeName(elem, "form") && elem.getAttributeNode(name)) {
return _AN_Read_nodevalue("nodeValue", elem.getAttributeNode(name));
}
if (name === "tabIndex") {
var attributeNode = elem.getAttributeNode("tabIndex");
return attributeNode && attributeNode.specified? attributeNode.value: rfocusable.test(elem.nodeName) || rclickable.test(elem.nodeName) && _AN_Read_href("href", elem)? 0: undefined;
}
return elem[name];
}
if (!jQuery.support.style && notxml && name === "style") {
if (set) {
_AN_Write_csstext("cssText", elem.style, false , "" + value);
}
return _AN_Read_csstext("cssText", elem.style);
}
if (set) {
_AN_Call_setattribute("setAttribute", elem, name, "" + value);
}
var attr = !jQuery.support.hrefNormalized && notxml && special? _AN_Call_getattribute("getAttribute", elem, name, 2): _AN_Call_getattribute("getAttribute", elem, name);
return attr === null ? undefined: attr;
}
return jQuery.style(elem, name, value);
}
}
);
var fcleanup = function (nm){
return _AN_Call_replace("replace", nm, /[^\w\s\.\|`]/g, function (ch){
return "\\" + ch;
}
);
}
;
jQuery.event = {
add: function (elem, types, handler, data){
if (elem.nodeType === 3 || elem.nodeType === 8) {
return ;
}
if (elem.setInterval && (elem !== window && !elem.frameElement)) {
elem = window;
}
if (!handler.guid) {
handler.guid = jQuery.guid++ ;
}
if (data !== undefined) {
var fn = handler;
handler = jQuery.proxy(fn);
handler.data = data;
}
var events = jQuery.data(elem, "events") || jQuery.data(elem, "events", {
}
), handle = jQuery.data(elem, "handle"), eventHandle;
if (!handle) {
eventHandle = function (){
return typeof jQuery !== "undefined" && !jQuery.event.triggered? jQuery.event.handle.apply(eventHandle.elem, arguments): undefined;
}
;
handle = jQuery.data(elem, "handle", eventHandle);
}
if (!handle) {
return ;
}
handle.elem = elem;
types = types.split(/\s+/);
var type, i = 0;
while ((type = types[i++ ])){
var namespaces = type.split(".");
type = namespaces.shift();
handler.type = namespaces.slice(0).sort().join(".");
var handlers = events[type], special = this.special[type] || {
}
;
if (!handlers) {
handlers = events[type] = {
}
;
if (!special.setup || special.setup.call(elem, data, namespaces, handler) === false ) {
if (elem.addEventListener) {
elem.addEventListener(type, handle, false );
}
else if (elem.attachEvent) {
elem.attachEvent("on" + type, handle);
}
}
}
if (special.add) {
var modifiedHandler = special.add.call(elem, handler, data, namespaces, handlers);
if (modifiedHandler && jQuery.isFunction(modifiedHandler)) {
modifiedHandler.guid = modifiedHandler.guid || handler.guid;
handler = modifiedHandler;
}
}
handlers[handler.guid] = handler;
this.global[type] = true ;
}
elem = null ;
}
,
global: {
}
,
remove: function (elem, types, handler){
if (elem.nodeType === 3 || elem.nodeType === 8) {
return ;
}
var events = jQuery.data(elem, "events"), ret, type, fn;
if (events) {
if (types === undefined || (typeof types === "string" && types.charAt(0) === ".")) {
for (type in events){
this.remove(elem, type + (types || ""));
}
}
else {
if (types.type) {
handler = types.handler;
types = types.type;
}
types = types.split(/\s+/);
var i = 0;
while ((type = types[i++ ])){
var namespaces = type.split(".");
type = namespaces.shift();
var all = !_AN_Read_length("length", namespaces), cleaned = jQuery.map(namespaces.slice(0).sort(), fcleanup), namespace = new RegExp("(^|\\.)" + cleaned.join("\\.(?:.*\\.)?") + "(\\.|$)"), special = this.special[type] || {
}
;
if (events[type]) {
if (handler) {
fn = events[type][handler.guid];
delete events[type][handler.guid];
}
else {
for (var handle in events[type]){
if (all || namespace.test(events[type][handle].type)) {
delete events[type][handle];
}
}
}
if (special.remove) {
special.remove.call(elem, namespaces, fn);
}
for (ret in events[type]){
break ;
}
if (!ret) {
if (!special.teardown || special.teardown.call(elem, namespaces) === false ) {
if (elem.removeEventListener) {
elem.removeEventListener(type, jQuery.data(elem, "handle"), false );
}
else if (elem.detachEvent) {
elem.detachEvent("on" + type, jQuery.data(elem, "handle"));
}
}
ret = null ;
delete events[type];
}
}
}
}
for (ret in events){
break ;
}
if (!ret) {
var handle = jQuery.data(elem, "handle");
if (handle) {
handle.elem = null ;
}
jQuery.removeData(elem, "events");
jQuery.removeData(elem, "handle");
}
}
}
,
trigger: function (event, data, elem){
var type = event.type || event, bubbling = arguments[3];
if (!bubbling) {
event = typeof event === "object"? event[expando]? event: jQuery.extend(jQuery.Event(type), event): jQuery.Event(type);
if (type.indexOf("!") >= 0) {
event.type = type = type.slice(0, -1);
event.exclusive = true ;
}
if (!elem) {
event.stopPropagation();
if (this.global[type]) {
jQuery.each(jQuery.cache, function (){
if (this.events && this.events[type]) {
jQuery.event.trigger(event, data, this.handle.elem);
}
}
);
}
}
if (!elem || elem.nodeType === 3 || elem.nodeType === 8) {
return undefined;
}
event.result = undefined;
_AN_Write_target("target", event, false , elem);
data = jQuery.makeArray(data);
data.unshift(event);
}
event.currentTarget = elem;
var handle = jQuery.data(elem, "handle");
if (handle) {
handle.apply(elem, data);
}
var nativeFn, nativeHandler;
try {
if (!(elem && elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()])) {
nativeFn = elem[type];
nativeHandler = elem["on" + type];
}
}
catch (e) {
}
var isClick = jQuery.nodeName(elem, "a") && type === "click";
if (!bubbling && nativeFn && !event.isDefaultPrevented() && !isClick) {
this.triggered = true ;
try {
elem[type]();
}
catch (e) {
}
}
else if (nativeHandler && elem["on" + type].apply(elem, data) === false ) {
event.result = false ;
}
this.triggered = false ;
if (!event.isPropagationStopped()) {
var parent = elem.parentNode || elem.ownerDocument;
if (parent) {
jQuery.event.trigger(event, data, parent, true );
}
}
}
,
handle: function (event){
var all, handlers;
event = arguments[0] = jQuery.event.fix(event || window.event);
event.currentTarget = this;
var namespaces = event.type.split(".");
event.type = namespaces.shift();
all = !_AN_Read_length("length", namespaces) && !event.exclusive;
var namespace = new RegExp("(^|\\.)" + namespaces.slice(0).sort().join("\\.(?:.*\\.)?") + "(\\.|$)");
handlers = (jQuery.data(this, "events") || {
}
)[event.type];
for (var j in handlers){
var handler = handlers[j];
if (all || namespace.test(handler.type)) {
event.handler = handler;
event.data = handler.data;
var ret = handler.apply(this, arguments);
if (ret !== undefined) {
event.result = ret;
if (ret === false ) {
event.preventDefault();
event.stopPropagation();
}
}
if (event.isImmediatePropagationStopped()) {
break ;
}
}
}
return event.result;
}
,
props: "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
fix: function (event){
if (event[expando]) {
return event;
}
var originalEvent = event;
event = jQuery.Event(originalEvent);
for (var i = _AN_Read_length("length", this.props), prop;
i; ){
prop = this.props[--i];
event[prop] = originalEvent[prop];
}
if (!_AN_Read_target("target", event)) {
_AN_Write_target("target", event, false , event.srcElement || document);
}
if (_AN_Read_target("target", event).nodeType === 3) {
_AN_Write_target("target", event, false , _AN_Read_target("target", event).parentNode);
}
if (!event.relatedTarget && event.fromElement) {
event.relatedTarget = event.fromElement === _AN_Read_target("target", event)? event.toElement: event.fromElement;
}
if (event.pageX == null && event.clientX != null ) {
var doc = document.documentElement, body = document.body;
event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0);
event.pageY = event.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc && doc.clientTop || body && body.clientTop || 0);
}
if (!event.which && ((event.charCode || event.charCode === 0)? event.charCode: event.keyCode)) {
event.which = event.charCode || event.keyCode;
}
if (!event.metaKey && event.ctrlKey) {
event.metaKey = event.ctrlKey;
}
if (!event.which && event.button !== undefined) {
event.which = (event.button & 1? 1: (event.button & 2? 3: (event.button & 4? 2: 0)));
}
return event;
}
,
guid: 100000000,
proxy: jQuery.proxy,
special: {
ready: {
setup: jQuery.bindReady,
teardown: jQuery.noop}
,
live: {
add: function (proxy, data, namespaces, live){
jQuery.extend(proxy, data || {
}
);
proxy.guid += data.selector + data.live;
jQuery.event.add(this, data.live, liveHandler, data);
}
,
remove: function (namespaces){
if (namespaces.length) {
var remove = 0, name = new RegExp("(^|\\.)" + namespaces[0] + "(\\.|$)");
jQuery.each((jQuery.data(this, "events").live || {
}
), function (){
if (name.test(this.type)) {
remove++ ;
}
}
);
if (remove < 1) {
jQuery.event.remove(this, namespaces[0], liveHandler);
}
}
}
,
special: {
}
}
,
beforeunload: {
setup: function (data, namespaces, fn){
if (this.setInterval) {
this.onbeforeunload = fn;
}
return false ;
}
,
teardown: function (namespaces, fn){
if (this.onbeforeunload === fn) {
this.onbeforeunload = null ;
}
}
}
}
}
;
jQuery.Event = function (src){
if (!this.preventDefault) {
return new jQuery.Event(src);
}
if (src && src.type) {
this.originalEvent = src;
this.type = src.type;
}
else {
this.type = src;
}
this.timeStamp = now();
this[expando] = true ;
}
;
function returnFalse(){
return false ;
}
function returnTrue(){
return true ;
}
jQuery.Event.prototype = {
preventDefault: function (){
this.isDefaultPrevented = returnTrue;
var e = this.originalEvent;
if (!e) {
return ;
}
if (e.preventDefault) {
e.preventDefault();
}
e.returnValue = false ;
}
,
stopPropagation: function (){
this.isPropagationStopped = returnTrue;
var e = this.originalEvent;
if (!e) {
return ;
}
if (e.stopPropagation) {
e.stopPropagation();
}
e.cancelBubble = true ;
}
,
stopImmediatePropagation: function (){
this.isImmediatePropagationStopped = returnTrue;
this.stopPropagation();
}
,
isDefaultPrevented: returnFalse,
isPropagationStopped: returnFalse,
isImmediatePropagationStopped: returnFalse}
;
var withinElement = function (event){
var parent = event.relatedTarget;
while (parent && parent !== this){
try {
parent = parent.parentNode;
}
catch (e) {
break ;
}
}
if (parent !== this) {
event.type = event.data;
jQuery.event.handle.apply(this, arguments);
}
}
, delegate = function (event){
event.type = event.data;
jQuery.event.handle.apply(this, arguments);
}
;
jQuery.each({
mouseenter: "mouseover",
mouseleave: "mouseout"}
, function (orig, fix){
jQuery.event.special[orig] = {
setup: function (data){
jQuery.event.add(this, fix, data && data.selector? delegate: withinElement, orig);
}
,
teardown: function (data){
jQuery.event.remove(this, fix, data && data.selector? delegate: withinElement);
}
}
;
}
);
if (!jQuery.support.submitBubbles) {
jQuery.event.special.submit = {
setup: function (data, namespaces, fn){
if (this.nodeName.toLowerCase() !== "form") {
jQuery.event.add(this, "click.specialSubmit." + fn.guid, function (e){
var elem = _AN_Read_target("target", e), type = elem.type;
if ((type === "submit" || type === "image") && _AN_Read_length("length", jQuery(elem).closest("form"))) {
return trigger("submit", this, arguments);
}
}
);
jQuery.event.add(this, "keypress.specialSubmit." + fn.guid, function (e){
var elem = _AN_Read_target("target", e), type = elem.type;
if ((type === "text" || type === "password") && _AN_Read_length("length", jQuery(elem).closest("form")) && e.keyCode === 13) {
return trigger("submit", this, arguments);
}
}
);
}
else {
return false ;
}
}
,
remove: function (namespaces, fn){
jQuery.event.remove(this, "click.specialSubmit" + (fn? "." + fn.guid: ""));
jQuery.event.remove(this, "keypress.specialSubmit" + (fn? "." + fn.guid: ""));
}
}
;
}
if (!jQuery.support.changeBubbles) {
var formElems = /textarea|input|select/i;
function getVal(elem){
var type = elem.type, val = elem.value;
if (type === "radio" || type === "checkbox") {
val = elem.checked;
}
else if (type === "select-multiple") {
val = elem.selectedIndex > -1? jQuery.map(elem.options, function (elem){
return elem.selected;
}
).join("-"): "";
}
else if (elem.nodeName.toLowerCase() === "select") {
val = elem.selectedIndex;
}
return val;
}
function testChange(e){
var elem = _AN_Read_target("target", e), data, val;
if (!formElems.test(elem.nodeName) || elem.readOnly) {
return ;
}
data = jQuery.data(elem, "_change_data");
val = getVal(elem);
if (val === data) {
return ;
}
if (e.type !== "focusout" || elem.type !== "radio") {
jQuery.data(elem, "_change_data", val);
}
if (elem.type !== "select" && (data != null || val)) {
e.type = "change";
return jQuery.event.trigger(e, arguments[1], this);
}
}
jQuery.event.special.change = {
filters: {
focusout: testChange,
click: function (e){
var elem = _AN_Read_target("target", e), type = elem.type;
if (type === "radio" || type === "checkbox" || elem.nodeName.toLowerCase() === "select") {
return testChange.call(this, e);
}
}
,
keydown: function (e){
var elem = _AN_Read_target("target", e), type = elem.type;
if ((e.keyCode === 13 && elem.nodeName.toLowerCase() !== "textarea") || (e.keyCode === 32 && (type === "checkbox" || type === "radio")) || type === "select-multiple") {
return testChange.call(this, e);
}
}
,
beforeactivate: function (e){
var elem = _AN_Read_target("target", e);
if (elem.nodeName.toLowerCase() === "input" && elem.type === "radio") {
jQuery.data(elem, "_change_data", getVal(elem));
}
}
}
,
setup: function (data, namespaces, fn){
for (var type in changeFilters){
jQuery.event.add(this, type + ".specialChange." + fn.guid, changeFilters[type]);
}
return formElems.test(this.nodeName);
}
,
remove: function (namespaces, fn){
for (var type in changeFilters){
jQuery.event.remove(this, type + ".specialChange" + (fn? "." + fn.guid: ""), changeFilters[type]);
}
return formElems.test(this.nodeName);
}
}
;
var changeFilters = jQuery.event.special.change.filters;
}
function trigger(type, elem, args){
args[0].type = type;
return jQuery.event.handle.apply(elem, args);
}
if (document.addEventListener) {
jQuery.each({
focus: "focusin",
blur: "focusout"}
, function (orig, fix){
jQuery.event.special[fix] = {
setup: function (){
this.addEventListener(orig, handler, true );
}
,
teardown: function (){
this.removeEventListener(orig, handler, true );
}
}
;
function handler(e){
e = jQuery.event.fix(e);
e.type = fix;
return jQuery.event.handle.call(this, e);
}
}
);
}
jQuery.each(["bind", "one"] , function (i, name){
jQuery.fn[name] = function (type, data, fn){
if (typeof type === "object") {
for (var key in type){
this[name](key, data, type[key], fn);
}
return this;
}
if (jQuery.isFunction(data)) {
thisObject = fn;
fn = data;
data = undefined;
}
var handler = name === "one"? jQuery.proxy(fn, function (event){
jQuery(this).unbind(event, handler);
return fn.apply(this, arguments);
}
): fn;
return type === "unload" && name !== "one"? this.one(type, data, fn, thisObject): this.each(function (){
jQuery.event.add(this, type, handler, data);
}
);
}
;
}
);
jQuery.fn.extend({
unbind: function (type, fn){
if (typeof type === "object" && !type.preventDefault) {
for (var key in type){
this.unbind(key, type[key]);
}
return this;
}
return this.each(function (){
jQuery.event.remove(this, type, fn);
}
);
}
,
trigger: function (type, data){
return this.each(function (){
jQuery.event.trigger(type, data, this);
}
);
}
,
triggerHandler: function (type, data){
if (this[0]) {
var event = jQuery.Event(type);
event.preventDefault();
event.stopPropagation();
jQuery.event.trigger(event, data, this[0]);
return event.result;
}
}
,
toggle: function (fn){
var args = arguments, i = 1;
while (i < _AN_Read_length("length", args)){
jQuery.proxy(fn, args[i++ ]);
}
return this.click(jQuery.proxy(fn, function (event){
var lastToggle = (jQuery.data(this, "lastToggle" + fn.guid) || 0) % i;
jQuery.data(this, "lastToggle" + fn.guid, lastToggle + 1);
event.preventDefault();
return args[lastToggle].apply(this, arguments) || false ;
}
));
}
,
hover: function (fnOver, fnOut){
return this.mouseenter(fnOver).mouseleave(fnOut || fnOver);
}
,
live: function (type, data, fn){
if (jQuery.isFunction(data)) {
fn = data;
data = undefined;
}
jQuery(this.context).bind(liveConvert(type, this.selector), {
data: data,
selector: this.selector,
live: type}
, fn);
return this;
}
,
die: function (type, fn){
jQuery(this.context).unbind(liveConvert(type, this.selector), fn? {
guid: fn.guid + this.selector + type}
: null );
return this;
}
}
);
function liveHandler(event){
var stop = true , elems = [] , selectors = [] , args = arguments, related, match, fn, elem, j, i, data, live = jQuery.extend({
}
, jQuery.data(this, "events").live);
for (j in live){
fn = live[j];
if (fn.live === event.type || fn.altLive && jQuery.inArray(event.type, fn.altLive) > -1) {
data = fn.data;
if (!(data.beforeFilter && data.beforeFilter[event.type] && !data.beforeFilter[event.type](event))) {
selectors.push(fn.selector);
}
}
else {
delete live[j];
}
}
match = jQuery(_AN_Read_target("target", event)).closest(selectors, event.currentTarget);
for (i = 0, l = _AN_Read_length("length", match); i < l; i++ ){
for (j in live){
fn = live[j];
elem = match[i].elem;
related = null ;
if (match[i].selector === fn.selector) {
if (fn.live === "mouseenter" || fn.live === "mouseleave") {
related = jQuery(event.relatedTarget).closest(fn.selector)[0];
}
if (!related || related !== elem) {
elems.push({
elem: elem,
fn: fn}
);
}
}
}
}
for (i = 0, l = _AN_Read_length("length", elems); i < l; i++ ){
match = elems[i];
event.currentTarget = match.elem;
event.data = match.fn.data;
if (match.fn.apply(match.elem, args) === false ) {
stop = false ;
break ;
}
}
return stop;
}
function liveConvert(type, selector){
return ["live", type, _AN_Call_replace("replace", _AN_Call_replace("replace", selector, /\./g, "`"), / /g, "&")] .join(".");
}
jQuery.each(("blur focus focusin focusout load resize scroll unload click dblclick " + "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " + "change select submit keydown keypress keyup error").split(" "), function (i, name){
jQuery.fn[name] = function (fn){
return fn? this.bind(name, fn): this.trigger(name);
}
;
if (jQuery.attrFn) {
jQuery.attrFn[name] = true ;
}
}
);
if (window.attachEvent && !window.addEventListener) {
window.attachEvent("onunload", function (){
for (var id in jQuery.cache){
if (jQuery.cache[id].handle) {
try {
jQuery.event.remove(jQuery.cache[id].handle.elem);
}
catch (e) {
}
}
}
}
);
}
(function (){
var chunker = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g, done = 0, toString = Object.prototype.toString, hasDuplicate = false , baseHasDuplicate = true ;
[0, 0] .sort(function (){
baseHasDuplicate = false ;
return 0;
}
);
var Sizzle = function (selector, context, results, seed){
results = results || [] ;
var origContext = context = context || document;
if (context.nodeType !== 1 && context.nodeType !== 9) {
return [] ;
}
if (!selector || typeof selector !== "string") {
return results;
}
var parts = [] , m, set, checkSet, extra, prune = true , contextXML = isXML(context), soFar = selector;
while ((chunker.exec(""), m = chunker.exec(soFar)) !== null ){
soFar = m[3];
parts.push(m[1]);
if (m[2]) {
extra = m[3];
break ;
}
}
if (_AN_Read_length("length", parts) > 1 && origPOS.exec(selector)) {
if (_AN_Read_length("length", parts) === 2 && Expr.relative[parts[0]]) {
set = posProcess(parts[0] + parts[1], context);
}
else {
set = Expr.relative[parts[0]]? [context] : Sizzle(parts.shift(), context);
while (parts.length){
selector = parts.shift();
if (Expr.relative[selector]) {
selector += parts.shift();
}
set = posProcess(selector, set);
}
}
}
else {
if (!seed && _AN_Read_length("length", parts) > 1 && context.nodeType === 9 && !contextXML && Expr.match.ID.test(parts[0]) && !Expr.match.ID.test(parts[_AN_Read_length("length", parts) - 1])) {
var ret = Sizzle.find(parts.shift(), context, contextXML);
context = ret.expr? Sizzle.filter(ret.expr, ret.set)[0]: ret.set[0];
}
if (context) {
var ret = seed? {
expr: parts.pop(),
set: makeArray(seed)}
: Sizzle.find(parts.pop(), _AN_Read_length("length", parts) === 1 && (parts[0] === "~" || parts[0] === "+") && context.parentNode? context.parentNode: context, contextXML);
set = ret.expr? Sizzle.filter(ret.expr, ret.set): ret.set;
if (_AN_Read_length("length", parts) > 0) {
checkSet = makeArray(set);
}
else {
prune = false ;
}
while (parts.length){
var cur = parts.pop(), pop = cur;
if (!Expr.relative[cur]) {
cur = "";
}
else {
pop = parts.pop();
}
if (pop == null ) {
pop = context;
}
Expr.relative[cur](checkSet, pop, contextXML);
}
}
else {
checkSet = parts = [] ;
}
}
if (!checkSet) {
checkSet = set;
}
if (!checkSet) {
throw "Syntax error, unrecognized expression: " + (cur || selector)
}
if (toString.call(checkSet) === "[object Array]") {
if (!prune) {
results.push.apply(results, checkSet);
}
else if (context && context.nodeType === 1) {
for (var i = 0;
checkSet[i] != null ; i++ ){
if (checkSet[i] && (checkSet[i] === true || checkSet[i].nodeType === 1 && contains(context, checkSet[i]))) {
results.push(set[i]);
}
}
}
else {
for (var i = 0;
checkSet[i] != null ; i++ ){
if (checkSet[i] && checkSet[i].nodeType === 1) {
results.push(set[i]);
}
}
}
}
else {
makeArray(checkSet, results);
}
if (extra) {
Sizzle(extra, origContext, results, seed);
Sizzle.uniqueSort(results);
}
return results;
}
;
Sizzle.uniqueSort = function (results){
if (sortOrder) {
hasDuplicate = baseHasDuplicate;
results.sort(sortOrder);
if (hasDuplicate) {
for (var i = 1;
i < _AN_Read_length("length", results); i++ ){
if (results[i] === results[i - 1]) {
results.splice(i-- , 1);
}
}
}
}
return results;
}
;
Sizzle.matches = function (expr, set){
return Sizzle(expr, null , null , set);
}
;
Sizzle.find = function (expr, context, isXML){
var set, match;
if (!expr) {
return [] ;
}
for (var i = 0, l = _AN_Read_length("length", Expr.order);
i < l; i++ ){
var type = Expr.order[i], match;
if ((match = Expr.leftMatch[type].exec(expr))) {
var left = match[1];
match.splice(1, 1);
if (left.substr(_AN_Read_length("length", left) - 1) !== "\\") {
match[1] = _AN_Call_replace("replace", (match[1] || ""), /\\/g, "");
set = Expr.find[type](match, context, isXML);
if (set != null ) {
expr = _AN_Call_replace("replace", expr, Expr.match[type], "");
break ;
}
}
}
}
if (!set) {
set = _AN_Call_getelementsbytagname("getElementsByTagName", context, "*");
}
return {
set: set,
expr: expr}
;
}
;
Sizzle.filter = function (expr, set, inplace, not){
var old = expr, result = [] , curLoop = set, match, anyFound, isXMLFilter = set && set[0] && isXML(set[0]);
while (expr && _AN_Read_length("length", set)){
for (var type in Expr.filter){
if ((match = Expr.leftMatch[type].exec(expr)) != null && match[2]) {
var filter = Expr.filter[type], found, item, left = match[1];
anyFound = false ;
match.splice(1, 1);
if (left.substr(_AN_Read_length("length", left) - 1) === "\\") {
continue ;
}
if (curLoop === result) {
result = [] ;
}
if (Expr.preFilter[type]) {
match = Expr.preFilter[type](match, curLoop, inplace, result, not, isXMLFilter);
if (!match) {
anyFound = found = true ;
}
else if (match === true ) {
continue ;
}
}
if (match) {
for (var i = 0;
(item = curLoop[i]) != null ; i++ ){
if (item) {
found = filter(item, match, i, curLoop);
var pass = not ^ !!found;
if (inplace && found != null ) {
if (pass) {
anyFound = true ;
}
else {
curLoop[i] = false ;
}
}
else if (pass) {
result.push(item);
anyFound = true ;
}
}
}
}
if (found !== undefined) {
if (!inplace) {
curLoop = result;
}
expr = _AN_Call_replace("replace", expr, Expr.match[type], "");
if (!anyFound) {
return [] ;
}
break ;
}
}
}
if (expr === old) {
if (anyFound == null ) {
throw "Syntax error, unrecognized expression: " + expr
}
else {
break ;
}
}
old = expr;
}
return curLoop;
}
;
var Expr = Sizzle.selectors = {
order: ["ID", "NAME", "TAG"] ,
match: {
ID: /#((?:[\w\u00c0-\uFFFF-]|\\.)+)/,
CLASS: /\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/,
NAME: /\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/,
ATTR: /\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,
TAG: /^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/,
CHILD: /:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,
POS: /:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,
PSEUDO: /:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/}
,
leftMatch: {
}
,
attrMap: {
"class": "className",
"for": "htmlFor"}
,
attrHandle: {
href: function (elem){
return _AN_Call_getattribute("getAttribute", elem, "href");
}
}
,
relative: {
"+": function (checkSet, part){
var isPartStr = typeof part === "string", isTag = isPartStr && !/\W/.test(part), isPartStrNotTag = isPartStr && !isTag;
if (isTag) {
part = part.toLowerCase();
}
for (var i = 0, l = _AN_Read_length("length", checkSet), elem;
i < l; i++ ){
if ((elem = checkSet[i])) {
while ((elem = elem.previousSibling) && elem.nodeType !== 1){
}
checkSet[i] = isPartStrNotTag || elem && elem.nodeName.toLowerCase() === part? elem || false : elem === part;
}
}
if (isPartStrNotTag) {
Sizzle.filter(part, checkSet, true );
}
}
,
">": function (checkSet, part){
var isPartStr = typeof part === "string";
if (isPartStr && !/\W/.test(part)) {
part = part.toLowerCase();
for (var i = 0, l = _AN_Read_length("length", checkSet);
i < l; i++ ){
var elem = checkSet[i];
if (elem) {
var parent = elem.parentNode;
checkSet[i] = parent.nodeName.toLowerCase() === part? parent: false ;
}
}
}
else {
for (var i = 0, l = _AN_Read_length("length", checkSet);
i < l; i++ ){
var elem = checkSet[i];
if (elem) {
checkSet[i] = isPartStr? elem.parentNode: elem.parentNode === part;
}
}
if (isPartStr) {
Sizzle.filter(part, checkSet, true );
}
}
}
,
"": function (checkSet, part, isXML){
var doneName = done++ , checkFn = dirCheck;
if (typeof part === "string" && !/\W/.test(part)) {
var nodeCheck = part = part.toLowerCase();
checkFn = dirNodeCheck;
}
checkFn("parentNode", part, doneName, checkSet, nodeCheck, isXML);
}
,
"~": function (checkSet, part, isXML){
var doneName = done++ , checkFn = dirCheck;
if (typeof part === "string" && !/\W/.test(part)) {
var nodeCheck = part = part.toLowerCase();
checkFn = dirNodeCheck;
}
checkFn("previousSibling", part, doneName, checkSet, nodeCheck, isXML);
}
}
,
find: {
ID: function (match, context, isXML){
if (typeof context.getElementById !== "undefined" && !isXML) {
var m = context.getElementById(match[1]);
return m? [m] : [] ;
}
}
,
NAME: function (match, context){
if (typeof context.getElementsByName !== "undefined") {
var ret = [] , results = context.getElementsByName(match[1]);
for (var i = 0, l = _AN_Read_length("length", results);
i < l; i++ ){
if (_AN_Call_getattribute("getAttribute", results[i], "name") === match[1]) {
ret.push(results[i]);
}
}
return _AN_Read_length("length", ret) === 0? null : ret;
}
}
,
TAG: function (match, context){
return _AN_Call_getelementsbytagname("getElementsByTagName", context, match[1]);
}
}
,
preFilter: {
CLASS: function (match, curLoop, inplace, result, not, isXML){
match = " " + _AN_Call_replace("replace", match[1], /\\/g, "") + " ";
if (isXML) {
return match;
}
for (var i = 0, elem;
(elem = curLoop[i]) != null ; i++ ){
if (elem) {
if (not ^ (elem.className && _AN_Call_replace("replace", (" " + elem.className + " "), /[\t\n]/g, " ").indexOf(match) >= 0)) {
if (!inplace) {
result.push(elem);
}
}
else if (inplace) {
curLoop[i] = false ;
}
}
}
return false ;
}
,
ID: function (match){
return _AN_Call_replace("replace", match[1], /\\/g, "");
}
,
TAG: function (match, curLoop){
return match[1].toLowerCase();
}
,
CHILD: function (match){
if (match[1] === "nth") {
var test = /(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2] === "even" && "2n" || match[2] === "odd" && "2n+1" || !/\D/.test(match[2]) && "0n+" + match[2] || match[2]);
match[2] = (test[1] + (test[2] || 1)) - 0;
match[3] = test[3] - 0;
}
match[0] = done++ ;
return match;
}
,
ATTR: function (match, curLoop, inplace, result, not, isXML){
var name = _AN_Call_replace("replace", match[1], /\\/g, "");
if (!isXML && Expr.attrMap[name]) {
match[1] = Expr.attrMap[name];
}
if (match[2] === "~=") {
match[4] = " " + match[4] + " ";
}
return match;
}
,
PSEUDO: function (match, curLoop, inplace, result, not){
if (match[1] === "not") {
if (_AN_Read_length("length", (chunker.exec(match[3]) || "")) > 1 || /^\w/.test(match[3])) {
match[3] = Sizzle(match[3], null , null , curLoop);
}
else {
var ret = Sizzle.filter(match[3], curLoop, inplace, true ^ not);
if (!inplace) {
result.push.apply(result, ret);
}
return false ;
}
}
else if (Expr.match.POS.test(match[0]) || Expr.match.CHILD.test(match[0])) {
return true ;
}
return match;
}
,
POS: function (match){
match.unshift(true );
return match;
}
}
,
filters: {
enabled: function (elem){
return elem.disabled === false && elem.type !== "hidden";
}
,
disabled: function (elem){
return elem.disabled === true ;
}
,
checked: function (elem){
return elem.checked === true ;
}
,
selected: function (elem){
elem.parentNode.selectedIndex;
return elem.selected === true ;
}
,
parent: function (elem){
return !!elem.firstChild;
}
,
empty: function (elem){
return !elem.firstChild;
}
,
has: function (elem, i, match){
return !!_AN_Read_length("length", Sizzle(match[3], elem));
}
,
header: function (elem){
return /h\d/i.test(elem.nodeName);
}
,
text: function (elem){
return "text" === elem.type;
}
,
radio: function (elem){
return "radio" === elem.type;
}
,
checkbox: function (elem){
return "checkbox" === elem.type;
}
,
file: function (elem){
return "file" === elem.type;
}
,
password: function (elem){
return "password" === elem.type;
}
,
submit: function (elem){
return "submit" === elem.type;
}
,
image: function (elem){
return "image" === elem.type;
}
,
reset: function (elem){
return "reset" === elem.type;
}
,
button: function (elem){
return "button" === elem.type || elem.nodeName.toLowerCase() === "button";
}
,
input: function (elem){
return /input|select|textarea|button/i.test(elem.nodeName);
}
}
,
setFilters: {
first: function (elem, i){
return i === 0;
}
,
last: function (elem, i, match, array){
return i === _AN_Read_length("length", array) - 1;
}
,
even: function (elem, i){
return i % 2 === 0;
}
,
odd: function (elem, i){
return i % 2 === 1;
}
,
lt: function (elem, i, match){
return i < match[3] - 0;
}
,
gt: function (elem, i, match){
return i > match[3] - 0;
}
,
nth: function (elem, i, match){
return match[3] - 0 === i;
}
,
eq: function (elem, i, match){
return match[3] - 0 === i;
}
}
,
filter: {
PSEUDO: function (elem, match, i, array){
var name = match[1], filter = Expr.filters[name];
if (filter) {
return filter(elem, i, match, array);
}
else if (name === "contains") {
return (elem.textContent || elem.innerText || getText([elem] ) || "").indexOf(match[3]) >= 0;
}
else if (name === "not") {
var not = match[3];
for (var i = 0, l = _AN_Read_length("length", not);
i < l; i++ ){
if (not[i] === elem) {
return false ;
}
}
return true ;
}
else {
throw "Syntax error, unrecognized expression: " + name
}
}
,
CHILD: function (elem, match){
var type = match[1], node = elem;
switch (type){
case 'only': case 'first': while ((node = node.previousSibling)){
if (node.nodeType === 1) {
return false ;
}
}
if (type === "first") {
return true ;
}
node = elem;
case 'last': while ((node = node.nextSibling)){
if (node.nodeType === 1) {
return false ;
}
}
return true ;
case 'nth': var first = match[2], last = match[3];
if (first === 1 && last === 0) {
return true ;
}
var doneName = match[0], parent = elem.parentNode;
if (parent && (parent.sizcache !== doneName || !elem.nodeIndex)) {
var count = 0;
for (node = parent.firstChild; node; node = node.nextSibling){
if (node.nodeType === 1) {
node.nodeIndex = ++count;
}
}
parent.sizcache = doneName;
}
var diff = elem.nodeIndex - last;
if (first === 0) {
return diff === 0;
}
else {
return (diff % first === 0 && diff / first >= 0);
}
}
}
,
ID: function (elem, match){
return elem.nodeType === 1 && _AN_Call_getattribute('getAttribute', elem, "id") === match;
}
,
TAG: function (elem, match){
return (match === "*" && elem.nodeType === 1) || elem.nodeName.toLowerCase() === match;
}
,
CLASS: function (elem, match){
return (" " + (elem.className || _AN_Call_getattribute("getAttribute", elem, "class")) + " ").indexOf(match) > -1;
}
,
ATTR: function (elem, match){
var name = match[1], result = Expr.attrHandle[name]? Expr.attrHandle[name](elem): elem[name] != null ? elem[name]: _AN_Call_getattribute("getAttribute", elem, name), value = result + "", type = match[2], check = match[4];
return result == null ? type === "!=": type === "="? value === check: type === "*="? value.indexOf(check) >= 0: type === "~="? (" " + value + " ").indexOf(check) >= 0: !check? value && result !== false : type === "!="? value !== check: type === "^="? value.indexOf(check) === 0: type === "$="? value.substr(_AN_Read_length("length", value) - _AN_Read_length("length", check)) === check: type === "|="? value === check || value.substr(0, _AN_Read_length("length", check) + 1) === check + "-": false ;
}
,
POS: function (elem, match, i, array){
var name = match[2], filter = Expr.setFilters[name];
if (filter) {
return filter(elem, i, match, array);
}
}
}
}
;
var origPOS = Expr.match.POS;
for (var type in Expr.match){
Expr.match[type] = new RegExp(Expr.match[type].source + /(?![^\[]*\])(?![^\(]*\))/.source);
Expr.leftMatch[type] = new RegExp(/(^(?:.|\r|\n)*?)/.source + (_AN_Call_replace("replace", Expr.match[type].source, /\\(\d+)/g, function (all, num){
return "\\" + (num - 0 + 1);
}
)));
}
var makeArray = function (array, results){
array = Array.prototype.slice.call(array, 0);
if (results) {
results.push.apply(results, array);
return results;
}
return array;
}
;
try {
Array.prototype.slice.call(document.documentElement.childNodes, 0);
}
catch (e) {
makeArray = function (array, results){
var ret = results || [] ;
if (toString.call(array) === "[object Array]") {
Array.prototype.push.apply(ret, array);
}
else {
if (typeof _AN_Read_length("length", array) === "number") {
for (var i = 0, l = _AN_Read_length("length", array);
i < l; i++ ){
ret.push(array[i]);
}
}
else {
for (var i = 0;
array[i]; i++ ){
ret.push(array[i]);
}
}
}
return ret;
}
;
}
var sortOrder;
if (document.documentElement.compareDocumentPosition) {
sortOrder = function (a, b){
if (!a.compareDocumentPosition || !b.compareDocumentPosition) {
if (a == b) {
hasDuplicate = true ;
}
return a.compareDocumentPosition? -1: 1;
}
var ret = a.compareDocumentPosition(b) & 4? -1: a === b? 0: 1;
if (ret === 0) {
hasDuplicate = true ;
}
return ret;
}
;
}
else if ("sourceIndex" in document.documentElement) {
sortOrder = function (a, b){
if (!a.sourceIndex || !b.sourceIndex) {
if (a == b) {
hasDuplicate = true ;
}
return a.sourceIndex? -1: 1;
}
var ret = a.sourceIndex - b.sourceIndex;
if (ret === 0) {
hasDuplicate = true ;
}
return ret;
}
;
}
else if (document.createRange) {
sortOrder = function (a, b){
if (!a.ownerDocument || !b.ownerDocument) {
if (a == b) {
hasDuplicate = true ;
}
return a.ownerDocument? -1: 1;
}
var aRange = a.ownerDocument.createRange(), bRange = b.ownerDocument.createRange();
aRange.setStart(a, 0);
aRange.setEnd(a, 0);
bRange.setStart(b, 0);
bRange.setEnd(b, 0);
var ret = aRange.compareBoundaryPoints(Range.START_TO_END, bRange);
if (ret === 0) {
hasDuplicate = true ;
}
return ret;
}
;
}
function getText(elems){
var ret = "", elem;
for (var i = 0;
elems[i]; i++ ){
elem = elems[i];
if (elem.nodeType === 3 || elem.nodeType === 4) {
ret += _AN_Read_nodevalue("nodeValue", elem);
}
else if (elem.nodeType !== 8) {
ret += getText(elem.childNodes);
}
}
return ret;
}
(function (){
var form = _AN_Call_createelement("createElement", document, "div"), id = "script" + (new Date()).getTime();
_AN_Write_innerhtml("innerHTML", form, false , "");
var root = document.documentElement;
root.insertBefore(form, root.firstChild);
if (document.getElementById(id)) {
Expr.find.ID = function (match, context, isXML){
if (typeof context.getElementById !== "undefined" && !isXML) {
var m = context.getElementById(match[1]);
return m? m.id === match[1] || typeof m.getAttributeNode !== "undefined" && _AN_Read_nodevalue("nodeValue", m.getAttributeNode("id")) === match[1]? [m] : undefined: [] ;
}
}
;
Expr.filter.ID = function (elem, match){
var node = typeof elem.getAttributeNode !== "undefined" && elem.getAttributeNode("id");
return elem.nodeType === 1 && node && _AN_Read_nodevalue("nodeValue", node) === match;
}
;
}
root.removeChild(form);
root = form = null ;
}
)();
(function (){
var div = _AN_Call_createelement("createElement", document, "div");
_AN_Call_appendchild("appendChild", div, document.createComment(""));
if (_AN_Read_length("length", _AN_Call_getelementsbytagname("getElementsByTagName", div, "*")) > 0) {
Expr.find.TAG = function (match, context){
var results = _AN_Call_getelementsbytagname("getElementsByTagName", context, match[1]);
if (match[1] === "*") {
var tmp = [] ;
for (var i = 0;
results[i]; i++ ){
if (results[i].nodeType === 1) {
tmp.push(results[i]);
}
}
results = tmp;
}
return results;
}
;
}
_AN_Write_innerhtml("innerHTML", div, false , "");
if (div.firstChild && typeof div.firstChild.getAttribute !== "undefined" && _AN_Call_getattribute("getAttribute", div.firstChild, "href") !== "#") {
Expr.attrHandle.href = function (elem){
return _AN_Call_getattribute("getAttribute", elem, "href", 2);
}
;
}
div = null ;
}
)();
if (document.querySelectorAll) {
(function (){
var oldSizzle = Sizzle, div = _AN_Call_createelement("createElement", document, "div");
_AN_Write_innerhtml("innerHTML", div, false , "");
if (div.querySelectorAll && _AN_Read_length("length", div.querySelectorAll(".TEST")) === 0) {
return ;
}
Sizzle = function (query, context, extra, seed){
context = context || document;
if (!seed && context.nodeType === 9 && !isXML(context)) {
try {
return makeArray(context.querySelectorAll(query), extra);
}
catch (e) {
}
}
return oldSizzle(query, context, extra, seed);
}
;
for (var prop in oldSizzle){
Sizzle[prop] = oldSizzle[prop];
}
div = null ;
}
)();
}
(function (){
var div = _AN_Call_createelement("createElement", document, "div");
_AN_Write_innerhtml("innerHTML", div, false , "");
if (!div.getElementsByClassName || _AN_Read_length("length", div.getElementsByClassName("e")) === 0) {
return ;
}
div.lastChild.className = "e";
if (_AN_Read_length("length", div.getElementsByClassName("e")) === 1) {
return ;
}
Expr.order.splice(1, 0, "CLASS");
Expr.find.CLASS = function (match, context, isXML){
if (typeof context.getElementsByClassName !== "undefined" && !isXML) {
return context.getElementsByClassName(match[1]);
}
}
;
div = null ;
}
)();
function dirNodeCheck(dir, cur, doneName, checkSet, nodeCheck, isXML){
for (var i = 0, l = _AN_Read_length("length", checkSet);
i < l; i++ ){
var elem = checkSet[i];
if (elem) {
elem = elem[dir];
var match = false ;
while (elem){
if (elem.sizcache === doneName) {
match = checkSet[elem.sizset];
break ;
}
if (elem.nodeType === 1 && !isXML) {
elem.sizcache = doneName;
elem.sizset = i;
}
if (elem.nodeName.toLowerCase() === cur) {
match = elem;
break ;
}
elem = elem[dir];
}
checkSet[i] = match;
}
}
}
function dirCheck(dir, cur, doneName, checkSet, nodeCheck, isXML){
for (var i = 0, l = _AN_Read_length("length", checkSet);
i < l; i++ ){
var elem = checkSet[i];
if (elem) {
elem = elem[dir];
var match = false ;
while (elem){
if (elem.sizcache === doneName) {
match = checkSet[elem.sizset];
break ;
}
if (elem.nodeType === 1) {
if (!isXML) {
elem.sizcache = doneName;
elem.sizset = i;
}
if (typeof cur !== "string") {
if (elem === cur) {
match = true ;
break ;
}
}
else if (_AN_Read_length("length", Sizzle.filter(cur, [elem] )) > 0) {
match = elem;
break ;
}
}
elem = elem[dir];
}
checkSet[i] = match;
}
}
}
var contains = document.compareDocumentPosition? function (a, b){
return a.compareDocumentPosition(b) & 16;
}
: function (a, b){
return a !== b && (a.contains? a.contains(b): true );
}
;
var isXML = function (elem){
var documentElement = (elem? elem.ownerDocument || elem: 0).documentElement;
return documentElement? documentElement.nodeName !== "HTML": false ;
}
;
var posProcess = function (selector, context){
var tmpSet = [] , later = "", match, root = context.nodeType? [context] : context;
while ((match = Expr.match.PSEUDO.exec(selector))){
later += match[0];
selector = _AN_Call_replace("replace", selector, Expr.match.PSEUDO, "");
}
selector = Expr.relative[selector]? selector + "*": selector;
for (var i = 0, l = _AN_Read_length("length", root);
i < l; i++ ){
Sizzle(selector, root[i], tmpSet);
}
return Sizzle.filter(later, tmpSet);
}
;
jQuery.find = Sizzle;
jQuery.expr = Sizzle.selectors;
jQuery.expr[":"] = jQuery.expr.filters;
jQuery.unique = Sizzle.uniqueSort;
jQuery.getText = getText;
jQuery.isXMLDoc = isXML;
jQuery.contains = contains;
return ;
window.Sizzle = Sizzle;
}
)();
var runtil = /Until$/, rparentsprev = /^(?:parents|prevUntil|prevAll)/, rmultiselector = /,/, slice = Array.prototype.slice;
var winnow = function (elements, qualifier, keep){
if (jQuery.isFunction(qualifier)) {
return jQuery.grep(elements, function (elem, i){
return !!qualifier.call(elem, i, elem) === keep;
}
);
}
else if (qualifier.nodeType) {
return jQuery.grep(elements, function (elem, i){
return (elem === qualifier) === keep;
}
);
}
else if (typeof qualifier === "string") {
var filtered = jQuery.grep(elements, function (elem){
return elem.nodeType === 1;
}
);
if (isSimple.test(qualifier)) {
return jQuery.filter(qualifier, filtered, !keep);
}
else {
qualifier = jQuery.filter(qualifier, elements);
}
}
return jQuery.grep(elements, function (elem, i){
return (jQuery.inArray(elem, qualifier) >= 0) === keep;
}
);
}
;
jQuery.fn.extend({
find: function (selector){
var ret = this.pushStack("", "find", selector), length = 0;
for (var i = 0, l = _AN_Read_length("length", this);
i < l; i++ ){
length = _AN_Read_length("length", ret);
jQuery.find(selector, this[i], ret);
if (i > 0) {
for (var n = length;
n < _AN_Read_length("length", ret); n++ ){
for (var r = 0;
r < length; r++ ){
if (ret[r] === ret[n]) {
ret.splice(n-- , 1);
break ;
}
}
}
}
}
return ret;
}
,
has: function (target){
var targets = jQuery(target);
return this.filter(function (){
for (var i = 0, l = _AN_Read_length("length", targets);
i < l; i++ ){
if (jQuery.contains(this, targets[i])) {
return true ;
}
}
}
);
}
,
not: function (selector){
return this.pushStack(winnow(this, selector, false ), "not", selector);
}
,
filter: function (selector){
return this.pushStack(winnow(this, selector, true ), "filter", selector);
}
,
is: function (selector){
return !!selector && _AN_Read_length("length", jQuery.filter(selector, this)) > 0;
}
,
closest: function (selectors, context){
if (jQuery.isArray(selectors)) {
var ret = [] , cur = this[0], match, matches = {
}
, selector;
if (cur && _AN_Read_length("length", selectors)) {
for (var i = 0, l = _AN_Read_length("length", selectors);
i < l; i++ ){
selector = selectors[i];
if (!matches[selector]) {
matches[selector] = jQuery.expr.match.POS.test(selector)? jQuery(selector, context || this.context): selector;
}
}
while (cur && cur.ownerDocument && cur !== context){
for (selector in matches){
match = matches[selector];
if (match.jquery? match.index(cur) > -1: jQuery(cur).is(match)) {
ret.push({
selector: selector,
elem: cur}
);
delete matches[selector];
}
}
cur = cur.parentNode;
}
}
return ret;
}
var pos = jQuery.expr.match.POS.test(selectors)? jQuery(selectors, context || this.context): null ;
return this.map(function (i, cur){
while (cur && cur.ownerDocument && cur !== context){
if (pos? pos.index(cur) > -1: jQuery(cur).is(selectors)) {
return cur;
}
cur = cur.parentNode;
}
return null ;
}
);
}
,
index: function (elem){
if (!elem || typeof elem === "string") {
return jQuery.inArray(this[0], elem? jQuery(elem): this.parent().children());
}
return jQuery.inArray(elem.jquery? elem[0]: elem, this);
}
,
add: function (selector, context){
var set = typeof selector === "string"? jQuery(selector, context || this.context): jQuery.makeArray(selector), all = jQuery.merge(this.get(), set);
return this.pushStack(isDisconnected(set[0]) || isDisconnected(all[0])? all: jQuery.unique(all));
}
,
andSelf: function (){
return this.add(this.prevObject);
}
}
);
function isDisconnected(node){
return !node || !node.parentNode || node.parentNode.nodeType === 11;
}
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 jQuery.nth(elem, 2, "nextSibling");
}
,
prev: function (elem){
return jQuery.nth(elem, 2, "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.makeArray(elem.childNodes);
}
}
, function (name, fn){
jQuery.fn[name] = function (until, selector){
var ret = jQuery.map(this, fn, until);
if (!runtil.test(name)) {
selector = until;
}
if (selector && typeof selector === "string") {
ret = jQuery.filter(selector, ret);
}
ret = _AN_Read_length("length", this) > 1? jQuery.unique(ret): ret;
if ((_AN_Read_length("length", this) > 1 || rmultiselector.test(selector)) && rparentsprev.test(name)) {
ret = ret.reverse();
}
return this.pushStack(ret, name, slice.call(arguments).join(","));
}
;
}
);
jQuery.extend({
filter: function (expr, elems, not){
if (not) {
expr = ":not(" + expr + ")";
}
return jQuery.find.matches(expr, elems);
}
,
dir: function (elem, dir, until){
var matched = [] , cur = elem[dir];
while (cur && cur.nodeType !== 9 && (until === undefined || !jQuery(cur).is(until))){
if (cur.nodeType === 1) {
matched.push(cur);
}
cur = cur[dir];
}
return matched;
}
,
nth: function (cur, result, dir, elem){
result = result || 1;
var num = 0;
for (; cur; cur = cur[dir]){
if (cur.nodeType === 1 && ++num === result) {
break ;
}
}
return cur;
}
,
sibling: function (n, elem){
var r = [] ;
for (; n; n = n.nextSibling){
if (n.nodeType === 1 && n !== elem) {
r.push(n);
}
}
return r;
}
}
);
var rinlinejQuery = / jQuery\d+="(?:\d+|null)"/g, rleadingWhitespace = /^\s+/, rxhtmlTag = /(<([\w:]+)[^>]*?)\/>/g, rselfClosing = /^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i, rtagName = /<([\w:]+)/, rtbody = /" + tag + ">";
}
, wrapMap = {
option: [1, ""] ,
legend: [1, ""] ,
thead: [1, ""] ,
tr: [2, ""] ,
td: [3, ""] ,
col: [2, ""] ,
area: [1, ""] ,
_default: [0, "", ""] }
;
wrapMap.optgroup = wrapMap.option;
wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
wrapMap.th = wrapMap.td;
if (!jQuery.support.htmlSerialize) {
wrapMap._default = [1, "div", "
"] ;
}
jQuery.fn.extend({
text: function (text){
if (jQuery.isFunction(text)) {
return this.each(function (i){
var self = jQuery(this);
return self.text(text.call(this, i, self.text()));
}
);
}
if (typeof text !== "object" && text !== undefined) {
return this.empty().append((this[0] && this[0].ownerDocument || document).createTextNode(text));
}
return jQuery.getText(this);
}
,
wrapAll: function (html){
if (jQuery.isFunction(html)) {
return this.each(function (i){
jQuery(this).wrapAll(html.call(this, i));
}
);
}
if (this[0]) {
var 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.firstChild && elem.firstChild.nodeType === 1){
elem = elem.firstChild;
}
return elem;
}
).append(this);
}
return this;
}
,
wrapInner: function (html){
return this.each(function (){
var self = jQuery(this), contents = self.contents();
if (contents.length) {
contents.wrapAll(html);
}
else {
self.append(html);
}
}
);
}
,
wrap: function (html){
return this.each(function (){
jQuery(this).wrapAll(html);
}
);
}
,
unwrap: function (){
return this.parent().each(function (){
if (!jQuery.nodeName(this, "body")) {
jQuery(this).replaceWith(this.childNodes);
}
}
).end();
}
,
append: function (){
return this.domManip(arguments, true , function (elem){
if (this.nodeType === 1) {
_AN_Call_appendchild("appendChild", this, elem);
}
}
);
}
,
prepend: function (){
return this.domManip(arguments, true , function (elem){
if (this.nodeType === 1) {
this.insertBefore(elem, this.firstChild);
}
}
);
}
,
before: function (){
if (this[0] && this[0].parentNode) {
return this.domManip(arguments, false , function (elem){
this.parentNode.insertBefore(elem, this);
}
);
}
else if (arguments.length) {
var set = jQuery(arguments[0]);
set.push.apply(set, this.toArray());
return this.pushStack(set, "before", arguments);
}
}
,
after: function (){
if (this[0] && this[0].parentNode) {
return this.domManip(arguments, false , function (elem){
this.parentNode.insertBefore(elem, this.nextSibling);
}
);
}
else if (arguments.length) {
var set = this.pushStack(this, "after", arguments);
set.push.apply(set, jQuery(arguments[0]).toArray());
return set;
}
}
,
clone: function (events){
var ret = this.map(function (){
if (!jQuery.support.noCloneEvent && !jQuery.isXMLDoc(this)) {
var html = this.outerHTML, ownerDocument = this.ownerDocument;
if (!html) {
var div = _AN_Call_createelement("createElement", ownerDocument, "div");
_AN_Call_appendchild("appendChild", div, this.cloneNode(true ));
html = div.innerHTML;
}
return jQuery.clean([_AN_Call_replace("replace", _AN_Call_replace("replace", html, rinlinejQuery, ""), rleadingWhitespace, "")] , ownerDocument)[0];
}
else {
return this.cloneNode(true );
}
}
);
if (events === true ) {
cloneCopyEvent(this, ret);
cloneCopyEvent(this.find("*"), ret.find("*"));
}
return ret;
}
,
html: function (value){
if (value === undefined) {
return this[0] && this[0].nodeType === 1? _AN_Call_replace("replace", this[0].innerHTML, rinlinejQuery, ""): null ;
}
else if (typeof value === "string" && !/