// JavaScript Document
  function fnKeyDownHandler(getdropdown, e)
  {
    fnSanityCheck(getdropdown);
    var vEventKeyCode = FindKeyCode(e);
     if(vEventKeyCode == 8 || vEventKeyCode==127)
    {
    if(e.which) //Netscape
    {
    }
    else //Internet Explorer
    {
      e.keyCode = '';
      if(window.event.keyCode)
      {
      window.event.keyCode = '';
      }
    }
    return true;
    }
  }

  function FindKeyCode(e)
  {
    if(e.which)
    {
    keycode=e.which; 
    }
    else
    {
    keycode=e.keyCode; 
    }

    return keycode;
  }

  function FindKeyChar(e)
  {
    keycode = FindKeyCode(e);
    if((keycode==8)||(keycode==127))
    {
    character="backspace"
    }
    else if((keycode==46))
    {
    character="delete"
    }
    else
    {
    character=String.fromCharCode(keycode);
    }

    return character;
  }

  function fnSanityCheck(getdropdown)
  {
    if(vEditableOptionIndex_A>(getdropdown.options.length-1))
    {
    alert("PROGRAMMING ERROR: The value of variable vEditableOptionIndex_... cannot be greater than (length of dropdown - 1)");
    return false;
    }
  }
 var vEditableOptionIndex_A = 10;
  var vEditableOptionText_A = "--?--";
  var vPreviousSelectIndex_A = 0;
  var vSelectIndex_A = 0;
  var vSelectChange_A = 'MANUAL_CLICK';
  function fnChangeHandler_A(getdropdown)
  {
    fnSanityCheck(getdropdown);
    vPreviousSelectIndex_A = vSelectIndex_A;
    vSelectIndex_A = getdropdown.options.selectedIndex;
    if ((vPreviousSelectIndex_A == (vEditableOptionIndex_A)) && (vSelectIndex_A != (vEditableOptionIndex_A))&&(vSelectChange_A != 'MANUAL_CLICK'))
    {
      getdropdown[(vEditableOptionIndex_A)].selected=true;
      vPreviousSelectIndex_A = vSelectIndex_A;
      vSelectIndex_A = getdropdown.options.selectedIndex;
      vSelectChange_A = 'MANUAL_CLICK';
    }
  }

  function fnKeyPressHandler_A(getdropdown, e)
  {
    fnSanityCheck(getdropdown);

    keycode = FindKeyCode(e);
    keychar = FindKeyChar(e);
    if ((keycode>47 && keycode<59)||(keycode>62 && keycode<127) ||(keycode==32))
    {
      var vAllowableCharacter = "yes";
    }
    else
    {
      var vAllowableCharacter = "no";
    }

    if(getdropdown.options.length != 0)
      if (getdropdown.options.selectedIndex == (vEditableOptionIndex_A))
      {

        var vEditString = getdropdown[vEditableOptionIndex_A].text;
        if((vAllowableCharacter == "yes")||(keychar=="backspace"))
        {
          if (vEditString == vEditableOptionText_A)
            vEditString = "";
        }
        if (keychar=="backspace")
        {
          vEditString = vEditString.substring(0,vEditString.length-1);
          vSelectChange_A = 'MANUAL_CLICK';
          }
		if(vEditString.length<30)
        if (vAllowableCharacter == "yes")
        {
			if(vEditString.indexOf("Other")>=0)
			vEditString =String.fromCharCode(keycode);
			else
          	vEditString+=String.fromCharCode(keycode);
          var i=0;
          var vEnteredChar = String.fromCharCode(keycode);
          var vUpperCaseEnteredChar = vEnteredChar;
          var vLowerCaseEnteredChar = vEnteredChar;
          if(((keycode)>=97)&&((keycode)<=122))
         vUpperCaseEnteredChar = String.fromCharCode(keycode - 32);
          if(((keycode)>=65)&&((keycode)<=90))
          vLowerCaseEnteredChar = String.fromCharCode(keycode + 32);
          if(e.which)
          {
            for (i=0;i<=(getdropdown.options.length-1);i++)
            {
              if(i!=vEditableOptionIndex_A)
              {
                var vReadOnlyString = getdropdown[i].text;
                var vFirstChar = vReadOnlyString.substring(0,1);
                if((vFirstChar == vUpperCaseEnteredChar)||(vFirstChar == vLowerCaseEnteredChar))
                {
                  vSelectChange_A = 'AUTO_SYSTEM';
                  break;
                }
                else
                {
                  vSelectChange_A = 'MANUAL_CLICK';
                }
              }
            }
          }
        }
		
        getdropdown.options[vEditableOptionIndex_A].text = vEditString;
        getdropdown.options[vEditableOptionIndex_A].value = vEditString;

        return false;
      }
    return true;
  }

  function fnKeyUpHandler_A(getdropdown, e)
  {
    fnSanityCheck(getdropdown);

    if(e.which)
    {
      if(vSelectChange_A == 'AUTO_SYSTEM')
      {
      getdropdown[(vEditableOptionIndex_A)].selected=true;
      }
      var vEventKeyCode = FindKeyCode(e);
      if((vEventKeyCode == 37)||(vEventKeyCode == 39))
      {
        getdropdown[vEditableOptionIndex_A].selected=true;
      }
    }
  }
 var vEditableOptionIndex_B = 14;
  var vEditableOptionText_B = "--?--";
  var vPreviousSelectIndex_B = 0;
  var vSelectIndex_B = 0;
  var vSelectChange_B = 'MANUAL_CLICK';
  function fnChangeHandler_B(getdropdown)
  {
    fnSanityCheck(getdropdown);
    vPreviousSelectIndex_B = vSelectIndex_B;
    vSelectIndex_B = getdropdown.options.selectedIndex;
    if ((vPreviousSelectIndex_B == (vEditableOptionIndex_B)) && (vSelectIndex_B != (vEditableOptionIndex_B))&&(vSelectChange_B != 'MANUAL_CLICK'))
    {
      getdropdown[(vEditableOptionIndex_B)].selected=true;
      vPreviousSelectIndex_B = vSelectIndex_B;
      vSelectIndex_B = getdropdown.options.selectedIndex;
      vSelectChange_B = 'MANUAL_CLICK';
    }
  }

  function fnKeyPressHandler_B(getdropdown, e)
  {
    fnSanityCheck(getdropdown);

    keycode = FindKeyCode(e);
    keychar = FindKeyChar(e);
    if ((keycode>47 && keycode<59)||(keycode>62 && keycode<127) ||(keycode==32))
    {
      var vAllowableCharacter = "yes";
    }
    else
    {
      var vAllowableCharacter = "no";
    }

    if(getdropdown.options.length != 0)
      if (getdropdown.options.selectedIndex == (vEditableOptionIndex_B))
      {

        var vEditString = getdropdown[vEditableOptionIndex_B].text;
        if((vAllowableCharacter == "yes")||(keychar=="backspace"))
        {
          if (vEditString == vEditableOptionText_B)
            vEditString = "";
        }
        if (keychar=="backspace")
        {
          vEditString = vEditString.substring(0,vEditString.length-1);
          vSelectChange_B = 'MANUAL_CLICK';
          }
		if(vEditString.length<25)
        if (vAllowableCharacter == "yes")
        {
			if(vEditString.indexOf("Other")>=0)
			vEditString=String.fromCharCode(keycode);
			else
          vEditString+=String.fromCharCode(keycode);
          var i=0;
          var vEnteredChar = String.fromCharCode(keycode);
          var vUpperCaseEnteredChar = vEnteredChar;
          var vLowerCaseEnteredChar = vEnteredChar;
          if(((keycode)>=97)&&((keycode)<=122))
         vUpperCaseEnteredChar = String.fromCharCode(keycode - 32);
          if(((keycode)>=65)&&((keycode)<=90))
          vLowerCaseEnteredChar = String.fromCharCode(keycode + 32);
          if(e.which)
          {
            for (i=0;i<=(getdropdown.options.length-1);i++)
            {
              if(i!=vEditableOptionIndex_B)
              {
                var vReadOnlyString = getdropdown[i].text;
                var vFirstChar = vReadOnlyString.substring(0,1);
                if((vFirstChar == vUpperCaseEnteredChar)||(vFirstChar == vLowerCaseEnteredChar))
                {
                  vSelectChange_B = 'AUTO_SYSTEM';
                  break;
                }
                else
                {
                  vSelectChange_B = 'MANUAL_CLICK';
                }
              }
            }
          }
        }
 
        getdropdown.options[vEditableOptionIndex_B].text = vEditString;
        getdropdown.options[vEditableOptionIndex_B].value = vEditString;

        return false;
      }
    return true;
  }

  function fnKeyUpHandler_B(getdropdown, e)
  {
    fnSanityCheck(getdropdown);

    if(e.which)
    {
      if(vSelectChange_B == 'AUTO_SYSTEM')
      {
      getdropdown[(vEditableOptionIndex_B)].selected=true;
      }
      var vEventKeyCode = FindKeyCode(e);
      if((vEventKeyCode == 37)||(vEventKeyCode == 39))
      {
        getdropdown[vEditableOptionIndex_B].selected=true;
      }
    }
  }