            var highlighted = new Array();
            var parents = new Array();
            parents['menu_1_2_1'] = 'menu_1_2';
			parents['menu_1_2_2'] = 'menu_1_2';
			parents['menu_2_2_1'] = 'menu_2_2';
            parents['menu_2_2_2'] = 'menu_2_2';
            parents['menu_2_2_3'] = 'menu_2_2';
            parents['menu_2_2_4'] = 'menu_2_2';
            parents['menu_3_2_1'] = 'menu_3_2';
			parents['menu_3_2_2'] = 'menu_3_2';
			parents['menu_3_2_3'] = 'menu_3_2';

			var children = new Array();
            children['menu_1_1'] = 'menu_1_2';
			children['menu_2_1'] = 'menu_2_2';
			children['menu_3_1'] = 'menu_3_2';

			var level_2 = new Array();
			level_2[0] = 'menu_1_2';
			level_2[1] = 'menu_2_2';
			level_2[2] = 'menu_3_2';

			var checkIt;
			var moved;

			function closeAll(){
			    if (highlighted['level_2_entry']){
				    deLight(highlighted['level_2_entry']);
			    }
			    if (highlighted['level_1']){
				    deLightLevel1(highlighted['level_1']);
			    }

				for (i=0; i<level_2.length; i++){
				    level2 = new getObj(level_2[i]);
					level2.style.display='none';
				}
				highlighted['level_2'] = false;
		    }

			function checkUserInput(dura)
			{
//			    alert(dura);
				if (checkIt) clearTimeout(checkIt);
				if (dura >= 0){
					checkIt = setTimeout('closeAll()',dura);
				}
			}

			function checkMouseAction(){
			    if (!moved){
			        checkUserInput(500);
			        moved = true;
			    }
			}

			function deLight(someObj){
			    x = someObj.className;
			    if (someObj.className=="level_2_active_wide" || someObj.className=="level_2_inner_wide"){
						someObj.className="level_2_inner_wide";
			        }else{
			          //  alert (someObj.id + ' ' + x);
			    		someObj.className="level_2_inner";
			    }
				highlighted['level_2_entry'] = false;
			}

		   function deLightLevel1(someObj){
			    x = someObj.className;
			    if (someObj.className=="level_1_active_wide" ){
						someObj.className="level_1_wide";
			        }else if (someObj.className=="level_1_active"){
			          //  alert (someObj.id + ' ' + x);
			    		someObj.className="level_1";
			    }
				highlighted['level_1'] = false;
			}


            function highlightIt(someObjId){
//                alert ("highlighting: " + someObjId);
                //obj = document.getElementById(someObj);
//                alert(someObjId);
                obj = new getObj(someObjId).obj;
			    if ((highlighted['level_2_entry']) && highlighted['level_2_entry'] != obj){
			        deLight(highlighted['level_2_entry']);
//			        if (highlighted['level_2_entry'].className=="level_2_active_wide"){
//						highlighted['level_2_entry'].className="level_2_inner_wide";
//			        }else{
//			        	highlighted['level_2_entry'].className="level_2_inner";
//			        }
			    }
			    if (!highlighted['level_2_entry'] || highlighted['level_2_entry']!=obj){
			    	if (obj.className=="level_2_inner_wide"){
						obj.className="level_2_active_wide";
			        }else{
			        	obj.className="level_2_active";
			        }
			    	highlighted['level_2_entry'] = obj;
			    }
			    highlightLevel2(parents[obj.id]);

            }

            function highlightLevel1(objId){
//                alert ("highlightLevel1: " + objId);
                obj = new getObj(objId).obj;
//                alert (obj);
            	if (highlighted['level_1'] && highlighted['level_1'] != obj){
			        if (highlighted['level_1'].className=="level_1_active_wide"){
						highlighted['level_1'].className="level_1_wide";
			        }else{
			        	highlighted['level_1'].className="level_1";
			        }
                	//highlighted['level_1'].className="level_1";
				}
				if (obj  && (!highlighted['level_1'] || highlighted['level_1'] != obj)){
                	if (obj.className=="level_1_wide"){
						obj.className="level_1_active_wide";
					}else{
						obj.className="level_1_active";
					}
                	highlighted['level_1'] = obj;
				}
				if (highlighted['level_2_entry']){
					deLight(highlighted['level_2_entry']);
				}
				if (obj == null){
					//highlightLevel2(null);
				}else{
                	highlightLevel2(children[obj.id]);
				}
            }

            function highlightLevel2(objId){
//                alert ("highlightLevel2: " + objId);
                microObj = new getObj(objId);
                obj = microObj;
				stil = microObj.style;
//                alert(obj == highlighted['level_2']);
                if (highlighted['level_2'] && highlighted['level_2'] != obj){
                   // alert(obj.id + ' - highlighted[\'level_2\']' + highlighted['level_2'].id);
                	highlighted['level_2'].style.display='none';
				}
				if (obj && (!highlighted['level_2'] || highlighted['level_2'] != obj)){
				    //alert(objId);
                	obj.style.display='block';
                	highlighted['level_2'] = obj;
				}
				checkUserInput(-1);
				moved = false;
			}

			function findPosX(obj){
				var curleft = 0;
				if (obj.offsetParent)
				{
					while (obj.offsetParent)
					{
						curleft += obj.offsetLeft
						obj = obj.offsetParent;
					}
				}
				else if (obj.x)
					curleft += obj.x;
				return curleft;
			}

			function findPosY(obj){
				var curtop = 0;
				if (obj.offsetParent)
				{
					while (obj.offsetParent)
					{
						curtop += obj.offsetTop
						obj = obj.offsetParent;
					}
				}
				else if (obj.y)
					curtop += obj.y;
				return curtop;
			}

			function getObj(name)
{
  if (document.getElementById)
  {
  	this.obj = document.getElementById(name);
	this.style = document.getElementById(name).style;
  }
  else if (document.all)
  {
	this.obj = document.all[name];
	this.style = document.all[name].style;
  }
  else if (document.layers)
  {
   	this.obj = document.layers[name];
   	this.style = document.layers[name];
  }
}

