	function ToggleElementDisplay(e)
	{
		if(e.style.display != "none")
		{
			e.style.display = "none";			
		}
		else
		{
			e.style.display = GetElementDisplay(e);
		}
	}
	
	function ShowElement(e)
	{		
		e.style.display = GetElementDisplay(e);	
	}
	
	function GetElementDisplay(e)
	{
		switch(e.TagName)
		{
			case "tr": return "table-row"; break;
			case "td": return "table-cell"; break;
			case "a" :
			case "img":
			case "span": return "inline"; break;
			default: return "block";
		}
	}
	
	function ToggleSiblingsOfType(e, tag)
	{
		var p = e.parentNode;
		var targets = p.getElementsByTagName(tag);
		for(i = 0; i < targets.length; i++)
		{
			ToggleElementDisplay(targets[i]);
		}
	}
	
	function ToggleFirstSiblingsOfType(e, tag)
	{
		var p = e.parentNode;
		var targets = p.getElementsByTagName(tag);
		for(i = 0; i < targets.length; i++)
		{
			ToggleElementDisplay(targets[i]);
			break;
		}
	}
	
	function ShowSiblingsOfType(e, tag)
	{
		var p = e.parentNode;
		var targets = p.getElementsByTagName(tag);
		for(i = 0; i < targets.length; i++)
		{
			ShowElement(targets[i]);
		}
	}