				var total=1;
				var db = new Array();
				function dbAdd(mother,display,URL,indent,top,newitem, mio) {
				  db[total] = new Object;
				  db[total].mother = mother
				  db[total].display = display
				  db[total].URL = URL
				  db[total].indent = indent
				  db[total].top = top
				  db[total].newitem = newitem
				  db[total].opens = 0;
				  if (mio != null)
				  {db[total].pURL = mio}
				  total++
				  }
				dbAdd(false, 'Новости' , '/index.php' , 0 , '' , 1);
				dbAdd(false, 'История' , '/history.html' , 0 , '' , 1);
				dbAdd(false, 'Правила вступления' , '/vstuplenie.html' , 0 , '' , 1);
				dbAdd(false, 'Жители' , '/members.html' , 0 , '' , 1);
				dbAdd(false, 'Устав' , '/ustav.html' , 0 , '' , 1);
				dbAdd(false, 'Иерархия' , '/ierarhia.html' , 0 , '' , 1);
				dbAdd(false, 'География' , '/geography.html' , 0 , '' , 1);
				dbAdd(true,  'Особенности ЕП' , '' , 0 , '' , 1);
				dbAdd(false, 'Таблицы крафтов' , '/craft_tables/craft_tables.xls' , 1 , '' , 1);
				dbAdd(false, 'Locked chest FAQ' , '/locked.html' , 1 , '' , 1);	
				dbAdd(false, 'Карты кладов' , '/maps.html' , 1 , '' , 1);
				dbAdd(false, 'Скрипты Injection' , '/knowledge/index.php' , 1 , '' , 1);
				dbAdd(false,  'Фотогалереи' , '/gallery' , 0 , '' , 1);
				dbAdd(false, 'Форум' , '/forum' , 0 , '' , 1);
				dbAdd(false, 'Почта' , 'http://mail.itsoft.ru' , 0 , '' , 1);
				dbAdd(false, 'Ссылки' , '/links.html' , 0 , '' , 1);
				dbAdd(false, 'Чат' , 'http://cove.ru/cgi-bin/talk/index.cgi' , 0 , '' , 1);
				dbAdd(false, 'Web Design' , '/web.html' , 0 , '' , 1);
				dbAdd(false, 'Ретро музыка 80-х' , 'http://hromov.net/music' , 0 , '' , 1);
				dbAdd(false, 'О сайте' , '/about.html' , 0 , '' , 1);
var sex=0;
var initState;
function getCurrState() {
  var label = "currState=";
  var labelLen = label.length;
  var cLen = document.cookie.length;
  var i = 0;
  if (cLen){
  while (i < cLen) {
    var j = i + labelLen
    if (document.cookie.substring(i,j) == label) {
      var cEnd = document.cookie.indexOf(";",j)
      if (cEnd == -1) { cEnd = document.cookie.length }
      return unescape(document.cookie.substring(j,cEnd))
    }
    i++
   }
  }
  return "";
}

var current=getCurrState();
var newString1="";
  for (i = 1; i < db.length; i++) {
    newString1 += "0"
    }
 //alert(newString1);
function setCurrState(setting) {
  var expires = new Date();
  expires.setTime(expires.getTime() + ( 365*7*60*60*1000 ) ); // expire in 1 week
  if (navigator.userAgent.indexOf('Opera') != -1){
  document.cookie="currState=" + escape(setting)+";path=/;expires="+expires.toGMTString()+";";
  }
  else
  {
  document.cookie="currState=" + escape(setting)+";path=/;expires="+expires.toGMTString()+";";
  }
  }
function toggle(n) {
  if (n != 0) {
    var newString = ""
    var expanded = current.substring(n-1,n) // of clicked item
    newString += current.substring(0,n-1)
    newString += expanded ^ 1 // Bitwise XOR clicked item
    newString += current.substring(n,current.length)
    setCurrState(newString) // write new state back to cookie
  }
  current="";
  current=getCurrState();
  make();
}
function toggle2(n) {
  if (n != 0) {
    var newString = ""
    var expanded = current.substring(n-1,n) // of clicked item
    newString += current.substring(0,n-1)
    newString += 1// Bitwise XOR clicked item
    newString += current.substring(n,current.length)
    setCurrState(newString) // write new state back to cookie
  }
  current="";
  current=getCurrState();
  make();
}
function toggles(n) {
  if (n != 0) {
    var newString = ""
    var expanded = current.substring(n-1,n) // of clicked item
    if (expanded == 0){
    newString += current.substring(0,n-1)
    newString += expanded ^ 1 // Bitwise XOR clicked item
    newString += current.substring(n,current.length)
    setCurrState(newString) // write new state back to cookie
    }
  }
  current="";
  current=getCurrState();
  make();
}
function explodeme(n) {
  if (n != 0) {
    var newString = ""
    var expanded = current.substring(n-1,n) // of clicked item

    newString1 = newString1.substring(0,n-1)
    newString1 += 1 // Bitwise XOR clicked item
    newString1 += newString1.substring(n,newString1.length)
  //  alert(db[n].display);
    if (db[n].URL == "") {db[n].opens=1}
    if (expanded == 0){
    newString += current.substring(0,n-1)
    newString += 1 // Bitwise XOR clicked item
    newString += current.substring(n,current.length)
    setCurrState(newString) // write new state back to cookie
    }
  }
  current="";
  current=getCurrState();
}

// returns padded spaces (in mulTIPles of 2) for indenting
function pad(n) {
  var result = ""
  for (var i = 1; i <= n; i++) { result += "" }
  return result
}

// Expand everything
function explode() {
  current = "";
  initState="";
  for (var i = 1; i < db.length; i++) {
    initState += "1"
    current += "1"
    }
  setCurrState(initState);
  make();
  }
// Collapse everything
function contract() {
  current = "";
  initState="";
  for (var i = 1; i < db.length; i++) {
    initState += "0"
    current += "0"
    }
  setCurrState(initState);
  make();
  }
function contract1() {
  current = "";
  initState="";
  for (var i = 1; i < db.length; i++) {
    initState += "0"
    current += "0"
    }
  setCurrState(initState);
  }
function timer(n) {
window.setTimeout("goTo('"+db[n].URL+"')",1);
}
function goTo(url)
{
top.location=url;
}

function tree_close() {
  window.parent.location = window.parent.content.location;
  }
function prepare()
{
// alert(current);
if (current == "" || current.length != (db.length-1)) {
  current = ""
  initState = ""
  for (i = 1; i < db.length; i++) {
    initState += "0"
    current += "0"
    }
  setCurrState(initState);
  }
 var wurl = window.location.href;
      	
      wurl = wurl.replace(/http:\/\/faema\.itsoft\.ru\/(.*)\/(.*)\.html/g, "/$1/");
      wurl = wurl.replace(/http:\/\/faema\.itsoft\.ru\/(.*)\//g, "/$1/");
      //alert(wurl);
      
for (var i = 1; i < db.length; i++) {
  var myUrl = db[i].URL;

  if (myUrl.match(/html/)){myUrl = myUrl.replace(/\/(.*)\/(.*)\.html/g,"$1");
  //alert(myUrl)
  }
  //alert(myUrl);
  if (myUrl != ""){
  if (wurl.match(myUrl) != null){
    //alert(wurl+"  -  "+myUrl);
    explodeme(i);
    }
  }

  if (db[i].pURL != null)
  {
   if (wurl.match(db[i].pURL) != null){if (wurl != "http://faema.itsoft.ru/katalog/"){explodeme(i)}}
  }
 }
}
function make()
{
if (current == "" || current.length != (db.length-1)) {
  for (i = 1; i < db.length; i++) {
    initState += "0"
    current += "0"
    }
  setCurrState(initState);
//  explode(); 
  }
var prevIndentDisplayed = 0;
var showMyDaughter = 0;

var Outline="";
var Outline1="";
// cycle through each entry in the outline array
//alert(newString1);
for (var i = 1; i < db.length; i++) {
  var currIndent = db[i].indent           // get the indent level
  var cls = "kdir";
  var expanded = current.substring(i-1,i) // current state
  var sem = db[i].opens;
  var space=db[i].indent+1;
  var top = db[i].top
  if (top == "") { top="content" }
  // display entry only if it meets one of three criteria
  if ((currIndent == 0 || currIndent <= prevIndentDisplayed || (showMyDaughter == 1 && (currIndent - prevIndentDisplayed ==1)))) {
  Outline += pad(currIndent)

  // Insert the appropriate GIF and HREF
  newitem = "";
  var m = (space-1)*10+6;
  var sex="";
//  var test1 = "<span style='margin-left:" +m+"px;'>";
  var test1 = "<table border=0 width=180 cellspacing=0 cellpadding=0 class=test><tr><td width="+m+">&nbsp;"+sex+"<td width=15 valign=absmiddle align=center>";
  Outline=Outline+test1;
  if (db[i].newitem) { newitem="_new"; }
  if (!(db[i].mother)) {
    Outline += ""
    }
  else {
      if (current.substring(i-1,i) == 1 ) {
	if (sem == '1'){cls="kdir2"}else{cls="kdir"}
	Outline += "<A class=kdir onClick='toggle(" + i + ")'>";
	if (i == 1){
        Outline += "<img class=mute SRC='/images/index/main.gif' title='"+i+"'  BORDER=0 hspace=4 vspace=4>";
	}
	else{
        Outline += "<img class=mute SRC='/images/index/minus.gif' title='"+i+"'  width=9 height=9 BORDER=0 vspace=4>";
	}
//        Outline += "&ndash;";
        Outline += "</A>"
        }
      else {
        Outline += "<A class=kdir onClick='toggle(" + i + ")'>"
	if (i == 1){
        Outline += "<img class=mute SRC='/images/index/main1.gif' title='"+i+"'  hspace=4 vspace=4 BORDER=0>";
	}
	else{
        Outline += "<img class=mute SRC='/images/index/plus.gif' title='"+i+"' width=9 height=9 BORDER=0 vspace=4>"
	}
//        Outline += "+"
        Outline += "</A>"
        }
      }
    Outline += "";
    if (db[i].URL != "" && db[i].mother)
    {
      var mystring = window.location.href;
      var mystring = mystring.replace(/http:\/\/faema\.itsoft\.ru/,"");
           if (mystring == db[i].URL || mystring.match(db[i].URL) || sem == '1'){
      Outline += "<td><A class=kdir2 href='#' onClick='toggle(" + i + ");'>" + db[i].display+"</a><br/></table>";   
      }
   else
      {
      Outline += "<td><A class=kdir href='#' onClick='toggle(" + i + ");'>" + db[i].display+"</a><br/></table>";   
         }
    }
    else
    {
    if (db[i].URL == "" || db[i].URL == null) {
    if (db[i].indent == 0){
      Outline += "<td><A class="+cls+" href='javascript:toggle(" + i + ")'>" + db[i].display+"</a><br/></table>";
      }
      else{
      Outline += "<td><A class="+cls+" onClick='toggle(" + i + ")'>" + db[i].display+"</a><br/></table>";      
      }
      // nolink, just a listed item
      }
    else {
      
      var mystring = window.location.href;
      var mystring = mystring.replace(/http:\/\/faema\.itsoft\.ru/,"");

      if (mystring){
       if (mystring == db[i].URL)
          {
    
              Outline += "<img class=mute SRC='/images/index/leaf.gif' width=9 height=9 vspace=4 border=0><td><A class=kdir1 HREF='" + db[i].URL + "'>" + db[i].display + "</A><br/></table>";
          }
        else
          {
           Outline += "<img class=mute SRC='/images/index/leaf.gif' width=9 height=9 vspace=4 border=0><td><A class=kdir1 HREF='" + db[i].URL + "'>" + db[i].display + "</A><br/></table>";
          }
        }
      }
        // Bold if at level 0
    } 
   if (db[i].indent == 0)
	{
		    Outline+="<img src='/images/lines.gif' width=175 height=2 style='margin-left:2px;'><br>";
	}
    if (currIndent == 0) {
        Outline=Outline+"";

      }
    Outline += ""
    prevIndentDisplayed = currIndent
    showMyDaughter = expanded
Outline1=Outline1+Outline;
Outline = ""
    }
  }
if (document.all || navigator.userAgent.indexOf('Opera') != -1){
   element = document.all["menu"];
}
else {
   element = document.getElementById("menu");
}
element.innerHTML="";
element.innerHTML=element.innerHTML+Outline1;
//alert(Outline1);
Outline1="";
}
//contract1();
toggle2(1);
prepare();
make();
