addLoadListener(menuInit); function menuInit(){	var uls = document.getElementsByTagName("ul");		for (var i = 0; i < uls.length; i++)	{		if (uls[i].className == "navigation")		{			var listItems = getChildrenByTagName(uls[i], "li");			for (var j = 0; j < listItems.length; j++)			{				var subMenu = listItems[j].getElementsByTagName("ul");				if (subMenu.length > 0)				{					attachEventListener(listItems[j], "mouseover", mouseoverMenu, false);					attachEventListener(listItems[j], "mouseout", mouseoutMenu, false);				}			}		}	}	return true;};function mouseoverMenu(){	var subList = this.getElementsByTagName("ul")[0];	subList.style.marginTop = this.offsetHeight + "px";	if (!this.className.match(/(^| )hover( |$)/))	{		if (this.className == "")		{			this.className = "hover";		}		else		{			this.className += " hover";		}	}		return true;};function mouseoutMenu(event){	if (typeof event == "undefined")	{		event = window.event;	}		if (typeof event.relatedTarget != "undefined")	{		var related = event.relatedTarget;	}	else	{		var related = event.toElement;	}		if (isDescendantNode(related, this))	{		return true;	}	else	{		hideMenu(this);	}		return true;};function hideMenu(menuItem){	menuItem.className = menuItem.className.replace(/ hover/, "");		return true;};function getChildrenByTagName(target, tagName){	var children = target.childNodes;	var matching = new Array();		if (children != null)	{		for (var i = 0; i < children.length; i++)		{			if (children[i].nodeName.toLowerCase() == tagName)			{				matching[matching.length] = children[i];			}		}	}		return matching;};function isDescendantNode(descendant, ancestor){	while (descendant.parentNode != null && descendant.parentNode.nodeName.toLowerCase() != "#document")	{		if (descendant.parentNode == ancestor)		{			return true;		}		else		{			descendant = descendant.parentNode;		}	}		return false;};function attachEventListener(target, eventType, functionRef, capture){	if (typeof target.addEventListener != "undefined")	{		target.addEventListener(eventType, functionRef, capture);	}	else if (typeof target.attachEvent != "undefined")	{		var functionString = eventType + functionRef;		target["e" + functionString] = functionRef;        		target[functionString] = function(event)		{			if(typeof event == "undefined")			{				event = window.event			};			target["e" + functionString](event);        };        		target.attachEvent("on" + eventType, target[functionString]);	}	else	{		eventType = "on" + eventType;		if (typeof target[eventType] == "function")		{			var oldListener = target[eventType];			target[eventType] = function()			{				oldListener();				return functionRef();			}		}		else		{			target[eventType] = functionRef;		}	}	return true;};
