	Array.prototype.removeItems = function(itemsToRemove) {
	
	    if (!/Array/.test(itemsToRemove.constructor)) {
	        itemsToRemove = [ itemsToRemove ];
	    }
	
	    var j;
	    for (var i = 0; i < itemsToRemove.length; i++) {
	        j = 0;
	        while (j < this.length) {
	            if (this[j] == itemsToRemove[i]) {
	                this.splice(j, 1);
	            } else {
	                j++;
	            }
	        }
	    }
	}
	
	function addToCookie(name,val) {
		var sMenu = getCookie(name);
		var aMenu;
		if (sMenu==null) {
			//there is no current open menu
			aMenu = new Array(val);
		} else {
			//get current values
			aMenu = sMenu.split(',');
			//add
			aMenu[aMenu.length] = val;
		}
		setCookie(name, aMenu, null);
	}
	function removeFromCookie(name,val){
		var sMenu = getCookie(name);
		var aMenu;
		if(sMenu != null){
			aMenu = sMenu.split(',');
			aMenu.removeItems(val);
			setCookie(name, aMenu, null);
		}
	}
	
	function setCookie(name, value, expire) {
	    var today = new Date()
	    var defaultExpire = new Date()
	    defaultExpire.setMinutes(today.getMinutes() + 30);
	    var currentCookie = name + "=" +
	        escape(value) +
	        ((expire == null) ?
	            ("; expires=" + defaultExpire.toGMTString()) :
	            ("; expires=" + expire.toGMTString()));
	    document.cookie = currentCookie;
	}
	
	// name - name of the desired cookie
	// return value of specified cookie or null if cookie does not exist
	function getCookie(name) {
	    var prefix = name + "="
	    var cookieStartIndex = document.cookie.indexOf(prefix)
	    if (cookieStartIndex == -1)
	        return null
	    var cookieEndIndex = document.cookie.indexOf(";", cookieStartIndex + prefix.length)
	    if (cookieEndIndex == -1)
	        cookieEndIndex = document.cookie.length
	    return unescape(document.cookie.substring(cookieStartIndex + prefix.length, cookieEndIndex))
	}
	
	function deleteCookie(name) {
	    var exp = new Date();
	    exp.setTime(exp.getTime() - 1);
	    var cval = getCookie(name);
	    document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
	}
