
	var fmenutimer = null;
	var hideMenu = true;
	var fmenuposx = 0;
	var fmenupoxy = 0;
	var menuCount = 0;
	var menuArray = Array(10);

	function fmenu_getPos(e) { 
	  fmenuposy = 0;
	  fmenuposx = 0; 
	   myTarget = e; 
	  while(myTarget!= document.body) { 
		 fmenuposy += myTarget.offsetTop; 
		 fmenuposx += myTarget.offsetLeft; 
		 myTarget = myTarget.offsetParent; 
	  } 
	} 
	
	function fmenu_getDiv(x) {
		var y = x.parentNode;
		
		while (y != null && y.id.substr(0,5) != 'fmenu')
		{
			y = y.parentNode;
		}	
		return y;			
	}
	
	function fmenu_getDivParentDiv(x) {
	
		if (x == null || x.id == 'fmenu_top') 
		{
			return null;
		}
		else 
		{
			y = document.getElementById('fmenu_item_'+x.id.substr(6));
			if (y != null) {
				return fmenu_getDiv(y);
			} else {
				return null;
			}
		}		
	}
	
	function fmenu_hideWaste(x) {

		g = x;

		c = 0;
		m = Array(10);

		while (g != null)
		{
			m[c++] = g.id;
			g = fmenu_getDivParentDiv(g);
		}
	
		while (menuCount > 0) 
		{
			y = document.getElementById(menuArray[--menuCount]);
			if (y.id != 'fmenu_top') 
			{	
				y.style.visibility = 'hidden';
			}
		}	
	
		menuCount = c;
		menuArray = m;
	
		for (i=0;i<c;i++) {
			y = document.getElementById(menuArray[i]);
			y.style.visibility = 'visible';
		}
	
	
	}
	
	function fmenu_showsub(x) {			
		
		fmenu_getPos(x);
		
		if (x.id.substr(0,14) == 'fmenu_topitem_')
		{
			y = document.getElementById('fmenu_'+x.id.substr(14));			
			if (y != null) {
				y.style.top = fmenuposy + x.offsetHeight +2;
				y.style.left = fmenuposx;
				y.style.visibility = 'visible';				
				menuArray[menuCount++] = y.id;				
			}		
		} 
		else if (x.id.substr(0,11) == 'fmenu_item_') 
		{

			y = document.getElementById('fmenu_'+x.id.substr(11));
			if (y != null) {
				y.style.top = fmenuposy + 5;
				y.style.left = fmenuposx + x.offsetWidth -5;
				y.style.visibility = 'visible';
				menuArray[menuCount++] = y.id;
			} 
		}
		if (y != null) 
		{
			fmenu_hideWaste(y);		
		} else {
			fmenu_hideWaste(fmenu_getDiv(x));
		}	
		
	}

	function fmenu_over(x) {

		hideMenu = false;
		fmenu_showsub(x);
		
	}
	
	function fmenu_outx() {
		if (hideMenu) {
			while (menuCount > 0) 
			{
				y = document.getElementById(menuArray[--menuCount]);
				if (y.id != 'fmenu_top') 
				{	
					y.style.visibility = 'hidden';
				}
			}
		}
	}
	
	function fmenu_out(x) {
		hideMenu = true;
		clearTimeout(fmenutimer);
		fmenutimer = setTimeout('fmenu_outx()',500);
	}
