        var x, y;
	var step = 10;
	var flag = 0;
        var xpos = new Array();
        var ypos = new Array();
        var MessageLen = 0;

        function cf_init(msglen) {	
           MessageLen = msglen;
   	   xpos = new Array();
	   for (i = 0; i <= MessageLen - 1; i++) 
	   {
		xpos[i] = -50;
	   }
	   ypos = new Array();
	   for (i = 0; i <= MessageLen - 1; i++) 
	   {
		ypos[i]= -50;
	   }
        }
	
	function handlerMM(e) {
   	   x = (document.layers) ? e.pageX : document.body.scrollLeft + event.clientX;
	   y = (document.layers) ? e.pageY : document.body.scrollTop + event.clientY;
	   flag = 1;
	}
	
	function cursor_follow() 
	{
		if (flag == 1 && !document.layers) 
		{
			for (i = MessageLen - 1; i >= 1; i--) 
			{
				xpos[i] = xpos[i - 1] + step;
				ypos[i] = ypos[i - 1];
			}
			xpos[0] = x + step;
			ypos[0] = y;
			
			for (i = 0; i < MessageLen - 1; i++) 
			{
				var thisspan = eval("span" + (i) + ".style");
    	                        thisspan.posLeft = xpos[i];
				thisspan.posTop = ypos[i];
	   		}
		}
	
		else if (flag==1 && document.layers) 
		{
			for (i = MessageLen - 1; i >= 1; i--) 
			{
				xpos[i] = xpos[i - 1] + step;
				ypos[i] = ypos[i - 1];
			}
			xpos[0] = x + step;
			ypos[0] = y;
			
			for (i = 0; i < MessageLen - 1; i++) 
			{
				var thisspan = eval("document.span" + i);
				thisspan.left = xpos[i];
				thisspan.top = ypos[i];
			}
		}
		setTimeout("cursor_follow()", 5);
	}

