	var currentpos=0;	 
	var finaldest = 0;
	var dir=1;	
	var speed1=220;
	var speed2=220;
	var timerID1;	
	var canvasLeft = 0;
	var canvasTop = 0;
	var canvasWidth = 0;
	var canvasHeight = 0;
	
//// SCREEN SAVER CODE ////////////////////////////////////////////////////////////////////////
	var saverTime = 0;
	var saverInterval = 30;
	var saverInterval = 10;
	var saverSpeed = 1;
	var cur_MX = 0;
	var cur_MY = 0;
	var prev_MX = 0;
	var prev_MY = 0;
	var mouseWentDown=false;
	var saverDirection = "DOWN";
	var timerID_saverCheck;	
	var timerID_saverScroll;
	var prev_Pos = -1;	
	var scroll_in_progress=false;
	
	if (document.layers) document.captureEvents(Event.MOUSEMOVE);
	document.onmousemove=mouseTrack;

	if (document.layers) document.captureEvents(Event.MOUSEDOWN);
	document.onmousedown = mouseDownSub;	
	
	function startSaver() { // Don't do the screen saver for non IE5 browsers
		if (is_ie5up || is_safari) {
			timerID_saverCheck=setInterval("screenSaverCheck()",1000)
		}
		else {
//			alert ('not is_ie5up');
		}
	}
	
	function mouseDownSub() {
		mouseWentDown = true;
		// alert('Mouse is Down');
	}

	function mouseTrack(e) {
		var text = 'Coordinates: ';
		if (document.layers) {
			cur_MX = e.pageX;
			cur_MY = e.pageY;
		}
		else {
			cur_MX = event.x;
			cur_MY = event.y;
		}
		text += cur_MX + ',' + cur_MY;
		// window.defaultStatus = text;
	}

	function screenSaverCheck () {
		saverTime++;
//		if ((cur_MX == prev_MX) && (cur_MY == prev_MY) && !mouseWentDown) {
		if ((cur_MX == prev_MX) && !mouseWentDown) {
			if (saverTime > saverInterval) {
				// alert ("saver interval elapsed, time to start screensaver to do scrollling");
				saverDirection = "DOWN";
				prev_Pos = -1;
				timerID_saverScroll=setInterval("screenSaverScroll()",10);
				clearInterval(timerID_saverCheck);
			}
		}
		else {
			saverTime = 0;
			mouseWentDown=false;
			// alert ("mouse has moved or clicked before interval elapsed, resetting timer");
		}
		prev_MX = cur_MX;
		prev_MY = cur_MY;	
	}
	
	function screenSaverScroll () {		
//		if ((cur_MX != prev_MX) || (cur_MY != prev_MY) || mouseWentDown) {
		if ((cur_MX != prev_MX) || mouseWentDown) {
		// alert ("in ScreenSaverScroll, curMX/Y, prevMX/Y= " + cur_MX + "," + cur_MY + " : " + prev_MX + ", " + prev_MY);
		// alert ("in screenSaverScroll and mouse has moved");
			timerID_saverCheck=setInterval("screenSaverCheck()",1000);
			clearInterval(timerID_saverScroll);
		}
		
		// where are we now?
		if (document.all)
			cur_Pos=document.body.scrollTop
		else
			cur_Pos=window.pageYOffset;
		
		// determine whether to reverse direction
		if      ( (prev_Pos == cur_Pos) && (saverDirection == "UP"  ) ) saverDirection = "DOWN";
		else if ( (prev_Pos == cur_Pos) && (saverDirection == "DOWN") ) saverDirection = "UP";
		
		
		// now just do the scrolling
		if (saverDirection == "UP") {		
			window.scroll(0,cur_Pos - saverSpeed);
		}
		
		if (saverDirection == "DOWN") {
			window.scroll(0,cur_Pos + saverSpeed);
		}
		prev_Pos = cur_Pos;
	}
	

/////////////////////////////////////////////////////////////////////////////////
function ie_mac_resize(wSize,sb) {
	if (is_ie && is_mac) {
		wxW = wSize;
		if (sb == 1) wxW += 15;
		if (screen.height >  1024) wxH = screen.availHeight;
		if (screen.height <= 1024) wxH = screen.height - 44;
		window.resizeTo(wxW, wxH);
	}
}
/////////////////////////////////////////////////////////////////////////////////
function getRealLeft2(imgx) {
	// alert ("getRealLeft2()");
	xPos = imgx.offsetLeft;
	tempEl = imgx.offsetParent;
  	while (tempEl != null) {
  		xPos += tempEl.offsetLeft;
  		tempEl = tempEl.offsetParent;
  	}
	return xPos;
}
/////////////////////////////////////////////////////////////////////////////////
function getRealTop2(imgx) {
	// alert ("getRealTop2()");
	yPos = imgx.offsetTop;
	tempEl = imgx.offsetParent;
	while (tempEl != null) {
  		yPos += tempEl.offsetTop;
  		tempEl = tempEl.offsetParent;
  	}
	return yPos;
}
/////////////////////////////////////////////////////////////////////////////////
function getImagePos (link_name) {	
	// alert ("getImagePos(), link_name=" + link_name);
	var holdingImage = document.images[link_name];
	// alert ("holdingImage=" + holdingImage);
	
	canvasLeft = (is_nav) ? holdingImage.x : 	getRealLeft2(holdingImage);
	canvasTop = (is_nav) ? holdingImage.y : 	getRealTop2(holdingImage);
	canvasWidth = holdingImage.width;
	canvasHeight = holdingImage.height;
	// alert ("r1 x:y:w:h=" +canvasLeft +":" +canvasTop +":" +canvasWidth +":" +canvasHeight);
}
/////////////////////////////////////////////////////////////////////////////////
function scrollwindow1(){
	// alert ("play sound here");
	if (document.all)
		temp=document.body.scrollTop
	else
		temp=window.pageYOffset
	currentpos=temp+(speed1 * dir);
	
	if (dir > 0) {
//		if (currentpos+speed1 >= finaldest) {
		if (currentpos+speed1 > finaldest) {
			currentpos = finaldest;
			clearInterval(timerID1);
			scroll_in_progress=false;
		}
	}
	else {
		if (currentpos+speed1 <= finaldest) {
			currentpos = finaldest;
			clearInterval(timerID1);
			scroll_in_progress=false;
		}
	}
	
	window.scroll(0,currentpos);
}
/////////////////////////////////////////////////////////////////////////////////
function scrollwindow2(){
	// alert ("scrollwindow2()");
	if (document.all)
		temp=document.body.scrollTop
	else
		temp=window.pageYOffset
	currentpos=temp+(speed2 * dir);
	
	// alert ("scrollwindow2: dir=" + dir + ", currentpos= " + currentpost + ", finaldest= " + finaldest);
	if (dir > 0) {
		if (currentpos+speed2 >= finaldest) {
			currentpos = finaldest;
			clearInterval(timerID1);
			scroll_in_progress=false;
		}
	}
	else {
		if (currentpos+speed2 <= finaldest) {
			currentpos = finaldest;
			clearInterval(timerID1);
			scroll_in_progress=false;
		}
	}
	
	window.scroll(0,currentpos);
}
/////////////////////////////////////////////////////////////////////////////////
function scrollToLink1 (link_im) {	
	if (!scroll_in_progress) { // no scrolling allowed if already scrolling
		scroll_in_progress=true;
		getImagePos (link_im);
		finaldest = canvasTop;
		if (document.all)
			curY=document.body.scrollTop
		else
			curY=window.pageYOffset;
		dir=1;
		if (finaldest < curY) dir = -1;
		// if (finaldest != curY) {  // commented out to fix bug of Sep 2003
			timerID1=setInterval("scrollwindow1()",165)
		// }
	}
}
/////////////////////////////////////////////////////////////////////////////////
function scrollToLink2 (link_im) {	
	if (!scroll_in_progress) { // no scrolling allowed if already scrolling
		scroll_in_progress=true;
		getImagePos (link_im);
		finaldest = canvasTop;
		
		if (document.all)
			curY=document.body.scrollTop
		else
			curY=window.pageYOffset;
		dir=1;
		if (finaldest < curY) dir = -1;
		if (finaldest != curY) 
			timerID1=setInterval("scrollwindow2()",10)
	}
}

