//***** Functional Code - NO NEED TO CHANGE

// ** Required for Vertical and Horizontal Applications
var zxcVObj,zxcHObj,zxcTO;
var zxcEvt=0;

function zxcMse(event){
 if(!event) var event=window.event;
 if (event.clientY){ return [event.clientX+zxcDocS()[0],event.clientY+zxcDocS()[1]]; }
 else { return [zxcMseX=event.pageX,zxcMseY=event.pageY]; }
}

function zxcDocS(){
 var zxcsx,zxcsy;
 if (!window.innerHeight){ zxcsx=document.documentElement.scrollLeft; zxcsy=document.documentElement.scrollTop; }
 else { zxcsx=document.body.scrollLeft; zxcsy=document.body.scrollTop; }
 return [zxcsx,zxcsy];
}

function zxcMseUp(){
 zxcVObj=false;
 zxcHObj=false;
 clearTimeout(zxcTO);
 return false;
}

function zxcClearTimeout(){
 clearTimeout(zxcTO);
}

function zxcEventAdd(zxco,zxct,zxcf) {
 if ( zxco.addEventListener ){ zxco.addEventListener(zxct, function(e){ return zxco[zxcf](e);}, false); }
 else if ( zxco.attachEvent ){ zxco.attachEvent('on'+zxct,function(e){ return zxco[zxcf](e); }); }
 else {
  var zxcPrev=zxco["on" + zxct];
  if (zxcPrev){ zxco['on'+zxct]=function(e){ zxcPrev(e); zxco[zxcf](e); }; }
  else { zxco['on'+zxct]=zxco[zxcf]; }
 }
}

function zxcAddEvt(zxcobj,zxcfun,zxcevt){
 if (zxcobj['zxcadd'+zxcfun+zxcevt]) return;
 zxcobj['zxcadd'+zxcfun+zxcevt]=window[zxcfun];
 zxcEventAdd(zxcobj,zxcevt,'zxcadd'+zxcfun+zxcevt);
}

function zxcVHStyle(zxcobj,zxcp){
 if (zxcobj.style[zxcp.replace('-','')]) return parseInt(zxcobj.style[zxcp.replace('-','')]);
 if (zxcobj.currentStyle) return parseInt(zxcobj.currentStyle[zxcp.replace('-','')]);
 return parseInt(document.defaultView.getComputedStyle(zxcobj,null).getPropertyValue(zxcp.toLowerCase()));
}

function zxcDummyBar(zxchv){
 return zxcES('DIV',{position:'absolute',left:'0px',top:'0px',width:'20px',height:'20px'},zxcES('DIV',{position:'absolute',width:((zxchv)?500:20)+'px',height:((zxchv)?20:500)+'px'}));
}

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;
}

// ** Required for Vertical  Applications
function zxcVerticalScroll(){
 var zxcargs=zxcVerticalScroll.arguments;
 var zxccont,zxcslide,zxcbar,zxcm,zxcct;
 if (typeof(window[zxcargs[0]])=='object'){ zxccont=document.getElementById(zxcargs[0]); }
 else if (typeof(window[zxcargs[0]])=='function'){ zxccont=zxcargs[0]; }
 else { return; }
 if (zxcargs[4]!='mousedown'&&zxcargs[4]!='mouseover'){ zxcargs[4]='mousedown'; }
 zxcAddEvt(document,'zxcVScrollBar','mousemove');
 zxcAddEvt(document,'zxcMseUp','mouseup');
 var zxcbuts=[zxcargs[1],zxcargs[2],zxcargs[3]];
 var zxcdata;
 for (var zxc0=0;zxc0<zxcbuts.length;zxc0++){
  zxcbuts[zxc0]=document.getElementById(zxcbuts[zxc0]);
  if (zxc0==0){
   zxcslide=zxcbuts[zxc0]||zxcDummyBar(false);
   zxcbar=zxcslide.parentNode;
   zxcm=zxcbar.offsetHeight/2;
   zxcAddEvt(zxcslide,'zxcVSrtScroll','mousedown');
   zxcslide.onmouseout=function(event){ zxcVObj=false; }
  }
  else if (zxcbuts[zxc0]){
   zxcbuts[zxc0].slide=zxcslide;
   zxcbuts[zxc0].vdir=(zxc0==1)?-1:1;
   zxcAddEvt(zxcbuts[zxc0],'zxcVButton',zxcargs[4]);
  }
 }
 if (typeof(zxccont)=='object'){
  zxcct=zxccont.scrollHeight-zxccont.offsetHeight;
  if(zxccont.scrollHeight>zxccont.offsetHeight) zxccont.scrollTop='0';
  else zxcbar.style.visibility='hidden';
 }
 if (!zxcslide.vdata){ zxcslide.vdata=[zxcVHStyle(zxcslide,'top'),zxcVHStyle(zxcbar,'height')-zxcVHStyle(zxcslide,'height'),zxccont,zxcct,zxcargs[5]||100]; }
}

// ** Required for Vertical  Applications

function zxcVSrtScroll(zxcevt){
 zxcVObj=this;
 this.vdata[0]=zxcVHStyle(this,'top');
 this.vdata[5]=zxcMse(zxcevt)[1];
 return false;
}

function zxcVScrollBar(zxcevt){
 if (!zxcVObj){ return; }
 zxcpos=zxcMse(zxcevt)[1]-zxcVObj.vdata[5];
 zxcVContent(zxcVObj,zxcVObj.vdata[0],zxcpos);
 return false;
}

function zxcVContent(zxcobj,zxcdata,zxcpos,zxcbut){
 if (zxcdata+zxcpos>=0&&zxcdata+zxcpos<zxcobj.vdata[1]){ zxcobj.style.top=(zxcdata+zxcpos)+'px'; }
 var zxcratio=Math.max(zxcVHStyle(zxcobj,'top')/zxcobj.vdata[1],0);
 if (typeof(zxcobj.vdata[2])=='object'){ zxcobj.vdata[2].scrollTop=zxcobj.vdata[3]*zxcratio+10; }
 else if (window[zxcobj.vdata[2]]){ window[zxcobj.vdata[2]](zxcratio); }
 return false;
}

function zxcVButton(zxcevt,zxcobj,zxcspd){
 if (!zxcobj){ zxcobj=this; zxcspd=zxcobj.slide.vdata[4]; }
 if (zxcspd>2){ zxcspd--; }
 var zxcpos=zxcVHStyle(zxcobj.slide,'top')+zxcobj.vdir;
 zxcVContent(zxcobj.slide,0,zxcpos,true);
 zxcTO=setTimeout(function(){zxcVButton('',zxcobj,zxcspd)},zxcspd);
}

// ** Required for Horizontal Applications
function zxcHorizontalScroll(){
 var zxcargs=zxcHorizontalScroll.arguments;
 var zxccont,zxcslide,zxcbar,zxcm,zxcct;
 if (typeof(window[zxcargs[0]])=='object'){ zxccont=document.getElementById(zxcargs[0]);  }
 else if (typeof(window[zxcargs[0]])=='function'){ zxccont=zxcargs[0]; }
 else { return; }
 if (zxcargs[4]!='mousedown'&&zxcargs[4]!='mouseover'){ zxcargs[4]='mousedown'; }
 zxcAddEvt(document,'zxcHScrollBar','mousemove');
 zxcAddEvt(document,'zxcMseUp','mouseup');
 var zxcbuts=[zxcargs[1],zxcargs[2],zxcargs[3]];
 for (var zxc0=0;zxc0<zxcbuts.length;zxc0++){
  zxcbuts[zxc0]=document.getElementById(zxcbuts[zxc0]);
  if (zxc0==0){
   zxcslide=zxcbuts[zxc0]||zxcDummyBar(true);
   zxcbar=zxcslide.parentNode;
   zxcm=zxcbar.offsetHeight/2;
   zxcAddEvt(zxcslide,'zxcHSrtScroll','mousedown');
   zxcslide.onmouseout=function(event){ zxcVObj=false; }
  }
  else if (zxcbuts[zxc0]){
   zxcbuts[zxc0].slide=zxcslide;
   zxcbuts[zxc0].hdir=(zxc0==1)?-1:1;
   zxcAddEvt(zxcbuts[zxc0],'zxcHButton',zxcargs[4]);
  }
 }
 if (typeof(zxccont)=='object'){
  zxcct=zxccont.scrollWidth-zxccont.offsetWidth;
  if(zxccont.scrollWidth>zxccont.offsetWidth){ zxccont.scrollLeft='0'; }
  else { zxcbar.style.visibility='hidden'; }
 }
 if (!zxcslide.hdata){ zxcslide.hdata=[zxcVHStyle(zxcslide,'left'),zxcVHStyle(zxcbar,'width')-zxcVHStyle(zxcslide,'width'),zxccont,zxcct,zxcargs[5]||100]; }
}

function zxcHSrtScroll(zxcevt){
 zxcHObj=this;
 this.hdata[0]=zxcVHStyle(this,'left');
 this.hdata[5]=zxcMse(zxcevt)[0];
 return false;
}

function zxcHScrollBar(zxcevt){
 if (!zxcHObj){ return; }
 zxcpos=zxcMse(zxcevt)[0]-zxcHObj.hdata[5];
 zxcHContent(zxcHObj,zxcHObj.hdata[0],zxcpos);
}

function zxcHContent(zxcobj,zxcdata,zxcpos){
 if (zxcdata+zxcpos>=0&&zxcdata+zxcpos<zxcobj.hdata[1]){ zxcobj.style.left=(zxcdata+zxcpos)+'px'; }
 var zxcratio=Math.max(zxcVHStyle(zxcobj,'left')/zxcobj.hdata[1],0);
 if (typeof(zxcobj.hdata[2])=='object'){ zxcobj.hdata[2].scrollLeft=zxcobj.hdata[3]*zxcratio+10; }
 else if (window[zxcobj.hdata[2]]){ window[zxcobj.hdata[2]](zxcratio); }
 return false;
}

function zxcHButton(zxcevt,zxcobj,zxcspd){
 if (!zxcobj){ zxcobj=this; zxcspd=zxcobj.slide.hdata[4]; }
 if (zxcspd>2){ zxcspd--; }
 var zxcpos=zxcVHStyle(zxcobj.slide,'left')+zxcobj.hdir;
 zxcHContent(zxcobj.slide,0,zxcpos);
 zxcTO=setTimeout(function(){zxcHButton('',zxcobj,zxcspd)},zxcspd);
}

