	openNode = 0;
	mouseOn = 0;
function makeMainMenu(){
	cnt = 0;
	temp = '<ul>';
	for(i=0;i<menu_arr.length;i++){
		if(menu_arr[i][1]==0){
			cnt++;	
			temp+='<li  id="'+menu_arr[i][0]+'" class="menu'+cnt+'"><a href="'+menu_arr[i][3]+'" onmouseover="showMenu(this.parentNode)" onmouseout="setOpenNode(this.parentNode)">'+menu_arr[i][2]+'</a></li>';
		}
	}
	temp+='</ul>';
	document.getElementById('menu').innerHTML = temp;
}
isMenu = false;
function showMenu(obj){
    if(obj.id == mouseOn){
        return;
    }
     mouseOn = obj.id;
	isMenu = true;
	findOpenSibling(obj.id);
	addEvent( obj, 'mouseover', findRes );
	tmptxt = '<ul>';
	for(j=0;j<menu_arr.length;j++){
		if(menu_arr[j][1]==obj.id ){
			tmptxt += '<li id="'+menu_arr[j][0]+'"><a '; 
			if(hasChild(menu_arr[j][0])){
				tmptxt +=  ' class="child" ';
			}
			tmptxt += ' href="'+menu_arr[j][3]+'" onmouseover="showMenu(this.parentNode)" onmouseout="setOpenNode(this.parentNode)">'+menu_arr[j][2]+'</a></li>';
		}
	}
	tmptxt+='</ul>';
	if(tmptxt!='<ul></ul>'){
		obj.innerHTML+=tmptxt;
		findRes(obj);
		openNode = obj.id;
	}
}
function hasChild(id){
	for(a=0;a<menu_arr.length;a++){
		if(menu_arr[a][1]==id)
			return true;
	}
	return false;
}
function findRes(ob){
	if(ob && ob.id){
		allowedWidth = ((checkWidth() - 780)/2)+780	;
		pNode=findElement(ob.id);
		if(ob.childNodes[1]){
			currentPos = findPosX(ob)+172;
			if(currentPos>allowedWidth  && menu_arr[pNode][1]==0){
				if(171-findPosY(ob)>0){
					ob.childNodes[1].style.marginLeft =  '-'+(171-findPosY(ob))+'px';
				}
			}
			else if((currentPos+172)>allowedWidth && menu_arr[pNode][1]!=0){
				ob.childNodes[1].style.marginLeft =  '-329px';
			}
		}
		
	}
}
function findOpenSibling(id){
	prnt = parentMenu(id);
	for(m=0;m<menu_arr.length;m++){
		if(menu_arr[m][1] == prnt){
			if(document.getElementById(menu_arr[m][0]) && document.getElementById(menu_arr[m][0]).innerHTML.toUpperCase().indexOf('<UL')!= -1)
				removeMenu(menu_arr[m][0]);
		}
	}
}
function setOpenNode(obj){
	if(obj){
		isMenu = false;
		tmout = setTimeout("checkIfOpen()",600);
	}
}

function checkIfOpen(){
	if(!isMenu){
	    makeMainMenu();
		openNode = 0;
		mouseOn = 0;		
	}
}
function parentMenu(id){
	for(l=0;l<menu_arr.length;l++){
		if(menu_arr[l][0] == id)
			return menu_arr[l][1];
	}
}

function removeMenu(id){
	for(k=0;k<menu_arr.length;k++){
		if(menu_arr[k][0]==id){ 
			if(document.getElementById(id)){
				tmTxt = '<a ';
				if(menu_arr[k][1]!=0 && hasChild(id))
					tmTxt += 'class="child"';
				 tmTxt += 'onmouseover="showMenu(this.parentNode)" onmouseout="setOpenNode(this.parentNode)" href="'+menu_arr[k][3]+'">'+menu_arr[k][2]+'</a>';
	 			document.getElementById(id).innerHTML = tmTxt;
			}
		}
	}
}
function isNodeOpen(id){
	if(document.getElementById(parentMenu(id)))
		removeMenu(parentMenu(id));
}


function addEvent( 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 removeEvent( obj, type, fn ) {
   if ( obj.detachEvent ) {
     obj.detachEvent( 'on'+type, obj[type+fn] );
     obj[type+fn] = null;
   } else
     obj.removeEventListener( type, fn, false );
}