  var topMenus;
  var pullMenus;
  var selClassName;
  var normClassName;
  var normClassNameFirstRow;
  var normClassNameMenu;
  
  var ie=document.all;
  var IE55 = ((document.all)&&(navigator.appVersion.indexOf("MSIE 5.5")!=-1)) ? true : false;
  var IE6  = ((document.all)&&(navigator.appVersion.indexOf("MSIE 6.")!=-1)) ? true : false;
  var IE55Plus = IE55 || IE6;
  var menuTimer;
  var currentMenu, currentMenu2;
  var menuTimer;
  var firstInit=false;

  function ref (elstringid) {
    if (ie) return document.all[elstringid];
    else
    if (document.getElementById) return document.getElementById(elstringid);
  }

    function sMenu (menuID, mainMenuID) {
    var m=ref(menuID);
    var m2=ref(mainMenuID);

    if (!firstInit) {
      winResize();
      firstInit=true;
    }

    if (ie) var hidePanel=ref("HidePanel");

	  if (menuTimer) window.clearTimeout(menuTimer);

  	if (currentMenu && currentMenu.id!=m.id) {
      currentMenu.style.visibility="hidden";
 	    if (ie) hidePanel.style.visibility="hidden";
      currentMenu2.className=normClassName;
      currentMenu2.className=normClassNameFirstRow;
    }

    if (ie && IE55Plus) {
  		hidePanel.style.left=m.style.left;
    	hidePanel.style.top=m.style.top;
  	  hidePanel.style.width=m.offsetWidth;
      hidePanel.style.height=m.offsetHeight;
  	  hidePanel.style.visibility="visible";
    }

	  m.style.visibility="visible";
    m2.className=selClassName;
    m2.className=normClassName;
    m2.className=normClassNameMenu;
    
  	currentMenu = m;
  	currentMenu2 = m2;
  }

  function hMenu () {
    menuTimer = window.setTimeout("doHideMenu()",500);
  }

  function doHideMenu () {
    currentMenu.style.visibility="hidden";
    currentMenu2.className=normClassName;
    currentMenu2.className=normClassNameFirstRow;
    
      if (ie) ref("HidePanel").style.visibility="hidden";
    menuTimerRunning=false;
  }

  function sMenuItem (e) {
    var el;
    if (ie) el = event.srcElement;
    else {
      el=e.target;
      while(el.nodeType != el.ELEMENT_NODE) el = el.parentNode;
    }
    el.className=selClassName;
  }

  function hMenuItem (e) {
    var el;
    if (ie) el = event.srcElement;
    else {
      el=e.target;
      while(el.nodeType != el.ELEMENT_NODE) el = el.parentNode;
    }
    el.className=normClassName;
  }


  function syncMenuPos (menuID,syncWithID) {
    var menu=ref(menuID);
    var syncWith=ref(syncWithID);
	  var lPos = syncWith.offsetLeft;
    var tPos = syncWith.offsetTop+syncWith.offsetHeight;
    while (syncWith.offsetParent != null) {
      syncWith = syncWith.offsetParent;
      lPos += syncWith.offsetLeft;
      tPos += syncWith.offsetTop;
      if (syncWith.tagName == "BODY") break;
	  }
    menu.style.left=lPos;
    menu.style.top=tPos;
  }

  function winResize() {
    for (i=0;i<pullMenus.length; i++)
      syncMenuPos(pullMenus[i],topMenus[i]);
  }

  function initMenus() {
    var td, tds;
    for (i=0;i<pullMenus.length; i++) {
      tds = ref(pullMenus[i]).getElementsByTagName("TD");
      for (j=0;j<tds.length; j++) {
        td=tds.item(j);
        if (td.getElementsByTagName("HR").length==0) {
          td.onmouseover=sMenuItem;
          td.onmouseout=hMenuItem;
        }
      }
    }
    if (ie) document.body.onresize=winResize;
    else
    window.addEventListener("resize", winResize, true);
  }

