/* Copyright Avongale Ltd based on David G. Miles Courtesy of SimplytheBest.net - http://simplythebest.net/scripts/ */
<!--

var speed=2000;
var uploop, downloop, timer;
var slidestep = 50;
var slidespeed = 10;
var oldiefudge = 0;

if ((navigator.appVersion.indexOf("MSIE 7") != -1) || (navigator.appVersion.indexOf("MSIE 6") != -1) || (navigator.appVersion.indexOf("MSIE 5") != -1)) {
	oldieinit = 18;
	oldiefudge = -18;
} else {
	oldieinit = 0;
	oldiefudge = 0;
}

function ConstructObject(obj){ 
/* alert('obj='+obj); */


    this.el=document.getElementById(obj); 
    this.css=document.getElementById(obj).style;
    this.scrollHeight=this.el.offsetHeight; 
    this.clipHeight=this.el.offsetHeight; 
    this.up=MoveAreaUp; this.down=MoveAreaDown; 
    this.MoveArea=MoveArea;
    this.y=oldieinit; this.nexty=oldieinit; 
    this.timeout;
    this.obj = obj + "Object";
    eval(this.obj + "=this");
    return this;
}

function MoveArea(){
	if (Math.abs(this.y - this.nexty) <= slidestep) {
		this.y=this.nexty;
	    this.css.top=this.y+"px";
	} else {
		if (this.y < this.nexty) {
			this.y=this.y + slidestep;
		} else {
			this.y=this.y - slidestep;
		}
	    this.css.top=this.y+"px";
		setTimeout(this.obj+".MoveArea()",slidespeed);
	}
}

function MoveAreaDown(move){ 


	if ((this.y>-this.scrollHeight+objContainer.clipHeight) && (downloop)) {
	    if (this.y == this.nexty) {
	    	this.nexty = this.nexty - (move + oldiefudge);
	    	this.MoveArea();
	    	clearTimeout(this.timeout);
			this.timeout = setTimeout(this.obj+".down("+move+")",speed);
	    }
	}

}

function MoveAreaUp(move){
	if((this.y<0) && (uploop)){ 
	    if (this.y == this.nexty) {
	    	this.nexty = this.nexty + (move + oldiefudge);
	    	this.MoveArea();
			clearTimeout(this.timeout);
			this.timeout = setTimeout(this.obj+".up("+move+")",speed);
	    }
	}
} 

function PerformScroll(move){
	if(initialised){ 
		if(move>0) {
			downloop=true;
			uploop=false;
			objScroller.down(move);
		} else {
			downloop=false;
			uploop=true;
			objScroller.up(Math.abs(move));
		}
	}
}

function CeaseScroll(){ 
    downloop=false;
    uploop=false;
    if(timer) clearTimeout(timer) 
}

var initialised; 
function InitialiseScrollableArea(){ 
    objContainer=new ConstructObject('divContainer'); 
    objScroller=new ConstructObject('divContent');
/*    objScroller.MoveArea(0); */
    objContainer.css.visibility='visible';
    objScroller.css.top=objContainer.y+"px";

    initialised=true; 

} 

function displayStatusMsg(msgStr) { 
  status=msgStr;
  document.returnValue = true;
}

function preloadImages() { 
  var d=document; if(d.images){ if(!d.p) d.p=new Array();
    var i,j=d.p.length,a=preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.p[j]=new Image; d.p[j++].src=a[i];}}
}

function swapImgRestore() { 
  var i,x,a=document.sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function findObj(n, d) { 
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=findObj(n,d.layers[i].document); return x;
}

function swapImage() { 
  var i,j=0,x,a=swapImage.arguments; document.sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=findObj(a[i]))!=null){document.sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
