	var ns4 = document.layers;
	var op5 = (navigator.userAgent.indexOf("Opera 5")!=-1) ||(navigator.userAgent.indexOf("Opera/5")!=-1);
	var op6 = (navigator.userAgent.indexOf("Opera 6")!=-1) ||(navigator.userAgent.indexOf("Opera/6")!=-1);
	var agt = navigator.userAgent.toLowerCase();
	var mac = (agt.indexOf("mac")!=-1);
	var ie = (agt.indexOf("msie") != -1); 
	var mac_ie = mac && ie;		

	function getObjNN4(obj,name)
	{
		var x = obj.layers;
		var foundLayer;
		for (var i=0;i<x.length;i++)
		{
			if (x[i].id == name)
				foundLayer = x[i];
			else if (x[i].layers.length)
				var tmp = getObjNN4(x[i],name);
			if (tmp) foundLayer = tmp;
		}
		return foundLayer;
	}

	function getObj(id)
	{
		if (ns4)
		{				
			return getObjNN4(document, id);
		}
		else
		{				
			if (document.getElementById(id))
			{					
				return document.getElementById(id);
			}
			else if (document.all)
			{
				return document.all[id];
			}
			else return id;
		}
	}
	
	function getHeight(obj)
	{
		if (typeof(obj)=="undefined") return 0;
		if (ns4) return obj.clip.height;
		else
		{
			if (op5) return obj.style.pixelHeight;
				else if (obj.offsetHeight) return obj.offsetHeight;
					else return obj.offsetheight;
		} 
	}

	function getWidth(obj)
	{
		if (typeof(obj)=="undefined") return 0;
		if (ns4) return obj.clip.width;
		else
		{
			if (op5) return obj.style.pixelWidth;
				else return obj.offsetWidth;
		}
	}

	function getLeft(el)
	{
		if (typeof(el)=="undefined") return 0;
		var ol=el.offsetLeft;
		while ((el=el.offsetParent) != null) { ol += el.offsetLeft; }
		return ol;
	}

	function getTop(el)
	{
		var ol=0;

		if (typeof(el)=="undefined") return 0;

		if (el.offsetTop) ol=el.offsetTop;
			else if (el.pageY) ol += el.pageY;
		
		while ((el=el.offsetParent) != null)
		{
			if (el.offsetTop) ol += el.offsetTop;
				else if (el.pageY) ol += el.pageY;
		}
		return ol;
	}


	function JSArp(el)
	{
		str = '';

		for (q in el)
		{
			str = str + q + ' = ' + el[q] + "\n";
		}
		alert(str);
	}

	function JSEArp(el)
	{
		str = '';

		for (q in el)
		{
			str = str + q + ' = ' + el[q] + "\n";
		}
		prompt('arp', str);
	}

	function jsarp(arr)
	{
		str = "";
		for (q in arr)
		{
			str = str + q + " = " + arr[q] + "\n";
		}

		alert(str);
	}
