public Builder mergeWhatResearches(org.bwapi.proxy.messages.GameMessages.UnitType value) {
        if (whatResearchesBuilder_ == null) {
          if (((bitField0_ & 0x00000080) == 0x00000080) &&
              whatResearches_ != org.bwapi.proxy.messages.GameMessages.UnitType.getDefaultInstance()) {
            whatResearches_ =
              org.bwapi.proxy.messages.GameMessages.UnitType.newBuilder(whatResearches_).mergeFrom(value).buildPartial();
          } else {
            whatResearches_ = value;
          }
          onChanged();
        } else {
          whatResearchesBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000080;
        return this;
      }