var _uacct=""; var _userv=1; var _ufsc=1; var _udn="auto"; var _uhash="on"; var _utimeout="1800"; var _ugifpath="/__utm.gif"; var _utsp="|"; var _uflash=1; var _utitle=1; var _ulink=0; var _uanchor=0; var _utcp="/"; var _usample=100; var _uctm=1; var _ucto="15768000"; var _uccn="utm_campaign"; var _ucmd="utm_medium"; var _ucsr="utm_source"; var _uctr="utm_term"; var _ucct="utm_content"; var _ucid="utm_id"; var _ucno="utm_nooverride"; var _uOsr=new Array(); var _uOkw=new Array(); _uOsr[0]="google"; _uOkw[0]="q"; _uOsr[1]="yahoo"; _uOkw[1]="p"; _uOsr[2]="msn"; _uOkw[2]="q"; _uOsr[3]="aol"; _uOkw[3]="query"; _uOsr[4]="aol"; _uOkw[4]="encquery"; _uOsr[5]="lycos"; _uOkw[5]="query"; _uOsr[6]="ask"; _uOkw[6]="q"; _uOsr[7]="altavista"; _uOkw[7]="q"; _uOsr[8]="search"; _uOkw[8]="q"; _uOsr[9]="netscape"; _uOkw[9]="s"; _uOsr[10]="cnn"; _uOkw[10]="query"; _uOsr[11]="looksmart"; _uOkw[11]="qt"; _uOsr[12]="about"; _uOkw[12]="terms"; _uOsr[13]="mamma"; _uOkw[13]="query"; _uOsr[14]="alltheweb"; _uOkw[14]="q"; _uOsr[15]="gigablast"; _uOkw[15]="q"; _uOsr[16]="voila"; _uOkw[16]="kw"; _uOsr[17]="virgilio"; _uOkw[17]="qs"; _uOsr[18]="live"; _uOkw[18]="q"; _uOsr[19]="baidu"; _uOkw[19]="wd"; _uOsr[20]="alice"; _uOkw[20]="qs"; _uOsr[21]="seznam"; _uOkw[21]="w"; _uOsr[22]="yandex"; _uOkw[22]="text"; _uOsr[23]="najdi"; _uOkw[23]="q"; var _uOno=new Array(); var _uRno=new Array(); var _uff,_udh,_udt,_ubl=0,_udo="",_uu,_ufns=0,_uns=0,_ur="-",_ufno=0,_ust=0,_ubd=document,_udl=_ubd.location,_udlh="",_uwv="1"; var _ugifpath2="http://www.google-analytics.com/__utm.gif"; if (_udl.hash) _udlh=_udl.href.substring(_udl.href.indexOf('#')); if (_udl.protocol=="https:") _ugifpath2="https://ssl.google-analytics.com/__utm.gif"; if (!_utcp || _utcp=="") _utcp="/"; function urchinTracker(page) { if (_udl.protocol=="file:") return; if (_uff && (!page || page=="")) return; var a,b,c,xx,v,z,k,x="",s="",f=0; var nx=" expires=Sun, 18 Jan 2038 00:00:00 GMT;"; var dc=_ubd.cookie; _udh=_uDomain(); if (!_uVG()) return; _uu=Math.round(Math.random()*2147483647); _udt=new Date(); _ust=Math.round(_udt.getTime()/1000); a=dc.indexOf("__utma="+_udh); b=dc.indexOf("__utmb="+_udh); c=dc.indexOf("__utmc="+_udh); if (_udn && _udn!="") { _udo=" domain="+_udn+";";}
if (_utimeout && _utimeout!="") { x=new Date(_udt.getTime()+(_utimeout*1000)); x=" expires="+x.toGMTString()+";";}
if (_ulink) { if (_uanchor && _udlh && _udlh!="") s=_udlh+"&"; s+=_udl.search; if(s && s!="" && s.indexOf("__utma=")>=0) { if (!(_uIN(a=_uGC(s,"__utma=","&")))) a="-"; if (!(_uIN(b=_uGC(s,"__utmb=","&")))) b="-"; if (!(_uIN(c=_uGC(s,"__utmc=","&")))) c="-"; v=_uGC(s,"__utmv=","&"); z=_uGC(s,"__utmz=","&"); k=_uGC(s,"__utmk=","&"); xx=_uGC(s,"__utmx=","&"); if ((k*1) != ((_uHash(a+b+c+xx+z+v)*1)+(_udh*1))) {_ubl=1;a="-";b="-";c="-";xx="-";z="-";v="-";}
if (a!="-" && b!="-" && c!="-") f=1; else if(a!="-") f=2;}
}
if(f==1) { _ubd.cookie="__utma="+a+"; path="+_utcp+";"+nx+_udo; _ubd.cookie="__utmb="+b+"; path="+_utcp+";"+x+_udo; _ubd.cookie="__utmc="+c+"; path="+_utcp+";"+_udo;} else if (f==2) { a=_uFixA(s,"&",_ust); _ubd.cookie="__utma="+a+"; path="+_utcp+";"+nx+_udo; _ubd.cookie="__utmb="+_udh+"; path="+_utcp+";"+x+_udo; _ubd.cookie="__utmc="+_udh+"; path="+_utcp+";"+_udo; _ufns=1;} else if (a>=0 && b>=0 && c>=0) { _ubd.cookie="__utmb="+_udh+"; path="+_utcp+";"+x+_udo;} else { if (a>=0) a=_uFixA(_ubd.cookie,";",_ust); else a=_udh+"."+_uu+"."+_ust+"."+_ust+"."+_ust+".1"; _ubd.cookie="__utma="+a+"; path="+_utcp+";"+nx+_udo; _ubd.cookie="__utmb="+_udh+"; path="+_utcp+";"+x+_udo; _ubd.cookie="__utmc="+_udh+"; path="+_utcp+";"+_udo; _ufns=1;}
if (_ulink && xx && xx!="" && xx!="-") { xx=_uUES(xx); if (xx.indexOf(";")==-1) _ubd.cookie="__utmx="+xx+"; path="+_utcp+";"+nx+_udo;}
if (_ulink && v && v!="" && v!="-") { v=_uUES(v); if (v.indexOf(";")==-1) _ubd.cookie="__utmv="+v+"; path="+_utcp+";"+nx+_udo;}
_uInfo(page); _ufns=0; _ufno=0; _uff=1;}
function _uInfo(page) { var p,s="",dm="",pg=_udl.pathname+_udl.search; if (page && page!="") pg=_uES(page,1); _ur=_ubd.referrer; if (!_ur || _ur=="") { _ur="-";}
else { dm=_ubd.domain; if(_utcp && _utcp!="/") dm+=_utcp; p=_ur.indexOf(dm); if ((p>=0) && (p<=8)) { _ur="0";}
if (_ur.indexOf("[")==0 && _ur.lastIndexOf("]")==(_ur.length-1)) { _ur="-";}
}
s+="&utmn="+_uu; if (_ufsc) s+=_uBInfo(); if (_uctm) s+=_uCInfo(); if (_utitle && _ubd.title && _ubd.title!="") s+="&utmdt="+_uES(_ubd.title); if (_udl.hostname && _udl.hostname!="") s+="&utmhn="+_uES(_udl.hostname); s+="&utmr="+_ur; s+="&utmp="+pg; if ((_userv==0 || _userv==2) && _uSP()) { var i=new Image(1,1); i.src=_ugifpath+"?"+"utmwv="+_uwv+s; i.onload=function() {_uVoid();}
}
if ((_userv==1 || _userv==2) && _uSP()) { var i2=new Image(1,1); i2.src=_ugifpath2+"?"+"utmwv="+_uwv+s+"&utmac="+_uacct+"&utmcc="+_uGCS(); i2.onload=function() { _uVoid();}
}
return;}
function _uVoid() { return;}
function _uCInfo() { if (!_ucto || _ucto=="") { _ucto="15768000";}
if (!_uVG()) return; var c="",t="-",t2="-",t3="-",o=0,cs=0,cn=0,i=0,z="-",s=""; if (_uanchor && _udlh && _udlh!="") s=_udlh+"&"; s+=_udl.search; var x=new Date(_udt.getTime()+(_ucto*1000)); var dc=_ubd.cookie; x=" expires="+x.toGMTString()+";"; if (_ulink && !_ubl) { z=_uUES(_uGC(s,"__utmz=","&")); if (z!="-" && z.indexOf(";")==-1) { _ubd.cookie="__utmz="+z+"; path="+_utcp+";"+x+_udo; return "";}
}
z=dc.indexOf("__utmz="+_udh); if (z>-1) { z=_uGC(dc,"__utmz="+_udh,";");}
else { z="-";}
t=_uGC(s,_ucid+"=","&"); t2=_uGC(s,_ucsr+"=","&"); t3=_uGC(s,"gclid=","&"); if ((t!="-" && t!="") || (t2!="-" && t2!="") || (t3!="-" && t3!="")) { if (t!="-" && t!="") c+="utmcid="+_uEC(t); if (t2!="-" && t2!="") { if (c != "") c+="|"; c+="utmcsr="+_uEC(t2);}
if (t3!="-" && t3!="") { if (c != "") c+="|"; c+="utmgclid="+_uEC(t3);}
t=_uGC(s,_uccn+"=","&"); if (t!="-" && t!="") c+="|utmccn="+_uEC(t); else c+="|utmccn=(not+set)"; t=_uGC(s,_ucmd+"=","&"); if (t!="-" && t!="") c+="|utmcmd="+_uEC(t); else c+="|utmcmd=(not+set)"; t=_uGC(s,_uctr+"=","&"); if (t!="-" && t!="") c+="|utmctr="+_uEC(t); else { t=_uOrg(1); if (t!="-" && t!="") c+="|utmctr="+_uEC(t);}
t=_uGC(s,_ucct+"=","&"); if (t!="-" && t!="") c+="|utmcct="+_uEC(t); t=_uGC(s,_ucno+"=","&"); if (t=="1") o=1; if (z!="-" && o==1) return "";}
if (c=="-" || c=="") { c=_uOrg(); if (z!="-" && _ufno==1) return "";}
if (c=="-" || c=="") { if (_ufns==1) c=_uRef(); if (z!="-" && _ufno==1) return "";}
if (c=="-" || c=="") { if (z=="-" && _ufns==1) { c="utmccn=(direct)|utmcsr=(direct)|utmcmd=(none)";}
if (c=="-" || c=="") return "";}
if (z!="-") { i=z.indexOf("."); if (i>-1) i=z.indexOf(".",i+1); if (i>-1) i=z.indexOf(".",i+1); if (i>-1) i=z.indexOf(".",i+1); t=z.substring(i+1,z.length); if (t.toLowerCase()==c.toLowerCase()) cs=1; t=z.substring(0,i); if ((i=t.lastIndexOf(".")) > -1) { t=t.substring(i+1,t.length); cn=(t*1);}
}
if (cs==0 || _ufns==1) { t=_uGC(dc,"__utma="+_udh,";"); if ((i=t.lastIndexOf(".")) > 9) { _uns=t.substring(i+1,t.length); _uns=(_uns*1);}
cn++; if (_uns==0) _uns=1; _ubd.cookie="__utmz="+_udh+"."+_ust+"."+_uns+"."+cn+"."+c+"; path="+_utcp+"; "+x+_udo;}
if (cs==0 || _ufns==1) return "&utmcn=1"; else return "&utmcr=1";}
function _uRef() { if (_ur=="0" || _ur=="" || _ur=="-") return ""; var i=0,h,k,n; if ((i=_ur.indexOf("://"))<0) return ""; h=_ur.substring(i+3,_ur.length); if (h.indexOf("/") > -1) { k=h.substring(h.indexOf("/"),h.length); if (k.indexOf("?") > -1) k=k.substring(0,k.indexOf("?")); h=h.substring(0,h.indexOf("/"));}
h=h.toLowerCase(); n=h; if ((i=n.indexOf(":")) > -1) n=n.substring(0,i); for (var ii=0;ii<_uRno.length;ii++) { if ((i=n.indexOf(_uRno[ii].toLowerCase())) > -1 && n.length==(i+_uRno[ii].length)) { _ufno=1; break;}
}
if (h.indexOf("www.")==0) h=h.substring(4,h.length); return "utmccn=(referral)|utmcsr="+_uEC(h)+"|"+"utmcct="+_uEC(k)+"|utmcmd=referral";}
function _uOrg(t) { if (_ur=="0" || _ur=="" || _ur=="-") return ""; var i=0,h,k; if ((i=_ur.indexOf("://")) < 0) return ""; h=_ur.substring(i+3,_ur.length); if (h.indexOf("/") > -1) { h=h.substring(0,h.indexOf("/"));}
for (var ii=0;ii<_uOsr.length;ii++) { if (h.toLowerCase().indexOf(_uOsr[ii].toLowerCase()) > -1) { if ((i=_ur.indexOf("?"+_uOkw[ii]+"=")) > -1 || (i=_ur.indexOf("&"+_uOkw[ii]+"=")) > -1) { k=_ur.substring(i+_uOkw[ii].length+2,_ur.length); if ((i=k.indexOf("&")) > -1) k=k.substring(0,i); for (var yy=0;yy<_uOno.length;yy++) { if (_uOno[yy].toLowerCase()==k.toLowerCase()) { _ufno=1; break;}
}
if (t) return _uEC(k); else return "utmccn=(organic)|utmcsr="+_uEC(_uOsr[ii])+"|"+"utmctr="+_uEC(k)+"|utmcmd=organic";}
}
}
return "";}
function _uBInfo() { var sr="-",sc="-",ul="-",fl="-",cs="-",je=1; var n=navigator; if (self.screen) { sr=screen.width+"x"+screen.height; sc=screen.colorDepth+"-bit";} else if (self.java) { var j=java.awt.Toolkit.getDefaultToolkit(); var s=j.getScreenSize(); sr=s.width+"x"+s.height;}
if (n.language) { ul=n.language.toLowerCase();}
else if (n.browserLanguage) { ul=n.browserLanguage.toLowerCase();}
je=n.javaEnabled()?1:0; if (_uflash) fl=_uFlash(); if (_ubd.characterSet) cs=_uES(_ubd.characterSet); else if (_ubd.charset) cs=_uES(_ubd.charset); return "&utmcs="+cs+"&utmsr="+sr+"&utmsc="+sc+"&utmul="+ul+"&utmje="+je+"&utmfl="+fl;}
function __utmSetTrans() { var e; if (_ubd.getElementById) e=_ubd.getElementById("utmtrans"); else if (_ubd.utmform && _ubd.utmform.utmtrans) e=_ubd.utmform.utmtrans; if (!e) return; var l=e.value.split("UTM:"); var i,i2,c; if (_userv==0 || _userv==2) i=new Array(); if (_userv==1 || _userv==2) { i2=new Array(); c=_uGCS();}
for (var ii=0;ii<l.length;ii++) { l[ii]=_uTrim(l[ii]); if (l[ii].charAt(0)!='T' && l[ii].charAt(0)!='I') continue; var r=Math.round(Math.random()*2147483647); if (!_utsp || _utsp=="") _utsp="|"; var f=l[ii].split(_utsp),s=""; if (f[0].charAt(0)=='T') { s="&utmt=tran"+"&utmn="+r; f[1]=_uTrim(f[1]); if(f[1]&&f[1]!="") s+="&utmtid="+_uES(f[1]); f[2]=_uTrim(f[2]); if(f[2]&&f[2]!="") s+="&utmtst="+_uES(f[2]); f[3]=_uTrim(f[3]); if(f[3]&&f[3]!="") s+="&utmtto="+_uES(f[3]); f[4]=_uTrim(f[4]); if(f[4]&&f[4]!="") s+="&utmttx="+_uES(f[4]); f[5]=_uTrim(f[5]); if(f[5]&&f[5]!="") s+="&utmtsp="+_uES(f[5]); f[6]=_uTrim(f[6]); if(f[6]&&f[6]!="") s+="&utmtci="+_uES(f[6]); f[7]=_uTrim(f[7]); if(f[7]&&f[7]!="") s+="&utmtrg="+_uES(f[7]); f[8]=_uTrim(f[8]); if(f[8]&&f[8]!="") s+="&utmtco="+_uES(f[8]);} else { s="&utmt=item"+"&utmn="+r; f[1]=_uTrim(f[1]); if(f[1]&&f[1]!="") s+="&utmtid="+_uES(f[1]); f[2]=_uTrim(f[2]); if(f[2]&&f[2]!="") s+="&utmipc="+_uES(f[2]); f[3]=_uTrim(f[3]); if(f[3]&&f[3]!="") s+="&utmipn="+_uES(f[3]); f[4]=_uTrim(f[4]); if(f[4]&&f[4]!="") s+="&utmiva="+_uES(f[4]); f[5]=_uTrim(f[5]); if(f[5]&&f[5]!="") s+="&utmipr="+_uES(f[5]); f[6]=_uTrim(f[6]); if(f[6]&&f[6]!="") s+="&utmiqt="+_uES(f[6]);}
if ((_userv==0 || _userv==2) && _uSP()) { i[ii]=new Image(1,1); i[ii].src=_ugifpath+"?"+"utmwv="+_uwv+s; i[ii].onload=function() { _uVoid();}
}
if ((_userv==1 || _userv==2) && _uSP()) { i2[ii]=new Image(1,1); i2[ii].src=_ugifpath2+"?"+"utmwv="+_uwv+s+"&utmac="+_uacct+"&utmcc="+c; i2[ii].onload=function() { _uVoid();}
}
}
return;}
function _uFlash() { var f="-",n=navigator; if (n.plugins && n.plugins.length) { for (var ii=0;ii<n.plugins.length;ii++) { if (n.plugins[ii].name.indexOf('Shockwave Flash')!=-1) { f=n.plugins[ii].description.split('Shockwave Flash ')[1]; break;}
}
} else if (window.ActiveXObject) { for (var ii=10;ii>=2;ii--) { try { var fl=eval("new ActiveXObject('ShockwaveFlash.ShockwaveFlash."+ii+"');"); if (fl) { f=ii + '.0'; break;}
}
catch(e) {}
}
}
return f;}
function __utmLinker(l,h) { if (!_ulink) return; var p,k,a="-",b="-",c="-",x="-",z="-",v="-"; var dc=_ubd.cookie; if (!l || l=="") return; var iq = l.indexOf("?"); var ih = l.indexOf("#"); if (dc) { a=_uES(_uGC(dc,"__utma="+_udh,";")); b=_uES(_uGC(dc,"__utmb="+_udh,";")); c=_uES(_uGC(dc,"__utmc="+_udh,";")); x=_uES(_uGC(dc,"__utmx="+_udh,";")); z=_uES(_uGC(dc,"__utmz="+_udh,";")); v=_uES(_uGC(dc,"__utmv="+_udh,";")); k=(_uHash(a+b+c+x+z+v)*1)+(_udh*1); p="__utma="+a+"&__utmb="+b+"&__utmc="+c+"&__utmx="+x+"&__utmz="+z+"&__utmv="+v+"&__utmk="+k;}
if (p) { if (h && ih>-1) return; if (h) { _udl.href=l+"#"+p;}
else { if (iq==-1 && ih==-1) _udl.href=l+"?"+p; else if (ih==-1) _udl.href=l+"&"+p; else if (iq==-1) _udl.href=l.substring(0,ih-1)+"?"+p+l.substring(ih); else _udl.href=l.substring(0,ih-1)+"&"+p+l.substring(ih);}
} else { _udl.href=l;}
}
function __utmLinkPost(f,h) { if (!_ulink) return; var p,k,a="-",b="-",c="-",x="-",z="-",v="-"; var dc=_ubd.cookie; if (!f || !f.action) return; var iq = f.action.indexOf("?"); var ih = f.action.indexOf("#"); if (dc) { a=_uES(_uGC(dc,"__utma="+_udh,";")); b=_uES(_uGC(dc,"__utmb="+_udh,";")); c=_uES(_uGC(dc,"__utmc="+_udh,";")); x=_uES(_uGC(dc,"__utmx="+_udh,";")); z=_uES(_uGC(dc,"__utmz="+_udh,";")); v=_uES(_uGC(dc,"__utmv="+_udh,";")); k=(_uHash(a+b+c+x+z+v)*1)+(_udh*1); p="__utma="+a+"&__utmb="+b+"&__utmc="+c+"&__utmx="+x+"&__utmz="+z+"&__utmv="+v+"&__utmk="+k;}
if (p) { if (h && ih>-1) return; if (h) { f.action+="#"+p;}
else { if (iq==-1 && ih==-1) f.action+="?"+p; else if (ih==-1) f.action+="&"+p; else if (iq==-1) f.action=f.action.substring(0,ih-1)+"?"+p+f.action.substring(ih); else f.action=f.action.substring(0,ih-1)+"&"+p+f.action.substring(ih);}
}
return;}
function __utmSetVar(v) { if (!v || v=="") return; if (!_udo || _udo == "") { _udh=_uDomain(); if (_udn && _udn!="") { _udo=" domain="+_udn+";";}
}
if (!_uVG()) return; var r=Math.round(Math.random() * 2147483647); _ubd.cookie="__utmv="+_udh+"."+_uES(v)+"; path="+_utcp+"; expires=Sun, 18 Jan 2038 00:00:00 GMT;"+_udo; var s="&utmt=var&utmn="+r; if ((_userv==0 || _userv==2) && _uSP()) { var i=new Image(1,1); i.src=_ugifpath+"?"+"utmwv="+_uwv+s; i.onload=function() { _uVoid();}
}
if ((_userv==1 || _userv==2) && _uSP()) { var i2=new Image(1,1); i2.src=_ugifpath2+"?"+"utmwv="+_uwv+s+"&utmac="+_uacct+"&utmcc="+_uGCS(); i2.onload=function() { _uVoid();}
}
}
function _uGCS() { var t,c="",dc=_ubd.cookie; if ((t=_uGC(dc,"__utma="+_udh,";"))!="-") c+=_uES("__utma="+t+";+"); if ((t=_uGC(dc,"__utmb="+_udh,";"))!="-") c+=_uES("__utmb="+t+";+"); if ((t=_uGC(dc,"__utmc="+_udh,";"))!="-") c+=_uES("__utmc="+t+";+"); if ((t=_uGC(dc,"__utmx="+_udh,";"))!="-") c+=_uES("__utmx="+t+";+"); if ((t=_uGC(dc,"__utmz="+_udh,";"))!="-") c+=_uES("__utmz="+t+";+"); if ((t=_uGC(dc,"__utmv="+_udh,";"))!="-") c+=_uES("__utmv="+t+";"); if (c.charAt(c.length-1)=="+") c=c.substring(0,c.length-1); return c;}
function _uGC(l,n,s) { if (!l || l=="" || !n || n=="" || !s || s=="") return "-"; var i,i2,i3,c="-"; i=l.indexOf(n); i3=n.indexOf("=")+1; if (i > -1) { i2=l.indexOf(s,i); if (i2 < 0) { i2=l.length;}
c=l.substring((i+i3),i2);}
return c;}
function _uDomain() { if (!_udn || _udn=="" || _udn=="none") { _udn=""; return 1;}
if (_udn=="auto") { var d=_ubd.domain; if (d.substring(0,4)=="www.") { d=d.substring(4,d.length);}
_udn=d;}
if (_uhash=="off") return 1; return _uHash(_udn);}
function _uHash(d) { if (!d || d=="") return 1; var h=0,g=0; for (var i=d.length-1;i>=0;i--) { var c=parseInt(d.charCodeAt(i)); h=((h << 6) & 0xfffffff) + c + (c << 14); if ((g=h & 0xfe00000)!=0) h=(h ^ (g >> 21));}
return h;}
function _uFixA(c,s,t) { if (!c || c=="" || !s || s=="" || !t || t=="") return "-"; var a=_uGC(c,"__utma="+_udh,s); var lt=0,i=0; if ((i=a.lastIndexOf(".")) > 9) { _uns=a.substring(i+1,a.length); _uns=(_uns*1)+1; a=a.substring(0,i); if ((i=a.lastIndexOf(".")) > 7) { lt=a.substring(i+1,a.length); a=a.substring(0,i);}
if ((i=a.lastIndexOf(".")) > 5) { a=a.substring(0,i);}
a+="."+lt+"."+t+"."+_uns;}
return a;}
function _uTrim(s) { if (!s || s=="") return ""; while ((s.charAt(0)==' ') || (s.charAt(0)=='\n') || (s.charAt(0,1)=='\r')) s=s.substring(1,s.length); while ((s.charAt(s.length-1)==' ') || (s.charAt(s.length-1)=='\n') || (s.charAt(s.length-1)=='\r')) s=s.substring(0,s.length-1); return s;}
function _uEC(s) { var n=""; if (!s || s=="") return ""; for (var i=0;i<s.length;i++) {if (s.charAt(i)==" ") n+="+"; else n+=s.charAt(i);}
return n;}
function __utmVisitorCode(f) { var r=0,t=0,i=0,i2=0,m=31; var a=_uGC(_ubd.cookie,"__utma="+_udh,";"); if ((i=a.indexOf(".",0))<0) return; if ((i2=a.indexOf(".",i+1))>0) r=a.substring(i+1,i2); else return ""; if ((i=a.indexOf(".",i2+1))>0) t=a.substring(i2+1,i); else return ""; if (f) { return r;} else { var c=new Array('A','B','C','D','E','F','G','H','J','K','L','M','N','P','R','S','T','U','V','W','X','Y','Z','1','2','3','4','5','6','7','8','9'); return c[r>>28&m]+c[r>>23&m]+c[r>>18&m]+c[r>>13&m]+"-"+c[r>>8&m]+c[r>>3&m]+c[((r&7)<<2)+(t>>30&3)]+c[t>>25&m]+c[t>>20&m]+"-"+c[t>>15&m]+c[t>>10&m]+c[t>>5&m]+c[t&m];}
}
function _uIN(n) { if (!n) return false; for (var i=0;i<n.length;i++) { var c=n.charAt(i); if ((c<"0" || c>"9") && (c!=".")) return false;}
return true;}
function _uES(s,u) { if (typeof(encodeURIComponent) == 'function') { if (u) return encodeURI(s); else return encodeURIComponent(s);} else { return escape(s);}
}
function _uUES(s) { if (typeof(decodeURIComponent) == 'function') { return decodeURIComponent(s);} else { return unescape(s);}
}
function _uVG() { if((_udn.indexOf("www.google.") == 0 || _udn.indexOf(".google.") == 0 || _udn.indexOf("google.") == 0) && _utcp=='/') { return false;}
return true;}
function _uSP() { var s=100; if (_usample) s=_usample; if(s>=100 || s<=0) return true; return ((__utmVisitorCode(1)%10000)<(s*100));}
function urchinPathCopy(p){ var d=document,nx,tx,sx,i,c,cs,t,h,o; cs=new Array("a","b","c","v","x","z"); h=_uDomain(); if (_udn && _udn!="") o=" domain="+_udn+";"; nx="Sun, 18 Jan 2038 00:00:00 GMT;"; tx=new Date(); tx.setTime(tx.getTime()+(_utimeout*1000)); tx=tx.toGMTString()+";"; sx=new Date(); sx.setTime(sx.getTime()+(_ucto*1000)); sx=sx.toGMTString()+";"; for (i=0;i<6;i++){ t=" expires="; if (i==1) t+=tx; else if (i==2) t=""; else if (i==5) t+=sx; else t+=nx; c=_uGC(d.cookie,"__utm"+cs[i]+"="+h,";"); if (c!="-") d.cookie="__utm"+cs[i]+"="+c+"; path="+p+";"+t+o;}
}
function _uCO() { if (!_utk || _utk=="" || _utk.length<10) return; _ubd.cookie="GASO="+_utk+"; path="+_utcp+";"+_udo; var sc=document.createElement('script'); sc.type='text/javascript'; sc.id="_gasojs"; sc.src='https://www.google.com/analytics/reporting/overlay_js?gaso='+_utk+'&'+Math.random(); document.getElementsByTagName('head')[0].appendChild(sc);}
function _uGT() { var h=location.hash, a; if (h && h!="" && h.indexOf("#gaso=")==0) { a=_uGC(h,"gaso=","&");} else { a=_uGC(_ubd.cookie,"GASO=",";");}
return a;}
var _utk=_uGT(); if (_utk && _utk!="" && _utk.length>10) { if (window.addEventListener) { window.addEventListener('load', _uCO, false);} else if (window.attachEvent) { window.attachEvent('onload', _uCO);}
}
_uacct = "UA-191167-1"; urchinTracker(); function popupWindow(url) { window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width=210,height=210,screenX=150,screenY=150,top=150,left=150')
}
function prodrowOverEffect(object) { if (object.className == 'productListingfirstcolumn-data') object.className = 'productListingfirstcolumn-data-over'; if (object.className == 'productListinglastcolumn-data') object.className = 'productListinglastcolumn-data-over'; if (object.className == 'productListing-data') object.className = 'productListing-data-over';}
function prodrowOutEffect(object) { if (object.className == 'productListingfirstcolumn-data-over') object.className = 'productListingfirstcolumn-data'; if (object.className == 'productListinglastcolumn-data-over') object.className = 'productListinglastcolumn-data'; if (object.className == 'productListing-data-over') object.className = 'productListing-data';}

//function OSCFieldSuggest(id, file_layout, file_data) {
//  base = this;
//  base.FILE_XSLT_LAYOUT = file_layout;
//  base.FILE_XML_DATA = file_data;
//  base._OBJ = document.getElementById(id);
//  if(base._OBJ) {
//    //define the functions..
//    base.createXmlHttpRequest = function() {
//      var requestInstance = false;
//      if (window.XMLHttpRequest) { //FE
//        requestInstance = new XMLHttpRequest();
//        if (requestInstance.overrideMimeType) {
//          requestInstance.overrideMimeType('text/xml');
//        }
//      } else if (window.ActiveXObject) { // IE
//        try {
//          requestInstance = new ActiveXObject("Msxml2.XMLHTTP");
//        } catch (e) {
//          try { //last chance..
//            requestInstance = new ActiveXObject("Microsoft.XMLHTTP");
//          } catch (e) {}
//        }
//      }
//      if(!requestInstance) {
//        alert("Sorry, your browser doesn't support AJAX");
//      }
//      return(requestInstance);
//    };
//    base.loadDocument = function(file, funcAfterDocumentLoaded) {
//      var myRequest = base.createXmlHttpRequest();
//      myRequest.open('GET', file, true);
//      myRequest.onreadystatechange = function(e) {
//        if(myRequest.readyState == 4 && myRequest.status == 200) {
//          funcAfterDocumentLoaded(myRequest);
//        } else if(myRequest.readyState == 4) {
//         // alert("Sorry, the file " + file + " couldn't be loaded!");
//        }
//      };
//      myRequest.send(null);
//    };
//    base.parseXmlDocument = function(xsltLayout, xmlData) {
//      if(document.all) {
//        return(xmlData.transformNode(xsltLayout));
//      } else {
//        var processor = new XSLTProcessor();
//        processor.importStylesheet(xsltLayout);
//        var result = processor.transformToDocument(xmlData);
//        var xmls = new XMLSerializer();
//        return(xmls.serializeToString(result));
//      }
//    };
//    base.getDocumentOffsetTop = function(obj) {
//      return(parseInt(obj.offsetTop) + ((obj.offsetParent) ? base.getDocumentOffsetTop(obj.offsetParent) : 0));
//    };
//    base.getDocumentOffsetLeft = function(obj) {
//      return(parseInt(obj.offsetLeft) + ((obj.offsetParent) ? base.getDocumentOffsetLeft(obj.offsetParent) : 0));
//    };
//    base.show = function() {
//      base._OBJ_panel.style.visibility = 'visible';
//    };
//    base.hide = function() {
//      base._OBJ_panel.style.visibility = 'hidden';
//    };
//    base.suggestList = function() {
//      base.loadDocument(base.FILE_XML_DATA + "?" + base._OBJ.name + "=" + base._OBJ.value, function(request) {
//        base._OBJ_panel.innerHTML = base.parseXmlDocument(base._xsltSheet, request.responseXML);
//        base._OBJ_panel.style.top = (base.getDocumentOffsetTop(base._OBJ) + base._OBJ.offsetHeight) + "px";
//        base._OBJ_panel.style.left = base.getDocumentOffsetLeft(base._OBJ) + "px";
//        base.show();
//      }); 
//    };
//    //load xslt layout
//    base.loadDocument(base.FILE_XSLT_LAYOUT, function(request) {
//      base._xsltSheet = request.responseXML;
//    });
//    //create html panel to show
//    base._OBJ_panel = document.createElement('div');
//    base._OBJ_panel.style.visibility = 'hidden';
//    base._OBJ_panel.style.position = 'absolute';
//    base._OBJ_panel.style.overflow = 'auto';
//    base._OBJ_panel.style.height = '200px';
//	base._OBJ_panel.style.width = '147px';
//    base._OBJ_panel.style.border = '1px solid #CCCCCC';
//    base._OBJ_panel.style.top = 0 + "px";
//    base._OBJ_panel.style.left = 0 + "px";
//    base._OBJ.parentNode.appendChild(base._OBJ_panel);
//    //set the events
//    base._OBJ.onkeyup = function(e) {
//      if(base._OBJ.value.length > 2) {
//        base.suggestList();
//      }
//    };
//    base._OBJ.onblur = function(e) { //lost focus
//      //waiting a few milli sec. .. before hide the clicked panel ;)
//      setTimeout(function() {
//        base.hide();
//      }, 500);
//    };
//    base._OBJ.onfocus = function(e) { //got focus
//      if(base._OBJ.value.length > 2) {
//        base.suggestList();
//      }
//    };
//  } else {
//    //no field found..
//    alert("Field with ID " + id + " couldn't be found!");
//  }
//};

  /*<![CDATA[*/
  //Attention!!! put always this code above the HTML code of your field!!!
 // var oscSearchSuggest = new OSCFieldSuggest('txtSearch', 'includes/search_suggest.xsl', 'searchsuggest.php');
  /*]]>*/
<!-- /* <[CDATA[ */

// preload images
function preloadImgs() {
  var imgs = ['https://www.2mcctv.com/images/sc.gif','https://www.2mcctv.com/images/gl.gif','https://www.2mcctv.com/images/x.gif','https://www.2mcctv.com/images/gcb.gif','https://www.2mcctv.com/images/ht.gif','https://www.2mcctv.com/images/st.gif'];
  for (var i = 0; i < imgs.length; i++) {
    var img = new Image();
    img.src = imgs[i];
  }
}

// get position of mark (http://blog.firetree.net/2005/07/04/javascript-find-position/)
function findXPos(o) {
  var n = 0;
  if (o.offsetParent) {
    while (1) {
      n += o.offsetLeft;
      if (!o.offsetParent) { break; }
      o = o.offsetParent;
    }
  } else if (o.x) {
    n += o.x;
  }
  return n;
}

function findYPos(o) {
  var n = 0;
  if (o.offsetParent) {
    while (1) {
      n += o.offsetTop;
      if (!o.offsetParent) { break; }
      o = o.offsetParent;
    }
  } else if (o.y) {
    n += o.y;
  }
  return n;
}

function is_mac() {
  var agt = navigator.userAgent.toLowerCase();
  return (agt.indexOf("mac") != -1);
}

// position hidden div depending on position on screen
function setPos(n) {
  var h = document.getElementById('h'+n);
  var i = document.getElementById('i'+n);
  var m = document.getElementById('m'+n);
  var d = document.documentElement;
  var b = document.body;
  
  // position of the mark on the screen (top right corner)
  var x = findXPos(m);
  var y = findYPos(m);
  
  // width and height of the body (code taken from dw_viewport.js from http://www.dyn-web.com/)
  var ww = 0;
  if (window.innerWidth) { ww = window.innerWidth - 18; }
  else if (d && d.clientWidth) { ww = d.clientWidth; }
  else if (b && b.clientWidth) { ww = b.clientWidth; }
  
  var wh = 0;
  if (window.innerHeight) { wh = window.innerHeight - 18; }
  else if (d && d.clientHeight) { wh = d.clientHeight; }
  else if (b && b.clientHeight) { wh = b.clientHeight; }
  
  // scroll x and y of the window (code taken from dw_viewport.js from http://www.dyn-web.com/)
  var sx = 0;
  if (typeof window.pageXOffset == "number") { sx = window.pageXOffset; }
  else if (d && d.scrollLeft) { sx = d.scrollLeft; }
  else if (b && b.scrollLeft) { sx = b.scrollLeft; }
  else if (window.scrollX) { sx = window.scrollX; }

  var sy = 0;    
  if (typeof window.pageYOffset == "number") { sy = window.pageYOffset; }
  else if (d && d.scrollTop) { sy = d.scrollTop; }
  else if (b && b.scrollTop) { sy = b.scrollTop; }
  else if (window.scrollY) { sy = window.scrollY; }
  
  // width and height (including border) of hidden window
  var hw = 326;
  var hh = 144;
  
  // width and height of the mark
  var mw = i.width;
  var mh = i.height;
  
  if (ww - (x - sx + mw) < (x - sx)) {
    h.style.left = (-hw-3) + 'px';
  } else {
    h.style.left = mw + 1 + 'px';
  }
  
  if (wh - (y - sy) < (y - sy + mh)) {
    if (n==1 || n==2) {
      h.style.top = (-hh + mh + 3) + 'px';
      if (is_mac()) { h.style.top = (-hh + mh + 10) + 'px'; }
    } else {
      h.style.top = (-mh + 4) + 'px';
      if (is_mac()) { h.style.top = (-mh + 11) + 'px'; }
    }
  } else {
    if (n == 1) {
      h.style.top = 9 + 'px';
    } else if (n == 2) {
      h.style.top = 7 + 'px';
    } else {
      h.style.top = 0 + 'px';
    }
  }
}

// browser detection
function detectBrowser() {
  // browser detection from http://www.webreference.com/tools/browser/javascript.html  
  // convert all characters to lowercase to simplify testing
  var agt = navigator.userAgent.toLowerCase();
  var appVer = navigator.appVersion.toLowerCase();
  
  var is_minor = parseFloat(appVer);
  var is_major = parseInt(is_minor,10);
  
  var is_opera = (agt.indexOf("opera") != -1);
  var is_opera2 = (agt.indexOf("opera 2") != -1 || agt.indexOf("opera/2") != -1);
  var is_opera3 = (agt.indexOf("opera 3") != -1 || agt.indexOf("opera/3") != -1);
  var is_opera4 = (agt.indexOf("opera 4") != -1 || agt.indexOf("opera/4") != -1);
  var is_opera5 = (agt.indexOf("opera 5") != -1 || agt.indexOf("opera/5") != -1);
  var is_opera6 = (agt.indexOf("opera 6") != -1 || agt.indexOf("opera/6") != -1);
  var is_opera7 = (agt.indexOf("opera 7") != -1 || agt.indexOf("opera/7") != -1);
  var is_opera5up = (is_opera && !is_opera2 && !is_opera3 && !is_opera4);
  var is_opera6up = (is_opera && !is_opera2 && !is_opera3 && !is_opera4 && !is_opera5);
  var is_opera7up = (is_opera && !is_opera2 && !is_opera3 && !is_opera4 && !is_opera5 && !is_opera6);
  
  // IE
  var is_mac = agt.indexOf("mac")!=-1;
  var iePos  = appVer.indexOf('msie');
  if (iePos !=-1) {
    if (is_mac) {
      iePos = agt.indexOf('msie');
      is_minor = parseFloat(agt.substring(iePos+5,agt.indexOf(';',iePos)));
    } else {
      is_minor = parseFloat(appVer.substring(iePos+5,appVer.indexOf(';',iePos)));
    }
     is_major = parseInt(is_minor,10);
  }
  
  var is_safari = ((agt.indexOf('safari')!=-1)&&(agt.indexOf('mac')!=-1))?true:false;  
  var is_camino = (((agt.indexOf('camino')!=-1)||(agt.indexOf('chimera')!=-1))&&(agt.indexOf('mac')!=-1))?true:false;  
  var is_gecko = ((!is_safari)&&(navigator.product)&&(navigator.product.toLowerCase()=="gecko"))?true:false;
  
  var is_fx = ((agt.indexOf('mozilla/5')!=-1) && (agt.indexOf('spoofer')==-1) &&
        (agt.indexOf('compatible')==-1) && (agt.indexOf('opera')==-1) &&
        (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1) &&
        (is_gecko) && ((navigator.vendor=="Firefox")||(agt.indexOf('firefox')!=-1)));
        
  var is_moz = ((agt.indexOf('mozilla/5')!=-1) && (agt.indexOf('spoofer')==-1) &&
        (agt.indexOf('compatible')==-1) && (agt.indexOf('opera')==-1) &&
        (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1) &&
        (is_gecko) && (!is_fx) && ((navigator.vendor==="")||(navigator.vendor=="Mozilla")||(navigator.vendor=="Debian")));
  
  if ((is_moz)||(is_fx)) {
    var is_moz_ver = (navigator.vendorSub)?navigator.vendorSub:0;
    if(is_fx&&!is_moz_ver) {
      is_moz_ver = agt.indexOf('firefox/');
      is_moz_ver = agt.substring(is_moz_ver+8);
      is_moz_ver = parseFloat(is_moz_ver);
    }
    if(!(is_moz_ver)) {
      is_moz_ver = agt.indexOf('rv:');
      is_moz_ver = agt.substring(is_moz_ver+3);
      var is_paren = is_moz_ver.indexOf(')');
      is_moz_ver = is_moz_ver.substring(0,is_paren);
    }
    is_minor = is_moz_ver;
    is_major = parseInt(is_moz_ver,10);
  }
  
  var is_nav  = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1) &&
        (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1) &&
        (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1) &&
        (!is_safari) && (!is_camino) && (!(is_moz)) && (!is_fx));
  
  if ((navigator.vendor)&&((navigator.vendor=="Netscape6")||(navigator.vendor=="Netscape"))&&(is_nav)) {
     is_major = parseInt(navigator.vendorSub,10); 
     is_minor = parseFloat(navigator.vendorSub);
  }
  
  var is_ie = ((iePos!=-1) && (!is_opera) && (!is_safari));
  
  var is_nav7up = (is_nav && is_minor >= 7);
  var is_moz1up = (is_moz && is_minor >= 1);
  var is_ie5up = (is_ie && is_minor >= 5);
  var is_ie6up = (is_ie && is_minor >= 6);
  var is_win = ( (agt.indexOf("win")!=-1) || (agt.indexOf("16bit")!=-1) );
  
  return ((is_win && is_ie5up) || is_fx || is_nav7up || is_moz1up || is_camino || is_safari || is_opera7up);
  
}

// show/hide hidden div
function showHide(n) {
  setPos(n);
  var h = document.getElementById('h'+n);
  h.style.display = (h.style.display == "none") ? "block" : "none";  
}

function showMark(n) {
  if (detectBrowser()) {
    document.images.onload=preloadImgs();
    switch (n) {
      case 1:
        document.write('<div id="google_amark_b" style="width:92px; height:88px;"><div id="m'+n+'" class="m"><a href="javascript:showHide('+n+')"><img src="https://www.2mcctv.com/images/st.gif" width="92" height="88" id="i'+n+'" alt="Google Checkout Acceptance Mark" />');
        break;
      case 2:
        document.write('<div id="google_amark_b" style="width:182px; height:44px;"><div id="m'+n+'" class="m"><a href="javascript:showHide('+n+')"><img src="https://www.2mcctv.com/images/ht.gif" width="182" height="44" id="i'+n+'" alt="Google Checkout Acceptance Mark" />');
        break;
      default:
        document.write('<div id="google_amark_b" style="width:72px; height:73px;"><div id="m'+n+'" class="m"><a href="javascript:showHide('+n+')"><img src="https://www.2mcctv.com/images/sc.gif" width="72" height="73" id="i'+n+'" alt="Google Checkout Acceptance Mark" />');
        break;
    }
    document.write('</a></div><div id="h'+n+'" class="h" style="display:none;"><div id="t"><img src="https://www.2mcctv.com/images/gl.gif"  width="154" height="28" id="l" alt="Google Checkout logo" /><div id="x"><a href="javascript:showHide('+n+')"><img src="https://www.2mcctv.com/images/x.gif" width="16" height="16" alt="" /></a></div></div><div id="c"><p>Google Checkout is a fast, secure way to buy from stores across the web.</p><p class="p">When it\'s time to buy, look for the <img src="https://www.2mcctv.com/images/gcb.gif" width="104" height="19" alt="Google Checkout button image" /> button.</p><p>Use it once and stop creating new accounts every time you buy. <a href="http://checkout.google.com/buyer/tour.html" target="_blank">Learn more</a></p></div></div></div>');
  } else {
    switch (n) {
      case 1:
        document.write('<img src="https://www.2mcctv.com/images/st.gif" width="92" height="88" alt="Google Checkout Acceptance Mark" />');
        break;
      case 2:
        document.write('<img src="https://www.2mcctv.com/images/ht.gif" width="182" height="44" alt="Google Checkout Acceptance Mark" />');
        break;
      default:
        document.write('<img src="https://www.2mcctv.com/images/sc.gif" width="72" height="73" alt="Google Checkout Acceptance Mark" />');
        break;
    }
  }
}

/* ]]> */ //-->

SHOW_ADDED = 1; // set 0 if you no need show
Offset_X = -10;
Offset_Y = -30;

function Subsys_JsHttpRequest_Js() { this._construct() }
(function() { // to create local-scope variables
    var COUNT       = 0;
    var PENDING     = {};
    var CACHE       = {};

    // Called by server script on data load.
    Subsys_JsHttpRequest_Js.dataReady = function(id, text, js) {
        var undef;
        var th = PENDING[id];
        delete PENDING[id];
        if (th) {
            delete th._xmlReq;
            if (th.caching) CACHE[th.hash] = [text, js];
            th._dataReady(text, js);
        } else if (typeof(th) != typeof(undef)) {
            alert("ScriptLoader: unknown pending id: "+id);
        }
    }

    Subsys_JsHttpRequest_Js.prototype = {
        // Standard properties.
        onreadystatechange: null,
        readyState:         0,
        responseText:       null,
        responseXML:        null,
        status:             200,
        statusText:         "OK",

        // Additional properties.
        session_name:       "osCsid",  // set to SID cookie or GET parameter name
        responseJS:         null,         // JavaScript response array/hash
        caching:            false,        // need to use caching?

        // Internals.
        _span:              null,
        _id:                null,
        _xmlReq:            null,
        _openArg:           null,
        _reqHeaders:        null,

        dummy: function() {}, // empty function

        abort: function() {
            if (this._xmlReq) return this._xmlReq.abort();
            if (this._span) {
                this.readyState = 0;
                if (this.onreadystatechange) this.onreadystatechange();
                this._cleanupScript();
            }
        },

        open: function(method, url, asyncFlag, username, password) {
            this._openArg = {
                'method':    method,
                'url':       url,
                'asyncFlag': asyncFlag,
                'username':  username,
                'password':  password
            };
            this._id = null;
            this._xmlReq = null;
            this._reqHeaders = [];
            return true;
        },

        send: function(content) {
            var id = (new Date().getTime()) + "" + COUNT++;

            // Build QUERY_STRING from query hash.
            var query = this._hash2query(content);

            // Append SID to original URL now.
            var url = this._openArg.url;
            var sid = this._getSid();
            if (sid) url += (url.indexOf('?')>=0? '&' : '?') + this.session_name + "=" + this.escape(sid);

            // Solve hash BEFORE appending ID.
            var hash = this.hash = url + '?' + query;
            if (this.caching && CACHE[hash]) {
                var c = CACHE[hash];
                this._dataReady(c[0], c[1]);
                return false;
            }

            // Try to use XMLHttpRequest.
            this._xmlReq = this._obtainXmlReq(id, url);

            // Pass data in URL (GET, HEAD etc.) or in request body (POST)?
            var hasSetHeader = this._xmlReq && (window.ActiveXObject || this._xmlReq.setRequestHeader);
            var href, body;
            if (this._xmlReq && hasSetHeader && (""+this._openArg.method).toUpperCase() == "POST") {
                // Use POST method. Pass query in request body.
                // Opera 8.01 does not support setRequestHeader, so no POST method.
                this._openArg.method = "POST";
                href = url;
                body = query;
            } else {
                this._openArg.method = "GET";
                href = url + (url.indexOf('?')>=0? '&' : '?') + query;
                body = null;
            }

            // Append ID: a=aaa&b=bbb&<id>
            href = href + (href.indexOf('?')>=0? '&' : '?') + id;

            // Save loading script.
            PENDING[id] = this;

            if (this._xmlReq) {

                // Open request now & send it.
                // In XMLHttpRequest mode request URL MUST be ended with "<id>-xml".
                var a = this._openArg;
                this._xmlReq.open(a.method, href+"-xml", a.asyncFlag, a.username, a.password);
                if (hasSetHeader) {
                    // Pass pending headers.
                    for (var i=0; i<this._reqHeaders.length; i++)
                        this._xmlReq.setRequestHeader(this._reqHeaders[i][0], this._reqHeaders[i][1]);
                    // Set non-default Content-type. We cannot use
                    // "application/x-www-form-urlencoded" here, because
                    // in PHP variable HTTP_RAW_POST_DATA is accessible only when
                    // enctype is not default (e.g., "application/octet-stream"
                    // is a good start). We parse POST data manually in backend
                    // library code.
                    this._xmlReq.setRequestHeader('Content-Type', 'application/octet-stream');
                }
                // Send the request.
                return this._xmlReq.send(body);
            } else {
                // Create <script> element and run it.
                this._obtainScript(id, href);
                return true;
            }
        },

        getAllResponseHeaders: function() {
            if (this._xmlReq) return this._xmlReq.getAllResponseHeaders();
            return '';
        },

        getResponseHeader: function(label) {
            if (this._xmlReq) return this._xmlReq.getResponseHeader(label);
            return '';
        },

        setRequestHeader: function(label, value) {
            // Collect headers.
            this._reqHeaders[this._reqHeaders.length] = [label, value];
        },


        //
        // Internal functions.
        //

        // Constructor.
        _construct: function() {},

        // Do all work when data is ready.
        _dataReady: function(text, js) { with (this) {
            if (text !== null || js !== null) {
                readyState = 4;
                responseText = responseXML = text;
                responseJS = js;
            } else {
                readyState = 0;
                responseText = responseXML = responseJS = null;
            }
            if (onreadystatechange) onreadystatechange();
            _cleanupScript();
        }},

        // Create new XMLHttpRequest object.
        _obtainXmlReq: function(id, url) {
            // If url.domain specified, cannot use XMLHttpRequest!
            // XMLHttpRequest (and MS ActiveX'es) cannot work with different domains.
            if (url.match(new RegExp('^[a-z]+://', 'i'))) return null;

            // Try to use built-in loaders.
            var req = null;
            if (window.XMLHttpRequest) {
                try { req = new XMLHttpRequest() } catch(e) {}
            } else if (window.ActiveXObject) {
                try { req = new ActiveXObject("Microsoft.XMLHTTP") } catch(e) {}
                if (!req) try { req = new ActiveXObject("Msxml2.XMLHTTP") } catch (e) {}
            }
            if (req) {
                var th = this;
                req.onreadystatechange = function() {
                    var s = req.readyState;
                    if (s == 4) {
                        // Avoid memory leak by removing closure.
                        req.onreadystatechange = th.dummy;
                        // Remove possible junk from response.
                        var responseText = req.responseText;
                        try {
                            // Call associated dataReady().
                            eval(responseText);
                        } catch (e) {
                            Subsys_JsHttpRequest_Js.dataReady(id, "JavaScript code generated by backend is invalid!\n"+responseText, null);
                        }
                    } else {
                        th.readyState = s;
                        if (th.onreadystatechange) th.onreadystatechange()
                    }
                };
                this._id = id;
            }
            return req;
        },

        // Create new script element and start loading.
        _obtainScript: function(id, href) { with (document) {
            var span = null;
            // Oh shit! Damned stupid fucked Opera 7.23 does not allow to create SCRIPT
            // element over createElement (in HEAD or BODY section or in nested SPAN -
            // no matter): it is created deadly, and does not respons on href assignment.
            // So - always create SPAN.
            span = body.appendChild(createElement("SPAN"));
            span.style.display = 'none';
            span.innerHTML = 'Text for stupid IE.<s'+'cript></' + 'script>';
            setTimeout(function() {
                var s = span.getElementsByTagName("script")[0];
                s.language = "JavaScript";
                if (s.setAttribute) s.setAttribute('src', href); else s.src = href;
            }, 10);
            this._id = id;
            this._span = span;
        }},

        // Remove last used script element (clean memory).
        _cleanupScript: function() {
            var span = this._span;
            if (span) {
                this._span = null;
                setTimeout(function() {
                    // without setTimeout - crash in IE 5.0!
                    span.parentNode.removeChild(span);
                }, 50);
            }
            return false;
        },

        // Convert hash to QUERY_STRING.
        _hash2query: function(content, prefix) {
            if (prefix == null) prefix = "";
            var query = [];
            if (content instanceof Object) {
                for (var k in content) {
                    var v = content[k];
                    if (v == null || ((v.constructor||{}).prototype||{})[k]) continue;
                    var curPrefix = prefix? prefix+'['+this.escape(k)+']' : this.escape(k);
                    if (v instanceof Object)
                        query[query.length] = this._hash2query(v, curPrefix);
                    else
                        query[query.length] = curPrefix + "=" + this.escape(v);
                }
            } else {
                query = [content];
            }
            return query.join('&');
        },

        // Return value of SID based on QUERY_STRING or cookie
        // (PHP compatible sessions).
        _getSid: function() {
            var m = document.location.search.match(new RegExp('[&?]'+this.session_name+'=([^&?]*)'));
            var sid = null;
            if (m) {
                sid = m[1];
            } else {
                var m = document.cookie.match(new RegExp(s='(;|^)\\s*'+this.session_name+'=([^;]*)'));
                if (m) sid = m[2];
            }
            return sid;
        },

        // Stupid JS escape() does not quote '+'.
        escape: function(s) {
            return escape(s).replace(new RegExp('\\+','g'), '%2B');
        }
    }
})();
function addHandler(object, event, handler) { // Thanks xpoint.ru!
  if (typeof object.addEventListener != 'undefined')
    object.addEventListener(event, handler, false);
  else if (typeof object.attachEvent != 'undefined')
    object.attachEvent('on' + event, handler);
  else {
    var handlersProp = '_handlerStack_' + event;
    var eventProp = 'on' + event;
    if (typeof object[handlersProp] == 'undefined') {
      object[handlersProp] = [];
      if (typeof object[eventProp] != 'undefined')
        object[handlersProp].push(object[eventProp]);
      object[eventProp] = function(e) {
        var ret = true;
        for (var i = 0; ret != false && i < object[handlersProp].length; i++)
          ret = object[handlersProp][i](e);
        return ret;
    } }
    object[handlersProp].push(handler);
} }
function removeHandler(object, event, handler) { // Thanks xpoint.ru!
  if (typeof object.removeEventListener != 'undefined')
    object.removeEventListener(event, handler, false);
  else if (typeof object.detachEvent != 'undefined')
    object.detachEvent('on' + event, handler);
  else {
    var handlersProp = '_handlerStack_' + event;
    if (typeof object[handlersProp] != 'undefined') {
      for (var i = 0; i < object[handlersProp].length; i++) {
        if (object[handlersProp][i] == handler) {
          object[handlersProp].splice(i, 1);
          return;
} } } } }
/**
  AJAXBuyNow v2.0

  author Weretennikoff Andrew aka Medreces medreces@yandex.ru

  Released under the GNU General Public License
*/
var x, y;
var loadingImage = new Image();
var okImage = new Image();
loadingImage.src = "images/loading.gif";
okImage.src = "images/ok.gif";

if (window.opera || (navigator.userAgent.indexOf('MSIE') > -1)) { //IE + Opera
  getM_x = function () { return event.clientX + document.body.scrollLeft; }
  getM_y = function () { return event.clientY + document.body.scrollTop; }
} else { // Mozilla
  addHandler(document, 'mousemove', function(e) {
    x = e.pageX;
    y = e.pageY;
  });
  getM_x = function () { return x; }
  getM_y = function () { return y; }
}
function showOk() {
  var imgLoading = document.getElementById("_loading_");
  with (imgLoading) {
    src = okImage.src;
    style.visibility = "visible";
} }

function hideOk() {
  if(document.getElementById("_loading_")) document.getElementById('_loading_').style.visibility = "hidden";
  removeHandler(document, 'mousemove', hideOk);
}
function showLoading() {
  var imgLoading = document.getElementById("_loading_");
  if(!imgLoading) {
    imgLoading = document.createElement("img");
    with(imgLoading) {
      id = "_loading_";
      style.position = "absolute";
      style.visibility = "hidden";
    }
    document.body.appendChild(imgLoading);
  }
  with(imgLoading) {
    src = loadingImage.src;
    style.left = (getM_x() + Offset_X) + "px";
    style.top = (getM_y() + Offset_Y) + "px";
    style.visibility = "visible";
} }
function hideLoading() {
  if(document.getElementById("_loading_")) document.getElementById("_loading_").style.visibility = "hidden";
}

function doBuyNowGet( link ) {
  showLoading();
  var reqAddCart = new Subsys_JsHttpRequest_Js();
  reqAddCart.onreadystatechange = function() {
    if (reqAddCart.readyState == 4) {
      if (reqAddCart.responseJS) {
        document.location.href = reqAddCart.responseJS.ajax_redirect;
        return;
      }
      else {
        document.getElementById('divShoppingCard').innerHTML = '<table border="0" width="100%" cellspacing="0" cellpadding="2">'+(reqAddCart.responseText||'')+'</table>';
        hideLoading();
        if ( SHOW_ADDED ) {
          showOk();
          timerID = setTimeout( "addHandler(document, \'mousemove\', hideOk)", 500);
        }
      }
    }
  }
  reqAddCart.caching = false;
  reqAddCart.open('GET', link, true);
  reqAddCart.send(null);
}

function doAddProduct(form) {
  showLoading();
  var reqAddCart = new Subsys_JsHttpRequest_Js();
  reqAddCart.onreadystatechange = function() {
    if (reqAddCart.readyState == 4) {
      if (reqAddCart.responseJS) {
        document.location.href = reqAddCart.responseJS.ajax_redirect;
        return;
      }
      else {
        document.getElementById('divShoppingCard').innerHTML = '<table width="100%">'+(reqAddCart.responseText||'')+'</table>'
        if ( SHOW_ADDED ) {
          showOk();
          timerID = setTimeout( "addHandler(document, \'mousemove\', hideOk)", 500);
        }
      }
    }
  }
// ñîáèðàåì âñå ýëåìåíòû ôîðìû:
  var senddata = new Object();
  var fe = form.elements;
  for(var i=0 ; i<fe.length ; i++) {
    if ( fe[i].type=="radio" || fe[i].type=="checkbox" ) {
      if ( fe[i].checked ) senddata[fe[i].name] = fe[i].value;
    } else {
      senddata[fe[i].name] = fe[i].value;
    }
  }
  var url = 'ajax_shopping_cart.php?' + ( senddata.products_id ? 'products_id='+senddata.products_id+'&' : "" ) + 'action=add_product';

  reqAddCart.caching = false;
  reqAddCart.open( form.method, url, true);
  reqAddCart.send( senddata );
  return false;
}