function showLayer(id) 
{
	var div = returnDiv(id);
	div.display = "block";
}

function hideLayer(id) 
{
        var div = returnDiv(id);
        div.display = "none";
//		previousLayer = "";
}
   
var tim;
var tim2;
var tim3;
var previousLayer = "";
var open_sub_layer = "";

function mouseOutOfLayer(id)
{
	if(id.indexOf("sub_") >= 0)
	{
//		alert("previousLayer = " + previousLayer);
		func = "hideLayer('"+previousLayer+"')";
		tim = setTimeout(func, 500);
		func = "hideLayer('"+id+"')";
		tim2 = setTimeout(func, 500);
	}
	else
	{
		if(open_sub_layer != "")
		{		
			func = "hideLayer('"+open_sub_layer+"')";
			tim2 = setTimeout(func, 500);
		}
		func = "hideLayer('"+id+"')";
		tim = setTimeout(func, 500);
	}
}
 
function mouseIntoLayer(id)
{
	clearTimeout(tim);
	clearTimeout(tim2);

	if(id.indexOf("sub_") >= 0)
	{  // we're mousing into a sub_layer
		if(open_sub_layer != id && open_sub_layer != "")
			hideLayer(open_sub_layer);
		clearTimeout(tim3);
		showLayer(id);
		showLayer(previousLayer);
		open_sub_layer = id;
	}
	else
	{  // we're just mousing into a regular layer

		if (open_sub_layer != "")
			hideLayer(open_sub_layer);
		if(previousLayer != id && previousLayer != "")
		{
			
			hideLayer(previousLayer);
		}
		showLayer(id);
		previousLayer = id;
	}
}

function returnDiv(id) {
	if (document.all) // IE
	{
		var div = document.all(id).style;
	}
	else if (document.layers) // NS4
	{
		var div = document.layers[id];
	}
	else if (document.getElementById) // NS6
	{
		var div = document.getElementById(id).style;
	}
	return div;
}


function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}