

			var DHTML = (document.getElementById || document.all);
		
			// decide which section of the site we are in
			var url = document.location;
			var myPage = new String(url.pathname);
			var aryDir = myPage.split('/');
			var mySection = null;
			// make current section's layer visible, if reasonable to do so				
			if(aryDir[1]) {
				mySection = aryDir[1];	
				myID = aryDir[1] + '_' + aryDir[2];
			}
			
			// reference the number key value of the images and nav layers, based on the section (first dir of the URL)
            var aryPlacementTD = Array();
			aryPlacementTD["aboutus_links"] = "aboutus";
            aryPlacementTD["getinvolved_links"] = "getinvolved";
            
			var aryLayerName = Array();
			aryLayerName["aboutus_links"] = "aboutus_links";
            aryLayerName["getinvolved_links"] = "getinvolved_links";
			
			// array of Nav Layer Objects
			var aryLayerObj = Array();
			
			// array of Img Objects
			var aryImgObj = Array();
			
            
			
			
			// a reference to the position of the first img object in the navigation
			var x = Array();
			var y = Array();
			
			// keep track of which nav image key is visible
			var curVisibleImgKey = null;
			if(aryLayerName[mySection]) curVisibleImgKey = aryLayerName[mySection];
			
			// keep track of which nav layer is visible
			var curVisibleLayerName = null;
			
			function setReferenceObject() {	
				// get value of x, pronto
              
				if(DHTML) {
                    for(i in aryPlacementTD) {
                        objTD = aryPlacementTD[i];
                        // a reference to the first img object in the navigation
                        var tmp = null;
                        count = 0;
                        while(!x[i]) {
                            tmp = new getObj(objTD);				
                            x[i] = findPosX(tmp.obj);
                            y[i] = findPosY(tmp.obj);					
                            if(!x[i]) setTimeout(" var a=1;", 500);
                            count++;
                            if(count>1000) return;
                        }
                     
                        y[i] = y[i]-7;
                        x[i] = x[i]-76;
                    }
				}
				// preload all other image states into this array, at our luxery
				var myimages=new Array();
				
				// highlight current section
				if(mySection) {
					// make this Section's Layer visible, if we are one sub-page
					sectionKey = null;
					if(aryLayerName[mySection]) {
			
						sectionKey = aryLayerName[mySection];
				
						curVisibleLayerName = sectionKey;
						//sld: 12-14-03: currently selected is already visible
						makeLayerVisible(curVisibleLayerName);	
					
						// make a reference to the currently selected button in images array;
						myimages[sectionKey + 'off'] = '/images/nav/' + mySection + '/' + sectionKey + 'off.gif';
					}
				}	

				// get handle to images and preload rollover states
				/*var aryMainStates = new Array('on');
				for(var i in aryLayerName) {				
					// get handles to all the image objects
					imgKey = i;
					aryImgObj[imgKey] = document.images["imgKey_" + imgKey];


					// loop thru states and preload images
					for(var u in aryMainStates) {
						state = aryMainStates[u];
						myimages[imgKey + state] = '/images/nav/' + mySection + '/' + imgKey + state + '.gif';
					}	
				}
				
				preloadimages(myimages);*/
				
				if(DHTML) {
					// place all of the layers in relation to the first image and get handle to object
					positionLayers(0);	
				}						
			}
			
			function positionLayers(override)
			{		
				// place all of the layers in relation to the first image and get handle to object
				for(var i in aryLayerName) {				
					lyr = aryLayerName[i];						
					if(!aryLayerObj[lyr]  || override) {
						aryLayerObj[lyr] = setLyr(lyr);
					}				
				}	
				
			}
			function preloadimages(myimages)
			{
			if(document.images) {
				for (var i in myimages){
					src = myimages[i];
					myimages[i] = new Image();
					myimages[i].src = src;
				}
			}
			}
			
			function Toggle(imgKey, mouseState)
			{
				return;
			// a reference to the main img object in the navigation
			imgKey = imgKey;	
			if(!aryImgObj[imgKey]) {	
				aryImgObj[imgKey] = document.images["imgKey_" + imgKey];
			}

			if(mouseState == 'mouseover') {
				// un-highlight previous nav objects
				if(curVisibleImgKey && curVisibleImgKey != imgKey) {					
					HighlightNav(curVisibleImgKey, 'off');			
				}
				
				// hilight current nav objects
				HighlightNav(imgKey, 'on');
			
				curVisibleImgKey = imgKey;
			} else if(mouseState == 'mouseout') {	
				if(!aryImgObj[curVisibleImgKey]) {	
					aryImgObj[curVisibleImgKey] = document.images["imgKey_" + curVisibleImgKey];
				} 
				imgObj = aryImgObj[curVisibleImgKey];	
			
				if(imgObj) imgObj.src = '/images/nav/' + mySection + '/' + curVisibleImgKey + '.gif';		
				
			} 
			}
				
			function HighlightNav(myKey, state)
			{	

			return;		
			// get reference to main image	
			myKey = '' + myKey;
			if(!aryImgObj[myKey]) {	
				aryImgObj[myKey] = document.images["imgKey_" + myKey];
			} 
			imgObj = aryImgObj[myKey];	

			// set the source of the main button
			imgObj.src = '/images/nav/' + mySection + '/' + myKey + state + '.gif';							
			}
			
			
			function makeLayerVisible(lyr) {	
							
				// place the layer in relation to the first image	
				if(!aryLayerObj[lyr]) {
					aryLayerObj[lyr] = setLyr(lyr);
				}
				
				// make layer visible
				aryLayerObj[lyr].style.visibility = 'visible';
			}

			
			
			function showSubNav(lyr) {			
				// we haven't established dimensions of the image object that we place the layer in relation to, yet
				// or, we do not have a browser capable of dealing with the sub-nav
				if(!x[lyr] || !DHTML) return;
				
				// make sure the fullprograminfo layer isn't already showing
				if(curVisibleLayerName == lyr) return; 
				
				// hide previously visible layer, if necessary
				closeSubNav();
				
				// make the layer visible
				makeLayerVisible(lyr);
				
				// make note of currently visible layer
				curVisibleLayerName = lyr;
                
                 // make the "about us" green backround go away
                tmp = new getObj(aryPlacementTD[lyr]);
                tmp.style.backgroundColor="#CEDED8";
            
			}
			
			function getObj(name)
			{
			
			  // sld: added null state
			  //this.obj = null;
			  if (document.getElementById)
			  {  
				  
				// added qualifier (in case sent in bogus element id)
				if (document.getElementById(name)) 
				{
				  this.obj = document.getElementById(name);
				  this.style = document.getElementById(name).style;
				}
			  }
			  else if (document.all)
			  {
				// added qualifier (in case sent in bogus element id)
				if (document.all[name]) 
				{
				  this.obj = document.all[name];
				  this.style = document.all[name].style;
				}
			  }
			  else if (document.layers)
			  {
				// added qualifier (in case sent in bogus element id)
				if (document.layers[name]) 
				{	  
				  this.obj = document.layers[name];
				  this.style = document.layers[name];
				}
			  }
			}


			function repositionLayer() {	
             for(i in aryPlacementTD) {
                    objTD = aryPlacementTD[i];
                    // a reference to the first img object in the navigation
                    var tmp = null;
                    count = 0;
                    
                    tmp = new getObj(objTD);				
                    x[i] = findPosX(tmp.obj);
                    y[i] = findPosY(tmp.obj);					
                    if(!x[i]) setTimeout(" var a=1;", 500);
                    count++;
                    if(count>1000) return;
                    
                 
                    y[i] = y[i]-7;
                    x[i] = x[i]-76;
                }	
                
				
				//if(curVisibleLayerName) {				
					//aryLayerObj[curVisibleLayerName] = setLyr(curVisibleLayerName);
				//}
				
				positionLayers(1);
			}

						 
			function closeSubNav() { 
				// hide previously visible layer, if necessary
				if(aryLayerObj[curVisibleLayerName]) {
                     objTD = aryPlacementTD[curVisibleLayerName];
                     tmp = new getObj(objTD);
                     tmp.style.backgroundColor="#FFFFFF";
                    aryLayerObj[curVisibleLayerName].style.visibility = 'hidden';
                }
				
				// make note of the currently visible layer nolonger being visible
				curVisibleLayerName = null;
			}
			
						
			function findPosX(obj)
			{
//var str = '';
				var curleft = 0;
				if(obj) {
					if (obj.offsetParent)
					{
						while (obj.offsetParent)
						{
						
//str = str + " id:" + obj.id + ":";							
//str = str + " obj.offsetParent: " + obj.offsetParent;
//str = str + " obj.offsetLeft: " + obj.offsetLeft + "<br>";
					
							curleft += obj.offsetLeft;
							
 							// konqueror is not accounting any offset b/t final table & body objects.						
 							if(obj.id == 'my3rdTableUp' && obj.offsetLeft==0) {
								curleft += 10;		
							}
							obj = obj.offsetParent;
						}
					}
					else if (obj.x)
						curleft += obj.x;
				}	
//document.write(str);				
				return curleft;
			}
		

			function findPosY(obj)
			{	
//var str = '';				
				var curtop = 0;
				var objHeight = 0;
				if(obj) {
					if (obj.offsetParent)
					{
						while (obj.offsetParent)
						{	
//str = str + " id: " + obj.id;							
//str = str + " obj.offsetParent: " + obj.offsetParent;
//str = str + " obj.offsetTop: " + obj.offsetTop + "<br>";							
							curtop += obj.offsetTop; // + obj.offsetTop;
							// konqueror is not accounting any offset b/t final table & body objects.						
 							if(obj.id == 'mySecondTable' && obj.offsetLeft==0) {
//alert('inside');                            
								curtop += 10;		
							}
							obj = obj.offsetParent;
						}
					}
					else if (obj.y)
					{	
						curtop += obj.y;
					}
				}
//document.write(str);					
				// the height of the image we are referring off of is 20px
				return curtop + 20;
			}

				
			function setLyr(lyr)
			{			           
				var obj = new getObj(lyr);
				obj.style.top = y[lyr] + 'px';			
				obj.style.left = x[lyr] + 'px';
				
				return obj;
			}		

		
			function hideLayers() {
				// or, we do not have a browser capable of dealing with the sub-nav
				if(!DHTML) return;
                // make the layer green backround go away
                for(i in aryPlacementTD) {
                    objTD = aryPlacementTD[i];
                    tmp = new getObj(objTD);
                    tmp.style.backgroundColor="#FFFFFF";
                }	
               
				if(aryLayerName[mySection]) {	// we have a permanently highlighted nav layer (since we are on sub-page)				
					sectionKey = aryLayerName[mySection];
					//Toggle(sectionKey, 'mouseover');
					showSubNav(sectionKey);
				} else { // we don't have a permanently highlighted nav layer (since we are on home page)
					closeSubNav();
					if(curVisibleImgKey) HighlightNav(curVisibleImgKey, 'off');
					curVisibleImgKey = null;
				}
			}
		


