//$Rev: 11600 $
if(!window.mmcore){
window.mmcore={
	domain:'virginmedia.com',
	server:'cg1.maxymiser.com/CG2/',
	cookie_domain:'',
	tpixel:false,
	cprefix:'mm',

	SetCookie:function(n,v,d){var exp=new Date(),_t=this,_h=_t._Host();exp.setTime(exp.getTime()+d*86400000);
		_t._d.cookie=escape(_t._PN(n))+'='+escape(v)+(_h.length?';domain='+_h:'')+';path=/'+(d>0?(';expires='+exp.toGMTString()):'')},
	GetCookie:function(n){var _t=this;return unescape(_t._ValByKey(_t._d.cookie,escape(_t._PN(n)),'=',';'))},
	HideMaxyboxes:function(names){this._MbStyle('{visibility:hidden;}',((names instanceof Array)?names:arguments));this._hidden=true},
	ShowMaxyboxes:function(names){this._MbStyle('{visibility:visible !important;}',((names instanceof Array)?names:arguments));this._hidden=false},
	SetAction:function(name,val,attr){var _t=this;_t._vars.act[_t._T(name)]=''+_t._ToNum(0,val)+','+(attr||'')},
	SetUserAttribute:function(name,val){this._vars.uat[this._T(name)]=(val||'')},
	SetParam:function(name,val){this._vars[name]=val},
	DeclareMaxyboxes:function(names){var _t=this,a=((names instanceof Array)?names:arguments),i;for(i=0;i<a.length;i++)_t._vars.mb[_t._T(a[i])]=''},
	CGRequest:function(callback){var _t=this;_t._callback[++_t._request_id]=callback;return _t._mode!=2?(_t._sid=_t._Tag(_t._TagUri())):null},
	RenderMaxyboxes:function(names){var i,a=((names instanceof Array)?names:arguments),_r,_t=this,b=[];
		for(i=0;i<a.length;i++){b[i]=a[i];_r=_t._renderers[a[i]];if(_r)try{_r()}catch(e){}}_t.ShowMaxyboxes(b)},

//transport
	Request:function(callback){var _t=mmcore;_t._rd=(new Date()).getTime();_t._async=true;return _t._sid[_t._request_id-1]=_t.CGRequest(callback||function(){})},
	IsFinished:function(){var _t=mmcore,r=true,i,tc=_t._callback;if(_t.tpixel)r=((new Date()).getTime()-_t._rd)>=_t._rt;for(i=0;i<tc.length;i++)r=r&&(tc[i]==null);return r},
	StopRequest:function(){var _d=document,_t=mmcore,_n,i,s=_t._sid;for(i in s){_n=_d.getElementById(s[i]);if(_n){(_n.parentNode||_d).removeChild(_n);_n.src='about:blank';delete _n}}},
//private
	jsver:'4.0',_vars:{fv:{},mb:{},act:{},uat:{}},_vars_alias:{mb:'cv',act:'uv'},_renderers:{},_extensions:{},
	_mode:0,_async:false,_hidden:false,_debug:false,_d:document,_l:window.location,_undef:undefined,_callback:[],_request_id:0,
	_sid:[],_rd:null,_rt:1000,

	_AddRenderer:function(mb,func){this._renderers[mb]=func},
	_ValByKey:function(str,key,f,r)/*f-field, r-array of record separators*/{
		var s='',i2,i3,i1=str.indexOf(key);if(i1<0)return'';
		if(i1<0||(i2=str.indexOf(f,i1+key.length))<0)return'';
		i1=i2+f.length;i3=str.indexOf(r,i1);
		return this._T(s=i3<0?str.substring(i1):str.slice(i1,i3))
	},	
	_ToNum:function(def_val,str){return isNaN(str)?def_val:Number(str)},
	_T:function(str){return str.replace(/^\s+/g,'').replace(/\s+$/g,'')},
	_L:function(str){return str.toLowerCase()},
	_TL:function(str){return this._L(this._T(str))},
	_PN:function(str){return this._TL(this.cprefix+str)},
	_Host:function(){
		var _t=this,_h=_t._TL(_t._l.hostname),_d=_t._TL(_t.domain),_d2=_t._TL(_t.cookie_domain);
		if (_h=='localhost')return '';if(_d2.length==0)_d2=_d;if(_d2[0]=='.')_d2=_d2.substring(1);if(_h.indexOf(_d2)>=0)_h=_d2;
		return _h.replace('www.', '')},
	_TagUri:function(){
		var _t=this,_vv=_t._vars,_p=_t._l.protocol,s='',s1,i,_v,_k;
		_t.SetParam('jsver',_t.jsver);_t.SetParam('tp',_t.tpixel?'1':'');
		_vv.pd=_t.GetCookie('pd');_vv.id=_t.GetCookie('id');
		for(i in _vv){_v=_vv[i];s1='';
			if(typeof _v=='object'){for(_k in _v)s1+=_k+'='+_v[_k]+';';s1.slice(0,-1)}else s1=_v;
			if(s1.length)s+=(_t._vars_alias[i]||i)+'='+escape(s1)+'&';
		}
		s=_t.server+'?'+s.slice(0,-1)+'&ri='+_t._request_id;
		return s.indexOf('://')>0?s:((_p!=''?_p:'http:')+'//'+s)},
	_Tag:function(uri){var _t=this,_n,px=_t.tpixel,tp='text/javascript',d=_t._d,_v=_t._vars,i,_a,id='_mmcoretag_'+_t._request_id;
		for(i in _v)if(i!='fv')_v[i]={};
		if(_t._async){_n=d.createElement(px?'img':'script');_n.id=id;_n.src=uri;if(!px){_n.type=tp;_n.charset='utf-8'};
			_a=d.getElementsByTagName(px?'body':'head');if(_a&&_a.length)_a[0].appendChild(_n)
		}else{_t._d.write(px?'<img id="'+id+'" src="'+uri+'"\/>':'<scr'+'ipt id="'+id+'" type="'+tp+'" charset="utf-8" src="'+uri+'"><\/scr'+'ipt>')}
		return id
	},
	_MbStyle:function(vis,arg){var s='<style type="text/css">.Maxybox',i=0;for(;i<arg.length;i++)s+=',#'+arg[i];s+=vis+'</style>';
	this._d.write(s)}, 
	_Init:function(){this._Clear();var _t=this,_fv=_t._vars.fv,_w=window.screen,_u=_t._l.href,_r=_t._d.referrer,_rnd=(''+Math.random()).substring(0,5),_id;
		_t._vars.gm=_t._mode=_t._ToNum(_t._mode,_t.GetCookie('_mode'));_t._mode=_t._ToNum(_t._mode,_t._ValByKey(_u,_t._PN('_mode'),'=','&'));
		if(_t._mode!=2){
			_id=_t._ValByKey(_u,_t._PN('pd'),'=','&');if(_id.length)_t.SetCookie('pd',_id,7);
			_id=_t._ValByKey(_u,_t._PN('id'),'=','&');if(_id.length)_t.SetCookie('id',_id,7)
		}
		_fv.dbg=_t._debug=_t._ToNum(_t._debug,_t._ValByKey(_u,_t._PN('_debug'),'=','&'));_fv.dmn=_t.domain;
		_t.SetCookie('tst',_rnd,10);_fv.cok=(_t.GetCookie('tst')==_rnd?1:0);
		if(_r.length>256)_r=_r.substring(0,256);if(_u.length>1024)_u=_u.substring(0,1024);
		_fv.ref=escape(_r);_fv.url=escape(_u);_fv.scrw=_w.width;_fv.scrh=_w.height;_fv.clrd=_w.colorDepth;
	},
	_Clear:function(){var _t=this;_t._renderers={};_t._vars={fv:{},mb:{},act:{},uat:{}};}
};
window.mmcore._Init()
}
//---------
//$Rev: 14594 $
if(!window.mmevents){
window.mmevents={
	timeout:3000,
	Tag:function(nodes,prerequest,transport,isbeforeuserhandler,event,isredir){
		var _t=this,_n=nodes,_tr=transport,_pr=prerequest,n,isb=isbeforeuserhandler,ev=event?event:'onclick';isredir=typeof isredir!='undefined'?isredir:true;
		if(!(ev=='onclick'||ev=='onmousedown'||ev=='onmouseup'))return 'invalid event';
		if(_n.tagName)_t._TagNode(_n,_pr,_tr,isb,ev,isredir);else if(_n.length)for(n=0;n<_n.length;n++)_t._TagNode(_n[n],_pr,_tr,isb,ev,isredir);
	},
	Request:function(node){
		var _t=this,_n=node;if(_t._tid)return;
		if(!_n.mmRedirect)_n.mmRedirect=function(){};
		if(_n.mmPreRequest)try{_n.mmPreRequest(_n);}catch(e){};
		_t._t0=(new Date()).getTime();_n.mmRequest();
		_t._tid=setInterval(function(){
			var isf=_n.mmIsFinished(),ist=((new Date()).getTime()-_t._t0)>=_t.timeout;if(ist&&!isf)_n.mmStop();
			if(isf||ist){clearInterval(_t._tid);_t._tid=null;var oldhr=true;
			if(_n.mmbefore&&_n.mmOldHandler)oldhr=_n.mmOldHandler(_n.mmevent);
			if(oldhr&&_n.mmisr)_n.mmRedirect();
			}
		},200);
	},
	//private
	_tid:null,_t0:null,
	_TagNode:function(n,pr,tr,isb,ev,isr){
		if(!n||!n.tagName)return;var _t=this;_t._CopyTransport(n,tr,pr);
		switch(n.tagName.toUpperCase()){
			case "FORM":_t._Tag_form(n,tr,isb);break;
			default:_t._Tag_a(n,tr,isb,ev,isr);break;
		}
	},
	_Tag_a:function(obj,tr,isbefore,ev,isr){
		if(!obj.mmev){obj.mmev=ev;obj.mmisr=isr;if(!obj.mmOldHandler)obj.mmOldHandler=obj[ev];obj[ev]=mm_a_onclick;obj.mmbefore=isbefore}
	},
	_Tag_form:function(obj,tr,isbefore){
		if(!obj.mmOldHandler){obj.mmOldHandler=obj.submit;obj.mmRedirect=function(){obj.mmOldHandler()};obj.mmisr=true;
		obj.submit=function(){var cont=true;try{if(obj.onsubmit)cont=obj.onsubmit()}catch(e){};if(cont){obj.onsubmit=null;mmevents.Request(this);}return false};obj.mmbefore=isbefore;var i,t,inp=obj.getElementsByTagName("input"),e;
		for (i=0;i<inp.length;i++){e=inp[i];t=e.type.toLowerCase();if((t=="submit")||(t=="image")){e.mmOldHandler=e.onclick;e.onclick=mm_submit_onclick;}}}
	},
	_CopyTransport:function(obj,tr,pr){
		var th=this,t=this._transport,opr=obj.mmPreRequest;if(!tr)tr=t;
		if(opr)obj.mmPreRequest=function(node){opr(node);pr(node);};else obj.mmPreRequest=pr;
		obj.mmtransport=obj.mmtransport?th._TransportBridge([obj.mmtransport,tr]):th._TransportBridge([tr,t]);
		obj.mmRequest=obj.mmtransport.Request;obj.mmIsFinished=obj.mmtransport.IsFinished;obj.mmStop=obj.mmtransport.StopRequest;
	},
	_TransportBridge:function(trs){
		var _t=this,_tr=_t._transport,
		__isf=function(){var r=true,i;for(i=0;i<trs.length;i++)r=r&&(trs[i].IsFinished||_tr.IsFinished)();return r}
		return {
			Request:function(callback){var i;for(i=0;i<trs.length;i++)(trs[i].Request||_t.Request)(callback)},
			IsFinished:function(){return __isf()},
			StopRequest:function(){var i;for(i=0;i<trs.length;i++)(trs[i].StopRequest||_tr.StopRequest)()}
		}
	},
	//default transport
	_transport:{Request:function(callback){},
				IsFinished:function(){return true},
				StopRequest:function(){}}
}
window.mm_a_onclick = function(e) {
	var p, t = this, h = t.href, ev = mmevents, _wl = window.location; t.mmevent = e;
	if (!t.mmbefore) try { if (t.mmOldHandler && t.mmOldHandler(e) === false) return false } catch (ex) { }
	if (h) {
		p = h.toLowerCase().indexOf("javascript:");
		if (p == -1) t.mmRedirect = function() {
		if (navigator.userAgent.indexOf("Chrome") != -1) {
			elem = document.createElement("a");elem.href = t.href;
				if (document.createEvent) {evt = document.createEvent('MouseEvents');}
				if (elem && elem.dispatchEvent && evt && evt.initMouseEvent) {
					evt.initMouseEvent('click', true, true, document.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
					elem.dispatchEvent(evt);
				}
			}
			_wl.assign(h);
		};
		else t.mmRedirect = eval("function(arg){" + h.substring(p + 11) + "}");
	}
	ev.Request(t); return false
}

	window.mm_submit_onclick=function(){
		var t=this;if(!t.mmbefore)try{if(t.mmOldHandler&&t.mmOldHandler()===false)return false
		}catch(e){};t.form.submit();return false
	}
}
//---------
if(navigator.userAgent.toLowerCase().indexOf('opera')==-1){
	mmcore._MbStyle=function(){};
	mmcore.DeclareMaxyboxes('ActionIPT','MaxyIPT1', 'MaxyIPT2', 'MaxyIPT3');
	mmcore.CGRequest(function(){
			window.mmAttachStyle=function(text){
			var head = document.getElementsByTagName('head')[0];
			var style = document.createElement('style');
			style.type = 'text/css';
			if (/WebKit|MSIE/i.test(navigator.userAgent)){
				if(style.styleSheet){
					style.styleSheet.cssText = text;
				}else{
					style.innerText = text;
				}
			}else{
				style.innerHTML=text;	
			}
			head.insertBefore(style, head.childNodes[0]);
		}
		mmcore.RenderMaxyboxes('ActionIPT');
	});
}