				
		function addButtonEvent(obj, type, fn) { 
			  	if (obj.attachEvent) { 
    			obj['e'+type+fn] = fn; 
    			obj[type+fn] = function(){obj['e'+type+fn]( window.event );} 
    			obj.attachEvent('on'+type, obj[type+fn]); 
  			}else{
    			obj.addEventListener( type, fn, false );
			}
		}
		 
		function removeButtonEvent(obj, type, fn) { 
  			if (obj.detachEvent) { 
    			obj.detachEvent('on'+type, obj[type+fn]); 
    			obj[type+fn] = null;
  			}else{
    			obj.removeEventListener( type, fn, false );
    		} 
		}
		
		// onmouseover/onclick events for the side bar links
		var selectedButton = null;
		
		function buttonOver(evt){
			// first get the event
			if (!evt) var evt = window.event;
			// now get the target button
			var button;
			if (evt.target) button = evt.target;
			else if (evt.srcElement) button = evt.srcElement;
			if (button.nodeType == 3) // defeat Safari bug
				button = button.parentNode;
			
			// handles nested elements in button div tags
			if (button.tagName != "INPUT") {
				button = button.parentNode;
			}
				
			if (selectedButton != button){
				button.className = "oveButton";
				button.style.cursor = "hand";
				button.style.cursor = "pointer";
			}
		}
		
		function buttonOut(evt){
			// first get the event
			if (!evt) var evt = window.event;
			// now get the target button
			var button;
			if (evt.target) button = evt.target;
			else if (evt.srcElement) button = evt.srcElement;
			if (button.nodeType == 3) // defeat Safari bug
				button = button.parentNode;
			
			// handles nested elements in button div tags
			if (button.tagName != "INPUT") {
				button = button.parentNode;
			}
			
			if (selectedButton != button) {
				button.className = "norButton";
			}
		}
		
		function buttonSelect(evt){
			// first get the event
			if (!evt) var evt = window.event;
			// now get the target button
			var button;
			if (evt.target) button = evt.target;
			else if (evt.srcElement) button = evt.srcElement;
			if (button.nodeType == 3) // defeat Safari bug
				button = button.parentNode;
			
			// handles nested elements in button div tags
			if (button.tagName != "INPUT") {
				button = button.parentNode;
			}
			
			button.className = "selButton";
			button.style.cursor = "hand";
			button.style.cursor = "pointer";
			if (selectedButton != null && selectedButton != button) {
				selectedButton.className = "norButton";
			}
			selectedButton = button;
		}


		function addButtonListeners() {
			var no_page_inputs = document.getElementsByTagName("input").length;
	
			for(j=0; j<no_page_inputs; j++) {
				// add the listeners to button for highlights
				currentInput = document.getElementsByTagName("input")[j];
				if (currentInput.className == "norButton") {
					addButtonEvent(currentInput, "mouseover", buttonOver);
					addButtonEvent(currentInput, "mouseout", buttonOut);
					addButtonEvent(currentInput, "mousedown", buttonSelect);
				}
			}
			
			//if(buildCalled != "undefined")
				//build();
		}
		
		addOnloadEvent(addButtonListeners);