	// Smooth floating div script

	var topMargin = 87
	var slideTime = 1200
	var ns6 = (!document.all && document.getElementById); 
	var ie4 = (document.all);
	var ns4 = (document.layers);
	window.setInterval("main()", 10) 

	function floatObject() { 
		if (ns4 || ns6) {
			findHt = window.innerHeight; 
		} else if(ie4) {
			findHt = document.body.clientHeight;
		}
	} 

	function main() { 
		if (ns4) { 
			this.currentY = document.floatLayer.top; 
			this.scrollTop = window.pageYOffset;
			mainTrigger();
		} else if(ns6) {
			this.currentY = parseInt(document.getElementById('floatLayer').style.top); 
			this.scrollTop = scrollY;
			mainTrigger(); 
		} else if(ie4) { 
			this.currentY = floatLayer.style.pixelTop;
			this.scrollTop = document.body.scrollTop; 
			mainTrigger();
		} 
	} 

	function mainTrigger() { 
		var newTargetY = this.scrollTop + this.topMargin 
		if ( this.currentY != newTargetY ) { 
			if ( newTargetY != this.targetY ) { 
				this.targetY = newTargetY
				floatStart(); 
			} 
			animator(); 
		} 
	} 

	function floatStart() { 
		var now = new Date() 
		this.A = this.targetY - this.currentY 
		this.B = Math.PI / ( 2 * this.slideTime ) 
		this.C = now.getTime() 
		if (Math.abs(this.A) > this.findHt) { 
			this.D = this.A > 0 ? this.targetY - this.findHt : this.targetY + this.findHt 
			this.A = this.A > 0 ? this.findHt : -this.findHt 
		} else { 
			this.D = this.currentY 
		} 
	} 

	function animator() { 
		var now = new Date() 
		var newY = this.A * Math.sin( this.B * ( now.getTime() - this.C ) ) + this.D 
		newY = Math.round(newY) 
		if (( this.A > 0 && newY > this.currentY ) || ( this.A < 0 && newY < this.currentY )) { 
		if ( ie4 )floatLayer.style.pixelTop = newY 
		if ( ns4 )document.floatLayer.top = newY
		if ( ns6 )document.getElementById('floatLayer').style.top = newY + "px" 
		} 
	}
