/*      Global JS Functions     */

var nwn,to,pat,tSize=3,expF='';
var sRange=new Array('xx-small','x-small','small','medium','large','x-large','xx-large');

/************** style and size information ****************/

function g_docObj(){if(document.documentElement){return document.documentElement}else if(document.body){return document.body}else{return false}}
function f_screenWidth(){return screen.width}
function f_screenHeight(){return screen.height}
function f_clientWidth(){return f_filterResults(window.innerWidth?window.innerWidth:0,document.documentElement?document.documentElement.clientWidth:0,document.body?document.body.clientWidth:0)}
function f_clientHeight(){ return f_filterResults(window.innerHeight?window.innerHeight:0,document.documentElement?document.documentElement.clientHeight:0,document.body?document.body.clientHeight:0)}
function f_scrollLeft(){return f_filterResults(window.pageXOffset?window.pageXOffset:0,document.documentElement?document.documentElement.scrollLeft:0,document.body?document.body.scrollLeft:0)}
function f_scrollTop(){return f_filterResults(window.pageYOffset?window.pageYOffset:0,document.documentElement?document.documentElement.scrollTop:0,document.body?document.body.scrollTop:0)}
function f_filterResults(wr,dr,br){var res;var w_res=wr?wr:0;var d_res=dr?dr:0;var b_res=br?br:0;if(w_res>d_res){res=w_res}else{res=d_res}if(b_res>res){res=b_res}return res}
// element height/width returns 0 for hidden elements
function f_elementWidth(i){var e;if($(i)){e=$(i)}else if(document.all){e=document.all[i]}else{return 0}if(e.clientWidth){return e.clientWidth}return e.offsetWidth}
function f_elementHeight(i){var e;if($(i)){e=$(i)}else if(document.all){e=document.all[i]}else{return 0}if(e.clientHeight){return e.clientHeight}return e.offsetHeight}
function f_elementPosition(e){var pos=new Array();pos[0]=0;pos[1]=0-f_scrollTop(),i=$(e);if(i.offsetParent){do{pos[0]+=i.offsetLeft;pos[1]+=i.offsetTop}while(i=i.offsetParent)return pos}}
function f_DocumentHeight(){if (document.body.scrollHeight)return document.body.scrollHeight;return document.documentElement.offsetHeight;}
function f_docHeight(){var sh=document.body.scrollHeight;var oh=document.body.offsetHeight;if(sh>oh){return sh}else{return oh}}
function funcExist(f){if(typeof f=='function')return 1;return 0}
function IEstyleFix(s){for(var exp=/-([a-z])/;exp.test(s);s=s.replace(exp,RegExp.$1.toUpperCase()));return s}
function isVis(i){if(!$(i)){return false}if($(i).style.length==0||getStyle(i,'display')=='none'||getStyle(i,'visibility')=='hidden'){return false}return true}
function mouseXY(e,v){var o=agent('msie')?{'X':event.clientX+document.documentElement.scrollLeft,'Y':event.clientY+document.documentElement.scrollTop}:{'X':e.pageX,'Y':e.pageY};return(v?o[v]:o);}
function isChild(s,d){while(s){if(s==d)return true;s=s.parentNode}return false}
function agent(v){return(Math.max(navigator.userAgent.toLowerCase().indexOf(v),0))}
//
function f_scrHPosFromPerc(pos){ return parseInt((pos/screen.height)*100) }
function f_scrHPercFromPos(perc){ return parseInt((screen.height*perc)/100) }

/* general purpose utils */

function $(){var elements=new Array();for(var i=0;i<arguments.length;i++){var element=arguments[i];if(typeof element=='string'){if(document.getElementById){
 element=document.getElementById(element)}else if(document.all){element=document.all[element]}else if(document.layers){element=document.layers[element]}}
 if(arguments.length==1){return element}elements.push(element)}return elements}
function $S(o){o=$(o);if(o&&o.style)return(o.style)} // style reference
function $SV(o){o=$(o);if(o&&o.selectedIndex>=0)return(o.options[o.selectedIndex].value)} // selected value
function $RV(o){var RElems=document.getElementsByName(o);for(i=0;i<RElems.length;i++){if(RElems[i].checked){

//alert(o+': elem '+i+' is checked, value is '+RElems[i].value);
return RElems[i].value}}} // radio value

function nw(n,l,x,y,sx,sy,r,sb){var rsz='yes',scrl='yes';if(r){rsz='no'}if (sb){scrl='no'}
 if((x>screen.width)||(!x)){r=1;x=screen.width-60;sx=20}if((y>screen.height)||(!y)){r=1;y=screen.height-150;sy=25}
 if (!sx){sx=screen.width/2-x/2}if(sx<0){sx=0}if(!sy){sy=screen.height/2-y/2-40}if(sy<0){sy=0}if(nwn){nwn.close()}if(parent.nwn){parent.nwn.close()}
 nwn=window.open(l,n,'toolbar=no,location=no,scrollbars='+scrl+',copyhistory=no,status=no,menubar=no,directories=no,resizable='+rsz+',width='+x+',height='+y+',left='+sx+',top='+sy)}

function getStyle(i,p){
 var v=null;
 if(document.defaultView&&document.defaultView.getComputedStyle){
  var cs=document.defaultView.getComputedStyle($(i),null);
  if(cs && cs.getPropertyValue){v=cs.getPropertyValue(p)}
 }
 if(!v&&$(i).currentStyle){v=$(i).currentStyle[IEstyleFix(p)]}
 return v;
}

function getElementsByClass(searchClass,tag){var gebcEls=new Array();var gebcEl=document.getElementsByTagName(tag);var gebcElL=gebcEl.length;
 var gebcPtrn=new RegExp('(^|\\s)'+searchClass+'(\\s|$)');for (i=0,j=0;i<gebcElL;i++){if(gebcPtrn.test(gebcEl[i].className)){gebcEls[j]=gebcEl[i];j++}}return gebcEls}

function remElement(i){if($(i).removeNode){$(i).removeNode(true);return}if($(i).removeChild){$(i).parentNode.removeChild($(i))}}

function didClickElem(e,el){if(!$(el)){return false}var ce,pe,step=0;if(e.target){ce=e.target}else if(e.srcElement){ce=e.srcElement}
 while(step<30){step++;if(ce.id&&ce.id==el){return true}else if(ce.parentNode!=undefined){ce=ce.parentNode}else{return false}}return false}

function resizeText(adj){if(!document.getElementById){return}if(adj=='+'){tSize+=1;if(tSize>6){tSize=6}}else if(adj=='m'){tSize=3}else{tSize-=1;if(tSize<0){tSize=0}}document.body.style.fontSize=sRange[tSize]}

function unSelPage(){if(document.selection&&document.selection.empty){document.selection.empty()}else if(document.selection&&document.selection.clear){document.selection.clear()}
  else if(window.getSelection){var sel=window.getSelection();if(sel&&sel.removeAllRanges){sel.removeAllRanges()}}return false}

/* Hash function */
function Hash(){this.length=0;this.items=new Array();
 for(var i=0;i<arguments.length;i+=2){if(typeof(arguments[i+1])!='undefined'){this.items[arguments[i]]=arguments[i+1];this.length++;}}
 this.clear=function(){for(var i in this.items){delete this.items[i];}this.length=0;}
 this.list=function(){var mesg='number of items in hash='+this.length+'\n';for(var i in this.items){mesg+='key is: '+i+', value is: '+this.items[i]+'\n'}alert(mesg)}
 this.addItem=function(k,v){var p;if(typeof(v)!='undefined'){if(typeof(this.items[k])=='undefined'){this.length++}else{p=this.items[k]}this.items[k]=v}return p}
 this.remItem=function(k){var p=false;if(typeof(this.items[k])!='undefined'){this.length--;p=this.items[k];delete this.items[k]}return p}
 this.hasItem=function(k){return typeof(this.items[k])!='undefined'}
 this.getItem=function(k){if(this.items[k]=='undefined'||this.items[k]==undefined){return ''}else{return this.items[k]}}
}

/* document flagging */
function ResFlag(t,i,f){send_req(aurl,'act='+t+':fd::'+i+':'+f,'DocFlag','','','',cTheme,'1','DocFlag')}


/************ keystroke limitor *******************/

function getKeyCd(e){var key;if(window.event){key=window.event.keyCode}else if(e){key=e.which}else{key=''}return key}
function getKeyChar(k){if((k==0)||(k==null)||(k<48)){return 'rt'}return String.fromCharCode(k)}
function getKey(e){var k=getKeyCd(e);var kchar=getKeyChar(k);return kchar}
function chkCopy(e){var k=getKey(e);if((k=='c')&&(CtrL==true)){CtrL=false;return true}return false}
function sbtOnEn(e,scr){var key,keychar;if(window.event){key=window.event.keyCode}else if(e){key=e.which}else{return 0}if(key==13){eval(scr)}}

/* add tab check here? */
function keyLimit(e,i,cl,ml,p){setPat(p);var myStr=$(i).value,curChar;if(ml==''||ml==0){ml=1000000}if(myStr.length>ml){$(i).value=myStr.substring(0,ml)}
 else{RegExp.quote=function(str){return str.replace(/([.?*+^$[\]\\(){}-])/g, "\\$1");};
  for(c1=0; c1<myStr.length; c1++){curChar=myStr.substring(c1,c1+1);
   if(curChar=="'"&&p=='a'){var re=new RegExp(RegExp.quote(curChar),"g");$(i).value=myStr.replace(re,'"');setCaretPos(i+1,c1);return}
   else if(pat.indexOf(curChar)<0){var re=new RegExp(RegExp.quote(curChar),"g");$(i).value=myStr.replace(re,'');setCaretPos(i,c1);return}}}
 if(cl){updLE(i,cl,ml)}return true}

function setCaretPos(i,p){if($(i).setSelectionRange){$(i).focus();$(i).setSelectionRange(p,p)}else if($(i).createTextRange){var rn=$(i).createTextRange();rn.collapse(true);rn.moveEnd('character',p);rn.moveStart('character',p);rn.select()}}

function updLE(ta,tal,ml){$(tal).innerHTML='('+(ml-$(ta).value.length)+' char left)'}

function setPat(p){
 if(p=='o'){pat='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';return}
 pat='0123456789';
 if(p=='n'){return}
 else if (p=='i'){pat=pat+'.'}    /* ip address */
 else if(p=='t'){pat=pat+':'}     /* time */
 else if(p=='p'){pat=pat+'().- '} /* phone */
 else if(p=='d'){pat=pat+'/-.'}   /* date */
 else if(p=='u'){pat=pat+'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.'}
 else if(p=='q'){pat=pat+'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ*_- '}
 else if(p=='l'){pat=pat+'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_.@ '}   /* email */
 else if(p=='a'){pat=pat+'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ .-_\n\r'}
 else if(p=='h'){pat=pat+'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ:\/._-\?='} /* URL */
 else if(p=='f'){pat=pat+'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_./\\'} /* file name */
 else if(p=='m'){pat=pat+'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ .-_,!?()$;:\n\r'}
 else if(p=='e'){pat=pat+'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ .-_[]?,;:!@$%#^&*()+<>\'"=/\\\n\r'} /* everything */
 else if(p=='c'){pat=pat+'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ .-_[]?,;:!@$%#^*()+<>\'"=/'} /* chat */
}


/****** global keystroke events *******/

var CtrL=false,ShfT=false;EscOverride='';

/* onKeyDown */
document.onkeydown=function(){return KdownEv};
if(document.addEventListener){document.addEventListener('keydown',KdownEv,false)}
else if(document.attachEvent){document.attachEvent('onkeydown',KdownEv)}

function KdownEv(e){if(!e){var e=window.event}var k;if(e.which){k=e.which}else if(e.keyCode){k=e.keyCode}var r=true;if(k==16){ShfT=true}if(k==17){CtrL=true}if(typeof XtraKdownEv=='function'){r=XtraKdownEv(k,e)}return r}

/* onKeyUp */
document.onkeyup=function(){return KupEv};
if(document.addEventListener){document.addEventListener('keyup',KupEv,false)}
else if(document.attachEvent){document.attachEvent('onkeyup',KupEv)}

function KupEv(e){if(!e){var e=window.event}var k;if(e.which){k=e.which}else if(e.keyCode){k=e.keyCode}var r=true;if(k==16){ShfT=false}if(k==17){CtrL=false}if(k==27){if(EscOverride!=''){eval(EscOverride)}else{hideAllPUs()}r=false}
 if(typeof XtraKupEv=='function'){r=XtraKupEv(k,e)}return r}



/***** global right click events ********

document.onmouseup=function(){MupEv};
if(document.addEventListener){document.addEventListener('mouseup',MupEv,false)}
else if(document.attachEvent){document.attachEvent('onmouseup',MupEv)}

function MupEv(e){var rc=false,targ;if(!e){var e=window.event}if(e.which) {if(e.which==3){rc=true}}else if(e.button){if(e.button==2){rc=true}}if(e.target){targ=e.target}else if(e.srcElement){targ=e.srcElement}if(targ.nodeType==3){targ=targ.parentNode}
 if(rc&&PUinfo&&PUinfo.getItem(targ.id+'rclick')){ eval(PUinfo.getItem(targ.id+'rclick'))}}
*/



/************** Form Utilities ******************/

// verify all fields in form are filled
function valSubmNB(f){var c=1;while(c<document.forms[f].length){if(document.forms[f].elements[c].value==''){alert('You must enter something in each field\nNo fields can be blank');c=100}c=c+1}if(c<100){document.forms[f].submit()}}

function showSelects(){var elements=document.getElementsByTagName("select");for(i=0;i<elements.length;i++){if(!elements[i].className.indexOf('ibo')){elements[i].style.visibility='visible'}}}
function hideSelects(){var elements=document.getElementsByTagName("select");for(i=0;i<elements.length;i++){elements[i].style.visibility='hidden'}}

// check/uncheck all boxes
function chkBox(f,a){var elems,ch=false;if(a==1||a==true){ch=true}if(f){if(document.forms[f]){elems=document.forms[f].elements}else{elems=getElementsByClass(f,'input')}}
 else{elems=document.getElementsByTagName('input')}for(c=0;c<elems.length;c++){if(elems[c].getAttribute('type')=='checkbox'){elems[c].checked=ch}}}

// fixup troublesome characters
function cleanFTxt(txt){txt=txt.replace(/::/g,"dc::dc");txt=txt.replace(/;/g,"s::s");txt=txt.replace(/&/g,"a::a");txt=txt.replace(/'/g,"sq::sq");txt=txt.replace(/"/g,"dq::dq");txt=txt.replace(/</g,"lt::lt");txt=txt.replace(/>/g,"gt::gt");
 txt=txt.replace(/%/g,"p::p");return txt}


/*************** popup utilities ***************/
var hapu=0; // a workaround toggle to avoid double trigger in hideAllPUs()
var PUAsgn=new Hash();  // to track existing gpu popups
var PUinfo=new Hash();  // to track various info on popups
var dragDiv='',isDrag=0,dragXOff=0,dragYOff=0; // for use during PU drag
var PUchvC='';

function sl(id,n){if(!$(id)||!$S(id)){return}if(n==1){$S(id).display='block'}else if(n==2){$S(id).display='inline'}else{$S(id).display=''}if(document.getElementById){$S(id).visibility='visible'}else if(document.layers){document.layers[id].visibility=show}
 else if(document.all){document.all.id.style.visibility='visible'}}

function hl(id,override){if(!$(id)||!$S(id)){return}if(PUAsgn.getItem(id+'nh')&&!override){return}if(id.indexOf('gpu')==0&&id.indexOf('div')>3){var idn=id.substr(3,(id.length-6));if(PUAsgn.getItem('topPU')<=idn){findVDBT(idn)}}PUAsgn.remItem(PUAsgn.getItem(id));
 PUAsgn.remItem(id);$S(id).display='none';if(document.getElementById){$S(id).visibility='hidden'}else if(document.layers){document.layers[id].visibility='hidden'}else if(document.all){document.all.id.style.visibility='hidden'}

cajpu(id);

setShadow(id,'1')}

function showpul(e,xo,yo,l,f,dpu){if(!$(l)){return}if(dpu!=1){hideAllPUs()}var x,y,to=0;if(e){x=e.clientX-xo;y=e.clientY-yo}else{var num=l.substr(3,l.length-6);x=parseInt(f_clientWidth()/2.5)-xo+((num-1)*10);y=parseInt(f_clientHeight()/4)-yo+((num-1)*10)}
 if(x<0){x=0}if(y<0){y=0}y+=f_scrollTop();$S(l).left=x+'px';$S(l).top=y+'px';sl(l,'1');setShadow(l,'');if(f){$(f).focus()}}

function placepul(x,y,l,f,dpu){if(!$(l)){return}if(dpu!=1){hideAllPUs()}y+=f_scrollTop();$(l).style.left=x+'px';$(l).style.top=y+'px';sl(l);setShadow(l,'');if(f){$(f).focus()}}

function setShadow(l,h){
 if(l.indexOf('wait')>=0){return}
 if(l.indexOf('shad')>=0){return} // avoid looping
 if(l.indexOf('time')>=0){return}
 var ce=$(l),pe='',step=0,fpart='';while(step<30){step++;if(ce.id&&ce.id.indexOf('div')==ce.id.length-3&&ce.id.indexOf('gpu')==0){pe=ce.id;step=50}else{if(ce.parentNode!=undefined){ce=ce.parentNode}else{return}}}if(pe==''){return}fpart=pe.substr(0,(pe.length-3));
 if(h==1){hl(fpart+'shad');return}if(PUAsgn.getItem(pe+'ns')){return}
 if($(fpart+'shad')){var lvl=fpart.substring(3);var xy=f_elementPosition(fpart+'div'),x=xy[0],y=xy[1]+f_scrollTop();$S(fpart+'shad').zIndex=(230+(lvl*2)-1);$S(fpart+'shad').left=(x-0+8+(lvl*2))+'px';$S(fpart+'shad').top=(y-0+8+(lvl*2))+'px';
 $S(fpart+'shad').width=f_elementWidth(fpart+'div')+'px';$S(fpart+'shad').height=f_elementHeight(fpart+'div')+'px';sl(fpart+'shad','1')}}

function hideAllPUs(){if(hapu=='1'){return}var d;hapu=1;var Els=getElementsByClass('pu','div');for(c=0;c<Els.length;c++){hl(Els[c].id)}window.setTimeout('hapu=0',100);for(c=10;c>0;c--){if($('gpu'+c+'div')&&isVis('gpu'+c+'div')){hl('gpu'+c+'div');return}}}

function findVDBT(num){var i;for(n=(num-1);n>0;n--){i='gpu'+n+'div';if($(i)&&isVis(i)){PUAsgn.addItem('topPU',n);return}}PUAsgn.addItem('topPU','0')}

// added if nohide then not set as topPU
function getTopPU(){var i,fi='',topPU=PUAsgn.getItem('topPU');for(n=topPU;n<101;n++){i='gpu'+n+'div';if($(i)&&isVis(i)&&!PUAsgn.getItem(i+'nh')){if(n!=topPU){PUAsgn.addItem('topPU',n)}return i}}
 for(n=(topPU-1);n>0;n--){i='gpu'+n+'div';if($(i)&&isVis(i)&&!PUAsgn.getItem(i+'nh')){if(n!=topPU){PUAsgn.addItem('topPU',n)}return i}}PUAsgn.addItem('topPU','0');return false}

function getTopPUid(){var tPU=getTopPU();if(!tPU){return false}if(PUAsgn.getItem(tPU)){return PUAsgn.getItem(tPU)}else{return false}}

function makePU(e,id,title,mx,my,clrop,nohide,noshad){var pdiv=getNextPU(id,nohide,noshad);gpuTitle(title,pdiv);showpul(e,mx,my,pdiv,'',clrop);return pdiv}

function getNextPU(u,nohide,noshad){if(!u){return false}if(PUAsgn.getItem(u)){hl(PUAsgn.getItem(u))}var i,fi='',topPU=PUAsgn.getItem('topPU');for(n=(topPU-0+1);n<101;n++){i='gpu'+n+'div';if($(i)){if(!isVis(i)){fi=i}}else{fi=i;createPU(n)}
 if(fi!=''){cajpu(fi);PUAsgn.addItem(fi,u);PUAsgn.addItem(u,fi);
 if(!nohide){PUAsgn.addItem('topPU',n)}
 if(nohide){PUAsgn.addItem(fi+'nh',true)}if(noshad){PUAsgn.addItem(fi+'ns',true)}return fi}}alert('Error: no general popup available below 100');return false}

function createPU(i){var ND=document.createElement("div"),TD=document.createElement("div"),WD=document.createElement("div"),CD=document.createElement("div");SD=document.createElement("div");SD.id='gpu'+i+'shad';SD.className="gpuShadow";document.body.appendChild(SD);
 ND.id='gpu'+i+'div';ND.className="sbg gpu";ND.style.borderWidth="2px";ND.style.zIndex=(230+((i-0)*2));ND.style.borderStyle="outset";TD.id='gpu'+i+'tit';TD.className="th puh";CD.id='gpu'+i+'cont';CD.className="tc2";
 WD.id='gpu'+i+'wait';WD.className="ccwait";WD.style.top="50px";WD.innerHTML='<img src="/themes/images/working'+cTheme+'.gif">';ND.appendChild(TD);ND.appendChild(WD);ND.appendChild(CD);document.body.appendChild(ND);asgnPUevent('gpu'+i+'tit')}

function asgnPUevent(i){if(!$(i)){return}if(typeof document.attachEvent!='undefined'){$(i).attachEvent('onmousedown',DragPU);$(i).attachEvent('onmouseup',StopPU)}else{$(i).addEventListener('mousedown',DragPU,false);$(i).addEventListener('mouseup',StopPU,false)}}

function gpuTitle(t,i){if(i&&$(i)){if(/tit$/.test(i)){$(i).innerHTML=t}else{var b=i.substr(0,(i.length-3));if($(b+'tit')){$(b+'tit').innerHTML=t}}}}

function mTrans(i,v){if(!$(i)){return}if(String(v).length==1){v='0'+v}var O='0.'+v;if(v>99){O='1'}$S(i).filter='alpha(opacity='+v+')';$S(i).opacity=O;if($S(i).MozOpacity){$S(i).MozOpacity=O}if($(i).filters){$(i).filters.alpha.opacity=v}}

function cajpu(i){var m='';for(ctr=1;ctr<35;ctr++){m=m+' &nbsp; '}for(ctr=1;ctr<7;ctr++){m=m+'<br />'}if(i&&$(i)){if(/div$/.test(i)){var st=i.substring(0,i.length-3)}if(st&&$(st+'cont')){$(st+'cont').innerHTML=m}
//else{$(i).innerHTML=m}  // this was messing up auth menu
}}


function DragPU(e){if(!e)e=event;var base;this.id?base=this.id:base=e.srcElement.id;dragDiv=base.substr(0,(base.length-3))+'div';if(!isDrag){isDrag=1}dragXOff=mouseXY(e).X-parseInt($S(dragDiv).left);dragYOff=mouseXY(e).Y-parseInt($S(dragDiv).top);
 eW=parseInt(f_elementWidth(dragDiv)+20);eH=f_elementHeight(dragDiv);if(typeof document.attachEvent!='undefined'){document.attachEvent('onmousemove',DragPU2)}else{document.addEventListener('mousemove',DragPU2,false)}DragPU2(e)}

function DragPU2(e){if(dragDiv==''){return}var dostop=false;if(isDrag){var divX=mouseXY(e).X-dragXOff,divY=mouseXY(e).Y-dragYOff,rightLim=f_clientWidth()-eW,botLim=f_clientHeight()-eH;if(botLim<1){botLim=10000}
 if(divX<1){divX=1}if(divY<1){divY=1}if(divX>rightLim){divX=rightLim}if(divY>botLim){divY=botLim}$S(dragDiv).left=divX+'px';$S(dragDiv).top=divY+'px';setShadow(dragDiv,'');unSelPage();
 if(mouseXY(e).X<1||mouseXY(e).Y<1||mouseXY(e).X>f_clientWidth()||mouseXY(e).Y>f_clientHeight()){dostop=true}if(dostop){StopPU()}}}

function StopPU(){isDrag=0;if(typeof document.attachEvent!='undefined'){document.detachEvent('onmousemove',DragPU2)}else{document.removeEventListener('mousemove',DragPU2,false)}if(PUinfo.getItem(dragDiv+'eval')){
 try{eval(PUinfo.getItem(dragDiv+'eval'))}catch(e){alert('StopPU error with code: '+PUinfo.getItem(dragDiv+'eval')+'\n'+e.message+'\n')}}dragDiv=''}

// get div names c=use direct name, d=use PUAsgn'd div name
String.prototype.cDivSect=function(s){if(!/div$/.test(this)){return this}var base=this.substr(0,(this.length-3));if(s=='c'){return base+'cont'}if(s=='t'){return base+'tit'}if(s=='w'){return base+'wait'}return this};
String.prototype.tDivSect=function(s){var t=PUAsgn.getItem(this);if(!/div$/.test(t)){return t}var base=t.substr(0,(t.length-3));if(s=='c'){return base+'cont'}if(s=='t'){return base+'tit'}if(s=='w'){return base+'wait'}return t};
String.prototype.isInt=function(){var digits="1234567890";for(var i=0;i<this.length;i++){if(digits.indexOf(this.charAt(i))==-1){return false}}return true};

 // pu editable text field - event, id of source, pattern, maxlength -> PUchvF = function to eval
function PUchv(e,i,p,m,wid){if(PUchvC!=''){remElement('PUCV'+PUchvC)}PUchvC=i;pos=f_elementPosition(i);var PUD=document.createElement("div");
 PUD.id='PUCV'+i;PUD.className='gpu sbg PUCV';var w=0;if(wid){w=wid}else{w=f_elementWidth(i)-8}
 if(w<40){w=40}PUD.style.width=w+'px';var PUI=document.createElement("input");
 PUI.id='PUCI'+i;PUI.style.width=(w-4)+'px';PUI.maxLength=m;if($(i).innerHTML.indexOf('none</span>')>10){PUI.value=''}else{PUI.value=$(i).innerHTML}
 if(typeof document.attachEvent!='undefined'){PUI.attachEvent('onkeydown',function(){keyLimit(e,'PUCI'+i,'',m,p)});
 PUI.attachEvent('onkeypress',function(){sbtOnEn(event,'PUchvS()')})}
 else{PUI.addEventListener('keydown',function(){keyLimit(e,'PUCI'+i,'',m,p)},false);
 PUI.addEventListener('keypress',function(e){sbtOnEn(e,'PUchvS()')},false)}PUD.appendChild(PUI);
 var PUA=document.createElement("span");PUA.style.height='12px';PUA.style.lineHeight='10px';PUA.style.cssFloat='left';
 PUA.innerHTML='<a href="javascript:void(0)" class="ssl" onclick="remElement(\'PUCV'+i+'\');PUchvC=\'\'">abort</a>';PUD.appendChild(PUA);
 var PUS=document.createElement("span");PUS.style.height='12px';PUS.style.lineHeight='10px';PUS.style.cssFloat='right';
 PUS.innerHTML='<a href="javascript:void(0)" class="ssl" onclick="PUchvS()">change<a/>';PUD.appendChild(PUS);
 document.body.appendChild(PUD);placepul(pos[0]-4,pos[1]-4,'PUCV'+i,'PUCI'+i,'1')}
// submit change
function PUchvS(){if(PUchvF==''){alert('no assigned function');return}$(PUchvC).className='th transp';eval(PUchvF);remElement('PUCV'+PUchvC);PUchvC=''}
// update rte value using ajax with no page change
function RTEajaxUpd(i,t,f,a1,a2,a3){updateRTE(i);var pd='act='+t+'&'+i+'=',hdn=cleanFTxt($('hdn'+i).value);pd+=hdn;
 if(a1!=undefined&&a1!=''&&$(a1)){pd+='&'+a1+'='+$(a1).value}
 if(a2!=undefined&&a2!=''&&$(a2)){pd+='&'+a2+'='+$(a2).value}
 if(a3!=undefined&&a3!=''&&$(a3)){pd+='&'+a3+'='+$(a3).value}
 send_req(aurl,pd,'','','','',cTheme,'1',f)}


/************ expand and minimize sections *************/

var ColTargH='',DivCurH='',ActDiv='',ActDivSw='',TargDiv='',TargDivSw='',SrcDiv='',SrcDivSw='',sDiff=0,padDec=1,DivFade='',DivFadeSw='',FadeCur=0,count;
var DivVal=new Hash(),DivPad=new Array(),TargPad=new Array(),ColPad=new Array();
var ColTimer=35,LC,ColV=3,ExpV=4,LastV,CEinP=0;

/*** collapse div - divs should have height set */
function DivCol(i,s,t,ts,h){if(!$(i)){return}if(CEinP==1){return}
  //id, switch id, target div, target switch, target height
 ActDiv=i;ActDivSw=s;TargDiv=t;TargDivSw=ts;ColTargH='0';LC=0;CEinP=1;
 if($(TargDiv)){if(DivVal.getItem(t)!=''&&DivVal.getItem(t)!=undefined){ColTargH=DivVal.getItem(t)}else if($S(t).height){
 ColTargH=$S(t).height.substring(0,$S(t).height.length-2)}else{ColTargH=f_elementHeight(t)}}DivVal.addItem(TargDiv,ColTargH);
 DivCurH=f_elementHeight(ActDiv);ColTargH=ColTargH-10;$S(ActDiv).overflow='hidden';if(ColTargH<3){ColTargH=3}
 // find number of steps to be taken
 var ch=DivCurH;count=0;LastV=0;while(ch>ColTargH){count++;ch=ch-(Math.round((ch-ColTargH)/ColV));if(ch==LastV){ch--}LastV=ch;if(count>200){return}}
 // set padding start values and step
 LastV=0;DivCurH-=10;tmp=getStyle(ActDiv,'padding-top');DivPad[0]=tmp.substring(0,tmp.length-2);tmp=getStyle(ActDiv,'padding-bottom');
 DivPad[1]=tmp.substring(0,tmp.length-2);if(isNaN(DivPad[0])||DivPad[0]==''){DivPad[0]=0}if(isNaN(DivPad[1])||DivPad[1]==''){DivPad[1]=0}
 if(DivPad[0]>DivPad[1]){DivPad[2]=DivPad[0]}else{DivPad[2]=DivPad[1]}DivVal.addItem(ActDiv+'pad',DivPad[0]+'-'+DivPad[1]);
 DivVal.addItem(ActDiv,f_elementHeight(ActDiv)-parseInt(DivPad[0])-parseInt(DivPad[1]));
 if(count<DivPad[2]){padDec=1}else{padDec=Math.round(DivPad[2]/count)}DivColAni()}

/*** animate collapse */
function DivColAni(){LC++;if(LC>200){alert('too many loops');return}DivCurH=DivCurH-(Math.round((DivCurH-ColTargH)/ColV));
 if(DivCurH==LastV){DivCurH--}LastV=DivCurH;$S(ActDiv).height=DivCurH+'px';
 if(DivPad[0]>0){DivPad[0]-=padDec;$S(ActDiv).paddingTop=DivPad[0]+'px'}if(DivPad[1]>0){DivPad[1]-=padDec;$S(ActDiv).paddingBottom=DivPad[1]+'px'}
 if(DivCurH<=ColTargH){hl(ActDiv);if(ActDivSw){hl(ActDivSw)}FadeCur=0;if(TargDivSw){mTrans(TargDivSw,'0');sl(TargDivSw);DivFadeSw=TargDivSw}
 if(TargDiv){mTrans(TargDiv,'0');sl(TargDiv);DivFade=TargDiv}setTimeout('DivFadeIn()',ColTimer);DivCurH=0;padDec=1;CEinP=0;return}
 else if(DivCurH<(ColTargH+100)){mTrans(ActDiv,DivCurH);if($(ActDivSw)){mTrans(ActDivSw,DivCurH)}}setTimeout('DivColAni()',ColTimer)}

function DivFadeIn(){if(DivFade==''&&DivFadeSw==''){CurFade=0;return}if(FadeCur>=100){FadeCur=100}
 if(DivFade&&$(DivFade)){mTrans(DivFade,FadeCur)}if(DivFadeSw&&$(DivFadeSw)){mTrans(DivFadeSw,FadeCur)}
 if(FadeCur=='100'){FadeCur=0;DivFade='';DivFadeSw=''; return}FadeCur+=20;setTimeout('DivFadeIn()',ColTimer)} 


/*** expand section div */
function DivExp(t,tsw,s,ssw,h){if(!$(t)){return}if(CEinP==1){return}ActDiv=t;ActDivSw=tsw;SrcDiv=s;SrcDivSw=ssw;DivPad=['0','0'];LC=0;CEinP=1;
 if(SrcDivSw){hl(SrcDivSw)}$S(ActDiv).height='0px';mTrans(ActDiv,'0');sl(ActDiv);if(ActDivSw&&$(ActDivSw)){mTrans(ActDivSw,'0');sl(ActDivSw)}
 if(SrcDiv){DivCurH=f_elementHeight(SrcDiv);hl(SrcDiv)}else{DivCurH=f_elementHeight(ActDiv)}$S(ActDiv).height=DivCurH+'px';if(h){ColTargH=h}
 else if($(ActDiv)&&DivVal.getItem(ActDiv)!=''&&DivVal.getItem(ActDiv)!=undefined){ColTargH=DivVal.getItem(ActDiv)}else{ColTargH=100}
 if(isNaN(ColTargH)||ColTargH==''){ColTargH=100}
 // get target padding info
 if($(ActDiv)&&DivVal.getItem(ActDiv+'pad')){TargPad=DivVal.getItem(ActDiv+'pad').split('-')}else {TargPad=['5','5']}
 if(isNaN(TargPad[0])||TargPad[0]==''){TargPad[0]=0}if(isNaN(TargPad[1])||TargPad[1]==''){TargPad[1]=0}
 // find number of steps
 var ch;count=0;if(DivCurH<1||DivCurH==''){DivCurH=10}LastV=10000;ch=DivCurH;while(ch<ColTargH){count++;ch=ch+(Math.round((ColTargH-ch)/ExpV));
 if(ch==LastV){ch++};LastV=ch;if(count>200){alert('too many loops');return}}LastV=10000;if(SrcDiv&&$(SrcDiv)){
 DivPad[0]=$S(SrcDiv).paddingTop.substring(0,$S(SrcDiv).paddingTop.length-2);
 DivPad[1]=$S(SrcDiv).paddingBottom.substring(0,$S(SrcDiv).paddingBottom.length-2);
 if(DivPad[0]==''||DivPad[0]<0){DivPad[0]=0}if(DivPad[1]==''||DivPad[1]<0){DivPad[1]=0}DivVal.addItem(SrcDiv+'pad',DivPad[0]+'-'+DivPad[1]);
 $S(ActDiv).paddingTop=DivPad[0]+'px';$S(ActDiv).paddingBottom=DivPad[1]+'px';}else{$S(ActDiv).paddingTop='0px';DivPad[0]=0;
 $S(ActDiv).paddingBottom='0px';DivPad[1]=0}if(TargPad[0]>TargPad[1]){DivPad[2]=TargPad[0]}else{DivPad[2]=TargPad[1]}
 // get padding steps
 if(count<DivPad[2]){padDec=1}else{padDec=Math.round(DivPad[2]/count)}if(padDec<1){padDec=1}DivExpAni()}


/* animate expand */
function DivExpAni(){LC++;if(LC>200){alert('animate too many loops');return}
 //$S(ActDiv).display='block';
 DivCurH=DivCurH+(Math.round((ColTargH-DivCurH)/ExpV));if(DivCurH==LastV){DivCurH++}LastV=DivCurH;$S(ActDiv).height=DivCurH+'px';
 // transparency
 var curO=Math.round((ColTargH/count)*LC);if(curO>100){curO=100}mTrans(ActDiv,curO);if(ActDivSw&&$(ActDivSw)){mTrans(ActDivSw,curO)}
 $S(ActDiv).display='none';$S(ActDiv).display='block';
 // padding
 if(DivPad[0]<TargPad[0]){DivPad[0]+=padDec;if(DivPad[0]>TargPad[0]){DivPad[0]=TargPad[0]}$S(ActDiv).paddingTop=DivPad[0]+'px'}
 if(DivPad[1]<(TargPad[1])){DivPad[1]+=padDec;if(DivPad[1]>TargPad[1]){DivPad[1]=TargPad[1]}$S(ActDiv).paddingBottom=DivPad[1]+'px'}
 // finished?
 if(DivCurH>(ColTargH-2)){$S(ActDiv).height=ColTargH+'px';mTrans(ActDiv,'100');if(ActDivSw&&$(ActDivSw)){mTrans(ActDivSw,'100')}CEinP=0;return}
 setTimeout('DivExpAni()',ColTimer)}




/**************** editable text field *******************/
var edTxFL=new Hash();

function edTx(i,oc){
 if(!$(i)){return false}
 if(oc=='o'){ /* open */
  if(expF!=''){ /* close any other open */
   if($(expF).value){$(expF+'v').innerHTML=$(expF).value}
   else{$(expF+'v').innerHTML='<span class="ital smlr">none</span>'}
   hl(expF+'i',1);sl(expF+'v',1);
  }
  expF=i;
  hl(i+'v',1);sl(i+'i',2);$(i).focus();
 }else{ /* close */
  if($(i).value){$(i+'v').innerHTML=$(i).value}
  else{$(i+'v').innerHTML='<span class="ital smlr">none</span>'}
  hl(i+'i',1);sl(i+'v',1);
  expF='';
 }
}







/*
 A JavaScript implementation of the RSA Data Security,Inc. MD5 Message Digest Algorithm,as defined in RFC 1321.
 Version 2.1 Copyright (C) Paul Johnston 1999 - 2002. Other contributors: Greg Holt,Andrew Kepert,Ydnar,Lostinet
 Distributed under the BSD License.  See http://pajhome.org.uk/crypt/md5 for more info.  Patch by Ron Savage 2004-04-27:
 stripped,streamlined and modified by Shannon White 2009-3-4 -> only b64
*/
function b64_md5(s){return binl2b64(core_md5(str2binl(s),s.length*8));}
function core_md5(x,len){x[len>>5]|=0x80<<((len)%32);x[(((len+64)>>>9)<<4)+14]=len;var a=1732584193;var b=-271733879;var c=-1732584194;var d=271733878;
 for(var i=0;i<x.length;i+=16){var olda=a;var oldb=b;var oldc=c;var oldd=d;
 a=md5_ff(a,b,c,d,x[i+0],7,-680876936);d=md5_ff(d,a,b,c,x[i+1],12,-389564586);
 c=md5_ff(c,d,a,b,x[i+2],17,606105819);b=md5_ff(b,c,d,a,x[i+3],22,-1044525330);
 a=md5_ff(a,b,c,d,x[i+4],7,-176418897);d=md5_ff(d,a,b,c,x[i+5],12,1200080426);
 c=md5_ff(c,d,a,b,x[i+6],17,-1473231341);b=md5_ff(b,c,d,a,x[i+7],22,-45705983);
 a=md5_ff(a,b,c,d,x[i+8],7,1770035416);d=md5_ff(d,a,b,c,x[i+9],12,-1958414417);
 c=md5_ff(c,d,a,b,x[i+10],17,-42063);b=md5_ff(b,c,d,a,x[i+11],22,-1990404162);
 a=md5_ff(a,b,c,d,x[i+12],7,1804603682);d=md5_ff(d,a,b,c,x[i+13],12,-40341101);
 c=md5_ff(c,d,a,b,x[i+14],17,-1502002290);b=md5_ff(b,c,d,a,x[i+15],22,1236535329);
 a=md5_gg(a,b,c,d,x[i+1],5,-165796510);d=md5_gg(d,a,b,c,x[i+6],9,-1069501632);
 c=md5_gg(c,d,a,b,x[i+11],14,643717713);b=md5_gg(b,c,d,a,x[i+0],20,-373897302);
 a=md5_gg(a,b,c,d,x[i+5],5,-701558691);d=md5_gg(d,a,b,c,x[i+10],9,38016083);
 c=md5_gg(c,d,a,b,x[i+15],14,-660478335);b=md5_gg(b,c,d,a,x[i+4],20,-405537848);
 a=md5_gg(a,b,c,d,x[i+9],5,568446438);d=md5_gg(d,a,b,c,x[i+14],9,-1019803690);
 c=md5_gg(c,d,a,b,x[i+3],14,-187363961);b=md5_gg(b,c,d,a,x[i+8],20,1163531501);
 a=md5_gg(a,b,c,d,x[i+13],5,-1444681467);d=md5_gg(d,a,b,c,x[i+2],9,-51403784);
 c=md5_gg(c,d,a,b,x[i+7],14,1735328473);b=md5_gg(b,c,d,a,x[i+12],20,-1926607734);
 a=md5_hh(a,b,c,d,x[i+5],4,-378558);d=md5_hh(d,a,b,c,x[i+8],11,-2022574463);
 c=md5_hh(c,d,a,b,x[i+11],16,1839030562);b=md5_hh(b,c,d,a,x[i+14],23,-35309556);
 a=md5_hh(a,b,c,d,x[i+1],4,-1530992060);d=md5_hh(d,a,b,c,x[i+4],11,1272893353);
 c=md5_hh(c,d,a,b,x[i+7],16,-155497632);b=md5_hh(b,c,d,a,x[i+10],23,-1094730640);
 a=md5_hh(a,b,c,d,x[i+13],4,681279174);d=md5_hh(d,a,b,c,x[i+0],11,-358537222);
 c=md5_hh(c,d,a,b,x[i+3],16,-722521979);b=md5_hh(b,c,d,a,x[i+6],23,76029189);
 a=md5_hh(a,b,c,d,x[i+9],4,-640364487);d=md5_hh(d,a,b,c,x[i+12],11,-421815835);
 c=md5_hh(c,d,a,b,x[i+15],16,530742520);b=md5_hh(b,c,d,a,x[i+2],23,-995338651);
 a=md5_ii(a,b,c,d,x[i+0],6,-198630844);d=md5_ii(d,a,b,c,x[i+7],10,1126891415);
 c=md5_ii(c,d,a,b,x[i+14],15,-1416354905);b=md5_ii(b,c,d,a,x[i+5],21,-57434055);
 a=md5_ii(a,b,c,d,x[i+12],6,1700485571);d=md5_ii(d,a,b,c,x[i+3],10,-1894986606);
 c=md5_ii(c,d,a,b,x[i+10],15,-1051523);b=md5_ii(b,c,d,a,x[i+1],21,-2054922799);
 a=md5_ii(a,b,c,d,x[i+8],6,1873313359);d=md5_ii(d,a,b,c,x[i+15],10,-30611744);
 c=md5_ii(c,d,a,b,x[i+6],15,-1560198380);b=md5_ii(b,c,d,a,x[i+13],21,1309151649);
 a=md5_ii(a,b,c,d,x[i+4],6,-145523070);d=md5_ii(d,a,b,c,x[i+11],10,-1120210379);
 c=md5_ii(c,d,a,b,x[i+2],15,718787259);b=md5_ii(b,c,d,a,x[i+9],21,-343485551);
 a=safe_add(a,olda);b=safe_add(b,oldb);c=safe_add(c,oldc);d=safe_add(d,oldd)}return Array(a,b,c,d)}
function md5_cmn(q,a,b,x,s,t){return safe_add(bit_rol(safe_add(safe_add(a,q),safe_add(x,t)),s),b)}
function md5_ff(a,b,c,d,x,s,t){return md5_cmn((b&c)|((~b)&d),a,b,x,s,t)}
function md5_gg(a,b,c,d,x,s,t){return md5_cmn((b&d)|(c&(~d)),a,b,x,s,t)}
function md5_hh(a,b,c,d,x,s,t){return md5_cmn(b^c^d,a,b,x,s,t)}
function md5_ii(a,b,c,d,x,s,t){return md5_cmn(c^(b|(~d)),a,b,x,s,t)}
function safe_add(x,y){var lsw=(x&0xFFFF)+(y&0xFFFF);var msw=(x>>16)+(y>>16)+(lsw>>16);return(msw << 16) | (lsw & 0xFFFF)}
function bit_rol(num,cnt){return(num<<cnt)|(num>>>(32-cnt))}
function str2binl(str){var bin=Array();var mask=(1<<8)-1;for(var i=0;i<str.length*8;i+=8)bin[i>>5]|=(str.charCodeAt(i/8)&mask)<<(i%32);return bin}
function binl2b64(binarray){var tab="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var str="";
 for(var i=0;i<binarray.length*4;i+=3){
 var triplet=(((binarray[i>>2]>>8*(i %4))&0xFF)<<16)|(((binarray[i+1>>2]>>8*((i+1)%4))&0xFF)<<8)|((binarray[i+2>>2]>>8*((i+2)%4))&0xFF);
 for(var j=0;j<4;j++){if(i*8+j*6>binarray.length*32)str+="";else str+=tab.charAt((triplet>>6*(3-j))&0x3F)}}return str}


/*	SWFObject v2.0 <http://code.google.com/p/swfobject/>
	Copyright (c) 2007 Geoff Stearns, Michael Williams, and Bobby van der Sluis
	This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
*/
var swfobject=function(){var Z="undefined",P="object",B="Shockwave Flash",h="ShockwaveFlash.ShockwaveFlash",W="application/x-shockwave-flash",K="SWFObjectExprInst",G=window,g=document,N=navigator,f=[],H=[],Q=null,L=null,T=null,S=false,C=false;var a=function(){var l=typeof g.getElementById!=Z&&typeof g.getElementsByTagName!=Z&&typeof g.createElement!=Z&&typeof g.appendChild!=Z&&typeof g.replaceChild!=Z&&typeof g.removeChild!=Z&&typeof g.cloneNode!=Z,t=[0,0,0],n=null;if(typeof N.plugins!=Z&&typeof N.plugins[B]==P){n=N.plugins[B].description;if(n){n=n.replace(/^.*\s+(\S+\s+\S+$)/,"$1");t[0]=parseInt(n.replace(/^(.*)\..*$/,"$1"),10);t[1]=parseInt(n.replace(/^.*\.(.*)\s.*$/,"$1"),10);t[2]=/r/.test(n)?parseInt(n.replace(/^.*r(.*)$/,"$1"),10):0}}else{if(typeof G.ActiveXObject!=Z){var o=null,s=false;try{o=new ActiveXObject(h+".7")}catch(k){try{o=new ActiveXObject(h+".6");t=[6,0,21];o.AllowScriptAccess="always"}catch(k){if(t[0]==6){s=true}}if(!s){try{o=new ActiveXObject(h)}catch(k){}}}if(!s&&o){try{n=o.GetVariable("$version");if(n){n=n.split(" ")[1].split(",");t=[parseInt(n[0],10),parseInt(n[1],10),parseInt(n[2],10)]}}catch(k){}}}}var v=N.userAgent.toLowerCase(),j=N.platform.toLowerCase(),r=/webkit/.test(v)?parseFloat(v.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,i=false,q=j?/win/.test(j):/win/.test(v),m=j?/mac/.test(j):/mac/.test(v);/*@cc_on i=true;@if(@_win32)q=true;@elif(@_mac)m=true;@end@*/return{w3cdom:l,pv:t,webkit:r,ie:i,win:q,mac:m}}();var e=function(){if(!a.w3cdom){return }J(I);if(a.ie&&a.win){try{g.write("<script id=__ie_ondomload defer=true src=//:><\/script>");var i=c("__ie_ondomload");if(i){i.onreadystatechange=function(){if(this.readyState=="complete"){this.parentNode.removeChild(this);V()}}}}catch(j){}}if(a.webkit&&typeof g.readyState!=Z){Q=setInterval(function(){if(/loaded|complete/.test(g.readyState)){V()}},10)}if(typeof g.addEventListener!=Z){g.addEventListener("DOMContentLoaded",V,null)}M(V)}();

function V(){if(S){return }if(a.ie&&a.win){var m=Y("span");try{var l=g.getElementsByTagName("body")[0].appendChild(m);l.parentNode.removeChild(l)}catch(n){return }}S=true;if(Q){clearInterval(Q);Q=null}var j=f.length;for(var k=0;k<j;k++){f[k]()}}
function J(i){if(S){i()}else{f[f.length]=i}}
function M(j){if(typeof G.addEventListener!=Z){G.addEventListener("load",j,false)}else{if(typeof g.addEventListener!=Z){g.addEventListener("load",j,false)}else{if(typeof G.attachEvent!=Z){G.attachEvent("onload",j)}else{if(typeof G.onload=="function"){var i=G.onload;G.onload=function(){i();j()}}else{G.onload=j}}}}}
function I(){var l=H.length;for(var j=0;j<l;j++){var m=H[j].id;if(a.pv[0]>0){var k=c(m);if(k){H[j].width=k.getAttribute("width")?k.getAttribute("width"):"0";H[j].height=k.getAttribute("height")?k.getAttribute("height"):"0";if(O(H[j].swfVersion)){if(a.webkit&&a.webkit<312){U(k)}X(m,true)}else{if(H[j].expressInstall&&!C&&O("6.0.65")&&(a.win||a.mac)){D(H[j])}else{d(k)}}}}else{X(m,true)}}}
function U(m){var k=m.getElementsByTagName(P)[0];if(k){var p=Y("embed"),r=k.attributes;if(r){var o=r.length;for(var n=0;n<o;n++){if(r[n].nodeName.toLowerCase()=="data"){p.setAttribute("src",r[n].nodeValue)}else{p.setAttribute(r[n].nodeName,r[n].nodeValue)}}}var q=k.childNodes;if(q){var s=q.length;for(var l=0;l<s;l++){if(q[l].nodeType==1&&q[l].nodeName.toLowerCase()=="param"){p.setAttribute(q[l].getAttribute("name"),q[l].getAttribute("value"))}}}m.parentNode.replaceChild(p,m)}}
function F(i){if(a.ie&&a.win&&O("8.0.0")){G.attachEvent("onunload",function(){var k=c(i);if(k){for(var j in k){if(typeof k[j]=="function"){k[j]=function(){}}}k.parentNode.removeChild(k)}})}}
function D(j){C=true;var o=c(j.id);if(o){if(j.altContentId){var l=c(j.altContentId);if(l){L=l;T=j.altContentId}}else{L=b(o)}if(!(/%$/.test(j.width))&&parseInt(j.width,10)<310){j.width="310"}if(!(/%$/.test(j.height))&&parseInt(j.height,10)<137){j.height="137"}g.title=g.title.slice(0,47)+" - Flash Player Installation";var n=a.ie&&a.win?"ActiveX":"PlugIn",k=g.title,m="MMredirectURL="+G.location+"&MMplayerType="+n+"&MMdoctitle="+k,p=j.id;if(a.ie&&a.win&&o.readyState!=4){var i=Y("div");p+="SWFObjectNew";i.setAttribute("id",p);o.parentNode.insertBefore(i,o);o.style.display="none";G.attachEvent("onload",function(){o.parentNode.removeChild(o)})}R({data:j.expressInstall,id:K,width:j.width,height:j.height},{flashvars:m},p)}}
function d(j){if(a.ie&&a.win&&j.readyState!=4){var i=Y("div");j.parentNode.insertBefore(i,j);i.parentNode.replaceChild(b(j),i);j.style.display="none";
 G.attachEvent("onload",function(){j.parentNode.removeChild(j)})}else{j.parentNode.replaceChild(b(j),j)}}
function b(n){var m=Y("div");if(a.win&&a.ie){m.innerHTML=n.innerHTML}else{var k=n.getElementsByTagName(P)[0];if(k){var o=k.childNodes;if(o){var j=o.length;
 for(var l=0;l<j;l++){if(!(o[l].nodeType==1&&o[l].nodeName.toLowerCase()=="param")&&!(o[l].nodeType==8)){m.appendChild(o[l].cloneNode(true))}}}}}return m}
function R(AE,AC,q){var p,t=c(q);if(typeof AE.id==Z){AE.id=q}if(a.ie&&a.win){var AD="";for(var z in AE){if(AE[z]!=Object.prototype[z]){if(z=="data"){AC.movie=AE[z]}else{if(z.toLowerCase()=="styleclass"){AD+=' class="'+AE[z]+'"'}else{if(z!="classid"){AD+=" "+z+'="'+AE[z]+'"'}}}}}var AB="";for(var y in AC){if(AC[y]!=Object.prototype[y]){AB+='<param name="'+y+'" value="'+AC[y]+'" />'}}t.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+AD+">"+AB+"</object>";F(AE.id);p=c(AE.id)}else{if(a.webkit&&a.webkit<312){var AA=Y("embed");AA.setAttribute("type",W);for(var x in AE){if(AE[x]!=Object.prototype[x]){if(x=="data"){AA.setAttribute("src",AE[x])}else{if(x.toLowerCase()=="styleclass"){AA.setAttribute("class",AE[x])}else{if(x!="classid"){AA.setAttribute(x,AE[x])}}}}}for(var w in AC){if(AC[w]!=Object.prototype[w]){if(w!="movie"){AA.setAttribute(w,AC[w])}}}t.parentNode.replaceChild(AA,t);p=AA}else{var s=Y(P);s.setAttribute("type",W);for(var v in AE){if(AE[v]!=Object.prototype[v]){if(v.toLowerCase()=="styleclass"){s.setAttribute("class",AE[v])}else{if(v!="classid"){s.setAttribute(v,AE[v])}}}}for(var u in AC){if(AC[u]!=Object.prototype[u]&&u!="movie"){E(s,u,AC[u])}}t.parentNode.replaceChild(s,t);p=s}}return p}
function E(k,i,j){var l=Y("param");l.setAttribute("name",i);l.setAttribute("value",j);k.appendChild(l)}
function c(i){return g.getElementById(i)}
function Y(i){return g.createElement(i)}
function O(k){var j=a.pv,i=k.split(".");i[0]=parseInt(i[0],10);i[1]=parseInt(i[1],10);i[2]=parseInt(i[2],10);return(j[0]>i[0]||(j[0]==i[0]&&j[1]>i[1])||(j[0]==i[0]&&j[1]==i[1]&&j[2]>=i[2]))?true:false}
function A(m,j){if(a.ie&&a.mac){return }var l=g.getElementsByTagName("head")[0],k=Y("style");k.setAttribute("type","text/css");k.setAttribute("media","screen");if(!(a.ie&&a.win)&&typeof g.createTextNode!=Z){k.appendChild(g.createTextNode(m+" {"+j+"}"))}l.appendChild(k);if(a.ie&&a.win&&typeof g.styleSheets!=Z&&g.styleSheets.length>0){var i=g.styleSheets[g.styleSheets.length-1];if(typeof i.addRule==P){i.addRule(m,j)}}}
function X(k,i){var j=i?"visible":"hidden";if(S){c(k).style.visibility=j}else{A("#"+k,"visibility:"+j)}}return{registerObject:function(l,i,k){if(!a.w3cdom||!l||!i){return }var j={};j.id=l;j.swfVersion=i;j.expressInstall=k?k:false;H[H.length]=j;X(l,false)},getObjectById:function(l){var i=null;if(a.w3cdom&&S){var j=c(l);if(j){var k=j.getElementsByTagName(P)[0];if(!k||(k&&typeof j.SetVariable!=Z)){i=j}else{if(typeof k.SetVariable!=Z){i=k}}}}return i},embedSWF:function(n,u,r,t,j,m,k,p,s){if(!a.w3cdom||!n||!u||!r||!t||!j){return }r+="";t+="";if(O(j)){X(u,false);var q=(typeof s==P)?s:{};q.data=n;q.width=r;q.height=t;var o=(typeof p==P)?p:{};if(typeof k==P){for(var l in k){if(k[l]!=Object.prototype[l]){if(typeof o.flashvars!=Z){o.flashvars+="&"+l+"="+k[l]}else{o.flashvars=l+"="+k[l]}}}}J(function(){R(q,o,u);if(q.id==u){X(u,true)}})}else{if(m&&!C&&O("6.0.65")&&(a.win||a.mac)){X(u,false);J(function(){var i={};i.id=i.altContentId=u;i.width=r;i.height=t;i.expressInstall=m;D(i)})}}},getFlashPlayerVersion:function(){return{major:a.pv[0],minor:a.pv[1],release:a.pv[2]}},hasFlashPlayerVersion:O,createSWF:function(k,j,i){if(a.w3cdom&&S){return R(k,j,i)}else{return undefined}},createCSS:function(j,i){if(a.w3cdom){A(j,i)}},addDomLoadEvent:J,addLoadEvent:M,getQueryParamValue:function(m){var l=g.location.search||g.location.hash;if(m==null){return l}if(l){var k=l.substring(1).split("&");for(var j=0;j<k.length;j++){if(k[j].substring(0,k[j].indexOf("="))==m){return k[j].substring((k[j].indexOf("=")+1))}}}return""},expressInstallCallback:function(){if(C&&L){var i=c(K);if(i){i.parentNode.replaceChild(L,i);if(T){X(T,true);if(a.ie&&a.win){L.style.display="block"}}L=null;T=null;C=false}}}}}();

/* Tool tip code is based on BoxOver code originally by Oliver Bryant with help of Matthew Tagg  */

if(typeof document.attachEvent!='undefined'){window.attachEvent('onload',TTinit);document.attachEvent('onmousemove',TTmoveMouse);document.attachEvent('onclick',TTcheckMove)}
else{window.addEventListener('load',TTinit,false);document.addEventListener('mousemove',TTmoveMouse,false);document.addEventListener('click',TTcheckMove,false)}

var oDv=document.createElement("div");var dvHdr=document.createElement("div");var dvBdy=document.createElement("div");
var windowlock,boxMove,fixposx,fixposy,lockX,lockY,fixx,fixy,boxLeft,boxRight,boxTop,boxBottom,evt,mouseX,mouseY;
var boxOpen,totalScrollTop,totalScrollLeft,cSrc,ini,COL,stopfade,ID,ah,ab,CSE,iterElem,LSE,CBE,LBE, totalScrollLeft, totalScrollTop, width, height ;
COL=0;stopfade=false;ID=null;ini=false;boxOpen=false;lockX=0;lockY=0;
function TTinit(){oDv.className='ttg';oDv.appendChild(dvHdr);oDv.appendChild(dvBdy);document.body.appendChild(oDv)}
function scanBO(curNode){if(checkElemBO(curNode.title)){curNode.boHDR=getParam('header',curNode.title);curNode.boBDY=getParam('body',curNode.title);curNode.IEbugfix=(getParam('hideselects',curNode.title)=='on')?true:false;curNode.fade=(getParam('fade',curNode.title)=='on')?true:false;curNode.fadespeed=(getParam('fadespeed',curNode.title)!='')?getParam('fadespeed',curNode.title):0.04;curNode.delay=(getParam('delay',curNode.title)!='')?parseInt(getParam('delay',curNode.title)):0;curNode.showLeft=(getParam('showleft',curNode.title)=='on')?true:false;curNode.title='';curNode.hasbox=1}else {curNode.hasbox=2}}
function checkElemBO(txt){if(!txt || typeof(txt)!='string')return false;if((txt.indexOf('header')>-1)&&(txt.indexOf('body')>-1)&&(txt.indexOf('[')>-1)&&(txt.indexOf(']')>-1))return true;else return false}
function getParam(param,list){var reg=new RegExp('([^a-zA-Z]' + param + '|^' + param + ')\\s*=\\s*\\[\\s*(((\\[\\[)|(\\]\\])|([^\\]\\[]))*)\\s*\\]');var res=reg.exec(list);var returnvar;if(res){return res[2].replace('[[','[').replace(']]',']')}else {return ''}}
function Left(elem){var x=0;if(elem.calcLeft){return elem.calcLeft}var oElem=elem;while(elem){if((elem.currentStyle)&&(!isNaN(parseInt(elem.currentStyle.borderLeftWidth)))&&(x!=0))x+=parseInt(elem.currentStyle.borderLeftWidth);x+=elem.offsetLeft;elem=elem.offsetParent}oElem.calcLeft=x;return x}
function Top(elem){var x=0;if(elem.calcTop){return elem.calcTop}var oElem=elem;while(elem){if((elem.currentStyle)&&(!isNaN(parseInt(elem.currentStyle.borderTopWidth)))&&(x!=0))x+=parseInt(elem.currentStyle.borderTopWidth);x+=elem.offsetTop;elem=elem.offsetParent}oElem.calcTop=x;return x}
function applyStyles(){var dWid=0;if(CBE.boBDY.length>CBE.boHDR.length){dWid=CBE.boBDY.length}else {dWid=CBE.boHDR.length}if(dWid>35){dWid=35}oDv.style.width=((dWid*4)+10)+'px';if(ab){oDv.removeChild(dvBdy)}if(ah){oDv.removeChild(dvHdr)}dvHdr=document.createElement("div");dvHdr.className='tth';dvBdy=document.createElement("div");dvBdy.className='ttb';dvHdr.innerHTML=CBE.boHDR;dvBdy.innerHTML=CBE.boBDY;ah=false;ab=false;if(CBE.boHDR!=''){oDv.appendChild(dvHdr);ah=true}if(CBE.boBDY!=''){oDv.appendChild(dvBdy);ab=true}}
function SHW(){if(document.body &&(document.body.clientWidth !=0)){width=document.body.clientWidth;height=document.body.clientHeight}if(document.documentElement &&(document.documentElement.clientWidth!=0)&&(document.body.clientWidth+20>=document.documentElement.clientWidth)){width=document.documentElement.clientWidth;height=document.documentElement.clientHeight}return [width,height]}
function TTmoveMouse(e){e?evt=e:evt=event;CSE=evt.target?evt.target:evt.srcElement;if(!CSE.hasbox){iElem=CSE;while((iElem.parentNode)&&(!iElem.hasbox)){scanBO(iElem);iElem=iElem.parentNode}}if((CSE!=LSE)&&(!isChild(CSE,dvHdr))&&(!isChild(CSE,dvBdy))){if(!CSE.boxItem){iterElem=CSE;while((iterElem.hasbox==2)&&(iterElem.parentNode)){iterElem=iterElem.parentNode}CSE.boxItem=iterElem}iterElem=CSE.boxItem;if(CSE.boxItem&&(CSE.boxItem.hasbox==1)) {LBE=CBE;CBE=iterElem;if(CBE!=LBE){applyStyles();if(CBE.fade){if(ID!=null){clearTimeout(ID)}ID=setTimeout("fadeIn("+CBE.fadespeed+")",CBE.delay)}else{if(ID!=null){clearTimeout(ID)}COL=1;ID=setTimeout("oDv.style.visibility='visible';ID=null;",CBE.delay)}if(CBE.IEbugfix){hideSelects()}fixposx=!isNaN(CBE.fixX)?Left(CBE)+CBE.fixX:CBE.absX;fixposy=!isNaN(CBE.fixY)?Top(CBE)+CBE.fixY:CBE.absY;lockX=0;lockY=0;boxMove=true}}else if(!isChild(CSE,dvHdr)&& !isChild(CSE,dvBdy)&&(boxMove)){if((!isChild(CBE,CSE))||(CSE.tagName!='TABLE')){CBE=null;if(ID!=null){clearTimeout(ID)}fadeOut();showSelects()}}LSE=CSE}else if(((isChild(CSE,dvHdr)|| isChild(CSE,dvBdy))&&(boxMove))){totalScrollLeft=0;totalScrollTop=0;iterElem=CSE;while(iterElem){if(!isNaN(parseInt(iterElem.scrollTop))){totalScrollTop+=parseInt(iterElem.scrollTop)}if(!isNaN(parseInt(iterElem.scrollLeft))){totalScrollLeft+=parseInt(iterElem.scrollLeft)}iterElem=iterElem.parentNode}if(CBE!=null){boxLeft=Left(CBE)-totalScrollLeft;boxRight=parseInt(Left(CBE)+CBE.offsetWidth)-totalScrollLeft;boxTop=Top(CBE)-totalScrollTop;boxBottom=parseInt(Top(CBE)+CBE.offsetHeight)-totalScrollTop;if((mouseX<boxLeft)||(mouseX>boxRight)||(mouseY<boxTop)||(mouseY>boxBottom)){fadeOut();if(CBE.IEbugfix){showSelects()}CBE=null}}}if(boxMove&&CBE){bodyScrollTop=document.documentElement&&document.documentElement.scrollTop?document.documentElement.scrollTop:document.body.scrollTop;bodyScrollLet=document.documentElement&&document.documentElement.scrollLeft?document.documentElement.scrollLeft:document.body.scrollLeft;mouseX=evt.pageX?evt.pageX-bodyScrollLet:evt.clientX-document.body.clientLeft;mouseY=evt.pageY?evt.pageY-bodyScrollTop:evt.clientY-document.body.clientTop;mouseY<-10?lockY=-mouseY-10:lockY=0;mouseY>(SHW()[1]-oDv.offsetHeight-10)?lockY=-mouseY+SHW()[1]-oDv.offsetHeight-10:lockY=lockY;oDv.style.top=bodyScrollTop+mouseY+10+lockY+"px";if(CBE.showLeft){if(mouseX<dvBdy.offsetWidth-10){oDv.style.left="0px"}else {oDv.style.left=mouseX-dvBdy.offsetWidth-10+lockX+"px"}}else{if(mouseX<-10){lockX=-mouseX-10}else {lockX=0}if(mouseX>(SHW()[0]-dvBdy.offsetWidth-10)){lockX=-mouseX - 10 + SHW()[0] - dvBdy.offsetWidth}oDv.style.left=bodyScrollLet+mouseX+10+lockX+"px"}}}
function TTcheckMove(e){fadeOut();if(CBE&&CBE.IEbugfix){showSelects()}boxMove=true;CBE=null}
function fadeIn(fs){ID=null;COL=0;oDv.style.visibility='visible';fadeIn2(fs)}
function fadeIn2(fs){COL=COL+fs;COL=(COL>1)?1:COL;oDv.style.filter='alpha(opacity='+parseInt(100*COL)+')';oDv.style.opacity=COL;if(COL<1)setTimeout("fadeIn2("+fs+")",20)}
function fadeOut(){oDv.style.visibility='hidden'}



