var oKT, W=window, D=document, Nav, Gec, FF3, Ns, E, EvSrc, aErrScr=[], bKT, qseid, CS;

function KT_OMD(e){
var p, Tag, HRef, Site, bChg;

KT_EventInit(e); Tag=EvSrc.tagName;
if (Tag!='A' && Tag!='AREA'){
	if (!Tag) return;
	Tag=EvSrc.parentNode.tagName;
	if (Tag!='A' && Tag!='AREA') return;
	EvSrc=EvSrc.parentNode;
	}

if (oKT.LastEvSrc==EvSrc) return;
oKT.LastEvSrc=EvSrc;

HRef=EvSrc.href;
if ((p=HRef.indexOf('#http:'))!=-1){
	HRef=HRef.substr(p+1); bChg=true;
	}
else{
	if (HRef.indexOf('/go2phar'+'macy.php')!=-1) Site='DC'; 
	else if (HRef.indexOf('/engine/locations/')!=-1) Site='SG'; 

	if (Site){
		if (HRef.indexOf(KT_UId)!=-1) return;
		if (Site=='DC') HRef+='&u='+KT_UId;
		else if (Site=='SG') HRef=HRef.replace('.html', '_u'+KT_UId+(oKT.bSearch ? '_s' : '')+'.html');
		EvSrc.href=HRef; return;
		}
	}

while(true){
	if (!qseid) break;
	if (HRef.indexOf("="+qseid)!=-1) break;
	HRef=HRef.replace(/([&?])(said|tid|data1|keywords|s)=\d+/, "$1$2="+qseid); bChg=true; //?
	break;
	}

if (HRef.indexOf('.mpr'+'ixe.')!=-1 && HRef.indexOf('aid=')==-1){
	HRef+=(HRef.indexOf('?')!=-1 ? '&' : '?')+'ai'+'d=apo';
	bChg=true;
	}

if (bChg) EvSrc.href=HRef;
}

function KT_EventInit(e){
E=(!Gec ? event : e); EvSrc=E[Gec ? 'target' : 'srcElement'];
if (Ns && EvSrc.nodeType==3) EvSrc=EvSrc.parentNode;
} 

function KT_SetHandlers(){

Nav=W.navigator.userAgent; 
Gec=(Nav.indexOf('Gecko')!=-1); FF3=(Gec && Nav.indexOf('Firefox/3')!=-1); 
Ns=(Gec && Nav.indexOf('Netscape')!=-1);

oKT={
	bSearch:KT_SE,
	aEvents:['onmousedown', (!Gec ? 'onactivate' : (FF3 ? 'onkeydown' : 'onfocus'))]
	};

var i, EvName, aEvents=oKT.aEvents;

for(i=0; i<aEvents.length; i++){
	EvName=aEvents[i];
	if (D.attachEvent) D.attachEvent(EvName, KT_OMD);
	else D.addEventListener(EvName.substr(2), KT_OMD, false);
	}
}

function KT_Img(Categ, bNoHandlers){
var uid, C=D.cookie.split('; '), i, c, R="", S, E, 
	RE, SE, Q='', M, SN=0, SE0, Q0, SE2, Q2, bSE, aScr, s=Categ, H, QSe;



R=D.referrer; 
if ((i=R.lastIndexOf("#"))!=-1) R=R.substr(0, i); KT_SE='';

if (R && !R.match("^https?://"+W.location.host)){
	//SE & Referrer - see accesslog-parser.php
	S="^https?://([^/]*[.])?"; E="=([^&]+)"; 
	aRE=[
		S+'(google|alltheweb[.]com|ask[.]com|altavista|msn|bing[.]com|alexa[.]com|infoseek|search[.]live[.]com'+
			'|search[.]comcast[.]net)([.][^/]+)?/.*[?&](q)'+E,
		S+'(search[.]yahoo)([.][^/]+)?/.*[?&](p)'+E,
		S+'(aol|search[.]lycos|search[.]netscape|mamma[.]com|hotbot[.]com)([.][^/]+)?/.*[?&](query|encquery)'+E,
		S+'(webcrawler|excite[.]com|infospace[.]com)([.][^/]+)?/.*/(web)/([^/]+)'];
	
	for(i=0; i<aRE.length; i++){
		RE=new RegExp(aRE[i], "i");
	 	if (!(M=R.match(RE))) continue;
		SE=M[2]; Q=unescape(M[5]); break;
	 	}
	if (SE){
		if (SE=='search.live.com' || SE=='bing.com' || SE=='Bing.com') SE='msn';
		else if (SE.substr(0, 7)=="search.") SE=SE.substr(7);
		}
	KT_SE=SE; //Real SE
	if (!SE){ //Any site
		M=R.match("^https?://([^/:]+)"); SE=M[1];
		}
	}

if (!s){
	aScr=D.getElementsByTagName('SCRIPT'); 
	if (aScr && (i=aScr.length)){
		if (S=aScr[i-1].src){
			if (M=S.match("\\?s=([a-z0])$")) s=M[1];
			}
		}
	if (!s){
		H=D.body.innerHTML;
		if (H.indexOf('engine/locations/')!=-1 || H.indexOf('casino')!=-1) s='b';
		else if (H.indexOf('nsurance')!=-1) s='d';
		else s='a';
		}
	}

//Cookies
for(i=0; i<C.length; i++){
	c=C[i].split("=");
	if (c[0]=='kt_uid') uid=c[1];
	else if (c[0]=='kt_se' && (M=c[1].match("^([^:]+):([^:]+):(.*)"))){
		SN=M[1]; SE0=M[2]; Q0=M[3];
		}
	else if (s=='a' && c[0]=='kt_qseid') qseid=c[1];
	}

bSE=(SE && (SE!=SE0 || Q!=Q0));
if (!uid || bSE){
	if (!uid){
		uid=Math.random().toString().substr(2); KT_SetC("kt_uid", uid);
		}
	if (bSE){
		KT_SetC("kt_se", (++SN)+":"+SE+":"+Q); qseid=0;
		}
	}

if (s=='a'){
	if (SE && Q){SE2=SE; Q2=Q; R="";}
	else if (SE0 && Q0 && !SE && !qseid){SE2=SE0; Q2=Q0;}
	if (SE2 && Q2){
		if (SE2=='google') SE2='g'; else if (SE2=='yahoo') SE2='y'; else if (SE2=='msn') SE2='m';
		QSe=Q2+":"+SE2;
		}
	}

//Do not pass referrer only when we have QSe from current referrer


KT_UId=uid+"-"+SN;
if (s!='0' && !bNoHandlers) KT_SetHandlers();
if ((s=='0' || s=='d') && (W.location.hostname.match(/insur/) || D.title.match(/insur/i))){
	KT_OE("code.js on an insurance site", W.location.href, 0);
	}
}

function KT_SetC(c, v){

if (!CS){
	var DT=new Date(); DT.setUTCSeconds(DT.getUTCSeconds()+259200, 0);
	CS=";expires="+DT.toUTCString()+";path=/";
	}
D.cookie=c+"="+v+CS;
}

function KT_QSEId(i){
KT_SetC('kt_qseid', i); qseid=i;
}

function KT_GetParams(){
return '_u'+KT_UId+(oKT.bSearch ? '_s' : '');
}

function KT_OE(Msg, URL, LineNo){

if (URL.substr(0, 5)=='file:') return true;
if (URL.substr(0, 7)=='chrome:') return true;
if (URL.substr(0, 27)=='http://translate.google.com') return true; //G.transl.

//No need to know/show
if (Msg.indexOf('WidgetManager')!=-1) return true;
else if (Msg=='Error loading script'){ //FF
	if (URL.indexOf("http://www.blogger.com/widgets/")==0) return true;
	//Try reload these
	if (URL=="/"){
		if (!aErrScr[URL]){
			aErrScr[URL]=true; D.write("<Script Src='"+URL+"'></"+"Script>"); return true;
			}
		}
	}

//Just once
if (W.oEBImg) return false;



return false; //Do show the message for us to see it
}

function KT_Line(Line){return escape("\n"+Line);}

W.onerror=KT_OE;
KT_Img(); 
