	Event.observe(window, 'load', init, false);	function init(){	var theThing, theA, theDiv, theFile, thePath;		//	update the footer. We can do this asynchronously, since we do not process further.		//	If we find that we need to process later, the general method would become the same		//theDiv = 'footer';		theA = document.getElementById('footer').getElementsByTagName('a')[0];		if (theA) {			theFile = theA.getAttribute('href');			if (theFile) {				var theFooter = new Ajax.Updater('footer', theFile, { method: 'get', asynchronous: true});			}		}				// 	populate the global navigation bar from the file specified in the single		//	anchor in #nav-h div in the file. This technique allows Dreamweaver to maintain the link if we		//	move the file in the directory structure. 		theDiv = 'nav-h'; theFile=null;		theA = document.getElementById(theDiv).getElementsByTagName('a')[0];		if (theA) {			theFile = theA.getAttribute('href');			if (theFile) {				theThing = new Ajax.Updater(theDiv, theFile, { method: 'get', asynchronous: false});			}		}		//	we should have received a file containing a nested UL		//	Update all those LI that contain a UL to provide visual clue that there is more		//	And accomodate the bug-ridden IE 6		theThing = document.getElementById(theDiv).getElementsByTagName("UL")[0];		if(theThing) {			__fixnav_h(theThing);			if (window.attachEvent) {				__fixIE(theThing);			}		}		//	TODO:		//	keeping the global navigation file, nav-h.html, at the root makes sense		//	but we have hacked it right now so that the links work for the first level 		//	below the root. This means that Dreamweaver flags them as broken links		//	and it means the the technique only works for a single level down.				// get the pathname for the file		var thePathA = theFile.split('/');		thePathA.pop();		thePath = thePathA.join('/');		if(!(thePath == "")) {			var theAs = theThing.getElementsByTagName("A");		for(var i = 0; i<theAs.length; i++) {			var theHREF = theAs[i].getAttribute('href');			if(theHREF.indexOf('//') == -1) {				theAs[i].setAttribute('href', thePath + '/' + theHREF);			} else {				//	IE6 does it differently: it provides the complete URL				var theURL = window.location.toString();				var theURLA = theURL.split('/');				theURLA.pop();				theURL = theURLA.join('/').toString();				//	strip off the window location				theHREF = theHREF.slice(theURL.length);				theAs[i].setAttribute('href', thePath + theHREF);			}		}		}				//		theDiv = 'nav_local';		theA = document.getElementById(theDiv).getElementsByTagName('a')[0];		if (theA) {			theFile = theA.getAttribute('href');			if (theFile) {				theThing = new Ajax.Updater(theDiv, theFile, { method: 'get', asynchronous: false});			}		}				theThing = document.getElementById(theDiv).getElementsByTagName("UL")[0];		if(theThing) {			__fixnav_h(theThing);			if (window.attachEvent) {				__fixIE(theThing);			}		}	}__fixnav_h = function(level) {	var theLevel = level;	if (!(theLevel)) { return };	var theLIs = theLevel.childNodes;	for (var i=0; i<theLIs.length; i++) {		var theLI = theLIs[i];		if((theLI.tagName) && (theLI.tagName == "LI")){			var theULs = theLI.getElementsByTagName("UL");			if(theULs.length > 0 ) {				var theAs = theLI.getElementsByTagName("A");				if(theAs.length > 0 ) {					//theAs[0].innerHTML += " &raquo;";				}			__fixnav_h(theULs[0])			}		}	}}__fixIE = function(theList) {//	This function is not strictly necessary for IE7 or Opera 9.21, but appears to do no harm//	The following code filters out both IE 7 and Opera 9.21.	if(parseInt(navigator.appVersion) > 6) {		return;	}	if (!(theList)) return;	var theLIs = theList.getElementsByTagName("LI");	for (var i=0; i<theLIs.length; i++) {		theLIs[i].onmouseover=function() {			this.className+=" IE";		}		theLIs[i].onmouseout=function() {			this.className=this.className.replace(new RegExp(" IE\\b"), "");		}	}}