<!--
   var agt=navigator.userAgent.toLowerCase();        
   var is_major = parseInt(navigator.appVersion);    
   var is_minor = parseFloat(navigator.appVersion);   
   var is_nav  = ((agt.indexOf('mozilla')!=-1)       
        && (agt.indexOf('spoofer')==-1)              
        && (agt.indexOf('compatible') == -1)         
        &&(agt.indexOf('opera')==-1)                 
        && (agt.indexOf('webtv')==-1));              
   var is_nav4 = (is_nav && (is_major == 4));        
   var is_nav40x = (is_nav && (is_minor < 4.1)); 
   
   function setEnabled(form,byjava){
      if(byjava) return true; //do nothing
      //look up all editable field and set to enabled=true
      var elms=form.elements.length;
      for(var i=0;i<elms;i++){
         var obj=form.elements[i];
         if(obj.disabled) obj.disabled=false;
      }
      return false;
   }
   //smartlink
   function replaceDocBy(l_url){
     window.location.href = l_url;
   }
   function getInputValue(defval,obj,sltindex){
     var result = defval;
     //alert("defval=" + defval);
     if(obj){
        var len = obj.length;
        if(len){              //with duplicated obj(checkbox/radio/text/hidden)
           if(obj[0].type=='checkbox'){   
             for(var i=0; i<len; i++)
               if(obj[i].checked){ result=obj[i].value; break;}
           }else if(obj.options){   //select
             for(var i=0; i<len; i++)
              if(obj.options[i].selected){ result = obj.options[i].value; break;}
           }else if(obj[0].type=='radio'){ //radio
              for(var i=0; i<len; i++)
                 if(obj[i].checked){ result = obj[i].value; break;}
           }else if(obj[0].type=='text' || obj[0].type=='hidden'){
              if(sltindex)
              result = obj[sltindex].value;
              else
              result = obj[0].value;
           }
        }else{
           if(obj.type=='checkbox' || obj.type=='radio'){   
             if(obj.checked) result=obj.value;
           }else
             result=obj.value;
        }
      }
      //alert(obj.name + '=' + result)
     return result;
   }    
   //special TAG - SELECT; RADIO; CHECKBOX; TEXTAREA
   function setList(tagString,showlist,tagName,initValue,index,sep1,sep2){
      if(mrcTrim(showlist).length==0){
         document.write(tagString);
         return;
      }else
         document.write("<SELECT NAME=" + mrcTrim(tagName) + ">");
      initValue = mrcRTrim(initValue);
      var ls = conditionValue[index];
      var isStateList = false;
     if(ls.toUpperCase().indexOf("ALL STATE NAME")>=0){
         sep1=";"; isStateList = true;
         ls = getStateList(stateListArray,2); //name-name
      }else if(ls.toUpperCase().indexOf("ALL STATE CODE")>=0){
         sep1=";"; isStateList = true;
         ls = getStateList(stateListArray,1); //code-code or pass cade-display code
      }else if(ls.toUpperCase().indexOf("ALL STATE")>=0){
         sep1=";"; isStateList = true;
         ls = getStateList(stateListArray,0); //code-name or pass cade-display name
      }
      if(isStateList && stateList) ls = stateList; //user defined state list
      
      if(initValue.toUpperCase()=="&NBSP;") initValue="";
      if(sep1==null) sep1=" ";
      if(sep2==null) sep2="=";
      if(!keyLowerCase[index]){
         if(!isStateList) ls = ls.toUpperCase();
         initValue = mrcTrim(initValue.toUpperCase());
      }
      var lsa = ls.split(sep1);
      var len = lsa.length;
      var token1=new Array(),token2= new Array();
      //set tokens
      for(var i = 0; i<len; i++){
         var it = lsa[i].split(sep2);
         if(it.length==1){
            token1[i]=token2[i]=mrcTrim(it[0]);
         }else{
            token1[i]=mrcTrim(it[0]);
            token2[i]=mrcTrim(it[1]);
         }
         if(!isNumeric[index]){
            token1[i] = getBlankWithString(token1[i]);
            token2[i] = getBlankWithString(token2[i]);
         }

      }
      
      if(isStateList){
         token1[0] = "";
         if(!keyLowerCase[index])
            for(var i = 0; i<len; i++)
               token1[i] = token1[i].toUpperCase();
      }
    
      //set current selection
      
      var matched = false;
      for(var i = 0; i<len; i++)
         if(initValue==token1[i]){
            document.write('<option value=\"' + token1[i] + '\">' + token2[i]);
            matched = true; break;
         }
      if(!matched)  //set default selection
         if(defaultValue[index] !=null && defaultValue[index].length>0){
            for(var i = 0; i<len; i++)
               if(defaultValue[index]==token1[i]){
                  document.write('<option value=\"' + token1[i] + '\">' + token2[i]);
                  matched = true; break;
               }
            if(!matched)
               document.write('<option value=\"' + defaultValue[index] + '\">' + defaultValue[index]);
            matched = true;initValue= defaultValue[index];
         }
      if(!matched)
       document.write('<option value=\"' + initValue + '\">' + initValue);
      // set rest items for the list
      for(var i = 0; i<len; i++)
         if(initValue != token1[i])
            document.write('<option value=\"' + token1[i] + '\">' + token2[i]);
      //close select tag
      document.write(' </SELECT>');
    }
    function setRadio1(tagString,showRadio,tagName,rcdindex,initValue,index,numofline,sep1,sep2){
        
        setRadio(tagString,showRadio,mrcTrim(tagName)+ "_" +rcdindex,initValue,index,numofline,sep1,sep2);
    }
    function setRadio(tagString,showRadio,tagName,initValue,index,numofline,sep1,sep2){
       if(mrcTrim(showRadio).length==0){
        document.write(tagString);
        return;
       }
       initValue = mrcRTrim(initValue);
       var ls = conditionValue[index];
       if(initValue.toUpperCase()=="&NBSP;") initValue="";
       if(sep1==null) sep1=";";
       if(sep2==null) sep2="=";
       if(!keyLowerCase[index]){
               ls = ls.toUpperCase();
               initValue = mrcTrim(initValue.toUpperCase());
       }
       var lsa = ls.split(sep1);
       var len = lsa.length;
       var token1=new Array(),token2= new Array();
       //set tokens
       for(var i = 0; i<len; i++){
          var it = lsa[i].split(sep2);
          if(it.length==1)
                  token1[i]=token2[i]=mrcTrim(it[0]);
          else{
                  token1[i]=mrcTrim(it[0]);
                  token2[i]=mrcTrim(it[1]);
          }
          if(!isNumeric[index]){
                  token1[i] = getBlankWithString(token1[i]);
                  token2[i] = getBlankWithString(token2[i]);
          }
       }
       //find current/default selection
       var matched = false;
       for(var i = 0; i<len; i++)
          if(initValue==token1[i]){
             matched = true; break;
          }
       if(!matched)  //find default selection
          if(defaultValue[index] !=null && defaultValue[index].length>0){
             for(var i = 0; i<len; i++)
                if(defaultValue[index]==token1[i])
                   initValue= token1[i];
          }
       document.write("<table border=0 cellpadding=0 cellspacing=0>");
       for(var i = 0; i<len; i++){
          document.write("<TR>");
          var end = numofline;
          if(len-i<numofline) end = len-i;
          for(var j = 0; j<end; j++){
             document.write("<TD style=\"background:transparent\">");
             document.write("<INPUT TYPE=radio  NAME=" + mrcTrim(tagName) + " VALUE=\"" +  token1[i] + "\"");
             if(initValue==token1[i]) document.write(" CHECKED ");
             document.write(">" +  token2[i]);
             document.write("</TD>");
             i++;
          }
          i--;
          document.write("</TR>");
       }
       document.write("</table>");
    } //end setRadio

    function setCheckbox1(tagString,showBox,tagName,rcdIndex,initValue,index,sep1){
       
       setCheckbox(tagString,showBox,mrcTrim(tagName)+ "_" +rcdIndex,initValue,index,sep1);
    }
    function setCheckbox(tagString,showBox,tagName,initValue,index,sep1){
       if(mrcTrim(showBox).length==0){
        document.write(tagString);
        return;
       }
       
       var ls = conditionValue[index];
       initValue = mrcRTrim(initValue);
       if(initValue.toUpperCase()=="&NBSP;") initValue="";
       if(sep1==null) sep1=";";
       
       var lsa = ls.split(sep1);
       var len = lsa.length;
       if(!keyLowerCase[index]){
          if(len>0) lsa[0] = lsa[0].toUpperCase();
          initValue = initValue.toUpperCase();
       }
       //set tokens and check if  matched
       var isChecked=false;
       for(var i = 0; i<len; i++){
          if(!isNumeric[index])
             lsa[i] = mrcRTrim(getBlankWithString(lsa[i]));
          else
             lsa[i]=mrcTrim(lsa[i]);
       }
       for(var i = 0; i<len; i++)
          if(initValue==lsa[i]){
             isChecked=true; initValue=lsa[i];break;
          }
       if(!isChecked) initValue=lsa[0];
       document.write("<INPUT TYPE=checkbox  NAME=" + mrcTrim(tagName) + " VALUE=\"" +  initValue + "\"");
       if(isChecked) document.write(" CHECKED ");
       document.write(">" + ((len==2)? lsa[1]:"") );
    }
    function setTextArea(tagString,showArea,tagName,initValue,rows,cols,wrap){
      if(mrcTrim(showArea).length==0){
         document.write(tagString);
         return;
      } 
      var maxlen = 60;
      if(tagString && tagString.length>0){
         pos = tagString.indexOf("maxlength=");
         if(pos>0){
            pos1 = tagString.indexOf(" ",pos+10);
            if(pos1>0) maxlen=tagString.substring(pos+10,pos1);
            //alert(maxlen);
         }
      }
      document.write("<TEXTAREA NAME=" + mrcTrim(tagName) + " " );
      document.write("cols=" + cols + " rows=" + rows + " wrap=" + wrap + " ONKEYPRESS=validateLen(this,"+maxlen+") >");
      document.write(mrcRTrim(initValue));
      document.write('</TEXTAREA>');
    }
    
    function validateLen(textareaObj,len){//keypress
      textValStr=textareaObj.value;
      var currStr = getTextStr(textValStr);
      var currLen = currStr.length;
      if(currLen>=len){
         if(is_nav)
            ;
         else
         window.event.returnValue=false;
         
         alert("This field value can not be more than "+len );
      }
      
    }
    
    function getTextStr(text){
      //alert(text);
      text1=text.replace(/\n|\r|\t|\b/g,"");
      //alert(text+"\n=" +text1);
      return text1;
    }
    function getBlankWithString(s){
       // for alpha fields and RG LS,Javascript1.0/1.1 does not support replace
       s=replaceBlank(s,"*BLANKS");
       s=replaceBlank(s,"*BLANK");
       return s;
    }
    function replaceBlank(s,blkword){
       if(s.length == 0 || s.toUpperCase()=="*BLANK" || s.toUpperCase()=="*BLANKS") return " ";
       var blkpos = s.indexOf(blkword);
       var len = blkpos.length;
       while(blkpos>=0){
          var ss = s.substring(0,blkpos) + "&nbsp;" ;
          s = ss + s.substring(blkpos+len);
          blkpos = s.indexOf(blkword);
       }
       return s;    
    
    }
   //basic 
   function mrcEncode(obj,type,doencode,touppcase){ // as parameter for URL
      if(type==0)      //input object
        s=getInputValue("",obj);
      else if(type==1) //string
        s= obj
      if(touppcase) s = s.toUpperCase();
      if(doencode)  s = mrcEncode1(s); 
      return s;
   }
   function mrcEncode1(s){ // as parameter for URL
      return  urlEncode(s);
   }
   function urlEncode(s){ // as parameter for URL(used in retrieval
      var result = "";
      if(!s) return "";
      for(var i=0; i<s.length; i++){
         ch = s.charAt(i);
         switch(ch){
              //reserved
            case ' ': result += "%20"; break ;case ';': result += "%3B"; break ;
            case '?': result += "%3F"; break ;case ':': result += "%3A"; break ;
            case '/': result += "%2F"; break ;case '@': result += "%40"; break ;
            case '=': result += "%3D"; break ;case '&': result += "%26"; break ;
              //unsafe
            case '<': result += "%3C"; break ;case '>': result += "%3E"; break ; 
            case '#': result += "%23"; break ;case '%': result += "%25"; break ;
            case '{': result += "%7B"; break ;case '}': result += "%3D"; break ;
            case '|': result += "%7C"; break ;case '\\':result += "%5C"; break ;
            case '^': result += "%5E"; break ;case '~': result += "%7E"; break ;
            case '[': result += "%5B"; break ;case ']': result += "%5D"; break ;
            case '`': result += "%60"; break ;case '\"': result += "%22";break ;
              //other unsafe
            case '$': result += "%24"; break ;case '+': result += "%2B"; break ;     //&#036    //&#043
            case '!': result += "%21"; break ;case '\'': result += "%27";break ;    //&#033     //&#039
            default:
               result += ch;
         }
      }
      return  result;
   }

   function mrcTrim(s){
      return mrcLTrim(mrcRTrim(s));
   }
   function mrcLTrim(s){
      //left trim
      var isblank = true;
      if(!s) return "";
      for(var i =0; i<s.length;i++)
         if(s.charAt(i)!=" "){
            s = s.substring(i);
            isblank = false;
            break;
      }
      return (isblank)? "":s ;
   }
   function mrcRTrim(s){
      //right trim
      var isblank = true;
      if(!s) return "";
      for(var i=s.length-1; i>=0;i--)
         if(s.charAt(i)!=" "){
            s = s.substring(0,i+1);
            isblank = false;
            break;
      }
      return (isblank)? "":s ;
   }
 
  //U.S.A. state code-name
  var stateListArray = new Array(
                                    new Array("*BLANK","Select State"),
                                    new Array("AK","Alaska"),
                                    new Array("AL","Alabama"),
                                    new Array("AR","Arkansas"),
                                    new Array("AZ","Arizona"),
                                    new Array("CA","California"),
                                    new Array("CO","Colorado"),
                                    new Array("CT","Connecticut"),
                                    new Array("DC","D.C."),
                                    new Array("DE","Delaware"),
                                    new Array("FL","Florida"),
                                    new Array("GA","Georgia"),
                                    new Array("HI","Hawaii"),
                                    new Array("IA","Iowa"),
                                    new Array("ID","Idaho"),
                                    new Array("IL","Illinois"),
                                    new Array("IN","Indiana"),
                                    new Array("KS","Kansas"),
                                    new Array("KY","Kentucky"),
                                    new Array("LA","Louisiana"),
                                    new Array("MA","Massachusetts"),
                                    new Array("MD","Maryland"),
                                    new Array("ME","Maine"),
                                    new Array("MI","Michigan"),
                                    new Array("MN","Minnesota"),
                                    new Array("MO","Missouri"),
                                    new Array("MS","Mississippi"),
                                    new Array("MT","Montana"),
                                    new Array("NC","North Carolina"),
                                    new Array("ND","North Dakota"),
                                    new Array("NE","Nebraska"),
                                    new Array("NH","New Hampshire"),
                                    new Array("NJ","New Jersey"),
                                    new Array("NM","New Mexico"),
                                    new Array("NV","Nevada"),
                                    new Array("NY","New York"),
                                    new Array("OH","Ohio"),
                                    new Array("OK","Oklahoma"),
                                    new Array("OR","Oregon"),
                                    new Array("PA","Pennsylvania"),
                                    new Array("RI","Rhode Island"),
                                    new Array("SC","South Carolina"),
                                    new Array("SD","South Dakota"),
                                    new Array("TN","Tennessee"),
                                    new Array("TX","Texas"),
                                    new Array("UT","Utah"),
                                    new Array("VA","Virginia"),
                                    new Array("VT","Vermont"),
                                    new Array("WA","Washington"),
                                    new Array("WI","Wisconsin"),
                                    new Array("WV","West Virginia"),
                                    new Array("WY","Wyoming")  
                                    
                                 );
   
   //code-name or pass cade-display name
   function getStateList(s,type){
     
     var len = s.length;
      var list = "";
      var index0=0,index1=1;  //code-name
      if(type==1){            //code-code
          index0=0;index1=0;
      }else if(type==2){      //name-name
         index0=1;index1=1;
      }else if(type==3){      //name-code
         index0=1;index1=0;
      }else if(type==4){
         ;                    //others
      }
      list += s[0][0] + "=" + s[0][1];
      for(var i=1;i<len;i++){
         list += ";"+ s[i][index0] + "=" + s[i][index1];
      }
      return list;
      
   }
   //name-name or pass name-display name 
   
  //you may define a state list for your application to use only, 
   var stateList;
   /*
   var stateList =  "*BLANK=Select State;"
                     +"CT=Connecticut;DC=District of Columbia;DE=Delaware;FL=Florida;GA=Georgia;HI=Hawaii;"
                     +"IA=Iowa;ID=Idaho;IL=Illinois;IN=Indiana;KS=Kansas;KY=Kentucky;"
                     +"LA=Louisiana;MA=Massachusetts;MD=Maryland;ME=Maine;MI=Michigan;MN=Minnesota;"
                     +"MO=Missouri;MS=Mississippi;MT=Montana;NC=North Carolina;ND=North Dakota;NE=Nebraska;"
                     +"TN=Tennessee;TX=Texas;UT=Utah;VA=Virginia;VT=Vermont;WA=Washington;"
                     +"WI=Wisconsin;WV=West Virginia;WY=Wyoming" ;
    */

   //-->
