	var url_hash = self.document.location.hash.substr(1);
	var url_split = url_hash.split(",");

	var last_l1 = '';
	var last_l2 = '';
	function maintain(i) {
		document.getElementById('o'+i).className='sel';
		if (last_l1 != '') {document.getElementById('o'+last_l1).className='';}
		last_l1 = i;
		last_l2 = '';
		document.getElementById('level2').innerHTML = '';
		document.getElementById('level3').innerHTML = '';
		var new_pgf = document.createElement('UL');
                if (document.getElementById('o'+i).parentNode && document.getElementById('o'+i).parentNode.childNodes && document.getElementById('o'+i).parentNode.childNodes[2] && document.getElementById('o'+i).parentNode.childNodes[2].childNodes) {
                   for(x = 0; x <= document.getElementById('o'+i).parentNode.childNodes[2].childNodes.length; ++x) {
                      if(document.getElementById('o'+i).parentNode.childNodes[2].childNodes[x] && document.getElementById('o'+i).parentNode.childNodes[2].childNodes[x].firstChild) {
                         var data = document.getElementById('o'+i).parentNode.childNodes[2].childNodes[x].firstChild;
                         var new_li = document.createElement('LI');
                         new_li.innerHTML = '<a id="l' + data.id + '" href="javascript:void(0)" onclick="files(\'' + data.id + '\')">' + data.innerHTML + '</a>';
                         new_pgf.appendChild(new_li);
                      }
                   }
                } else if (document.getElementById('o'+i).parentNode && document.getElementById('o'+i).parentNode.childNodes && document.getElementById('o'+i).parentNode.childNodes[1] && document.getElementById('o'+i).parentNode.childNodes[1].childNodes) {
                   for(x = 0; x <= document.getElementById('o'+i).parentNode.childNodes[1].childNodes.length; ++x) {
                      if(document.getElementById('o'+i).parentNode.childNodes[1].childNodes[x] && document.getElementById('o'+i).parentNode.childNodes[1].childNodes[x].firstChild) {
                         var data = document.getElementById('o'+i).parentNode.childNodes[1].childNodes[x].firstChild;
                         var new_li = document.createElement('LI');
                         new_li.innerHTML = '<a id="l' + data.id + '" href="javascript:void(0)" onclick="files(\'' + data.id + '\')">' + data.innerHTML + '</a>';
                         new_pgf.appendChild(new_li);
                      }
                   }
                }

		$("#level2").fadeOut('fast' , function(){
			$("#level2").html('<ul>'+new_pgf.innerHTML+'</ul>', function(){});
			$("#level2").fadeIn('fast');
		}); 

//		document.getElementById('level2').appendChild(new_pgf);
                self.document.location.hash = i;
                url_split[0] = i;
	}
        function files(i) {
        	document.getElementById('l'+i).className='sel';
        	if (last_l2 != '') {document.getElementById('l'+last_l2).className='';}
		last_l2 = i;
		document.getElementById('level3').innerHTML = '';
		var new_pgf = document.createElement('UL');
		new_pgf.innerHTML = document.getElementById(i).parentNode.childNodes[1].innerHTML;

		$("#level3").fadeOut('fast' , function(){
			$("#level3").html('<ul>'+new_pgf.innerHTML+'</ul>', function(){});
			$("#level3").fadeIn('fast');
		}); 

//                document.getElementById('level3').appendChild(new_pgf);
                self.document.location.hash = url_split[0]+','+i;
        }

