
if(typeof window.jQuery=="undefined"){
window.undefined=window.undefined;
var jQuery=function(a,c){
if(a&&typeof a=="function"&&jQuery.fn.ready&&!a.nodeType&&a[0]==undefined)
return jQuery(document).ready(a);
a=a||document;
if(a.jquery)
return jQuery(jQuery.merge(a,[]));
if(c&&c.jquery)
return jQuery(c).find(a);
if(window==this)
return new jQuery(a,c);
if(typeof a=="string"){
var m=/^[^<]*(<.+>)[^>]*$/.exec(a);
if(m)a=jQuery.clean([m[1]]);
}
this.set(a.constructor==Array||a.length&&a!=window&&!a.nodeType&&a[0]!=undefined&&a[0].nodeType?
jQuery.merge(a,[]):
jQuery.find(a,c));
var fn=arguments[arguments.length-1];
if(fn&&typeof fn=="function")
this.each(fn);
return this;
};
if(typeof $!="undefined")
jQuery._$=$;
var $=jQuery;
jQuery.fn=jQuery.prototype={
jquery:"1.0.4",
size:function(){
return this.length;
},
get:function(num){
return num==undefined?
jQuery.merge(this,[]):
this[num];
},
set:function(array){
this.length=0;
[].push.apply(this,array);
return this;
},
each:function(fn,args){
return jQuery.each(this,fn,args);
},
index:function(obj){
var pos=-1;
this.each(function(i){
if(this==obj)pos=i;
});
return pos;
},
attr:function(key,value,type){
return key.constructor!=String||value!=undefined?
this.each(function(){
if(value==undefined)
for(var prop in key)
jQuery.attr(
type?this.style:this,
prop,key[prop]
);
else
jQuery.attr(
type?this.style:this,
key,value
);
}):
jQuery[type||"attr"](this[0],key);
},
css:function(key,value){
return this.attr(key,value,"curCSS");
},
text:function(e){
e=e||this;
var t="";
for(var j=0;j<e.length;j++){
var r=e[j].childNodes;
for(var i=0;i<r.length;i++)
if(r[i].nodeType!=8)
t+=r[i].nodeType!=1?
r[i].nodeValue:jQuery.fn.text([r[i]]);
}
return t;
},
wrap:function(){
var a=jQuery.clean(arguments);
return this.each(function(){
var b=a[0].cloneNode(true);
this.parentNode.insertBefore(b,this);
while(b.firstChild)
b=b.firstChild;
b.appendChild(this);
});
},
append:function(){
return this.domManip(arguments,true,1,function(a){
this.appendChild(a);
});
},
prepend:function(){
return this.domManip(arguments,true,-1,function(a){
this.insertBefore(a,this.firstChild);
});
},
before:function(){
return this.domManip(arguments,false,1,function(a){
this.parentNode.insertBefore(a,this);
});
},
after:function(){
return this.domManip(arguments,false,-1,function(a){
this.parentNode.insertBefore(a,this.nextSibling);
});
},
end:function(){
if(!(this.stack&&this.stack.length))
return this;
return this.set(this.stack.pop());
},
find:function(t){
return this.pushStack(jQuery.map(this,function(a){
return jQuery.find(t,a);
}),arguments);
},
clone:function(deep){
return this.pushStack(jQuery.map(this,function(a){
return a.cloneNode(deep!=undefined?deep:true);
}),arguments);
},
filter:function(t){
return this.pushStack(
t.constructor==Array&&
jQuery.map(this,function(a){
for(var i=0;i<t.length;i++)
if(jQuery.filter(t[i],[a]).r.length)
return a;
return null;
})||
t.constructor==Boolean&&
(t?this.get():[])||
typeof t=="function"&&
jQuery.grep(this,t)||
jQuery.filter(t,this).r,arguments);
},
not:function(t){
return this.pushStack(typeof t=="string"?
jQuery.filter(t,this,false).r:
jQuery.grep(this,function(a){return a!=t;}),arguments);
},
add:function(t){
return this.pushStack(jQuery.merge(this,typeof t=="string"?
jQuery.find(t):t.constructor==Array?t:[t]),arguments);
},
is:function(expr){
return expr?jQuery.filter(expr,this).r.length>0:false;
},
domManip:function(args,table,dir,fn){
var clone=this.size()>1;
var a=jQuery.clean(args);
return this.each(function(){
var obj=this;
if(table&&this.nodeName.toUpperCase()=="TABLE"&&a[0].nodeName.toUpperCase()!="THEAD"){
var tbody=this.getElementsByTagName("tbody");
if(!tbody.length){
obj=document.createElement("tbody");
this.appendChild(obj);
}else
obj=tbody[0];
}
for(var i=(dir<0?a.length-1:0);
i!=(dir<0?dir:a.length);i+=dir){
fn.apply(obj,[clone?a[i].cloneNode(true):a[i]]);
}
});
},
pushStack:function(a,args){
var fn=args&&args[args.length-1];
var fn2=args&&args[args.length-2];
if(fn&&fn.constructor!=Function)fn=null;
if(fn2&&fn2.constructor!=Function)fn2=null;
if(!fn){
if(!this.stack)this.stack=[];
this.stack.push(this.get());
this.set(a);
}else{
var old=this.get();
this.set(a);
if(fn2&&a.length||!fn2)
this.each(fn2||fn).set(old);
else
this.set(old).each(fn);
}
return this;
}
};
jQuery.extend=jQuery.fn.extend=function(){
var target=arguments[0],
a=1;
if(arguments.length==1){
target=this;
a=0;
}
var prop;
while(prop=arguments[a++])
for(var i in prop)target[i]=prop[i];
return target;
};
jQuery.extend({
init:function(){
jQuery.initDone=true;
jQuery.each(jQuery.macros.axis,function(i,n){
jQuery.fn[i]=function(a){
var ret=jQuery.map(this,n);
if(a&&typeof a=="string")
ret=jQuery.filter(a,ret).r;
return this.pushStack(ret,arguments);
};
});
jQuery.each(jQuery.macros.to,function(i,n){
jQuery.fn[i]=function(){
var a=arguments;
return this.each(function(){
for(var j=0;j<a.length;j++)
jQuery(a[j])[n](this);
});
};
});
jQuery.each(jQuery.macros.each,function(i,n){
jQuery.fn[i]=function(){
return this.each(n,arguments);
};
});
jQuery.each(jQuery.macros.filter,function(i,n){
jQuery.fn[n]=function(num,fn){
return this.filter(":"+n+"("+num+")",fn);
};
});
jQuery.each(jQuery.macros.attr,function(i,n){
n=n||i;
jQuery.fn[i]=function(h){
return h==undefined?
this.length?this[0][n]:null:
this.attr(n,h);
};
});
jQuery.each(jQuery.macros.css,function(i,n){
jQuery.fn[n]=function(h){
return h==undefined?
(this.length?jQuery.css(this[0],n):null):
this.css(n,h);
};
});
},
each:function(obj,fn,args){
if(obj.length==undefined)
for(var i in obj)
fn.apply(obj[i],args||[i,obj[i]]);
else
for(var i=0;i<obj.length;i++)
if(fn.apply(obj[i],args||[i,obj[i]])===false)break;
return obj;
},
className:{
add:function(o,c){
if(jQuery.className.has(o,c))return;
o.className+=(o.className?" ":"")+c;
},
remove:function(o,c){
if(!c){
o.className="";
}else{
var classes=o.className.split(" ");
for(var i=0;i<classes.length;i++){
if(classes[i]==c){
classes.splice(i,1);
break;
}
}
o.className=classes.join(' ');
}
},
has:function(e,a){
if(e.className!=undefined)
e=e.className;
return new RegExp("(^|\\s)"+a+"(\\s|$)").test(e);
}
},
swap:function(e,o,f){
for(var i in o){
e.style["old"+i]=e.style[i];
e.style[i]=o[i];
}
f.apply(e,[]);
for(var i in o)
e.style[i]=e.style["old"+i];
},
css:function(e,p){
if(p=="height"||p=="width"){
var old={},oHeight,oWidth,d=["Top","Bottom","Right","Left"];
for(var i=0;i<d.length;i++){
old["padding"+d[i]]=0;
old["border"+d[i]+"Width"]=0;
}
jQuery.swap(e,old,function(){
if(jQuery.css(e,"display")!="none"){
oHeight=e.offsetHeight;
oWidth=e.offsetWidth;
}else{
e=jQuery(e.cloneNode(true))
.find(":radio").removeAttr("checked").end()
.css({
visibility:"hidden",position:"absolute",display:"block",right:"0",left:"0"
}).appendTo(e.parentNode)[0];
var parPos=jQuery.css(e.parentNode,"position");
if(parPos==""||parPos=="static")
e.parentNode.style.position="relative";
oHeight=e.clientHeight;
oWidth=e.clientWidth;
if(parPos==""||parPos=="static")
e.parentNode.style.position="static";
e.parentNode.removeChild(e);
}
});
return p=="height"?oHeight:oWidth;
}
return jQuery.curCSS(e,p);
},
curCSS:function(elem,prop,force){
var ret;
if(prop=='opacity'&&jQuery.browser.msie)
return jQuery.attr(elem.style,'opacity');
if(prop=="float"||prop=="cssFloat")
prop=jQuery.browser.msie?"styleFloat":"cssFloat";
if(!force&&elem.style[prop]){
ret=elem.style[prop];
}else if(document.defaultView&&document.defaultView.getComputedStyle){
if(prop=="cssFloat"||prop=="styleFloat")
prop="float";
prop=prop.replace(/([A-Z])/g,"-$1").toLowerCase();
var cur=document.defaultView.getComputedStyle(elem,null);
if(cur)
ret=cur.getPropertyValue(prop);
else if(prop=='display')
ret='none';
else
jQuery.swap(elem,{display:'block'},function(){
var c=document.defaultView.getComputedStyle(this,'');
ret=c&&c.getPropertyValue(prop)||'';
});
}else if(elem.currentStyle){
var newProp=prop.replace(/\-(\w)/g,function(m,c){return c.toUpperCase();});
ret=elem.currentStyle[prop]||elem.currentStyle[newProp];
}
return ret;
},
clean:function(a){
var r=[];
for(var i=0;i<a.length;i++){
var arg=a[i];
if(typeof arg=="string"){
var s=jQuery.trim(arg),div=document.createElement("div"),wrap=[0,"",""];
if(!s.indexOf("<opt"))
wrap=[1,"<select>","</select>"];
else if(!s.indexOf("<thead")||!s.indexOf("<tbody"))
wrap=[1,"<table>","</table>"];
else if(!s.indexOf("<tr"))
wrap=[2,"<table>","</table>"];
else if(!s.indexOf("<td")||!s.indexOf("<th"))
wrap=[3,"<table><tbody><tr>","</tr></tbody></table>"];
div.innerHTML=wrap[1]+s+wrap[2];
while(wrap[0]--)div=div.firstChild;
arg=div.childNodes;
}
if(arg.length!=undefined&&((jQuery.browser.safari&&typeof arg=='function')||!arg.nodeType))
for(var n=0;n<arg.length;n++)
r.push(arg[n]);
else
r.push(arg.nodeType?arg:document.createTextNode(arg.toString()));
}
return r;
},
expr:{
"":"m[2]== '*'||a.nodeName.toUpperCase()==m[2].toUpperCase()",
"#":"a.getAttribute('id')&&a.getAttribute('id')==m[2]",
":":{
lt:"i<m[3]-0",
gt:"i>m[3]-0",
nth:"m[3]-0==i",
eq:"m[3]-0==i",
first:"i==0",
last:"i==r.length-1",
even:"i%2==0",
odd:"i%2",
"nth-child":"jQuery.sibling(a,m[3]).cur",
"first-child":"jQuery.sibling(a,0).cur",
"last-child":"jQuery.sibling(a,0).last",
"only-child":"jQuery.sibling(a).length==1",
parent:"a.childNodes.length",
empty:"!a.childNodes.length",
contains:"jQuery.fn.text.apply([a]).indexOf(m[3])>=0",
visible:"a.type!='hidden'&&jQuery.css(a,'display')!='none'&&jQuery.css(a,'visibility')!='hidden'",
hidden:"a.type=='hidden'||jQuery.css(a,'display')=='none'||jQuery.css(a,'visibility')=='hidden'",
enabled:"!a.disabled",
disabled:"a.disabled",
checked:"a.checked",
selected:"a.selected || jQuery.attr(a, 'selected')",
text:"a.type=='text'",
radio:"a.type=='radio'",
checkbox:"a.type=='checkbox'",
file:"a.type=='file'",
password:"a.type=='password'",
submit:"a.type=='submit'",
image:"a.type=='image'",
reset:"a.type=='reset'",
button:"a.type=='button'",
input:"/input|select|textarea|button/i.test(a.nodeName)"
},
".":"jQuery.className.has(a,m[2])",
"@":{
"=":"z==m[4]",
"!=":"z!=m[4]",
"^=":"z && !z.indexOf(m[4])",
"$=":"z && z.substr(z.length - m[4].length,m[4].length)==m[4]",
"*=":"z && z.indexOf(m[4])>=0",
"":"z"
},
"[":"jQuery.find(m[2],a).length"
},
token:[
"\\.\\.|/\\.\\.","a.parentNode",
">|/","jQuery.sibling(a.firstChild)",
"\\+","jQuery.sibling(a).next",
"~",function(a){
var s=jQuery.sibling(a);
return s.n>=0?s.slice(s.n+1):[];
}
],
find:function(t,context){
if(context&&context.nodeType==undefined)
context=null;
context=context||document;
if(t.constructor!=String)return[t];
if(!t.indexOf("//")){
context=context.documentElement;
t=t.substr(2,t.length);
}else if(!t.indexOf("/")){
context=context.documentElement;
t=t.substr(1,t.length);
if(t.indexOf("/")>=1)
t=t.substr(t.indexOf("/"),t.length);
}
var ret=[context];
var done=[];
var last=null;
while(t.length>0&&last!=t){
var r=[];
last=t;
t=jQuery.trim(t).replace(/^\/\//i,"");
var foundToken=false;
for(var i=0;i<jQuery.token.length;i+=2){
if(foundToken)continue;
var re=new RegExp("^("+jQuery.token[i]+")");
var m=re.exec(t);
if(m){
r=ret=jQuery.map(ret,jQuery.token[i+1]);
t=jQuery.trim(t.replace(re,""));
foundToken=true;
}
}
if(!foundToken){
if(!t.indexOf(",")||!t.indexOf("|")){
if(ret[0]==context)ret.shift();
done=jQuery.merge(done,ret);
r=ret=[context];
t=" "+t.substr(1,t.length);
}else{
var re2=/^([#.]?)([a-z0-9\\*_-]*)/i;
var m=re2.exec(t);
if(m[1]=="#"){
var oid=document.getElementById(m[2]);
r=ret=oid?[oid]:[];
t=t.replace(re2,"");
}else{
if(!m[2]||m[1]==".")m[2]="*";
for(var i=0;i<ret.length;i++)
r=jQuery.merge(r,
m[2]=="*"?
jQuery.getAll(ret[i]):
ret[i].getElementsByTagName(m[2])
);
}
}
}
if(t){
var val=jQuery.filter(t,r);
ret=r=val.r;
t=jQuery.trim(val.t);
}
}
if(ret&&ret[0]==context)ret.shift();
done=jQuery.merge(done,ret);
return done;
},
getAll:function(o,r){
r=r||[];
var s=o.childNodes;
for(var i=0;i<s.length;i++)
if(s[i].nodeType==1){
r.push(s[i]);
jQuery.getAll(s[i],r);
}
return r;
},
attr:function(elem,name,value){
var fix={
"for":"htmlFor",
"class":"className",
"float":jQuery.browser.msie?"styleFloat":"cssFloat",
cssFloat:jQuery.browser.msie?"styleFloat":"cssFloat",
innerHTML:"innerHTML",
className:"className",
value:"value",
disabled:"disabled",
checked:"checked",
readonly:"readOnly"
};
if(name=="opacity"&&jQuery.browser.msie&&value!=undefined){
elem['zoom']=1;
if(value==1)
return elem["filter"]=elem["filter"].replace(/alpha\([^\)]*\)/gi,"");
else
return elem["filter"]=elem["filter"].replace(/alpha\([^\)]*\)/gi,"")+"alpha(opacity="+value*100+")";
}else if(name=="opacity"&&jQuery.browser.msie){
return elem["filter"]?parseFloat(elem["filter"].match(/alpha\(opacity=(.*)\)/)[1])/100:1;
}
if(name=="opacity"&&jQuery.browser.mozilla&&value==1)value=0.9999;
if(fix[name]){
if(value!=undefined)elem[fix[name]]=value;
return elem[fix[name]];
}else if(value==undefined&&jQuery.browser.msie&&elem.nodeName&&elem.nodeName.toUpperCase()=='FORM'&&(name=='action'||name=='method')){
return elem.getAttributeNode(name).nodeValue;
}else if(elem.tagName){
if(value!=undefined)elem.setAttribute(name,value);
return elem.getAttribute(name);
}else{
name=name.replace(/-([a-z])/ig,function(z,b){return b.toUpperCase();});
if(value!=undefined)elem[name]=value;
return elem[name];
}
},
parse:[
"\\[ *(@)S *([!*$^=]*) *('?\"?)(.*?)\\4 *\\]",
"(\\[)\s*(.*?)\s*\\]",
"(:)S\\(\"?'?([^\\)]*?)\"?'?\\)",
"([:.#]*)S"
],
filter:function(t,r,not){
var g=not!==false?jQuery.grep:
function(a,f){return jQuery.grep(a,f,true);};
while(t&&/^[a-z[({<*:.#]/i.test(t)){
var p=jQuery.parse;
for(var i=0;i<p.length;i++){
var re=new RegExp(
"^"+p[i].replace("S","([a-z*_-][a-z0-9_-]*)"),"i");
var m=re.exec(t);
if(m){
if(!i)
m=["",m[1],m[3],m[2],m[5]];
t=t.replace(re,"");
break;
}
}
if(m[1]==":"&&m[2]=="not")
r=jQuery.filter(m[3],r,false).r;
else{
var f=jQuery.expr[m[1]];
if(f.constructor!=String)
f=jQuery.expr[m[1]][m[2]];
eval("f = function(a,i){"+
(m[1]=="@"?"z=jQuery.attr(a,m[3]);":"")+
"return "+f+"}");
r=g(r,f);
}
}
return{r:r,t:t};
},
trim:function(t){
return t.replace(/^\s+|\s+$/g,"");
},
parents:function(elem){
var matched=[];
var cur=elem.parentNode;
while(cur&&cur!=document){
matched.push(cur);
cur=cur.parentNode;
}
return matched;
},
sibling:function(elem,pos,not){
var elems=[];
if(elem){
var siblings=elem.parentNode.childNodes;
for(var i=0;i<siblings.length;i++){
if(not===true&&siblings[i]==elem)continue;
if(siblings[i].nodeType==1)
elems.push(siblings[i]);
if(siblings[i]==elem)
elems.n=elems.length-1;
}
}
return jQuery.extend(elems,{
last:elems.n==elems.length-1,
cur:pos=="even"&&elems.n%2==0||pos=="odd"&&elems.n%2||elems[pos]==elem,
prev:elems[elems.n-1],
next:elems[elems.n+1]
});
},
merge:function(first,second){
var result=[];
for(var k=0;k<first.length;k++)
result[k]=first[k];
for(var i=0;i<second.length;i++){
var noCollision=true;
for(var j=0;j<first.length;j++)
if(second[i]==first[j])
noCollision=false;
if(noCollision)
result.push(second[i]);
}
return result;
},
grep:function(elems,fn,inv){
if(typeof fn=="string")
fn=new Function("a","i","return "+fn);
var result=[];
for(var i=0;i<elems.length;i++)
if(!inv&&fn(elems[i],i)||inv&&!fn(elems[i],i))
result.push(elems[i]);
return result;
},
map:function(elems,fn){
if(typeof fn=="string")
fn=new Function("a","return "+fn);
var result=[];
for(var i=0;i<elems.length;i++){
var val=fn(elems[i],i);
if(val!==null&&val!=undefined){
if(val.constructor!=Array)val=[val];
result=jQuery.merge(result,val);
}
}
return result;
},
event:{
add:function(element,type,handler){
if(jQuery.browser.msie&&element.setInterval!=undefined)
element=window;
if(!handler.guid)
handler.guid=this.guid++;
if(!element.events)
element.events={};
var handlers=element.events[type];
if(!handlers){
handlers=element.events[type]={};
if(element["on"+type])
handlers[0]=element["on"+type];
}
handlers[handler.guid]=handler;
element["on"+type]=this.handle;
if(!this.global[type])
this.global[type]=[];
this.global[type].push(element);
},
guid:1,
global:{},
remove:function(element,type,handler){
if(element.events)
if(type&&element.events[type])
if(handler)
delete element.events[type][handler.guid];
else
for(var i in element.events[type])
delete element.events[type][i];
else
for(var j in element.events)
this.remove(element,j);
},
trigger:function(type,data,element){
data=$.merge([],data||[]);
if(!element){
var g=this.global[type];
if(g)
for(var i=0;i<g.length;i++)
this.trigger(type,data,g[i]);
}else if(element["on"+type]){
data.unshift(this.fix({type:type,target:element}));
element["on"+type].apply(element,data);
}
},
handle:function(event){
if(typeof jQuery=="undefined")return false;
event=jQuery.event.fix(event||window.event||{});
if(!event)return false;
var returnValue=true;
var c=this.events[event.type];
var args=[].slice.call(arguments,1);
args.unshift(event);
for(var j in c){
if(c[j].apply(this,args)===false){
event.preventDefault();
event.stopPropagation();
returnValue=false;
}
}
if(jQuery.browser.msie)event.target=event.preventDefault=event.stopPropagation=null;
return returnValue;
},
fix:function(event){
if(jQuery.browser.msie){
if(event.srcElement)
event.target=event.srcElement;
var e=document.documentElement,b=document.body;
event.pageX=event.clientX+(e.scrollLeft||b.scrollLeft);
event.pageY=event.clientY+(e.scrollTop||b.scrollTop);
}else if(jQuery.browser.safari&&event.target.nodeType==3){
event=jQuery.extend({},event);
event.target=event.target.parentNode;
}
if(!event.preventDefault)
event.preventDefault=function(){
this.returnValue=false;
};
if(!event.stopPropagation)
event.stopPropagation=function(){
this.cancelBubble=true;
};
return event;
}
}
});
new function(){
var b=navigator.userAgent.toLowerCase();
jQuery.browser={
safari:/webkit/.test(b),
opera:/opera/.test(b),
msie:/msie/.test(b)&&!/opera/.test(b),
mozilla:/mozilla/.test(b)&&!/(compatible|webkit)/.test(b)
};
jQuery.boxModel=!jQuery.browser.msie||document.compatMode=="CSS1Compat";
};
jQuery.macros={
to:{
appendTo:"append",
prependTo:"prepend",
insertBefore:"before",
insertAfter:"after"
},
css:"width,height,top,left,position,float,overflow,color,background".split(","),
filter:["eq","lt","gt","contains"],
attr:{
val:"value",
html:"innerHTML",
id:null,
title:null,
name:null,
href:null,
src:null,
rel:null
},
axis:{
parent:"a.parentNode",
ancestors:jQuery.parents,
parents:jQuery.parents,
next:"jQuery.sibling(a).next",
prev:"jQuery.sibling(a).prev",
siblings:"jQuery.sibling(a, null, true)",
children:"jQuery.sibling(a.firstChild)"
},
each:{
removeAttr:function(key){
jQuery.attr(this,key,"");
this.removeAttribute(key);
},
show:function(){
this.style.display=this.oldblock?this.oldblock:"";
if(jQuery.css(this,"display")=="none")
this.style.display="block";
},
hide:function(){
this.oldblock=this.oldblock||jQuery.css(this,"display");
if(this.oldblock=="none")
this.oldblock="block";
this.style.display="none";
},
toggle:function(){
jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"].apply(jQuery(this),arguments);
},
addClass:function(c){
jQuery.className.add(this,c);
},
removeClass:function(c){
jQuery.className.remove(this,c);
},
toggleClass:function(c){
jQuery.className[jQuery.className.has(this,c)?"remove":"add"](this,c);
},
remove:function(a){
if(!a||jQuery.filter(a,[this]).r)
this.parentNode.removeChild(this);
},
empty:function(){
while(this.firstChild)
this.removeChild(this.firstChild);
},
bind:function(type,fn){
jQuery.event.add(this,type,fn);
},
unbind:function(type,fn){
jQuery.event.remove(this,type,fn);
},
trigger:function(type,data){
jQuery.event.trigger(type,data,this);
}
}
};
jQuery.init();
jQuery.fn.extend({
_toggle:jQuery.fn.toggle,
toggle:function(a,b){
return a&&b&&a.constructor==Function&&b.constructor==Function?this.click(function(e){
this.last=this.last==a?b:a;
e.preventDefault();
return this.last.apply(this,[e])||false;
}):
this._toggle.apply(this,arguments);
},
hover:function(f,g){
function handleHover(e){
var p=(e.type=="mouseover"?e.fromElement:e.toElement)||e.relatedTarget;
while(p&&p!=this)try{p=p.parentNode}catch(e){p=this;};
if(p==this)return false;
return(e.type=="mouseover"?f:g).apply(this,[e]);
}
return this.mouseover(handleHover).mouseout(handleHover);
},
ready:function(f){
if(jQuery.isReady)
f.apply(document);
else{
jQuery.readyList.push(f);
}
return this;
}
});
jQuery.extend({
isReady:false,
readyList:[],
ready:function(){
if(!jQuery.isReady){
jQuery.isReady=true;
if(jQuery.readyList){
for(var i=0;i<jQuery.readyList.length;i++)
jQuery.readyList[i].apply(document);
jQuery.readyList=null;
}
if(jQuery.browser.mozilla||jQuery.browser.opera)
document.removeEventListener("DOMContentLoaded",jQuery.ready,false);
}
}
});
new function(){
var e=("blur,focus,load,resize,scroll,unload,click,dblclick,"+
"mousedown,mouseup,mousemove,mouseover,mouseout,change,reset,select,"+
"submit,keydown,keypress,keyup,error").split(",");
for(var i=0;i<e.length;i++)new function(){
var o=e[i];
jQuery.fn[o]=function(f){
return f?this.bind(o,f):this.trigger(o);
};
jQuery.fn["un"+o]=function(f){return this.unbind(o,f);};
jQuery.fn["one"+o]=function(f){
var element=jQuery(this);
var handler=function(){
element.unbind(o,handler);
element=null;
return f.apply(this,arguments);
};
return this.bind(o,handler);
};
};
if(jQuery.browser.mozilla||jQuery.browser.opera){
document.addEventListener("DOMContentLoaded",jQuery.ready,false);
}else if(jQuery.browser.msie){
document.write("<scr"+"ipt id=__ie_init defer=true "+
"src=//:><\/script>");
var script=document.getElementById("__ie_init");
if(script)
script.onreadystatechange=function(){
if(this.readyState!="complete")return;
this.parentNode.removeChild(this);
jQuery.ready();
};
script=null;
}else if(jQuery.browser.safari){
jQuery.safariTimer=setInterval(function(){
if(document.readyState=="loaded"||
document.readyState=="complete"){
clearInterval(jQuery.safariTimer);
jQuery.safariTimer=null;
jQuery.ready();
}
},10);
}
jQuery.event.add(window,"load",jQuery.ready);
};
if(jQuery.browser.msie)jQuery(window).unload(function(){
var event=jQuery.event,global=event.global;
for(var type in global){
var els=global[type],i=els.length;
if(i>0)do if(type!='unload')event.remove(els[i-1],type);while(--i);
}
});
jQuery.fn.extend({
_show:jQuery.fn.show,
show:function(speed,callback){
return speed?this.animate({
height:"show",width:"show",opacity:"show"
},speed,callback):this._show();
},
_hide:jQuery.fn.hide,
hide:function(speed,callback){
return speed?this.animate({
height:"hide",width:"hide",opacity:"hide"
},speed,callback):this._hide();
},
slideDown:function(speed,callback){
return this.animate({height:"show"},speed,callback);
},
slideUp:function(speed,callback){
return this.animate({height:"hide"},speed,callback);
},
slideToggle:function(speed,callback){
return this.each(function(){
var state=jQuery(this).is(":hidden")?"show":"hide";
jQuery(this).animate({height:state},speed,callback);
});
},
fadeIn:function(speed,callback){
return this.animate({opacity:"show"},speed,callback);
},
fadeOut:function(speed,callback){
return this.animate({opacity:"hide"},speed,callback);
},
fadeTo:function(speed,to,callback){
return this.animate({opacity:to},speed,callback);
},
animate:function(prop,speed,callback){
return this.queue(function(){
this.curAnim=jQuery.extend({},prop);
for(var p in prop){
var e=new jQuery.fx(this,jQuery.speed(speed,callback),p);
if(prop[p].constructor==Number)
e.custom(e.cur(),prop[p]);
else
e[prop[p]](prop);
}
});
},
queue:function(type,fn){
if(!fn){
fn=type;
type="fx";
}
return this.each(function(){
if(!this.queue)
this.queue={};
if(!this.queue[type])
this.queue[type]=[];
this.queue[type].push(fn);
if(this.queue[type].length==1)
fn.apply(this);
});
}
});
jQuery.extend({
speed:function(s,o){
o=o||{};
if(o.constructor==Function)
o={complete:o};
var ss={slow:600,fast:200};
o.duration=(s&&s.constructor==Number?s:ss[s])||400;
o.oldComplete=o.complete;
o.complete=function(){
jQuery.dequeue(this,"fx");
if(o.oldComplete&&o.oldComplete.constructor==Function)
o.oldComplete.apply(this);
};
return o;
},
queue:{},
dequeue:function(elem,type){
type=type||"fx";
if(elem.queue&&elem.queue[type]){
elem.queue[type].shift();
var f=elem.queue[type][0];
if(f)f.apply(elem);
}
},
fx:function(elem,options,prop){
var z=this;
z.o={
duration:options.duration||400,
complete:options.complete,
step:options.step
};
z.el=elem;
var y=z.el.style;
var oldDisplay=jQuery.css(z.el,'display');
y.display="block";
y.overflow="hidden";
z.a=function(){
if(options.step)
options.step.apply(elem,[z.now]);
if(prop=="opacity")
jQuery.attr(y,"opacity",z.now);
else if(parseInt(z.now))
y[prop]=parseInt(z.now)+"px";
};
z.max=function(){
return parseFloat(jQuery.css(z.el,prop));
};
z.cur=function(){
var r=parseFloat(jQuery.curCSS(z.el,prop));
return r&&r>-10000?r:z.max();
};
z.custom=function(from,to){
z.startTime=(new Date()).getTime();
z.now=from;
z.a();
z.timer=setInterval(function(){
z.step(from,to);
},13);
};
z.show=function(){
if(!z.el.orig)z.el.orig={};
z.el.orig[prop]=this.cur();
z.o.show=true;
z.custom(0,z.el.orig[prop]);
if(prop!="opacity")
y[prop]="1px";
};
z.hide=function(){
if(!z.el.orig)z.el.orig={};
z.el.orig[prop]=this.cur();
z.o.hide=true;
z.custom(z.el.orig[prop],0);
};
z.toggle=function(){
if(!z.el.orig)z.el.orig={};
z.el.orig[prop]=this.cur();
if(oldDisplay=='none'){
z.o.show=true;
if(prop!="opacity")
y[prop]="1px";
z.custom(0,z.el.orig[prop]);
}else{
z.o.hide=true;
z.custom(z.el.orig[prop],0);
}
};
z.step=function(firstNum,lastNum){
var t=(new Date()).getTime();
if(t>z.o.duration+z.startTime){
clearInterval(z.timer);
z.timer=null;
z.now=lastNum;
z.a();
z.el.curAnim[prop]=true;
var done=true;
for(var i in z.el.curAnim)
if(z.el.curAnim[i]!==true)
done=false;
if(done){
y.overflow='';
y.display=oldDisplay;
if(jQuery.css(z.el,'display')=='none')
y.display='block';
if(z.o.hide)
y.display='none';
if(z.o.hide||z.o.show)
for(var p in z.el.curAnim)
if(p=="opacity")
jQuery.attr(y,p,z.el.orig[p]);
else
y[p]='';
}
if(done&&z.o.complete&&z.o.complete.constructor==Function)
z.o.complete.apply(z.el);
}else{
var p=(t-this.startTime)/z.o.duration;
z.now=((-Math.cos(p*Math.PI)/2)+0.5)*(lastNum-firstNum)+firstNum;
z.a();
}
};
}
});
jQuery.fn.extend({
loadIfModified:function(url,params,callback){
this.load(url,params,callback,1);
},
load:function(url,params,callback,ifModified){
if(url.constructor==Function)
return this.bind("load",url);
callback=callback||function(){};
var type="GET";
if(params){
if(params.constructor==Function){
callback=params;
params=null;
}else{
params=jQuery.param(params);
type="POST";
}
}
var self=this;
jQuery.ajax({
url:url,
type:type,
data:params,
ifModified:ifModified,
complete:function(res,status){
if(status=="success"||!ifModified&&status=="notmodified"){
self.html(res.responseText)
.evalScripts()
.each(callback,[res.responseText,status,res]);
}else
callback.apply(self,[res.responseText,status,res]);
}
});
return this;
},
serialize:function(){
return jQuery.param(this);
},
evalScripts:function(){
return this.find('script').each(function(){
if(this.src)
jQuery.getScript(this.src);
else{
jQuery.globalEval(this.text||this.textContent||this.innerHTML||"");
}
}).end();
}
});
if(jQuery.browser.msie&&typeof XMLHttpRequest=="undefined")
XMLHttpRequest=function(){
return new ActiveXObject("Microsoft.XMLHTTP");
};
new function(){
var e="ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(",");
for(var i=0;i<e.length;i++)new function(){
var o=e[i];
jQuery.fn[o]=function(f){
return this.bind(o,f);
};
};
};
jQuery.extend({
get:function(url,data,callback,type,ifModified){
if(data&&data.constructor==Function){
callback=data;
data=null;
}
jQuery.ajax({
url:url,
data:data,
success:callback,
dataType:type,
ifModified:ifModified
});
},
getIfModified:function(url,data,callback,type){
jQuery.get(url,data,callback,type,1);
},
getScript:function(url,callback){
if(callback)
jQuery.get(url,null,callback,"script");
else{
jQuery.get(url,null,null,"script");
}
},
getJSON:function(url,data,callback){
jQuery.get(url,data,callback,"json");
},
post:function(url,data,callback,type){
jQuery.ajax({
type:"POST",
url:url,
data:data,
success:callback,
dataType:type
});
},
timeout:0,
ajaxTimeout:function(timeout){
jQuery.timeout=timeout;
},
lastModified:{},
ajax:function(s){
s=jQuery.extend({
global:true,
ifModified:false,
type:"GET",
timeout:jQuery.timeout,
complete:null,
success:null,
error:null,
dataType:null,
url:null,
data:null,
contentType:"application/x-www-form-urlencoded",
processData:true,
async:true,
beforeSend:null
},s);
if(s.data){
if(s.processData&&typeof s.data!='string')
s.data=jQuery.param(s.data);
if(s.type.toLowerCase()=="get")
s.url+=((s.url.indexOf("?")>-1)?"&":"?")+s.data;
}
if(s.global&&!jQuery.active++)
jQuery.event.trigger("ajaxStart");
var requestDone=false;
var xml=new XMLHttpRequest();
xml.open(s.type,s.url,s.async);
if(s.data)
xml.setRequestHeader("Content-Type",s.contentType);
if(s.ifModified)
xml.setRequestHeader("If-Modified-Since",
jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");
xml.setRequestHeader("X-Requested-With","XMLHttpRequest");
if(xml.overrideMimeType)
xml.setRequestHeader("Connection","close");
if(s.beforeSend)
s.beforeSend(xml);
if(s.global)
jQuery.event.trigger("ajaxSend",[xml,s]);
var onreadystatechange=function(isTimeout){
if(xml&&(xml.readyState==4||isTimeout=="timeout")){
requestDone=true;
var status=jQuery.httpSuccess(xml)&&isTimeout!="timeout"?
s.ifModified&&jQuery.httpNotModified(xml,s.url)?"notmodified":"success":"error";
if(status!="error"){
var modRes;
try{
modRes=xml.getResponseHeader("Last-Modified");
}catch(e){}
if(s.ifModified&&modRes)
jQuery.lastModified[s.url]=modRes;
var data=jQuery.httpData(xml,s.dataType);
if(s.success)
s.success(data,status);
if(s.global)
jQuery.event.trigger("ajaxSuccess",[xml,s]);
}else{
if(s.error)s.error(xml,status);
if(s.global)
jQuery.event.trigger("ajaxError",[xml,s]);
}
if(s.global)
jQuery.event.trigger("ajaxComplete",[xml,s]);
if(s.global&&!--jQuery.active)
jQuery.event.trigger("ajaxStop");
if(s.complete)s.complete(xml,status);
xml.onreadystatechange=function(){};
xml=null;
}
};
xml.onreadystatechange=onreadystatechange;
if(s.timeout>0)
setTimeout(function(){
if(xml){
xml.abort();
if(!requestDone)onreadystatechange("timeout");
xml=null;
}
},s.timeout);
xml.send(s.data);
return xml;
},
active:0,
httpSuccess:function(r){
try{
return!r.status&&location.protocol=="file:"||
(r.status>=200&&r.status<300)||r.status==304||
jQuery.browser.safari&&r.status==undefined;
}catch(e){}
return false;
},
httpNotModified:function(xml,url){
try{
var xmlRes=xml.getResponseHeader("Last-Modified");
return xml.status==304||xmlRes==jQuery.lastModified[url]||
jQuery.browser.safari&&xml.status==undefined;
}catch(e){}
return false;
},
httpData:function(r,type){
var ct=r.getResponseHeader("content-type");
var data=!type&&ct&&ct.indexOf("xml")>=0;
data=type=="xml"||data?r.responseXML:r.responseText;
if(type=="script"){
jQuery.globalEval(data);
}
if(type=="json")eval("data = "+data);
if(type=="html")jQuery("<div>").html(data).evalScripts();
return data;
},
param:function(a){
var s=[];
if(a.constructor==Array||a.jquery){
for(var i=0;i<a.length;i++)
s.push(a[i].name+"="+encodeURIComponent(a[i].value));
}else{
for(var j in a){
if(a[j].constructor==Array){
for(var k=0;k<a[j].length;k++){
s.push(j+"="+encodeURIComponent(a[j][k]));
}
}else{
s.push(j+"="+encodeURIComponent(a[j]));
}
}
}
return s.join("&");
},
globalEval:function(data){
if(window.execScript)
window.execScript(data);
else if(jQuery.browser.safari)
window.setTimeout(data,0);
else
eval.call(window,data);
}
});
}
