// version 1.0
<!--
		var intervalObj;
		var intervalID = null;
		var showIntID = null;
		var initialized = false;
		var targetObj;
		var readingObj;
		var targetParentObj;
		var command = "out";
		var totalOffsetLeft;
		var totalOffsetTop;
		var imgCursor;
		var cursorOffsetX;
		var cursorOffsetY;
		var cursorRightBound, cursorBottomBound;
		var IE = document.all?true:false;
		var SAFARI = navigator.userAgent.indexOf("Safari")!= -1?true:false;
		
		
		function init(){
			if(document.getElementById){
				
				imgCursor = document.getElementById('cursor');
				imgCursor.style.visibility = "hidden"; 
				targetObj = document.getElementById('zoomedIMG');
				readingObj = document.getElementById('hotArea');
				targetParentObj = document.getElementById('zoomContainer');
				imgCursor.style.width = (targetParentObj.offsetWidth/ImgMultiplier)+"px";
				imgCursor.style.height = (targetParentObj.offsetHeight/ImgMultiplier)+"px";	
					
				cursorOffsetX = imgCursor.offsetWidth / 2;
				cursorOffsetY = imgCursor.offsetHeight / 2;
		


				totalOffsetTop = readingObj.offsetTop + readingObj.offsetParent.offsetTop;
				totalOffsetLeft = getXOffset(readingObj);

				cursorRightBound = ((correctPosition(readingObj,totalOffsetLeft,"Left") + readingObj.offsetWidth)-imgCursor.offsetWidth);
				cursorBottomBound = ((readingObj.offsetTop + readingObj.offsetHeight)-imgCursor.offsetHeight);
				
				if (!IE) document.captureEvents(Event.MOUSEMOVE);
				document.onmousemove = getMouseXY;
				
				initialized = true;

			} 
		}

		function getXOffset(elementObj){
			var xOffset;
				if(IE){
					var oElement = elementObj;
					xOffset = 0;
					while(oElement.offsetParent) {
						xOffset += oElement['offsetLeft'];
						oElement = oElement.offsetParent;
					}
				} else {
					xOffset = readingObj.offsetLeft + readingObj.offsetParent.offsetLeft;
				}
				return xOffset;
		}
		
		
		// create synthetic mouse event for overcoming scroll issues
		if(IE){
			//var mouseEvt = document.createEvent("MouseEvents");
			//mouseEvt.initMouseEvent("mousemove",true,false,window,1,0,0,0,0,false,false,false,false,0,null);
		} else {
		
		}

		function createMouseEvent(){
			//if(IE)document.dispatchEvent(mouseEvt);
		}
		
		function getMouseXY(e) {
			var tempX;
			var tempY;
			
			totalOffsetLeft = getXOffset(readingObj);
			
			if (IE) { // grab the x-y pos.s if browser is IE
				if(document.compatMode == "CSS1Compat"){
					tempX = event.clientX + document.body.parentNode.scrollLeft + readingObj.offsetLeft;
					tempY = event.clientY + document.body.parentNode.scrollTop + readingObj.offsetTop;
				} else {
					tempY = event.clientY + document.body.scrollTop + readingObj.offsetTop;
					tempX = event.clientX + document.body.scrollLeft + readingObj.offsetLeft;				
				}
				
			} else {  // grab the x-y pos.s if browser is NS
				tempX = e.pageX;
				tempY = e.pageY;
			}  
			if (tempX < 0){
				tempX = 0;
			}
			if (tempY < 0){
				tempY = 0;
			} 
			positionCursor(tempX, tempY);
			return true;
		}

		function positionCursor(tempX, tempY){
		//document.formf.imageY.value = imgCursor.offsetLeft + " : " +cursorRightBound;
		//document.formf.imageY.value = parseInt(imgCursor.offsetTop);
			if(targetObj && command == "over"){
				imgCursor.style.left = (tempX - totalOffsetLeft - cursorOffsetX) + "px";
				imgCursor.style.top = (tempY - totalOffsetTop - cursorOffsetY) + "px";
			/// cursor boundary enforcer
			
				if(imgCursor.offsetLeft < readingObj.offsetLeft) imgCursor.style.left = 0 + "px";
				if(imgCursor.offsetLeft > cursorRightBound) imgCursor.style.left = cursorRightBound + "px";
				
				//if(imgCursor.offsetTop >= 0 && imgCursor.offsetTop <= cursorBottomBound) imgCursor.style.top = (tempY - totalOffsetTop - cursorOffsetY) + "px";
				if(imgCursor.offsetTop < 0) imgCursor.style.top = 0 + "px";
				if(imgCursor.offsetTop > cursorBottomBound) imgCursor.style.top = cursorBottomBound + "px";
			/// end cursor boundary enforcer
			//works for orginial web layout
			//targetParentObj.style.left = (parseInt(imgCursor.style.left)+ totalOffsetLeft + imgCursor.offsetWidth  -(250/ImgMultiplier) -275)  +"px";

				targetParentObj.style.left = (parseInt(imgCursor.style.left)+ totalOffsetLeft + imgCursor.offsetWidth +45)  +"px";
				targetParentObj.style.top = (parseInt(imgCursor.style.top)+ totalOffsetTop -75) + "px";

			/// position zoom image
				targetObj.style.left = -((imgCursor.offsetLeft-readingObj.offsetLeft) * ImgMultiplier) +"px";
				targetObj.style.top = -((imgCursor.offsetTop-readingObj.offsetTop) * ImgMultiplier) +"px";
			}
		}
		
		function showSelection(cmd){
			command = cmd;
			if(initialized){
				if(command == "over"){
					if(intervalID){
						/* ie damping circuit */
						clearInterval(intervalID);
						intervalID = null;
					}
					showIntID = setInterval("createMouseEvent()",050);
					show();
				} else {
					if(!intervalID){
						intervalID = setInterval("hide()",010);
					}
					clearInterval(showIntID);
					showIntID = null;
				}
			}
		}
		
		function hide(){
			targetParentObj.style.visibility = "hidden";
			imgCursor.style.visibility = "hidden";	
			clearInterval(intervalID);
		}
		
		function show(){
			targetParentObj.style.visibility = "visible";
			imgCursor.style.visibility = "visible"; 
		}
		
		/// pulls relative position of element pass into oElement (ie only);
		function correctPosition(oElement,oPos,oWhich) {
			while( oElement.offsetParent ) {
				oPos -= oElement['offset'+oWhich];
				oElement = oElement.offsetParent;
			}
			oPos += document.documentElement['scroll'+oWhich] ? document.documentElement['scroll'+oWhich] : document.body['scroll'+oWhich];
			return oPos;
		}

-->
