//Start Menu Parameters 

	   NS4 = (document.layers);
	   IE4 = (document.all);
	  ver4 = (NS4 || IE4);
	 isMac = (navigator.appVersion.indexOf("Mac") != -1);
	isMenu = (NS4 || (IE4 && !isMac));
	function popUp(){return};
	function popDown(){return};
	function startIt(){return};
	if (!ver4) event = null;

	if (isMenu) {
		menuVersion = 3;
		menuWidth = 220;
		borWid = 1;
		borSty = "solid";
		borCol = "#FFFFFF";
		separator = 1;
		separatorCol = "#FFFFFF";
		fntFam = "verdana";
		fntBold = false;
		fntItal = false;
		fntSiz = 8;
		fntCol = "#000000";
		overFnt = "#000000";
		itemPad = 3;
		backCol = "#9DBD5E";
		overCol = "#D5E2B8";
		imgSrc = "/Images/pfeil-rot.gif";
		imgSiz = 9;

		childOffset = 0;
		childOverlap = 0;
		perCentOver = null;

		clickStart = false;
		clickKill = false;
		secondsVisible = 0.2;

		keepHilite = true;
		NSfontOver = true;

		isFrames = false;
		navFrLoc = "left";
		mainFrName = "main";
	}

//Lesson 1
arMenu1 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 1:Brawl Over Sprawl","../lesson1/lesson1.htm",0,



"'Time' magazine article","../lesson1/Lesson1_1.htm",0,

"Anticipation Guide","../lesson1/lesson1_2.htm",0

);

//Lesson 2
arMenu2 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 2:Patterns of Growth","../lesson2/lesson2.htm",0,



"Maps of Development in Central Maryland","../Lesson2/lesson2_1.htm",0,

"County Maps of Land Use/Land Cover","../Lesson2/lesson2_2.htm",0,

"County Maps of Priority Funding Areas","../Lesson2/lesson2_3.htm",0,

"State Map of Priority Funding Areas and Rural Legacy Areas","../Lesson2/lesson2_4.htm",0,

"Student Handout: KWHL Chart","../Lesson2/lesson2_5.htm",0,

"Fact Sheet: How to Create an Affinity Diagram","../Lesson2/lesson2_6.htm",0

);


arMenu3 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 3:Understanding Population Growth","../Lesson3/lesson3.htm",0,



"Maryland Population Data (spreadsheet)","../Lesson3/MarylandPopulationData.htm",0

);

//Lesson 4

arMenu4 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",


"","",

"Lesson 4:Saving Habitat","../lesson4/lesson4.htm",0,



"'Carving Up the Landscape'","../lesson4/carving.pdf",0,

"Habitat Loss and Restoration slide show","../lesson4/lesson4_1.htm",0,

"Species Populations slide show","../lesson4/lesson4_2.htm",0,

"Rural Legacy and GreenPrint maps","LESSON4/LESSON4_3",0,

"Maryland GreenPrint","../Lesson4/greenprint/index.htm",0



);

//Lesson 5


arMenu5 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 5:'Hard' Data from Space","../lesson5/lesson5.htm",0,



"Ground Truth Field Data Sheets (6)","../lesson5/lesson5_1.htm",0,

"Satellite image of Baltimore City","../lesson5/lesson5_2.htm",0

);

//Lesson 6


arMenu6 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 6:Spinning Your Wheels","../lesson6/lesson6.htm",0,



"Toolkit for Quality Growth","../lesson6/lesson6_1.htm",0,

"Greetings From Smart Growth America","../lesson6/lesson6_2.htm",0

);

//Lesson 7
arMenu7 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 7:Calculate Your Contribution","../Lesson7/lesson7.htm",0,



"Student Worksheet: Transportation Diary","../Lesson7/lesson7_1.htm",0,

"Tailpipe Tally website","http://www.environmentaldefense.org/interactive.html",0,

"Sample Survey","../Lesson7/lesson7_3.htm",0

);


//Lesson 8
arMenu8 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 8:Mapping Your Neighborhood","../Lesson8/lesson8.htm",0,



"New Community Design, Chapter 2","../Lesson8/072001ncdfull.pdf",0,

"Neighborhood Mapping website","../Lesson8/Natlharbor/index.htm",0,

"Student Handout: Neighborhood Survey","../Lesson8/lesson8_3.htm",0

);


//Lesson 9
arMenu9 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 9:The Cost of Community Services: Does Development Really Pay?","../Lesson9/lesson9.htm",0,



"Student Handout: Cost of Community Services Fact Sheet","../Lesson9/lesson9_1.htm",0

);


//Lesson 10
arMenu10 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 10:Siting a New School","../Lesson10/lesson10.htm",0,



"Environomics: Where to Place the School","../Lesson10/lesson10_1.htm",0,

"Student Handout: Paulford School Case Study","../lesson10/lesson10_2.htm",0,

"Student Handout: Issue Analysis Worksheet","../lesson10/lesson10_3.htm",0,

" Student Handout: Expected Behaviors During Discussion","../Lesson10/lesson10_4.htm",0

);


//Lesson 11
arMenu11 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 11:Creating Community A Function of Design","../Lesson11/lesson11.htm",0,



"Smart Neighborhoods slide show","../Lesson11/lesson11_1.htm",0,

"New Community Design, Chapter 2","../Lesson8/072001NCDFull.pdf",0,

"Student Handout: Taking it Outside","../Lesson11/lesson11_3.htm",0

);


//Lesson 12
arMenu12 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 12:Conducting a Survey","lesson12.htm",0,


"Student Handout: Background on Surveys","lesson12_1.htm",0,

"Student Handout: Survey Score Sheet","lesson12_2.htm",0

);


//Lesson 13
arMenu13 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 13:What is Smart Growth?","../Lesson13/lesson13.htm",0,



"Smart Growth slide show","../Lesson13/lesson13_1.htm",0,

"Student Handout: Smart Growth Background","../lesson13/lesson13_2.htm",0,

"Student Handout: Cooperative Group Assignment","../lesson13/lesson13_4.htm",0

);


//Lesson 14
arMenu14 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 14:What's the Plan?","../Lesson14/lesson14.htm",0,



"Student Handout: Creating a Master Plan","../lesson14/lesson14_1.htm",0

);


//Lesson 15
arMenu15 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 15:How Did That Get There?","../Lesson15/lesson15.htm",0,



"'Baltimore Beltway, 2025' cartoon","../Lesson15/lesson15_1.htm",0,

"What is Maryland's Smart Growth Program","../Lesson15/MDP/smartwhat.htm",0,

"Priority Funding Areas","../Lesson15/MDP/smartpfa.htm",0,

"Summary of Criteria for County PFA Designations","../Lesson15/MDP/pfachart.htm",0,

"Priority Funding Maps","../Lesson15/pfa/priority_funding_maps.htm",0,

"Town Government from Decisions, Decisions (Tom Snyder)","../Lesson15/tomsnyder/index.htm",0,

"MSDE Geography Scoring Rubric","../lesson15/lesson15_7.htm",0

);
//lesson 16
arMenu16 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 16:The New Segregation","../lesson16/lesson16.htm",0,

"National Geographic Maryland Smart Growth Map","http://www.op.state.md.us/national_growth/map.htm",0,

"Census Maps","http://www.mdp.state.md.us/msdc",0,

"Census Data","http://www.mdp.state.md.us/msdc",0,

"Race, Hispanic Origin, and Ancestry, Census Bureau Fact Sheet","http://www.census.gov/dmd/www/pdf/bwd3249.pdf",0


);

//lesson 17
arMenu17 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 17:Mapping the Issues","../lesson17/lesson17.htm",0,

"National Geographic Smart Growth Map","http://www.op.state.md.us/national_growth/map.htm",0,
"Side 1: 'Why We Need Smart Growth: Maryland's Growing Pains'","../lesson17/wallmapside1.pdf",0,
"Side 2: 'What is Smart Growth: More Choices - Better Places'","../lesson17/wallmapside2.pdf",0,	
"Student Handout 1: 'Effects of Urban Sprawl'","../lesson17/lesson17_1.htm",0,
"Student Handout 2: 'Smart Growth Initiative'","../lesson17/lesson17_2.htm",0


);
//lesson 18
arMenu18 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 18:Healthy Community, Healthy You","../lesson18/lesson18.htm",0,

"Student Walking Log Handout","../lesson18/lesson18_1.htm",0,
"Obesity Maps Powerpoint","obesity_maps.ppt",0,	
"Walkability Checklist Student Handout","../lesson11/lesson11_3.htm",0



);

//lesson 19
arMenu19 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 19:Land Use and Nitrogen","../lesson19/lesson19.htm",0,

"Student Handout 1: Watershed Profiles","../lesson19/1.html",0,
"Student Handout 2: Bar charts: Nitrogen Loads by Tributary Basin","../lesson19/2.html",0,
"Student Handout 3: Development inside the Growth Area","../lesson19/3.html",0,
"Student Handout 4: Development outside the Growth Area","../lesson19/4.html",0,
"Student Handout 5: Wastewater Treatment Options","../lesson19/5.html",0,
"Student Handout 6: Best Management Practices Chart ('BMP')","../lesson19/6.html",0,
"National Geographic Maryland Smart Growth Map","http://www.op.state.md.us/national_growth/map.htm",0,
"Growth Area (Priority Funding Area) and Protected Lands Tributary basin maps","../lesson19/pdfs.html",0,
"Land Use maps by Tributary basin","../lesson19/pdfs.html",0
);
//lesson 20
arMenu20 = new Array(

"",

0,75,

"#000000","#ff0000",

"#9dbd5e","#d5e2b8",

"","",

"Lesson 20:Putting the Land to Work","../lesson20/lesson20.htm",0,

"Picture Maryland: Where Do We Grow From Here? Keeping Open Space Open","http://www.dnr.state.md.us/bay/picturemaryland/open.html",0,
"National Geographic Maryland Smart Growth Map","http://www.op.state.md.us/national_growth/map.htm",0,
"Article 'Eastern Shore Tree Pact Reached'","../lesson20/washington.html",0,
"'A Look at Maryland Agriculture'","../lesson20/marylandag.pdf",0,
"'Econoag' University of Maryland Publication","../lesson20/econag.pdf",0,
"Maryland County Agricultural Profiles","../lesson20/countyagprofs.pdf",0,
"National Farm data","../lesson20/mdfarms.xls",0,
"State Farm data","../lesson20/farmsall.xls",0,
"'Smart Ag & Smart Growth' Article","../lesson20/cornell.html",0
);

loader = (isFrames) ? (NS4) ? parent : parent.document.body : window;

loader.onload = startIt;

if(NS4){

	origWidth = loader.innerWidth;

	origHeight = loader.innerHeight;

	loader.onresize = reDo;

}

isLoaded = false;

NSresized = false;



if (!window.menuVersion) {

	clickKill = showVisited = NSfontOver = keepHilite = clickStart = false;

}



// 3.08 added next line

if (!window.imgHspace) imgHspace=0;



isWin = (navigator.appVersion.indexOf("Win") != -1)

if (!isWin && !isMac) NSfontOver = showVisited = false;



mSecsVis = secondsVisible*1000;

isRight = (window.navFrLoc && navFrLoc == "right");



//3.08 modified next line with added space

imgSuf = (isRight) ? ">"  : " ALIGN=RIGHT>";



//3.08 modified next line for use of imgHspace variable

imgStr = "<IMG SRC='" + imgSrc + "' WIDTH=" + imgSiz + " HEIGHT=" + imgSiz +" VSPACE=2 HSPACE="+ imgHspace +" BORDER=0"+ imgSuf;



// 3.08 added next line

fullImgSize = (imgSiz+(imgHspace*2));



//3.08 added next line: wrap item text by using span with image

if(IE4) imgStr = "<SPAN STYLE='height:100%;width:"+ (fullImgSize-(isRight?3:0)) +";float:"+ (isRight?"left":"right") +";overflow:hidden'>"+ imgStr +"</SPAN>";



//3.08 omitted next line:

//spStr = (isRight && NS4) ? "<SPACER TYPE=HORIZONTAL SIZE="+imgSiz+">" : "";



areCreated = false;

menuLoc = null;



function initVars() {

	if(areCreated) {

		for(i=1; i<topCount; i++) {

			cur = eval("elMenu"+i);

			clearTimeout(cur.hideTimer);

			cur.hideTimer=null;

		}

		clearTimeout(allTimer);

	}

	topCount = 1;

	areCreated = false;

	beingCreated = false;

	isOverMenu = false;

	currentMenu = null;

	allTimer = null;

}



initVars();



function NSunloaded(){

	isLoaded = false;

}



//  mainFrName  ===> "main"



function NSloaded(e){

	if (e.target.name == mainFrName) {

		initVars();

		startIt();

	}

}



function IEunloaded() {

	initVars();

	isLoaded = false;

	setTimeout("keepTrack()",50)

}



function keepTrack() {

	if (menuLoc.document.readyState == "complete") {

		initVars();

		startIt();

	}

	else {

		setTimeout("keepTrack()",50);

	}

}



function startIt() {

	isLoaded = true;

	if (isFrames) {

		menuLoc = eval("parent.frames." + mainFrName);

		if (NS4) {

			loader.captureEvents(Event.LOAD);

			loader.onload = NSloaded;

			menuLoc.onunload = NSunloaded;

		}

		if (IE4) {

			menuLoc.document.body.onunload = IEunloaded;



		}

	}

	else {

		menuLoc = window;

	}

	menuLoc.nav = nav = window;

	if (clickKill) {

		if (NS4) menuLoc.document.captureEvents(Event.MOUSEDOWN);

		menuLoc.document.onmousedown = clicked;

	}

	makeTop();	

}



function makeTop(){

	beingCreated = true;



// 3.08 added if statement

	if(IE4) {

		topZ = 0;

		for (z=0;z<menuLoc.document.all.length;z++){

			oldEl = menuLoc.document.all(z);

			topZ = Math.max(oldEl.style.zIndex,topZ)

		}

	}

	while(eval("window.arMenu" + topCount)) {

		(NS4) ? makeMenuNS(false,topCount) : makeMenuIE(false,topCount);

		topCount++

	}


//	status = (topCount-1) + " Hierarchical Menu Trees Created"

	status = "Where Do We Grow From Here?"

	areCreated = true;

	beingCreated = false;

}



function makeMenuNS(isChild,menuCount,parMenu,parItem) {

	tempArray = eval("arMenu" + menuCount);

	

	if (!isChild) {

		tempWidth = tempArray[0] ? tempArray[0] : menuWidth;

		menu = makeElement("elMenu" + menuCount,tempWidth,null,null);

	}

	else {

		menu = makeElement("elMenu" + menuCount,null,parMenu,null);

	}

	menu.array = tempArray;

	menu.setMenuTree = setMenuTree;

	menu.setMenuTree(isChild,parMenu);



	while (menu.itemCount < menu.maxItems) {

		menu.itemCount++;


//		status = "Creating Hierarchical Menus: " + menuCount + " / " + menu.itemCount;

		status = "";

		prevItem = (menu.itemCount > 1) ? menu.item : null;

		itemName = "item" + menuCount + "_" + menu.itemCount;



		menu.item = makeElement(itemName,null,null,menu);



		menu.item.prevItem = prevItem;

		menu.item.setup = itemSetup;

		menu.item.setup(menu.itemCount,menu.array);

		if (menu.item.hasMore) {

			makeMenuNS(true,menuCount + "_" + menu.itemCount,menu,menu.item);

			menu = menu.parentMenu;

		}

	}



	menu.lastItem = menu.item;

	menu.setup(isChild,parMenu,parItem);

}



//3.08 added function: determine if menu is in menu tree

function findTree(men){

	foundTree = false;

	for(i=11;i<men.array.length;i+=3){

		if(men.array[i]) {

			foundTree = true;

			break;

		}

	}



	return foundTree;

}



function setMenuTree(isChild,parMenu) {

	if (!isChild) {

		this.menuWidth = this.array[0] ? this.array[0] : menuWidth;

		this.menuLeft = this.array[1];

		this.menuTop = this.array[2];

		this.menuFontColor = this.array[3] ? this.array[3] : fntCol;

		this.menuFontOver = this.array[4] ? this.array[4] : overFnt;

		this.menuBGColor = this.array[5] ? this.array[5] : backCol;

		this.menuBGOver = this.array[6] ? this.array[6] : overCol;

		this.menuBorCol = this.array[7] ? this.array[7] : borCol;

		this.menuSeparatorCol = this.array[8] ? this.array[8] : separatorCol;

		this.treeParent = this;

		this.startChild = this;



// 3.08 is menu in menu tree?

		this.isTree = findTree(this);

	}

	else {

		this.menuWidth = parMenu.menuWidth;

		this.menuLeft = parMenu.menuLeft;

		this.menuTop = parMenu.menuTop;

		this.menuFontColor = parMenu.menuFontColor;

		this.menuFontOver = parMenu.menuFontOver;

		this.menuBGColor = parMenu.menuBGColor;

		this.menuBGOver = parMenu.menuBGOver;

		this.menuBorCol = parMenu.menuBorCol;

		this.menuSeparatorCol = parMenu.menuSeparatorCol;

		this.treeParent = parMenu.treeParent;



// 3.08 keep parent property value

		this.isTree = parMenu.isTree;

	}



	this.maxItems = (isChild) ? this.array.length/3 : (this.array.length-9)/3;

	this.hasParent = isChild;

	this.setup = menuSetup;

	this.itemCount = 0;

}



function makeMenuIE(isChild,menuCount,parMenu) {



	menu = makeElement("elMenu" + menuCount);

	menu.array = eval("arMenu" + menuCount);



	menu.setMenuTree = setMenuTree;

	menu.setMenuTree(isChild,parMenu);



	menu.itemStr = "";

	

	while (menu.itemCount < menu.maxItems) {

		menu.itemCount++;


//		status = "Creating Hierarchical Menus: " + menuCount + " / " + menu.itemCount;

		status = "";

		itemName = "item" + menuCount + "_" + menu.itemCount;



		arrayPointer = (isChild) ? (menu.itemCount-1)*3 :((menu.itemCount-1)*3)+9;

		dispText = menu.array[arrayPointer];

		hasMore = menu.array[arrayPointer + 2];

		htmStr = (hasMore) ? imgStr + dispText : dispText;



//3.08 modified next line: subtract borderwidth from menuwidth for item width

		menu.itemStr += "<SPAN ID=" + itemName + " STYLE=\"width:" + (menu.menuWidth-(borWid*2)) + "\">" + htmStr + "</SPAN><BR>";



		if (hasMore) {

			makeMenuIE(true,menuCount + "_" + menu.itemCount,menu);

			menu = menu.parentMenu;

		}	

	}



	menu.innerHTML = menu.itemStr;

	itemColl = menu.children.tags("SPAN");

	for (i=0; i<itemColl.length; i++) {

		it = itemColl(i);

		it.setup = itemSetup;

		it.setup(i+1,menu.array);

	}

	menu.lastItem = itemColl(itemColl.length-1);

	menu.setup(isChild,parMenu);

}



function makeElement(whichEl,whichWidth,whichParent,whichContainer) {

	if (NS4) {

		if (whichWidth) {

			elWidth = whichWidth;

		}

		else {

			elWidth = (whichContainer) ? whichContainer.menuWidth : whichParent.menuWidth;

			if (whichContainer) elWidth = elWidth-(borWid*2)-(itemPad*2);

		}

		if (!whichContainer) whichContainer = menuLoc;

		eval(whichEl + "= new Layer(elWidth,whichContainer)");

	}

	else {

		elStr = "<DIV ID=" + whichEl + " STYLE='position:absolute'></DIV>";

		menuLoc.document.body.insertAdjacentHTML("BeforeEnd",elStr);

		if (isFrames) eval(whichEl + "= menuLoc." + whichEl);

	}

	return eval(whichEl);

}



function itemSetup(whichItem,whichArray) {

	this.onmouseover = itemOver;

	this.onmouseout = itemOut;

	this.container = (NS4) ? this.parentLayer : this.offsetParent;



	arrayPointer = (this.container.hasParent) ? (whichItem-1)*3 : ((whichItem-1)*3)+9;



	this.dispText = whichArray[arrayPointer];

	this.linkText = whichArray[arrayPointer + 1];

	this.hasMore = whichArray[arrayPointer + 2];



	if (IE4 && this.hasMore) {

		this.child = eval("elMenu" + this.id.substr(4));

		this.child.parentMenu = this.container;

		this.child.parentItem = this;

	}



	if (this.linkText) {

		if (NS4) {

			this.captureEvents(Event.MOUSEUP)

			this.onmouseup = linkIt;

		}

		else {

			this.onclick = linkIt;

			this.style.cursor = "hand";

		}

	}



	if (NS4) {

		htmStr = this.dispText;

		if (fntBold) htmStr = htmStr.bold();

		if (fntItal) htmStr = htmStr.italics();



		htmStr = "<FONT FACE='" + fntFam + "' POINT-SIZE=" + fntSiz + ">" + htmStr+ "</FONT>";



//3.08 modified next two lines since we don't need to rewrite image everytime.

		this.htmStrOver = htmStr.fontcolor(this.container.menuFontOver);

		this.htmStr = htmStr.fontcolor(this.container.menuFontColor);



//3.08 ...and omitted next two lines

		//this.htmStr = (this.hasMore) ? imgStr + htmStr : spStr + htmStr;

		//this.htmStrOver = (this.hasMore) ? imgStr + htmStrOver : spStr + htmStrOver;	



//3.08 added if statement: write the image once only		

		if(this.hasMore) {

			this.document.write(imgStr);

			this.document.close();

		}



		this.visibility = "inherit";

		this.bgColor = this.container.menuBGColor;



		if (whichItem == 1) {

			this.top = borWid + itemPad;

		}

		else {

			this.top = this.prevItem.top + this.prevItem.clip.height + separator;

		}

		this.left = borWid + itemPad;

		this.clip.top = this.clip.left = -itemPad;

		this.clip.right = this.container.menuWidth-(borWid*2)-itemPad;



//3.08 added next 2 lines: maxTxtWidth and fullImgSize variables to help determine the width of txtLyr:

		maxTxtWidth = this.container.menuWidth-(borWid*2)-(itemPad*2);

		if (this.container.isTree) maxTxtWidth-=(fullImgSize); 



		this.txtLyr = new Layer(maxTxtWidth,this);



//3.08 added next line:

		if (isRight && this.container.isTree) this.txtLyr.left = fullImgSize;



		this.txtLyr.document.write(this.htmStr);

		this.txtLyr.document.close();

		this.txtLyr.visibility = "inherit";



//3.08 modified next line: changed "+=" to "="

		this.clip.bottom = this.txtLyr.document.height+itemPad;



		this.dummyLyr = new Layer(100,this);

		this.dummyLyr.left = this.dummyLyr.top = -itemPad;

		this.dummyLyr.clip.width = this.clip.width;

		this.dummyLyr.clip.height = this.clip.height;

		this.dummyLyr.visibility = "inherit";

	}

	else {

		with (this.style) {

			padding = itemPad;



//3.08 added if statement

			if (this.container.isTree && !this.hasMore) {

				if (isRight) paddingLeft = itemPad+fullImgSize;

				else paddingRight = itemPad+fullImgSize;

			}

			color = this.container.menuFontColor;

			fontSize = fntSiz + "pt";

			fontWeight = (fntBold) ? "bold" : "normal";

			fontStyle =	(fntItal) ? "italic" : "normal";

			fontFamily = fntFam;

		

			borderBottomWidth = separator + "px";

			borderBottomColor = this.container.menuSeparatorCol;

			borderBottomStyle = "solid";

			backgroundColor = this.container.menuBGColor;

		}

	}

}	



function menuSetup(hasParent,openCont,openItem) {

	this.onmouseover = menuOver;

	this.onmouseout = menuOut;

	

	this.showIt = showIt;

	this.keepInWindow = keepInWindow;

	this.hideTree = hideTree

	this.hideParents = hideParents;

	this.hideChildren = hideChildren;

	this.hideTop = hideTop;

	this.hasChildVisible = false;

	this.isOn = false;

	this.hideTimer = null;



	this.childOverlap = (perCentOver != null) ? ((perCentOver/100) * this.menuWidth) : childOverlap;

	this.currentItem = null;

	this.hideSelf = hideSelf;

		

	if (hasParent) {

		this.hasParent = true;

		this.parentMenu = openCont;

		if (NS4) {

			this.parentItem = openItem;

			this.parentItem.child = this;

		}

	}

	else {

		this.hasParent = false;

	}



	if (NS4) {

		this.bgColor = this.menuBorCol;

		this.fullHeight = this.lastItem.top + this.lastItem.clip.bottom + borWid;

		this.clip.right = this.menuWidth;

		this.clip.bottom = this.fullHeight;

	}

	else {

		with (this.style) {

			width = this.menuWidth;

			borderWidth = borWid;

			borderColor = this.menuBorCol;

			borderStyle = borSty;



//3.08 added next line

			zIndex = topZ;

		}



		this.lastItem.style.border="";

		this.fullHeight = this.scrollHeight;

		this.showIt(false);

		this.onselectstart = cancelSelect;

		this.moveTo = moveTo;

		this.moveTo(0,0);

	}

}



function popUp(menuName,e){

	if (NS4 && NSresized) startIt();

	if (!isLoaded) return;

	linkEl = (NS4) ? e.target : event.srcElement;

	if (clickStart) linkEl.onclick = popMenu;

	if (!beingCreated && !areCreated) startIt();

	linkEl.menuName = menuName;	

	if (!clickStart) popMenu(e);

}



function popMenu(e){

	if (!isLoaded || !areCreated) return true;



	eType = (NS4) ? e.type : event.type;

	if (clickStart && eType != "click") return true;

	hideAll();



	linkEl = (NS4) ? e.target : event.srcElement;

	

	currentMenu = eval(linkEl.menuName);

	currentMenu.hasParent = false;

	currentMenu.treeParent.startChild = currentMenu;

	

	if (IE4) menuLocBod = menuLoc.document.body;

	if (!isFrames) {

		xPos = (currentMenu.menuLeft) ? currentMenu.menuLeft : (NS4) ? e.pageX : (event.clientX + menuLocBod.scrollLeft);

		yPos = (currentMenu.menuTop) ? currentMenu.menuTop : (NS4) ? e.pageY : (event.clientY + menuLocBod.scrollTop);

	}

	else {

		switch (navFrLoc) {

			case "left":

				xPos = (currentMenu.menuLeft) ? currentMenu.menuLeft : (NS4) ? menuLoc.pageXOffset : menuLocBod.scrollLeft;

				yPos = (currentMenu.menuTop) ? currentMenu.menuTop : (NS4) ? (e.pageY-pageYOffset)+menuLoc.pageYOffset : event.clientY + menuLocBod.scrollTop;

				break;

			case "top":

				xPos = (currentMenu.menuLeft) ? currentMenu.menuLeft : (NS4) ? (e.pageX-pageXOffset)+menuLoc.pageXOffset : event.clientX + menuLocBod.scrollLeft;

				yPos = (currentMenu.menuTop) ? currentMenu.menuTop : (NS4) ? menuLoc.pageYOffset : menuLocBod.scrollTop;

				break;

			case "bottom":

				xPos = (currentMenu.menuLeft) ? currentMenu.menuLeft : (NS4) ? (e.pageX-pageXOffset)+menuLoc.pageXOffset : event.clientX + menuLocBod.scrollLeft;

				yPos = (currentMenu.menuTop) ? currentMenu.menuTop : (NS4) ? menuLoc.pageYOffset+menuLoc.innerHeight : menuLocBod.scrollTop + menuLocBod.clientHeight;

				break;

			case "right":

				xPos = (currentMenu.menuLeft) ? currentMenu.menuLeft : (NS4) ? menuLoc.pageXOffset+menuLoc.innerWidth : menuLocBod.scrollLeft+menuLocBod.clientWidth;

				yPos = (currentMenu.menuTop) ? currentMenu.menuTop : (NS4) ? (e.pageY-pageYOffset)+menuLoc.pageYOffset : event.clientY + menuLocBod.scrollTop;

				break;

		}

	}



	currentMenu.moveTo(xPos,yPos);

	currentMenu.keepInWindow()

	currentMenu.isOn = true;

	currentMenu.showIt(true);



	return false;

}



function menuOver(e) {

	this.isOn = true;

	isOverMenu = true;

	currentMenu = this;

	if (this.hideTimer) clearTimeout(this.hideTimer);

}



function menuOut() {

	if (IE4) {

		theEvent = menuLoc.event;

		if (theEvent.srcElement.contains(theEvent.toElement)) return;

	}

	this.isOn = false;

	isOverMenu = false;


//	menuLoc.status = "";

	menuLoc.status = "Where Do We Grow From Here?";

	if (!clickKill) allTimer = setTimeout("currentMenu.hideTree()",10);  

}



function itemOver(){

	if (keepHilite) {

		if (this.container.currentItem && this.container.currentItem != this) {

			if (NS4) {

				this.container.currentItem.bgColor = this.container.menuBGColor;

				if (NSfontOver) {

					with (this.container.currentItem.txtLyr.document) {

						write(this.container.currentItem.htmStr)

						close();

					}

				}

			}

			else {

				with (this.container.currentItem.style) {

					backgroundColor = this.container.menuBGColor;

					color = this.container.menuFontColor;

				}

			}

		}

	}



	if (IE4) {

		theEvent = menuLoc.event;

		if (theEvent.srcElement.tagName == "IMG") return;
if (this.dispText.substr(0,6)=="Lesson") return; // inactive the first menu
		this.style.backgroundColor = this.container.menuBGOver;

		this.style.color = this.container.menuFontOver;

	}

	else {
if (this.dispText.substr(0,6)=="Lesson") return; // inactive the first menu
		this.bgColor = this.container.menuBGOver;

		if (NSfontOver) {

			this.txtLyr.document.write(this.htmStrOver);

			this.txtLyr.document.close();

		}

	}



//	menuLoc.status = this.linkText;

	if (IE4 || NS4) menuLoc.status =  this.dispText.replace("&ouml;","ö").replace("&uuml;","ü").replace("&auml;","ä").replace("&Ouml;","Ö").replace("&Uuml;","Ü").replace("&Auml;","Ä");

	else menuLoc.status = "";



	this.container.currentItem = this;



	if (this.container.hasChildVisible) {

		this.container.hideChildren(this);

	}



	if (this.hasMore) {

		horOffset = (isRight) ? (this.container.childOverlap - this.container.menuWidth) : (this.container.menuWidth - this.container.childOverlap);



		if (NS4) {

			this.childX = this.container.left + horOffset;



//3.08 modified next line

			this.childY = (this.pageY+this.clip.top) + childOffset;

		}

		else {

			this.childX = this.container.style.pixelLeft + horOffset;



//3.08 modified next line

			this.childY = this.offsetTop + this.container.style.pixelTop + childOffset + borWid;

		}



		this.child.moveTo(this.childX,this.childY);

		this.child.keepInWindow();

		this.container.hasChildVisible = true;

		this.container.visibleChild = this.child;

		this.child.showIt(true);

	}

}



function itemOut() {

	if (IE4) {

		theEvent = menuLoc.event;

		if (theEvent.srcElement.contains(theEvent.toElement)

		|| (theEvent.fromElement.tagName=="IMG" && theEvent.toElement.contains(theEvent.fromElement)))

		return;

		if (!keepHilite) {

			this.style.backgroundColor = this.container.menuBGColor;

			this.style.color = this.container.menuFontColor;

		}

	}

	else {

		if (!keepHilite) {

			this.bgColor = this.container.menuBGColor;

			if (NSfontOver) {

				with (this.txtLyr.document) {

					write(this.htmStr);

					close();

				}

			}

	

		}

		if (!isOverMenu && !clickKill) {

			allTimer = setTimeout("currentMenu.hideTree()",10); 

		}

	}

}



function moveTo(xPos,yPos) {

	this.style.pixelLeft = xPos;

	this.style.pixelTop = yPos;

}



function showIt(on) {

	if (NS4) {

		this.visibility = (on) ? "show" : "hide";

		if (keepHilite && this.currentItem) {

			this.currentItem.bgColor = this.menuBGColor;

			if (NSfontOver) {

				with (this.currentItem.txtLyr.document) {

					write(this.currentItem.htmStr);

					close();

				}

			}

		}

	}

	else {

		this.style.visibility = (on) ? "visible" : "hidden";

		if (keepHilite && this.currentItem) {

			with (this.currentItem.style) {

				backgroundColor = this.menuBGColor;

				color = this.menuFontColor;

			}

		}

	}

	this.currentItem = null;

}



function keepInWindow() {

	scrBars = 20;

	botScrBar = (isFrames && navFrLoc=="bottom") ? (borWid*2) : scrBars;

	rtScrBar = (isFrames && navFrLoc=="right") ? (borWid*2) : scrBars;

	if (NS4) {

		winRight = (menuLoc.pageXOffset + menuLoc.innerWidth) - rtScrBar;

		rightPos = this.left + this.menuWidth;

   

		if (rightPos > winRight) {

			if (this.hasParent) {

				parentLeft = this.parentMenu.left;

				newLeft = ((parentLeft-this.menuWidth) + this.childOverlap);

				this.left = newLeft;

			}

			else {

				dif = rightPos - winRight;

				this.left -= dif;

			}

		}



		winBot = (menuLoc.pageYOffset + menuLoc.innerHeight) - botScrBar ;

		botPos = this.top + this.fullHeight;



		if (botPos > winBot) {

			dif = botPos - winBot;

			this.top -= dif;

		}

		

		winLeft = menuLoc.pageXOffset;

		leftPos = this.left;



		if (leftPos < winLeft) {

			if (this.hasParent) {

				parentLeft = this.parentMenu.left;

				newLeft = ((parentLeft+this.menuWidth) - this.childOverlap);

				this.left = newLeft;

			}

			else {

				this.left = 5;

			}

		}

	}

	else {

    	winRight = (menuLoc.document.body.scrollLeft + menuLoc.document.body.clientWidth) - rtScrBar;

		rightPos = this.style.pixelLeft + this.menuWidth;

	

		if (rightPos > winRight) {

			if (this.hasParent) {

				parentLeft = this.parentMenu.style.pixelLeft;

				newLeft = ((parentLeft - this.menuWidth) + this.childOverlap);

				this.style.pixelLeft = newLeft;

			}

			else {

				dif = rightPos - winRight;

				this.style.pixelLeft -= dif;

			}

		}



		winBot = (menuLoc.document.body.scrollTop + menuLoc.document.body.clientHeight) - botScrBar;

		botPos = this.style.pixelTop + this.fullHeight;



		if (botPos > winBot) {

			dif = botPos - winBot;

			this.style.pixelTop -= dif;

		}

		

		winLeft = menuLoc.document.body.scrollLeft;

		leftPos = this.style.pixelLeft;



		if (leftPos < winLeft) {

			if (this.hasParent) {

				parentLeft = this.parentMenu.style.pixelLeft;

				newLeft = ((parentLeft+this.menuWidth) - this.childOverlap);

				this.style.pixelLeft = newLeft;

			}

			else {

				this.style.pixelLeft = 5;

			}

		}

	}

}



function linkIt() {

	if (this.linkText.indexOf("javascript:")!=-1) eval(this.linkText)

	else menuLoc.location.href = this.linkText;

}



function popDown(menuName){

	if (!isLoaded || !areCreated) return;

	whichEl = eval(menuName);

	whichEl.isOn = false;

	if (!clickKill) whichEl.hideTop();

}



function hideAll() {

	for(i=1; i<topCount; i++) {

		temp = eval("elMenu" + i + ".startChild");

		temp.isOn = false;

		if (temp.hasChildVisible) temp.hideChildren();

		temp.showIt(false);

	}	

}



function hideTree() { 

	allTimer = null;

	if (isOverMenu) return;

	if (this.hasChildVisible) {

		this.hideChildren();

	}

	this.hideParents();

}



function hideTop() {

	whichTop = this;

	(clickKill) ? whichTop.hideSelf() : (this.hideTimer = setTimeout("if(whichTop.hideSelf)whichTop.hideSelf()",mSecsVis));

}



function hideSelf() {

	this.hideTimer = null;

	if (!this.isOn && !isOverMenu) { 

		this.showIt(false);

	}

}



function hideParents() {

	tempMenu = this;

	while (tempMenu.hasParent) {

		tempMenu.showIt(false);

		tempMenu.parentMenu.isOn = false;		

		tempMenu = tempMenu.parentMenu;

	}

	tempMenu.hideTop();

}



function hideChildren(item) {

	tempMenu = this.visibleChild;

	while (tempMenu.hasChildVisible) {

		tempMenu.visibleChild.showIt(false);

		tempMenu.hasChildVisible = false;

		tempMenu = tempMenu.visibleChild;

	}



	if (!this.isOn || !item.hasMore || this.visibleChild != this.child) {

		this.visibleChild.showIt(false);

		this.hasChildVisible = false;

	}

}



function cancelSelect(){return false}



function reDo(){

	if (loader.innerWidth==origWidth && loader.innerHeight==origHeight) return;

	initVars();

	NSresized=true;

	menuLoc.location.reload();

}



function clicked() {

	if (!isOverMenu && currentMenu!=null && !currentMenu.isOn) {

		whichEl = currentMenu;

		whichEl.hideTree();

	}

}



window.onerror = handleErr;



function handleErr(){

	arAccessErrors = ["permission","access"];

	mess = arguments[0].toLowerCase();

	found = false;

	for (i=0;i<arAccessErrors.length;i++) {

		errStr = arAccessErrors[i];

		if (mess.indexOf(errStr)!=-1) found = true;

	}

	return found;

}
//end



