var who = null;
sfHover = function()
{
  var sfEls = document.getElementById('menu').getElementsByTagName('LI');
  for (var i = 0; i < sfEls.length; i++) {
    if (sfEls[i].className != '' && sfEls[i].className != 'level2')
    {
      sfEls[i].test = true;
      sfEls[i].timer = null;
      var reg = new RegExp('function.+\n\{\n(.+)\n\}');
      sfEls[i].oldOnmouseover = '';//sfEls[i].onmouseover.toString().replace(reg, '$1');
      sfEls[i].oldOnmouseout = '';//sfEls[i].onmouseout.toString().replace(reg, '$1');
      sfEls[i].unSfHover = function()
      {
        this.test = true;
        this.className = this.className.replace(new RegExp(' sfhover\\b'), '');
        eval(this.oldOnmouseout);
        clearTimeout(this.timer);
      }
      sfEls[i].onmouseover = function() {
        if (this.test) {
          if (who) who.unSfHover();
          this.className += ' sfhover';
          this.test = false;
          who = this;
          eval(this.oldOnmouseover);
        }
        if (this.timer) { clearTimeout(this.timer); }
      }
      sfEls[i].onmouseout = function() {
        eval(this.obj+'=this');
        this.timer = setTimeout(this.obj + '.unSfHover()', 500);
      }
    }
  }
}

if (window.attachEvent) window.attachEvent('onload', sfHover);
