function zxcBAnimator(zxcmde,zxcobj,zxcsrt,zxcfin,zxctime){

 if (typeof(zxcobj)=='string'){ zxcobj=document.getElementById(zxcobj); }

 if (!zxcobj||(!zxcsrt&&!zxcfin)) return;

 var zxcoop=zxcobj[zxcmde.replace(/[-#]/g,'')+'oop'];

 if (zxcoop){

  clearTimeout(zxcoop.to);

  if (zxcoop.srtfin[0]==zxcsrt&&zxcoop.srtfin[1]==zxcfin&&zxcmde.match('#')) zxcoop.update([zxcoop.data[0],(zxcoop.srtfin[0]==zxcoop.data[2])?zxcfin:zxcsrt],zxctime);

  else zxcoop.update([zxcsrt,zxcfin],zxctime);

 }

 else zxcobj[zxcmde.replace(/[-#]/g,'')+'oop']=new zxcBAnimatorOOP(zxcmde,zxcobj,zxcsrt,zxcfin,zxctime);

}



function zxcBAnimatorOOP(zxcmde,zxcobj,zxcsrt,zxcfin,zxctime){

 this.srtfin=[zxcsrt,zxcfin];

 this.to=null;

 this.obj=zxcobj;

 this.mde=zxcmde.replace(/[-#]/g,'');

 this.update([zxcsrt,zxcfin],zxctime);

}



zxcBAnimatorOOP.prototype.update=function(zxcsrtfin,zxctime){

 this.time=zxctime||this.time||2000;

 if (zxcsrtfin[0]==zxcsrtfin[1]) return;

 this.data=[zxcsrtfin[0],zxcsrtfin[0],zxcsrtfin[1]];

 this.srttime=new Date().getTime();

 this.cng();

}



zxcBAnimatorOOP.prototype.cng=function(){

 var zxcms=new Date().getTime()-this.srttime;

 this.data[0]=(this.data[2]-this.data[1])/this.time*zxcms+this.data[1];

 if (this.mde!='opacity') this.obj.style[this.mde]=this.data[0]+'px';

 else  this.opacity(this.data[0]);

 if (zxcms<this.time) this.to=setTimeout(function(zxcoop){return function(){zxcoop.cng();}}(this), 10);

 else {

  if (this.mde!='opacity') this.obj.style[this.mde]=this.data[2]+'px';

  else  this.opacity(this.data[2]);

 }

}



zxcBAnimatorOOP.prototype.opacity=function(zxcopc){

 if (zxcopc<0||zxcopc>100){ return; }

 this.obj.style.filter='alpha(opacity='+zxcopc+')';

 this.obj.style.opacity=this.obj.style.MozOpacity=this.obj.style.KhtmlOpacity=zxcopc/100-.001;

}















function zxcSlide(zxcid,zxcspd,zxchold,zxctab){

 var zxcp=document.getElementById(zxcid);

 if (!zxcp.oop) zxcp.oop=new zxcRotate(zxcp,zxcspd,zxchold,zxctab);



}



function zxcRotate(zxcp,zxcspd,zxchold,zxctab){

 this.pages=[];

 var zxcclds=zxcp.childNodes;

 for (var zxc0=0;zxc0<zxcclds.length;zxc0++){ if (zxcclds[zxc0].nodeType!=1) zxcp.removeChild(zxcclds[zxc0]); }

 for (var zxc1=0;zxc1<zxcclds.length;zxc1++){

  zxcES(zxcclds[zxc1],{zIndex:(zxc1<zxcclds.length-1)?'0':'1',left:(zxc1<zxcclds.length-1)?zxcclds[zxc1].offsetWidth+'px':'0px'});

  zxcBAnimator('left',zxcclds[zxc1],0,(zxc1<zxcclds.length-1)?zxcclds[zxc1].offsetWidth:0,100);

  this.pages.push(zxcclds[zxc1]);

 }

 this.pages=this.pages.reverse();

 for (var zxc2=0;zxc2<this.pages.length;zxc2++) zxcES(this.pages[zxc2],{},zxcp);

 this.cnt=0;

 if (zxctab){

  this.tabs=[];

  for (var zxc3=0;zxc3<this.pages.length;zxc3++){

   this.tabs[zxc3]=zxcES('DIV',{zIndex:'3'},zxcp,zxc3+1);

   this.tabs[zxc3].className=zxctab

   zxcBAnimator('opacity',this.tabs[zxc3],50,(zxc3==0)?100:60,20);

   this.tabs[zxc3].nu=zxc3;

   this.tabs[zxc3].oop=this;

   this.tabs[zxc3].onclick=function(){ this.oop.gotopage(this); }

   if (zxc3>0) zxcES(this.tabs[zxc3],{left:this.tabs[zxc3-1].offsetLeft+this.tabs[0].offsetWidth+this.tabs[0].offsetWidth/6+'px'});

  }

 }

 this.max=zxcp.offsetWidth;

 this.lst=zxcclds[this.cnt];

 this.spd=zxcspd;

 this.hold=zxchold;

 this.to=setTimeout(function(zxcoop){return function(){zxcoop.rotate();}}(this),this.hold);

}



zxcRotate.prototype.rotate=function(zxctcnt){

 var zxclst=this.lst;

 var zxcmax=zxclst.offsetWidth;

 zxcES(zxclst,{zIndex:'0'});

 setTimeout(function(){ zxcBAnimator('left',zxclst,0,zxcmax,100); },this.spd+50);

 if (this.tabs&&!zxctcnt) zxcBAnimator('opacity',this.tabs[this.cnt],100,60,this.spd);

 if (!zxctcnt) this.cnt=++this.cnt%this.pages.length;

 this.lst=this.pages[this.cnt];

 zxcES(this.lst,{zIndex:'1'});

 zxcBAnimator('left',this.lst,zxcmax,0,this.spd);

 if (this.tabs&&!zxctcnt) zxcBAnimator('opacity',this.tabs[this.cnt],60,100,this.spd);

 this.to=setTimeout(function(zxcoop){return function(){zxcoop.rotate();}}(this),this.hold);

}



zxcRotate.prototype.gotopage=function(zxctab){

 if (this.lst.offsetLeft>0) setTimeout(function(zxcoop){return function(){zxcoop.gotopage(zxctab);}}(this),10);

 clearTimeout(this.to);

 if (zxctab.nu!=this.cnt){

  this.lst=this.pages[this.cnt];

  var zxcmax=this.lst.offsetWidth;

  zxcBAnimator('opacity',this.tabs[this.cnt],100,60,this.spd);

  this.cnt=zxctab.nu

  zxcBAnimator('opacity',this.tabs[this.cnt],60,100,this.spd);

  this.rotate(true);

 }

 else this.to=setTimeout(function(zxcoop){return function(){zxcoop.rotate();}}(this),this.hold);

}



function zxcES(zxcele,zxcstyle,zxcp,zxctxt){

 if (typeof(zxcele)=='string'){ zxcele=document.createElement(zxcele); }

 for (key in zxcstyle){ zxcele.style[key]=zxcstyle[key]; }

 if (zxcp){ zxcp.appendChild(zxcele); }

 if (zxctxt){ zxcele.appendChild(document.createTextNode(zxctxt)); }

 return zxcele;

}






