protected final void oncmbSpecialInterestCategoryValueSet(Object value) {
    java.util.ArrayList listOfValues = this.form.cmbSpecialInterestCategory().getValues();

    if (value == null) {
      if (listOfValues != null && listOfValues.size() > 0) {
        for (int x = 0; x < listOfValues.size(); x++) {
          ims.correspondence.vo.lookups.SpecialInterestType existingInstance =
              (ims.correspondence.vo.lookups.SpecialInterestType) listOfValues.get(x);
          if (!existingInstance.isActive()) {
            bindcmbSpecialInterestCategoryLookup();
            return;
          }
        }
      }
    } else if (value instanceof ims.correspondence.vo.lookups.SpecialInterestType) {
      ims.correspondence.vo.lookups.SpecialInterestType instance =
          (ims.correspondence.vo.lookups.SpecialInterestType) value;

      if (listOfValues != null) {
        if (listOfValues.size() == 0) bindcmbSpecialInterestCategoryLookup();

        for (int x = 0; x < listOfValues.size(); x++) {
          ims.correspondence.vo.lookups.SpecialInterestType existingInstance =
              (ims.correspondence.vo.lookups.SpecialInterestType) listOfValues.get(x);
          if (existingInstance.equals(instance)) return;
        }
      }

      this.form
          .cmbSpecialInterestCategory()
          .newRow(instance, instance.getText(), instance.getImage(), instance.getTextColor());
    }
  }