////////////////////////////////////////////////////////////////////////////////
// Copyright (c) Ger Versluis 2000 v5.41 2001-12-24
// For info write to menus@burmees.nl
//
// HV Menu found on Dynamic Drive ONLY may be used on both
// commercial and non commerical sites.
//
// Featured on Dynamic Drive DHTML code library: http://www.dynamicdrive.com.
////////////////////////////////////////////////////////////////////////////////

var AgntUsr = navigator.userAgent.toLowerCase();
var DomYes  = document.getElementById ? 1 : 0;
var NavYes  = AgntUsr.indexOf('mozilla') != -1 && AgntUsr.indexOf('compatible') == -1 ? 1 : 0;
var ExpYes  = AgntUsr.indexOf('msie') != -1 ? 1 : 0;
var Opr     = AgntUsr.indexOf('opera') != -1 ? 1 : 0;
var DomNav  = DomYes && NavYes ? 1 : 0;
var DomExp  = DomYes && ExpYes ? 1 : 0;
var Nav4    = NavYes && !DomYes && document.layers ? 1 : 0;
var Exp4    = ExpYes && !DomYes && document.all ? 1 : 0;
var PosStrt = (NavYes || ExpYes) && !Opr ? 1 : 0;
var FrstLoc, ScLoc, DcLoc;
var ScWinWdth, ScWinHght, FrstWinWdth, FrstWinHght;
var ScLdAgainWin;
var FirstColPos, SecColPos, DocColPos;
var RcrsLvl = 0;
var FrstCreat = 1, Loadd = 0, Creatd = 0, IniFlg, AcrssFrms = 1;
var FrstCntnr = null, CurrntOvr = null, CloseTmr = null;
var CntrTxt, TxtClose, ImgStr;
var Ztop = 100;
var ShwFlg = 0;
var M_StrtTp = StartTop, M_StrtLft = StartLeft;
var StaticPos = 0;
var LftXtra = DomNav ? LeftPaddng : 0;
var TpXtra = DomNav ? TopPaddng : 0;
var M_Hide = Nav4 ? 'hide' : 'hidden';
var M_Show = Nav4 ? 'show' : 'visible';
var Par = parent.frames[0] && FirstLineFrame != SecLineFrame ? parent : window;
var Doc = Par.document;
var Bod = Doc.body;
var Trigger = NavYes ? Par : Bod;

MenuTextCentered = (MenuTextCentered == 1) ||
  (MenuTextCentered == 'center' ? 'center' : MenuTextCentered == 0) ||
  (MenuTextCentered != 'right' ? 'left' : 'right');

WbMstrAlrts = ["Item not defined: ", "Item needs height: ", "Item needs width: "];

if (Trigger.onload)
{
  Dummy = Trigger.onload;
}

if (DomNav && !Opr)
{
  Trigger.addEventListener('load', Go, false);
}
else
{
  Trigger.onload = Go;
}

function Dummy()
{
  return;
}

function CnclSlct()
{
  return false;
}

function RePos()
{
	FrstWinWdth = ExpYes ? FrstLoc.document.body.clientWidth  : FrstLoc.innerWidth;
	FrstWinHght = ExpYes ? FrstLoc.document.body.clientHeight : FrstLoc.innerHeight;
	ScWinWdth   = ExpYes ? ScLoc.document.body.clientWidth    : ScLoc.innerWidth;
	ScWinHght   = ExpYes ? ScLoc.document.body.clientHeight   : ScLoc.innerHeight;

	if (MenuCentered == 'justify' && FirstLineHorizontal)
	{
		FrstCntnr.style.width = FrstWinWdth;
		ClcJus();

		var P = FrstCntnr.FrstMbr, W = Menu1[5], i;		

		for (i = 0; i < NoOffFirstLineMenus; i++)
		{
		  P.style.width = W;
		  P = P.PrvMbr;
		}
	}

	StaticPos = -1;

	if (TargetLoc)
	{
	  ClcTrgt();
	}
	
	if (MenuCentered)
	{
    ClcLft();
	}

	if (MenuVerticalCentered)
	{
    ClcTp();
	}

	PosMenu(FrstCntnr,StartTop,StartLeft)
}


function UnLoaded()
{
	if (CloseTmr)
	{
	  clearTimeout(CloseTmr);
	}

	Loadd  = 0;
	Creatd = 0;

	if (HideTop)
	{
		var FCStyle=Nav4 ? FrstCntnr : FrstCntnr.style;
		FCStyle.visibility = M_Hide;
	}
}


function ReDoWhole()
{
	if ((ScWinWdth   != ScLoc.innerWidth)    ||
	    (ScWinHght   != ScLoc.innerHeight)   ||
	    (FrstWinWdth != FrstLoc.innerWidth)  ||
	    (FrstWinHght != FrstLoc.innerHeight))
  {
    Doc.location.reload();
  }
}


function Check(WMnu,NoOf)
{
	var i, array, ArrayLoc;
	
	ArrayLoc = parent.frames[0] ? parent.frames[FirstLineFrame] : self;
	for (i = 0; i < NoOf; i++)
	{
		array = WMnu + eval(i + 1);
		
		if (!ArrayLoc[array])
		{
		  WbMstrAlrt(0,array);

		  return false;
		}

		if (i == 0)
		{
		  if (!ArrayLoc[array][4])
		  {
		    WbMstrAlrt(1, array);
		    
		    return false;
		  }
		  
			if (!ArrayLoc[array][5])
			{
			  WbMstrAlrt(2,array);

			  return false;
			}
		}

		if (ArrayLoc[array][3])
		{
      if (!Check(array + '_', ArrayLoc[array][3]))
      {
        return false;
      }
		}
  }

	return true;
}


function WbMstrAlrt(No, Xtra)
{
	return confirm(WbMstrAlrts[No] + Xtra + '   ');
}

function Go()
{
	Dummy();

	if (Loadd || !PosStrt)
	{
	  return;
	}
	
	BeforeStart();
	Creatd = 0;
	Loadd  = 1;
	
	status = 'Building menu';

	if (FrstCreat)
	{
		if (FirstLineFrame == "" || !parent.frames[FirstLineFrame])
		{
			FirstLineFrame=SecLineFrame;

			if (FirstLineFrame == "" || !parent.frames[FirstLineFrame])
			{
				FirstLineFrame=SecLineFrame = DocTargetFrame;
			
				if (FirstLineFrame == "" || !parent.frames[FirstLineFrame])
				{
				  FirstLineFrame = SecLineFrame = DocTargetFrame = '';
				}
			}
		}
		
		if (SecLineFrame == "" || !parent.frames[SecLineFrame])
		{
			SecLineFrame = DocTargetFrame;
			
			if (SecLineFrame == "" || !parent.frames[SecLineFrame])
			{
			  SecLineFrame = DocTargetFrame = FirstLineFrame;
			}
		}

		if(DocTargetFrame == "" || !parent.frames[DocTargetFrame])
		{
		  DocTargetFrame = SecLineFrame;
		}
	
		if (WebMasterCheck)
		{
		  if (!Check('Menu', NoOffFirstLineMenus))
		  {
		    status = 'build aborted';

		    return;
		  }
		}
		
		FrstLoc = (FirstLineFrame != "" ? parent.frames[FirstLineFrame] : window);
		ScLoc   = (SecLineFrame   != "" ? parent.frames[SecLineFrame]   : window);
		DcLoc   = (DocTargetFrame != "" ? parent.frames[DocTargetFrame] : window);
		
		if (FrstLoc==ScLoc)
		{
		  AcrssFrms = 0;
		}
				
		if (AcrssFrms)
		{
		  FirstLineHorizontal = MenuFramesVertical ? 0 : 1;
		}
		
		FrstWinWdth = (ExpYes ? FrstLoc.document.body.clientWidth  : FrstLoc.innerWidth);
		FrstWinHght = (ExpYes ? FrstLoc.document.body.clientHeight : FrstLoc.innerHeight);

		ScWinWdth = (ExpYes ? ScLoc.document.body.clientWidth  : ScLoc.innerWidth);
		ScWinHght = (ExpYes ? ScLoc.document.body.clientHeight : ScLoc.innerHeight);

		if (Nav4)
		{
		  CntrTxt = (MenuTextCentered != 'left' ? "<div align='" + MenuTextCentered + "'>" : "");
			TxtClose = ("</font>" + MenuTextCentered != 'left' ? "</div>" : "");
		}
	}
	
	
	FirstColPos = (Nav4 ? FrstLoc.document : FrstLoc.document.body);
	SecColPos   = (Nav4 ? ScLoc.document   : ScLoc.document.body);
	DocColPos   = (Nav4 ? DcLoc.document   : ScLoc.document.body);
	
	if (TakeOverBgColor)
	{
	  (FirstColPos.bgColor = AcrssFrms ? SecColPos.bgColor : DocColPos.bgColor);
	}
	
	if (MenuCentered == 'justify' && FirstLineHorizontal)
	{
	  ClcJus();
	}
	
	if (FrstCreat)
	{
		FrstCntnr = CreateMenuStructure('Menu', NoOffFirstLineMenus);
		FrstCreat = (AcrssFrms ? 0 : 1);
	}
	else
	{
	  CreateMenuStructureAgain('Menu', NoOffFirstLineMenus);
	}
	
	if (TargetLoc)
	{
	  ClcTrgt();
	}
	
	if (MenuCentered)
	{
	  ClcLft();
	}
	
	if (MenuVerticalCentered)
	{
	  ClcTp();
	}
	
	PosMenu(FrstCntnr, StartTop, StartLeft);
	IniFlg = 1;
	Initiate();
	Creatd = 1;
	ScLdAgainWin = (ExpYes ? ScLoc.document.body : ScLoc);
	ScLdAgainWin.onunload = UnLoaded;
	Trigger.onresize = (Nav4 ? ReDoWhole : RePos);
	AfterBuild();
	
	if (MenuVerticalCentered == 'static' && !AcrssFrms)
	{
    setInterval('KeepPos()', 250);
	}

	status = 'Menu ready for use';
}

function KeepPos()
{
	var TS = (ExpYes ? FrstLoc.document.body.scrollTop : FrstLoc.pageYOffset);

	if (TS != StaticPos)
	{
		var FCStyle = (Nav4 ? FrstCntnr : FrstCntnr.style);
		FCStyle.top = (FrstCntnr.OrgTop = (StartTop + TS));
		StaticPos   = TS;
	}
}

function ClcJus()
{
	var a    = (BorderBtwnElmnts ? 1 : 2);
	var b    = (BorderBtwnElmnts ? BorderWidth : 0);
	var Size = Math.round(((FrstWinWdth - a * BorderWidth) / NoOffFirstLineMenus) - b);
	var i, j;
	
	for (i = 1; i < NoOffFirstLineMenus + 1; i++)
	{
	  j = eval('Menu' + i);
	  j[5] = Size;
	}
	
	StartLeft = 0;
}

function ClcTrgt()
{
	var TLoc = (Nav4 ? FrstLoc.document.layers[TargetLoc] :
	            (DomYes ? FrstLoc.document.getElementById(TargetLoc) :
	             FrstLoc.document.all[TargetLoc]));

	StartTop = M_StrtTp;
	StartLeft = M_StrtLft;
	
	if (DomYes)
	{
		while (TLoc)
		{
		  StartTop  += TLoc.offsetTop;
		  StartLeft += TLoc.offsetLeft;
		  TLoc      =  TLoc.offsetParent;
		}
	}
	else
	{
	  StartTop  += (Nav4 ? TLoc.pageY : TLoc.offsetTop);
	  StartLeft += (Nav4 ? TLoc.pageX : TLoc.offsetLeft);
	}
}

function ClcLft()
{
	if (MenuCentered != 'left' && MenuCentered != 'justify')
	{
		var Size  =  FrstWinWdth - (!Nav4?parseInt(FrstCntnr.style.width) : FrstCntnr.clip.width);
		StartLeft =  M_StrtLft;
		StartLeft += (MenuCentered == ('right' ? Size : Size / 2));
	}
}

function ClcTp()
{
	if (MenuVerticalCentered != 'top' && MenuVerticalCentered != 'static')
	{
		var Size =  (FrstWinHght - (!Nav4 ? parseInt(FrstCntnr.style.height) : FrstCntnr.clip.height));
		StartTop =  M_StrtTp;
		StartTop += (MenuVerticalCentered == 'bottom' ? Size : Size / 2);
	}
}

function PosMenu(CntnrPntr, Tp, Lt)
{
	var Topi, Lefti, Hori;
	var SubTp, SubLt;
	var Cntnr      = CntnrPntr;
	var Mmbr       = Cntnr.FrstMbr;
	var CntnrStyle = (!Nav4 ? Cntnr.style : Cntnr);
	var MmbrStyle  = (!Nav4 ? Mmbr.style : Mmbr);
	var PadL       = Mmbr.value.indexOf('<') == -1 ? LftXtra : 0;
	var PadT       = Mmbr.value.indexOf('<') == -1 ? TpXtra : 0;
	var MmbrWt     = (!Nav4 ? parseInt(MmbrStyle.width)  + PadL : MmbrStyle.clip.width);
	var MmbrHt     = (!Nav4 ? parseInt(MmbrStyle.height) + PadT : MmbrStyle.clip.height);
	var CntnrWt    = (!Nav4 ? parseInt(CntnrStyle.width) : CntnrStyle.clip.width);
	var CntnrHt    = (!Nav4 ? parseInt(CntnrStyle.height) : CntnrStyle.clip.height);

	RcrsLvl++;
	
	if (RcrsLvl == 1 && AcrssFrms)
	{
	  !MenuFramesVertical ? Tp = FrstWinHght - CntnrHt + (Nav4 ? 4 : 0) : Lt = RightToLeft ? 0 : FrstWinWdth - CntnrWt + (Nav4 ? 4 : 0);
	}
	
	if (RcrsLvl == 2 && AcrssFrms)
	{
	  !MenuFramesVertical ? Tp = 0 : Lt = RightToLeft ? ScWinWdth - CntnrWt : 0;
	}
	
	if (RcrsLvl == 2 && AcrssFrms)
	{
	  Tp += VerCorrect;
	  Lt += HorCorrect;
	}
	
	CntnrStyle.top  = RcrsLvl == 1 ? Tp : 0;
	Cntnr.OrgTop    = Tp;
	CntnrStyle.left = RcrsLvl == 1 ? Lt : 0;
	Cntnr.OrgLeft   = Lt;
	
	if (RcrsLvl == 1 && FirstLineHorizontal)
	{
		Hori = 1;
		Lefti = (CntnrWt - MmbrWt - 2 * BorderWidth);
		Topi = 0;
	}
	else
	{
	  Hori = Lefti = 0;
	  Topi = CntnrHt - MmbrHt - 2 * BorderWidth;
	}
	
	while (Mmbr != null)
	{
		MmbrStyle.left = Lefti + BorderWidth;
		MmbrStyle.top = Topi + BorderWidth;
		
		if (Nav4)
		{
		  Mmbr.CmdLyr.moveTo(Lefti + BorderWidth, Topi + BorderWidth);
		}
		
		if(Mmbr.ChildCntnr)
		{
			if (RightToLeft)
			{
			  ChldCntnrWdth = Nav4 ? Mmbr.ChildCntnr.clip.width : parseInt(Mmbr.ChildCntnr.style.width);
			}
			
			if (Hori)
			{
			  SubTp = Topi + MmbrHt + 2 * BorderWidth;
				SubLt = RightToLeft ? Lefti + MmbrWt - ChldCntnrWdth : Lefti;
			}
			else
			{
			  SubLt = RightToLeft ? Lefti - ChldCntnrWdth + ChildOverlap * MmbrWt + BorderWidth : Lefti + (1 - ChildOverlap) * MmbrWt + BorderWidth;
				SubTp = RcrsLvl == 1 && AcrssFrms ? Topi : Topi + ChildVerticalOverlap * MmbrHt;
			}

			PosMenu(Mmbr.ChildCntnr, SubTp, SubLt);
		}
		
		Mmbr = Mmbr.PrvMbr;

		if (Mmbr)
		{
		  MmbrStyle = !Nav4 ? Mmbr.style : Mmbr;
			PadL = Mmbr.value.indexOf('<') == -1 ? LftXtra : 0;
			PadT = Mmbr.value.indexOf('<') == -1 ? TpXtra  : 0;
			MmbrWt = !Nav4 ? parseInt(MmbrStyle.width) + PadL : MmbrStyle.clip.width;
			MmbrHt = !Nav4 ? parseInt(MmbrStyle.height) + PadT : MmbrStyle.clip.height;
			Hori ? Lefti -= BorderBtwnElmnts ? (MmbrWt + BorderWidth) : (MmbrWt) : Topi -= BorderBtwnElmnts ? (MmbrHt + BorderWidth) : (MmbrHt);
		}
	}

	RcrsLvl--;
}

function Initiate()
{
	if (IniFlg)
	{
	  Init(FrstCntnr);
	  IniFlg = 0;

		if(ShwFlg)
		{
      AfterCloseAll();
		}
		
		ShwFlg = 0;
	}
}

function Init(CntnrPntr)
{
	var Mmbr = CntnrPntr.FrstMbr;
	var MCStyle = Nav4 ? CntnrPntr : CntnrPntr.style;
	
	RcrsLvl++;
	MCStyle.visibility = RcrsLvl == 1 ? M_Show : M_Hide;

	while (Mmbr != null)
	{
		if (Mmbr.Hilite)
		{
		  Mmbr.Hilite = 0;

		  if (KeepHilite)
		  {
		    LowItem(Mmbr);
		  }
		}

		if (Mmbr.ChildCntnr)
		{
		  Init(Mmbr.ChildCntnr);
		}
		
		Mmbr = Mmbr.PrvMbr;
	}

	RcrsLvl--;
}

function ClearAllChilds(Pntr)
{
	var CPCCStyle;

	while (Pntr)
	{
		if (Pntr.Hilite)
		{
			Pntr.Hilite = 0;
			
			if (KeepHilite)
			{
			  LowItem(Pntr);
			}
			
			if(Pntr.ChildCntnr)
			{
				CPCCStyle = (Nav4 ? Pntr.ChildCntnr : Pntr.ChildCntnr.style);
				CPCCStyle.visibility = M_Hide;
				ClearAllChilds(Pntr.ChildCntnr.FrstMbr);
			}
			
			break;
		}

		Pntr = Pntr.PrvMbr;
	}
}

function GoTo()
{
	if (this.LinkTxt)
	{
		status = '';
		var HP = (Nav4 ? this.LowLyr : this);
		LowItem(HP);
		this.LinkTxt.indexOf('javascript:') != -1 ? eval(this.LinkTxt) : DcLoc.location.href = this.LinkTxt;
	}
}

function HiliteItem(P)
{
	if (Nav4)
	{
		if (P.ro)
		{
		  P.document.images[P.rid].src = P.ri2;
		}
		else
		{
		  if (P.HiBck)
		  {
		    P.bgColor = P.HiBck;
		  }
		  
			if (P.value.indexOf('<img') == -1)
			{
				P.document.write(P.Ovalue);
				P.document.close();
			}
		}
	}
	else
	{
	  if (P.ro)
	  {
	    var Lc = P.Level == 1 ? FrstLoc : ScLoc;

			Lc.document.images[P.rid].src = P.ri2;
		}
		else
		{
		  if (P.HiBck)
		  {
		    P.style.backgroundColor = P.HiBck;
		  }
		  
			if (P.HiFntClr)
			{
			  P.style.color = P.HiFntClr;
			}
		}
	}
	
	P.Hilite = 1;
}

function LowItem(P)
{
	if (P.ro)
	{
	  if (Nav4)
	  {
	    P.document.images[P.rid].src = P.ri1;
	  }
		else
		{
		  var Lc = P.Level == 1 ? FrstLoc : ScLoc;
			Lc.document.images[P.rid].src = P.ri1;
		}
	}
	else
	{
	  if (Nav4)
	  {
	    if (P.LoBck)
	    {
	      P.bgColor = P.LoBck;
	    }
	    
			if (P.value.indexOf('<img') == -1)
			{
				P.document.write(P.value);
				P.document.close();
			}
		}
		else
		{
		  if (P.LoBck)
		  {
		    P.style.backgroundColor = P.LoBck;
		  }
		  
			if (P.LwFntClr)
			{
			  P.style.color = P.LwFntClr;
			}
		}
	}
}

function OpenMenu()
{
	if (!Loadd || !Creatd)
	{
	  return;
	}
	
	var TpScrlld = ExpYes ? ScLoc.document.body.scrollTop : ScLoc.pageYOffset;
	var LScrlld  = ExpYes ? ScLoc.document.body.scrollLeft : ScLoc.pageXOffset;
	var CCnt     = Nav4 ? this.LowLyr.ChildCntnr : this.ChildCntnr;
	var ThisHt   = Nav4 ? this.clip.height : parseInt(this.style.height);
	var ThisWt   = Nav4 ? this.clip.width : parseInt(this.style.width);
	var ThisLft  = AcrssFrms && this.Level == 1 && !FirstLineHorizontal ? 0 : Nav4 ? this.Container.left : parseInt(this.Container.style.left);
	var ThisTp   = AcrssFrms && this.Level == 1 && FirstLineHorizontal ? 0 : Nav4 ? this.Container.top : parseInt(this.Container.style.top);
	var HP       = Nav4 ? this.LowLyr : this;
	
	CurrntOvr = this;
	IniFlg = 0;
	ClearAllChilds(this.Container.FrstMbr);
	HiliteItem(HP);
	
	if (CCnt != null)
	{
		if (!ShwFlg)
		{
		  ShwFlg = 1;
		  BeforeFirstOpen();
		}
		
		var CCW     = Nav4 ? this.LowLyr.ChildCntnr.clip.width : parseInt(this.ChildCntnr.style.width);
		var CCH     = Nav4 ? this.LowLyr.ChildCntnr.clip.height : parseInt(this.ChildCntnr.style.height);
		var ChCntTL = Nav4 ? this.LowLyr.ChildCntnr : this.ChildCntnr.style;
		var SubLt   = AcrssFrms && this.Level == 1 ? CCnt.OrgLeft + ThisLft+LScrlld : CCnt.OrgLeft + ThisLft;
		var SubTp   = AcrssFrms && this.Level == 1 ? CCnt.OrgTop + ThisTp+TpScrlld : CCnt.OrgTop + ThisTp;

		if (MenuWrap)
		{
			if (RightToLeft)
			{
				if (SubLt < LScrlld)
				{
				  SubLt = this.Level == 1 ? LScrlld : SubLt + (CCW + (1 - 2 * ChildOverlap) * ThisWt);
				}
				
				if (SubLt + CCW > ScWinWdth + LScrlld)
				{
				  SubLt = ScWinWdth + LScrlld - CCW;
				}
			}
			else
			{
			  if (SubLt + CCW > ScWinWdth + LScrlld)
			  {
			    SubLt = this.Level == 1 ? ScWinWdth + LScrlld - CCW : SubLt - (CCW + (1 - 2 * ChildOverlap) * ThisWt);
			  }
			  
				if (SubLt < LScrlld)
				{
				  SubLt = LScrlld;
				}
			}
			if (SubTp + CCH > TpScrlld + ScWinHght)
			{
			  SubTp = this.Level == 1 ? SubTp = TpScrlld + ScWinHght - CCH : SubTp - CCH + (1 - 2 * ChildVerticalOverlap) * ThisHt;
			}
			
			if (SubTp < TpScrlld)
			{
			  SubTp = TpScrlld;
			}
		}
		
		ChCntTL.top = SubTp;
		ChCntTL.left = SubLt;
		ChCntTL.visibility = M_Show;
	}
	
	status = this.LinkTxt
}

function OpenMenuClick()
{
	if (!Loadd || !Creatd)
	{
	  return;
	}
	
	var HP = Nav4 ? this.LowLyr : this;

	CurrntOvr = this;
	IniFlg = 0;
	ClearAllChilds(this.Container.FrstMbr);
	HiliteItem(HP);
	status = this.LinkTxt;
}

function CloseMenu()
{
	if (!Loadd || !Creatd)
	{
	  return;
	}
	
	if (!KeepHilite)
	{
		var HP = Nav4 ? this.LowLyr : this;
		
		LowItem(HP);
	}
	
	status = '';
	
	if (this == CurrntOvr)
	{
		IniFlg = 1;

		if (CloseTmr)
		{
		  clearTimeout(CloseTmr);
		}
		
		CloseTmr = setTimeout('Initiate(CurrntOvr)', DissapearDelay);
	}
}

function CntnrSetUp(Wdth, Hght, NoOff)
{
	var x = RcrsLvl == 1 ? BorderColor : BorderSubColor;
	this.FrstMbr = null;
	this.OrgLeft = this.OrgTop = 0;
	if(x)this.bgColor = x;
	if (Nav4)
	{
	  this.visibility = 'hide';
		this.resizeTo(Wdth, Hght);
	}
	else
	{
	  if (x)
	  {
	     this.style.backgroundColor = x;
	  }
	  
		this.style.width = Wdth;
		this.style.height = Hght;
		this.style.fontFamily = FontFamily;
		this.style.fontWeight = FontBold ? 'bold' : 'normal';
		this.style.fontStyle = FontItalic ? 'italic' : 'normal';
		this.style.fontSize = FontSize + 'pt';
		this.style.zIndex = RcrsLvl + Ztop;
	}
}

function MbrSetUp(MmbrCntnr, PrMmbr, WhatMenu, Wdth, Hght)
{
	var Location = RcrsLvl == 1 ? FrstLoc : ScLoc;
	var MemVal = eval(WhatMenu + '[0]');
	var t, T, L, W, H, S;
	var a, b, c, d;
	
	this.PrvMbr = PrMmbr;
	this.Level = RcrsLvl;
	this.LinkTxt = eval(WhatMenu + '[1]');
	this.Container = MmbrCntnr;
	this.ChildCntnr = null;
	this.Hilite = 0;
	this.style.overflow = 'hidden';
	this.style.cursor = ExpYes && (this.LinkTxt || (RcrsLvl == 1 && UnfoldsOnClick)) ? 'hand' : 'default';
	this.ro = 0;
	
	if (MemVal.indexOf('rollover') != -1)
	{
		this.ro = 1;
		this.ri1 = MemVal.substring(MemVal.indexOf(':') + 1, MemVal.lastIndexOf(':'));
		this.ri2 = MemVal.substring(MemVal.lastIndexOf(':') + 1, MemVal.length);
		this.rid = WhatMenu + 'i';
		MemVal = "<img src='" + this.ri1 + "' name='" + this.rid + "'>";
	}
	
	this.value = MemVal;
	if (RcrsLvl == 1)
	{
		a = LowBgColor;
		b = HighBgColor;
		c = FontLowColor;
		d = FontHighColor;
	}
	else
	{
	  a = LowSubBgColor;
		b = HighSubBgColor;
		c = FontSubLowColor;
		d = FontSubHighColor;
	}
	
	this.LoBck = a;
	this.LwFntClr = c;
	this.HiBck = b;
	this.HiFntClr = d;
	this.style.color = this.LwFntClr;
	
	if (this.LoBck)
	{
	  this.style.backgroundColor = this.LoBck;
	}
	
	this.style.textAlign = MenuTextCentered;
	
	if (eval(WhatMenu + '[2]'))
	{
	  this.style.backgroundImage = "url(\'" + eval(WhatMenu + '[2]') + "\')";
	}
	
	if (MemVal.indexOf('<') == -1)
	{
		this.style.width = Wdth - LftXtra;
		this.style.height = Hght - TpXtra;
		this.style.paddingLeft = LeftPaddng;
		this.style.paddingTop = TopPaddng;
	}
	else
	{
	  this.style.width = Wdth;
		this.style.height = Hght;
	}
	
	if (MemVal.indexOf('<') == -1 && DomYes)
	{
		t = Location.document.createTextNode(MemVal);
		this.appendChild(t);
	}
	else
	{
	  this.innerHTML = MemVal;
	}
	
	if (eval(WhatMenu + '[3]') && ShowArrow)
	{
		a = RcrsLvl == 1 && FirstLineHorizontal ? 3 : RightToLeft ? 6 : 0;
		S = Arrws[a];
		W = Arrws[a + 1];
		H = Arrws[a + 2];
		T = RcrsLvl == 1 && FirstLineHorizontal ? Hght - H - 2 : (Hght - H) / 2;
		L = RightToLeft ? 2 : Wdth - W - 2;
		
		if (DomYes)
		{
			t = Location.document.createElement('img');
			this.appendChild(t);
			t.style.position = 'absolute';
			t.src = S;
			t.style.width = W;
			t.style.height = H;
			t.style.top = T;
			t.style.left = L;
		}
		else
		{
		  MemVal += "<div style='position:absolute; top:" + T + "; left:" + L + "; width:" + W + "; height:" + H + ";visibility:inherit'><img src='" + S + "'></div>";
			this.innerHTML = MemVal;
		}
	}
	
	if (ExpYes)
	{
	  this.onselectstart = CnclSlct;
		this.onmouseover = RcrsLvl == 1 && UnfoldsOnClick ? OpenMenuClick : OpenMenu;
		this.onmouseout = CloseMenu;
		this.onclick = RcrsLvl == 1 && UnfoldsOnClick && eval(WhatMenu + '[3]') ? OpenMenu : GoTo;
	}
	else
	{
	  RcrsLvl == 1 && UnfoldsOnClick ? this.addEventListener('mouseover', OpenMenuClick, false) : this.addEventListener('mouseover', OpenMenu, false);
		this.addEventListener('mouseout', CloseMenu, false);
		RcrsLvl == 1 && UnfoldsOnClick && eval(WhatMenu + '[3]') ? this.addEventListener('click', OpenMenu, false) : this.addEventListener('click', GoTo, false);
	}
}

function NavMbrSetUp(MmbrCntnr, PrMmbr, WhatMenu, Wdth, Hght)
{
	var a, b, c, d;
	
	if (RcrsLvl == 1)
	{
		a = LowBgColor;
		b = HighBgColor;
		c = FontLowColor;
		d = FontHighColor;
	}
	else
	{
	  a = LowSubBgColor;
		b = HighSubBgColor;
		c = FontSubLowColor;
		d = FontSubHighColor;
	}
	
	this.value = eval(WhatMenu + '[0]');
	this.ro = 0;

	if (this.value.indexOf('rollover') != -1)
	{
		this.ro = 1;
		this.ri1 = this.value.substring(this.value.indexOf(':') + 1, this.value.lastIndexOf(':'));
		this.ri2 = this.value.substring(this.value.lastIndexOf(':') + 1, this.value.length);
		this.rid = WhatMenu + 'i';
		this.value = "<img src='" + this.ri1 + "' name='" + this.rid + "'>";
	}
	
	if (LeftPaddng && this.value.indexOf('<') == -1 && MenuTextCentered == 'left')
	{
	  this.value='&nbsp\;' + this.value;
	}
	
	if (FontBold)
	{
	  this.value = this.value.bold();
	}
	
	if (FontItalic)
	{
	  this.value = this.value.italics();
	}
	
	this.Ovalue = this.value;
	this.value  = this.value.fontcolor(c);
	this.Ovalue = this.Ovalue.fontcolor(d);
	this.value  = CntrTxt + "<font face='" + FontFamily + "' point-size='" + FontSize + "'>" + this.value + TxtClose;
	this.Ovalue = CntrTxt + "<font face='" + FontFamily + "' point-size='" + FontSize + "'>" + this.Ovalue + TxtClose;
	this.LoBck  = a;
	this.HiBck  = b;
	this.ChildCntnr = null;
	this.PrvMbr = PrMmbr;
	this.Hilite = 0;
	this.visibility = 'inherit';
	
	if (this.LoBck)
	{
	  this.bgColor = this.LoBck;
	}
	
	this.resizeTo(Wdth,Hght);
	
	if (!AcrssFrms&&eval(WhatMenu + '[2]'))
	{
	  this.background.src = eval(WhatMenu + '[2]');
	}
	
	this.document.write(this.value);
	this.document.close();
	this.CmdLyr = new Layer(Wdth, MmbrCntnr);
	this.CmdLyr.Level = RcrsLvl;
	this.CmdLyr.LinkTxt = eval(WhatMenu + '[1]');
	this.CmdLyr.visibility = 'inherit';
	this.CmdLyr.onmouseover = RcrsLvl == 1 && UnfoldsOnClick ? OpenMenuClick : OpenMenu;
	this.CmdLyr.onmouseout = CloseMenu;
	this.CmdLyr.captureEvents(Event.MOUSEUP);
	this.CmdLyr.onmouseup = RcrsLvl == 1 && UnfoldsOnClick&&eval(WhatMenu + '[3]') ? OpenMenu : GoTo;
	this.CmdLyr.LowLyr = this;
	this.CmdLyr.resizeTo(Wdth, Hght);
	this.CmdLyr.Container = MmbrCntnr;
	
	if (eval(WhatMenu + '[3]') && ShowArrow)
	{
		a = RcrsLvl == 1 && FirstLineHorizontal ? 3 : RightToLeft ? 6 : 0;
		this.CmdLyr.ImgLyr = new Layer(Arrws[a + 1], this.CmdLyr);
		this.CmdLyr.ImgLyr.visibility = 'inherit';
		this.CmdLyr.ImgLyr.top = RcrsLvl == 1 && FirstLineHorizontal ? Hght - Arrws[a + 2] - 2 : (Hght - Arrws[a + 2]) / 2;
		this.CmdLyr.ImgLyr.left = RightToLeft ? 2 : Wdth - Arrws[a + 1 ] - 2;
		this.CmdLyr.ImgLyr.width = Arrws[a + 1];
		this.CmdLyr.ImgLyr.height = Arrws[a + 2];
		ImgStr="<img src='" + Arrws[a] + "' width='" + Arrws[a + 1] +"' height='" + Arrws[a + 2] +"'>";
		this.CmdLyr.ImgLyr.document.write(ImgStr);
		this.CmdLyr.ImgLyr.document.close();
	}
}

function CreateMenuStructure(MName,NumberOf)
{
	RcrsLvl++;
	var i, NoOffSubs, Mbr, Wdth = 0, Hght = 0;
	var PrvMmbr = null;
	var WMnu = MName+'1';
	var MenuWidth = eval(WMnu + '[5]');
	var MenuHeight = eval(WMnu + '[4]');
	var Location=RcrsLvl == 1 ? FrstLoc : ScLoc;

	if (RcrsLvl == 1 && FirstLineHorizontal)
	{
		for(i = 1; i < NumberOf + 1; i++)
		{
			WMnu = MName + eval(i);
			Wdth = eval(WMnu + '[5]') ? Wdth + eval(WMnu + '[5]') : Wdth + MenuWidth;
		}
		
		Wdth = BorderBtwnElmnts ? Wdth + (NumberOf + 1) * BorderWidth : Wdth + 2 * BorderWidth;
		Hght = MenuHeight + 2 * BorderWidth;
		}		
	else
	{
	  for (i = 1; i < NumberOf + 1; i++)
	  {
			WMnu = MName + eval(i);
			Hght = eval(WMnu + '[4]') ? Hght + eval(WMnu + '[4]') : Hght + MenuHeight;
		}
		
		Hght = BorderBtwnElmnts ? Hght + (NumberOf + 1) * BorderWidth : Hght + 2 * BorderWidth;
		Wdth = MenuWidth + 2 * BorderWidth;
	}
	
	if (DomYes)
	{
		var MmbrCntnr = Location.document.createElement("div");
		MmbrCntnr.style.position = 'absolute';
		MmbrCntnr.style.visibility = 'hidden';
		Location.document.body.appendChild(MmbrCntnr);
	}
	else
	{
	  if (Nav4)
	  {
      MmbrCntnr = new Layer(Wdth, Location);
	  }
		else
		{
		  WMnu += 'c';
			Location.document.body.insertAdjacentHTML("AfterBegin", "<div id='" + WMnu + "' style='visibility:hidden; position:absolute;'><\/div>");
			MmbrCntnr = Location.document.all[WMnu];
		}
	}
	
	MmbrCntnr.SetUp = CntnrSetUp;
	MmbrCntnr.SetUp(Wdth, Hght, NumberOf);

	if (Exp4)
	{
	  MmbrCntnr.InnerString = '';
		for (i = 1; i < NumberOf + 1; i++)
		{
			WMnu = MName + eval(i);
			MmbrCntnr.InnerString += "<div id='" + WMnu + "' style='position:absolute;'><\/div>";
		}
		
		MmbrCntnr.innerHTML = MmbrCntnr.InnerString;
	}

	for (i = 1; i < NumberOf + 1; i++)
	{
		WMnu = MName + eval(i);
		NoOffSubs = eval(WMnu + '[3]');
		Wdth = RcrsLvl == 1 && FirstLineHorizontal ? eval(WMnu + '[5]') ? eval(WMnu + '[5]') : MenuWidth : MenuWidth;
		Hght = RcrsLvl == 1 && FirstLineHorizontal ? MenuHeight : eval(WMnu + '[4]') ? eval(WMnu + '[4]') : MenuHeight;
	
		if (DomYes)
		{
			Mbr = Location.document.createElement("div");
			Mbr.style.position = 'absolute';
			Mbr.style.visibility = 'inherit';
			MmbrCntnr.appendChild(Mbr);
		}
		else
    {
      Mbr = Nav4 ? new Layer(Wdth, MmbrCntnr) : Location.document.all[WMnu];
    }

		Mbr.SetUp = Nav4 ? NavMbrSetUp : MbrSetUp;
		Mbr.SetUp(MmbrCntnr, PrvMmbr, WMnu, Wdth, Hght);
		if(NoOffSubs) Mbr.ChildCntnr = CreateMenuStructure(WMnu + '_', NoOffSubs);
		PrvMmbr = Mbr;
	}
	
	MmbrCntnr.FrstMbr = Mbr;
	RcrsLvl--;
	
	return (MmbrCntnr);
}

function CreateMenuStructureAgain(MName, NumberOf)
{
	var i, WMnu, NoOffSubs, PrvMmbr, Mbr = FrstCntnr.FrstMbr;
	RcrsLvl++;
	
	for (i = NumberOf; i > 0; i--)
	{
		WMnu = MName + eval(i);
		NoOffSubs = eval(WMnu + '[3]');
		PrvMmbr = Mbr;

		if (NoOffSubs)
		{
      Mbr.ChildCntnr = CreateMenuStructure(WMnu + '_', NoOffSubs);
		}
		
		Mbr = Mbr.PrvMbr;
	}
	
	RcrsLvl--;
}

function BeforeStart()
{
  return;
}

function AfterBuild()
{
  return;
}

function BeforeFirstOpen()
{
  return;
}

function AfterCloseAll()
{
  return;
}
