	var M=Array();
	M['time']=40;
	M['pos']=0;
	M['fix']=Array();

	function Menu(idm)
	{
		GO('ma-' + idm).blur();

		if(M['run'])
		{
			if(idm != M['idm'])
			{
				M['next']=idm;
			}
			return	;
		}

		M['run']=true;

		var elem=GO('mb-' + idm);
		if(!elem) alert('mb-' + idm);
		M['idm']=idm;
		M['list']=elem.childNodes;

		if((elem.style.display != 'block') && (elem.style.display != 'list-item') && (!elem.className || M['fix'][idm]))
		{
			M['mode']='block';
			elem.style.display='block';
			MenuChange(0);
			CCS('ma-' + idm, 'borderBottom', 'none');
		}
		else
		{
			M['fix'][idm]=true;
			M['mode']='none';
			MenuChange(M['list'].length - 1);
		}
	}



	function MenuChange(pos)
	{
		var i, ex;

		if(M['mode'] == 'block')
		{
			for(i=pos; i<M['list'].length; i++)
			{
				if((M['list'][i].nodeName == 'li') || (M['list'][i].nodeName == 'LI') || (M['list'][i].nodeName == 'ul') || (M['list'][i].nodeName == 'UL'))
				{
					if(M['list'][i].id.indexOf('mm-') != -1)
					{
						CCS(M['list'][i].id, 'display', 'list-item');

						if(++i < M['list'].length)
						{
							setTimeout('MenuChange(' + i + ');', M['time']);
							return;
						}
					}
				}
			}
		}
		else
		{
			for(i=pos; i>=0; i--)
			{
				if((M['list'][i].nodeName == 'li') || (M['list'][i].nodeName == 'LI') || (M['list'][i].nodeName == 'ul') || (M['list'][i].nodeName == 'UL'))
				{
					if(M['list'][i].id.indexOf('mm-') != -1)
					{
						ex=M['list'][i].id.split('-');
						ex=ex[1] + (ex[2] ? '-' + ex[2] : '') + (ex[3] ? '-' + ex[3] : '');

						if(GO('mb-' + ex) && ((GO('mb-' + ex).style.display == 'block') || (GO('mb-' + ex).style.display == 'list-item')))
						{
							if(--i < M['list'].length)
							{
								M['temp_mode']=M['mode'];
								M['temp_list']=M['list'];
								M['temp_pos']=i;
								M['temp_id']=M['list'][++i].id;
								M['temp_idm']=M['idm'];
							}
							M['run']=false;
							Menu(ex);
							return;
						}

						CCS(M['list'][i].id, 'display', 'none');

						if(--i > 0)
						{
							setTimeout('MenuChange(' + i + ');', M['time']);
							return;
						}
					}
				}
			}

			CCS('mb-' + M['idm'], 'display', 'none');
		}


		if(M['temp_list'])
		{
			M['list']=M['temp_list'];
			M['mode']=M['temp_mode'];
			M['idm']=M['temp_idm'];

			if(M['mode'] == 'block')
			{
				M['pos']=M['temp_pos'] + 1;
			}
			else
			{
				M['pos']=M['temp_pos'] - 1;
				if(M['temp_id'])
				{
					CCS(M['temp_id'], 'display', 'none');
				}
			}

			M['temp_idm']=false;
			M['temp_mode']=false;
			M['temp_list']=false;
			M['temp_pos']=false;
			M['temp_id']=false;

			setTimeout('MenuChange(' + M['pos'] + ');', M['time']);
			return;
		}

		if(M['mode'] == 'none')
		{
			CCS('ma-' + M['idm'], 'borderBottom', '1px solid rgb(106,124,185)');
		}

		setTimeout('MenuEnd();', 350);
	}



	function MenuEnd()
	{
		M['run']=false;

		if(M['next'])
		{
			var mid=M['next'];
			M['next']=false;
			Menu(mid);
		}
	}


	var MT=Array();
	MT['run']=Array();
	MT['mode']=Array();
	MT['run'][1]=false;
	MT['run'][2]=false;
	MT['mode'][1]='none';
	MT['mode'][2]='none';
	MT['num']=Array();
	MT['out']=Array();
	MT['out'][1]=1;
	MT['out'][2]=2;


	function MenuT(por, out)
	{
		if(!out)
		{
			if(MT['run'][por]) return;
			MT['run'][por]=true;

			MT['mode'][por]='block';
			MT['num'][por]=1;
		}
		else
		{
			MT['out'][por]++;
			setTimeout('MenuTout(' + por + ', ' + MT['out'][por] + ');', 500);
			return;
		}

		MenuTGo(por);
	}



	function MenuTout(por, ct)
	{
		if(ct == MT['out'][por])
		{
			if(MT['run'][por]) return;
			MT['run'][por]=true;

			MT['mode'][por]='none';
			MT['num'][1]=7;
			MT['num'][2]=3;
			MenuTGo(por);
		}
	}



	function MenuTGo(por)
	{
		CCS('menu-top-' + por + '-' + MT['num'][por], 'display', MT['mode'][por]);

		if(MT['mode'][por] == 'block')
		{
			if(((por == 1) && (MT['num'][1] < 7)) || ((por == 2) && (MT['num'][2] < 4)))
			{
				MT['num'][por]++;
				setTimeout('MenuTGo(' + por + ');', 50);
			}
			else
			{
				MT['run'][por]=false;
				MenuT(por, 1);
			}
		}
		else
		{
			if(MT['num'][por] > 0)
			{
				MT['num'][por]--;
				setTimeout('MenuTGo(' + por + ');', 50);
			}
			else
			{
				MT['run'][por]=false;
			}
		}
	}