//<script>

var wagon = new Object();
wagon.howMany =   5;     
wagon.frameName = "main"; 
wagon.pixelStep = 10;
wagon.timeStep = 01; 
wagon.active = 0;
wagon.pos = 0;

wagon.start = new Object();
	wagon.start.smooth = false;
	wagon.start.bounce = false;

wagon.end = new Object(); 
	wagon.end.smooth = false;
	wagon.end.bounce = false;

wagon.offsets = new Array();
wagon.autoSize = 1024; 
wagon.useAuto = false; 

if (wagon.useAuto)
	for (var i=0; i<wagon.howMany; i++)
		wagon.offsets[i] = i*wagon.autoSize;
else { 
	wagon.offsets[00] = 0;
	wagon.offsets[01] = 1500;
	wagon.offsets[02] = 2900;
	wagon.offsets[03] = 4300;
	wagon.offsets[04] = 5800;
}

function ws(toWhichWagon) { wagonScroll(toWhichWagon); }
function wS(toWhichWagon) { wagonScroll(toWhichWagon); }
function wScroll(toWhichWagon) { wagonScroll(toWhichWagon); }
function wagon(toWhichWagon) { wagonScroll(toWhichWagon); }

function wagonScroll(toWhichWagon) {

	function scrollStep(operand, i, j) {
		setTimeout('', j);
		eval('wagon.pos' + operand + '= i;');
		eval('parent.' + wagon.frameName + '.scroll(wagon.pos,0);');
	}

	function scrollStart(toWhichWagon) {

		function smoothStart(operand) {
			for (var i=1; i<=wagon.pixelStep; i++)
				for (var j=wagon.timeStep; j>0; j--)
					scrollStep(operand, i, j);
		}

		function bounceStart(operand) {
			for (var i=Math.floor(wagon.pixelStep/2); i>0; i--)
				for (var j=wagon.timeStep; j>0; j--)
					scrollStep(operand, i, j);
		}

		if ((wagon.start.smooth) && (toWhichWagon > wagon.active)) smoothStart('+');
		if ((wagon.start.smooth) && (toWhichWagon < wagon.active)) smoothStart('-');
		if ((wagon.start.bounce) && (toWhichWagon < wagon.active)) bounceStart('+');
		if ((wagon.start.bounce) && (toWhichWagon > wagon.active)) bounceStart('-');
	}

	function scrollEnd(toWhichWagon) {

		function smoothEnd(operand) {
			for (var i=1; i<=wagon.pixelStep; i++)
				for (var j=wagon.timeStep; j>0; j--)
					scrollStep(operand, i, j);
		}

		function bounceEnd(operand) {
			for (var i=Math.floor(wagon.pixelStep/2); i>0; i--)
				for (var j=wagon.timeStep; j>0; j--)
					scrollStep(operand, i, j);
		}
		
		if ((wagon.end.smooth) && (toWhichWagon > wagon.active)) smoothEnd('-');
		if ((wagon.end.smooth) && (toWhichWagon < wagon.active)) smoothEnd('+');
		if ((wagon.end.bounce) && (toWhichWagon < wagon.active)) { bounceEnd('-'); }
		if ((wagon.end.bounce) && (toWhichWagon > wagon.active)) { bounceEnd('+'); bounceEnd('-');}
	}

	function scrollEngine(toWhichWagon) {
		if (wagon.active < toWhichWagon) {
			for (var i=wagon.pos; i<wagon.offsets[toWhichWagon]; i+=wagon.pixelStep) {
				setTimeout('', wagon.timeStep);
				eval('parent.' + wagon.frameName + '.scroll(i,0);');
				wagon.pos += wagon.pixelStep;
			}
		} else {
			for (var i=wagon.pos; i>wagon.offsets[toWhichWagon]; i-=wagon.pixelStep) {
				setTimeout('', wagon.timeStep);
				eval('parent.' + wagon.frameName + '.scroll(i,0);');
				wagon.pos -= wagon.pixelStep;
			}
		}
	}

	scrollStart(toWhichWagon);
	scrollEngine(toWhichWagon);
	scrollEnd(toWhichWagon);
	eval('parent.' + wagon.frameName + '.scroll(wagon.offsets[toWhichWagon], 0);');
	wagon.active = toWhichWagon;
	wagon.pos = wagon.offsets[wagon.active];
}

