
        function StyleOption(form, groupName, id, postBack, normalClass, overClass, 
            selectedClass, clientScript) {
          this.form = document.getElementById(form);
          this.groupName = groupName;
          this.id = id;
          this.button = document.getElementById(id + "_button");
          
          this.postBack = postBack;
          this.clientScript = clientScript;
          
          this.normalClass = normalClass;
          this.overClass = overClass;
          this.selectedClass = selectedClass;
          
          if (this.isSelected())
            StyleOption.selected[this.groupName] = this;
          else {
            if (StyleOption.selected[this.groupName] == undefined)
              StyleOption.selected[this.groupName] = null;
          }
        };
        
        StyleOption.selected = [];

        StyleOption.execute = function(clientScript, postBack) {
          if (clientScript != "")
            eval(clientScript);
          if (postBack != "")
            eval(postBack);
        };

        StyleOption.prototype.isSelected = function() {
          return this.getHiddenField().value == this.id;
        };
        
        StyleOption.prototype.getHiddenField = function() {
          var name = "__StyleOption";
          if (this.groupName != "")
            name += "_" + this.groupName;
          return this.form.elements[name];
        };
        
        StyleOption.prototype.mouseDown = function() {
          if (!this.isSelected()) {
            this.select();
          }
        };
        
        StyleOption.prototype.mouseOut = function() {
          if (!this.isSelected())
            this.button.className = this.normalClass;
        };
        
        StyleOption.prototype.mouseOver = function() {
          if (!this.isSelected())
            this.button.className = this.overClass;
        };
        
        StyleOption.prototype.select = function() {
          if (!this.isSelected()) {
            if (StyleOption.selected[this.groupName] != null) {
              StyleOption.selected[this.groupName].unselect();
            }
          }
          
          this.getHiddenField().value = this.id;
          StyleOption.selected[this.groupName] = this;
          this.button.className = this.selectedClass;
        
          setTimeout("StyleOption.execute(\"" + this.clientScript + "\", \"" + this.postBack + "\")", 50);
        };
        
        StyleOption.prototype.unselect = function() {
          this.getHiddenField().value = "";
          StyleOption.selected[this.groupName] = null;
          this.button.className = this.normalClass;
        };
	      
        function RollOverButton(imageUrl, overImageUrl) {
          var image = new Image();
          image.src = imageUrl;
          image.src = overImageUrl;
          this.imageUrl = imageUrl;
          this.overImageUrl = overImageUrl;
        }
        
        function RollOverOption(form, groupName, id, postBack, imageUrl, overImageUrl, 
            selectedImageUrl, clientScript) {
          this.form = document.getElementById(form);
          this.groupName = groupName;
          this.id = id;
          this.button = document.getElementById(id + "_button");
          
          this.postBack = postBack;
          this.clientScript = clientScript;
          
          var image = new Image();
          image.src = imageUrl;
          image.src = overImageUrl;
          image.src = selectedImageUrl;
          
          this.imageUrl = imageUrl;
          this.overImageUrl = overImageUrl;
          this.selectedImageUrl = selectedImageUrl;
          
          if (this.isSelected())
            RollOverOption.selected[this.groupName] = this;
          else {
            if (RollOverOption.selected[this.groupName] == undefined)
              RollOverOption.selected[this.groupName] = null;
          }
        };
        
        RollOverOption.selected = [];

        RollOverOption.execute = function(clientScript, postBack) {
          if (clientScript != "")
            eval(clientScript);
          if (postBack != "")
            eval(postBack);
        };

        RollOverOption.prototype.isSelected = function() {
          return this.getHiddenField().value == this.id;
        };
        
        RollOverOption.prototype.getHiddenField = function() {
          var name = "__RollOverOption";
          if (this.groupName != "")
            name += "_" + this.groupName;
          return this.form.elements[name];
        };
        
        RollOverOption.prototype.mouseDown = function() {
          if (!this.isSelected()) {
            if (RollOverOption.selected[this.groupName] != null)
              RollOverOption.selected[this.groupName].unselect();
            this.select();
          }
        };
        
        RollOverOption.prototype.mouseOut = function() {
          if (!this.isSelected())
            this.button.src = this.imageUrl;
        };
        
        RollOverOption.prototype.mouseOver = function() {
          if (!this.isSelected())
            this.button.src = this.overImageUrl;
        };
        
        RollOverOption.prototype.select = function() {
          this.getHiddenField().value = this.id;
          RollOverOption.selected[this.groupName] = this;
          this.button.src = this.selectedImageUrl;
          
          setTimeout("RollOverOption.execute(\"" + this.clientScript + "\", \"" + this.postBack + "\")", 50);
        };
        
        RollOverOption.prototype.unselect = function() {
          this.getHiddenField().value = "";
          RollOverOption.selected[this.groupName] = null;
          this.button.src = this.imageUrl;
        };
        
        var DropDownList_list = null;
        var DropDownList_text = "";
        var DropDownList_index = -1;
        var DropDownList_handle = null;
        var DropDownList_onchange = null;
        
        function DropDownList_keyPress(list, event) {
          var keyCode = document.all ? event.keyCode : event.which;
          
          if (keyCode == 13 && list.onchange != null) {
            list.onchange();
            return true;
          }
          
          DropDownList_list = list;
          
          if (keyCode >= 32) {
            if (list.onchange != null) {
              DropDownList_onchange = list.onchange;
              list.onchange = null;
            }
            
            if (97 <= keyCode && keyCode <= 122) {
              keyCode -= 32;
            }
            DropDownList_text += String.fromCharCode(keyCode);
            
            textLen = DropDownList_text.length;

            for (var i = 0; i < list.options.length; ++i) {
              var optText = list.options[i].text.toUpperCase().substr(0, textLen);
              if (optText == DropDownList_text) {
                DropDownList_index = i;
                list.selectedIndex = 0;
                break;
              }
            }
          }

          setTimeout("DropDownList_setIndex()", 1);
          return false;
        }

        function DropDownList_reset() {
          DropDownList_text = "";
          DropDownList_index = -1;
        }

        function DropDownList_setIndex() {
          if (DropDownList_index > -1) {
            DropDownList_list.selectedIndex = DropDownList_index;
          }
          if (DropDownList_onchange != null) {
            DropDownList_list.onchange = DropDownList_onchange;
            DropDownList_onchange = null;
          }
          DropDownList_list = null;

          if (DropDownList_handle != null) {
            clearTimeout(DropDownList_handle);
            DropDownList_handle = null;
          }

          if (DropDownList_index > -1) {
            DropDownList_handle = setTimeout("DropDownList_reset()", 2000);
          }
        }
      