	
	var NN4 = (document.layers);
	var OP7down = (navigator.userAgent.indexOf("Opera 6") != -1
			|| navigator.userAgent.indexOf("Opera 5") != -1);
	var menu_area = false;
	var menu_layer;
	var menu_init = false;
	var item_selected = false;
	var item_elements = 3;
	var menubgon = '#EFEBFF';
	var menubgoff = '#FFFFFF';

	function initLayer() {
		if (NN4) {
			menu_layer = document['menu'];	//NN4
		}
		else if (document.all) {
			menu_layer = document.all['menu'];	//IE4
		}
		else if (document.getElementById) {
			menu_layer = document.getElementById('menu');
		}
		menu_init = true;
	}

	function setVisibility (state) {
		if (NN4) {
			menu_layer.visibility = (state == 0 ? 'hide' : 'show');
		}
		else {
			menu_layer.style.visibility = (state == 0 ? 'hidden' : 'visible');
		}
	}

	function setPosition(x, y) {
		if (NN4) {
			menu_layer.left = x;
			menu_layer.top  = y;
		}
		else {
			menu_layer.style.left = x;
			menu_layer.style.top  = y;
		}
	}

	function showMenu(e) {
		var x, y, dx, dy;

		if (!menu_init) {
			initLayer();
		}
		fader();
		
		if (!e) {
			e = window.event;
		}
		if (NN4) {
			x = e.pageX
			y = e.pageY;
		}
		else {
			x = e.clientX;
			y = e.clientY;
		}
		//offset
		if (OP7down || NN4) {
			dx = dy = 0;
		}
		else if (document.body && (document.body.scrollTop || document.body.scrollLeft)) {
			dx = document.body.scrollLeft;	//IE, OP7
			dy = document.body.scrollTop;
		}
		else if (window.pageYOffset || window.pageXOffset) {
			dx = window.pageXOffset;	//NN6
			dy = window.pageYOffset;
		}
		else {
			dx = dy = 0;
		}
		setPosition(x + dx, y + dy);
		setVisibility(1);
	}

	function switch_on(id) {
		if (document.getElementById) {
			var row = document.getElementById(id);
			row.style.background = menubgon;
		}
		item_selected = true;
	}

	function switch_off(id) {
		if (document.getElementById) {
			var row = document.getElementById(id);
			row.style.background = menubgoff;
		}
		item_selected = false;
	}
	
	function fader() {
		setTimeout('checkState()', 2000);
	}

	function checkState() {
		if (item_selected || menu_area) {
			//dWin.document.writeln('active ');
			fader();
		}
		else {
			setVisibility(0);
			//dWin.document.writeln('close ');
		}
	}
	
	var dWin;

	function debugWin() {
		dWin = window.open('about:blank', 'debug', 'width=300,height=500,resizable=1');
		//dWin.document.writeln('Debug console:');
	}

