			function containsDOM (container, containee) {
				var isParent = false;
				do {
					if ((isParent = container == containee))
						break;
					containee = containee.parentNode;
				}
				while (containee != null);
				return isParent;
			}

			function checkMouseEnter (element, evt) {
				if (element.contains && evt.fromElement) {
					return !element.contains(evt.fromElement);
				}
				else if (evt.relatedTarget) {
					return !containsDOM(element, evt.relatedTarget);
				}
			}

			function checkMouseLeave (element, evt) {
				if (element.contains && evt.toElement) {
					return !element.contains(evt.toElement);
				}
				else if (evt.relatedTarget) {
					return !containsDOM(element, evt.relatedTarget);
				}
			}


			var	vShowMenuStatus = new Array;
			
			function ShowSubMenu(id) {
				if (e = document.getElementById(id)) {
					e.style.display = 'block';
					vShowMenuStatus[id] = 90;
					e.style.opacity = vShowMenuStatus[id] / 100;
					e.style.filter = 'alpha(opacity=' + vShowMenuStatus[id] + ')';
				}
			}

			function HideSubMenu(id) {
				if	(vShowMenuStatus[id] > 0) {
					if (e = document.getElementById(id)) {
						e.style.display = 'block';
						e.style.opacity = vShowMenuStatus[id] / 100;
						e.style.filter = 'alpha(opacity=' + vShowMenuStatus[id] + ')';
						vShowMenuStatus[id]-= 10;
						setTimeout('HideSubMenu("' + id + '");', 20);
					}
				} else {
					if (e = document.getElementById(id)) {
					e.style.display = 'none';
					e.style.opacity = '0';
					e.style.filter = 'alpha(opacity=0)';
					vShowMenuStatus[id] = 0;
					}
				}
			}


