(function(){var d=YAHOO.util;d.Selector={_foundCache:[],_regexCache:{},_re:{nth:/^(?:([-]?\d*)(n){1}|(odd|even)$)*([-+]?\d*)$/,attr:/(\[.*\])/g,urls:/^(?:href|src)/},document:window.document,attrAliases:{},shorthand:{"\\#(-?[_a-z]+[-\\w]*)":"[id=$1]","\\.(-?[_a-z]+[-\\w]*)":"[class~=$1]"},operators:{"=":function(a,b){return a===b},"!=":function(a,b){return a!==b},"~=":function(a,b){var c=" ";return(c+a+c).indexOf(c+b+c)>-1},"|=":function(a,b){return a===b||a.slice(0,b.length+1)===b+"-"},"^=":function(a,
b){return a.indexOf(b)===0},"$=":function(a,b){return a.slice(-b.length)===b},"*=":function(a,b){return a.indexOf(b)>-1},"":function(a){return a}},pseudos:{root:function(a){return a===a.ownerDocument.documentElement},"nth-child":function(a,b){return d.Selector._getNth(a,b)},"nth-last-child":function(a,b){return d.Selector._getNth(a,b,null,true)},"nth-of-type":function(a,b){return d.Selector._getNth(a,b,a.tagName)},"nth-last-of-type":function(a,b){return d.Selector._getNth(a,b,a.tagName,true)},"first-child":function(a){return d.Selector._getChildren(a.parentNode)[0]===
a},"last-child":function(a){var b=d.Selector._getChildren(a.parentNode);return b[b.length-1]===a},"first-of-type":function(a){return d.Selector._getChildren(a.parentNode,a.tagName)[0]},"last-of-type":function(a){a=d.Selector._getChildren(a.parentNode,a.tagName);return a[a.length-1]},"only-child":function(a){var b=d.Selector._getChildren(a.parentNode);return b.length===1&&b[0]===a},"only-of-type":function(a){return d.Selector._getChildren(a.parentNode,a.tagName).length===1},empty:function(a){return a.childNodes.length===
0},not:function(a,b){return!d.Selector.test(a,b)},contains:function(a,b){a=a.innerText||a.textContent||"";return a.indexOf(b)>-1},checked:function(a){return a.checked===true}},test:function(a,b){a=d.Selector.document.getElementById(a)||a;if(!a)return false;var c=b?b.split(","):[];if(c.length){b=0;for(var e=c.length;b<e;++b)if(d.Selector._test(a,c[b]))return true;return false}return d.Selector._test(a,b)},_test:function(a,b,c,e){c=c||d.Selector._tokenize(b).pop()||{};if(!a.tagName||c.tag!=="*"&&a.tagName!==
c.tag||e&&a._found)return false;if(c.attributes.length){var g;e=d.Selector._re.urls;if(!a.attributes||!a.attributes.length)return false;b=0;for(var h;h=c.attributes[b++];){g=e.test(h[0])?2:0;g=a.getAttribute(h[0],g);if(g===null||g===undefined)return false;if(d.Selector.operators[h[1]]&&!d.Selector.operators[h[1]](g,h[2]))return false}}if(c.pseudos.length){b=0;for(e=c.pseudos.length;b<e;++b)if(d.Selector.pseudos[c.pseudos[b][0]]&&!d.Selector.pseudos[c.pseudos[b][0]](a,c.pseudos[b][1]))return false}return c.previous&&
c.previous.combinator!==","?d.Selector._combinators[c.previous.combinator](a,c):true},filter:function(a,b){a=a||[];var c;c=[];d.Selector._tokenize(b);if(!a.item)for(var e=0,g=a.length;e<g;++e)if(!a[e].tagName)if(c=d.Selector.document.getElementById(a[e]))a[e]=c;return c=d.Selector._filter(a,d.Selector._tokenize(b)[0])},_filter:function(a,b,c,e){for(var g=c?null:[],h=d.Selector._foundCache,f=0,j=a.length;f<j;f++)if(d.Selector._test(a[f],"",b,e)){if(c)return a[f];if(e){if(a[f]._found)continue;a[f]._found=
true;h[h.length]=a[f]}g[g.length]=a[f]}return g},query:function(a,b,c){return a=d.Selector._query(a,b,c)},_query:function(a,b,c,e){var g=c?null:[],h;if(!a)return g;var f=a.split(",");if(f.length>1){h=0;for(var j=f.length;h<j;++h){e=d.Selector._query(f[h],b,c,true);g=c?e:g.concat(e)}d.Selector._clearFoundCache();return g}if(b&&!b.nodeName){b=d.Selector.document.getElementById(b);if(!b)return g}b=b||d.Selector.document;if(b.nodeName!=="#document"){d.Dom.generateId(b);a=b.tagName+"#"+b.id+" "+a;h=b;
b=b.ownerDocument}var i=d.Selector._tokenize(a);f=i[d.Selector._getIdTokenIndex(i)];a=[];i=i.pop()||{};if(f)j=d.Selector._getId(f.attributes);if(j)if((h=h||d.Selector.document.getElementById(j))&&(b.nodeName==="#document"||d.Dom.isAncestor(b,h))){if(d.Selector._test(h,null,f))if(f===i)a=[h];else if(f.combinator===" "||f.combinator===">")b=h}else return g;if(b&&!a.length)a=b.getElementsByTagName(i.tag);if(a.length)g=d.Selector._filter(a,i,c,e);return g},_clearFoundCache:function(){for(var a=d.Selector._foundCache,
b=0,c=a.length;b<c;++b)try{delete a[b]._found}catch(e){a[b].removeAttribute("_found")}},_getRegExp:function(a,b){var c=d.Selector._regexCache;b=b||"";c[a+b]||(c[a+b]=new RegExp(a,b));return c[a+b]},_getChildren:function(){return document.documentElement.children&&document.documentElement.children.tags?function(a,b){return b?a.children.tags(b):a.children||[]}:function(a,b){var c=[];a=a.childNodes;for(var e=0,g=a.length;e<g;++e)if(a[e].tagName)if(!b||a[e].tagName===b)c.push(a[e]);return c}}(),_combinators:{" ":function(a,
b){for(;a=a.parentNode;)if(d.Selector._test(a,"",b.previous))return true;return false},">":function(a,b){return d.Selector._test(a.parentNode,null,b.previous)},"+":function(a,b){for(a=a.previousSibling;a&&a.nodeType!==1;)a=a.previousSibling;if(a&&d.Selector._test(a,null,b.previous))return true;return false},"~":function(a,b){for(a=a.previousSibling;a;){if(a.nodeType===1&&d.Selector._test(a,null,b.previous))return true;a=a.previousSibling}return false}},_getNth:function(a,b,c,e){d.Selector._re.nth.test(b);
b=parseInt(RegExp.$1,10);var g=RegExp.$2,h=RegExp.$3,f=parseInt(RegExp.$4,10)||0;c=d.Selector._getChildren(a.parentNode,c);if(h){b=2;f=h==="odd"?1:0}else if(isNaN(b))b=g?1:0;if(b===0){if(e)f=c.length-f+1;return c[f-1]===a?true:false}else if(b<0){e=!!e;b=Math.abs(b)}if(e){e=c.length-f;for(g=c.length;e>=0;e-=b)if(e<g&&c[e]===a)return true}else{e=f-1;for(g=c.length;e<g;e+=b)if(e>=0&&c[e]===a)return true}return false},_getId:function(a){for(var b=0,c=a.length;b<c;++b)if(a[b][0]=="id"&&a[b][1]==="=")return a[b][2]},
_getIdTokenIndex:function(a){for(var b=0,c=a.length;b<c;++b)if(d.Selector._getId(a[b].attributes))return b;return-1},_patterns:{tag:/^((?:-?[_a-z]+[\w-]*)|\*)/i,attributes:/^\[([a-z]+\w*)+([~\|\^\$\*!=]=?)?['"]?([^\]]*?)['"]?\]/i,pseudos:/^:([-\w]+)(?:\(['"]?(.+)['"]?\))*/i,combinator:/^\s*([>+~]|\s)\s*/},_tokenize:function(a){var b={},c=[],e=false,g=d.Selector._patterns,h;a=d.Selector._replaceShorthand(a);do{e=false;for(var f in g)if(YAHOO.lang.hasOwnProperty(g,f)){if(f!="tag"&&f!="combinator")b[f]=
b[f]||[];if(h=g[f].exec(a)){e=true;if(f!="tag"&&f!="combinator"){if(f==="attributes"&&h[1]==="id")b.id=h[3];b[f].push(h.slice(1))}else b[f]=h[1];a=a.replace(h[0],"");if(f==="combinator"||!a.length){b.attributes=d.Selector._fixAttributes(b.attributes);b.pseudos=b.pseudos||[];b.tag=b.tag?b.tag.toUpperCase():"*";c.push(b);b={previous:b}}}}}while(e);return c},_fixAttributes:function(a){var b=d.Selector.attrAliases;a=a||[];for(var c=0,e=a.length;c<e;++c){if(b[a[c][0]])a[c][0]=b[a[c][0]];a[c][1]||(a[c][1]=
"")}return a},_replaceShorthand:function(a){var b=d.Selector.shorthand,c=a.match(d.Selector._re.attr);if(c)a=a.replace(d.Selector._re.attr,"REPLACED_ATTRIBUTE");for(var e in b)if(YAHOO.lang.hasOwnProperty(b,e))a=a.replace(d.Selector._getRegExp(e,"gi"),b[e]);if(c){b=0;for(e=c.length;b<e;++b)a=a.replace("REPLACED_ATTRIBUTE",c[b])}return a}};if(YAHOO.env.ua.ie&&YAHOO.env.ua.ie<8){d.Selector.attrAliases["class"]="className";d.Selector.attrAliases["for"]="htmlFor"}})();
YAHOO.register("selector",YAHOO.util.Selector,{version:"2.8.0r4",build:"2449"});