  var currentmenu='', hideTimerID, hideTimerRunning = false, showTimerID, showTimerRunning = false;
  
  function showMenu(menucode) {
   if (hideTimerRunning) {
    clearTimeout(hideTimerID);
   }
   if (showTimerRunning) {
    clearTimeout(showTimerID);
    showTimerRunning = false;
   }
   if (currentmenu != menucode) {
    hideMenu(currentmenu, false);
    setLeftTopVis('submenu'+menucode,getLeft('menu'+menucode),getTop('menu'+menucode)+9+getLayerHeight('menu'+menucode),'visible');
   }
   currentmenu = menucode;
   
  }
  
  function hideMenu(menucode, timedHide) {
   if (timedHide) {
    if (showTimerRunning) {
     clearTimeout(showTimerID);
     showTimerRunning = false;
    }
   }
   if (!isblank(currentmenu)) {
    if (timedHide) {
     hideTimerRunning = true;
     hideTimerID = setTimeout("hideMenu('"+menucode+"', false)", 500);
    } else {
     setVis('submenu'+menucode, 'hidden'); 
     currentmenu = '';
    }
   }
  }
  
  function hideMenuNow(){
   hideMenu(currentmenu, false);
  }
  
  function startHover(menuCode){
   if (showTimerRunning) {
    clearTimeout(showTimerID);
    showTimerRunning = false; // Not really needed just added for completness
   }
   showTimerID = setTimeout("showMenu('"+menuCode+"')",400)
   showTimerRunning = true;
  }