	function add_menu_handlers(es)
	{
		for (var i = 0; i < es.length; i++)
		{
			var ei = es.eq(i);
			if (ei.attr("tagName") != "DIV")
				continue;

			if (ei.hasClass("sub") || ei.hasClass("subsub"))
			{
				add_menu_handlers(ei.children());
				continue;
			}

			var ec = ei.children();
			if (ec.length == 0)
				continue;

			if (location.href == ec[0].href)
				parse_selected(ei);
			else
				ei.bind("mouseenter mouseleave", select_menu_item);

			ei.bind("dbclick click", click_item);
		}
	}

	function select_menu_item(eventObject)
	{
		$(this).toggleClass("mselected");
	}

	function parse_selected(el)
	{
		el.toggleClass("mselected");

		var current = el;
		while (true)
		{
			var parent = current.parent();
			if (!parent.hasClass("menu"))
			{
				current = parent;
				current.show();
				continue;
			}

			var root = current;
			if (current.hasClass("sub"))
				root = current.prev();

			break;
		}

		var sub = el.next();
		if (sub.length != 0)
			sub.show();
	}

	function click_item(eventObject)
	{
		var hrefs = $("a", this);
		if (hrefs.length == 0)
			return;

		location.href = hrefs[0].href;
	}

	function bind_menu()
	{
		var main = $("#onmain");

		if (main[0].href == location.href)
		{
			main.css("color", "black");
			return;
		}

		var links = $(".menu A:not(#onmain)");

		for (var i = 0; i < links.length; i++)
		{
			var link = links.eq(i);

			if ( location.href.indexOf( link[0].href ) == -1 )
				continue;

			link.css("color", "black");
		}
	}
