function GetCookie(name){var cookieVal=GetNoEscapeCookie(name);if(cookieVal!=null)cookieVal=unescape(cookieVal);return cookieVal}function GetNoEscapeCookie(name){var dc=document.cookie,prefix=name+"=",begin=dc.indexOf("; "+prefix);if(begin==-1){begin=dc.indexOf(prefix);if(begin!=0)return null}else begin+=2;var end=document.cookie.indexOf(";",begin);if(end==-1)end=dc.length;return dc.substring(begin+prefix.length,end)}function GetSubkey(name,subkey){var cookie=GetCookie(name);if(cookie==null)return "";var begin=cookie.indexOf(subkey+"=");if(begin==-1)return null;begin=begin+subkey.length+1;var end=cookie.substring(begin,cookie.length).indexOf("&");if(end==-1)end=cookie.length;return cookie.substring(begin,begin+end)}function SetCookie(name,value,expires,path,domain,secure){if(domain!=null)ClearCookieDomains(name,domain);if(path==null)path="/";document.cookie=name+"="+escape(value)+(expires?"; expires="+expires.toGMTString():"")+(path?"; path="+path:"")+(domain?"; domain="+domain:"")+(secure?"; secure":"")}function SetNoEscapeCookie(name,value,expires,path,domain,secure){if(domain!=null)ClearCookieDomains(name,domain);if(path==null)path="/";document.cookie=name+"="+value+(expires?"; expires="+expires.toGMTString():"")+(path?"; path="+path:"")+(domain?"; domain="+domain:"")+(secure?"; secure":"")}function ClearCookieDomains(cookieName,newDomain){var domains=newDomain.split("."),curDomain;try{curDomain="."+domains[domains.length-1]}catch(e){return}for(i=domains.length-2;i>1;i--){curDomain="."+domains[i]+curDomain;DeleteCookie(cookieName,"/",curDomain)}}function SetNoEscapeSubkey(name,subkey,value,expires,path,domain,secure){var cookie=GetNoEscapeCookie(name);if(cookie==null){SetNoEscapeCookie(name,subkey+"="+value,expires,path,domain,secure);return}var begin=cookie.indexOf(subkey+"="),end=cookie.substring(begin,cookie.length).indexOf("&");if(end==-1)end=cookie.length;if(begin==-1)if(cookie.length>0)value=cookie+"&"+subkey+"="+value;else value=subkey+"="+value;else{var replacethis=cookie.substring(begin,begin+end);value=cookie.replace(replacethis,subkey+"="+value)}SetNoEscapeCookie(name,value,expires,path,domain,secure)}function SetNoEscapeFullSubKeyCookie(name,subCookieKeys,subCookieValues,expires,path,domain,secure){var newCookieValue="";if(subCookieKeys.length!=subCookieValues.length)throw"Keys and Values array's length don't match.";for(i=0;i<subCookieKeys.length;i++){newCookieValue+=subCookieKeys[i]+"="+subCookieValues[i];if(i+1<subCookieKeys.length)newCookieValue+="&"}SetNoEscapeCookie(name,newCookieValue,expires,path,domain,secure)}function SetZMiscPermSubkey(subkey,value){var expires=new Date;expires.setFullYear(expires.getFullYear()+10);SetNoEscapeSubkey("ZMiscPerm",subkey,value,expires,"/",window.top.g_CookieDomain,false)}function DeleteCookie(sName,sPath,sDomain){if(GetNoEscapeCookie(sName)!=null){date=new Date;if(sPath==null)sPath="/";document.cookie=sName+"= Blank "+(sPath?"; path="+sPath:"")+(sDomain?"; domain="+sDomain:"")+"; expires="+date.toGMTString()}}function DeleteSubkey(name,subkey,expires,path,domain){var cookie=GetNoEscapeCookie(name);if(cookie==null)return;var begin=cookie.indexOf(subkey+"=");if(begin==-1)return;var end=cookie.substring(begin,cookie.length).indexOf("&");if(begin==0&&end==-1){DeleteCookie(name,path,domain);return}if(end==-1)end=cookie.length;if(begin!=0)begin=begin-1;else end=end+1;var value=cookie.substring(0,begin)+cookie.substring(begin+end,cookie.length);SetNoEscapeCookie(name,value,expires,path,domain)}