	function extractCookies(){
		var name, value;
		var beginning, middle, end;
		beginning = 0;  // start at beginning of cookie string
		while (beginning < document.cookie.length){
			middle = document.cookie.indexOf('=', beginning);  // find next =
			end = document.cookie.indexOf(';', beginning);  // find next ;
			if (end == -1)  // if no semicolon exists, it's the last cookie
				end = document.cookie.length;
			if ( (middle > end) || (middle == -1) ){ // if the cookie has no value... 
				name = document.cookie.substring(beginning, end);
				value = "";
			}else{ // extract its value
				name = document.cookie.substring(beginning, middle);
				value =  document.cookie.substring(middle + 1, end);
			}
			if(name.indexOf('[')>0){
				var nm=name.substring(0,name.indexOf('[') );
				var val=name.substring(name.indexOf('[')+1,name.indexOf(']'));
				//alert(nm+'='+val);
				if(cookies[nm]==undefined) cookies[nm]=new Array();
				cookies[nm][val]= unescape(value);
			}else
				cookies[name] = unescape(value);  // add it to the associative array
			beginning = end + 2;  // step over space to beginning of next cookie
		}
	}
	
	function SetCookie(strName, oValue){
		var argv = SetCookie.arguments;
		var argc = SetCookie.arguments.length;
		var oDate = false; // аргумент expires

		if((argc > 2) && (argv[2] != null)){
			// задана дата
			// дату допустимо задавать:
			// объектом Date,
			// числом (миллисекундное смещение от 00:00:00 01.01.1970)
			// строкой в формате, приемлемом для Date.parse
			
			var nStamp = (typeof(argv[2]) != "number") ?
			Date.parse(argv[2].toString()) :
			argv[2];
			
			if(!isNaN(nStamp))
			oDate = new Date(nStamp);
		}

		document.cookie = strName + "=" + escape(oValue.toString()) +
		(oDate ? "; expires=" + oDate.toGMTString() : "") +
		(((argc > 3) && (argv[3])) ? "; domain=" + argv[3] : "") +
		(((argc > 4) && (argv[4])) ? "; path=" + argv[4] : "") +
		((argc > 5) ? (argv[5] ? "; secure" : "") : "");
//alert(document.cookie);
	}	
	
	function deleteCookie(name){
	   document.cookie = name + "=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT";
	   document.cookie = name + "; expires=Thu, 01-Jan-1970 00:00:01 GMT";
	}
	
	var cookies=new Object;
	extractCookies();
	//print_r(cookies);

