			var adaAccElemsObject = {}; // object for accordian elements
			
			function getObjectLength(_obj) {
				var items = 0;
				for(var item in _obj) {
					items++;
				}
				return items;
			}
			function adaShowHide(ref, classRef) {
				eval(ref).className = classRef;
			}
			
			function oCBehaviors(ada, textNode, doThis, title, text) {
				ada.setAttribute("href", "javascript:" + doThis);
				ada.setAttribute("title", title);
				textNode.nodeValue = text;
			}
			
			
			function getObjByElem(elem) {
				var cur_elem_id = elem.getAttribute('id');
				//alert(cur_elem_id);
			}
			
			// Begin persistent Event handling fns // keep events globally accessible 
			function handleAdaFocus(event) {
				getObjByElem(this);
				this.removeClass('hideADALink');
				this.addClass('showADALink');
		//		adaShowHide(this, showClass);
		//		this.focus();
			}
			function handleAdaKeyPress(event) {
				getObjByElem(this);
		//		switch (state) {
		//				case "o" : 
		//					oCBehaviors(ada, textNode, closeScript, closeTitle, closeText);
		//					state = "c";
		//					break;
		//				case "c" : 
		//					oCBehaviors(ada, textNode, openScript, openTitle, openText);
		//					state = "o";
		//					break;
		//		}
			}
			function handleAdaClick(event) {
				getObjByElem(this);
		//		switch (state) {
		//				case "o" : 
		//					oCBehaviors(ada, textNode, openScript, openTitle, openText);
		//					state = "o";
		//					break;
		//				case "c" : 
		//					oCBehaviors(ada, textNode, closeScript, closeTitle, closeText);
		//					state = "c";
		//					break;
		//			}
			}
			function handleAdaBlur(event) {
		//		adaShowHide(this, hideClass);
				this.removeClass('showADALink');
				this.addClass('hideADALink');
			}
			
			
			function createADALink(id, startState, openScript, closeScript, openTitle, closeTitle, hideClass, showClass, openText, closeText) {
				if (!document.getElementById || !document.getElementById(id)) 
					return false;
				var div = document.getElementById(id);
				var ada = document.createElement("a");
				ada.setAttribute("href", "javascript:" + openScript);
				ada.setAttribute("title", openTitle);
				ada.className = "hideClass";
				ada.setAttribute("class", hideClass);
				ada.setAttribute("id",id+"_ada_a");
				
				var curIndex = getObjectLength(adaAccElemsObject);
				alert(curIndex);
				
				ada.addEvent('focus',handleAdaFocus.bindWithEvent(ada));
				ada.addEvent('click',handleAdaClick.bindWithEvent(ada));
				ada.addEvent('keypress',handleAdaKeyPress.bindWithEvent(ada));
				ada.addEvent('blur',handleAdaBlur.bindWithEvent(ada));
				
				// Event handling for ada links
				//ada.addEventListener("onFocus",handleAdaFocus(),true);
				//ada.addEventListener("onclick",handleAdaClick(),true);
				//ada.addEventListener("onkeypress",handleAdaKeyPress(),true);
				//ada.addEventListener("onblur",handleAdaBlur(),true);
				
				var textNode = document.createTextNode(openText);
				ada.appendChild(textNode);
				div.appendChild(ada);
				setADAClickKeyBehaviors(div, ada, textNode, startState, openScript, closeScript, openTitle, closeTitle, hideClass, showClass, openText, closeText);
			}
			// new ADA Link initiation fn
			function initADALink(curAdaItem) {
				if(!document.getElementById || !$(curAdaItem.id)) {
					//alert('somethin aint right...');
					return false;
				} else {
					//alert('okay, init ada links');
				}
				//alert(curAdaItem.id);
				var div = document.getElementById(curAdaItem.id);
				var ada = document.createElement("a");
				ada.setAttribute("href", "javascript:" + curAdaItem.openScript);
				ada.setAttribute("title", curAdaItem.openTitle);
				ada.className = "hideClass";
				ada.setAttribute("class", curAdaItem.hideClass);
				ada.setAttribute("id",curAdaItem.id+"_ada_a");
				
				//var curIndex = getObjectLength(adaAccElemsObject);
				//alert(curIndex);
				
				ada.addEvent('focus',handleAdaFocus.bindWithEvent(ada));
				//ada.addEvent('focus', function(event) { alert('meh'); }.bindWithEvent(this));
			//	ada.addEvent('focus',function(event) {handleAdaFocus(this);});
			//	ada.addEvent('focus', function() { alert('meh');});
				ada.addEvent('click',handleAdaClick.bindWithEvent(ada));
				ada.addEvent('keypress',handleAdaKeyPress.bindWithEvent(ada));
				ada.addEvent('blur',handleAdaBlur.bindWithEvent(ada));
				
				var textNode = document.createTextNode(curAdaItem.openText);
				ada.appendChild(textNode);
				div.appendChild(ada);
				
				//setADAClickKeyBehaviors(div, ada, textNode, startState, openScript, closeScript, openTitle, closeTitle, hideClass, showClass, openText, closeText);
			}
			// spec out initial states, all actions?
			function setCreateADALink() {
				var openAdaTxt = "click or hit 'enter' to open";
				var closeAdaTxt = "click or hit 'enter' to close";
				
				/*adaAccElemsObject.mcb_btn = new Object;
				adaAccElemsObject.mcb_btn.id = "mcb_btn";
				adaAccElemsObject.mcb_btn.startState = 0;
				adaAccElemsObject.mcb_btn.openScript = "abstractAcc(0);";
				adaAccElemsObject.mcb_btn.closeScript = "abstractAcc(1);";
				adaAccElemsObject.mcb_btn.openTitle = openAdaTxt;
				adaAccElemsObject.mcb_btn.closeTitle = closeAdaTxt;
				adaAccElemsObject.mcb_btn.hideClass = "hideADALink";
				adaAccElemsObject.mcb_btn.showClass = "showADALink";
				adaAccElemsObject.mcb_btn.openText = openAdaTxt;
				adaAccElemsObject.mcb_btn.closeText = closeAdaTxt;
				initADALink(adaAccElemsObject.mcb_btn);
				initADALink(adaAccElemsObject.mcb_btn);*/
				//createADALink("mcb_btn", "o", "openMainCont(1)", "openMainCont(0)", "click or hit 'enter' to open", "click or hit 'enter' to close", "hideADALink", "showADALink", "click or hit 'enter' to open", "click or hit 'enter' to close");
				
				adaAccElemsObject.ltc_t_0 = new Object;
				adaAccElemsObject.ltc_t_0.id = "ltc_t_0";
				adaAccElemsObject.ltc_t_0.startState = 0;
				adaAccElemsObject.ltc_t_0.openScript = "abstractAcc(0);";
				adaAccElemsObject.ltc_t_0.closeScript = "abstractAcc(1);";
				adaAccElemsObject.ltc_t_0.openTitle = openAdaTxt;
				adaAccElemsObject.ltc_t_0.closeTitle = closeAdaTxt;
				adaAccElemsObject.ltc_t_0.hideClass = "hideADALink";
				adaAccElemsObject.ltc_t_0.showClass = "showADALink";
				adaAccElemsObject.ltc_t_0.openText = openAdaTxt;
				adaAccElemsObject.ltc_t_0.closeText = closeAdaTxt;
				initADALink(adaAccElemsObject.ltc_t_0);
				//createADALink("ltc_t_0", "o", "abstractAcc(0);", "abstractAcc(1);", "click or hit 'enter' to open", "click or hit 'enter' to close", "hideADALink", "showADALink", "click or hit 'enter' to open", "click or hit 'enter' to close");
				
				adaAccElemsObject.ltc_t_1 = new Object;
				adaAccElemsObject.ltc_t_1.id = "ltc_t_1";
				adaAccElemsObject.ltc_t_1.startState = 0;
				adaAccElemsObject.ltc_t_1.openScript = "abstractAcc(1);";
				adaAccElemsObject.ltc_t_1.closeScript = "abstractAcc(2);";
				adaAccElemsObject.ltc_t_1.openTitle = openAdaTxt;
				adaAccElemsObject.ltc_t_1.closeTitle = closeAdaTxt;
				adaAccElemsObject.ltc_t_1.hideClass = "hideADALink";
				adaAccElemsObject.ltc_t_1.showClass = "showADALink";
				adaAccElemsObject.ltc_t_1.openText = openAdaTxt;
				adaAccElemsObject.ltc_t_1.closeText = closeAdaTxt;
				initADALink(adaAccElemsObject.ltc_t_1);
				//createADALink("ltc_t_1", "c", "abstractAcc(1);", "abstractAcc(2);", "click or hit 'enter' to open", "click or hit 'enter' to close", "hideADALink", "showADALink", "click or hit 'enter' to open", "click or hit 'enter' to close");
				
				adaAccElemsObject.ltc_t_2 = new Object;
				adaAccElemsObject.ltc_t_2.id = "ltc_t_2";
				adaAccElemsObject.ltc_t_2.startState = 0;
				adaAccElemsObject.ltc_t_2.openScript = "abstractAcc(2);";
				adaAccElemsObject.ltc_t_2.closeScript = "abstractAcc(1);";
				adaAccElemsObject.ltc_t_2.openTitle = openAdaTxt;
				adaAccElemsObject.ltc_t_2.closeTitle = closeAdaTxt;
				adaAccElemsObject.ltc_t_2.hideClass = "hideADALink";
				adaAccElemsObject.ltc_t_2.showClass = "showADALink";
				adaAccElemsObject.ltc_t_2.openText = openAdaTxt;
				adaAccElemsObject.ltc_t_2.closeText = closeAdaTxt;
				initADALink(adaAccElemsObject.ltc_t_2);
				//createADALink("ltc_t_2", "c", "abstractAcc(2);", "abstractAcc(1);", "click or hit 'enter' to open", "click or hit 'enter' to close", "hideADALink", "showADALink", "click or hit 'enter' to open", "click or hit 'enter' to close");
			}