function qsrt(vec, lb, hb) { var piv,ls,hs,tmp; if (hb-lb==1) { if (vec[lb].text+"" > vec[hb].text+"") { tmp=vec[lb]; vec[lb]=vec[hb];vec[hb]=tmp; } return; } piv=vec[parseInt((lb+hb)/2)]; vec[parseInt((lb+hb)/2)]=vec[lb]; vec[lb]=piv; ls=lb+1; hs=hb; do { while (ls <= hs && vec[ls].text+"" <= piv.text+"") ls++; while (vec[hs].text+"">piv.text+"") hs--; if (ls0) pR=pAr[Idx-1]; for (var i=0;i2&&pR[2]==cAr[i][0])))||Idx<0) seA[seA.length]=new Option(cAr[i][1],i+1); if (seA.length>0) { qsrt(seA,0,seA.length-1); for (var i=0;i0) { c=cAr[Idx-1]; var p=null; for (var i=1;i2&&p[2]==c[0])) { sOb.selectedIndex=i; return; } } } else sOb.selectedIndex=0; } function setbyval(sOb,val) { for (var i=0;i