var iBUTTON_THRESHOLD=10;var sDDB_DIVIDER="[__DDB_DIVIDER__]";var bDBG_TEST_FUNC_CALLS=false;var bTST_FUNCS_ELIM_TYPE_POSTS=false;var bTST_FUNCS_pppp_TO_POINT=false;var bTST_FUNCS_dddd_TO_DASH=false;var bTST_FUNCS___TO_SPACE=false;var bCRSH_ALRT=true;var bCRSH_DGNSTCS=true;var bCRSH_THROW=true;var bCONCEPT_DOC_PAGE=false;var sJSDIR;var sSifCfgUrl;var bDbgJSLoads;var bLDD_VFPD=false;var bLDD_CIBC=false;var bLDD_DBG=false;var bLDD_OD=false;var bLDD_STASIF=false;var bLDD_SIF_CFG=false;var bLDD_CI=false;var bt=false;var aVfbc=[];var sSifCfgUrl;var bDbgJSLoads;var sDMOV_FUNC_PRE="vfpdtf__";var fd="vfpd";var fc="load_cibc";var sFRM_NM_VFPD="form_vfpd__";var bLVFCalled=false;
function loadVF(du,d7,bf){if(bLVFCalled){crsh("vf.lvf1", loadVF, "loadVF (XCMAX):  This function was already called.")}bLVFCalled=true;ciMissing(loadVF,"loadVF(XCMAX)","du",du);if(du.substring((du.length - 1),du.length)!="/"){crsh("vf.lvf1", loadVF, "loadVF (XCMAX):  du must end with a url slash ('/').  Currently '"+du+"'.")}sJSDIR=du;sSifCfgUrl=d7;bDbgJSLoads=(df(bf)&&bf);if(df(sSifCfgUrl)){dj(bLDD_STASIF,true,sJSDIR,"vf_stASIF.js");dj(false,true,"",sSifCfgUrl)}}var bCVFLCalled=false;
function completeVFLoad(){var f=completeVFLoad;var h="completeVFLoad(XCMAX):  ";ciNotLoaded(h,undefined);if(bCVFLCalled){crsh("vf.cvfl1", f, h+"This function was already called.");bCVFLCalled=true}if(aVfbc.length==0){crsh("vf.cvfl2", f, h+"Must call configVF().")}if(!df(aVfbc[0].sFrmNm)&&aVfbc.length>1){crsh("vf.cvf3", f, h+"aVfbc.length is greater than one ("+aVfbc.length+"), but aVfbc[0].sFrmNm is.[undefined].")}for(var i=0;i<aVfbc.length;i++){var sFnm=aVfbc[i].sFrmNm;for(var j=(i+1);j<aVfbc.length;j++){if(sFnm==aVfbc[j].sFrmNm){crsh("vf.cvfl4", f, h+":  configVF was called twice for the form named '"+sFnm+"'. [i="+i+", j="+j+"]")}}if(aVfbc.length>1||df(aVfbc[0].sFnm)){if(!df(sFnm)){crsh("vf.cvfl5", f, h+"configVF was called multiple times, but call number "+(i+1)+", has a form name of [undefined].  [undefined] is a legal form name only when configVF is called a single time.")}if(eval("!df(document."+sFnm+")")){crsh("vf.cvfl6", f, h+":  configVF was called for a form named '"+sFnm+"', but no form having that name exists.")}if(sFnm.substring(0,sFRM_NM_VFPD.length)==sFRM_NM_VFPD){crsh("vf.cvfl7", f, h+"configVF was called for a form named '"+sFnm+"'.  No form name may start '"+sFRM_NM_VFPD+"'.")}}}commitVFPDValues()}
function configVF(ef,cx,ds){if(!bLVFCalled){crsh("vf.cvf1", configVF, "configVF (XCMAX):  Must call loadVF() first.")}var vfbc=new VFBCfg(ef,cx,ds);aVfbc[aVfbc.length]=vfbc;bt=(window.location.search.indexOf(fd)!=-1);if(cx!=-1){di()}dg(vfbc.isCIBCOn())}
function de(){dj(bLDD_OD,true,sJSDIR,"vf_obj_dgnstcs.js")}
function dh(){dj(bLDD_CI,true,sJSDIR,"crash_if.js")}
function dg(bg){if(bg||window.location.search.indexOf(fc)!=-1){dj(bLDD_CIBC,true,sJSDIR,"vf_cibVFCfg.js");de();dh()}}
function configVFPD(ek,ef,ei,eh,em,eo,eg,ee,a7,a8,ds){var vfbc=cl(configVFPD,"configVFPD",ds);vfbc.stVfpdc(ek,ef,ei,eh,em,eo,eg,ee,a7,a8,ds);dk(vfbc.isVfpdOn());if(vfbc.isVfpdOn()&&vfbc.bDCIBCOnOff){dg(true)}}
function ck(y,d6,fb,d9,dq){ciMissing(ck,y,d6,fb);if(fb==d9){return true}else if(fb==dq){return false}crsh("vf.gsb1", ck, y+" (XCMAX):  The fb parameter "+d6+" must equal either d9 (["+d9+"]), or dq (["+dq+"]).")}
function getFormErrorMsgs(cg,ea,bc,bd,be){var h="getFormErrorMsgs(XCMAX)";var f=getFormErrorMsgs;commitVFPDValues();if(getFormErrorMsgs.arguments.length>2){crsh("vf.gfem1", f, h+":  "+getFormErrorMsgs.arguments.length+" parameters have been provided to this function, but only two are expected.")}ciMissing(getFormErrorMsgs,h,"cg",cg);ciMissing(getFormErrorMsgs,h,"ea",ea);if(!df(cg.name)||cg.name==""){crsh("vf.gfem1", f, h+":  cg.name is undefined or zero characters in length.")}if(aVfbc.length==0){crsh("vf.gfem2", f, h+":  Must call configVF() first.")}var vfbc=cl(getFormErrorMsgs,"getFormErrorMsgs",cg.name);bCRSH_ALRT=df(bc)? bc : vfbc.bCrshAlrt;bCRSH_DGNSTCS=df(bd)? bd : vfbc.bCrshDgnstcs;bCRSH_THROW=df(be)? be : vfbc.bCrshThrow;ciNotLoaded(h,vfbc);var aFLS4Frm=gtAFLSvf(vfbc.sFrmNm);var bCIBC=false;if(!df(aFLS4Frm)){bCIBC=true;var aFLS=gtAFLS(cg);aFLS4Frm=aFLS}if(bLDD_DBG){dbgVF(aFLS4Frm,vfbc.iDDPS,false)}if(bLDD_CIBC&&bCIBC&&vfbc.isCIBCOn()){cibVFCfg(aFLS4Frm)}return(gtUsrErrCnt(aFLS4Frm)>0)?  gtAFLSUsrErrs(aFLS4Frm,"",ea,""):  ""}
function dk(el){dj(bLDD_VFPD,el,sJSDIR,"vf_perm_diagnostics.js")}
function di(){dj(bLDD_DBG,true,sJSDIR,"vf_dbgVF.js");de();dh()}
function dj(ba,bg,dp,dv){if(ba||!bg){return}var e5='<SCR'+'IPT LANGUAGE="JavaScript1.3" SRC="'+dp+dv+'" TYPE="text/javascript"></SCR'+'IPT>';if(bDbgJSLoads){alert("About to load...\n\n"+e5)}wrt(e5)}
function wrtVFPDToolbar(d0,ds){if(aVfbc.length==0){crsh("vf.wvfpdt1", wrtVFPDToolbar, "wrtVFPDToolbar (XCMAX):  Must call configVF() first.")}if(df(d0)&&(d0==""||d0.indexOf("#")!=-1)){crsh("vf.wvfpdt2", wrtVFPDToolbar, "wrtVFPDToolbar (XCMAX):  d0 (currently '"+d0+"') must be at least one character in length, and must not contain '#'.")}var vfbc=cl(wrtVFPDToolbar,"wrtVFPDToolbar",ds);if(vfbc.isVfpdOn()){dk(true);if(!bLDD_DBG&&df(vfbc.aiDPSddb)){di()}ciNotLoaded("wrtVFPDToolbar(XCMAX)",vfbc);wrtVFPDRaw(vfbc,d0)}else{vfbc.ff(false);if(vfbc.bOnLnk){wrt('<CODE>[<A HREF="'+gtDUrl(!vfbc.bDOnDflt,false,false)+'">vfpd on</A>]</CODE>')}}}
function commitVFPDValues(){if(bLDD_VFPD){updateVFPDCRaw()}}
function stAFLSvf(m,ds){var vfbc=cl(stAFLSvf,"stAFLSvf",ds);vfbc.a6=m}
function gtAFLSvf(ds){return cl(gtAFLSvf,"gtAFLSvf",ds).a6}
function gtDUrl(bi,bb,en){var url=window.location;var sq=url.search;sq=addDelUrlP(sq,bi,fd);sq=addDelUrlP(sq,bb,fc);if(en){var e8="vfrndp_";var c5=4;var c3=sq.indexOf(e8);if(c3!=-1){sq=addDelUrlP(sq,false,sq.substring(c3,c3+e8.length+c5))}var e7=((new Date()).getTime()+"");e7=e7.substring((e7.length - c5),e7.length);sq=addDelUrlP(sq,true,e8+e7)}return url.protocol+"/"+"/"+url.host+url.pathname+sq}
function doSubmitOnSuccess(cg){ciMissing(doSubmitOnSuccess,"doSubmitOnSuccess(XCMAX)","cg",cg);return cl(doSubmitOnSuccess,"doSubmitOnSuccess",cg.name).bSbmtOnSuccess}
function VFBCfg(ef,cx,ds){var sF="VFBCfg";var h=sF+"(XCMAX)";ciMissing(VFBCfg,h,"ef",ef);ciMissing(VFBCfg,h,"cx",cx);this.bCIBCOnOff=ck(sF,"ef",ef,"CIBC_ON","CIBC_OFF");;this.iDfltDPS=cx;this.sFrmNm=ds;this.stVfpdc=pb_stVfpdc;this.bDOnDflt;this.bDCIBCOnOff=false;this.bOnLnk=false;this.bOffLnk=false;this.bResetLnk=false;this.bSuccessDDB=false;this.bCIBCSctn=false;this.bCIBCCrshDdb=false;this.asTstngVFuncPost;this.aiDPSddb;this.bDOn;this.bCIBCDoCrsh;this.bSbmtOnSuccess;this.iDDPS;this.bCrshAlrt;this.bCrshDgnstcs;this.bCrshThrow;this.bk=bCRSH_ALRT;this.bl=bCRSH_DGNSTCS;this.bm=bCRSH_THROW;this.ff=pb_ff;this.isCIBCOn=pb_isCIBCOn;this.isVfpdOn=pb_isVfpdOn;this.ff(false)}
function pb_ff(ej){this.bCIBCDoCrsh=false;this.bSbmtOnSuccess=!ej;this.iDDPS=this.iDfltDPS;this.bDOn=ej;if(ej&&this.bCIBCCrshDdb){this.bCrshAlrt=true;this.bCrshDgnstcs=false;this.bCrshThrow=false}else{this.bCrshAlrt=this.bk;this.bCrshDgnstcs=this.bl;this.bCrshThrow=this.bm}}
function pb_isCIBCOn(){var b=((!this.bDOn&&this.bCIBCOnOff)||(this.bDOn&&this.bCIBCSctn&&this.bCIBCDoCrsh));if(!df(b)){crsh("vf.vfbc.icibco1", this.isCIBCOn, "isCIBCOn (XCMAX sanity check):  b is undefined?!  [this.bDOn="+this.bDOn+", this.bCIBCOnOff="+this.bCIBCOnOff+", this.bCIBCDoCrsh="+this.bCIBCDoCrsh+"]")}return b}
function pb_isVfpdOn(){return(df(this.bDOnDflt)&&this.bDOnDflt!=bt)}
function pb_stVfpdc(ek,ef,ei,eh,em,eo,eg,ee,a7,a8,ds){var sF="configVFPD";if(df(this.bDOnDflt)){crsh("vfbc.svfpdc1", this.stVfpdc, sF+" (XCMAX):  Already called "+sF+"() for ds ('"+ds+"').")}this.a6;this.bDOnDflt=ck(sF,"ek",ek,"ON","OFF");this.bDCIBCOnOff=ck(sF,"ef",ef,"CIBC_ON","CIBC_OFF");this.bOnLnk=ck(sF,"ei",ei,"ON_LNK","NO_ON_LNK");this.bOffLnk=ck(sF,"eh",eh,"OFF_LNK","NO_OFF_LNK");this.bResetLnk=ck(sF,"em",em,"RESET_LNK","NO_RESET_LNK");this.bSuccessDDB=ck(sF,"eo",eo,"SUCCESS_DDB","NO_SUCCESS_DDB");this.bCIBCSctn=ck(sF,"eg",eg,"CIBC_SCTN","NO_CIBC_SCTN");this.bCIBCCrshDdb=ck(sF,"ee",ee,"CIBC_CRSH_DDB","NO_CIBC_CRSH_DDB");if(df(a8)){cibRA(sF+"(XCMAX)","a8",a8);for(var i=0;i<a8.length;i++){for(var j=(i+1);j<a8.length;j++){if(a8[i]==a8[j]&&a8[i]!=sDDB_DIVIDER&&a8[j]!=sDDB_DIVIDER){crsh("vfbc.svfpdc2", this.stVfpdc, sF+" (XCMAX):  a8["+i+"] and a8["+j+"] are the same:  '"+a8[i]+"'.  Form name='"+this.sFrmNm+"'")}}}}if(df(a7)){cibRA(sF,"a7",a7);for(var i=0;i<a7.length;i++){if(!df(a7)||!isNum(a7[i],"false")){crsh("vfbc.svfpdc2", this.stVfpdc, h+":  a7["+i+"] ("+a7[i]+") must be defined, and an integer.")}}}this.asTstngVFuncPost=a8;this.aiDPSddb=a7;this.sFrmNm=ds;this.ff(this.bDOnDflt)}
function cl(q,y,ds){if(!df(aVfbc[0].sFrmNm)){return aVfbc[0]}var es="  Form names:  ['";for(var i=0;i<aVfbc.length;i++){if(i>0){es+="','"}es+=aVfbc[i].sFrmNm;if(ds==aVfbc[i].sFrmNm){return aVfbc[i]}}es+="']";crsh("vf.gc1", q, y+" (XCMAX):  No VFBCfg exists for a form named ds ('"+ds+"').  Must call loadVF(), configVF() and/or configVFPD() before calling this function.  [aVfbc.length="+aVfbc.length+"]"+es)}
function pb_setAFLS(m){}
function wrt(fs){document.writeln(fs);return fs+'\n'}
function wrtnl(fs){document.write(fs);return fs}
function df(fv){return(fv!=undefined)}
function addDelUrlP(fu,fp,ft){if(fp==(fu.indexOf(ft)!=-1)){return fu}if(fp){if(fu.length>0){return fu+"&"+ft}else{return"?"+ft}}else{var fq=fu.indexOf(ft);var fr=ft.length;if(fu.substring((fq - 1),fq)=="&"){fq--;fr++}var s=fu.substring(0,fq)+fu.substring((fq+fr),fu.length);if(s.substring(0,2)=="?&"){s="?"+s.substring(2,s.length)}return(s=="?")?  "":  s}}var sCNSTR_XCMAX="SIFmt.constructor(XCMAX)";
function SIFmt(dz,e1,e0,eu,et){ciMissing(SIFmt,sCNSTR_XCMAX,"dz",dz);ciMissing(SIFmt,sCNSTR_XCMAX,"e1",e1);ciMissing(SIFmt,sCNSTR_XCMAX,"e0",e0);if(dz=='Dec'||dz=='Email'||dz=='Int'){crsh("snf.cnstr1", SIFmt, sCNSTR_XCMAX+":  dz (currently '"+dz+"') must not equal 'Dec', 'Email', or 'Int'.")}var a=['1','2','3','4','5','6','7','8','9','_','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','0'];for(var i=0;i<(dz.length - 1);i++){var c=dz.substring(i,(i+1)).toLowerCase();if(isInAscRA(c,a)){continue}else{crsh("snf.cnstr2", SIFmt, sCNSTR_XCMAX+":  dz (currently '"+dz+"') may not contain anything but letters, digits, and underscores.  Character at index "+i+" ('"+c+"') is illegal.")}}if(df(eu)^ df(et)){crsh("snf.cnstr2", SIFmt, sCNSTR_XCMAX+":  eu ('"+eu+"') and et ('"+et+"') must both be either undefined or defined.")}cibLnRng(e1,e0,"e1","e0","");cibLnRng(eu,et,"eu","et","When provided,");this.sMTPost=dz;this.siRqMn=e1;this.siRqMx=e0;this.siLtMn=eu;this.siLtMx=et;this.gtFmtV=pb_gtFmtV;this.isFmtEq=pb_isFmtEq;this.type="SIFmt"}
function pb_isFmtEq(ev){ciMissing(this.isFmtEq,"isFmtEq(XCMAX)","ev",ev);return(ev.siRqMn==this.siRqMn&&ev.siRqMx==this.siRqMx&&ev.siLtMn==this.siLtMn&&ev.siLtMx==this.siLtMx)}
function gtDgts(fs){ciMissing(gtDgts,"gtDgts(XCMAX)","fs",fs);if(/^\D$/.test(fs)){return""}var a9=fs.split(/\D/);var e6=a9[0];for(var i=1;i<a9.length;i++){e6+=a9[i]}return e6}
function pb_gtFmtV(eb){ciMissing(this.gtFmtV,"gtSIFromFormat(XCMAX)","eb",eb);var ep=gtDgts(eb);var e3;var e4;var c9=ep.length;if(c9<this.siRqMn.length){return undefined}if(c9>this.siRqMn.length){if(!df(this.siLtMn)){return undefined}if(c9!=(this.siRqMn.length+this.siLtMn.length)){return undefined}e3=ep.substring(0,this.siRqMn.length);e4=ep.substring(this.siRqMn.length,c9)}else{e3=ep;e4=undefined}if(!c6(e3,this.siRqMn,this.siRqMx)){return undefined}if(df(e4)&&!c6(e4,this.siLtMn,this.siLtMx)){return undefined}return ep}
function c6(e2,ex,ew){var dd=parseInt(e2,10);var c2=parseInt(ex,10);var c1=parseInt(ew,10);return(dd>=c2&&dd<=c1)}
function FLStats(cc,cb,a1){var ffl=cc;var f=FLStats;var l="FLStats.constructor(XCMAX):  ";ciMissing(FLStats,l,"cc",ffl);var c0=gtVRAIdx("fls.c0",ffl.type,asOBJ_TYPES);if(c0==-1&&df(ffl.elements)&&df(ffl.elements.length)&&df(ffl.reset)){c0=0}if(df(cb)){if(c0==0){crsh("fls.c1", f, l+"cb is provided, but cc is also a 'form' object.")}ciNotFLStats(l,"cb",cb);if(cb.sType!="form"){crsh("fls.c2", f, l+"cb, when provided, must have an 'sType' equal to 'form'.  Currently, cb.sType='"+cb.sType+"'.")}}else{if(df(a1)){crsh("fls.c3", f, l+"When cb is not provided, a1 must also be undefined.  Currently, a1=['"+a1.join("', '")+"'].")}if(c0!=0){crsh("fls.c4", f, l+"When cb is not provided, cc must be a form object.  Currently, cc.type="+ffl.type+", cc.toString()=["+ffl.toString()+"].")}}if(df(a1)){cibRA(l,"a1",a1)}this.sNm;this.sType;this.obj;this.sAftrFrmNm;this.sAftrAttrNm;this.iTotOpts;this.flsFrm;this.sUsrErr;this.bs=false;this.type="FLStats";this.useThisFLS=pb_useThisFLS;this.gtCd4Attr=pb_gtCd4Attr;this.gtCdAttrNm=pb_gtCdAttrNm;this.gtCdFLSNm=pb_gtCdFLSNm;this.gtAttrVRaw=pb_gtAttrVRaw;this.gtEvlCdLmntAttrNm=pb_gtEvlCdLmntAttrNm;this.gtEvlCdObjNm=pb_gtEvlCdObjNm;this.gtEvalCode=pv_gtEvalCode;this.isAttrAssc2Lmnt=pb_isAttrAssc2Lmnt;this.gtAttrV=pb_gtAttrV;this.isLmntVal1OrMore=pb_isLmntVal1OrMore;this.gtLmntValSnglr=pb_gtLmntValSnglr;this.gtLmntOptsTotal=pb_gtLmntOptsTotal;this.gtLmntOptsChosen=pb_gtLmntOptsChosen;this.e=pv_e;this.gtFLS4Frm=pv_gtFLS4Frm;this.gtLmntStats=pv_gtLmntStats;this.fg=pv_fg;if(df(cb)){this.flsFrm=cb}if(c0==-1){this.bs=false}else if(!df(cb)){this.gtFLS4Frm(ffl);this.bs=true}else{this.bs=this.gtLmntStats(ffl,a1)}if(!this.bs){return}if(!df(ffl.name)||ffl.name==""){crsh("fls.c5", f, l+"cc.name (["+ffl.name+"]) must be defined, at least one character in length, and unique among all forms in this web page.")}this.sNm=ffl.name;if(gtVRAIdx("fls.c6",this.sType,asOBJ_TYPES)==-1){crsh("fls.c7", f, l+"this.sType ('"+this.sType+"') is not one of these valid types:  '"+asOBJ_TYPES.join("', '")+"'.")}if(df(this.iTotOpts)&&this.iTotOpts<2){crsh("fls.c1", f, l+" (this.sNm='"+this.sNm+"'):  This element is a multiple-value element, but there are less than two options?!  One checkbox checkbox sets should be considered singular.\n\n"+sXCMAX)}this.fg(7);this.fg(10);this.fg(11);this.fg(12)}
function gtAFLSUsrErrs(m,dt,dw,dr){var h="gtAFLSUsrErrs(XCMAX)";cibAFLS(h,"m",m);ciMissing(gtAFLSUsrErrs,h,"dt",dt);ciMissing(gtAFLSUsrErrs,h,"dw",dw);ciMissing(gtAFLSUsrErrs,h,"dr",dr);var eq="";for(var i=0;i<m.length;i++){if(df(m[i].sUsrErr)){eq+=dw+m[i].sUsrErr;if(i<(m.length - 1)){eq+="\n"}}}if(eq==""){crsh("os.guefaos1", gtAFLSUsrErrs, h+"No element in m has a defined value for sUsrErr.")}return dt+eq+dr}
function gtAFLS(cg){ciMissing(gtAFLS,"gtAFLS(XCMAX)","cg",cg);var a6=new Array(1);a6[0]=new FLStats(cg);for(var i=0;i<cg.elements.length;i++){var fls=new FLStats(cg[i],a6[0],a6);if(fls.useThisFLS()){a6[a6.length]=fls}}return a6}
function pb_useThisFLS(){ciMissing(this.useThisFLS,"useThisFLS(XCMAX)[This function may only be called once per object,after which time this.bs is undefined.]","this.bs",this.bs);var b=this.bs;this.bs=undefined;return b}
function pb_gtCd4Attr(dn){return this.gtCdAttrNm(dn)+"="+gtCd4V(this.gtAttrV(dn))+";\n"}
function pb_gtCdAttrNm(dn){ciMissing(this.gtCdAttrNm,"gtCdAttrNm(XCMAX)","dn",dn);if(this.sType=="form"){return this.sNm+"."+dn}else{return this.flsFrm.sNm+this.sAftrFrmNm+this.sNm+"."+dn+this.sAftrAttrNm}}
function pb_gtCdFLSNm(){if(this.sType=="form"){return this.sNm}else{return this.flsFrm.sNm+this.sAftrFrmNm+this.sNm+this.sAftrAttrNm}}
function pb_gtAttrVRaw(dn){return eval(this.gtEvlCdLmntAttrNm(dn))}
function pb_isAttrAssc2Lmnt(dn){return df(this.gtAttrVRaw(dn))}var b=['dDecMin','dDecMax','iIntMin','iIntMax','iMinLength','iMaxLength','maxLength','iMCMin','iMCMax'];
function pb_gtAttrV(dn){if(gtVRAIdx("gtAttrV",dn,asVF_ATTRS)==-1&&gtVRAIdx("gtAttrV",dn,b)==-1){crsh("fls.gav1", this.gtAttrV, "gtAttrV (XCMAX):  dn ('"+dn+"') is not a legal attribute.  Must exist in either validate_form.asVF_ATTRS or fl_stats.b.\n\n asVF_ATTRS=\n['"+asVF_ATTRS.join("', '")+"'])\n\nb=\n(['"+b.join("', '")+"'])")}if(!this.isAttrAssc2Lmnt(dn)){crsh("fls.gav2", this.gtAttrV, "gtAttrV (XCMAX):  isAttrAssc2Lmnt(dn) equals false.  dn='"+dn+"', this.sNm='"+this.sNm+"', this.sType='"+this.sType+"'.")}return this.gtAttrVRaw(dn)}
function pb_isLmntVal1OrMore(){return(!df(this.iTotOpts))}
function pb_gtLmntValSnglr(){this.e("gtLmntValSnglr",false);var fn;if(this.sType=="select-one"&&this.obj.selectedIndex!=-1){fn=this.obj.options[this.obj.selectedIndex].value}else if(this.sType=="radio"){var rdo=eval(this.gtEvlCdObjNm());for(var i=0;i<rdo.length;i++){if(rdo[i].checked){fn=rdo[i].value;break}}}else if(this.sType=="checkbox"){if(this.checked){fn=this.obj.value}}else{fn=this.obj.value}return(fn=="")?  undefined:  fn}
function pb_gtLmntOptsTotal(){this.e("gtLmntOptsTotal",true);return this.iTotOpts}
function pb_gtLmntOptsChosen(){this.e("gtLmntOptsChosen",true);var c4=0;if(this.sType=="checkbox"&&this.flsFrm.obj.elements[this.sNm].length>1){for(var i=0;i<this.iTotOpts;i++){if(this.flsFrm.obj.elements[this.sNm][i].checked){c4++}}}else	if(this.sType=="select-multiple"){for(var i=0;i<this.iTotOpts;i++){if(this.obj.options[i].selected){c4++}}}return c4}
function pv_e(y,d){if(this.sType=="form"||this.isLmntVal1OrMore()==d){crsh("fls.cif1om", e, y+" (XCMAX)  ('"+this.sNm+"'):  sType may not equal 'form', and/or d="+d+" must equal isLmntVal1OrMore() ("+isLmntVal1OrMore()+").")}}
function pv_gtFLS4Frm(cg){this.obj=cg;this.sType="form";this.sAftrFrmNm=undefined;this.sAftrAttrNm=undefined;this.iTotOpts=undefined;var bj=false;for(var i=0;i<document.forms.length;i++){if(!bj){if(document.forms[i].name==cg.name){bj=true}}else if(document.forms[i].name==cg.name){crsh("fls.gosff", this.gtFLS4Frm, "FLStats.constructor (XCMAX):  The name of this form is '"+cg.name+"', but at least one other form on this page has that same name.")}}}
function pv_gtLmntStats(ch,a1){this.sType=ch.type;this.iTotOpts=undefined;if(this.sType=="checkbox"&&this.flsFrm.obj.elements[ch.name].length>1){this.iTotOpts=this.flsFrm.obj.elements[ch.name].length}else	if(this.sType=="select-multiple"){this.iTotOpts=ch.options.length}if(this.sType=="radio"||(df(this.iTotOpts)&&this.sType=="checkbox")){for(var i=0;i<a1.length;i++){if(a1[i].sNm==ch.name){return false}}}if(this.sType=="radio"||this.sType=="checkbox"){this.obj=this.flsFrm.obj[ch.name];this.sAftrFrmNm="['";this.sAftrAttrNm="']"}else{this.obj=ch;this.sAftrFrmNm=".";this.sAftrAttrNm=""}return true}
function pv_fg(cu){var ec=asVF_ATTRS[cu];if(this.isAttrAssc2Lmnt(ec)&&this.gtAttrV(ec)=="false"){eval(this.gtEvlCdLmntAttrNm(ec)+"=undefined;\n")}}
function pb_gtEvlCdLmntAttrNm(dn){ciMissing(this.gtEvlCdLmntAttrNm,"gtEvlCdLmntAttrNm(XCMAX)","dn",dn);return this.gtEvalCode(dn)}
function pb_gtEvlCdObjNm(){return this.gtEvalCode(undefined)}
function pv_gtEvalCode(dn){var ed;if(!df(dn)){ed=""}else{ed="."+dn}if(this.sType=="form"){return"document."+this.sNm+ed}else{return"document."+this.flsFrm.sNm+this.sAftrFrmNm+this.sNm+ed+this.sAftrAttrNm}}var cSS_DELIM="\~";var sSS_CURRLEN='CURRLEN';var sSS_BOUND_MIN='RANGE_MIN';var sSS_BOUND_MAX='RANGE_MAX';var sSS_BSS_LIST='BSS_LIST';var sSS_BSS_FOUND='BSS_FOUND';var sSS_OPTS_TOT='OPTS_TOTAL';var sSS_OPTS_CHSN='OPTS_CHOSEN';var a6=undefined;bLDD_GUEC=true;
function gtUsrErrCnt(m){var db=0;for(var i=1;i<m.length;i++){var fls=m[i];fls.sUsrErr=undefined;var br=(fls.sType=="text"||fls.sType=="password");var bq=(br||fls.sType=="textarea");if(bq){fe(fls)}var c4;var fn;if(fls.isLmntVal1OrMore()){fn=fls.gtLmntValSnglr()}else{c4=fls.gtLmntOptsChosen()}if(cr(fls,c4,fn)){db++;continue}if((!df(fn)&&!df(c4))||(df(c4)&&c4==0)){continue}if(bq&&ct(fls,fn)){db++;continue}if(br){if(cs(fls,fn)){db++;continue}}else if(fls.sType=="checkbox"||fls.sType=="select-multiple"){if(cp(fls,c4,fn)){db++;continue}}if(bq){if(cn(fls,fn)){db++;continue}}}return db}
function initVF(){for(var i=0;i<aVfbc.length;i++){stAFLSvf(undefined,aVfbc[i].sFrmNm)}bCrshd=false;sCrshCd=undefined;sCrshMsg=undefined;g=undefined}var cotFrm=new CmptblOTA(true,"form");var cotTxt=new CmptblOTA(true,"text");var cotPwd=new CmptblOTA(true,"password");var cotTxa=new CmptblOTA(true,"textarea");var cotRdo=new CmptblOTA(true,"radio");var cotSl1=new CmptblOTA(true,"select-one");var cotChk=new CmptblOTA(true,"checkbox");var cotSlm=new CmptblOTA(true,"select-multiple");var asOBJ_TYPES=["form","text","password","textarea","radio","select-one","checkbox","select-multiple"];var aCMPTBL_OBJ_TYPES=[cotFrm,cotTxt,cotPwd,cotTxa,cotRdo,cotSl1,cotChk,cotSlm];var ca_sMr=new CmptblOTA(false,"sMsgRequired");var ca_sMtd=new CmptblOTA(false,"sMsgTxtDec");var ca_sMte=new CmptblOTA(false,"sMsgTxtEmail");var ca_sMti=new CmptblOTA(false,"sMsgTxtInt");var ca_sMbl=new CmptblOTA(false,"sMsgBadLength");var ca_sMmcr=new CmptblOTA(false,"sMsgMCRange");var ca_asGbss=new CmptblOTA(false,"asGlobalBadSubStrs");var ca_bsNbss=new CmptblOTA(false,"bsNoBadSubStrs");var ca_asBss=new CmptblOTA(false,"asBadSubStrs");var ca_sMbss=new CmptblOTA(false,"sMsgBadSubStr");var ca_bsGts=new CmptblOTA(false,"bsGlobalTrimSpaces");var ca_bsDts=new CmptblOTA(false,"bsDontTrimSpaces");var ca_bsTs=new CmptblOTA(false,"bsTrimSpaces");var aCMPTBL_ATTRS=[ca_sMr,ca_sMtd,ca_sMte,ca_sMti,ca_sMbl,ca_sMmcr,ca_asGbss,ca_bsNbss,ca_asBss,ca_sMbss,ca_bsGts,ca_bsDts,ca_bsTs];var asVF_ATTRS=[ca_sMr.sNm,ca_sMtd.sNm,ca_sMte.sNm,ca_sMti.sNm,ca_sMbl.sNm,ca_sMmcr.sNm,ca_asGbss.sNm,ca_bsNbss.sNm,ca_asBss.sNm,ca_sMbss.sNm,ca_bsGts.sNm,ca_bsDts.sNm,ca_bsTs.sNm];var bx=[ca_sMr,ca_sMtd,ca_sMte,ca_sMti,ca_sMbl,ca_bsNbss,ca_asBss,ca_sMbss,ca_bsDts,ca_bsTs];var bw=[ca_sMr,ca_sMmcr];cotFrm.z9([ca_bsGts,ca_asGbss]);cotTxt.z9(bx);cotPwd.z9(bx);cotTxa.z9([ca_sMr,ca_sMbl,ca_bsNbss,ca_asBss,ca_sMbss,ca_bsDts,ca_bsTs]);cotRdo.z9([ca_sMr]);cotSl1.z9([ca_sMr]);cotChk.z9(bw);cotSlm.z9(bw);var acotTxtPwd=[cotTxt,cotPwd];var a3=[cotTxt,cotPwd,cotTxa];ca_sMr.stGoodOTs4Attr([cotTxt,cotPwd,cotTxa,cotRdo,cotSl1,cotChk,cotSlm]);ca_sMtd.stGoodOTs4Attr(acotTxtPwd);ca_sMte.stGoodOTs4Attr(acotTxtPwd);ca_sMti.stGoodOTs4Attr(acotTxtPwd);ca_sMbl.stGoodOTs4Attr(a3);ca_asBss.stGoodOTs4Attr(a3);ca_sMbss.stGoodOTs4Attr(a3);ca_bsDts.stGoodOTs4Attr(a3);ca_bsTs.stGoodOTs4Attr(a3);ca_bsNbss.stGoodOTs4Attr(a3);ca_sMmcr.stGoodOTs4Attr([cotChk,cotSlm]);ca_asGbss.stGoodOTs4Attr([cotFrm]);ca_bsGts.stGoodOTs4Attr([cotFrm]);ca_sMtd.z8([ca_sMte,ca_sMti]);ca_sMte.z8([ca_sMtd,ca_sMti]);ca_sMti.z8([ca_sMtd,ca_sMte,ca_sMbl]);ca_sMbl.z8([ca_sMti]);ca_bsNbss.z8([ca_asBss,ca_sMbss]);ca_asBss.z8([ca_bsNbss]);ca_sMbss.z8([ca_bsNbss]);ca_bsTs.z8([ca_bsDts]);ca_bsDts.z8([ca_bsTs]);
function gtCOTA(ay,d1){for(var i=0;i<ay.length;i++){if(d1==ay[i].sNm){return ay[i]}}}
function cj(dx,ez,ey){if(df(ez)){dx=ci(dx,cSS_DELIM,sSS_BOUND_MIN,ez)}if(df(ey)&&ey!=-1){dx=ci(dx,cSS_DELIM,sSS_BOUND_MAX,ey)}return dx}
function ci(dx,bu,d8,d5){var sss=bu+d8+bu;if(!df(dx)){dx=""}var c7=dx.indexOf(sss);if(c7!=-1){return dx.substring(0,c7)+d5+dx.substring((c7+sss.length),(dx.length+1))}else{return dx}}
function fe(ce){var v=ce.obj.value;if(!df(v)){return}if(ce.isAttrAssc2Lmnt(ca_bsDts.sNm)){return}if(ce.flsFrm.isAttrAssc2Lmnt(ca_bsGts.sNm)||ce.isAttrAssc2Lmnt(ca_bsTs.sNm)){v=trmChr(' ',v);ce.obj.value=trmChr('\t',v)}}
function cr(cd,cv,fk){if(!cd.isAttrAssc2Lmnt(ca_sMr.sNm)){return false}if((cd.isLmntVal1OrMore()&&!df(fk))||cv==0){cd.sUsrErr=cd.gtAttrV(ca_sMr.sNm);return true}return false}
function cs(cf,fk){if(cf.isAttrAssc2Lmnt(ca_sMte.sNm)){if(!isEml(cf.gtLmntValSnglr())){cf.sUsrErr=cf.gtAttrV(ca_sMte.sNm);return true}}if(cf.isAttrAssc2Lmnt(ca_sMti.sNm)){return cq("false",cf,ca_sMti.sNm,"iIntMin","iIntMax")}if(cf.isAttrAssc2Lmnt(ca_sMtd.sNm)){return cq("true",cf,ca_sMtd.sNm,"dDecMin","dDecMax")}for(var i=13;i<aCMPTBL_ATTRS.length;i++){if(cf.isAttrAssc2Lmnt(aCMPTBL_ATTRS[i].sNm)){var e9=aCMPTBL_ATTRS[i].sif.gtFmtV(cf.obj.value);if(df(e9)){cf.obj.value=e9;return false}else{cf.sUsrErr=cf.gtAttrV(aCMPTBL_ATTRS[i].sNm);return true}}}return false}
function cq(bo,cf,dy,fj,fi){var fm=cf.gtAttrVRaw(fj);var fl=cf.gtAttrVRaw(fi);var fo=cf.obj.value;if(!isNum(cf.obj.value,bo)||(df(fm)&&fm>fo)||(df(fl)&&fl<fo)){cf.sUsrErr=cj(cf.gtAttrV(dy),fm,fl);return true}return false}
function ct(ce,fk){if(ce.sType!="text"&&ce.sType!="password"&&ce.sType!="textarea"){return false}if(!ce.isAttrAssc2Lmnt(ca_sMbl.sNm)){return false}var cy=ce.gtLmntValSnglr().length;if(ce.isAttrAssc2Lmnt("iMinLength")&&(cy<ce.gtAttrV("iMinLength"))){fa(ce,cy);return true}var iMx=ce.gtAttrVRaw("iMaxLength");if(df(iMx)&&iMx!=-1&&(cy>iMx)){fa(ce,cy);return true}return false}
function fa(ce,cw){var er=ci(ce.gtAttrV(ca_sMbl.sNm),cSS_DELIM,sSS_CURRLEN,cw);ce.sUsrErr=cj(er,ce.gtAttrVRaw("iMinLength"),ce.gtAttrVRaw("iMaxLength"))}
function cp(by,cv,fk){if(!by.isAttrAssc2Lmnt(ca_sMmcr.sNm)){return false}var iMn=by.gtAttrVRaw("iMCMin");var iMx=by.gtAttrVRaw("iMCMax");if((df(iMn)&&cv<iMn)||(df(iMx)&&iMx<cv)){var er=cj(by.gtAttrVRaw(ca_sMmcr.sNm),iMn,iMx);er=ci(er,cSS_DELIM,sSS_OPTS_TOT,by.iTotOpts);by.sUsrErr=ci(er,cSS_DELIM,sSS_OPTS_CHSN,by.gtLmntOptsChosen());return true}return false}
function cn(ce,fk){if(ce.flsFrm.isAttrAssc2Lmnt(ca_asBss.sNm)){return false}var co;if(ce.isAttrAssc2Lmnt(ca_asBss.sNm)){co=ce.gtAttrV(ca_asBss.sNm)}else if(ce.flsFrm.isAttrAssc2Lmnt(ca_asGbss.sNm)){co=ce.flsFrm.gtAttrV(ca_asGbss.sNm)}else{return false}for(var i=0;i<co.length;i++){if(fk.indexOf(co[i])!=-1){var er=ci(ce.gtAttrV(ca_sMbss.sNm),cSS_DELIM,sSS_BSS_LIST,"['"+co.join("','")+"']");ce.sUsrErr=ci(er,cSS_DELIM,sSS_BSS_FOUND,co[i]);return true}}return false}
function pb_z9(az){this.a5("z9",true,az)}
function pb_z8(az){this.a5("z8",false,az)}
function pv_a5(y,bh,az){this.a4(y,bh,this.aACAttrs_G4OT_B4A,az)}
function pb_stGoodOTs4Attr(az){if(this.aCObjTypes_G4A.length>1){crsh("cota.sgot4a1", this.stGoodOTs4Attr, "stGoodOTs4Attr (XCMAX):  this.aCObjTypes_G4A.length="+this.aCObjTypes_G4A.length+".  Can only call this function once.  Note the name of this function starts 'st' (meaning 'set'), not 'add'.")}this.a4("stGoodOTs4Attr",false,this.aCObjTypes_G4A,az)}
function pb_a4(y,bh,a0,az){cibRA(y+"(XCMAX)","az",az);if(bh!=this.bOTorA){crsh("cota.cincvfa", this.a4, y+" (XCMAX):  This function is only applicable for "+(bh?"object-types":"vf-attributes")+".  This object represents "+(this.bOTorA?"object-types":"vf-attributes")+".")}for(var i=0;i<az.length;i++){a0[a0.length]=az[i]}}
function pb_cm(dm){ciMissing(this.cm,"cm(XCMAX)","dm",dm);for(var i=0;i<this.aACAttrs_G4OT_B4A.length;i++){if(dm==this.aACAttrs_G4OT_B4A.sNm){return true}}return false}
function pb_hasOT(d2){ciMissing(this.hasOT,"hasOT(XCMAX)","d2",d2);for(var i=0;i<this.aCObjTypes_G4A.length;i++){if(d2==this.aCObjTypes_G4A[i].sNm){return true}}return false}
function CmptblOTA(bh,d1){ciMissing(CmptblOTA,"CmptblOTA(XCMAX)","bh",bh);ciMissing(CmptblOTA,"CmptblOTA(XCMAX)","d1",d1);if(d1.length<1){crsh("coa.cnstr1", CmptblOTA, "CmptblOTA.constructor (XCMAX):  d1 is zero characters in length.")}this.sNm=d1;this.bOTorA=bh;this.aCObjTypes_G4A=[];this.stGoodOTs4Attr=pb_stGoodOTs4Attr;this.aACAttrs_G4OT_B4A=[];this.z8=pb_z8;this.z9=pb_z9;this.a5=pv_a5;this.a4=pb_a4;this.cm=pb_cm;this.hasOT=pb_hasOT;this.sif=undefined}
function gtVRAIdx(y,fh,a2){cibRA(y+"(XCMAX)[NOTE THAT THERE ARE THREE PARAMETERS,THE FIRST BEING THE 'CALLING FUNCTION']","a2",a2);for(var i=0;i<a2.length;i++){if(fh==a2[i]){return i}}return-1}
function isInAscRA(fh,a2){cibRA("isInAscRA(XCMAX)","a2",a2);for(var i=0;i<a2.length;i++){if(fh<a2[i]){return false}if(fh==a2[i]){return true}}return false}
function isRA(dl){ciMissing(isRA,'util_array.isRA(XCMAX)','dl',dl);if(typeof dl!='object'){return false}return(dl.constructor.toString().match(/array/i)!=null)}
function isNum(d4,bn){ciMissing(isNum,'util_string.isNum [XCMAX]','d4',d4);cibBoolStr('util_string.isNum [XCMAX]','bn',bn);if(d4.length<1){return false}if(d4=='-'){return false}if(/^-[0]+$/.test(d4)){return false}if(/^[0]+$/.test(d4)){return true}if(/^[-]{0,1}[0-9]+$/.test(d4)){return true}if(bn=='false'){return false}if(/^[-]{0,1}[0-9]*[.][0-9]+$/.test(d4)){return!(/^-0*[.]0+$/.test(d4))}return false}
function isEml(d3){if(!df(d3)||d3.length<1){crsh("us.ie1", isEml, "isEml (XCMAX):  d3 must be defined, and at least one character in length.")}if(d3.indexOf(" ")!=-1||d3.indexOf("/")!=-1||d3.indexOf("\\\\")!=-1||d3.indexOf(",")!=-1){return false}if(/[@.][@.]/.test(d3)){return false}if(/^[@.]/.test(d3)){return false}if(/[@.]$/.test(d3)){return false}if(!/^[^@]+@[^@]+$/.test(d3)){return false}if(!/@.*[.]/.test(d3)){return false}return true}
function trmChr(bv,fs){if(!bv||bv.length!=1){crsh("us.tc1", trmChr, "us.trmChr (XCMAX):  bv must be provided, and must be exactly one character in length.  Currently '"+bv+"'.")}ciMissing(trmChr,'us.trmChr [XCMAX]','fs',fs);var i=0;var c8=0;while(fs.substring(i,(i+1))==bv){c8++;i++}if(c8==fs.length){return""}i=0;var cz=0;while(fs.substring((fs.length - i),(fs.length -(i+1)))==bv){cz++;i++}if(c8==0&&cz==0){return fs}return fs.substring(c8,(fs.length - cz))}
function gtCd4V(eb){if(!df(eb)){return"undefined"}else if(isNum(eb,"true")){return eb}else if(isRA(eb)){return"['"+eb.join("','")+"']"}else{return"'"+eb+"'"}}bLDD_CI=true;bCRSH_ALRT=true;bCRSH_DGNSTCS=true;bCRSH_THROW=true;var bCrshd=false;var sCrshCd=undefined;var g=undefined;var sCrshMsg=undefined;
function crsh(z, r, ab){if(!df(r)){return alert("ERROR in utility.crsh:  r is undefined.  [crsh.caller="+crsh.caller.name+",z='"+z+"',ab='"+ab+"']")}if(!df(r.arguments)){return alert("ERROR in utility.crsh:  r.arguments is undefined.  Make sure r is a function reference.  [crsh.caller="+crsh.caller.name+",z='"+z+"',ab='"+ab+"']")}if(!z){return alert("ERROR in utility.crsh:  z is required and must not equal zero or empty string.  [crsh.caller="+crsh.caller.name+",r='"+r+"',ab='"+ab+"']")}var ap="u.crsh() ERROR.    ";var ao="Function: "+r.name+"()";var al="Code: "+z;var ak="Caller: ";if(df(r.caller)){ak+=r.caller.name+"()"}else{ak+="[TOP LEVEL CALL.  Called by the document itself]"}var sCrshClr="crsh() caller:  "+crsh.caller.name;var ai="";var o=r.arguments;if(!isRA(o)){ai="COULD NOT DETERMINE ARGUMENTS.  r.arguments is not of type 'array'.  WHY?!"}else{for(var i=0;i<o.length;i++){ai+=i+"  ["+o[i]+"]\n"}}ai="Argument(s):\n"+ai;var at=ap+al+"\nbCRSH_DGNSTCS="+bCRSH_DGNSTCS+"    bCRSH_ALRT="+bCRSH_ALRT+"    bCRSH_THROW="+bCRSH_THROW+"\n";if(bCRSH_DGNSTCS){at+="\n(About to write this error and code to the document)"}else if(bCRSH_ALRT&&window.location.hash.length>0){if(bCRSH_THROW){at+="\n[[[  NOTE:  The page may reload to '"+window.location.hash+"',and form values may revert to their defaults.   ANYONE KNOW WHY THIS RELOADS IN UNPREDICTABLE LOCATIONS????  ]]]"}else{at+="\n[[[  NOTE:  bCRSH_THROW equals false.  Unpredictable behavior may follow this dialog...  ]]]"}}at+="\n------------------------"+"\n"+ab+"\n---------------------\n"+ao+"\n"+ak+"\n"+sCrshClr;sCrshCd=z;sCrshMsg=at;g=r;if(bCRSH_ALRT){alert(at)}var an;if(bCRSH_DGNSTCS){var sb="\n<BR>";var au="<TABLE CELLPADDING=\"10\" BORDER=\"5\" BGCOLOR=\"#FFCCCC\"><TR>\n<TD><H1>"+ap+al+"...";var aj="</TD></TR></TABLE>";an=au+"START</H1>"+aj+"<P><CODE>"+ab+"</CODE></P>\n"+"<H3><U>Details</U></H3>\n<CODE><B>"+al+sb+ao+sb+ak+sb+sCrshClr+"</B></CODE>\n<P><PRE>"+ai+"</PRE></P>\n"+"<H3><U>The function</U></H3>\n<PRE>"+r+"</PRE>\n<H3><U>The calling function</U></H3>\n<PRE>"+r.caller+"</PRE>\n"+au+"END</H1>\n"+aj}if(bCRSH_THROW){crshAndThrow(an,at)}else{crshNoThrow(an)}}
function crshAndThrow(aa,af){if(bCRSH_DGNSTCS){wrt(aa)}throw af}
function crshNoThrow(aa){if(bCRSH_DGNSTCS){wrt(aa)}}
function ciMissing(q,x,ag,av){if(!df(av)){crsh("u.cim1", q, x+':  Required parameter '+ag+' is undefined.')}}
function cibBoolStr(y,w,p){ciMissing(cibBoolStr,"u.cibBoolStr(y='"+y+"',w='"+w+"')","p",p);if(p=='true'||p=='false'){return}crsh("u.cibbs1", cibBoolStr, y+":  "+w+" must be a *string* equal to either 'true' or 'false'.  EXTRA INFO:  p.toString()='"+p.toString()+"', p.type='"+p.type+"' , value='"+p+"'.")}
function cibAFLS(y,t,m){cibRA(y,t,m);for(var i=0;i<m.length;i++){ciNotFLStats(y,t+"["+i+"]",m[i])}}
function ciNotFLStats(y,ac,aw){ciMissing(ciNotFLStats,y,ac,aw);if(!df(aw.type)||aw.type!="FLStats"){crsh("os.cinos1", ciNotFLStats, y+":  "+ac+" is not of type 'FLStats'.  Currently, ["+aw+"].")}}
function ciNotLoaded(y,ax){var f=ciNotLoaded;var sF=y;var am=".\n----------\nDiagnostics:\ndu='"+sJSDIR+"'(as you provided to loadVF())\n";if(df(ax)){if(ax.isVfpdOn()&&!bLDD_VFPD){crsh("vf.gfem8", f, sF+"Permanent VF-Diagnostics are currently active, but '"+sJSDIR+"vf_perm_diagnostics.js'could not be loaded"+am+"bLDD_VFPD="+bLDD_VFPD+"\nax.isVfpdOn()="+ax.isVfpdOn()+", ax.bDOnDflt="+ax.bDOnDflt+", bt="+bt+", ax.sFrmNm='"+ax.sFrmNm+"'\nwindow.location.search='"+window.location.search+"'\nax.isVfpdOn()="+ax.isVfpdOn()+"'\nbLDD_VFPD="+bLDD_VFPD)}else if(ax.isCIBCOn()&&!bLDD_CIBC){crsh("vf.gfem9", f, sF+"ax.isCIBCOn() equals true, but '"+sJSDIR+"vf_cib_config.js' or '"+sJSDIR+" could not be loaded"+am+"ax.sFrmNm='"+ax.sFrmNm+"'\nbLDD_CIBC="+bLDD_CIBC)}else if(ax.iDDPS!=-1&&!bLDD_DBG){crsh("vf.gfem10", f, sF+"ax.iDDPS equals something other than -1 ("+ax.iDDPS+"), but '"+sJSDIR+"vf_dbgVF.js' could not be loaded"+am+"ax.sFrmNm='"+ax.sFrmNm+"'")}}if((bLDD_CIBC||bLDD_DBG)&&!bLDD_OD){crsh("vf.gfem11", f, sF+"Either "+sJSDIR+"vf_cib_config.js ("+bLDD_CIBC+") or  "+sJSDIR+"vf_dbgVF.js ("+bLDD_DBG+") were loaded, but the required sub-file '"+sJSDIR+"vf_obj_dgnstcs.js' could not be loaded"+am)}else if(df(sSifCfgUrl)&&(!bLDD_STASIF||!bLDD_SIF_CFG||(aCMPTBL_ATTRS.length==13))){crsh("vf.gfem12", f, sF+"s_relUrl2ASIFmt ('"+sSifCfgUrl+"') has at least one of the following problems:\n   - It could not be loaded.  Verify the path.\n   - It does not call stASIF().\n   - It does not contain the required variable and value 'bLDD_SIF_CFG=true;'"+am+"bLDD_STASIF="+bLDD_STASIF+"\naCPMTBL_ATTRS.length="+aCMPTBL_ATTRS.length+"\nbLDD_SIF_CFG="+bLDD_SIF_CFG)}}
function cibRA(y,u,n){ciMissing(cibRA,y,u,n);if(!isRA(n)){crsh("ua.ciba1", cibRA, y+":  "+u+" is not an array according to util_array.isRA().  "+u+"=["+n.toString()+"].")}if(n.length<1){crsh("ua.ciba2", cibRA, y+":  "+u+" is zero elements in length.")}for(var i=0;i<n.length;i++){if(!df(n[i])){crsh("ua.ciba3", cibRA, y+":  "+u+"["+i+"] is undefined.  "+u+"=['"+n.join("', '")+"']")}}}
function cibLnRng(as,ar,ae,ad,ah){cibInt(ae,as);cibInt(ad,ar);if(!df(as)){return}if(as.length!=ar.length){crsh("snf.cnstr1", cibLnRng, "cibLnRng:  "+ah+ae+" ('"+as+"') and "+ad+" ('"+ar+"') must be the same length.")}if(parseInt(as,10)>parseInt(ar,10)){crsh("snf.cnstr1", cibLnRng, "cibLnRng:  "+ah+ae+" ('"+as+"') must be (numerically) less than or equal to "+ad+" ('"+ar+"').")}}
function cibInt(v,aq){if(df(aq)&&!isNum(aq,"false")||aq<0){crsh("snf.cnstr4", cibInt, "cibLnRng:  The value of "+v+" ('"+aq+"') must be an *integer* greater than -1.")}}
