			// currently on menu
			var currentOn = null;
			var currentTimeout = 0;
			
			function LMenu(_id, _menuId, _menu) {
				this.init(_id, _menuId, _menu);
			}
			
			LMenu.prototype.init = function(_id, _menuId, _menu) {
				this.id = _id;
				this.menu = _menu;
				_menu.switchObjId = _id;
				this.menuId = _menuId;
				var obj = this.getDomObject();
				obj.menuObject = this;
				obj.onmouseover = obj.menuObject.expand;
			}
			
			LMenu.prototype.expand = function() {
				if (currentOn != null) {
					currentOn.collapse();
				}
				this.className = 'lmenu ' + this.menuObject.menuId + 'Hi';
				this.menuObject.menu.style.visibility = 'visible';
				currentOn = this.menuObject;
				this.menuObject.menu.onmouseout = this.menuObject.resetTimeout;
				this.menuObject.menu.onmouseover = killTimeout;
			}
			
			LMenu.prototype.collapse = function() {
				this.getDomObject().className = 'lmenu ' + this.menuId;
				this.menu.style.visibility = 'hidden';
				this.menu.onmouseover = null;
				this.menu.onmouseout = null;
			}
			
			LMenu.prototype.getDomObject = function() {
				return document.getElementById(this.id);
			}
			
			LMenu.prototype.resetTimeout = function() {
				if (currentTimeout != 0) clearTimeout(currentTimeout);
				currentTimeout = setTimeout('collapseMenu("' + this.switchObjId + '")',2000);
			}
			
			function resetTimeout(menuId) {
				if (currentTimeout != 0) clearTimeout(currentTimeout);
				currentTimeout = setTimeout('collapseMenu("' + menuId + '")',2000);
			}
			
			function killTimeout() {
				if (currentTimeout != 0) clearTimeout(currentTimeout);				
			}
			
			function collapseMenu(menuId) {
				var sw = document.getElementById(menuId);
				sw.menuObject.collapse();
			}
