function CreateMenuEngine()
{ 
	this.path = '/nvss/js/template4/';
	this.space = new declare(); 
	this.list = new declare( { path:this.path, source:['space.gif', 0, 9] } ); 
	this.list1 = new declare( { path:this.path, source:['space.gif',0, 10] } ); 
  this.list2 = new declare( { path:this.path, source:['space.gif', 0, 9] } ); 
	
	this.draft = function(data, the_depth, transfer, is_obj) 
	{ 
		the_depth++; 
		is_obj.depth = the_depth; 
		
		for(var i = 0; i < data.length; i++) 
		{ 
			var it_have_array = typeof(data[i][4])=="object"?true:false; 
			var next = new Array(); 
			var draft = new Array(); 
			
			if(the_depth) 
			{
				draft = transfer.concat(draft); 
			}



			if( the_depth == 0)	
					draft[draft.length] = new Array(this.list); 
			else 
					draft[draft.length] = new Array(this.list2); 




			if (it_have_array )
					draft[draft.length] = new Array(this.list1); 
			else 
                          draft[draft.length] = new Array(this.list); 
			
			if(it_have_array) 
			{ 
				next[next.length] = new Array( this.space ); 
				next = transfer.concat(next); 
				
				child_obj = new CreateCollapseMenu(is_obj); 

        child_obj.indent = i;
				
				is_obj.add(draft, data[i], child_obj); 
				
				this.draft( data[i][4] , the_depth, next, child_obj); 
			} 
			else 
			{ 
				is_obj.add(draft, data[i]); 
			} 
		} 
	} 
} 

function declare() 
{ 
	system = { path:'/nvss/js/template4/', source:['space.gif', 1, 8] }; 
	current = arguments.length?arguments[0]:system; 
	
	with(current) 
	{ 
		images = new Image(source[1], source[2]); 
		images.src = path+ source[0]; 
	} 
	
	return images; 
}
